home *** CD-ROM | disk | FTP | other *** search
/ C Programming Starter Kit 2.0 / SamsPublishing-CProgrammingStarterKit-v2.0-Win31.iso / bc45 / kbdsrc.pak / BRIEF.KB next >
Encoding:
Text File  |  1997-07-24  |  18.0 KB  |  848 lines

  1. /***********************************************************************
  2.  
  3.               BRIEF editor emulation for Borland C++ IDE.
  4.  
  5.         This file contains a KEYMAPR script which emulates the
  6. default BRIEF programmer's editor in the Borland C++ IDE.  A complete
  7. description of the KEYMAPR language and compiler may be found in on-line help
  8.  
  9. ****************************************************************/
  10.  
  11. Script  BRIEF;
  12.  
  13. /******* Compatibility Macros ********/
  14. MACRO DeleteToEOL
  15.   IF NOT InqCursorPastEOF THEN
  16.     BEGIN
  17.       UndoGroupWithDelete;
  18.       SetTempPos;
  19.       RightOfLine;
  20.       SetTempEndPos;
  21.       DeleteTempBlock;
  22.       FixScreenPos;
  23.     END
  24.   ENDIF;
  25. END;
  26.  
  27. MACRO RightOfWord
  28.   CursorRightSkipWord;
  29.   CursorRightSkipNonWord;
  30.   FixScreenPos;
  31. END;
  32.  
  33. MACRO WordLeft
  34.   CursorLeftSkipNonWord;
  35.   CursorLeftSkipWordStream;
  36.   FixScreenPos;
  37. END;
  38.  
  39. MACRO WordRight
  40.   CursorRightSkipWordStream;
  41.   CursorRightSkipNonWord;
  42.   FixScreenPos;
  43. END;
  44.  
  45. MACRO BriefWordLeft
  46.   IF InqValidEmptyBlock THEN
  47.     BEGIN
  48.       ExtendBlockBeg;
  49.       CursorLeftSkipNonWord;
  50.       CursorLeftSkipWordStream;
  51.       ExtendBlockEnd;
  52.       HighlightBlock;
  53.     END
  54.   ELSE
  55.     BEGIN
  56.       CursorLeftSkipNonWord;
  57.       CursorLeftSkipWordStream;
  58.     END
  59.   ENDIF;
  60.   FixScreenPos;
  61. END;
  62.  
  63. MACRO BriefWordRight
  64.   IF InqValidEmptyBlock THEN
  65.     BEGIN
  66.       ExtendBlockBeg;
  67.       CursorRightSkipWordStream;
  68.       CursorRightSkipNonWord;
  69.       ExtendBlockEnd;
  70.       HighlightBlock;
  71.     END
  72.   ELSE
  73.     BEGIN
  74.       CursorRightSkipWordStream;
  75.       CursorRightSkipNonWord;
  76.     END
  77.   ENDIF;
  78.   FixScreenPos;
  79. END;
  80.  
  81. MACRO MacBriefHome
  82.   IF InqCursorAtBOL THEN
  83.     IF InqCursorAtBOW THEN
  84.       HomeCursor
  85.     ELSE
  86.       TopOfScreen
  87.     ENDIF
  88.   ELSE
  89.     LeftOfLine
  90.   ENDIF;
  91. END;
  92.  
  93. MACRO BriefHome
  94.   IF InqValidEmptyBlock THEN
  95.     BEGIN
  96.       ExtendBlockBeg;
  97.       MacBriefHome;
  98.       ExtendBlockEnd;
  99.       HighlightBlock;
  100.     END
  101.   ELSE
  102.     MacBriefHome
  103.   ENDIF;
  104.   FixScreenPos;
  105. END;
  106.  
  107. MACRO MacBriefEnd
  108.   IF InqCursorAtEOL THEN
  109.     IF InqCursorAtEOW THEN
  110.       EndCursor
  111.     ELSE
  112.       BEGIN
  113.         BottomOfScreen;
  114.         RightOfLine;
  115.       END
  116.     ENDIF
  117.   ELSE
  118.     RightOfLine
  119.   ENDIF;
  120. END;
  121.  
  122. MACRO BriefEnd
  123.   IF InqValidEmptyBlock THEN
  124.     BEGIN
  125.       ExtendBlockBeg;
  126.       MacBriefEnd;
  127.       ExtendBlockEnd;
  128.       HighlightBlock;
  129.     END
  130.   ELSE
  131.     MacBriefEnd
  132.   ENDIF;
  133.   FixScreenPos;
  134. END;
  135.  
  136. MACRO BriefBackspaceProc
  137.   IF InqOvertype THEN
  138.     BEGIN
  139.       CursorLeft;
  140.       IF NOT InqCursorOnChar('\t') THEN
  141.         BEGIN
  142.           LiteralChar(' ');
  143.           CursorLeft;
  144.           FixScreenPos;
  145.         END
  146.       ENDIF
  147.     END
  148.   ELSE
  149.     BEGIN
  150.       IF InqCursorOnChar('\t') THEN
  151.     IF InqCursorInTabSpace THEN
  152.           CursorCharRight;
  153.     ENDIF;
  154.       ENDIF;
  155.       CursorCharLeft;
  156.       DeleteChar;
  157.       FixScreenPos;
  158.     END
  159.   ENDIF
  160. END;
  161.  
  162. MACRO BriefBackspace
  163.   UndoGroupWithDelete;
  164.   IF InqCursorPastEOF THEN
  165.     BackTab;
  166.   ELSE
  167.     IF NOT InqCursorAtBOL THEN
  168.       BEGIN
  169.         IF InqCursorPastEOL THEN
  170.           BEGIN
  171.             IF InqCursorAtEOL THEN
  172.               BriefBackspaceProc
  173.             ELSE
  174.               BEGIN
  175.                 BackTab;
  176.                 IF NOT InqCursorPastEOL THEN
  177.                   IF NOT InqCursorAtEOL THEN
  178.                     RightOfLine;
  179.                   ENDIF
  180.                 ENDIF
  181.               END
  182.             ENDIF
  183.           END
  184.         ELSE
  185.           BriefBackspaceProc
  186.         ENDIF
  187.       END
  188.     ENDIF;
  189.   ENDIF;
  190. END;
  191.  
  192. MACRO BriefTab
  193.   IF InqValidBlock THEN
  194.     IF InqAutoIndent THEN
  195.       IndentBlock
  196.     ELSE
  197.       IF InqOvertype THEN
  198.         ForeTab
  199.       ELSE
  200.         LiteralChar('\t')
  201.       ENDIF
  202.     ENDIF
  203.   ELSE
  204.     IF InqOvertype THEN
  205.       ForeTab
  206.     ELSE
  207.       LiteralChar('\t')
  208.     ENDIF
  209.   ENDIF;
  210. END;
  211.  
  212. MACRO BriefBackTab
  213.   IF InqValidBlock THEN
  214.     IF InqAutoOutdent THEN
  215.       OutdentBlock
  216.     ELSE
  217.       BackTab
  218.     ENDIF
  219.   ELSE
  220.     BackTab
  221.   ENDIF
  222. END;
  223.  
  224. MACRO BriefDelete
  225.   IF InqValidBlock THEN
  226.     DeleteBlock
  227.   ELSE
  228.     DeleteChar
  229.   ENDIF;
  230.   FixScreenPos;
  231. END;
  232.  
  233. MACRO BriefLeft
  234.   IF InqValidEmptyBlock THEN
  235.     BEGIN
  236.       ExtendBlockBeg;
  237.       CursorSwitchedLeft;
  238.       ExtendBlockEnd;
  239.       HighlightBlock;
  240.     END
  241.   ELSE
  242.     CursorSwitchedLeft
  243.   ENDIF;
  244. END;
  245.  
  246. MACRO BriefRight
  247.   IF InqValidEmptyBlock THEN
  248.     BEGIN
  249.       ExtendBlockBeg;
  250.       CursorSwitchedRight;
  251.       ExtendBlockEnd;
  252.       HighlightBlock;
  253.     END
  254.   ELSE
  255.     CursorSwitchedRight
  256.   ENDIF;
  257. END;
  258.  
  259. MACRO BriefLineUp
  260.   IF InqValidEmptyBlock THEN
  261.     BEGIN
  262.       ExtendBlockBeg;
  263.       CursorUp;
  264.       ExtendBlockEnd;
  265.       HighlightBlock;
  266.     END
  267.   ELSE
  268.     CursorUp
  269.   ENDIF;
  270. END;
  271.  
  272. MACRO BriefLineDown
  273.   IF InqValidEmptyBlock THEN
  274.     BEGIN
  275.       ExtendBlockBeg;
  276.       CursorDown;
  277.       ExtendBlockEnd;
  278.       HighlightBlock;
  279.     END
  280.   ELSE
  281.     CursorDown
  282.   ENDIF;
  283. END;
  284.  
  285. MACRO BriefPageUp
  286.   IF InqValidEmptyBlock THEN
  287.     BEGIN
  288.       ExtendBlockBeg;
  289.       PageUp;
  290.       FixCursorPos;
  291.       ExtendBlockEnd;
  292.       HighlightBlock;
  293.     END
  294.   ELSE
  295.     BEGIN
  296.       PageUp;
  297.       FixCursorPos;
  298.     END
  299.   ENDIF;
  300. END;
  301.  
  302. MACRO BriefPageDown
  303.   IF InqValidEmptyBlock THEN
  304.     BEGIN
  305.       ExtendBlockBeg;
  306.       PageDown;
  307.       FixCursorPos;
  308.       ExtendBlockEnd;
  309.       HighlightBlock;
  310.     END
  311.   ELSE
  312.     BEGIN
  313.       PageDown;
  314.       FixCursorPos;
  315.     END
  316.   ENDIF;
  317. END;
  318.  
  319. MACRO BriefFileEnd
  320.   IF InqValidEmptyBlock THEN
  321.     BEGIN
  322.       ExtendBlockBeg;
  323.       EndCursor;
  324.       ExtendBlockEnd;
  325.       HighlightBlock;
  326.     END
  327.   ELSE
  328.     EndCursor
  329.   ENDIF;
  330.   FixScreenPos;
  331. END;
  332.  
  333. MACRO BriefFileBeg
  334.   IF InqValidEmptyBlock THEN
  335.     BEGIN
  336.       ExtendBlockBeg;
  337.       HomeCursor;
  338.       ExtendBlockEnd;
  339.       HighlightBlock;
  340.     END
  341.   ELSE
  342.     HomeCursor
  343.   ENDIF;
  344.   FixScreenPos;
  345. END;
  346.  
  347. MACRO BriefMarkLineIfNotMarked
  348.   IF NOT InqValidBlock THEN
  349.     BEGIN
  350.       SetBlockBeg;
  351.       SetBlockEnd;
  352.       SetLineBlock;
  353.       HighlightBlock;
  354.     END
  355.   ENDIF;
  356. END;
  357.  
  358. MACRO BriefColumnMark
  359.   IF InqColumnBlock THEN
  360.     BEGIN
  361.       SetNonInclusiveBlock;
  362.       HideBlock;
  363.     END
  364.   ELSE
  365.     BEGIN
  366.       SetColumnBlock;
  367.       SetBlockBeg;
  368.       SetBlockEnd;
  369.       HighlightBlock;
  370.     END
  371.   ENDIF
  372. END;
  373.  
  374. MACRO BriefInclusiveMark
  375.   IF InqInclusiveBlock THEN
  376.     BEGIN
  377.       SetNonInclusiveBlock;
  378.       HideBlock;
  379.     END
  380.   ELSE
  381.     BEGIN
  382.       SetInclusiveBlock;
  383.       SetBlockBeg;
  384.       SetBlockEnd;
  385.       HighlightBlock;
  386.     END
  387.   ENDIF
  388. END;
  389.  
  390. MACRO BriefNonInclusiveMark
  391.   IF InqNonInclusiveBlock THEN
  392.     IF InqValidEmptyBlock THEN
  393.       HideBlock;
  394.     ELSE
  395.       BEGIN
  396.         SetBlockBeg;
  397.         SetBlockEnd;
  398.         HighlightBlock;
  399.       END
  400.     ENDIF
  401.   ELSE
  402.     BEGIN
  403.       SetNonInclusiveBlock;
  404.       SetBlockBeg;
  405.       SetBlockEnd;
  406.       HighlightBlock;
  407.     END
  408.   ENDIF
  409. END;
  410.  
  411. MACRO BriefLineMark
  412.   IF InqLineBlock THEN
  413.     BEGIN
  414.       SetNonInclusiveBlock;
  415.       HideBlock;
  416.     END
  417.   ELSE
  418.     BEGIN
  419.       SetLineBlock;
  420.       SetBlockBeg;
  421.       SetBlockEnd;
  422.       HighlightBlock;
  423.     END
  424.   ENDIF
  425. END;
  426.  
  427. /******* Macros ********/
  428. MACRO MacScrollUp
  429.   ScrollScreenUp;
  430.   FixCursorPos;
  431. END;
  432.  
  433. MACRO MacScrollDown
  434.   ScrollScreenDown;
  435.   FixCursorPos;
  436. END;
  437.  
  438. MACRO MacDeleteLine
  439.   UndoGroupWithDelete;
  440.   SetBlockBeg; SetBlockEnd;
  441.   BriefLineMark;
  442.   DeleteBlock;
  443.   SetNonInclusiveBlock;
  444. END;
  445.  
  446.  
  447. MACRO MacMarkWord
  448.   HideBlock;
  449.   SetTempPos;
  450.   CursorRight;
  451.   WordLeft;
  452.   RightOfWord;
  453.   SetBlockEnd;
  454.   WordLeft;
  455.   SetBlockBeg;
  456.   HighlightBlock;
  457.   MoveToTempPos;
  458. END;
  459.  
  460. MACRO MacCopyBlock
  461.   BriefMarkLineIfNotMarked;
  462.   ClipCopy;
  463.   HideBlock;
  464.   SetNonInclusiveBlock;
  465.   CenterFixScreenPos;
  466. END;
  467.  
  468. MACRO MacCutBlock
  469.   BriefMarkLineIfNotMarked;
  470.   ClipCut;
  471.   SetNonInclusiveBlock;
  472.   CenterFixScreenPos;
  473. END;
  474.  
  475. MACRO MacDeleteNextWord
  476.   UndoGroupWithDelete;
  477.   SetTempPos;
  478.   CursorRightSkipWord;
  479.   CursorRightSkipWhite;
  480.   SetTempEndPos;
  481.   DeleteTempBlock;
  482.   FixScreenPos;
  483. END;
  484.  
  485. MACRO MacDeletePrevWord
  486.   UndoGroupWithDelete;
  487.   SetTempEndPos;
  488.   CursorLeftSkipNonWord;
  489.   CursorLeftSkipWord;
  490.   SetTempPos;
  491.   DeleteTempBlock;
  492.   FixScreenPos;
  493. END;
  494.  
  495. MACRO MacDeleteToBOL
  496.   UndoGroupWithDelete;
  497.   SetPrevPos;
  498.   LeftOfLine;
  499.   SetTempPos;
  500.   MoveToPrevPos;
  501.   SetTempEndPos;
  502.   DeleteTempBlock;
  503.   FixScreenPos;
  504. END;
  505.  
  506. MACRO MacOpenLine
  507.   UndoGroupWithInsert;
  508.   SetPrevPos;
  509.   RightOfLine;
  510.   LiteralChar(13);
  511. END;
  512.  
  513. MACRO MacEscape
  514.   HideBlock; SetNonInclusiveBlock;
  515. END;
  516.  
  517. MACRO MacDeleteKey
  518.   BriefDelete;
  519.   SetNonInclusiveBlock;
  520. END;
  521.  
  522. MACRO MacToggleCase
  523.   UndoGroupWithNone;
  524.   IF InqValidBlock THEN
  525.     ToggleCase;
  526.   ELSE
  527.     BEGIN
  528.       SetNonInclusiveBlock;
  529.       SetBlockBeg;
  530.       CursorCharRight;
  531.       SetBlockEnd;
  532.       HighlightBlock;
  533.       ToggleCase;
  534.       HideBlock;
  535.     END
  536.   ENDIF;
  537. END;
  538.  
  539. MACRO MacSaveFile
  540.   IF InqValidBlock THEN
  541.     WriteBlock
  542.   ELSE
  543.     SaveFile
  544.   ENDIF;
  545. END;
  546.  
  547. MACRO MacReplaceFwd
  548.   SetTempPos;
  549.   SetSearchDirection(1);
  550.   Replace;
  551.   MoveToTempPos;
  552.   FixScreenPos;
  553. END;
  554.  
  555. MACRO MacSearchFwd
  556.   SetSearchDirection(1);
  557.   GetFindString;
  558. END;
  559.  
  560. /******* Brief Key Bindings  ******/
  561.  
  562. KEYBOARD System
  563. F7        : RecordKeyMacro;
  564. F8        : PlaybackKeyMacro;
  565. F9        : MakeProject;  : MakeProject
  566. F10       : Menu;
  567.  
  568. shift-F4: WindowTileHorz;
  569.  
  570. Alt-F2    : ZoomWindow;   : ZoomWindow
  571. Alt-F3    : InspectAtCursor; : InspectAtCursor
  572. Alt-F7    : RunToHere;    : RunToHere
  573. Alt-F9    : LocalMenu;
  574. Alt-F10   : CompileFile;  : CompileFile
  575.  
  576. ctrl-F2   : TerminateProgram;     : TerminateProgram
  577. ctrl-F3   : ViewCallStack;
  578. ctrl-F7   : Modify; : Modify
  579. ctrl-F8   : ToggleBreakpoint; : ToggleBreakpoint
  580. ctrl-F9   : RunProgram;       : RunProgram
  581.  
  582. Ctrl-N    : NextError;    : PrevError
  583. Ctrl-P    : PrevError;    : NextError
  584.  
  585. Alt-E       : OpenFileInPane;   
  586. Alt-Shift-E : OpenFile;
  587. Alt-H       : Help;         : Help
  588. Alt-Shift-H : Help;
  589. Alt-O       : SaveFileAs;   : SaveFileAs
  590. Alt-Shift-O : SaveFileAs;
  591. Alt-W       : MacSaveFile;     : SaveFile
  592. Alt-Shift-W : MacSaveFile;
  593. Alt-X       : Quit;         : Quit
  594. Alt-Shift-X : Quit;
  595. Alt-Z       : FileMenu;
  596. Alt-Shift-Z : FileMenu;
  597.  
  598. /* ---- Pane mgmt keys ------------------ */
  599. Shift-UpAr  : MoveToPane(0);
  600. Alt-UpAr    : MoveToPane(0);
  601. F1+UpAr     : MoveToPane(0);
  602. Shift-DnAr  : MoveToPane(1);
  603. Alt-DnAr    : MoveToPane(1);
  604. F1+DnAr     : MoveToPane(1);
  605. Shift-LfAr  : MoveToPane(2);
  606. Alt-LfAr    : MoveToPane(2);
  607. F1+LfAr     : MoveToPane(2);
  608. Shift-RgAr  : MoveToPane(3);
  609. Alt-RgAr    : MoveToPane(3);
  610. F1+RgAr   : MoveToPane(3);
  611. F2+UpAr   : MovePaneEdge(0);
  612. F2+DnAr   : MovePaneEdge(1);
  613. F2+LfAr   : MovePaneEdge(2);
  614. F2+RgAr   : MovePaneEdge(3);
  615. F3+DnAr   : CreatePane(0);
  616. F3+UpAr   : CreatePane(1);
  617. F3+LfAr   : CreatePane(3);
  618. F3+RgAr   : CreatePane(2);
  619. F4+UpAr   : DeletePane(0);
  620. F4+DnAr   : DeletePane(1);
  621. F4+LfAr   : DeletePane(2);
  622. F4+RgAr   : DeletePane(3);
  623.  
  624. END;
  625.  
  626. KEYBOARD Editor
  627. F5        : MacSearchFwd;  : GetFindString
  628. F6        : MacReplaceFwd; : Replace
  629.  
  630. Alt-F5    : BEGIN SetSearchDirection(0); GetFindString; END;
  631. Alt-F6    : BEGIN SetTempPos; SetSearchDirection(0); Replace; MoveToTempPos; FixScreenPos; END;
  632.  
  633. Shift-F5  : RepeatSearch(1);  : RepeatSearch
  634. Shift-F6  : BEGIN SetTempPos; RepeatReplace; MoveToTempPos; FixScreenPos; END;
  635.  
  636. /* Ctrl-F1 is mapped to HelpKeywordSearch for backward compatibility with */
  637. /* the previous IDEs. It should be considered reserved by Borland and     */
  638. /* subject to change in future releases.                                  */
  639.  
  640. Ctrl-F1   : HelpKeywordSearch;  : HelpKeywordSearch
  641.  
  642. Ctrl-F5   : ToggleCaseSensitive;
  643. Ctrl-F6   : ToggleRegExp;
  644.  
  645. Ctrl-dash : DeleteBuffer;
  646.  
  647. Esc       : MacEscape;
  648. Del       : MacDeleteKey;
  649. PgDn      : BriefPageDown;
  650. PgUp      : BriefPageUp;
  651. UpAr      : BriefLineUp;
  652. DnAr      : BriefLineDown;
  653. Star      : Undo; : Undo
  654. Home      : BriefHome;
  655. End       : BriefEnd;
  656. BkSp      : BriefBackspace;
  657. shift-BkSp: BriefBackspace;
  658. Tab       : BriefTab;
  659. shift-Tab : BriefBackTab;
  660. LfAr      : BriefLeft;
  661. RgAr      : BriefRight;
  662. ctrl-LfAr : BriefWordLeft;
  663. ctrl-RgAr : BriefWordRight;
  664. ctrl-PgDn : BriefFileEnd;
  665. ctrl-PgUp : BriefFileBeg;
  666. shift-Home: LeftOfScreen;
  667. shift-End : RightOfScreen;
  668. enter     : LiteralChar(13);
  669. ctrl-Home : TopOfScreen;
  670. ctrl-End  : BottomOfScreen;
  671. Ins       : BEGIN ClipPaste; HideBlock END;     : ClipPaste
  672. Plus      : MacCopyBlock;  : ClipCopy
  673. Minus     : MacCutBlock;   : ClipCut
  674.  
  675. Ctrl-A    : LiteralChar(1);
  676. Ctrl-B    : CursorLineToWindowBottom;
  677. Ctrl-C    : CenterLineInWindow;
  678. Ctrl-D    : MacScrollDown;
  679. Ctrl-E    : MacScrollUp;
  680. Ctrl-F    : LiteralChar(6);
  681. ctrl-G    : LiteralChar(7);
  682. /* Ctrl-G    : BrowserMenu;   not implemented */
  683. ctrl-H    : LiteralChar(8);
  684. ctrl-I    : LiteralChar(9);
  685. ctrl-J    : LiteralChar(10);
  686. Ctrl-K    : MacDeleteToBOL;
  687. ctrl-L    : LiteralChar(12);
  688. Ctrl-M    : LiteralChar(13);
  689. ctrl-R    : LiteralChar(18);
  690. Ctrl-S    : IncrementalSearch;
  691. Ctrl-T    : CursorLineToWindowTop;
  692. Ctrl-U    : Redo; : Redo
  693. ctrl-V    : LiteralChar(22);
  694. ctrl-W    : LiteralChar(23);
  695. /* Ctrl-W    : ToggleBackup;  not implemented */
  696. ctrl-X    : LiteralChar(24);
  697. ctrl-Y    : LiteralChar(25);
  698. ctrl-Z    : LiteralChar(26);
  699. Ctrl-bksp : MacDeletePrevWord;
  700. Ctrl-enter : MacOpenLine;
  701.  
  702. Alt-A       : BriefNonInclusiveMark;
  703. Alt-Shift-A : BriefNonInclusiveMark;
  704. Alt-B       : BufferList; : BufferList
  705. Alt-Shift-B : BufferList;
  706. Alt-C       : BriefColumnMark;
  707. Alt-Shift-C : BriefColumnMark;
  708. Alt-D       : MacDeleteLine;
  709. Alt-Shift-D : MacDeleteLine;
  710. Alt-G       : GoToLine; : GoToLine
  711. Alt-Shift-G : GoToLine;
  712. Alt-I       : ToggleInsert;
  713. Alt-Shift-I : ToggleInsert;
  714. Alt-J+0       : BEGIN MoveToMark(0); FixScreenPos; END;
  715. Alt-Shift-J+0 : BEGIN MoveToMark(0); FixScreenPos; END;
  716. Alt-J+1       : BEGIN MoveToMark(1); FixScreenPos; END;
  717. Alt-Shift-J+1 : BEGIN MoveToMark(1); FixScreenPos; END;
  718. Alt-J+2       : BEGIN MoveToMark(2); FixScreenPos; END;
  719. Alt-Shift-J+2 : BEGIN MoveToMark(2); FixScreenPos; END;
  720. Alt-J+3       : BEGIN MoveToMark(3); FixScreenPos; END;
  721. Alt-Shift-J+3 : BEGIN MoveToMark(3); FixScreenPos; END;
  722. Alt-J+4       : BEGIN MoveToMark(4); FixScreenPos; END;
  723. Alt-Shift-J+4 : BEGIN MoveToMark(4); FixScreenPos; END;
  724. Alt-J+5       : BEGIN MoveToMark(5); FixScreenPos; END;
  725. Alt-Shift-J+5 : BEGIN MoveToMark(5); FixScreenPos; END;
  726. Alt-J+6       : BEGIN MoveToMark(6); FixScreenPos; END;
  727. Alt-Shift-J+6 : BEGIN MoveToMark(6); FixScreenPos; END;
  728. Alt-J+7       : BEGIN MoveToMark(7); FixScreenPos; END;
  729. Alt-Shift-J+7 : BEGIN MoveToMark(7); FixScreenPos; END;
  730. Alt-J+8       : BEGIN MoveToMark(8); FixScreenPos; END;
  731. Alt-Shift-J+8 : BEGIN MoveToMark(8); FixScreenPos; END;
  732. Alt-J+9       : BEGIN MoveToMark(9); FixScreenPos; END;
  733. Alt-Shift-J+9 : BEGIN MoveToMark(9); FixScreenPos; END;
  734. Alt-K       : DeleteToEOL;
  735. Alt-Shift-K : DeleteToEOL;
  736. Alt-L       : BriefLineMark;
  737. Alt-Shift-L : BriefLineMark;
  738. Alt-M       : BriefInclusiveMark;
  739. Alt-Shift-M : BriefInclusiveMark;
  740. Alt-N       : NextBuffer;
  741. Alt-Shift-N : NextBuffer;
  742. /* Alt-P       : PrintBlock; next time */
  743. /* Alt-Shift-P : PrintBlock; next time */
  744. Alt-Q       : LiteralChar;
  745. Alt-Shift-Q : LiteralChar;
  746. Alt-R       : ReadBlock;
  747. Alt-Shift-R : ReadBlock;
  748. Alt-S       : MacSearchFwd;
  749. Alt-Shift-S : MacSearchFwd;
  750. Alt-T       : MacReplaceFwd;
  751. Alt-Shift-T : MacReplaceFwd;
  752. Alt-U       : Undo;
  753. Alt-Shift-U : Undo;
  754. /*Alt-V     : ShowVersion;   not implemented */
  755. Alt-0       : SetMark(0);
  756. Alt-1       : SetMark(1);
  757. Alt-2       : SetMark(2);
  758. Alt-3       : SetMark(3);
  759. Alt-4       : SetMark(4);
  760. Alt-5       : SetMark(5);
  761. Alt-6       : SetMark(6);
  762. Alt-7       : SetMark(7);
  763. Alt-8       : SetMark(8);
  764. Alt-9       : SetMark(9);
  765. Alt-BkSp    : MacDeleteNextWord;
  766. Alt-dash    : PrevBuffer;
  767.  
  768. /* ---- Control Q sequences ------------------ */
  769. ctrl-Q+[       : MatchPairForward;
  770. ctrl-Q+ctrl-[  : MatchPairForward;
  771. ctrl-Q+]       : MatchPairBackward;
  772. ctrl-Q+ctrl-]  : MatchPairBackward;
  773.  
  774. /* ---- Control O sequences ------------------ */
  775. ctrl-O+^A   : OpenFileAtCursor; : OpenFileAtCursor
  776. ctrl-O+^B   : BrowseSymbolAtCursor; : BrowseSymbolAtCursor
  777. Ctrl-O+^O   : MacToggleCase;
  778.  
  779. END;
  780.  
  781. KEYBOARD MessageWindow
  782. space : MsgViewSrc; : MsgViewSrc
  783. enter : MsgEditSrc; : MsgEditSrc
  784. END;
  785.  
  786. KEYBOARD BreakpointView
  787. ctrl-P : DebugDetailBreakList; : DebugDetailBreakList
  788. ctrl-I : DebugInspectBreakList; : DebugInspectBreakList
  789. ctrl-E : DebugEditBreakList; : DebugEditBreakList
  790. ctrl-R : DebugRemoveBreakList; : DebugRemoveBreakList
  791. ctrl-A : DebugAddAtLineBreakList; : DebugAddAtLineBreakList
  792. /*
  793. ctrl-W : DebugAddWinMsg; : DebugAddWinMsgBreakList
  794. */
  795. END;
  796.  
  797. KEYBOARD CallStack
  798. ctrl-I : DebugInspectCallStack; : DebugInspectCallStack
  799. ctrl-E : DebugEditCallStack; : DebugEditCallStack
  800. END;
  801.  
  802. KEYBOARD DataInspector
  803. ctrl-R : DebugRangeInspect; : DebugRangeInspect
  804. ctrl-C : DebugChange; : DebugChange
  805. ctrl-I : DebugInspectData; : DebugInspectData
  806. ctrl-D : DebugDescend; : DebugDescend
  807. ctrl-N : DebugNewExpr; : DebugNewExpr
  808. ctrl-T : DebugTypecast; : DebugTypecast
  809. END;
  810.  
  811. KEYBOARD DebugLog
  812. ctrl-C : DebugCaptureLog; : DebugCaptureLog
  813. ctrl-O : DebugLogOptions; : DebugLogOptions
  814. ctrl-A : DebugCommentLog; : DebugCommentLog
  815. ctrl-E : DebugEraseLog; : DebugEraseLog
  816. END;
  817.  
  818. KEYBOARD RegisterView
  819. ctrl-H : DebugHexReg; : DebugHexReg
  820. ctrl-D : DebugDecimalReg; : DebugDecimalReg
  821. ctrl-W : DebugWordReg; : DebugWordReg
  822. ctrl-U : DebugDWordReg; : DebugDWordReg
  823. END;
  824.  
  825. KEYBOARD WatchView
  826. ctrl-P : DebugDetailWatchList; : DebugDetailWatchList
  827. ctrl-R : DebugRemoveWatchList; : DebugRemoveWatchList
  828. ctrl-A : DebugAddWatchList; : DebugAddWatchList
  829. END;
  830.  
  831. KEYBOARD ProjectWindow
  832. enter    : ProjectNodeAction;
  833. plus     : ProjectExpandNode;
  834. minus    : ProjectCollapseNode;
  835. space    : ProjectNodeToggle;
  836. esc      : ProjectEndNodeSearch;
  837. upar     : ProjectNodeUp;
  838. dnar     : ProjectNodeDown;
  839. home     : ProjectFirstNode;
  840. end      : ProjectLastNode;
  841. pgup     : ProjectPrevPage;
  842. pgdn     : ProjectNextPage;
  843. alt-lfar : ProjectPromoteNode;
  844. alt-rgar : ProjectDemoteNode;
  845. alt-upar : ProjectMoveUp;
  846. alt-dnar : ProjectMoveDown;
  847. END;
  848.