home *** CD-ROM | disk | FTP | other *** search
/ The C Users' Group Library 1994 August / wc-cdrom-cusersgrouplibrary-1994-08.iso / vol_100 / 197_01 / emacs.rc < prev    next >
Text File  |  1979-12-31  |  16KB  |  806 lines

  1. ;    EMACS.RC:    Standard micro Startup program
  2. ;            for MicroEMACS 3.9
  3. ;            (C)opyright 1987 by Daniel M Lawrence
  4. ;            Last Update: 07/11/87
  5.  
  6. set $discmd FALSE
  7. write-message "[Setting up....]"
  8.  
  9. ; If you screen "SNOWS", uncomment this line
  10. ;    set $flicker "TRUE"
  11.  
  12. ; If you are on an IBM-PC EGA card and want to force the
  13. ; screen to EGA mode, uncomment the following line
  14. ;    set $sres "EGA"
  15.  
  16. ;    ***** Rebind the Function key group
  17.  
  18. bind-to-key search-forward        FN;
  19. bind-to-key search-reverse        FN<
  20. bind-to-key hunt-forward        FN=
  21. bind-to-key hunt-backward        FN>
  22. bind-to-key execute-macro-1        FN?    ;Toggle Function key window
  23. bind-to-key execute-macro-2        FN@    ;Toggle Help window
  24. bind-to-key execute-macro-3        FNA    ;Toggle smooth paging
  25. bind-to-key execute-macro-4        FNB    ;Change editor mode
  26. bind-to-key save-file            FNC
  27. bind-to-key exit-emacs            FND
  28.  
  29. bind-to-key execute-macro-10        FNT
  30. bind-to-key execute-macro-11        FNU
  31. bind-to-key execute-macro-12        FNV
  32. bind-to-key execute-macro-13        FNW
  33. bind-to-key execute-macro-14        FNX
  34. bind-to-key execute-macro-15        FNY
  35. bind-to-key execute-macro-16        FNZ
  36. bind-to-key execute-macro-17        FN[
  37. bind-to-key execute-macro-18        FN\
  38. bind-to-key execute-macro-19        FN]
  39.  
  40. ;    Set Default Global modes
  41.  
  42. add-global-mode "blue"
  43.  
  44. ;    Toggle function key window display
  45.  
  46. 1    store-macro
  47.     !if %rcfkeys
  48.         !goto rcfoff
  49.     !endif
  50.  
  51. ;    toggle function key window on
  52.     save-window
  53.     1 next-window
  54.     !if &sequal $cbufname "emacs.hlp"
  55.         delete-window
  56.     !endif
  57.     !if ¬ &sequal $cbufname "Function Keys"
  58.         1 split-current-window
  59.         select-buffer "Function Keys"
  60.         add-mode "red"
  61.         !force 5 resize-window
  62.         &add × %rcmode 5 1 goto-line
  63.         1 redraw-display
  64.     !endif
  65.     set %rcfkeys TRUE
  66.     !force restore-window
  67.     !if &sequal $cbufname "Function Keys"
  68.         next-window
  69.     !endif
  70.     write-message "[Function key window ON]"
  71.     !return
  72.  
  73.     ;Toggle the function key window off
  74. *rcfoff
  75.     save-window
  76.     1 next-window
  77.     !if &sequal "Function Keys" $cbufname
  78.         delete-window
  79.     !endif
  80.     !force restore-window
  81.     write-message "[Function key window OFF]"
  82.     set %rcfkeys FALSE
  83. !endm
  84.  
  85. ;    Toggle HELP file onscreen
  86.  
  87. 2 store-macro
  88.     1 next-window
  89.  
  90.     ;Make sure the function key window isn't up!
  91.     !if &sequal $cbufname "Function Keys"
  92.         delete-window
  93.     !endif
  94.  
  95.     ;Bring up page 1
  96.     !if ¬ &seq $cbufname "emacs.hlp"
  97.         help
  98.         8 resize-window
  99.         add-mode "red"
  100.         beginning-of-file
  101.         2 forward-character
  102.     !endif
  103.  
  104. *rchelp
  105.  
  106.     write-message "[PgUp/PgDn] Page    [FN6] EXIT     ^G  Exit leaving page on screen"
  107.     update-screen
  108.     set %rctmp >key
  109.     !if &equ &asc %rctmp 0
  110.         set %rctmp >key
  111.         !if &seq %rctmp I
  112.             beginning-of-line
  113.             !force search-reverse "=>"
  114.             1 redraw-display
  115.             !goto rchelp
  116.         !endif
  117.         !if &seq %rctmp Q
  118.             beginning-of-line
  119.             2 forward-character
  120.             !force search-forward "=>"
  121.             1 redraw-display
  122.             !goto rchelp
  123.         !endif
  124.         !if &seq %rctmp "~@"
  125.             delete-window
  126.             !if &seq %rcfkeys TRUE
  127.                 set %rcfkeys FALSE
  128.                 execute-macro-1
  129.             !endif
  130.             write-message "[Help Exited]"
  131.             !return
  132.         !endif
  133.     !endif
  134.     !if &equ &asc %rctmp 7
  135.         next-window
  136.         set %rcfkeys FALSE
  137.         write-message "[Help Aborted]"
  138.         !return
  139.     !endif
  140.     !goto rchelp
  141. !endm
  142.  
  143. ;    toggle smooth paging mode
  144.  
  145. 3    store-macro
  146.     set $discmd FALSE
  147.     !if %rcspage
  148.         set %rcspage FALSE
  149.         set %rctmp "OFF"
  150.         bind-to-key previous-line FNH
  151.         bind-to-key next-line FNP
  152.     !else
  153.         set %rcspage TRUE
  154.         set %rctmp "ON "
  155.         bind-to-key execute-macro-5 FNH
  156.         bind-to-key execute-macro-6 FNP
  157.     !endif
  158.     set %cbuf $cbufname
  159.     set %cline $cwline
  160.     select-buffer "Function Keys"
  161.     set %rcline 4
  162.     !while &less %rcline 15
  163.  
  164.         %rcline goto-line
  165.         10 forward-character
  166.         3 delete-next-character
  167.         insert-string %rctmp
  168.         set %rcline &add %rcline 5
  169.  
  170.     !endwhile
  171.  
  172.     unmark-buffer
  173.     select-buffer %cbuf    
  174.     %cline redraw-display
  175.     set $discmd TRUE
  176.     write-message &cat &cat "[Smooth Paging " %rctmp "]"
  177. !endm
  178.  
  179. ;    Change editor mode
  180.  
  181. 4    store-macro
  182.     set %rcmode &add %rcmode 1
  183.     !if &equ %rcmode 3
  184.         set %rcmode 0
  185.     !endif
  186.  
  187.     !if %rcfkeys
  188.         save-window
  189.         1 next-window
  190.         !if &seq $cbufname "Function Keys"
  191.             add-mode "red"
  192.             !force 5 resize-window
  193.             &add × %rcmode 5 1 goto-line
  194.             1 redraw-display
  195.         !endif
  196.         restore-window
  197.         !if &sequal $cbufname "Function Keys"
  198.             next-window
  199.         !endif
  200.     !endif
  201.     !if &equ %rcmode 0
  202.         write-message "[Program MODE]"
  203.     !else
  204.         !if &equ %rcmode 1
  205.             write-message "[Wordprocessing MODE]"
  206.         !else
  207.             write-message "[Block MODE]"
  208.         !endif
  209.     !endif
  210. !endm
  211.  
  212. 5    store-macro
  213.     set %cc $target
  214.     !if &equ $cwline 1
  215.         move-window-up
  216.     !endif
  217.     set $target %cc
  218.     previous-line
  219. !endm
  220.  
  221. 6    store-macro
  222.     set %cc $target
  223.     !if &equ $cwline $wline
  224.         move-window-down
  225.     !endif
  226.     set $target %cc
  227.     next-line
  228. !endm
  229.  
  230. ;    Switch Shift-Function Key 1
  231.  
  232. 10    store-macro
  233.     !if &equ %rcmode 0
  234.         run rcdvar
  235.         !return
  236.     !endif
  237.     !if &equ %rcmode 1
  238.         end-of-line
  239.         set %rctmp $curcol
  240.         beginning-of-line
  241.         &div &sub $fillcol %rctmp 2 insert-space
  242.         beginning-of-line
  243.         !return
  244.     !endif
  245.     !if &equ %rcmode 2
  246.         !if &equ %rcltype 1
  247.             set %rcltype 2
  248.             set %rctmp "DOUBLE"
  249.         !else
  250.             set %rcltype 1
  251.             set %rctmp "SINGLE"
  252.         !endif
  253.         set %cbuf $cbufname
  254.         set %cline $cwline
  255.         select-buffer "Function Keys"
  256.         beginning-of-file
  257.         11 goto-line
  258.         47 forward-character
  259.         6 delete-next-character
  260.         insert-string %rctmp
  261.         unmark-buffer
  262.         select-buffer %cbuf    
  263.         %cline redraw-display
  264.         !return
  265.     !endif
  266. !endm
  267.  
  268. ;    Switch Shift-Function Key 2
  269.  
  270. 11    store-macro
  271.     !if &equ %rcmode 0
  272.         run showexp
  273.         !return
  274.     !endif
  275.     !if &equ %rcmode 1
  276.         nop
  277.         !return
  278.     !endif
  279.     !if &equ %rcmode 2
  280.         set %bkcopy FALSE
  281.         run getblock
  282.         write-message "[Block deleted]"
  283.         !return
  284.     !endif
  285. !endm
  286.  
  287. ;    Switch Shift-Function Key 3
  288.  
  289. 12    store-macro
  290.     !if &equ %rcmode 0
  291.         next-window
  292.         !return
  293.     !endif
  294.     !if &equ %rcmode 1
  295.         fill-paragraph
  296.         !return
  297.     !endif
  298.     !if &equ %rcmode 2
  299.         !if ¬ %rcbox
  300.             run loadbox
  301.         !endif
  302.         run box2
  303.         !return
  304.     !endif
  305. !endm
  306.  
  307. ;    Switch Shift-Function Key 4
  308.  
  309. 13    store-macro
  310.     !if &equ %rcmode 0
  311.         set $debug FALSE
  312.         run tdebug
  313.         !return
  314.     !endif
  315.     !if &equ %rcmode 1
  316.         set %rctmp @"User dictionary(<ret> if none): "
  317.         !if &seq %rctmp "ERROR"
  318.             !return
  319.         !endif
  320.         !if ¬ &seq %rctmp ""
  321.             set %rctmp &cat &cat "-u" %rctmp " "
  322.         !endif
  323.         save-file
  324.         set %rcspell TRUE
  325.         write-message ~n
  326.         shell-command &cat &cat "spell " %rctmp $cfname
  327.         execute-file "scan.cmd"
  328.         delete-other-windows
  329.         !if &seq %rcfkeys TRUE
  330.             set %rcfkeys FALSE
  331.             execute-macro-1
  332.         !endif
  333.         update-screen
  334.         write-message "[Spell Check complete]"
  335.         !return
  336.     !endif
  337.     !if &equ %rcmode 2
  338.         set %bkcopy TRUE
  339.         run getblock
  340.         write-message "[Block copied]"
  341.         !return
  342.     !endif
  343. !endm
  344.  
  345. ;    Switch Shift-Function Key 5
  346.  
  347. 14    store-macro
  348.     !if &equ %rcmode 0
  349.         execute-buffer @"Buffer to Execute: "
  350.         !return
  351.     !endif
  352.     !if &equ %rcmode 1
  353.         run refin
  354.         !return
  355.     !endif
  356.     !if &equ %rcmode 2
  357.         !if ¬ %rcbox
  358.             run loadbox
  359.         !endif
  360.         !if &equ %rcltype 1
  361.             run line1
  362.         !else
  363.             run line2
  364.         !endif
  365.         !return
  366.     !endif
  367. !endm
  368.  
  369. ;    Switch Shift-Function Key 6
  370.  
  371. 15    store-macro
  372.     !if &equ %rcmode 0
  373.         execute-macro
  374.         !return
  375.     !endif
  376.     !if &equ %rcmode 1
  377.         write-message "[MicroSCRIBE not ready]"
  378.         !return
  379.     !endif
  380.     !if &equ %rcmode 2
  381.         set %bkcopy TRUE
  382.         run putblock
  383.         !return
  384.     !endif
  385. !endm
  386.  
  387. ;    Switch Shift-Function Key 7
  388.  
  389. 16    store-macro
  390.     !if &equ %rcmode 0
  391.         run rcindent
  392.         !return
  393.     !endif
  394.     !if &equ %rcmode 1
  395.         run rcswap
  396.         !return
  397.     !endif
  398.     !if &equ %rcmode 2
  399.         !if ¬ %rcbox
  400.             run loadbox
  401.         !endif
  402.         run blank
  403.         !return
  404.     !endif
  405. !endm
  406.  
  407. ;    Switch Shift-Function Key 8
  408.  
  409. 17    store-macro
  410.     !if &equ %rcmode 0
  411.         run rcundent
  412.         !return
  413.     !endif
  414.     !if &equ %rcmode 1
  415.         write-message "[MicroSCRIBE not ready]"
  416.         !return
  417.     !endif
  418.     !if &equ %rcmode 2
  419.         set %bkcopy FALSE
  420.         run putblock
  421.         !return
  422.     !endif
  423. !endm
  424.  
  425. ;    Switch Shift-Function Key 9
  426.  
  427. 18    store-macro
  428.     !if &equ %rcmode 0
  429.         shell-command @"DOS command: "
  430.         write-message "[Press any key to reenter MicroEMACS...]"
  431.         set %rctmp >key
  432.         !return
  433.     !endif
  434.     !if &equ %rcmode 1
  435.         count-words
  436.         !return
  437.     !endif
  438.     !if &equ %rcmode 2
  439.         nop
  440.         !return
  441.     !endif
  442. !endm
  443.  
  444. ;    Switch Shift-Function Key 10
  445.  
  446. 19    store-macro
  447.     !if &equ %rcmode 0
  448.         i-shell
  449.         !return
  450.     !endif
  451.     !if &equ %rcmode 1
  452.         write-message "[MicroSCRIBE not ready]"
  453.         !return
  454.     !endif
  455.     !if &equ %rcmode 2
  456.         nop
  457.         !return
  458.     !endif
  459. !endm
  460.  
  461. ;    Load up the box macros....(pretty big...)
  462.  
  463. store-procedure loadbox
  464.     execute-file "boxmac.cmd"
  465.     set %rcbox TRUE
  466. !endm
  467.  
  468. ;    display a variable
  469. store-procedure    rcdvar
  470.     set %rcdebug $debug
  471.     set $debug FALSE
  472.     set %rctmp @&cat &cat "Variable to display[" %rcvar "]: "
  473.     !if ¬ &seq %rctmp ""
  474.         set %rcvar %rctmp
  475.     !endif
  476.     write-message &cat &cat &cat %rcvar " = [" &ind %rcvar "]"
  477.     set $debug %rcdebug
  478. !endm
  479.  
  480. ;    Toggle debug mode
  481.  
  482. store-procedure tdebug
  483.     set %cbuf $cbufname
  484.     set %cline $cwline
  485.     select-buffer "Function Keys"
  486.     beginning-of-file
  487.     next-line
  488.     75 forward-character
  489.     set %rcdebug &equ $curchar 70
  490.     delete-previous-character
  491.     2 delete-next-character
  492.     !if %rcdebug
  493.         insert-string "ON "
  494.     !else
  495.         insert-string "OFF"
  496.     !endif
  497.     unmark-buffer
  498.     select-buffer %cbuf    
  499.     %cline redraw-display
  500.     write-message &cat &cat "[Debug Mode " %rcdebug "]"
  501.     set $debug %rcdebug
  502. !endm
  503.  
  504. ;    evaluate expresion
  505.  
  506. store-procedure showexp
  507.     delete-buffer "[temp]"
  508.     set %rcbuf $cbufname
  509.     set %cline $cwline
  510.     select-buffer "[temp]"
  511.     insert-string "set %rcval "
  512.     !force insert-string @"EXP: "
  513.     execute-buffer "[temp]"
  514.     unmark-buffer
  515.     select-buffer %rcbuf
  516.     delete-buffer "[temp]"
  517.     %cline redraw-display
  518.     write-message &cat &cat "Value = [" %rcval "]"
  519. !endm
  520.  
  521. ;    indent region
  522.  
  523. store-procedure    rcindent
  524.     write-message "[Indenting region]"
  525.     set %endline $curline
  526.     set %endpos $cwline
  527.     exchange-point-and-mark
  528.     set $discmd FALSE
  529.     set-mark
  530.     set $discmd TRUE
  531.  
  532.     !while &gre %endline $curline
  533.         beginning-of-line
  534.         handle-tab
  535.         next-line
  536.     !endwhile
  537.  
  538.     beginning-of-line    
  539.     set $cwline %endpos
  540.     write-message "[Region indented]"
  541. !endm
  542.  
  543. ;    undent region
  544.  
  545. store-procedure    rcundent
  546.     write-message "[Undenting region]"
  547.     set %endline $curline
  548.     set %endpos $cwline
  549.     exchange-point-and-mark
  550.     set $discmd FALSE
  551.     set-mark
  552.     set $discmd TRUE
  553.  
  554.     !while &gre %endline $curline
  555.         beginning-of-line
  556.         !if &gre $lwidth 0
  557.             delete-next-character
  558.         !endif
  559.         next-line
  560.     !endwhile
  561.  
  562.     beginning-of-line    
  563.     set $cwline %endpos
  564.     write-message "[Region undented]"
  565. !endm
  566.  
  567. ;    reformat indented paragraph
  568.  
  569. store-procedure refin
  570.     write-message "                    [Fixing paragraph]"
  571.     set %endline $curline
  572.     set $discmd "FALSE"
  573.     kill-region
  574.     2 split-current-window
  575.     select-buffer "[temp]"
  576.     yank
  577.  
  578.     end-of-file
  579.     set %endline $curline
  580.     beginning-of-file
  581.     !while &gre %endline $curline
  582.         beginning-of-line
  583.         !if &gre $lwidth 0
  584.             delete-next-character
  585.         !endif
  586.         next-line
  587.     !endwhile
  588.  
  589.     &sub $fillcol 8 set-fill-column
  590.     1 goto-line
  591.     fill-paragraph
  592.     &add $fillcol 8 set-fill-column
  593.  
  594.     end-of-file
  595.     set %endline $curline
  596.     beginning-of-file
  597.     !while &gre %endline $curline
  598.         beginning-of-line
  599.         handle-tab
  600.         next-line
  601.     !endwhile
  602.  
  603.     beginning-of-file
  604.     set-mark
  605.     end-of-file
  606.     kill-region
  607.     unmark-buffer
  608.     delete-window
  609.     yank
  610.     delete-buffer "[temp]"
  611.     set $cwline %endpos
  612.     set $discmd "TRUE"
  613.     write-message "                    [Fixed paragraph]"
  614. !endm
  615.  
  616. ;    swap the word the cursor is on and it's predisesor
  617.  
  618. store-procedure rcswap
  619.     set %rctmp $search
  620.     forward-character
  621.     previous-word
  622.     0 delete-next-word
  623.     set %second $kill
  624.     insert-string "~~"
  625.     !force previous-word
  626.     !if &seq $status FALSE
  627.         set %first %second
  628.     !else
  629.         0 delete-next-word
  630.         set %first $kill
  631.         insert-string %second
  632.     !endif
  633.     search-forward "~~"
  634.     delete-previous-character
  635.     insert-string %first
  636.     previous-word
  637.     set $search %rctmp
  638. !endm
  639.  
  640. ;    delete a rectangular block of text
  641.  
  642. store-procedure getblock
  643.     ;set up needed variables
  644.     set $discmd FALSE
  645.     delete-buffer "[block]"
  646.     set %rcbuf $cbufname
  647.     set %cline $cwline
  648.  
  649.     ;save block boundries
  650.     set %endpos $curcol
  651.     set %endline $curline
  652.     exchange-point-and-mark
  653.     set %begpos $curcol
  654.     set %begline $curline
  655.     set %blwidth &sub %endpos %begpos
  656.  
  657.     ;detab the region
  658.     &add &sub %endline %begline 1 detab-line
  659.  
  660.     ;scan through the block
  661.     set $curline %begline
  662.     !while &less $curline &add %endline 1
  663.         ;grab the part of this line needed
  664.         !force set $curcol %begpos
  665.         set-mark
  666.         !force set $curcol %endpos
  667.         kill-region
  668.  
  669.         ;bring it back if this is just a copy
  670.         !if %bkcopy
  671.             yank
  672.         !endif
  673.  
  674.         ;put the line in the block buffer
  675.         select-buffer "[block]"
  676.         yank
  677.  
  678.         ;and pad it if needed
  679.         !if &less $curcol %blwidth
  680.             &sub %blwidth $curcol insert-space
  681.             end-of-line
  682.         !endif
  683.         forward-character
  684.  
  685.         ;onward...
  686.         select-buffer %rcbuf
  687.         next-line
  688.     !endwhile
  689.  
  690.         ;unmark the block
  691.         select-buffer "[block]"
  692.         unmark-buffer
  693.         select-buffer %rcbuf
  694.         previous-line
  695.         %cline redraw-display
  696.     set $discmd TRUE
  697. !endm
  698.  
  699. ;    insert/overlay a rectangular block of text
  700.  
  701. store-procedure putblock
  702.     ;set up needed variables
  703.     set $discmd FALSE
  704.     set %rcbuf $cbufname
  705.     set %cline $cwline
  706.  
  707.     ;save block boundries
  708.     set %begpos $curcol
  709.     set %begline $curline
  710.  
  711.     ;scan through the block
  712.     select-buffer "[block]"
  713.     beginning-of-file
  714.     set %endpos &add %begpos $lwidth
  715.     !while ¬ &equ $lwidth 0
  716.  
  717.         ;pad the destination if it is needed
  718.         select-buffer %rcbuf
  719.         beginning-of-line
  720.         !if ¬ &equ $lwidth 0
  721.             detab-line
  722.             previous-line
  723.         !endif
  724.         !force set $curcol %begpos
  725.         !if &less $curcol %begpos
  726.             &sub %begpos $curcol insert-space
  727.             end-of-line
  728.         !endif
  729.  
  730.         ;delete some stuff if this should overlay
  731.         !if %bkcopy
  732.             set-mark
  733.             !force set $curcol %endpos
  734.             kill-region
  735.         !endif
  736.  
  737.         ;grab the line from the block buffer
  738.         select-buffer "[block]"
  739.         beginning-of-line
  740.         set-mark
  741.         end-of-line
  742.         copy-region
  743.         forward-character
  744.  
  745.         ;put the line in the destination position
  746.         select-buffer %rcbuf
  747.         yank
  748.         next-line
  749.  
  750.         ;onward...
  751.         select-buffer "[block]"
  752.     !endwhile
  753.  
  754.     select-buffer %rcbuf
  755.     set $curline %begline
  756.     set $curcol %begpos
  757.     %cline redraw-display
  758.     set $discmd TRUE
  759. !endm
  760.  
  761. ;    Set up auto CMODE
  762.  
  763. 20    store-macro
  764.     set %rctmp &sin $cfname "."
  765.     !if &equ %rctmp 0
  766.         !return
  767.     !endif
  768.     set %rctmp &mid $cfname &add %rctmp 1 5
  769.     !if &or &seq %rctmp "c" &seq %rctmp "h"
  770.         add-mode "cmode"
  771.     !endif
  772. !endm
  773. bind-to-key execute-macro-20    M-FNR
  774.  
  775. ;    bring up the function key window
  776.  
  777.     1 split-current-window
  778.     select-buffer "Function Keys"
  779.     insert-string "f1 search->>   f2 <<-search    █ F1 display variable       F2 eval expression~n"
  780.     insert-string "f3 hunt->>     f4 <<-hunt      █ F3 next window            F4 Debug mode [OFF]~n"
  781.     insert-string "f5 Fkeys [ON ] f6 Help [OFF]   █ F5 execute buffer         F6 execute macro~n"
  782.     insert-string "f7 Spage [OFF] f8 Mode [PROG ] █ F7 indent region          F8 undent region~n"
  783.     insert-string "f9 save file  f10 exit emacs   █ F9 execute DOS command   F10 shell to DOS~n"
  784.     insert-string "f1 search->>   f2 <<-search    █ F1 center line~n"
  785.     insert-string "f3 hunt->>     f4 <<-hunt      █ F3 reformat paragraph     F4 spell check file~n"
  786.     insert-string "f5 Fkeys [ON ] f6 Help [OFF]   █ F5 ref indented paragraph F6 PREVIEW output~n"
  787.     insert-string "f7 Spage [OFF] f8 Mode [WORD ] █ F7 toggle words           F8 output DRAFT~n"
  788.     insert-string "f9 save file  f10 exit emacs   █ F9 count words           F10 output FINAL~n"
  789.     insert-string "f1 search->>   f2 <<-search    █ F1 Line type [DOUBLE]    F2 kill block~n"
  790.     insert-string "f3 hunt->>     f4 <<-hunt      █ F3 draw box              F4 copy block~n"
  791.     insert-string "f5 Fkeys [ON ] f6 Help [OFF]   █ F5 insert line           F6 yank block~n"
  792.     insert-string "f7 Spage [OFF] f8 Mode [BLOCK] █ F7 insert space          F8 insert block~n"
  793.     insert-string "f9 save file  f10 exit emacs   █ ~n"
  794.     unmark-buffer
  795.     delete-window
  796.  
  797. ;    Initialize things.....
  798.  
  799.     set %rcbox FALSE
  800.     set %rcmode 0
  801.     set %rcfkeys FALSE
  802.     set %rcvar ""
  803.     set %rcltype 2
  804.     execute-macro-1
  805.     set $discmd TRUE
  806.