Is there a "simple" way of having VA log my keystrokes into a variable so I can manipulate them?
If it needs to accept any key on a standard 105 key keyboard, no. I
made a request for a catch-all system to facilitate this, but that's not implemented.
If you need a limited amount of keys, it's doable, if cumbersome, as you'll have to check the tokens for every single key you want to use in a loop, and make sure keys are lifted before adding them again so you don't get multiple characters for every keypress.
Perferably one variable per keystoke to make things easier cuz I have to move the "g" in 345g to the beginning of a sequence and convert the numerics to alphas. [1=a, 2=b, ..., 0=j]
If the letter is always suffixed, you could use "{TXTALPHA:}" and "{TXTNUM:}" to change the order.
To convert the sequence to letters you can use a lookup table, which is basically a long list of conditions(in VoiceAttack at least), and loop through the string:
Set Text [Input] to '345g'
Set small int (condition) [StringLength] value to the converted value of {EXP:{TXTLEN:Input}-1}
Set small int (condition) [LoopCount] value to 0
Set Text [Output] to ''
Start Loop While : [LoopCount] Does Not Equal [StringLength]
Set Text [Char] to '{TXTSUBSTR:Input:{SMALL:LoopCount}:1}'
Begin Text Compare : [Char] Equals '1'
Set Text [Char] to 'a'
Else If Text Compare : [Char] Equals '2'
Set Text [Char] to 'b'
Else If Text Compare : [Char] Equals '3'
Set Text [Char] to 'c'
Else If Text Compare : [Char] Equals '4'
Set Text [Char] to 'd'
Else If Text Compare : [Char] Equals '5'
Set Text [Char] to 'e'
Else If Text Compare : [Char] Equals '6'
Set Text [Char] to 'f'
Else If Text Compare : [Char] Equals '7'
Set Text [Char] to 'g'
Else If Text Compare : [Char] Equals '8'
Set Text [Char] to 'h'
Else If Text Compare : [Char] Equals '9'
Set Text [Char] to 'i'
Else If Text Compare : [Char] Equals '0'
Set Text [Char] to 'j'
End Condition
Set Text [Output] to '{TXTCONCAT:Output:Char}'
Set small int (condition) [LoopCount] value as incremented by 1
End Loop
Write '[Purple] {TXTALPHA:Input}{TXT:Output}' to log