home *** CD-ROM | disk | FTP | other *** search
/ Beijing Paradise BBS Backup / PARADISE.ISO / software / BBSDOORW / AUROR21A.ZIP / WPKBD.AML < prev    next >
Text File  |  1995-09-01  |  22KB  |  589 lines

  1.  
  2. // -------------------------------------------------------------------
  3. // The Aurora Editor v2.1
  4. // Copyright 1993-1995 nuText Systems. All Rights Reserved Worldwide.
  5. //
  6. // WordPerfect Keyboard definitions (included by MAIN.AML)
  7. //
  8. // If you have made any changes, save this file and select 'Recompile
  9. // the Editor' from the Set menu. Exit and re-enter the editor for
  10. // your changes to take effect.
  11. // -------------------------------------------------------------------
  12.  
  13. // -------------------------------------------------------------------
  14. //  Edit and File Manager windows
  15. // -------------------------------------------------------------------
  16.  
  17.   object  edit_fmgr
  18.  
  19.   // Controls
  20.   function  '≡'                                // close window
  21.     close
  22.   end
  23.  
  24.   // Menu activation
  25.   key  <esc>           gotobar                 // to last menu bar item
  26.   key  <alt =>         gotobar                 // to last menu bar item (wp)
  27.   key  <f3>            gotomenu "help"         // goto help menu (wp)
  28.   key  <shift f7>      gotomenu "print"        // goto print menu (wp)
  29.   key  <alt t>         gotobar2                // to last toolbar/drive item
  30.  
  31.   // Scroll
  32.   key  <pgdn>          pagedown                // scroll down (wp)
  33.   key  <pgup>          pageup                  // scroll up (wp)
  34.   key  <grey->         row (getviewtop)        // to page top (wp)
  35.   key  <grey+>         row (getviewbot)        // to page bottom (wp)
  36.   key  <ctrl pgup>     row 1                   // to file top
  37.   key  <ctrl pgdn>     row (getlines)          // to file bottom
  38.   key  <center>        adjustrow               // center cursor
  39.   key  <ctrl up>       rollrow -1              // scroll up one line
  40.   key  <ctrl down>     rollrow  1              // scroll down one line
  41.   key  <ctrl ->        lastpos                 // to last cursor position
  42.  
  43.   // File
  44.   key  <ctrl n>        opennew                 // new edit window
  45.   key  <shift f10>     askopen                 // open prompt (wp)
  46.   key  <alt z>         openlast                // open last window
  47.   key  <alt ->         filelist                // file list
  48.   key  <alt q>         close                   // close window
  49.   key  <f7>            closeall                // close all windows (wp)
  50.  
  51.   // Window
  52.   key  <f5>            winlist                 // window list (wp)
  53.   key  <ctrl z>        maximize                // maximize window
  54.   key  <shift f3>      nextwindow              // next window (wp)
  55.   //key  <f12>           prevwindow              // prev window
  56.   //key  <shift f3>      tile 'v'                // tile vertical
  57.   //key  <shift f4>      tile 'h'                // tile horizontal
  58.   //key  <shift f5>      cascade                 // cascade
  59.   key  <ctrl k><q>     close                   // close window
  60.  
  61.   // Search
  62.   key  <ctrl s>        askscan                 // file scan prompt
  63.   key  <ctrl b>        gotomark 't'            // find top of block
  64.   key  <ctrl 6>        cyclebook               // cycle through bookmarks
  65.  
  66.   // Print
  67.   key  <ctrl p>        print                   // print
  68.   key  <alt p>         print 'b'               // print block
  69.  
  70.   // Macro
  71.   key  <ctrl v>        askeval                 // macro command prompt
  72.   key  <ctrl f1>       shell                   // exit to DOS (wp)
  73.   key  <shift f12>     pickmacro               // macro picklist
  74.   key  <ctrl f12>      runmac "maclist"        // macro menu
  75.  
  76.   // undefined or unnamed keys
  77.   key <otherkey> (keycode)
  78.     say (getkeyname (keycode)) + " not defined"
  79.   end
  80.  
  81.  
  82. // -------------------------------------------------------------------
  83. //  Prompts and Edit windows
  84. // -------------------------------------------------------------------
  85.  
  86.   object  prompt
  87.  
  88.   // Controls
  89.   function  '≡'        close                   // close window
  90.   end
  91.  
  92.   function  '*'        enter                   // simulate <enter>
  93.   end                                          //  (2-line box only)
  94.  
  95.   // Cursor
  96.   key  <left>          left                    // move cursor left
  97.   key  <right>         right                   // move cursor right
  98.   key  <home>          col 1                   // to column one
  99.   key  <end>           col  getlinelen + 1     // to end of line (wp)
  100.  
  101.   // Cursor + CUA-marking
  102.   key  <shift left>    left
  103.                        smark
  104.   key  <shift right>   right
  105.                        smark
  106.   key  <shift home>    col 1
  107.                        smark
  108.   key  <shift end>     col getlinelen + 1
  109.                        smark
  110.  
  111.   // Editing
  112.   key  <ins>           setting 'I' TOGGLE      // toggle insert mode (wp)
  113.   key  <del>           delchar                 // delete character (wp)
  114.  
  115.   key  <backspace>     backsp                  // delete left character (wp)
  116.   key  <ctrl [>        literal                 // enter literal character
  117.   key  <ctrl a>        asciilist               // display ascii chart
  118.  
  119.   // Block
  120.   key  <alt f4>        markchar                // mark character (wp)
  121.   key  <alt b>         markcolumn              // mark column
  122.   key  <alt 1>         markword                // mark word
  123.   key  <alt 2>         markeol                 // mark to end of line
  124.   key  <alt u>         destroymark             // unmark
  125.  
  126.   // copy block to prompt
  127.   key  <alt c>
  128.                        instext (getmarktext)
  129.                        col  getlinelen + 1
  130.  
  131.   // paste from clipboard to prompt
  132.   key  <grey*>
  133.                        oldmark = usemark _ClipName
  134.                        instext (getmarktext)
  135.                        usemark oldmark
  136.                        col  getlinelen + 1
  137.  
  138.   // copy from prompt to clipboard
  139.   //key  <grey+>         copy
  140.  
  141.   // Prompt history
  142.   key  <up>            prevhist                // retrieve prev prompt
  143.   key  <down>          nexthist                // retrieve next prompt
  144.   key  <pgup>          askhistory              // history popup menu
  145.   key  <pgdn>          askhistory              // history popup menu
  146.  
  147.   // Exit
  148.   key  <esc>           close                   // quit prompt
  149.   key  <alt q>         close                   // quit prompt
  150.  
  151.   // non-function keys
  152.   key  <char> (character)                      // typeable keys
  153.     write character
  154.   end
  155.  
  156.   // filename completion
  157.   key  <ctrl tab>      askcomplete             // filename completion
  158.   key  <tab>           askcomplete             // filename completion
  159.   end
  160.  
  161.  
  162. // -------------------------------------------------------------------
  163. //  Edit windows
  164. // -------------------------------------------------------------------
  165.  
  166.   object  edit
  167.  
  168.   // Controls
  169.   function  '≡'
  170.     close                                      // close window
  171.   end
  172.  
  173.   // Menu
  174.   key  <esc>           gotobar                 // to last menu bar item
  175.  
  176.   // Cursor
  177.  
  178.   // cursorleft with wrap (wp)
  179.   key  <left>
  180.     if getcol == 1 then                        // wrap if at column 1
  181.       if up then                               // ..and not at first line
  182.         col getlinelen + 1
  183.       end
  184.     else
  185.       left
  186.     end
  187.     smark                                      // cua marking
  188.   end
  189.   key <shift left>  call <left>
  190.  
  191.   // cursorright with wrap (wp)
  192.   key  <right>
  193.     if getcol > getlinelen then                // wrap if at end-of-line
  194.       if down then                             // ..and not at last line
  195.         col 1
  196.       end
  197.     else
  198.       right
  199.     end
  200.     smark                                      // cua marking
  201.   end
  202.   key <shift right>  call <right>
  203.  
  204.   key  <up>            up                      // move cursor up (wp)
  205.   key  <down>          down                    // move cursor down (wp)
  206.  
  207.   key  <shift up>      up
  208.                        smark
  209.   key  <shift down>    down
  210.                        smark
  211.  
  212.   // home key (wp)
  213.   forward  wpdelword
  214.   key  <home>
  215.     case getkey
  216.       when <up>         row (getviewtop)       // page top (wp)
  217.       when <down>       row (getviewbot)       // page bottom (wp)
  218.       when <right>      col getlinelen + 1     // end of line (wp)
  219.       when <left>       col 1                  // column 1 (wp)
  220.       when <backspace>  wpdelword              // deleteword (wp)
  221.       when <home>
  222.         case getkey
  223.           when <up>     row 1                  // file top (wp)
  224.           when <down>   row (getlines)         // file bottom (wp)
  225.         end
  226.     end
  227.     smark                                      // cua marking
  228.   end
  229.  
  230.   key  <enter>         enter                   // enter key (wp)
  231.   key  <greyenter>     enter                   // keypad enter key
  232.   key  <del>           delchar2                // delete character (wp)
  233.   key  <backspace>     backsp                  // delete left char (wp)
  234.  
  235.   // delete word
  236.   function  wpdelword
  237.     if poschar _CSet (getchar) then
  238.       if not find _CSet "yrl" then
  239.         col 1
  240.       else
  241.         right 1
  242.       end
  243.     end
  244.     delword _CSet
  245.   end
  246.  
  247.   key  <ctrl backspace>  wpdelword             // delete word (wp)
  248.  
  249.   key  <tab>           tabright                // tab right (wp)
  250.   key  <shift tab>     tableft                 // tab left (wp)
  251.  
  252.   key  <ctrl left>     prevword                // find left word
  253.                        smark
  254.   key  <ctrl right>    nextword                // find right word
  255.                        smark
  256.  
  257.   // Scroll
  258.   key  <pgdn>          pagedown                // page down (wp)
  259.   key  <pgup>          pageup                  // page up (wp)
  260.  
  261.   // Scroll + CUA-marking
  262.   key  <shift pgdn>    pagedown
  263.                        smark
  264.   key  <shift pgup>    pageup
  265.                        smark
  266.  
  267.   key  <ctrl end>      row (getviewbot)
  268.                        smark                   // to page bottom
  269.  
  270.   key  <ctrl pgup>     row 1
  271.                        smark                   // to file top
  272.   key  <ctrl pgdn>     row (getlines)          // to file bottom
  273.                        smark
  274.  
  275.   key  <ctrl up>       rollrow -1              // scroll up one line
  276.                        smark
  277.   key  <ctrl down>     rollrow  1              // scroll down one line
  278.                        smark
  279.  
  280.   // File
  281.  
  282.   // text in/out (wp)
  283.   function inout
  284.     say "1 (S)ave, 2 (R)etrieve "
  285.     k = getkey
  286.     display
  287.     case k
  288.       when <1>, <s>, <S>   asksaveas
  289.       when <2>, <r>, <R>   askinsert
  290.     end
  291.   end
  292.  
  293.   key  <ctrl f5>       inout                   // text in/out (wp)
  294.  
  295.   key  <ctrl ]>        openword                // open file at cursor
  296.   key  <alt n>         askname                 // rename prompt
  297.   key  <f10>           save                    // save file (wp)
  298.   //key  <ctrl ins>      prevfile                // next file
  299.   //key  <ctrl del>      nextfile                // prev file
  300.   //key  <f4>            open "*.*"              // display file manager
  301.   key  <alt q>         close                   // close file/window
  302.   key  <ctrl x>        close 's'               // save & close file/window
  303.  
  304.   // Window
  305.   key  <ctrl c>        copywin                 // copy window
  306.   key  <alt h>         splitwin 'h'            // split window horizontal
  307.   key  <alt v>         splitwin 'v'            // split window vertical
  308.   //key  <ctrl f8>       toolbar                 // display tool bar
  309.  
  310.   // Block
  311.  
  312.   function  placeblock
  313.     title = gettitle
  314.     settitle "press <enter> to place block"
  315.     loop
  316.       case getkey
  317.         when <left>  left
  318.         when <right> right
  319.         when <up>    up
  320.         when <down>  down
  321.         when <pgdn>  pagedown
  322.         when <pgup>  pageup
  323.         when <enter>
  324.           paste
  325.           break
  326.       end
  327.     end
  328.     settitle title
  329.   end
  330.  
  331.   // cut and paste (wp)
  332.   key  <ctrl del>
  333.     cut
  334.     placeblock
  335.   end
  336.  
  337.   // copy and paste (wp)
  338.   key  <ctrl ins>
  339.     copy
  340.     placeblock
  341.   end
  342.  
  343.   // wordperfect-style markblock (wp)
  344.   function  markblock
  345.     markstream
  346.     loop
  347.       k = getkey
  348.       case k
  349.         when <left>   send <left>
  350.         when <right>  send <right>
  351.         when <up>     send <up>
  352.         when <down>   send <down>
  353.         when <ctrl del>  sendkey k
  354.         when <ctrl ins>  sendkey k
  355.         when <alt f4>    break
  356.         otherwise
  357.           if find (char k mod 256) 'i' then
  358.             send <right>
  359.           end
  360.       end
  361.     end
  362.     destroymark
  363.   end
  364.  
  365.   key  <alt f4>        markblock               // mark block (wp)
  366.   key  <alt l>         markline                // mark line
  367.   key  <alt 3>         markpara "tb"           // mark paragraph
  368.   key  <alt c>         copyblock2              // copy block
  369.   key  <alt o>         copyblockover           // overlay block
  370.   key  <alt m>         moveblock2              // move block
  371.   key  <ctrl m>        moveblockover           // move block over
  372.   key  <alt d>         deleteblock2            // delete block
  373.   //key  <shift f7>      shiftblock -1           // unindent block
  374.   //key  <shift f8>      shiftblock  1           // indent block
  375.   key  <ctrl k><f>     fillblock2              // fill block with string
  376.   key  <alt r>         formatblock2            // reformat block
  377.   key  <alt y>         formatblock2 "rj"       // reformat & right just block
  378.   key  <ctrl k><s>     saveblock2              // save block
  379.   key  <ctrl k><o>     sortblock2              // sort block
  380.   key  <ctrl k><u>     caseblock               // change block to uppercase
  381.   //key  <shift f9>      quote                   // quote a block
  382.   key  <ctrl k><c>     justblock2 'c'          // center a block
  383.  
  384.   // Search
  385.   key  <f2>            askfind                 // find prompt (wp)
  386.   key  <shift f2>      askfind                 // find reverse?? (wp)
  387.   key  <alt f2>        askrepl                 // replace prompt (wp)
  388.   key  <ctrl i>        isearch                 // incremental search
  389.   key  <ctrl h>        askfindo                // find occurrences
  390.  
  391.   key  <ctrl l>        findlast                // do last find/replace
  392.   key  <ctrl 2>        quickbook               // set quick bookmark
  393.   key  <ctrl j>        askrow                  // go to line prompt
  394.   key  <alt 7>         search2 "f/f"           // go to next fold
  395.   //key  <alt f3>        gotomatch2              // find matching char
  396.  
  397.   // Fold
  398.   key  <alt 8>         foldline                // fold next line
  399.   key  <alt 9>         foldline 'u'            // unfold next line
  400.   key  <alt g>         destroyfold2            // destroy closed/open fold
  401.   key  <alt f>         foldblock2              // fold block
  402.   key  <alt \>                                 // open or close fold
  403.     if fold? then
  404.        openfold
  405.     else
  406.        closefold
  407.     end
  408.   end
  409.   key  <alt 0>         foldall 'ds'            // destroy all folds
  410.   key  <alt [>         foldall 'os'            // open all folds
  411.   key  <alt ]>         foldall 'cs'            // close all folds
  412.  
  413.   // Edit
  414.   key  <f1>            undo                    // undo last change (wp)
  415.   key  <ctrl y>        redo                    // redo last change
  416.   key  <ctrl enter>    insline2                // insert line
  417.   //key  <ctrl backspace> delline                // delete line
  418.   key  <alt s>         splitline2              // split line
  419.   key  <alt j>         joinline                // join line
  420.   key  <alt 4>         insline (gettext)       // duplicate line
  421.   key  <alt 5>         swapline                // swap line
  422.   key  <shift f6>      centerline              // center line (wp)
  423.   key  <shift f5>      timestamp               // date/time stamp (wp)
  424.   key  <ctrl k><x>     tabfile                 // expand tabs
  425.   key  <ctrl \>        hiliteword              // highlight words
  426.  
  427.   // flush right <wp>
  428.   function flushr
  429.     if getcol <= getlinelen and getlinelen < _RMargin then
  430.       instext (copystr ' ' _RMargin - getlinelen)
  431.     end
  432.   end
  433.  
  434.   key  <alt f6>        flushr                  // flush right (wp)
  435.  
  436.   // Clipboard
  437.   key  <ctrl grey->    cut 'a'                 // cut append
  438.   key  <ctrl grey+>    copy 'a'                // copy append
  439.   key  <grey*>         paste                   // paste
  440.   key  <ctrl grey*>    paste 'o'               // paste over
  441.   key  <ctrl grey/>    clear                   // clear clipboard
  442.  
  443.   // Set
  444.   key  <ctrl w>        setting 'L' TOGGLE      // live word wrap toggle
  445.   key  <ctrl d>        setting 'D' TOGGLE      // line draw toggle
  446.  
  447.   // Macro
  448.   //key  <shift f10>     compilemacro2 (getbufname)  // compile current file
  449.   //key  <shift f11>     runmacro2 (getbufname)      // run current file
  450.   key  <shift f1>      runcfg "main"           // configuration (wp)
  451.  
  452.   // non-function (typeable) keys
  453.   key  <char> (character)                      // typeable keys
  454.     write character
  455.   end
  456.  
  457.   // Other
  458.   key  <ctrl q><q>     askrepkey               // repeat entered keys
  459.  
  460.   // invoke a spell checker from within an edit window (wp)
  461.   // (replace 'jspell' with your favorite spell checker)
  462.   key  <ctrl f2>
  463.     save                                       // save the current file
  464.     run  "jspell " + getbufname  "ck"          // call spellchecker
  465.     reopen                                     // reopen current file
  466.   end
  467.  
  468. // -------------------------------------------------------------------
  469. //  File Manager windows
  470. // -------------------------------------------------------------------
  471.  
  472.   object  fmgr
  473.  
  474.   // Menu activation
  475.   key  <tab>           gotobar2                // to drive menu bar
  476.  
  477.   // Cursor
  478.   key  <left>          rollcol -1              // scroll left one column
  479.   key  <right>         rollcol  1              // scroll right one column
  480.   key  <home>          col 1                   // scroll to column one
  481.  
  482.   key  <up>            up                      // move cursor up
  483.   key  <down>          down                    // move cursor down
  484.  
  485.   key  <shift up>      fmark                   // mark files
  486.                        up
  487.   key  <shift down>    fmark                   // mark files
  488.                        down
  489.  
  490.   // file manager commands (single character command codes)
  491.   key  <char> (c)
  492.  
  493.     // toggle file mark
  494.     if c == ' ' then
  495.       fmark
  496.  
  497.     // <shift-character> commands
  498.     elseif shiftkey? then
  499.       case  locase c
  500.         when 'o'     fopen 'o'                   // open file/directory
  501.         when 'e'     fopen 'e'                   // open file/directory
  502.         when 'z'     fopen "ze"                  // open maximized
  503.         when 'b'     fopen 'b'                   // open binary file
  504.         when 'y'     fopen "be"                  // open binary in one window
  505.         when 'k'     openkey2 (getffile)         // open key macro file
  506.         when 'm'     fmove                       // move file
  507.         when 'c'     fcopy                       // copy file
  508.         when 'd'     fdelete                     // delete file
  509.         when 'n'     frename                     // rename file
  510.         when 'r'     frun 'c'                    // run program/batch file
  511.         when 'p'     fprint                      // print file
  512.         when 'a'     fattr                       // change file attributes
  513.         when 't'     ftouch                      // touch file
  514.  
  515.         // spell checker
  516.         when 's'     run "jspell " + getffile  "ck"
  517.  
  518.         // unarchive .ZIP or .LZH files
  519.         when 'u'
  520.           f = getffile
  521.           run (if? (pos ".lzh" f 'i') "lha e " "pkunzip ") + f  "ck"
  522.           reopen
  523.  
  524.         // view .ZIP or .LZH archives
  525.         when 'v'
  526.           f = getffile
  527.           runcap (if? (pos ".lzh" f 'i') "lha v " "pkunzip -v ") + f
  528.       end
  529.  
  530.     // hotkey to files
  531.     else
  532.       onhotkey c
  533.     end
  534.  
  535.   key  <backspace>     onhotkey '\x08'         // undo hotkey
  536.  
  537.   // File
  538.   key  <ctrl backspace>   fup                  // parent directory
  539.  
  540.   // Mark
  541.   key  <alt m>         fmark "ma"              // mark all files
  542.   key  <alt u>         fmark "ua"              // unmark all
  543.  
  544.   // Command
  545.   key  <enter>         fopen '1'               // open file (one only)
  546.   key  <ctrl enter>    fopen 'q'               // open file (close fmgr)
  547.   key  <del>           fdelete                 // delete file
  548.  
  549.   // Sort
  550.   key  <alt n>         fsort 'n'               // sort by name
  551.   key  <alt s>         fsort 's'               // sort by size
  552.   key  <alt d>         fsort 'd'               // sort by date/time
  553.   key  <alt o>         fsort 'o'               // no sort (DOS order)
  554.  
  555.   // Print
  556.   key  <ctrl p>        print                   // print fmgr contents
  557.   end
  558.  
  559.  
  560. // -------------------------------------------------------------------
  561. //  Movable/Sizable windows
  562. // -------------------------------------------------------------------
  563.  
  564.   object  win
  565.  
  566.   //key  <ctrl f5>       sizekey                 // move/size with kbd
  567.   //key  <ctrl f6>       pankey                  // pan video with kbd
  568.  
  569.   key  <alt ins>       sizewin -2 -1 -2 -1 2   // move window northwest
  570.   key  <alt del>       sizewin  2  1  2  1 2   // move window southeast
  571.   end
  572.  
  573.  
  574. // -------------------------------------------------------------------
  575. //  All windows
  576. // -------------------------------------------------------------------
  577.  
  578.   object  mon
  579.  
  580.   // key macros (wp)
  581.   key  <ctrl f10>      record                  // toggle record setting
  582.   key  <alt f10>       play                    // play scrap key macro
  583.  
  584.   // define multi-key prefixes
  585.   key  <ctrl k>        prefix <ctrl k>         // define <ctrl k> prefix
  586.   key  <ctrl o>        prefix <ctrl o>         // define <ctrl o> prefix
  587.   key  <ctrl q>        prefix <ctrl q>         // define <ctrl q> prefix
  588.  
  589.