Multiple SyncTexts?

I’m trying to create multiple SyncTexts for every member of my Laptop Orchestra.

I think the current codebase only allows for a single SyncText for every textID.

I was wondering if it’s even possible to create multiple SyncTexts per textID. If so, does anyone know how to go about that?

Here’s why I think it’s not possible:

				// *********************
				// MAKE SYNCED EDITOR
				// *********************

				// this could be problematic,
				if (Platform.hasQt) {

					// one single SyncText per textID:
					q.syncText = SyncText(\syncText, q.myID, q.oscRouter);

					MFdef(\SyncText).add(\show, {
						if (q.syncText.currText.isNil) {
							q.syncText.requestText
						};
						"q.syncText.showDoc".postln;
						defer { q.syncText.showDoc };
					});
				};

				"END OF MAKE SYNCED EDITOR".postln;

				// ^^^^^^^^^^^^^^^^^^^^

Thank you!

Hi Tanya,

Not sure if I understand correctly your question.

You are right that it is impossible to have multiple SyncTexts of the same textID, but you should be able to have multiple SyncTexts with different textIDs. Note that there was a bug related to this until recently, but we fixed it in the latest version of HyperDisCo (so check if your quarks are updated).

For example you can have:

~router = OSCRouterClient(\user);
~router.join( {
    ~sync1 = SyncText(\syncTextOne, ~router.userName, ~router);
    ~sync1.showDoc;
    ~sync2 = SyncText(\syncTextTwo, ~router.userName, ~router);
    ~sync2.showDoc;
});

it will open two SyncText instances. For testing:

~router2 = OSCRouterClient(\user2);
~router2.join( {
    ~sync21 = SyncText(\syncTextOne, ~router2.userName, ~router2);
    ~sync21.showDoc;
    ~sync22 = SyncText(\syncTextTwo, ~router2.userName, ~router2);
    ~sync22.showDoc;
});

one thing I have been doing recently is to use multiple split editors inside the SuperCollider IDE (View->Split to Right) and then open one SyncText for each performer in each split, so at the same time I can see everyone’s SyncText and edit my own.

Sorry if I misunderstood your question.