<> <> <> <> OPTIONS Fast, PrintKeys; [DEF,ClickTime,(200)] [DEF,DownClick,(~1 Down BEFORE [ClickTime])] [DEF,UpClick,(~1 Up BEFORE [ClickTime])] [DEF,Click,([UpClick,~1] AND [DownClick,~1])] [DEF,BothUp,(~1 Up WHILE ~2 Up)] [DEF,WhileThreeUp, (WHILE ~1 Up WHILE ~2 Up WHILE ~3 Up)] [DEF,FourUp,(~1 Up WHILE ~2 Up WHILE ~3 Up WHILE ~4 Up)] [DEF,WhileFiveUp, (WHILE ~1 Up WHILE ~2 Up WHILE ~3 Up WHILE ~4 Up WHILE ~5 Up)] [DEF,WhileSixUp, (WHILE ~1 Up WHILE ~2 Up WHILE ~3 Up WHILE ~4 Up WHILE ~5 Up WHILE ~6 Up)] [DEF,CTRL,(Ctrl Down | Spare3 Down)] [DEF,WhileCTRLUp,(WHILE Ctrl Up WHILE Spare3 Up)] [DEF,WhenCTRLUp,( Ctrl Up WHILE Spare3 Up ~1 => ~2; Spare3 Up WHILE Ctrl Up ~1 => ~2)] [DEF,SHIFT,(LeftShift Down | RightShift Down)] [DEF,SHIFTUp,[BothUp,LeftShift,RightShift]] [DEF,WhenSHIFTUp,( LeftShift Up WHILE RightShift Up ~1 => ~2; RightShift Up WHILE LeftShift Up ~1 => ~2)] [DEF,IfShift,(SELECT ENABLE FROM [SHIFT] => ~1; ENDCASE => ~2)] [DEF,IfCtrl,(SELECT ENABLE FROM [CTRL] => ~1; ENDCASE => ~2)] <> SELECT TRIGGER FROM [DEF,Sel,(SELECT ENABLE FROM [SHIFT] => { ~2 Coords SelSecondary ToPrimary ForceSelNotPendDel ~1 }; ENDCASE => { ~2 Coords ForceSelNotPendDel ~1 })] [DEF,MouseClick,(SELECT TRIGGER FROM [Click,~1] => [Sel,~3,~1Mouse]; ENDCASE => [Sel,~2,~1Mouse])] Red Down => [MouseClick,Red,SelChar,SelNode]; Yellow Down => SELECT ENABLE FROM Red Up => [MouseClick,Yellow,SelWord,SelBranch]; ENDCASE; [DEF,Extend,([Sel,~1 SelStartExtend,BlueMouse])] Blue Down => SELECT ENABLE FROM [BothUp,Red,Yellow] => SELECT TRIGGER FROM [Click,Blue] => SELECT TRIGGER FROM [Click,Blue] => [Extend,SelExpand]; ENDCASE => [Extend,SelReduce]; ENDCASE => [Extend]; ENDCASE; Mouse => SELECT ENABLE FROM Red Down => [Sel,SelUpdate,SelSame]; Yellow Down => [Sel,SelUpdate,SelSame]; Blue Down => { Coords SelSame SelSameEnd SelSamePendDel SelExtend }; ENDCASE; [DEF,ButtonUp,(SELECT ENABLE FROM [SHIFTUp] [WhileCTRLUp] WHILE [BothUp,~1,~2] => DoEdit; ENDCASE)] Red Up => [ButtonUp,Blue,Yellow]; Yellow Up => [ButtonUp,Blue,Red]; Blue Up => [ButtonUp,Yellow,Red]; [WhenSHIFTUp,[WhileThreeUp,Red,Yellow,Blue] [WhileCTRLUp],DoEdit]; [WhenCTRLUp,[WhileThreeUp,Red,Yellow,Blue] WHILE [SHIFTUp],DoEdit]; Spare2 Down => [IfShift,{ IntermediateUser PreviousPlaceholder },{ IntermediateUser NextPlaceholder }]; ESC Down => Char; LF Down => Char; BS Down WHILE [SHIFTUp] => BackSpace; DEL Down => SELECT ENABLE FROM [CTRL] => Abort; [SHIFT] => EditAbort; Red Down => EditAbort; Yellow Down => EditAbort; Blue Down => EditAbort; ENDCASE => Delete; A Down WHILE [CTRL] => BackSpace; C Down WHILE [CTRL] => Char; H Down WHILE [CTRL] => BackSpace; O Down WHILE [CTRL] => Char; P Down WHILE [CTRL] => { IntermediateUser Paste }; Q Down WHILE [CTRL] => Char; R Down WHILE [CTRL] => Char; S Down WHILE [CTRL] => -- copy primary { IntermediateUser MakeNotPendingDelete ToSecondary SelSecondary SelNotPendDel }; T Down WHILE [CTRL] => Char; W Down WHILE [CTRL] => BackWord; X Down WHILE [CTRL] => Char; Z Down WHILE [CTRL] => Char; ENDCASE.