Keyboard macros

From Rosetta Code
Task
Keyboard macros
You are encouraged to solve this task according to the task description, using any language you may know.

Link user defined methods to user defined keys.

AutoHotkey

<lang AutoHotkey> loop, 200 { TrayTip, counting, %A_Index% press alt-p to pause sleep, 1000 }

!p:: pauseMe() return

!r:: resume() return

pauseMe() { Msgbox, pausing`, press alt-r to resume pause } resume() { TrayTip, resume, resuming, 2 pause, off } </lang> See ahk-viper-mode for a context sensitive vi key bindings example.