In one section of an experiment, I want to capture typing dynamics. I just want the user to type a short piece of prose in a reasonably ecologically valid way - e.g. with expected ability to navigate around text field (arrow keys, click to move cursor, type), and capture timings of keypresses, relative to one-another.
Before I start overcomplicating this, in psychoJS is there any way to just use a multiline HTML form element? That would give me a whole bunch of familiar text-input functionality for free.
E.g. can I have the user type into a standard HTML text box and still capture keystroke timings. It seems like the GUI module only has single line form elements, so I can’t do it that way (or is this different in JS than in python?). Which suggests I would need to bypass builder and writing straight in JS? I’d be totally fine with that…
The only thing that matters to me are the relative timings between keystrokes, not the timing relative to any onscreen stimulus.
The alternative is to implement a text editor from the ground up - like a more sophisticated version of the textInput example. Which would be tough - e.g. I can see how to display a cursor with visual.textbox in python, but JS only has visual.textstim, which lacks a lot of important functionality.