Self-paced reading
Present sentences one segment at a time, advanced by the space bar, with a reading time recorded per segment and sentences shuffled as whole units.
When to use it
Section titled “When to use it”Use this for the moving-window reading paradigm: the participant reveals a sentence piece by piece with the space bar, and the time spent on each segment is your measure of processing load. Putting the whole sentence on one screen loses exactly that per-segment timing, and shuffling all rows freely would tear sentences apart mid-stream. One row per segment gives you one reaction time per segment, and a structure spec keeps each sentence’s rows together while the sentences themselves change order between participants.
Trial file
Section titled “Trial file”| type | content | stimFormat | stim1 | sentence | trialOrder | keyboard | key | button1 |
|---|---|---|---|---|---|---|---|---|
| instructions | Read each sentence one piece at a time. Press SPACE to reveal the next piece. After each sentence, answer the question with Y or N. | NEXT | ||||||
| test | word | The lawyer | 1 | 1: groupShuffle sentence | space | |||
| test | word | questioned the witness | 1 | 1 | space | |||
| test | word | who seemed nervous | 1 | 1 | space | |||
| test | word | throughout the trial. | 1 | 1 | space | |||
| test | word | Did the witness seem nervous? | 1 | 1 | y n | y | ||
| test | word | The gardener | 2 | 1 | space | |||
| test | word | watered the roses | 2 | 1 | space | |||
| test | word | that had wilted | 2 | 1 | space | |||
| test | word | in the summer heat. | 2 | 1 | space | |||
| test | word | Had the roses wilted? | 2 | 1 | y n | y | ||
| test | word | The pilot | 3 | 1 | space | |||
| test | word | checked the instruments | 3 | 1 | space | |||
| test | word | before the storm | 3 | 1 | space | |||
| test | word | reached the airfield. | 3 | 1 | space | |||
| test | word | Did the pilot check the instruments? | 3 | 1 | y n | n |
type,content,stimFormat,stim1,sentence,trialOrder,keyboard,key,button1 instructions,"Read each sentence one piece at a time. Press SPACE to reveal the next piece. After each sentence, answer the question with Y or N.",,,,,,,NEXT test,,word,The lawyer,1,1: groupShuffle sentence,space,, test,,word,questioned the witness,1,1,space,, test,,word,who seemed nervous,1,1,space,, test,,word,throughout the trial.,1,1,space,, test,,word,Did the witness seem nervous?,1,1,y n,y, test,,word,The gardener,2,1,space,, test,,word,watered the roses,2,1,space,, test,,word,that had wilted,2,1,space,, test,,word,in the summer heat.,2,1,space,, test,,word,Had the roses wilted?,2,1,y n,y, test,,word,The pilot,3,1,space,, test,,word,checked the instruments,3,1,space,, test,,word,before the storm,3,1,space,, test,,word,reached the airfield.,3,1,space,, test,,word,Did the pilot check the instruments?,3,1,y n,n,
How it works
Section titled “How it works”Each segment is one test row with stimFormat = word, so the segment text stays on screen until the space bar is pressed, and each row’s reaction time in the results is the reading time for that segment. The comprehension question is just another test row in the same file, with y n on keyboard and the correct answer in key, so comprehension accuracy is scored like any other trial.
The sentence column tags every row of a sentence, question included, with the sentence’s number. All rows carry the group tag 1 in trialOrder, and the first row adds the structure spec groupShuffle sentence (specs go on the first row of the group only; the other rows take the bare tag). The spec is what randomises the group: a trialOrder group keeps its trial-file order unless a word moves it, and groupShuffle supplies its own randomness, so it needs no separate shuffle word. At runtime the sentences are shuffled as whole units: sentence order varies across participants, but within each sentence the segments and the trailing question keep their file order.
The question rows must be test rows, not form rows: a spec run is split into separate pools wherever the type changes, so a form row in the middle would break the sentences into fragments that no longer shuffle as units.
The sentence column itself is a custom column; it changes nothing on screen and passes through to the results, where it labels every segment with its sentence for analysis.
Variations
Section titled “Variations”- Scenario-level units: tag all sentences of one scenario with a shared
scenariocolumn and specgroupShuffle scenarioinstead, and whole scenarios shuffle while everything inside keeps its order. randomBlockdoes the same unit-shuffle without the spec machinery (same number on every row of a sentence): use it when the file mixes trial types inside a unit, since it does not split attypeboundaries. The spec form used here composes with asampleorgroupSamplespec in the sametrialOrdercell when you need one too (structure specs cannot mix withselect, nor with the ordering constraints).- Enforce a minimum reading time per segment with a
min:response window (for exampleresponseWindow = min:200): a press in the first 200 ms is buffered and only advances the segment when the minimum ends, so a held-down or bounced space bar cannot rush through segments faster than the minimum.