Skip to content

Scripting Language used to easily write autokeyscripts

Notifications You must be signed in to change notification settings

hyper-neutrino/keyscript

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

SLEEP: Sleeps for $1 milliseconds
DELAY: Delays the execution for $1 milliseconds of the next $2 lines and skips the next $2 lines. Works in parallel.
PRESS: Presses the key with code $2...$N with a delay of $1, including at the end
RELEASE: Releases the key with code $N...$2 with a delay of $1
SEQUENCE: Performs PRESS on $3...$N, using $1 as a pause factor, and RELEASE on $N...$3, using $2 as a pause factor
TYPE: Attempts to type the string $3, with down delay $1 and up delay $2. Unknown characters will be skipped.
MOVE: Moves the mouse to ($1, $2)
DRAG: Drags the mouse to ($1, $2)
RIGHT-DRAG: Drags the mouse with button 2 to ($1, $2)
ANIMATE-MOVE: Moves the mouse to ($1, $2) in $3 steps, delaying by $4 milliseconds each step
ANIMATE-DRAG: Drags the mouse to ($1, $2) in $3 steps, delaying by $4 milliseconds each step, waiting $5 milliseconds after pressing and $6 milliseconds after releasing
ANIMATE-RIGHT-DRAG: ANIMATE-DRAG except with RIGHT-DRAG
MOUSEDOWN: Presses button $1
MOUSEUP: Releases button $1
MOUSECLICK: MOUSEDOWN $1; SLEEP $2; MOUSEUP $1
LEFT-CLICK: MOUSECLICK 1 $1
RIGHT-CLICK: MOUSECLICK 2 $1
WHEEL-CLICK: MOUSECLICK 3 $1
LOCATION: Gets the pointer location and sets it on the stack; first Y then X
GOTO: Goes to line $1
INPUT: Gets the input and puts it on the stack as a string
RAW-INPUT: Gets the input and unescapes backslash escape codes
INT: Parses $1 to an integer and pushes it onto the stack
LONG: Parses $1 to a long and pushes it onto the stack
DOUBLE: Parses $1 to a double and pushes it onto the stack
FLOAT: Parses $1 to a float and pushes it onto the stack
SHORT: Parses $1 to a short and pushes it onto the stack
BYTE: Parses $1 to a byte and pushes it onto the stack
STRING: Turns $1 to a string and pushes it onto the stack
CHAR: Parses $1 into a char; if it is a number type, floor, take absolute value, and cast.
CHARS: Splits $1 into its individual characters
CODE: Gets the keycode of $1. Throws RuntimeException if the top is not a character. Integers are treated as characters.
BURY: Pops the top of the stack and rotates it to the bottom.
DIG: Pulls the bottom of the stack off and pushes it.
FLIP: Flips the stack around.
QUEUE: The interpreter will treat the array as a queue instead.
STACK: The interpreter will treat the array as a stack instead.
IS-STACK: Pushes 1 onto the stack or 0 onto the queue
IS-QUEUE: Pushes 0 onto the stack or 1 onto the queue
POP: Pops the top of the stack off.
PUSH: Pushes $1 to the stack. Note that PUSH with no arguments will do nothing because it takes the top of the stack and pushes it
COPY: Copies the top of the stack
STRETCH: Stretches the stack by $1 times. Essentially, each element is repeated in-place, so [1, 2, 3] stretched 4 times would become [1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3].
ADD: $1 + $2
SUBTRACT: $1 - $2
MULTIPLY: $2 * $2. String multiplcation by a negative number reverses. Fractional string multiplication works by concatenating part of the string.
DIVIDE: $1 / $2
EXPONENTIATE: $1 ** $2
DIFFERENCE: Pushes the absolute difference of the top two elements of the stack
ABSOLUTE-VALUE: Takes the absolute value of the top of the stack
PRINT: Prints $1 or command[6:].
PRINT-RAW: Same as PRINT except it doesn't unescape
REVERSE: Reverses $1 and pushes it onto the stack. Automatically converts to a string.
QUIT: Terminates the program
IF: If $1, then execute the next $2 lines; otherwise, skip them
UNESCAPE: Unescapes $1

Note: If not enough arguments are provided, elements will be pulled off the stack.
Note: If the argument given is \\, then it will pull something off the stack and use it instead.

About

Scripting Language used to easily write autokeyscripts

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages