home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / LPEX.ZIP / LPEX.INF (.txt) next >
OS/2 Help File  |  1992-03-30  |  196KB  |  7,865 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. Overview of LPEX. ΓòÉΓòÉΓòÉ
  3.  
  4. To be added. 
  5.  
  6.  
  7. ΓòÉΓòÉΓòÉ 2. Help for the Window List window ΓòÉΓòÉΓòÉ
  8.  
  9. The window list window maintains a list of LPEX windows, and a log of LPEX 
  10. messages. 
  11.  
  12.  
  13. ΓòÉΓòÉΓòÉ 2.1. Help for File ΓòÉΓòÉΓòÉ
  14.  
  15. Open document or Exit LPEX. 
  16.  
  17. Use the File pull-down to open a new document, to open a document or to Exit 
  18. from the LPEX session. document. 
  19.  
  20.  
  21. ΓòÉΓòÉΓòÉ 2.1.1. Help for "File Operations" ΓòÉΓòÉΓòÉ
  22.  
  23.  The File operations dialog is invoked  Open file..., Get a file... and Save 
  24. as... menu options. 
  25.  
  26. This dialog can be used to select file(s) from any one directory on any 
  27. available FAT or HPFS or NFS drive, or to select a new file on any of these 
  28. drives. 
  29.  
  30.  Disk Drive 
  31.  Search Pattern 
  32.  Directories 
  33.  Files 
  34.  Multiple File Select 
  35.  System Profile 
  36.  User Profile 
  37.  Load Macro 
  38.  Linebreak mode 
  39.  New button 
  40.  
  41.  The next two options apply only for the Save as mode only. 
  42.  
  43.  Set Docname 
  44.  As Displayed 
  45.  
  46.  
  47. ΓòÉΓòÉΓòÉ <hidden> Help for Disk Drive ΓòÉΓòÉΓòÉ
  48.  
  49. Drives are selected by using the cursor up and down keys, or by engaging the 
  50. pull-down list box to the right. When a different drive is selected, the 
  51. left-hand list box is refreshed and the right-hand list box is cleared. 
  52.  
  53.  
  54. ΓòÉΓòÉΓòÉ <hidden> Help for Search Pattern ΓòÉΓòÉΓòÉ
  55.  
  56. The search pattern determines which files are listed in the right-hand list 
  57. box. To effect a new search pattern, press Enter on the keyboard. Case is 
  58. ignored. 
  59.  
  60. The "*" wild card character can be used anywhere to represent an arbitrary 
  61. combination of characters.  The "?" wild card character can be used anywhere to 
  62. represent an arbitrary character.  The "." character, if used only at the end 
  63. of the search pattern, will limit the list of files to those which do not 
  64. contain that character. 
  65.  
  66. Although the combo box is normally used to change drives, you may change the 
  67. drive here by typing in the letter followed by a colon (:). Although the 
  68. left-hand list box is normally used to change directories, you may change 
  69. directories here by typing in the directory name followed by a back-slash (\). 
  70.  
  71. You may enter a specific file name here and press Open, as an alternative to 
  72. selecting it in the right-hand list box. 
  73.  
  74.  
  75. ΓòÉΓòÉΓòÉ <hidden> Help for Directories ΓòÉΓòÉΓòÉ
  76.  
  77. Directories below the current directory are listed in the left-hand list box. 
  78. Above them there may be (from the top): 
  79.  
  80.  o The root directory (highlighted if current). 
  81.  o Directories between the root and the current directory. 
  82.  o The current directory (highlighted). 
  83.  
  84.  A new current directory can be chosen either by selecting an item from the 
  85.  list with the keyboard and pressing Enter, or by double-clicking on the 
  86.  required item. Both left-hand and right-hand list boxes will be refreshed. 
  87.  
  88.  
  89. ΓòÉΓòÉΓòÉ <hidden> Help for Files ΓòÉΓòÉΓòÉ
  90.  
  91. Files matching the search pattern are listed in the right-hand list box. The 
  92. list of files will not be displayed initially unless OPENLIST is ON. 
  93.  
  94. The search for a file can be concluded either by selecting one or more items 
  95. and pressing Enter, or by double-clicking on the required item (single 
  96. selection mode only). 
  97.  
  98.  
  99. ΓòÉΓòÉΓòÉ <hidden> Help for Multiple File Select ΓòÉΓòÉΓòÉ
  100.  
  101. Multiple is an optional checkbox. If the checkbox is not present, then only 
  102. single selection is available.  When present and checked, more than one item 
  103. can be selected from the right-hand listbox. 
  104.  
  105. Note:  Multiple Select is only valid for the Open usage of the Files Dialog. 
  106.  
  107.  
  108. ΓòÉΓòÉΓòÉ <hidden> Help for New button ΓòÉΓòÉΓòÉ
  109.  
  110. New is an optional pushbutton. If the pushbutton is not present, then only 
  111. existing files may be opened.  When present, a non-existent file can be 
  112. selected by typing the required file name into the search pattern and pressing 
  113. New. 
  114.  
  115.  
  116. ΓòÉΓòÉΓòÉ <hidden> Help for System Profile ΓòÉΓòÉΓòÉ
  117.  
  118. Select Run system profile to set defaults such as key settings and command 
  119. synonyms. This is checked initially, so click on it if you do not wish to set 
  120. these defaults when the file is opened. 
  121.  
  122.  
  123. ΓòÉΓòÉΓòÉ <hidden> Help for User Profile ΓòÉΓòÉΓòÉ
  124.  
  125. Select Run user profile to personally customize any settings. This is checked 
  126. initially, so click on it if you do not wish to personally customize any 
  127. settings. 
  128.  
  129.  
  130. ΓòÉΓòÉΓòÉ <hidden> Help for Load Macro ΓòÉΓòÉΓòÉ
  131.  
  132. Select Run load macro for to select the parser to be used on the file. This is 
  133. checked initially, so click on it if you do not wish to select a parser to be 
  134. used on the file. 
  135.  
  136. The parser is determined by the extension of the file opened. You can override 
  137. this by entering a value in the DOCTYPE entry field to the right. Thus to treat 
  138. a .REX file like a .LX file you would enter LX in the entry field. 
  139.  
  140.  
  141. ΓòÉΓòÉΓòÉ <hidden> Linebreak Mode ΓòÉΓòÉΓòÉ
  142.  
  143. Select DOS or CRLF to load files which have been generated on a DOS or OS/2 
  144. system. This will require the file to contain the sequence CRLF to delimit 
  145. lines of text in the file. 
  146.  
  147. Select UNIX or LF to load files which have been generated on a UNIX or othe 
  148. Open System. This will require the file to contain only the character LF to 
  149. delimit lines of text in the file. 
  150.  
  151. Note:  Normally this will be left unselected to achieve the default of DOS mode 
  152.        files 
  153.  
  154.  
  155. ΓòÉΓòÉΓòÉ <hidden> Help for Set Docname ΓòÉΓòÉΓòÉ
  156.  
  157. Select Set Docname to change the current documnet name to the new name as 
  158. entered. If not selected the document name remains the same as it was before 
  159. the save is performed. 
  160.  
  161.  
  162. ΓòÉΓòÉΓòÉ <hidden> Help for As displayed ΓòÉΓòÉΓòÉ
  163.  
  164. Select As Displayed to save the file in the format it is displayed (formatter, 
  165. Style etc). If not selected the file is saved under control of the doctype.LXS 
  166. save macro. For example, if your document is in GALLEY mode on the screen, it 
  167. will be saved in GALLEY form if you select As displayed. 
  168.  
  169.  
  170. ΓòÉΓòÉΓòÉ 2.1.2. Help for "Open..." ΓòÉΓòÉΓòÉ
  171.  
  172. The Open menu item invokes the File Operations dialog. Refer to this section 
  173. for further information. 
  174.  
  175.  
  176. ΓòÉΓòÉΓòÉ 2.1.3. Help for "Exit" ΓòÉΓòÉΓòÉ
  177.  
  178. All LPEX frame windows are closed. All documents are closed, and the LPEX 
  179. session terminated. 
  180.  
  181.  
  182. ΓòÉΓòÉΓòÉ 2.2. Help for Messages ΓòÉΓòÉΓòÉ
  183.  
  184. The Messages pull-down enables you to control and manipulate the list of 
  185. messages. 
  186.  
  187.  
  188. ΓòÉΓòÉΓòÉ 2.2.1. Help for "Enabled" ΓòÉΓòÉΓòÉ
  189.  
  190. When Enabled is checked, any messages generated are displayed in the list of 
  191. messages. If the check mark is not present, messages will not be added to the 
  192. list. Check and uncheck by clicking on the choice. 
  193.  
  194.  
  195. ΓòÉΓòÉΓòÉ 2.2.2. Help for "Immediately" ΓòÉΓòÉΓòÉ
  196.  
  197. When & Immediate is checked, any messages generated are displayed immediately 
  198. in the list of messages. If the check mark is not present, messages will be 
  199. added to the list when the current document window is updated. Check and 
  200. uncheck by clicking on the choice. 
  201.  
  202.  
  203. ΓòÉΓòÉΓòÉ 2.2.3. Help for "Clear" ΓòÉΓòÉΓòÉ
  204.  
  205. Clear the list of messages. 
  206.  
  207.  
  208. ΓòÉΓòÉΓòÉ 2.2.4. Help for "Copy to document" ΓòÉΓòÉΓòÉ
  209.  
  210. Allows a permanent copy of the list of messages to be made by writing them into 
  211. the current document at the cursor position. 
  212.  
  213.  
  214. ΓòÉΓòÉΓòÉ 2.3. Help for Command ΓòÉΓòÉΓòÉ
  215.  
  216. Execute LPEX commands and synonyms. 
  217.  
  218. Use the Command pull-down to execute LPEX commands, to set or change synonyms 
  219. for commands, to set or change action keys or alter the command recall options. 
  220.  
  221.  
  222. ΓòÉΓòÉΓòÉ 2.3.1. Help for "Issue command ..." ΓòÉΓòÉΓòÉ
  223.  
  224. Display LPEX command pop-up. 
  225.  
  226. This dialog displays recently used LPEX commands (if any). Type the command you 
  227. require into the lower box and click on Enter to execute that command. 
  228. Alternatively type in a  command word or  no words and press F1 for more 
  229. specific help. 
  230.  
  231. To select a previously issued command, press F4 or click on the downarrow at 
  232. the right then click on the required command from the list in the box. This 
  233. command then appears in the entry field. Click on Enter to execute the command. 
  234. You may position at the top or bottom of the list using the PageUp and PageDown 
  235. keys respectively. You can also traverse the list using the Up and Down cursor 
  236. keys. 
  237.  
  238. The most recently issued command appears at the head of the list of commands. 
  239. However, when the next command is issued, the command at the head of the list 
  240. is transferred to the bottom of the list; the command box must be scrolled to 
  241. bring it back into view. 
  242.  
  243. By default, Shift-F9 will bring up this dialog from a document window. 
  244.  
  245. It is possible to take an exit before the command is executed to a function you 
  246. provide to check that a particular command can be executed at this time.  This 
  247. is done by issuing the SET COMMANDCHECK. 
  248.  
  249.  
  250. ΓòÉΓòÉΓòÉ 2.3.2. Help for "Set recall options ..." ΓòÉΓòÉΓòÉ
  251.  
  252. Set Recall Options lets you set the maximum number of recallable commands, and 
  253. which commands are recallable. You can ask LPEX to remember commands issued 
  254. through the command line, or through pull-downs or through pressing action keys 
  255. (or any combination of these). If an identical command already exists in the 
  256. buffer only one copy is retained. 
  257.  
  258. By default, only commands issued through the command line are remembered and up 
  259. to the last 12 unique commands may be available at any one time. 
  260.  
  261.  
  262. ΓòÉΓòÉΓòÉ 2.4. Help for Options ΓòÉΓòÉΓòÉ
  263.  
  264. Change fonts, tabs and other settings. The Options pull-down allows you to 
  265. change the current settings of the fonts, tabs, global variables and all other 
  266. options which may be SET. 
  267.  
  268. Also use the Options pull-down to customize your use of the window list window. 
  269.  
  270.  
  271. ΓòÉΓòÉΓòÉ 2.4.1. Help for "Global variables ..." ΓòÉΓòÉΓòÉ
  272.  
  273. Global variables shows all currently set global variables. Each name is listed 
  274. together with its current value. 
  275.  
  276. To change a variable, click first on the name that you wish to alter. Then 
  277. click on Change. A second pop-up appears.  Enter the required new value for the 
  278. variable and then click on Enter. 
  279.  
  280. To set a new variable, click on Add. A second pop-up appears. Enter the 
  281. required name and value and then click on Enter. 
  282.  
  283.  
  284. ΓòÉΓòÉΓòÉ 2.4.2. Help for "Other settings ..." ΓòÉΓòÉΓòÉ
  285.  
  286. Query and set commands. 
  287.  
  288. Other settings is used to query or set commands. All the commands which can be 
  289. queried or set are listed in the upper box of the pop-up window. 
  290.  
  291. To query a command setting, click on the command in the list. The selected 
  292. command and its current setting are displayed. 
  293.  
  294. To change a command setting, click on Change. A further pop-up window appears, 
  295. prompting for the new setting. Replace the existing setting with the new 
  296. setting. Then click on Enter. 
  297.  
  298. For help on a specific command, click on the command in the list, then click on 
  299. the Help button rather than using F1. 
  300.  
  301.  
  302. ΓòÉΓòÉΓòÉ 2.4.3. Help for "Minimize on use" ΓòÉΓòÉΓòÉ
  303.  
  304. When this pull-down item is checked, then the activation of the message window, 
  305. or of any document or view window, will cause the window list window to be 
  306. minimized. 
  307.  
  308.  
  309. ΓòÉΓòÉΓòÉ 2.5. Help for Window ΓòÉΓòÉΓòÉ
  310.  
  311. Use Window to perform actions on the selected entries (windows) in the list of 
  312. windows, and to customize the list of windows to your preferrence. 
  313.  
  314.  
  315. ΓòÉΓòÉΓòÉ 2.5.1. Help for "Show" ΓòÉΓòÉΓòÉ
  316.  
  317. The selected windows are restored and made visible. The first such window is 
  318. also activated. 
  319.  
  320.  
  321. ΓòÉΓòÉΓòÉ 2.5.2. Help for "Hide" ΓòÉΓòÉΓòÉ
  322.  
  323. The selected windows are hidden. 
  324.  
  325.  
  326. ΓòÉΓòÉΓòÉ 2.5.3. Help for "Minimize" ΓòÉΓòÉΓòÉ
  327.  
  328. The selected windows are minimized. 
  329.  
  330.  
  331. ΓòÉΓòÉΓòÉ 2.5.4. Help for "Close" ΓòÉΓòÉΓòÉ
  332.  
  333. The selected windows are closed. If the message window entry is selected, then 
  334. the LPEX session will be terminated. 
  335.  
  336.  
  337. ΓòÉΓòÉΓòÉ 2.5.5. Help for "Minimize all LPEX" ΓòÉΓòÉΓòÉ
  338.  
  339. All LPEX frame windows are minimized as one. The window list window is also 
  340. minimized. 
  341.  
  342.  
  343. ΓòÉΓòÉΓòÉ 2.5.6. Help for "Select all" ΓòÉΓòÉΓòÉ
  344.  
  345. All entries (windows) in the list of windows are selected. If there is more 
  346. than one entry, then multiple selection will be enforced, and you may need to 
  347. reselect single selection mode later if that choice was previously active. 
  348.  
  349.  
  350. ΓòÉΓòÉΓòÉ 2.5.7. Help for "Deselect all" ΓòÉΓòÉΓòÉ
  351.  
  352. All entries (windows) in the list of windows are deselected. 
  353.  
  354.  
  355. ΓòÉΓòÉΓòÉ 2.5.8. Help for "Multiple selection" ΓòÉΓòÉΓòÉ
  356.  
  357. When this pull-down item is checked, each entry (window) in the list of windows 
  358. is selected or deselected independently of all other entries. This allows more 
  359. than one entry to be selected for subsequent action. 
  360.  
  361. When not checked, any selection of an entry causes all other entries to be 
  362. automatically deselected, such that only one entry at most is ever selected. 
  363.  
  364. The status of this item may be affected by selection. 
  365.  
  366.  
  367. ΓòÉΓòÉΓòÉ 2.5.9. Help for "Sort by order opened" ΓòÉΓòÉΓòÉ
  368.  
  369. The entries in the list of windows are sorted according to the order in which 
  370. document windows were opened. All views for a given document are listed 
  371. together. The message window is always at the top of the list. 
  372.  
  373. Each document or view window is listed as the document number, the view number, 
  374. the view name and finally the fully qualified document name. If the document 
  375. number is between 1 and 9, then you may scroll directly to that entry by typing 
  376. the number. 
  377.  
  378.  
  379. ΓòÉΓòÉΓòÉ 2.5.10. Help for "Sort by window name" ΓòÉΓòÉΓòÉ
  380.  
  381. The entries in the list of windows are sorted according to the document and 
  382. view names. All views for a given document are listed together. The message 
  383. window is always at the top of the list. 
  384.  
  385. Each document or view window is listed as the file name part of the document 
  386. name, followed by the view name, followed by the rest of the path (if any) from 
  387. the document name. 
  388.  
  389.  
  390. ΓòÉΓòÉΓòÉ <hidden> The "Window List" Window ΓòÉΓòÉΓòÉ
  391.  
  392. The window list window is an independent frame window which lists all other 
  393. current LPEX frame windows: that is the message window, and all document and 
  394. view windows. 
  395.  
  396. From the window list window, various window-related actions may be performed on 
  397. the listed windows. 
  398.  
  399. The window list window appears in the Presentation Manager task list, and may 
  400. be minimized or closed at any time without loss of any data. LPEX will 
  401. automatically remember the last position and size used for the window list 
  402. window, and your preferred pull-down settings. 
  403.  
  404.  
  405. ΓòÉΓòÉΓòÉ <hidden> Help for the List of Windows ΓòÉΓòÉΓòÉ
  406.  
  407. Entries in the list of LPEX windows may be selected (highlighted) and 
  408. deselected by using: 
  409.  
  410.  o mouse button 1, or 
  411.  
  412.  o the cursor keys and the space bar, or 
  413.  
  414.  o the Edit pull-down. 
  415.  
  416.  Actions may be performed on selected windows by using the Actions pull-down. 
  417.  
  418.  The list may be viewed in different ways by using the View pull-down. The 
  419.  information listed depends on how the list is sorted. 
  420.  
  421.  One of the following symbols may appear after a window name, to indicate the 
  422.  window status. If there is no symbol, then the window is restored and visible. 
  423.  
  424.           Maximized 
  425.           Minimized 
  426.           Hidden 
  427.  
  428.  Use of the window list window may be customized by using the Options 
  429.  pull-down. 
  430.  
  431.  
  432. ΓòÉΓòÉΓòÉ <hidden> Help for the Log of Messages ΓòÉΓòÉΓòÉ
  433.  
  434. A number of messages is retained and listed in this window. The Messages 
  435. pull-down manipulates this list. 
  436.  
  437.  
  438. ΓòÉΓòÉΓòÉ 3. Help for Document and View Windows ΓòÉΓòÉΓòÉ
  439.  
  440.  The document window displays a view of a document.  Although you may have many 
  441. document windows on screen at once, only one will be the active window. You may 
  442. switch between document windows by clicking on any visible part of the window 
  443. you wish to make active. Alternatively, you may select the document you require 
  444. by choosing Go to Document/view selector and then selecting the document. 
  445.  
  446. Below the menu bar is a status line, and at the bottom of the window is a 
  447. message line for dynamic information. 
  448.  
  449.  
  450. ΓòÉΓòÉΓòÉ 3.1. Help for File ΓòÉΓòÉΓòÉ
  451.  
  452. Open, print, save and exit documents. 
  453.  
  454. Use the File pull-down to open a new or existing document, print, save and exit 
  455. documents, include a document within another document and move between views 
  456. and documents. 
  457.  
  458.  
  459. ΓòÉΓòÉΓòÉ 3.1.1. Help for "File Operations" ΓòÉΓòÉΓòÉ
  460.  
  461.  The File operations dialog is invoked  Open file..., Get a file... and Save 
  462. as... menu options. 
  463.  
  464. This dialog can be used to select file(s) from any one directory on any 
  465. available FAT or HPFS or NFS drive, or to select a new file on any of these 
  466. drives. 
  467.  
  468.  Disk Drive 
  469.  Search Pattern 
  470.  Directories 
  471.  Files 
  472.  Multiple File Select 
  473.  System Profile 
  474.  User Profile 
  475.  Load Macro 
  476.  Linebreak mode 
  477.  New button 
  478.  
  479.  The next two options apply only for the Save as mode only. 
  480.  
  481.  Set Docname 
  482.  As Displayed 
  483.  
  484.  
  485. ΓòÉΓòÉΓòÉ <hidden> Help for Disk Drive ΓòÉΓòÉΓòÉ
  486.  
  487. Drives are selected by using the cursor up and down keys, or by engaging the 
  488. pull-down list box to the right. When a different drive is selected, the 
  489. left-hand list box is refreshed and the right-hand list box is cleared. 
  490.  
  491.  
  492. ΓòÉΓòÉΓòÉ <hidden> Help for Search Pattern ΓòÉΓòÉΓòÉ
  493.  
  494. The search pattern determines which files are listed in the right-hand list 
  495. box. To effect a new search pattern, press Enter on the keyboard. Case is 
  496. ignored. 
  497.  
  498. The "*" wild card character can be used anywhere to represent an arbitrary 
  499. combination of characters.  The "?" wild card character can be used anywhere to 
  500. represent an arbitrary character.  The "." character, if used only at the end 
  501. of the search pattern, will limit the list of files to those which do not 
  502. contain that character. 
  503.  
  504. Although the combo box is normally used to change drives, you may change the 
  505. drive here by typing in the letter followed by a colon (:). Although the 
  506. left-hand list box is normally used to change directories, you may change 
  507. directories here by typing in the directory name followed by a back-slash (\). 
  508.  
  509. You may enter a specific file name here and press Open, as an alternative to 
  510. selecting it in the right-hand list box. 
  511.  
  512.  
  513. ΓòÉΓòÉΓòÉ <hidden> Help for Directories ΓòÉΓòÉΓòÉ
  514.  
  515. Directories below the current directory are listed in the left-hand list box. 
  516. Above them there may be (from the top): 
  517.  
  518.  o The root directory (highlighted if current). 
  519.  o Directories between the root and the current directory. 
  520.  o The current directory (highlighted). 
  521.  
  522.  A new current directory can be chosen either by selecting an item from the 
  523.  list with the keyboard and pressing Enter, or by double-clicking on the 
  524.  required item. Both left-hand and right-hand list boxes will be refreshed. 
  525.  
  526.  
  527. ΓòÉΓòÉΓòÉ <hidden> Help for Files ΓòÉΓòÉΓòÉ
  528.  
  529. Files matching the search pattern are listed in the right-hand list box. The 
  530. list of files will not be displayed initially unless OPENLIST is ON. 
  531.  
  532. The search for a file can be concluded either by selecting one or more items 
  533. and pressing Enter, or by double-clicking on the required item (single 
  534. selection mode only). 
  535.  
  536.  
  537. ΓòÉΓòÉΓòÉ <hidden> Help for Multiple File Select ΓòÉΓòÉΓòÉ
  538.  
  539. Multiple is an optional checkbox. If the checkbox is not present, then only 
  540. single selection is available.  When present and checked, more than one item 
  541. can be selected from the right-hand listbox. 
  542.  
  543. Note:  Multiple Select is only valid for the Open usage of the Files Dialog. 
  544.  
  545.  
  546. ΓòÉΓòÉΓòÉ <hidden> Help for New button ΓòÉΓòÉΓòÉ
  547.  
  548. New is an optional pushbutton. If the pushbutton is not present, then only 
  549. existing files may be opened.  When present, a non-existent file can be 
  550. selected by typing the required file name into the search pattern and pressing 
  551. New. 
  552.  
  553.  
  554. ΓòÉΓòÉΓòÉ <hidden> Help for System Profile ΓòÉΓòÉΓòÉ
  555.  
  556. Select Run system profile to set defaults such as key settings and command 
  557. synonyms. This is checked initially, so click on it if you do not wish to set 
  558. these defaults when the file is opened. 
  559.  
  560.  
  561. ΓòÉΓòÉΓòÉ <hidden> Help for User Profile ΓòÉΓòÉΓòÉ
  562.  
  563. Select Run user profile to personally customize any settings. This is checked 
  564. initially, so click on it if you do not wish to personally customize any 
  565. settings. 
  566.  
  567.  
  568. ΓòÉΓòÉΓòÉ <hidden> Help for Load Macro ΓòÉΓòÉΓòÉ
  569.  
  570. Select Run load macro for to select the parser to be used on the file. This is 
  571. checked initially, so click on it if you do not wish to select a parser to be 
  572. used on the file. 
  573.  
  574. The parser is determined by the extension of the file opened. You can override 
  575. this by entering a value in the DOCTYPE entry field to the right. Thus to treat 
  576. a .REX file like a .LX file you would enter LX in the entry field. 
  577.  
  578.  
  579. ΓòÉΓòÉΓòÉ <hidden> Linebreak Mode ΓòÉΓòÉΓòÉ
  580.  
  581. Select DOS or CRLF to load files which have been generated on a DOS or OS/2 
  582. system. This will require the file to contain the sequence CRLF to delimit 
  583. lines of text in the file. 
  584.  
  585. Select UNIX or LF to load files which have been generated on a UNIX or othe 
  586. Open System. This will require the file to contain only the character LF to 
  587. delimit lines of text in the file. 
  588.  
  589. Note:  Normally this will be left unselected to achieve the default of DOS mode 
  590.        files 
  591.  
  592.  
  593. ΓòÉΓòÉΓòÉ <hidden> Help for Set Docname ΓòÉΓòÉΓòÉ
  594.  
  595. Select Set Docname to change the current documnet name to the new name as 
  596. entered. If not selected the document name remains the same as it was before 
  597. the save is performed. 
  598.  
  599.  
  600. ΓòÉΓòÉΓòÉ <hidden> Help for As displayed ΓòÉΓòÉΓòÉ
  601.  
  602. Select As Displayed to save the file in the format it is displayed (formatter, 
  603. Style etc). If not selected the file is saved under control of the doctype.LXS 
  604. save macro. For example, if your document is in GALLEY mode on the screen, it 
  605. will be saved in GALLEY form if you select As displayed. 
  606.  
  607.  
  608. ΓòÉΓòÉΓòÉ 3.1.2. Help for "Open..." ΓòÉΓòÉΓòÉ
  609.  
  610. The Open menu item invokes the File Operations dialog. Refer to this section 
  611. for further information. 
  612.  
  613.  
  614. ΓòÉΓòÉΓòÉ 3.1.3. Help for "Save" ΓòÉΓòÉΓòÉ
  615.  
  616. Save a document. 
  617.  
  618. Save saves the current document with its current name and path. The document 
  619. remains displayed on the screen. 
  620.  
  621.  
  622. ΓòÉΓòÉΓòÉ 3.1.4. Help for "Save as ..." ΓòÉΓòÉΓòÉ
  623.  
  624. Save document using new name. 
  625.  
  626. Save as saves a copy of the current document with a different name. The File 
  627. Operations dialog is used to allow you to enter a filename or select, from the 
  628. file, list and existing file. 
  629.  
  630. The As displayed option and Set Docname option may be used as required. 
  631.  
  632.  
  633. ΓòÉΓòÉΓòÉ 3.1.5. Help for "Get ..." ΓòÉΓòÉΓòÉ
  634.  
  635. Insert document within current document. 
  636.  
  637. Get includes a document within the current document at the position of the text 
  638. cursor, without overwriting the existing data. The File Operations dialog is 
  639. used to allow you to enter a filename or select, from the file, list and 
  640. existing file. 
  641.  
  642.  
  643. ΓòÉΓòÉΓòÉ 3.1.6. Help for "Print" ΓòÉΓòÉΓòÉ
  644.  
  645. Print document. 
  646.  
  647. Print prints the active document in the same format as is normally held on 
  648. disk. 
  649.  
  650.  
  651. ΓòÉΓòÉΓòÉ 3.1.7. Help for "Print as shown" ΓòÉΓòÉΓòÉ
  652.  
  653. Print the active document in the same format as currently displayed. 
  654.  
  655. Print as shown prints the active document, in the same format as displayed in 
  656. the window for the current view.  For example, if your document is shown in the 
  657. window in GALLEY mode, the GALLEY version (that is without the tags document) 
  658. will be printed. 
  659.  
  660.  
  661. ΓòÉΓòÉΓòÉ 3.1.8. Help for "File -Save&Quit" ΓòÉΓòÉΓòÉ
  662.  
  663. Save&Quit issues a SAVE command followed by a QQUIT command. This sequence 
  664. ensures that the file is saved and exited without any prompting from the user. 
  665.  
  666.  
  667. ΓòÉΓòÉΓòÉ 3.1.9. Help for "Open new view" ΓòÉΓòÉΓòÉ
  668.  
  669. Create new view. 
  670.  
  671. Open new view creates a new view for the current document. 
  672.  
  673.  
  674. ΓòÉΓòÉΓòÉ 3.1.10. Help for "Close this view" ΓòÉΓòÉΓòÉ
  675.  
  676. Close view of active document. 
  677.  
  678. Close this view closes the active view of a document. If there are other views 
  679. of the document, the next view in the sequence becomes the active view. If 
  680. there are no other views for the current document, you will be asked if you 
  681. wish to close the document. If so, the last-used view of the next opened 
  682. document in the sequence of opened documents becomes the active view. 
  683.  
  684. If there are no other views or opened documents, the LPEX window becomes 
  685. active. 
  686.  
  687. If an attempt is made to close the only open view of a document to which 
  688. changes have been made, a pop-up window offers the chance to save the changes 
  689. before closing. 
  690.  
  691.  
  692. ΓòÉΓòÉΓòÉ 3.1.11. Help for "Exit from document" ΓòÉΓòÉΓòÉ
  693.  
  694. Leave document. 
  695.  
  696. Exit from document exits the document and closes the document window if no 
  697. changes have been made. If any alterations have occurred, a pop-up window gives 
  698. the option to either save the changes before closing the document window, 
  699. abandon the changes and close the document window or return to the document 
  700. window by cancelling the exit command. 
  701.  
  702.  
  703. ΓòÉΓòÉΓòÉ 3.2. Help for Edit ΓòÉΓòÉΓòÉ
  704.  
  705. Act upon block of text. 
  706.  
  707. Use the Edit pull-down to carry out actions on blocks of text. You can copy, 
  708. move or delete a marked block of text, convert a block into upper or lowercase 
  709. and perform clipboard operations such as copy, cut and paste. 
  710.  
  711.  
  712. ΓòÉΓòÉΓòÉ 3.2.1. Help for "Find and Change Text..." ΓòÉΓòÉΓòÉ
  713.  
  714. FIND CHANGE TEXTlocates a string of text and/or changes it to another string. 
  715. This dialog is modeless and as such may remain throughout the LPEX session. 
  716.  
  717. The function of this dialog is split into three parts. 
  718.  
  719.  FIND      This is the basic "search" method. The string is entered in the 
  720.            first entryfield and either the FIND or FIND ALL buttons are used to 
  721.            process the request. 
  722.  
  723.  CHANGE    This is the basic "search and replace" method.  The "search" is 
  724.            entered as for FIND and the replacement string is entered into the 
  725.            second entryfield. THe FIND button can be used to locate the first 
  726.            occurrence of the search string The CHANGE or CHANGE ALL buttons are 
  727.            used to replace the first only or all occurrences respectively. 
  728.  
  729.  CHANGE then FIND This method of "search and replace" provides the greatest 
  730.            degree of flexibility. 
  731.  
  732.            The arguments are entered as for CHANGE but the first button pressed 
  733.            must be the "CHANGE then FIND" button. This will search for the 
  734.            first occurrence of the search string, and the dialog set to CHANGE 
  735.            then FIND mode.  Further button pressing are as follows 
  736.  
  737.     CHANGE then FIND the found text is replaced and the next occurrence of the 
  738.               search string is located. 
  739.  
  740.     FIND      the found text is NOT replaced and the next occurrence of the 
  741.               search string is located. 
  742.  
  743.     CANCEL    The CHANGE then FIND porcess is terminated immediately and the 
  744.               dialog is reset to the normal mode. 
  745.  
  746.               Whilst in this mode of operation any other LPEX function is 
  747.               possible - even the changing of documents. - but these functions 
  748.               should be used with great care.  The idea of this flexibility is 
  749.               to allow minor editing functions on the text in the neighbourhood 
  750.               of the found text before replacing it or skipping to the next 
  751.               occurrence. 
  752.  
  753.  If no documents are open then then dialog is hidden.  You may set the 
  754.  following options for FIND or CHANGE. 
  755.  
  756.  Case: 
  757.  
  758.     Ignore    the first occurrence of the string will be found, regardless of 
  759.               whether it is in uppercase, lowercase or a mixture of both. 
  760.  
  761.     Respect   the string searched for is exactly as it is entered in the pop-up 
  762.               window. 
  763.  
  764.  Visible only the string will only be found if it is in data which is 
  765.            displayed. 
  766.  
  767.  Mark found text the string will be character BLOCK marked. 
  768.  
  769.  Direction 
  770.  
  771.     Forward   the data will be searched from the current position forwards 
  772.               towards the end of the document. If the function is FIND and the 
  773.               string is not found before the end of the document, the search 
  774.               recommences at the beginning of the document up to the current 
  775.               position. 
  776.  
  777.     Backward  the data will be searched backwards for the first occurrence of 
  778.               the string.  The search starts immediately before the position of 
  779.               the text cursor and works backwards toward the beginning of the 
  780.               document. If necessary the search will continue from the end of 
  781.               the document. 
  782.  
  783.               This option is not valid for CHANGE functions. 
  784.  
  785.  Function options. 
  786.  
  787.     Find      search for the next occurence. 
  788.  
  789.     Find all  find all occurences and display only those lines. 
  790.  
  791.     Change    Change all occurences in the Change range  selected. 
  792.  
  793.     Change then find Change the current occurence then find the next occurence. 
  794.               When this function has been selected the title of the dialog is 
  795.               changed to that of the button. Certain of the other buttons are 
  796.               disabled.  The Cancel button is used to restore the dialog to 
  797.               normal mode. 
  798.  
  799.     Cancel    This button normally dismisses the dialog except when the dialog 
  800.               is in Change then Find mode. 
  801.  
  802.  
  803. ΓòÉΓòÉΓòÉ 3.2.2. Help for Undo ΓòÉΓòÉΓòÉ
  804.  
  805. Undo changes made in document. 
  806.  
  807. Use the Undo pull-down to undo changes made to a document, take checkpoints, 
  808. and set undo options. 
  809.  
  810.  
  811. ΓòÉΓòÉΓòÉ 3.2.3. Help for "Undo last set of changes" ΓòÉΓòÉΓòÉ
  812.  
  813. Undo last set of changes. 
  814.  
  815. Undo last set of changes returns the document to the state it was in before the 
  816. last set of alterations was made. A checkpoint is taken and a copy of the 
  817. document is saved.  The number of sets of changes which can be undone is 
  818. determined by the UNDO command options. 
  819.  
  820. When no more changes can be undone (that is, when the number specified in the 
  821. UNDO command is reached), a further call to "undo last set of changes" will 
  822. undo the previous undo.  Thereafter, further calls to "undo last set of 
  823. changes" will eventually return the document to its state before the first undo 
  824. occurred. 
  825.  
  826.  
  827. ΓòÉΓòÉΓòÉ 3.2.4. Help for "Take a checkpoint" ΓòÉΓòÉΓòÉ
  828.  
  829. Record changes since last save. 
  830.  
  831. Take a checkpoint records the changes made to a document since it was last 
  832. saved. This is the point to which "undo last set of changes" is able to undo 
  833. changes. 
  834.  
  835.  
  836. ΓòÉΓòÉΓòÉ 3.2.5. Help for "Set undo options ..." ΓòÉΓòÉΓòÉ
  837.  
  838. Number of undoable checkpoints. 
  839.  
  840. Set undo options specifies how may checkpoints (up to 25) can be undone. To 
  841. enable automatic checkpointing, select Automatic checkpoint. To take manual 
  842. checkpoints, select Manual checkpoint. 
  843.  
  844.  
  845. ΓòÉΓòÉΓòÉ 3.2.6. Help for Clipboard ΓòÉΓòÉΓòÉ
  846.  
  847. (No help exists.) 
  848.  
  849.  
  850. ΓòÉΓòÉΓòÉ 3.2.7. Help for "Copy to clipboard" ΓòÉΓòÉΓòÉ
  851.  
  852. Copy marked block into clipboard. 
  853.  
  854. Copy to clipboard copies the current marked block into the clipboard. Once in 
  855. the clipboard text may be pasted (copied) into any PM application or into a 
  856. dialog box). 
  857.  
  858. Note that LPEX will not allow rectangular blocks to be copied to the clipboard 
  859. - only character and element blocks. 
  860.  
  861. PROFSYS.LX sets up the Ctrl-Ins key to perform this function. 
  862.  
  863.  
  864. ΓòÉΓòÉΓòÉ 3.2.8. Help for "Cut to clipboard" ΓòÉΓòÉΓòÉ
  865.  
  866. Cut (move) marked block to clipboard. 
  867.  
  868. Cut to clipboard works just like Copy to clipboard except that the marked block 
  869. is then deleted from the document. 
  870.  
  871. Note that LPEX will not allow rectangular blocks to be copied to the clipboard 
  872. - only character and element blocks. 
  873.  
  874. PROFSYS.LX sets up the Shift-Del key to perform this function. 
  875.  
  876.  
  877. ΓòÉΓòÉΓòÉ 3.2.9. Help for "Paste from clipboard" ΓòÉΓòÉΓòÉ
  878.  
  879. Copy clipboard contents into document. 
  880.  
  881. Paste from clipboard copies the current clipboard contents into the current 
  882. document at the current position. Since the clipboard is global to all PM 
  883. applications this lets LPEX copy text from other applications into LPEX 
  884. documents. 
  885.  
  886. If the clipboard is empty or does not contain text, LPEX will display an error 
  887. message. 
  888.  
  889. PROFSYS.LX sets up the Shift-Ins key to perform this function. 
  890.  
  891.  
  892. ΓòÉΓòÉΓòÉ 3.2.10. Help for Block ΓòÉΓòÉΓòÉ
  893.  
  894. (No help exists.) 
  895.  
  896.  
  897. ΓòÉΓòÉΓòÉ 3.2.11. Help for "Copy block" ΓòÉΓòÉΓòÉ
  898.  
  899. Duplicate marked block. 
  900.  
  901. Copy block duplicates a marked block at the position of the text cursor. To 
  902. copy a block within the current document, mark the block and move the text 
  903. cursor to the required destination for the copy before selecting Copy block 
  904. from the Edit pull-down. 
  905.  
  906. To copy a block from the current document into a different document, mark the 
  907. desired block in the current document and then use the Go to document/view 
  908. selector choice on the File pull-down to transfer to the other document.  Place 
  909. the text cursor at the block's required destination then choose Copy block from 
  910. the Edit pull-down. 
  911.  
  912. Copying does not erase the original marked block from the document. 
  913.  
  914.  
  915. ΓòÉΓòÉΓòÉ 3.2.12. Help for "Move block" ΓòÉΓòÉΓòÉ
  916.  
  917. Move a marked block. 
  918.  
  919. Move block moves a marked block from its original position to the position of 
  920. the text cursor. To move a block within the current document, mark the block 
  921. and move the text cursor to the required destination before selecting Move 
  922. block from the Edit pull-down. 
  923.  
  924. To move a block from the current document into a different document, mark the 
  925. desired block in the current document and then use the Go to document/view 
  926. selector choice on the File pull-down to transfer to the other document.  Place 
  927. the text cursor at the block's required destination, then choose Move block 
  928. from the Edir pull-down. 
  929.  
  930. Moving erases the marked block from the original document. 
  931.  
  932.  
  933. ΓòÉΓòÉΓòÉ 3.2.13. Help for "Delete block" ΓòÉΓòÉΓòÉ
  934.  
  935. Erase marked block. 
  936.  
  937. Delete a block erases a marked block from the current document. Any remaining 
  938. text moves up to fill the gap created. 
  939.  
  940.  
  941. ΓòÉΓòÉΓòÉ 3.2.14. Help for "Uppercase block" ΓòÉΓòÉΓòÉ
  942.  
  943. Convert characters to upper case. 
  944.  
  945. Uppercase block converts all characters in a marked block into upper case. 
  946.  
  947.  
  948. ΓòÉΓòÉΓòÉ 3.2.15. Help for "Lowercase block" ΓòÉΓòÉΓòÉ
  949.  
  950. Convert characters to lower case. 
  951.  
  952. Lowercase block converts all characters in a marked block into lower case. 
  953.  
  954.  
  955. ΓòÉΓòÉΓòÉ 3.2.16. Help for "Unmark block" ΓòÉΓòÉΓòÉ
  956.  
  957. Clears a previously marked block. 
  958.  
  959. Unmark block clears any currently set block. 
  960.  
  961.  
  962. ΓòÉΓòÉΓòÉ 3.2.17. Help for "Name a mark ..." ΓòÉΓòÉΓòÉ
  963.  
  964. Place a mark in a document. 
  965.  
  966. Name a mark allows a mark to be placed in a document at the position of the 
  967. text cursor. Type the mark name into the pop-up window and click on Enter. 
  968. Marks are not saved with documents. Mark names may not contain a space. 
  969.  
  970.  
  971. ΓòÉΓòÉΓòÉ 3.2.18. Help for Find ΓòÉΓòÉΓòÉ
  972.  
  973. Locate specified parts of the document. 
  974.  
  975. Use the Find pull-down to locate a string of text or an element, find and 
  976. replace a string of text, find the beginning and end of a block and to set 
  977. marks within a document. 
  978.  
  979.  
  980. ΓòÉΓòÉΓòÉ 3.2.19. Help for "Start of block" ΓòÉΓòÉΓòÉ
  981.  
  982. Move cursor to marked block. 
  983.  
  984. Start of block moves the text cursor to the first character of a marked block. 
  985.  
  986.  
  987. ΓòÉΓòÉΓòÉ 3.2.20. Help for "End of block" ΓòÉΓòÉΓòÉ
  988.  
  989. Move cursor to last character in block. 
  990.  
  991. End of block moves the text cursor to the last character in a marked block. 
  992.  
  993.  
  994. ΓòÉΓòÉΓòÉ 3.2.21. Help for "Element number ..." ΓòÉΓòÉΓòÉ
  995.  
  996. Move cursor to specific element number. 
  997.  
  998. Element number moves the text cursor to the beginning of the "nth" element in 
  999. the document. Type the element number you wish to find into the pop-up window. 
  1000.  
  1001.  
  1002. ΓòÉΓòÉΓòÉ 3.2.22. Help for "Named mark ..." ΓòÉΓòÉΓòÉ
  1003.  
  1004. Move cursor to specified mark. 
  1005.  
  1006. Named mark moves the text cursor to a mark previously placed in a document. All 
  1007. marks currently set in the document are listed in the pop-up window. Select a 
  1008. specific mark by clicking on it then clicking on Enter. 
  1009.  
  1010.  
  1011. ΓòÉΓòÉΓòÉ 3.3. Help for Command ΓòÉΓòÉΓòÉ
  1012.  
  1013. Execute LPEX commands and synonyms. 
  1014.  
  1015. Use the Command pull-down to execute LPEX commands, to set or change synonyms 
  1016. for commands, to set or change action keys or alter the command recall options. 
  1017.  
  1018.  
  1019. ΓòÉΓòÉΓòÉ 3.3.1. Help for "Issue command ..." ΓòÉΓòÉΓòÉ
  1020.  
  1021. Display LPEX command pop-up. 
  1022.  
  1023. This dialog displays recently used LPEX commands (if any). Type the command you 
  1024. require into the lower box and click on Enter to execute that command. 
  1025. Alternatively type in a  command word or  no words and press F1 for more 
  1026. specific help. 
  1027.  
  1028. To select a previously issued command, press F4 or click on the downarrow at 
  1029. the right then click on the required command from the list in the box. This 
  1030. command then appears in the entry field. Click on Enter to execute the command. 
  1031. You may position at the top or bottom of the list using the PageUp and PageDown 
  1032. keys respectively. You can also traverse the list using the Up and Down cursor 
  1033. keys. 
  1034.  
  1035. The most recently issued command appears at the head of the list of commands. 
  1036. However, when the next command is issued, the command at the head of the list 
  1037. is transferred to the bottom of the list; the command box must be scrolled to 
  1038. bring it back into view. 
  1039.  
  1040. By default, Shift-F9 will bring up this dialog from a document window. 
  1041.  
  1042. It is possible to take an exit before the command is executed to a function you 
  1043. provide to check that a particular command can be executed at this time.  This 
  1044. is done by issuing the SET COMMANDCHECK. 
  1045.  
  1046.  
  1047. ΓòÉΓòÉΓòÉ 3.3.2. Help for "Set synonyms ..." ΓòÉΓòÉΓòÉ
  1048.  
  1049. Display, set or change synonyms. 
  1050.  
  1051. Set synonyms shows all currently set synonyms. Each synonym is listed together 
  1052. with the minimum number of characters which must be entered and its LPEX 
  1053. command. 
  1054.  
  1055. To change a synonym, click first on the synonym that you wish to alter. Then 
  1056. click on Change. A second pop-up appears. Enter the required new value for the 
  1057. synonym and then click on Enter. You are returned to the document. 
  1058.  
  1059. To set a new synonym, click on Add. A second pop-up appears. Enter the required 
  1060. name and value and then click on Enter. 
  1061.  
  1062.  
  1063. ΓòÉΓòÉΓòÉ 3.3.3. Help for "Set action keys ..." ΓòÉΓòÉΓòÉ
  1064.  
  1065. Display list of assigned action keys. 
  1066.  
  1067. Set action keys displays a scrollable list of the actions assigned to keys, 
  1068. combinations of keys and mouse buttons. Keys to which actions have been 
  1069. assigned are Ctrl key combinations, Alt key combinations and Function keys. 
  1070. The assigned actions are LPEX commands. 
  1071.  
  1072. The assigned action defaults are determined by the profiles and load macro used 
  1073. when a file is opened.  The actions assigned for GML documents are different 
  1074. from those assigned for C programs. 
  1075.  
  1076. To change an assigned action, click on the required action then click on 
  1077. Change.  Type the new action in the secondary pop-up window and click on Enter. 
  1078.  
  1079. To set a new action key, click on Add. A second pop-up appears. Enter the 
  1080. required name and value and then click on Enter. 
  1081.  
  1082.  
  1083. ΓòÉΓòÉΓòÉ 3.3.4. Help for "Set recall options ..." ΓòÉΓòÉΓòÉ
  1084.  
  1085. Set Recall Options lets you set the maximum number of recallable commands, and 
  1086. which commands are recallable. You can ask LPEX to remember commands issued 
  1087. through the command line, or through pull-downs or through pressing action keys 
  1088. (or any combination of these). If an identical command already exists in the 
  1089. buffer only one copy is retained. 
  1090.  
  1091. By default, only commands issued through the command line are remembered and up 
  1092. to the last 12 unique commands may be available at any one time. 
  1093.  
  1094.  
  1095. ΓòÉΓòÉΓòÉ 3.4. Help for Options ΓòÉΓòÉΓòÉ
  1096.  
  1097. Change fonts, tabs and other settings. The Options pull-down allows you to 
  1098. change the current settings of the fonts, tabs, global variables and all other 
  1099. options which may be SET. 
  1100.  
  1101.  
  1102. ΓòÉΓòÉΓòÉ 3.4.1. Help for "Fonts ..." ΓòÉΓòÉΓòÉ
  1103.  
  1104. Allows alteration of colors and typestyle. 
  1105.  
  1106. Fonts allows both the background and foreground colors of certain items to be 
  1107. set. The Fonts pop-up window displays the settable items in a box on the left, 
  1108. and the fonts available for background and foreground in a box on the right. 
  1109. First click on the item to be changed, then click on the required foreground 
  1110. and/or background color. 
  1111.  
  1112. The choice of type faces available appears in the Face box. These will vary 
  1113. according to the category of document. 
  1114.  
  1115. Choose Underline if you require all characters to be continuously underlined. 
  1116.  
  1117. Choose Reverse if you wish to reverse the effect of your selection (such that 
  1118. red/white is displayed white/red and so forth). 
  1119.  
  1120. An example of the selected font shows the result of your selections before you 
  1121. commit to them by choosing Change. 
  1122.  
  1123.  
  1124. ΓòÉΓòÉΓòÉ 3.4.2. Help for "Fontsize ->" ΓòÉΓòÉΓòÉ
  1125.  
  1126. Select fontsize. 
  1127.  
  1128. Fontsize allows the user to select a desired font size from the menu presented. 
  1129. The list if fonts is determined dynamically when the option is first selected 
  1130. and is the definitive list which that particular display and level of OS/2 AVIO 
  1131. supports.  The current fontsize is checked. 
  1132.  
  1133.  
  1134. ΓòÉΓòÉΓòÉ 3.4.3. Help for "Tab settings ..." ΓòÉΓòÉΓòÉ
  1135.  
  1136. Set tab stops. 
  1137.  
  1138. Tab settings allows tabulation stops to be set in a document. Type, into the 
  1139. upper box of the pop-up window, the column numbers at which tab stops are 
  1140. required.  Use spaces to separate the column numbers. 
  1141.  
  1142. To set tab stops at equal distances across a document, delete the existing 
  1143. setting and then enter a number into the lower box in the pop-up window. If, 
  1144. for example, the number five is entered, tab stops will be set every five 
  1145. columns. 
  1146.  
  1147.  
  1148. ΓòÉΓòÉΓòÉ 3.4.4. Help for "Global variables ..." ΓòÉΓòÉΓòÉ
  1149.  
  1150. Global variables shows all currently set global variables. Each name is listed 
  1151. together with its current value. 
  1152.  
  1153. To change a variable, click first on the name that you wish to alter. Then 
  1154. click on Change. A second pop-up appears.  Enter the required new value for the 
  1155. variable and then click on Enter. 
  1156.  
  1157. To set a new variable, click on Add. A second pop-up appears. Enter the 
  1158. required name and value and then click on Enter. 
  1159.  
  1160.  
  1161. ΓòÉΓòÉΓòÉ 3.4.5. Help for "Other settings ..." ΓòÉΓòÉΓòÉ
  1162.  
  1163. Query and set commands. 
  1164.  
  1165. Other settings is used to query or set commands. All the commands which can be 
  1166. queried or set are listed in the upper box of the pop-up window. 
  1167.  
  1168. To query a command setting, click on the command in the list. The selected 
  1169. command and its current setting are displayed. 
  1170.  
  1171. To change a command setting, click on Change. A further pop-up window appears, 
  1172. prompting for the new setting. Replace the existing setting with the new 
  1173. setting. Then click on Enter. 
  1174.  
  1175. For help on a specific command, click on the command in the list, then click on 
  1176. the Help button rather than using F1. 
  1177.  
  1178.  
  1179. ΓòÉΓòÉΓòÉ 3.4.6. Help for Status Line ΓòÉΓòÉΓòÉ
  1180.  
  1181. This toggle will show or hide the file Status line at the top of this window. 
  1182.  
  1183.  
  1184. ΓòÉΓòÉΓòÉ 3.4.7. Help for Message Line ΓòÉΓòÉΓòÉ
  1185.  
  1186. This toggle will show or hide the Message line at the bottom of this window. 
  1187.  
  1188.  
  1189. ΓòÉΓòÉΓòÉ 3.5. Help for Window ΓòÉΓòÉΓòÉ
  1190.  
  1191. Use the Window pull-down to show the window list window or to perform selected 
  1192. actions on all LPEX windows. 
  1193.  
  1194.  
  1195. ΓòÉΓòÉΓòÉ 3.5.1. Help for "Window list" ΓòÉΓòÉΓòÉ
  1196.  
  1197. Shows the window list window. From the window list window, various 
  1198. window-related actions may be performed on the listed windows. 
  1199.  
  1200. Selecting this option will restore the window list window regardless of its 
  1201. current state. 
  1202.  
  1203.  
  1204. ΓòÉΓòÉΓòÉ 3.5.2. Help for Next ΓòÉΓòÉΓòÉ
  1205.  
  1206. Show a different document, or a different view of a document. 
  1207.  
  1208.  
  1209. ΓòÉΓòÉΓòÉ 3.5.3. Help for "Document" ΓòÉΓòÉΓòÉ
  1210.  
  1211. Show a different document. 
  1212.  
  1213. Next Document shows the next in the sequence of open documents. 
  1214.  
  1215.  
  1216. ΓòÉΓòÉΓòÉ 3.5.4. Help for "View" ΓòÉΓòÉΓòÉ
  1217.  
  1218. Show a different view of the current document. 
  1219.  
  1220. Next View shows the next in the sequence of views of the current document. 
  1221.  
  1222.  
  1223. ΓòÉΓòÉΓòÉ 3.5.5. Help for Previous ΓòÉΓòÉΓòÉ
  1224.  
  1225. Show a different document, or a different view of a document. 
  1226.  
  1227.  
  1228. ΓòÉΓòÉΓòÉ 3.5.6. Help for "Document" ΓòÉΓòÉΓòÉ
  1229.  
  1230. Show a different document. 
  1231.  
  1232. Previous Document shows the one before the current one in the sequence of open 
  1233. documents. 
  1234.  
  1235.  
  1236. ΓòÉΓòÉΓòÉ 3.5.7. Help for "View" ΓòÉΓòÉΓòÉ
  1237.  
  1238. Show a different view of the current document. 
  1239.  
  1240. Previous View shows the one before the current one in the sequence of views of 
  1241. the current document. 
  1242.  
  1243.  
  1244. ΓòÉΓòÉΓòÉ <hidden> The "Window List" Window ΓòÉΓòÉΓòÉ
  1245.  
  1246. The window list window is an independent frame window which lists all other 
  1247. current LPEX frame windows: that is the message window, and all document and 
  1248. view windows. 
  1249.  
  1250. From the window list window, various window-related actions may be performed on 
  1251. the listed windows. 
  1252.  
  1253. The window list window appears in the Presentation Manager task list, and may 
  1254. be minimized or closed at any time without loss of any data. LPEX will 
  1255. automatically remember the last position and size used for the window list 
  1256. window, and your preferred pull-down settings. 
  1257.  
  1258.  
  1259. ΓòÉΓòÉΓòÉ 4. Commands ΓòÉΓòÉΓòÉ
  1260.  
  1261. LPEX commands are used to create document windows and views; to close them; to 
  1262. locate and/or change the contents of the document. LPEX commands fall into 
  1263. three catagories- 
  1264.  
  1265.  Native commands These commands are built into the base LPEX product and are 
  1266.            listed in this section. 
  1267.  
  1268.  External Commands These commands are programs compiled as Dynamic Link Library 
  1269.            programs. 
  1270.  
  1271.            They interface with LPEX using the commands defined in the LPEX 
  1272.            application programming interface. Currently only the C program 
  1273.            interface is supported, although it is quite to write an interface 
  1274.            module to convert commands written in another language to C format 
  1275.            commands. 
  1276.  
  1277.  Macros    These are REXX programs written to run under the REXX interpreter 
  1278.            within the LPEX environment.  By default commands are interpreted as 
  1279.            LPEX commands which can themselves fall into any of the three 
  1280.            categories of LPEX command. 
  1281.  
  1282.  The natives commands follow- 
  1283.  
  1284.  
  1285. ΓòÉΓòÉΓòÉ 4.1. ADD ΓòÉΓòÉΓòÉ
  1286.  
  1287. Add one or more blank lines. 
  1288.  
  1289. ADD adds one or more lines of elements, after the current element (or sequence 
  1290. of flowed elements). Each new element consists of a single blank. 
  1291.  
  1292. To add an element at the top of the document (before the first element), move 
  1293. to the first character in the document and then use SPLITJOIN to create a new 
  1294. blank element. 
  1295.  
  1296.  Syntax:   ADD [n] 
  1297.  
  1298.  Parameters: n - the number of elements to be added (default one) 
  1299.  
  1300.  Return codes: 
  1301.  
  1302.  -1        invalid number specified 
  1303.  5         document is read-only 
  1304.  
  1305.  
  1306. ΓòÉΓòÉΓòÉ 4.2. ALARM ΓòÉΓòÉΓòÉ
  1307.  
  1308. Produce a tone on the speaker. 
  1309.  
  1310. ALARM sounds a tone on the speaker. The default values are set by the SET 
  1311. BEEPTONE and SET BEEPLENGTH commands. 
  1312.  
  1313.  Syntax:   ALARM [tone duration] 
  1314.  
  1315.  Parameters: 
  1316.  
  1317.     tone      the frequency of the desired beep in hertz, in the range 50 
  1318.               through 20,000 (default 440) 
  1319.  
  1320.     duration  the length of sound in hundredths of a second, in the range zero 
  1321.               through 1000 (default 20) 
  1322.  
  1323.  
  1324. ΓòÉΓòÉΓòÉ 4.3. ALL ΓòÉΓòÉΓòÉ
  1325.  
  1326. Show all (or specific) elements. 
  1327.  
  1328. ALL shows all elements, beginning at the top of the document. If a parameter is 
  1329. given, all the elements which would be shown if that command was issued 
  1330. repeatedly are shown. For example, 
  1331.  
  1332. ALL REPEAT 50 NEXT
  1333.  
  1334. will show every 50th element. 
  1335.  
  1336.  Syntax:   ALL [command] 
  1337.  
  1338.  Parameters: command - specifies the elements to be shown 
  1339.  
  1340.  
  1341. ΓòÉΓòÉΓòÉ 4.4. BEGIN ΓòÉΓòÉΓòÉ
  1342.  
  1343. Move to start of current element sequence. 
  1344.  
  1345. BEGIN moves the current data position to the beginning of the current sequence 
  1346. of elements. 
  1347.  
  1348.  Syntax:   BEGIN 
  1349.  
  1350.  Return codes: 
  1351.  
  1352.  -1        invalid parameter (no parameters are permitted) 
  1353.  1         document is empty (no move possible) 
  1354.  
  1355.  
  1356. ΓòÉΓòÉΓòÉ 4.5. BLOCK ΓòÉΓòÉΓòÉ
  1357.  
  1358. Execute block operations (COPY, FIND etc.). 
  1359.  
  1360. BLOCK carries out block operations according to the specified parameter. 
  1361.  
  1362.  Syntax:   BLOCK command 
  1363.  
  1364.  Parameters: command - any of the following: 
  1365.  
  1366.     CLEAR 
  1367.               Clears any currently set block. 
  1368.  
  1369.     COPY 
  1370.               Copies the block to the current position, leaving the original 
  1371.               block at its original position. The block definition moves with 
  1372.               the copied block, and the current position is moved to the start 
  1373.               of the copied block. 
  1374.  
  1375.               CLEAR may also be specified, to unmark the block once the 
  1376.               operation has been completed. 
  1377.  
  1378.               If a character string is being copied, the characters are copied 
  1379.               before the current position.  If a list of elements is being 
  1380.               copied, the list is copied after the current element. If a 
  1381.               rectangle is being copied, then the remainder of each element at, 
  1382.               and following, the current position is moved to the right to make 
  1383.               room for the block. 
  1384.  
  1385.               BEFORE or AFTER may be specified after COPY, to indicate whether 
  1386.               the copying is done immediately before or after the current 
  1387.               position. 
  1388.  
  1389.     DELETE 
  1390.               Deletes the block. If the current position was within the block, 
  1391.               it will be set to the first character after the block. 
  1392.  
  1393.     FILL char 
  1394.               Fills the block with a character. The character may be specified 
  1395.               as a single non-blank character, or as three decimal digits or as 
  1396.               two hexadecimal digits preceded by x or X. CLEAR may be used to 
  1397.               cancel the block after FILL. 
  1398.  
  1399.     FIND 
  1400.               Moves the current position to the start of the block. 
  1401.  
  1402.     FIND END 
  1403.               Moves the current position to the end of the block. 
  1404.  
  1405.     LOWER 
  1406.               Converts the block to lower case. CLEAR may be used to cancel the 
  1407.               block after LOWER. 
  1408.  
  1409.     MOVE 
  1410.               Moves the block to the current position, deleting the block from 
  1411.               its original position and placing it into its new position. MOVE 
  1412.               AFTER or MOVE BEFORE may be used for precise positioning. CLEAR 
  1413.               may be used to cancel the block after MOVE. 
  1414.  
  1415.     OVERLAY 
  1416.               The current rectangular block of text is placed over the text at 
  1417.               the current position.  Rectangular blocks cannot be used in 
  1418.               documents when FORMATTER is ON. 
  1419.  
  1420.     SET/MARK CHARACTER (or just SET or MARK): 
  1421.               Sets the beginning or end of a character block.  On the first 
  1422.               call, a single character is marked.  On the second, the block is 
  1423.               extended to include every character between the block and the 
  1424.               current position. On a third or subsequent call, the block will 
  1425.               be extended, reduced or cleared as follows: 
  1426.  
  1427.         1. current position before block - block will be extended. 
  1428.  
  1429.         2. current position after block - block will be extended. 
  1430.  
  1431.         3. current position on block start or block end - block will be cleared 
  1432.            if SET used. 
  1433.  
  1434.         4. current position within block - block will be reduced to include 
  1435.            characters between original start and current position. 
  1436.  
  1437.     SET/MARK ELEMENT 
  1438.               Sets the beginning or end of an element block.  On the first 
  1439.               call, the current element will be marked. On a second call, all 
  1440.               elements between the start of the block and the current element 
  1441.               will be marked. On a third or subsequent call, the block will be 
  1442.               extended, reduced or cleared as follows: 
  1443.  
  1444.         1. current position before block - block will be extended. 
  1445.  
  1446.         2. current position after block - block will be extended. 
  1447.  
  1448.         3. current position on block start or block end - block will be cleared 
  1449.            if SET used. 
  1450.  
  1451.         4. current position within block - block will be reduced to include 
  1452.            elements between original start and current position. 
  1453.  
  1454.     SET/MARK GROUP 
  1455.               Marks the current subgroup of elements. The block is set up as 
  1456.               for SET/MARK ELEMENT, except that if the first set is on a 
  1457.               structured element, the block will extend to include all elements 
  1458.               until the next structured element at the same or higher level. 
  1459.  
  1460.     SET/MARK RECTANGLE 
  1461.               Sets the beginning or end of a rectangular block.  On the first 
  1462.               call, the current character will be selected. On subsequent 
  1463.               calls, all of the characters within a rectangle between the 
  1464.               current position and the top left hand corner of the original 
  1465.               block will be marked, unless the current position is on the top 
  1466.               left or bottom right corner, in which case the block is cleared 
  1467.               if SET was used. 
  1468.  
  1469.     SET/MARK WORD 
  1470.               A WORD is a sequence of alphanumeric characters.  An alphanumeric 
  1471.               character is one which is either a NUMERIC, or an ALPHABETIC 
  1472.               whose upper case form is not the same as the lower case form. 
  1473.  
  1474.               Mark the current word. If a block is already set it will be 
  1475.               cleared first. Then the whole word under the cursor is selected. 
  1476.               If the cursor is not under an alphanumeric character, a backward 
  1477.               scan will be done looking for one. If none is found a forward 
  1478.               scan will be tried. If neither is successful nothing is marked 
  1479.               and the return code set to -6. 
  1480.  
  1481.               Note MARK WORD and SET WORD are synonymous, and for all other 
  1482.               block functions a word block is the same as a character block. 
  1483.  
  1484.     SHIFT 
  1485.               Moves the marked block a given number of characters to the left 
  1486.               or right. When moving right, the element is padded with the 
  1487.               current PAD character and when moving left, the initial 
  1488.               characters are removed. 
  1489.  
  1490.               CLEAR may be specified, to remove the block after SHIFT. 
  1491.  
  1492.     UPPER 
  1493.               Converts the block into uppercase. CLEAR may be specified to 
  1494.               remove the block after UPPER. 
  1495.  
  1496.  Return codes: 
  1497.  
  1498.  -1        unrecognized parameter 
  1499.  -2        no block is currently set 
  1500.  -3        a block may not be copied into itself 
  1501.  -4        document is empty (cannot SET the BLOCK) 
  1502.  -5        document is read-only 
  1503.  -6        invalid state for that BLOCK operation 
  1504.  -7        BLOCK OVERLAY requires a marked rectangular block 
  1505.  -8        insufficient storage available 
  1506.  2         no block is currently set (cannot CLEAR) 
  1507.  
  1508.  
  1509. ΓòÉΓòÉΓòÉ 4.6. BOTTOM ΓòÉΓòÉΓòÉ
  1510.  
  1511. Move to bottom of document. 
  1512.  
  1513. BOTTOM moves the current position to the last character of the last element of 
  1514. the document. 
  1515.  
  1516.  Syntax:   BOTTOM 
  1517.  
  1518.  Return codes: 
  1519.  
  1520.  -9        parameter passed where none required 
  1521.  1         already exactly on last character of document 
  1522.  
  1523.  
  1524. ΓòÉΓòÉΓòÉ 4.7. CHANGE ΓòÉΓòÉΓòÉ
  1525.  
  1526. Substitute one string for another. 
  1527.  
  1528. CHANGE substitutes one or more occurrences of one string for another. By 
  1529. default the changes apply only to the current element, or marked block. The 
  1530. command parameter determines the scope for changes, overriding any marked 
  1531. block. Strings are indicated using delimiters, for example: 
  1532.  
  1533. CHANGE /string1/string2.
  1534.  
  1535. The delimiter can be any single non-blank character not used elsewhere in the 
  1536. parameter string (the / is used here). 
  1537.  
  1538.  Syntax:   CHANGE [VISIBLE] [ANY] [ASIS] /string1/string2[/command] [/count] 
  1539.            [/?] 
  1540.  
  1541.  Parameters: 
  1542.  
  1543.     VISIBLE   restricts changes to visible elements 
  1544.  
  1545.     ANY       find string1 regardless of case 
  1546.  
  1547.     ASIS      find string1 exactly as entered 
  1548.  
  1549.     /string1/string2 string1 is the string to be searched for and string2 is 
  1550.               the string which replaces string1. The delimiter may be any 
  1551.               character not present in either string1 or string2. For example: 
  1552.  
  1553.                             /colour/color
  1554.  
  1555.               will replace every occurrence of the word colour with the word 
  1556.               color.  If no other parameters are supplied, this modifies the 
  1557.               current element only. 
  1558.  
  1559.     command   - any LPEX command. This is used to define the range of elements 
  1560.               over which any changes are to be applied. The range extends from 
  1561.               the current position in the current element to the element that 
  1562.               becomes the current element when command is executed.  The 
  1563.               special case of an * means the same as BOTTOM that is do to end 
  1564.               of file 
  1565.  
  1566.               For example: 
  1567.  
  1568.                             /colour/color/bottom
  1569.  
  1570.               replaces colour with color from the current position to the end 
  1571.               of the document. 
  1572.  
  1573.               command expressed as an integer gives the number of elements over 
  1574.               which to apply the changes. 
  1575.  
  1576.               If the change is an iterative change and FINDHISTORY is non zero 
  1577.               then each found point is recorded up to the value of FINDHISTORY, 
  1578.               after that the oldest occurences are discarded in favour of the 
  1579.               latest occurence. Use the PREVIOUS or NEXT forms of the FIND 
  1580.               command to reposition the cursor to a previous found point. 
  1581.               PREVIOUS steps back one occurence and NEXT steps forward to the 
  1582.               later occurence.  The history is cyclic and so when there is no 
  1583.               earlier (or later for NEXT) occurence the pointer is reset to the 
  1584.               other of the history. 
  1585.  
  1586.     count     - is the maximum number of changes to apply to each element in 
  1587.               the range.  If omitted the default is any number of changes 
  1588.               unless string1 is null when the default becomes one. 
  1589.  
  1590.     ?         - if appended, LPEX will ask for each change to be confirmed. 
  1591.  
  1592.  Return codes: 
  1593.  
  1594.  -1        marked block is not in current document 
  1595.  -2        document is empty 
  1596.  -3        negative return code from command 
  1597.  -4        count is not a positive integer 
  1598.  -5        document is read-only 
  1599.  -6        command would result in backwards search 
  1600.  1         string1 not found 
  1601.  
  1602.  
  1603. ΓòÉΓòÉΓòÉ 4.8. CHECK ΓòÉΓòÉΓòÉ
  1604.  
  1605. Take a manual checkpoint. 
  1606.  
  1607. CHECK takes a checkpoint of current changes. This is a point to which  UNDO can 
  1608. recover changes.  The first time CHECK is specified for a document starts the 
  1609. recording of undoable changes. CHECK may be called explicitly at any point or 
  1610. automatically if AUTOCHECK is ON. 
  1611.  
  1612. LIST displays a list of up to two changes in each level of the HISTORY, giving 
  1613. an idea of the content of each state of the recorded history. The 
  1614. interpretation of this data is not always obvious. 
  1615.  
  1616.  Syntax:   CHECK [CLEAR/CLEAN/LIST] 
  1617.  
  1618.  Parameters: 
  1619.  
  1620.     CLEAR     clears all recorded data 
  1621.  
  1622.     CLEAN     cleans data below current HISTORY 
  1623.  
  1624.     LIST      shows up to two changes in HISTORY levels 
  1625.  
  1626.  Return codes: 
  1627.  
  1628.  -1        invalid parameter 
  1629.  -2        HISTORY is zero - no checkpointing possible 
  1630.  1         recording was off and is now started 
  1631.  2         no changes have been recorded since the last call to CHECK 
  1632.  
  1633.  
  1634. ΓòÉΓòÉΓòÉ 4.9. CLIP ΓòÉΓòÉΓòÉ
  1635.  
  1636. CLIP provides four clipboard functions for LPEX: 
  1637.  
  1638.  COPY      copies the visible elements of current marked block into the 
  1639.            clipboard (leaving it still in the document) 
  1640.  
  1641.  CUT       moves the visible elements current marked block into the clipboard 
  1642.            (removing entire block from in the document) 
  1643.  
  1644.  PASTE     copies the current clipboard contents into the document at the 
  1645.            cursor position (provided the clipboard contents are available in 
  1646.            standard TEXT format) 
  1647.  
  1648.  QUERY     displays a message indicating if the clipboard is empty or contains 
  1649.            some text 
  1650.  
  1651.  CLIP only supports element and character blocks - attempts to copy of cut a 
  1652.  rectangular block are diagnosed as errors. 
  1653.  
  1654.  PROFSYS.LX sets up the standard CUA keys, as follows: 
  1655.  
  1656.  Ctrl-Ins  CLIP COPY 
  1657.  Shift-Del CLIP CUT 
  1658.  Shift-Ins CLIP PASTE 
  1659.  
  1660.  Syntax:   CLIP option 
  1661.  
  1662.  Parameters: option - as described above 
  1663.  
  1664.  Return codes: 
  1665.  
  1666.  1         option not COPY, CUT, PASTE or QUERY 
  1667.  2         no marked block to copy or cut 
  1668.  3         current block is rectangular 
  1669.  4         clipboard is empty or is not in TEXT format 
  1670.  
  1671.  
  1672. ΓòÉΓòÉΓòÉ 4.10. DELETE ΓòÉΓòÉΓòÉ
  1673.  
  1674. Delete one or more elements. 
  1675.  
  1676. DELETE removes the current element, or a number of elements, from the document. 
  1677. The element which followed the deleted element will become the current element. 
  1678. If no element followed the deleted element, the previous element will become 
  1679. the current element. 
  1680.  
  1681.  Syntax:   DELETE [n] 
  1682.  
  1683.  Parameters: n - the repetition count (default one) 
  1684.  
  1685.            The special case of an * means delete to end of file 
  1686.  
  1687.  Return codes: 
  1688.  
  1689.  -1        invalid call (document is empty) 
  1690.  -5        document is read-only 
  1691.  1         element was last element in document 
  1692.  2         element was only element in document 
  1693.  
  1694.  
  1695. ΓòÉΓòÉΓòÉ 4.11. DIALOG ΓòÉΓòÉΓòÉ
  1696.  
  1697. Invoke an LPEX dialog. 
  1698.  
  1699. DIALOG causes LPEX to invoke the named dialog as though it had been done from 
  1700. the pulldown off the action bar.  A list of the available dialogs can be 
  1701. obtained by issuing DIALOG ? 
  1702.  
  1703.  Syntax:   DIALOG {name | ?} 
  1704.  
  1705.  Parameters: 
  1706.  
  1707.     name      the name of the dialog 
  1708.  
  1709.     ?         generate a list of the dialogs 
  1710.  
  1711.               The following is the currently defined list. 
  1712.  
  1713.        OPEN                   ~Open... 
  1714.        SAVEAS                 Save ~as... 
  1715.        GETFILE                ~Get... 
  1716.        FINDCHANGE             Find and Change ~Text... 
  1717.        UNDO                   ~Set undo options... 
  1718.        MARKNAME               ~Name a mark... 
  1719.        ELEMENT                Element ~number... 
  1720.        FINDMARK               Named ~mark... 
  1721.        COMMANDLINE            ~Issue command... 
  1722.        SYNONYM                Set ~synonyms... 
  1723.        ACTION                 Set ~action keys... 
  1724.        RECALL                 Set ~recall options... 
  1725.        FONTS                  ~Fonts... 
  1726.        TABS                   ~Tab settings... 
  1727.        GLOBALS                ~Global variables... 
  1728.        OPTIONS                ~Other settings... 
  1729.        WINLIST                Window_~list... 
  1730.  
  1731.  
  1732. ΓòÉΓòÉΓòÉ 4.12. DUMP ΓòÉΓòÉΓòÉ
  1733.  
  1734. Dump the elements of the current document. 
  1735.  
  1736. DUMP displays information about each element in the current document to give an 
  1737. abbreviated indication of content, fonts and formatting. The fixed display 
  1738. order is: (spaces shown between the columns do not exist in output) 
  1739.  
  1740.     A B a P p B F f s S
  1741.     Γöé Γöé Γöé Γöé Γöé Γöé Γöé Γöé Γöé Γöé
  1742.     Γöé Γöé Γöé Γöé Γöé Γöé Γöé Γöé Γöé Solid
  1743.     Γöé Γöé Γöé Γöé Γöé Γöé Γöé Γöé spill
  1744.     Γöé Γöé Γöé Γöé Γöé Γöé Γöé flow
  1745.     Γöé Γöé Γöé Γöé Γöé Γöé Final
  1746.     Γöé Γöé Γöé Γöé Γöé Break
  1747.     Γöé Γöé Γöé Γöé postspace
  1748.     Γöé Γöé Γöé Prespace
  1749.     Γöé Γöé after
  1750.     Γöé Before
  1751.     Absolute
  1752.  
  1753.  Syntax:   DUMP [n] 
  1754.  
  1755.  Parameters: n - the number of records to dump (default 20) 
  1756.  
  1757.  Return codes: 
  1758.  
  1759.  -1        no current document 
  1760.  2         invalid number specified 
  1761.  
  1762.  
  1763. ΓòÉΓòÉΓòÉ 4.13. DUP ΓòÉΓòÉΓòÉ
  1764.  
  1765. Duplicate the current element. 
  1766.  
  1767. DUP duplicates the current element, copying all information including content, 
  1768. fonts and structure. 
  1769.  
  1770. The new element is placed after the current element. The first character of the 
  1771. new element becomes the current position. If more than one new element is 
  1772. created, the first character of the final new element is used. If no new 
  1773. elements are created, the current position is not moved. 
  1774.  
  1775. If the duplicate element is the last element in the current block, the block 
  1776. extends to include the duplicate. By default the element is duplicated once. A 
  1777. repetition count can be specified if desired. 
  1778.  
  1779.  Syntax:   DUP [n] 
  1780.  
  1781.  Parameters: n - repetition count, zero or greater (default one) 
  1782.  
  1783.  Return codes: 
  1784.  
  1785.  -1        invalid call (document is empty or invalid count) 
  1786.  -5        document is read-only 
  1787.  -8        insufficient storage available 
  1788.  
  1789.  
  1790. ΓòÉΓòÉΓòÉ 4.14. END ΓòÉΓòÉΓòÉ
  1791.  
  1792. Move to end of current element sequence. 
  1793.  
  1794. END moves the current data position to the end of the current sequence of 
  1795. elements. The current position is set to one beyond the end of the element 
  1796. chosen. 
  1797.  
  1798.  Syntax:   END 
  1799.  
  1800.  Return codes: 
  1801.  
  1802.  -1        invalid (non-blank) parameter string 
  1803.  1         document is empty (no move is possible) 
  1804.  
  1805.  
  1806. ΓòÉΓòÉΓòÉ 4.15. EXTRACT ΓòÉΓòÉΓòÉ
  1807.  
  1808. Extract one or more state settings. 
  1809.  
  1810.  Syntax:   EXTRACT option  [ ] 
  1811.  
  1812.  Parameters: 
  1813.  
  1814.     option    name of an option the value of which is to be assigned to the 
  1815.               variable of the same name as the option. 
  1816.  
  1817.               Further options the contents of which are to be EXTRACTed. 
  1818.  
  1819.               Where the item is a compound (stemmed) variable name containing 
  1820.               special characters, for example FONT.-, the resultant variable 
  1821.               must be accessed as demonstrated by the following code extract. 
  1822.  
  1823.                             chars = '-'
  1824.                             fontcode = font.chars  /* get contents of FONT.- */
  1825.  
  1826.               Return codes: 
  1827.  
  1828.     -1        invalid item found 
  1829.     -2        REXX not available to set variables 
  1830.  
  1831.  
  1832. ΓòÉΓòÉΓòÉ 4.16. FILE ΓòÉΓòÉΓòÉ
  1833.  
  1834. Save document, then quit. 
  1835.  
  1836. FILE ends the editing of the current document by saving it to an OS/2 file and 
  1837. then quits from the document. If the SAVE fails, the document is not QUIT. If 
  1838. name is not specified, the name is taken from the document name. 
  1839.  
  1840.  Syntax:   FILE [filename] [/ASSHOWN] 
  1841.  
  1842.  Parameters: 
  1843.  
  1844.  filename  name of the file to be saved 
  1845.  
  1846.  /ASSHOWN  file in the format as displayed (may be abbreviated to /AS) 
  1847.  
  1848.  Return codes: 
  1849.  
  1850.  -1        document is empty 
  1851.  -2        file already exists 
  1852.  -3        invalid option (not /ASSHOWN) 
  1853.  -4        uneven PRESERVE/RESTORE  calls made during .LXS macro 
  1854.  -6        error writing file, or renaming temporary file 
  1855.  -7        document is protected by NOSAVE being set ON 
  1856.  10        command not found - an error in .LXS macro 
  1857.  1         one or more lines truncated 
  1858.  
  1859.  
  1860. ΓòÉΓòÉΓòÉ 4.17. FIND ΓòÉΓòÉΓòÉ
  1861.  
  1862. Find a specific string or element. 
  1863.  
  1864. FIND searches the current document for a specified string or element, and then 
  1865. moves the current position to the string or element. If the found text is 
  1866. visible in the window, the cursor will move to the found text. If the found 
  1867. text is not visible, it will be displayed on FOCUS.row and the cursor will move 
  1868. to it.  If MARK is specified the found string or element is marked as a 
  1869. character or element block.  If VISIBLE is specified the FIND will be 
  1870. successful only if the element is in a CLASS which is normally visible. 
  1871.  
  1872. If called with no parameters, FIND will repeat the most recently issued FIND 
  1873. command (with exactly the same arguments as the previous call in the current 
  1874. document). The previous FIND string can be retrieved or changed using QUERY/SET 
  1875. LASTFIND, which is saved by the PRESERVE command. 
  1876.  
  1877. The maximum length of the FIND string is 250 characters. 
  1878.  
  1879. If FINDHISTORY is non zero then each found point is recorded up to the value of 
  1880. FINDHISTORY, after that the oldest occurences are discarded in favour of the 
  1881. latest occurence. Use the PREVIOUS or NEXT forms of the FIND command to 
  1882. reposition the cursor to a previous found point. PREVIOUS steps back one 
  1883. occurence and NEXT steps forward to the later occurence. 
  1884.  
  1885. The history is cyclic and so when there is no earlier (or later for NEXT) 
  1886. occurence the pointer is reset to the other end of the history. The position of 
  1887. this point is reset to the new last entry if a FIND or CHANGE is performed or 
  1888. the size of the history chain is changed by a SET FINDHISTORY. 
  1889.  
  1890.  Syntax: 
  1891.  
  1892.     FIND [ [MARK] [VISIBLE] [UP] ELEMENT n/text ] 
  1893.     or 
  1894.     FIND [MARK] PREVIOUS | NEXT 
  1895.  
  1896.  Parameters: 
  1897.  
  1898.     MARK      mark the found text as a character block, or the found element as 
  1899.               an element block. 
  1900.  
  1901.               Note:  Use of MARK will clear any existing block mark whether or 
  1902.                      not the FIND is successful. 
  1903.  
  1904.     PREVIOUS  Reposition to the previous found item in the find history. 
  1905.  
  1906.     NEXT      Reposition to the next found item in the find history. 
  1907.  
  1908.     VISIBLE   restricts search to visible elements 
  1909.  
  1910.     UP        specifies an upward search 
  1911.  
  1912.     ELEMENT n searches for the nth element 
  1913.  
  1914.     ANY       find string, regardless of case 
  1915.  
  1916.     ASIS      find string exactly as entered 
  1917.  
  1918.     text      text string to be found, prefixed by ANY or ASIS 
  1919.  
  1920.  Return codes: 
  1921.  
  1922.  -1        invalid parameter (unknown search type or string too long) 
  1923.  -2        document is empty 
  1924.  -3        repeat FIND requested but no previous FIND 
  1925.  1         string not found (or not visible) 
  1926.  2         string found - only occurrence in document 
  1927.  3         string found but wrap to top/bottom of document was needed 
  1928.  
  1929.  
  1930. ΓòÉΓòÉΓòÉ 4.18. FOCUS ΓòÉΓòÉΓòÉ
  1931.  
  1932. Moves the current position to focus line. 
  1933.  
  1934. FOCUS displays the current cursor position within the document on the focus 
  1935. line (if a focus line can be determined). 
  1936.  
  1937.  Syntax:   FOCUS 
  1938.  
  1939.  Return codes: 
  1940.  
  1941.  -9        parameter passed where none required 
  1942.  
  1943.  
  1944. ΓòÉΓòÉΓòÉ 4.19. GET ΓòÉΓòÉΓòÉ
  1945.  
  1946. Get and insert file after the current element. 
  1947.  
  1948. GET gets a named file and places it after the current element in the current 
  1949. document. 
  1950.  
  1951.  Syntax:   GET filename [/LINEBREAK ttt] 
  1952.  
  1953.  Parameters: filename - the name of the file to be placed 
  1954.  
  1955.  /LB (or /LINEBREAK) - get file with line breaks according to line break mode 
  1956.            ttt. 
  1957.  
  1958.            Currently supported modes are listed in  SET LINEBREAK 
  1959.  
  1960.  Return codes: 
  1961.  
  1962.  -2        no filename given 
  1963.  -5        document is read-only 
  1964.  -6        error reading file 
  1965.  -8        insufficient storage available 
  1966.  3         file not found 
  1967.  
  1968.  
  1969. ΓòÉΓòÉΓòÉ 4.20. GML ΓòÉΓòÉΓòÉ
  1970.  
  1971. Special processes for GML (Script) files. 
  1972.  
  1973. GML command carries out a number of special processes that are especially 
  1974. useful for GML (Script) files. The command has one parameter, which may be 
  1975. abbreviated to a single character. 
  1976.  
  1977.  Syntax:   GML command 
  1978.  
  1979.  Parameters: command - one of the following: 
  1980.  
  1981.     CONTENTS or c 
  1982.               Displays the header elements in the current document.  The header 
  1983.               elements are shown in table-of-contents format. 
  1984.  
  1985.     GALLEY or g 
  1986.               Returns settings to their defaults, and then sets up "galley" 
  1987.               style for proof-reading (only TEXT and tag representations are 
  1988.               displayed). 
  1989.  
  1990.     INVERSE or i 
  1991.               Toggles (switches) between the CONTENTS list and SELECTing by 
  1992.               section. 
  1993.  
  1994.     NEXT or n 
  1995.               Moves to the next (sub)section of the document. 
  1996.  
  1997.     PREVIOUS or p 
  1998.               Moves to the previous (sub)section of the document. 
  1999.  
  2000.     RESET or r 
  2001.               Returns settings to their defaults. 
  2002.  
  2003.     SELECT or s 
  2004.               If called when on a header element, SELECT expands the selected 
  2005.               subsection, and hides all the remaining sections. This is best 
  2006.               used in conjunction with GML CONTENTS, with both commands being 
  2007.               tied to action keys (or use GML INVERSE). 
  2008.  
  2009.  Return codes: 
  2010.  
  2011.  -1        invalid parameter specified 
  2012.  
  2013.  
  2014. ΓòÉΓòÉΓòÉ 4.21. GODOC ΓòÉΓòÉΓòÉ
  2015.  
  2016. Edit or create specified document. 
  2017.  
  2018. GODOC can switch between and create documents. The parameters allow specific 
  2019. documents to be selected. 
  2020.  
  2021.  Syntax:   GODOC [DOCNUM n/FIND name/NAME name/NEXT] 
  2022.  
  2023.  Parameters: If no parameters are specified, then the previous document in the 
  2024.            sequence is shown. 
  2025.  
  2026.     DOCNUM n 
  2027.               searches the sequence for document n; if not found then the 
  2028.               document is not created. 
  2029.  
  2030.     FIND name 
  2031.               searches the sequence for the named document; if not found then 
  2032.               the document is not created. 
  2033.  
  2034.     NAME name 
  2035.               searches the sequence for the named document; if not found then 
  2036.               the document is created. 
  2037.  
  2038.     NEXT 
  2039.               the next document in the sequence is shown. 
  2040.  
  2041.     name 
  2042.               The name of the document for NAME or FIND. IF the name contains 
  2043.               embedded blanks or start with a " then the name should be 
  2044.               enclosed in quotes as "name" 
  2045.  
  2046.  Return codes: 
  2047.  
  2048.  -1        invalid parameter 
  2049.  -2        invalid name or DOCNUM 
  2050.  -3        attempt to move to new document while trigger processing 
  2051.  -4        attempt to open more htan the maximum number of windows. 
  2052.  -8        insufficient storage to proceed 
  2053.  1         document not found (for FIND or DOCNUM) 
  2054.  2         new document created (for NAME) 
  2055.  3         already in this document 
  2056.  
  2057.  
  2058. ΓòÉΓòÉΓòÉ 4.22. GOVIEW ΓòÉΓòÉΓòÉ
  2059.  
  2060. Edit or create specified view. 
  2061.  
  2062. GOVIEW can switch between and create document view. The parameters allow 
  2063. specific views to be selected. 
  2064.  
  2065.  Syntax:   GOVIEW [FIND name/NAME name/NEXT/VIEWNUM n] 
  2066.  
  2067.  Parameters: If no parameters are specified, then the previous view in the 
  2068.            sequence is shown. 
  2069.  
  2070.     FIND name 
  2071.               searches the sequence for the named view; if not found then the 
  2072.               view is not created. 
  2073.  
  2074.     NAME name 
  2075.               searches the sequence for the named view; if not found then the 
  2076.               view is created. 
  2077.  
  2078.     NEXT 
  2079.               the previous view in the sequence is shown. 
  2080.  
  2081.     VIEWNUM n 
  2082.               searches the sequence for view n; if not found then the view is 
  2083.               not created. 
  2084.  
  2085.  Return codes: 
  2086.  
  2087.  -1        invalid keyword 
  2088.  -2        invalid name or VIEWNUM 
  2089.  -4        attempt to open more htan the maximum number of windows. 
  2090.  -8        insufficient storage to proceed 
  2091.  1         view not found (for FIND or VIEWNUM) 
  2092.  2         new view created (for NAME) 
  2093.  3         already in this view 
  2094.  
  2095.  
  2096. ΓòÉΓòÉΓòÉ 4.23. HELP ΓòÉΓòÉΓòÉ
  2097.  
  2098. Display help information. 
  2099.  
  2100. You can obtain help in one of three ways: 
  2101.  
  2102.   1. Press F1 at any time for help about 
  2103.  
  2104.      a. specific action bar pull-down or option (if one was currently selected) 
  2105.  
  2106.      b. help about the last command if it failed with a negative return code 
  2107.         (which indicates an error) 
  2108.  
  2109.      c. general help 
  2110.  
  2111.   2. Select a Help button in a dialog box. This gives you help about that 
  2112.      dialog. 
  2113.  
  2114.   3. Issue a HELP command using the command line dialog.  The format of the 
  2115.      command can be: 
  2116.  
  2117.     HELP command gives help about that command 
  2118.     HELP QUERY option gives help about that query option 
  2119.     HELP SET option gives help about that set option 
  2120.     HELP INDEX x displays the x help index. 
  2121.     HELP x y  gives help about y from the x index 
  2122.  
  2123.               The supplied indices are: 
  2124.  
  2125.     G         (General information) 
  2126.  
  2127.     A         (Action bar) 
  2128.  
  2129.     C         (Commands) 
  2130.  
  2131.     S         (Set options) 
  2132.  
  2133.     Q         (Query) 
  2134.  
  2135.  If help about xxxx cannot be found in a help library, LPEX will look for a 
  2136.  file called xxxx.HLP and display this instead. 
  2137.  
  2138.  Once in the help window, you can display one of the indices using the Options 
  2139.  menu. Within an index, help can be obtained about the highlighted item either 
  2140.  by pressing Enter or double-clicking with mouse button 1. 
  2141.  
  2142.  Return codes: 
  2143.  
  2144.  -2        error reading library 
  2145.  -8        not enough memory to build index or store lines 
  2146.  1         no help for this command (or no such index) 
  2147.  2         error in library format 
  2148.  
  2149.  
  2150. ΓòÉΓòÉΓòÉ 4.24. INSERT ΓòÉΓòÉΓòÉ
  2151.  
  2152. Insert a new element. 
  2153.  
  2154. INSERT inserts new text after the current element. The new text becomes part of 
  2155. the current element and has default font, formatting and class. 
  2156.  
  2157.  Syntax:   INSERT string 
  2158.  
  2159.  Parameters: string - the text string forming the content of the element 
  2160.  
  2161.  Return codes: 
  2162.  
  2163.  -5        document is read-only 
  2164.  -8        insufficient storage available 
  2165.  
  2166.  
  2167. ΓòÉΓòÉΓòÉ 4.25. KEYREAD ΓòÉΓòÉΓòÉ
  2168.  
  2169. Wait for key to be pressed. 
  2170.  
  2171. KEYREAD waits for a key to be pressed. The value can then be queried or 
  2172. extracted using QUERY LASTKEY. 
  2173.  
  2174.  Syntax:   KEYREAD 
  2175.  
  2176.  
  2177. ΓòÉΓòÉΓòÉ 4.26. LINEREAD ΓòÉΓòÉΓòÉ
  2178.  
  2179. Read line from screen. 
  2180.  
  2181. LINEREAD allows the macro writer to request a line of input from the user. The 
  2182. dialog box includes an input field and three push-buttons (Enter, Help and 
  2183. Cancel).  The input field displays the string (if any) contained in the text 
  2184. parameter. 
  2185.  
  2186. The text input by the user can be queried using QUERY LASTLINE, and the button 
  2187. used to leave the dialog queried by QUERY LASTKEY, which will return either 
  2188. ENTER or ESC. If ESC is used to exit LINEREAD, QUERY LASTLINE will contain the 
  2189. initial text. 
  2190.  
  2191. The title and prompt areas of the lineread dialog can be set using the SET 
  2192. LINEREAD.TITLE and SET LINEREAD.PROMPT commands. 
  2193.  
  2194. Note:  These settings of the title or prompt are cancelled after the next use 
  2195.        of the LINEREAD command. 
  2196.  
  2197.  Syntax:   LINEREAD length [text] 
  2198.  
  2199.  Parameters: 
  2200.  
  2201.     length    maximum number of characters on line to be read 
  2202.  
  2203.     text      initial text to display in box 
  2204.  
  2205.  Return codes: 
  2206.  
  2207.  -1        invalid parameters 
  2208.  -8        no memory available 
  2209.  
  2210.  
  2211. ΓòÉΓòÉΓòÉ 4.27. LOAD ΓòÉΓòÉΓòÉ
  2212.  
  2213. Load a file into an empty document. 
  2214.  
  2215. LOAD reads a specified file (no lines wider than 2500 characters) into an empty 
  2216. LPEX document as a simple list of elements. Once the file has been read, a 
  2217. number of customizing macros will be called, providing they are listed in the 
  2218. PROFILES setting. All macros are passed the filename and extension. 
  2219.  
  2220.  PROFSYS.LX sets up installation defaults for LPEX. 
  2221.  
  2222.  xxx.LXL sets up the parser (which in turn sets class, structure and formatting 
  2223.  information as appropriate). 
  2224.  
  2225.  PROFILE.LX may be used for personal customization of the editor. 
  2226.  
  2227.  Syntax:   LOAD filename 
  2228.  
  2229.  Parameters: filename - the name of the file (drive and path may be specified) 
  2230.  
  2231.  Return codes : 
  2232.  
  2233.  -1        document is not empty 
  2234.  -2        no filename given 
  2235.  -3        invalid filename 
  2236.  -6        error reading file 
  2237.  -7        file too wide (only a fixed buffer is available) 
  2238.  3         file not found (new file) 
  2239.  
  2240.  
  2241. ΓòÉΓòÉΓòÉ 4.28. LOADFONTS ΓòÉΓòÉΓòÉ
  2242.  
  2243. Loads fonts available for the document. 
  2244.  
  2245. LOADFONTS loads the specified font file. If no extension is given, an extension 
  2246. of .DLL is assumed. If no path is given, LIBPATH is searched. If DIAG is ON, a 
  2247. list of the fonts is displayed. 
  2248.  
  2249.  Syntax:   LOADFONTS filename 
  2250.  
  2251.  Parameters: filename - the file containing the required fonts 
  2252.  
  2253.  Return codes: 
  2254.  
  2255.  -2        no filename given 
  2256.  -3        invalid filename (or not a fontfile) 
  2257.  -4        file contains no fonts 
  2258.  -6        error reading file 
  2259.  
  2260.  
  2261. ΓòÉΓòÉΓòÉ 4.29. LX ΓòÉΓòÉΓòÉ
  2262.  
  2263. Edit named document or load new document. 
  2264.  
  2265. LX loads a named document (unless it already exists), and then permits the 
  2266. document to be edited. 
  2267.  
  2268.  Syntax:   LX [filename] [options] 
  2269.  
  2270.  Parameters: 
  2271.  
  2272.     filename  name of document to be edited 
  2273.  
  2274.               If the filename contains leading, embedded, or trailing blanks 
  2275.               then the filename must be enclosed by " characters. 
  2276.  
  2277.     options   zero or more of the following: 
  2278.  
  2279.        /np (or /nopro) - do not run PROFILE.LX 
  2280.        /ns (or /nosys) - do not run PROFSYS.LX 
  2281.        /lb (or /linebreak) - load file with line breaks according to line break 
  2282.                  mode ttt. 
  2283.  
  2284.                  Currently supported modes are listed in  SET LINEBREAK. 
  2285.        /as (or /asis) - do not run xxx.LXL (or xxx.LXS when a SAVE is issued). 
  2286.        /dt vvv (or /doctype vvv) - set DOCTYPE to vvv 
  2287.  
  2288.  Return codes: 
  2289.  
  2290.  -1        invalid filename (too long) 
  2291.  -2        no filename given 
  2292.  -3        file in use elsewhere 
  2293.  -6        error reading file 
  2294.  -7        file too wide (only a fixed buffer is available) 
  2295.  1         new document created, but no data loaded 
  2296.  2         new document created, and file loaded 
  2297.  3         already in this document 
  2298.  
  2299.  
  2300. ΓòÉΓòÉΓòÉ 4.30. LXC ΓòÉΓòÉΓòÉ
  2301.  
  2302. Issue command as though from command line. 
  2303.  
  2304. LXC issues a command as though from the command line. 
  2305.  
  2306.  Syntax:   LXC command 
  2307.  
  2308.  Parameters: command - the command to be issued 
  2309.  
  2310.  Return codes: 
  2311.  
  2312.  -10       routine not found 
  2313.  -11       error loading routine 
  2314.  
  2315.  Other negative return codes as returned by the routine or macro. Positive 
  2316.  return codes as returned by the last invokedroutine or macro. 
  2317.  
  2318.  
  2319. ΓòÉΓòÉΓòÉ 4.31. LXI ΓòÉΓòÉΓòÉ
  2320.  
  2321. Issue command as though invoked interactively. 
  2322.  
  2323. LXI processes the command string as an interactive command. LXI will apply 
  2324. synonym resolution to commands. LXI adds one to the CHANGES count if one or 
  2325. more elements are altered during the execution of the command. 
  2326.  
  2327.  Syntax:   LXI command 
  2328.  
  2329.  Parameters: command - command to be issued (or = to repeat last command) 
  2330.  
  2331.  Return codes: 
  2332.  
  2333.  -10       routine not found 
  2334.  -11       error loading routine 
  2335.  
  2336.  Other negative codes as returned by command or macro.  Positive codes are 
  2337.  returned by last invoked command or macro. 
  2338.  
  2339.  
  2340. ΓòÉΓòÉΓòÉ 4.32. LXN ΓòÉΓòÉΓòÉ
  2341.  
  2342. Issue a native command, with no macro search. 
  2343.  
  2344. LXN issues a native command without a macro search, so that the command string 
  2345. is processed in the simplest possible way. Only native LPEX commands will be 
  2346. understood. The CHANGES count is not incremented. 
  2347.  
  2348.  Syntax:   LXN command 
  2349.  
  2350.  Parameters: command- the command to be issued 
  2351.  
  2352.  Return codes: 
  2353.  
  2354.  -8        insufficient storage to continue 
  2355.  -10       routine not found 
  2356.  -11       error loading routine 
  2357.  
  2358.  Other messages as returned by the LXPM command. 
  2359.  
  2360.  
  2361. ΓòÉΓòÉΓòÉ 4.33. LXR ΓòÉΓòÉΓòÉ
  2362.  
  2363. Issue one or more resolved command(s). 
  2364.  
  2365. LXR processes the command as a possible macro or native call. It searches, in 
  2366. order, for a native command, a SET or QUERY command, and a macro. 
  2367.  
  2368.  Syntax:   LXR command 
  2369.  
  2370.  Parameters: command - the command to be issued 
  2371.  
  2372.  Return codes: 
  2373.  
  2374.  -10       routine not found 
  2375.  -11       error loading routine 
  2376.  
  2377.  Other negative codes as returned by the routine or macro positive codes as 
  2378.  returned by the last invoked routine or macro. 
  2379.  
  2380.  
  2381. ΓòÉΓòÉΓòÉ 4.34. MACRO ΓòÉΓòÉΓòÉ
  2382.  
  2383. Execute LPEX commands in a file. 
  2384.  
  2385. MACRO executes an LPEX macro which is written in REXX. Commands may be 
  2386. surrounded with single or double quotes and separated by semicolons. The file 
  2387. may also contain comments which begin with /* and end with */. The first line 
  2388. of the file must start with a comment.  Simple macros, which do not require a 
  2389. REXX interpreter, can be written. They contain only comments and LPEX commands. 
  2390.  
  2391.  Syntax:   MACRO filename [string] 
  2392.  
  2393.  Parameters: 
  2394.  
  2395.     filename  name of macro to execute 
  2396.  
  2397.     string    parameter string to be passed to the macro 
  2398.  
  2399.  Return codes: 
  2400.  
  2401.  -1        macro not found 
  2402.  -3        no name passed 
  2403.  -4        invalid first line (not a comment) 
  2404.  
  2405.  
  2406. ΓòÉΓòÉΓòÉ 4.35. MACRODROP ΓòÉΓòÉΓòÉ
  2407.  
  2408. Remove a REXX macro previously loaded by MACROLOAD 
  2409.  
  2410. Removes the named macro from internal storage. Any path specified will be 
  2411. ignored.  The extension must be appended if not LXeg DOC.LXL. 
  2412.  
  2413.  Syntax:   MACRODROP macroname[.ext] 
  2414.  
  2415.  Parameters: 
  2416.  
  2417.     macroname.ext the macro to be removed. 
  2418.  
  2419.  
  2420. ΓòÉΓòÉΓòÉ 4.36. MACROLOAD ΓòÉΓòÉΓòÉ
  2421.  
  2422. Preload an LPEX macro into the internal storage. 
  2423.  
  2424. Preloading the macros into storage provides faster invocation of the macro - it 
  2425. will not cause the macro to be executed any faster. If a path is specified the 
  2426. selected path will be used to find the file otherwise the current LPATH is 
  2427. used. This process  therefore can be used to preempt the LPATH search as well 
  2428. as for performance reasons.  For optimal performance, invocations of the macro 
  2429. should be made using the MACRO command to bypass the command search. The 
  2430. extension must be appended if not .LX, for example DOC.LXL. If the macro was 
  2431. previously preloaded, the preloaded copy is replaced by the macro in the file. 
  2432. So you can edit a macro and the reload it into storage. But do note that this 
  2433. must be done to make the change effective. It is recommended that the following 
  2434. macros are preloaded. PROFSYS.LX PROFILE.LX (even if it is a dummy) and common 
  2435. .LXL and .LXS files - the distributed PROFINIT.LX will do this for C and DOC 
  2436. files. 
  2437.  
  2438.  Syntax:   MACROLOAD [path\]macroname[.ext ] 
  2439.  
  2440.  Parameters: 
  2441.  
  2442.     path\     path to be used instead of LPATH. 
  2443.  
  2444.     macroname.ext the macro to be preloaded. 
  2445.  
  2446.  Return codes : 
  2447.  
  2448.   1        Not enough storage available. 
  2449.  -1        LPEX cannot find the file. 
  2450.  -4        Not an LPEX macro file or file greater than 64k bytes. 
  2451.  
  2452.  
  2453. ΓòÉΓòÉΓòÉ 4.37. MARK ΓòÉΓòÉΓòÉ
  2454.  
  2455. Set up or find position mark. 
  2456.  
  2457. MARK sets up a new position mark or finds an existing mark. Marks are not saved 
  2458. with the document. A mark saves an element and position and is not tied to the 
  2459. character occupying the position. If characters are subsequently deleted before 
  2460. the marked position there is no change to the mark. SPLITJOIN and BLOCK may 
  2461. affect the mark; in the case of SPLITJOIN SPLIT the mark will remain on the 
  2462. first element after the split. If on a FIND the element is currently shorter 
  2463. than the position of the original mark the cursor is placed immediately to the 
  2464. right of the element (which may be on the first character of the next element). 
  2465.  
  2466.  Syntax:   MARK [SET] [FIND] [CLEAR] name 
  2467.  
  2468.  Parameters: 
  2469.  
  2470.     SET       assign a specified name to a mark 
  2471.  
  2472.     FIND      to find a specified mark 
  2473.  
  2474.     CLEAR     to clear a specified mark 
  2475.  
  2476.     name      the name to be assigned to the mark 
  2477.  
  2478.  Return codes: 
  2479.  
  2480.  -1        document is empty - nothing to mark or find 
  2481.  -2        name not specified 
  2482.  -3        invalid parameter 
  2483.  -8        not enough storage 
  2484.  -9        too many parameters 
  2485.  1         mark not found (name is unknown) 
  2486.  2         name was already in use - now overridden 
  2487.  3         mark refers to an element that has been deleted 
  2488.  
  2489.  
  2490. ΓòÉΓòÉΓòÉ 4.38. MSG ΓòÉΓòÉΓòÉ
  2491.  
  2492. Displays text in the message window. 
  2493.  
  2494. MSG displays the text string supplied in the message window. 
  2495.  
  2496.  Syntax:   MSG text 
  2497.  
  2498.  Parameters: text - the message to be displayed 
  2499.  
  2500.  Return codes: 
  2501.  
  2502.  -1        no message text supplied 
  2503.  
  2504.  
  2505. ΓòÉΓòÉΓòÉ 4.39. MULT ΓòÉΓòÉΓòÉ
  2506.  
  2507. Issue a series of commands. 
  2508.  
  2509. MULT issues series of commands, as delimited by the first non-blank character 
  2510. of the parameter string. Processing will stop if a negative return code is 
  2511. returned or if no documents are available. Each command is issued as a call to 
  2512. LXI. 
  2513.  
  2514. For example: 
  2515.  
  2516. MULT ;QUERY ACTIONLIST; SET ACTIONS ON; SET DIAG ON
  2517.  
  2518. displays the list of assigned keys in the message window and then turns both 
  2519. SET ACTIONS and SET DIAG ON. 
  2520.  
  2521.  Syntax:   MULT command command [command] [command] 
  2522.  
  2523.  Parameters: command - a series of commands to be issued in sequence 
  2524.  
  2525.  Return codes: 
  2526.  
  2527.  -10       routine not found 
  2528.  -11       error loading routine 
  2529.  1         a command returned a positive code 
  2530.  
  2531.  Other negative codes as returned by the called routine or macro. Other 
  2532.  positive codes as returned by the last command or macro. 
  2533.  
  2534.  
  2535. ΓòÉΓòÉΓòÉ 4.40. NEXT ΓòÉΓòÉΓòÉ
  2536.  
  2537. Move current position to next object. 
  2538.  
  2539. NEXT moves the current position to the next element. Specification of 
  2540. parameters allows selection of the type of element. VISIBLE, if specified, must 
  2541. be the first parameter and will ensure that the element moved to will be 
  2542. visible. 
  2543.  
  2544.  Syntax:   NEXT [VISIBLE] [ELEMENT/SAME/ABOVE/BELOW  /LEVEL n/CLASS c/WORD] 
  2545.  
  2546.  Parameters: 
  2547.  
  2548.     VISIBLE   moves to the next visible element 
  2549.  
  2550.               and one of the following: 
  2551.  
  2552.     ELEMENT   moves to the next structural element (default) 
  2553.  
  2554.     SAME      moves to next element at same level (or above) or, if none is 
  2555.               found, to the next element at a lower level 
  2556.  
  2557.     ABOVE     next element at level higher than current 
  2558.  
  2559.     BELOW     next element at level below current (effectively next formatted 
  2560.               element not at same level as current) 
  2561.  
  2562.     LEVEL n   next element of level n 
  2563.  
  2564.     CLASS c   next element of class c 
  2565.  
  2566.     WORD      next word 
  2567.  
  2568.  Return codes: 
  2569.  
  2570.  -1        invalid object specified 
  2571.  1         no matching next object found 
  2572.  
  2573.  
  2574. ΓòÉΓòÉΓòÉ 4.41. OPENCLOSE ΓòÉΓòÉΓòÉ
  2575.  
  2576. Add or delete a blank element. 
  2577.  
  2578. If the parameter OPEN is not specified, OPENCLOSE deletes the current element 
  2579. if it is blank, and sets the current position to the first non-blank of the 
  2580. following element. If the content of the current element is not blank, or OPEN 
  2581. is specified, a new element consisting of a single blank is added, with the 
  2582. current position set to the same as the first non-blank in the previous 
  2583. element, or the current cursor position if blank.  If the current element has 
  2584. FLOW set, however, no attempt to follow indentation in this way is made, and 
  2585. only a single blank is used for the content of the new element. 
  2586.  
  2587.  Syntax:   OPENCLOSE [OPEN] 
  2588.  
  2589.  Parameters: 
  2590.  
  2591.     OPEN      open a new element even if the current element is a blank 
  2592.               element. 
  2593.  
  2594.  Return codes: 
  2595.  
  2596.  -5        document is read-only 
  2597.  -8        insufficient storage available 
  2598.  
  2599.  
  2600. ΓòÉΓòÉΓòÉ 4.42. PRC ΓòÉΓòÉΓòÉ
  2601.  
  2602. Emphasis parser for C (and C++) programs. PRC is an emphasis parser for C 
  2603. programs. It is called by the C.LXL macro (when a file with a .C or extension 
  2604. is reading into LPEX by LOAD). It is also called for live parsing when a C 
  2605. program is being edited. The default for PRC is CURRENT. 
  2606.  
  2607. Emphasis consists of setting the fonts used to display an element and the 
  2608. classes associated with each element. No changes are made to the content or 
  2609. formatting of data.  Keywords, comments, quoted strings and other C tokens are 
  2610. recognized and set to different fonts. It will also give each element a level, 
  2611. so individual functions become subgroups. 
  2612.  
  2613. Each specified element is assigned one or more of the following classes: 
  2614.  
  2615.  BRACE     element contains a left or right brace 
  2616.  CODE      element contains some C code 
  2617.  COMMENT   element contains a comment 
  2618.  ERROR     element contains a C error 
  2619.  FUNCTION  element is the start of a C function 
  2620.  OPENCOMMENT element contains an unfinished comment 
  2621.  SEMICOLON element contains a semicolon 
  2622.  SPACE     element consists entirely of blanks 
  2623.  
  2624.  Each character in the file is assigned a font character.  The font characters 
  2625.  are as follows: 
  2626.  
  2627.  A         alphanumeric - variable names 
  2628.  C         comments 
  2629.  E         errors 
  2630.  K         C keywords 
  2631.  L         literals - quoted strings 
  2632.  N         numbers 
  2633.  P         preprocessor keywords 
  2634.  S         symbols 
  2635.  _         layout spaces 
  2636.  
  2637.  Syntax:   PRC [ALL/CURRENT/REPARSE] 
  2638.  
  2639.  Parameters: 
  2640.  
  2641.     ALL       parse entire document, doing necessary initialization such as 
  2642.               setting classes and fonts 
  2643.  
  2644.     REPARSE   parse the entire document, without any initialization 
  2645.  
  2646.     CURRENT   parse the current element only and any others that are affected 
  2647.               by the changes (default) 
  2648.  
  2649.  Return codes: 
  2650.  
  2651.  -1        invalid parameter 
  2652.  -5        document is read-only 
  2653.  -8        insufficient memory 
  2654.  
  2655.  
  2656. ΓòÉΓòÉΓòÉ 4.43. PRESERVE ΓòÉΓòÉΓòÉ
  2657.  
  2658. Save document settings for later restore. 
  2659.  
  2660. PRESERVE saves the document status until the next RESTORE command. 
  2661.  
  2662.  Syntax:   PRESERVE 
  2663.  
  2664.  Return codes: 
  2665.  
  2666.  -1        parameter passed where none required 
  2667.  
  2668.  
  2669. ΓòÉΓòÉΓòÉ 4.44. PREV ΓòÉΓòÉΓòÉ
  2670.  
  2671. Move current position to previous object. 
  2672.  
  2673. PREV moves the current position to the previous object. The default moves to 
  2674. the previous element. Specification of parameters allows selection of the type 
  2675. of element. VISIBLE, if specified, must be the first parameter and will ensure 
  2676. that the element moved to will be visible. 
  2677.  
  2678.  Syntax:   PREV [VISIBLE] [ELEMENT/SAME/ABOVE/BELOW  /LEVEL n/CLASS c/WORD] 
  2679.  
  2680.  Parameters: 
  2681.  
  2682.     VISIBLE   move to the previous visible element (optional) 
  2683.  
  2684.               and any one of the following: 
  2685.  
  2686.     ELEMENT   moves to the previous element (default) 
  2687.  
  2688.     SAME      moves to the previous element at same level (or above) or if none 
  2689.               to the previous element at a lower level 
  2690.  
  2691.     ABOVE     moves to the previous element at a higher level 
  2692.  
  2693.     BELOW     moves to the previous element at level below 
  2694.  
  2695.     LEVEL n   moves to the previous element of level n 
  2696.  
  2697.     CLASS c   moves to the previous element of class c 
  2698.  
  2699.     WORD      moves to the previous word (delimited by specials) 
  2700.  
  2701.  Return codes: 
  2702.  
  2703.  -1        invalid object specified 
  2704.  1         no previous object that matches was found 
  2705.  
  2706.  
  2707. ΓòÉΓòÉΓòÉ 4.45. PRGML ΓòÉΓòÉΓòÉ
  2708.  
  2709. Parser for GML marked documents. 
  2710.  
  2711. PRGML invokes the GML parser to parse, reformat and classify part or all of the 
  2712. current GML document. The classes set up by this routine on its first call are 
  2713. ANNOTATE, COMMENT, HEADER, REPRESENT, SCRIPT, TEXT, and MARKUP, STARTMARKUP, 
  2714. ENDMARKUP. 
  2715.  
  2716. Additional user markup classes may be added to the markup table but these must 
  2717. not be confused with any other classes the user adds to the CLASSES after the 
  2718. initial parse. These classes cannot be used interchangeably. User markup 
  2719. classes can only be used within the parsing process. 
  2720.  
  2721. The font values are not set up by PRGML but by the appropriate load macro. The 
  2722. fonts used are: 
  2723.  
  2724.  *         symbol font 1 
  2725.  #         symbol font 2 
  2726.  @         symbol font 3 
  2727.  %         symbol font 4 
  2728.  <         SGML font 
  2729.  A         normal text 
  2730.  B         bold 
  2731.  C         comments 
  2732.  G         char graphics 
  2733.  I         italic 
  2734.  J         bold italic 
  2735.  M         markup 
  2736.  Q         quoted string 
  2737.  R         roman 
  2738.  S         script 
  2739.  T         annotations 
  2740.  X         examples 
  2741.  
  2742.  The tables read on first call determine the meaning of tags, and the symbols 
  2743.  which are set. 
  2744.  
  2745.  Syntax:   PRGML [ALL / LOCAL / ONE] [NOSUB] [NOSYM] [NOSTOPS] [NOREP] [PARA] 
  2746.            [SHORT x] [DELIMS x / SDEL] [MARKUP m] [SYMBOL s] [RIGID] [TEST] 
  2747.            [REFRESH m] [LIST] [TIME] 
  2748.  
  2749.  Parameters: 
  2750.  
  2751.     ALL       parses the entire document 
  2752.  
  2753.     LOCAL     parses local content from last structural element to the next 
  2754.               (default) 
  2755.  
  2756.     ONE       processes only the current element 
  2757.  
  2758.               followed by none or more of options below: 
  2759.  
  2760.     NOSUB     turns off shorthand substitution (implied by ALL) 
  2761.  
  2762.     NOSYM     turns off symbol substitution and does not set standard symbols 
  2763.               on the first call 
  2764.  
  2765.     NOSTOPS   causes the parser to bypass the checking for end of sentences, 
  2766.               thereby supressing the double blank insertion between sentences. 
  2767.  
  2768.     NOREP     tag representations are excluded from the document during editing 
  2769.  
  2770.     PARA      sentences within paragraphs are flowed together. The default is 
  2771.               to start sentences on a new line if entered such that the 
  2772.               sentence ends at the end of a line. 
  2773.  
  2774.     SHORT x   specifies the escape character to be used for shorthand (default 
  2775.               "). Valid short-hand sequences are defined in the markup file. 
  2776.               Use NOSUB to turn off shorthand. The character following the 
  2777.               double-quote indicates the data to be inserted. This may be a 
  2778.               tag, a symbol, or a piece of text. If it is a tag, then it may 
  2779.               require an ending tag, in which case the next double-quote in the 
  2780.               element will be replaced by the appropriate end-tag. 
  2781.               Substitutions have a maximum length of 15 characters. 
  2782.  
  2783.     DELIMS x  specifies the tag delimiters (left, right and end) to be used. 
  2784.               The string x must be 3 characters long. The default value is 
  2785.               :e (standard IBM GML). <>/ would specify the default SGML 
  2786.               delimiters (see SDEL option below). 
  2787.  
  2788.     SDEL      is a short way of writing DELIMS <>/. It makes the parser use 
  2789.               SGML delimiters < > and / instead of the GML versions :  and e. 
  2790.               For more details see the GML.LXL macro and the SIMDOC.MKP markup 
  2791.               table. SDEL will force the RIGID option defined below. 
  2792.  
  2793.     MARKUP m  sets the tag file name to m.MKP 
  2794.  
  2795.     SYMBOL s  sets the symbol file name to s.SYM 
  2796.  
  2797.     RIGID     specifies that tags which are multiline tags are treated as such 
  2798.               regardless of content - the tag ending character must be used, 
  2799.               although a tag start character will be recognised as the start of 
  2800.               a new tag. 
  2801.  
  2802.     TEST      requests messages about tags and is normally only useful for ALL 
  2803.               or LOCAL. 
  2804.  
  2805.     TIME      requests timings taken for the parser to perform the following 
  2806.               functions 
  2807.  
  2808.        Finding the markup table. 
  2809.        Loading the markup table. 
  2810.        Finding the symbols table. 
  2811.        Loading the symbols table 
  2812.        The actual initial parse. 
  2813.  
  2814.     REFRESH m is a special service call which causes PRGML to discard an old 
  2815.               copy of markup table m and load a new one in its place. This 
  2816.               allows a table to be edited within LPEX and the new version used 
  2817.               without having to quit and re-enter LPEX. 
  2818.  
  2819.     LIST      causes PRGML to list the names of the current loaded markup 
  2820.               tables. 
  2821.  
  2822.  Return codes: 
  2823.  
  2824.  -1        invalid parameter 
  2825.  -2        error in MARKUP table 
  2826.  -3        parsing stack overflow 
  2827.  -4        error in SYMBOL table 
  2828.  -5        document is read-only 
  2829.  -8        insufficient memory 
  2830.  
  2831.  
  2832. ΓòÉΓòÉΓòÉ 4.45.1. Live Parsing Editor tag table for the PRGML parser. ΓòÉΓòÉΓòÉ
  2833.  
  2834. The format of the entries in this table is as follows.  Note that the entries 
  2835. MUST be sorted in ascending ASCII order.  Blank lines and lines starting with 
  2836. an asterisk are ignored.  Column alignment is recommended but is not required. 
  2837.  
  2838. Token 
  2839.  
  2840. *---------------------<   8  >--------------------------------
  2841. *1        2 3 4 5 6 7 abcdefgh  9 10 11                  12 13
  2842. *-------------------------------------------------------------
  2843.  
  2844.   1. Name of the tag. 
  2845.  
  2846.      This is the generic identifier of the tag.  Both start and end tags (if 
  2847.      allowed) should be included, the latter with an end-tag character (e.g. 
  2848.      "e" for IBM GML). 
  2849.  
  2850.   2. Tag type: 
  2851.  
  2852.      This describes the rules governing the tag and its content (if any. The 
  2853.      content is any text between it and its end-tag that not the content of 
  2854.      some other tag.  One of the following types must be selected: 
  2855.  
  2856.     -         Tag has content, which is not to be formatted (i.e., lines should 
  2857.               not be flowed together). 
  2858.  
  2859.     Y         Tag has content, which should be formatted (i.e. lines may be 
  2860.               flowed together). 
  2861.  
  2862.     C         Tag has content; it will be formatted (or not) in the same way as 
  2863.               the tag outside it. 
  2864.  
  2865.     N         Tag with no content (an empty tag). 
  2866.  
  2867.     T         Tag with Text On Same Line (TOSL tag.  This is treated like tag 
  2868.               type "-", with an implicit end-tag at the end of the line. 
  2869.  
  2870.     M         Modifier tag -- sets formatting (flowing) ON and may change the 
  2871.               font of following content. 
  2872.  
  2873.     X         Modifier tag -- sets formatting (flowing) OFF and may change the 
  2874.               font of following content. 
  2875.  
  2876.   3. Font to be used for the tag itself. 
  2877.  
  2878.   4. Font of any content.  Set to "-" if no content is expected, or to "?" to 
  2879.      inherit the font from previous tag content. 
  2880.  
  2881.   5. End-tag. 
  2882.  
  2883.      Set to "Y" if this is an end-tag, 
  2884.  
  2885.   6. Required end. 
  2886.  
  2887.     Set to "Y" if a matching end-tag is expected (required), 
  2888.  
  2889.     Set to "O" if a matching end-tag is expected (required), 
  2890.  
  2891.     Set to "-" if it is no end-tag associated. 
  2892.  
  2893.     An optional end tag is required only if text is found before a tag which 
  2894.     does not have a required end tag. 
  2895.  
  2896.   7. Inline tag.  "Y" indicates that this is a tag (such as those used for 
  2897.      emphasis or quotation) which is used in the middle of text. 
  2898.  
  2899.      Inline tags have special GML rules for the adding of blanks at the ends of 
  2900.      input lines (for example, an inline end-tag at the end of a line gets a 
  2901.      blank added; an inline start-tag at the end of a line does not).  Use "-" 
  2902.      for all other tags. 
  2903.  
  2904.   8. Formatting flags.  These cause the corresponding SET FORMAT command to be 
  2905.      applied to the element for this tag (start tag or end-tag). ABSOLUTE, 
  2906.      BEFORE, and AFTER are selected by setting the appropriate flag and 
  2907.      providing the value in columns 9, 9, or 10 respectively. 
  2908.  
  2909.      These flags should all be either 0 or 1 (no blanks): 
  2910.  
  2911.                a ... Absolute
  2912.                b ... Flow
  2913.                c ... Before
  2914.                d ... After
  2915.                e ... Prespace
  2916.                f ... Postspace
  2917.                g ... Break
  2918.                h ... Final
  2919.  
  2920.      Note:  FORMAT SPILL and SOLID are set by the parser as needed. 
  2921.  
  2922.   9. Formatting value (for Absolute or Before). 
  2923.  
  2924.      Only used if the ABSOLUTE or the BEFORE flag is set.  Otherwise set to 0 
  2925.  
  2926.  10. Formatting value (for After). 
  2927.  
  2928.      Only used if the AFTER flag is set.  Otherwise set to 0. 
  2929.  
  2930.  11. Tag representation.  This is a maximum of 30 characters of data that will 
  2931.      be used for the representation of the tag.  This will be added as an 
  2932.      element of class REPRESENT (before an end- tag or after all other tags). 
  2933.      Use "_" for any blanks needed, or just a single "_" if no representation 
  2934.      is required. 
  2935.  
  2936.  12. Heading flag. This determines if the tag (and possibly what follows) is to 
  2937.      be given the HEADER class: 
  2938.  
  2939.     Y         tag is a heading. Following  elements will also be classified as 
  2940.               heading if tag requires an end-tag (which will terminate the 
  2941.               heading) or if this is a TOSL (text-on-same-line) tag in which 
  2942.               case the text will also be class header 
  2943.  
  2944.     N         tag and following elements inherit setting from previous element 
  2945.               ("-" or " " has same effect) 
  2946.  
  2947.  13. Additional user CLASS names for markup. 
  2948.  
  2949.      A maximum of 30 characters can be used. Use "_" to separate the classes. 
  2950.      LPEX will convert to blanks. 
  2951.  
  2952.      Each class given MUST appear in the list #CLASSES entry. 
  2953.  
  2954.  For shorthand "tags" (e.g. start with "), tags are identified by Y or N for 
  2955.  token 2; those needing an end-tag have Y for token 5. 
  2956.  
  2957.  Actual data to be substituted (max 15 characters) is token 11. 
  2958.  User classes in addition to the standard parser list 
  2959.  
  2960.  This list must contain ALL classes given in column 13 and each class in the 
  2961.  list can be seperated from the next either by a blank or by an underscore. 
  2962.  LPEX will convert underscores to blanks. 
  2963.  
  2964.  Remove the * of #CLASSES and change userclasslist to your list. 
  2965.  
  2966.  Note:  The #CLASSES must start in column 1 of the line. 
  2967.  
  2968.  
  2969. ΓòÉΓòÉΓòÉ 4.46. PRIMITIVE ΓòÉΓòÉΓòÉ
  2970.  
  2971. Performs a primitive function on data. 
  2972.  
  2973. PRIMITIVE provides a way of invoking a keyboard function on the data. 
  2974.  
  2975. For example: 
  2976.  
  2977. SET ACTION.ENTER ;TRIGGER;PRIMITIVE NEWLINE
  2978.  
  2979. will cause the Enter key to carry out a parse even when the cursor does not 
  2980. move off the current element. 
  2981.  
  2982. The list below shows the functions available and the key to which they are 
  2983. assigned by default. 
  2984.  
  2985.  Syntax:   PRIMITIVE function [n] 
  2986.  
  2987.  Parameters: 
  2988.  
  2989.     function  one of the following: 
  2990.  
  2991.        Function               Default Key Assignment -- description 
  2992.  
  2993.  
  2994.        BEGINELEMENT           n/a -- first character position of element. 
  2995.        BEGINLINE              Home -- first character position of line. 
  2996.        CHAR c                 n/a -- replace/insert char at current position. 
  2997.        CURSORDOWN             CursorDown -- move cursor down one line. 
  2998.        CURSORLEFT             CursorLeft -- move cursor left one character 
  2999.                               position. 
  3000.        CURSORRIGHT            CursorRight -- move cursor right one character 
  3001.                               position. 
  3002.        CURSORUP               CursorUp -- move cursor up one line. 
  3003.        DELETECHAR             Delete -- delete current character. 
  3004.        ENDELEMENT             n/a -- position after last character. 
  3005.        ENDLINE                End -- position at end of line. 
  3006.        ESCAPEKEY              Alt-x -- process next character as entered. 
  3007.        INSERTCHAR c           n/a -- insert character before current character 
  3008.        NEWLINE                Enter -- move cursor to beginning of next line. 
  3009.        NEXTTAB                Tab -- move cursor to next tab position to the 
  3010.                               right. 
  3011.        NULL                   n/a 
  3012.        PREVIOUSTAB            Backtab -- move cursor to previous tab position 
  3013.                               to the right. 
  3014.        REPLACECHAR c          n/a -- replace current character with character. 
  3015.        RUBOUT                 Backspace -- move character left one character 
  3016.                               and delete the character at this position. 
  3017.        SETCURSOR              BUTTON1DOWN -- set the cursor position to the 
  3018.                               character at the current position of the pointer 
  3019.                               device. 
  3020.        SETPOINTER             n/a -- set the pointer device position to the 
  3021.                               character at the current cursor position. 
  3022.        TOGGLECOMMAND          Shift-F9 -- open the dialog to issue a command. 
  3023.        TOGGLEINSERT           Ins -- toggle the mode between inserting ON and 
  3024.                               OFF. 
  3025.        TOGGLEMESSAGE          Esc -- toggle betweeen the current document-view 
  3026.                               and the message windows. 
  3027.        TRUNCATE               Ctrl-Del -- delete the characters from the 
  3028.                               current character position to the end of the 
  3029.                               formatted line. 
  3030.  
  3031.                               For CHAR, INSERTCHAR or REPLACECHAR, c may either 
  3032.                               be any single character (expressed as a letter or 
  3033.                               3 decimal digits or an x followed by two 
  3034.                               hexadecimal digits) or a string enclosed in 
  3035.                               single or double quotes. 
  3036.  
  3037.     n         the repetition count 
  3038.  
  3039.  Return codes: 
  3040.  
  3041.  -1        invalid parameter (unknown or missing parameter) 
  3042.  
  3043.  
  3044. ΓòÉΓòÉΓòÉ 4.47. PRREXX ΓòÉΓòÉΓòÉ
  3045.  
  3046. Emphasis parser for macros. 
  3047.  
  3048. PRREXX is an emphasis parser for macros. This command will add the fonts and 
  3049. classes defined below to elements of the current document. It will also give 
  3050. each element a level, so that individual functions become subgroups. No change 
  3051. is made to the content or formatting of the data. 
  3052.  
  3053. For each element specified, PRREXX will set one or more of the following 
  3054. classes: 
  3055.  
  3056.  CODE, COMMENT, ERROR, LABEL, OPENCOMMENT, SPACE 
  3057.  
  3058.  and set a fonts string containing these symbolic fonts: 
  3059.  
  3060.  A         alphanumeric - variable names 
  3061.  C         comments 
  3062.  E         errors 
  3063.  H         hexadecimal strings 
  3064.  K         REXX keywords 
  3065.  L         literals - quoted strings 
  3066.  N         numbers 
  3067.  S         specials 
  3068.  :         labels 
  3069.  _         layout spaces 
  3070.  
  3071.  Syntax:   PRREXX [ALL/CURRENT/PARSE] 
  3072.  
  3073.  Parameters: one of the following: 
  3074.  
  3075.     ALL       parses the entire document, and does any necessary initialization 
  3076.  
  3077.     CURRENT   parses only the current element and any others that are affected 
  3078.               by the changes (default) 
  3079.  
  3080.     REPARSE   parses the entire document, without doing any initialization 
  3081.  
  3082.  Return codes: 
  3083.  
  3084.  -1        invalid parameter 
  3085.  -5        document is read-only 
  3086.  -8        insufficient memory 
  3087.  
  3088.  
  3089. ΓòÉΓòÉΓòÉ 4.48. PURGE ΓòÉΓòÉΓòÉ
  3090.  
  3091. Purge pending messages. 
  3092.  
  3093. PURGE throws away some or all retained messages. If no parameter is specified, 
  3094. all messages will be purged. 
  3095.  
  3096.  Syntax:   PURGE [n] 
  3097.  
  3098.  Parameters: n - number of messages to be discarded 
  3099.  
  3100.  Return codes: 
  3101.  
  3102.  -1        invalid argument - not a positive number 
  3103.  1         no messages to purge 
  3104.  
  3105.  
  3106. ΓòÉΓòÉΓòÉ 4.49. QQUIT ΓòÉΓòÉΓòÉ
  3107.  
  3108. Unconditional quit from current document. 
  3109.  
  3110. QQUIT permits quick quit from the current document. All elements of the 
  3111. document are deleted and the document itself is then deleted. This action is 
  3112. unconditional.  A safe (protected) QUIT is available.  Any pending messages for 
  3113. the document are displayed on the screen. 
  3114.  
  3115.  Syntax:   QQUIT 
  3116.  
  3117.  Return codes: 
  3118.  
  3119.  -3        attempt was made to leave while trigger processing 
  3120.  -9        parameter passed where none required 
  3121.  
  3122.  
  3123. ΓòÉΓòÉΓòÉ 4.50. QUERY ΓòÉΓòÉΓòÉ
  3124.  
  3125. Displays the current values of specified settings. If the value of an item is 
  3126. null or blanks then <null> or <one blank> or <n blanks> will be displayed. 
  3127.  
  3128.  Syntax:   QUERY list 
  3129.  
  3130.  Parameters: list - one or more of the items which may be found in the help 
  3131.            index (F11) under the entry for QUERY Commands. 
  3132.  
  3133.  Return codes: 
  3134.  
  3135.  - 1       invalid item found, processing stops 
  3136.  
  3137.   ACTION.key                    command at logical key
  3138.   ACTIONBAR.item[.subitem]      user-defined actionbar options
  3139.   ACTIONBARID.item[.subitem]    if of actionbar menu option
  3140.   ACTIONBARLIST                 user-defined pull-down menus
  3141.   ACTIONLIST                    displays logical keys doing actions
  3142.   ACTIONS                       action keys
  3143.   ALARM                         alarm at next screen display
  3144.   AUTOBLANKS                    add blanks when elements joined
  3145.   AUTOCHANGES                   changes since last (auto)save
  3146.   AUTOCHECK                     automatic checkpointing
  3147.   AUTOCOUNT                     number of changes before autosave
  3148.   AUTONAME                      autosave name
  3149.   AUTONEXT                      time (secs) before next autosave
  3150.   AUTOPARSE                     automatic parsing
  3151.   AUTOSTOP                      stop at end of element or execute command
  3152.   AUTOSYMBOLS                   automatic substitution of symbols
  3153.   AUTOTIME n                    time (minutes) before autosave
  3154.  
  3155.   BACKGROUND                    background character
  3156.   BASEFONT                      default font for element
  3157.   BEEP ON/OFF/INVERSE           alarm sounding
  3158.   BEEPLENGTH                    default alarm length
  3159.   BEEPTONE                      default alarm frequency
  3160.   BLOCKDOC                      document containing current block
  3161.   BLOCKEND                      end of current marked block
  3162.   BLOCKLENGTH                   number of elements/chars in block
  3163.   BLOCKSHOW                     show by FONT.BLOCK or colour inversion
  3164.   BLOCKSTART                    start of block (0 if not string)
  3165.   BLOCKTYPE                     the nature of the current marked block
  3166.   BOUND                         display range high bound
  3167.   BROWSE                        casual overwriting
  3168.  
  3169.   CHANGES                       document changes (alteration) count
  3170.   CLASS                         element class
  3171.   CLASSES                       element classes known for document
  3172.   COMMANDCHECK                  exit when command issued
  3173.   COMPACT                       blank lines formatting
  3174.   CONTENT                       data content of an element
  3175.   CONTEXT                       include high-level context
  3176.   COUNTRY                       NLS information about country
  3177.   CREATING                      exit when creating an element
  3178.   CURSORCOL                     cursor column number
  3179.   CURSORPOS                     cursor position beyond element
  3180.   CURSORROW                     cursor row number
  3181.  
  3182.   DBCS.option                   DBCS checking rules
  3183.   DBCSRANGE                     ranges of SBCS reserved codepoints
  3184.   DEFAULT                       as for SET but also set as default
  3185.   DEFAULTS                      apply the established defaults
  3186.   DELETING                      exit when deleting an element
  3187.   DEPTH                         display range depth (range)
  3188.   DIAG                          debug messages
  3189.   DIRECTORY                     current directory
  3190.   DISPDEPTH                     display depth
  3191.   DISPWIDTH                     display width
  3192.   DOCLIST                       list of current document numbers
  3193.   DOCNUM                        number of current document
  3194.   DOCTYPE                       document type, used for SAVE
  3195.   DOCUMENTS                     number of documents in memory
  3196.   DRIVE                         current drive
  3197.  
  3198.   ELEMENT                       number of current element
  3199.   ELEMENTS                      number of elements in document
  3200.   ENVIRONMENT                   version, CPU type and so forth
  3201.   EXCLUDE                       classes to exclude from display
  3202.  
  3203.   FACE.username                 user-defined font name
  3204.   FACELIST                      list of user-defined typeface names
  3205.   FILL                          filler character
  3206.   FINDHISTORY                   number of findings to remember
  3207.   FLOW                          formatting flow bound
  3208.   FOCUS.x                       focus line of display
  3209.   FONT.x                        attributes for a given font
  3210.   FONTLIST                      list of fonts currently set
  3211.   FONTS                         font content of an element
  3212.   FONTSIZE                      size of characters for a document window
  3213.   FORMAT                        format settings (various)
  3214.   FORMATTER                     document formatting
  3215.   FORMWIDTH                     formatting width
  3216.   FRAME                         (Non PM) document frame characters
  3217.   FULLPARSE                     command for full(re) parse
  3218.  
  3219.   GLOBAL.name                   global variable value
  3220.   GLOBALLIST                    global variable names
  3221.  
  3222.   HELPFONTSIZE                  (OS/2 1.1) size of characters for the help window
  3223.   HELPLIB                       help library names
  3224.   HELPWINDOW                    (OS/2 1.1) visibility of help window
  3225.   HELPWINDOWPOS                 (OS/2 1.1) help window position and size
  3226.   HIGHLIGHT                     display classes in highlight font
  3227.   HISTORY                       number of checkpoint generations
  3228.   HORIZSCROLL                   Increment for horizontal scroll
  3229.  
  3230.   IDLETIME                      idle seconds before autosave
  3231.   IMPMACRO                      implied MACRO commands
  3232.   IMPSET                        implied SET commands
  3233.   INCLUDE                       classes included for display
  3234.   INDENT                        indentation factor
  3235.   INSERTING                     insert before/after or replace at cursor
  3236.  
  3237.   KEY.key                       logical key at physical key
  3238.   KEYLIST                       list of defined keys
  3239.  
  3240.   LASTFIND                      last argument to FIND command
  3241.   LASTKEY                       last key obtained via KEYREAD
  3242.   LASTLINE                      last line obtained via LINEREAD
  3243.   LASTUNDO                      last UNDO generation undone
  3244.   LENGTH                        length of current element
  3245.   LEVEL                         true level of current element
  3246.   LINEBREAK                         mode for ending of lines in file
  3247.   LINEREAD.item                 title or promt for lineread
  3248.   LINKED                        list of currently linked external commands
  3249.   LIST.item                     extended query (various)
  3250.   LOADEDMACROS                  query the LPEX macros loaded
  3251.   LPATH                         search path for macros
  3252.  
  3253.   MARK.name                     find mark position
  3254.   MARKLIST                      list of marks set in document
  3255.   MAXWINDOWPOS                  position and size of a maximised document
  3256.   MENUACTIVE                    enable or disable an LPEX menu item
  3257.   MENUCHECK                     check or uncheck an LPEX menu item
  3258.   MESSAGELINE                   control message display in doc window
  3259.   MESSAGES                      display of messages
  3260.   MODES                         mode content of an element
  3261.   MSGDEPTH                      maximum number of displayed messages
  3262.   MSGFONTSIZE                   size of characters for the main window
  3263.   MSGWIDTH                      width of the message box
  3264.   MSGWINDOW                     change visibility of message window
  3265.   MSGWINDOWID                   obtain the message window handle
  3266.   MSGWINDOWPOS                  message window position and size
  3267.  
  3268.   NAME                          document name
  3269.   NOBLANKS                      save file with trailing blanks removed
  3270.   NOSAVE                        do not allow SAVE of this document
  3271.  
  3272.   OPENLIST                      display filelist on initial display of OPEN/GET dialog
  3273.   OVERFONT.n                    overlay font for the screen
  3274.   OVERHANG                      formatting flowed elements overhang
  3275.   OVERLAY.n                     overlay text for the screen
  3276.  
  3277.   PAD                           pad character
  3278.   PARENT                        set parentage of LPEX windows
  3279.   PARSER                        native command for live parsing
  3280.   PENDING                       element pending live parsing
  3281.   POSITION                      character position in element
  3282.   PROFILES                      profiles to be used
  3283.   PROTECT                       classes to protect from overtyping
  3284.  
  3285.   RAWTEXT                       returns full unsubstituted text
  3286.   READONLY                      prevent any changes
  3287.   RECALL                        command recall options
  3288.   RESOLVE.command               resolution of command
  3289.   REXX                          use of REXX interpreter
  3290.  
  3291.   SCREEN                        summary of screen characteristics
  3292.   SECONDS                       time since .LPEX started
  3293.   SHOW                          indicate if element for show
  3294.   SHOWCURRENT                   current element visibility
  3295.   SHOWS                         display of show elements
  3296.   SIDESCROLL                    offset of leftmost visible column
  3297.   SPACE                         space character
  3298.   SPILL                         formatting width for spillable elements
  3299.   STATUSLINE                    control status line display in doc window
  3300.   SUBGROUP                      local group only display
  3301.   SYMBOL.string                 symbol values
  3302.   SYMBOLLIST                    symbol names
  3303.   SYMBOLS                       display specials as symbols
  3304.   SYNONYM.name                  synonym values
  3305.   SYNONYMLIST                   synonym names
  3306.  
  3307.   TABS                          tab positions
  3308.   TRIGPOS                       char position used by TRIGGER
  3309.  
  3310.   UNPROTECT                     unprotect element with listed classes
  3311.  
  3312.   VERSION                       LPEX version identification
  3313.   VIEW.n                        information about a specific view
  3314.   VIEWHELP                      custom help library names
  3315.   VIEWLIST                      list of views of the current document
  3316.   VIEWNAME                      name of current view
  3317.   VIEWNUM                       number of the current element
  3318.  
  3319.   WINDOW                        visibility of current document view window
  3320.   WINDOWID                      obtain the window handle of the current document view
  3321.   WINDOWMAP                     usage of window rows
  3322.   WINDOWPOS                     view window position and size
  3323.   WINDOWSHOW                    say when document window is to be first shown
  3324.   WORDCHARS                     define the valid characters for an LPEX WORD
  3325.   WRAP                          element wrap
  3326.  
  3327.  
  3328. ΓòÉΓòÉΓòÉ 4.51. QUIT ΓòÉΓòÉΓòÉ
  3329.  
  3330. Quit current document if unchanged. 
  3331.  
  3332. QUIT quits the current document (if no changes made) by calling QQUIT. If 
  3333. changes have been made a warning message is displayed and the QUIT does not 
  3334. take place. 
  3335.  
  3336.  Syntax:   QUIT 
  3337.  
  3338.  Return codes: 
  3339.  
  3340.  -1        changes have been made - quit not done 
  3341.  -9        parameter passed where none required 
  3342.  
  3343.  
  3344. ΓòÉΓòÉΓòÉ 4.52. QUITVIEW ΓòÉΓòÉΓòÉ
  3345.  
  3346. Quit current view. 
  3347.  
  3348. QUITVIEW quits from the current view and makes the next view current. If the 
  3349. current view is the only view an error is generated. 
  3350.  
  3351.  Syntax:   QUITVIEW 
  3352.  
  3353.  Return codes: 
  3354.  
  3355.  -3        attempt to leave view while trigger processing 
  3356.  -4        attempt to leave only view 
  3357.  -9        parameter passed where none required 
  3358.  
  3359.  
  3360. ΓòÉΓòÉΓòÉ 4.53. REPEAT ΓòÉΓòÉΓòÉ
  3361.  
  3362. Repeat command n times. 
  3363.  
  3364. REPEAT executes any LPEX command repeatedly, ending after the given number of 
  3365. executions or when a non-zero return code is found. The command is executed by 
  3366. the LXI command, so synonym resolution and so forth, is applied. 
  3367.  
  3368.  Syntax:   REPEAT n command 
  3369.  
  3370.  Parameters: 
  3371.  
  3372.     n         the number of repetitions required 
  3373.  
  3374.     command   the command to repeat 
  3375.  
  3376.  Return codes as from command. 
  3377.  
  3378.  
  3379. ΓòÉΓòÉΓòÉ 4.54. RESET ΓòÉΓòÉΓòÉ
  3380.  
  3381. Reset selected settings to initial values. 
  3382.  
  3383. RESET resets selected settings to their initial (default) values. The settings 
  3384. affected are: 
  3385.  
  3386. Setting    Default value
  3387.  
  3388. BOUND          0
  3389. BROWSE         OFF
  3390. COMPACT        OFF
  3391. CONTEXT        ON
  3392. DEPTH          100
  3393. EXCLUDE        none
  3394. FLOW           100
  3395. FORMATTER      OFF
  3396. FORMWIDTH      72
  3397. IMPMACRO       OFF
  3398. IMPSET         ON
  3399. INCLUDE        all
  3400. INDENT         2
  3401. LASTFIND       NULL
  3402. OVERHANG       1
  3403. PROTECT        none
  3404. READONLY       OFF
  3405. SHOWCURRENT    OFF
  3406. SHOWS          ON
  3407. SPILL          72
  3408. SUBGROUP       OFF
  3409. SYMBOLS        OFF
  3410. WRAP           ON
  3411.  
  3412.  Syntax:   RESET 
  3413.  
  3414.  Return codes: 
  3415.  
  3416.  -9        parameter passed where none required 
  3417.  
  3418.  
  3419. ΓòÉΓòÉΓòÉ 4.55. RESTORE ΓòÉΓòÉΓòÉ
  3420.  
  3421. Restore document status. 
  3422.  
  3423. RESTORE replaces the settings saved by the last PRESERVE with the values they 
  3424. had when the PRESERVE was executed.  The settings are: 
  3425.  
  3426.  BOUND 
  3427.  BROWSE 
  3428.  COMPACT 
  3429.  CONTEXT 
  3430.  DEPTH 
  3431.  EXCLUDE 
  3432.  FLOW 
  3433.  FORMATTER 
  3434.  FORMWIDTH 
  3435.  IMPMACRO 
  3436.  IMPSET 
  3437.  INCLUDE 
  3438.  INDENT 
  3439.  LASTFIND 
  3440.  OVERHANG 
  3441.  PROTECT 
  3442.  READONLY 
  3443.  SHOWCURRENT 
  3444.  SHOWS 
  3445.  SPILL 
  3446.  SUBGROUP 
  3447.  SYMBOLS 
  3448.  WRAP 
  3449.  
  3450.  Syntax:   RESTORE 
  3451.  
  3452.  Return codes: 
  3453.  
  3454.  -2        no PRESERVE previously issued for this document 
  3455.  -9        parameter passed where none required 
  3456.  
  3457.  
  3458. ΓòÉΓòÉΓòÉ 4.56. SAVE ΓòÉΓòÉΓòÉ
  3459.  
  3460. Save document to an OS/2 file. 
  3461.  
  3462. SAVE saves a document as an OS/2 file. If no name is specified, the document 
  3463. name is used. If no parameters are given, SAVE overwrites an existing file (if 
  3464. any). If parameters are given, a check is made for an existing file. If one 
  3465. does exist a message asking if you wish to overwrite the file is displayed. 
  3466.  
  3467. SAVE writes out data according to default formatting rules unless: 
  3468.  
  3469.   1. An .LXS macro with a name matching the DOCTYPE value exists. In this case 
  3470.      the macro may change any of the formatting settings protected by PRESERVE 
  3471.      for specific formatting effects as the document is saved. PRESERVE and 
  3472.      RESTORE preserve the current formatting setting during saving and restore 
  3473.      them afterwards. The .LXS macro is called by default because SAVE is 
  3474.      listed in the PROFILES setting. 
  3475.  
  3476.   2. The /ASSHOWN option is specified. No RESET is done and no macro is called. 
  3477.      The saved file is exactly the same as the display. Considerable data may 
  3478.      be omitted if, for example, a SAVE /ASSHOWN is done while viewing the 
  3479.      Contents of a GML document. 
  3480.  
  3481.  Syntax:   SAVE [filename] [/ASSHOWN] [/LINEBREAK ttt] 
  3482.  
  3483.  Parameters: 
  3484.  
  3485.     filename  the name for the saved file 
  3486.  
  3487.               Note - the filenames PRN, LPTn and COMn are reserved for saving 
  3488.               the file directly to a printer or plotter, for example LPT1. If 
  3489.               such a name is specified the file is saved to the file 
  3490.               LPEXLPEX.TMP and then printed. 
  3491.  
  3492.     /ASSHOWN  save in the layout as seen on screen (may be abbreviated to /AS) 
  3493.  
  3494.     /lb (or /linebreak) - SAVE file with line breaks according to line break 
  3495.               mode ttt. 
  3496.  
  3497.               Currently supported modes are listed in  SET LINEBREAK 
  3498.  
  3499.  Return codes: 
  3500.  
  3501.  -1        document is empty 
  3502.  -2        file already exists and name given 
  3503.  -3        invalid option (not /ASSHOWN) 
  3504.  -4        uneven PRESERVE/RESTORE 
  3505.  -6        error writing file or renaming temporary file 
  3506.  -7        document protected by  NOSAVE  being set ON 
  3507.  -9        too many parameters 
  3508.  -10       command not found, error in .LXS macro 
  3509.  1         one or more lines truncated 
  3510.  
  3511.  Return codes from PRESERVE, RESTORE or a macro may be returned. 
  3512.  
  3513.  
  3514. ΓòÉΓòÉΓòÉ 4.57. SCROLL ΓòÉΓòÉΓòÉ
  3515.  
  3516. Scroll n lines or columns in the window. 
  3517.  
  3518. SCROLL scrolls up or down some displayed lines, or left or right across some 
  3519. displayed columns. The current position is moved to the character and element 
  3520. vertically above or below the original position. Data scrolls down one line by 
  3521. default. 
  3522.  
  3523.  Syntax:   SCROLL [UP/DOWN/LEFT/RIGHT ] [SCREEN] [n] 
  3524.  
  3525.  Parameters: 
  3526.  
  3527.     UP        scrolls up the data 
  3528.  
  3529.     DOWN      scrolls down the data 
  3530.  
  3531.     LEFT      scrolls data to the left 
  3532.  
  3533.     RIGHT     scrolls data to the right 
  3534.  
  3535.     SCREEN    scrolls the number of lines on the screen minus n (or scrolls one 
  3536.               line, whichever is greater). 
  3537.  
  3538.     n         scrolls n lines (or if SCREEN is used, subtract n from SCREEN 
  3539.               count). Default is one. 
  3540.  
  3541.  Examples: 
  3542.  
  3543.  SCROLL    scrolls down one line 
  3544.  SCROLL DOWN 10 scrolls down 10 lines 
  3545.  SCROLL SCREEN 2 scrolls down screensize minus two lines 
  3546.  
  3547.  Return codes: 
  3548.  
  3549.  -1        invalid parameter 
  3550.  -2        scroll not possible - insufficient data lines 
  3551.  -4        document is empty or no elements are visible 
  3552.  1         no movement took place 
  3553.  
  3554.  
  3555. ΓòÉΓòÉΓòÉ 4.58. SET ΓòÉΓòÉΓòÉ
  3556.  
  3557. Set internal state of set commands. 
  3558.  
  3559. SET sets various internal states for flags, fonts, formatting and so forth. 
  3560.  
  3561.  Syntax:   SET item string 
  3562.  
  3563.  Parameters: 
  3564.  
  3565.     item      the item to be set 
  3566.  
  3567.     string    according to item selected 
  3568.  
  3569.  Return codes: 
  3570.  
  3571.  -1        invalid item 
  3572.  -2        invalid parameter for item 
  3573.  -3        too many words for item or string too long 
  3574.  -5        document is read-only 
  3575.  1         synonym or symbol previously existed 
  3576.  
  3577.   ACTION.key command            assign command to logical key
  3578.   ACTIONBAR.item.subitem cmd    user-defined actionbar options
  3579.   ACTIONS ON/OFF/INVERSE        enable action keys
  3580.   ALARM ON/OFF/INVERSE          sound alarm at next screen display
  3581.   AUTOBLANKS ON/OFF/INVERSE     add blanks when elements joined
  3582.   AUTOCHANGES n                 changes since last (auto)save
  3583.   AUTOCHECK ON/OFF/INVERSE      enable automatic checkpointing
  3584.   AUTOCOUNT n                   number of changes before autosave
  3585.   AUTONAME filename             autosave name
  3586.   AUTOPARSE ON/OFF/INVERSE      enable automatic parsing
  3587.   AUTOSTOP ON/OFF/cmd           stop at end of element or execute command
  3588.   AUTOSYMBOLS ON/OFF/INVERSE    automatic substitution of symbols
  3589.   AUTOTIME n                    time (minutes) before autosave
  3590.  
  3591.   BACKGROUND char               background character
  3592.   BASEFONT char                 default font for element
  3593.   BEEP ON/OFF/INVERSE           allow ALARM to sound
  3594.   BEEPLENGTH duration           default alarm length
  3595.   BEEPTONE tone                 default alarm frequency
  3596.   BLOCKSHOW FONT/INVERT         FONT.BLOCK or colour inversion
  3597.   BOUND n                       display range high bound
  3598.   BROWSE ON/OFF/INVERSE         prevents casual overwriting
  3599.  
  3600.   CHANGES n                     document changes (alteration) count
  3601.   CLASS classlist               element class
  3602.   CLASSES classlist             element classes known for document
  3603.   COMMANDCHECK command          exit when command issued
  3604.   COMPACT ON/OFF/INVERSE        exclude formatting blank lines
  3605.   CONTENT element text          data content of an element
  3606.   CONTEXT ON/OFF/INVERSE        include high-level context
  3607.   CREATING command              exit when creating an element
  3608.   CURSORCOL                     cursor column number
  3609.   CURSORPOS                     cursor position beyond element
  3610.   CURSORROW                     cursor row number
  3611.  
  3612.   DBCS                          DBCS checking rules
  3613.   DBCSRANGE                     ranges of SBCS reserved codepoints
  3614.   DEFAULT                       as for SET but also set as default
  3615.   DEFAULTS                      apply the established defaults
  3616.   DELETING                      exit when deleting an element
  3617.   DEPTH n                       display range depth (range)
  3618.   DIAG ON/OFF/INVERSE/option    debug messages
  3619.   DIRECTORY name                current directory
  3620.   DISPDEPTH n                   display depth
  3621.   DISPWIDTH n                   display width
  3622.   DOCTYPE name                  document type, used for SAVE
  3623.   DRIVE letter                  current drive
  3624.  
  3625.   EXCLUDE classlist             classes to exclude from display
  3626.  
  3627.   FACE.user family face         user-defined font name
  3628.   FILL char                     filler character
  3629.   FINDHISTORY n                 number of findings to remember
  3630.   FLOW n                        formatting flow bound
  3631.   FOCUS.x n                     focus line of display
  3632.   FONT.x attribs                attributes for a given font
  3633.   FONTS string                  font content of an element
  3634.   FONTSIZE w h/SMALL/LARGE      size of characters for a document window
  3635.   FORMAT list                   element format settings (various)
  3636.   FORMATTER ON/OFF/INVERSE      enable document formatting
  3637.   FORMWIDTH n                   formatting width
  3638.   FRAME characters              (Non PM) document frame characters
  3639.   FULLPARSE command             command for full(re) parse
  3640.  
  3641.   GLOBAL.name value             assign a value to a global variable
  3642.  
  3643.   HELPFONTSIZE w h/SMALL/LARGE  (OS/2 1.1) size of characters for the help window
  3644.   HELPLIB library ...           help library names
  3645.   HELPWINDOW                    (OS/2 1.1) help window visibility
  3646.   HELPWINDOWPOS x y [cx cy]     (OS/2 1.1) help window position and size
  3647.   HIGHLIGHT classlist           display classes in highlight font
  3648.   HISTORY n                     limit the number of checkpoint generations
  3649.   HORIZSCROLL n                 Increment for horizontal scroll
  3650.  
  3651.   IDLETIME secs                 idle seconds before autosave
  3652.   IMPMACRO ON/OFF/INVERSE       implied MACRO commands
  3653.   IMPSET ON/OFF/INVERSE         implied SET commands
  3654.   INCLUDE classlist             classes to include for display
  3655.   INDENT n                      indentation factor
  3656.   INSERTING ON/OFF/INVERSE/AFTER insert before/after or replace
  3657.  
  3658.   KEY.key lkeyname              assign logical key to physical key
  3659.  
  3660.   LASTFIND options              last argument to FIND command
  3661.   LINEBREAK mode                    mode for ending of lines in file
  3662.   LINEREAD.item text            title or promt for lineread
  3663.   LPATH string                  set search path for macros
  3664.  
  3665.   MAXWINDOWPOS x y cx cy        position and size of a maximised document
  3666.   MENUACTIVE.menuid            enable or disable an LPEX menu item
  3667.   MENUCHECK.menuid             check or uncheck an LPEX menu item
  3668.   MESSAGELINE ON/OFF/DYNamic    control message display in doc window
  3669.   MESSAGES ON/OFF/INVERSE/IMM   control display of messages
  3670.   MSGDEPTH n                    maximum number of displayed messages
  3671.   MSGFONTSIZE w h/SMALL/LARGE   size of characters for the main window
  3672.   MSGWIDTH n                    width of the message box
  3673.   MSGWINDOW                     visibility of message window
  3674.   MSGWINDOWPOS x y [cx cy]      message window position and size
  3675.  
  3676.   NAME string                   set the document name
  3677.   NOBLANKS ON/OFF/INVERSE       save file with trailing blanks removed
  3678.   NOSAVE ON/OFF/INVERSE         do not allow SAVE of this document
  3679.  
  3680.   OPENLIST ON/OFF/INVERSE       display filelist on initial display of OPEN/GET dialog
  3681.   OVERFONT.n string             overlay font for the screen
  3682.   OVERHANG n                    formatting flowed elements overhang
  3683.   OVERLAY.n string              overlay text for the screen
  3684.  
  3685.   PAD char                      set the pad character
  3686.   PARENT windowhandle           set parentage of LPEX windows
  3687.   PARSER command                native command for live parsing
  3688.   PENDING trigger               element pending live parsing
  3689.   POSITION n                    character position in element
  3690.   PROFILES list                 profiles to be used
  3691.   PROTECT classlist             classes to protect from overtyping
  3692.  
  3693.   READONLY ON/OFF/INVERSE       prevent any changes
  3694.   RECALL n opts                 set command recall options
  3695.   REXX ON/OFF/INVERSE           enable use of REXX interpreter
  3696.  
  3697.   SHOW ON/OFF/INVERSE           indicate if element for show
  3698.   SHOWCURRENT ON/OFF/INVERSE    force current element to be visible
  3699.   SHOWS ON/OFF/INVERSE          enable display of show elements
  3700.   SIDESCROLL n                  offset of leftmost visible column
  3701.   SPACE char                    space character
  3702.   SPILL n                       formatting width for spillable elements
  3703.   STATUSLINE ON/OFF             control status line display in doc window
  3704.   SUBGROUP ON/OFF/INVERSE       display local group only
  3705.   SYMBOL.string char value      set up a symbol
  3706.   SYMBOLS ON/OFF/INVERSE        display specials as symbols
  3707.   SYNONYM.name                  value of a synonym
  3708.  
  3709.   TABS n n/EVERY m              set tab positions
  3710.   TRIGPOS n                     char position used by TRIGGER
  3711.  
  3712.   UNPROTECT classlist           unprotect element with listed classes
  3713.  
  3714.   VIEWHELP libraries            names of custom help libraries
  3715.   VIEWNAME name                 name of current view
  3716.  
  3717.   WINDOW option                 visibility of current document view window
  3718.   WINDOWPOS x y [cx cy]         view window position and size
  3719.   WINDOWSHOW LOAD/PARSE/USER    say when document window is to be first shown
  3720.   WORDCHARS                     (to be defined)
  3721.   WORDCHARS characters          define the valid characters for an LPEX WORD
  3722.   WRAP ON/OFF/INVERSE           wrap elements
  3723.  
  3724.  
  3725. ΓòÉΓòÉΓòÉ 4.59. SPLITJOIN ΓòÉΓòÉΓòÉ
  3726.  
  3727. Split an element or join two elements. 
  3728.  
  3729. SPLITJOIN either splits an element or joins two elements together. The current 
  3730. element is split into two elements if the SPLIT option is specified, or if no 
  3731. option is specified and there is a non-blank character under or to the right of 
  3732. the cursor. The start of the second element becomes the current position. 
  3733.  
  3734. The JOIN option joins the following element (if any) to the end of the current 
  3735. element. A join is also carried out if no option is specified and there are 
  3736. only blank characters to the right of the current position. 
  3737.  
  3738. There are two exceptions to the above. SPLITJOIN treats a sequence of flowed 
  3739. elements as though they are continuous text. SPLITJOIN ignores SHOW elements. 
  3740.  
  3741. If the cursor is beyond the end of the element, SPLITJOIN will first pad the 
  3742. element with the PAD character, regardless of whether a split or join is to be 
  3743. done. 
  3744.  
  3745.  Syntax:   SPLITJOIN [SPLIT] [JOIN] 
  3746.  
  3747.  Parameters: 
  3748.  
  3749.     SPLIT     splits the current element into two elements 
  3750.  
  3751.     JOIN      joins two element together 
  3752.  
  3753.  Return codes: 
  3754.  
  3755.  -5        document is read-only 
  3756.  -1        document is empty 
  3757.  1         no next element to join 
  3758.  
  3759.  
  3760. ΓòÉΓòÉΓòÉ 4.60. SSHOW ΓòÉΓòÉΓòÉ
  3761.  
  3762. Display current views. 
  3763.  
  3764. SSHOW displays the current data and overlays for a view. This is useful within 
  3765. macros where it is necessary to display the current screen state before 
  3766. requesting input. 
  3767.  
  3768.  Syntax:   SSHOW 
  3769.  
  3770.  Return codes: 
  3771.  
  3772.  -9        parameter passed where none required 
  3773.  
  3774.  
  3775. ΓòÉΓòÉΓòÉ 4.61. SUBSTITUTE ΓòÉΓòÉΓòÉ
  3776.  
  3777. Cause symbol substitution. 
  3778.  
  3779. SUBSTITUTE causes symbol substitution on demand, instead of automatically as it 
  3780. would if AUTOSYMBOLS is ON. If no parameter is specified the whole document is 
  3781. scanned. A parameter of 1 scans only the current element. 
  3782.  
  3783.  Syntax:   SUBSTITUTE [1] 
  3784.  
  3785.  Parameters: 1 - scan only the current element. 
  3786.  
  3787.  Return codes: 
  3788.  
  3789.  -1        invalid parameter 
  3790.  1         no symbols currently defined 
  3791.  2         no symbols found 
  3792.  
  3793.  
  3794. ΓòÉΓòÉΓòÉ 4.62. TOP ΓòÉΓòÉΓòÉ
  3795.  
  3796. Move to the top of the document. 
  3797.  
  3798. TOP moves the current position to the first character of the first element in 
  3799. the document. 
  3800.  
  3801.  Syntax:   TOP 
  3802.  
  3803.  Return codes: 
  3804.  
  3805.  -9        parameter passed where none required 
  3806.  1         already at top of document 
  3807.  
  3808.  
  3809. ΓòÉΓòÉΓòÉ 4.63. TRIGGER ΓòÉΓòÉΓòÉ
  3810.  
  3811. Trigger live parsing of pending elements, or do a FULLPARSE if FULLPARSE is 
  3812. specified. 
  3813.  
  3814. TRIGGER FULLPARSE causes a complete reparse of the document if a SET FULLPARSE 
  3815. commnad has been issued previously. 
  3816.  
  3817. TRIGGER causes live parsing of pending elements. This routine calls the live 
  3818. parser (set by SET PARSER) for each element on the pending list. This list 
  3819. contains elements whose content has changed since the last trigger processing 
  3820. (or since the SET PARSER command).  Elements may also be added to (or deleted 
  3821. from) the pending list by the SET PENDING command. 
  3822.  
  3823. Elements changed by the parser are added to the list of changed elements with a 
  3824. special type, so it is not necessary to switch off the parser during trigger 
  3825. processing. The special type (PARSER) can be checked using an embedded post 
  3826. parser process. 
  3827.  
  3828.  Syntax:   TRIGGER [FULLPARSE] 
  3829.  
  3830.  Return codes: 
  3831.  
  3832.  -1        invalid (non-null) parameter string 
  3833.  -2        failure in parser command 
  3834.  1         no changed elements since last live parsing call 
  3835.  2         no parser to call (SET PARSER unavailable) or no FULLPARSE to call ( 
  3836.            SET FULLPARSE unavailable) 
  3837.  
  3838.  
  3839. ΓòÉΓòÉΓòÉ 4.64. UNDO ΓòÉΓòÉΓòÉ
  3840.  
  3841. Undo one or more sets of document changes. 
  3842.  
  3843. UNDO undoes one or more sets of recent changes, checkpointed by the CHECK 
  3844. command or SET AUTOCHECK ON. UNDO itself takes a checkpoint and changes made by 
  3845. UNDO are recorded after this point. To undo the last UNDO, use the command UNDO 
  3846. 1. 
  3847.  
  3848. If no parameters are specified, UNDO will undo a set of changes from the 
  3849. current state of the document. The next UNDO undoes a further set of changes 
  3850. and so on. When UNDO has undone all available changes, its continued use will 
  3851. work back towards the original state of the document. Eventually the cycle will 
  3852. be repeated. 
  3853.  
  3854. If UNDO is used with a numeric parameter, this gives the count of generations 
  3855. to be undone. Changes made by the UNDO command are not added to the pending 
  3856. trigger list for live parsing. 
  3857.  
  3858.  Syntax:   UNDO [n] 
  3859.  
  3860.  Parameters: n - undo n  generations of changes 
  3861.  
  3862.  Return codes: 
  3863.  
  3864.  -5        document is read-only 
  3865.  -3        processing error - invalid recording 
  3866.  -1        invalid parameter 
  3867.  1         no changes recorded, so nothing undone 
  3868.  
  3869.  
  3870. ΓòÉΓòÉΓòÉ 4.65. UNLINK ΓòÉΓòÉΓòÉ
  3871.  
  3872. Unlink a previously linked external command. 
  3873.  
  3874. LPEX external commands are dynamically linked the first time they are invoked. 
  3875. Once invoked, an external command remains linked until it's removed with an 
  3876. UNLINK command or LPEX is terminated. While linked, the disk file LXxxx.DLL 
  3877. (where xxx is the name of the command) is locked by OS/2 and cannot be erased, 
  3878. modified or renamed.  The QUERY LINKED command will list the commands currently 
  3879. linked. If a lxexit() procedure has been supplied with the external command it 
  3880. is called to allow any necessary clean up of the interfaces used by the 
  3881. command. 
  3882.  
  3883.  Syntax:   UNLINK command 
  3884.  
  3885.  Parameters: command - the command to be unlinked. 
  3886.  
  3887.  Return codes: 
  3888.  
  3889.  -2        no command given 
  3890.  1         command not found 
  3891.  
  3892.  
  3893. ΓòÉΓòÉΓòÉ 5. LXPM and External Commands ΓòÉΓòÉΓòÉ
  3894.  
  3895. LPEX external commands are provided as separate DLLs. 
  3896.  
  3897.  
  3898. ΓòÉΓòÉΓòÉ 5.1. LXPM ΓòÉΓòÉΓòÉ
  3899.  
  3900. Start up LPEX. 
  3901.  
  3902. The LXPM command starts up LPEX. It can optionally specify filenames and 
  3903. startup options. If the instance of LPEX is already active, the LXPM command 
  3904. will merely pass its parameters across to the active program, there is only 
  3905. ever one copy of LPEX for each named instance. See the option /instance 
  3906. described below. 
  3907.  
  3908. Any filenames may contain drive and absolute or relative path information. If 
  3909. global filename characters are used, each file found satisfying the 
  3910. specification is opened, up to the system limit of 30 files/views. 
  3911.  
  3912. If any filename specification contains leading, embedded, or trailing blanks 
  3913. then the filename must be enclosed with " characters. 
  3914.  
  3915. Options: 
  3916.  
  3917.  /ni (or /noinit) - do not run PROFINIT.LX 
  3918.  /np (or /nopro) - do not run PROFILE.LX 
  3919.  /ns (or /nosys) - do not run PROFSYS.LX 
  3920.  /lb (or /linebreak) - load file according to line break mode ttt. 
  3921.  
  3922.            Currently supported modes are listed in  SET LINEBREAK. 
  3923.  /as (or /asis) - do not run xxx.LXL (or xxx.LXS when a SAVE is issued). 
  3924.  /in instancename (or /instance instancename) - create an instance of LPEX 
  3925.            identified by instancename or, if the instance already exists pass 
  3926.            the parameters to that instance.  If this option is not specified 
  3927.            the default instance is created/used. The AUTONAME is computed from 
  3928.            the first four bytes of the instance name. 
  3929.  /dt vvv (or /doctype vvv) - set DOCTYPE to vvv 
  3930.  /cm xxx (or /command xxx) - issue command xxx after loading files 
  3931.  
  3932.  The LXPM command can be issued in several ways: 
  3933.  
  3934.  o from the Desktop Manager 
  3935.  o from the File Manager (using Associate) 
  3936.  o from an OS/2 session (either full-screen or windowed) 
  3937.  o from a command file 
  3938.  o from another application 
  3939.  
  3940.  
  3941. ΓòÉΓòÉΓòÉ 5.2. DIR ΓòÉΓòÉΓòÉ
  3942.  
  3943. Display a directory as a document. 
  3944.  
  3945. DIR displays a directory as a document. If no parameter is specified, the 
  3946. current directory (*.*) is displayed.  The filename must be changed from .DIR 
  3947. (which is not a legal OS/2 filename) using SET NAME before it can be saved.  If 
  3948. APPEND is used, entries are added to any existing directory file. Files cannot 
  3949. be selected directly from the list for editing. 
  3950.  
  3951.  Syntax:   DIR [specification] [APPEND] 
  3952.  
  3953.  Parameters: 
  3954.  
  3955.     specification - the specification of the directory file 
  3956.  
  3957.     APPEND    - append new directory to existing file 
  3958.  
  3959.  Return codes: 
  3960.  
  3961.  -2        incorrect parameter specified (use APPEND only) 
  3962.  1         no files found 
  3963.  
  3964.  
  3965. ΓòÉΓòÉΓòÉ 5.3. DRAW ΓòÉΓòÉΓòÉ
  3966.  
  3967. Draw using some of the ASCII box characters. 
  3968.  
  3969. This command will let you draw boxes and other rectangular shapes using the 
  3970. arrow keys. While the DRAW command is active, an overlay line will be displayed 
  3971. on the screen. 
  3972.  
  3973. To draw lines, just move the cursor keys around the screen, and a line will be 
  3974. drawn behind the cursor. To move without drawing, use the Alt key in 
  3975. conjunction with the cursor keys.  Alternatively, press the Ins key - the 
  3976. cursor will become a block to indicate this. To return to DRAW mode press the 
  3977. Ins key again - the cursor will then turn back to a line. 
  3978.  
  3979. While you are in DRAW mode, most of the keys will be disabled. However the 
  3980. Space Bar, Delete, Page Up, Page Down and Enter will act as normal. Any invalid 
  3981. key will cause a beep. 
  3982.  
  3983. To change the current draw option (see below for details of these) just type a 
  3984. new option, which will be displayed on the DRAW overlay line. 
  3985.  
  3986. To quit DRAW at any time, press the Esc key. The overlay line will be removed 
  3987. to indicate that you have finished. 
  3988.  
  3989. Command format: 
  3990.  
  3991.             +-           -+
  3992.             | 1-4         |
  3993.        DRAW | B or b      |
  3994.             | /character  |
  3995.             +-           -+
  3996.  
  3997. where 1-4 selects one of the four different types of boxes (see below), B (or 
  3998. b) means draw with blanks, and /character means draw with the chosen character. 
  3999.  
  4000. The different boxes are as follows: 
  4001.  
  4002.      Type 1   Type 2   Type 3   Type 4
  4003.      ΓöîΓöÇΓöÇΓö¼ΓöÇΓöÉ   ΓòöΓòÉΓòÉΓòªΓòÉΓòù   +--+-+   ΓûêΓûÇΓûÇΓûêΓûÇΓûê
  4004.      Γöé  Γöé Γöé   Γòæ  Γòæ Γòæ   |  | |   Γûê  Γûê Γûê
  4005.      Γö£ΓöÇΓöÇΓö╝ΓöÇΓöñ   ΓòáΓòÉΓòÉΓò¼ΓòÉΓòú   +--+-+   ΓûêΓûÇΓûÇΓûêΓûÇΓûê
  4006.      Γöé  Γöé Γöé   Γòæ  Γòæ Γòæ   |  | |   Γûê  Γûê Γûê
  4007.      ΓööΓöÇΓöÇΓö┤ΓöÇΓöÿ   ΓòÜΓòÉΓòÉΓò⌐ΓòÉΓò¥   +--+-+   ΓûÇΓûÇΓûÇΓûÇΓûÇΓûÇ
  4008.  
  4009. Note:  These boxes may not be represented correctly in code pages other than 
  4010. 850. 
  4011.  
  4012. Return codes: 
  4013.  
  4014.  -2        invalid DRAW option 
  4015.  -5        document is read only 
  4016.  -8        insufficient memory 
  4017.  
  4018.  
  4019. ΓòÉΓòÉΓòÉ 5.4. SHOWFONT or SHWFNT ΓòÉΓòÉΓòÉ
  4020.  
  4021. Display content of character set. 
  4022.  
  4023. SHOWFONT displays the entire character set for the given font on the screen. 
  4024.  
  4025.  Syntax:   SHOWFONT [fontname/OFF] 
  4026.  
  4027.  Parameters: 
  4028.  
  4029.     fontname  name of the font to be displayed 
  4030.  
  4031.     nothing   show FONT.! (default data font) 
  4032.  
  4033.     OFF       remove the SHOWFONT display 
  4034.  
  4035.  Return codes: 
  4036.  
  4037.  -8        insufficient memory 
  4038.  -10       invalid font name 
  4039.  10        selected font not set 
  4040.  
  4041.  
  4042. ΓòÉΓòÉΓòÉ 6. QUERY and SET Commands ΓòÉΓòÉΓòÉ
  4043.  
  4044. The items which may be queried and/or set are described individually. They may 
  4045. be accessed via the table of contents, under this heading, or the QUERY 
  4046. Commands or SET Commands index entries, or from the QUERY or SET command 
  4047. descriptions. 
  4048.  
  4049.  
  4050. ΓòÉΓòÉΓòÉ 6.1. Default SET Values ΓòÉΓòÉΓòÉ
  4051.  
  4052. Default values for the SET options.  In addition to setting them via the 
  4053. profile and load macros, certain SET options may be remembered in the current 
  4054. PM environment; to be used for future loading of documents or when a new LPEX 
  4055. session is started after closing this session. 
  4056.  
  4057. These options fall into two categories. 
  4058.  
  4059.   1. Those options which can be set even when there is no document opened. 
  4060.      These are the options which apply to the overall LPEX session. 
  4061.  
  4062.   2. Those options which apply to a document. These options are applied 
  4063.      immediately after the document is loaded and before any profiles or load 
  4064.      macros are executed. 
  4065.  
  4066.  The options are either set from the Options pull-down, or by using the SET 
  4067.  DEFAULT command. 
  4068.  
  4069.  If the Options method is used, being saved if the check box Set the system 
  4070.  default is selected during a Change to the option value. If the box is checked 
  4071.  the value is set even if the value has not changed, but not if the SET command 
  4072.  returns an error.  The default can be cleared by checking the box and clearing 
  4073.  the contents of the value. 
  4074.  
  4075.  In either case the saved setting are stored such that settings saved against a 
  4076.  particular INSTANCE of LPEX - see the LXPM 
  4077.  
  4078.  
  4079. ΓòÉΓòÉΓòÉ 6.2. ACTION.key ΓòÉΓòÉΓòÉ
  4080.  
  4081. Assign a command to a logical key. 
  4082.  
  4083. ACTION.key assigns an action to a logical key for the current document only. 
  4084. When the assigned key is pressed, the action will be carried out, providing 
  4085. ACTIONS is ON. The MULT command permits a multiple action to be attached to a 
  4086. key. 
  4087.  
  4088. In many cases the Shift- Alt- Ctrl- can be combined to form further possible 
  4089. combinations. Example C-S-K could be used to call a function to capitalise only 
  4090. the first character of the word whereas C-K capitalises the entire word. 
  4091.  
  4092.  Syntax:   SET ACTION.keyname [command] 
  4093.  
  4094.            or QUERY ACTION.keyname 
  4095.  
  4096.  Parameters: 
  4097.  
  4098.     keyname   - any one of the following: 
  4099.  
  4100.        3 decimal digits defining an ASCII , or extended ASCII  code (for 
  4101.        example 065 = "A") OR 
  4102.  
  4103.        a hexadecimal character code in the form x nn or x nnn (for example x41 
  4104.        = "A") OR 
  4105.  
  4106.        any single character taken as its ASCII  value 
  4107.  
  4108.               c-a      to   c-z         Ctrl-letter keys
  4109.               c-0      to   c-9         Ctrl-number keys
  4110.               a-a      to   a-z         Alt-letter keys
  4111.               a-0      to   a-9         Alt-number keys
  4112.               c-s-a    to   c-s-z       Ctrl-Shift-letter keys
  4113.               a-s-a    to   a-s-z       Alt-Shift-letter keys
  4114.               c-s-a-a  to   c-s-a-z     Ctrl-Shift-Alt-letter keys
  4115.               fn                Function keys
  4116.                                 (but not F1 or F10)
  4117.               s-f1 to s-f12     Shift-Function keys
  4118.               c-f1 to c-f12     Ctrl-Function keys
  4119.               a-f1 to a-f12     Alt-Function keys
  4120.  
  4121.        Normal, Shift- Alt- Ctrl- Ctrl-Shift- Alt-Shift- or Ctrl-Shift-Alt- 
  4122.        with: 
  4123.  
  4124.               buttonNdown       a click on button N
  4125.               buttonNdouble     a double-click on button N
  4126.               buttonNdrag       a mouse movement while button N is down
  4127.                                 (N = 1, 2 or 3)
  4128.  
  4129.        Normal, Alt- Ctrl- or Ctrl-Alt- with: 
  4130.  
  4131.               ESC
  4132.               ENTER
  4133.               TAB
  4134.               BACKTAB
  4135.               BACKSPACE
  4136.  
  4137.        Normal, Shift- Alt- Ctrl- Ctrl-Shift- Alt-Shift- or Ctrl-Shift-Alt- 
  4138.        with: 
  4139.  
  4140.               HOME
  4141.               UP
  4142.               PGUP
  4143.               LEFT
  4144.               RIGHT
  4145.               END
  4146.               DOWN
  4147.               PGDN
  4148.               INS
  4149.               DEL
  4150.  
  4151.        OS/2 Presentation Manager reserves the following keys for special 
  4152.        purposes 
  4153.  
  4154.               f1        (help)
  4155.               f10       (activate action bar)
  4156.               a-f4      (close)
  4157.               a-f5      (restore)
  4158.               a-f6
  4159.               a-f7      (move)
  4160.               a-f8      (size)
  4161.               a-f9      (maximize)
  4162.               a-f10     (minimize)
  4163.               c-esc     (task manager)
  4164.               a-backtab (previous application/window)
  4165.               a-enter
  4166.               a-padenter
  4167.               a-tab     (next application/window)
  4168.               a-esc     (next session)
  4169.  
  4170.     command   - any valid LPEX command, including MULT 
  4171.  
  4172.  
  4173. ΓòÉΓòÉΓòÉ 6.3. ACTIONBAR ΓòÉΓòÉΓòÉ
  4174.  
  4175. Set contents of action bar pull-downs. 
  4176.  
  4177. ACTIONBAR.item.subitem sets the action bar pull-downs by adding the subitem 
  4178. choice to the item pull-down on the action bar. If item is not an existing 
  4179. pull-down, it is created. If no command is given the subitem choice is deleted 
  4180. from the pull-down and if no choices then exist, the item pull-down itself is 
  4181. deleted. For example 
  4182.  
  4183.  SET ACTIONBAR.mine.sound alarm 
  4184.  
  4185.  will cause a pull-down called mine to appear in the action bar.  When this is 
  4186.  pulled down, the choice sound becomes available. When sound is picked, the 
  4187.  alarm sounds. 
  4188.  
  4189.  Syntax:   SET ACTIONBAR.item.subitem [command] 
  4190.  
  4191.            or QUERY ACTIONBAR.item.subitem 
  4192.            - this returns ACTIONBAR.item.subitem command 
  4193.  
  4194.            or QUERY ACTIONBAR.item 
  4195.            - this returns ACTIONBAR.item subitem1 subitem2 (options in the 
  4196.            specified pull-down) 
  4197.  
  4198.  Parameters: 
  4199.  
  4200.     item      - name of menu to be included on action bar 
  4201.     subitem   - word to be added to item pull-down 
  4202.     command   - the action(s) to be executed when the subitem is selected 
  4203.  
  4204.  
  4205. ΓòÉΓòÉΓòÉ 6.4. ACTIONBARID (Query only) ΓòÉΓòÉΓòÉ
  4206.  
  4207. Query the menuid of action bar pull-downs. 
  4208.  
  4209. ACTIONBARID.item queries the id of the actionabr entry itself whilst 
  4210. ACTIONBAR.item.subitem queries the id of the pulldown entry. item and subitem 
  4211. must be specified exactly as it was on the ACTIONBAR 
  4212.  
  4213.  Syntax:   QUERY ACTIONBARID.item.subitem 
  4214.            - this returns the menuid for item.subitem 
  4215.  
  4216.            or QUERY ACTIONBARID.item 
  4217.            - this returns the id for ACTIONBAR.item 
  4218.  
  4219.  Parameters: as for QUERY ACTIONBAR. 
  4220.  
  4221.  
  4222. ΓòÉΓòÉΓòÉ 6.5. ACTIONBARLIST (QUERY only) ΓòÉΓòÉΓòÉ
  4223.  
  4224. List user-defined pull-down menus. 
  4225.  
  4226. ACTIONBARLIST gives a list of the names of all user-defined pull-down menus on 
  4227. the action bar for the current document. 
  4228.  
  4229.  Syntax:   QUERY ACTIONBARLIST 
  4230.            - this returns ACTIONBARLIST item1 item2 (pull-down titles on the 
  4231.            action bar) 
  4232.  
  4233.  
  4234. ΓòÉΓòÉΓòÉ 6.6. ACTIONLIST (QUERY only) ΓòÉΓòÉΓòÉ
  4235.  
  4236. List the logical keys with assigned commands. 
  4237.  
  4238. ACTIONLIST lists the logical keys to which SET ACTION.command has assigned 
  4239. actions.  For details of which commands have been assigned to which keys, use 
  4240. QUERY LIST.ACTION. 
  4241.  
  4242.  Syntax:   QUERY ACTIONLIST 
  4243.  
  4244.  
  4245. ΓòÉΓòÉΓòÉ 6.7. ACTIONS ΓòÉΓòÉΓòÉ
  4246.  
  4247. Enable action keys. 
  4248.  
  4249. ACTIONS ON causes any action assigned to a specific key to be carried out when 
  4250. that key is pressed. If ACTIONS is OFF, the key will return its own value, as 
  4251. if it had not been remapped. 
  4252.  
  4253.  Syntax:   SET ACTIONS ON/OFF/INVERSE 
  4254.            or QUERY ACTIONS 
  4255.  
  4256.  
  4257. ΓòÉΓòÉΓòÉ 6.8. ALARM ΓòÉΓòÉΓòÉ
  4258.  
  4259. Sound alarm on next screen refresh. 
  4260.  
  4261. ALARM ON sounds a tone when the screen is next refreshed. ALARM is 
  4262. automatically set to OFF after the screen has been refreshed. The alarm will 
  4263. only sound if BEEP is ON. 
  4264.  
  4265.  Syntax:   SET ALARM ON/OFF/INVERSE 
  4266.            or QUERY ALARM 
  4267.  
  4268.  
  4269. ΓòÉΓòÉΓòÉ 6.9. AUTOBLANKS ΓòÉΓòÉΓòÉ
  4270.  
  4271. Add mid-element blanks at line ends. 
  4272.  
  4273. AUTOBLANKS ON ensures that a blank is automatically added to the end of a line 
  4274. which finishes in the middle of an element (if a blank has not already been 
  4275. typed). This prevents the accidental joining of words which are separated by 
  4276. the end of a line. 
  4277.  
  4278. Use AUTOBLANKS OFF when the position of blanks is critical or when line ends 
  4279. can be ignored. 
  4280.  
  4281.  Syntax:   SET AUTOBLANKS ON/OFF/INVERSE 
  4282.            or QUERY AUTOBLANKS 
  4283.  
  4284.  
  4285. ΓòÉΓòÉΓòÉ 6.10. AUTOCHANGES ΓòÉΓòÉΓòÉ
  4286.  
  4287. Count of changes since last autosave. 
  4288.  
  4289. AUTOCHANGES gives a count of changes since the last autosave. AUTOCHANGES may 
  4290. be set explicitly to either a higher count to force an autosave or to a lower 
  4291. count to postpone an autosave. 
  4292.  
  4293.  Syntax:   SET AUTOCHANGES [n] 
  4294.            or QUERY AUTOCHANGES 
  4295.  
  4296.  Parameters: n- the number of changes between autosaves (default zero) 
  4297.  
  4298.  
  4299. ΓòÉΓòÉΓòÉ 6.11. AUTOCHECK ΓòÉΓòÉΓòÉ
  4300.  
  4301. Enable automatic checkpointing. 
  4302.  
  4303. AUTOCHECK ON automatically takes checkpoints at various points, for example 
  4304. when the cursor moves to the command line or to a new element. Each check point 
  4305. records a state of the document and it is possible to go back to one of these 
  4306. states with the UNDO command. HISTORY must be set to a positive value for 
  4307. checkpointing to occur. 
  4308.  
  4309. When AUTOCHECK is OFF, checkpoints for UNDO are the responsibility of the user 
  4310. (and are taken by the CHECK command). 
  4311.  
  4312.  Syntax:   SET AUTOCHECK ON/OFF/INVERSE 
  4313.            or QUERY AUTOCHECK 
  4314.  
  4315.  
  4316. ΓòÉΓòÉΓòÉ 6.12. AUTOCOUNT ΓòÉΓòÉΓòÉ
  4317.  
  4318. Number of changes before autosave. 
  4319.  
  4320. AUTOCOUNT determines the number of changes that can be made before the document 
  4321. is automatically saved.  The document will be automatically saved, using the 
  4322. AUTONAME, if the number of changes since the last save or autosave equals or 
  4323. exceeds AUTOCOUNT and no key has been pressed for IDLETIME seconds. 
  4324.  
  4325. Set AUTOCOUNT to zero to prevent autosaving of the document. 
  4326.  
  4327.  Syntax:   SET AUTOCOUNT [n] 
  4328.            or QUERY AUTOCOUNT 
  4329.  
  4330.  Parameters: n- number of changes before autosave. 
  4331.  
  4332.  
  4333. ΓòÉΓòÉΓòÉ 6.13. AUTONAME ΓòÉΓòÉΓòÉ
  4334.  
  4335. Set name for autosave file. 
  4336.  
  4337. AUTONAME is the name under which a document is saved automatically if the 
  4338. AUTOCOUNT or AUTOTIME conditions are met. The default AUTONAME is the 8 
  4339. character hexadecimal equivalent of the window handle underwhich first opened 
  4340. the file. The extension is the extension of the file which is being edited. 
  4341. This method is used to try to minimise the possibility of a duplicate id which 
  4342. using LPEX in a LAN environment. The user can change this name, but it is 
  4343. recommended that this is done prior to the first autosave. 
  4344.  
  4345.  Syntax:   SET AUTONAME filename 
  4346.            or QUERY AUTONAME 
  4347.  
  4348.  Parameters: filename- the name given to the autosave file, including a 
  4349.            relevant extension. A drive and path may be included. 
  4350.  
  4351.  
  4352. ΓòÉΓòÉΓòÉ 6.14. AUTONEXT (QUERY only) ΓòÉΓòÉΓòÉ
  4353.  
  4354. Seconds before next autosave. 
  4355.  
  4356. AUTONEXT gives the time in seconds before the next autosave occurs. When 
  4357. AUTOTIME is set to zero, AUTONEXT will also be zero because no autosave is 
  4358. scheduled. 
  4359.  
  4360.  Syntax:   QUERY AUTONEXT 
  4361.  
  4362.  
  4363. ΓòÉΓòÉΓòÉ 6.15. AUTOPARSE ΓòÉΓòÉΓòÉ
  4364.  
  4365. Resume live parsing. 
  4366.  
  4367. AUTOPARSE is used to resume or suspend live parsing. When AUTOPARSE is OFF 
  4368. pending changed elements are processed before parsing is suspended. AUTOPARSE 
  4369. ON processes pending changed elements after parsing is suspended. 
  4370.  
  4371. AUTOPARSE will automatically be turned OFF if any errors occur during live 
  4372. parsing. 
  4373.  
  4374.  Syntax:   SET AUTOPARSE ON/OFF/INVERSE 
  4375.            or QUERY AUTOPARSE 
  4376.  
  4377.  
  4378. ΓòÉΓòÉΓòÉ 6.16. AUTOSTOP ΓòÉΓòÉΓòÉ
  4379.  
  4380. Stop replacing character at end of element. 
  4381.  
  4382. AUTOSTOP is used to prevent accidental overtyping the content of an element 
  4383. which is flowed to the current element. If OFF is specified, there is no 
  4384. protection. If ON is specified the cursor will not move into the next element 
  4385. and the ALARM will sound. Specifying a command will cause that command to be 
  4386. executed when the cursor reaches the end of the element. A typical command 
  4387. would be SET INSERTING AFTER which would allow typing to continue inserting the 
  4388. text at the end of the current element. 
  4389.  
  4390.  Syntax:   SET AUTOSTOP ON/OFF/INVERSE/command 
  4391.            or QUERY AUTOSTOP 
  4392.  
  4393.  
  4394. ΓòÉΓòÉΓòÉ 6.17. AUTOSYMBOLS ΓòÉΓòÉΓòÉ
  4395.  
  4396. Automatically translate symbols. 
  4397.  
  4398. AUTOSYMBOLS ON automatically translates symbols typed in the data area into 
  4399. their single character representation. This is the default setting. If no 
  4400. parser is handling symbols and AUTOSYMBOLS is OFF the symbols will remain in 
  4401. the data. 
  4402.  
  4403.  Syntax:   SET AUTOSYMBOLS ON/OFF/INVERSE 
  4404.            or QUERY AUTOSYMBOLS 
  4405.  
  4406.  
  4407. ΓòÉΓòÉΓòÉ 6.18. AUTOTIME ΓòÉΓòÉΓòÉ
  4408.  
  4409. Minutes between autosaves. 
  4410.  
  4411. AUTOTIME gives the minutes between autosaves. The document is saved when 
  4412. AUTOTIME minutes have passed if at least one change has been made since the 
  4413. last save or autosave and no key has been pressed for IDLETIME seconds. The 
  4414. document is saved using its AUTONAME. An AUTOTIME of zero will prevent 
  4415. autosaving. 
  4416.  
  4417.  Syntax:   SET AUTOTIME [n] 
  4418.            or QUERY AUTOTIME 
  4419.  
  4420.  Parameters: n- the number of minutes required between autosaves (default zero) 
  4421.  
  4422.  
  4423. ΓòÉΓòÉΓòÉ 6.19. BACKGROUND ΓòÉΓòÉΓòÉ
  4424.  
  4425. Set background character. 
  4426.  
  4427. BACKGROUND sets the character used to fill the area outside the data area. Use 
  4428. SET FONT.BACKGROUND to select the color and highlighting of the background 
  4429. character itself. 
  4430.  
  4431.  Syntax:   SET BACKGROUND char 
  4432.            or QUERY BACKGROUND 
  4433.  
  4434.  Parameters: char - the required fill character or blank or nnn (n=0-9) or xnn 
  4435.            (n=0-9 a-f) 
  4436.  
  4437.  
  4438. ΓòÉΓòÉΓòÉ 6.20. BASEFONT ΓòÉΓòÉΓòÉ
  4439.  
  4440. Default font for current element. 
  4441.  
  4442. BASEFONT sets the default font for the current element. This is the font used 
  4443. if a change is made to the data by overtyping or inserting characters from the 
  4444. keyboard, or if no explicit FONTS string has been specified. 
  4445.  
  4446.  Syntax:   SET BASEFONT char 
  4447.            or QUERY BASEFONT 
  4448.  
  4449.  Parameters: 
  4450.  
  4451.     char      - a pre-determined FONT character or nnn (n=0-9) or xnn (n=0-9 
  4452.               a-f) 
  4453.  
  4454.  
  4455. ΓòÉΓòÉΓòÉ 6.21. BEEP ΓòÉΓòÉΓòÉ
  4456.  
  4457. Enable or disable alarm. 
  4458.  
  4459. BEEP turns the alarm beep on and off. When BEEP is ON any message displayed on 
  4460. the screen will be accompanied by an alarm beep. When BEEP is OFF the ALARM 
  4461. command is disabled. 
  4462.  
  4463.  Syntax:   SET BEEP ON/OFF/INVERSE 
  4464.            or QUERY BEEP 
  4465.  
  4466.  
  4467. ΓòÉΓòÉΓòÉ 6.22. BEEPLENGTH ΓòÉΓòÉΓòÉ
  4468.  
  4469. Default length of alarm. 
  4470.  
  4471. BEEPLENGTH sets the default ALARM duration in hundredths of a second. 
  4472.  
  4473.  Syntax:   SET BEEPLENGTH [duration] 
  4474.            or QUERY BEEPLENGTH 
  4475.  
  4476.  Parameters: duration - a number between zero and 1000 in hundredths of a 
  4477.            second (default 20) 
  4478.  
  4479.  
  4480. ΓòÉΓòÉΓòÉ 6.23. BEEPTONE ΓòÉΓòÉΓòÉ
  4481.  
  4482. Default tone of alarm. 
  4483.  
  4484. BEEPTONE sets the default ALARM tone (in hertz). If BEEPTONE is not set, the 
  4485. default frequency is 440 hertz. 
  4486.  
  4487.  Syntax:   SET BEEPTONE tone 
  4488.            or QUERY BEEPTONE 
  4489.  
  4490.  Parameters: tone- a number in the range 50 through 10,000 (hertz) 
  4491.  
  4492.  
  4493. ΓòÉΓòÉΓòÉ 6.24. BLOCKDOC (QUERY only) ΓòÉΓòÉΓòÉ
  4494.  
  4495. Returns document containing current block. 
  4496.  
  4497. BLOCKDOC returns the DOCNUM of the document containing the current block, or 
  4498. zero if there isn't one. 
  4499.  
  4500.  Syntax:   QUERY BLOCKDOC 
  4501.  
  4502.  
  4503. ΓòÉΓòÉΓòÉ 6.25. BLOCKEND (QUERY only) ΓòÉΓòÉΓòÉ
  4504.  
  4505. Returns end position of block. 
  4506.  
  4507. BLOCKEND gives the end position of a block. If if no block is set, zero is 
  4508. returned. The value returned depends on the type of block set: 
  4509.  
  4510.  Element block returns zero. 
  4511.  
  4512.  Character block returns the position of the last marked character in the last 
  4513.            element of the block. 
  4514.  
  4515.  Rectangular block returns the position of the last marked character for each 
  4516.            marked element. 
  4517.  
  4518.  Syntax:   QUERY BLOCKEND 
  4519.  
  4520.  
  4521. ΓòÉΓòÉΓòÉ 6.26. BLOCKLENGTH (QUERY only) ΓòÉΓòÉΓòÉ
  4522.  
  4523. Number of characters or elements in block. 
  4524.  
  4525. BLOCKLENGTH gives the length of the current block as the number of elements 
  4526. which are participating in the block. For CHARACTER or RECTANGULAR blocks the 
  4527. size of the block in characters must be calculated - element by element for 
  4528. character blocks and as (BLOCKEND-BLOCKSTART+1)*BLOCKLENGTH for rectangular 
  4529. blocks. 
  4530.  
  4531.  Syntax:   QUERY BLOCKLENGTH 
  4532.  
  4533.  
  4534. ΓòÉΓòÉΓòÉ 6.27. BLOCKSHOW ΓòÉΓòÉΓòÉ
  4535.  
  4536. Sets the way a block is shown on the screen. 
  4537.  
  4538. BLOCKSHOW causes the block to be shown using the FONT.BLOCK or by inverting 
  4539. (XORing) the colours of the characters. The latter way preserves some 
  4540. indication of the fonts set characters within the block. 
  4541.  
  4542.  Syntax:   SET BLOCKSHOW FONT/INVERT 
  4543.            or QUERY BLOCKSHOW 
  4544.  
  4545.  Parameters: 
  4546.  
  4547.     FONT      use FONT.BLOCK to show the marked block. 
  4548.  
  4549.     INVERT    show the marked block by XORing the colours. 
  4550.  
  4551.  
  4552. ΓòÉΓòÉΓòÉ 6.28. BLOCKSTART (QUERY only) ΓòÉΓòÉΓòÉ
  4553.  
  4554. Query the start position of a block. 
  4555.  
  4556. BLOCKSTART gives the start position of a currently set block. Zero is returned 
  4557. if no block is set. The value returned depends on the type of block set: 
  4558.  
  4559.  Element block returns zero. 
  4560.  
  4561.  Character block returns the position of the first marked character in the 
  4562.            first element of the block. 
  4563.  
  4564.  Rectangular block returns the position of the first marked character for each 
  4565.            marked element. 
  4566.  
  4567.  Use QUERY BLOCKTYPE to determine if a block exists, as a value of zero 
  4568.  returned by QUERY BLOCKSTART is ambiguous. 
  4569.  
  4570.  Syntax:   QUERY BLOCKSTART 
  4571.  
  4572.  
  4573. ΓòÉΓòÉΓòÉ 6.29. BLOCKTYPE (QUERY only) ΓòÉΓòÉΓòÉ
  4574.  
  4575. Type of block currently set. 
  4576.  
  4577. BLOCKTYPE gives the type of block currently set by returning one of the 
  4578. following values: 
  4579.  
  4580.  CHARACTER the block is a character block 
  4581.  
  4582.  ELEMENT   the block is an element block 
  4583.  
  4584.  RECTANGLE the block is a rectangular block 
  4585.  
  4586.  UNSET     no block is currently set 
  4587.  
  4588.  Syntax:   QUERY BLOCKTYPE 
  4589.  
  4590.  
  4591. ΓòÉΓòÉΓòÉ 6.30. BOUND ΓòÉΓòÉΓòÉ
  4592.  
  4593. Display range low bound. 
  4594.  
  4595. BOUND controls the low bound of elements selected for display. Elements of 
  4596. depth n and above will be displayed. The value of BOUND is the inverse of the 
  4597. structure depth. If CONTEXT is ON, elements higher in the structure than n will 
  4598. be displayed provided they have structural information (such as FORMAT BEFORE, 
  4599. AFTER or ABSOLUTE) specified, to show the global context of the display group. 
  4600. Use SUBGROUP to display only elements that are in the same display group as the 
  4601. current position. 
  4602.  
  4603. The deepest level of the structure to be displayed can be controlled using the 
  4604. DEPTH 
  4605.  
  4606. The value of BOUND automatically extends to include the depth of the current 
  4607. position if the current element is outside the BOUND setting. This occurs only 
  4608. while the condition is detected. 
  4609.  
  4610.  Syntax:   SET BOUND [n] 
  4611.            or QUERY BOUND 
  4612.  
  4613.  Parameters: 
  4614.  
  4615.     n         - the depth number of the required level (default zero) 
  4616.  
  4617.  
  4618. ΓòÉΓòÉΓòÉ 6.31. BROWSE ΓòÉΓòÉΓòÉ
  4619.  
  4620. Display data without allowing changes. 
  4621.  
  4622. BROWSE ON protects a data area from accidental modification by preventing typed 
  4623. changes. However, the file may still be altered by action keys, commands from 
  4624. the command line or a macro. A beep warns that BROWSE is ON if overtyping is 
  4625. attempted. 
  4626.  
  4627.  Syntax:   SET BROWSE ON/OFF/INVERSE 
  4628.            or QUERY BROWSE 
  4629.  
  4630.  
  4631. ΓòÉΓòÉΓòÉ 6.32. CHANGES ΓòÉΓòÉΓòÉ
  4632.  
  4633. Document changes count. 
  4634.  
  4635. CHANGES counts the number of alterations made to a document. The count is 
  4636. incremented by one for every data field (element or part element) altered by 
  4637. typing on the display screen and by one for every command issued interactively 
  4638. which resulted in changes to the document. A macro which makes many alterations 
  4639. will count as one change. 
  4640.  
  4641.  Syntax:   SET CHANGES [n] 
  4642.            or QUERY CHANGES 
  4643.  
  4644.  Parameters: n - number of alterations made to a document 
  4645.  
  4646.  
  4647. ΓòÉΓòÉΓòÉ 6.33. CLASS ΓòÉΓòÉΓòÉ
  4648.  
  4649. Element class. 
  4650.  
  4651. CLASS sets the class(es) to which the current element belongs (such as MARKUP, 
  4652. TEXT, ANNOTATE and so forth). 
  4653.  
  4654.  Syntax:   SET CLASS classlist 
  4655.            or QUERY CLASS 
  4656.  
  4657.  Parameters: classlist - class(es) to which current element belongs 
  4658.  
  4659.  
  4660. ΓòÉΓòÉΓòÉ 6.34. CLASSES ΓòÉΓòÉΓòÉ
  4661.  
  4662. Element classes known for document. 
  4663.  
  4664. CLASSES sets the number and names of classes for the current document. At least 
  4665. one class must always be present - this defaults to the name DATA. SET CLASSES 
  4666. may be used repeatedly to rename the current classes, but once a given number 
  4667. of classes has been set up, the number of classes cannot be reduced. Each word 
  4668. in the list names the next class in sequence, moving from left to right. 
  4669.  
  4670.  Syntax:   SET CLASSES classlist 
  4671.            or QUERY CLASSES 
  4672.  
  4673.  Parameters: classlist - up to thirty words, each naming a class 
  4674.  
  4675.  
  4676. ΓòÉΓòÉΓòÉ 6.35. COMMANDCHECK ΓòÉΓòÉΓòÉ
  4677.  
  4678. Associate a command with the issuing of a command from the Issue Command 
  4679.  
  4680. COMMANDCHECK causes the command to be executed whenever a command is issued 
  4681. from the Issue Command dialog box.  The command must be provided by the user 
  4682. and must return 0 if the subject command is to be permitted or non-zero (but 
  4683. NOT -1) if the command is to be suppressed. The checking routine is called with 
  4684. the command to be checked as the argument string. command can be either a macro 
  4685. or an LPEX external command and must provide the appropriate user information 
  4686. if the command is supporessed. See the provided LXCMDCHK.C and CHKCMD.LX in the 
  4687. EXTRAS directory for examples of such commands. 
  4688.  
  4689.  Syntax:   SET COMMANDCHECK [command] 
  4690.            or QUERY COMMANDCHECK 
  4691.  
  4692.  Parameters: command - An external command, or macro. 
  4693.  
  4694.  
  4695. ΓòÉΓòÉΓòÉ 6.36. COMPACT ΓòÉΓòÉΓòÉ
  4696.  
  4697. Exclude blank formatting lines. 
  4698.  
  4699. COMPACT ON allows additional data to be included on the screen by excluding the 
  4700. blank formatting lines which precede or follow certain elements. COMPACT 
  4701. defaults to OFF. 
  4702.  
  4703.  Syntax:   SET COMPACT ON/OFF/INVERSE 
  4704.            or QUERY COMPACT 
  4705.  
  4706.  
  4707. ΓòÉΓòÉΓòÉ 6.37. CONTENT ΓòÉΓòÉΓòÉ
  4708.  
  4709. Data content of an element. 
  4710.  
  4711. CONTENT changes the content of the character string of the current element. 
  4712. FONTS is reset to the default font for the current element, repeated to the 
  4713. same length as the new content and sets the POSITION, in the element to one. 
  4714.  
  4715.  Syntax:   SET CONTENT [string] 
  4716.            or QUERY CONTENT 
  4717.  
  4718.  Parameters: string - replacement content for current element 
  4719.  
  4720.  
  4721. ΓòÉΓòÉΓòÉ 6.38. CONTEXT ΓòÉΓòÉΓòÉ
  4722.  
  4723. Include or exclude high-level context. 
  4724.  
  4725. CONTEXT ON shows structured elements of a level higher than the level set by 
  4726. BOUND. They are displayed in a special font selected by SET FONT.CONTEXT. 
  4727.  
  4728.  Syntax:   SET CONTEXT ON/OFF/INVERSE 
  4729.            or QUERY CONTEXT 
  4730.  
  4731.  
  4732. ΓòÉΓòÉΓòÉ 6.39. COUNTRY (QUERY only) ΓòÉΓòÉΓòÉ
  4733.  
  4734. Return country-dependent information. 
  4735.  
  4736. COUNTRY gives country-dependent information such as time and date formats, 
  4737. currency symbol and so forth. The total string is 28 characters long and 
  4738. contains items separated by blanks. For full details see the OS/2 Technical 
  4739. Reference Manual. 
  4740.  
  4741.  Syntax:   QUERY COUNTRY 
  4742.  
  4743.  
  4744. ΓòÉΓòÉΓòÉ 6.40. CREATING ΓòÉΓòÉΓòÉ
  4745.  
  4746. Associate a command with the creation of an element. 
  4747.  
  4748. CREATING associates the command given as a parameter with the creation of a new 
  4749. element. Each time a new element is created, but before it is parsed, the 
  4750. command is called, allowing the command to perform some action on or relating 
  4751. to the new element. 
  4752.  
  4753.  Syntax:   SET CREATING [command] 
  4754.            or QUERY CREATING 
  4755.  
  4756.  Parameters: command - An external command, macro or internal command. 
  4757.  
  4758.  
  4759. ΓòÉΓòÉΓòÉ 6.41. CURSORCOL ΓòÉΓòÉΓòÉ
  4760.  
  4761. Column containing cursor. 
  4762.  
  4763. CURSORCOL sets the screen column containing the cursor. The leftmost column of 
  4764. the screen is column one. The column value must not be greater than the 
  4765. rightmost column of the screen. 
  4766.  
  4767.  Syntax:   SET CURSORCOL [n] 
  4768.            or QUERY CURSORCOL 
  4769.  
  4770.  Parameters: n - the screen column at which the cursor is to be positioned. The 
  4771.            column value should not be greater than the rightmost column on the 
  4772.            screen. (Default one) 
  4773.  
  4774.  
  4775. ΓòÉΓòÉΓòÉ 6.42. CURSORPOS ΓòÉΓòÉΓòÉ
  4776.  
  4777. Column containing cursor. 
  4778.  
  4779. CURSORPOS allows the cursor to be positioned beyond the end of an element. This 
  4780. command changes the current position either to be the same as the cursor 
  4781. position (if the offset lies within the element) or immediately beyond the 
  4782. element (if the offset lies outside). 
  4783.  
  4784.  Syntax:   SET CURSORPOS n 
  4785.            or QUERY CURSORPOS 
  4786.  
  4787.  
  4788. ΓòÉΓòÉΓòÉ 6.43. CURSORROW ΓòÉΓòÉΓòÉ
  4789.  
  4790. Row containing cursor. 
  4791.  
  4792. CURSORROW sets the row containing the cursor. The topmost row of the screen is 
  4793. row one. LPEX will adjust the value if necessary so that the cursor position is 
  4794. within the data portion of the screen. 
  4795.  
  4796.  Syntax:   SET CURSORROW [n] 
  4797.            or QUERY CURSORROW 
  4798.  
  4799.  Parameters: n - the row number at which the cursor is to be positioned. The 
  4800.            row value should not be greater than the screen depth. 
  4801.  
  4802.  
  4803. ΓòÉΓòÉΓòÉ 6.44. DBCS ΓòÉΓòÉΓòÉ
  4804.  
  4805. Defines the DBCS characters which cannot END or START a line in a formatted 
  4806. paragraph. These commands constitute a set supporting the KINSOKU rules. 
  4807.  
  4808. DBCS.NOEND defines the DBCS characters which are not allowed to END the line. 
  4809.  
  4810. DBCS.NOSTART defines the DBCS characters which are not allowed to START the 
  4811. line. 
  4812.  
  4813. DBCS.CHECK defines whether these checks are to be performed. 
  4814.  
  4815. DBCS.SPACE defines whether or not an SBCS space is to be inserted between DBCS 
  4816. characters when two elements are flowed together. This should be set OFF for 
  4817. JAPANESE DBCS modes but should be set ON for KOREAN DBCS modes. 
  4818.  
  4819.  Syntax:   SET DBCS.NOEND [DBCSchars] 
  4820.            or.SET DBCS.NOSTART [DBCSchars] 
  4821.            or.SET DBCS.CHECK ON/OFF/INVERSE 
  4822.            or.SET DBCS.SPACE ON/OFF/INVERSE 
  4823.            or. QUERY DBCS.NOEND 
  4824.            or QUERY DBCS.NOSTART 
  4825.            or QUERY DBCS.CHECK 
  4826.            or QUERY DBCS.SPACE 
  4827.  
  4828.  Parameters: 
  4829.  
  4830.     DBCSchars the DBCS character which cannot END or START a line of a 
  4831.               paragraph.  The characters are entered as a single string without 
  4832.               any separating blanks. 
  4833.  
  4834.     ON/OFF/INVERSE Enables or disables a) thee checking of NOEND and NOSTART or 
  4835.               b) the addition of a SPACE when flowing DBCS characters. 
  4836.  
  4837.  
  4838. ΓòÉΓòÉΓòÉ 6.45. DBCSRANGE (QUERY only) ΓòÉΓòÉΓòÉ
  4839.  
  4840. DBCSRANGE returns the ranges of the code page which have been reserved for the 
  4841. first byte of DBCS character pairs.  Each pair of values returned are the 
  4842. decimal value of first codepoint followed by the decimal value of the last 
  4843. codepoint. If the system does not support DBCS characters the values are null. 
  4844.  
  4845.  Syntax:   QUERY DBCSRANGE 
  4846.  
  4847.  
  4848. ΓòÉΓòÉΓòÉ 6.46. DEFAULT ΓòÉΓòÉΓòÉ
  4849.  
  4850. The default setting of an option. 
  4851.  
  4852. DEFAULT takes as an argument a normal set option. If the set option functions 
  4853. satisfactiorily, the setting is saved in the OS/2 defaults file, identified by 
  4854. the INSTANCE of LPEX - see the LXPM command. 
  4855.  
  4856.  Syntax:   SET DEFAULT setoption 
  4857.  
  4858.  Parameters: setoption - any valid option for the set command except DEFAULT. 
  4859.  
  4860.  
  4861. ΓòÉΓòÉΓòÉ 6.47. DEFAULTS (QUERY only) ΓòÉΓòÉΓòÉ
  4862.  
  4863. The LPEX system defaults which have been established. 
  4864.  
  4865. DEFAULTS returns the set options which have been established for the LPEX 
  4866. SESSION (NODOC) or for any document window when it is opened (DOC). The NODOC 
  4867. defaults are applied before PROFINIT is invoked, and the DOC defaults are 
  4868. applied before PROFSYS.LX is invoked. 
  4869.  
  4870.  Syntax:   QUERY DEFAULTS NODOC/DOC 
  4871.  
  4872.  Parameters: 
  4873.  
  4874.     NODOC     get the LPEX SESSION defaults. 
  4875.  
  4876.     DOC       get the defaults for a Document. 
  4877.  
  4878.  
  4879. ΓòÉΓòÉΓòÉ 6.48. DELETING ΓòÉΓòÉΓòÉ
  4880.  
  4881. Associate a command with the deletion of an element. 
  4882.  
  4883. DELETING associates the command given as a parameter with the deletion of an 
  4884. existing element. Each time an element is deleted, and after any other commands 
  4885. have been executed, the command is called, allowing the command to perform some 
  4886. action on or relating to that element. 
  4887.  
  4888.  Syntax:   SET DELETING [command] 
  4889.            or QUERY DELETING 
  4890.  
  4891.  Parameters: command - An external command, macro or internal command. 
  4892.  
  4893.  
  4894. ΓòÉΓòÉΓòÉ 6.49. DEPTH ΓòÉΓòÉΓòÉ
  4895.  
  4896. Determine lower bound of display range. 
  4897.  
  4898. DEPTH controls the number of levels to be displayed which are at or below the 
  4899. BOUND value. Elements with a depth greater than the sum of BOUND + DEPTH - 1 
  4900. will not be displayed. 
  4901.  
  4902. DEPTH increases to include the depth of the current position if the current 
  4903. element is deeper than BOUND + DEPTH - 1, but only while the condition is 
  4904. detected. 
  4905.  
  4906.  Syntax:   SET DEPTH [n] 
  4907.            or QUERY DEPTH 
  4908.  
  4909.  Parameters: n - the range depth, zero or greater 
  4910.  
  4911.  
  4912. ΓòÉΓòÉΓòÉ 6.50. DIAG ΓòÉΓòÉΓòÉ
  4913.  
  4914. Enable or disable diagnostic messages. 
  4915.  
  4916. DIAG ON provides a special debug tracing facility, giving diagnostic messages. 
  4917.  
  4918.  Syntax:   SET DIAG [COMMANDS] [TRACE] [ON] [OFF] [INVERSE] 
  4919.            or QUERY DIAG 
  4920.  
  4921.  Parameters: COMMANDS - give a trace of LPEX commands issued (including LPEXAPI 
  4922.            calls). Other diagnostic modes are cancelled. 
  4923.  
  4924.            ON provides a special debug tracing facility , giving diagnostic 
  4925.            messages - including COMMANDS. 
  4926.  
  4927.            TRACE - as ON but all messages are recorded in the file LXTRACE.TRC 
  4928.            in the current directory. 
  4929.  
  4930.            OFF disables all debug tracing. 
  4931.  
  4932.            INVERSE - if OFF set ON otherwise set OFF. 
  4933.  
  4934.  
  4935. ΓòÉΓòÉΓòÉ 6.51. DIRECTORY ΓòÉΓòÉΓòÉ
  4936.  
  4937. Set current working directory. 
  4938.  
  4939. This lets you change the current OS/2 working directory that LPEX will use when 
  4940. given a filename without any path specification. 
  4941.  
  4942.  Syntax:   SET DIRECTORY name 
  4943.            or QUERY DIRECTORY 
  4944.  
  4945.  
  4946. ΓòÉΓòÉΓòÉ 6.52. DISPDEPTH ΓòÉΓòÉΓòÉ
  4947.  
  4948. Depth of document window. 
  4949.  
  4950. DISPDEPTH sets the depth of the display window into the document. The minimum 
  4951. value is 5. 
  4952.  
  4953.  Syntax:   SET DISPDEPTH n 
  4954.            or QUERY DISPDEPTH 
  4955.  
  4956.  Parameters: n - the window depth 
  4957.  
  4958.  
  4959. ΓòÉΓòÉΓòÉ 6.53. DISPWIDTH ΓòÉΓòÉΓòÉ
  4960.  
  4961. Width of window into document. 
  4962.  
  4963. DISPWIDTH sets the width of the display window into the document. The window 
  4964. scrolls sideways when the cursor reaches the window frames if DISPWIDTH is less 
  4965. than the longest line the formatter produces. DISPWIDTH has a minimum value of 
  4966. 20 and it is recommended that DISPWIDTH be not greater than FORMWIDTH (if 
  4967. FORMWIDTH is not 0). 
  4968.  
  4969.  Syntax:   SET DISPWIDTH n 
  4970.            or QUERY DISPWIDTH 
  4971.  
  4972.  Parameters: n - the window width, greater than 19. 
  4973.  
  4974.  
  4975. ΓòÉΓòÉΓòÉ 6.54. DOCLIST (QUERY only) ΓòÉΓòÉΓòÉ
  4976.  
  4977. List current document numbers. 
  4978.  
  4979. DOCLIST returns the numbers of all documents currently in memory. The items are 
  4980. separated by blanks. 
  4981.  
  4982.  Syntax:   QUERY DOCLIST 
  4983.  
  4984.  
  4985. ΓòÉΓòÉΓòÉ 6.55. DOCNUM (QUERY only) ΓòÉΓòÉΓòÉ
  4986.  
  4987. Number uniquely identifying a document. 
  4988.  
  4989. DOCNUM gives a number that uniquely identifies the current document. This is 
  4990. the same as the number used for the initial autosave name. 
  4991.  
  4992.  Syntax:   QUERY DOCNUM 
  4993.  
  4994.  
  4995. ΓòÉΓòÉΓòÉ 6.56. DOCTYPE ΓòÉΓòÉΓòÉ
  4996.  
  4997. Document type. 
  4998.  
  4999. DOCTYPE describes the type of document and is the name of the LXS macro that 
  5000. will be called when the current document is saved. This is usually set by the 
  5001. LOAD command to be the same as the extension of the file loaded, so that the 
  5002. correct processing will be carried out when the document is saved regardless of 
  5003. the extension used on the SAVE command. 
  5004.  
  5005. Files with no extension are given a DOCTYPE of LPEX. 
  5006.  
  5007.  Syntax:   SET DOCTYPE [name] 
  5008.            or QUERY DOCTYPE 
  5009.  
  5010.  Parameters: name - a string of no more than eight characters 
  5011.  
  5012.  
  5013. ΓòÉΓòÉΓòÉ 6.57. DOCUMENTS (QUERY only) ΓòÉΓòÉΓòÉ
  5014.  
  5015. Number of documents currently in memory. 
  5016.  
  5017. DOCUMENTS gives the number of documents currently in memory. 
  5018.  
  5019.  Syntax:   QUERY DOCUMENTS 
  5020.  
  5021.  
  5022. ΓòÉΓòÉΓòÉ 6.58. DRIVE ΓòÉΓòÉΓòÉ
  5023.  
  5024. Set current drive. 
  5025.  
  5026. This lets you change the current OS/2 drive that LPEX will use when given a 
  5027. filename without any leading drive letter. 
  5028.  
  5029.  Syntax:   SET DRIVE letter 
  5030.            or QUERY DRIVE 
  5031.  
  5032.  
  5033. ΓòÉΓòÉΓòÉ 6.59. ELEMENT (QUERY only) ΓòÉΓòÉΓòÉ
  5034.  
  5035. Number of current element. 
  5036.  
  5037. ELEMENT gives the number of the current element, counting from the first 
  5038. element (one) at the top of the document. An empty document returns zero. 
  5039.  
  5040.  Syntax:   QUERY ELEMENT 
  5041.  
  5042.  
  5043. ΓòÉΓòÉΓòÉ 6.60. ELEMENTS (QUERY only) ΓòÉΓòÉΓòÉ
  5044.  
  5045. Number of elements in current document. 
  5046.  
  5047. ELEMENTS gives the number of elements in the current document. This does not 
  5048. include the header element which is maintained internally. 
  5049.  
  5050.  Syntax:   QUERY ELEMENTS 
  5051.  
  5052.  
  5053. ΓòÉΓòÉΓòÉ 6.61. ENVIRONMENT (QUERY only) ΓòÉΓòÉΓòÉ
  5054.  
  5055. Obtain system information. 
  5056.  
  5057. ENVIRONMENT allows macros to determine the current environment. The items 
  5058. returned are: 
  5059.  
  5060. Item                      Possible value(s)
  5061.  
  5062. Operating system name         OS/2
  5063. Operating system version      10.10 or 10.20
  5064. Processor type                80286 or 80386
  5065. Macro                         BUILTIN or REXXSAA
  5066.  
  5067.  Syntax:   QUERY ENVIRONMENT 
  5068.  
  5069.  
  5070. ΓòÉΓòÉΓòÉ 6.62. EXCLUDE ΓòÉΓòÉΓòÉ
  5071.  
  5072. Classes to exclude from display. 
  5073.  
  5074. EXCLUDE lists classes to be excluded from the display. Any element in a class 
  5075. listed under SET EXCLUDE will not be displayed. If no classlist is specified, 
  5076. no classes of element will be specifically excluded. 
  5077.  
  5078.  Syntax:   SET EXCLUDE [classlist] 
  5079.            or QUERY EXCLUDE 
  5080.  
  5081.  Parameters: classlist - the list of class names to be excluded from display 
  5082.  
  5083.  
  5084. ΓòÉΓòÉΓòÉ 6.63. FACE ΓòÉΓòÉΓòÉ
  5085.  
  5086. Gives user-defined name to font. 
  5087.  
  5088. FACE.username allows you to specify a "shorthand" name for a currently 
  5089. available font rather than having to specify its full familyname and facename 
  5090. each time you use it. 
  5091.  
  5092. No more than three such fonts may be created within a given view. Once created 
  5093. a font may be changed by giving a new family and/or face name, or dropped 
  5094. entirely by omitting both the family and face name. 
  5095.  
  5096. For example 
  5097.  
  5098. SET FACE.BOLD COURIER COURIER BOLD
  5099.  
  5100. enables you to use the Courier bold style by only tying FACE.BOLD when using 
  5101. the FONT.x command. 
  5102.  
  5103.  Syntax:   SET FACE.username [familyname facename] 
  5104.            or QUERY FACE. [username] 
  5105.  
  5106.  Parameters: 
  5107.  
  5108.     username  - name by which you wish to call the font (up to 25 characters) 
  5109.  
  5110.     familyname - name of type family (such as Courier or Helvetica) 
  5111.  
  5112.     facename  - name of type face (such as Courier Bold or Swiss Helv Italic) 
  5113.  
  5114.  
  5115. ΓòÉΓòÉΓòÉ 6.64. FACELIST (QUERY only) ΓòÉΓòÉΓòÉ
  5116.  
  5117. List user-defined font names. 
  5118.  
  5119. FACELIST lists the current user-defined font names for the current view (which 
  5120. can be set by SET FACE and used in subsequent SET FONT commands. 
  5121.  
  5122.  Syntax:   QUERY FACELIST 
  5123.  
  5124.  
  5125. ΓòÉΓòÉΓòÉ 6.65. FILL ΓòÉΓòÉΓòÉ
  5126.  
  5127. Set fill character. 
  5128.  
  5129. FILL sets the character used to fill the area to the left of each line on the 
  5130. screen. The default FILL character is the period. The FILL character never 
  5131. appears in saved data. Use SET FONT.FILL to select the color and highlighting 
  5132. for the FILL character. 
  5133.  
  5134.  Syntax:   SET FILL char 
  5135.            or QUERY FILL 
  5136.  
  5137.  Parameters: char - the FILL character required or blank or nnn (n=0-9) or xnn 
  5138.            (n=0-9 a-f) 
  5139.  
  5140.  
  5141. ΓòÉΓòÉΓòÉ 6.66. FINDHISTORY ΓòÉΓòÉΓòÉ
  5142.  
  5143. Number of find occurence to track. 
  5144.  
  5145. FINDHISTORY limits the number of find occurence which are remembered.  By 
  5146. default, a history of up to 10 occurence is kept. If FINDHISTORY is zero, no 
  5147. record of found occurences is kept. Whenever the value of FINDHISTORY is 
  5148. changed the FIND PREVIOUS/NEXT point is reset to the last remembered entry. 
  5149.  
  5150.  Syntax:   SET FINDHISTORY [n] 
  5151.            or QUERY FINDHISTORY 
  5152.  
  5153.  Parameters: 
  5154.  
  5155.     n         the number of find occurences to be remembered, up to a maximum 
  5156.               of 25 
  5157.  
  5158.  
  5159. ΓòÉΓòÉΓòÉ 6.67. FLOW ΓòÉΓòÉΓòÉ
  5160.  
  5161. Controls automatic flowing of elements. 
  5162.  
  5163. FLOW controls the automatic flowing of elements. Elements at or below a given 
  5164. depth will be flowed together on the display. This saves lines and gives a 
  5165. formatted view of the data. Flowed elements are displayed with the same 
  5166. indentation as the element to which they are flowed, modified by the OVERHANG 
  5167. value.  The indentation used is FLOW + OVERHANG - 1. 
  5168.  
  5169.  Syntax:   SET FLOW [n] 
  5170.            or QUERY FLOW 
  5171.  
  5172.  Parameters: n - the depth of the element at or below which elements are to be 
  5173.            flowed (default 0) 
  5174.  
  5175.  
  5176. ΓòÉΓòÉΓòÉ 6.68. FOCUS ΓòÉΓòÉΓòÉ
  5177.  
  5178. Alter focus line of display. 
  5179.  
  5180. FOCUS.x alters the focus line of the display. If a number is not specified, the 
  5181. value n defaults to either the very bottom, the very top or the next view row. 
  5182.  
  5183.  Syntax:   SET FOCUS.x [n] 
  5184.            or QUERY FOCUS.x 
  5185.  
  5186.  Parameters: 
  5187.  
  5188.     x         - any of the following 
  5189.  
  5190.        BOTTOM    sets the line in the document area which is used to trigger 
  5191.                  upwards scrolling of the document. It is the lowest line on 
  5192.                  which the cursor can be placed. 
  5193.  
  5194.        TOP       sets the line in the document area which is used to trigger 
  5195.                  downwards scrolling of the document. It is the highest line on 
  5196.                  which the cursor can be placed. 
  5197.  
  5198.        NEXT      sets the view row for the next display focus 
  5199.  
  5200.     n         the number of the view row for the focus line.  A positive number 
  5201.               counts from the top of the view downwards, a negative number 
  5202.               counts upwards from the bottom of the view 
  5203.  
  5204.  
  5205. ΓòÉΓòÉΓòÉ 6.69. FONT ΓòÉΓòÉΓòÉ
  5206.  
  5207. Set attributes for document or display fonts. 
  5208.  
  5209. FONT.x sets the display attributes used for displaying data or a specific font. 
  5210. All characters and upper case letters may be used as data fonts. Numeric fonts 
  5211. (one through nine) should normally be used only for OVERLAY lines.  Zero has a 
  5212. fixed meaning of all defaults and may not be used. 
  5213.  
  5214. A font may be specified as a number, either as three decimal digits or the 
  5215. letter x followed by two hexadecimal digits. 
  5216.  
  5217. For example 
  5218.  
  5219. SET FONT.A /bright cyan : changes the background color of
  5220.                           font A to bright cyan
  5221.  
  5222. SET FONT.STATUS REVERSE: reverses the colors on the status
  5223.                          line
  5224.  
  5225.  Syntax:   SET FONT.x [REVERSE] [UNDERLINE] [fore] [/back] [FACE.username] 
  5226.            or QUERY FONT.x 
  5227.  
  5228.  Parameters: 
  5229.  
  5230.     x         - LPEX allows the following: 
  5231.  
  5232.                                 all characters
  5233.                                 three decimal digits
  5234.                                 uppercase letters A through Z
  5235.                                 xnn - one letter followed by two hexadecimal digits
  5236.  
  5237.                                 .BACKGROUND - background character font
  5238.                                 .BLOCK      - marked block font
  5239.                                 .CONTEXT    - context elements font
  5240.                                 .FILL       - fill character font
  5241.                                 .HIGHLIGHT  - highlighting font
  5242.                                 .HELP       - help window font
  5243.                                 .MESSAGE    - message window font
  5244.                                 .NOTICE     - message in document window font
  5245.                                 .OVERLAY    - default overlay font
  5246.                                 .SPACE      - space font
  5247.                                 .STATUS     - status line font
  5248.                                 .SYMBOL     - symbols font
  5249.  
  5250.                                 REVERSE     - changes foreground and background colors
  5251.                                 UNDERLINE   - underlines all characters
  5252.                                 fore        - possible colors are listed below
  5253.                                 /back       - possible colors are listed below
  5254.  
  5255.                                     BLACK, BLUE, GREEN, CYAN, RED, MAGENTA, BROWN,
  5256.                                     LIGHT GRAY (or LIGHT GREY), GRAY (or GREY),
  5257.                                     BRIGHT BLUE, BRIGHT GREEN, BRIGHT CYAN, BRIGHT RED,
  5258.                                     BRIGHT MAGENTA, YELLOW, WHITE.
  5259.  
  5260.     FACE.username - facename established using the SET FACE command. 
  5261.  
  5262.  
  5263. ΓòÉΓòÉΓòÉ 6.70. FONTLIST (QUERY only) ΓòÉΓòÉΓòÉ
  5264.  
  5265. List symbolic fonts. 
  5266.  
  5267. FONTLIST lists the symbolic fonts characters which are currently set. Use QUERY 
  5268. FONT.x to find the characteristics of a specific font. 
  5269.  
  5270.  Syntax:   QUERY FONTLIST 
  5271.  
  5272.  
  5273. ΓòÉΓòÉΓòÉ 6.71. FONTS ΓòÉΓòÉΓòÉ
  5274.  
  5275. Character fonts for the current element. 
  5276.  
  5277. FONTS sets the character fonts for the current element. The string of 
  5278. characters supplied must be the same length as the content of the current 
  5279. element, because each character determines the font of the corresponding 
  5280. character in the element. 
  5281.  
  5282.  Syntax:   SET FONTS string 
  5283.            or QUERY FONTS 
  5284.  
  5285.  Parameters: string - a succession of as many characters as the element 
  5286.            contains 
  5287.  
  5288.  
  5289. ΓòÉΓòÉΓòÉ 6.72. FONTSIZE ΓòÉΓòÉΓòÉ
  5290.  
  5291. Size of the characters for a document window. 
  5292.  
  5293. FONTSIZE sets the size of the characters for the document window. The size of 
  5294. the window remains the same and the document is redrawn with the top line as 
  5295. the top line of the new window. If any typeface has been defined LPEX will try 
  5296. to set the corresponding face for the new size. 
  5297.  
  5298.  Syntax:   SET FONTSIZE [w h/LARGE/SMALL] 
  5299.            or QUERY FONTSIZE 
  5300.  
  5301.  Parameters: 
  5302.  
  5303.     w h       are the width and depth of the character.  The valid combinations 
  5304.               with supplied userfonts are 
  5305.  
  5306.                               screentype      width x depth .....
  5307.  
  5308.                                   CGA             8 x 8
  5309.                                   EGA             8 x 8 , 8 x 12
  5310.                                   VGA             8 x 8 , 8 x 14
  5311.                                   8514A           7 x 15, 8 x 17, 8 x 8,  12 x 16, 12 x 20
  5312.                                                  12 x 22, 7 x 25, 12 x 30
  5313.  
  5314.               Other sizes are valid but no userfonts are supplied, however any 
  5315.               FACE definitions will be preserved so that a change to one of the 
  5316.               above sizes will reinstate the defined face. 
  5317.  
  5318.     SMALL     is defined as the first size listed above 
  5319.  
  5320.     LARGE     is defined as the second size listed above for each type of 
  5321.               screen.  For the CGA screen SMALL = LARGE 
  5322.  
  5323.  
  5324. ΓòÉΓòÉΓòÉ 6.73. FORMAT ΓòÉΓòÉΓòÉ
  5325.  
  5326. Format settings for the current element. 
  5327.  
  5328. FORMAT changes the formatting control for the current element. 
  5329.  
  5330.  Syntax:   SET FORMAT [list] 
  5331.            or QUERY FORMAT 
  5332.  
  5333.  Parameters: list - zero or more from the following list: 
  5334.  
  5335.     ABSOLUTE n 
  5336.               sets the current element level to n, which must be positive. The 
  5337.               AFTER option may be used, but BEFORE should not. 
  5338.  
  5339.     AFTER n 
  5340.               changes the current level by n after the current element. n may 
  5341.               be positive (increasing level) or negative (decreasing level). 
  5342.               BEFORE and AFTER may both be specified. 
  5343.  
  5344.     BEFORE n 
  5345.               changes the current level by n before the current element. n may 
  5346.               be positive (increasing level) or negative (decreasing level). 
  5347.               BEFORE and AFTER may both be specified. 
  5348.  
  5349.     BREAK 
  5350.               forces this element to start on a new line, regardless of the 
  5351.               setting of FORMAT FLOW and SET FLOW. 
  5352.  
  5353.     FINAL 
  5354.               forces the next element to start on a new line, regardless of the 
  5355.               setting of FORMAT FLOW and SET FLOW. 
  5356.  
  5357.     FLOW 
  5358.               always flows this element to follow the preceding element. 
  5359.  
  5360.     NOlist 
  5361.               options not followed by a number may be prefixed with the string 
  5362.               NO. For example, adding NOBREAK to the end of an existing FORMAT 
  5363.               list will guarantee that BREAK is cleared. 
  5364.  
  5365.     POSTSPACE 
  5366.               includes a blank line after this element, and always starts the 
  5367.               next element on a new line. 
  5368.  
  5369.     PRESPACE 
  5370.               includes a blank line before this element, and always starts this 
  5371.               element on a new line. 
  5372.  
  5373.     SOLID 
  5374.               indicates that the element is solid, so the formatter will not 
  5375.               split the element at blanks (or elsewhere), except when there is 
  5376.               no other way to format the element 
  5377.  
  5378.     SPILL 
  5379.               indicates that the element may be SPILLed. 
  5380.  
  5381.  
  5382. ΓòÉΓòÉΓòÉ 6.74. FORMATTER ΓòÉΓòÉΓòÉ
  5383.  
  5384. Enables document to be formatted. 
  5385.  
  5386. FORMATTER uses information (FLOW, BREAK, PRESPACE and so forth) associated with 
  5387. each element to format the document. When FORMATTER is OFF, each element is 
  5388. displayed on a separate line. FORMATTER is OFF by default. 
  5389.  
  5390.  Syntax:   SET FORMATTER ON/OFF/INVERSE 
  5391.            or QUERY FORMATTER 
  5392.  
  5393.  
  5394. ΓòÉΓòÉΓòÉ 6.75. FORMWIDTH ΓòÉΓòÉΓòÉ
  5395.  
  5396. Set the formatting width of the document. 
  5397.  
  5398. FORMWIDTH sets the length of the longest line that the formatter will produce 
  5399. when WRAP is ON. If WRAP is OFF, long lines are not wrapped. If 0 is specified 
  5400. then the current value of DISPWIDTH is used - if DISPWIDTH changes the file is 
  5401. reformatted if FORMATTER is ON. 
  5402.  
  5403.  Syntax:   SET FORMWIDTH n 
  5404.            or QUERY FORMWIDTH 
  5405.  
  5406.  Parameters: n - length of longest line formatter will produce, and must be 0 
  5407.            or in the range 20 through 2500 
  5408.  
  5409.  
  5410. ΓòÉΓòÉΓòÉ 6.76. FRAME ΓòÉΓòÉΓòÉ
  5411.  
  5412. This function does not do anything for this version of LPEX, and is provided 
  5413. for compatibility only. 
  5414.  
  5415.  
  5416. ΓòÉΓòÉΓòÉ 6.77. FULLPARSE ΓòÉΓòÉΓòÉ
  5417.  
  5418. Define the parser to be used for a full as opposed to an incremental parse. For 
  5419. all other details, see  SET PARSER and  TRIGGER FULLPARSE 
  5420.  
  5421.  
  5422. ΓòÉΓòÉΓòÉ 6.78. GLOBAL ΓòÉΓòÉΓòÉ
  5423.  
  5424. The SET GLOBAL.name command assigns a value to a global variable. If the 
  5425. variable does not currently exist it will be created. Global variables remain 
  5426. in existence until the LPEX session is terminated and may be set or queried 
  5427. from any document or macro. 
  5428.  
  5429.  Syntax:   SET GLOBAL.name value 
  5430.            or QUERY GLOBAL.name 
  5431.  
  5432.  Parameters: 
  5433.  
  5434.     name      arbitrary name of the variable 
  5435.  
  5436.     value     an arbitrary string 
  5437.  
  5438.  
  5439. ΓòÉΓòÉΓòÉ 6.79. GLOBALLIST (QUERY only) ΓòÉΓòÉΓòÉ
  5440.  
  5441. List names of global variables. 
  5442.  
  5443. GLOBALLIST gives a list of all the global variables which are currently set. 
  5444.  
  5445.  Syntax:   QUERY GLOBALLIST 
  5446.  
  5447.  
  5448. ΓòÉΓòÉΓòÉ 6.80. HELPFONTSIZE ΓòÉΓòÉΓòÉ
  5449.  
  5450. This function no longer has any meaning in LPEXPM and is retained for 
  5451. compatibility. 
  5452.  
  5453. Size of the characters for the help window. 
  5454.  
  5455. HELPFONTSIZE sets the size of the characters for the help window. The size of 
  5456. the window remains the same and the help window is redrawn with the top line as 
  5457. the top line of the new window. 
  5458.  
  5459.  Syntax:   SET HELPFONTSIZE [w h/LARGE/SMALL] 
  5460.            or QUERY HELPFONTSIZE 
  5461.  
  5462.  
  5463. ΓòÉΓòÉΓòÉ 6.81. HELPLIB ΓòÉΓòÉΓòÉ
  5464.  
  5465. Default help library names. 
  5466.  
  5467. Certain information will always be available through the help table of contents 
  5468. regardless of which help panel is displayed. This information comes from the 
  5469. default help libraries which can be modified using this command. 
  5470.  
  5471. The default help libraries are LPEXCMD.LXH and LPEXHELP.LXH which contain 
  5472. command and help system information respectively. It is recommended that both 
  5473. always be included, particularly the command help as these help panels are 
  5474. cross-referenced from other help libraries. 
  5475.  
  5476. The order of the default help libraries will be reflected in the help table of 
  5477. contents. 
  5478.  
  5479.  Syntax:   SET HELPLIB library [library ...] 
  5480.            or QUERY HELPLIB 
  5481.  
  5482.  Parameters: Each name may be a fully qualified name including drive and path, 
  5483.            otherwise the file should be in the path specified by the HELP 
  5484.            environment variable. 
  5485.  
  5486.            At least one library must be specified. 
  5487.  
  5488.  
  5489. ΓòÉΓòÉΓòÉ 6.82. HELPWINDOW ΓòÉΓòÉΓòÉ
  5490.  
  5491. This function no longer has any meaning in this version of LPEX. 
  5492.  
  5493. Set the mode of the help window. 
  5494.  
  5495. HELPWINDOW controls whether the help window is visible, minimized or maximized. 
  5496. or activated. 
  5497.  
  5498.  Syntax:   SET HELPWINDOW option 
  5499.  
  5500.  Parameters: 
  5501.  
  5502.     MINimized the window is minimised - if the window was hidden it is made 
  5503.               visible before minimizing. 
  5504.  
  5505.     MAXimized the window is maximized - if the window was hidden it is made 
  5506.               visible before maximizing. 
  5507.  
  5508.     VISIBLE   the window set to restored size and made visible - focus is not 
  5509.               necessarily given to the window. 
  5510.  
  5511.  
  5512. ΓòÉΓòÉΓòÉ 6.83. HELPWINDOWPOS ΓòÉΓòÉΓòÉ
  5513.  
  5514. This function no longer has any meaning in this version of LPEX. 
  5515.  
  5516. Positions and optionally sizes help window. 
  5517.  
  5518.  SET HELPWINDOWPOS x y [cx cy] 
  5519.  
  5520.  The parameters are all in pels and refer to the frame, not the client area. x 
  5521.  and y set the position of the lower left corner, while cx and cy set the width 
  5522.  and depth. If cx and cy are omitted or set to 0 the window is not resized. 
  5523.  Setting both cx and cy to -1 will maximise the window (x and y will be 
  5524.  ignored). 
  5525.  
  5526.  Note that some part of the window must be visible on the desktop, whose size 
  5527.  can be obtained by QUERY SCREEN.  Note also that LPEX ensures that the client 
  5528.  area is always a whole number of characters wide or deep, so the cx and cy 
  5529.  values may be adjusted by LPEX to ensure this. 
  5530.  
  5531.  
  5532. ΓòÉΓòÉΓòÉ 6.84. HIGHLIGHT ΓòÉΓòÉΓòÉ
  5533.  
  5534. Classes to highlight when displayed. 
  5535.  
  5536. HIGHLIGHT controls which displayed elements are highlighted. Any element with 
  5537. its class specified in classlist will have its contents displayed using 
  5538. FONT.HIGHLIGHT. 
  5539.  
  5540.  Syntax:   SET HIGHLIGHT [classlist] 
  5541.            or QUERY HIGHLIGHT 
  5542.  
  5543.  Parameters: classlist - one or more classes from which member elements are to 
  5544.            be highlighted when displayed 
  5545.  
  5546.  
  5547. ΓòÉΓòÉΓòÉ 6.85. HISTORY ΓòÉΓòÉΓòÉ
  5548.  
  5549. Number of undoable checkpoint generations. 
  5550.  
  5551. HISTORY limits the number of checkpoint generations kept.  By default, a 
  5552. history of up to 10  checkpoints is kept. If HISTORY is zero, no record of 
  5553. changes is kept. 
  5554.  
  5555.  Syntax:   SET HISTORY [n] 
  5556.            or QUERY HISTORY 
  5557.  
  5558.  Parameters: 
  5559.  
  5560.     n         the number of checkpoint generations to be kept, up to a maximum 
  5561.               of 25 
  5562.  
  5563.  
  5564. ΓòÉΓòÉΓòÉ 6.86. HORIZSCROLL ΓòÉΓòÉΓòÉ
  5565.  
  5566. This sets the number of columns which are scrolled when using the horizontal 
  5567. scrollbar scroll buttons. 
  5568.  
  5569.  
  5570. ΓòÉΓòÉΓòÉ 6.87. IDLETIME ΓòÉΓòÉΓòÉ
  5571.  
  5572. Idle seconds required before autosave. 
  5573.  
  5574. IDLETIME sets the IDLETIME delay, specifying the number of idle seconds 
  5575. required before an autosave should occur. A pending autosave is delayed until 
  5576. no key has been pressed for IDLETIME seconds. IDLETIME defaults to two seconds. 
  5577.  
  5578.  Syntax:   SET IDLETIME n 
  5579.            or QUERY IDLETIME 
  5580.  
  5581.  Parameters: n - number of idle seconds between autosaves 
  5582.  
  5583.  
  5584. ΓòÉΓòÉΓòÉ 6.88. IMPMACRO ΓòÉΓòÉΓòÉ
  5585.  
  5586. Implied MACRO commands. 
  5587.  
  5588. IMPMACRO ON tries unknown commands as macros, after LPEX has established that 
  5589. the command is not a native command, an implied SET or QUERY, or an external 
  5590. LPEX command. 
  5591.  
  5592.  Syntax:   SET IMPMACRO ON/OFF/INVERSE 
  5593.            or QUERY IMPMACRO 
  5594.  
  5595.  
  5596. ΓòÉΓòÉΓòÉ 6.89. IMPSET ΓòÉΓòÉΓòÉ
  5597.  
  5598. Implied SET commands. 
  5599.  
  5600. IMPSET ON tries unknown commands as SET or QUERY commands.  Single word 
  5601. commands are tried as a QUERY, multiple word commands are tried as a SET. 
  5602.  
  5603.  Syntax:   SET IMPSET ON/OFF/INVERSE 
  5604.            or QUERY IMPSET 
  5605.  
  5606.  
  5607. ΓòÉΓòÉΓòÉ 6.90. INCLUDE ΓòÉΓòÉΓòÉ
  5608.  
  5609. Classes to include in display. 
  5610.  
  5611. INCLUDE lists the classes to be included in the displayed document. If an 
  5612. element is in a class listed under SET INCLUDE, it will be displayed (unless 
  5613. overridden by SET EXCLUDE). If no class list is specified, all classes of 
  5614. element are included. 
  5615.  
  5616.  Syntax:   SET INCLUDE [classlist] 
  5617.            or QUERY INCLUDE 
  5618.  
  5619.  Parameters: classlist - the list of classes for inclusion in the data display 
  5620.  
  5621.  
  5622. ΓòÉΓòÉΓòÉ 6.91. INDENT ΓòÉΓòÉΓòÉ
  5623.  
  5624. Indentation factor. 
  5625.  
  5626. INDENT sets the amount by which a structural level will be indented on the 
  5627. screen. INDENT defaults to two. 
  5628.  
  5629.  Syntax:   SET INDENT n 
  5630.            or QUERY INDENT 
  5631.  
  5632.  Parameters: n - the number of character positions by which indentation is 
  5633.            required, in the range zero through 5 
  5634.  
  5635.  
  5636. ΓòÉΓòÉΓòÉ 6.92. INSERTING ΓòÉΓòÉΓòÉ
  5637.  
  5638.  or insert after insert, replace. 
  5639.  
  5640. INSERTING determines whether characters are inserted before the cursor position 
  5641. (INSERTING ON) or replace the existing characters (INSERTING OFF) or are 
  5642. inserted after the chracter at the current cursor position. 
  5643.  
  5644.  Syntax:   SET INSERTING ON/OFF/INVERSE/ AFTER 
  5645.            or QUERY INSERTING 
  5646.  
  5647.  Parameters: 
  5648.  
  5649.     ON        set inserting before current cursor position 
  5650.  
  5651.     OFF       set mode to replace at current cursor position 
  5652.  
  5653.     AFTER     set inserting after current cursor position 
  5654.  
  5655.     INVERSE   if OFF set on, else set OFF 
  5656.  
  5657.  
  5658. ΓòÉΓòÉΓòÉ 6.93. KEY ΓòÉΓòÉΓòÉ
  5659.  
  5660. Map a physical key to a logical key. 
  5661.  
  5662. KEY.key allows a physical key to be mapped to a logical key. Pressing the key 
  5663. identified by pkeyname will have exactly the same effect as pressing lkeyname. 
  5664.  
  5665.  Syntax:   SET KEY.pkeyname lkeyname 
  5666.            or QUERY KEY.pkeyname 
  5667.  
  5668.  Parameters: 
  5669.  
  5670.     pkeyname  any physical key 
  5671.  
  5672.     lkeyname  the logical key from which pkeyname takes its effect 
  5673.  
  5674.  For a list of valid keynames see SET ACTION. 
  5675.  
  5676.  
  5677. ΓòÉΓòÉΓòÉ 6.94. KEYLIST (QUERY only) ΓòÉΓòÉΓòÉ
  5678.  
  5679. List currently remapped physical keys. 
  5680.  
  5681. KEYLIST gives a list of the names of all keys which have been remapped using 
  5682. SET KEY. 
  5683.  
  5684.  Syntax:   QUERY KEYLIST 
  5685.  
  5686.  
  5687. ΓòÉΓòÉΓòÉ 6.95. LASTFIND ΓòÉΓòÉΓòÉ
  5688.  
  5689. Set parameters for FIND. 
  5690.  
  5691. LASTFIND determines the search that will take place if FIND is called without 
  5692. any parameters. If LASTFIND is not set explicitly it will take its values from 
  5693. the most recently issued FIND command. 
  5694.  
  5695.  Syntax:   SET LASTFIND [ [VISIBLE] [UP] ELEMENT n/text ] 
  5696.            or QUERY LASTFIND 
  5697.  
  5698.  Parameters: 
  5699.  
  5700.     UP        specifies an upward search 
  5701.  
  5702.     VISIBLE   restricts search to visible elements 
  5703.  
  5704.     ELEMENT n searches for the nth element 
  5705.  
  5706.     text      text string to be found, prefixed by ANY or ASIS 
  5707.  
  5708.     ANY       find string, regardless of case 
  5709.  
  5710.     ASIS      find string exactly as entered 
  5711.  
  5712.  Return codes: 
  5713.  
  5714.  -1        invalid parameter (unknown search type or string too long) 
  5715.  -2        document is empty 
  5716.  -3        repeat FIND requested but no previous FIND 
  5717.  1         string not found (or not visible) 
  5718.  2         string found - only occurrence in document 
  5719.  3         string found but wrap to top/bottom of document needed 
  5720.  
  5721.  
  5722. ΓòÉΓòÉΓòÉ 6.96. LASTKEY (QUERY only) ΓòÉΓòÉΓòÉ
  5723.  
  5724. Last key obtained by  KEYREAD. 
  5725.  
  5726. QUERY LASTKEY gives the name of the key read by the most recent KEYREAD 
  5727. command, or the key used to terminate the most recent LINEREAD command, 
  5728. whichever came later. 
  5729.  
  5730. A list of the key names that can be returned by this command is given in the 
  5731. help for SET/QUERY ACTION. 
  5732.  
  5733.  Syntax:   QUERY LASTKEY 
  5734.  
  5735.  
  5736. ΓòÉΓòÉΓòÉ 6.97. LASTLINE (QUERY only) ΓòÉΓòÉΓòÉ
  5737.  
  5738. Last line obtained by LINEREAD. 
  5739.  
  5740. QUERY LASTLINE gives the line of data read by the most recent LINEREAD command. 
  5741.  
  5742.  Syntax:   QUERY LASTLINE 
  5743.  
  5744.  
  5745. ΓòÉΓòÉΓòÉ 6.98. LASTUNDO (QUERY only) ΓòÉΓòÉΓòÉ
  5746.  
  5747. Display the last UNDO value. 
  5748.  
  5749. LASTUNDO gives the value of the most recent UNDO generation which was undone. 
  5750.  
  5751.  Syntax:   QUERY LASTUNDO 
  5752.  
  5753.  
  5754. ΓòÉΓòÉΓòÉ 6.99. LENGTH (QUERY only) ΓòÉΓòÉΓòÉ
  5755.  
  5756. Length of the current element. 
  5757.  
  5758. LENGTH gives the number of characters in the current element. 
  5759.  
  5760.  Syntax:   QUERY LENGTH 
  5761.  
  5762.  
  5763. ΓòÉΓòÉΓòÉ 6.100. LEVEL (QUERY only) ΓòÉΓòÉΓòÉ
  5764.  
  5765. True level of the current element. 
  5766.  
  5767. LEVEL gives the structural level of the current element. This is determined by 
  5768. current or previous FORMAT settings. LEVEL may be negative if relative (BEFORE 
  5769. and AFTER) settings are used that outdent more than the current level. The 
  5770. highest structural level has a level of 0. 
  5771.  
  5772.  Syntax:   QUERY LEVEL 
  5773.  
  5774.  
  5775. ΓòÉΓòÉΓòÉ 6.101. LINEBREAK ΓòÉΓòÉΓòÉ
  5776.  
  5777. Record type. 
  5778.  
  5779. LINEBREAK defines the linne break modes.  This is used to determine how the 
  5780. lines are to be identified. 
  5781.  
  5782. The default mode is DOS which requires that both CR and LF are present and are 
  5783. adjacent in that order.  Also end-of-file is determined by the sequence 
  5784. CR-LF-EOF or hex 0D0A1A'. 
  5785.  
  5786.  Syntax:   SET LINEBREAK [type] 
  5787.            or QUERY LINEBREAK 
  5788.  
  5789.  Parameters: mode - must be one of 
  5790.  
  5791.     DOS       Both CR and LF in that order are required - the default. 
  5792.     CRLF      Both CR and LF in that order are required (same as DOS). 
  5793.     UNIX      Only LF is required. 
  5794.     LF        Only LF is required (same as UNIX). 
  5795.  
  5796.  
  5797. ΓòÉΓòÉΓòÉ 6.102. LINEREAD. ΓòÉΓòÉΓòÉ
  5798.  
  5799. Set title or prompt for next LINEREAD 
  5800.  
  5801. LINEREAD.TITLE sets the title line for the next issuance of the LINEREAD 
  5802.  
  5803. LINEREAD.PROMPT sets the prompt line for the next issuance of the LINEREAD 
  5804.  
  5805.  Syntax:   SET LINEREAD.TITLE text 
  5806.            SET LINEREAD.PROMPT text 
  5807.            QUERY LINEREAD.TITLE 
  5808.            or QUERY LINEREAD.PROMPT 
  5809.  
  5810.  Parameters: text - the text to be used for the appropriate area of the 
  5811.            lineread dialog. 
  5812.  
  5813.  
  5814. ΓòÉΓòÉΓòÉ 6.103. LINKED (QUERY only) ΓòÉΓòÉΓòÉ
  5815.  
  5816. List of currently linked external commands. 
  5817.  
  5818. LINKED lists the names of the external commands which have been linked to LPEX. 
  5819. Once invoked, an external command remains linked until it's removed with an 
  5820. UNLINK command or LPEX is terminated. While linked, the disk file LXxxx.DLL 
  5821. (where xxx is the name of the command) is locked by OS/2 and cannot be erased, 
  5822. modified or renamed. 
  5823.  
  5824.  Syntax:   QUERY LINKED 
  5825.  
  5826.  
  5827. ΓòÉΓòÉΓòÉ 6.104. LIST (QUERY only) ΓòÉΓòÉΓòÉ
  5828.  
  5829. Details about document, keys, views, etc. 
  5830.  
  5831. LIST.item gives information about current actions, documents, fonts, keys, 
  5832. marks, symbols, synonyms or views. For example, LIST.FONT displays the values 
  5833. of the currently set fonts. Possible commands are: 
  5834.  
  5835.  Syntax:   QUERY LIST.item 
  5836.  
  5837.  Parameters: item - any of the following: 
  5838.  
  5839.     ACTION    logical keys and actions assigned to them 
  5840.  
  5841.     ACTIONBAR pull-downs and choices assigned to them 
  5842.  
  5843.     DOC       names and number of elements in current documents 
  5844.  
  5845.     FACE      current user defined font names 
  5846.  
  5847.     FONT      current fonts and their attributes 
  5848.  
  5849.     GLOBAL    current global variables and their values 
  5850.  
  5851.     KEY       physical keys that have been remapped and the logical keys to 
  5852.               which they have been assigned 
  5853.  
  5854.     MARK      current marks and details about them 
  5855.  
  5856.     SYMBOL    current symbols and their values 
  5857.  
  5858.     SYNONYM   current synonyms and their values 
  5859.  
  5860.     VIEW      the names of views of the current document 
  5861.  
  5862.  
  5863. ΓòÉΓòÉΓòÉ 6.105. LOADEDMACROS (QUERY only) ΓòÉΓòÉΓòÉ
  5864.  
  5865. List the preloaded REXX macros.  This query will list the names of the REXX 
  5866. macros which have been preloaded into the REXX storage to save loading each 
  5867. time they are used. 
  5868.  
  5869.  Syntax:   QUERY LOADEDMACROS 
  5870.  
  5871.  
  5872. ΓòÉΓòÉΓòÉ 6.106. LPATH ΓòÉΓòÉΓòÉ
  5873.  
  5874. Set directory search path for help and macros. 
  5875.  
  5876. LPATH sets the path to be searched for macros and help files, instead of 
  5877. defaulting to the current directory only. Failure to specify a pathlist will 
  5878. result in the use of the OS/2 DPATH value, which is established by the SET 
  5879. DPATH= command in the CONFIG.SYS file. 
  5880.  
  5881.  Syntax:   SET LPATH pathlist 
  5882.            or QUERY LPATH 
  5883.  
  5884.  Parameters: pathlist - a list of OS/2 directories, separated by semi-colons 
  5885.  
  5886.  
  5887. ΓòÉΓòÉΓòÉ 6.107. MARK (QUERY only) ΓòÉΓòÉΓòÉ
  5888.  
  5889. Return position of specified mark in element. 
  5890.  
  5891. MARK.name gives the named mark's position within an element.  The number 
  5892. returned is positive if the mark is in the current element, negative if it is 
  5893. not. An unknown mark returns zero. 
  5894.  
  5895.  Syntax:   QUERY MARK.name 
  5896.  
  5897.  
  5898. ΓòÉΓòÉΓòÉ 6.108. MARKLIST (QUERY only) ΓòÉΓòÉΓòÉ
  5899.  
  5900. Return list of marks set in document. 
  5901.  
  5902. MARKLIST gives an unordered list of the names of marks currently set in the 
  5903. document. 
  5904.  
  5905.  Syntax:   QUERY MARKLIST 
  5906.  
  5907.  
  5908. ΓòÉΓòÉΓòÉ 6.109. MAXWINDOWPOS ΓòÉΓòÉΓòÉ
  5909.  
  5910. Sets the position and size of the maximised window. 
  5911.  
  5912.  Syntax:   SET MAXWINDOWPOS x y cx cy 
  5913.            or SET MAXWINDOWPOS CURRENT 
  5914.            or QUERY MAXWINDOWPOS 
  5915.  
  5916.  The parameters are all in pels and refer to the frame, not the client area. x 
  5917.  and y set the position of the lower left corner, while cx and cy set the width 
  5918.  and depth. 
  5919.  
  5920.  Note that some part of the window must be visible on the desktop, whose size 
  5921.  can be obtained by QUERY SCREEN.  Note also that LPEX ensures that the client 
  5922.  area is always a whole number of characters wide or deep, so the cx and cy 
  5923.  values may be adjusted by LPEX to ensure this. 
  5924.  
  5925.  The maximised size can also be set by sizing the current document window to 
  5926.  the required size and then issuing the command 
  5927.  
  5928.   SET MAXWINDOWPOS CURRENT
  5929.  
  5930.  
  5931. ΓòÉΓòÉΓòÉ 6.110. MENUACTIVE ΓòÉΓòÉΓòÉ
  5932.  
  5933. Enables or disables an actionbar item or pulldown item. 
  5934.  
  5935. Note:  Currently only LPEX predefined items can be changed. 
  5936.  
  5937.  Syntax:   SET MENUACTIVE.name ON/OFF 
  5938.            or QUERY MENUACTIVE.name 
  5939.  
  5940.  Parameters: 
  5941.  
  5942.     name      This is either the predefined LPEX name for a LPEX defined 
  5943.               menuitem or a numeric value for a user acdded item. This numeric 
  5944.               value can be obtained using the QUERY ACTIONBARID. command. 
  5945.  
  5946.     ON        enable the actionbar/pulldown item. 
  5947.  
  5948.     OFF       disable the actionbar/pulldown item. 
  5949.  
  5950.     INVERSE   toggles between ON and OFF 
  5951.  
  5952.               Note:  Currently INVERSE is not implemented. 
  5953.  
  5954.  
  5955.  MENUACTIVE controls the enabling or disabling of actionbar items or pulldown 
  5956.  items.  If the command is issued when the message window has the focus the 
  5957.  action is performed on the message window otherwise the action is performed on 
  5958.  the current document/view window. Disabling an item will not disable any 
  5959.  accelerator key; this must be done using an appropriate SET ACTION. command. 
  5960.  Similarly enabling an item will not activate the accelerator key. 
  5961.  
  5962.  The following table defines the name of the predefined LPEX items and the 
  5963.  english content of the item. 
  5964.  
  5965.  LP_ABOUT               About.. 
  5966.  LP_FILEMSG             File 
  5967.  LP_MESSAGES            Messages 
  5968.  LP_ENABLEMSG           Enable messages 
  5969.  LP_PURGE               Purge current messages 
  5970.  LP_COPYMSG             Copy messages to current document 
  5971.  LP_EXITLPEX            Exit LPEX 
  5972.  LP_MINONUSE            Minimize on use 
  5973.  LP_ACTIONS             Window 
  5974.  LP_SHOW                Show 
  5975.  LP_HIDE                Hide 
  5976.  LP_MIN                 Minimize 
  5977.  LP_CLOSE               Close 
  5978.  LP_MINALL              Minimize all LPEX 
  5979.  LP_SELECTALL           Select al 
  5980.  LP_DESELECTALL         Deselect all 
  5981.  LP_MULTIPLE            Multiple selection 
  5982.  LP_SORTOPEN            Sort by order opened 
  5983.  LP_SORTNAME            Sort by window name 
  5984.  LP_FILEDOC             File. 
  5985.  LP_OPEN                Open... 
  5986.  LP_SAVE                Save 
  5987.  LP_SAVEAS              Save as... 
  5988.  LP_GET                 Get... 
  5989.  LP_PRINT               Print 
  5990.  LP_PRINTAS             Print as shown 
  5991.  LP_FILEQUIT            File -Save&Quit 
  5992.  LP_UNDOOPTS            Undo 
  5993.  LP_UNDO                Undo last set of changes 
  5994.  LP_CHECK               Take a checkpoint 
  5995.  LP_SETUNDO             Set undo options... 
  5996.  LP_EDIT                Edit 
  5997.  LP_CLIPCOPY            Copy to clipboard 
  5998.  LP_CLIPCUT             Cut to clipboard 
  5999.  LP_CLIPPASTE           Paste from clipboard 
  6000.  LP_COPY                Copy block 
  6001.  LP_MOVE                Move block 
  6002.  LP_DELETE              Delete block 
  6003.  LP_UPPER               Uppercase block 
  6004.  LP_LOWER               Lowercase block 
  6005.  LP_UNMAARK             Unmark block 
  6006.  LP_NAMEMARK            Name a mark... 
  6007.  LP_CLIP                Clipboard 
  6008.  LP_BLOCK               Block 
  6009.  LP_FINDOPTS            Find 
  6010.  LP_START               Start of block 
  6011.  LP_END                 End of block 
  6012.  LP_ELEMENT             Element number... 
  6013.  LP_FINDMARK            Named mark... 
  6014.  LP_FINDCHANGE          Find and Change Text... 
  6015.  LP_WINDOW              Window 
  6016.  LP_NEWVIEW             Open new view 
  6017.  LP_CLOSEVIEW           Close this view 
  6018.  LP_COMMAND             Command 
  6019.  LP_ISSUECMD            Issue command... 
  6020.  LP_SYNONYMS            Set synonyms... 
  6021.  LP_ACTION              Set action keys... 
  6022.  LP_RECALLOPTS          Set recall options... 
  6023.  LP_OPTIONS             Options 
  6024.  LP_FONTS               Fonts... 
  6025.  LP_FONTSIZE            Fontsize 
  6026.  LP_TABS                Tab settings... 
  6027.  LP_GLOBALS             Global variables... 
  6028.  LP_OTHEROPTS           Other settings... 
  6029.  LP_STATUSLINE          Status Line 
  6030.  LP_MSGLINE             Message Line 
  6031.  LP_EXITDOC             Exit from document 
  6032.  
  6033.  
  6034. ΓòÉΓòÉΓòÉ 6.111. MENUCHECK ΓòÉΓòÉΓòÉ
  6035.  
  6036. Sets or unsets the checkmark for an actionbar item or pulldown item. 
  6037.  
  6038. Note:  Currently only LPEX predefined items can be changed. 
  6039.  
  6040.  Syntax:   SET MENUCHECK.name ON/OFF 
  6041.            or QUERY MENUCHECK.name 
  6042.  
  6043.  Parameters: 
  6044.  
  6045.     name      This is either the predefined LPEX name for a LPEX defined 
  6046.               menuitem or a numeric value for a user acdded item. This numeric 
  6047.               value can be obtained using the QUERY ACTIONBARID. command. 
  6048.  
  6049.     ON        check the actionbar/pulldown item. 
  6050.  
  6051.     OFF       uncheck the actionbar/pulldown item. 
  6052.  
  6053.     INVERSE   toggles between ON and OFF 
  6054.  
  6055.               Note:  Currently INVERSE is not implemented. 
  6056.  
  6057.  
  6058.  MENUCHECK controls the checkmark of actionbar items or pulldown items.  If the 
  6059.  command is issued when the message window has the focus the action is 
  6060.  performed on the message window otherwise the action is performed on the 
  6061.  current document/view window. 
  6062.  
  6063.  See MENUACTIVE for the predefined LPEX names. 
  6064.  
  6065.  
  6066. ΓòÉΓòÉΓòÉ 6.112. MESSAGELINE ΓòÉΓòÉΓòÉ
  6067.  
  6068. Control display of last generated. 
  6069.  
  6070. MESSAGELINE controls the displaying of the last message. This control is in 
  6071. addition to the MESSAGES option. This option only control where the last 
  6072. message is to be displayed in addition to the message area in the 
  6073. message/windowlist window. 
  6074.  
  6075.  Syntax:   SET MESSAGELINE DYNAMIC/ON/OFF/INVERSE 
  6076.            or QUERY MESSAGELINE 
  6077.  
  6078.  Parameters: 
  6079.  
  6080.     DYNAMIC   display the last message in the data area overlaying the first 
  6081.               text line temporarily until the next function is performed. 
  6082.  
  6083.     ON        display the last message in a special area at the bottom of the 
  6084.               window. 
  6085.  
  6086.               If the MESSAGELINE setting is not ON the space is not reserved in 
  6087.               the window. 
  6088.  
  6089.     OFF       do not display the last message anywhere. 
  6090.  
  6091.     INVERSE   toggles between ON and OFF, and sets DYNAMIC to OFF 
  6092.  
  6093.  
  6094. ΓòÉΓòÉΓòÉ 6.113. MESSAGES ΓòÉΓòÉΓòÉ
  6095.  
  6096. Control display of messages. 
  6097.  
  6098. MESSAGES controls the display of messages. Messages will not be displayed if 
  6099. set OFF. If set ON, messages are queued until the current command finishes. 
  6100. IMM(ediate) displays messages as they are generated. 
  6101.  
  6102.  Syntax:   SET MESSAGES ON/OFF/INVERSE/IMM 
  6103.            or QUERY MESSAGES 
  6104.  
  6105.  Parameters: 
  6106.  
  6107.     ON        queue messages until current command finishes 
  6108.  
  6109.     OFF       do not display messages 
  6110.  
  6111.     INVERSE   toggles between ON and OFF, and sets IMM to OFF 
  6112.  
  6113.     IMM       displays messages immediately 
  6114.  
  6115.  
  6116. ΓòÉΓòÉΓòÉ 6.114. MODES (QUERY only) ΓòÉΓòÉΓòÉ
  6117.  
  6118. Character modes for the current element. 
  6119.  
  6120. MODES queries the character modes for the element. 
  6121.  
  6122. The string returned specifies whether the characters are SBCS or DBCS.  A 
  6123. character value of 0 is returned for the former.  For the latter a character 
  6124. value of 1 or 2 is returned depending on whether the position is the leftmost 
  6125. or  rightmost position of the double byte character. 
  6126.  
  6127.  Syntax:   QUERY MODES 
  6128.  
  6129.  
  6130. ΓòÉΓòÉΓòÉ 6.115. MSGDEPTH ΓòÉΓòÉΓòÉ
  6131.  
  6132. Maximum number of retained messages. 
  6133.  
  6134. MSGDEPTH limits the number of messages that LPEX will retain for display in the 
  6135. message window. As new messages are added, the oldest messages are lost. 
  6136.  
  6137.  Syntax:   SET MSGDEPTH n 
  6138.            or QUERY MSGDEPTH 
  6139.  
  6140.  Parameters: n - the maximum depth of message window (default 50) 
  6141.  
  6142.  
  6143. ΓòÉΓòÉΓòÉ 6.116. MSGFONTSIZE ΓòÉΓòÉΓòÉ
  6144.  
  6145. This function no longer has any meaning in this version of LPEX. 
  6146.  
  6147. Size of characters in the main message window. 
  6148.  
  6149.  
  6150. ΓòÉΓòÉΓòÉ 6.117. MSGWIDTH ΓòÉΓòÉΓòÉ
  6151.  
  6152. Formatting width for messages. 
  6153.  
  6154. This function no longer has any meaning in this version of LPEX. 
  6155.  
  6156. MSGWIDTH splits long messages into a number of lines, each no longer than 
  6157. MSGWIDTH characters. The split is done at a convenient blank, if possible. The 
  6158. value can be positive or negative. If negative, MSGWIDTH is the current screen 
  6159. width, minus n. 
  6160.  
  6161.  Syntax:   SET MSGWIDTH n 
  6162.            or QUERY MSGWIDTH 
  6163.  
  6164.  Parameters: n - the width in characters of the message pop-up box (default is 
  6165.            current screen width minus two) 
  6166.  
  6167.  
  6168. ΓòÉΓòÉΓòÉ 6.118. MSGWINDOW ΓòÉΓòÉΓòÉ
  6169.  
  6170. Set the mode of the message window. 
  6171.  
  6172. MSGWINDOW gives control over whether the message is visible, minimized or 
  6173. maximized. or activated. 
  6174.  
  6175.  Syntax:   SET MSGWINDOW option 
  6176.  
  6177.  Parameters: 
  6178.  
  6179.     ACTIVATE  the window is restored if necessary and the focus set to the 
  6180.               window. 
  6181.  
  6182.     MINLPEX   all windows in the entire LPEX session is minimised including any 
  6183.               ancilliary windows such as HELP and Find/Change. (note that MIN 
  6184.               is not an abbreviation for this - only for MINIMIZED 
  6185.  
  6186.     MINimized the window is minimised - if the window was hidden it is made 
  6187.               visible before minimizing. 
  6188.  
  6189.     MAXimized the window is maximized - if the window was hidden it is made 
  6190.               visible before maximizing. 
  6191.  
  6192.     VISIBLE   the window set to restored size and made visible - focus is not 
  6193.               necessarily given to the window. 
  6194.  
  6195.  
  6196. ΓòÉΓòÉΓòÉ 6.119. MSGWINDOWID (QUERY only) ΓòÉΓòÉΓòÉ
  6197.  
  6198. This QUERY returns the id (handle) of the message/windowlist window. 
  6199.  
  6200.  Syntax:   QUERY MSGWINDOWID 
  6201.  
  6202.  
  6203. ΓòÉΓòÉΓòÉ 6.120. MSGWINDOWPOS ΓòÉΓòÉΓòÉ
  6204.  
  6205. Positions and optionally sizes message window. 
  6206.  
  6207.  SET MSGWINDOWPOS x y [cx cy] 
  6208.  
  6209.  The parameters are all in pels and refer to the frame, not the client area. x 
  6210.  and y set the position of the lower left corner, while cx and cy set the width 
  6211.  and depth. If cx and cy are omitted or set to 0 the window is not resized. 
  6212.  Setting both cx and cy to -1 will maximize the window (x and y will be 
  6213.  ignored). 
  6214.  
  6215.  Note that some part of the window must be visible on the desktop, whose size 
  6216.  can be obtained by QUERY SCREEN.  Note also that LPEX ensures that the client 
  6217.  area is always a whole number of characters wide or deep, so the cx and cy 
  6218.  values may be adjusted by LPEX to ensure this. 
  6219.  
  6220.  
  6221. ΓòÉΓòÉΓòÉ 6.121. NAME ΓòÉΓòÉΓòÉ
  6222.  
  6223. Set the document name. 
  6224.  
  6225. NAME changes the name of the current document. A name may be up to 80 
  6226. characters in length, although a limited number of characters may be visible at 
  6227. one time in the window title bar. 
  6228.  
  6229.  Syntax:   SET NAME name 
  6230.            or QUERY NAME 
  6231.  
  6232.  Parameters: name - the new name for the current document 
  6233.  
  6234.  
  6235. ΓòÉΓòÉΓòÉ 6.122. NOBLANKS ΓòÉΓòÉΓòÉ
  6236.  
  6237. Setting NOBLANKS ON causes trailing blanks to be removed when an unformatted 
  6238. file is saved by the SAVE command 
  6239.  
  6240.  Syntax:   SET NOBLANKS ON/OFF/INVERSE 
  6241.            or QUERY NOBLANKS 
  6242.  
  6243.  
  6244. ΓòÉΓòÉΓòÉ 6.123. NOSAVE ΓòÉΓòÉΓòÉ
  6245.  
  6246. Do not allow document to be saved. 
  6247.  
  6248. NOSAVE protects a document from being autosaved or saved by the SAVE command. 
  6249.  
  6250.  Syntax:   SET NOSAVE ON/OFF/INVERSE 
  6251.            or QUERY NOSAVE 
  6252.  
  6253.  
  6254. ΓòÉΓòÉΓòÉ 6.124. OPENLIST ΓòÉΓòÉΓòÉ
  6255.  
  6256. Sets the initializing conditions for the file dialogs. 
  6257.  
  6258. OPENLIST determines whether the Files list is to be initialised automatically 
  6259. on initial opening of the Open, Get or Save As dialogs. 
  6260.  
  6261.  Syntax:   SET OPENLIST ON/OFF/INVERSE 
  6262.            or QUERY OPENLIST 
  6263.  
  6264.  
  6265. ΓòÉΓòÉΓòÉ 6.125. OVERFONT ΓòÉΓòÉΓòÉ
  6266.  
  6267. Set fonts for overlay lines. 
  6268.  
  6269. OVERFONT.n sets the fonts for the overlay which appears on line n of the view. 
  6270. Each digit in the string parameter sets the font for the corresponding 
  6271. character position on the screen. These fonts are in the range zero through 
  6272. nine and are defined by the SET FONT.n command. They may be reset by the SET 
  6273. FONT.n command without affecting the appearance of the overlay line, unless a 
  6274. further SET OVERFONT command is issued. If no string is specified, the font set 
  6275. by FONT.OVERLAY is used. 
  6276.  
  6277.  Syntax:   SET OVERFONT.n [string] 
  6278.            or QUERY OVERFONT.n 
  6279.  
  6280.  Parameters: 
  6281.  
  6282.     n         the screen line for which the fonts are to be set. A positive 
  6283.               value is counted from the top of the window, a negative value 
  6284.               from the bottom. 
  6285.  
  6286.     string    a numeric string (ranging from zero through nine) in which each 
  6287.               digit identifies a font. If the string is shorter than the 
  6288.               overlay, the font set in FONT.OVERLAY fills the remaining 
  6289.               positions. 
  6290.  
  6291.  
  6292. ΓòÉΓòÉΓòÉ 6.126. OVERHANG ΓòÉΓòÉΓòÉ
  6293.  
  6294. Specify overhang for flowed elements. 
  6295.  
  6296. OVERHANG determines the indentation of flowed elements. When elements are 
  6297. automatically flowed from one line to the next, the second and subsequent lines 
  6298. start at the same indentation as the first flowed element. A positive value for 
  6299. OVERHANG will indent the flowed lines to the right of the first line, whilst a 
  6300. negative value will cause the flowed lines to appear to the left of the first 
  6301. line. The amount of the offset is the product of OVERHANG multiplied by INDENT. 
  6302. OVERHANG has a switch on value of one but subsequently defaults to zero. 
  6303.  
  6304.  Syntax:   SET OVERHANG [n] 
  6305.            or QUERY OVERHANG 
  6306.  
  6307.  Parameters: n - the value by which INDENT is multiplied to determine the 
  6308.            number of characters by which to offset lines 
  6309.  
  6310.  
  6311. ΓòÉΓòÉΓòÉ 6.127. OVERLAY ΓòÉΓòÉΓòÉ
  6312.  
  6313. Set text for overlay line. 
  6314.  
  6315. OVERLAY.n determines that a given string is overlaid onto the whole of row n of 
  6316. the screen. The string appears in the font set by SET FONT.OVERLAY unless SET 
  6317. OVERFONT.n overrides this. An OVERLAY line is switched off by using SET 
  6318. OVERLAY.n with no text. n must have the same value and sign as was used when 
  6319. the overlay was first specified. 
  6320.  
  6321.  Syntax:   SET OVERLAY.n [string] 
  6322.            or QUERY OVERLAY.n 
  6323.  
  6324.  Parameters: 
  6325.  
  6326.     n         the line on which the overlay is to appear. A positive value is 
  6327.               counted from the top of the screen, a negative value from the 
  6328.               bottom. 
  6329.  
  6330.     string    text to appear on the overlay line 
  6331.  
  6332.  
  6333. ΓòÉΓòÉΓòÉ 6.128. PAD ΓòÉΓòÉΓòÉ
  6334.  
  6335. Set the pad character. 
  6336.  
  6337. PAD determines the character which will be used to extend or fill elements as 
  6338. required. 
  6339.  
  6340.  Syntax:   SET PAD char 
  6341.            or QUERY PAD 
  6342.  
  6343.  
  6344. ΓòÉΓòÉΓòÉ 6.129. PARENT ΓòÉΓòÉΓòÉ
  6345.  
  6346. Set the parent window for LPEX. 
  6347.  
  6348. PARENT changes the parentage of LPEX to the window whose handle is passed as 
  6349. the parameter. It the parameter is 0, LPEX is reset to have the DESKTOP 
  6350. (screen) as the parent. Any open documents are also given the new window as the 
  6351. parent. The current positioning is maintained at the same relative position to 
  6352. the new parent as it was before resulting in the windows being relocated on the 
  6353. screen. All dialogs and the windowlist window will always have the DESKTOP as 
  6354. the parent. 
  6355.  
  6356. The parent of LPEX must be the CLIENT window if a frame and if the id of the 
  6357. frame window is passed LPEX will find the id of the CLIENT. 
  6358.  
  6359. Changing the parent provides two charactestics. 
  6360.  
  6361.  o The windows are clipped to the boundary of the parent window. 
  6362.  
  6363.  o LPEX is hidden if the parent is minimised. 
  6364.  
  6365.  Syntax:   SET PARENT id 
  6366.            where id is the handle of the window to which the LPEX parentage is 
  6367.            to be assigned. A value of 0 means the DESKTOP. 
  6368.  
  6369.            or QUERY PARENT 
  6370.  
  6371.  
  6372. ΓòÉΓòÉΓòÉ 6.130. PARSER ΓòÉΓòÉΓòÉ
  6373.  
  6374. Define the live parser to be used. 
  6375.  
  6376. PARSER defines which parser is to be used. This sets the command to be invoked 
  6377. by the TRIGGER command to process elements on the pending list. As each is 
  6378. processed, the parser command specified by SET PARSER is invoked with the 
  6379. pending element temporarily set to the current element.  A call to SET PARSER 
  6380. will process any pending changed elements before the new parser is selected or 
  6381. switched off.  Automatic parsing is switched off if SET PARSER is used without 
  6382. parameters. 
  6383.  
  6384. The parser command must be a native command and is invoked with the parameter 
  6385. string specified on the SET PARSER command. The parser itself can be a macro or 
  6386. an external LPEX command. If so, the native command must be LXR. Automatic 
  6387. parsing of elements may be switched off by using SET PARSER without a command 
  6388. name or parameters. See also SET FULLPARSE 
  6389.  
  6390.  Syntax:   SET PARSER [command] [parameters] 
  6391.            or QUERY PARSER 
  6392.  
  6393.  Parameters: 
  6394.  
  6395.     command   the command to be invoked by TRIGGER 
  6396.  
  6397.     parameters the parameters required by command 
  6398.  
  6399.  
  6400. ΓòÉΓòÉΓòÉ 6.131. PENDING ΓòÉΓòÉΓòÉ
  6401.  
  6402. Element is pending processing by parser. 
  6403.  
  6404. PENDING can add or drop the current element from the trigger list of elements 
  6405. waiting to be processed. Elements are added to the pending list if a PARSER is 
  6406. set and their text content is changed by commands such as INSERT and SET 
  6407. CONTENT or by overtyping.  An element is also automatically added to the list 
  6408. if a PARSER is set and the element becomes the current element after an element 
  6409. is deleted by any means. SET PENDING without a parameter adds the current 
  6410. element to the pending list. 
  6411.  
  6412.  Syntax:   SET PENDING OFF/PARSER/CHANGE/DELETE/ BOTH 
  6413.            or QUERY PENDING 
  6414.  
  6415.  Parameters: one of the following: 
  6416.  
  6417.     OFF       drops current element from pending list 
  6418.  
  6419.     PARSER    indicates to a post-parser process that the element has been 
  6420.               changed by the main parser but the text has not changed.  This 
  6421.               form of the command should only be issued by the main parser. 
  6422.  
  6423.     CHANGE    forces reprocessing when current element has been changed 
  6424.  
  6425.     DELETE    forces reprocessing when the prior element has been deleted, 
  6426.               There may have been several elements deleted. 
  6427.  
  6428.     BOTH      forces reprocessing when both a change and deletion have occurred 
  6429.  
  6430.  
  6431. ΓòÉΓòÉΓòÉ 6.132. POSITION ΓòÉΓòÉΓòÉ
  6432.  
  6433. Set character position in element. 
  6434.  
  6435. POSITION moves the current position within the character content of the current 
  6436. element. The current position may be to the right of the last character of the 
  6437. element (allowing a Block copy or move before that position to place data after 
  6438. the last character of the data, for example). 
  6439.  
  6440.  Syntax:   SET POSITION n 
  6441.            or QUERY POSITION 
  6442.  
  6443.  Parameters: n - a positive value up to one greater than the length of the 
  6444.            content of the element 
  6445.  
  6446.  
  6447. ΓòÉΓòÉΓòÉ 6.133. PROFILES ΓòÉΓòÉΓòÉ
  6448.  
  6449. Set profiles to be used. 
  6450.  
  6451. PROFILES sets the list of profiles that are to be used (if available) during 
  6452. LOAD or SAVE. This setting overrides any previous SET PROFILES. 
  6453.  
  6454.  Syntax:   SET PROFILES [SYSTEM] [LOAD] [USER] [SAVE] 
  6455.            or QUERY PROFILES 
  6456.  
  6457.  Parameters: one of the following: 
  6458.  
  6459.     SYSTEM    PROFSYS.LX (the system profile) is called after LOAD, but before 
  6460.               an extension-dependent macro 
  6461.  
  6462.     LOAD      loads extension-dependent macro. Its name will match DOCTYPE and 
  6463.               have an LXL extension. 
  6464.  
  6465.     USER      PROFILE.LX is called after LOAD and after PROFSYS and 
  6466.               extension-dependent macro 
  6467.  
  6468.     SAVE      macro with name matching doctype .LXS is called to set formatting 
  6469.               defaults 
  6470.  
  6471.               By default, all four are used. 
  6472.  
  6473.  
  6474. ΓòÉΓòÉΓòÉ 6.134. PROTECT ΓòÉΓòÉΓòÉ
  6475.  
  6476. Classes to be protected on display. 
  6477.  
  6478. PROTECT ensures that elements specified in classlist are protected against 
  6479. overtyped changes. Changes by other means such as macros are still allowed. 
  6480.  
  6481.  Syntax:   SET PROTECT classlist 
  6482.            or QUERY PROTECT 
  6483.  
  6484.  Parameters: classlist - the list of classes protected against overtyped 
  6485.            changes 
  6486.  
  6487.  
  6488. ΓòÉΓòÉΓòÉ 6.135. RAWTEXT (QUERY only) ΓòÉΓòÉΓòÉ
  6489.  
  6490. Data content of an element without symbol substitution. 
  6491.  
  6492. RAWTEXT returns the content of the character string of the current element. 
  6493. Irrespective of the setting of SYMBOLS any substituted characters are restored 
  6494. to the original symbol string. Using the form instead of CONTENT guarantees 
  6495. that if the text is replaced by a SET CONTENT the symbol variables will be 
  6496. retained. 
  6497.  
  6498.  Syntax:   QUERY RAWTEXT 
  6499.  
  6500.  
  6501. ΓòÉΓòÉΓòÉ 6.136. READONLY ΓòÉΓòÉΓòÉ
  6502.  
  6503. Protect elements from changes. 
  6504.  
  6505. READONLY protects a view from changes to its elements. An attempted overtype 
  6506. sounds an alarm. 
  6507.  
  6508.  Syntax:   SET READONLY ON/OFF/INVERSE 
  6509.            or QUERY READONLY 
  6510.  
  6511.  
  6512. ΓòÉΓòÉΓòÉ 6.137. RECALL ΓòÉΓòÉΓòÉ
  6513.  
  6514. Set command recall options. 
  6515.  
  6516. RECALL sets the size of command-recall buffer. LPEX maintains a buffer of 
  6517. recently entered commands which can be recalled. By default this buffer holds 
  6518. up to 12 commands, but the size can be any value between 1 and 1000. RECALL 
  6519. also lets you determine which commands get saved in the buffer. By default only 
  6520. those issued through the command line are saved, but you can also specify that 
  6521. commands issued by selecting menu pull-down options or by pressing keys to 
  6522. which actions have been assigned are also recallable. 
  6523.  
  6524.  Syntax:   SET RECALL n [COMMANDLINE] [PULLDOWN] [ACTIONKEY] 
  6525.            or QUERY RECALL 
  6526.  
  6527.  Parameters: 
  6528.  
  6529.     n         the size of the recall buffer. The minimum value is 1, the 
  6530.               maximum is 1000 and the default is 12. 
  6531.  
  6532.     COMMANDLINE commands issued through the command line are to be recallable 
  6533.  
  6534.     PULLDOWN  commands issued through menu pull-down options are to be 
  6535.               recallable 
  6536.  
  6537.     ACTIONKEY commands issued by pressing action keys are to be recallable 
  6538.  
  6539.  
  6540. ΓòÉΓòÉΓòÉ 6.138. RESOLVE (QUERY only) ΓòÉΓòÉΓòÉ
  6541.  
  6542. Resolution of command to be executed. 
  6543.  
  6544. RESOLVE.name returns a string describing the command that would be executed if 
  6545. name were issued as a command. This response will be SYNONYM, NATIVE, QUERY or 
  6546. ?. The question mark is returned if the command might be an OS/2 command, an 
  6547. LPEX macro or is unknown. QUERY is returned for any name that would resolve to 
  6548. a QUERY command. If SYNONYM is returned, the value of that synonym is also 
  6549. included. NATIVE implies that the command is built into LPEX. 
  6550.  
  6551.  Syntax:   QUERY RESOLVE.name 
  6552.  
  6553.  Parameters: name - the name of the command to be queried 
  6554.  
  6555.  
  6556. ΓòÉΓòÉΓòÉ 6.139. REXX ΓòÉΓòÉΓòÉ
  6557.  
  6558. Enable use of REXX (if resident). 
  6559.  
  6560. If a REXX interpreter is present, LPEX will use it for executing macros as long 
  6561. as the REXX option is ON (which is the default). Switching it OFF will force 
  6562. LPEX to use the built-in macro processor which, though faster, has no support 
  6563. for variables, conditional processing etc. 
  6564.  
  6565.  
  6566. ΓòÉΓòÉΓòÉ 6.140. SCREEN (QUERY only) ΓòÉΓòÉΓòÉ
  6567.  
  6568. Summary of window characteristics. 
  6569.  
  6570. SCREEN gives the number of rows and columns in the window. 
  6571.  
  6572. SCREEN also gives the size (in PELS) of the data area and the (nominal) 
  6573. character size for the window. See also  FONTSIZE. 
  6574.  
  6575.  Syntax:   QUERY SCREEN 
  6576.  
  6577.  
  6578. ΓòÉΓòÉΓòÉ 6.141. SECONDS (QUERY only) ΓòÉΓòÉΓòÉ
  6579.  
  6580. Seconds elapsed since start of LPEX session. 
  6581.  
  6582. SECONDS gives the number of seconds since the LPEX session started. 
  6583.  
  6584.  Syntax:   QUERY SECONDS 
  6585.  
  6586.  
  6587. ΓòÉΓòÉΓòÉ 6.142. SHOW ΓòÉΓòÉΓòÉ
  6588.  
  6589. Indicate if element for show. 
  6590.  
  6591. SHOW indicates that an element is purely for show, to improve the presentation 
  6592. of a document while editing. SHOW elements are automatically excluded when 
  6593. documents are written to a file.  Setting SHOW ON or OFF increments the change 
  6594. count and may be undone with the UNDO command. SHOW elements can be excluded 
  6595. from the display explicitly by using SET SHOWS OFF. 
  6596.  
  6597.  Syntax:   SET SHOW ON/OFF/INVERSE 
  6598.            or QUERY SHOW 
  6599.  
  6600.  
  6601. ΓòÉΓòÉΓòÉ 6.143. SHOWCURRENT ΓòÉΓòÉΓòÉ
  6602.  
  6603. Force current element to be visible. 
  6604.  
  6605. SHOWCURRENT OFF (the default) ensures that the current position always moves to 
  6606. a visible element.  SHOWCURRENT ON forces the current element to be visible, 
  6607. regardless of the settings of INCLUDE and EXCLUDE. 
  6608.  
  6609.  Syntax:   SET SHOWCURRENT ON/OFF/INVERSE 
  6610.            or QUERY SHOWCURRENT 
  6611.  
  6612.  
  6613. ΓòÉΓòÉΓòÉ 6.144. SHOWS ΓòÉΓòÉΓòÉ
  6614.  
  6615. Enable display of show elements. 
  6616.  
  6617. SHOWS displays SHOW  elements. Turning SHOWS OFF suppresses the display of SHOW 
  6618. elements. 
  6619.  
  6620.  Syntax:   SET SHOWS ON/OFF/INVERSE 
  6621.            or QUERY SHOWS 
  6622.  
  6623.  
  6624. ΓòÉΓòÉΓòÉ 6.145. SIDESCROLL ΓòÉΓòÉΓòÉ
  6625.  
  6626. Gives offset of leftmost visible column. 
  6627.  
  6628. SIDESCROLL gives the number of columns that cursor is positioned to the right 
  6629. of column one. LPEX scrolls sideways to keep the current position visible. When 
  6630. no sideways scrolling is in effect, zero is returned. 
  6631.  
  6632.  Syntax:   SET SIDESCROLL n 
  6633.            or QUERY SIDESCROLL 
  6634.  
  6635.  
  6636. ΓòÉΓòÉΓòÉ 6.146. SPACE ΓòÉΓòÉΓòÉ
  6637.  
  6638. The character used to highlight formatting spaces. 
  6639.  
  6640. SPACE defines which character is used to occupy the blank areas into which 
  6641. nothing has been typed. 
  6642.  
  6643.  Syntax:   SET SPACE [char] 
  6644.            or QUERY SPACE 
  6645.  
  6646.  Parameters: char - the required SPACE character 
  6647.  
  6648.  
  6649. ΓòÉΓòÉΓòÉ 6.147. SPILL ΓòÉΓòÉΓòÉ
  6650.  
  6651. Formatting width for spillable elements. 
  6652.  
  6653. SPILL determines the width at which SPILLable elements are formatted. If an 
  6654. element, whose FORMAT includes the SPILL option, is longer than the SPILL width 
  6655. the line will end at a blank and a new line is started. If SPILL is larger than 
  6656. FORMWIDTH, it has no effect. 
  6657.  
  6658.  Syntax:   SET SPILL n 
  6659.            or QUERY SPILL 
  6660.  
  6661.  Parameters: n - the width (in characters) at which a new line begins for a 
  6662.            SPILLable element. This must be in the range 20 through 2500. 
  6663.  
  6664.  
  6665. ΓòÉΓòÉΓòÉ 6.148. STATUSLINE ΓòÉΓòÉΓòÉ
  6666.  
  6667. Control display of last generated. 
  6668.  
  6669. STATUSLINE controls the displaying of the document/view status. 
  6670.  
  6671. The status is in three parts. 
  6672.  
  6673.  Insert/replace mode and cursor position in the file. 
  6674.  Number of changes since the last SAVE 
  6675.  Whether in BROWSEmode. 
  6676.  
  6677.  Syntax:   SET STATUSLINE/ON/OFF/INVERSE/ IMM 
  6678.            or QUERY STATUSLINE 
  6679.  
  6680.  Parameters: 
  6681.  
  6682.     ON        display the status in a special area at the top of the window. 
  6683.  
  6684.               If the STATUSLINE setting is not ON the space is not reserved in 
  6685.               the window. 
  6686.  
  6687.     OFF       do not display the status anywhere. 
  6688.  
  6689.     INVERSE   toggles between ON and OFF, and sets DYNAMIC to OFF 
  6690.  
  6691.  
  6692. ΓòÉΓòÉΓòÉ 6.149. SUBGROUP ΓòÉΓòÉΓòÉ
  6693.  
  6694. Display local group only. 
  6695.  
  6696. SUBGROUP displays only the local group. The elements in the same context as the 
  6697. current position, bounded by the setting of BOUND, are the display group. This 
  6698. group can be selected for display (with all other data lower than or at the 
  6699. level of BOUND, excluded). by setting SUBGROUP ON. The default of SUBGROUP OFF 
  6700. causes all elements at or below BOUND to be displayed, regardless of their 
  6701. relationship to the current position. 
  6702.  
  6703.  Syntax:   SET SUBGROUP ON/OFF/INVERSE 
  6704.            or QUERY SUBGROUP 
  6705.  
  6706.  
  6707. ΓòÉΓòÉΓòÉ 6.150. SYMBOL ΓòÉΓòÉΓòÉ
  6708.  
  6709. Special character symbolic font. 
  6710.  
  6711. SYMBOL.string sets up a new special character symbol. When the string is typed 
  6712. into the data, it will be replaced by the hexadecimal code and font associated 
  6713. with the required symbol (providing AUTOSYMBOLS is ON or a live parser is 
  6714. processing the symbols). If no font is given the default font (BASEFONT) for 
  6715. the element will be used. When SET SYMBOLS is ON, any occurrence of the special 
  6716. character in the data will be displayed as the required symbol. Optionally, a 
  6717. second font may be specified. This font will never be set by LPEX but will be 
  6718. recognised as also identifying the the character c as the representation of the 
  6719. special character symbol. 
  6720.  
  6721. For example 
  6722.  
  6723. SET SYMBOL.!alpha. xe0 *
  6724.  
  6725. and 
  6726.  
  6727. SET SYMBOL.!alpha. 224 *
  6728.  
  6729. will both have the same effect. Typing !alpha will enter the Greek alpha 
  6730. character, in font *. 
  6731.  
  6732.  Syntax:   SET SYMBOL.string c font [altfont] 
  6733.            or QUERY SYMBOL.string 
  6734.  
  6735.  Parameters: 
  6736.  
  6737.     string    string to be typed into data (15 character maximum length) 
  6738.  
  6739.     c         the single character, hexadecimal code or three digit code 
  6740.               representing the special character to replace string in the data. 
  6741.  
  6742.     font      the font in which the special character will appear 
  6743.  
  6744.     altfont   the alternate font in which the special character can appear 
  6745.  
  6746.  
  6747. ΓòÉΓòÉΓòÉ 6.151. SYMBOLLIST (QUERY only) ΓòÉΓòÉΓòÉ
  6748.  
  6749. Return list of current symbols. 
  6750.  
  6751. SYMBOLLIST gives an unordered list of the names of all the symbols set for the 
  6752. current document. 
  6753.  
  6754.  Syntax:   QUERY SYMBOLLIST 
  6755.  
  6756.  
  6757. ΓòÉΓòÉΓòÉ 6.152. SYMBOLS ΓòÉΓòÉΓòÉ
  6758.  
  6759. Display special characters as symbols. 
  6760.  
  6761. SYMBOLS displays symbols exactly as they were entered, rather than as the 
  6762. special characters they represent. The symbols are included in data formatted 
  6763. for the screen or saving; the document itself is not changed. 
  6764.  
  6765.  Syntax:   SET SYMBOLS ON/OFF/INVERSE 
  6766.            or QUERY SYMBOLS 
  6767.  
  6768.  
  6769. ΓòÉΓòÉΓòÉ 6.153. SYNONYM ΓòÉΓòÉΓòÉ
  6770.  
  6771. Value of a synonym. 
  6772.  
  6773. SYNONYM.name sets up a synonym for a command. When used at the start of an 
  6774. interactive command, a synonym will be replaced by the value of the synonym 
  6775. before the command is executed. For example 
  6776.  
  6777. SET SYNONYM.BLOCKSHIFT 6 BLOCK SHIFT RIGHT 2
  6778.  
  6779. would cause the marked block to be moved two characters to the right if any of 
  6780. BLOCKSHIFT, BLOCKSHIF, BLOCKSHI or BLOCKSH were typed on the command line. 
  6781.  
  6782.  Syntax:   SET SYNONYM.name length value 
  6783.            or QUERY SYNONYM.name 
  6784.  
  6785.  Parameters: 
  6786.  
  6787.     name      arbitrary name (the synonym) given to the command 
  6788.  
  6789.     length    the length that name may be abbreviated to and still recognized. 
  6790.               The maximum length is 15 characters. 
  6791.  
  6792.     value     the command to be issued when name is typed 
  6793.  
  6794.  
  6795. ΓòÉΓòÉΓòÉ 6.154. SYNONYMLIST (QUERY only) ΓòÉΓòÉΓòÉ
  6796.  
  6797. Return list of current synonyms. 
  6798.  
  6799. SYNONYMLIST gives a list of all the synonyms set for the current document. 
  6800.  
  6801.  Syntax:   QUERY SYNONYMLIST 
  6802.  
  6803.  
  6804. ΓòÉΓòÉΓòÉ 6.155. TABS ΓòÉΓòÉΓòÉ
  6805.  
  6806. Set tab positions. 
  6807.  
  6808. TABS sets the tabulation stops for a document. When the Tab or Backtab key is 
  6809. pressed, the cursor moves to the next or previous tab position respectively. 
  6810. Tabs may be set at a number of explicit positions and/or at fixed intervals. 
  6811. For example: 
  6812.  
  6813. SET TABS 8 12 16 EVERY 10
  6814.  
  6815. will set tabs at positions 8, 12, 16, 26, 36, 46 and so forth. A maximum of 50 
  6816. explicit positions may be set, and these must be supplied in increasing value. 
  6817. By default tabs are set every eight positions. 
  6818.  
  6819.  Syntax:   SET TABS [n1 n2 n3] [EVERY m] 
  6820.            or QUERY TABS 
  6821.  
  6822.  Parameters: 
  6823.  
  6824.     n1 n2 n3  the character positions at which tabs stops are explicitly 
  6825.               required 
  6826.  
  6827.     EVERY m   tab stops are set at intervals of m (default eight) 
  6828.  
  6829.  
  6830. ΓòÉΓòÉΓòÉ 6.156. TRIGPOS ΓòÉΓòÉΓòÉ
  6831.  
  6832. Position to use after trigger processing. 
  6833.  
  6834. TRIGPOS sets the position which will become the current position after trigger 
  6835. processing is complete. This is character n in the element. If TRIGPOS is not 
  6836. set, the current position is saved before trigger processing and restored 
  6837. afterwards. 
  6838.  
  6839. QUERY TRIGPOS returns a number which indicates the saved current position. If 
  6840. the position is unknown a zero is returned. If the position is in the current 
  6841. element, a positive number is returned. If the position is known but is not on 
  6842. the current element an negative number is returned. 
  6843.  
  6844.  Syntax:   SET TRIGPOS n 
  6845.            or QUERY TRIGPOS 
  6846.  
  6847.  Parameters: n - the character position to become the current position after 
  6848.            trigger processing 
  6849.  
  6850.  
  6851. ΓòÉΓòÉΓòÉ 6.157. UNPROTECT ΓòÉΓòÉΓòÉ
  6852.  
  6853. Classes to be unprotected on display. 
  6854.  
  6855. UNPROTECT releases elements specified in classlist from protection against 
  6856. overtyped changes. Normally UNPROTECT is used to temporarily negate the effect 
  6857. of PROTECT command. 
  6858.  
  6859.  Syntax:   SET UNPROTECT classlist 
  6860.            or QUERY UNPROTECT 
  6861.  
  6862.  Parameters: classlist - the list of classes released from protection against 
  6863.            overtyping changes 
  6864.  
  6865.  
  6866. ΓòÉΓòÉΓòÉ 6.158. VERSION (QUERY only) ΓòÉΓòÉΓòÉ
  6867.  
  6868. LPEX version identification. 
  6869.  
  6870. VERSION gives the version of LPEX being used. This is of the form: 
  6871.  
  6872. LPEX Version 2.00
  6873.  
  6874.  Syntax:   QUERY VERSION 
  6875.  
  6876.  
  6877. ΓòÉΓòÉΓòÉ 6.159. VIEW (QUERY only) ΓòÉΓòÉΓòÉ
  6878.  
  6879. Gives name of view. 
  6880.  
  6881. VIEW.n displays the name of view n of the current document. 
  6882.  
  6883.  Syntax:   QUERY VIEW.n 
  6884.  
  6885.  Parameters: n - the number of the view for which the name is requested. 
  6886.  
  6887.  
  6888. ΓòÉΓòÉΓòÉ 6.160. VIEWHELP ΓòÉΓòÉΓòÉ
  6889.  
  6890. Add supplementary help libraries for the current view. 
  6891.  
  6892.  Syntax:   SET VIEWHELP libraries 
  6893.            or QUERY VIEWHELP 
  6894.  
  6895.  Parameters: libraries - one or more library names separated by blanks. These 
  6896.            are the names of files produced using the Information Presentation 
  6897.            Facility compiler. At run time, these files should be in the path 
  6898.            defined by the HELP environment variable. This variable is usually 
  6899.            defined in CONFIG.SYS. 
  6900.  
  6901.  This command can be used in conjunction with the SET ACTIONBAR command to 
  6902.  provide custom help panels for custom action bar items. 
  6903.  
  6904.  
  6905. ΓòÉΓòÉΓòÉ 6.161. VIEWLIST (QUERY only) ΓòÉΓòÉΓòÉ
  6906.  
  6907. List current view numbers. 
  6908.  
  6909. VIEWLIST gives a list of the numbers of all views currently in memory, 
  6910. separated by blanks. 
  6911.  
  6912.  Syntax:   QUERY VIEWLIST 
  6913.  
  6914.  
  6915. ΓòÉΓòÉΓòÉ 6.162. VIEWNAME ΓòÉΓòÉΓòÉ
  6916.  
  6917. Name of the current view. 
  6918.  
  6919. VIEWNAME is the name given to each view when it is created. The default name 
  6920. for the first view is Document, and subsequent views default to Viewn where n 
  6921. is the view number. To move to a named view, use the GOVIEW NAME command. 
  6922.  
  6923.  Syntax:   SET VIEWNAME [name] 
  6924.            or QUERY VIEWNAME 
  6925.  
  6926.  Parameters: name - the name to be given to the specific view. If none is 
  6927.            given, then the name is reset to the default. 
  6928.  
  6929.  
  6930. ΓòÉΓòÉΓòÉ 6.163. VIEWNUM (QUERY only) ΓòÉΓòÉΓòÉ
  6931.  
  6932. Unique number identifying view. 
  6933.  
  6934. VIEWNUM gives the unique number which identifies the current view amongst all 
  6935. of the views of the document created in the current session. The initial view 
  6936. has a VIEWNUM of one, and VIEWNUM for each successive view is incremented by 
  6937. one. 
  6938.  
  6939.  Syntax:   QUERY VIEWNUM 
  6940.  
  6941.  
  6942. ΓòÉΓòÉΓòÉ 6.164. WINDOW ΓòÉΓòÉΓòÉ
  6943.  
  6944. Set the mode of the document window. 
  6945.  
  6946. WINDOW give control over whether the current document is 
  6947. visible/hidden/minimized/maximized or activated. 
  6948.  
  6949.  Syntax:   SET WINDOW option 
  6950.  
  6951.  Parameters: 
  6952.  
  6953.     HIDDEN    the window is hidden from view - the is restored to normal before 
  6954.               hiding. 
  6955.  
  6956.     MINimized the window is minimised - if the window was hidden it is made 
  6957.               visible before minimizing. 
  6958.  
  6959.     MAXimized the window is maximized - if the window was hidden it is made 
  6960.               visible before maximizing. 
  6961.  
  6962.     VISIBLE   the window set to restored size and made visible - focus is not 
  6963.               necessarily given to the window. 
  6964.  
  6965.     ACTIVATEd the window is made visible and then place on top with the focus. 
  6966.  
  6967.  
  6968. ΓòÉΓòÉΓòÉ 6.165. WINDOWID (QUERY only) ΓòÉΓòÉΓòÉ
  6969.  
  6970. Unique number identifying window to PM. 
  6971.  
  6972. WINDOWID returns the unique number PM has assigned as the handle of the window. 
  6973. This number may be used to SEND or POST PM messages to that window. This is 
  6974. particularly necessary when operation in a modeless dialog. 
  6975.  
  6976.  Syntax:   QUERY WINDOWID 
  6977.  
  6978.  
  6979. ΓòÉΓòÉΓòÉ 6.166. WINDOWMAP (QUERY only) ΓòÉΓòÉΓòÉ
  6980.  
  6981. Map window row usage. 
  6982.  
  6983. WINDOWMAP gives a map of the usage of row on the screen when it was last built 
  6984. or displayed. Each row on the screen is represented by a single character in 
  6985. the returned character string: 
  6986.  
  6987.  o Digits for data. Data lines may appear empty when no data is available for 
  6988.    them. 
  6989.  
  6990.  o O  for an Overlay  line. 
  6991.  
  6992.  o "."  for an empty line that cannot be used by data. 
  6993.  
  6994.  
  6995. ΓòÉΓòÉΓòÉ 6.167. WINDOWPOS ΓòÉΓòÉΓòÉ
  6996.  
  6997. Positions and optionally resizes a view window 
  6998.  
  6999.  Syntax:   SET WINDOWPOS x y [cx cy] 
  7000.            or QUERY WINDOWPOS 
  7001.  
  7002.  Parameters: The parameters are all in pels and refer to the frame, not the 
  7003.            client area. x and y set the position of the lower left corner, 
  7004.            while cx and cy set the width and depth. If cx and cy are omitted or 
  7005.            set to 0 the window is not resized. Setting both cx and cy to -1 
  7006.            will maximize the window (x and y will be ignored). 
  7007.  
  7008.  Note Some part of the window must be visible on the desktop, whose size can be 
  7009.  obtained by QUERY SCREEN. Also, LPEX ensures that the client area is always a 
  7010.  whole number of characters wide or deep, so the cx and cy values may be 
  7011.  adjusted by LPEX to ensure this. 
  7012.  
  7013.  
  7014. ΓòÉΓòÉΓòÉ 6.168. WINDOWSHOW ΓòÉΓòÉΓòÉ
  7015.  
  7016. Controls when document and view windows are first shown. 
  7017.  
  7018. SET WINDOWSHOW CREATE shown when the window is created. 
  7019.  
  7020. SET WINDOWSHOW LOAD (the default) shown after the document has been loaded. 
  7021.  
  7022. SET WINDOWSHOW PARSE shown after the document has been parsed. 
  7023.  
  7024. SET WINDOWSHOW USER shown explicitly by the next SET WINDOW VISIBLE command. 
  7025.  
  7026. QUERY WINDOWSHOW returns the current value. 
  7027.  
  7028.  
  7029. ΓòÉΓòÉΓòÉ 6.169. WORDCHARS ΓòÉΓòÉΓòÉ
  7030.  
  7031. Define the characters which are to be considered a word in LPEX. 
  7032.  
  7033. WORDCHARS determines the valid word characters. The default word characters are 
  7034. the national language alphabetic characters as defined by the current codepage, 
  7035. plus the numerics. 
  7036.  
  7037.  Syntax:   SET WORDCHARS [characters] 
  7038.  
  7039.     SET WORDCHARS characters sets the valid word characters to the list 
  7040.     provided - this list replaces any previous character list. 
  7041.  
  7042.     The LPEX concept of a word does not apply to the Double Byte Character Set 
  7043.     (for example KANJI) and so the list is restricted to the Single Byte 
  7044.     Character Set. 
  7045.  
  7046.     or QUERY WORDCHARS 
  7047.  
  7048.     The characters are returned in ASCII collating sequence according to the 
  7049.     codepage in force. 
  7050.  
  7051.  
  7052. ΓòÉΓòÉΓòÉ 6.170. WRAP ΓòÉΓòÉΓòÉ
  7053.  
  7054. Wrap elements for the display. 
  7055.  
  7056. WRAP ON ensures that elements will wrap from one line to the next if the 
  7057. formatted line is longer than the screen width. 
  7058.  
  7059.  Syntax:   SET WRAP ON/OFF/INVERSE 
  7060.            or QUERY WRAP 
  7061.  
  7062.  
  7063. ΓòÉΓòÉΓòÉ 7. LPEX Application programming interface. ΓòÉΓòÉΓòÉ
  7064.  
  7065. This section explains the LPEX API interface for creating your own commands. 
  7066.  
  7067.  
  7068. ΓòÉΓòÉΓòÉ 7.1. Program Entry Conditions ΓòÉΓòÉΓòÉ
  7069.  
  7070. Your external command will receive control at a routine called lxmain().  This 
  7071. is defined like this: 
  7072.  
  7073.   int lxmain(parm)
  7074.    uchr *parm;
  7075.  
  7076. The type 'uchr' is simply an abbreviation for 'unsigned char' and is defined in 
  7077. the LPEX external command header files. 
  7078.  
  7079. The argument is a pointer to the command's parameter string: In other words 
  7080. everything typed following the command name on LPEX's command line. 
  7081.  
  7082. The return value is the return code sent back to LPEX.  The value -1 is 
  7083. reserved of LPEX's own use and you must not return this value from your 
  7084. external commands.  Some LPEX commands return other codes up to -9, which may 
  7085. be returned to your external command under certain conditions. We suggest that 
  7086. you allocate your return codes starting from -10. 
  7087.  
  7088.  
  7089. ΓòÉΓòÉΓòÉ 7.2. LPEX Access Library Calls ΓòÉΓòÉΓòÉ
  7090.  
  7091. In order to allow the external command programmer full access to LPEX without 
  7092. having to expose the full internal data structures, a library of C-callable 
  7093. LPEX access functions are provided.  These functions are listed here and 
  7094. described in more detail below. 
  7095.  
  7096.  lxcmd()   A routine to call an LPEX command. 
  7097.  
  7098.  lxcall()  An alternative routine to call LPEX commands. 
  7099.  
  7100.  lxalloc() Allocate storage through LPEX. 
  7101.  
  7102.  lxfree()  Free storage allocated with lxalloc(). 
  7103.  
  7104.  lxquery() Query LPEX data items and settings. 
  7105.  
  7106.  lxhab()   Obtain the handle to the anchor block. 
  7107.  
  7108.  lxnext()  steps to the next element 
  7109.  
  7110.  lxprev()  steps to the previous element 
  7111.  
  7112.  lxqtext(). Query the content of an element 
  7113.  
  7114.  lxstext() Set the content of an element. 
  7115.  
  7116.  lxqfont() Query the font string associated with an element 
  7117.  
  7118.  lxsfont() Set the font string for an element 
  7119.  
  7120.  lxqmode() Query the DBCS mode string for the current element. 
  7121.  
  7122.  lxqclass() Returns a long int describing the classes which apply to the 
  7123.            current element. 
  7124.  
  7125.  lxsclass() This command sets the classes which apply to the current element. 
  7126.  
  7127.  lxinsert() Insert text as a new element. 
  7128.  
  7129.  lxqmode() This call returns the DBCS mode string. 
  7130.  
  7131.  lxlink_user() Add a user defined pointer to some object to the element, view 
  7132.            or document control block. 
  7133.  
  7134.  lxquery_user() Query the user defined pointer within the element, view or 
  7135.            document control block. 
  7136.  
  7137.  lxfind_user() Find the (next) element associated with the pointer passed as a 
  7138.            parameter. 
  7139.  
  7140.  lxqgmlfnt() Find the string of fonts recognised by the GML parser. 
  7141.  
  7142.  lxgmlfntadd() Append your font codes to those already recognised by the GML 
  7143.  
  7144.  lxqelestate() Query the satus of the element, whether VISIBLE, SHOW and/or 
  7145.            PROTECTed. 
  7146.  
  7147.  
  7148. ΓòÉΓòÉΓòÉ 7.3. API function descriptions. ΓòÉΓòÉΓòÉ
  7149.  
  7150. In the following function descriptions, the type uchr is used. This is defined 
  7151. in the LPEX header file to be equivalent to unsigned char. 
  7152.  
  7153.  
  7154. ΓòÉΓòÉΓòÉ 7.3.1. lxcmd() ΓòÉΓòÉΓòÉ
  7155.  
  7156.  int far lxcmd(uchr far *cmd);
  7157.  
  7158. The Return Code is the return code from LPEX as defined for the command being 
  7159. invoked. 
  7160.  
  7161. This function provides a way of issuing any LPEX command, as though it was 
  7162. issued from the Command...->Issue_command dialog. The argument is a single 
  7163. string which contains the command to be executed. 
  7164.  
  7165. For example: 
  7166.  
  7167.   lxcmd("INSERT this is a new element");
  7168.   lxcmd("FIND UP ASIS needle");
  7169.   lxcmd("NEXT WORD");
  7170.  
  7171.  
  7172. ΓòÉΓòÉΓòÉ 7.3.2. lxcall() ΓòÉΓòÉΓòÉ
  7173.  
  7174.  int far lxcall(uchr far *rtn,
  7175.         uchr far *arg);
  7176.  
  7177. The Return Code is the return code from LPEX as defined for the command being 
  7178. invoked. 
  7179.  
  7180. This is an alternative method of issuing LPEX commands.  Two arguments are 
  7181. passed - the first the command name and the second the parameters for the 
  7182. command. 
  7183.  
  7184. For example: 
  7185.  
  7186.   lxcall("INSERT", "this is a new element");
  7187.   lxcall("MSG", "this is a message");
  7188.   lxcall("NEXT", "WORD");
  7189.  
  7190.  
  7191. ΓòÉΓòÉΓòÉ 7.3.3. lxalloc() ΓòÉΓòÉΓòÉ
  7192.  
  7193.   uchr far * far lxalloc(int size);
  7194.  
  7195. The Return Code is the address of the allicated storage or a NULL pointer if 
  7196. the allocation fails. 
  7197.  
  7198. Sometimes it may be necessary for an external command to add to or subtract 
  7199. from the LPEX internal data structures. It is recommended that this be done by 
  7200. issuing LPEX commands through the lxcmd() or lxcall() interfaces, but 
  7201. occasionally this may not be possible. For example an external command may wish 
  7202. to create control information which must continue to exist after the command 
  7203. has terminated (so that it may be examined by another command later). 
  7204.  
  7205. It is possible to use the SYNONYM mechanism to solve the problem since it can 
  7206. be used to create and modify global variables.  However this may be confusing 
  7207. to the user and in any case is not suitable for handling complex data 
  7208. consisting of bit fields or arbitrary byte values. 
  7209.  
  7210. Depending on the operating system and compile and link options used to create 
  7211. the command it may or may not be possible to use the standard C library malloc 
  7212. function to obtain memory space, but again depending on conditions this memory 
  7213. may or may not persist across different invocations of the command.  The 
  7214. lxalloc is provided to remove all these dependencies. 
  7215.  
  7216. The lxalloc() is essentially a malloc call using LPEX's own internal storage 
  7217. manager.  Using this function will therefore always work and will allocate 
  7218. storage which will last throughout the whole execution of the LPEX program. 
  7219.  
  7220. A word of warning: It is not a good idea to use these functions to create new 
  7221. elements or destroy old ones directly.This is because doing so will bypass the 
  7222. normal LPEX recording mechanisms which are used by AUTOSAVE, UNDO and QUIT. 
  7223. Since changes will not be properly recorded they will not be able to be undone 
  7224. and may allow the user to QUIT without saving. Any changes to element text or 
  7225. fonts should be done using commands (via lxcmd() or lxcall()) such as: 
  7226.  
  7227.     INSERT
  7228.     DELETE
  7229.     CHANGE
  7230.     SET CONTENT
  7231.     SET FONTS
  7232.  
  7233.  
  7234. ΓòÉΓòÉΓòÉ 7.3.4. lxfree() ΓòÉΓòÉΓòÉ
  7235.  
  7236.   void far lxfree(ptr)
  7237.    unsigned char far *ptr;
  7238.  
  7239. The lxfree() function should be used to free any storage allocated through 
  7240. lxalloc() that is no longer required. 
  7241.  
  7242. Note:  Do not use C's free() function to free storage obtained via lxalloc(). 
  7243.  
  7244.  
  7245. ΓòÉΓòÉΓòÉ 7.3.5. lxquery() ΓòÉΓòÉΓòÉ
  7246.  
  7247.   uchr far * far lxquery(uchr far *item,
  7248.              uchr far *buffer);
  7249.  
  7250. The Return Code is a pointer to "buffer" 
  7251.  
  7252. This function is used to extract data from LPEX.  The function is passed a 
  7253. string containing the item to be queried and a buffer to hold the result.  The 
  7254. buffer must be large enough for the result - the constant MAXLEN defined in 
  7255. LPEX2API.H is set to the longest possible result. 
  7256.  
  7257. The function provides access to almost the entire internal state of LPEX (see 
  7258. the LPEX QUERY command for a detailed list of items) in a way which is 
  7259. independent  of the actual internal LPEX data structures. The result returned 
  7260. by lxquery()  is a string identical to that which would appear in the message 
  7261. box if a QUERY command were issued i.e. the result of the QUERY command is 
  7262. preceded by the name of the item queried. 
  7263.  
  7264. There are three exceptions however:  when the result of a QUERY command 
  7265. consists of an empty string, a single blank or multiple blanks, the result is 
  7266. shown in the message box as <null> , <blank> or <blanks>. respectively.  This 
  7267. is just for visual clarity, the result from lxquery() is the true resulting 
  7268. string. 
  7269.  
  7270. Note:  Unlike the LPEX QUERY COMMAND, only a single item may be queried at a 
  7271.        time. 
  7272.  
  7273.  For example: 
  7274.  
  7275.     b = lxalloc(MAXLEN);
  7276.     lxquery("VERSION", b);
  7277.     lxquery("COUNTRY", b);
  7278.  
  7279.  
  7280. ΓòÉΓòÉΓòÉ 7.3.6. lxhab() ΓòÉΓòÉΓòÉ
  7281.  
  7282.   void far * lxhab(void);
  7283.  
  7284. The Return Code is the HAB for the process. 
  7285.  
  7286. This call returns the hab and may be used to invoke dialog boxes etc from 
  7287. external commands. 
  7288.  
  7289.  
  7290. ΓòÉΓòÉΓòÉ 7.4. "Fast Path" commands ΓòÉΓòÉΓòÉ
  7291.  
  7292. It is entirely possible to write parsers and other external commands using the 
  7293. above commands, however the code 
  7294.  
  7295.   lxquery("CONTENT",buff);
  7296. would return a string of the form 
  7297.  
  7298.   CONTENT this is the content
  7299. and the external command would have to step over the command name CONTENT etc. 
  7300. Obviously the parsing of the ASCII string within LPEX itself will also take 
  7301. time. For these reasons the following fast path commands have been provided, 
  7302. which directly set or query the content, fonts and classes of the current 
  7303. element. 
  7304.  
  7305. In the following calls the int return code is always 0 unless otherwise stated. 
  7306.  
  7307.  
  7308. ΓòÉΓòÉΓòÉ 7.4.1. lxnext() ΓòÉΓòÉΓòÉ
  7309.  
  7310.   int lxnext(void);
  7311.  
  7312. The Return Code is 1 if called when on the last element, otherwise 0. 
  7313.  
  7314. This command moves the "current element" pointer to the next element. For 
  7315. example to step forwards through each element in the file, a simple loop could 
  7316. be used: 
  7317.  
  7318.  do {
  7319.    something();
  7320.  } while ( lxnext() == 0 )
  7321.  
  7322.  
  7323. ΓòÉΓòÉΓòÉ 7.4.2. lxprev() ΓòÉΓòÉΓòÉ
  7324.  
  7325.   int lxprev(void);
  7326.  
  7327. The Return Code is 1 if called when on the first element, otherwise 0. 
  7328.  
  7329. This command moves the "current element" pointer to the previous element. For 
  7330. example to step BACKWARDS through each element in the file, a simple loop could 
  7331. be used: 
  7332.  
  7333.  do {
  7334.    something();
  7335.  } while ( lxprev() == 0 )
  7336.  
  7337.  
  7338. ΓòÉΓòÉΓòÉ 7.4.3. lxqtext() ΓòÉΓòÉΓòÉ
  7339.  
  7340.   int lxqtext(uchr far *buff);
  7341.  
  7342. The Return Code is 0. 
  7343.  
  7344. This command returns the content of the element. It is functionally equivalent 
  7345. to the command 
  7346.  
  7347.   lxcall("CONTENT",buff);
  7348.  
  7349. except that the string returned in buff[] does not contain the item name 
  7350. i.e.CONTENT. This call does not involve parsing of any ascii command and so is 
  7351. much faster, and is used in the supplied parsers. 
  7352.  
  7353.  
  7354. ΓòÉΓòÉΓòÉ 7.4.4. lxstext() ΓòÉΓòÉΓòÉ
  7355.  
  7356.   int lxstext(uchr far *buff);
  7357.  
  7358. The Return Code is 0. 
  7359.  
  7360. This call replaces the existing text of the current element with the string 
  7361. contained in "buff". 
  7362.  
  7363.  
  7364. ΓòÉΓòÉΓòÉ 7.4.5. lxqfont() ΓòÉΓòÉΓòÉ
  7365.  
  7366.   int lxqfont(uchr far *buff);
  7367.  
  7368. The Return Code is 0. 
  7369.  
  7370. This command returns the font string of the current element in buff[] 
  7371.  
  7372.  
  7373. ΓòÉΓòÉΓòÉ 7.4.6. lxsfont() ΓòÉΓòÉΓòÉ
  7374.  
  7375.   int lxsfont(uchr far *buff);
  7376.  
  7377. This command is used to set the font string for the current element.  The font 
  7378. string must be of the same length as the text string, and MUST be terminated 
  7379. with a NULL. 
  7380.  
  7381.  
  7382. ΓòÉΓòÉΓòÉ 7.4.7. lxqmode() ΓòÉΓòÉΓòÉ
  7383.  
  7384.   int lxqmode (uchr *buff)
  7385.  
  7386. The Return Code is 0. 
  7387.  
  7388. This call returns in buff[] the DBCS (Double Byte Character Set) mode string 
  7389. associated with the current element. In OS/2 the ideographic languages use two 
  7390. bytes to represent a "character". The first byte always lies within a known 
  7391. range or set of ranges, given by DosGetDBCSEv() while the second byte can lie 
  7392. anywhere in the range 0 to 255. The second byte of a DBCS character could 
  7393. therefore be mistaken for a SBCS character. LPEX returns when queried, a string 
  7394. of the same length as the CONTENT. The characters within that string are set as 
  7395. follows: 
  7396.  
  7397. buff[n] = '0' means CONTENT[n] is SBCS
  7398. buff[n] = '1' means CONTENT[n] is DBCS1 (first byte)
  7399. buff[n] = '2' means CONTENT[n] is DBCS2 (second byte)
  7400.  
  7401. External commands may then scan the text of the element, and use the mode 
  7402. string to ensure that only the SBCS characters are compared with delimiters 
  7403. such as " or \ or - 
  7404.  
  7405. Note:  The mode string characters are ASCII 0 1 or 2 NOT Hex 0 1 and 2. 
  7406.  
  7407.  
  7408. ΓòÉΓòÉΓòÉ 7.4.8. lxqclass() ΓòÉΓòÉΓòÉ
  7409.  
  7410.   int lxqclass(unsigned long int *classlist);
  7411.  
  7412. The Return Code is 0. 
  7413.  
  7414. Each element in an LPEX document may be assigned up to 32 classes and the view 
  7415. may then be restricted to EXCLUDE certain classes or INCLUDE only certain 
  7416. classes. This call returns the classes currently assigned to the element, while 
  7417. the next sets the classes for the current element. 
  7418.  
  7419.  
  7420. ΓòÉΓòÉΓòÉ 7.4.9. lxsclass() ΓòÉΓòÉΓòÉ
  7421.  
  7422.   int lxsclass(unsigned long int classlist);
  7423.  
  7424. The Return Code is 0. 
  7425.  
  7426. Typically, a parser written as an external command would read the content of 
  7427. each element in turn, using lxqtext(), and parse the element in whatever way is 
  7428. appropriate, setting a font character for each text character in the element. 
  7429. When parsing of the element is complete, a terminating null should be placed at 
  7430. the end of the font string and the function lxsfont() called to set the fonts. 
  7431. Note that the coloured text is displayed when the command SSHOW is executed, 
  7432. either implicitly when the command returns to LPEX or explicitly when called by 
  7433. the parser. 
  7434.  
  7435. Note:  The user may PROTECT certain classes via the action bar independant of 
  7436.        any external command, and an element which has a protected class 
  7437.        assigned to it will be effectively write protected.  A parser should 
  7438.        take this into account, by setting the class of each element to the 
  7439.        default before parsing, and setting the new classes after. 
  7440.  
  7441.  
  7442. ΓòÉΓòÉΓòÉ 7.4.10. lxqelestate() ΓòÉΓòÉΓòÉ
  7443.  
  7444.   long * lxqelestate ()
  7445.  
  7446. This call returns a LONG bitmap of the state of the elements The states returns 
  7447. are whether the element is VISIBLE, a SHOW element or PROTECTED, or any 
  7448. combination of these. The states are defined in the header file LPEX2API.H as 
  7449. follows 
  7450.  
  7451. #define LPEX_ELE_VISIBLE  (0x80000000)    /* VISIBLE element */
  7452. #define LPEX_ELE_SHOW    (0x40000000)    /* SHOW element */
  7453. #define LPEX_ELE_PROTECTED (0x20000000)    /* PROTECTED element */
  7454.  
  7455. A typical usage would be 
  7456.  
  7457.   if ( lxqelestate() & LPEX_ELE_VISIBLE ) ...
  7458.  
  7459.  
  7460. ΓòÉΓòÉΓòÉ 7.5. Routines to associate parser structures to elements, views or document ΓòÉΓòÉΓòÉ
  7461.  
  7462.  
  7463. ΓòÉΓòÉΓòÉ 7.5.1. lxlink_user() ΓòÉΓòÉΓòÉ
  7464.  
  7465.   int far lxlink_user(long int type,void far *object);
  7466.  
  7467. The Return Code is 0 if the link was successful otherwise 
  7468.  
  7469.  1         Link already set. 
  7470.  -2        Invalid type 
  7471.  -10,-11,-12 LPEX Control Block corresponding to type is not allocated. 
  7472.  
  7473.  This command allows the user to set a pointer to an object from the current 
  7474.  element or from the current document. The object to which the pointer points 
  7475.  is defined by the user, and it is the responsibility of the user to (a) ensure 
  7476.  that the object to which the pointer points is within the scope of the LPEX 
  7477.  process etc, and (b) to set the pointer back to NULL before any attempt to 
  7478.  delete the element (including an LPEX QQUIT). If the user has issued a SET 
  7479.  DELETING command, that routine must be used to set the pointer to NULL. If the 
  7480.  pointer is non-NULL, then the delete will fail with an appropriate message. 
  7481.  Pointers such as these may also be removed by commands called via the exit 
  7482.  profile, PROFEXIT.LX which is the executed against the current document as a 
  7483.  result of the user ending the edit session on that document. 
  7484.  
  7485.  To set a pointer from the current element: 
  7486.  
  7487.   if (lxlink_user(LPEX_ELEMENT,"A POINTER TO THIS STRING") != 0)
  7488.     lxcall("MSG","Could not set pointer of element scope");
  7489.  
  7490.  To set a pointer from the current document: 
  7491.  
  7492.   if (lxlink_user(LPEX_DOCUMENT,"This is document wide") != 0)
  7493.     lxcall("MSG","Could not set pointer of document scope");
  7494.  
  7495.  
  7496. ΓòÉΓòÉΓòÉ 7.5.2. lxquery_user() ΓòÉΓòÉΓòÉ
  7497.  
  7498.   int far lxquery_user(long int, void far **);
  7499.  
  7500. In conjunction with lxlink_user() this command allows the user to manage some 
  7501. object which must remain related to the current element or document. The user 
  7502. must take responsibility for any object to which the pointer points. 
  7503.  
  7504. To query a pointer from the current element: 
  7505.  
  7506. if ((lxquery_user(LPEX_ELEMENT,&pointer)) != 0)
  7507.   lxcall("MSG",Failed to query pointer");
  7508. else {
  7509.   if (pointer != NULL)
  7510.     lxcall("MSG","User defined pointer already used");
  7511.   else {
  7512.     if (lxlink_user(LPEX_ELEMENT,"A POINTER TO THIS   STRING") != 0)
  7513.     lxcall("MSG","Could not set pointer");
  7514.   }
  7515.  
  7516. The Return Code is 0 if the query was successful otherwise 
  7517.  
  7518.  -2        Invalid type 
  7519.  -10,-11,-12 LPEX Control Block corresponding to type is not allocated. 
  7520.  
  7521.  
  7522. ΓòÉΓòÉΓòÉ 7.5.3. lxfind_user() ΓòÉΓòÉΓòÉ
  7523.  
  7524.    int far lxfind_user(void far *);
  7525.  
  7526. This command is used when the external command wants to find the element 
  7527. associated with a given pointer. It works in a very similar way to the normal 
  7528. "find" command, searching first from the current element to the end of the 
  7529. document, then from the beginning towards the current element, then finally 
  7530. testing the current element. The same pointer may be associated with more than 
  7531. one element, and so repeated calls to this function will move the cursor 
  7532. position on where neccessary, wrapping at end of file. 
  7533.  
  7534. The Return Code is 0 if the find was successful otherwise 
  7535.  
  7536.  1         Found after wrapping to top of document if type is LPEX_ELEMENT; for 
  7537.            other types the object was not found. 
  7538.  2         This is the only occurrence if the pointer for the type given. 
  7539.  -2        Invalid type 
  7540.  -10,-11,-12 LPEX Control Block corresponding to type is not allocated. 
  7541.  -13       The pointer passed is NULL. 
  7542.  
  7543.  
  7544. ΓòÉΓòÉΓòÉ 7.6. National Language Considerations ΓòÉΓòÉΓòÉ
  7545.  
  7546. When adding commands to LPEX via the API, you may need to access some of the 
  7547. LPEX country-dependent information.  This is available via QUERY COUNTRY.  The 
  7548. file LXDIR.C contains the source of the external DIR command (LXDIR.DLL) and 
  7549. this uses the QUERY COUNTRY call to obtain details of how to format dates and 
  7550. times. LPEX is now DBCS enabled, and so may be used on Japanese and Korean 
  7551. codepages. normal delimiters and separators will not be confused with the 
  7552. second byte of DBCS characters. 
  7553.  
  7554.  
  7555. ΓòÉΓòÉΓòÉ 7.7. Building External Commands written in C ΓòÉΓòÉΓòÉ
  7556.  
  7557. Under OS/2 external commands are created as Dynamic Link libraries whose names 
  7558. start with the letters 'LX'.  The names for the commands themselves are 
  7559. therefore restricted under OS2 1.1 to six characters although the LPEX synonym 
  7560. mechanism may be used to give the commands more reasonable names.  Thus an 
  7561. external command that is to be invoked via the LPEX command 'SCAN xxx'.  would 
  7562. be created as the dynamic link library 'LXSCAN.DLL'. 
  7563.  
  7564. A 'make' file called LPEX2EXT is provided to illustrate the process of creating 
  7565. an external command for OS/2.  The sample commands are designed to be created 
  7566. using this make file.  It can be used by entering the command: 
  7567.  
  7568.  MAKE CMD=xxxx LPEX2EXT
  7569.  
  7570. where xxxx is the name of the LPEX command you wish to create e.g. 
  7571.  
  7572.  MAKE CMD=scan LPEX2EXT
  7573.  
  7574.  
  7575. ΓòÉΓòÉΓòÉ 7.7.1. Writing The Source Code ΓòÉΓòÉΓòÉ
  7576.  
  7577. The source code is written as a standard C program, making use of the LPEX 
  7578. access calls described in the provided LPEX2API.H 
  7579.  
  7580. A typical minimal external function might look rather like this: 
  7581.  
  7582. /***********************************************************/
  7583. /* LXMIN2.C - A Minimal LPEX External Command for OS/2   */
  7584. /***********************************************************/
  7585. #include "lpex2api.h"   /* include function definitions  */
  7586. lxmain(parm)        /* lxmain is routine entry point */
  7587.  uchr *parm;
  7588.  {
  7589.  return (0);       /* do nothing! */
  7590.  }
  7591.  
  7592. Note that the program entry point will always be the lxmain() function.  No 
  7593. main() function is required and it is an error to include one. 
  7594.  
  7595. See the sample programs for more extensive examples. 
  7596.  
  7597.  
  7598. ΓòÉΓòÉΓòÉ 7.7.2. Compiling The Code ΓòÉΓòÉΓòÉ
  7599.  
  7600. The interface is designed to work with the IBM C/2 compiler, although Microsoft 
  7601. C Version 5 will work too.  A certain amount of 'trickery' is involved in using 
  7602. the C compilers to create dynamic link libraries, and the routines in the LPEX 
  7603. access library that perform this trickery were written for and have only been 
  7604. tested with IBM C/2 and Microsoft C Version 5. 
  7605.  
  7606. Writing anything other than LARGE or COMPACT model code is not worth the 
  7607. effort. Memory constraints are not a problem under OS/2. 
  7608.  
  7609. You should compile your program with the following options: 
  7610.  
  7611. /Gs /G2 /Alxu
  7612.  
  7613. where 'x' is 'f' to create LARGE model code or 'n' for COMPACT model. For the 
  7614. IBM C/2 compiler these options require the use of the CL compiler command. 
  7615.  
  7616.  
  7617. ΓòÉΓòÉΓòÉ 7.7.3. Linking To Produce a LXxxxxxx.DLL ΓòÉΓòÉΓòÉ
  7618.  
  7619. You must include the LPEX access function library when your code is linked. 
  7620. For OS/2 this library is called LPEX2API.LIB.  You should ensure this is the 
  7621. first library specified to the linker, or the resulting code will not work as a 
  7622. dynamic link library. 
  7623.  
  7624. You must use the supplied LPEX2API.DEF file with the link command and you must 
  7625. use the /NOIGNORECASE linker option. The .DLL file that results should be 
  7626. placed in a directory accessable via your LIBPATH. 
  7627.  
  7628. The commands specified in the make file LPEX2EXT provide a good model. 
  7629.  
  7630.  
  7631. ΓòÉΓòÉΓòÉ 7.7.4. Notes ΓòÉΓòÉΓòÉ
  7632.  
  7633. Your external command will be run directly as a procedure call from within 
  7634. LPEX.  There are points to consider: 
  7635.  
  7636.  You cannot use the C exit function to quit from your external command.  The 
  7637.  only way back to LPEX is via a return from your lxmain() routine. 
  7638.  
  7639.  You will be running on LPEX's stack.  This stack is quite large (currently 
  7640.  16,000 bytes), but you should try not to store too much on it. 
  7641.  
  7642.  Only one copy of your external command is ever loaded.  If you make (directly 
  7643.  or indirectly) a recursive call, the same procedure will be called and any 
  7644.  static data items you use will refer to the same storage locations.  Your 
  7645.  program should be written to allow for this re-entrancy. 
  7646.  
  7647.  The first reference to your external command will require the .DLL file to be 
  7648.  loaded from disk, subsequent references do not require re-loading from disk 
  7649.  and are therefore extremely fast. 
  7650.  
  7651.  Please bear in mind that the current C compliers do not correctly support 
  7652.  dynamic link library creation.  You must compile with the options described 
  7653.  earlier and you must link so that the LPEX2API.LIB is the first library 
  7654.  mentioned to the linker and you must use the LPEX2API.DEF file.  If you don't 
  7655.  do this is won't work!  LPEX2API.LIB contains code to try (to the best of our 
  7656.  knowledge) to overcome the C/dynamic link library problems. 
  7657.  
  7658.  Despite this the following problems still exist: 
  7659.  
  7660.  Any uninitialised static data items are not given an initial zero value - 
  7661.  either initialise all your statics or don't assume they have initial values. 
  7662.  You can use lxalloc and lxfree and the LPEX2API.  LIB code will translate 
  7663.  attempts to call malloc and free into these preferred calls. Other memory 
  7664.  management calls such as calloc or realloc are forced to fail. 
  7665.  
  7666.  There may be other C library function calls that give problems, you'll have to 
  7667.  experiment a bit! 
  7668.  
  7669.  
  7670. ΓòÉΓòÉΓòÉ 7.8. New API. ΓòÉΓòÉΓòÉ
  7671.  
  7672. A new API is being developed which allows the user to invoke LPEX from a 
  7673. subroutine DLL which is common to several separate LPEX external commands. This 
  7674. new API is available now and LPEX has provided a compatibility feature.  All 
  7675. that is necessary to use the new API is for the user to replace the 
  7676.  
  7677. #include "LPEX2API.H"
  7678. with
  7679. #include <LPEXAPI.H>
  7680. and use the make file LPEXEXT instead of LPEX2EXT, or if you have Microsoft (C) 
  7681. C version 6 use LPEX6EXT which allows the use of C function calls such as 
  7682. SPRINTF without causing a DosFreeModule error when the command is unlinked. 
  7683.  
  7684. Note:  LPEXAPI.H includes the file LPEXCPAT.H and both must reside in a 
  7685.        directory specified in the SET INCLUDE path. This is a change from the 
  7686.        old setup. See below for a summary of the old and new support files. 
  7687.  
  7688.  
  7689. ΓòÉΓòÉΓòÉ 7.8.1. Summary of old and new support files ΓòÉΓòÉΓòÉ
  7690.  
  7691.  Old API file   New API file 
  7692.  LPEX2API       LPEXAPI.H (with LPEXCPAT.H) 
  7693.  LPEX2EXT       LPEXEXT 
  7694.  LPE2XAPI.DEF   LPEXEXT.DEF 
  7695.  LPEX2API.LIB   LPEXAPI.LIB 
  7696.  
  7697.  The new interface is shown below showing the old API and new API equivalents. 
  7698.  In future any enhancements to the LPEX API will be done using only the new 
  7699.  naming style. In due course this help will be re-oriented to the new API 
  7700.  commands. 
  7701.  
  7702.  Old API entrypoints New API equivalent 
  7703.  lxmain(a)         EXPENTRY LpexEntry(a) 
  7704.  lxexit(a)         EXPENTRY LpexExit(a) 
  7705.  Old API function  New API equivalent 
  7706.  lxcmd(a)          LpexCommand(a) 
  7707.  lxcall(a,b)       LpexCall(a,b) 
  7708.  lxmsg(a)          LpexCall("msg",a)  (This is a special case compile time 
  7709.                    macro for clarity of text) 
  7710.  lxalloc(a)        LpexAlloc(a) 
  7711.  lxfree(a)         LpexFree(a) 
  7712.  malloc(a)         LpexAlloc(a) 
  7713.  
  7714.                    All free storage management is done via LPEX 
  7715.  free(a)           LpexFree(a) 
  7716.  
  7717.                    All free storage management is done via LPEX 
  7718.  lxquery(a,b)      LpexQuery(a,b) 
  7719.  lxhab(a)          LpexHab(a) 
  7720.  
  7721.                    This is provided for compatibility only - use appropriate 
  7722.                    system call if HAB is required. 
  7723.  lxqgmlfonts(a)    LpexQueryGMLFonts(a) 
  7724.  lxgmlfontadd(a)   LpexAddGMLFonts(a) 
  7725.  lxnext()          LpexNext("") 
  7726.  
  7727.                     The new call has the parameter reinstated as for the NEXT 
  7728.                    command 
  7729.  lxprev()          LpexPrev("") 
  7730.  
  7731.                     The new call has the parameter reinstated as for the PREV 
  7732.                    command 
  7733.  lxqrawtx(a)       LpexQueryRawText(a) 
  7734.  lxqtext(a)        LpexQueryText(a) 
  7735.  lxstext(a)        LpexSetText(a) 
  7736.  lxqfont(a)        LpexQueryFonts(a) 
  7737.  lxsfont(a)        LpexSetFonts(a) 
  7738.  lxqmode(a)        LpexQueryCharModes(a) 
  7739.  lxqclass(a)       LpexQueryClass(a) 
  7740.  lxsclass(a)       LpexSetClass(a) 
  7741.  lxqelestate(a)    LpexQueryElementState(a) 
  7742.  lxinsert(a)       LpexInsert(a) 
  7743.  lxquery_user(a,b) LpexQueryUserLink(a,b) 
  7744.  lxlink_user(a,b)  LpexSetUserLink(a,b) 
  7745.  lxfind_user(a,b)  LpexFindUserLink(a,b) 
  7746.  
  7747.  
  7748. ΓòÉΓòÉΓòÉ 7.8.2. Example of two lpex commands and a common subroutine. ΓòÉΓòÉΓòÉ
  7749.  
  7750. Files provided in \LPEX directory 
  7751.  
  7752.  LXCMDONE.C Source for the first command 
  7753.  LXCMDTWO.C Source for the second command 
  7754.  LXMYSUB.C The common subroutine. 
  7755.  SUBREXMP  The Make file. 
  7756.  
  7757.  If the makefile is processed then three DLLs are generated - LXCMDONE.DLL, 
  7758.  LXCMDTWO.DLL and LXMYSUB.DLL If, in an LPEX session the command CMDONE is 
  7759.  invoked the following messages will be generated in the message window. 
  7760.  
  7761.   Entering Lpex command cmdone - calling mysub
  7762.   mysub entered
  7763.   -- from cmdone
  7764.   First return from MYSUB
  7765.   Calling Lpex command cmdtwo
  7766.   Entering Lpex command cmdtwo - calling mysub
  7767.   mysub entered
  7768.   -- from cmdtwo
  7769.   Second return from MYSUB
  7770.  
  7771.  
  7772. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  7773.  
  7774. FAT (File Access Table) is the disk format supported by both DOS and OS/2, 
  7775. wherein names have the 8.3 format (an 8 character name and a 3 character 
  7776. extension. Names are always folded to upper case. 
  7777.  
  7778.  
  7779. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  7780.  
  7781. HPFS (High Performance File System) is the disk format supported by OS/2, 
  7782. wherein names may be longer, and include and arbitrary number of periods and 
  7783. blanks (even initial and trailing blanks). Mixed case is supported, although 
  7784. searches ignore case and names must be unique when folded to upper case. 
  7785.  
  7786.  
  7787. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  7788.  
  7789.  NFS (AIX's Network File System) is an Open Systems drive attached via a 
  7790. suitable network the data on which is stored with only LineFeeds instead of 
  7791. CarriageReturn/LineFeeds. 
  7792.  
  7793.  
  7794. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  7795.  
  7796. You should type one word only, either a known command word, or a known SET or 
  7797. QUERY item word. 
  7798.  
  7799.  
  7800. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  7801.  
  7802. This will present an index of command words and QUERY and SET item words. 
  7803.  
  7804.  
  7805. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  7806.  
  7807. FAT (File Access Table) is the disk format supported by both DOS and OS/2, 
  7808. wherein names have the 8.3 format (an 8 character name and a 3 character 
  7809. extension. Names are always folded to upper case. 
  7810.  
  7811.  
  7812. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  7813.  
  7814. HPFS (High Performance File System) is the disk format supported by OS/2, 
  7815. wherein names may be longer, and include and arbitrary number of periods and 
  7816. blanks (even initial and trailing blanks). Mixed case is supported, although 
  7817. searches ignore case and names must be unique when folded to upper case. 
  7818.  
  7819.  
  7820. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  7821.  
  7822.  NFS (AIX's Network File System) is an Open Systems drive attached via a 
  7823. suitable network the data on which is stored with only LineFeeds instead of 
  7824. CarriageReturn/LineFeeds. 
  7825.  
  7826.  
  7827. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  7828.  
  7829. You should type one word only, either a known command word, or a known SET or 
  7830. QUERY item word. 
  7831.  
  7832.  
  7833. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  7834.  
  7835. This will present an index of command words and QUERY and SET item words. 
  7836.  
  7837.  
  7838. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  7839.  
  7840. Common User Access 
  7841.  
  7842.  
  7843. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  7844.  
  7845. American Standard Code for Information Interchange 
  7846.  
  7847.  
  7848. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  7849.  
  7850. OS/2 Presentation Manager 
  7851.  
  7852.  
  7853. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  7854.  
  7855. Picture elements, dots on the screen. 
  7856.  
  7857.  
  7858. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  7859.  
  7860. Single Byte Character Set 
  7861.  
  7862.  
  7863. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  7864.  
  7865. Double Byte Character Set