home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / fte0827.zip / doc / fte.TXT < prev    next >
Text File  |  1998-09-29  |  49KB  |  3,772 lines

  1. fte Manual
  2.  
  3.  
  4. About FTE
  5.  
  6.  
  7.  
  8. fte
  9.  
  10. Version 
  11. 0.44
  12.  
  13. (c) Copyright 1995,1996 Marko Macek
  14.  
  15.  
  16.  
  17.  
  18. The latest version can be always downloaded from:
  19.  
  20.  
  21. http://ixtas.fri.uni-lj.si/~markom/fte
  22.  
  23.  
  24. Please send comments/suggestions/bug reports to:
  25.  
  26.  
  27. Marko.Macek@snet.fri.uni-lj.si
  28.  or 
  29. mark@hermes.si
  30.  
  31.  
  32. See file 
  33. HISTORY
  34.  for recent changes.
  35.  
  36. See file 
  37. TODO
  38.  for possible future additions.
  39.  
  40. See file 
  41. README
  42.  for last minute notes.
  43.  
  44.  
  45.  
  46. Installation
  47.  
  48. This section covers installation and configuration of editor.
  49.  
  50. OS/2
  51.  
  52.  
  53.  
  54. The following files are included in the archive:
  55.  
  56.  
  57.  
  58. README
  59.  
  60.  
  61. Release notes, read first!
  62.  
  63. fte.exe
  64.  
  65.  
  66. Text-mode executable
  67.  
  68. ftepm.exe
  69.  
  70.  
  71. Presentation Manager executable
  72.  
  73. fte-def.cnf
  74.  
  75.  
  76. Default compiled configuration file.
  77.  
  78. fte.inf
  79. fte.ipf
  80. fte.html
  81. fte.txt
  82.  
  83.  
  84. This file, in various formats.
  85.  
  86. config\*.fte
  87.  
  88.  
  89. Configuration files in source form.
  90.  
  91. clipserv.exe
  92.  
  93.  
  94. Clipboard server (required for PM clipboard support in text-mode version).
  95.  
  96. cliputil.exe
  97.  
  98.  
  99. Utility to copy/paste to/from clipboard from command line.
  100.  
  101. HISTORY
  102.  
  103.  
  104. Revision history.
  105.  
  106. TODO
  107.  
  108.  
  109. Todo list.
  110.  
  111. file_id.diz
  112.  
  113.  
  114. Program description for BBS upload.
  115.  
  116.  
  117.  
  118.  
  119.  The default configuration files are precompiled into
  120.  
  121. fte-def.cnf
  122. . This file should be copied to 
  123. fte.cnf
  124.  
  125. for text-mode version, and  to 
  126. ftepm.cnf
  127.  for PM version. Or,
  128. you may want to compile your own configuration from
  129. source using
  130.  
  131. cfte
  132.  configuration file compiler.
  133.  
  134.  
  135.  For minimal installation of the text mode version, only
  136.  
  137. fte.exe
  138.  and 
  139. fte.cnf
  140.  are required. For PM clipboard
  141. support 
  142. clipserv.EXE
  143.  is needed and must be running whenever
  144. you wish to use PM clipboard from
  145. FTE.
  146.  
  147.  
  148.  To install PM version, 
  149. ftepm.exe
  150.  and 
  151. ftepm.cnf
  152.  
  153. are needed.
  154.  
  155.  
  156.  To recompile source files, 
  157. cfte.exe
  158.  and
  159.  
  160. config\*.fte
  161.  files are needed. 
  162.  
  163.  
  164.  
  165.  Place executable files somewhere on your 
  166. PATH
  167. . Compiled
  168. configuration files should be located in the same directory
  169. as
  170. executable and have the same basename with extension 
  171. .CNF
  172. .
  173.  
  174.  
  175.  
  176.  
  177. Unix
  178.  
  179.  
  180. The following files are included in the archive:
  181.  
  182.  
  183.  
  184. README
  185.  
  186.  
  187. Readme file.
  188.  
  189. fte
  190.  
  191.  
  192. Linux console-only executable
  193.  
  194. Xfte
  195.  
  196.  
  197. X11 Xlib executable.
  198.  
  199. fte-def.cnf
  200.  
  201.  
  202. Default compiled configuration file
  203.  
  204. fte.html
  205.  
  206.  
  207. Reference manual
  208.  
  209. config\*.fte
  210.  
  211.  
  212. Configuration files in source form.
  213.  
  214. HISTORY
  215.  
  216.  
  217. History of changes.
  218.  
  219. TODO
  220.  
  221.  
  222. Todo list.
  223.  
  224. file_id.diz
  225.  
  226.  
  227. Program description for BBS upload.
  228.  
  229. fte-0.38.lsm
  230.  
  231.  
  232. LSM entry for FTE.
  233.  
  234.  
  235.  
  236.  
  237.  The default configuration files are precompiled into
  238.  
  239. fte-def.cnf
  240. . This file should be copied to 
  241. ~/.fterc
  242.  
  243. to be automatically loaded by FTE. You may want to compile your
  244. own
  245. configuration from source using 
  246. cfte
  247.  configuration file
  248. compiler.
  249.  
  250.  
  251.  Suggested installation directories:
  252.  
  253.  
  254.         /usr/local/bin/fte
  255.         /usr/local/bin/Xfte
  256.        
  257. /usr/local/bin/cfte
  258.         /usr/local/lib/fte/etc/*.fte
  259.        
  260. /usr/local/lib/fte/lib/fte.html
  261.         /usr/local/lib/fte/lib/TODO
  262.        
  263. /usr/local/lib/fte/lib/HISTORY
  264.         /usr/local/lib/fte/lib/README
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271. Execution
  272.  
  273. The FTE command line syntax is:
  274.  
  275.  
  276.  
  277. fte [[options] [files] ...]
  278.  
  279.  
  280.  
  281. Options:
  282.  
  283.  
  284.  
  285. -!
  286.  
  287.  
  288. Ignore any external configuration file and use internal configuration.
  289.  
  290. -c[<file>]
  291.  
  292.  
  293. Use specified configuration file (compiled). If no argument, use internal
  294. configuration.
  295.  
  296. -l<line>[,<column>]
  297.  
  298.  
  299. Go to line (and column) in next file on command line
  300.  
  301. -m<MODE>
  302.  
  303.  
  304. Set mode for next files to <MODE>
  305.  
  306. -m
  307.  
  308.  
  309. Reset to default mode
  310.  
  311. -d[<.dsk>]
  312.  
  313.  
  314. Load/save desktop from file <.dsk>. If no argument, disable desktop
  315. load/save.
  316.  
  317. -h[<.his>]
  318.  
  319.  
  320. Load/save history from file <.his>. If no argument, disable history
  321. load/save.
  322.  
  323. -T<tags>
  324.  
  325.  
  326. Load tags file 'tags'.
  327.  
  328. -t<tag>
  329.  
  330.  
  331. Lookup tag 'tag' and display file containing it.
  332.  
  333. --
  334.  
  335.  
  336. The rest of the arguments are not options, but filenames.
  337.  
  338. -+
  339.  
  340.  
  341. The next argument is not an option even if starting with a '-'.
  342.  
  343.  
  344.  
  345.  
  346. There should not be any delimiter between option and it's arguments.
  347.  
  348.  
  349. Examples:
  350.  
  351.  
  352.  
  353. fte -mBIN fte.exe
  354.  
  355.  
  356. load fte.exe in BIN mode
  357.  
  358. fte -#100,30 win.c
  359.  
  360.  
  361. go to (100,30) in win.c
  362.  
  363. fte window.cpp
  364.  
  365.  
  366. load file window.cpp
  367.  
  368. fte -mBIN fte.exe -m fte.cpp
  369.  
  370.  
  371. load fte.exe in binary mode, window.cpp in default mode (C/C++)
  372.  
  373. fte -mBIN -+ -bla-
  374.  
  375.  
  376. load file -bla- in BIN mode
  377.  
  378. fte -- -1 -2 -3 -4 -5 -6
  379.  
  380.  
  381. .load files -1, -2, -3, -4, -5, -6
  382.  
  383.  
  384.  
  385.  
  386.  Under OS/2 default history and desktop file names are
  387.  
  388. FTE.DSK
  389.  and 
  390. FTE.HIS
  391.  respectively. Under Unix they
  392. are named 
  393. .fte-desktop
  394.  and 
  395. .fte-history
  396. . The global
  397. desktop and history files will be searched in program directory
  398. under
  399. OS/2 and in user home directory under Unix.
  400.  
  401.  
  402.  
  403.  
  404. Configuration Files
  405.  
  406. FTE configuration files are version specific, and must be recompiled
  407. for
  408. each new version of the editor.
  409.  
  410.  
  411.  On startup, editor will attempt to load a configuration file with
  412. the
  413. basename as the executable and extension 
  414. .CNF
  415. . The
  416. configuration file is produced by compiling source files with 
  417. CFTE
  418. .
  419.  
  420.  
  421.  If the command line option 
  422. -!
  423.  is used, editor will not
  424. attempt to load a configuration file and will use
  425. default built-in
  426. settings.
  427.  
  428.  
  429. Compiling configuration files.
  430.  
  431.  
  432. Configuration files are compiled using 
  433. CFTE
  434.  program.
  435.  
  436.  
  437. cfte
  438.  should be invoked on 
  439. main.fte
  440. , for example:
  441.  
  442.  
  443. [C:\FTE] cfte config\main.fte
  444. $ cfte config/main.fte
  445.  
  446.  
  447.  
  448.  
  449. This will automatically compile all 
  450. *.fte
  451.  files included
  452. from 
  453. main.fte
  454.  and produce 
  455. fte-new.cnf
  456.  if there
  457. are no errors in source files.
  458.  
  459.  
  460.  When configuration source files are sucessfully compiled, the resulting file
  461. fte-new.cnf
  462.  should be copied to
  463.  
  464. fte.cnf
  465.  and 
  466. ftepm.cnf
  467. , or under Unix to 
  468. ~/.fterc
  469.  
  470.  
  471.  
  472. Source Configuration files
  473.  
  474.  
  475.  Comments start with character 
  476.  and last until the end
  477. of line.
  478.  
  479.  Strings can be specified using any of 
  480. ' " /
  481.  characters.
  482.  
  483.  
  484.  Single quoted strings perform no substitution. To enter  
  485.  
  486. or 
  487.  into a string precede it with a backslash. 
  488.  
  489.  
  490.  Double quoted strings perform the following substitutions:
  491.  
  492.  
  493. \t  ->  tab character
  494. \r  ->  CR 
  495. \n  ->  LF
  496. \v  ->  vertical tab
  497. \b 
  498. ->  ^H, backspace
  499. \a  ->  ^G, bell
  500.  
  501.  
  502.  
  503.  
  504.  Strings started by 
  505.  character require no escaping. Mostly
  506. useful for specifying 
  507. regular expressions
  508.  
  509. without double backslashes.
  510.  
  511.  
  512.  
  513.  
  514. Global Configuration
  515.  
  516.  
  517. Global Settings
  518.  
  519. The following settings can be used in the 
  520. GLOBAL
  521.  section of the
  522. configuration file.
  523.  
  524.  
  525. ScreenSizeX
  526.  
  527. Number of columns visible on screen or window
  528.  
  529.  
  530. ScreenSizeY
  531.  
  532. Number of lines visible on screen or window
  533.  
  534.  
  535. CursorInsertStart
  536.  
  537. Starting percentage of cursor size (from top) when in insert mode.
  538.  
  539.  
  540. CursorInsertEnd
  541.  
  542. Ending percentage of cursor size when in insert mode.
  543.  
  544.  
  545. CursorOverStart
  546.  
  547. Starting percentage of cursor size when in overstrike mode
  548.  
  549.  
  550. CursorOverEnd
  551.  
  552. Ending percentage of cursor size when in overstrike mode.
  553.  
  554.  
  555. SysClipboard
  556.  
  557. When set to 1, editor will use external (PM) clipboard instead of
  558. internal
  559. one.
  560.  
  561.  
  562. SelectPathname
  563.  
  564. If set to 1, pathname will be selected by default when prompting for
  565. a
  566. file in 
  567. FileOpen
  568.  function. If set to 0,
  569. pathname will not be selected, this allows you to
  570. quickly type a new
  571. filename, without erasing an entire entryfield.
  572.  
  573.  
  574. OpenAfterClose
  575.  
  576. If set to 1, editor will prompt for another file when all files
  577. are
  578. closed.
  579.  
  580.  
  581. ShowMenuBar
  582.  
  583. If set to 1, main menu bar will be visible.
  584.  
  585.  
  586. ShowVScroll
  587.  
  588. If set to 1, scroll bar will be visible.
  589.  
  590.  
  591. DefaultModeName
  592.  
  593. Default mode name for loading/editing files. If not set or invalid,
  594. first
  595. mode in the configuration file will be used instead. By default
  596. set to
  597. 'PLAIN'.
  598.  
  599.  
  600. CompletionFilter
  601.  
  602. Files matching this regexp are ignored when doing filename completion.
  603.  
  604.  
  605. CompileRx
  606.  
  607. Defines 
  608. regular expressions
  609.  and thers subpattern
  610. indices to match when searching for errors and
  611. warnings in compilation
  612. output. First number is an index of the subpattern
  613. that matches 
  614. filename. The second must match the line number, the third
  615. parameter is
  616. the regular expression to match to each line of the compiler
  617. output.
  618.  
  619.  
  620. C_*
  621.  
  622. Define the C mode smart indentation parameters
  623.  
  624.  
  625.  See section on 
  626. configuring C mode indentation
  627. .
  628.  
  629.  
  630. REXX_Indent
  631.  
  632. Defines the REXX basic indentation level
  633.  
  634.  
  635. KeepHistory
  636.  
  637. If set to 1, last file position and imput prompt history will
  638. be loaded on
  639. startup and saved on exit. Can be overriden
  640. with command line option
  641. '-h'.
  642.  
  643.  
  644. LoadDesktopOnEntry
  645.  
  646. If set to 1, all files listed in FTE.DSK in current directory or
  647. FTE.EXE
  648. directory will be loaded into FTE. The desktop file can
  649. be overriden with
  650. command line option '-d'.
  651.  
  652.  
  653. SaveDesktopOnExit
  654.  
  655. If set to 1, desktop will be automatically saved when 
  656. ExitEditor
  657.  command is issued.
  658.  
  659.  
  660. KeepMessages
  661.  
  662. If set to 1, compiler messages will be kept until deleted by user.
  663.  
  664.  
  665. ScrollBorderX
  666.  
  667. Horizontal offset to the border before window starts scrolling.
  668.  
  669.  
  670. ScrollBorderY
  671.  
  672. Vertical offset to the border before window starts scrolling.
  673.  
  674.  
  675. ScrollJumpX
  676.  
  677. Scroll window by this many columns when cursor reaches scrolling
  678. border.
  679.  
  680.  
  681. ScrollJumpY
  682.  
  683. Scroll window by this many lines when cursor reaches scrolling border.
  684.  
  685.  
  686. Colors
  687.  
  688.  
  689. Colors are configured in COLOR.FTE file.
  690.  
  691.  
  692. Syntax for color settings is:
  693.  
  694. color
  695.  { { 'name', 'value' } ... }
  696.  
  697. Value is the PC character attribute first char is background color,
  698. the
  699. second is foreground color.
  700.  
  701. Colors are as follows:
  702.  
  703.  
  704.         0        Black
  705.         1        Dark Blue
  706.         2        Dark
  707. Green 
  708.         3        Dark Cyan
  709.         4        Dark Red
  710.         5     
  711.   Dark Magenta
  712.         6        Orange
  713.         7        Pale Gray
  714.        
  715. 8        Dark Gray
  716.         9        Blue
  717.         A        Green
  718.         B 
  719.       Cyan
  720.         C        Red
  721.         D        Magenta
  722.         E       
  723. Yellow
  724.         F        White
  725.  
  726.  
  727.  
  728.  
  729.  
  730.  
  731. CMode Smart Indentation
  732.  
  733.  
  734.  
  735. Settings for CMode smart indentation
  736.  
  737.  
  738.  
  739.  
  740.  
  741.  
  742. C_Indent
  743. Basic C indentation level
  744.  
  745. C_BraceOfs
  746. Brace '{' offset
  747.  
  748. C_CaseOfs
  749. Offset of case and default statements
  750.  
  751. C_CaseDelta
  752. Offsets of statements following case/default.
  753.  
  754. C_ClassOfs
  755. Offset of public, private and protected
  756.  
  757. C_ClassDelta
  758. Offset of statements following public, private, protected
  759.  
  760. C_ColonOfs
  761. Offset of labels
  762.  
  763. C_CommentOfs
  764. Offset of comments
  765.  
  766. C_CommentDelta
  767. Offset of second line of comments
  768.  
  769.  
  770.  
  771.  
  772. Example 1:
  773.  
  774.  
  775.  
  776. class line {
  777. public:                   // C_ClassOfs = 0
  778.     line();     
  779.          // C_ClassDelta = 4
  780.     ~line();
  781. };
  782.  
  783. int main() {
  784.     int x =
  785. 1;
  786.     
  787.     /*                    // C_CommentOfs = 0
  788.      * check value  
  789.      // C_CommentDelta = 1
  790.      */
  791.     
  792.     puts("main");         //
  793. C_Indent = 4
  794.     if (x)
  795.     {                     // C_BraceOfs = 0
  796.       
  797.  switch (x) {
  798.         case 1:           // C_CaseOfs = 0
  799.            
  800. puts("ok");   // C_CaseDelta = 4
  801.             break;
  802.         }
  803.    
  804. }
  805. end:
  806.     return 0;
  807. }
  808.  
  809.  
  810.  
  811.  
  812.  
  813. Example 2:
  814.  
  815.  
  816.  
  817. class line {
  818.   public:                     // C_ClassOfs = 2
  819.     line(); 
  820.                  // C_ClassDelta = 2
  821.     ~line();
  822. };
  823.  
  824. int main() {
  825.    
  826. int x = 1;
  827.     
  828.       /*                      // C_CommentOfs = 2
  829.       **
  830. check value          // C_CommentDelta = 0
  831.       */
  832.     
  833.     puts("main");
  834.             // C_Indent = 4
  835.     if (x)
  836.     {                         //
  837. C_BraceOfs = 0
  838.         switch (x) {
  839.             case 1:           //
  840. C_CaseOfs = 4
  841.                 puts("ok");   // C_CaseDelta = 4
  842.             
  843.    break;
  844.         }
  845.     }
  846. end:
  847.     return 0;
  848. }
  849.  
  850.  
  851.  
  852.  
  853.  
  854.  
  855. Mode Configuration
  856.  
  857.  
  858.  
  859. fte allows each file extension to have a different editing mode. Mode
  860. is a
  861. collection of editor settings such as keybindings, tab settings,
  862. autoindent
  863. settings, syntax highlighting,...
  864.  
  865.  
  866. Syntax of 
  867. mode
  868.  command is
  869.  
  870.  
  871.  
  872.  
  873. mode NAME { mode settings }
  874. mode NAME: PARENT { mode settings }
  875.  
  876.  
  877.  
  878.  
  879.  Mode with name 
  880. NAME
  881. inherits settings from mode 
  882. PARENT
  883.  
  884. if parent mode is specified at mode declaration.
  885.  
  886.  
  887.  When editor is searching for a mode to use for a file it will
  888. first check
  889. if the mode has been overriden by a 
  890. FileOpenInMode
  891.  command or a command line
  892. option (
  893. -m
  894. ).
  895.  
  896.  
  897.  Then it will check if the file name matches 
  898. FileNameRx
  899.  defined in mode declarations. 
  900.  
  901.  
  902.  If the mode has still not been found, it will read the first line
  903. (max 80
  904. chars) of the file, and attempt to match the 
  905. FirstLineRx
  906.  with the first line. 
  907.  
  908.  
  909.  If this fails, the editor will use mode specified by
  910.  
  911. DefaultModeName
  912.  global
  913. setting to load a file. If that mode does not exist, first mode
  914. defined
  915. in the configuration file will be used.
  916.  
  917.  
  918.  
  919.  
  920. Mode Settings
  921.  
  922.  
  923.  
  924. The following settings can be specified for each mode:
  925.  
  926. ExpandTabs
  927.  
  928. {0,1}
  929.  
  930.  
  931. Should be set to 1 if tabs are to be expanded when displayed. Use
  932.  
  933. ToggleExpandTabs
  934.  command to toggle
  935. during editing.
  936.  
  937.  
  938. TabSize
  939.  
  940. {1-32}
  941.  
  942. Tab size when tabs are shown expanded on display.
  943.  
  944.  
  945. AutoIndent
  946.  
  947. {0,1}
  948.  
  949. Should be set to 1 if autoindent is to be used. Use
  950.  
  951. ToggleAutoIndent
  952.  command
  953. to toggle it on/off during editing.
  954.  
  955.  
  956. Insert
  957.  
  958.  
  959. {0,1}
  960.  
  961.  
  962. If set to 
  963. , Insert mode is active by default. 
  964. If set to 
  965. , Overwrite mode is activated.
  966.  
  967.  Use 
  968. ToggleInsert
  969.  command
  970. to toggle it on/off during editing.
  971.  
  972.  
  973. StripChar
  974.  
  975. {ASCII code/-1}
  976.  
  977.  
  978. This characted will be stripped if it is found the end of any line
  979. when the
  980. file is being loaded. If it is set to 
  981. -1
  982. , no characted
  983. will be stripped.
  984.  
  985. Usually used to strip 13 (CR) characters from DOS text files.
  986.  
  987.  
  988. LineChar
  989.  
  990. {ASCII code/-1}
  991.  
  992.  
  993. This character is used as a line separator when loading a file.
  994. If set to 
  995. -1
  996. , there is no line separator. (
  997. WARNING: File will
  998. be loaded as one line if LineChar is set to -1
  999. ).
  1000.  
  1001. Usually set to 10 (LF) as standard text file line separator.
  1002.  
  1003.  
  1004. AddCR
  1005.  
  1006. {0,1}
  1007.  
  1008.  
  1009. If set to 
  1010. , CR (13, \r) character will be added to end of
  1011. line when saving.
  1012.  
  1013.  
  1014. AddLF
  1015.  
  1016.  
  1017. {0,1}
  1018.  
  1019. If set to 
  1020. , LF (10, \n) characted will be added to end if line when saving.
  1021.  
  1022.  
  1023. ForceNewLine
  1024.  
  1025. {0,1}
  1026.  
  1027. Normally, when saving, the last line is saved without any CR/LF
  1028. characters.
  1029. This setting will override that behaviour.
  1030.  
  1031.  
  1032. Hilit
  1033.  
  1034. {0,1}
  1035.  
  1036. If set to 
  1037. , syntax highliting will be active.
  1038.  
  1039.  
  1040. ShowTab
  1041.  
  1042. {0,1}
  1043.  
  1044. If set to 
  1045. , tabs will be visible as circles (EPM-like).
  1046.  
  1047.  
  1048. IndentMode
  1049.  
  1050. {PLAIN,C,REXX}
  1051.  
  1052. Activates the specified smart indent mode. (PLAIN mode specifies
  1053. no smart
  1054. audoindenting, just normal autoindent).
  1055.  
  1056.  
  1057. Colorizer
  1058.  
  1059. Specifies a previously declared 
  1060. colorize
  1061.  mode to use for syntax
  1062. highlighting in this editing mode.
  1063.  
  1064.  
  1065. EventMap
  1066.  
  1067. Specify the name of existing eventmap to use for current mode.
  1068.  
  1069.  
  1070. UndoLimit
  1071.  
  1072. {Number}
  1073.  
  1074. Limit undo to this many recent commands (-1 = unlimited)
  1075.  
  1076.  
  1077. UndoMoves
  1078.  
  1079. {0,1}
  1080.  
  1081. If set to 1, all cursor movements will be recorded on undo stack.
  1082.  
  1083.  
  1084. KeepBackups
  1085.  
  1086. {0,1}
  1087.  
  1088. If set to 
  1089. , backup files will be deleted after a successful
  1090. save operation.
  1091.  
  1092.  
  1093. MatchCase
  1094.  
  1095. {0,1}
  1096.  
  1097. If set to 
  1098. , searches will be case insensitive. This can be
  1099. toggled via 
  1100. ToggleMatchCase
  1101.  command when editor
  1102. is running.
  1103.  
  1104.  
  1105. BackSpKillTab
  1106.  
  1107. {0,1}
  1108.  
  1109. If set to 1, 
  1110. BackSpace
  1111.  will kill entire tabs instead of converting them to spaces.
  1112.  
  1113.  
  1114. DeleteKillTab
  1115.  
  1116. {0,1}
  1117.  
  1118. If set to 1, 
  1119. Delete
  1120.  will kill entire tabs instead of converting them to spaces.
  1121.  
  1122.  
  1123. BackSpUnindents
  1124.  
  1125. {0,1}
  1126.  
  1127. If set to 1, 
  1128. BackSpace
  1129.  will unindent to previous indentation level if issued on beginning of
  1130. line.
  1131.  
  1132.  
  1133. SpaceTabs
  1134.  
  1135. {0,1}
  1136.  
  1137. If set to 1, 
  1138. InsertTab
  1139.  command will insert spaces instead of tabs.
  1140.  
  1141.  
  1142. IndentWithTabs
  1143.  
  1144. {0,1}
  1145.  
  1146. If set to 1, indentation will be done using tabs instead of spaces.
  1147.  
  1148.  
  1149. WordWrap
  1150.  
  1151. {0,1,2}
  1152.  
  1153. If set to 1, editor wrap current line when right margin is reached.
  1154. If set
  1155. to 2, editor will wrap current paragraph continously. Paragraphs
  1156. as
  1157. recognised by 
  1158. WrapPara
  1159.  command must be
  1160. separated by blank lines.
  1161.  
  1162.  
  1163. LeftMargin
  1164.  
  1165. {1-xx}
  1166.  
  1167. Left margin for word wrap (
  1168. WrapPara
  1169.  command).
  1170.  
  1171.  
  1172. RightMargin
  1173.  
  1174. {1-xx}
  1175.  
  1176. Right margin for word wrap (
  1177. WrapPara
  1178.  command).
  1179.  
  1180.  
  1181. Trim
  1182.  
  1183. {0,1}
  1184.  
  1185. If set to 1, spaces on the end of line will be trimmed when editing.
  1186.  
  1187.  
  1188. ShowMarkers
  1189.  
  1190. {0,1}
  1191.  
  1192. If set to 1, end of line and end of file markers will be shown.
  1193.  
  1194.  
  1195. CursorTroughTabs
  1196.  
  1197. {0,1}
  1198.  
  1199. If set to 1, editor will allow cursor to be positioned inside tabs.
  1200.  
  1201.  
  1202. DefFindOpt
  1203.  
  1204. 'options'
  1205.  
  1206. Default 
  1207. search options
  1208.  for 
  1209. Find
  1210.  command.
  1211.  
  1212.  
  1213. DefFindReplaceOpt
  1214.  
  1215. 'options'
  1216.  
  1217. Default 
  1218. search/replace
  1219.  options for 
  1220. FindReplace
  1221.  command.
  1222.  
  1223.  
  1224. SaveFolds
  1225.  
  1226. {0,1,2}
  1227.  
  1228. If 0, folds are not saved. If 1, folds are saved at beginning of
  1229. line, if 2
  1230. folds are saved at end of line.
  1231.  
  1232. Folds are saved as comments in source files, depending on active
  1233. editing
  1234. mode.
  1235.  
  1236.  See mode settings 
  1237. CommentStart
  1238.  and
  1239.  
  1240. CommentEnd
  1241.  for configuration of fold
  1242. comments.
  1243.  
  1244.  
  1245. CommentStart
  1246.  
  1247. "comment-start-string"
  1248.  
  1249. String that starts comments (for saving folds)
  1250.  
  1251.  
  1252. CommentEnd
  1253.  
  1254. "comment-end-string"
  1255.  
  1256. String that ends comments
  1257.  
  1258.  
  1259. AutoHilitParen
  1260.  
  1261. {0,1}
  1262.  
  1263. If set to 
  1264. , editor will automatically highlight the
  1265. matching bracket if it is visible
  1266. on screen. This is equivalent
  1267. to executing 
  1268. HilitMatchBracket
  1269.  command.
  1270.  
  1271.  
  1272. Abbreviations
  1273.  
  1274. {0,1}
  1275.  
  1276. If set to 1, 
  1277. abbreviation
  1278.  expansion will be
  1279. active in this mode.
  1280.  
  1281.  
  1282. BackSpKillBlock
  1283.  
  1284. {0,1}
  1285.  
  1286. If set to 1, 
  1287. BackSpace
  1288.  command will
  1289. delete block if it is marked, otherwise it will delete the
  1290. previous
  1291. character.
  1292.  
  1293.  
  1294. DeleteKillBlock
  1295.  
  1296. {0,1}
  1297.  
  1298. If set to 1, 
  1299. Delete
  1300.  command will delete
  1301. block if marked, instead of deleting the character
  1302. below cursor.
  1303.  
  1304.  
  1305. PersistentBlocks
  1306.  
  1307. {0,1}
  1308.  
  1309. If set to 1, blocks will stay marked even if cursor
  1310. is moved in the file, if
  1311. set to 0, block is unmarked as soon
  1312. as the cursor is moved.
  1313.  
  1314.  
  1315. InsertKillBlock
  1316.  
  1317. {0,1}
  1318.  
  1319. If set to 1, the marked block is deleted when a new character
  1320. is typed.
  1321.  
  1322.  
  1323. FileNameRx
  1324.  
  1325. "regexp"
  1326.  
  1327. Must be set to regexp that matches names of files that should
  1328. be edited in
  1329. this mode. Has priority over 
  1330. FirstLineRx
  1331.  
  1332.  
  1333.  
  1334. FirstLineRx
  1335.  
  1336. "regexp"
  1337.  
  1338. Must be set to regex that matches the first line of files that
  1339. should be
  1340. edited in this mode. This is checked only if no
  1341.  
  1342. FileNameRx
  1343.  matches the filename.
  1344.  
  1345.  
  1346. RoutineRegexp
  1347.  
  1348. "regexp"
  1349.  
  1350.  Regular expression that matches function header.
  1351.  
  1352.  Used by editor commands:
  1353.  
  1354. ListRoutines
  1355. ,
  1356.  
  1357. MoveFunctionPrev
  1358. ,
  1359.  
  1360. MoveFunctionNext
  1361. ,
  1362.  
  1363. BlockMarkFunction
  1364. ,
  1365.  
  1366. IndentFunction
  1367. .
  1368.  
  1369.  
  1370.  
  1371.  
  1372. Loading files in various formats
  1373.  
  1374.  
  1375.  
  1376. Here are settings for loading files in various formats:
  1377.  
  1378.  
  1379.  
  1380.  
  1381.  
  1382. DOS/Win/OS2/NT text files (CR/LF delimited):
  1383.  
  1384.  
  1385.  
  1386.  
  1387.           StripChar      13
  1388.           LineChar       10
  1389.           AddCR  
  1390.        1
  1391.           AddLF          1
  1392.  
  1393.  
  1394.  
  1395.  
  1396.  
  1397. Unix text files (LF delimited):
  1398.  
  1399.  
  1400.  
  1401.  
  1402.           StripChar      -1
  1403.           LineChar       10
  1404.           AddCR  
  1405.        0
  1406.           AddLF          1
  1407.  
  1408.  
  1409.  
  1410. MAC text files (CR delimited):
  1411.  
  1412.  
  1413.  
  1414.  
  1415.           StripChar      -1
  1416.           LineChar       13
  1417.           AddCR  
  1418.        1
  1419.           AddLF          0
  1420.  
  1421.  
  1422.  
  1423. Binary files (fixed record length):
  1424.  
  1425.  
  1426.  
  1427.  
  1428.           StripChar      -1
  1429.           LineChar       -1
  1430.           AddCR  
  1431.        0
  1432.           AddLF          0
  1433.           LoadMargin     64
  1434.          
  1435. ForceNewLine   0
  1436.  
  1437.           
  1438.  
  1439.  
  1440.  
  1441.  
  1442.  
  1443.  
  1444. Configuration of Tab options
  1445.  
  1446.  
  1447.  
  1448.  
  1449.  
  1450. EventMap configuration
  1451.  
  1452.  
  1453. eventmap section is used to bind editor commands to user events.
  1454.  
  1455.  
  1456. Keybindings
  1457.  
  1458.  
  1459.  
  1460. Keybindings are inherited from parent modes unless overriden.
  1461.  
  1462.  
  1463. Here are some examples of key specifiactions:
  1464.  
  1465.  
  1466.  
  1467. [A]
  1468. Uppercase a
  1469.  
  1470. [a]
  1471. Lowercase a 
  1472.  
  1473. [;]
  1474. Semicolon
  1475.  
  1476. [A+A]
  1477. Alt+A
  1478.  
  1479. [C+B]
  1480. Ctrl+B
  1481.  
  1482. [A+C+F1]
  1483. Alt+Ctrl+F1
  1484.  
  1485. [A+C+S+F1]
  1486. Alt+Ctrl+Shift+F1
  1487.  
  1488. [A+Space]
  1489. Alt+Space
  1490.  
  1491. [C+K_C+B]
  1492. Ctrl+K and then Ctrl+B (two keys)
  1493.  
  1494. [C+A_C+B_C+C]
  1495. Ctrl+A Ctrl+B Ctrl+C must be pressed in sequence.
  1496.  
  1497. [G+-]
  1498. Gray -
  1499.  
  1500. [G++]
  1501. Gray +
  1502.  
  1503. [C-S-X]
  1504. X, ignore the state of Ctrl and Shift keys.
  1505.  
  1506. [C+\\]
  1507. Ctrl+Backslash
  1508.  
  1509. [C+\[]
  1510. Ctrl+[
  1511.  
  1512. [C+G-Left]
  1513. Ctrl+Left, ignore difference between the two Left keys.
  1514.  
  1515. [C+A-A]
  1516. Ctrl+A, ignore the state of Alt key.
  1517.  
  1518.  
  1519.  
  1520. The following special keys are available (case sensitive):
  1521.  
  1522. F1-F12 Home End PgUp PgDn Insert Delete Up Down Left Right 
  1523. Enter Esc BackSp
  1524. Space Tab Center
  1525.  
  1526.  
  1527. Keyname can be preceeded by modifiers 
  1528. (A, C, G, S)
  1529. . If modifier is followed
  1530. by a 
  1531.  (plus), the modifier key must be pressed to match the key 
  1532. specification.
  1533. If the modifier key is followed by 
  1534.  (minus), the state
  1535. of the modifier key is ignored.
  1536.  
  1537. Multiple-key combinations can be specified by separating
  1538. them with 
  1539.  (underline)
  1540.  
  1541. Keys are bound using the 
  1542. key
  1543.  command:
  1544.  
  1545. key
  1546. [keyspec]
  1547.  { 
  1548. editor commands
  1549.  }
  1550.  
  1551. ASCII characters >= 32 are bound to TypeChar by default.
  1552.  
  1553. Any number of commands can be bound to a key combination or menu item.
  1554. They
  1555. are executed in sequence until one of them fails.
  1556.  
  1557. See 
  1558. ui_fte.fte
  1559.  configuration file for examples and default
  1560. configuration.
  1561.  
  1562.  
  1563. Abbreviations
  1564.  
  1565.  
  1566. Abbreviations are used to automatically replace some text or run
  1567. an
  1568. editor macro when some word is typed in. When a non-word character
  1569. is
  1570. entered, the previous word is searched for in the list of
  1571. abbreviations.
  1572. When it is found, it is either replaced with a new
  1573. string or a macro is
  1574. executed.
  1575.  
  1576.  
  1577. Syntax:
  1578.  
  1579.  
  1580.  
  1581. abbrev 'old-word' 'new-string'
  1582.  
  1583. abbrev 'old-word' { Macro }
  1584.  
  1585.  
  1586.  
  1587.  
  1588.  Some examples of abbreviations:
  1589.  
  1590.  
  1591.  
  1592.     abbrev 'wcsw' 'WinCreateStdWindow';
  1593.     
  1594.     abbrev 'ifx' {
  1595.        
  1596. KillWordPrev; InsertString 'if () {'; LineIndent; LineNew; 
  1597.        
  1598. InsertString '}'; LineIndent; 
  1599.         MoveUp; MoveLineEnd; 3:MoveLeft; 
  1600.   
  1601.      Fail; # do not insert typed character
  1602.     }
  1603.  
  1604.  
  1605.  
  1606.  
  1607. The first one defines a replacement string, while the second one
  1608. defines
  1609. an editor macro to be run.
  1610.  
  1611.  
  1612. For abbreviations to work, setting
  1613.  
  1614. Abbreviations
  1615.  must be set to 1 for
  1616. active mode.
  1617.  
  1618.  
  1619. EventMap Settings
  1620.  
  1621.  
  1622.  
  1623. MainMenu
  1624.  
  1625. "menu"
  1626.  
  1627. Main menu displayed when editing in this mode.
  1628.  
  1629.  
  1630. LocalMenu
  1631.  
  1632. "menu"
  1633.  
  1634. Local menu used when editing in this mode.
  1635.  
  1636.  
  1637.  
  1638.  
  1639.  
  1640. Colorizer Configuration
  1641.  
  1642.  
  1643. Configuration of syntax highlighting modes.
  1644.  
  1645. Syntax:
  1646.  
  1647.  
  1648. colorize <mode>[:<parent>] { <settings> }
  1649.  
  1650.  
  1651.  
  1652.  
  1653. Settings
  1654.  
  1655.  
  1656.  
  1657. SyntaxParser
  1658.  
  1659. {PLAIN,C,HTML,MAKE,REXX,DIFF,IPF,PERL,MERGE,Ada,...}
  1660.  
  1661.  
  1662.  Activates the specified syntax parser for colorization mode.
  1663.  
  1664. PLAIN
  1665.  specifies no syntax parser, only keyword highlighting
  1666. is available.
  1667.  
  1668.  New syntax parsers can be defined using state machines
  1669. by using a name of
  1670. SIMPLE.
  1671.  
  1672.  
  1673. Keywords
  1674.  
  1675.  
  1676. Syntax:
  1677.  
  1678.  
  1679. keyword <color-specifier> { list of keywords }
  1680.  
  1681.  
  1682.  
  1683. Multiple keyword sets with different colors can be defined.
  1684.  
  1685.  '-' can be used for color specifier do use the default keyword
  1686. color
  1687. specified in global settings.
  1688.  
  1689.  
  1690. Colors
  1691.  
  1692.  
  1693. Syntax:
  1694.  
  1695.  
  1696.  
  1697. color { list-of color-name,color-spec pairs }
  1698.  
  1699.  
  1700.  
  1701. Color settings are inherited from parent mode.
  1702.  
  1703.  
  1704.  The following color-names are available, which ones
  1705. will actually be used
  1706. depends on the SyntaxParser setting used:
  1707.  
  1708.  
  1709.  
  1710.  
  1711. ...
  1712.  
  1713.  
  1714.  
  1715.  
  1716.  
  1717.  
  1718.  
  1719. Configurable Syntax Parser
  1720.  
  1721.  
  1722.  
  1723. This is not fully stabilized yet. Might change in the future.
  1724.  
  1725.  
  1726.  
  1727. When 
  1728. SyntaxParser
  1729.  is set to "SIMPLE", the following commands
  1730. can be used to configure the
  1731. state machine used for parsing the
  1732. text.
  1733.  
  1734.  
  1735.  
  1736.  
  1737. h_state
  1738.  
  1739. Defines a new state for the state machine
  1740.  
  1741.  
  1742.  
  1743.  
  1744. h_state
  1745. state_number
  1746.  {
  1747.     
  1748. default_color_name
  1749.  
  1750. }
  1751.  
  1752.  
  1753.  
  1754.  
  1755. h_state
  1756.  command takes the following parameters:
  1757.  
  1758.  
  1759.  
  1760.  
  1761. state_number
  1762.  
  1763. States must be numbered sequentially from 0 without skipping
  1764. any
  1765. number.
  1766.  
  1767.  
  1768. default_color_name
  1769.  
  1770. Contains the name of default color used for characters that are not
  1771. matched
  1772. by any transition string or keyword.
  1773.  
  1774.  
  1775.  
  1776.  
  1777.  
  1778. h_wtype
  1779.  
  1780. Specifies the keyword matching parameters for current
  1781. state. There can be
  1782. only one 
  1783. h_wtype
  1784.  keyword per state.
  1785.  
  1786.  
  1787.  
  1788.  
  1789. h_wtype
  1790.  {
  1791.     
  1792. next_state_if_matched
  1793. ,
  1794.     
  1795. next_state_if_not_matched
  1796. ,
  1797.     
  1798. next_state_if_no_keyword
  1799. ,
  1800.     
  1801. state_flags
  1802. ,
  1803.     
  1804. keyword_charset
  1805.  
  1806. }
  1807.  
  1808.  
  1809.  
  1810.  
  1811. h_wtype
  1812.  takes the following arguments:
  1813.  
  1814.  
  1815.  
  1816.  
  1817. next_state_if_matched
  1818.  
  1819. The number of the next state if any keyword is matched. Can
  1820. be -1 to keep
  1821. current state.
  1822.  
  1823.  
  1824. next_state_if_not_matched
  1825.  
  1826. The number of the next state if no keyword is matched. Can
  1827. be -1 to keep
  1828. current state.
  1829.  
  1830.  
  1831. next_state_if_no_keyword
  1832.  
  1833. The number of next state if no keyword is found at all. Can
  1834. be -1 to keep
  1835. current state.
  1836.  
  1837.  
  1838. state_flags
  1839.  
  1840. String containing zero or more of the following characters:
  1841.  
  1842.  
  1843.  
  1844.  
  1845.  i
  1846.  
  1847.  Keyword matching is performed case-insensitively.
  1848.  
  1849.  
  1850.  
  1851.  
  1852.  
  1853.  
  1854.  
  1855. h_trans
  1856.  
  1857. Defines a new state transition for current state.
  1858.  
  1859.  
  1860.  
  1861.  
  1862. h_trans
  1863.  {
  1864.     
  1865. next_state
  1866. ,
  1867.     
  1868. trans_flags
  1869. ,
  1870.     
  1871. trans_match
  1872. ,
  1873.     
  1874. color_name
  1875.  
  1876. }
  1877.  
  1878.  
  1879.  
  1880.  
  1881. h_trans
  1882.  command takes the following parameters:
  1883.  
  1884.  
  1885.  
  1886.  
  1887. next_state
  1888.  
  1889. The number of next state to go if a match is successful.
  1890.  
  1891.  
  1892. trans_flags
  1893.  
  1894. Determines options for matching. Can contain zero or more of the
  1895. following
  1896. characters:
  1897.  
  1898.  
  1899.  
  1900.  
  1901. ^
  1902.  
  1903. Matches only at the beginning of the line.
  1904.  
  1905. $
  1906.  
  1907. Matches only at the end of the line.
  1908.  
  1909. i
  1910.  
  1911. Match is case-insensitive.
  1912.  
  1913. s
  1914.  
  1915. trans_match
  1916.  is a character set. Matches only if the
  1917. next character is part of the
  1918. set.
  1919.  
  1920. S
  1921.  
  1922. Same as 's' but next character must not be part of the set.
  1923.  
  1924. -
  1925.  
  1926. After successfull match, the pointer is not advanced, matching
  1927. will resume
  1928. at the same position in next state. (WARNING: this
  1929. can cause infinite
  1930. loops).
  1931.  
  1932. <
  1933.  
  1934. The matched character(s) are tagged with current state number.
  1935. This is
  1936. important for proper operation of 
  1937. MatchBracket
  1938.  command.
  1939. MatchBracket will only match braces tagged with same state
  1940. number.
  1941.  
  1942. >
  1943.  
  1944. The matched character(s) are tagged with next state number.
  1945.  
  1946. q
  1947.  
  1948. On successful match quote the next character (the next character
  1949. is not used
  1950. for matching).
  1951.  
  1952. Q
  1953.  
  1954. On successful match quote the end of line (the end of line
  1955. is not used for
  1956. matching).
  1957.  
  1958.  
  1959.  
  1960.  
  1961. trans_match
  1962.  
  1963. When 'S' or 's' option is used, a character set to be matched. When
  1964. 'S' or
  1965. 's' options are not used, a string to be matched.
  1966.  
  1967.  
  1968.  
  1969.  
  1970.  
  1971. h_words
  1972.  
  1973. Specifies the set of keywords to match in this state. All
  1974. characters in
  1975. keywords must be part of the 
  1976. keyword_charset
  1977.  
  1978. in 
  1979. h_wtype
  1980.  command for this mode.
  1981.  
  1982.  
  1983.  
  1984.  
  1985.  
  1986. h_words <color-specifier> { 'list', 'of', 'keywords' }
  1987.  
  1988.  
  1989.  
  1990.  
  1991.  Works the same way as the 
  1992. keyword
  1993.  but keywords
  1994. are for current state only.
  1995.  
  1996.  
  1997.  Multiple keyword sets with different colors can be defined.
  1998.  
  1999.  '-' can be used for color specifier do use the default keyword
  2000. color
  2001. specified in global settings.
  2002.  
  2003.  
  2004.  
  2005.  
  2006.  
  2007.  
  2008. Status Line
  2009.  
  2010.  
  2011. Status line displays the following status information:
  2012.  
  2013. position|flags|mode|curchar|mod? filename|winno
  2014.  
  2015.  
  2016. position
  2017.  = line:column
  2018.  
  2019. flags
  2020.  
  2021.  
  2022.  
  2023.  
  2024. Insert
  2025.  
  2026. Autoindent
  2027.  
  2028. Matches are case sensitive
  2029.  
  2030. SLC
  2031. Stream, Line, Column block-mode
  2032.  
  2033. wW
  2034. Automatic word wrap active (w = line, W = paragraph).
  2035.  
  2036.  
  2037.  
  2038. mode
  2039.       = Mode name as specified in configuration file
  2040.  
  2041. curchar
  2042.    = Decimal ASCII code of character under cursor, or EOL/EOF
  2043.  
  2044. mod?
  2045.       = 
  2046.  if file was modified, 
  2047.  if file is read-only
  2048.  
  2049.  
  2050.  
  2051.  
  2052. Editor Commands
  2053.  
  2054.  
  2055. These commands can be bound to keys in configuration file:
  2056.  
  2057.  
  2058.  
  2059. Cursor Movement
  2060.  
  2061.  
  2062.  
  2063. MoveLeft
  2064.  
  2065. Moves cursor left one character. Stops at first column.
  2066.  
  2067.  
  2068. MoveRight
  2069.  
  2070. Move cursor right one character. Does not stop at the end of line.
  2071.  
  2072.  
  2073. MoveUp
  2074.  
  2075. Moves cursor up one line.
  2076.  
  2077.  
  2078. MoveDown
  2079.  
  2080. Moves cursor down one line
  2081.  
  2082.  
  2083. MovePrev
  2084.  
  2085. Moves cursor to previous character. When the start of line is
  2086. reached,
  2087. wraps to end of previous line.
  2088.  
  2089.  
  2090. MoveNext
  2091.  
  2092. Move cursor to next character. Then the end of line is reached, wraps
  2093. to
  2094. the beginning of the next line.
  2095.  
  2096.  
  2097. MoveWordLeft
  2098.  
  2099. Moves cursor one word left. Stops at the start of line.
  2100.  
  2101.  
  2102. MoveWordRight
  2103.  
  2104. Moves cursor one word right. Stops at the end of line.
  2105.  
  2106.  
  2107. MoveWordPrev
  2108.  
  2109. Moves cursor to start of previous word. When the start of line
  2110. is reached,
  2111. wraps to the end of previous line.
  2112.  
  2113.  
  2114. MoveWordNext
  2115.  
  2116. Moves cursor to start of next word. When the end of line is reached,
  2117. wraps
  2118. to the start of next line.
  2119.  
  2120.  
  2121. MoveLineStart
  2122.  
  2123. Moves cursor to beginning of line
  2124.  
  2125.  
  2126. MoveLineEnd
  2127.  
  2128. Moves cursor to end of line.
  2129.  
  2130.  
  2131. MovePageUp
  2132.  
  2133. Move cursor to previous page.
  2134.  
  2135.  
  2136. MovePageDown
  2137.  
  2138. Moves cursor to next page.
  2139.  
  2140.  
  2141. MovePageLeft
  2142.  
  2143. Moves cursor one page to the left.
  2144.  
  2145.  
  2146. MovePageRight
  2147.  
  2148. Moves cursor one page to the right.
  2149.  
  2150.  
  2151. MovePageStart
  2152.  
  2153. Moves cursor to the top of the page.
  2154.  
  2155.  
  2156. MovePageEnd
  2157.  
  2158. Moves cursor to the bottom of the page.
  2159.  
  2160.  
  2161. MoveFileStart
  2162.  
  2163. Moves cursor to the start of buffer.
  2164.  
  2165.  
  2166. MoveFileEnd
  2167.  
  2168. Moves cursor to end of buffer.
  2169.  
  2170.  
  2171. MoveBlockStart
  2172.  
  2173. Moves cursor to the start of block.
  2174.  
  2175.  
  2176. MoveBlockEnd
  2177.  
  2178. Moves cursor to the end of block.
  2179.  
  2180.  
  2181. ScrollLeft
  2182.  
  2183. Scroll screen left 8 characters
  2184.  
  2185.  
  2186. ScrollRight
  2187.  
  2188. Scroll screen right 8 characters
  2189.  
  2190.  
  2191. ScrollDown
  2192.  
  2193. Scroll screen down 1 line
  2194.  
  2195.  
  2196. ScrollUp
  2197.  
  2198. Scroll screen up 1 line
  2199.  
  2200.  
  2201. MoveFirstNonWhite
  2202.  
  2203. Moves cursor to first non whitespace character on line.
  2204.  
  2205.  
  2206. MoveLastNonWhite
  2207.  
  2208. Moves cursor after last non whitespace character on line.
  2209.  
  2210.  
  2211. MovePrevEqualIndent
  2212.  
  2213. Moves cursor to first line above the cursor with indentation equal
  2214. to
  2215. current line.
  2216.  
  2217.  
  2218. MoveNextEqualIndent
  2219.  
  2220. Moves cursor to first line below the cursor with indentation equal
  2221. to
  2222. current.
  2223.  
  2224.  
  2225. MovePrevTab
  2226.  
  2227. Moves cursor to previous tab stop.
  2228.  
  2229.  
  2230. MoveNextTab
  2231.  
  2232. Moves cursor to next tab stop.
  2233.  
  2234.  
  2235. MovePrevPos
  2236.  
  2237. Moves cursor to previous cursor position.
  2238.  
  2239.  
  2240. SavePos
  2241.  
  2242. Saves current cursor position.
  2243.  
  2244.  
  2245. MoveSavedPos
  2246.  
  2247. Moves cursor to saved position.
  2248.  
  2249.  
  2250. MoveSavedPosCol
  2251.  
  2252. Moves cursor to saved position column without leaving the current
  2253. line.
  2254.  
  2255.  
  2256. MoveSavedPosRow
  2257.  
  2258. Moves cursor to saved position line without leaving the current
  2259. column.
  2260.  
  2261.  
  2262. MoveLineTop
  2263.  
  2264. Reposition current line to top of window.
  2265.  
  2266.  
  2267. MoveLineCenter
  2268.  
  2269. Reposition current line to center of window.
  2270.  
  2271.  
  2272. MoveLineBottom
  2273.  
  2274. Reposition current line to bottom of window.
  2275.  
  2276.  
  2277. MoveTabStart
  2278.  
  2279. When inside of tab character, move cursor to start of tab.
  2280.  
  2281.  
  2282. MoveTabEnd
  2283.  
  2284. When inside of tab character, move cursor to end of tab.
  2285.  
  2286.  
  2287. MoveFoldTop
  2288.  
  2289. Move to the top of current fold.
  2290.  
  2291.  
  2292. MoveFoldPrev
  2293.  
  2294. Move to the top of previous fold.
  2295.  
  2296.  
  2297. MoveFoldNext
  2298.  
  2299. Move to the top of next fold.
  2300.  
  2301.  
  2302. MoveFunctionPrev
  2303.  
  2304. Move to start of previous function.
  2305.  
  2306.  
  2307. A function is determined by two lines matching 
  2308. RoutineRegexp
  2309. .
  2310.  
  2311.  
  2312. MoveFunctionNext
  2313.  
  2314. Move to start of next function.
  2315.  
  2316.  
  2317. A function is determined by two lines matching 
  2318. RoutineRegexp
  2319. .
  2320.  
  2321.  
  2322.  
  2323.  
  2324. Text deleting
  2325.  
  2326. Commands for deleting text in buffer.
  2327.  
  2328. KillLine
  2329.  
  2330. Delete current line. If we are on the last line of file, only the line
  2331.  
  2332. contents is deleted.
  2333.  
  2334.  
  2335. KillChar
  2336.  
  2337. Delete character under cursor.
  2338.  
  2339.  
  2340. KillCharPrev
  2341.  
  2342. Delete character before cursor.
  2343.  
  2344.  
  2345. KillWord
  2346.  
  2347. Delete next word.
  2348.  
  2349.  
  2350. KillWordPrev
  2351.  
  2352. Delete previous word.
  2353.  
  2354.  
  2355. KillToLineStart
  2356.  
  2357. Delete text to line start.
  2358.  
  2359.  
  2360. KillToLineEnd
  2361.  
  2362. Delete text to line end.
  2363.  
  2364.  
  2365. KillBlock
  2366.  
  2367. Kill text in block.
  2368.  
  2369.  
  2370. KillBlockOrChar
  2371.  
  2372. Kill block if marked, otherwise kill char under cursor.
  2373.  
  2374.  
  2375. KillBlockOrCharPreV
  2376.  
  2377. Kill block if marked, otherwise kill char before cursor.
  2378.  
  2379.  
  2380. BackSpace
  2381.  
  2382. Delete character before cursor.
  2383.  
  2384.  
  2385. Can be configured with the following mode settings:
  2386.  
  2387.  
  2388.  
  2389. WordWrap
  2390.  
  2391. BackSpUnindents
  2392.  
  2393. BackSpKillTab
  2394.  
  2395. Trim
  2396.  
  2397.  
  2398.  
  2399.  
  2400. Delete
  2401.  
  2402. Delete character under cursor (configurable).
  2403.  
  2404.  
  2405. Can be configured with the following mode settings
  2406.  
  2407.  
  2408.  
  2409. DeleteKillTab
  2410.  
  2411. WordWrap
  2412.  
  2413. Trim
  2414.  
  2415.  
  2416.  
  2417.  
  2418.  
  2419.  
  2420. Line commands
  2421.  
  2422. Text line operations.
  2423.  
  2424. LineInsert
  2425.  
  2426. Insert empty line before current line.
  2427.  
  2428.  
  2429. LineAdd
  2430.  
  2431. Add line after current.
  2432.  
  2433.  
  2434. LineSplit
  2435.  
  2436. Split line at current cursor position.
  2437.  
  2438.  
  2439. LineJoin
  2440.  
  2441. Join line with next one.
  2442.  
  2443.  
  2444. LineNew
  2445.  
  2446. Add new line after current one, move to next line and indent
  2447. (indentation
  2448. depends on currently active indentation mode).
  2449.  
  2450.  
  2451. LineIndent
  2452.  
  2453. Reindent current line. The behaviour depends on currenty active
  2454.  
  2455. indentation mode.
  2456.  
  2457.  
  2458.  In PLAIN mode, reindent the line to the same level as previous
  2459. line.
  2460.  
  2461.  
  2462. LineTrim
  2463.  
  2464. Trim spaces at the end of current line
  2465.  
  2466.  
  2467. LineDuplicate
  2468.  
  2469. Duplicate current line.
  2470.  
  2471.  
  2472.  
  2473.  
  2474. Text insertion
  2475.  
  2476. Text insertion commands.
  2477.  
  2478. InsertString
  2479.  
  2480. Insert string given as argument.
  2481.  
  2482.  
  2483. InsertChar
  2484.  
  2485. Insert character with ASCII code given as argument. Does not
  2486. check for
  2487. possible abbreviations.
  2488.  
  2489.  
  2490. InsertSpace
  2491.  
  2492. Insert Space character (ASCII 32)
  2493.  
  2494.  
  2495. TypeChar
  2496.  
  2497. Insert character with ASCII code given as argument. Checks
  2498. for possible
  2499. abbreviations and performs the expansion.
  2500.  
  2501.  
  2502. SelfInsert
  2503.  
  2504. Insert character defined by last key.
  2505.  
  2506.  
  2507. InsertTab
  2508.  
  2509. Insert Tab character (ASCII 9)
  2510.  
  2511.  
  2512. InsertSpacesToTab
  2513.  
  2514. Insert Space characters to next tab stop, simulating a tab.
  2515.  
  2516.  
  2517. InsPrevLineChar
  2518.  
  2519. Insert character above current character.
  2520.  
  2521.  
  2522. InsPrevLineToEol
  2523.  
  2524. Insert previous line from current column to end of line.
  2525.  
  2526.  
  2527. CompleteWord
  2528.  
  2529. Complete word with previous occurance of the word in the file.
  2530.  
  2531.  
  2532. WrapPara
  2533.  
  2534. Word wrap paragraph (paragraphs are separated by blank lines).
  2535.  
  2536.  
  2537.  
  2538.  
  2539. Blocks
  2540.  
  2541. Block manipulation commands.
  2542.  
  2543. BlockBegin
  2544.  
  2545. Set block beginning to current position.
  2546.  
  2547.  
  2548. BlockEnd
  2549.  
  2550. Set block end to current position.
  2551.  
  2552.  
  2553. BlockUnmark
  2554.  
  2555. Unmark selected block.
  2556.  
  2557.  
  2558. BlockCut
  2559.  
  2560. Cut selected block to clipboard.
  2561.  
  2562.  
  2563. BlockCutAppend
  2564.  
  2565. Cut selected block and append it to clipboard.
  2566.  
  2567.  
  2568. BlockCopy
  2569.  
  2570. Copy selected block to clipboard.
  2571.  
  2572.  
  2573. BlockCopyAppend
  2574.  
  2575. Append selected block to clipboard.
  2576.  
  2577.  
  2578. BlockPaste
  2579.  
  2580. Paste clipboard to current position.
  2581.  
  2582.  
  2583. BlockPasteStream
  2584.  
  2585. Paste clipboard to current position as stream block.
  2586.  
  2587.  
  2588. BlockPasteLine
  2589.  
  2590. Paste clipboard to current position as line block.
  2591.  
  2592.  
  2593. BlockPasteColumn
  2594.  
  2595. Paste clipboard to current position as column block.
  2596.  
  2597.  
  2598. BlockKill
  2599.  
  2600. Delete selected text.
  2601.  
  2602.  
  2603. BlockIndent
  2604.  
  2605. Indent block by 1 character.
  2606.  
  2607.  
  2608. BlockUnindent
  2609.  
  2610. Unindent block by 1 character.
  2611.  
  2612.  
  2613. BlockMarkStream
  2614.  
  2615. Start/stop marking stream block.
  2616.  
  2617.  
  2618. BlockMarkLine
  2619.  
  2620. Start/stop marking line block.
  2621.  
  2622.  
  2623. BlockMarkColumn
  2624.  
  2625. Start/stop marking column block.
  2626.  
  2627.  
  2628. BlockExtendBegin
  2629.  
  2630. Start extending selected block.
  2631.  
  2632.  
  2633. BlockExtendEnd
  2634.  
  2635. Stop extending selected block.
  2636.  
  2637.  
  2638. BlockReIndent
  2639.  
  2640. Reindent entire block (C/REXX mode)
  2641.  
  2642.  
  2643. BlockRead
  2644.  
  2645. Read block from file.
  2646.  
  2647.  
  2648. BlockWrite
  2649.  
  2650. Write marked block to file.
  2651.  
  2652.  
  2653. BlockPrint
  2654.  
  2655. Print a block to configured device.
  2656.  
  2657.  
  2658. BlockSelectLine
  2659.  
  2660. Select current line as block.
  2661.  
  2662.  
  2663. BlockSelectWord
  2664.  
  2665. Select word under cursor as word.
  2666.  
  2667.  
  2668. BlockUnTab
  2669.  
  2670. Remove tabs from marked lines.
  2671.  
  2672.  
  2673. BlockEnTab
  2674.  
  2675. Generate and optimize tabs in marked lines.
  2676.  
  2677.  
  2678. BlockMarkFunction
  2679.  
  2680. Mark current function as block.
  2681.  
  2682.  
  2683. A function is determined by two lines matching 
  2684. RoutineRegexp
  2685. .
  2686.  
  2687.  
  2688. BlockSort
  2689.  
  2690.  
  2691. Sorts the marked block in ascending order.
  2692.  
  2693.  
  2694. If mode setting MatchCase is set, characters will be compared
  2695. case
  2696. sensitively.
  2697.  
  2698.  
  2699. When block is marked in 
  2700. Stream
  2701.  or
  2702.  
  2703. Line
  2704.  mode, the entire lines in marked
  2705. block will be compared.
  2706.  
  2707.  
  2708. When block is marked in 
  2709. Column
  2710.  
  2711. mode, only characters within marked columns will be compared.
  2712.  
  2713.  
  2714. BlockSortReverse
  2715.  
  2716.  
  2717. Sorts the marked block in descending order.
  2718. See 
  2719. BlockSort
  2720.  for more information.
  2721.  
  2722.  
  2723.  
  2724.  
  2725. File commands
  2726.  
  2727.  
  2728. FileSave
  2729.  
  2730. Save current file.
  2731.  
  2732.  
  2733. FileSaveAll
  2734.  
  2735. Save all loaded files.
  2736.  
  2737.  
  2738. FileSaveAs
  2739.  
  2740. Save current file under a new name, changing the name of loaded file.
  2741.  
  2742.  
  2743. FileWriteTo
  2744.  
  2745. Save current file under a new name, without changing name of loaded
  2746. file.
  2747.  
  2748.  
  2749. FileClose
  2750.  
  2751. Close current file.
  2752.  
  2753.  
  2754. FileCloseAll
  2755.  
  2756. Close all files.
  2757.  
  2758.  
  2759. FileOpen
  2760.  
  2761. Open a file given as argument. If no argument is given for
  2762. command, prompt
  2763. user to enter a filename.
  2764.  
  2765.  
  2766. FileOpenInMode
  2767.  
  2768. Load a file in a specified mode.
  2769.  
  2770.  
  2771. FileReload
  2772.  
  2773. Reload current file.
  2774.  
  2775.  
  2776. FileNext
  2777.  
  2778. Select next file in buffer ring.
  2779.  
  2780.  
  2781. FilePrev
  2782.  
  2783. Select previous file in buffer ring.
  2784.  
  2785.  
  2786. FileLast
  2787.  
  2788. Select previously active file. Used to switch between two last
  2789. used
  2790. files.
  2791.  
  2792.  
  2793.  
  2794.  
  2795. Window commands
  2796.  
  2797. Window commands.
  2798.  
  2799. WinHSplit
  2800.  
  2801. Split window horizontally.
  2802.  
  2803.  
  2804. WinNext
  2805.  
  2806. Activate next window.
  2807.  
  2808.  
  2809. WinPrev
  2810.  
  2811. Activate previous window.
  2812.  
  2813.  
  2814. WinZoom
  2815.  
  2816. Make current window the only one (close all others).
  2817.  
  2818.  
  2819. WinRefresh
  2820.  
  2821. Repaint entire screen.
  2822.  
  2823.  
  2824. WinResize
  2825.  
  2826. Resize window (takes integer argument, -x = smaller, +x = bigger).
  2827.  
  2828.  
  2829. WinClose
  2830.  
  2831. Close current window.
  2832.  
  2833.  
  2834.  
  2835.  
  2836. Undo/Redo
  2837.  
  2838. Undo commands.
  2839.  
  2840. Undo
  2841.  
  2842. Undo last operation.
  2843.  
  2844.  
  2845. Redo
  2846.  
  2847. Redo last undone operation.
  2848.  
  2849.  
  2850.  
  2851.  
  2852. Character translation
  2853.  
  2854. Character translation commands.
  2855.  
  2856. CharCaseUp
  2857.  
  2858. Convert current character to uppercase
  2859.  
  2860.  
  2861. CharCaseDown
  2862.  
  2863. Convert current character to lowercase
  2864.  
  2865.  
  2866. CharCaseToggle
  2867.  
  2868. Toggle case of current characters
  2869.  
  2870.  
  2871. CharTrans
  2872.  
  2873. Translate current character as specified by two arguments.
  2874.  
  2875.  
  2876. Examples:
  2877.  
  2878.  
  2879.  
  2880.     CharTrans 'A-Za-z' 'a-zA-Z'
  2881.     CharTrans 'A-D' 'DCBA'
  2882.  
  2883.  
  2884.  
  2885.  
  2886. LineCaseUp
  2887.  
  2888. Convert characters on current line to uppercase
  2889.  
  2890.  
  2891. LineCaseDown
  2892.  
  2893. Convert characters on current line to lowercase
  2894.  
  2895.  
  2896. LineCaseToggle
  2897.  
  2898. Toggle case of characters on current line
  2899.  
  2900.  
  2901. LineTrans
  2902.  
  2903. Translate characters on current line as specified
  2904. by two arguments.
  2905.  
  2906.  
  2907. BlockCaseUp
  2908.  
  2909. Convert characters in selected block to uppercase
  2910.  
  2911.  
  2912. BlockCaseDown
  2913.  
  2914. Convert characters in selected block to lowercase
  2915.  
  2916.  
  2917. BlockCaseToggle
  2918.  
  2919. Toggle case of characters in selected block
  2920.  
  2921.  
  2922. BlockTrans
  2923.  
  2924. Translate characters in block as specified by two arguments.
  2925.  
  2926.  
  2927.  
  2928.  
  2929. Searching
  2930.  
  2931. Search/Replace commands.
  2932.  
  2933. Find
  2934.  
  2935. Search for text, w/options
  2936.  
  2937.  
  2938. FindReplace
  2939.  
  2940. Search and replace text w/options. 
  2941.  
  2942.  
  2943. FindRepeat
  2944.  
  2945. Repeat last search/replace operation
  2946.  
  2947.  
  2948. FindRepeatReverse
  2949.  
  2950. Repeat last search/replace operation in opposite direction
  2951.  
  2952.  
  2953. FindRepeatOnce
  2954.  
  2955. Repeat last search/replace operation only once.
  2956.  
  2957.  
  2958. MatchBracket
  2959.  
  2960. Search for matching bracket
  2961.  
  2962.  
  2963. HilitMatchBracket
  2964.  
  2965. Show matching bracket highlited if visible in window.
  2966.  
  2967.  
  2968. IncrementalSearch
  2969.  
  2970. Search incrementally for text.
  2971.  
  2972.  
  2973. SearchWordPrev
  2974.  
  2975. Search for previous occurance of word under cursor.
  2976.  
  2977.  
  2978. SearchWordNext
  2979.  
  2980. Search for next occurance of word under cursor.
  2981.  
  2982.  
  2983. Search
  2984.  
  2985. Search for text
  2986.  
  2987.  
  2988. SearchB
  2989.  
  2990. Search for text backwards
  2991.  
  2992.  
  2993. SearchRx
  2994.  
  2995. Search for regexp
  2996.  
  2997.  
  2998. SearchReplaceRx
  2999.  
  3000. Search and replace using regexp
  3001.  
  3002.  
  3003. SearchAgain
  3004.  
  3005. Search for text again
  3006.  
  3007.  
  3008. SearchAgainB
  3009.  
  3010. Search for text again backwards
  3011.  
  3012.  
  3013. SearchReplace
  3014.  
  3015. Search for text and replace
  3016.  
  3017.  
  3018. SearchReplaceB
  3019.  
  3020. Search and replace backwards
  3021.  
  3022.  
  3023.  
  3024. Folding
  3025.  
  3026. Folding commands.
  3027.  
  3028.  
  3029. FoldCreate
  3030.  
  3031. Create fold
  3032.  
  3033. FoldCreateByRegexp
  3034.  
  3035. Create folds at lines matching regexp.
  3036.  
  3037.  
  3038. FoldDestroy
  3039.  
  3040. Destroy fold at current line.
  3041.  
  3042.  
  3043. FoldDestroyAll
  3044.  
  3045. Destroy all folds in file.
  3046.  
  3047.  
  3048. FoldOpen
  3049.  
  3050. Open fold at current line.
  3051.  
  3052.  
  3053. FoldOpenAll
  3054.  
  3055. Open all folds in file.
  3056.  
  3057.  
  3058. FoldOpenNested
  3059.  
  3060. Open current fold and all nested folds
  3061.  
  3062.  
  3063. FoldClose
  3064.  
  3065. Close current fold
  3066.  
  3067.  
  3068. FoldCloseAll
  3069.  
  3070. Close all folds in file
  3071.  
  3072.  
  3073. FoldToggleOpenClose
  3074.  
  3075. Toggle open/close fold.
  3076.  
  3077.  
  3078. FoldPromote
  3079.  
  3080. Make fold a higher level fold
  3081.  
  3082.  
  3083. FoldDemote
  3084.  
  3085. Make fold a lower level fold
  3086.  
  3087.  
  3088.  
  3089.  
  3090. Compile commands
  3091.  
  3092. Running external tools such as compilers.
  3093.  
  3094. Compile
  3095.  
  3096. Run compile command in background
  3097.  
  3098.  
  3099. ViewMessages
  3100.  
  3101. View compiler output
  3102.  
  3103.  
  3104. CompilePrevError
  3105.  
  3106. Jump to previous compiler error
  3107.  
  3108.  
  3109. CompileNextError
  3110.  
  3111. Jump to next compiler error
  3112.  
  3113.  
  3114. ClearMessages
  3115.  
  3116. Clear compiler messages.
  3117.  
  3118.  
  3119.  
  3120.  
  3121. Bookmarks
  3122.  
  3123.  
  3124.  
  3125. PlaceBookmark
  3126.  
  3127. Place a named bookmark at current buffer position
  3128.  
  3129.  
  3130. GotoBookmark
  3131.  
  3132. Goto a named bookmark in current buffer
  3133.  
  3134.  
  3135. RemoveBookmark
  3136.  
  3137. Remove a named bookmark from current buffer
  3138.  
  3139.  
  3140.  
  3141.  
  3142. Settings
  3143.  
  3144. Changing editing options.
  3145.  
  3146.  
  3147. ToggleAutoIndent
  3148. Toggle automatic indentation
  3149.  
  3150. ToggleInsert
  3151. Toggle insert/overwrite mode
  3152.  
  3153. ToggleExpandTabs
  3154. Toggle tab expansion on display.
  3155.  
  3156. ToggleShowTabs
  3157. Toggle tab visibility (as circles).
  3158.  
  3159. ToggleUndo
  3160. Toggle undo/redo information saving.
  3161.  
  3162. ToggleReadOnly
  3163. Toggle read only file.
  3164.  
  3165. ToggleKeepBackups
  3166. Toggle backup files.
  3167.  
  3168. ToggleMatchCase
  3169. Toggle case sensitivity for searches
  3170.  
  3171. ToggleBackSpKillTab
  3172. Enable/disable BackSp killing entire tabs.
  3173.  
  3174. ToggleDeleteKillTab
  3175. Enable/disable Delete killing entire tabs.
  3176.  
  3177. ToggleSpaceTabs
  3178. Toggle insertion of spaces instead of tabs on Tab key.
  3179.  
  3180. ToggleIndentWithTabs
  3181. Toggle indentation with tabs.
  3182.  
  3183. ToggleBackSpUnindents
  3184. Toggle unindentation on previous indent level on BackSp.
  3185.  
  3186. ToggleWordWrap
  3187. Toggle automatic word wrap.
  3188.  
  3189. ToggleTrim
  3190. Toggle trimming of spaces at end of line.
  3191.  
  3192. ToggleShowMarkers
  3193. Toggle EOL/EOF marker visibility.
  3194.  
  3195. ToggleSysClipboard
  3196. Toggle usage of system clipboard.
  3197.  
  3198. SetLeftMargin
  3199. Set left margin to current cursor column.
  3200.  
  3201. SetRightMargin
  3202. Set right margin to current cursor column.
  3203.  
  3204. ChangeTabSize
  3205. Prompt for tab size.
  3206.  
  3207. ChangeCIndent
  3208. Prompt for indentation level for CMode smart indentation.
  3209.  
  3210. ChangeCBraceOfs
  3211. Change brace offset for CMode smart indentation.
  3212.  
  3213. ChangeREXXIndent
  3214. Prompt for indentation level for REXX smart indentation
  3215.  
  3216. ChangeLeftMargin
  3217. Prompt for left margin for word wrap.
  3218.  
  3219. ChangeRightMargin
  3220. Prompt for right margin for word wrap.
  3221.  
  3222.  
  3223.  
  3224. Tags
  3225.  
  3226.  
  3227. TagLoad
  3228. Load tags database (merge with currently loaded tags).
  3229.  
  3230. TagClear
  3231. Remove all loaded tags from memory.
  3232.  
  3233. TagFind
  3234. Prompt for tag and locate it.
  3235.  
  3236. TagFindWord
  3237. Locate tag under cursor.
  3238.  
  3239. TagPop
  3240. Return to position before TagFind or TagFindWord command.
  3241.  
  3242. TagNext
  3243. Search for next occurrance of current tag.
  3244.  
  3245. TagPrev
  3246. Search for previous occurance of current tag.
  3247.  
  3248. Other
  3249.  
  3250.  
  3251. ExitEditor
  3252.  
  3253. Close all files, save desktop and exit the editor.
  3254.  
  3255.  
  3256. RunProgram
  3257.  
  3258. Run external program in foreground.
  3259.  
  3260.  
  3261. ViewBuffers
  3262.  
  3263. View buffer list.
  3264.  
  3265.  
  3266. ChangeMode
  3267.  
  3268. Activate another mode for current file.
  3269.  
  3270.  
  3271. ShowEntryScreen
  3272.  
  3273. Show saved shell screen if available.
  3274.  
  3275.  
  3276. SwitchTo
  3277.  
  3278. Switch to buffer with a number.
  3279.  
  3280.  
  3281. ChangeKeys
  3282.  
  3283. Change current keymap to keymap of another mode.
  3284.  
  3285.  
  3286. ChangeFlags
  3287.  
  3288. Change current flags to flags of another mode.
  3289.  
  3290.  
  3291. ShowMenu
  3292.  
  3293. Show and select from menu.
  3294.  
  3295.  
  3296. MainMenu
  3297.  
  3298. Activate menu bar.
  3299.  
  3300.  
  3301. LocalMenu
  3302.  
  3303. Activate local popup menu.
  3304.  
  3305.  
  3306. ASCIITable
  3307.  
  3308. Select and insert character from ASCII table.
  3309.  
  3310.  
  3311. DesktopSave
  3312.  
  3313. Save current desktop to active desktop file.
  3314.  
  3315.  
  3316. DesktopSaveAs
  3317.  
  3318. Ask for a new desktop file and save current desktop into it.
  3319.  
  3320.  
  3321. ListRoutines
  3322.  
  3323. Show the list of functions in the current buffer.
  3324.  
  3325.  
  3326. A function is determined by two lines matching 
  3327. RoutineRegexp
  3328. .
  3329.  
  3330.  
  3331. IndentFunction
  3332.  
  3333. Indents the current function. Applys the
  3334.  
  3335. LineIndent
  3336.  command to every line of function.
  3337.  
  3338.  
  3339.  A function is determined by two lines matching 
  3340. RoutineRegexp
  3341. .
  3342.  
  3343.  
  3344.  
  3345.  
  3346. Search and Replace
  3347.  
  3348.  
  3349. Search/Replace Commands
  3350.  
  3351.  
  3352. Find
  3353. Search for text with 
  3354. options
  3355. .
  3356.  
  3357. FindReplace
  3358. Search and replace text w/options. 
  3359.  
  3360. FindRepeat
  3361. Repeat last search/replace operation
  3362.  
  3363. FindRepeatReverse
  3364. Repeat last search/replace operation in opposite direction
  3365.  
  3366. FindRepeatOnce
  3367. Repeat last search/replace operation only once.
  3368.  
  3369. MatchBracket
  3370. Search for matching bracket
  3371.  
  3372. IncrementalSearch
  3373. Search incrementally for text.
  3374.  
  3375. Search
  3376. Search for text
  3377.  
  3378. SearchB
  3379. Search for text backwards
  3380.  
  3381. SearchRx
  3382. Search for regexp
  3383.  
  3384. SearchReplaceRx
  3385. Search and replace using regexp
  3386.  
  3387. SearchAgain
  3388. Search for text again
  3389.  
  3390. SearchAgainB
  3391. Search for text again backwards
  3392.  
  3393. SearchReplace
  3394. Search for text and replace
  3395.  
  3396. SearchReplaceB
  3397. Search and replace backwards
  3398.  
  3399.  
  3400. Search and Replace Options
  3401.  
  3402.  
  3403.  
  3404.  
  3405.  
  3406.  
  3407. Search for all occurances
  3408.  
  3409. Search in block only
  3410.  
  3411. Search through entire file/block (globally).
  3412.  
  3413. Ignore case
  3414.  
  3415. Reverse search
  3416.  
  3417. Use 
  3418. regular expression
  3419.  matching
  3420.  
  3421. Delete found line
  3422.  
  3423. Join found line
  3424.  
  3425. Search for entire words (only when 'x' not used).
  3426.  
  3427. No prompting
  3428.  
  3429.  
  3430.  
  3431.  
  3432. Commands affected by 
  3433. DefFindOpt
  3434.  mode setting:
  3435.  
  3436.  
  3437.  
  3438. Find
  3439.  
  3440.  
  3441.  
  3442.  
  3443.  
  3444. Commands affected by 
  3445. DefFindReplaceOpt
  3446.  mode setting:
  3447.  
  3448.  
  3449.  
  3450. FindReplace
  3451.  
  3452.  
  3453.  
  3454.  
  3455.  
  3456. Commands affected by 
  3457. MatchCase
  3458.  mode setting:
  3459.  
  3460.  
  3461.  
  3462. IncrementalSearch
  3463.  
  3464.  
  3465. Search
  3466.  
  3467.  
  3468. SearchB
  3469.  
  3470.  
  3471. SearchRx
  3472.  
  3473.  
  3474. SearchReplaceRx
  3475.  
  3476.  
  3477. SearchReplace
  3478.  
  3479.  
  3480. SearchReplaceB
  3481.  
  3482.  
  3483.  
  3484.  
  3485.  
  3486.  
  3487.  
  3488. Regular Expressions
  3489.  
  3490.  
  3491.  
  3492. Regular expressions are a way to specify text patterns when searching
  3493. for
  3494. a text in a buffer. Regular expressions consist of normal
  3495. characters
  3496. and special operator characters with a special meanings.
  3497. Operators
  3498. allow you to anchor matches, match classes of characters, match
  3499. given
  3500. pattern several times or match alternate patterns. Operators can
  3501. be
  3502. also used to group patterns.
  3503.  
  3504.  
  3505.  
  3506. Search Operators
  3507.  
  3508.  
  3509.  
  3510.  
  3511.  
  3512.  
  3513. Quotes next character. Character will lose it's special meaning. Can also be
  3514. used to match special characters.
  3515.  
  3516. \n
  3517.  
  3518.  
  3519. Matches a 0x0A (LF) character.
  3520.  
  3521. \r
  3522.  
  3523.  
  3524. Matches a 0x0D (CR) character.
  3525.  
  3526. \t
  3527.  
  3528.  
  3529. Matches a 0x09 (TAB) character.
  3530.  
  3531. \e
  3532.  
  3533.  
  3534. Matches an escape character (0x1B)
  3535.  
  3536. \s
  3537.  
  3538.  
  3539. Matches whitespace (CR, LF, TAB, SPACE) characters.
  3540.  
  3541. \S
  3542.  
  3543.  
  3544. Matches non-whitespace (the reverse of \s)
  3545.  
  3546. \w
  3547.  
  3548.  
  3549. Matches word character [a-zA-Z0-9]
  3550.  
  3551. \W
  3552.  
  3553.  
  3554. Matches non-word character
  3555.  
  3556. \d
  3557.  
  3558.  
  3559. Matches a digit [0-9].
  3560.  
  3561. \D
  3562.  
  3563.  
  3564. Matches a non-digit.
  3565.  
  3566. \U
  3567.  
  3568.  
  3569. Matches uppercase characters (A-Z)
  3570.  
  3571. \L
  3572.  
  3573.  
  3574. Matches lowercase characters (a-z)
  3575.  
  3576. \x##
  3577.  
  3578.  
  3579. Matches specified hex value (\x0A, \x0D, \x09, etc.)
  3580.  
  3581. \o###
  3582.  
  3583.  
  3584. Matches specified octal value (\o000, \o015, etc.)
  3585.  
  3586. \N###
  3587.  
  3588.  
  3589. Matches specified decimal value (\N000, \N013, \N009, etc.)
  3590.  
  3591. \C
  3592.  
  3593.  
  3594. Starts case sensitive matching.
  3595.  
  3596. \c
  3597.  
  3598.  
  3599. Starts case insensitive matching.
  3600.  
  3601.  
  3602.  
  3603. Match a beginning of line.
  3604.  
  3605.  
  3606.  
  3607. Match an end of line.
  3608.  
  3609.  
  3610.  
  3611. Match any character.
  3612.  
  3613. <
  3614.  
  3615.  
  3616. Match beginning of word (word consists of [A-Za-z0-9]).
  3617.  
  3618. >
  3619.  
  3620.  
  3621. Match end of word.
  3622.  
  3623. [ ]
  3624.  
  3625.  
  3626. Specifies a class of characters ([abc123], [\]\x10], etc).
  3627.  
  3628. [ - ]
  3629.  
  3630.  
  3631. Specified a range of characters ([0-9a-zA-Z_], [0-9], etc)
  3632.  
  3633. [^ ]
  3634.  
  3635.  
  3636. Specifies complement class ([^a-z], [^\-], etc)
  3637.  
  3638.  
  3639.  
  3640. Matches preceeding pattern optionally (a?bc, filename\.?, $?, etc)
  3641.  
  3642.  
  3643.  
  3644. Matches preceeding or next pattern (a|b, c|d, abc|d). Only one character will
  3645. be used as pattern unless grouped together using {} or ().
  3646.  
  3647.  
  3648.  
  3649. Match zero or more occurances of preceeding pattern. Matching is greedy and
  3650. will match as much as possible.
  3651.  
  3652.  
  3653.  
  3654. Match one or more occurances of preceeding pattern. Match is greedy.
  3655.  
  3656.  
  3657.  
  3658. Match zero or more occurances of preceeding pattern. Matching is non-greedy
  3659. and will match as little as possible without causing the rest of the pattern
  3660. match to fail.
  3661.  
  3662.  
  3663.  
  3664. Match one or more occurances of preceeding pattern. Matching is non-greedy.
  3665.  
  3666. { }
  3667.  
  3668.  
  3669. Group patterns together to form complex pattern. ( {abc}, {abc}|{cde},
  3670. {abc}?, {word}?)
  3671.  
  3672. ( )
  3673.  
  3674.  
  3675. Group patterns together to form complex pattern. Also used to remember the
  3676. matched substring which can be used for substitution operation. Up to 9 can
  3677. be used.
  3678.  
  3679.  
  3680.  
  3681.  
  3682.  
  3683. Replace Operators:
  3684.  
  3685.  
  3686.  
  3687.  
  3688.  
  3689.  
  3690. Causes the next character to lose it's special meaning.
  3691.  
  3692. \n
  3693.  
  3694.  
  3695. Inserts a 0x0A (LF) character.
  3696.  
  3697. \r
  3698.  
  3699.  
  3700. Inserts a 0x0D (CR) character.
  3701.  
  3702. \t
  3703.  
  3704.  
  3705. Inserts a 0x09 (TAB) character.
  3706.  
  3707. \#
  3708.  
  3709.  
  3710. Recalls stored substring from matched pattern ()'s. (\1, \2, \3, to \9)
  3711.  
  3712. \0
  3713.  
  3714.  
  3715. Recalls entire matched pattern.
  3716.  
  3717. \u
  3718.  
  3719.  
  3720. Convert next character to uppercase
  3721.  
  3722. \l
  3723.  
  3724.  
  3725. Convert next character to lowercase
  3726.  
  3727. \U
  3728.  
  3729.  
  3730. Convert to uppercase till \E or \e
  3731.  
  3732. \L
  3733.  
  3734.  
  3735. Convert to lowercase till \E or \e
  3736.  
  3737.  
  3738.  
  3739.  
  3740.  
  3741.  
  3742. Performance Tips
  3743.  
  3744.  
  3745. If you want to achieve top performance (necessary for 
  3746. some text editing
  3747. tasks), here are some tips:
  3748.  
  3749.  
  3750.  
  3751.  
  3752. Use PLAIN hilit mode
  3753.  
  3754. Disable Tab Expansion
  3755.  
  3756. Disable ShowMarkers
  3757.  
  3758. Disable Undo
  3759.  
  3760. Disable AutoHilitBracket
  3761.  
  3762. Disable Abbreviations.
  3763.  
  3764.  
  3765.  
  3766.  
  3767.  
  3768.  
  3769.