PennController for IBEX › Forums › FAQ / Tips › DashedSentence in a PennController trial › Reply To: DashedSentence in a PennController trial
June 22, 2020 at 2:18 pm
#5700
Keymaster
Hello,
You should probably write your sentences in your table using underscores (_) instead of spaces (or instead of wildcard * if this is what you’ve been using) inside chunks, and reserve space characters to delimit the chunks. For example: This_is_the_first_chunk and_this_is_the_second_chunk. Then just inject the native-Ibex DashedSentence controller, like this:
//Introduction screen with button
newTrial(
newText("intro", "These are the instructions. Click to start.")
.print()
,
newButton("Start")
.print()
.wait()
.remove()
);
//Experimental task with in place self-paced reading followed by a comprehension question. Sentence and question are pulled from the table.
Template(variable =>
newTrial(
newText("test", "Press space bar to read the sentence.")
.css("color", "red")
.css("font-syle", "italic")
.css("line-height", "1.5")
.print()
,
newText("test", "Press <b>A</b> for true. Press <b>L</b> for false.")
.css("font-syle", "italic")
.css("line-height", "1.5")
.print()
,
newController("DashedSentence", {s: variable.Sentence, display: "in place", hideUnderscores: true})
.print()
.log()
.wait()
.remove()
,
newText("cq", variable.Question)
.css("line-height", "2.5")
.print()
,
newKey("AL")
.log()
.wait()
)
);
Jeremy