; $VER: edge.keyboard 2.x (Tommorrow)
;
; Edge default keyboard configuration.
;
; Written by Thomas liljetoft & Eddie Churchill

KEYCOM   KEY="Del"                        COMMAND delete char
KEYCOM   KEY="Del"       Q="Shift"        COMMAND 'options results;blockinfo;if rc==0 then erase;else;cut smallclip word'
KEYCOM   KEY="Del"       Q="Alt"          COMMAND cut smallclip eol
KEYCOM   KEY="Del"       Q="Control"      COMMAND cut smallclip line
KEYCOM   KEY="BackSpace"                  COMMAND delete char back
KEYCOM   KEY="BackSpace" Q="Shift"        COMMAND cut smallclip word back
KEYCOM   KEY="BackSpace" Q="Alt"          COMMAND cut smallclip eol
KEYCOM   KEY="BackSpace" Q="Control"      COMMAND nop

KEYCOM   KEY="k" Q="RCommand" QM="Shift"  COMMAND cut smallclip line
KEYCOM   KEY="K" Q="RCommand" QM="Shift"  COMMAND paste smallclip
KEYCOM   KEY="y" Q="RCommand" QM="Shift"  COMMAND cut smallclip eol
KEYCOM   KEY="Y" Q="RCommand" QM="Shift"  COMMAND cut smallclip sol

KEYCOM   KEY="TAB"       Q="Shift"        COMMAND nop
KEYCOM   KEY="Return"    Q="Shift"        COMMAND newline
KEYCOM   KEY="Help"                       COMMAND help
KEYCOM   KEY="Help"      Q="Alt"          COMMAND autodochelp

KEYCOM   KEY="8"         Q="NumericPad"   COMMAND cursor up 1
KEYCOM   KEY="2"         Q="NumericPad"   COMMAND cursor down 1
KEYCOM   KEY="4"         Q="NumericPad"   COMMAND cursor left 1
KEYCOM   KEY="6"         Q="NumericPad"   COMMAND cursor right 1
KEYCOM   KEY="7"         Q="NumericPad"   COMMAND position sof
KEYCOM   KEY="1"         Q="NumericPad"   COMMAND position eof
KEYCOM   KEY="9"         Q="NumericPad"   COMMAND previous page
KEYCOM   KEY="3"         Q="NumericPad"   COMMAND next page

KEYCOM   KEY="Up"                         COMMAND cursor up 1
KEYCOM   KEY="Down"                       COMMAND cursor down 1
KEYCOM   KEY="Left"                       COMMAND cursor left 1
KEYCOM   KEY="Right"                      COMMAND cursor right 1

KEYCOM   KEY="Up"        Q="Shift"        COMMAND 'options results;getenvvar _we_lines;cursor up result-1'
KEYCOM   KEY="Down"      Q="Shift"        COMMAND 'options results;getenvvar _we_lines;cursor down result-1'
KEYCOM   KEY="Left"      Q="Shift"        COMMAND previous word
KEYCOM   KEY="Right"     Q="Shift"        COMMAND next word

KEYCOM   KEY="Left"      Q="Shift Alt"    COMMAND position sow
KEYCOM   KEY="Right"     Q="Shift Alt"    COMMAND position eow

KEYCOM   KEY="Up"        Q="Alt"          COMMAND position sof
KEYCOM   KEY="Down"      Q="Alt"          COMMAND position eof
KEYCOM   KEY="Left"      Q="Alt"          COMMAND position sol
KEYCOM   KEY="Right"     Q="Alt"          COMMAND position eol

; these need to be window size relative
KEYCOM   KEY="Up"        Q="Control"      COMMAND previous page
KEYCOM   KEY="Down"      Q="Control"      COMMAND next page
KEYCOM   KEY="Left"      Q="Control"      COMMAND 'options results;getenvvar _we_columns;cursor left result-1'
KEYCOM   KEY="Right"     Q="Control"      COMMAND 'options results;getenvvar _we_columns;cursor right result-1'

KEYCOM   KEY="F1"        Q="RCommand Alt" COMMAND correctword
KEYCOM   KEY="F2"        Q="RCommand Alt" COMMAND completetemplate
KEYCOM   KEY="F3"        Q="RCommand Alt" COMMAND correctcase

INCLUDE user.keyboard IFEXISTS
