home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / vf_96196.zip / VFILE.INF (.txt) < prev   
OS/2 Help File  |  1996-12-02  |  20KB  |  701 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. Introduction ΓòÉΓòÉΓòÉ
  3.  
  4. This program is a text based file viewer with some really neat features thrown 
  5. in.  I have tried to find a good text based free file viewer in the past but 
  6. have had little luck. 
  7.  
  8. I am also sick of every man and his dog trying to get money for something they 
  9. spent the weekend on so this is why I will let anyone use this program without 
  10. any fee. 
  11.  
  12. I don't intend to ever convert this program to PM as there are many times when 
  13. you can't run PM programs (one of the reasons I wrote this program in the first 
  14. place)... 
  15.  
  16. I do intend to keep the executable relatively small. 
  17.  
  18. (C)opyright 
  19.  
  20. This program is (C)opyright by Dennis Bareis 1996. All rights reserved. 
  21.  
  22.  
  23. ΓòÉΓòÉΓòÉ 2. Starting VFILE ΓòÉΓòÉΓòÉ
  24.  
  25. VFILE.EXE will determine what mode the screen is in and will adjust itself 
  26. accordingly, for example I frequently use it in 132 columns by 43 lines mode. 
  27.  
  28. Command Line Syntax 
  29.  
  30. The command line is fairly simple as follows: 
  31.  
  32.     VFILE[.EXE]  FileName|*  [/Options|-Options]
  33.  
  34. If "*" is specified instead of a filename, then the input is read from stdin, 
  35. that is its assumed you are piping the input in. 
  36.  
  37. Each option begins with either "/" or "-" and it does not matter which is used 
  38. or even if you use both, they can also be specified via environment variables. 
  39.  
  40. Examples 
  41.  
  42.  
  43.                  1. dir | vfile  *  /gap  -EOF
  44.  
  45.                  2. vfile.exe c:\config.sys
  46.  
  47.  
  48. ΓòÉΓòÉΓòÉ 2.1. VFILE.EXE Options ΓòÉΓòÉΓòÉ
  49.  
  50. How to specify VFILE options 
  51.  
  52. There are many options that you can set prior to starting VFILE.EXE, these can 
  53. be set either on the command line or in the environment.  An option begins with 
  54. either "/" or "-" and it does not matter which is used or even if you use both. 
  55.  
  56. Options are processed in the following order: 
  57.  
  58.        1. "VFILE" Environment variable. 
  59.  
  60.        2. The command line 
  61.  
  62.        3. Any environment variables specified with the "/EnvVar" Command. 
  63.  
  64.  Color Switches 
  65.  
  66.          /BarColor 
  67.          /BoxColor 
  68.          /DefaultLineColor 
  69.          /FoundColor 
  70.          /PastEofColor 
  71.          /StatusLineColor 
  72.          /TransparentBar 
  73.          /Unknown Option 
  74.  
  75.  Other Switches 
  76.  
  77.          /ColumnShift 
  78.          /EnvVar 
  79.          /EOF 
  80.          /FileText 
  81.          /Gap 
  82.          /Hex 
  83.          /PastEofCharacter 
  84.          /TabWidth 
  85.          ./: 
  86.  
  87.  Example 
  88.  
  89.  The following is a possible batch file (it gets passed the filename) which 
  90.  starts VFILE is 132x43 line mode with certain options: 
  91.  
  92.       @echo off
  93.       set VFILE=/EOF
  94.       set VFILE_1=/GAP /TransparentBar
  95.  
  96.       mode 132,43 & vfile %1 /error:28 /warning:28 & mode 80,25
  97.  
  98.  
  99. ΓòÉΓòÉΓòÉ 2.1.1. /BarColor ΓòÉΓòÉΓòÉ
  100.  
  101. /BarColor 
  102.  
  103. This option like all options can be specified either in the environment or on 
  104. the VFILE.EXE command line. 
  105.  
  106. This option specifies the color you wish to use for the current line or 
  107. position bar. 
  108.  
  109. Example 
  110.  
  111. For example if you wish a yellow on purple (magenta) bar: 
  112.  
  113.     /BarColor:94
  114.  
  115.  
  116. ΓòÉΓòÉΓòÉ 2.1.2. /BoxColor ΓòÉΓòÉΓòÉ
  117.  
  118. /BoxColor 
  119.  
  120. This option like all options can be specified either in the environment or on 
  121. the VFILE.EXE command line. 
  122.  
  123. This option specifies the color you wish to use for VFILE's border. 
  124.  
  125. Example 
  126.  
  127. For example if you wish a yellow on blue border: 
  128.  
  129.     /BoxColor:31
  130.  
  131.  
  132. ΓòÉΓòÉΓòÉ 2.1.3. /ColumnShift ΓòÉΓòÉΓòÉ
  133.  
  134. /ColumnShift 
  135.  
  136. This option like all options can be specified either in the environment or on 
  137. the VFILE.EXE command line. 
  138.  
  139. This option allows you to adjust how much the screen moves when you use the 
  140. left & right arrow keys. 
  141.  
  142. Example 
  143.  
  144. For example if you wish to move one column at a time, the following command 
  145. would allow this: 
  146.  
  147.     /ColumnShift:1
  148.  
  149.  
  150. ΓòÉΓòÉΓòÉ 2.1.4. /DefaultLineColor ΓòÉΓòÉΓòÉ
  151.  
  152. /DefaultLineColor 
  153.  
  154. This option like all options can be specified either in the environment or on 
  155. the VFILE.EXE command line. 
  156.  
  157. This option can be used to override the default color used to display each line 
  158. in the VFILE.EXE window. 
  159.  
  160. Lines containing specific text can be displayed in a different color. 
  161.  
  162. Example 
  163.  
  164. For example to set the default color to high intensity white on blue you could 
  165. specify: 
  166.  
  167.     /DefaultLineColor:31
  168.  
  169.  
  170. ΓòÉΓòÉΓòÉ 2.1.5. /EnvVar ΓòÉΓòÉΓòÉ
  171.  
  172. /EnvVar 
  173.  
  174. This option like all options can be specified either in the environment or on 
  175. the VFILE.EXE command line. 
  176.  
  177. VFILE.EXE always searches for the environment variable "VFILE" for options 
  178. during startup. It is possible that this does not cover all your requirements, 
  179. for example you may have many different rexx scripts which load VFILE, well you 
  180. can now (if you wish) seperately configure each batch file through the 
  181. environment in config.sys. 
  182.  
  183. This could be used if the batch file was on a network server as another 
  184. example. 
  185.  
  186. Example 
  187.  
  188. Assuming I wish to search the environment variable "VFILE_P_CMD" for commands 
  189. configured in config.sys then the following is a possibility: 
  190.  
  191.     address cmd 'vfile ' || FileName || ' /EnvVar:VFILE_P_CMD' ;
  192.  
  193.  
  194. ΓòÉΓòÉΓòÉ 2.1.6. /Eof ΓòÉΓòÉΓòÉ
  195.  
  196. /Eof 
  197.  
  198. This option like all options can be specified either in the environment or on 
  199. the VFILE.EXE command line. 
  200.  
  201. Normally you see the start of the loaded file when you first enter VFILE, this 
  202. switch allows you to initially see the end of the file, as the file is loaded 
  203. into memory it may take a little while before you get to the end of the file. 
  204.  
  205. Example 
  206.  
  207.     /Eof
  208.  
  209.  
  210. ΓòÉΓòÉΓòÉ 2.1.7. /FileText ΓòÉΓòÉΓòÉ
  211.  
  212. /FileText 
  213.  
  214. This option like all options can be specified either in the environment or on 
  215. the VFILE.EXE command line. 
  216.  
  217. Sometimes the name of the file being displayed is not important and you would 
  218. rather have a descriptive name shown to a user. 
  219.  
  220. Example 
  221.  
  222. We would rather show the user the text "STARTUP LOG" rather than the logs 
  223. filename: 
  224.  
  225.     "/FileText:STARTUP LOG"
  226.  
  227.  
  228. ΓòÉΓòÉΓòÉ 2.1.8. /FoundColor ΓòÉΓòÉΓòÉ
  229.  
  230. /FoundColor 
  231.  
  232. This option like all options can be specified either in the environment or on 
  233. the VFILE.EXE command line. 
  234.  
  235. This option can be used to override the default color used highlight found text 
  236. when the find options are used. 
  237.  
  238. Example 
  239.  
  240. For example to highlight found text in high intensity white on green: 
  241.  
  242.     /FoundColor:47
  243.  
  244.  
  245. ΓòÉΓòÉΓòÉ 2.1.9. /Gap ΓòÉΓòÉΓòÉ
  246.  
  247. /Gap 
  248.  
  249. This option like all options can be specified either in the environment or on 
  250. the VFILE.EXE command line. 
  251.  
  252. Normally VFILE displays each line hard up to both left and right borders, if 
  253. you would rather have a space seperating the line from the border then use this 
  254. option. 
  255.  
  256. Example 
  257.  
  258.     /Gap
  259.  
  260.  
  261. ΓòÉΓòÉΓòÉ 2.1.10. /Hex ΓòÉΓòÉΓòÉ
  262.  
  263. /Hex 
  264.  
  265. This option like all options can be specified either in the environment or on 
  266. the VFILE.EXE command line. 
  267.  
  268. VFILE normally begins in character mode, to start in hex mode you can specify 
  269. this switch. 
  270.  
  271. Example 
  272.  
  273.     /Hex
  274.  
  275.  
  276. ΓòÉΓòÉΓòÉ 2.1.11. /PastEofCharacter ΓòÉΓòÉΓòÉ
  277.  
  278. /PastEofCharacter 
  279.  
  280. This option like all options can be specified either in the environment or on 
  281. the VFILE.EXE command line. 
  282.  
  283. You can if you wish to mark the region beyond the end of the file by a specific 
  284. color and character.  This option allows you to change the character while the 
  285. /PastEofColor switch could be used to change the color. 
  286.  
  287. Example 
  288.  
  289. For example to specify a space is to be used rather than the default dot: 
  290.  
  291.     "/PastEofCharacter: "
  292.  
  293.  
  294. ΓòÉΓòÉΓòÉ 2.1.12. /PastEofColor ΓòÉΓòÉΓòÉ
  295.  
  296. /PastEofColor 
  297.  
  298. This option like all options can be specified either in the environment or on 
  299. the VFILE.EXE command line. 
  300.  
  301. You can if you wish to mark the region beyond the end of the file by a specific 
  302. color and character.  This option allows you to change the color while the 
  303. /PastEofCharacter switch could be used to change the character. 
  304.  
  305. Example 
  306.  
  307. For example to specify high intensity white on white: 
  308.  
  309.     /PastEofColor:127
  310.  
  311.  
  312. ΓòÉΓòÉΓòÉ 2.1.13. /StatusLineColor ΓòÉΓòÉΓòÉ
  313.  
  314. /StatusLineColor 
  315.  
  316. This option like all options can be specified either in the environment or on 
  317. the VFILE.EXE command line. 
  318.  
  319. This allows you to change the color of the status line, this is the line that 
  320. contains the current line & column etc. 
  321.  
  322. Example 
  323.  
  324. For example to specify high intensity cyan on cyan: 
  325.  
  326.     /StatusLineColor:59
  327.  
  328.  
  329. ΓòÉΓòÉΓòÉ 2.1.14. /TabWidth ΓòÉΓòÉΓòÉ
  330.  
  331. /TabWidth 
  332.  
  333. This option like all options can be specified either in the environment or on 
  334. the VFILE.EXE command line. 
  335.  
  336. This option controls the tab width which VFILE uses when expanding tabs, the 
  337. default is 8.  If you specify 0, then tabs are not expanded and you will see 
  338. them in character mode. 
  339.  
  340. Example 
  341.  
  342. To change the tab setting to 4 characters: 
  343.  
  344.     /TabWidth:4
  345.  
  346.  
  347. ΓòÉΓòÉΓòÉ 2.1.15. /TransparentBar ΓòÉΓòÉΓòÉ
  348.  
  349. /TransparentBar 
  350.  
  351. This option like all options can be specified either in the environment or on 
  352. the VFILE.EXE command line. 
  353.  
  354. Normally the color of the text at the current location (bar color) is that 
  355. specified by the /BarColor switch.  This option if specified will change the 
  356. color of the bar so the background is as specified by the /BarColor switch, 
  357. while the foreground is that of the line below the bar. 
  358.  
  359. Example 
  360.  
  361.     /TransparentBar
  362.  
  363.  
  364. ΓòÉΓòÉΓòÉ 2.1.16. /Unknown Option ΓòÉΓòÉΓòÉ
  365.  
  366. /Unknown Option 
  367.  
  368. This option like all options can be specified either in the environment or on 
  369. the VFILE.EXE command line. 
  370.  
  371. Any option that is unknown is assumed to be a command to specify a highlight 
  372. for a line. 
  373.  
  374. Normally each line of a file is displayed in the default color (or than 
  375. specified with the /DefaultLineColor option). This command allows you to 
  376. specify that if a line contains a string that it should be highlighted in a 
  377. particular color.  It is recommended that the background color be the same for 
  378. all lines and you may also wish to try the /TransparentBar option. 
  379.  
  380. If highlighted lines are being displayed then you may find all occurances 
  381. easily by using the Tab & Shift+Tab keys. 
  382.  
  383. Example 
  384.  
  385. For example if you wish to highlight lines that contain the strings "error" & 
  386. "warning" (in any case), the following could be used: 
  387.  
  388.     /error:28 /WARNING:20
  389.  
  390.  
  391. ΓòÉΓòÉΓòÉ 2.1.17. ./: ΓòÉΓòÉΓòÉ
  392.  
  393. /: 
  394.  
  395. This option like all options can be specified either in the environment or on 
  396. the VFILE.EXE command line. 
  397.  
  398. This switch allows you to change the seperator character which is used to 
  399. seperate a switch from it's parameter, for example in "/TabWidth:4".  There may 
  400. be times when you need to change it for example when you wish to highlight 
  401. lines that contain a string which includes one or more colons! highlight for a 
  402. line. 
  403.  
  404. Of course if you change the colon character to something else say a "^", then 
  405. you will need to use the new character to change it again. 
  406.  
  407. Example 
  408.  
  409. For example if you wish to highlight lines that contain the strings "error:" & 
  410. "warning" (in any case), the following could be used: 
  411.  
  412.     /:~ /error:~28 /~: /WARNING:20
  413.  
  414.  
  415. ΓòÉΓòÉΓòÉ 3. The Status Line ΓòÉΓòÉΓòÉ
  416.  
  417. The status line shows you where you are and what file you are in, you can 
  418. modify the way the status line displays with the /StatusLineColor & /FileText 
  419. switches. 
  420.  
  421. The status line may also briefly show an error message and is also used to 
  422. prompt for user input (for example to request a search string). 
  423.  
  424. ARROWS ON RIGHT 
  425.  
  426. On the right hand side you will see up to 4 arrows which indicate that there is 
  427. more data to be seen if you move in the direction indicated. 
  428.  
  429. The size of the arrows also has meaning, while text is still being loaded into 
  430. VFILE the arrows are fat, otherwise they are thin. 
  431.  
  432.  
  433. ΓòÉΓòÉΓòÉ 4. Keys ΓòÉΓòÉΓòÉ
  434.  
  435. This section describes all of the keys that you can used while displaying a 
  436. file in VFILE.EXE.  If you are interested in the keys which you can use while 
  437. being prompted for information, these are not described below, please refer to 
  438. the section "Prompts for Information" 
  439.  
  440. Esc 
  441.  
  442. Press the Escape key to exit VFILE.EXE. 
  443.  
  444. Arrow Keys (Up & Down) 
  445.  
  446. These arrow keys move the currently highlighted line forwards or backwards 
  447. through the loaded file. 
  448.  
  449. Arrow Keys (Left & Right) 
  450.  
  451. These arrow keys move left or right to view information that may be off the 
  452. screen.  Scrolling only occurs if required.  The amount of scrolling per 
  453. keypress can be configured with the /ColumnShift option. 
  454.  
  455. Ctrl+Left & Ctrl+Right Arrows 
  456.  
  457. These keys will move you as far left and as far right as it is possible to go. 
  458.  
  459. Home 
  460.  
  461. This key moves you to the start of the file. 
  462.  
  463. End 
  464.  
  465. This key moves you to the end of the file.  If the file has not yet completed 
  466. loading you will see screens flash until EOF is reached.  You can abort this 
  467. process by pressing any key, the key pressed is actioned! 
  468.  
  469. PgUp - Page UP 
  470.  
  471. If you are positioned at the first line in the window, you will see the next 
  472. screen as a result, otherwise the current line is positioned to the start of 
  473. the screen. 
  474.  
  475. PgDn - Page Down 
  476.  
  477. If you are positioned at the last line in the window, you will see the previous 
  478. screen as a result, otherwise the current line is positioned to the end of the 
  479. screen. 
  480.  
  481. Tab + Shift+Tab 
  482.  
  483. These keys will be of no use unless you have specified that lines containing 
  484. certain strings be highlighted.  These keys will then move you to the next or 
  485. previous highlighted line. 
  486.  
  487. Alt+0 to Alt+9 
  488.  
  489. There are 10 bookmarks available in hex mode and another 10 in character mode. 
  490. Pressing the Alt key plus a number allows you to set a bookmark 0 to 9. 
  491.  
  492. 0 to 9 
  493.  
  494. If you have previously set a bookmark you can return to it by simply pressing 
  495. the correct digit. 
  496.  
  497. Enter 
  498.  
  499. This key centers the current line on the screen. 
  500.  
  501. G Key 
  502.  
  503. This key allows you to select a specific line in the loaded file to goto. 
  504.  
  505. H Key 
  506.  
  507. This toggles the current display mode between character mode and hex mode. 
  508. Note that this key will not be available if the input was piped in as the input 
  509. must be reloaded to change modes.  Also note that you can set the initial mode 
  510. to hex by specifying the /Hex option. 
  511.  
  512.  
  513. ΓòÉΓòÉΓòÉ 5. Prompts for Information ΓòÉΓòÉΓòÉ
  514.  
  515. Prompts for Information 
  516.  
  517. At times you will be prompted for information such as the address of a line to 
  518. goto or a search string.  In this case the following keys are available: 
  519.  
  520. Esc 
  521.  
  522. This key will first clear the line, once clear it will cancel the command which 
  523. is requesting the prompted information. 
  524.  
  525. ALT+U 
  526.  
  527. This command can be used to undo a drastic change to the text you are typing 
  528. in, a second undo will undo the undo! 
  529.  
  530. More to go... DB$ 
  531.  
  532.  
  533. ΓòÉΓòÉΓòÉ 6. Examples ΓòÉΓòÉΓòÉ
  534.  
  535. Examples 
  536.  
  537.        1. P.CMD (REXX Script) 
  538.           This is a rexx procedure which I use so that the output of a command 
  539.           automatically gets displayed in a window of my choosing, for example 
  540.           I could type "P dir c:\" or "P PSTAT", the output is piped into 
  541.           vfile.exe. 
  542.  
  543.           An lines that contain the strings "error", "warning" or "SYS0" are 
  544.           highlighted, you will be able to use the Tab & Shift+Tab keys to find 
  545.           all occurances of highlighted lines. 
  546.  
  547.           The rexx command itself follows: 
  548.  
  549.                     /* Takes output from a command and displays it in a window */
  550.  
  551.                     /*--- Get passed command and obtain copy without double quotes (for display only) ---*/
  552.                     PassedCommand              = arg(1);
  553.                     CommandWithoutDoubleQuotes = translate(PassedCommand, "`", '"');
  554.  
  555.                     /*--- Set up the commands to be executed ------------------------------------*/
  556.                     CmdScreen43x132 = 'mode 132,43';
  557.                     CmdPipeOutput   = PassedCommand || ' 2>&1 | c:\utilp\vfile.exe * /gap /TransparentBar /error:28 /SYS0:28 /warning:29 "/FileText:' || CommandWithoutDoubleQuotes || '"';
  558.                     CmdScreen25x80  = 'mode CO80,25';
  559.  
  560.                     /*--- Change mode and execute the command -----------------------------------*/
  561.                     address cmd '@' || CmdScreen43x132 || ' & ' || CmdPipeOutput || ' & ' || CmdScreen25x80;
  562.  
  563.  
  564.  
  565. ΓòÉΓòÉΓòÉ 7. Support ΓòÉΓòÉΓòÉ
  566.  
  567. Support 
  568.  
  569. If you have a problem, please check to see if this is a known bug and try to 
  570. find a simple way of reproducing it.  Then contact Dennis Bareis on 
  571. "dbareis@ozemail.com.au". 
  572.  
  573. If you use my this product it could not hurt to let me know as it might 
  574. encourage me to put more work into it... 
  575.  
  576.  
  577. ΓòÉΓòÉΓòÉ 7.1. Known Bugs ΓòÉΓòÉΓòÉ
  578.  
  579.          Start pgm, immediately press tab, PV results, maybe the call 
  580.           ViwFindNextSelectableLine() does not handle lines past end. 
  581.  
  582.          Not sure but looks to me as if search can find something in a non 
  583.           selectable line and then try to move bar to it, it should move below 
  584.           or above with the approprtiate non-selectable line of screen and 
  585.           highlighted, this would probably also require changes to find next & 
  586.           previous. 
  587.  
  588.          Need to put stdin in binary mode if displaying piped data for hex 
  589.           display.  Note syntax display warns user... 
  590.  
  591.          Don't display movement arrows when status = question/prompt! 
  592.  
  593.          Can PV while expanding tabs (past 2000 I assume...) 
  594.  
  595.          MOD_V1_2.doc dies but only when tab=8, not 7,9, or 20!, probably tab 
  596.           expansion bug but maybe not... 
  597.  
  598.  
  599. ΓòÉΓòÉΓòÉ 7.2. Planned Improvements ΓòÉΓòÉΓòÉ
  600.  
  601. The following improvements I will look at when I get keen and have some time: 
  602.  
  603. General 
  604.  
  605.          Allow specification of wildcards such as "*.TXT" or "+*.TXT" the "+" 
  606.           means search subdirectories.  results are shown sorted with full 
  607.           directories.  When ENTER is pressed and then esc, the same line is 
  608.           highlighted allowing DOWNARROW+ENTER to choose next, search string is 
  609.           kept. 
  610.  
  611.          Add "strings" mode, maybe toggle with char & hex? 
  612.  
  613.          /NoControl for no controls chars such as formfeeds in char mode. 
  614.  
  615.          /MaxLineLength:512. 
  616.  
  617.          If a line is continued (no terminating newline) then we should add a 
  618.           non-selectable line <<Line Continued>> (what color?) 
  619.  
  620.          Allow save of file to new name and limited editing? 
  621.  
  622.          Add /NoCopyright flag. 
  623.  
  624.          ALT+L = find next line where data is on screen (from left column 
  625.           onwards). 
  626.  
  627.          /ColumnShift:1 or /ColumnShift:10% 
  628.  
  629.          If found (marked text is on edge move screen to show... 
  630.  
  631.          Autodetect hex file (if /HEX or /CHAR not used), Read 512 bytes and 
  632.           count values below x20 and probably above x80. 
  633.  
  634.          When searching and found line is near top when searching up or bottom 
  635.           when searching down, move in appropriate direction to be 1/3 from 
  636.           end. 
  637.  
  638.          <TAB> & <SHIFT+TAB> move screen width left & right. 
  639.  
  640.          Have a /HexHigh to allow extended ASCII to be displayed 
  641.  
  642.          Add ',' to display line & column # as well as "up to line #... 
  643.  
  644.          /KeyLineColor & /KeyLineHighlightColor: 
  645.  
  646.          /KeyBeepFreq /KeyBeepDur 
  647.  
  648.          H=Goto (goto Line or hex address?) key. 
  649.  
  650.          Add regular expression 
  651.  
  652.          CTRL down/up for look for next highlighted line (message if none). 
  653.  
  654.          /xxxColor:Text|number|hex number (0x??), maybe like /barcolor:YB 
  655.  
  656.          /PrintDevice (what to spool to, use Splxxx cmds etc) 
  657.  
  658.          /PrintInit  (what to output at start of job) 
  659.  
  660.          /PrintLine  (what to output at start of each line) 
  661.  
  662.          /Epson    (fairly generic settings) 
  663.  
  664.          /HpLaserJet3 (fairly generic settings) 
  665.  
  666.          Transparent color for all overlays (search etc).... 
  667.  
  668.          Handle space in VFILE env var options ~=space 
  669.  
  670.          Save search history (when we have cmd recall). 
  671.  
  672.          Create help .inf, user gets seitched to it when they press F1=Help 
  673.  
  674.          We look for the help file, if not found, don't display f1=help.  Also 
  675.           VFILE_HELP env var to handle cases where not in path etc. 
  676.  
  677.          Attach .INF to .EXE as resource and create a command to generate also 
  678.           can we tell if view file failed to find the file? 
  679.  
  680.          Make code multithreaded, may not be so hard if basically all the 
  681.           second thread does is the io and the 1st times out after say 1/3 sec. 
  682.  
  683.          /INI command means bookmarks etc are saved, APP=VFILE 
  684.           KEY=BookMarks-Config.sys  etc... 
  685.  
  686.  Improve currently working code (remove hacks!) 
  687.  
  688.          fix "Hex" function key to swap modes on fly code (hack at moment). 
  689.  
  690.          Search function - make get string better.... 
  691.  
  692.          Fix code which handles EOF in hex display so it uses common code and 
  693.           handles errors  etc. 
  694.  
  695.  Questions 
  696.  
  697.          Do we wish to toggle between F12=Hex and F12=Character? 
  698.  
  699.          Do we wish to handle partial load of files into memory and caching 
  700.           etc. 
  701.