home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 31 / CDASC_31_1996_juillet_aout.iso / vrac_os2 / nftp072.zip / NFTP-MAN.TXT < prev    next >
Text File  |  1996-06-03  |  42KB  |  1,015 lines

  1. DRAFT. EXPECT SOME OMISSIONS AND INACCURACIES
  2. -------------------------------------------------------------------------------
  3.  
  4. NFTP : New File Transfer Protocol Client Version 0.72
  5. Copyright (C) 1994-1996 Sergey Ayukov
  6.  
  7. -------------------------------------------------------------------------------
  8. Home page of NFTP. Check it for new versions, updates etc.
  9.  
  10. Contents
  11.  
  12.   1. Introduction
  13.   2. Installation
  14.   3. Quick start
  15.   4. Usage
  16.         o Launching NFTP
  17.         o Logging in and out
  18.         o Navigating remote site and local directories
  19.         o Transferring files
  20.         o Customizing NFTP
  21.   5. Keyboard commands summary
  22.         o General keyboard commands
  23.         o Control connection window
  24.         o File listing (remote and local)
  25.         o Entry fields
  26.         o Bookmark list
  27.         o Built-in file viewer
  28.   6. Known bugs and limitations
  29.   7. Troubleshooting
  30.   8. Licensing information
  31.   9. Acknowledgements
  32.  10. Registration
  33.  11. Contacting the author
  34.  
  35. Version history
  36. -------------------------------------------------------------------------------
  37.  
  38. INTRODUCTION
  39.  
  40. NFTP is a text-mode ftp client for OS/2. Comparing to popular ncftp, it has a
  41. number of enhancements:
  42.  
  43.    *  remote directory view is fully scrollable with minimum keystrokes
  44.      required;
  45.    *  remote directory contents is cached during one session - you'll never
  46.      have to wait for retrieving the same listing;
  47.    *  marking files for download/upload: you don't need to type filenames at
  48.      all;
  49.    *  remote file viewing is more simple and intelligent, and viewed files are
  50.      cached as well;
  51.    *  you can see client-server negotiation (even complete history during all
  52.      run);
  53.    *  NFTP has batch progress indicator (you see how long will take entire
  54.      operation if more than one file was selected to transfer);
  55.    *  file selection is simple and allows to view remote files while marking
  56.      others to transfer;
  57.    *  you can skip files during transfer while continuing to download/upload
  58.      the rest;
  59.    *  you can mark files in different directories and then retrieve them all;
  60.    *  you can sort remote directories by name, size, date/time.
  61.  
  62. The biggest advantages over majority of PM ftp clients (like FTP-PM, sftp etc.)
  63. are the ability to 'reget' (continue transfer after interruption), speed of
  64. simple and effective text-mode interface, small memory requirements.
  65.  
  66. In my opinion, LW-FTP while being very elegant is useless due to big overhead
  67. of Workplace Shell object creation/deletion.
  68.  
  69. The drawback, however, is that NFTP isn't free as ncftp. But registration fee
  70. is only US$ 20 -- and you'll get all future versions and support by e-mail at
  71. this price! See registration details below.
  72. -------------------------------------------------------------------------------
  73.  
  74. INSTALLATION
  75.  
  76.   1. Requirements are
  77.         o  OS/2 2.x or later;
  78.         o  TCP/IP stack: IBM TCP/IP 2.0 for OS/2, OS/2 Warp Connect, OS/2 Warp
  79.           Internet Access Kit;
  80.         o  HPFS formatted drive to be able to download files which are not
  81.           8.3-compliant.
  82.         o  In addition, you also have to install emx runtime package. If you
  83.           don't have it installed, file "emx.dll" is supplied with this version
  84.           of NFTP. Copy it into any directory listed in your LIBPATH. The
  85.           latest version of emx runtime support package can be found at the
  86.           following ftp servers:
  87.           ftp.uni-stuttgart.de:/pub/systems/os2/emx-0.9b/emxrt.zip
  88.           ftp.sai.msu.su:/pub/os2/programming/emx-0.9b/emxrt.zip
  89.           Instructions on installing it can be found in emxrt.zip archive.
  90.   2. Installation.
  91.  
  92.      Unpack archive nftp*.zip into some directory and run install.cmd. After
  93.      answering some questions necessary files will be copied to the directory
  94.      you specified and your WPS desktop will hold two new objects -- "NFTP"
  95.      (executable) and "NFTP Manual". You probably already done that because
  96.      you're reading that "NFTP Manual"!
  97.  
  98.      If you want to install NFTP by hand (without install.cmd), copy all files
  99.      into the directory of your choice (eg, "d:\apps\tcpip\nftp"), load
  100.      nftp.ini into your favourite ASCII text editor (eg, TEDIT shipped with
  101.      Warp) and insert your e-mail address (it will be used as a password for
  102.      anonymous logins) at the appropriate place (line
  103.  
  104.                anonymous-password="your-e-mail-address"
  105.  
  106.  
  107.      ). I also suggest to decide where you will keep your bookmarks and
  108.      transfer history and set corresponding variables accordingly. If you like
  109.      to launch programs from desktop, create program object for NFTP. Put
  110.      supplied nftp.mrk file into the directory which you've chosen in nftp.ini.
  111.  
  112.      The language NFTP uses is determined by environment variable NFTP_LANG. It
  113.      should be set to the name (without extension) of corresponding DLL file.
  114.      E.g., if you want to use Japanese version, you should use
  115.  
  116.                set NFTP_LANG=japanes
  117.  
  118.  
  119.      This statement can be put to config.sys or to the batch file invoking nftp
  120.      (install.cmd does exactly this). If you only need English version you may
  121.      omit this variable.
  122.  
  123.      install.cmd creates Workplace shell object to run NFTP. This feature can
  124.      be useful even you are die-hard command-line user (see below). NFTP can
  125.      run in a fullscreen session or in a VIO window. Installation script sets
  126.      it to run in a window, and window will not be closed automatically after
  127.      exit -- this can help to diagnose problems. Turn it off when everything
  128.      works as expected.
  129.  
  130. -------------------------------------------------------------------------------
  131.  
  132. QUICK START
  133.  
  134. After installation, run nftp.exe (from command line or WPS object). If you're
  135. launching NFTP from WPS object created by installation script you will be asked
  136. to enter "FTP server to log in"; simply press ENTER now. You should see list of
  137. bookmarks on the screen. Use cursor keys to select one of them and press ENTER.
  138. If everything is set up correctly, you'll see client-server negotiation and
  139. then finally list of files and directories on the ftp server you've chosen. Hit
  140. SPACE to view control connection window (and it is scrollable!), TAB to view
  141. local files/directories. Return to remote directory view by pressing space/tab
  142. another time. Move pointer with cursor keys, press ENTER on a directory to
  143. enter it. Select files to download with INSERT or simply press F5 to transfer
  144. single file. To upload file to server, switch to local files view (with TAB),
  145. select file(s) and press Shift-F5. To view local or remote file, move pointer
  146. to it and press F3 (of course, remote file will be downloaded first -- that
  147. will probably take some time). Navigating in the viewer is simple and
  148. intuitive: scroll file with cursor keys. Press F10 to log off and exit NFTP.
  149. -------------------------------------------------------------------------------
  150.  
  151. USAGE: LAUNCHING NFTP
  152.  
  153. You often already know where the file you need right now is located. Let's
  154. suppose, say, you want to retrieve RFC 959 from
  155.  
  156.        src.doc.ic.ac.uk:/pub/rfc/
  157.  
  158.  
  159. Launch nftp in the following fashion:
  160.  
  161.        nftp  src.doc.ic.ac.uk:/pub/rfc
  162.  
  163.  
  164. or
  165.  
  166.        nftp  src.doc.ic.ac.uk/pub/rfc
  167.  
  168.  
  169. After logging in into src.doc.ic.ac.uk nftp will change directory for you to
  170. /pub/rfc. You will then locate required file and download it.
  171.  
  172. The command line format for NFTP is:
  173.  
  174.       nftp [hostname[[:[port]]directory]   [userid]
  175.  
  176.  
  177. "hostname" is the name of ftp server ('src.doc.ic.ac.uk' in the above example),
  178. ":" can be omitted, "directory" is remote directory ('/pub/rfc' in the above
  179. example), "port" is port number (don't use it if you don't know what's it). If
  180. you have an account on ftp server (i.e. you're not anonymous user), you can
  181. specify your userid in the command line. You will be asked for a password. An
  182. important note -- there shouldn't be any spaces between hostname and directory!
  183. Another examples are:
  184.  
  185.       nftp private.crlf.net:7500/users    (nonstandard port)
  186.       nftp ftp/pub                        (domain suffix omitted)
  187.       nftp 128.128.128.128:/mydir         (IP number instead of host name)
  188.       nftp lnfm1.sai.msu.su/home/asv asv  (login with explicit directory and real password)
  189.  
  190.  
  191. Specifying directories in a command line is a pretty useful feature: when
  192. you've found some reference, paste it directly into the command line (e.g.,
  193. File Commander/2 1.4 allows this) and you'll get right into the place without
  194. typing anything except Ctrl-Ins and Shift-Ins! Note that it's impossible to
  195. specify filename on the command line -- use directory name, not file name (i.e.
  196. /pub/rfc instead of pub/rfc/rfc959.txt.gz in the above example).
  197.  
  198. NFTP will try to use any text mode you have set before starting it. Modes with
  199. 80 columns work rather good, but do not expect this from 132-col or other
  200. modes.
  201. -------------------------------------------------------------------------------
  202.  
  203. USAGE: LOGGING IN AND OUT
  204.  
  205. NFTP has several ways to choose ftp server. First of all, you can specify it on
  206. the command line as an argument (see previous chapter, "USAGE: LAUNCHING
  207. NFTP"). Second, you can put server's hostname into the bookmark list if you
  208. frequent this site. Third, you can open it manually -- press Ctrl-L (for
  209. anonymous login) or Ctrl-N (for named login). to be continued
  210. -------------------------------------------------------------------------------
  211.  
  212. USAGE: NAVIGATING REMOTE SITE AND LOCAL DIRECTORIES
  213.  
  214. -------------------------------------------------------------------------------
  215.  
  216. USAGE: TRANSFERRING FILES
  217.  
  218. -------------------------------------------------------------------------------
  219.  
  220. USAGE: CUSTOMIZING NFTP
  221.  
  222. Almost all customization is done through NFTP.INI. This file usually resides in
  223. the same directory as NFTP.EXE itself. However, you can also place it into
  224. PATHed directory or current directory.
  225.  
  226. The file NFTP.INI is plain ASCII file and can be edited with any ASCII editor
  227. (e.g., "System Editor" or "TEDIT"). Lines starting with semicolon ";" are
  228. comments; empty lines are ignored. The file itself holds comments about
  229. configuration and parameter meaning.
  230.  
  231. Note that only one entry in NFTP.INI is required -- your e-mail address
  232. (anonymous-password). All other fields are commented by default (installation
  233. script sets log-transfers-name and bookmarks-file). Do not forget to remove
  234. leading ";" when doing customizations.
  235.  
  236. To get rid of overhead of parsing of text initialization file, NFTP converts
  237. NFTP.INI into NFTP.BIN. This operation is done only when necessary (i.e. when
  238. NFTP.BIN does not exist or older than NFTP.INI). Conversion is fully automatic
  239. and done by NFTP-OPT. Please note that file NFTP-OPT.EXE should be placed into
  240. the same directory as NFTP.INI or into the directory listed in PATH environment
  241. variable. In general, you shouldn't worry about it.
  242.  
  243. Below is a complete explanation of all parameters in NFTP.INI. Parameters can
  244. be of one of three types: integer, boolean and string. Integer values are
  245. represented by integers :-) and can be prefixed by sign. Boolean values can be
  246. specified as "0", "n", "no" (false), "1", "y", "yes" (true) (WITHOUT! quotes).
  247. Different capitalization (e.g., "Yes") can also be used. Strings are
  248. represented by character sequencies enclosed into double quotes; if value
  249. contains only letters, digits and minus sign you can safely omit quotes. Types
  250. and default values are shown after each parameter name in parentheses.
  251.  
  252.   1. Networking options and parameters ([network] section)
  253.      anonymous-name (string; default: anonymous)
  254.           your name for anonymous transfers
  255.      anonymous-password (string)
  256.           your password for anonymous logins. Insert your e-mail address here
  257.      default-port (integer; default: 21)
  258.           default ftp port. Do not change unless you're know what are you
  259.           doing. To make this feature useful create special directories for
  260.           sites with nonstandard ports and set 'default-port' in them, not in
  261.           general nftp.ini: nftp will look for initialization file in the
  262.           current direcory first
  263.      firewalling (boolean; default: no)
  264.           set to "yes" if you are behind the firewall
  265.      proxy-server (string)
  266.           name of your proxy server (firewalling only)
  267.      proxy-login (string)
  268.           your login on proxy server (firewalling only)
  269.      use-PASV-mode (boolean; default: no)
  270.           whether to use passive mode all the way. If you don't know what's
  271.           that don't touch it
  272.  
  273.   2. General options ([options] section)
  274.      derefence-links (boolean; default: yes)
  275.           whether to dereference symlinks on server. Setting to 0 is not
  276.           recommended
  277.      show-dotted (boolean; default: yes)
  278.           whether to include files starting with "." into the list
  279.      debug (boolean; default: no)
  280.           debugging. Do not set to 1 unless nftp goes crazy. Produces huge logs
  281.      transfer-bell (boolean; default: yes)
  282.           whether to beep at the end of transfer
  283.      login-bell (boolean; default: yes)
  284.           whether to beep when logged in
  285.      transfer-pause (boolean; default: yes)
  286.           whether to pause at transfer stats screen at the end of transfer
  287.      log-transfers (boolean; default: yes)
  288.           whether to log transfers. Pretty useful option to keep history and
  289.           statistics
  290.      log-transfers-name (string; default: "nftp.fls")
  291.           name of transfer log. This may be global file (one for several
  292.           instances of nftp running simultaneously).
  293.      save-bookmark-at-logoff (boolean; default: no)
  294.           whether to ask to save current host/dir as bookmark at logoff. Do you
  295.           remember that nCftp does this always?
  296.      bookmarks-file (string; default: "nftp.mrk")
  297.           where to save bookmark information. This may be global file (one for
  298.           several instances of nftp)
  299.      text-viewer (string; default: "tedit.exe")
  300.           external program invoked by Alt-F3. Substitute your favourite
  301.           viewer/editor
  302.      auto-switch-to-control (boolean; default: no)
  303.           whether to switch to Control Connection Window automatically when
  304.           sending commands to server
  305.      default-sort (integer; default: 0 (no sort))
  306.           default directory sort for remote file list. 0-unsorted, 1-by name,
  307.           2-by extension, 3-by size, 4-by time
  308.      default-download-path (string; no default value)
  309.           if this parameter is set, nftp will change into this directory after
  310.           start
  311.      default-dir-mode (integer; default: 1 (parsed))
  312.           default view of remote directory. 0 - raw (as supplied by server), 1
  313.           - parsed (owner/group removed)
  314.  
  315.   3. Screen colours ([colours] section)
  316.  
  317.      File Listing
  318.      pointer-marked-dir (default: yellow on cyan)
  319.           cursor pointing to marked directory (not used)
  320.      pointer-marked (default: yellow on cyan)
  321.           cursor pointing to marked file
  322.      pointer-dir (default: lightgreen on cyan)
  323.           cursor pointing to directory
  324.      pointer (default: black on cyan)
  325.           cursor pointing to file
  326.      marked-dir (default: yellow on black)
  327.           marked directory (not used)
  328.      marked (default: yellow on black)
  329.           marked file
  330.      dir (default: green on black)
  331.           directory
  332.      regular-file (default: grey on black)
  333.           file
  334.  
  335.      Dialog windows
  336.      dialog-box-text (default: grey on blue)
  337.           dialog window
  338.      dialog-box-selected (default: white on grey)
  339.           selected element in a dialog window
  340.      dialog-box-entryfield (default: black on cyan)
  341.           entry field
  342.      dialog-box-text-warn (default: grey on red)
  343.           dialog window containing important information
  344.  
  345.      Control Connection
  346.      controlconn-header (default: grey on blue)
  347.           window header
  348.      controlconn-respline (default: grey on black)
  349.           server messages and responces
  350.      controlconn-command (default: lightgreen on black)
  351.           command which was sent to server
  352.      controlconn-comment (default: lightred on black)
  353.           comment (actually not a part of control connection)
  354.  
  355.      Bookmarks
  356.      bookmark-background (default: black on grey)
  357.           bookmark window
  358.      bookmark-pointer (default: black on cyan)
  359.           cursor
  360.  
  361.      Built-in File Viewer
  362.      viewer-text (default: grey on black)
  363.           file contents
  364.      viewer-header (default: black on cyan)
  365.           status line
  366.  
  367.      Miscellaneous
  368.      status (default: grey on blue)
  369.           status lines on remote directory (no. of files, no. of bytes, current
  370.           host/directory etc.)
  371.      status-local (default: white on blue)
  372.           status lines on local directory (no. of files, no. of bytes, current
  373.           host/directory etc.)
  374.      transfer-status (default: grey on blue)
  375.           file transfer panel
  376.      help (default: black on cyan)
  377.           help viewer
  378.  
  379.   4. Keyboard combinations ([keys] section)
  380.      All these parameters are of type 'string' and can take more than one
  381.      value. Separate values by comma. Quotes aren't needed because key names do
  382.      not contain special characters.
  383.  
  384.      nothing
  385.           binds key to no action. Useful for removing unwanted defaults
  386.  
  387.      Switching modes
  388.      switch-to-cc (default:space)
  389.           switches between file manager and control connection
  390.      switch-local-remote (default:tab)
  391.           switches between local and remote file view
  392.      directory-mode-raw (default: ctrl-w)
  393.           switches to raw directory view (as in versions 0.60-)
  394.      directory-mode-parsed (default: ctrl-p)
  395.           switches to parsed directory view (more space for filenames,
  396.           owner/group id's omitted)
  397.  
  398.      Logging in and out
  399.      bookmarks (default:ctrl-b)
  400.           log in to server from bookmark list
  401.      login-anonymous (default:ctrl-l)
  402.           log in to anonymous ftp server, enter server name
  403.      login_named (default:ctrl-n)
  404.           log in to private ftp server, enter server name/login/password
  405.      logoff (default:ctrl-k)
  406.           log off site
  407.      exit (default:f10)
  408.           exit NFTP
  409.  
  410.      Transferring files
  411.      download (default:f5)
  412.           download file(s)
  413.      upload (default:shift-f5)
  414.           upload file(s)
  415.      change-transfer-mode (default:ctrl-t)
  416.           switches transfer mode between ASCII/BINARY
  417.  
  418.      File operations
  419.      view-int (default:f3)
  420.           view file with internal viewer
  421.      view-ext (default:alt-f3)
  422.           view file with external viewer
  423.      delete (default:f8)
  424.           delete file/directory
  425.      mkdir (default:f7)
  426.           create directory
  427.  
  428.      Sorting file list
  429.      sort-name (default:ctrl-f3)
  430.           sort file list by name
  431.      sort-ext (default:ctrl-f4)
  432.           sort file list by extension
  433.      sort-time (default:ctrl-f5)
  434.           sort file list by time
  435.      sort-size (default:ctrl-f6)
  436.           sort file list by size
  437.      sort-unsort (default:ctrl-f7)
  438.           make file list to be unsorted (as supplied by server)
  439.      sort-reverse (default:ctrl-f8)
  440.           reverse sort order
  441.  
  442.      Navigating directory structure
  443.      enter-directory (default:enter,ctrl-pgdn)
  444.           enter into the directory under cursor
  445.      go-root (default:ctrl-backslash)
  446.           go to the root directory
  447.      go-up (default:ctrl-pgup)
  448.           go to the directory one level up ("cd ..")
  449.      reread (default:ctrl-r)
  450.           re-read directory
  451.      change-local-drive (default:f2)
  452.           change local drive
  453.      change-directory (default:alt-c)
  454.           input remote directory name and change into it
  455.  
  456.      Selecting/deselecting files
  457.      select (default:insert)
  458.           select/deselect file under the cursor and move cursor one position
  459.           down (if possible). When cursor points to the directory, just move
  460.           down
  461.      select-all (default:ctrl-numplus)
  462.           mark all files in the current directory
  463.      deselect-all (default:ctrl-numminus)
  464.           unmark all files in the current directory
  465.      select-by-filter (default: plus)
  466.           mark files by user-specified filter
  467.      deselect-by-filter (default: minus)
  468.           unmark files by user-specified filter
  469.      invert-selection (default: *)
  470.           inverts selection
  471.  
  472.      Miscellaneous
  473.      autocontrol (default:ctrl-a)
  474.           switches autoswitching to control connection on/off
  475.      screen-redraw (default:ctrl-d)
  476.           redraws screen (do not re-reads remote directory)
  477.      noop (default:alt-n)
  478.           send NO OPERATION command (useful for verifying connection aliveness)
  479.      useflags (default:alt-f)
  480.           switches between NLST with flags/LIST commands
  481.      quote (default:alt-q)
  482.           send command to ftp server verbatim
  483.      save-bookmark (default:f4)
  484.           save current remote directory as bookmark
  485.  
  486.   5. Owner identification ([registration] section)
  487.      Ignored in the current version until August 1, 1996.
  488.      name (string)
  489.           Your registration name (specify exactly as typed in registration
  490.           form); enclose into double quotes
  491.      code (string)
  492.           Your registration code; enclose into double quotes. If you're running
  493.           unregistered version, set this parameter to empty value.
  494.      message (boolean; default: yes)
  495.           If you're running unregistered and hate those warnings about
  496.           registration, set this parameter to 0 -- you'll no longer see
  497.           warnings. Of course, files larger than 500KB will be still
  498.           unreachable.
  499.  
  500. The following table lists valid keyboard combinations. "Y" means that this
  501. keystroke can be used; "--" -- keystroke cannot be assigned (it's not generated
  502. at all or intercepted by system); "N/R" -- not recommended (e.g., better leave
  503. Esc or Enter bound to defaults); "char" -- generates plain ASCII character
  504. code.
  505.  
  506.             VALID KEY COMBINATIONS: FUNCTION AND ALPHANUMERIC KEYS
  507.       Key        Plain             Shift             Alt          Ctrl
  508.  esc            N/R     same as 'esc'               --    --
  509.  f1-f12         Y       Y                           Y     Y
  510.  ~ `            char    char                        Y     --
  511.  1 !            char    char                        Y     --
  512.  2 @            char    char                        Y     Y
  513.  3 #            char    char                        Y     --
  514.  4 $            char    char                        Y     --
  515.  5 %            char    char                        Y     --
  516.  6 ^            char    char                        Y     Y
  517.  7 &            char    char                        Y     --
  518.  8 *            char    char                        Y     --
  519.  9 (            char    char                        Y     --
  520.  0 )            char    char                        Y     --
  521.  - _            char    char                        Y     Y
  522.  + =            char    char                        Y     --
  523.  | \            char    char                        Y     Y
  524.  backspace      N/R     same as 'backspace'         Y     Y
  525.  tab            N/R     N/R                         N/R   N/R
  526.  enter          N/R     same as 'enter'             Y     Y
  527.  a-z            char    char                        Y     Y
  528.  { [            char    char                        Y     same as 'esc'
  529.  } ]            char    char                        Y     Y
  530.  : ;            char    char                        Y     --
  531.  " '            char    char                        Y     --
  532.  < ,            char    char                        Y     --
  533.  > .            char    char                        Y     --
  534.  ? /            char    char                        N/R   --
  535.  Space          char    same as 'space'             NA    NA
  536.  
  537.           VALID KEY COMBINATIONS: NAVIGATION KEYS AND NUMERIC KEYPAD
  538.     Key            Plain             Shift        Alt           Ctrl
  539.  insert     N/R                same as 'insert'   Y    Y
  540.  delete     N/R                same as 'delete'   Y    Y
  541.  home       N/R                same as 'home'     --   Y
  542.  end        N/R                same as 'end'      Y    Y
  543.  pgup       N/R                same as 'pgup'     Y    Y
  544.  pgdn       N/R                same as 'pgdn'     Y    Y
  545.  up         N/R                same as 'up'       Y    Y
  546.  down       N/R                same as 'down'     Y    Y
  547.  left       N/R                same as 'left'     Y    Y
  548.  right      N/R                same as 'right'    Y    Y
  549.  num /      same as '/'        same as '/'        Y    Y
  550.  num *      same as '*'        same as '*'        Y    Y
  551.  num -      same as '-'        same as '-'        Y    Y
  552.  num +      same as '+'        same as '+'        Y    Y
  553.  num enter  same as 'enter'    same as 'enter'    Y    same as 'ctrl-enter'
  554.  num 1      same as 'end'      same as '1'        --   same as 'ctrl-end'
  555.  num 2      same as 'down'     same as '2'        --   same as 'ctrl-down'
  556.  num 3      same as 'pgdn'     same as '3'        --   same as 'ctrl-pgdn'
  557.  num 4      same as 'left'     same as '4'        --   same as 'ctrl-left'
  558.  num 5      Y                  same as '5'        --   Y
  559.  num 6      same as 'right'    same as '6'        --   same as 'ctrl-right'
  560.  num 7      same as 'home'     same as '7'        --   same as 'ctrl-home'
  561.  num 8      same as 'up'       same as '8'        --   same as 'ctrl-up'
  562.  num 9      same as 'pgup'     same as '9'        --   same as 'ctrl-pgup'
  563.  num 0      same as 'insert'   same as '0'        --   same as 'ctrl-insert'
  564.  num .      same as 'delete'   same as '.'        --   same as 'ctrl-delete'
  565. -------------------------------------------------------------------------------
  566.  
  567. KEYBOARD COMMANDS SUMMARY
  568.  
  569. All interaction with NFTP is keyboard-based; there's no mouse support (and I am
  570. not going to implement it -- at least now). This approach is somewhat tough for
  571. novice user, but after some learning it gives the best results in terms of
  572. usability and interaction speed. Here is the list of keystrokes ("hot keys");
  573. it's divided into several sections each pertaining to specific mode of
  574. operation or action classification.
  575.  
  576.                    GENERAL KEYBOARD COMMANDS
  577.  
  578.      Note that these commands are available almost always
  579.  
  580.     Key                          Meaning
  581.  
  582.  Shift+F1    program information and general keyboard commands
  583.  
  584.     F1       brings context sensitive help
  585.  
  586.     F10      logoff from site and quit NFTP
  587.  
  588.   Ctrl-K     logoff from site
  589.  
  590.   Ctrl-B     open bookmark list and log to site from it
  591.  
  592.   Ctrl-L     login as anonymous into new site
  593.  
  594.   Ctrl-N     login with userid/password into new site
  595.  
  596.   Ctrl-V     display version information
  597.  
  598.   Ctrl-A     toggle state of autocontrol flag
  599.  
  600.   Ctrl-T     toggle ASCII/BINARY mode
  601.  
  602.   Ctrl-D     redraw screen (do not re-read remote dir)
  603.  
  604.    Alt-N     send NO OPERATION command (verify connection
  605.              aliveness)
  606.  
  607.   Ctrl-W     sets remote directory view to raw (as used in
  608.              NFTP 0.60-)
  609.  
  610.   Ctrl-P     sets remote directory view to parsed
  611.  
  612.              use/inhibit NLST with flags (default is on). Some
  613.              servers
  614.    Alt-F     do not like NLST -lLa. Try if you see strange
  615.              messages from server when retrieving directory
  616.              listing. NOT RECOMMENDED.
  617.  
  618.                    CONTROL CONNECTION WINDOW
  619.  
  620.      Key                          Meaning
  621.  
  622.  arrow keys    move viewpoint
  623.  
  624.      Esc       bring you back to the end of history (same as
  625.                End)
  626.  
  627.     Space      switches to directory view
  628.  
  629.     Alt-Q      send any string to server verbatim (quote)
  630.  
  631.     Alt-C      change to arbitrary directory
  632.  
  633.               FILE LISTING VIEW (REMOTE OR LOCAL)
  634.  
  635.      Key                          Meaning
  636.  
  637.                           Navigating
  638.  
  639.  arrow keys    move cursor around
  640.  
  641.    Ctrl-\      change to root directory
  642.  
  643.   Ctrl-PgUp    goto the directory level higher ("cd ..")
  644.  
  645.   Ctrl-PgDn    chdir to directory under cursor
  646.  
  647.     Enter      same as above
  648.  
  649.     Alt-C      change to arbitrary directory
  650.  
  651.     Space      switch to control connection
  652.  
  653.      F2        select drive letter -- local view only
  654.  
  655.                      Sorting file listing
  656.  
  657.    Ctrl-F3     sort directory by name, dirs first
  658.  
  659.    Ctrl-F5     sort directory by time, then name, dirs first
  660.  
  661.    Ctrl-F6     sort directory by size, then name, dirs first
  662.  
  663.    Ctrl-F7     remove sorting, return to original state
  664.  
  665.    Ctrl-F8     reverse current sort order
  666.  
  667.                        Marking/unmarking
  668.  
  669.   Ctrl-num+    mark all files in current directory
  670.  
  671.   Ctrl-num-    unmark all files in current directory
  672.  
  673.    Insert      mark/unmark file under cursor. Directory cannot
  674.                be marked
  675.  
  676.       *        invert selection
  677.  
  678.   Alt-num+     mark all files in all visited directories
  679.  
  680.   Alt-num-     unmark all files in all visited directories
  681.  
  682.                       Transferring files
  683.  
  684.      F5        download file under cursor or marked files (if
  685.                any) -- remote view only
  686.  
  687.   Shift+F5     upload file under cursor or marked files (if
  688.                any) -- local view only
  689.  
  690.    Alt-F5      download all marked files from all directories
  691.                -- remote view only
  692.  
  693.                          Viewing files
  694.  
  695.      F3        view file under cursor, use fast internal
  696.                viewer
  697.  
  698.    Alt-F3      view file under cursor, use external viewer
  699.  
  700.               Creating/deleting files/directories
  701.  
  702.      F7        make directory (you have to have permissions on
  703.                remote)
  704.  
  705.      F8        delete file or directory under cursor
  706.  
  707.    Ctrl-R      re-read directory (refresh file list)
  708.  
  709.                          Miscellaneous
  710.  
  711.      F4        save this place as a bookmark
  712.  
  713.                          ENTRY FIELDS
  714.  
  715.            Key                          Meaning
  716.  
  717.         Esc/Enter         abandon/confirm
  718.  
  719.   Left, Right, Home, End  move cursor around
  720.  
  721.      Tab, Shift-Tab       move to next/previous field (if
  722.                           any)
  723.  
  724.      Del, Backspace       delete characters
  725.  
  726.   Pressing any keys different from Left, Right, Home, End will
  727.                    clear the initial string.
  728.  
  729.                          BOOKMARK LIST
  730.  
  731.         Key                          Meaning
  732.  
  733.     arrow keys      move cursor
  734.  
  735.        Enter        select bookmark
  736.  
  737.         Esc         abort (leave bookmark list)
  738.  
  739.         Del         delete bookmark
  740.  
  741.       Insert        create new bookmark
  742.  
  743.                      BUILT-IN FILE VIEWER
  744.  
  745.        Key                           Meaning
  746.  
  747.     arrow keys      scroll (note that you can scroll
  748.                     horizontally also)
  749.  
  750.  Ctrl-Left/Right    scroll by 10 symbols horizontally
  751.  
  752.        Esc          exit viewer
  753.  
  754. -------------------------------------------------------------------------------
  755.  
  756. KNOWN BUGS AND LIMITATIONS
  757.  
  758.   1.  Not all ftp servers are supported. Most ftp servers in the world use
  759.      wu-ftpd under Unix as their server software, so you shouldn't experience
  760.      this trouble too often. Nearly all Unix ftp servers are supported. IBM
  761.      TCP/IP 2.0 for OS/2 ftpd and Windows NT ftpd are supported too.
  762.   2.  When running with 'debug=1', your password will be recorded in debug
  763.      tracefile -- beware!
  764.   3.  When running with 'debug=1', run nftp off HPFS partition - debug file has
  765.      long filename with two dots.
  766.   4.  Error handling is still pretty primitive
  767.  
  768. -------------------------------------------------------------------------------
  769.  
  770. TROUBLESHOOTING
  771.  
  772. Q: nftp says "emx not found".
  773.      A: You don't have emx runtime package installed. Read INSTALLATION section
  774.      again.
  775. Q: nftp crashes, saying "core dumped".
  776.      A: If you can repeat situation, please send me details of your setup
  777.      (nftp.ini, nftp.mrk, keystrokes which caused fault).
  778. Q: nftp seems to be hanging, no activity is visible
  779.      A: If this happened during transfer, try "Q". Otherwise terminate it with
  780.      Ctrl-Break.
  781.  
  782. -------------------------------------------------------------------------------
  783.  
  784. LICENSING INFORMATION
  785.  
  786. The Program (NFTP) is owned by Sergey Ayukov and is copyrighted and licensed,
  787. not sold. The term "Program" means the original program and all whole or
  788. partial copies of it.
  789.  
  790. You may:
  791.  
  792.    * use the Program
  793.    * distribute unaltered copies of the Program
  794.  
  795. You may not:
  796.  
  797.    * reverse assemble, reverse compile, or otherwise translate the Program
  798.    * sublicense, rent, or lease the Program
  799.  
  800. The Program is provided `as is'. Any express or implied warranties, including,
  801. but not limited to, the implied warranties for merchantability and fitness to a
  802. particular purpose are disclaimed. Sergey Ayukov will not be liable for any
  803. lost profits, lost savings, incident, special, or indirect damages or other
  804. economic consequential damages, even if Sergey Ayukov has been advised of the
  805. possibility of such damages. Some jurisdictions do not allow the exclusion or
  806. limitation of incidental or consequential damages, so the above limitation or
  807. exclusion may not apply to you.
  808.  
  809. The size of files that can be transferred with free version is limited to
  810. 500KB. If you want to exploit full capabilities of the Program and receive
  811. support by e-mail from author, you have to register your copy. See section
  812. Registration below. If you don't need neither to transfer files larger than
  813. 500KB nor support you don't have to register. Using unregistered version is
  814. perfectly legal; the above conditions apply. Using registered version is
  815. covered by separate license; it will be provided later.
  816. -------------------------------------------------------------------------------
  817.  
  818. ACKNOWLEDGEMENTS
  819.  
  820. Many people have helped me in creating and improving NFTP. They are (in
  821. alphabetical order):
  822.  
  823.    *  Hubert Brentano (translation to German)
  824.    *  Lennart Carlson (translation to Swedish)
  825.    *  T≤th Ferenc (translation to Hungarian)
  826.    *  Stefan Hora (testing behind the firewall)
  827.    *  Lord Lee (translation to Chinese)
  828.    *  Kirill Lissovsky (usability comments)
  829.    *  Jose Ruiz (translation to Spanish)
  830.    *  Kaz Shimz (translation to Japanese)
  831.    *  Kim Poulsen (translation to Danish)
  832.    *  Kristoffer Viddal (translation to Norwegian)
  833.  
  834. Special thanks to Eberhard Mattes, author of emx/gcc development system!
  835.  
  836. This program is packaged using Info-ZIP's compression utility. Info-ZIP's
  837. software (Zip, UnZip and related utilities) is free and can be obtained as
  838. source code or executables from various bulletin board services and
  839. anonymous-ftp sites, including CompuServe's IBMPRO forum and
  840. ftp.uu.net:/pub/archiving/zip/*.
  841. -------------------------------------------------------------------------------
  842.  
  843. REGISTRATION
  844.  
  845. Registration fee will be US$ 20. For this price you'll get free updates (i.e.
  846. all future versions of NFTP) and support from author by e-mail. Single
  847. registration covers all national language versions, so if you want to run, say,
  848. English and Chinese versions, you'll have to pay only once.
  849.  
  850. If you think that price is too high for this small utility, simply don't use
  851. NFTP.
  852.  
  853. The program isn't complete, so there's nothing yet to pay for. Please wait for
  854. release version (1.0). Version 0.72 will become unregistered August 1, 1996.
  855. There should be another version this Summer.
  856.  
  857. For people living in Former Soviet Union countries registration will cost only
  858. one postcard. If you want to register in advance, send nice postcard
  859. (preferably with your home town if it's not Moscow) enclosed in envelope to
  860. Sergey Ayukov
  861. Sternberg Astronomical Institute
  862. Universitetsky pr., 13
  863. Moscow 119899
  864. Russia
  865. You will receive your registration number after sending registration form by
  866. e-mail. This form will be provided later.
  867.  
  868. Nothing else here at the moment.
  869. -------------------------------------------------------------------------------
  870.  
  871. CONTACTING THE AUTHOR
  872.  
  873. You can reach me at asv@sai.msu.su.
  874.  
  875. Where to find new versions:
  876.  
  877.   1. anonymous ftp: ftp.sai.msu.su:/pub/os2/internet/ftp/
  878.   2.  WWW: http://crydee.sai.msu.su/nftp/
  879.   3.  ftp-os2.cdrom.com, hobbes.nmsu.edu, ftp.leo.org
  880.  
  881. Note that first site is managed by myself so it always contains the latest
  882. version while Hobbes and cdrom archives sometimes become outdated.
  883.  
  884. Sorry for any typos and bad grammar. I will gladly accept any corrections to
  885. this short manual.
  886. -------------------------------------------------------------------------------
  887. Sergey Ayukov (asv@sai.msu.su)
  888. -------------------------------------------------------------------------------
  889.  
  890. Version history
  891.  
  892. Version 0.1 (preview)
  893.      First usable version. Used FTPAPI calls. Very slow; control connection
  894.      messages cannot be seen. Wasn't exposed to public, although available.
  895. Version 0.2 (preview)
  896.      Got rid of FTPAPI. Full-scale socket programming of ftp control connection
  897.      and data transfers. Introduced bookmarks.
  898. Version 0.3 (preview)
  899.      Never showed to public. The last version compiled with IBM CSet++. See
  900.      0.4.
  901. Version 0.4 (preview)
  902.      Nearly the same as 0.3, but compiled with emx 0.9a + gcc 2.6.3. A handful
  903.      of new features:
  904.         o  logging in and out without restarting entire program;
  905.         o  passworded entries in bookmark file;
  906.         o  quick directory change: if you know where to go, you won't need to
  907.           traverse all intermediate dirs;
  908.         o  various bug fixes.
  909. Version 0.5 (preview; close the beta stage)
  910.      Bugfixes plus
  911.         o  ability to work in any 80xXX mode (25 <= XX)
  912.         o  online context sensitive help (press F1, Shift+F1)
  913.         o  code reorganization
  914.         o  some errors are handled (mostly login errors)
  915.         o  directory sorting by name, size, date/time
  916.         o  create directory on the remote, remove file(s) on the remote
  917.         o  preserving date/time of files downloaded
  918.         o  fast built-in file viewer
  919.         o  ability to invoke any ftp server command
  920.         o  better socket selecting scheme
  921.      Will not work after 31 Dec 1995
  922. Version 0.51 (preview; close the beta stage)
  923.      I am sorry for releasing 0.5 so full of bugs... There was a lot of...
  924.         o  fixed couple of awful bugs (memory corruption) resulting in core
  925.           dumps etc;
  926.         o  got rid of malloc (goodbye, flat memory space! welcome, 32-bit
  927.           segments and memory protection!)
  928.         o  you can set nonstandard port in nftp.ini
  929. Version 0.52
  930.      Same as 0.51 but without 31 Dec limitation. Only to be distributed by SAMS
  931.      Publishing.
  932. Version 0.53
  933.      Nearly the same as 0.52 but limited to 30 March 1996.
  934. Version 0.60
  935.      I am a bit short on time; 0.53 expires today, so some new features weren't
  936.      tested much. Bugfixes and small improvements plus:
  937.         o  reget (restarting transfers)
  938.         o  uploading
  939.         o  IP numbers can be used instead of host names
  940.         o  "Q" and "S" work! you can skip files during transfer or stop
  941.           download/upload
  942.         o  more intelligent networking (fixes some problems with dynamic IP)
  943.         o  changing local directory, viewing list of local files etc.
  944.         o  ability to specify arbitrary port (not in bookmarks though)
  945.         o  new bookmarks can be created with Insert key
  946.         o  installation program
  947.         o  documentation
  948. Version 0.70
  949.      Few bugfixes (including failing to recognize "hostname/directory" format
  950.      when specified in the command line) plus
  951.         o  fixed nasty bug causing nftp to crash when viewing some files with
  952.           internal viewer -- thanks to Jose Ruiz who pointed out to such file
  953.         o  sort by extension
  954.         o  much more error recovery; there should be no more situations when
  955.           nftp exits silently;
  956.         o  improved sound signals; includes beep after successful login
  957.           (configurable)
  958.         o  tables in this manual look much nicer now :-)
  959.         o  firewalling support -- does not work yet
  960.         o  remappable keys
  961.         o  ability to specify download directory in NFTP.INI. NFTP will change
  962.           into that directory after start
  963.         o  IBM TCP/IP ftpd for OS/2 is supported
  964.         o  Windows NT ftpd is supported
  965.         o  Windows 3.x WFTPD by Texas Imperial Software is supported
  966.         o  Progress indicator in "view remote file" and during receiving of
  967.           directory listing
  968.         o  You can now try to "chdir" to symbolic link
  969.         o  "Parsed" directory view -- hit Ctrl-P and see
  970.         o  National language support -- check out NFTP home page
  971.         o  Average transfer speed is now recorded in the history (.fls file)
  972.         o  Russian version
  973.         o  Chinese BIG-5 version
  974.         o  Spanish version
  975. Version 0.71
  976.      Several bugfixes plus
  977.         o  '*' inverts selection
  978.         o  f8 deletes local directories
  979.         o  Neologic FTPD is supported
  980.         o  moving language-dependent strings into separate DLLs (thus greatly
  981.           reducing size of the package)
  982.         o  (un)marking files by template (eg, '*.txt')
  983.         o  Hungarian version
  984.         o  German version
  985.         o  Danish version
  986.         o  Japanese version
  987.         o  caching of viewed remote files
  988.         o  downloading all marked files from all directories (alt-f5)
  989. Version 0.72
  990.      No new functionality. Fixed small mistakes in national language
  991.      translations. Added Norwegian version. Added missing ASCII and Postscript
  992.      manuals.
  993.  
  994. Planned for next versions (note that not all these features will be in the
  995. first shareware version (1.0)):
  996.  
  997.    *  more error recovery
  998.    *  more complete docs
  999.    *  improved installation/setup routines
  1000.    *  bookmarks in the form of standard URLs
  1001.    *  more multithreading (view file while downloading etc)
  1002.    *  enhanced bookmarks (folders?, descriptions etc.)
  1003.    *  more smart fileviewer
  1004.    *  keep-alive option (to prevent timeout logoffs)
  1005.    *  searching for string in file names
  1006.    *  letters select files starting with these letters
  1007.    *  batch mode ?
  1008.    *  saving directory listing
  1009.    *  complete firewalling support (a-la WS_FTP)
  1010.    *  autodownloading file descriptions (00index.txt) and showing them (a-la
  1011.      CuteFTP)
  1012.  
  1013. There were several requests for PM version. I hope that I will write it
  1014. sometimes, but probably not in 1996.
  1015.