Help with contextual alternatives

I have written the following to allow for a 5 cycle randomisation which seems to be working, but is there a way to stop (space) from resetting the cycle.

lookup CycleLetters {
	# Define consonant cycle
	sub @Con0 @Con0' by @Con1;
	sub @Con1 @Con0' by @Con2;
	sub @Con2 @Con0' by @Con3;
	sub @Con3 @Con0' by @Con4;
	sub @Con4 @Con0' by @Con0;
	
	# Define vowel cycle
	sub @Voc0 @Voc0' by @Voc1;
	sub @Voc1 @Voc0' by @Voc2;
	sub @Voc2 @Voc0' by @Voc3;
	sub @Voc3 @Voc0' by @Voc4;
	sub @Voc4 @Voc0' by @Voc0;
	
	# Define consonant-vowel cycle
	sub @Con0 [@Voc0 @Voc1 @Voc2] @Con0' by @Con1;
	sub @Con1 [@Voc0 @Voc1 @Voc2] @Con0' by @Con2;
	sub @Con2 [@Voc0 @Voc1 @Voc2] @Con0' by @Con3;
	sub @Con3 [@Voc0 @Voc1 @Voc2] @Con0' by @Con4;
	sub @Con4 [@Voc0 @Voc1 @Voc2] @Con0' by @Con0;
	
	# Define vowel-consonant cycle
	sub @Voc0 [@Con0 @Con1 @Con2] @Voc0' by @Voc1;
	sub @Voc1 [@Con0 @Con1 @Con2] @Voc0' by @Voc2;
	sub @Voc2 [@Con0 @Con1 @Con2] @Voc0' by @Voc3;
	sub @Voc3 [@Con0 @Con1 @Con2] @Voc0' by @Voc4;
	sub @Voc4 [@Con0 @Con1 @Con2] @Voc0' by @Voc0;
	
	# Define consonant-vowel-consonant cycle
	sub @Con0 [@Voc0 @Voc1 @Voc2] [@Voc0 @Voc1 @Voc2] @Con0' by @Con1;
	sub @Con1 [@Voc0 @Voc1 @Voc2] [@Voc0 @Voc1 @Voc2] @Con0' by @Con2;
	sub @Con2 [@Voc0 @Voc1 @Voc2] [@Voc0 @Voc1 @Voc2] @Con0' by @Con3;
	sub @Con3 [@Voc0 @Voc1 @Voc2] [@Voc0 @Voc1 @Voc2] @Con0' by @Con4;
	sub @Con4 [@Voc0 @Voc1 @Voc2] [@Voc0 @Voc1 @Voc2] @Con0' by @Con0;
} CycleLetters;

Yes, you add another group called @etc and there you put all the glyphs that are not letters but should not break the cycle. This is explained in the tutorial.

Keep in mind that some renderers will insist that spaces are boundaries for OpenType contexts. So even if you add space to the context, it will not work in such environments. But most apps allow space in contexts.

Thanks that worked, I should have tried that. For some reason I thought spaces couldn’t going into @etc (facepalm).

Thanks!!