UTF8 encoding * CID:||+130ER~:  2025/12/14  v130D            update#=  781;||+130ER~
************************************************************************
(Index)
    (0).Introduction.
        (A) Characteristic
        (B) Setup
        (C) Operation
        (D) How to for
            .Mouse operation.
            .Scroll function.
            .Use Right Ctrl key as Enter(execute) key.
            .Command History.                                         ||~v129R~
            .Tab setting.
            .Line Drawling/Special glyph input
            .Control Character Input                                  ||~v124R~
            .NLS support.                                             ||~v125R~
            .Japanese DBCS,Code conversion
            .EBCDIC file support.                                     ||~v125R~
            .EBCDIC conversion configuration file
            .UTF8 support.                                            ||~v124R~
            .ShortPathName.                                           ||~v129R~
            .SyntaxHighlight                                          ||~v124R~
            .Remote file access
            .Remote Shell(rsh)
            .TSO support                                              ||~v124R~
            .Terminal emulator                                        ||~127ER~
            .Binary file.
            .Huge File.                                               
            .Line copy between 2 files.
            .Line compare/matching between 2 files.
            .Delete lines skipping some lines.
            .Display top of file and end of file at same time.
            .Delete all lines contained a string.
            .UpdateLineTag.
            .SPF file(LineNumberedFile)
            .COBOL file.
            .FixedLengthRecord file                                   ||~v125R~||~127BR~
            .VariableLengthRecord file                                ||~127BR~
            .Profile function.                                        ||~v124R~
            .Apply CHAnge cmd to all file in the directory.           ||~v124R~
            .Move multiple file between 2 directory.
            .File line count.
            .Undo of deleted file
            .Use of OS native command
            .Use of other applications like as Excel.
            .kick xe from VisualC++.
            .Periodically check of other application in progress.     ||~v124R~
            .User command                                             ||~127ER~
            .Hex-calc/Time-calc/Timestamp-conv/Decimal-fraction-calc.
            .Parenthesis, #if, "/*" comment and XML tag pair search               ||~v124R~||~v129R~
            .Cut & Paste
            .Drag & Drop
            .Basic Table Calculation.
            .sample operation to edit logfile to analyze.
            .Android version.                                         ||~126BR~
            .Windows7-64bit.                                          ||~126FR~
            .Symbolic Link(Junction).                                 ||~127AR~
        (E) Words
            - Work directory.
            - CID (Change ID).
            - Margin.
            - SPF(Line-Numbered 80 column)file.
            - Long line.
            - ADS(Alternative Data Stream).
    (1).Function-Key default assignment
    (2).Panel
        (A-1) Menu                                                    
        (A-2) 0.0 Color  *                                            
        (A-3) 0.1 Command-Key *                                       
        (A-4) 0.2 Function Key *                                      ||~127ER~
        (A-5) 0.3 Key Usage List*                                     ||~127ER~
        (B)   File name input panel                                   
        (C)   EDIT/BROWSE                                             
        (D)   Directory                                               
        (E)   COMMAND RESULT                                          
        (F-1) Utility:Compare                                         
        (F-2) Utility:Search                                          
    (3).Edit Command
  	    (A) Command table
        (B) Note
        (C) Command syntax(Alphabetical sequence)                     ||~v124R~
    (4).Line command
        (A) Browse/Edit   *
        (B) Directory List *
    (5).DOS command
    (6).INI file.
    (7).Command line parameter.

 * In the following description, included by #ifdef/#ifndef for the line
   special to the OS version as following.
     #ifdef UNX
     #endif
   And you should assume /parm as -parm for UNIX.
   UNX is for common to Linux and AIX. XXE is for Linux X-Window version.
************************************************************************
(0).Introduction.
*********************
  (A) Characteristic*
*********************

   .This is for programming under PC who are familiar with main frame
    SPF editor, and other convenient operations are also avail as usual
    as other PC editor. It supports SPF file(80 byte fixed line length||~v124R~
    with line-no maintained on col 73-80.Version number on col 79-80  
    is automatically updated.                                         
    RENum support COBOL line number on COL1-6.
   .Change ID is tagged on updated line automatically.                
    This function support you to understand program modification history,
    to investigate cause of bug or to manage program version.
   .Powerful function prepared to edit data file like as logfile to pass to Excel.||~v124R~
   .Binary editor function is prepared.
#if defined(W32) || defined(UNX)
   .Remote file access using FTP is available to edit, delete, copy, move, append
    file/dir. Register remoteID on xehosts file.                      ||~v124R~
    RemoteShell(rsh) is also supported under the environment properly set-upped.
    Using s3270+TSO/E+IND$FILE,acess to mainframe dataset is available.||~v124R~
#endif
   .Basic filer function like as Delete/Copy/Move/Rename/Print etc. is||~v124R~
    avail on directory list screen.
   .Windows(Windows9x,WindowsNT),OS/2,DOS,GCC(DOS Extender),Linux
    version is avail now. It is convenient that operation is common to||~v124R~
    those OS. And AIX(IBM unix) version is prepared. AIX version is
    used also through TeraTerm*(telnet tool).                         ||~v124R~
    Someone use puTTY, I heard.                                        ||~v124I~
   .Supports only 32bit version.                                      ||~v124R~
    BigEndian was tested on Linux/390(CentOS/Debian) on Hercules.     ||~v124R~

   *)TeraTerm is freeware by T.Teranishi.
********************
  (B) Setup        *
********************
#ifdef UNX
  .Un-tar xe___.tgz(___:versionID). e.g. "tar -zxvf xe107.tgz".       ||~v128R~
  .Move bin file to the directory on PATH.
  .Start xe by "xe [filename]".
   Command line parm is displayed by "xe --h"(parm specific to Linux
   and AIX) or "xe -h"(common parm).
  .Work-directory xe_wdnnnnn(nnnnn:UserID) is created in ~/ (HOME,    
   if HOME is / (ROOT), /tmp is used).                                
   You can specify work directory name by env-var(export xe=xxxx) or
   -w cmd line parameter. You would be better to include '%' in the name.||~v124R~
   For ex, by specifying "-w /tmp/XE/wd%",'%' is replaced by userID and||~v124R~
   the directory is created as xe work directory.                     ||~v124R~
   If you use other than default work dir,it should be mkdir-ed.
   And save-directory for undo line cmd on dir-list is created also in
   HOME as default. this may be changed by env-var "xe_undel".        ||~v124R~
   xe_undel_nnnn is created in the save dir.
  .SSH to Linux/390.                                                  ||~v125R~
   You can use remote X-application by like as "ssh -X user@remote [gxe]||~v125R~
     user:userID in remote, remote:Hostname or IP address.            ||~v125R~
   It may be required to modify /etc/ssh/sshd_config(remote) and /etc/ssh/ssh_config(local)||~v125R~
   to pass environment variable by AcceptEnv and SendEnv statement for LANG LC_*.||~v125R~
   And font installation may be required when corrupted DBCS display like as||~v125R~
   "aptitude install unifont".                                        ||~v125R~
   About ssh connection troubles, see gxeinstallREADMEe/gxeinstallREADMEj:paragraph (S) s390x.||~v30BR~
#else
   .Enter command on command prompt screen.
   .Make directory for XE work usage. e.g. md c:\xe.                  ||~v128R~
    The default is %USERPROFILE%\xe_wd (c:\Users\%USERNAME%\xe_wd) which is created automatically when first launched.||~v29tR~
    The default folder for older versions is c:\xe_wd, so continue to use it if it exists.||~v29tR~
   .Melt .ZIP file in the work directory.  e.g. unzip xewin.           ||~v124R~||~v128R~
   .If use other than default, set environment variable of the directory.
    e.g. set xe=c:\xe                                                 ||~v128R~
    It is better to use that is set in autoexec.bat on DOS(config.sys for OS/2),||~v29tR~
    or .bat(.cmd for OS/2) file to startup xe.
    On Windows you can set environment variables from the Control Panel.||~v29tR~
   .set into PATH the name of the work directory, or move xe.exe to the
    directory PATH is already set.
#ifdef WXE
   .put wxe.hlp(online help file) in the same dir with wxe.exe.
#endif
  #ifdef GCC
  (note). DOS version is limited by 640kb.                            
          Use GCC version if you have DPMI server.
          GCC version is DOS Extender version(no 640k limit).
          QEMM etc. is one of DPMI server under DOS.                  ||~v124R~
          CWSDPMI is for DOS prepared from Nifty FEXT LIB-13(original)
          #449 CSDPMI3B.ZIP,download and place it on PATH.
          (CWSDPMI is by C.W.Sandamann)
  #endif
#endif

#if defined(UNX) || defined(W32)
   .set up for rsh.
      Following setup, allow service and hostid/userid, is required at remote.
      To allow rsh service drop comment id(#) of /etc/inetd.conf.
      Or, when xinetd is used, set disable=no in the file /etc/xinetd.d/rsh.
      To allow hostid/userid, register local hostname and local userid in /etc/hosts.equiv OR||~v124R~
      $HOME/.rhosts($HOME is home dir of the login userid).
      For Windows, confirm local userid by Control-Panel-->UserAcount.
      Check syslog when permission is denied. On Linux, syslog is     
      /var/log/messages(it is defined in /etc/syslog.conf)
      Prepare .rhosts when msg "pam_rhosts_auth:denied to ..." is written.
      File permission of .rhosts may have to be 600.
#endif

#if defined(LNX) || defined(W32)
   .set up to enable TSO access.                                      ||~v124R~
      See (D)"TSO support".                                           ||~v124R~
#endif

********************
  (C) Operation     *
********************

   .Enter command on command prompt screen.                           ||~v124R~
   .command "xe" starts up following MENU screen.

          -------------- MENU ----------------------------------------
          ===>                                                        
#ifdef UNX
                                                      hostname = myhost
#else
                                                                      
#endif
          0  PARM         - Parameter Change                          
             0.0 (0) COLOR   - Palette and Color
             0.1 (A) SC-CMD  - Assign cmd-string to Short-Cut key     ||~v124R~
             0.2 (B) FUNC-KEY- Change Key Assignment
             0.3 (C) KEY-FUNC- Browse Key List
          1  BROWSE       - Display File                              
          2  EDIT         - Edit/Create File                          
          6  COMMAND      - Edit Command Result                       
          X  EXIT         - Save and Split End                        
          R  RETURN       - Save and Exit                             
          Q  QUIT         - Quit and Exit                             
                                                                      
   .FileNameInput screen is up when entered 2 on the line "===>".     
                                                                      
#ifdef UNX
          EDIT--------------------------------------------------------
          ===>
                                                      hostname = myhost
             FILE NAME ===>
             DIRECTORY ===>
             Current   ----/home/userid
             Latest    ---- 1 - 16 of 200

           - /tmp/x1
#else
          EDIT--------------------------------------------------------
          ===>                                                        
                                                                      
             FILE NAME ===>                                           
             DRIVE     ===> : C D E
             DIRECTORY ===>                                           
             Current   ----D:\ibmcpp\src                              
             Latest    ---- 1 - 16 of 200

           - c:\windows

#endif
                                                                      
   .Edit screen appear when filename is entered on the line of
    "FILE NAME===>".
                                                                      
          EDIT---|G:\X1.C (95-05-13 10:44) .... ------ 001-(012)-072Rep
          ===>                             ....                ===>HALF
          *******|********** TOP OF FILE * .... ************************
          0001000*int main(int argc,char *p....   //main        //~5513R
          0002000|{                                                   

    Filename once opened is listed in FileNameInput screen, file is   
    reopened by selecting from the list.
                                                                      
   .See Chapter-(2) for detail description of each screen.
    For all screen,2nd line start with ===> is command input line.    ||~v124R~
    All command should be input on this line.                         ||~v124R~
    On first MENU screen entering "e filename" on this line, 2nd screen
    (FileNameInput screen) can be bypassed. "e" is abridge of EDIt cmd.||~v124R~
    Detail of command is on Chapter-(3) and (5).
    And moreover, on command prompt screen entering "xe filename"     
    skip also 1st MENU screen.
    Command line parameter is on Chapter-(7).

   .Edit screen is optionally divided to left and right half by char "|".||~v124R~
    Left half is Line-no column, right half is contents of file to edit.
    To edit file, use edit key on the area of right half.             
    e.g. End key truncate line at the cursor.                         ||~v128R~
    Edit key's detail is on Chapter-(1).
    On left line-no column, line command is avail to edit file line by line.
    e.g.) Enter dd on the line-no column of both first and last line of ||~v128R~
          the range to be deleted and enter execute key.              
    Detail description of line command on edit screen is Chapter-(4)-(A).

   .Directory name is used on EDIt command, following directory screen is
    appeared.
                                                                      
#ifdef UNX

   EDIT---|myhost|/tmp (95-09-17 16:54)....-----------------------Rep
   ===>                                ....                  ===>HALF
   ****|********** TOP OF LIST ********....***************************
   _001|: /                       x400           649,728 /  1,457,664
   _002||: tmp                    777-t    00-03-25  22:07 root/toot
   _003|||. DISPCHAR C            644--    00-12-17  13:19 bin/bin
   _004|||. DOSFF    MAK          755--    00-12-16  09:49 akir/users
   _005|||- FC10                  644--    00-12-15  23:10 eiko/users
   _006||||- IIIII                755--    00-12-25  23:07 youi/users
   _007|||||+ IU                  755--    00-12-25  23:06 mich/users
   _008|||||+ LL                  755--    00-12-25  23:06 oosa/users
   _009|||||. UFILET   C          755--    00-12-25  22:12 izum/users
   _010||||+ IU                   755--    00-12-25  23:06 ohts/users
   _011||||.@slinkf1              755--    00-12-29  11:49 ikeu/users

#else

   EDIT---|G:\src (95-09-17 16:54) ----....-----------------------Rep
   ===>                                ....                  ===>HALF 
   ****|********** TOP OF LIST ********....***************************
   _001|: G:\                     x800           649,728 /  1,457,664 
   _002||- src                    ----     94-11-17  22:07          0 
   _003|||. DISPCHAR C            ----     94-12-17  13:19        300 
   _004|||. DOSFF    MAK          ----     94-08-06  09:49        280 
   _005|||- FC10                  ----     95-09-15  23:10          0 
   _006||||- IIIII                ----     95-09-15  23:07          0 
   _007|||||+ IU                  ----     95-09-15  23:06          0 
   _008|||||+ LL                  ----     95-09-15  23:06          0 
   _009|||||. UFILET   C          A---     95-09-15  22:12      5,066 
   _010||||+ IU                   ----     95-09-15  23:06          0 
   _011||||. JKKJ                 A---     95-09-09  11:49          8 
   _012||||. JKKJ2                A---     95-08-29  21:51        219 
   _013||||+ LL                   ----     95-09-15  23:06          0 
   _014||||. UFILET   C           A---     95-09-15  22:12      5,066 
                                                                      
#endif

   .This sample is result of "-" line command to display subdirectory.
    Left most (position of _) is line cmd input column.
    This screen allow the delete/copy/move/print/rename/change attribute
    operation. See Chapter-(4)-(B) for line command on directory screen.||~v124R~
   .File operation is also avail by command input on the 2nd line.
    e.g. DEL x1.c.  See DOS command of Chapter-(5).                   ||~v128R~
   .Long filename hidden under the attribute column is uncovered or
    re-hidden by Shift+F11.
#if defined(W32) || defined(UNX)                                      ||~127AR~
    For symbolic link, which is identified by prefix "@",S+F11 display ||~v124R~
    target(actual) file name.
#endif

   .Entering 0 or 0.0 on MENU screen shows up following ColorSet screen.
                                                                      
          OPTION - 1 ---- COLOR ----------------------------....----Rep
          ===>                                                        
                                                                      
          *Palette number assign (0 to 15) ****************....********
             Part of screen  palette no.             sample           
                             FG / BG (curr.,default)                  
             Title-Line      __ / __ (15/ 1, 15/ 1 ) ------- MENU -------
             Panel-Frame     __ / __ ( 7/ 0,  7/ 0 ) ===>command line etc
             Browse-Lineno   __ / __ ( 2/ 0,  2/ 0 ) 0001000| Browse  scr
             Browse-File     __ / __ ( 7/ 0,  7/ 0 )                  
             Edit-Lineno     __ / __ ( 2/ 0,  2/ 0 ) 0001000| Edit    scr
             Edit-File       __ / __ (14/ 0, 14/ 0 )                  
             DirList-Linecmd __ / __ (14/ 0, 14/ 0 ) 003|||. DIRLIST  EXE
             DirList-Lineno  __ / __ ( 2/ 0,  2/ 0 )                  
             DirList-File    __ / __ ( 7/ 0,  7/ 0 )                  
             CmdOut-Lineno   __ / __ ( 2/ 0,  2/ 0 ) 19:55 ===>> dir  
             CmdOut-Result   __ / __ (15/ 8, 15/ 8 )  Volume in drive G h
                                                                      
          *Palette color (0 to 3 for R G B each). MAXCOLOR=16. *********
             Palette  -->  0   1   2   3   4   5   6   7   8.... 14  15
             color    -->                                             
             RGB value-->000 ___ ___ ___ ___ ___ ___ ___ ___....___ ___
             current  -->000 002 020 022 200 202 210 222 111....220 333
             standard -->000 002 020 022 200 202 210 222 111....331 333
                                                                      
   .Color/palette can be adjusted by this screen.
    Key assignment is set on the screen displayed by 0.2 on MENU,
    or specification on INI file.
    Note) Default change by version up has no effect when old version ||~v124R~
          ini file remains.
    To display key sequential function assignment, enter "0.3" on top menu.
    Other parameter may be set by INI file. See Chapter-(6).

   .Entering 6 on MENU screen shows following CommandResult screen.
                                                                      
          CMD----*::so1 (95-05-13 10:44)   .... ------ 001-(012)-072Rep
          ===>                             ....                ===>HALF
          *******|********** TOP OF FILE * .... ************************
          19:24 ===>> dir *.c                                         
                                                                      
           Volume in drive G has no label.                            
           The Volume Serial Number is E5EA:8815                      
           Directory of G:\SRC\XE                                     
                                                                      
   .This sample is result of dir *.c entered on command line.
    This screen make possible to edit result of any command avail on .
    command prompt screen.
    This screen has no line-no column as default, but NUM command make
    line-no column displayed and line command is usable same as on Edit
    screen.

********************
  (D) How to for   *
********************

#ifdef UNX
   .Mouse operation.
      Mouse is supported for WXE version and Linux version used on X env.
      See WXE-Mouse operation and Linux-Restriction.
#endif

   .Scroll function.
      Edit/Browse panel is scrolled both direction, directory list and
      filename input panel is scrolled vetitcal only.                 
      Scroll unit of filename input panel is fixed to page-size.
      Key usage to scroll screen is as following.

      Direction arrow key(Up/Down/Left/Right)
        Screen is not scrolled even when cursor reached to the edge of screen as default.
        If FREECSR mode is set OFF by OPT command("OPT freecsr off"),
        scroll occurs at the edge of screen by the unit of half of page size.
        If keyboard is in the status of ScrollLock on, scroll unit is 1 line/column.
      Shift+Up/Down
        Vertical scroll by one line.
      PgDn/PgUp
        Vertical scroll by the unit of value in the scroll-size field
        on the 2nd line. The field is over-writable and valid value is
        PAGE, HALF, CSR, MAX, numeric-value. CSR means scroll to move the line/column
        of the current cursor position to the edge of screen.
      F10/F11(this function key assignment is changeable)              ||~v124R~
        Horizontal scroll by the value of scroll-size field.
      Shift+PgDn/PgUp
        Jump to Top/Last page of the file.
      Others.
        Shift+Right/Left is to display End/Top column of the line.
        It may cause scrolling.
        Input on the right edge of file edit screen cause to scroll
        to the right by the unit of HALF.                             ||~v124R~

#if defined(WXE) || defined(LNX)
      Using mouse.
        Wheel of mouse scrolls vertically, Shift+wheel scrolls horizontaly||~v124R~
          and Ctrl+wheel jumps to the top/last page of file.
        wxe support tile wheel mouse to scroll horizontally by tilting
          the middle button.
#endif

   .Use Right Ctrl key as Enter(execute) key.
                                                                      ||~v124I~
      /Yr option on command line (xe /yr),                            
      or specify R-Ctl_ENTER = 1 on .INI file,                        
      or use "OPT RCTL ON" command.                                   ||~v124R~
      For GUI version(wxe,gxe), set R-Ctrl checkbox on Setup dialog.  ||~v124R~
      Command-line parameter is effective if specified,                ||~v124R~
      or else R-Ctrl is available if specified by OPT cmd or .INI file.||~v124R~
      If R-Ctrl usage is on, R-Ctrl is execute key and Enter is nextline key.||~v124R~
      Checkbox setting of GUI version is same effect as OPT cmd.     ||~v124R~
      GUI version's check box status is influenced by OPT cmd on console version,||~v124R~
      and vice versa.                                                 ||~v124R~
                                                                      ||~v124R~
      R-Ctl_NewLine=1 with R-ctl_ENTER="1" on ini file means R-Ctrl key is NextLine||~v124R~
      and Enter key is execute.                                       ||~v124R~
      Corresponding command line parameter is /Yrr. (-Yrr for linux version).||~v124I~
      To reset temporarily R-Ctl_NewLine option of ini file, specify /Nrr||~v124R~||~v125R~
      cmd line option.                                                ||~v124R~
                                                                      ||~v124R~
#ifdef LNX                                                            ||~v124R~
                                                                      ||~v124R~
      Linux console version cannot detect Right-Ctrl key press alone. ||~v124R~
      Followings are alternative way.                                 ||~v124R~
        Select a X11 key symbol usually not used,                      ||~127GR~
        for which the terminal emulator generate Escape string.       ||~127GI~
        Assign it to Right-Control by xmodmap.                        ||~127GI~
        Notify to xe the Escape string by --k option.                 ||~127GI~
      See /usr/include/X11/keysymdef.h for available keysym.          ||~127GI~
                                                                      ||~127GI~
      ex.1)                                                           ||~127GR~
          In may case on FC12, KP-Begin was selected.                 ||~127GI~
          "xmodmap -pke" command shows as following.                  ||~127GR~
              keycode  84 = KP_Begin KP_5 KP_Begin KP_5               ||~127GR~
              keycode 105 = Control_R NoSymbol Control_R              ||~127GR~
          Assign KP_Begin to Control_R by following command.          ||~127GR~
              xmodmap -e "keycode 105 = KP_Begin NoSymbol Control_R"  ||~127GR~
          Embedded xekbchk utility shows Esc string by KP-5 as ^[[E,  ||~127GR~
          setup keymap file as following.                             ||~127GR~
              keymap.rctl                                             ||~127GR~
                  ############################################################||~127GR~
                  [common]                                            ||~127GR~
                  [gnome-terminal]                                    ||~127GR~
                      KeyString:R-Ctl       =^[[E           #string by KP-5||~127GR~
                  ############################################################||~127GR~
          Start xe by "xe --kkeymap.rctl -yr"                         ||~127GR~
          (By "opt rctl on" command on xe, -yr option is not required.)||~127GR~
          Now Enter-key works as next-line, R-ctrl works as execute.  ||~127GR~
                                                                      ||~127GI~
          By "-yr -yrr" Enter-key works as execute, R-ctrl works as next-line.||~127GR~
          (Note)By next line only, R-ctrl works as Execute key,       ||~127GI~
                but "-Yr" option changes both key to New-line.        ||~127GI~
                  keycode 105 = Return                                ||~127GI~
                                                                      ||~127GR~
      ex.2)                                                           ||~127GR~
          If no proper key symbol for which terminal emulator generate Escape string is found,||~127GI~
          character code can be used.                                 ||~127GR~
          Because xe cannot distinguish two key which generate same strings,||~127GI~
          select unusual code.                                        ||~127GI~
                                                                      ||~127GR~
          For example, enter on gnome-terminal or konsole.                ||~v124R~||~127GR~
              xmodmap -e "keycode 109 = yacute"                             ||~v124R~||~127GR~
          Then R-ctl key generate string yacute(=0xfd).                   ||~v124R~||~127GR~
          (You can check keycode:109 is R-ctl by "xmodmap -pk" cmd)        ||~v124R~||~127ER~||~127GR~
          Codepoint of "yacute" is 0xfd and strings generated depends on the terminal emulator's||~v124R~||~127GR~
          "Character Encoding" setup.                                     ||~v124R~||~127GR~
          By UTF8 it is 0xc3bd.                                       ||~127GR~
          For ex.,if you set up as following,                             ||~v124R~||~127GR~
              xmodmap -e "keycode 109 = F36"                                ||~v124R~||~127GR~
          Ctrl+F12 and R-ctl is same effect for xe.                       ||~v124R~||~127GR~
          You can see the strings generated by tool xekbchk enclosed in this package.||~v124R~||~127GR~
          To notify the string you setup by xmodmap cmd, use keymap file. ||~v124R~||~127GR~
                                                                      ||~127GR~
              ##########################################################################||~v124R~||~127GR~
              [common]                                                      ||~v124R~||~127GR~
              KeyString:R-Ctl       =\x8f\xab\xf2   #string by yacute     ||~v124R~||~127GR~
              KeyString:R-Ctl       =\xc3\xbd       #UTF8 string for yacute||~v124R~||~127GR~
              KeyString:R-Ctl       =\xfd           #ISo-8859-1  for yacute||~v124R~||~127GR~
                                                                      ||~127GR~
          Specify this filename on ini file like as                       ||~v124R~||~127GR~
              LNX_Keymap  = /g/src/xe/key.rh9  ##(Linux Console Version Only) Keymap file to detect remapping by xmodmap cmd||~v124R~||~127GR~
          (INI cmd will output the prototype of ini file)                 ||~v124R~||~127GR~
          If put the file in work directory following notation is also ok.||~v124R~||~127GR~
              LNX_Keymap  = ::key.rh9        ##(Linux Console Version Only) Keymap file to detect remapping by xmodmap cmd||~v124R~||~127GR~
          Command line parameter, if you use, is like as "--k/g/src/xe/xekey.rh9".||~v124R~||~127GR~
                                                                      ||~v124R~
      Warning:                                                        ||~127GI~
      	xmomap setting has no effect for gxe(xe GUI version) because gxe detects key press||~v124R~||~127GR~
      	by keycode, but xmodmap setting effect is system wide and some application may be||~v124R~||~127GR~
      	influenced.                                                     ||~v124R~||~127GR~
                                                                      ||~v124R~
#endif                                                                ||~v124R~
                                                                      ||~v124R~
   .Command History                                                   ||~v129R~
                                                                      ||~v129R~
      -Command History is kept and saved only latest 40 entry at xe termination.||~v129R~
      -Use following FunctionKey to retrieve the command from history. ||~v129R~
       F12    :when repeated, retrieves commands backward from latest. ||~v129R~
               New command input reset position to the latest.        ||~v129R~
       S+F12  :retrieves forward to latest.                            ||~v129R~
       C+F12  :re-executes the latest command.                       ||~v129R~
       A+F12  :retrieves backward selecting only for the panel.       ||~v129R~
       S+A+F12:retrieves forward selecting only for the panel.        ||~v129R~
       S+C+F12:shows command history list panel. use following keys.  ||~v129R~
               s : set to the command input line after closed the command history panel.||~v129R~
               S : set to the command input line of the command history panel.||~v129R~
               t : set on the other panel if screen is split.         ||~v129R~
                   same as "S" if not split                           ||~v129R~
               x : execute the command after closed the command history panel.||~v129R~
               X : execute on the command history panel.              ||~v129R~
               y : execute on the other panel if screen is split.     ||~v129R~
                   same as "X" if not split.                          ||~v129R~
      -Mouse operation support.                                       ||~v129R~
        .R-button pop-ups context menu.                                ||~v129R~
        .Double click works as "x" cmd(execute the command after closed the command history panel).||~v129R~
        .Click on the selected line works as "s" cmd(set to the command input line after closed the command history panel).||~v129R~
                                                                      
   .Tab setting.
      Default tab span is 4. It is changed by TAB cmd.
      Tab span is set to each file, and able to set to the directory as default||~v124R~
      by PROfile cmd.                                                 ||~v124R~
      When insert mode TAB char(\x09) is inserted.
      Column gauge with tab stop id(char "*") allows to set tab stop  ||~v124R~
      position. It is effective when Rep mode. When insert mode TAB char||~v124R~
      is inserted.
      Refer to COL cmd to set gauge(ruler).                           ||~v124R~

   .Line Drawling/Special glyph input
      Use Graphic Char.(Alt+1,...or Ctrl+numerickey pad)
      CursorDownKey(Alt+BS) is convenient to draw vertical line.      ||~v124R~

      It depends on codepage which codepoint draws line.
      IBM PC De fact standard was CP437(DOS LatinUS) which assigns 0xb3 etc.||~v124R~
      In Japan, from the need to assign many codepoints for hankaku-katakana
      IBM Japanese DOS assigned 0x01 etc. to line drawing character.  ||~v124R~
      MS-Windows selected CP1252(WinLAtin1) which is superset of ISO-8859-1,
      and line drawing characters are shifted out by European language character.||~v124R~
      But as OEM codepage, you may be able to see line drawing character.
      xe use Japanese Shift-JIS under Japanese environment or else use CP437.||~v124R~||~v29tR~
#if defined(LNX) && !defined(XXE)	//Linux Console version
	  Linux Console version use ncurses ACS to draw lines.
      You have to select to draw line or display European complex character.||~v124R~
      OPT LINECH [on|off]
      If On, some codepoint of Japanese DOS or CP437 are used to draw lines.
      Set off if >0xa0 is effective codepoint on e.g. ISO8859-1.      ||~v124I~
#endif
      "Line Drawing Character" code assignment is changed by the file on work directory.
      It is used to input a set of phrase, usual special glyph code which is bother to type.
         Ini file naming convention is xelch__.ini[.locale]
           __ : version ID e.g. win, gcc, wxe, lnx, gtk.                  ||~v128R~
           locale: for Linux version (lnx and gtk) only.  e.g. "ja_JP" ||~v128R~||~v128R~
                   It is gotten by Linux "locale" command.
           The filename is displayed on the bottom line of =0.2 panel.
         Each line of the file specify output string of the Alt+n key combination
           It is comment line if started by "#".                      ||~v128R~
           Process end if encountered the line with "//" at top of the line.||~v128R~
           This function is at first intended to output line-drawing-character,
           but now it output any string up to 100 byte.
           n=xxxx[,yyyy]
             n: 1,2,...9,h,v :combination key with Alt key.           
                e.g. 1 is for Alt+"1" , h is for Alt+"-", v is for Alt+"^".||~v124R~||~v128R~
                To nullify previous setting, place the line without string such as "1=".||~v124R~
                Specify line comment if needed after "//" of each line.||~v128R~
             xxxx,yyyy:Specify string to be written by the key combination.
                       Start by 0x if use hex notation.
                       Enclose by quotation if the string contains delimiter like as space.
                       If both xxxx and yyyy is specified,xxxx is put ||~v29tR~
                       without Shift key, yyyy with Shift+ key combination.||~v124R~||~v29tR~
                       e.g. xxxx by Alt+1, yyyy by Alt+Shift+1.        ||~v128R~
                       For unicode, use u-xxx1[,xxxx2,...] format.   ||~v128R~||~v29tR~
                       If it is a string, specify it with the locale code (lch file is CPLC)||~v29tR~
#if defined(LNX)|| !defined(XXE))                                     ||~v124I~
					   Linux Console version can not detect shift key,||~v124I~
                       xxxx is used when OPT LINECH on, yyyy is used when OPT LINECH off.||~v124I~
#endif                                                                ||~v124I~
               Following are default settings to output UTF8 code with Alt + Shift + n for input to UTF8 files.||~v29tR~
                  ╚  ╩  ╝  ╠  ╬  ╣  ╔  ╦  ╗  ═  ║                     ||~v29tR~
               255a, 2569, 255d, 2560, 256c, 2563, 2554, 2566, 2557, 2550, 2551 respectively in Unicode.||~v29tR~
               In the Japanese environment, the following are set by default for CPLC file input.||~v29tR~
			   By EUCJP for Linux version.                            ||~v29tR~
                     0xa8b1  ┗   //1 :LLC low,left ,corner           ||~v29tR~
                     0xa8b5   ┻  //2 :LHS low,horz ,stopper          ||~v29tR~
                     0xa8b0   ┛  //3 :LRC low,right,corner           ||~v29tR~
                     0xa8b2   ┣  //4 :LVS low,vert ,stopper          ||~v29tR~
                     0xa8b6   ╋  //5 :CX  center                     ||~v29tR~
                     0xa8b4   ┫  //6 :RVS rig,vert ,stopper          ||~v29tR~
                     0xa8ae   ┏  //7 :ULC up ,left ,corner           ||~v29tR~
                     0xa8b3   ┳  //8 :UHS up ,horz ,stopper          ||~v29tR~
                     0xa8af   ┓  //9 :URC up ,right,corner           ||~v29tR~
                     0xa8ac   ━  //10:HL      horz ,line             ||~v29tR~
                     0xa8ad   ┃  //11:VL      vert ,line             ||~v29tR~
			   By ShiftJis for Windows version.                       ||~v29tR~
                     0x84af  ┗   //1 :LLC low,left ,corner           ||~v29tR~
                     0x84b3   ┻  //2 :LHS low,horz ,stopper          ||~v29tR~
                     0x84ae   ┛  //3 :LRC low,right,corner           ||~v29tR~
                     0x84b0   ┣  //4 :LVS low,vert ,stopper          ||~v29tR~
                     0x84b4   ╋  //5 :CX  center                     ||~v29tR~
                     0x84b2   ┫  //6 :RVS rig,vert ,stopper          ||~v29tR~
                     0x84ac   ┏  //7 :ULC up ,left ,corner           ||~v29tR~
                     0x84b1   ┳  //8 :UHS up ,horz ,stopper          ||~v29tR~
                     0x84ad   ┓  //9 :URC up ,right,corner           ||~v29tR~
                     0x84aa   ━  //10:HL      horz ,line             ||~v29tR~
                     0x84ab   ┃  //11:VL      vert ,line             ||~v29tR~
                 For wxe, it seems to look different depending on Ligature mode ON/OFF.||~v29tR~
                 For xe on Windows, line drawing characters seem to be different between Conhost (old command prompt) and Terminal (new command prompt).||~v29tR~
			   On Windows 11, Ctrl+Shift+Pad-n seems to be unable to detect Shift+ unless Numlock is turned off||~v29tR~

          Ini file example.

              1=0xa8b1
              2=0xa8b5
              3=0xa8b0
              4=0xa8b2
              5=0xa8b6
              6=0xa8b4
              7=0xa8ae
              8=0xa8b3
              9=0xa4af
              h=0xa8ac
              v=0xa8ad
             //jpn euc  dbcs
             2=u-102222,47; u2550  //input ucs4, A+2:u102222+u47, S+A+2: u2550||~v128R~
             1="This is my cliches.","Best Regards."
             1=84af 2=84b3 3=84ae 4=84b0 5=84b4 6=84b2 7=84ac 8=84b1 9=84ad h=84aa v=84ab  (jpn sjis dbcs)
             1=c0 2=c1 3=d9 4=c3 5=c5 6=b4 7=da 8=c2 9=bf h=c4 v=b3  (cp437)
             1=03 2=15 3=04 4=19 5=10 6=17 7=01 8=16 9=02 h=06 v=05  (JP DOS)||~v29tR~
             1=e29494 2=e294b4 3=e29498 4=e2949c 5=e294bc 6=e294a4 7=e2948c 8=e294ac 9=e29490 h=e29480 v=e29482 (utf)

             1=u-2514  h=u-2500 v=u-2502                              ||~v29tR~
             1=u-2514  h=u-2500 v=u-2502                              ||~v29tR~
             1=0x8b618b62,0x8b638b64                                  ||~v29tR~
             1=u-87fb,8abc,u-3041,3042,3043    //                     ||~v29tR~
                                                                      ||~v29tR~
   .Control Character Input                                           ||~v124R~
      0x00(Ctrl+2), 0x01-0x1f(Ctrl+A-Ctrl+-) is avail for input       
      control char(<0x20).These character input is optionally prohibitted||~v124R~
      by .INI specifiaction (Valid_Ctrl_char)             Chapter-(6) 
                                                                      ||~v30DI~
      (In the Linux Console, Ctrl+H(0x08) unconditionally becomes Backspace, so 0x08 cannot be entered.)||~v30DI~
                                                                      ||~v30DI~
      Those are displayed by special char if there is no corresponding
      char on the codepage. Use of special char is also set by .INI file||~v124R~
      (Disp_trans_tbl,Disp_trans_char)                   Chapter-(6)

      (Note)OPT command control effect of function assignment to
            Ctrl+Char key. When this option is ON(OPT CCFUNC ON)      ||~v124R~
            Some Ctrl+Char key dose not generate control char,
            but execute assigned function.
            Default is OPT CCFUNC OFF.
#if defined(WXE) || defined(XXE)
            If Accelerator CheckBox is checked, some CCFUNC key is    
            intercepted by Windows or Gnome.
            ex, Ctrl+a is InsertLine by CCFUNC ON if accelerator is off.
            If accelerator is on,Ctrl+a is popup SaveAs dialog.
            You can check on DropDownMenu which key is defined        ||~v124R~
            as accelerator. Or see xewxee.txt.                        ||~v124R~
            Shift+Ctrl+char combination reached to wxe/gxe and
            CCFUNC option is effective even if Accelerator CheckBox
            is checked.
#endif

      Original Hex code of char under current cursor is always displayed
      at column 5(3 for DBCS) of the top line.
      Input by hex digit is also avail if turned to HEX input mode(Ctrl+F11).
      At column 1 of the top line, "x" is displayed when HEX input mode.
      1st digit of byte is displayed following the "x".                ||~v124R~
      If the value is same as 1st byte of DBCS, use x key to transfer the
      byte.
      HEX code input is accepted only when cursor is in the area of
      file edit under HEX input mode.

      By HEX cmd(Ctrl+F10) file is displayed as char and hex 3 line mode,
      or by EH cmd file is displayed as dump format. Hex code is input on||~v124R~
      these mode as binary editor.
                                                                      ||~v124I~
                                                                      ||~v124I~
   .NLS support.                                                      ||~v124I~
                                                                      ||~v124I~
      Internal error message is by English only except on Japanese environment.||~v124I~
      This issue is about file encoding and screen display language.  ||~v124I~
                                                                      ||~v124I~
      See "Japanese DBCS, Code conversion" about Japanese.             ||~v124I~
                                                                      ||~v125R~
      For Linux console version,                                      ||~v124I~
      set "OPT LINECH OFF" not to use ACS(LineDrawingCharacter) if your language||~v124I~
      has SBCS codepoint 0x80 to 0xff.                                ||~v124I~
                                                                      ||~v125R~
      (Note)On Windows, it is better not to use UTF8 encoded filename that may not be properly||~v125R~
            translate to UTF-16 Windows internal codepage             ||~v125R~
            because Windows assumes input is locale code.             ||~v125R~
                                                                      ||~v125R~
      Windows:                                                        ||~v125R~
        To use different codepage from system default,                ||~v125R~
        you have to set DOS prompt codepage for console version.      ||~v125R~
        For ex, enter "chcp 28591" or "chcp 1252" for Germany.        ||~v125R~
        Both 28591 and 1252 is ISO-8859-1 and 1252 has codepoint of 0x80-0x9f.||~v125R~
        For GUI version, use /C cmdline parameter like as "xe /c1252".||~v125R~
        Then select CharSet from "Other" combobox, ANSI for ISO-8859-1.||~v125R~
        Beforehand, you have to add the language through Windows-Constrol-panel.||~v125R~
        And change language selection through Language-bar.           ||~v125R~
      Linux:                                                          ||~v125R~
        You have to set codepage of terminal emulator such as gnome-terminal for console version.||~v125R~
        You have set LANG environment matched to terminal emulator encoding||~v125R~
        about UTF8 or not.                                            ||~v125R~
        Consideration for keyboard layout is also required.           ||~v125R~
        Use SCIM setting up or "setxkbmap" cmd like as "setxkbmap de" for Germany.||~v125R~
        SCIM operation on FC5 is System->Management->Preference->SCIM.||~v125R~
                                                                      ||~v125R~
        For gxe/wxe, selected font may supports ligature.                 ||~v125R~||~v125R~
        Ligature means to combine two glyph to one glyph for some combination such as "fi", "ff".||~v125R~
        If this chkbox is Off, keep mono-spacing.                     ||~v125R~
        If On, cursor position may be unmatched with display position,   ||~v125R~
        gxe/wxe accepts ligature to utf8 and locale code file,        ||~v125R~
        xe displays the character at the cursor position byte offset.  ||~v125R~||~v125R~
        "OPT LIGATURE" cmd or LIG cmd(A+";" key) is available.                  ||~v125R~||~v129R~
          Ligature is applied to UTF8 file only for console version.  ||~v125R~||~v125R~
          Ligature is not applied for the file opened as binary file. ||~v125R~
        I heard that in some language glyphs split are un-readable without ligature.||~v125R~
        Try with combination with Unicode combining character option   ||~v125R~
        which is set by "OPT UNICOMB" cmd or CMB cmd(A+":" key).               ||~v125R~||~v129R~
                                                                      ||~v125R~
      A+u key("UTF SWKB" as cmd) switches treatment of kbd input between UTF8 and locale code.||~v125R~
      See "UTF8 support" for detail.                                  ||~v125R~
                                                                      ||~v125R~
      -----------------------------------------------------------------------||~v124I~
                                                                      ||~v125R~
      Followings are how to display Simplified Chinese (GB18030) in Japanese environment.||~v30CR~
        GB18030 4-digit DBCS and EUC 3-byte supplementary Kanji characters are displayed with tab padding characters.||~v30CI~
        The display of padding characters can be toggled on/off with "TAB" command.||~v30CI~
        If IME is not available, you can enter characters in Hex input mode (toggle with C+F11).||~v30CI~
                                                                      ||~v30CI~
      For Windows                                                     ||~v30CI~
        For Console version (xe), set the command prompt properties, e.g. chcp 54936.||~v30CI~
        For the GUI version (wxe), specify code page parameter, wxe /c54936.||~v30CI~
        In Setup dialog, set CharSet to ANSI or select GB2312 from Others.||~v30CI~
        GB18030 is extension of GB2312, but 4-byte DBCS is also supported in GB2312.||~v30CI~
        You may also need to change the FontStyle.                    ||~v30CI~
        For other than GB18030, see "Windows CodePage & Font" below and the command line parameter "-C."||~v30CI~
                                                                      ||~v30CI~
      For Linux,                                                      ||~v30CI~
        For Console version (xe), specify -Czh_CN.GB18030 command line parameter.||~v30CI~
        If you get the error "setlocale failed," run "locale-gen" once.||~v30CI~
          sudo locale-gen "zh_CN.GB18030"                             ||~v30CI~
        In terminal emulator settings, select a font that can display kanji.||~v30CI~
                                                                      ||~v30CI~
        For the GUI version (gxe), specify the -Czh_CN.GB18030.       ||~v30CI~
        If you get also the error "setlocale failed," run "locale-gen".||~v30CI~
        And also, select a font that can display kanji from the Setup menu by "Font Change" button.||~v30CI~
                                                                      ||~v30CI~
      Windows CodePage & Font                                         ||~v30CI~
                                                                      ||~v30CI~
           Windows:wingdi.h defines as following                      ||~v30CI~
                                                                      ||~v30CI~
                #define ANSI_CHARSET            0                     ||~v30CI~
                #define DEFAULT_CHARSET         1                     ||~v30CI~
                #define SYMBOL_CHARSET          2                     ||~v30CI~
                #define SHIFTJIS_CHARSET        128                   ||~v30CI~
                #define HANGEUL_CHARSET         129                   ||~v30CI~
                #define HANGUL_CHARSET          129                   ||~v30CI~
                #define GB2312_CHARSET          134                   ||~v30CI~
                #define CHINESEBIG5_CHARSET     136                   ||~v30CI~
                #define OEM_CHARSET             255                   ||~v30CI~
                                                                      ||~v30CI~
                #define JOHAB_CHARSET           130                   ||~v30CI~
                #define HEBREW_CHARSET          177                   ||~v30CI~
                #define ARABIC_CHARSET          178                   ||~v30CI~
                #define GREEK_CHARSET           161                   ||~v30CI~
                #define TURKISH_CHARSET         162                   ||~v30CI~
                #define VIETNAMESE_CHARSET      163                   ||~v30CI~
                #define THAI_CHARSET            222                   ||~v30CI~
                #define EASTEUROPE_CHARSET      238                   ||~v30CI~
                #define RUSSIAN_CHARSET         204                   ||~v30CI~
                                                                      ||~v30CI~
                #define MAC_CHARSET             77                    ||~v30CI~
                #define BALTIC_CHARSET          186                   ||~v30CI~
                                                                      ||~v124I~
      command-line parameter.                                         ||~v30CR~
        -C  : change locale charset.                                  ||~v124I~||~126DR~
                                                                      ||~v124I~
              Windows : Codepage.    e.g. -c949  -cGerman_Germany.1252 ||~v125R~||~v128R~
                Use xcv cmd("xcv -List) for available codepage. ||~v124I~||~126DR~
                For xe console version, font is determined by "command prompt"'s||~v124I~
                charset property. You may see strange glyph.          ||~v124I~
                For wxe, you have to set also charset on setup dialog.||~v124I~
                                                                      ||~v124I~
              Linux  :Charset        e.g. -cGBK, -ciso88591 -czh_CN.GB18030||~v126R~||~v128R~
                Available charset is displayed by xcv cmd or "iconv --list".||~v124I~
                                                                      ||~v125R~
                Default Charset is get from LANG environment if the Charset is not UTF8.||~v125R~
                e.g. iso88591 when LANG is "de_DE.iso88591".           ||~v125R~||~v128R~
                If the Charset is UTF8 charset is selected as following.||~v125R~
                (selects available charset from the left-hand)         ||~v126R~
                    Locale     Charset                                ||~v125R~
                    ------     -------                                ||~v125R~
                     zh_CN     GB18030,GBK,GB2312                     ||~v126R~
                     ko_KR     UHC,EUC_KR                             ||~v126R~
                     ja_JP     eucjp                                  ||~v125R~
                On fullscreen console, "ISO88591" if iconv supported or "C"||~v126R~
                is selected.                                          ||~v125R~
                                                                      ||~v126R~
                Axe uses ICU converter as following.                  ||~v126R~
    				zh_CN :"GB18030","GBK","GB2312"                   ||~v126R~
					ko_KR :"korean","EUC-KR"                          ||~v126R~
                    ja_JP :"EUC-JP"                                   ||~v126R~
                    zh_TW :"Big5-HKSCS","Big5"                        ||~v126R~
                    else  :"ISO-8859-1"                               ||~v126R~
                                                                      ||~v125R~
                For other locale, get by nl_langinfo after setlocale by localecode only like as "setlocale(LC_ALL,"de_DE")".||~v125R~
                If setlocale failed(chk it by "locale -a" cmd), iso88591 is selected.||~v125R~
                                                                      ||~v125R~
                For gxe, input from GTK is UTF8, gxe translate it to this charset||~v124I~
                and translate back to UTF8 when display to screen.    ||~v124I~
                For xe console version, input from terminal emulator is translated||~v124I~
                to this charset. If -c is not specified default charset is selected||~v124I~
                using LANG environment.(If LANG is UTF8,determins proper charset).||~v124I~||~v125R~
                And translate to ucs to display using ncursesw.      ||~v124I~||~v125R~
                Ex) 0xa4a2 is pronounced "a" by Japanese, and the same glyph is 0xaaa2 on EUC-KR.||~v124I~
                    When enter "a" key then Enter key on IME window,  ||~v124I~
                                           Input from IME      glyph  ||~v124I~
                   ----------------------  ----------------    ------ ||~v124I~
                   EUC-JP.UTF8 + -cEUC-KR  aaa2( by KR)     "yy"      ||~v124I~
                   EUC-JP      + -cEUC-KR  a4a2( by JP)     "xx"      ||~v124I~
                     yy(Japanese Hiragana) and xx(Hangul) is not displayed by ASCII screen.||~v124I~
                     xe console version may display space by the reason of terminal emulator font selection)||~v124I~
                                                                      ||~v129R~
        -Nm : Accept UTF8 byte sequence itself.                       ||~v129R~
		      When /Nm is specified, for UTF8 code input to CPLC(non UTF8) file||~v129R~
              set UTF8 code itself if Alt+u ON(indecated by =u=> on command input line),||~v129R~
              set translated locale code if Alt+u OFF(===>) or "?" if translation error occured.||~v129R~
                                                                      ||~v124I~

   .Japanese DBCS, Code conversion.

#ifdef UNX

    #ifdef AIX
      SJIS(Shift-JIS). Browse and DBCS input are both avail.
    #endif

    #ifdef LNX
                                                                      ||~v124I~
      EUC-JP. Browse is avail under kon(Kanji ON console) if on the CONSOLE.||~v124R~
        DBCS input is not avail on kon, avail on X-terminal emulator   ||~v124R~
        such as gnome-terminal, kterm.                                 ||~v124I~
                                                                      ||~v124I~
      Hankaku-Katakana.                                               ||~v124I~
        SS2(0x8e)+xx(e.g. 0x8eb1 pronounced "a") is 1 column width on display.||~v124I~
        RH9 binary treats those as unprintable.                      ||~v124I~||~v125R~
        From FC5 binary, those are displayed by 2 column(gxe) or Hankaku-Katakana+TABPAD(xe).||~v124I~||~v125R~
        TABPAD fills  spaces by tab(0x09) and controlled to display by "TAB on /off" cmd||~v125R~
                                                                      ||~v124I~
      3 byte Kanji(SS3(0x8f)+xxxx) is displayed as 2 column Kanji+TABPAD,||~v125R~
                                                                      ||~v124I~
    #endif

#else
      SJIS(MS932) is applied.                                         ||~v124R~
#endif

      CV command is for code conversion between SJIS,EUC,IBM-EBCDIC,
      unicode,UTF-8.
      Katakana and English lowercase letter is often mis-converted    ||~v124R~
      when EBCDIC to SJIS conversion. Those file may be re-converted  ||~v124R~
      each other.
      HEX notation to char conversion is also supported.
      To display communication log by EBCDIC, for example,              ||~v124R~
      display all dump lines only by cmd "xx;f 0 1 all",               ||~v124R~
      then use "cv x2c ebc 5-80:100 mult nx".                         ||~v124R~
      Hex-notation of col 5-80 is converted and inserted into col 100.||~v30CR~
      XCV cmd enclosed is external tool to file encoding translation. ||~v124I~
                                                                      ||~v124R~
                                                                      ||~v124R~
   .EBCDIC file support.

      -CPEB option is used for EDIt/SAVe/REPlace/CREate/APPend/CUT/END/COPy/MOVe/PASte cmd.
         e.g. "e file1 cpeb:IBM1047"
       The code page of the cpeb option is stored in the profile, so you only need to specify it at first time.
       To reset the profile record, specify null, like "CPEB=".

       When opening a directory list, the CPEB option is the default for files in the folder.
       If you open with other options (CPLC/CPU8/CPAS), the profile will be overwritten.

       The embedded XCV utility is a tool similar to Linux's iconv that converts EBCDIC<-->Unicode<-->locale code.
       See the next "EBCDIC configuration file" about cfg file(default value is ::xeebc.map).
       You can use multiple converters by specifying "Converter 1" (ICU) or "Converter 2" (CodePage on Windows, iconv on Linux) in the cfg file.

      -EDIt/BROwse displays/edits directly without converting to locale code.
       Displays codes in Unicode on screen, and in HEX display displays the EBCDIC code itself.
       The line feed code is 0x15 unless /Mp(0x0d0a) /Mu(0x0a) is specified.
       It is intended for editing mainframe EBCDIC files downloaded without conversion,
       or for editing/displaying EBCDIC files mounted by NFS with the no conversion option.
       It can also be used if you have access to Linux on IBM Z via sshfs.
       (About sshfs, see "Remote file access".)                       ||~v30BR~
       The header line displays "=E", and in binary mode, "=e".
       DBCS is not taken into account when opening in binary mode (EB command).
       If there are too many control characters and it is determined to be binary file,
       open with the ET command or with /Mt option.

      -If you experience broken-gryph when using -wxe, try changing the charset in the Setup dialog to something other than Default.

      -Line feed character.
       PC files are 0x0a or 0x0d0a, but the EBCDIC line feed code is 0x15.
       The following commands support line feed code and record mode LRECL specification.
       However, SAVe can only be available in the case of specifying a file name.
           EDIt/BROwse, END, CREate/REPlace, SAVe, COPy/MOVe.
       When writing to the file by END/SAVe after "CV b2m", change the line feed character with /Mu, etc.
       If you simply END/SAVe, the EBDCIC line feed character x15 will be written as is.

       The Fxx in the COPy/MOVe command specifies the LRECL of the source file to copy.
       The record mode ON/OFF and LRECL are saved in the profile,
       but the line feed character must be specified each time, except for the default value.
           /M{t|p|u|m|e|r} /Fnn[-mm]
             e:EBCDIC-NL(0x15), r;RecordMode, nn:LRECL
       e.g.
           e ebcf1 CPEB                        : EBCDIC file TextMode(EOL-ID=0x15)
           e ebcf1 CPEB  /mp                   : EBCDIC file TextMode(EOL-ID:0x0d0a)
           e ebcf1 CPEB  /mr /F72              : EBCDIC file RecordMode(LRECL=72)
                                                 Default LRECL is 80.
           end /mu                             : Change EOL-ID to 0x0a.
           end /mr /f80                        : Save as LRECL=80 RecordMode file(no EOL-ID).
           s ebcf1 CPEB /mr /F80               : translate (From PC file) to EBCDIC file.
                                                 Output is LRECL=80 RecordMode file.
           rep u8f1 nx CPU8 /mp                : translate (from RecordMode EBCDIC file) to UTF8 file.
                                                 EOL-ID:0x0d0a is appended to each line.

       The EBCDIC line feed code is 0x15, but the converter may map it as follows:
       EBC-NL(0x15)<-->ASCII-0x85, EBC-LF(0x25)<-->ASCII-LF(0x0a).
       When opened the file by text mode, lines are split at 0x15 and 0x15 is not displayed.
       (If you also want 0x0d15 to be a line feed, specify the /Mz option.)
       When text mode, line feed chars are not displayed, so they are not subject to conversion by the CV command.
       However, if you open the file in binary mode and run "CV b2m", those will be converted as 0x15->0x85 (0x0d will remain unchanged).
       If 0x85 is not printable as a locale code, it will be converted to '?'.
       If you are not using an external converter ("CONVERTER 0"), you can use two correction options to convert 0x15-->0x0a
          cv b2m crlf / cv m2b crlf
       Or, in the cfg file, specify
          MAP_E2A  0x15: 0x0a   # EBCDIC 0x15(NL) -> ASCII 0a(LF)
       In the case of M2B conversion, if opened in text mode, 0x0d0a/0x0a will not be converted,
       and 0x15 will be output with the "e" of the output option /Mpe,
       but in binary mode, the CRLF option and MAP_E2A are effective, and 0x0a-->0x15 conversion is enabled,
       but 0x0d0a will become 0x0d15.
       With the -m2b option of the xcv command, -Mseteol can be specified to convert 0d0a/0a->0x15.
       Without Mseteol, 0d0a/0a will be ignored and 0x15 will not be output.
       If you want both 0x0d15 and 0x15 to be line feede characters in B2M, specify the crlfz option.

         :====>See below: (e.g.01) LineFeed character

      -If you do not use a configuration file, the internal conversion table supports only one of the following, and B2B conversion is not possible.
       Specify this with a command line parameter.
       If you specify "CONVERTER 0" in the cfg file, you can also set the same option by SJIS_OPT.

        xe /EBC[=]{KANA_EXT | ENG_EXT | DefaultMap | DefaultMapEuro | cfg=filepath}
                KANA_EXT(=CP930=CP290+CP300)  : Japanese extension, Katakana
                ENG_EXT(=CP939=CP1027+CP300)  : Japanese extension, alphanumeric lowercase
                DefaultMap(=CP037)            : Latin-1, No Support of Kanji
                DefaultMapEuro(=CP037+Euro)   : ebc-9f:u-20ac
                cfg=filepath : The default value is specified in the ini file.

       The default values are as follows:
         (Windows)
           In a Japanese environment, the code page is displayed on the screen as CP930 and JIS83.
           In other environments, the code page is CP037 and No DBCS (SO/SI) consideration.
         (Linux)
           In a Japanese environment, the code page is displayed on the screen as EUC-JP (=CP930) and JIS83.
           In other environments, the code page is CP037 and No DBCS (SO/SI) consideration.

         :====>See below: (e.g.02) Example of internal conversion table

      -COPy/MOVe/PASte commands convert from the specified code page to the destination code page,
       if you don't want conversion, specify the "B" (Binary mode) suffix on the line command
       (see Line Commands below)

         :====>See below: (e.g.03) Copy/Move/Paste example

      -SAVe/REPlace/CREate/APPend/CUT/END convert to the specified code page, then written to the file.
       END command does not output a file if there are no changes, so specifying CPEB is meaningless.
       COPy/MOVe/PASte commands with a specified file name use the profile record of that file.
       If a record exists, there is no need to specify CPxx.
       However, if you change the CONVERTER parameter in cfg from ICU to something other than ICU
       or vice versa over session close, the naming will be different, which may result in the code page not being found.
       If you get an "invalid code page" error, open the file with "CPEB=" (null specification) and reset the code page once.

       Even if there is a conversion error in the output command, it will be output to the end of the file, but the profile will not be updated.
       Conversion error characters will be replaced with alternative characters.
       Alternative characters depend on the code page.
       If no DBCS alternative characters are defined, the following will be used in this order:
       u-fffd, u-ff1f (DBCS "?"), u-3000 (DBCS space).

         :====>See below: (e.g.04) Example of Save/Replace/Cretae/Append/Cut/End

      -The line commands "C"/"M" will also convert if the source and destination code pages are different.
       If you do not want to convert, specify the "B" (Binary mode) suffix.
       Binary mode does not support UTF8 files for either the source or destination.
       When converting locale file to EBCDIC, spaces caused by TAB (0x09) expansion will be deleted.

        Line Commands: Destination Line Format
          {A|B}[B][C][n][,b][.s]
            A : After, B: Before, B : Binary Mode, C : Copy with CID
            n : repeat, b : bandle, s : skip

       The line command "=" will also convert the source and destination code pages if they are different.
       (When comparing with UTF8 and locale code files, EBCDIC-->UTF8 is compared after locale conversion)
       If you want to compare in binary mode, specify the "B" (binary mode) suffix.

        =[B][n][,b][.s]
        ==[B]

         :====>See below: (e.g.05) Example of line command

      -The CV command can use B2M/M2B for CPLC (Locale code) files.
       When "CONVERTER 0" is specified in the cfg file, Japanese conversion options such as JIS83 can be specified.
       When using ICU/iconv, various EBCDIC code pages can be used
       by specifying the CPEB:ebcidc-codepage parameter in B2M/M2B.
       When performing B2M for an EBCDIC file opened, omitting CPEB will use the code page of that file.
       If you want to change the code page of an EBCDIC file, use the B2B option.
       However, because the code page attribute of the file is not been changed, the screen display shows the codes in the original code page.
       To switch to a new code page, specify the SETCP option.

         :====>See below: (e.g.06) CV command example

      -EBC command.

       You can check the current cfg file settings by "EBC".
       You can also change the code page with "EBC SETCP".
       With SETCP the original code is not changed. It is displayed according to the specified code page.
       Therefore, if there are no other changes, the file will not be rewritten by a save operation.
       The UNDo function will revert the code page set with the SETCP option of the EBC/CV command.
       The code page set with the SETCP option is recorded in the profile when you save a file.
       "EBC SETCP=" will return to the default code page.

         :====>See below: (e.g.07) Example of EBC command

      -xcv Utility
       xcv is a command line tool included in the xe package that runs in the command prompt/Terminal emulator.
       In B2M/M2B, "M" is the current local code page, and "B" is specified with /MF:mapfile or /CPEB:cp.
       If you want to change the EBCDIC code page, use B2B.
       The /Mseteol option enables you to add a line feed code when converting from PC to EBCDIC.
           /mASCEOL: set line feed code of the EBCDIC file to Windows:0x0d0a, Linux 0x0a. Default:0x15.
           /mSETEOL: Adds an line feed code to each output line. For x2B and record mode B2x.
       The fixed length LRECL is specified with the /F option.
           /F[nn][N]:EBCDIC file is fixed length. nn:LRECL(default=80).
                     LRECL of B2x (input) or x2B (output) for EBCDIC file.
                     N: The last 8 digits of the line are the line number field. Adjust the line length by inserting SO/SI.
                        "N" is only valid for m2b.

         :====>See below: (e.g.08) Example of xcv command

      -About DBCS (Double-Byte Character Set)

       In EBCDIC, double-byte characters are enclosed by SO(0x0e) and SI(0x0f). For example, 0e-40-40-0f is a DBCS space.
       SO/SI encloses the whole string, not necessarily one character at a time.
       In non-EBCDIC code pages, except UTF8, DBCS is a combination of a specific leading byte (>=0x80) and the next character.
       It can be 3 bytes (EUC-SS3), or 4 bytes (GB18030). For example, the DBCS space is 81-40 in MS932.
       Therefore, line length changes in EBCDIC<-->locale code page conversion.
       DBCS enclosing char(SO:0x0e and SI:0x0f) are displayed as "?".
       SO/SI is inserted when typing DBCS.
       When "Cut and Paste" from an EBC file, only when it is enclosed in SO/SI (even bytes only) will it be evaluated as DBCS.
       For example, when pasting into a UTF8/locale code file, the code will be converted, but if the SO/SI are not brought, it will be converted as SBCS.
       After splitting a line at a DBCS position with the Split line command,
       joining the lines with the Join line command can be evaluated as DBCS, but the Tflow command inserts a space
       between the lines, so it will not go back to the original.
       Invalid DBCS-EBCDIC is displayed on the screen as ":;". Check the hex code in vertical HEX display.

       Specify the SO/SI handling in the command options.
       The default value is specified in the cfg file. The Copy line command is lacking parameters of SO/SI option, so the cfg file is applied.
         e.g. COPy ebcfile -sd  : When copying an EBCDIC file into the PC file screen, SO/SI will be deleted and the line length will change.
              COPy ebcfile -sr  : When copying an EBCDIC file into the PC file screen, SO/SI will be replaced with spaces, and the line length will not change. Default value.
              COPy pcfile  -si  : When copying a PC file into an EBCDIC file, SO/SI will be inserted, and the line length will change. Default value.
              COPy pcfile  -sr  : When copying a PC file into an EBCDIC file, SO/SI will be inserted,
                                  but if there are spaces before SO or after SI, that spaces will be deleted.
       In cfg, set the default value.
           SOSI_A2E     REP       # REP(="-sr") or INS ("=-si")
           SOSI_E2A     DEL       # DEL(="-sd") or REP ("=-sr")

      -0x09 is not treated as a tab. (0x05 is also not treated as a tab)
       When in character insert mode, the Tab key does not insert 0x09 but jumps to next tab position like in character replace mode.

      -In HEX input mode (Ctrl+F11), DBCS is not taken into account and each byte is sent to the screen.

      -Find/Change command.
       Search and replace in EBCDIC code regardless of kbd's UTF8 mode.
       DBCS is not taken into account when opened in binary mode.
       Option: -g (Grep) and search-word: P'.' are not supported.

      -TFLow cmd
       When lines are concatenated by TFLow command, a space is inserted at the concatenation point,
       so that there is an odd number of chars, then usually the SO on the previous line and the SI on the next line will not reconstruct DBCS.

      -The "#" line command (which executes what is on that line as a native command) is not supported.

      -About fixed length records.

       For the XCV command, if the /F[xx][N] command line option is specified (the CV command does not have the /F option),
       when converting from PC to EBCDIC, long sentences are split and short sentences are padded with spaces up to the LRECL.
       Also, newline characters are not written.
       The N option in /F[xx][N] specifies that the last 8 chars of the line are the line number.
       When a line is extended by inserting SO/SI during DBCS conversion, if there are spaces before the line number field
       it will delete that spaces to keep the LRECL. If it is not possible
       the line will be split, but if N is specified the line number field will be truncated.
       When converting from EBCDIC to PC, fixed-length files are read in binary mode (ignoring line feed codes),
       converted, and output with line feed codes added.

*********************************************************************************************
*(example)
*********************************************************************************************

!!!!!(e.g.01) Line feed character !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

          (1) Source data

             e x1ebc0d15 /mb (binary mode display)

ASCII Off.\src\xe\htmlwk\x1ebc0d15 =e(24-11-18 10:59)--------- 0000(0000)004b=Rep
===>                                                                    ===>HALF
****|*e*t**l*** TOP OF FILE ******* cp=CP930-Internal ***************************
0000|00150025▪a0d15▪|
    |ffff1ffff26f6ff01|
    |001550025520515d5|
****|*e*t**l*** END OF FILE ******* cp=CP930-Internal ***************************

             e x1ebc0d15 (text mode display, newline at 0x15)

EDIT---|G:\src\xe\htmlwk\x1ebc0d15 =E(24-11-18 10:59)--------- 001-(   1)-076=Rep
===>                                                                    ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CP930-Internal ***************************
0001|0015↵
    |ffff↵
    |0015↵
0002|0025▪a0d15▪↵
    |ffff26f6ff0↵
    |0025520515d↵
****|*E*e**l*** END OF FILE ******* cp=CP930-Internal ***************************

          (2) Binary mode "CV b2m"

             e x1ebc0d15 /mb ; cv b2m
               No crlf option. ebc:0x15-->ascii:3f, 0x25-->0x0a, 0x0d-->0x0d

1 line convertede\htmlwk\x1ebc0d15 =e(24-11-18 10:59)--------- 0000(0000)004b=Rep
===>                                                                    ===>HALF
****|*e*t**l*** TOP OF FILE ******* cp=CP930-Internal ***************************
0000*▪/c▪|
    *33333333306363303|
    *0015f0025a10415df|
****|*e*t**l*** END OF FILE ******* cp=CP930-Internal ***************************

             e x1ebc0d15 /mb ; cv b2m crlf
               With crlf option. 0x15-->0x0a

1 line convertede\htmlwk\x1ebc0d15 =e(24-11-18 10:59)--------- 0000(0000)004b=Ins
===>                                                                    ===>HALF
****|*e*t**l*** TOP OF FILE ******* cp=CP930-Internal ***************************
0000*▪/c▪|
    *33330333306363300|
    *0015a0025a10415da|
****|*e*t**l*** END OF FILE ******* cp=CP930-Internal ***************************

          (3) Text file output after b2m, no newline code specified

             e x1ebc0d15 ; cv b2m ; s x1ebc0d15.b2m.save ; e x1ebc0d15.b2m.save cplc /mb
                The line feed code between the first and second lines is 0x0a, which is by 0x25-->0x0a/CP930 conversion

===>                                                                       ===>HALF
****|*b*t**l*** TOP OF FILE *******Lig:OFF *****************************************
0000|0015▪0025▪a0d15▪▪|
    |33331333306363301|
    |001550025a10415d5|
****|*b*t**l*** END OF FILE *******Lig:OFF *****************************************

             e x1ebc0d15 ; cv b2m ; s x1ebc0d15.b2m.save ; e x1ebc0d15.b2m.save cplc
               In text mode, line feed is 0x15, and when saving, EBCDIC line feed code 0x15 is written.

 :UNIX filesrc\xe\htmlwk\x1ebc0d15.b2m.save =L(24-11-18 15:41)--- 001-(   1)-079=Rep
===>                                                                       ===>HALF
****|*L*t**l*** TOP OF FILE *******Lig:OFF *****************************************
0001|0015▪0025↵
    |333313333↵
    |001550025↵
0002|a0d15▪▪↵
    |6363301↵
    |10415d5↵
****|*L*t**l*** END OF FILE *******Lig:OFF *****************************************

          (4) Text file output after b2m, with line feed code specified.

             e x1ebc0d15 ; cv b2m ; s x1ebc0d15.b2m.save.mu /mu ; e x1ebc0d15.b2m.save.mu cplc /mb
               When reading a file, the newline character is 0x15. When saving, /mu will replace 0x15 with 0x0a (Linux newline character).

ASCII Off.\src\xe\htmlwk\x1ebc0d15.b2m.save.mu =b(24-11-18 16:43)- 0000(0000)006b
===>                                                                       ===>HALF
****|*b*t**l*** TOP OF FILE *******Lig:OFF *****************************************
0000|0015▪0025▪a0d15▪▪|
    |33330333306363300|
    |0015a0025a10415da|
****|*b*t**l*** END OF FILE *******Lig:OFF *****************************************

             e x1ebc0d15 ; cv b2m ; s x1ebc0d15.b2m.save.mu /mu ; e x1ebc0d15.b2m.save.mu cplc

Vertical Hex display(YZ)\x1ebc0d15.b2m.save.mu =L(24-11-18 15:44) 001-(   1)-079=Ins
===>                                                                       ===>HALF
****|*L*t**l*** TOP OF FILE *******Lig:OFF *****************************************
0001|0015↵
    |3333↵
    |0015↵
0002|0025↵
    |3333↵
    |0025↵
0003|a0d15↵
    |63633↵
    |10415↵
****|*L*t**l*** END OF FILE *******Lig:OFF *****************************************

             e x1ebc0d15 ; cv b2m ; s x1ebc0d15.b2m.save.mp /mp ; e x1ebc0d15.b2m.save.mp cplc /mb
               /mp outputs the Windows newline character 0x0d0a. EBC:0d15 becomes ASCII:0d0d0a.

EDIT---|G:\src\xe\htmlwk\x1ebc0d15.b2m.save.mp =b(24-11-18 20:15) 0000(0000)006b=Rep
===>                                                                       ===>HALF
****|*b*t**l*** TOP OF FILE *******Lig:OFF *****************************************
0000|0015▪▪0025▪a0d15▪▪▪|
    |3333003333063633000|
    |0015da0025a10415dda|
****|*b*t**l*** END OF FILE *******Lig:OFF *****************************************

             e x1ebc0d15 ; cv b2m ; s x1ebc0d15.b2m.save.mp /mp ; e x1ebc0d15.b2m.save.mp cplc

 :Mixed EndOfLine ID,will be unified to PC form at save-18 20:22) 001-(   1)-108=Ins
===>                                                                       ===>HALF
****|*L*t**l*** TOP OF FILE *******Lig:OFF *****************************************
0001|0015↵
    |3333↵
    |0015↵
0002|0025↵
    |3333↵
    |0025↵
0003|a0d15▪↵
    |636330↵
    |10415d↵
****|*L*t**l*** END OF FILE *******Lig:OFF *****************************************

          (5) Output after binary mode b2m with crlf. (Line feed code cannot be specified for binary files)

             e x1ebc0d15 /mb ; cv b2m crlf ; s x1ebc0d15.mb.b2mcrlf.save ; e x1ebc0d15.mb.b2mcrlf.save cplc /mb

ASCII Off.\src\xe\htmlwk\x1ebc0d15.mb.b2mcrlf.save =b(24-11-18 15:48) 0000(0000)006b=Ins
===>                                                                      ===>HALF
****|*b*t**l*** TOP OF FILE *******Lig:OFF ****************************************
0000|0015▪0025▪a0d15▪▪|
    |33330333306363300|
    |0015a0025a10415da|
****|*b*t**l*** END OF FILE *******Lig:OFF ****************************************

             e x1ebc0d15 /mb ; cv b2m crlf ; s x1ebc0d15.mb.b2mcrlf.save ; e x1ebc0d15.mb.b2mcrlf.save cplc

 :Mixed EndOfLine ID,will be unified to PC form at save4-11-18 15:48) 001-(   1)-108=Ins
===>                                                                      ===>HALF
****|*L*t**l*** TOP OF FILE *******Lig:OFF ****************************************
0001|0015↵
    |3333↵
    |0015↵
0002|0025↵
    |3333↵
    |0025↵
0003|a0d15↵
    |63633↵
    |10415↵
****|*L*t**l*** END OF FILE *******Lig:OFF ****************************************

          (6) /Mz option (both 0x15 and 0x0d15 as line feed)

             e x1ebc0d15 /mze

EDIT---|G:\src\xe\htmlwk\x1ebc0d15 =E(24-11-18 10:59)----- 001-(   1)-072=Rep
===>                                                                ===>HALF
****|*E*eu*l*** TOP OF FILE ******* cp=CP930-Internal ***********************
0001|0015↵
    |ffff↵
    |0015↵
0002|0025▪a0d15↵
    |ffff26f6ff↵
    |0025520515↵
****|*E*eu*l*** END OF FILE ******* cp=CP930-Internal ***********************

             e x1ebc0d15 /mze ; s x1ebc0d15.me ; e x1ebc0d15.me /mb ; hex

EDIT---|G:\src\xe\htmlwk\x1ebc0d15.me =e(24-11-20 13:11)-- 0000(0000)0047
===>                                                                ===>HALF
****|*e*t**l*** TOP OF FILE ******* cp=CP930-Internal ***********************
0000|00150025▪a0d15|
    |ffff1ffff26f6ff1|
    |0015500255205155|
****|*e*t**l*** END OF FILE ******* cp=CP930-Internal ***********************


!!!!!(e.g.02) Example of internal conversion table !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

          (1) Source data
              Binary mode display. 0x15 is NL (New Line).

"e x1ebc2 /m24 cplc"

EDIT---|G:\src\xe\htmlwk\x1ebc2 =b(24-10 0000(0000)0035=Rep
===>                                              ===>HALF
****|*b*t**l*** TOP OF FILE *******Lig:OFF ****************
0000|銹  ~`abcdefghijklmno▪|
    |eff6fc766666666666666661|
    |760066e0123456789abcdef5|
0018|鋩  ~▪≠ ヤ▪▪㊧炎旧克▪▪|
    |eff6fc788888888888888881|
    |780086e0123456789abcdef5|
0030|酖 ﾃﾆ~ﾀﾁﾂﾃﾄﾅﾆﾇﾈﾉﾊﾋﾌﾍﾎﾏ▪|
    |ecf6cc7cccccccccccccccc1|
    |730036e0123456789abcdef5|
0048|酥 ﾆﾆ~     涇▪▪▪▪▪|
    |ecf6cc7ffffffffffffffff1|
    |760066e0123456789abcdef5|
0060|ﾑﾁﾗﾁﾕﾅ簀`翡鈬z▪EbEfH▪▪|
    |dcdcdcec6ecee7046464e0|
    |1171552503573ae525687f|
****|*b*t**l*** END OF FILE *******Lig:OFF ****************

          (2) CO930 (KANA_EXT)
              0x81 is Japanese half-width katakana.
              Japanese DBCS is surrounded by SO(0x0e) and SI(0x0f).

"xe x1ebc2 cpeb -ebcKana_ext"

EDIT---|G:\src\xe\htmlwk\x1ebc2 =E(24-10 001-(   1)-054=Rep
===>                                              ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CP930-Internal *****
0001|X60-6F=-/abcdefgh▪,%_>?↵
    |eff6fc76666666666666666↵
    |760066e0123456789abcdef↵
0002|X80-8F=]ｱｲｳｴｵｶｷｸｹｺqｻｼｽｾ↵
    |eff6fc78888888888888888↵
    |780086e0123456789abcdef↵
0003|XC0-CF={ABCDEFGHI▪▪▪▪▪▪↵
    |ecf6cc7cccccccccccccccc↵
    |730036e0123456789abcdef↵
0004|XF0-FF=0123456789▪▪▪▪▪▪↵
    |ecf6cc7ffffffffffffffff↵
    |760066e0123456789abcdef↵
0005|JAPANESE-TEXT:?日本語?↵
    |dcdcdcec6ecee7046464e0↵
    |1171552503573ae525687f↵
****|*E*e**l*** END OF FILE ******* cp=CP930-Internal *****


          (3) CO939 (ENG_EXT)
              0x81 is a lowercase English letter

"xe x1ebc2 cpeb -ebcEng_ext"

EDIT---|G:\src\xe\htmlwk\x1ebc2 =E(24-10 001-(   1)-054=Rep
===>                                              ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CP939-Internal *****
0001|X60-6F=-/ｲｳｴｵｶｷｸｹ▪,%_>?↵
    |eff6fc76666666666666666↵
    |760066e0123456789abcdef↵
0002|X80-8F=▪abcdefghiﾃﾄﾅﾆﾇﾈ↵
    |eff6fc78888888888888888↵
    |780086e0123456789abcdef↵
0003|XC0-CF={ABCDEFGHI▪▪▪▪▪▪↵
    |ecf6cc7cccccccccccccccc↵
    |730036e0123456789abcdef↵
0004|XF0-FF=0123456789▪▪▪▪▪▪↵
    |ecf6cc7ffffffffffffffff↵
    |760066e0123456789abcdef↵
0005|JAPANESE-TEXT:?日本語?↵
    |dcdcdcec6ecee7046464e0↵
    |1171552503573ae525687f↵
****|*E*e**l*** END OF FILE ******* cp=CP939-Internal *****


          (4) CP037 (DefaultMap)
              SBCS is Latin-1(IOS8859-1), Japanese DBCS is not displayed

"xe x1ebc2 cpeb -ebcDefaultMap"

EDIT---|G:\src\xe\htmlwk\x1ebc2 =E(24-10 001-(   1)-054=Rep
===>                                              ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CP037-Internal *****
0001|X60-6F=-/ÂÄÀÁÃÅÇÑ¦,%_>?↵
    |eff6fc76666666666666666↵
    |760066e0123456789abcdef↵
0002|X80-8F=Øabcdefghi«»ðýþ▪↵
    |eff6fc78888888888888888↵
    |780086e0123456789abcdef↵
0003|XC0-CF={ABCDEFGHI­ôöòóõ↵
    |ecf6cc7cccccccccccccccc↵
    |730036e0123456789abcdef↵
0004|XF0-FF=0123456789³ÛÜÙÚ▪↵
    |ecf6cc7ffffffffffffffff↵
    |760066e0123456789abcdef↵
0005|JAPANESE-TEXT:▪áÂáÃçX▪↵
    |dcdcdcec6ecee7046464e0↵
    |1171552503573ae525687f↵
****|*E*e**l*** END OF FILE ******* cp=CP037-Internal *****

!!!!!(e.g.03) Copy/Move/Paste example !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

      (Example 1) No converter specified

           (1) Source file

EDIT---|x:\x11 =L(24-10-11 15:01)-------------------- 001-(   1)-067=Rep
===>                                                           ===>HALF
col |....+....1....+....2....+....3....+....4....+....5....+....6....+..
****|*L*t**l*** TOP OF FILE *******Lig:OFF *****************************
0001|abcd↵
    |6666↵
    |1234↵
****|*L*t**l*** END OF FILE *******Lig:OFF *****************************

EDIT---|G:\src\xe\htmlwk\x256.c1c2 =l(24-10-11 14:58) 001-(   1)-067
===>                                                           ===>HALF
****|*l*t**l*** TOP OF FILE *******Lig:OFF *****************************
0001|ﾁﾂ↵
    |cc↵
    |12↵
****|*l*t**l*** END OF FILE *******Lig:OFF *****************************

           (2) No CPEB option.

EDIT---*x:\x11 =L(24-10-11 15:01)-------------------- 001-(   1)-067=Rep
===>copy x256.c1c2                                             ===>HALF
col |....+....1....+....2....+....3....+....4....+....5....+....6....+..
****|*L*t**l*** TOP OF FILE *******Lig:OFF *****************************
0001|abcd↵
    |6666↵
    |1234↵
0002*ﾁﾂ↵
    *cc↵
    *12↵
****|*L*t**l*** END OF FILE *******Lig:OFF *****************************

           (3) with CPEB option.
                (If CPEB is recorded in the profile, it is not necessary to specify CPEB.)

EDIT---*x:\x11 =L(24-10-11 15:01)-------------------- 001-(  20)-067=Rep
===>copy x256.c1c2  cpeb                                       ===>HALF
col |....+....1....+....2....+....3....+....4....+....5....+....6....+..
****|*L*t**l*** TOP OF FILE *******Lig:OFF *****************************
0001|abcd↵
    |6666↵
    |1234↵
0002*ﾁﾂ↵
    *cc↵
    *12↵
0003*AB↵
    *44↵
    *12↵
****|*L*t**l*** END OF FILE *******Lig:OFF *****************************

      (Example 2) Converter specified (ICU or iconv in the cfg file)

           (1) Source file

               copy from ("e x20cp930 cpeb:cp930")

EDIT---|G:\src\xe\htmlwk\x20cp930 =E(24-10-11 15:33)- 001-(   1)-067=Rep
===>                                                           ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CFG:cp930(ICU) ******************
0001|abcd 1234↵
    |66664ffff↵
    |234501234↵
****|*E*e**l*** END OF FILE ******* cp=CFG:cp930(ICU) ******************

               Copy to ("e x20cp930 cpeb:cp939)

EDIT---|G:\src\xe\htmlwk\x20cp939 =E(NEW FILE)------- 001-(   1)-067
===>                                                           ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=cp939(ICU) **********************
****|*E*e**l*** END OF FILE ******* cp=cp939(ICU) **********************

           (2) copy (without CPEB option)
               Converted from the source code page (CP930) to the destination code page.

EDIT---|G:\src\xe\htmlwk\x20cp939 =E(NEW FILE)------- 001-(   1)-067
===>copy x20cp930                                              ===>HALF
a   |*E*e**l*** TOP OF FILE ******* cp=cp939(ICU) **********************
****|*E*e**l*** END OF FILE ******* cp=cp939(ICU) **********************

EDIT---*G:\src\xe\htmlwk\x20cp939 =E(NEW FILE)------- 001-(  13)-067
===>                                                           ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=cp939(ICU) **********************
0001*abcd 1234↵
    *88884ffff↵
    *123401234↵
****|*E*e**l*** END OF FILE ******* cp=cp939(ICU) **********************

           (3) copy (with CPEB option)
               The code page of the CPEB option is the source code page and is converted to the destination code page.
               In this case, since it is the same as the destination code page, no conversion is performed
               and it is interpreted using the destination code page.
               The display is different from the source.

EDIT---*G:\src\xe\htmlwk\x20cp939 =E(NEW FILE)------- 001-(  25)-067
===>copy x20cp930 cpeb:cp939                                   ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=cp939(ICU) **********************
a   *abcd 1234↵
    *88884ffff↵
    *123401234↵
****|*E*e**l*** END OF FILE ******* cp=cp939(ICU) **********************

EDIT---*G:\src\xe\htmlwk\x20cp939 =E(NEW FILE)------- 001-(  21)-067
===>                                                           ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=cp939(ICU) **********************
0001*abcd 1234↵
    *88884ffff↵
    *123401234↵
0002*ｲｳｴｵ 1234↵
    *66664ffff↵
    *234501234↵
****|*E*e**l*** END OF FILE ******* cp=cp939(ICU) **********************

!!!!!(e.g.04) Save/Replace/Cretae/Append/Cut/End の例 !!!!!!!!!!!!!!!

           (1) Source file

EDIT---|G:\src\xe\htmlwk\x20 =l(24-10-11 15:20)------ 001-(   1)-067=Rep
===>                                                           ===>HALF
****|*l*t**l*** TOP OF FILE *******Lig:OFF *****************************
0001|ABCD 1234↵
    |444423333↵
    |123401234↵
****|*l*t**l*** END OF FILE *******Lig:OFF *****************************

           (2) SAVe command with CPEB option.

EDIT---|G:\src\xe\htmlwk\x20 =l(24-10-11 15:20)------ 001-(   1)-067=Rep
===>s x20ebc cpeb /me                                          ===>HALF
****|*l*t**l*** TOP OF FILE *******Lig:OFF *****************************
0001|ABCD 1234↵
    |444423333↵
    |123401234↵
****|*l*t**l*** END OF FILE *******Lig:OFF *****************************

           (3) Results

EDIT---|G:\src\xe\htmlwk\x20ebc =E(24-10-11 15:26)--- 001-(   1)-067=Rep
===>                                                           ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CP930-Internal ******************
0001|ABCD 1234↵
    |cccc4ffff↵
    |123401234↵
****|*E*e**l*** END OF FILE ******* cp=CP930-Internal ******************

!!!!!(e.g.05) Example of line command !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

      (Example 1) Copy EBCDIC-->CPU8

===>                                                  ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CP037-Internal *********
c   |µ~stuvwxyz¡¿ÐÝÞ®^£¥·©▪▪¼½¾[]¯▪▪▪{ABCDEFGHI­ôöòóõ↵
    |aaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbcccccccccccccccc↵
    |0123456789abcdef0123456789abcdef0123456789abcdef↵
****|*E*e**l*** END OF FILE ******* cp=CP037-Internal *********

EDIT---|G:\src\xe\htmlwk\x1ebc1u8 =U(NEW FIL 001-(   1)-058
===>                                                  ===>HALF
a   |*U*t**l*** TOP OF FILE *******Lig:OFF, Unicomb: COMB *****
****|*U*t**l*** END OF FILE *******Lig:OFF, Unicomb: COMB *****

EDIT---|G:\src\xe\htmlwk\x1ebc1 =E(24-10-11  001-(   1)-058=Rep
===>                                                  ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CP037-Internal *********
0001|µ~stuvwxyz¡¿ÐÝÞ®^£¥·©▪▪¼½¾[]¯▪▪▪{ABCDEFGHI­ôöòóõ↵
    |aaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbcccccccccccccccc↵
    |0123456789abcdef0123456789abcdef0123456789abcdef↵
****|*E*e**l*** END OF FILE ******* cp=CP037-Internal *********

             Result EBCDIC:CP0387-->UTF8.

EDIT---*G:\src\xe\htmlwk\x1ebc1u8 =U(NEW FIL 001-(   1)-058
===>                                                  ===>HALF
****|*U*t**l*** TOP OF FILE *******Lig:OFF, Unicomb: COMB *****
0001*µ~stuvwxyz¡¿ÐÝÞ®^£¥·©§¶¼½¾[]¯¨´×{ABCDEFGHI­ôöòóõ↵
    *0b7777777770a0b0d0d0d0a50a0a0b0a0a0b0b0b0b550a0a0b0d744444
    *05e3456789a010f000d0e0ee0305070907060c0d0ebd0f080407b12345
****|*U*t**l*** END OF FILE *******Lig:OFF, Unicomb: COMB *****

      (例2) Copy CPLC-->CPEB

EDIT---|G:\src\xe\htmlwk\x1ebc1 =E(24-10-11  001-(   1)-058=Ins
===>                                                  ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CP037-Internal *********
a   |µ~stuvwxyz¡¿ÐÝÞ®^£¥·©▪▪¼½¾[]¯▪▪▪{ABCDEFGHI­ôöòóõ↵
    |aaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbcccccccccccccccc↵
    |0123456789abcdef0123456789abcdef0123456789abcdef↵
****|*E*e**l*** END OF FILE ******* cp=CP037-Internal *********

EDIT---*G:\src\xe\htmlwk\x1lc =l(NEW FILE)-- 001-(   1)-058
===>                                                  ===>HALF
****|*l*t**l*** TOP OF FILE *******Lig:OFF ********************
c   *abcd 1234↵
    *666623333↵
    *123401234↵
****|*l*t**l*** END OF FILE *******Lig:OFF ********************

             Result ASCII-->CPEB:CP037

EDIT---*G:\src\xe\htmlwk\x1ebc1 =E(24-10-11  001-(   1)-058=Ins
===>                                                  ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CP037-Internal *********
0001|µ~stuvwxyz¡¿ÐÝÞ®^£¥·©▪▪¼½¾[]¯▪▪▪{ABCDEFGHI­ôöòóõ↵
    |aaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbcccccccccccccccc↵
    |0123456789abcdef0123456789abcdef0123456789abcdef↵
0002*abcd 1234↵
    *88884ffff↵
    *123401234↵
****|*E*e**l*** END OF FILE ******* cp=CP037-Internal *********

EDIT---*G:\src\xe\htmlwk\x1lc =l(NEW FILE)-- 001-(   1)-058
===>                                                  ===>HALF
****|*l*t**l*** TOP OF FILE *******Lig:OFF ********************
0001*abcd 1234↵
    *666623333↵
    *123401234↵
****|*l*t**l*** END OF FILE *******Lig:OFF ********************

      (Example 3) Copy without conversion.

EDIT---|G:\src\xe\htmlwk\x1ebc3 =E(24-10-11  001-(   1)-058=Ins
===>                                                  ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CP037-Internal *********
c   |\▪STUVWXYZ²ÔÖÒÓÕ0123456789³ÛÜÙÚ▪↵
    |eeeeeeeeeeeeeeeeffffffffffffffff↵
    |0123456789abcdef0123456789abcdef↵
****|*E*e**l*** END OF FILE ******* cp=CP037-Internal *********

EDIT---|G:\src\xe\htmlwk\x1lc3 =l(NEW FILE)- 001-(   1)-058
===>                                                  ===>HALF
ab  |*l*t**l*** TOP OF FILE *******Lig:OFF ********************
****|*l*t**l*** END OF FILE *******Lig:OFF ********************

             As a result, the hex code will not change, and the display will follow the CP options of the destination.

EDIT---|G:\src\xe\htmlwk\x1ebc3 =E(24-10-11  001-(   1)-058=Ins
===>                                                  ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CP037-Internal *********
0001|\▪STUVWXYZ²ÔÖÒÓÕ0123456789³ÛÜÙÚ▪↵
    |eeeeeeeeeeeeeeeeffffffffffffffff↵
    |0123456789abcdef0123456789abcdef↵
****|*E*e**l*** END OF FILE ******* cp=CP037-Internal *********

EDIT---*G:\src\xe\htmlwk\x1lc3 =l(NEW FILE)- 001-(   1)-058
===>                                                  ===>HALF
****|*l*t**l*** TOP OF FILE *******Lig:OFF ********************
0001*珮粤蒟跚韜▪▪▪▪▪▪     涇▪▪▪▪↵
    *eeeeeeeeeeeeeeeeffffffffffffffff↵
    *0123456789abcdef0123456789abcdef↵
****|*l*t**l*** END OF FILE *******Lig:OFF ********************

!!!!!(e.g.06) Example of CV command !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

      (Example 1) m2b

EDIT---|G:\src\xe\htmlwk\x1ebc3cplc =L(24-10 001-(   1)-058=Ins
===>cv m2b                                            ===>HALF
****|*L*t**l*** TOP OF FILE *******Lig:OFF ********************
0001|$@ STUVWXYZ 0123456789↵
    |2425555555523333333333↵
    |4003456789a00123456789↵
****|*L*t**l*** END OF FILE *******Lig:OFF ********************

             The results are displayed in CPLC.

1 line convertede\htmlwk\x1ebc3cplc =L(24-10 001-(   6)-058=Ins
===>                                                  ===>HALF
****|*L*t**l*** TOP OF FILE *******Lig:OFF ********************
0001*烟@粤蒟跚韜@     ↵
    *e74eeeeeeee4ffffffffff↵
    *0c02345678900123456789↵
****|*L*t**l*** END OF FILE *******Lig:OFF ********************

             Reopen with CPEB

EDIT---*G:\src\xe\htmlwk\x1ebc3cplc =L(24-10 001-(   1)-058=Ins
===>end;e x1ebc3cplc cpeb                             ===>HALF
****|*L*t**l*** TOP OF FILE *******Lig:OFF ********************
0001*烟@粤蒟跚韜@     ↵
    *e74eeeeeeee4ffffffffff↵
    *0c02345678900123456789↵
****|*L*t**l*** END OF FILE *******Lig:OFF ********************

             The results are displayed in CPEB.

EDIT---|G:\src\xe\htmlwk\x1ebc3cplc =E(24-10 001-(   1)-058=Ins
===>                                                  ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CP930-Internal *********
0001|$@ STUVWXYZ 0123456789↵
    |e74eeeeeeee4ffffffffff↵
    |0c02345678900123456789↵
****|*E*e**l*** END OF FILE ******* cp=CP930-Internal *********

      (Example 2) b2b

EDIT---|G:\src\xe\htmlwk\x1ebc4 =E(24-10-11  001-(   1)-058=Rep
===>cv b2b cpeb:cp939                                 ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CFG:cp930(ICU) *********
0001|$ STUVWXYZ abcd 01234↵
    |e4eeeeeeee466664fffff↵
    |002345678902345001234↵
****|*E*e**l*** END OF FILE ******* cp=CFG:cp930(ICU) *********

             The results are displayed by C930.

1 line converted (cp930-->cp939),,Use \"SETCP\" option or Use
"EBC SETCP=xxx" cmd to change current codepage(disply by it)
****|*E*e**l*** TOP OF FILE ******* cp=CFG:cp930(ICU) *********
0001*¥ STUVWXYZ ｱｲｳｴ 01234↵
    *54eeeeeeee488884fffff↵
    *b02345678901234001234↵
****|*E*e**l*** END OF FILE ******* cp=CFG:cp930(ICU) *********

      (Example 3) b2b setcp

EDIT---|G:\src\xe\htmlwk\x1ebc4 =E(24-10-11  001-(   1)-058=Rep
===>cv b2b cpeb:cp939 setcp                           ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CFG:cp930(ICU) *********
0001|$ STUVWXYZ abcd 01234↵
    |e4eeeeeeee466664fffff↵
    |002345678902345001234↵
****|*E*e**l*** END OF FILE ******* cp=CFG:cp930(ICU) *********

             The results are displayed by CP939.

1 line converted (cp930-->cp939) with SETCP  001-(   1)-058=Rep
===>                                                  ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=cp939(ICU) *************
0001*$ STUVWXYZ abcd 01234↵
    *54eeeeeeee488884fffff↵
    *b02345678901234001234↵
****|*E*e**l*** END OF FILE ******* cp=cp939(ICU) *************

!!!!!(e.g.07) Example of EBC command !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

      (Example 1)

EDIT---|G:\src\xe\htmlwk\x1ebc4 =E(24-10-11 22:06 001-(   1)-063=Rep
===>ebc                                                    ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CFG:cp930(ICU) **************
0001|$ STUVWXYZ abcd 01234↵
    |e4eeeeeeee466664fffff↵
    |002345678902345001234↵
****|*E*e**l*** END OF FILE ******* cp=CFG:cp930(ICU) **************

=====>

EBC SETCP=codepage; (cfg info:CONVERTER=1,default converter=cp930)ep
===>                                                       ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CFG:cp930(ICU) **************
0001|$ STUVWXYZ abcd 01234↵
    |e4eeeeeeee466664fffff↵
    |002345678902345001234↵
****|*E*e**l*** END OF FILE ******* cp=CFG:cp930(ICU) **************

      (Example 2) (037 is an alias for IBM037)

EDIT---|G:\src\xe\htmlwk\x1ebc4 =E(24-10-11 22:06 001-(   1)-063=Rep
===>ebc setcp=037                                          ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CFG:cp930(ICU) **************
0001|$ STUVWXYZ abcd 01234↵
    |e4eeeeeeee466664fffff↵
    |002345678902345001234↵
****|*E*e**l*** END OF FILE ******* cp=CFG:cp930(ICU) **************

=====>

EBCDIC codepage was changed to 037 from cp9322:06 001-(   1)-063=Rep
===>                                                       ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=037(ICU) ********************
0001|\ STUVWXYZ ÂÄÀÁ 01234↵
    |e4eeeeeeee466664fffff↵
    |002345678902345001234↵
****|*E*e**l*** END OF FILE ******* cp=037(ICU) ********************

!!!!!(e.g.08) xcv command example !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

      (Example 1) m2b. Running on =6 screen.

EDIT---|G:\src\xe\htmlwk\x14 =l(24-10-12 10:30)----------------------------------------------------- 001-(   1)-114=Rep
===>                                                                                                          ===>HALF
****|*l*t**l*** TOP OF FILE *******Lig:OFF ****************************************************************************
0001|ABCD 1234 abcd ↵
    |444423333266662↵
    |123401234012340↵
****|*l*t**l*** END OF FILE *******Lig:OFF ****************************************************************************


CMD----|::SO22 =l(24-10-12 10:40)------------------------------------------------------------------- 001-(   1)-114
===>xcv -cm2b -cpeb:037 -mseteol -mf:c:\users\user1\xe_wd\xeebc.cv1 x14 x14ebc                                ===>HALF
****|*l*t**l*** TOP OF FILE *******Lig:OFF ****************************************************************************
0001|↵
****|*l*t**l*** END OF FILE *******Lig:OFF ****************************************************************************

=====>

CMD----*::SO22 =l(24-10-12 10:40)------------------------------------------------------------------- 001-(   1)-114
===>                                                                                                          ===>HALF
0002*10:40:12 ===>> xcv -cm2b -cpeb:037 -mseteol -mf:c:\users\user1\xe_wd\xeebc.cv1 x14 x14ebc↵
0003*xcv:V1.23(6): ICU .dll-suffix="",api-suffix="" ICU_DATA="c:\Windows\Globalization\ICU".↵
0004*↵
0005*xcv:V1.23(6): === m2b Process completed===↵
****|*l*t**l*** END OF FILE *******Lig:OFF ****************************************************************************

EDIT---|G:\src\xe\htmlwk\x14ebc =E(24-10-12 10:40)-------------------------------------------------- 001-(   1)-114=Rep
===>                                                                                                          ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=037(ICU) ***********************************************************************
0001|ABCD 1234 abcd ↵
    |cccc4ffff488884↵
    |123401234012340↵
****|*E*e**l*** END OF FILE ******* cp=037(ICU) ***********************************************************************

      (例2) b2b.

EDIT---|G:\src\xe\htmlwk\x14ebc =E(24-10-12 10:40)-------------------------------------------------- 001-(  21)-114=Ins
===>                                                                                                          ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=037(ICU) ***********************************************************************
0001|ABCD 1234 abcd ↵
    |cccc4ffff488884↵
    |123401234012340↵
****|*E*e**l*** END OF FILE ******* cp=037(ICU) ***********************************************************************

CMD----*::SO22 =l(24-10-12 10:40)------------------------------------------------------------------- 001-(  38)-114
===>xcv -cb2b -f:037 -t:930 x14ebc  x1ebc930 -mf:c:\users\sakstyle\xe_wd\xeebc.cv1                            ===>HALF
****|*l*t**l*** TOP OF FILE *******Lig:OFF ****************************************************************************
****|*l*t**l*** END OF FILE *******Lig:OFF ****************************************************************************

=====>

xcv -cb2b -f:037 -t:930 x14ebc  x1ebc930 -mf:c:\users\sakstyle\xe_wd\xeebc.cv1 が終了,rc=0(x00)----- 001-(   1)-114
===>                                                                                                          ===>HALF
0001*10:56:49 ===>> xcv -cb2b -f:037 -t:930 x14ebc  x1ebc930 -mf:c:\users\sakstyle\xe_wd\xeebc.cv1↵
0002*xcv:V1.23(6): ICU .dll-suffix="",api-suffix="" ICU_DATA="c:\Windows\Globalization\ICU".↵
0003*↵
0004*xcv:V1.23(6): === b2b Process completed===↵
****|*l*t**l*** END OF FILE *******Lig:OFF ****************************************************************************

Vertical Hex display(YZ)\x1ebc930 =E(24-10-12 10:56)------------------------------------------------ 001-(   1)-114
===>                                                                                                          ===>HALF
****|*E*e**l*** TOP OF FILE ******* cp=CFG:cp930(ICU) *****************************************************************
0001|ABCD 1234 abcd ↵
    |cccc4ffff466664↵
    |123401234023450↵
****|*E*e**l*** END OF FILE ******* cp=CFG:cp930(ICU) *****************************************************************

   .EBCDIC conversion configuration file


      In addition to the specific internal conversion table,
      EBCDIC file support allows the use of external converters such as ICU/WindowsApi/iconv.
      When using the internal conversion table, you can also specify a specific EBCDIC conversion
      without a cfg file by specifying a command line parameter.

      The location of the cfg file is specified in the ini file. The default is ::xeebc.map

            EBCDIC_cfg   ="" #("::xeebc.map")# EBCDIC translation config filename

      In the XCV utility, this is specified by the /MF:mapfile parameter.

      ****************************************************************************

      There are two types of conversion patterns.
          (a).Japanese conversion using internal tables.
              In addition to specifying command line parameters, you can specify conversion options.
              Options such as SJIS_OPT, SOSI_A2E, and SOSI_E2A are provided.
          (b).Conversion using ICU or system converter(Windows API, Linux iconv).
              You can use the uconv command for ICU and the iconv command for iconv.
              List of converters can be obtained with "uconv -l" (ICU) or "iconv -l".
              In Windows 11, ICU seems to be installed by default, but uconv.exe is not available.
              If uconv is not available, try "xcv -list -ICU".
              The Windows code page and ICU code page can be listed by "xcv -List".
              Note:Windows code page 20290 is a Japanese Katakana extension,
              but Japanese Kanji does not seem to be supported. If DBCS is required, use ICU.

      Optional parameter.

        #####################################################################################

           CONVERTER      : Converter selection
                            0 : Convert using internal tables only.
                                MAP_E2A, MAP_A2E allows Character-by-character adjustment.
                            1 : Convert using ICU (requires ICU to be installed)
                            2 : Convert using iconv API on Linux, WideCharToMultibyte/MultiByteToWideChar on Windows.
                              e.g.
                                 CONVERTER   1           # use ICU converter

        ## The following ICU_DLL_SUFFIX and ICU_API_SUFFIX are required for "CONVERTER 1",
           but xe checks the system directory, so you probably don't need to specify them.
           If an error occurs, please specify them.
           (On Windows, check c:\Windows\System32, and on Linux, use "uconv --version" to check.)

           ICU_DLL_SUFFIX : Suffix for ".dll" or ".so" library name.
                              e.g.
                                 ICU_DLL_SUFFIX   44
           ICU_API_SUFFIX : Suffix for the ICU API name.
                              e.g.
                                 ICU_DLL_SUFFIX  _44

        ## The next ICU_DATA does not need to be specified if c:\Windows\Globalization\ICU is OK on Windows 11.
           It is not necessary to specify it on Linux if "uconv --version" is OK.
           If the converter Open fails, search libicudata.so.xx then specify its directory.
           When you have created your own ".cnv" file and placed it somewhere other than the default folder,
           you will need to specify its location.
           You can also set it in the environment variable ICU_DATA.

           ICU_DATA
                              e.g. (Linux)   ICU_DATA /system/usr/icu:/data/data/yourcnvs
                                   (Windows) ICU_DATA w:\icu\icu562\icu\bin;w:\icu\icu481\icu\bin

           DBCS_CHARSET   : Specifies the converter that supports DBCS in UCS<-->EBCDIC conversion.
                            If this is not specified, all conversions will be SBCS mode.
                            When "CONVERTER 0" is used, specify it in SJIS_OPT instead of DBCS_CHARSET.

                              e.g.
                                 DBCS_CHARSET cp939     #Japanese
                                 DBCS_CHARSET cp933     #Korean Mixed EBCDIC
                                 DBCS_CHARSET cp935     #Chinese(Simplified) Mixed EBCDIC
                                 DBCS_CHARSET cp937     #Chinese(Traditional)Mixed EBCDIC

           SBCS_CHARSET   : Specify the UCS2<-->EBCDIC SBCS converter.
                            Not required if DBCS_CHARSET is specified.
                            If "DefaultMap" is specified, the internal table equivalent to ISO8859-1<-->EBCDIC of CP037 is used.
                            "DefaultMapEuro" is equivalent to CP1140, and converts ebc-9f to u-20ac (Euro Sign) instead of u00a4 (Currency Sign).
                            If "CONVERTER 0" is specified, only DEFAULTMAP/DeafultMapEuro can be specified, and DBCS_CHARSET cannot be specified.
                            If "CONVERTER 1" is specified, there are converters that define 9f-->20ac (Euro sign)
                            such as cp037 vs cp1140 and cp273 vs cp1141, so use them appropriately.

                              e.g.
                                 SBCS_CHARSET DefaultMap
                                 SBCS_CHARSET CP1140     #ICU; EBCDIC 037+Euro
                                 SBCS_CHARSET 500        #Windows codepage;IBM EBCDIC International

           LOCAL_CHARSET  : Name of the Unicode<-->PC code page converter.
                            If not specified, the code page will be determined from the environment variables, etc.
                            e.g.
                                LOCAL_CHARSET   437          # Windows codepage
                                LOCAL_CHARSET ISO-8859-1     # Linux, iconv converter

           MAP_E2A/MAP_A2E: Specifies the SBCS conversion adjustment for each code point.
                            Only effective when "CONVERTER 0" is used.
                            E2A is effective for "CV b2m" but has no effect on "CV m2b".
                            The inverse of E2A must be specified separately by A2E.
                              e.g.
                                 MAP_E2A  0xa0:0xaf
                                 MAP_A2E  0xaf:0xa0
                                 MAP_E2A  0xa1:~      # EBCDIC 0xa1 -> ASCII tilde
                                 MAP_E2A  0xa1:u0101  # Uxxxx format is target of MAP_E2A only
                                 MAP_A2E     ~:0xa1   # EBCDIC 0xa1 <- ASCII tilde

                            If you use SJIS_OPT KANA_EXT/ENG_EXT, you need to be careful when you set Ascii>0x80 in E2A.
                            In ShiftJis, 0x81<-->0x9f, 0xe0<-->0xfc, and in EUC-JP, 0xa1<-->0xfe are defined
                            as the first byte of Japanese DBCS, so if you M2B the output of B2M, there is a possibility that SBCS will be mistakenly converted to DBCS.
                            For example, the following example is thought to be intended to swap ebc-15 and ebc-25.
                                MAP_E2A   0x15:0x0a
                                MAP_E2A   0x25:0x85
                                MAP_A2E   0x0a:0x15
                                MAP_A2E   0x85:0x25
                            However, since 0x85 is the first byte of SJIS DBCS.
                            So, the B2M output 0x85xx is considered Japanese DBCS when combined with the byte following 0x85.

           SUBCHAR_0a     : Controls the output of 0x0a (line feed code) when converting to a PC code page.
                            Parameter valid only for pattern (b)-Use external converter above.
                            1 : Replace 0x0a with converted SBCS alternative character.
                            0 : Output 0x0a as it is. (Default value)

           SUBCHAR_S2D    : When converting to a PC code page, is EBCDIC SBCS->multibyte conversion allowed?
                            This parameter is only valid for pattern (b)-Use external converter.
                            For example, in cp037, ebc-a7==>u-00a7, but in cp932, "CV b2m" results in u-00a7==> 0x8198 (Double-Byte).
                            If you set "SUBCHAR_S2D 1", it will be u-00a7==> '?'.
                            1 : Replace with SBCS alternative character.
                            0 : Allow multibyte output. (Default value)

           SJIS_OPT       : Specifies SJIS conversion options.
                            This parameter is only valid for pattern (a)-Use internal table.
                            The XCV/CV command has optional parameter with the same effect,
                            and the command parameter specification takes precedence.

                            ENG_EXT: Japanese English Lowercase Extended (CP939=CP300+CP1027)
                            KANA_EXT: Japanese Katakana Extended (CP930=CP300+CP290)

                            IBM: Maps EBCDIC kanji to the SJIS-IBM area (default value)
                            NEC: Maps EBCDIC kanji to the SJIS-NEC area
                            JIS78: SJIS 1978 version
                            JIS83: SJIS 1983 version (default value)
                              e.g.
                                 SJIS_OPT      NEC
                                 SJIS_OPT      JIS78
                                 SJIS_OPT      KANA_EXT

           SOSI_A2E       : SO/SI setting option when converting DBCS to EBCDIC.
                            The XCV/CV/SAVe/REPlace/COPy/... commands have optional parameters with the same effect which take precedence.
                            The default value is INS.

                            INS  : Inserts SO(0xe), SI(0x0f). The output is expanded.
                            REP  : Replaces spaces before and after the DBCS string if there are any, inserts if not.
                            SHIFT: In addition to REP, absorbs the expansion caused by the insertion by deleting the trailing spaces.
                              e.g.
                                 SOSI_A2E      REP

           SOSI_E2A       : How SO/SI is handled when converting DBCS from EBCDIC.
                            Commands such as XCV/CV/SAVe/REPlace/COPy/... have optional parameters with the same effect which takes precedence.

                            DEL : Delete SO/SI. This shortens the output line length.
                            REP : Replace SO/SI with ASCII space (default).


      ## Sample file ##

        xeebc.map                                                     ~
        ###########################################################################
        # CONVERTER             1     # 0:Internal Table, 1:ICU, 2:iconv/WindowsAPI||+v124R
        # ICU_DLL_SUFFIX      44      # ICU dllname suffix
        # ICU_API_SUFFIX      _44     # ICU apiname suffix
        # DBCS_CHARSET        cp939   #(Linux)EBCDIC Japanese English lower-case letter extension.~||+v124R
        # SBCS_CHARSET        cp037   #(ICU)EBCDIC-US               ||+v124R
        # SBCS_CHARSET        37      #(Windows)ECDIC-US              ||+v124I
        # SBCS_CHARSET DefaultMapEuro # for "Converter 0"
        # LOCAL_CHARSET    ISO-8859-1 #(Linux)Latin-1                 ||+v124R
        # LOCAL_CHARSET    28591      #(Windows Codepage) for ISO-8859-1||+v124R
        #
        #     SJIS_OPT     ENG_EXT    # ENG_EXT/KANA_EXT
        #     SJIS_OPT     NEC        # IBM/NEX/JIS78/JIS83
        #
        #     MAP_E2A    0xa2: 0x5c   # Yen sign and backslash
        #     MAP_A2E    0x5c: 0xa2   #
        #     MAP_E2A    0xa1: ~      # tilde and upper bar
        #     MAP_A2E       ~: 0xa1   #
        #     MAP_E2A    0xa0: ?      # tilde and upper bar
        #
        #   SOSI_A2E   INS            # INS/REP/SHIFT
        #   SOSI_E2A   DEL            # DEL/REP
        #   SUBCHAR_0a     1          #1/0 replace by SBCS substitution char.
        #   SUBCHAR_S2D    1          #1/0 replace converter output by sub-char when SBCS is translated to pc-DBCS.
        ##################################################################################||~v124R
        #
        ## Use Internal mapping table
        #
        #        CONVERTER          0
        #        SJIS_OPT           KANA_EXT
        #        MAP_E2A            0x15:0x0a
        #
        ## Use ICU , DBCS codepage
        #
        #        CONVERTER          1
        #        DBCS_CHARSET       cp930
        #
        ## Use ICU , SBCS codepage
        #
        #        CONVERTER          1
        #        SBCS_CHARSET       cp037
        #
        ## Use iconv (Linux)
        #
        #        CONVERTER          2
        #        SBCS_CHARSET       cp1047
        #
        ##################################################################################
                                                                      ||~v124R~
#if defined(W32)||defined(LNX)                                        ||~v125R~
                                                                      ||~v124R~
   .UTF8 Support.                                                     ||~v124R~
                                                                      ||~v124I~
     .You can view/edit UTF8 encoded file.                            ||~127MR~
      Linux version can process UTF8 encoded file name.               ||~127MR~
      Environment LANG:utf8 is required, for ex, LANG=ex_US.utf8.     ||~v128I~
      Windows actually manages filename by UTF-16,                     ||~127MR~
      windows version can process filename containing surrogate pair code.||~127MR~
      Both version treats up to u-0x10ffff(21 bit UCS4).              ||~v125R~||~127MR~
                                                                      ||~v125R~
     .UTF8 string is shown by color of green.                        ||~v125R~
#ifdef W32                                                            ||~127MR~
	  Filename on dir-list is shown by color of green when translation to locale coed from utf8 failed.||~127MR~
      See case of Linux for dir-list of remote(not Windows-Share but FTP).||~127MR~
#endif                                                                ||~127MR~
#ifdef LNX                                                            ||~127MR~
	  Filename on dir-list is shown by color of green when filename encoding is utf8.||~127MR~
      If valid as both charset of UTF8 and locale code, codepage is selected as following priority(High to Low).||~127MR~
            EDIt cmd : e xxx FN{U8|LC|AS}                             ||~127MR~
            cmdline parameter : xe  -UN{8|L}                          ||~127MR~
            UTF cmd : UTF FN CP{U8|LC|AS}                             ||~127MR~
            Linux:LANG env-vvar for Linux, Windows:locale for local, UTF8 for remote FTP.||~127MR~
#endif                                                                ||~127MR~
                                                                      ||~127MR~
      Keyboard input mode Locale or UTF8 is switched by "UTF SWKBD" cmd or Alt+u.        ||~v125R~||~127MR~
      When "=u=>" is shown on cmdline, keyboard is UTF8 code input mode.||~127MR~
      Keyboard:UTF8 mode is effective at following cases.            ||~127MR~
        -Copy word under the cursor on UTF8 or EBC file by Ctrl+w     ||~127MR~
        -Paste to field other than file contents area from clipboard created from UTF8 or EBC file.||~127MR~
                                                                      ||~v125R~
                                                                      ||~v125R~
     .Browse/Edit UTF8 encoded file.                                  ||~v125R~
                                                                      ||~v125R~
       -Input into file contents area is UCS regardless of A+u status.||~v125R~||~127MR~
        And translated to UTF8 when writeback.                        ||~v125R~
                                                                      ||~v125R~
       -Unprintable UCS is displayed by alternative char ":;".       ||~v125R~||~127MR~
        Invalid byte code as UTF8 is displayed by "?".                ||~v125R~
        Original byte code is kept in both case and write back as it is.||~v125R~
                                                                      ||~v125R~
       -No translation is done for the file opened by binary mode(eb/eh cmd).||~v125R~
        All bytes are interpreted as locale code.                     ||~v125R~
                                                                      ||~v125R~
       -Hex cmd display UCS code.                                     ||~v125R~
        ASCII char is one column on both char line and hex line.      ||~v125R~
        Non-ASCII char is 2(UCS2) or 3(UCS4) column on hex line.      ||~v125R~
        Char line column width is one or two depending to each code point.||~v125R~
        So, line length of char line and hex line may differ.         ||~v125R~
        Alt+g(Cursor Jump) key is used to switch to corresponding column.||~v125R~
                                                                      ||~v125R~
       -Unicode input from keyboard.                                  ||~v125R~
        On Asian DBCS environment, IME may supports input of almost codepoint.||~v125R~
        Xe supports hex notation input. Use Ctrl+F11 to switch to Hexcode input mode.||~v125R~
        at 4th hex digits of u-xxxx input completed, the UCS2 is transferred into||~v125R~
        the cursor position. For u-00xx, "x" key may be used after 2 hex digits input.||~v125R~
        For UCS4,6 digit required, start by "v" key before hex digit input.||~v125R~
        Premature input is send by "u", "v" or "x" key.               ||~v125R~
                                                                      ||~v125R~
        And, when vertical hex display mode by HEX cmd,               ||~v125R~
        "u" key on hex line synthesis 2 byte to one UCS2 code.        ||~v125R~
        For ex, at 2 spaces(0x20,0x20) position, "u" key on upper or lower hex line||~v125R~
        changes 2 spaces to one u-2020(cross?).                       ||~v125R~
        "v" key on hex line synthesis 3 byte to one UCS4 code.        ||~v125R~
                                                                      ||~v125R~
        Unicode input on command input line.                          ||~v125R~
           You can input UTF8 code using Hex-input-mode into cmd input line,||~v125R~
           dir-list rename input field, Utility panel(=3.12, =3.14), filename list panel(=1, =2).||~v125R~
           Switch to Hex-Input-Mode using Ctrl+F11, start UCS input by "u"/"v" key.||~v125R~
           Without starting "u" or "v" key, different from the case csr is on file text area without starting "u" or "v" key,||~v125R~
           Input char is send just to those area.                     ||~v125R~
           Enter twice "u" or "v" to input the char.                  ||~v125R~
           Cut&Paste or Ctrl+w may be used copy UTF8 string from a line of UTF8 file opened.||~127MR~
                                                                      ||~v125R~
        Native RAW CODE input method.                                 ||~v125R~
           You can use IME to input RAW unicode.                      ||~v125R~
             But, Linux console version cannot detect it if the code can not be translated to locale code||~v125R~
                  when LANG environment is not UTF8.                  ||~v125R~
                  Windows console version can not utilize Windows RAW CODE Input method||~v125R~
                  Use HexInputMode in this case.                      ||~v125R~
           (Ref.) How to input RAW Unicode                            ||~v125R~
              (Linux)  :Select Other-->RAW CODE on SCIM setting.      ||~v125R~
                        To use NumPad key NumLock On is required.     ||~v125R~
              (Windows):-Pressing Alt key, press "+" key on NumPad.   ||~v125R~
                         Keeping Alt key pressed, continue to key in unicode by hex digit.||~v125R~
                         UCS code is send to the cursor position when Alt key is released.||~v125R~
                         To utilize this method, you may be required to registry setting.||~v125R~
                         Replace or Insert the key EnableHexNumpad with value "1" (data type is REG_SZ:string)||~v125R~
                         into the entry of HKEY_CURRENT\Control Panel\Input Method.||~v125R~
                        -For Japanese IME (Microsoft IME standard 2002 in my case).||~v125R~
                         Switching translation mode, enter unicode like as U3042 the press F5 key.||~v125R~
                         This may not be available on command prompt. ||~v125R~
                        -You may get "?" for the code could not be translated to locale code.||~v125R~
                         Use HEX Input Mode(XIN cmd) in that case.    ||~v125R~
                                                                      ||~v125R~
       -Additional cmd option for UTF8 support.                       ||~v125R~
                                                                      ||~v125R~
           -Edit/Browse/Select  [CPU8|CPLC|CPAS] [IE]                 ||~v125R~
              CPU8: Open as UTF8 file.                                ||~v125R~
                    (Note) Currently (July 2025),                     ||~v30CI~
                           UCS-4 (unicode > u-ffff) cannot be displayed in Console version if the command prompt is||~v30CI~
                           Windows Terminal. It is OK on legacy conhost.||~v30CI~
              CPLC: Open as locale code file.                         ||~v125R~
              CPAS: by the LANG environment. Default.                 ||~v125R~
                                                                      ||~v125R~
                CPxx option is save to profile.                       ||~v125R~
                No need to specify for the 2nd open.                  ||~v125R~
                Default is CPAS, and CPxx option for the directory is default of the file in the directory.||~v125R~
                You can confirm the open option by the id *U/*u/*L/*l/*b on the header filename line.||~v125R~
                ("b" means binary mode open.)                         ||~v125R~
                Uppercase means explicit CPxx specification including the case by saved value in the profile.||~v125R~
                Re-load by CPLC when translation error if no CPU8 option or CPU8 is not registered on profile.||~v125R~
                UTF cmd can change the default and CPLC reload option. ||~v125I~
                                                                      ||~v125R~
              IE  : You can not open by edit mode if translation error occured.||~v125R~
                    To force open, use "IE" option.                   ||~v125R~
                    Not translated code are loaded as it is and displayed by "?".||~v125R~
                    You can open by browse mode even if translation error occured.||~v125R~
                    Error position is searched by "f *ec" cmd.        ||~v125R~
                                                                      ||~v125R~
                                                                      ||~v125R~
                                                                      ||~v125R~
           -End/Save/Replaxe/Create/Append [CPLC | CPU8 [IE]]         ||~v125R~
              CPU8/CPLC:specifies output file encoding.               ||~v125R~
                        translation will be done if required, the write back.||~v125R~
              IE       : ignore translation error, error code is replaced by "?".||~v125R~
                                                                      ||~v125R~
           -Copy/Move source-file [CPLC | CPU8 [IE]]                  ||~v125R~
              CPU8/CPLC: Copy/Move "source-file" after translated if required.||~v125R~
              IE       : continue copy operation ignoring translation error.||~v125R~
                         those char are copied as it is and displayed by "?".||~127AR~
                         This option is not required when target file is opened by with "IE" option.||~v125R~
                                                                      ||~v125R~
           -Find/Change cmd.                                          ||~v125R~
                                                                      ||~v125R~
             .Find/Ifind [U[B|L|8]]                                   ||~v125R~
              Change     [U[B|L|8|4]]                                 ||~v125R~
                  U   : option prefix.                                ||~v125R~
                  B/L : Search UCS2 by BigEndian/LittleEndian mode. default depends on the O/S("L" for 80x86 strings).||~v125R~
                        e.g.) "F 123 UB" searchs 0x'003100320033',      ||~v125R~||~v128R~
                              "F 123 LB" searchs 0x'310032003300'.      ||~v125R~
                  8   : Search UTF8 code.                             ||~v125R~
                        Keyboard input code depends on A+u status indicated by cmdline prefix.||~v125R~
                        "=u=>"  means UTF8, "===>" means locale code. ||~v125R~
                        Search UTF8 code by U8 option when locale code mode.||~v125I~
                        Use "U8" option to search UTF8 code on the file opened with CPLC||~v125R~
                        and keyboard is locale mode.                  ||~v125R~
                          e.g. F x U8                                 ||~v125I~||~v128R~
                           Assume "x" is locale code, 0xa0 as a example,||~v125I~
                           this cmd search 0xc2a0 (UTF8 code corresponding to 0xa0).||~v125I~
                  4   : hex notation of replacing string is UCS4.      ||~v125R~
                          e.g.  C abc  \x10fffd   u4                  ||~v125R~||~v128R~
                        If missing U4 on CHAnge cmd on UTF8 file, replacing string is assumed as UCS2||~v125R~
                          e.g.  C abc  \x30203021                     ||~v125R~||~v128R~
             .Find *ec                                                ||~v125R~
                  *ec : Search the code position failed to translated from UTF8 at open.||~v125R~
                        *e is also avail to search the line containing error until the line is updated.||~v125R~
             .Change *ec *                                            ||~v125R~
                  *   : Change translation error code byte by byte.   ||~v125R~
                        Replacing char "*" means to reset translation error status.||~v125R~
                        The code was not reset are written as it is,  ||~v125R~
                        the code was reset are translated to UTF8 as locale code at write back.||~v125R~
                                                                      ||~v125R~
                        Any replacing string is allowed for *ec.      ||~v125R~
             .Char boundary is considered for \x__ notation of search/replace||~v125R~
              string for UTF8 file. it should be 4 bytes multiple.    ||~v125R~
              aa of \xaabb dose not match to yy of u-xxyy.            ||~v125R~
              it may match to xx of u-xxyy.                           ||~v125R~
              e.g. c \x30003000 \x20202020                             ||~v125R~||~v128R~
                                                                      ||~v125R~
           -SORt cmd.                                                 ||~v125R~
              D[S|I|X] option for UTF8 file.                          ||~v125R~
              Treatment of DBCS split by key position specification. ||~v125R~
                S: assume as " "(space), I: include split left or right byte, X: exclude the split char.||~v125R~
              And, collating sequence is Unicode for UTF8 file.       ||~v125R~
                                                                      ||~v125R~
           -Use "o" line cmd on dirlist if CPxx option required.      ||~v125R~
            Specify CPxx on the rename field like as Select cmd.      ||~v125R~
            Line cmd "[" and "]" means Open with CPLC and CPU8 option each.||~v125R~
                                                                      ||~v125R~
                                                                      ||~v125R~
       -Use locale code for line(box) character specification in the ::xe___.ini.xxx file(___:os type, xxx:locale id).||~v125R~
                                                                      ||~v125R~
       -UTF related setting.                                          ||~v125R~
                                                                      ||~v125R~
           - UTF { {ALTCPLC | NOALTCPLC } | SWKBD | FILE | FN } [ CPU8 | CPLC | CPAS ]||~v125I~
                                                                      ||~v125R~
              ALTCPLC / NOALOTCPLC : When without CPU8 option including registered on profile,||~v125I~
                                     reload by CPLC or not if UTF8 translation err occured.||~v125I~
                                                                      ||~v125I~
              SWKBD:KBD Input translation(Locale code<-->UTF8)        ||~v125R~
                                                                      ||~v125R~
                Alt+u is shortcut of "UTF SWKBD" cmd.                 ||~v125R~
                "===>" of cmd input line is changed to "=u=>".        ||~v125R~
                =u=>:keyboard input is interpreted as UTF8.||~v125R~  ||~v125R~
                Kbd:UTF8 mode has influence to following cases.       ||~127MI~
                  -Using Ctrl+w,paste to cmd input line from UTF8 or EBC file.||~127MI~
                  -Paste to field other than file contents area from clipboard created from UTF8 or EBC file.||~127MI~
                                                                      ||~127MI~
              FILE/FN:Set default of text of file/filename encoding.  ||~v125R~
                      Use CPAS to reset it.                           ||~v125R~
                      Option setting is save to ini file.             ||~v125R~
                      -U option of cmdline override this temporarily. ||~v125R~
                                                                      ||~v125R~
              You can mix UTF8 and locale code on command input line, filename input(=1 or =2) panel||~v125R~
              and utility panel(=3.12 or =3.14).                      ||~v125R~
              Use this shortcut key when file pathname is mix of UTF8 and locale code.||~v125R~
              (Note) If the mix is in a path, UTF8 detection may fail.||~v125R~
              		 (Intermediate ASCII code may help as UTF8 encoding separator)||~v125R~
                                                                      ||~v129R~
           -  Linux:    OPT UNICOMB [ COMB | SPLIT | UNPR ] [ SHADOW | ITSELF | PADDING | U-xxxx ]||~v30CI~
              Windows:  OPT UNICOMB [ COMB | SPLIT | UNPR | U-xxxx ]  ||~v30CR~
                                                                      ||~v125R~
              Set what is sent to screen for combining character.     ||~v125R~
              Alt+":" is also available to switch display mode of combining characters.||~v125R~
                                                                      ||~v125R~
       -Command line option.                                          ||~v125R~
                                                                      ||~v125R~
            xe [/U{F|N}{8|L}]                                         ||~v125R~
              UF  : set default encoding of file text.                ||~v125R~
              UN  : set default encoding of filename.                 ||~v125R~
                                                                      ||~v125R~
              -default encoding is set by UTF cmd, This option override the UTF cmd setting.||~v125R~
              -About file text encoding.                              ||~v125R~
               CPU8/CPLC option on Edit/Browse file/directory cmd is save to profile.||~v125R~
               Priority among those setting are as following.         ||~v125R~
                open cmd option->profile->cmdline option->UTF8 cmd setting.||~v125R~
                And last is LANG environment variable for Linux.      ||~v125R~
                                                                      ||~v125R~
       -Use ini file to adjust char display column width.             ||~v125R~
                                                                      ||~v125R~
         .Font width may vary depending the language environment.     ||~v125R~
          If input char is displayed other than cursor position, use this function.||~v125R~
          At first, confirm char width by displaying the file utf8data.0000-ffff||~v125R~
          in sample dir.                                              ||~v125R~
         .Specify code table file name in ini file                    ||~v125R~
          Font width may differ between console version(on DOS prompt/Terminal emulator) and||~v125R~
          GUI version.                                                ||~v125R~
                                                                      ||~v125R~
          Mapping table is used for SBCS(1 column font width) codepoint.||~v125R~
          If this table is overflowed, those codepoints is treated as DBCS(occupy 2 column).||~v125R~
          When following warning is issued, define not used SBCS range as DBCS,||~v125R~
          like as, for ex, "2 e000-f8ff".                             ||~v125R~
             "Warning:UCS map tbl overflow. Treat this range as DBCS(adjustable by ini file)."||~v125R~
                                                                      ||~v125R~
               UnicodeTbl="::xeuctb" #("")# Unicode Codepoint File:SBCS/DBCS/Unprintable specification||~v125R~
               UnicodeTbl_Console="::xeuctb.cons" #("")# Unicode Codepoint File for console version||~v125R~
                                                                      ||~v125R~
         .sample format                                               ||~v125R~
                                                                      ||~v125R~
               #################################################      ||~v125R~
               # Unicode character type specification file            ||~v125R~
               #   Specify file name on ini file                      ||~v125R~
               #   You need specify only to change default            ||~v125R~
               ## Line Format ##################################      ||~v125R~
               # unicode character type specification file            ||~v125R~
               # type start-end                                       ||~v125R~
               # type     : 0:Width0(Combine character), 1:printable single column character,||~v128I~
               #            2:printable wide(double column) character, N:unprintable||~v128I~
               #            #:comment                                 ||~v128I~
               # start-end: unicode range by hex digit notation. Lines should be ascendant sequence.||~v125R~
               # Ex) 2 01cb-01e3                                      ||~v125R~
                                                                      ||~v125R~
       -Others.                                                       ||~v125R~
         .CV cmd is for locale file only.                             ||~v125R~
         .Command(=6) panel is CPAS, Shortcut key definition(=0.1) panel is CPLC.||~v125R~
                                                                      ||~v125R~
#endif  //WIN | LNX                                                   ||~v125R~

   .ShortPathName.                                                    ||~v129R~
                                                                      ||~v129R~
       -You can use following abbreviation.                           ||~v129R~
          *\  : Same folder as currently opened on the panel.         ||~v129R~
          ^*\ : Same folder as currently opened on the other panel of split.||~v129R~
          ::  : Work directory.                                       ||~v129R~
        e.g.)   e *\another.txt   e ^*\more.c   e ::xehosts           ||~v129R~
                                                                      ||~v129R~
       -ShortPathName                                                 ||~v129R~
            Define short path alias on the definition file(::xe.shortpath),||~v129R~
            then use it by "sp:xxxx" format.                          ||~v129R~
            Edit definition file, or you can add line by SP command.  ||~v129R~
            e.g.)                                                     ||~v129R~
               Assuming following line in ::xe.shortpath               ||~v129R~
                 srctest1 d:\eclipse-workspace\testproject1\src\com\debug\test||~v129R~
               "e sp:srctest1" command is replaced by                 ||~v129R~
               "e d:\eclipse-workspace\testproject1\src\com\debug\test".||~v129R~
                                                                      ||~v129R~
                                                                      ||~v124R~
   .SyntaxHighlight.                                                  ||~v124R~
                                                                      ||~v124R~
    Syntax highlight display text with each color and font style according to the language syntax.||~v124R~
    xe's syntax-highlight use the function of André Simon's Highlight or GNU source-highlight.   ||~v124R~||~v124R~||~v130R~
    Configuration file is ::xesynw.cfg(Windows) / ::xesynl.cfg(Linux).||~v130R~
                                                                      ||~v124R~
      GNU source-highlight (specified by SHCMD= in the cfg file)||~v124R~||~v130R~
      You need to install source-highlight (Linux version).           ||~v130R~
      For example, in the case of ubuntu, "sudo apt-get install source-highlight".||~v130R~
      --data-dir is /usr/share/source-highlight.                      ||~v130R~
      On Windows, its binary is not maintained and the installation hurdle may be high.||~v130R~
      So the next André Simon's Highlight is easier to use.           ||~v130R~
                                                                      ||~v130R~
      André Simon's Highlight (specified by SHCMDA= in the cfg file)  ||~v124R~||~v125R~||~v130R~
         Install from André Simon's homepage.                         ||~v130R~
         xe use command-line binary, leave GUI version even if its "make" failed.||~v124R~||~v129R~||~v130R~
                                                                      ||~v125R~
         For the Windows version, the necessary files for xe have been zipped and placed in the sample directory on GitHub.||~v130R~
         For the Windows version, the Data directory appears to be the default location of the exe.||~v130R~
                                                                      ||~v124I~
    xe accept outlang:esc format output from highlighter through stdout pipe.||~v124R~
    Output of type esc contains ANSI ESC sequence codes that specify color and font style information.||~v130R~
    (xe fail to display color if original source contains esc code)   ||~v124R~
                                                                      ||~v124R~
    (ANSI Esc sequence style code is NORMAL:0, BOLD:1, UNDERLINE:4, BLINK:5, REVERSE:7, INVISIBLE:8. About color code see later.)||~v124R~
    (xeacb is also used as utility to browse file contains ANSI Esc sequence code.)||~v124R~
                                                                      ||~v124R~
    When lines are updated, syntax re-evaluation is not done immediately. Re-evaluation is done by Ctrl+s key as default.||~v124R~
    You can set ENTER key as trigger of re-evaluation by the cost of response delay.||~v124R~
    For best response.                                                ||~v124I~
      1.No trigger setting of ENTER key.                              ||~v124I~
      2.Using Ctrl+s, do re-evaluation to the updated lines only when required.||~v124I~
      3.Using "SYN ALL" cmd, do re-evaluation to all lines when multiline evaluation rewuired.||~v124I~
    Next will be reasonable if you allow those response delay.        ||~v124I~
      1.Trigger setting of ENTER key as Update line only.             ||~v124I~
      2.Using Ctrl+s, do re-evaluation for all lines when required.   ||~v124I~
    Related cfg options.                                              ||~v124I~
      0. Set SyntaxHighlight:ON at file open using OPEN=/OPEN_EXT=.   ||~v124I~
      1. Set ENTER key trigger using ENTER=.                          ||~v124I~
      2. Set UPDONLY_EXT= to limit or not re-evaluation to updated lines only.||~v124I~
                                                                      ||~v124R~
    (a)Command.                                                       ||~v124R~||~v124R~
                                                                      ||~v124R~
       SYN [ ? | ALL | RESET | ENTER | ENTERA | ON [lang-type] | OFF] ||~v124I~
            ?                 : Display help and brief current status.||~v124R~
            ALL               : Re-evaluation is done regardless update after previous evaluation and UPDONLY_EXT setting in .cfg file.||~v124I~
            RESET             : Use to re-read config file.           ||~v126R~
            ENTER             : Set ENTER key as trigger of re-evaluation for current file on the screen.||~v124I~
                                To keep good response, re-evaluation is done only for the updated lines||~v124I~
                                without consideration of multiline syntax.||~v124I~
                                To evaluate multiline syntax, execute "SYN ON"(Ctrl+s) cmd.||~v124I~
            ENTERA            : Set ENTER key as trigger of re-evaluation for current file on the screen.||~v124I~
                                Re-evaluation is done for all lines with consideration of multiline syntax||~v124I~
                                cost of slow response.                ||~v124I~
            ON [lang-type]    : Do re-evaluation for all lines of the file except the case||~v124I~
                                the extension is defined on UPDONLY_EXT of cfg file.||~v124I~
                                lang-type is used to change language type of the file.||~v124I~
            OFF               : Stop syntax highlight for the file.   ||~v124I~
                                                                      ||~v124R~
       "SYN ON" is done if operand missing or function key Ctrl+s is used as default assignment.||~v124R~
                                                                      ||~v124R~
    (b)Config file.                                                   ||~v124R~||~v124R~
                                                                      ||~v124R~
       Put cfg file on work-dir(c:\xe_wd or /home/userID/xe_wdnnnn, nnnn:userIDnumber as default).||~v124R~
       (cfg file name is xesynw.cfg(Windows version) or xesynl.cfg(Linux version)) or xesyna.cfg(Android version)||~v126R~
       See later, (d) for source-highlight configuration,             ||~v124R~
       (e) for André Simon's Highlighter configuration, (f) ANSI Esc sequence code.||~v124R~||~v130R~
       If you get messages indicating an error in your configuration file, you can fix it and reload it by "SYN RESET".||~v130R~
                                                                      ||~v124R~
          SHCMD=     :source-highlight execution command.             ||~v130R~
                      When using a bat file on Windows, use $* to receive parameters from xe.||~v130R~
                      When using a shell on Linux, use $@ to receive parameters from xe.||~v130R~
                      Also, avoid outputting to standard output/standard error,||~v130R~
                      as this will result in an error message such as "Invalid Index file".||~v130R~
          SHCMDA=    :Runs André Simon's Highlight.                   ||~v130R~
                      If the path contains spaces, specify as follows ||~v130R~
                        SHCMDA= '""c:\Program Files\WinHighlight\highlight.exe"" -q --out-format=ansi'||~v130R~
                      When using a bat file on Windows, use $* to receive parameters from xe.||~v130R~
                      When using a shell on Linux, use $@ to receive parameters from xe.||~v130R~
                      Also, avoid outputting to standard output/standard error,||~v130R~
                      as this will result in an error message such as "Invalid Index file".||~v130R~
          ENTER =    :Specify the threshold of number of lines of the file, that will cause Enter key presses to trigger a re-evaluation of syntax.||~v130R~
                      When the file is opened and the number of lines is within the number specified here, Enter key will trigger a re-evaluation of updated lines.||~v130R~
                      It will only be triggered when OPEN=y, or after the file has been opened, when SYN is ON by SYN command (Ctrl+s).||~v130R~
                      "0" means that Enter key is not a triggar,      ||~v130R~
                      "-1" means that Enter key will re-evaluate regardless of the number of lines in the file.||~v130R~
                      The default value is -1.                        ||~v130R~
          OPEN =     :Specifies that syntax highlighting is evaluated at the file is opened or not.||~v130R~
                      "Y": Turns ON for files with the extension specified in the next OPEN_EXT parameter.||~v130R~
                      "N": Turns OFF when the file is opened. Can be turned ON later with the SYN command.||~v130R~
                      "A": Turns ON for all files when the file is opened.||~v130R~
          OPEN_EXT=  :Specifies the list of file extensions to be targeted when OPEN=y is specified.||~v130R~
                      e.g.  OPEN_EXT=c cpp h hpp                      ||~v130R~
          UPDONLY_EXT:Lists the extensions for language types that limit reevaluation by the "SYN ON" (Ctrl+s) to updated lines only.||~v130R~
                      For language types that do not have multi-line syntax such as the /* */ comments in C,||~v130R~
                      only updated lines need to be reevaluated.      ||~v130R~
                      So by specifying this here, the response of the "SYN ON" that reevaluates all lines will be faster.||~v130R~
                      If you mind the Enter key slow response and set "Enter=0", you will use "SYN" to reevaluate.||~v130R~
                      Even the language originally has a multi-line syntax but you want to speed up the "SYN ON" response, use this setting.||~v130R~
                      Even with this setting, you can still reevaluate the entire file with "SYN ALL".||~v130R~
                      If you set UPDONLY_EXT=default, pplied to all files.||~v130R~
                        Example: UPDONLY_EXT=cbl                      ||~v130R~
          PATH_EXT_xxx=:Gives an extension in the directory path name for files that do not have a proper extension.||~v130R~
                        Specify the extension in xxx (up to 7 digits). One path is specified per line.||~v130R~
                        Files in the specified directory will be assumed to have the extension xxx,||~v130R~
                        regardless of their original extension.       ||~v130R~
                        e.g. PATH_EXT_cob=d:\src\cobs PATH_EXT_syslog=d:\logs\windows\actlog||~v130I~||~v130R~
          BG=        :Palette number of background color. Check the color of each palette number on the 0.0 screen.||~v130R~
                      Numbers are from "0" to "15" (Windows)/"7" (Linux).||~v130R~
          BG_BROWSE  :Background color palette number in Browse mode.                ||~v130I~||~v130R~
                      The default value is the same as BG.            ||~v130R~
          FG=        :Palette number of foreground color.             ||~v130R~
                      Numbers are from "0" to "15".                   ||~v130R~
          BG_EOL=    :Background color palette number for the area after the end of the line.||~v130R~
                      The default value is the same as BG (edit mode) or BG_BROWSE (browse mode).||~v130R~
          BG_TAB=    :Background color palette number for TAB/non-printable characters.||~v130R~
                      The default value is the same as BG (edit mode) or BG_BROWSE (browse mode).||~v130R~
          BG_UPD=    :Background color palette number for unevaluated lines after updated.||~v130R~
                      The default value is 0 (black)                  ||~v130R~
          BG_REVERSE_EDIT=:Background color when inverted for Find command, Cut and Paste, etc. on the Edit panel||~v130R~
                           The default value is 14 (yellow) for Windows, 6 (brown) for the Linux Console version.||~v130R~
          BG_REVERSE_BROWSE=: Background color when inverted for Find command, cut and paste, etc. on the Browse panel||~v130R~
                           The default value is 15 (white) for Windows, 6 (brown) for the Linux Console version.||~v130R~
          CMAP =     :source-highlight outputs the color number in the ANSI ESC sequence||~v130R~
                      according to the configuration definition.      ||~v130R~
                      Specifies this when changing the mapping without making it a xe palette number.||~v130R~
                      André Simon's Highlight does not seem to be able to change the mapping with its configuration definition. (See (e) below)||~v130R~
                      So use CMAP.                                    ||~v130R~
                      Specify as many as necessary, starting with color number "0".||~v130R~
                        e.g.  CMAP =__.04.10.__.01 # Swap red and blue, set green to high intensity. "__" means no change.||~v130R~
          RGBn =     :In the GUI version (wxe, gxe), the palette number color can be set continuous value.||~v130R~
                      n is a palette number from 0 to 15.             ||~v130R~
                        e.g. rgb2=20e030 # Set the RGB values of palette number 2 (green) to R:0x20, G:0xe0, B:0x30.||~v130R~
          ITALIC_ESC=:Informs xe of the ANSI ESC sequence code given to italics in esc.outlang in source-highlight.||~v130R~
                      Specify a value other than "0", "1":bold, or "4":underline.||~v130R~
                      The default value is "5":blink. Change esc.outlang to set the default value to italics.||~v130R~
                      Font style cannot be specified for André Simon's Highlight.||~v130R~
          C_BOLD =   :Font style = 1 (Bold) in the console version. Windows version only.||~v130R~
                      "H": High intensity (default value), "N": Ignored, "R": Inverted.||~v130R~
          C_UNDERLINE=:Treate Font style = 4 (Underline) in the console version.||~v130R~
                       "H": High intensity, "N": Ignored (default value), "R": Inverted.||~v130R~
          C_ITALIC = :Treate Font style = 5 in the console version (or the value specified by ITALIC_ESC if specified).||~v130R~
                      "H": High intensity, "N": Ignored (default value), "R": Inverted.||~v130R~
          G_BOLD =   :Trate Font style = 1 (Bold) in the GUI version (wxe, gxe).||~v130R~
                      "H": High intensity, "Y": Bold, "N": Ignored, "R": Inverted. Default value is "YH".||~v130R~
          G_UNDERLINE=:Treat font style = 4 (Underline) in GUI version (wxe). Not supported in gxe.||~v130R~
                       "H": High intensity, "Y": Underline, "N": Ignored, "R": Inverted. Default value is "Y".||~v130R~
          G_ITALIC = :Treat font style = 5 (or the value specified by ITALIC_ESC) in GUI version (wxe, gxe).||~v130R~
                      "H": High intensity, "Y": Italic, "N": Ignored, "R": Inverted. Default value is "Y".||~v130R~
                                                                      ||~v124R~
    (c)sample cfg file.                                               ||~v124R~||~v124R~
                                                                      ||~v124R~
    ######################################################################################||~v130R~
    # xesynw.cfg(Win)/xesynl.cfg(Linux)                               ||~v130R~
    # ==syntax highlight configuration==                              ||~v130R~
    #                                                                 ||~v130R~
    ### execution                                                     ||~v130R~
    #                                                                 ||~v130R~
    #  select highight command from SHCMD or SHCMDA                   ||~v130R~
    #     SHCMD=       :Specify source-highlight command              ||~v130R~
    #                   e.g.  SHCMD = "source-highlight"              ||~v130R~
    #     SHCMDA=      :Specify André Simon's Highlight command       ||~v130R~
    #                   e.g.  SHCMDA= '""w:\highlight.dir\hl64.exe"" -q --out-format=ansi'||~v130R~
    #     ENTER =      :File line count at open to re-evaluate updated lines by Enter key when SYN ON..||~v130R~
    #                   0 :Do not re-evaluate by Enter key. -1:No line count limit.(Default)||~v130R~
    ### file type                                                     ||~v130R~
    #     OPEN  =      :SyntaxHighlight mode at opening file.         ||~v130R~
    #                   "Y":SyntaxHighlight mode if the extention is listed by OPEN_EXT||~v130R~
    #                   "N":always No SyntaxHighlight mode at open    ||~v130R~
    #                   "A":always SyntaxHighlight mode at open       ||~v130R~
    #     OPEN_EXT=    :Specify file extension list for the case of OPEN=y.||~v130I~||~v130R~
    #                   e.g. OPEN_EXT=c cpp h hpp                      ||~v130I~||~v130R~
    #     UPDONLY_EXT  :Lists the extensions for language types that limit reevaluation by the "SYN ON" (Ctrl+s) to updated lines only.||~v130R~
    #                   e.g. UPDONLY_EXT=cob                           ||~v130I~||~v130R~
    #     PATH_EXT_xxx=:Gives an extension in the directory path name for files that do not have a proper extension.||~v130R~
    #                   e.g. PATH_EXT_cob=d:\src\cobs                  ||~v130I~||~v130R~
    ### color                                                         ||~v130R~
    #     BG=          :Palette number of background color. Check the color of each palette number on the 0.0 screen.||~v130R~
    #                   Numbers are from "0" to "15" (Windows)/"7" (Linux).||~v130R~
    #     BG_BROWSE    :BackGround color palette number for browse panel||~v130R~
    #                   Default is same as BG                         ||~v130R~
    #     FG=          :ForeGround color palette number               ||~v130R~
    #                   Valid value is "0" to "15"                    ||~v130R~
    #     BG_EOL=      :Background color for the right of EndOfLine.  ||~v130R~
    #                   Default is same as BG(Edit) or BG_BROWSE(Browse)||~v130R~
    #     BG_TAB=      :Background color for TAB/UnPrintable Character.||~v130R~
    #                   Default is same as BG(Edit) or BG_BROWSE(Browse)||~v130R~
    #     BG_UPD=      :Background color for updated and not yet re-evaluated line.||~v130R~
    #                   Default:0(black)                              ||~v130R~
    #     BG_REVERSE_EDIT=  :Background color for reverse on edit panel(Find cmd,Cut & Paste)||~v130R~
    #                        Default:14(yellow) except linux console version(6:brown)||~v130R~
    #     BG_REVERSE_BROWSE=:Background color for reverse on browse panel(Find cmd,Cut&Paste)||~v130R~
    #                        Default:15(white) except Linux console version(6:brown)||~v130R~
    #     CMAP  =      :Color palette re-mapping. Remap ANSI color number to xe's palette.||~v130R~
    #                   Specify from color palette number from 0 to max 15 each.||~v130R~
    #                   e.g. CMAP=__.04.10.__.01   # swap Red and Blue and use Intense Green("__" means no change.)||~v130I~||~v130R~
    #     RGBn  =      :RGB value for each palette (wxe and gxe only) ||~v130R~
    #                   n:0-->15 (correspond to palette number of xe 0.0 panel)||~v130R~
    #                   e.g. rgb2=20e030   # palette No2(green)'rgb value is R:0x20, G:0xe0, B:0x30.||~v130I~||~v130R~
    ### font style                                                    ||~v130R~
    #     ITALIC_ESC = :ANSI esc code for italic.                     ||~v130R~
    #                   Notify value specified on esc.lang file of source-highlight as ANSI font style code:italic.||~v130R~
    #                   Valid value is one digit except reserved "0","1":bold, "4":underline.||~v130R~
    #                   Default is "5":blink. (If you use this default, specify it on esc.outlang).||~v130I~||~v130R~
    #     C_BOLD     = :treatment of font style:1(BOLD) for console version xe||~v130R~
    #                   "H":HighIntensity, "N":Ignore, "R":Reverse. Default is "H".||~v130R~
    #     C_UNDERLINE= :treatment of font style:4(UNDERLINE) for console version xe. Not supported for Linux version.||~v130R~
    #                   "H":HighIntensity, "N":Ignore, "R":Reverse.  Default is "N".||~v130R~
    #     C_ITALIC   = :treatment of font style:5(or value of ITALIC_ESC parameter if used) for console version xe||~v130R~
    #                   "H":HighIntensity, "N":Ignore, "R":Reverse.  Default is "N".||~v130R~
    #     G_BOLD     = :treatment of font style:1(BOLD) for GUI version xe(wxe,gxe)||~v130R~
    #                   "H":HighIntensity, "Y":Bold, "R":Reverse, "N":Ignore. Default is "YH".||~v130R~
    #     G_UNDERLINE= :treatment of font style:4(UNDERLINE) for GUI version xe(wxe). Not supported for gxe.||~v130R~
    #                   "H":HighIntensity, "Y":Underline, "R":Reverse, "N":Ignore. Default is "Y".||~v130R~
    #     G_ITALIC   = :treatment of font style:5(or value of ITALIC_ESC parameter if used) for GUI version xe(wxe,gxe)||~v130R~
    #                   "H":HighIntensity, "Y":Italic, "R":Reverse, "N":Ignore. Default is "Y".||~v130R~
    #####################################################################||~v130R~
    ### sample ###########################                            ||~v130R~
    #####################################################################||~v130R~
    #Linux                                                            ||~v130R~
    #SHCMD = "source-highlight"                                       ||~v130R~
    #Windows                                                          ||~v130R~
     SHCMDA= '""w:\highlight-4.4-x64\highlight.exe"" -q --out-format=ansi'||~v130R~
    #ENTER =0                                                         ||~v130R~
     BG    = 7                                                        ||~v130R~
     FG    = 0                                                        ||~v130R~
     BG_EOL= 6                                                        ||~v130R~
     BG_TAB= 10                                                       ||~v130R~
    #BG_UPD= 7                                                        ||~v130R~
    #BG_REVERSE_EDIT=14;                                              ||~v130R~
    #BG_REVERSE_BROWSE=1                                              ||~v130R~
    #CMAP  =__.04.10.__.01.__.14  # swap Red and Blue and Intense Green("__" means no change.)||~v130R~
    #RGB1 = 20e030                                                    ||~v130R~
    #RGB4 = 80f020                                                    ||~v130R~
    #RGB14= f01080                                                    ||~v130R~
    #ITALIC_ESC= 0                                                    ||~v130R~
    #C_BOLD=h                                                         ||~v130R~
    #C_ITALIC=n                                                       ||~v130R~
    #C_UNDERLINE=n                                                    ||~v130R~
    #G_BOLD=y                                                         ||~v130R~
    #G_ITALIC=hy                                                      ||~v130R~
     G_UNDERLINE=h                                                    ||~v130R~
     OPEN  = y                                                        ||~v130R~
     OPEN_EXT= c cpp java                                             ||~v130R~
    #######                                                           ||~v130R~
    PATH_EXT_cob=g:\src\xe\cobs                                       ||~v130R~
    #####################################################################||~v130R~
                                                                      ||~v124R~
    (d)source-highlight configuration.                                ||~v124R~||~v124R~
                                                                      ||~v124R~
       See source-highlight previously shown about detail information.||~v124R~
       This section is brief description related to xe.               ||~v124R~
       Source-highlight v3.1.8 also supports COBOL.                   ||~v130R~
       Check lang.map to find the correspondence of file extension and lang.||~v130R~
                                                                      ||~v124R~
       .lang.map                                                      ||~v124R~
                                                                      ||~v124R~
        Each lines are extension = lang-file format to map extension to input file language syntax file.||~v130R~
        Following lines are for the c-like language.                  ||~v130R~
        ###                                                           ||~v124R~
            cpp = cpp.lang                                            ||~v124R~
            c = cpp.lang                                              ||~v124R~
            C = cpp.lang                                              ||~v124R~
            cc = cpp.lang                                             ||~v124R~
            h = cpp.lang                                              ||~v124R~
            hh = cpp.lang                                             ||~v124R~
            H = cpp.lang                                              ||~v124R~
            hpp = cpp.lang                                            ||~v124R~
                                                                      ||~v124R~
        To utilize COBOL,on assumption its extension is cob, insert following line into lang.map file.||~v124R~
            cob  = cobol.lang                                         ||~v124R~
                                                                      ||~v124R~
                                                                      ||~v124R~
       .default.style                                                 ||~v124R~
                                                                      ||~v124R~
         How(color and font style) to display the comment, keyword etc. is coded in this file.||~v124R~
         You can select the other file by specifying --style-file= parameter on SHCMD of xe config file.||~v124R~
                                                                      ||~v124R~
        ###                                                           ||~v124R~
            keyword blue b ;    // for language keywords              ||~v124R~
            type darkgreen ;    // for basic types                    ||~v124R~
            string red f ;      // for strings and chars              ||~v124R~
            comment brown i ;   // for comments                       ||~v124R~
            number purple ;     // for literal numbers                ||~v124R~
            preproc darkblue b ;    // for preproc directives (e.g. #include, import)||~v124R~
            symbol darkred ;    // for simbols (e.g. <, >, +)         ||~v124R~
            function black b;   // for function calls and declarations||~v124R~
            cbracket red;       // for block brackets (e.g. {, })     ||~v124R~
                                                                      ||~v124R~
       .esc.outlang                                                   ||~v124R~
                                                                      ||~v124R~
         Default outlang of source-highlight is html,                 ||~v124R~
         xe use esc.outlang by specifying "-f esc" parameter.         ||~v124R~
         This file describe ESC code corresponding font style and color.||~v124R~
         To use italic,you have to change the following line of default esc.outlang file.||~v124R~
            italics "$style"                                          ||~v124R~
         is modified to                                               ||~v124R~
            italics "5$style"                                         ||~v124R~
         "5" is xe's default, that may any value except 0(Normal),1(Bold),4(Underline)||~v124R~
         if you specify it on ITALIC_ESC= line of xe config file.     ||~v124R~
                                                                      ||~v124R~
         See later (f) for ANSI definition for color esc code.        ||~v124R~
                                                                      ||~v124R~
    (e) André Simon's Highlight configuration.                        ||~v124R~||~v130R~
                                                                      ||~v124R~
       .tested using v2.7.                                            ||~v124R~
       .configuration folder is registered at installation.           ||~v124R~
       .see his homepage about customization.                         ||~v124R~
        ANSI output style is hard-coded in ansigenerator.cpp as following.||~v124R~
        (see next (f) about meaning of "31","34",...)                 ||~v124R~
        To customize color mapping,use CMAP option of xe's cfg file.  ||~v124R~
        Bold,Italic... style may not be avalable.(1st parameter:"00") ||~v124R~
                                                                      ||~v124R~
          styleTagOpen.push_back(getOpenTag("00", "31")); //str       ||~v124R~
          styleTagOpen.push_back(getOpenTag("00", "34"));//number     ||~v124R~
          styleTagOpen.push_back(getOpenTag("00", "34"));//sl comment ||~v124R~
          styleTagOpen.push_back(getOpenTag("00", "34"));//ml comment ||~v124R~
          styleTagOpen.push_back(getOpenTag("00", "35"));//escapeChar ||~v124R~
          styleTagOpen.push_back(getOpenTag("00", "35"));//directive  ||~v124R~
          styleTagOpen.push_back(getOpenTag("00", "31"));//directive string||~v124R~
          styleTagOpen.push_back(getOpenTag("00", "30"));//linenum    ||~v124R~
          styleTagOpen.push_back(getOpenTag("00", "00"));//symbol     ||~v124R~
                                                                      ||~v124R~
          getMatchingOpenTag(unsigned int styleID)                    ||~v124R~
            return (styleID)?getOpenTag("00", "32", ""):getOpenTag("00", "33");||~v124R~
          ("32" or "33" by $KW_LIST class of .lang file in langDef dir)||~v124R~
                                                                      ||~v124R~
    (f) ANSI definition.                                              ||~v124R~
                                                                      ||~v124R~
       Note. Red and Blue bit is exchanged on Windows.                ||~v124R~
                                                                      ||~v124R~
           style                                                      ||~v124R~
             NORMAL     '0'                                           ||~v124R~
             BOLD       '1'                                           ||~v124R~
             UNDERLINE  '4'                                           ||~v124R~
             BLINK      '5'                                           ||~v124R~
             REVERSE    '7'                                           ||~v124R~
             INVISIBLE  '8'                                           ||~v124R~
           foreground colors                                          ||~v124R~
             30 black                                                 ||~v124R~
             31 red                                                   ||~v124R~
             32 green                                                 ||~v124R~
             33 yellow                                                ||~v124R~
             34 blue                                                  ||~v124R~
             35 magenta                                               ||~v124R~
             36 cyan                                                  ||~v124R~
             37 white                                                 ||~v124R~
           background colors                                          ||~v124R~
             40 black                                                 ||~v124R~
             41 red                                                   ||~v124R~
             42 green                                                 ||~v124R~
             43 yellow                                                ||~v124R~
             44 blue                                                  ||~v124R~
             45 magenta                                               ||~v124R~
             46 cyan                                                  ||~v124R~
             47 white                                                 ||~v124R~
                                                                      ||~v124R~
                                                                      ||~v124I~
#if defined(W32) || defined(UNX)
   .Remote file access.
        If you use "sshfs" to mount remote files,                     ||~v30BR~
        you can access remote more easily than using xehosts as shown below.||~v30BR~
        However, it seems that development of sshfs has ended.        ||~v30BR~
        Instead, there is rclone.                                     ||~v30BR~
	#ifdef W32                                                        ||~v30BR~
        .sshfs (winget install SSHFS-Win.SSHFS-Win)                   ||~v30BR~
		  net use Y: \\sshfs\sak@127.0.0.1!2222                       ||~v30BR~
          xe Y:                                                       ||~v30BR~
		  net use Y: /delete                                          ||~v30BR~
        .rclone                                                       ||~v30BR~
		  setup confi file by "rclone config"                         ||~v30BR~
		  -->c:\Users\sakStyle\AppData\Roaming\rclone\rclone.conf     ||~v30BR~
                [ubuntu18]                                            ||~v30BR~
                type = sftp                                           ||~v30BR~
                host = 127.0.0.1                                      ||~v30BR~
                user = sak                                            ||~v30BR~
                port = 2222                                           ||~v30BR~
                pass = ....                                           ||~v30BR~
                                                                      ||~v30BR~
		  rclone.exe mount ubuntu18:/home/sak Y:                      ||~v30BR~
		  (Windows では --daemon オプションは無く Ctrl+C unmount されます。xe は別窓で実行)||~v30BR~
          (On Windows, missing "--daemon" option, Ctrl+C will unmount. Run xe in another terminal window.)||~v30BR~
          After mounted                                               ||~v30BR~
		    xe Y:                                                     ||~v30BR~
    #else  //LNX                                                      ||~v30BR~
        .sshfs                                                        ||~v30BR~
          sudo mkdir /remote_local                                    ||~v30BR~
          chmod 777 /remote_local                                     ||~v30BR~
      	  sshfs sak@remote:/home/sak /remote_local  #mount            ||~v30BR~
          xe /remote_local                                            ||~v30BR~
          fusermount -u /remote_lcal                        #unmount  ||~v30BR~
        .rclone                                                       ||~v30BR~
          sudo mkdir /remote_local                                    ||~v30BR~
          chmod 777 /remote_local                                     ||~v30BR~
          rclone  mount  ubuntu18:/home/sak /remote_local --daemon    ||~v30BR~
          xe /remote_local                                            ||~v30BR~
          umount /remote_local                                        ||~v30BR~
          config ~/.config/rclone/rclone.conf (cretae by "rclone config") is||~v30BR~
          as followings.                                              ||~v30BR~
			[ubuntu18]                                                ||~v30BR~
				type = sftp                                           ||~v30BR~
				host = 10.1.1.2                                       ||~v30BR~
				pass = ....                                           ||~v30BR~
				shell_type = unix                                     ||~v30BR~
        After mounted                                                 ||~v30BR~
		    xe /remote_local                                          ||~v30BR~
    #endif //LNX                                                      ||~v30BR~
                                                                      ||~v124I~
    #if defined(W32)                                                  ||~v124R~
      .UNC notation is available between Windows for shared files.     ||~v124I~
                                                                      ||~v124I~
       e.g. \\server/ip-addr\shared-folder\...\file-name              ||~v124I~||~v128R~
            If password required to login, use explorer or            ||~v124I~
            net use \\server command.                                 ||~v124I~
            e.g. net use \\server1\folder1 password /user:domainname\userid||~v124I~||~v128R~
       WindoswXP configuration has IdleTimeout(Default 15 min) and    ||~v124I~
       maximum logon user count(XP-Home:5, XP-Pro:10),                ||~v124I~
       confirm it by "net config server" cmd.                         ||~v124I~
       Timeout can be set by ""net config server /autodisconnect:" cmd.||~v124I~
       Network search may be cause of delays of getting file.         ||~v124I~
       To check server name use "net view" cmd.                       ||~v124I~
       "net view \\server" lists shared folders.                      ||~v124I~
                                                                      ||~v124I~
       Try to inactivate WebClient service if connection time is too long.||~v124I~
       (I do not know why but this dose not occur if share-name is 1 byte drive letter)||~v124I~
       If WebClient is active, Windows try to use HTTP port(80).      ||~v124I~
       Under the condition of server firewall deny the request,       ||~v124I~
       long time-out-delay takes place.                               ||~v124I~
       (To invalidate WebClient service,                              ||~v124I~
          ControlPnel-->Management-->Service, Select WebClient and set invalid.)||~v124I~
       You may set accept/reject port:80 on server side to avoid timeout wait.||~v124I~
                                                                      ||~v124I~
       Special treatment to UNC notation.                            ||~v124I~
         All UNC format has pseudo drive "\:".                         ||~v124I~
         You can set current-drive and current-path by CD cmd or "." line cmd||~v124I~
         on dir-list.                                                 ||~v124I~
         e.g. After "cd \\server\dir",                                 ||~v124I~||~v128R~
              \:abc is \\server\dir\abc, \:\abc is \\server\abc.       ||~v124I~
              After \: if once CD setting completed,                   ||~v124I~
              ("." line cmd set both current drive and path)           ||~v124I~
              xyz is \\server\dir\xyz.                                 ||~v124I~
         Current-drive is not saved, but                              ||~v124I~
         current-dir setting for \: is saved and effective on the next session.||~v124I~
         /R cmdline option recovers current drive for also drive "\:".||~v124I~
                                                                      ||~v124I~
         Undoable delete dir-list line cmd("d" and "/") renames the file||~v124I~
         at the remote dir for later undo operation if "OPT UNDEL" is on.||~v124I~
         Actual deletion takes place at session termination.          ||~v124I~
                                                                      ||~v124I~
    #endif //W32                                                      ||~v124R~
                                                                      ||~v124I~
      .Access remote file by remoteID registered on hosts file.
       Default hosts file is xehosts on work directory(::xehosts).
       e.g. edit file1.txt in home dir on 192.168.2.15 by "e a1:file1.txt"||~v128R~
            with hosts file has following line
         a1 192.168.2.15  user001 pswdpswd
                                                                      ||~126FI~
    #ifdef LNX                                                        ||~126FI~
                                                                      ||~126FI~
        For the case you have no privilege to mount shared resource,  ||~126FI~
        register remote (Samba or Windows) server in ::xehosts.       ||~126FI~
          e.g.  "w764  192.168.8.22 usrskt pswd  share=sharename       ||~126FI~||~v128R~
        share parameter means to use smbclient(Linux version)/JCIFS(Android version)  to access the remote system.||~126FI~
        Android version's NODe cmd without password option is used for asynchronous connection test.||~126FI~
          NODe hodtID                                                 ||~126FI~
        Samba is faster than FTP.                                     ||~v128R~
        At first confirm connectablity to Samba Server by           ||~v128R~
            smbclient -L hostname      hostname: ip-address or name on /etc/hosts||~v128R~
        Check ::xeftplog if it dose not work.                         ||~v128R~
        ::xeftplog is written by "xe -ftpw" cmd.                      ||~v128R~
                                                                      ||~126FI~
    #endif //LNX                                                      ||~126FI~
                                                                      ||~126FI~
      .password in the line is encrypt if edit and saved by xe.
       For more safety, use NODe cmd to set volatile password         ||~126FR~
       which is not saved to ::xehost and effective in the session.   ||~126FR~
         NODe host-ID password (e.g. "nod ftpsvr1 CabZyx")             ||~126FI~||~v128R~
      .undo line cmd of dirlist is not yet supported except for TSO.
      .Use Samba(smbclient) to access Windows from Linux.             ||~v128R~
       (Register the host on xehost with SHARE= parameter.)           ||~v128R~
       OR                                                             ||~v128R~
        mount Windows share like as                                   ||~v128R~
          mkdir /WinDriveE                                            ||~v128R~
          mount -t cifs //192.168.1.12/E /WinDriveE -o username=yourname||~v128R~
        Now you can access Windows share name by "xe /WinDriveE"      ||~v128R~
      .SUBmit cmd for remote file is executed locally except for TSO file.
       TSO file is executed on the system.
      .XPRrint cmd for remote file prints locally.                    
      .command line parameter for ftp.                                ||~v124R~
          /Fx[t][:hosts]  :x=0:FTP is not used, x=1:FTP avail(without log)
                           x=w:output ftplog, x=a:ftplog by append mode.
                          :t:debug option not to delete temp file for ftp get.
                          :hosts:hosts filename for xe.
          Default is /F1:xehosts(xehosts on work directory)
      .hosts file format.
       -write comment after #
         except for puTTY option.                                     ||~v124I~
           #@PSFTP=  : PSFTP command  if psftp is not on PATH environment.||~v124I~
           #@SSH=all : means the following line's default SSH option is SSH=Y.||~v124I~
           To comment out these line specify as following.             ||~v124I~
             ##@PSFTP=~/psftp                                         ||~v124I~
             ##@SSH=all                                               ||~v124I~
       -operand is remoteid, remote address, userID, password in this sequence
        with space delimiter.
       -remoteid is 2 to 8 byte. CaseSensitive except for TSO system.
       -remote address is ip-address or host name on native hosts file.
        you can use URL format.dress or host name on native hosts file.||~v128R~
       -if password is not required, code "" in the position.         
       -optional parameter following password.(keyword=value format)
        HOME=/xxx/yyy    :home dir
        TZ=[-]xxx/yyy    :time zone. e.g. TZ=-0900                    ||~v128R~
                          File date is exchanged by GMT, but in Japan 
                          AIX is set to GMT=JST. So TZ=0000 should be
                          specified.
        DBCS={EUC|SJIS|  :required when ls subcmd of ftp output is Japanese.||~v124R~
             cp930|cp939| cp930 and cp939 is for the case remote is TSO(Japanese).||~v124R~
             OTHER}       user external converter such as ICU.(See "EBCDIC translation")||~v124R~
                                                                      ||~v124R~
        TSO=portNo[opts] :specify portNumber if target is TSO         ||~v124R~
                          opts: R:destination is not TurnkeyMVS but Real Mainframe.||~v124R~
                                S:On TurnkeyMVS, use not sub tool of TurnkeyMVS but TSO SUBMIT cmd.||~v124R~
                          e.g. TSO=23R, TSO=3270S                      ||~v124R~||~v128R~
        LS="xx"/NLST     :specify FTP sub cmd correspond to unix cmd "ls -la".||~v124R~
                          default is "dir". use this option when FTP server dose not support dir subcmd.||~v124R~
                          LS=NLST means LS="ls -la".                  
                          (I heard RFC defines that ls subcmd returns file name only.)
        ICMD="cmds"      :specify FTP subcmds issued just after login.
                          insert "\n" if the string contains multiple commands.
                          When the case FTP server is configured to reject passive mode
                          and FTP client default is passive mode,     
                          you can login successfully but transfer cmd such as ls will fail
                          with "no route to host".                    
                          ICMD=passive toggles passive and active mode.
        SSH={Y|N}        :use PSFTP as FTP client(Y) or not(N)        ||~127ER~
        SHARE=sharename  :shared resource name. specify when the remote is Samba server or Windows.||~126FI~
        P=portNo         :specify port number other than SSH default(22) if needed.||~v129R~
                                                                      ||~126FI~
sample)

    ###################################################################
    #sample hosts file for xe
    #                                                                 ||~v124I~
    #format                                                           ||~v124I~
    #                                                                 ||~v124I~
    #@PSFTP=g:\src\putty060\psftp.exe   #specify PSFTP command string if psftp.exe is not on %PATH%||~v124I~
    ##@PSFTP=/home3/putty-0.62/unix/psftp #(Linux sample)             ||~126FR~
    ##@PSFTP=~/psftp                    #This is comment because this line data dose not start by "#@xxx" pattern.||~v124R~
    #@SSH=all                           #specify to use PSFTP as default for the following destination after this lines.||~v124R~
    ##@SSH=all                          #This is a sample of comment out of #@xxx statement||~v124I~
    #                                                                 ||~v124I~
    # RemoteID  RemoteAddress UserID  Password [option] #Comment
    #   option:HomeDir     :e.g.HOME=/tmp/myhome                      ||~v128R~
    #                           HOME='herc01.source.asm' (default Dataset of MVS)||~v124R~
    #         :TimeZone    :e.g.TZ=-0900                              ||~v128R~
    #         :DBCS        :e.g.DBCS=EUC     :Remote codepage=JapaneseEUC||~v124R~||~v128R~
    #                           DBCS=SJIS    :Remote codepage=ShiftJIS(Japanese)||~v124R~
    #                           DBCS=CP930   :Remote is TSO and use Japanese katakana extension||~v124R~
    #                           DBCS=CP939   :Remote is TSO and use Japanese English lower case letter extension||~v124R~
    #                           DBCS=OTHER   :Remote is TSO and use the converter other than CP939/CP930.||~v124I~
    #                                         (specify charset by CHARSET_CFG parm on xe3270.cfg)||~v124I~
    #         :TSO=portno  :e.g.TSO=3270       TurnkeyMVS destination port may be 3270||~v124R~||~v128R~
    #                           TSO=3270S      "S" is submit option(use TSO SUBMIT cmd)||~v124R~
    #                                          without "S", use sub tool of TurnkeyMVS||~v124R~
    #                           TSO=23R        R means target is Real MVS(TSO/E through tn3270))||~v124R~
    #                                          (use TSO SUBMIT cmd.)  ||~v124R~
    #         :LS="xx"/NLST:e.g.LS=NLST        specify any "list directory" cmd string(max 12 byte).||~v124R~||~v128R~
    #                                          default is dir, NLST means "ls -la".||~v124R~
    #         :ICMD="cmds" :e.g.ICMD="passive" specify cmd to be issued after opened session||~v124R~||~v128R~
    #                                          insert "\n" between commands when multiple.||~v124R~
    #         :SSH={Y|N}   :e.g.SSH=Y          use PSFTP for this destination. "N":use FTP.||~v124R~||~126FR~||~v128R~
    #         :SHARE=name  :e.g.SHARE=disk1    use smbclient to this destination(SAMBA server/Windows).||~126FR~||~v128R~
    #Sample                                                           ||~v124R~
    # a1 192.168.2.5  mizumaki machi TZ=0900                          ||~v124R~
    # hm localhost    herc01   ""        TSO=3270 home='herc01.maclib.asm'||~v124R~
    # t6 S390T6       PURPLE   PSWDPSWD  TSO=23R  home='SAK01.TEST.ASM',DBCS=CP939||~v124R~
    # h390  Linux390  user1    PSWD1     SSH=Y                        ||~v124I~
    # w64   SmbSvr      user1    ""      SHARE=d                      ||~126FR~
	# w7p   192.168.2.12 w7user pswd     share=p                      ||~126FR~
	# gcty  ftp.geocities.jp ybbusr pswd SSH=N                        ||~v128R~
    # centos7r localhost    root pswd  SSH=Y P=2222                   ||~v129R~
    ###################################################################

    (Note) Because using ftp to access remote, proper environment setup is required.
           DNS may cause slow response because xe open session each access.
           To avoid DNS reference, register your local address on remote /etc/hosts.
           And confirm resolve sequence of /etc/host.conf is host then DNS
           like as "order hosts,bind".
                                                                      ||~v124I~
	      .vsftp on FC12.                                             ||~v124I~||~127ER~
                                                                      ||~v124I~
           "dir" cmd for /home may fail by "226 Transfer done (but failed to open directory)."||~v124I~
           SELinux may protect /home. See syslog(/var/log/messages.   ||~v124I~
             ... avc: denied { read } for ... comm="vsftpd" name="home" ...||~v124I~
           Current configuration status is shown by "getsebool -a".   ||~v124I~
           To allow to list /home,enter "setsebool -P ftp_home_dir 1".||~v124I~
           Even if ftp_home_dir is off, LS=NLST option on xehosts file will enable||~v124I~
           to get the attribute of sub-dir of /home if "ls -la" cmd return the entry "."(current dir).||~v124I~
           And configure to chroot to out of home dir.                ||~127ER~
           These depends on your system.                              ||~v124I~
                                                                      ||~v124I~
          .Tiny FTP v0.52d(By Mr. H.Nomura)                           ||~v124I~
           When remote is TinyFTP daemon, adjust the configuration as following.||~v124I~
             Setup->System Setup->reconnection  "connection check interval":OFF||~v124I~
             Setup->User   Setup->prohibit      all "directory operation" OFF||~v124I~
             Setup->User   Setup->name          "use password":ON     ||~v124I~
             Setup->User   Setup->file          "allow all files":ON to access out of the home-dir.||~v124I~
           "e hostname:/" cmd access the home-dir.                    ||~v124R~
                                                                      ||~v124I~
          .PSFTP of puTTY. (SSH2 was tested under v063)               ||~v124I~||~127ER~
            Followings are additional option for PSFTP.               ||~v124I~
                                                                      ||~v124I~
            #@PSFTP=g:\src\putty060\psftp.exe                         ||~v124I~
                Use when psftp is not on PATH environment variable.   ||~v124I~
                Additional option will be specified. Default is shown on ::xeftplog.||~v124I~
                (::xeftplog is written when xe starts with -ftpw command line option)||~v124I~||~v128R~
            #@SSH=all                                                 ||~v124I~
                Set ssh=Y as default for the destination after this line.||~v124I~
            dest1 192.168.2.5  user pswd  ssh=Y                       ||~v124I~
                Specify ssh=Y(use PSFTP) or ssh=N(use FTP) for each destination.||~v124I~
                If missing, #@SSH= is applied as default.              ||~v124I~
          (Note)                                                      ||~v124I~
            .Specify like as ##@PSFTP=... to comment out.             ||~v124I~
            .At first SSH connection to the destination, use native psftp command on console window||~v124I~
             to save host-key in cache.(e.g. psftp -l USER -pw PSWD)   ||~v124R~||~v128R~
             (You may be requested reply of "yes/no" to cache SSH key, it could not reply from xe)||~127MR~
             -xe use -batch option of psftp, but Windows version will hang up if no host-key||~v124I~
              is in cache. Linux version end with error, so xe display the error reason.||~v124I~
            .psftp current version dose not display slink information on dir-list.||~v124I~
            .::xehost update is effective from the next session.      ||~v124I~

   .Remote Shell(rsh).
      .Under permission allowed environmment, rsh is available for    
       not interactive command.
       Command-result-output panel is used like as telnet screen logging
       cmd output. It is convenient to collect information from multiple
       remote hosts.
       e.g.) rsh -l user1 10.1.1.2 ls                                 ||~v30BR~


#if defined(W32) || defined(LNX)

   .TSO support.                                                    ||~v124R~
     !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!              
     !!!  Deprecated                                 !!!              
     !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!              
                                                                      ||~v124R~
          It is available to download, update then upload the file on TSO/E using tn3270+s3270+ind$file.||~v124R~
          Use this function if you favorite although 3270-FTP response is slow a little bit.||~v124R~
          For a while you should try this function on your private DataSet.||~v124I~
                                                                      ||~v124I~
     !!!  THERE IS NO WARRANTY IN THIS FREE SOFTWARE !!!              ||~v124I~
     !!!  NO LIABILITY FOR CONSEQUENTIAL DAMAGES.    !!!              ||~v124R~
          I'm not responsible for any DAMAGEs caused by using this software.||~v124I~
                                                                      ||~v124R~
          Due to my environment, only Windows version was tested.     ||~v124R~
          And the logon procedure initially calls ISPF primary options menu.||~v124R~
          Adjust logon procedure definition in xe3270.cfg if your environment is||~v124R~
          native TSO READY mode                                       ||~v124R~
                                                                      ||~v124R~
            (--For TurnkeyMVS--)                                      ||~v124R~
              "Turnkey MVS" is MVSR38J on PC("Hercules" emulates 370 instruction).||~v124R~
              This title line means the things for TurnkeyMVS only.   ||~v124R~
                                                                      ||~v124R~
      (0) Prerequisite                                                ||~v124R~
                                                                      ||~v124R~
            You have to install s3270.                                ||~v124R~
            x3270/c3270/wc3270 is not available.                      ||~v124R~
#ifdef W32                                                            ||~v124R~
            This function use "s3270.exe" which runs under cygwin.    ||~v124R~
            You have to install cygwin.                               ||~v124R~
#endif                                                                ||~v124R~
            (--For TurnkeyMVS--)                                      ||~v124R~
              If you use x3270,install x3270 and setup xe3270.cfg to use x3270.||~v124R~
              When x3270 is used,you can see the x3270 screen, but xe loose the focus||~v124R~
              in some linux version. In that case you may minimize the x3270 window.||~v124R~
              #ifdef W32                                              ||~v124R~
                  You need to start X-server process before starting xe3270 if you use x3270.||~v124R~
                  (or else xe3270 fails by "Pipe Closed" or "Timeout")||~v124R~
              #endif                                                  ||~v124R~
                                                                      ||~v124R~
            You have to install also IND$FILE to MVS.                 ||~v124R~
            Try IND$FILE cmd with no operand on TSO cmdline panel.    ||~v124R~
                                                                      ||~v124R~
            APVUFILE supports DBCS(DoubleByteCharacterSet), but IND$FILE converts||~v124R~
            ASCII to EBCDIC byte bye byte.                            ||~v124R~
            See (6) about DBCS environment,                           ||~v124R~
            or if you have a problem of ASCII space(0x20) is not converted to EBCDIC blank(0x40).||~v124R~
                                                                      ||~v124R~
            (--For TurnkeyMVS--)                                      ||~v124R~
                Warning:ind$file106 returns "TRANS00file not opened"  ||~v124R~
                if HostFile D/S or member dose not exist, but ind$file111 wait infinitely.||~v124R~
                xe confirm the existence by LISTDS command in order to avoid infinite wait.||~v124R~
                                                                      ||~v124R~
            At first, it is better to do connection test using s3270 alone as following.||~v124R~
              .Start s3270 with no operand.                           ||~v124R~
              .Enter                                                  ||~v124R~
                (--For TurnkeyMVS--)                                  ||~v125R~
                 connect hostname:3270                                ||~v125R~
               Hostname is "localhost" etc. which is defined on hosts file||~v124R~
               (/etc/hosts or c:windows\system32\drivers\etc/hosts).  ||~v124R~
               Status line changed to indicate connected (4th char='C')?||~v124R~
               "ascii" command is used to see current screen.         ||~v124R~
               You can see logon prompt screen?                       ||~v124R~
              .Logon procedure depends on your environments.         ||~v124R~
               Keyboard-Input-Strings are entered by "String" cmd.    ||~v124R~
               For ex, to input "LOGON UID001", enter as following.   ||~v124R~
                 String "LOGON UID001\n"                              ||~v124R~
               "\n" appended means Enter key, enter "Enter" on the next line if you did not appended it.||~v124R~
               If you requested password input, type also it using "String" cmd.||~v124R~
               If you want use PA1 to break REENTER prompt, enter as following.||~v124R~
                 PA(1)                                                ||~v124R~
               To use PF key, enter as following.                     ||~v124R~
                 PF(3)                                                ||~v124R~
                                                                      ||~v124R~
               (--For TurnkeyMVS--)                                   ||~v124R~
                  Enter like as following to logon                    ||~v124R~
                   String "logon herc01\n"                            ||~v124R~
                                                                      ||~v124R~
              .Transfer is a cmd for FTP.                             ||~v124R~
                 Transfer Direction=Receive HostFile=xxxx(yyy) LocalFile=zzz Exist=replace||~v124R~
               When transfer is executed, TSO is to be TSO READY mode.||~v124R~
               If, your environment, TSO LOGON PROCEDURE initially calls ISPF menu panel,||~v124R~
               enter "String =6\n" to change to command shell panel.  ||~v124R~
                                                                      ||~v124R~
      (1) Setup for xe.                                               ||~v124R~
           .Define destination ID on "::xehosts" file(xehosts in xe's working directory).||~v124R~
                                                                      ||~v124R~
            e.g. T4E     Heaven        HERC01  ""        TSO=23R      ||~v124R~||~v128R~
                 T4J     192.168.2.33  HERC02  password  TSO=23R  HOME='TEST.SRC.ASM'||~v124R~
                                                                      ||~v124R~
                                                                      ||~v124R~
            "TSO=" means target is 3270 and operand "23" specifies port number,||~v124R~
            usually it may be 23(telnet).                             ||~v124R~
            "R" means destination is Real Mainframe.                  ||~v124R~
            (xe's SUB cmd uses TSO SUBMIT cmd if "R" specified)       ||~v124R~
                                                                      ||~v124R~
            (--For TurnkeyMVS--)                                      ||~v124R~
              Specify as TSO=3270.                                    ||~v124R~
              TunkeyMVS prepares submit tool to enable submit local file.||~v124R~
              If you did not setup for submit tool, specify TSO=3270S to use TSO SUBMIT cmd||~v124R~
                                                                      ||~v124R~
            If missing "TSO=xxxx", target is tcpip:ftp remote such as linux.||~v124R~
            Host-id(first item) for TSO is case insensitive.          ||~v124R~
            Password is encrypted when saved.                         ||~v124R~
                                                                      ||~v124R~
            HOME is used to reduce DSN input.                         ||~v124R~
            For example, "e h01:" opens the member list of the DataSet specified as HOME,||~v124R~
            "e h01:abc" opens the member.                             ||~v124R~
            HOME can be changed temporarily by CD command.              ||~v124R~||~v125R~
            To restore original home enter "CD h02:''"                ||~v124R~
            You may register multiple hostID entry for each DataSet accessed repeatedly.||~v124R~
            But logon to TSO is userID by userID, you'|| see the same screen||~v124R~
            on remote shell even when different destination is used.  ||~v124R~
                                                                      ||~v124R~
           .configure xe3270.cfg                                      ||~v124R~
                                                                      ||~v124R~
            (Check it once after created or modified using xe3270 alone as following.||~v124R~
               xe3270 1 -wxxdir                                       ||~v124R~
             xxdir :directory of xe3270.cfg                           ||~v124R~
             If no format error on xe3270.cfg,try logon from cmd prompt screen of xe3270.||~v124R~
               logon hostid,userid[/pswd]                             ||~v124R~
             this hostid is not of xehosts but of OS hosts file.      ||~v124R~
            )                                                         ||~v124R~
            The holding directory is specified by /W command line parameter of xe3270.||~v124R~
            When xe3270 is automatically started by xe that is workdir of xe(::xe3270.cfg).||~v124R~
                                                                      ||~v124R~
            Define logon procedure etc.                               ||~v124R~
            Especially to manipulate SPF information specify both SPF_LEVEL and CMD_MEMBLIST.||~v124R~
            Following options are defined for each destination.       ||~v124R~
              CMD3270, OPTIONS, LOGON_CMD, LOGOFF_CMD, LOGON_ERR, TEXT_PRELOGON, SUBMITWORK||~v124R~
            For e.g. LOGON_CMD.T4E is for the destination T4E on xehosts.||~v124R~||~v128R~
            Without ".dest", it defines default.                      ||~v124R~
            If you defined a option as destination specific, you should define the option wholely||~v124R~
            because any default definition lines are applied for the option.||~v124R~
                                                                      ||~v124R~
              CMD3270      :Specify cmd for s3270 if that is not on PATH env or s3270 option is required.||~v124R~
                            Default is S3270.                         ||~v124R~
                                                                      ||~v124R~
              (--For TurnkeyMVS--)                                    ||~v124R~
                            To use x3270(-script option is required for xe)||~v124R~
                            #ifdef LNX                                ||~v124R~
                                CMD3270 = "x3270 -script"             ||~v124R~
                            #else                                     ||~v124R~
                                CMD3270 = "bash c:\x3270script"       ||~v124R~
                                           c:\x3270script contents is as following||~v124R~
                                             DISPLAY=:0.0  x3270 -script||~v124R~
                            #endif                                    ||~v124R~
                                                                      ||~v124R~
              OPTIONS      :                                          ||~v124R~
                            NOGETCONF :Because I met transfer-error with TurnkeyMVS, xe3270 download twice||~v124R~
                                       then check both is same.       ||~v124R~
                                       This is now option for TSO/E.  ||~v124R~
                            NOPUTCONF :By the same reason,download the uploaded file to confirm that is same as||~v124R~
                                       uploaded source file.          ||~v124R~
                                       NOPUTCONF option skips those process.||~v124R~
                            (With confirm option, detected error is register on ::xe3270ftp.errlog with append mode.||~v124R~
                             For a while, you would be better to do with confirm option and check errlog)||~v124R~
              TEXT_PRELOGON:String to detect VTAM LOGON prompt screen.||~v124R~
                            xe3270 starts its logon procedure if found this string.||~v124R~
                            Without this option, when TSO session was lost by x22 ABEND,||~v124R~
                            you will get UNSUPPORTED FUNCTION error msg.||~v124R~
              LOGON_CMD    :defines xe3270 logon procedure.           ||~v124R~
                            Without this option, xe enter as following ||~v124R~
                              logon %userid%/%pswd%\n                 ||~v124R~
                              (%userid% and %pswd% is replaced by those of defined on ::xehosts)||~v124R~
                            xe3270 execute these line sequentially.   ||~v124R~
                            Each line format is                       ||~v124R~
                              Input string[,String to be detected[,Retry count]]||~v124R~
                            If "String to be detected" is specified and not found after "Retry count" snap||~v124R~
                            of screen, logon procedure terminate.     ||~v124R~
                            Default of retry count is 8 and it means about 3 seconds(sum of 100 to 700ms)||~v124R~
                            Append "\n" at last of string, that means Enter key.||~v124R~
                            For ex,  LOGON_CMD = "LOGON %user%\n"     ||~v124R~
                            You can specify 3270 Actions(3270 cmd) using "Action" prefix.||~v124R~
                            e.g.                                      ||~v128R~
                              LOGON_CMD = "Action MoveCursot(6,10)"   ||~v124R~
                            For only Enter action, you can omit action prefix.||~v124R~
                              LOGON_CMD = Enter                       ||~v124R~
                            See manuals of s3270,x3270-script for the other actions such as EraseEOF, Attn.||~v124R~
                            If you want to fill multiple fields, omit last \n.||~v124R~
                            After moving on the screen using Home, Tab etc. action,||~v124R~
                            use Enter action finally.                 ||~v124R~
                            s3270 supports also \t(TAB) and \r(Newline) \f(Clear).||~v124R~
                              ABC\t123\rXYZ\n                         ||~v124R~
                            This is same as                           ||~v124R~
                              ABC ; Action TAB ; 123 ; Action Newline ; XYX ; Enter||~v124R~
                            Use "Sleep" xe's action to avoid timing problem.||~v124R~
                            To wait 5 seconds                         ||~v124R~
                              LOGON_CMD ="Sleep 5000"[,string[,retry]]||~v124R~
                                                                      ||~v124I~
                            About prefix "|" of the message to be checked, see Ex-2.||~v124I~
                                                                      ||~v124R~
                            Ex-1. (The case of not TSO READY mode)    ||~v124R~
                                                                      ||~v124R~
                              LOGON_CMD = "Action Reset"           # For the case protection error status||~v124R~
                              LOGON_CMD = "Action Clear"           # confirm string input availability||~v124R~
                              LOGON_CMD = "APP TSO4\n",IKJ56700A   # Input on VTAM prompt panel||~v124R~
                                                                   # After input "APP TSO4", wait "IKJ56700A" appears.||~v124R~
                                                                   # (IKJ56700A ENTER USERID)||~v124R~
                              LOGON_CMD = %user%\n,"TSO/E LOGON"   # Input user id.||~v124R~
                                                                   # %user% is replaced by userid defined on xehosts.||~v124R~
                                                                   # Wait "TSO/E LOGON" appears.||~v124R~
                                                                   # "TSO/E" the string in the panel prompting input password||~v124R~
                                                                   # in my environment.||~v124R~
                              LOGON_CMD = %pswd%\n,ICH70001I       # %pswd% is replaced by password on xehosts.||~v124R~
                                                                   # Wait "ICH7001I ... LAST ACCESSED ..." appears.||~v124R~
                              LOGON_CMD = Enter,ISPF,3             # Press Enter key.||~v124R~
                                                                   # Wait ISPF primary options menu panel.||~v124R~
                                                                   # Retry screen check 3 times inserting 10mms sleep.||~v124R~
                              LOGON_CMD = "=6\n"                   # change to command shell panel||~v124R~
                                                                      ||~v124R~
                            Ex-2. (DIALOG ERROR case when s3270 is not enable-DBCS and HOST SPF is DBCS panel)||~v124R~
                                                                      ||~v124R~
                              LOGON_CMD = "Action Reset"           # For the case protection error status||~v124I~
                              LOGON_CMD = "Action Clear"           # confirm string input availability||~v124I~
                              LOGON_CMD = "APP TSO4\n",IKJ56700A      ||~v124R~
                              LOGON_CMD = %user%\n,"TSO/E LOGON"      ||~v124R~
                              LOGON_CMD = %pswd%\n,ICH70001I          ||~v124R~
                              LOGON_CMD = Enter,"|ISPF DIALOG ERROR" #error caused by DBCS environment||~v124I~
                                                                     #but changes to native TSO READY mode by Enter key.||~v124I~
                                                                     #prefix "|" means that it is not logon-fail||~v124I~
                                                                     #when the msg is not found,||~v124I~
                                                                     # and continue to next procedure.||~v124I~
                              LOGON_CMD = Enter,READY               #change to native TSO READY mode by Enter key.||~v124R~
                                                                    #any TSO cmd cause disconnection in this status.||~v124R~
                              LOGON_CMD = ISPF\n,"OPTION ===>"      #but ISPF is only available cmd,||~v124R~
                                                                    #change to English mode ISPF primary options menu panel.||~v124R~
                              LOGON_CMD = "=6\n","COMMAND SHELL"    #change to command shell panel.||~v124R~
                                                                      ||~v124R~
            LOGOFF_CMD     :define xe3270 LOGOFF procedure.           ||~v124R~
                            these are same as LOGON_CMD option.       ||~v124R~
                            If LOGOFF procedure is not defined,       ||~v124R~
                            xe enters PA(1) then after detected "READY", enter "logoff\n".||~v124R~
                                                                      ||~v124R~
                            (--For TurnkeyMVS--)                      ||~v124R~
                              PA1 breaks RPF and "READY" appears, but ||~v124R~
                                                                      ||~v124R~
                            PA1 may not break ISPF then unsupported cmd error may occur.||~v124R~
                                                                      ||~v124R~
                            Ex-1. (Automatically disconnected when exit from ISPF)||~v124R~
                              LOGOFF_CMD = "=X\n","*** VTAM"        #Set LOG/LIST option to bypass the LOG/LIST option input panel.||~v124R~
                                                                    #detect VTAM LOGON prompting panel||~v124R~
                                                                      ||~v124R~
                            Ex-2. (define LOG/LIST panel input)       ||~v124R~
                              logoff_cmd       = "=X\n",BATCH       #detect LOG/LIST option input panel||~v124R~
                              logoff_cmd       = "2\n","*** VTAM"   #Input LOG/LIST option, then wait ISPF exit.||~v124R~
                                                                      ||~v124R~
            LOGON_ERR      :defines error message to be detected in LOGON procedure and related actions.||~v124R~
                            define 3270 action without "Action" unlike procedure definition.||~v124R~
                            actions are concatenated using separator ";".||~v124R~
                            Action "CONTINUE" is pseudo action to do action when the string was detected.||~v124I~
                            The string is not the error indication but continue to the next procedure.||~v124I~
                            In the next example, if "HIT THE ENTER KEY" is detected,||~v124I~
                            do the action "Enter" the continue to next procedure.||~v124I~
                            Prefix "_" means that the string is checked if LOGON_CMD string is not found.||~v124I~
                            Without "_", the string is checked before LOGON_CMD string.||~v124I~
                            (LOGON fail if both LOGON_CMD and LOGON_ERR string are detected)||~v124I~
                                                                      ||~v124I~
                            Ex.                                       ||~v124R~
                              LOGON_ERR = IKJ56425I,"logoff\n"      #USERID IN-USE||~v124R~
                                                                    #reply LOGGOFF for "ENTER LOGON OR LOGOFF".||~v124R~
                              LOGON_ERR = IKJ56420I,"Action PF(3)"  #USERID NOT AUTHORIZED||~v124R~
                                                                    #PF3 means LOGOFF in the panel of sample case.||~v124R~
                              LOGON_ERR = IKJ56421I,"Action PF(3)"  #PASSWORD NOT AUTHORIZED||~v124R~
                              LOGON_ERR = IKJ56447I,"Action PF(3)"  #REENTER THE NEW PASSWORD ... FOR VERIFICATION||~v124R~
                              LOGON_ERR = IKJ56415I,"Action PF(3)"  #CURRENT PASSWORD HAS EXPIRED||~v124R~
                              LOGON_ERR = IKJ56710I,"Action PA(1);logoff\n"  #break by PA1 for the case "INVALID USERID REENTER"||~v124R~
                              LOGON_ERR = "_HIT THE ENTER KEY","Enter;Continue"       #||~v124I~
                                                                      ||~v124R~
            RETRY_UPLOAD   :read-check retry count when read check after put failed (without NOPUTCONFORM option)||~v124R~
                            Max:4 Min:0 Default:2                     ||~v124R~
            RETRY_DOWNLOAD :read retry count when dual read un-match (without NOGETCONFIRM option)||~v124R~
                            Max:4 Min:0 Default:2                     ||~v124R~
            SPF_LEVEL      :process level of SPF information of PDS members.||~v124R~
                            0:CMD_MEMBLIST is not used. TSO LISTDS is used to get member list.||~v124R~
                            1:SPF info is displayed on dir-list using XE4S001Z||~v124R~
                            2:SPF info is maintained using XE4S001Z ||~v124R~
                            default is 0 without CMD_MEMBLIST or 2 with CMD_MEMMLIST specified||~v124R~
            CMD_MEMBLIST   :TSO command to get PDS memberlist         ||~v124R~
                            Default is TSO native "LISTDS" command    ||~v124R~
                            Specify you LibraryDataSet name if you use XE4S001Z prepared by xe package.||~v124R~
                            Ex.                                       ||~v124R~
                              CMD_MEMBLIST  = "call 'TEST01.load.asm(xe4s001z)'"||~v124R~
            PS_UPLOAD      :Allow DSNAME as upload target             ||~v124R~
                            1:allow 0:prohibit(default)               ||~v124R~
                            I worried about "1" may accidentally cause corruption of PDS directory.||~v124R~
                            But when transfer target is DSNAME of PDS, it may be rejected by||~v124R~
                              TRANS17   Missing or incorrect TSO data set name: file transfer canceled||~v124R~
                            PS_UPLOAD=1 may have no problem.          ||~v124R~
            RSH_ECHO       :Echo output to RSH screen to also xe3270 screen.||~v124R~
                            1:Echo ON(Default),  0:Echo OFF.          ||~v124R~
                            No echo option makes better response of such as cursor move action.||~v124R~
            TIMEOUT_CONNECT:timeout to get 3270 connection by seconds ||~v124R~
                            commandline parm -C override this cfg parm||~v124R~
                            -1:infinite, default=10                   ||~v124R~
            TIMEOUT_LOGON  :timeout to LOGON after 3270 connection succeeded.||~v124R~
                            -1:infinite, default=5                    ||~v124R~
            TIMEOUT_LOGOFF :timeout to LOGOFF.                        ||~v124R~
                            -1:infinite, default=3                    ||~v124R~
            TIMEOUT_DISCONN:timeout to disconnect after LOGOFF.       ||~v124R~
                            -1:infinite, default=3                    ||~v124R~
            TIMEOUT_FTP    :timeout to file Send/Receive              ||~v124R~
                            commandline parm -T override this cfg parm||~v124R~
                            -1:infinite, default=600sec(10 min).      ||~v124R~
            TIMEOUT_TSOCMD :timeout to TSO cmd such as RENAME,ALLOC,FREE by xe's TSO cmd.||~v124R~
                            -1:infinite, default=30                   ||~v124R~
            CMD_ROW        :Command input line of ISPF command shell panel.||~v124R~
                            default=6 (start from 1)                  ||~v124R~
            CHARSET_CFG    :Conversion parameter file when use external converter such as ICU/iconv.||~v124R~
                            (See "EBCDIC translation")                ||~v124R~
                                                                      ||~v124R~
            e.g. ("#" on the top of line means comment line)          ||~v124R~||~v130R~
            #####################################################################||~v124I~
            # xe3270.cfg                                              ||~v124I~
            #          Following options may be destination specific by the format of OPT.dest=xxxx.||~v124I~
            #            CMD3270, OPTIONS, LOGON_CMD, LOGOFF_CMD, LOGON_ERR, TEXT_PRELOGON, SUBMITWORK||~v124I~
            #          For ex. LOGON_CMD.T4E is for the destination T4E on xehosts.||~v124I~
            #          That is default if destination specified.      ||~v124I~
            #                                                         ||~v124I~
            #     CMD3270        :cmd to call 3270(enclose by quotation if optional parameter required)||~v124I~
            #                     default is s3270                    ||~v124I~
            #                       To use x3270 on TurnkeyMVS -script option is required for xe.||~v124I~
            #                         Windows example                 ||~v124I~
            #                           CMD3270 = "bash c:\x3270script"||~v124I~
            #                             c:\x3270script contents is as following||~v124I~
            #                               DISPLAY=:0.0  x3270 -script||~v124I~
            #                         Linux example                   ||~v124I~
            #                           CMD3270 = "x3270 -script"     ||~v124I~
            #     OPTIONS        : NOGETCONF:bypass confirmation procedure to download twice then compare.||~v124I~
            #                    : NOPUTCONF:bypass confirmation procedure to download after upload then compare.||~v124I~
            #                      e.g. OPTIONS=NOGETCONF,NOPUTCONF    ||~v124I~||~v128R~
            #     TEXT_PRELOGON  :String to detect VTAM LOGON prompt screen.||~v124I~
            #                     Start logon procedure when this string is found on the screen.||~v124I~
            #                     e.g. TEXT_PRELOGON="Welcome to MVS3.8J"    # Turnkey-MVS VTAM panel detection||~v124I~||~v128R~
            #     LOGON_CMD      :defines xe3270 logon procedure.     ||~v124I~
            #                     Each line format is                 ||~v124I~
            #                       Input string[,String to be detected[,Retry count]]||~v124I~
            #                                                         ||~v124I~
            #                       e.g.  LOGON_CMD = "LOGON %user%\n",ICH70001I||~v124I~||~v128R~
            #                       %user% and %pswd% is replaced by those defined on ::xehosts.||~v124I~
            #                       \n:Enter, \r:Newline, \t:Tab, \f:Clear||~v124I~
            #                     You can specify 3270 Actions(3270 cmd) using "Action" prefix.||~v124I~
            #                       e.g.  LOGON_CMD = "Action Home"    ||~v124I~||~v128R~
            #                     To insert timing sleep,             ||~v124I~
            #                       e.g.  LOGON_CMD ="Sleep 5000".     ||~v124I~||~v128R~
            #                                                         ||~v124I~
            #                                                         ||~v124I~
            #     LOGOFF_CMD     :define xe3270 LOGOFF procedure.     ||~v124I~
            #                     same format as LOGON_CMD            ||~v124I~
            #                       e.g. LOGOFF_CMD = "=X\n","*** VTAM"||~v124I~||~v128R~
            #     LOGON_ERR      :defines error message to be detected in LOGON procedure and related actions.||~v124I~
            #                       e.g. LOGON_ERR = IKJ56420I,"Action PF(3)"  #USERID NOT AUTHORIZED||~v124I~||~v128R~
            #               Ex. (in my environment)                   ||~v124I~
            #                 LOGON_ERR = IKJ56425I,"logoff\n"        #REJECT BY ALREADY LOGON||~v124I~
            #                 LOGON_ERR = IKJ56420I,"Action PF(3)"    #REJECT BY USERID NOT AUTH||~v124I~
            #                 LOGON_ERR = IKJ56421I,"Action PF(3)"    #REJECT BY PSWD   NOT AUTH||~v124I~
            #                 LOGON_ERR = IKJ56447I,"Action PF(3)"    #REENTER THE NEW PASSWORD ... FOR VERIFICATION||~v124I~
            #                 LOGON_ERR = IKJ56415I,"Action PF(3)"    #CURRENT PASSWORD HAS EXPIRED||~v124I~
            #                 LOGON_ERR = IKJ56710I,"Action PA(1);logoff\n"  #invalid userid reenter||~v124I~
            #     RETRY_UPLOAD   :read-check retry count when read check after put failed.||~v124I~
            #                     Max:4 Min:0 Default:2               ||~v124I~
            #     RETRY_DOWNLOAD :read retry count when dual read unmatch||~v124I~
            #                     Max:4 Min:0 Default:2               ||~v124I~
            #     SPF_LEVEL      :process level of SPF information    ||~v124I~
            #                     0:CMD_MEMBLIST is not used.         ||~v124I~
            #                     1:SPF info is displayed on dir-list using XE4S001Z||~v124I~
            #                     2:SPF info is maintained using XE4S001Z||~v124I~
            #                     default is 0 without CMD_MEMBLIST or 2 with CMD_MEMBLIST specified||~v124I~
            #     CMD_MEMBLIST   :TSO command to get PDS memberlist   ||~v124I~
            #                     Default is TSO native "LISTDS" command||~v124I~
            #                     Specify you LibraryDataSet name if you use XE4S001Z prepared by xe package.||~v124I~
            #                       e.g.  CMD_MEMBLIST  = "call 'herc01.load.asm(xe4s001z)'"||~v124I~||~v128R~
            #     PS_UPLOAD      :Allow DSNAME as upload target       ||~v124I~
            #                     1:allow 0:prohibit(default)         ||~v124I~
            #                     "1" may accidentally cause corruption of PDS directory.||~v124I~
            #     RSH_ECHO       :Echo output to RSH screen to also xe3270 screen.||~v124I~
            #                      1:Echo ON(Default),  0:Echo OFF.   ||~v124I~
            #     CHASET_CFG     :FTP translation parameter filename  ||~v124I~
            #                                                         ||~v124I~
            #     TIMEOUT_CONNECT:timeout to get 3270 connection by seconds||~v124I~
            #                     commandline parm -C override this cfg parm||~v124I~
            #                     -1:infinite, default=10             ||~v124I~
            #     TIMEOUT_LOGON  :timeout to LOGON after 3270 connection succeeded.||~v124I~
            #                     default=5                           ||~v124I~
            #     TIMEOUT_LOGOFF :timeout to LOGOFF.                  ||~v124I~
            #                     default=3                           ||~v124I~
            #     TIMEOUT_DISCONN:timeout to disconnect after LOGOFF. ||~v124I~
            #                     default=3                           ||~v124I~
            #     TIMEOUT_FTP    :timeout to file Send/Receive        ||~v124I~
            #                     commandline parm -T override this cfg parm||~v124I~
            #                     default=600                         ||~v124I~
            #     TIMEOUT_TSOCMD :timeout to file Send/Receive        ||~v124I~
            #                     -1:infinite, default=30             ||~v124I~
            #     CMD_ROW        :Command input line of ISPF command shell panel.||~v124I~
            #                     default=6 (start from 1)            ||~v124I~
            #####################################################################||~v124I~
             CMD3270.T4J     = "s3270 -charset japanese-939 -km windows-932 -trace -tracefile c:\xe_wd\s3270.trc"||~v124I~
             CMD3270.T4E     = "s3270 -trace -tracefile c:\xe_wd\s3270.trc"||~v124I~
             CMD3270         = s3270                                  ||~v124I~
             OPTIONS         = NOPUTCONF,NOGETCONF                    ||~v124I~
            #RETRY_UPLOAD    = 2                                      ||~v124I~
            #RETRY_DOWNLOAD  = 2                                      ||~v124I~
             SPF_LEVEL       = 2                                      ||~v124I~
             CMD_MEMBLIST    = "call 'sak01.load.asm(xe4s001z)'"      ||~v124I~
             PS_UPLOAD       = 1                    #allow upload to dataset without member specification||~v124I~
             RSH_ECHO        = 0                    #no echo to xe3270 for input from RSH||~v124I~
             charset_cfg     = c:\xeebc.map                           ||~v124I~
            #######                                                   ||~v124I~
            #text_prelogon   ="Welcome to MVS3.8J"    # Turnkey-MVS VTAM panel detection||~v124I~
            text_prelogon      ="*** (T4)"            #VTAM panel detection||~v124I~
            text_prelogon      ="UNSUPPORTED FUNCTION"  #VTAM panel detection||~v124I~
            ###### LOGON procedure for the case initially ISPF panel opened #########||~v124I~
            #                                                         ||~v124I~
               LOGON_CMD.t4j = "Action Reset"           # Reset protection error status||~v124I~
               LOGON_CMD.t4j = "Action Clear"           # confirm string input availability||~v124I~
               LOGON_CMD.t4j = "APP TSO4\n",IKJ56700A   # Input on VTAM prompt panel||~v124I~
                                                    # After input "APP TSO4", wait "IKJ56700A" appears.||~v124I~
                                                    # (IKJ56700A ENTER USERID)||~v124I~
               LOGON_CMD.t4j = %user%\n,"TSO/E LOGON"   # Input user id.||~v124I~
                                                    # %user% is replaced by userid defined on xehosts.||~v124I~
                                                    # Wait "TSO/E LOGON" appears.||~v124I~
                                                    # "TSO/E" the string in the panel prompting input password||~v124I~
                                                    # in my environment.||~v124I~
               LOGON_CMD.t4j = %pswd%\n,ICH70001I       # %pswd% is replaced by password on xehosts.||~v124I~
                                                    # Wait "ICH7001I ... LAST ACCESSED ..." appears.||~v124I~
               LOGON_CMD.t4j = Enter,ISPF,3             # Press Enter key.||~v124I~
                                                    # Wait ISPF primary options menu panel.||~v124I~
                                                    # Retry screen check 3 times inserting 10mms sleep.||~v124I~
               LOGON_CMD.t4j = "=6\n"                   # change to command shell panel||~v124I~
            #                                                         ||~v124I~
            ## DIALOG ERROR case when s3270 is not enable-DBCS and HOST SPF is DBCS panel(for Japanese user)||~v124I~
            #                                                         ||~v124I~
               LOGON_CMD.t4e = "Action Reset"           # Reset protection error status||~v124I~
               LOGON_CMD.t4e = "Action Clear"           # confirm string input availability||~v124I~
               LOGON_CMD.t4e = "APP TSO4\n",IKJ56700A                 ||~v124I~
               LOGON_CMD.t4e = %user%\n,"TSO/E LOGON"                 ||~v124I~
               LOGON_CMD.t4e = %pswd%\n,ICH70001I                     ||~v124I~
               LOGON_CMD.t4e = Enter,"|ISPF DIALOG ERROR",3 #error caused by DBCS environment||~v124I~
                                                            #but changes to native TSO READY mode by Enter key.||~v124I~
                                                            #prefix "|" means that it is not logon-fail||~v124I~
                                                            #when the msg is not found,||~v124I~
                                                            # and continue to next procedure.||~v124I~
               LOGON_CMD.t4e = Enter,READY,3               #change to native TSO READY mode by Enter key.||~v124I~
                                                       #any TSO cmd cause disconnection in this status.||~v124I~
               LOGON_CMD.t4e = ISPF\n,"OPTION ===>"        #but ISPF is only available cmd,||~v124I~
                                                       #change to English mode ISPF primary options menu panel.||~v124I~
               LOGON_CMD.t4e = "=6\n","COMMAND SHELL"      #change to command shell panel.||~v124I~
            #define action if detected error msg in logon procedure   ||~v124I~
             LOGON_ERR   = IKJ56425I,"logoff\n"            #REJECT BY ALREADY LOGON||~v124I~
             LOGON_ERR   = IKJ56420I,"Action PF(3)"        #REJECT BY USERID NOT AUTH||~v124I~
             LOGON_ERR   = IKJ56421I,"Action PF(3)"        #REJECT BY PSWD   NOT AUTH||~v124I~
             LOGON_ERR   = IKJ56447I,"Action PF(3)"        #REENTER THE NEW PASSWORD ... FOR VERIFICATION||~v124I~
             LOGON_ERR   = IKJ56415I,"Action PF(3)"        #CURRENT PASSWORD HAS EXPIRED||~v124I~
             LOGON_ERR   = IKJ56710I,"Action PA(1);logoff\n"  #invalid userid reenter||~v124I~
             LOGON_ERR = "_HIT THE ENTER KEY","Enter;Continue"       #||~v124I~
            ##                                                        ||~v124I~
            #define logoff procedure                                  ||~v124I~
            ## for the case that Automatically disconnected when exit from ISPF||~v124I~
             LOGOFF_CMD = "Action Home"            #move cursor to home position||~v124I~
             LOGOFF_CMD = "Action EraseEOF"        #enable to input string||~v124I~
             LOGOFF_CMD = "=X\n","*** VTAM",3      #Set LOG/LIST option to bypass the LOG/LIST option input panel.||~v124I~
            #                                      #detect VTAM LOGON prompting panel||~v124I~
            ##SPF LOG/LIST option set required case                   ||~v124I~
            #logoff_cmd    = "=X\n",BATCH       #detect LOG/LIST option input panel||~v124I~
            #logoff_cmd    = "2\n","*** VTAM"   #Input LOG/LIST option, then wait ISPF exit.||~v124I~
            #                                                         ||~v124I~
            #TIMEOUT_CONNECT = 20                                     ||~v124I~
             TIMEOUT_LOGON   = 20                                     ||~v124I~
             TIMEOUT_LOGOFF  =  5                                     ||~v124I~
            #TIMEOUT_FTP     = 600                                    ||~v124I~
            #TIMEOUT_TSOCMD  = 60                                     ||~v124I~
            #CMD_ROW         =6                                       ||~v124I~
            #####################################################################||~v124I~
                                                                      ||~v124R~
           .Install XE4S001Z                                          ||~v124R~
            XE4s001Z is required if you want to display SPF information||~v124R~
            (userid,timestamp,line count) on dir-list                 ||~v124R~
            and to update after edit.                                 ||~v124R~
            Assemble XE4S001Z then put LoadModule to a Library.       ||~v124R~
            Then configure CMD_MEMBLIST parameter of xe3270.cfg.      ||~v124R~
            Referencing MACLIB is as follows(SP macros are used).     ||~v124R~
              // EXEC PGM=IFOX00,PARM='...,SYSPARM=NOSNAP',...        ||~v124R~
              //SYSLIB   DD   DSN=SYS2.MACLIB,DISP=SHR                ||~v124R~
              //         DD   DSN=SYS1.MACLIB,DISP=SHR                ||~v124R~
              //         DD   DSN=SYS1.AMODGEN,DISP=SHR               ||~v124R~
            (SYSPARM=NOSNAP is required to make ULSNAP debug macro to NOP)||~v124R~
            Or, try to LKED appended OBJECT.                          ||~v124R~
            Upload XE4S001Z.obj by binary mode of LRECL=80,then execute LKED.||~v124R~
                                                                      ||~v124R~
              //TESTLKED  PROC MBR=                                                   00040000||~v124R~
              //********************************************************************//00050000||~v124R~
              //*            LKED                                                  *//00060000||~v124R~
              //********************************************************************//00070000||~v124R~
              //********************************************************************//00127000||~v124R~
              //*            LINK EDIT ( AMODE=31,RMODE=ANY )                      *//00128000||~v124R~
              //********************************************************************//00129000||~v124R~
              //LKED   EXEC  PGM=IEWL,                                                00130000||~v124R~
              //       PARM='LET,LIST,MAP,XREF,RENT'                                  00140001||~v124R~
              //SYSLMOD  DD  DISP=SHR,DSN=TEST.SAK.LOAD(&MBR)                         00170000||~v124R~
              //SYSUT1   DD  DSN=&&SYSUT1,UNIT=SYSDA,                                 00180000||~v124R~
              //             SPACE=(1024,(200,50),,CONTIG,ROUND),DCB=BLKSIZE=1024     00190000||~v124R~
              //SYSPRINT DD  SYSOUT=*                                                 00200000||~v124R~
              //SYSLIN   DD DISP=OLD,DSN=TEST.SAK.OBJ(&MBR)                           00211000||~v124R~
              //         PEND                                                         00220000||~v124R~
              //SS1 EXEC TESTLKED,MBR=XE4S001Z COND=ONLY                              00230000||~v124R~
              //*                                                                     00260000||~v124R~
                                                                      ||~v124R~
              (--For TurnkeyMVS--)                                    ||~v124R~
                How to install load module XE4S001Z from aws tape.    ||~v124R~
                  -Vary tape unit to ONLINE from MVS console.         ||~v124R~
                     V 480,ONLINE                                     ||~v124R~
                  -Submit XE4S001Z.jcl                                ||~v124R~
                   use tool "sub" embedded with TurnkeyMVS,           ||~v124R~
                   or Submit from TSO after send to MVS using 3270FTP.||~v124R~
                   (modify DSNAME of //DD2. aws tape is created as BLKSIZE=19069)||~v124R~
                  -mount tape unit after request msg issued on MVS console.||~v124R~
                   Enter as following from HERCULES console.          ||~v124R~
                     devinit 480 (path)XE4S001Z.aws                   ||~v124R~
                     path:directory path of XE4S001Z.aws on your PC.  ||~v124R~
                Refer MAKEAWS.jcl to make aws tape if you modified and re-assembled XE4S001Z.||~v124R~
                                                                      ||~v124R~
                                                                      ||~v124R~
      (2) Access TSO.                                                 ||~v124R~
                                                                      ||~v124R~
        (2-1) FTP.                                                    ||~v124R~
            Specify TSO destination ID on Edit/Browse command etc.    ||~v124R~
                                                                      ||~v124R~
            e.g. e h02:'herc01.source.asm(memb1)'                     ||~v124R~||~v128R~
                 e herc01:source.asm(memb1)                           ||~v124R~
                                                                      ||~v124R~
            At the first access to TSO, "xe3270.exe" is started which help communication||~v124R~
            between xe and 3270 emulator.                             ||~v124R~
#ifdef LNX                                                            ||~v124R~
            Terminal emulator on which xe3270 start is set by ini file.||~v124R~
            Default is determined by searching gnome-terminal, konsole and xterm in this sequence.||~v124R~
#endif                                                                ||~v124R~
            NamedPipe with multiple instances is used to communicate with xe.||~v124R~
            Thread starts for each target(system + TSO-UserID) and communicate with||~v124R~
            3270 emulator process by stdin/stdout redirection pipe.   ||~v124R~
            This allows that multiple xe use same TSO-UserID and one xe session use||~v124R~
            multiple TSO-UserID.                                      ||~v124R~
            Even after xe ended, xe3270.exe remains active and wait next request from xe.||~v124R~
            You can check the status in DOS-prompt window of xe3270.exe.||~v124R~
            Optionally(/F parm of xe) those are logged in "::xe3270.log" file.||~v124R~
                                                                      ||~v124R~
            New command xe's "TSO" supports to handle communication trouble.||~v124R~
                                                                      ||~v124R~
            Same command but different syntax can be entered through xe3270 DOS prompt screen,||~v124R~
            Use 3270 cmd such as String, Enter, PA(1) etc. on the screen||~v124R~
            to respond to 3270 prompt such as ENTER-,REENTER-.        ||~v124R~
                                                                      ||~v124R~
        (2-2) Remote Shell.                                           ||~v124R~
                                                                      ||~v124R~
         (a) You can switch =6 panel to TSO mode. In TSO mode native MVS TSO command||~v124R~
             such as "listalc" is entered without xe's TSO command prefix.||~v124R~
                                                                      ||~v124R~
             =6.xxx [FS3|FST|NFS]                                     ||~v124R~
                xxx :destination defined on ::xehosts.                ||~v124R~
                FS3 :start by 3270 keyboard mode of following (b).    ||~v124R~
                FST :start by TSO keyboard mode of following (c).     ||~v124R~
                NFS :not fullscreen mode.                             ||~v124R~
                Default is same as  "TSO xxx: logon FS".              ||~v124R~
                                                                      ||~v124R~
             Without FS(FullScreen) option, only response msg lines are displayed.||~v124R~
             The remote shell initially starts with CAPs ON.          ||~v124R~
             (But letter just after "\" is back to lowercase          ||~v124R~
              for the case such as \n is alternative of Enter key input)||~v124R~
             Ascii/Snap command displays current 3270 screen.         ||~v124R~
             Screen is protected when Fullscreen mode.                ||~v124R~
             Logoff command switches back to local command mode.      ||~v124R~
             ("TSO xxx logoff"  xxx:destination)                      ||~v125R~
                                                                      ||~v124R~
             Not the same operation as real SPF panel, taking some labor,||~v124R~
             you can control ISPF panel.                             ||~v124R~
             Input strings on the cursor position and s3270 Action commands||~v124R~
             are entered from command line of xe's panel.             ||~v124R~
             xe check at first the string on command input line,      ||~v124R~
             and process it if it is defined as xe's command.         ||~v124R~
             To input strings duplicated with xe's cmd,               ||~v124R~
             use ">" prefix for TSO/s3270 input.                      ||~v124R~
             String enclosed by double quotation is input to TSO,     ||~v124R~
             String with "Action" prefix is input to s3270.           ||~v124R~
                                                                      ||~v124R~
             For ex. "exec" TSO command is duplicated to xe's EXEcute cmd.||~v124R~
             Enter as following to send to TSO.                       ||~v124R~
               >exec 'herc01.source.clist(helloc)'\n                  ||~v124R~
             "=2" is xe's =2, but                                     ||~v124R~
               >=2\n                                                  ||~v124R~
               "=2\n"                                                 ||~v124R~
             are types on TSO screen.                                 ||~v124R~
               Action Home                                            ||~v124R~
               >Action Home                                           ||~v124R~
               >>Home                                                 ||~v124R~
             are s3270 Action cmd.                                    ||~v124R~
                                                                      ||~v124R~
             You can omit "Action" prefix for the following actions, ||~v124R~
             and xe supports abridged cmd.                            ||~v124R~
             Action cmds are case insensitive.                        ||~v124R~
             e.g.) eraseeof                                             ||~v124R~||~v128R~
                   EEOF                                                 ||~v124R~
                   >EEOF                                                ||~v124R~
                   >>H                                                  ||~v124R~
                   >>D                                                  ||~v124R~
                   >Ins                                                 ||~v124R~
                                                                      ||~v124R~
             Some letters are alternative of key typing in the string input.||~v124R~
               Enter : \n,  TAB : \t,  Newline : \r,  Clear : \f      ||~v124R~
                                                                      ||~v124R~
               Action         Abridge  Function                       ||~v124R~
               -------------  -------  -------------------------------------||~v124R~
               "Attn"         "Att"    //attention key                ||~v124R~
               "BackSpace"    "BS"     //move cursor left (or send ASCII BS)||~v124R~
               "BackTab"      "BT"     //tab to start of previous input field||~v124R~
               "CircumNot"    "Not"    //input "^" in NVT mode, or "?"(Not sign) in 3270 mode||~v124R~||~v125R~
               "Clear"        ""       //clear screen                 ||~v124R~
               "DeleteField"  "DF"     //delete the entire field      ||~v124R~
               "Delete"       "DC"     //delete character under cursor (or send ASCII DEL)||~v124R~
               "Down"         ">D"     //move cursor down             ||~v124R~
               "Enter"        ""       //Enter AID (or send ASCII CR) ||~v124R~
               "EraseEOF"     "EEOF"   //erase to end of current field||~v124R~
               "EraseInput"   "EINP"   // erase all input fields      ||~v124R~
               "Erase"        "ERA"    //erase previous character (or send ASCII BS)||~v124R~
               "FieldEnd"     "FEND"   //move cursor to end of field  ||~v124R~
               "HexString"    "Hex"    //(hex_digits) insert control-character string||~v124R~
               "Home"         ">H"     //move cursor to first input field||~v124R~
               "Insert"       ""       //set insert mode              ||~v124R~
               "Key"          ""       //(keysym) insert key keysym   ||~v124R~
               "Left"         ">L"     //move cursor left             ||~v124R~
               "MoveCursor"   "MVC"    //(row, col) move cursor to (row, col)||~v124R~
               "Newline"      "NL"     //move cursor to first field on next line (or send ASCII LF)||~v124R~
               "PA"           ""       //PA n/PA(n)  Program Attention AID (n from 1 to 3)||~v124R~
               "PF"           ""       //PF n/PF(n)  Program Function AID (n from 1 to 24)||~v124R~
               "Reset"        "Res"    //reset locked keyboard        ||~v124R~
               "Right"        ">R"     //move cursor right            ||~v124R~
               "String"       "Str"    //(string) insert string (simple macro facility)||~v124R~
               "SysReq"       "Sys"    //System Request AID           ||~v124R~
               "Tab"          ""       //move cursor to next input field||~v124R~
               "ToggleInsert" "Ins"    //toggle insert mode           ||~v124R~
               "Transfer"     "FTP"    //(option=value...) file transfer||~v124R~
               "Up"           ">U"     //move cursor up               ||~v124R~
                                                                      ||~v124R~
               (Note). There is no way to detect Insert-mode-status.||~v124R~
                       So, Insert key is assigned to ToggleIsert.     ||~v124R~
                                                                      ||~v124R~
             In TSO mode local command can be entered by prefixing ":"||~v124R~
             For example, ":grep ABC *.c".                             ||~v124R~
                                                                      ||~v124R~
         (b) You can change keyboard mode to 3270 like.               ||~v124R~
                                                                      ||~v124R~
               3270---*::SO1 T4E:(128.101.207.9) ------------------------------- 001-(   5)-102=Ins||~v124R~
               ===>                                                                       ===>HALF||~v124R~
               10:21:35 ===>> PF(3)                                   ||~v124R~
                  MENU  UTILITIES  COMPILERS  OPTIONS  STATUS  HELP   ||~v124R~
                                                                      ||~v124R~
                                           ISPF PRIMARY OPTION MENU   ||~v124R~
                OPTION ===>                                           ||~v124R~
                                                                      ||~v124R~
                0  SETTINGS      TERMINAL AND USER PARAMETERS            User ID . : USER002||~v124R~
                1  VIEW          DISPLAY SOURCE DATA OR LISTINGS         Time. . . : 10:20||~v124R~
                2  EDIT          CREATE OR CHANGE SOURCE DATA            Terminal. : 3277KN||~v124R~
                3  UTILITIES     PERFORM UTILITY FUNCTIONS               Screen. . : 1||~v124R~
                4  FOREGROUND    INTERACTIVE LANGUAGE PROCESSING         Language. : ENGLISH||~v124R~
                5  BATCH         SUBMIT JOB FOR LANGUAGE PROCESSING      Appl ID . : XXX||~v124R~
                6  COMMAND       ENTER TSO OR WORKSTATION COMMANDS       TSO logon : TSOLPS2||~v124R~
                7  DIALOG TEST   PERFORM DIALOG TESTING                  TSO prefix: USER002||~v124R~
                8  LM FACILITY   LIBRARY ADMINISTRATOR FUNCTIONS         System ID : T4E1||~v124R~
                9  IBM PRODUCTS  IBM PROGRAM DEVELOPMENT PRODUCTS        MVS acct. : **NONE**||~v124R~
                                                                      ||~v124R~
                                                                      ||~v124R~
                     ENTER X TO TERMINATE USING LOG/LIST DEFAULTS     ||~v124R~
                                                                      ||~v124R~
                                                                      ||~v124R~
                                                                      ||~v124R~
                                                                      ||~v124R~
               U F U C(128.101.207.9) I 4 24 80 3 13 0x0 -            ||~v124R~
               ok                                                     ||~v124R~
               ********** END OF FILE *********************************************************||~v124R~
                                                                      ||~v124R~
             Alt+z is assigned to hotkey as default.                  ||~v124R~
             Press again to back to xe's keyboard mode.               ||~v124R~
             "3270" at top-left corner indicates 3270 mode.           ||~v124R~
             Following table is key and 3270 function.                ||~v124R~
             These are little bit different from PCOM default          ||~v124R~
             for the co-operation with xe.                            ||~v124R~
             For ex, "Attn" is by Shift+Esc, cursor movement by Shift+arrow-key.||~v124R~
             Screen is protected, input from command input line.      ||~v124R~
             Strings on cmd line is send to TSO by Enter key.         ||~v124R~
             xe check at first the input string, and process it       ||~v124R~
             if it is cmd defined to xe.                              ||~v124R~
             For ex,                                                  ||~v124R~
               HEX                   : xe's HEX cmd                   ||~v124R~
               >HEX , "HEX"          : HEX is send to TSO             ||~v124R~
               >>HEX                 : >HEX is send to TSO            ||~v124R~
             To input 3270 action, use Alt+a key after input action on cmd line.||~v124R~
                                                                      ||~v124R~
             ISPF accepts TSO cmd only on the command shell panel,    ||~v124R~
             so xe issues "=6" internally.                            ||~v124R~
             Panel may changed under the ground you are operation on remote shell panel.||~v124R~
                                                                      ||~v124R~
             (--For TurnkeyMVS--)                                     ||~v124R~
                                                                      ||~v124R~
               RPF has panels on which "=6" (2 letters) could not be input.||~v124R~
               xe dose not issue "=6".                                ||~v124R~
               Use FTP/LISTC on READY mode screen, and use another userID||~v124R~
               to operate on RPF panel.                               ||~v124R~
                                                                      ||~v124R~
             3270mode key and function.                               ||~v124R~
             +----------------------------------------------------------------+||~v124R~
             | Key      ||(No modifier)|Shift+      | Alt+        | Ctrl+     |||~v124R~
             |----------||-------------|------------|-------------|-----------|||~v124R~
             | Enter    ||Enter/NewLine|            |             |           |||~v124R~
             | R-Ctrl   ||Enter/NewLine|            |             |           |||~v124R~
             | Esc      ||             |Attn        |SysReq       |           |||~v124R~
             | Tab      ||Tab          |BackTab     |             |           |||~v124R~
             | Backspace||Erase        |            |             |           |||~v124R~
             | a        ||             |            |Action       |           |||~v124R~
             | c        ||             |            |Reset        |           |||~v124I~
             | q        ||             |            |(TSO-kbd)    |           |||~v124R~
             | r        ||             |            |NewLine      |           |||~v124I~
             | Insert   ||ToggleInsert |            |PA(1)        |           |||~v124R~
             | Delete   ||Delete       |            |             |DeleteWord |||~v124R~
             | Home     ||Home         |            |PA(2)        |           |||~v124R~
             | End      ||EraseEOF     |DeleteField |EraseInput   |           |||~v124R~
             | Left     ||             |Left        |PreviousWord |           |||~v124R~
             | Right    ||             |Right       |NextWord     |           |||~v124R~
             | Up       ||             |Up          |             |           |||~v124R~
             | Down     ||             |Down        |             |           |||~v124R~
             | PgUp     ||             |            |PA(3)        |           |||~v124R~
             | F1       ||PF(1)        |PF(13)      |             |           |||~v124R~
             | F2       ||PF(2)        |PF(14)      |             |           |||~v124R~
             | F3       ||PF(3)        |PF(15)      |             |           |||~v124R~
             | F4       ||PF(4)        |PF(16)      |             |           |||~v124R~
             | F5       ||PF(5)        |PF(17)      |             |           |||~v124R~
             | F6       ||PF(6)        |PF(18)      |             |           |||~v124R~
             | F7       ||PF(7)        |PF(19)      |             |           |||~v124R~
             | F8       ||PF(8)        |PF(20)      |             |           |||~v124R~
             | F9       ||PF(9)        |PF(21)      |             |           |||~v124R~
             | F10      ||PF(10)       |PF(22)      |             |           |||~v124R~
             | F11      ||PF(11)       |PF(23)      |             |           |||~v124R~
             | F12      ||PF(12)       |PF(24)      |             |           |||~v124R~
             +----------------------------------------------------------------+||~v124R~
                                                                      ||~v124R~
             (Note). Right-Ctrl key option changes the function of Enter key||~v124R~
                     and R-Ctrl key.                                  ||~v124R~
                     For other keys, basically xe process the key when ||~v124R~
                     strings are  remains on command input line.      ||~v124R~
                                                                      ||~v124R~
                     Enter/Rctrl:For execute function, xe process the string||~v124R~
                                 if cursor is on the cmd input line and data remains on the line.||~v124R~
                     Home       :jump to xe's home is cursor is not on there.||~v124R~
                     Backspace  :xe process the key if cursor is on the cmd input line||~v124R~
                                 but not on home position             ||~v124R~
                     Ins/Del/End:xe process the key if cursor is on the cmd input line||~v124R~
                                  and data remains on the line.       ||~v124R~
                                                                      ||~v124R~
         (c) By Alt+q on 3270 mode, keyboard changes to more TSO specific mode.||~v124R~
                                                                      ||~v124R~
             Typed character is sent to 3270 immediately,             ||~v124R~
             Alt+a(Action cmd input) is not usable.                   ||~v124R~
             Cursor is moved by cursor key without shift modifier key.||~v124R~
             Press Alt+q to back to 3270mode,3270 Hotkey to back to xe mode.||~v124R~
                                                                      ||~v124R~
      (3) Trouble handling.                                           ||~v124R~
                                                                      ||~v124R~
            (--For TurnkeyMVS--)                                      ||~v124R~
              .When Hercules/MVS is not yet started.                  ||~v124R~
              #ifdef LNX                                              ||~v124R~
                 "port 3270:Connection refused."                      ||~v124R~
                 "Connection rejected, no available 3270 device" if Hercules started.||~v124R~
              #else                                                   ||~v124R~
                 Connection wait until response returns with 10sec timeout.||~v124R~
              #endif                                                  ||~v124R~
              .When 3270 device is not ready.                         ||~v124R~
                 Connection wait until response returns with 10sec timeout.||~v124R~
                 ---> Activate from MVS console.                      ||~v124R~
                        V NET,INACT,ID=CUU0Cx,I                       ||~v124R~
                        V NET,ACT,ID=CUU0Cx                           ||~v124R~
                      You can enter these command using PF2.(Check it by "D PFK")||~v124R~
              .When reached to maximum 3270 session count.            ||~v124R~
                 "no available 3270 device"                           ||~v124R~
                 --->close one of opened TSO(3270 emulator) session to yield to xe.||~v124R~
                     Or, run "setupterm" to increase device count.     ||~v124R~
                     "startterm" defines initial start session count,and||~v124R~
                     SYS1.VTAMLST defines terminal initially activated.||~v124R~
              .When TSO is not active.                                ||~v124R~
                 "APPLICATION IS INACTIVE"                            ||~v124R~
                 --->"S TSO" from MVS console                         ||~v124R~
              .Keyboard Lock.                                         ||~v128R~
                 --->Enter Alt+r                                      ||~v128R~
                                                                      ||~v124R~
            .When invalid TSO-UserID used.                            ||~v124R~
               "INPUT NOT RECOGNIZED"                                 ||~v124R~
               --->Correct definition in ::xehost file then retry.    ||~v124R~
            .When invalid Password used.                              ||~v124R~
               "PASSWORD NOT AUTHOLIZED FOR USERID  REENTER -"        ||~v124R~
               --->Enter "TSO reply hostid valid-password" command.   ||~v124R~
                   (LOGON procedure in xe3270.cfg will break the wait status automatically||~v124R~
                   if you configured)                                 ||~v124R~
                   ::xehosts file would be corrected.                 ||~v124R~
                   You can check current screen using snap cmd from xe3270 DOS prompt screen.||~v124R~
            .When duplicated UserID logon.                            ||~v124R~
              "IKJ56425I LOGON REJECTED, USERID xxxx INUSE"           ||~v124R~
              --->"logoff" is issues internally when native TSO READY mode.||~v124R~
                  Configure xe3270.cfg to issue logoff when SPF mode. ||~v124R~
                  "C U=xxxx" from another TSO session if you have multiple userID||~v124R~
                  will immediately release the UserID which is interrupted.||~v124R~
                                                                      ||~v124R~
            (--For TurnkeyMVS--)                                      ||~v124R~
               "C U=xxxx" is entered on MVS console.                  ||~v124R~
                                                                      ||~v124R~
            .File I/O.                                                ||~v124R~
              Following error msg issued if DATASET or member is not found.||~v124R~
                TRANS17   Missing or incorrect TSO data set name: file transfer canceled||~v124R~
              When ABEND such as x37 occurred, following msg issued.    ||~v124R~
                TRANS19   Error reading or writing to host disk: file transfer canceled||~v124R~
              Unlike with TurnkeyMVS, indefinite wait will not occur. ||~v124R~
                                                                      ||~v124R~
              (--For TurnkeyMVS--)                                    ||~v124R~
                ind$file v106 returns FILE00 when FILE-NOT-FOUND. Other version may cause infinite wait.||~v124R~
                xe confirm existency before issue transfer request.   ||~v124R~
                See MVS console whether ABEND S013 etc occurred.       ||~v124R~
                                                                      ||~v124R~
            .When timeout received.                                   ||~v124R~
              Connection timeout is set to 10 seconds, transfer timeout is infinite.||~v124R~
              Even when timeout msg is retuned, thread may be waiting 3270 response.||~v124R~
              Until 3270 returns response thread is busy and is not available to accept cmd.||~v124R~
              When xe3270 dose not respond to any input from xe3270 DOS prompt screen,||~v124R~
              once cancel TSO user.                                   ||~v124R~
                C U=userid                                            ||~v124R~
              If no response yet, kill s3270 process.                 ||~v124R~
              #ifdef LNX                                              ||~v124R~
              	  use kill cmd.                                       ||~v124R~
              #else                                                   ||~v124R~
               	  use xkp tool embeded in this package.               ||~v124R~
                  to list process name and id enter "xkp -l".         ||~v124R~
                  to kill process enter "xkp pid".                    ||~v124R~
              #endif                                                  ||~v124R~
                                                                      ||~v124R~
                                                                      ||~v124R~
            If file save failed, xe dose not end the panel.            ||~v124R~
            Save temporarily to local file then exit xe.                ||~v124R~||~v125R~
            Later you may restore to original destination.            ||~v124R~
                                                                      ||~v124R~
      (4) Other miscellaneous.                                        ||~v124R~
                                                                      ||~v124R~
           .TSO file is opened with option CAP ON as default.         ||~v124R~
            To deny it use [CAP|NOCAP] option of Edit command         ||~v124R~
            or change the default by CAP command.                     ||~v124R~
            To enter lowercase letter when CAP ON, use Shift key.      ||~v124R~
                                                                      ||~v124R~
           .E/B command is treated as EN/BN for the file with RECFM=Fx,LRECL=80.||~v124R~
            For COBOL file,'N' is yet required like as ECN to maintenance automatically line number field.||~v124R~
            Alias command function allow to abbreviate optional parameter specification||~v124R~
            such as /P1(protect col.73-80 field).                     ||~v124R~
            For the file col.73-80 is not line-number but a part of data, it is convenient||~v124R~
            to specify f80 option to open. You may use e8 command as alternative.||~v124R~
            No conversion is done when upload/download if opened by binary mode||~v124R~
            (EB,EH command).                                          ||~v124R~
            /B option of Copy/Move/Append command support file transfer with no translation||~v124R~
            of EBCDIC and ASCII.                                      ||~v124R~
                                                                      ||~v124R~
           .Filename referencing function corresponds to MVS file naming convention.||~v124R~
            PC file naming specification is also available.           ||~v124R~
            *\ --> *.  **\ --> **.   ^*\ --> ^*.                      ||~v124R~
            e.g. "e *(m2)" opens  h01:'a.b.c(m2)'  on the screen opened  h01:'a.b.c(m1)',||~v124R~||~v128R~
                 **.d(m3) means  h01:'a.b.d(m3)'.                      ||~v124R~
                 "e ^*(m2)" on the 2nd panel opens  h01:'a.b.c(m2)'  when  h01:'a.b.c(m1)'||~v124R~
                 is opened on the 1st panel of the split screen,       ||~v124R~
                 ^*.**(m4)  means  h01:'a.b(m4)'.                      ||~v124R~
                                                                      ||~v124R~
           .JCL submitting is done using TSO SUBMIT cmd.              ||~v124R~
            On edit panel, updated contents is uploaded to the submit work DataSet||~v124R~
            then SUBMIT cmd is issued.                                ||~v124R~
              Submit work is 'XE3270.TEMP.SUBMIT' as default, this is configurable||~v124R~
              using SUBMITWORK statement in ::xe3270.cfg.             ||~v124R~
              e.g. SUBMITWORK="'DSNAME(MEMBNAME)'"                     ||~v124R~||~v128R~
              You can specify not only PDS member but also Sequential DataSet.||~v124R~
              If single quotation is missing, UserID on ::xehost is prefixed.||~v124R~
            In the other case, # line cmd on dir-list panel of TSO dataset,||~v124R~
            SUB cmd with operand specifying TSO DataSet(Member),      ||~v124R~
            and member opened but not yet updated,                    ||~v124R~
            TSO SUBMIT cmd is issued.                                 ||~v124R~
            Local file could not be submit, you have to upload it.    ||~v124R~
                                                                      ||~v124R~
           (--For TurnkeyMVS--)                                       ||~v124R~
              To bypass download overhead, you can use TSO SUBMIT cmd ||~v124R~
              by specifying on ::xehost like as                       ||~v124R~
                TSO=3270S                                             ||~v124R~
              You want to submit local file directly, set up submit tool of TurnkeyMVS||~v124R~
              as following.                                           ||~v124R~
                                                                      ||~v124R~
              JCL submitting is available using sub.bat provided by Turnkey-MVS.||~v124R~
              Call sub.bat from xe's SUB command.(place sub.bat on proper PATH).||~v124R~
              On the panel JCL file is opened, enter simply "SUB".     ||~v124R~
              On the panel local file is  opened,enter "SUB sub *".    ||~v124R~
              Alias command may be used for abbreviation.             ||~v124R~
              For example, after defined "Alias:JCL SUB sub.bat *" on =0.1 panel,||~v124R~
              "JCL" cmd submit the local file to TSO.                 ||~v124R~
              If you want to use "SUB" to submit to TSO, you have to change||~v124R~
              the command verb of submit function on ini file, then define||~v124R~
              "SUB" as alias command.                                 ||~v124R~
              To submit from dir-list, use "#" line cmd. Input on rename field||~v124R~
              is ignored. When using "%" linecmd, enter "sub"(tool name prepared||~v124R~
              by Turnkey-MVS) on rename field.                        ||~v124R~
                                                                      ||~v124R~
           .About SPF information.                                    ||~v124R~
            By specifying SPF_LEVEL and CMD_MEMBLIST on xe3270.cfg,   ||~v124R~
            SPF information is displayed on dir-list panel for the PDS member||~v124R~
            with RECFM=Fx and LRECL=80.                               ||~v124R~
            To display line count or files size is toggled by F6 key. ||~v124R~
            For SPF file line count is initially displayed.            ||~v124R~
            Use S+F6 to display USERID.                               ||~v124R~
            xe keeps the SPF information dropped by uploading by IND$FILE.||~v124R~
            And MM(modification level) is updated as following.       ||~v124R~
              If the member's COL73-80 is valid line-number, max value of COL79-80||~v124R~
              is assumed as MM value of the member.                   ||~v124R~
              When the member update session end, the MM+1 is back to the PDS directory.||~v124R~
              If the other member is replaced by Save/Replace command, the MM value is||~v124R~
              set to that member. When copy source has no SPF information such as PC file||~v124R~
              or when append to that member, target members MM is 1 up.||~v124R~
              By XCOpy command SPF info is copied, by XAPpend command target MM is 1 up.||~127AR~
            "a" line command is used to update Version and Modification level of the member.||~v124R~
            SPF subcommand of xe's TSO command may be used to update SPF info of||~v124R~
            whole(WILDCARD "*"/"?" is also supported) member of the PDS.||~v124R~
            For ex., use it to set SPF info at once for the PDS with no SPF info.||~v124R~
            Line count is gotten by reading the member.               ||~v124R~
            (RPF may require CreationDate, LastUpdateDate, Userid to display on the PDS list)||~v124R~
            To execute XE4S001Z as batch job, refer the following description to specify parameter.||~v124R~
            (copied from header part of source file XE4S001Z)         ||~127AR~
                                                                      ||~v124R~
            *(2)* UPDATE  SPF INFORMATION ON PDS DIRECTORY *********************    00330030||~v124R~
            * PARM FORMAT                                                           00340030||~v124R~
            *  '1,DSN(MEMB),VV,MM,CDATE,UDATE,UTIME,CURLINE,INITLINE,USER'          00350035||~v124R~
            *                                                                       00360034||~v124R~
            *  (START BY NOT NUMERIC MEANS MISSING OPERAND EXCEPT FOR USERID)       00370034||~v124R~
            *  (!!! RPF(V153) NEED CRE-DATE/UP-DATE/USERID TO DISPLY ON DIRLIST)    00380039||~v124R~
            *                                                                       00390034||~v124R~
            *  1:FUNCTION ID:UPDATE SPF INFO                                        00400030||~v124R~
            *  MEMB:REQUIRE. WILDCARD('*' or '?') IS AVAILABLE.                     00410030||~v124R~
            *  VV:VERSION                                                           00410030||~v124R~
            *     IF MISSING,KEEP CURRENT VALUE OR SET 0 IF NO PREVIOUS INFO        00420034||~v124R~
            *     +N FORMAT IS USED TO INCREMENT                                    00430030||~v124R~
            *  MM:MODIFICATION LEVEL                                                00440030||~v124R~
            *     IF MISSING,KEEP CURRENT VALUE OR SET 0 IF NO PREVIOUS INFO        00450034||~v124R~
            *     +N FORMAT IS USED TO INCREMENT                                    00460030||~v124R~
            *     'NOW' IS USED TO SET TO MAX VALUE OF COLUMN 79-80                 00470038||~v124R~
            *  CDATE:CREATED DATE                                                   00480030||~v124R~
            *     IF MISSING,KEEP CURRENT VALUE OR SET 0     IF NO PREVIOUS INFO    00490039||~v124R~
            *     'NOW' IS USED TO SET TO TODAY                                     00500034||~v124R~
            *     '000000' IS USED TO SET TO 0                                      00510039||~v124R~
            *  UDATE:LAST UPDATED DATE                                              00520030||~v124R~
            *     IF MISSING,KEEP CURRENT VALUE OR SET 0     IF NO PREVIOUS INFO    00530039||~v124R~
            *     'NOW' IS USED TO SET TO TODAY                                     00540030||~v124R~
            *     '000000' IS USED TO SET TO 0                                      00550039||~v124R~
            *  UTIME:LAST UPDATED TIME                                              00560030||~v124R~
            *     IF MISSING,KEEP CURRENT VALUE OR SET 0       IF NO PREVIOUS INFO  00570039||~v124R~
            *     'NOW' IS USED TO SET TO CURRENT TIME                              00580031||~v124R~
            *  CURLINE:CURRENT LINE COUNT                                           00590031||~v124R~
            *     IF MISSING,KEEP CURRENT VALUE OR SET 0 IF NO PREVIOUS INFO        00600033||~v124R~
            *     'NOW' IS USED TO SET CURRENT LINE COUNT BY READING MEMBER         00610034||~v124R~
            *  INITLINE:INITIAL LINE COUNT                                          00620035||~v124R~
            *     IF MISSING,KEEP CURRENT VALUE OR SET 0 IF NO PREVIOUS INFO.       00630035||~v124R~
            *     'NOW' IS USED TO SET CURRENT LINE COUNT BY READING MEMBER         00640035||~v124R~
            *  USER   :LAST UPDATED USER                                            00650031||~v124R~
            *     IF MISSING,KEEP CURRENT VALUE OR SET BLANK IF NO PREVIOUS INFO    00660031||~v124R~
            *SAMPLE JCL TO EXECUTE BATCH *                                          00670031||~v124R~
            *//GO EXEC PGM=XE4S001Z,PARM=('1','HERC01.SOURCE.ASM(MEMB),',           00680033||~v124R~
            *//        '01,21,061105,061125,2210,99,101,HERC01')                    00690031||~v124R~
            *//GO EXEC PGM=XE4S001Z,PARM=('1','HERC01.SOURCE.ASM(MEMB),',           00700033||~v124R~
            *//        'VV,+1,CDT,NOW,NOW,CLC,NOW,HERC01')                          00710035||~v124R~
            *//GO EXEC PGM=XE4S001Z,PARM='1,HERC01.SOURCE.ASM(MEMB),DEL'            00720035||~v124R~
            *//STEPLIB DD DISP=SHR,DSN=HERC01.LOAD.ASM                              00730031||~v124R~
                                                                      ||~v124R~
      (5) Limitation and Warning.                                     ||~v124R~
                                                                      ||~v124R~
         !! .To update PDS directory, the dataset should be allocated exclusively.||~v124R~
             (currently XE4S001z use DISP=OLD and dose not use RESERVE macro)||~v124R~
             Try again after closing SPF session.                     ||~v124R~
            .Upload is for PDS member only as default.                ||~v124R~
             Specify PS_UPLOAD parameter of xe3270.cfg to do it.      ||~v124R~
            .Long lines are split when upload to the file with RECFM=F(B).||~v124R~
             When uploading by binary mode, null char is appended to fill the||~v124R~
             line up to the record length if RECFM=Fx.                ||~v124R~
         !! .With TurnkeyMVS, I do not know the reason but file transfer sometimes miss,duplication||~v124R~
             or lack, some amount (it may be 24*76=1844) of lines.    ||~v124R~
             Following steps against it may not be necessary for the current TSO/E.||~v124R~
             If error was detected, error msg is written to ::xe3270ftp.errlog by append mode.||~v124R~
             Please, watch the file for a while.                      ||~v124R~
             NOPUTCONFIRM and NOGETCONFIRM option of cfg file will set to bypass these step.||~v124R~
                                                                      ||~v124R~
             xe3270 download twice for get request from xe and if both is same||~v124R~
             returns "success". If unmatch is detected, retry until the count||~v124R~
             specified by xe3270.cfg exhausted.                        ||~v124R~
             (retry will be stopped by Timeout)                       ||~v124R~
             If the retry count exhausted, the file for investigation is left in the||~v124R~
             temp dir(TEMP environment variable for Windows or /tmp for Linux).||~v124R~
             Those file naming is xe3270pc.xxxxxxxx.GETn.y.(xxxxxxxx:Member name)||~v124R~
             Usually you may retry the download request.              ||~v124R~
             For the case whole PDS download by xcopy command is interrupted,||~v124R~
             you may continue the xcopy adding /y- (skip the existing file) option.||~v124R~
                                                                      ||~v124R~
             For put request from xe,xe3270 confirm the output by re-downloading||~v124R~
             after upload.                                            ||~v124R~
             When SPF_LEVEL option is specified, xe checks current time stamp in SPF-info.||~v124R~
             If timestamp is not changed,bypass reloading.            ||~v124R~
                                                                      ||~v124R~
             (--For TurnkeyMVS--)                                     ||~v124R~
               Warning:RPF(V1M5R3) set HHMM only and dose not set SS in the directory.||~v124R~
                                                                      ||~v124R~
             When binary mode, null character appending is checked and ||~v124R~
             allow it as successful and the fact is displayed on the xe3270 DOS-prompt.||~v124R~
             And optionally logged.                                   ||~v124R~
             If 2 file is unmatch, Send&Receive are retried by the count specified at xe3270.cfg.||~v124R~
             If retry count is exhausted, the file for investigation are left on||~v124R~
             temp dir. Those file naming is xe3270pc.xxxxxxxx.PUTGETn.y.(xxxxxxxx:Membername)||~v124R~
             If put request is of save of file edit, save is rejected but||~v124R~
             contents are save on workdir(::xeftpwd) by the naming of ||~v124R~
             xxxxxxxx.timestamp even after you canceled save.         ||~v124R~
             Usually you may retry to upload request except following case.||~v124R~
             IND$FILE split long line when upload to fixed LRECL dataset.||~v124R~
             xe issue warning on xe3270 prompt screen and beep twice when detected split line,||~v124R~
             and upload is assumed as completed.                      ||~v124R~
             If the file contains the character which is not commutative for||~v124R~
             conversion between EBCDIC and ASCII.                     ||~v124R~
             Confirm using file compare tool(xe package includes compare tool "xfc")||~v124R~
                                                                      ||~v124R~
                                                                      ||~v124R~
         !! .Downloaded file is not locked.                           ||~v124R~
              Before upload xe confirms the file is not updated from the previous download time.||~v124R~
              (Timestamp check or compare by re-downloading depending on SPF_LEVEL option).||~v124R~
              Warning is issued before force to upload.               ||~v124R~
              SPF cannot detect that the file is downloaded, so the uploaded file||~v124R~
              may be overridden by SPF save operation.                 ||~v124R~
              xe provides "TSO Alloc/Free" command for the case dataset is a private.||~v124R~
              If un-match detected, both files are kept on work-dir(::xeftpwd)||~v124R~
              by the naming of xxxxxxxx.timestamp and xxxxxxxx.timestamp.UPDATECHK||~v124R~
              but you should save current update to another file.     ||~v124R~
                                                                      ||~v124R~
         !! .xe3270 depends on TSO logon procedure and reponse messages from LISTDS cmd etc.||~v124R~
             You can freely modify xe3270?.c                          ||~v124R~
                                                                      ||~v124R~
      (6) DBCS environments.                                          ||~v124R~
            .About the trouble that upload converts ASCII space(0x20) to other character than EBCDIC blank(0x40).||~v124R~
             It may occurs when you used -charset option of s3270 cmd.||~v124R~
             X3270.xad in s3270 source package defines translation table.||~v124R~
             In version 3.3, following charset #table defines ASCII=0 for multiple codepoints of EBCDIC>0x40.||~v124R~
               hebrew, bracket437, simplified-chinese, chinese-gb18030,||~v124R~
		       japanese, japanese-290, japanese-930, japanese-939, japanese-1390, japanese-1399||~v124R~
             Following update will fix it. (see in sample dir for whole charset.c)||~v124R~
             One line is added.(==> if (iso!=0x20)  //a#20080802 for the case apace->unprintable||~v124R~
                                                                      ||~v124R~
              /* Process a single character definition. */            ||~v124R~
              static void                                             ||~v124R~
              remap_one(unsigned char ebc, KeySym iso, remap_scope scope, Boolean one_way)||~v124R~
              {                                                       ||~v124R~
                  unsigned char cg;                                   ||~v124R~
                                                                      ||~v124R~
                  /* Ignore mappings of EBCDIC control codes and the space character. */||~v124R~
                  if (ebc <= 0x40)                                    ||~v124R~
                      return;                                         ||~v124R~
                                                                      ||~v124R~
                  /* If they want to map to a NULL or a blank, make it a one-way blank. */||~v124R~
                  if (iso == 0x0)                                     ||~v124R~
                      iso = 0x20;                                     ||~v124R~
                  if (iso == 0x20)                                    ||~v124R~
                      one_way = True;                                 ||~v124R~
                                                                      ||~v124R~
                  if (!auto_keymap || iso <= 0xff) {                  ||~v124R~
              #if defined(X3270_FT) /*[*/                             ||~v124R~
                      unsigned char aa;                               ||~v124R~
              #endif /*]*/                                            ||~v124R~
                                                                      ||~v124R~
                      if (scope == BOTH || scope == CS_ONLY) {        ||~v124R~
                          if (iso <= 0xff) {                          ||~v124R~
                              cg = asc2cg[iso];                       ||~v124R~
                                                                      ||~v124R~
                              if (cg2asc[cg] == iso || iso == 0) {    ||~v124R~
                                  /* well-defined */                  ||~v124R~
                                  ebc2cg[ebc] = cg;                   ||~v124R~
                                  if (!one_way)                       ||~v124R~
                                      cg2ebc[cg] = ebc;               ||~v124R~
                              } else {                                ||~v124R~
                                  /* into a hole */                   ||~v124R~
                                  ebc2cg[ebc] = CG_boxsolid;          ||~v124R~
                              }                                       ||~v124R~
                          }                                           ||~v124R~
                          if (ebc > 0x40) {                           ||~v124R~
                              ebc2asc[ebc] = iso;                     ||~v124R~
                              if (!one_way)                           ||~v124R~
                                  asc2ebc[iso] = ebc;                 ||~v124R~
                          }                                           ||~v124R~
                      }                                               ||~v124R~
              #if defined(X3270_FT) /*[*/                             ||~v124R~
                      if (iso <= 0xff && ebc > 0x40) {                ||~v124R~
                          /* Change the file transfer translation table. */||~v124R~
                          if (scope == BOTH) {                        ||~v124R~
                              /*                                      ||~v124R~
                               * We have an alternate mapping of an EBCDIC||~v124R~
                               * code to an ASCII code.  Modify the existing||~v124R~
                               * ASCII(ft)-to-ASCII(desired) maps.    ||~v124R~
                               *                                      ||~v124R~
                               * This is done by figuring out which ASCII||~v124R~
                               * code the host usually translates the given||~v124R~
                               * EBCDIC code to (asc2ft0[ebc2asc0[ebc]]).||~v124R~
                               * Now we want to translate that code to the||~v124R~
                               * given ISO code, and vice-versa.      ||~v124R~
                               */                                     ||~v124R~
                              aa = asc2ft0[ebc2asc0[ebc]];            ||~v124R~
                              if (aa != ' ') {                        ||~v124R~
                                  ft2asc[aa] = iso;                   ||~v124R~
                                  if (iso!=0x20)  //a#20080802 for the case apace->unprintable||~v124R~
                                  asc2ft[iso] = aa;                   ||~v124R~
                              }                                       ||~v124R~
                          } else if (scope == FT_ONLY) {              ||~v124R~
                              /*                                      ||~v124R~
                               * We have a map of how the host translates||~v124R~
                               * the given EBCDIC code to an ASCII code.||~v124R~
                               * Generate the translation between that code||~v124R~
                               * and the ISO code that we would normally||~v124R~
                               * use to display that EBCDIC code.     ||~v124R~
                               */                                     ||~v124R~
                              ft2asc[iso] = ebc2asc[ebc];             ||~v124R~
                              asc2ft[ebc2asc[ebc]] = iso;             ||~v124R~
                          }                                           ||~v124R~
                      }                                               ||~v124R~
              #endif /*]*/                                            ||~v124R~
                  } else {                                            ||~v124R~
                      /* Auto-keymap. */                              ||~v124R~
                      add_xk(iso, (KeySym)ebc2asc[ebc]);              ||~v124R~
                  }                                                   ||~v124R~
              }                                                       ||~v124R~
                                                                      ||~v124R~
            .DBCS is not supported by IND$FILE                        ||~v124R~
             (APVUFILE will do. See next item about xe's DBCS(Japanese only) support.)||~v124R~
             -charset option of s3270 is for keyboard input and screen output.||~v124R~
             For ftp, ASCII<-->EBCDIC translation is done byte by byte using table defined in X3270.xad.||~v124R~
             On the other hands, without DBCS charset for -charset option,||~v124R~
             TSO LOGON procedure may fail by DIALOG ERROR(SPF panel not found) depending on HOST environments.||~v124R~
             (If client dose not notify that client is DBCS env, //ISPPALT DD is not searched for the panel||~v124R~
             for DBCS)                                                ||~v124R~
             But fortunately, Enter key on the dialog error panel changes the screen to native TSO READY mode.||~v124R~
             On this screen, only ISPF cmd is accepted and it opens primary options menu of English.||~v124R~
             Command shell panel is now available for xe.             ||~v124R~
             See sample xe's logon procedure definition in xe3270.cfg.||~v124R~
                                                                      ||~v124R~
             If you want see DBCS panel, you should prepare s3270 DBCS version as folllowing.||~v124R~
               a. configure && make with -DX3270_DBCS (on cygwin bash).||~v124R~
                  (s3270-cygwin-dbcs.exe embedded is ones made in my environment)||~v124I~
                    ./configure --enable-dbcs                         ||~v124R~
                  If it issues following warning,                     ||~v124R~
                    Warning disabling DBCS                            ||~v124R~
                  You have to install ICU.                            ||~v124R~
                  After ICU installed, make make fail at ld.          ||~v124R~
                  Under cygwin,ICU configulation generates different library name from the case of under linux.||~v124R~
                  Modify about line 4808 of s3270 configure script.   ||~v124R~
                    #LIBS="-licui18n  $LIBS"                          ||~v124R~
                    LIBS="-lsicuuc  $LIBS"                            ||~v124R~
                  Then configure && make as following.                ||~v124R~
                    export LIBS="-lsicudt -enable-auto-import"        ||~v124R~
                    ./configure --enable-dbcs                         ||~v124R~
                                                                      ||~v124R~
               b. ICU installation.                                   ||~v124R~
                  Additional installation is required if you met the message||~v124R~
                    Cannot find ICU converter for ibm-1027            ||~v125R~
                  when you specified japanese as -charset option.     ||~v124R~
                    japanese    :1027(SBCS)+300(DBCS)   1027 is filled katakana between English lowercase letter.(Newer)||~v124R~
                    japanese-290: 290(SBCS)+300(DBCS)    290 is filled English lowercase letter between katakana.||~v124R~
                  These are defined on X3270.xad of s3270 source package.||~v124R~
                  I think 930=290(SBCS)+300(DBCS), 939=1027(SBCS)+300(DBCS),||~v124R~
                  but -charset japanese-930 or -charset japanese-939 cause no problem||~v124R~
                  (in X3270.xad defines DBCS only for 930 and 939).   ||~v124R~
                  If you want to use cp1027 by "-charset japanese", follow the next step.||~v124R~
                    The file ibm01-27....ucm etc are included in s3270 package,||~v124R~
                    and corresponding .cnv file is made ./configure of s3270 using --enable-dbcs option.||~v124R~
                    I could not use those cnv files because ICU_DATA environment setting error?||~v124R~
                    So, I installed ibm-1027 to ICU package as following.||~v124R~
                      copy *.ucm in s3270 package to icu\source\data\mappings||~v124R~
                      create/update icu\source\data\mappings\ucmlocal.mk||~v124R~
                        ###                                           ||~v124R~
                        UCM_SOURCE_LOCAL =  ibm-1027_P100-1995.ucm\   ||~v124R~
                        ibm-1385_P100-1997.ucm\                       ||~v124R~
                        ibm-300_P110-1997.ucm\                        ||~v124R~
                        ibm-837_P100-2000.ucm                         ||~v124R~
                      ./configure --enable-static && make             ||~v124R~
                                                                      ||~v124R~
            .DBCS(Japanese) support of xe.                            ||~v124R~
              Supports Host codepage of CP1027 and CP290.             ||~v124R~
                CP1027:English lower case letter extension            ||~v124R~
                CP290 :Katakana extension                             ||~v124R~
              Specify DBCSP option in ::xehost.                       ||~v124R~
                DBCS={cp930|cp939}                                    ||~v124R~
                   SBCS codepage of cp930 is CP290, CP2017 is of CP939.||~v124R~
                   DBCS option is JIS83+IBM (See CV command)          ||~v124R~
              Supports only RECFM=F(B)                                ||~v124R~
              After downloading with binary mode, splits to lines by LRECL.||~v124R~
              EBCDIC->SJIS conversion are done for those lines.       ||~v124R~
              SO(0x0e) and SI(0x0f) is replaced to spaces(0x20).      ||~v124R~
              When uploading, SJIS->EBCDIC conversion is done line by line.||~v124R~
              SO/SO are inserted replacing space(0x20) of both sides. ||~v124R~
              If no space exists on the boundary, SO/SO are inserted expanding length.||~v124R~
              Following continued space is deleted by expanded length if exist.||~v124R~
              Single space is left as delimiter.                      ||~v124R~
              Finally if the line length is over LRECL, the overflow part is cut||~v124R~
              if the length before conversion is lower than or equal to the LRECL.||~v124R~
              If the length before translation is larger than LRECL,  ||~v124R~
              those line is split to multiple lines without considering DBCS split.||~v124R~
              If the line length after translated is lower than LRECL,||~v124R~
              spaces are padded up to the LRECL.                      ||~v124R~
              Accordingly, Number field on COL.73-80 may not be kept. ||~v124R~
  #ifdef LNX                                                          ||~v124R~
              EBCDIC<->euc.jp translation is done only when LANG environments is euc.jp||~v124R~
              By euc.jp hankaku-katakana(single width Japanese letters of a group)||~v124R~
              are translated to 2 byte code(0x8e+xx).                 ||~v124R~
              When host file contains hankaku-katakana line length expands over the LRECL.||~v124R~
              xe issues warning of LRECL error.                       ||~v124R~
              By uploading, line length may shrink under the LRECL and transferred with||~v124R~
              padding space up to the LRECL.                          ||~v124R~
              Accordingly, Number field on COL.73-80 may not be kept. ||~v124R~
              For the file opened as SPF file(80 byte fixed LRECL with STD line number field),||~v124R~
              Line number is kept at col73-80 if available.           ||~v124R~
              NUMSTD profile is checked for Save/Replace/Create cmd.  ||~v124R~
              XCOPY/XMOVE cmd dose not check the profile record.      ||~v124R~
  #endif                                                              ||~v124R~

#endif
   .Terminal Emulator                                                 ||~127ER~
                                                                      ||~127EI~||~127ER~
     xe(console version) can access remote file without file transfer ||~127ER~
     through terminal emulator such as PuTTY, TeraTerm.               ||~127ER~
     These emulator sends Escape-Sequence-String like as ^[11~ for corressponding||~127ER~
     function key operation.                                         ||~127ER~
     But all modifier combinations(Shift/Control+Fn) are not supported.||~127ER~
     And Esc-String varies depending terminal type supported such as VT100, Linux.||~127ER~
     PuTTY with terminal type=SCO allow all Shift/Control+Fn combination.||~127ER~
     (                                                                ||~127EI~
         To inactivate this setting, use --NOSCO option.              ||~127EI~
         And SCO assigns ^[Z to S+F2, it is duplicated to previous assign ment to S+Tab.||~127EI~
         Use --Z2 option to use ^[Z to S+F2.                          ||~127EI~
     )                                                                ||~127EI~
     PuTTY "The Backspace key" option should be "Control-H(0x08)"     ||~127ER~
     to distinguish from Del-key(0x7f).                               ||~127ER~
     And to accept 0x7f as Del key, start xe width --7d option.       ||~127ER~
     xekbchk has also --7 option.                                     ||~127ER~
     "xekbchk --h" will help you.                                     ||~127ER~
                                                                      ||~127EI~||~127ER~
     xe accepts EscScring of xelnxe.txt (9)-(b)"Default Esc string translation of xe".||~127ER~
     (You can get it by "xekbchk --smapfilename")         ||~127EI~   ||~127ER~
     To use other key tan listed bellow,                              ||~127ER~
     specify keymap defined additional key according "Sample Keymap File" bellow.||~127ER~
     Specify it by command line like as  "xe --k::addfuncmapfile",    ||~127ER~
	 or specify on "LNX_Keymap" parameter on ini file like as LNX_Keymap = ::addfucmapfile.||~127ER~
     For validation of your keymap file,                              ||~127ER~
     check output from xekbchk after, e.g., "xekbchk --stmpf --kaddfuncmapfile".||~127ER~
                                                                      ||~127EI~
     *****                                                            ||~127EI~||~127ER~
     "Sample Kemap File"                                    ||~127EI~ ||~127ER~
                                                                      ||~127EI~||~127ER~
        #start of file                                                ||~127EI~||~127ER~
        [common]                                                      ||~127EI~||~127ER~
          KeyString:F1       =^[[1Z~                                  ||~127EI~||~127ER~
          KeyString:S+f1     =^[aa                                    ||~127EI~||~127ER~
          KeyString:C+f1     =^[bbb                                   ||~127EI~||~127ER~
        # KeyString:A+f3     =^[^[[13~                                ||~127EI~||~127ER~
        # KeyString:A+f3     =^[[13~                                 ||~127EI~||~127ER~
        #end of file                                                  ||~127EI~||~127ER~
                                                                      ||~127EI~||~127ER~
        Note. "^[" is notation of 0x1b.                               ||~127ER~
              PuTTY sends, e.g., 0x1b.1b.5b.31.33.7e by Alt+F3.      ||~127ER~
              This pattern is 0x1b(Alt)+F3, which is not required to be registered.||~127ER~
              xe dose not support Multiple modifier like as A+C+Fn.   ||~127ER~

   .Binary file.
      File is treated as binary file which is opened by EB/BB/SB cmd. ||~v124R~
      When it is opened by normal E/B cmd, first 1024 byte is checked. ||~v124R~
      It is binary when number of char less than 0x1f(except 0x0d,0x0a)
      is over 30%.
      For binary file, line separator(0x0d0a,0x0a) is one of data, and
      line is displayed as split by length of width(/Mnn, default is  
      nn=72).
      Line number column is displayed by offset value, NUM cmd may change
      the line number column type from hex to decimal number.
      A char may be input by 2 HEX digit changing input mode by "XIN" cmd(Ctrl+F11).||~v124R~
      Under HEX input mode, no Input-inhibit-char check and DBCS chk is done for binary file.||~v125R~
      Tab char(0x0d) is also data char and no tab expansion is done.  ||~v124R~
      2 HEX display mode is available.
      Using EH/BH/SH cmd file is displayed by dump format,
      Using /Mx option or HEX(Ctrl+F10) cmd each file line is displayed as||~v124R~
      vertical hex display(3 line of char, hex first digit and hex 2nd digit).||~v124R~
      On dir-list and history list, use line cmd "1"(browse),"2"(edit)
      and h/H(Hex mode). Lowercase-h is for browse or edit that is
      determined by the screen mode. Uppercase-H is opposite of that. ||~v124R~
                                                                      ||~v124I~
      Alt+g is used to jump cursor between Char-part and Hex-part     ||~v124I~
      when horizontal/vertical HEX display mode.                      ||~v124I~


      HEX 3-line display sample
        ****|********** TOP OF FILE *****************************************************
        0001|G:\src\xe>h:\tool\lha.exe v k:\xe117\xegcc117
            |43577657636357666566626762726357633357666633322222222
            |7ac323c85e8ac4ffccc81e585060bac85117c8573311700000000
        0002|Listing of archive : k:/xe117/xegcc117.LZH
            |467766626626766676232632763332766663332454
            |c9349e70f6012389650a0baf85117f85733117eca8
        0003|  Name          Original    Packed  Ratio   Date     Time   Attr Type  CRC
            |22466622222222224766666622225666662256766222467622222566622247772577622454
            |00e1d50000000000f2979e1c0000013b54002149f00041450000049d500014420490500323

      dump format HEX display sample.
        ****|********** TOP OF FILE *********************************************
        0000|G:\src\xe>h:\tool\lh|  473a5c73 72635c78 653e683a 5c746f6f 6c5c6c68
        0014|a.exe v k:\xe117\xeg|  612e6578 65207620 6b3a5c78 65313137 5c786567
        0028|cc117        Listi|  63633131 37202020 20202020 200d0a4c 69737469
        003c|ng of archive : k:/x|  6e67206f 66206172 63686976 65203a20 6b3a2f78
        0050|e117/xegcc117.LZH |  65313137 2f786567 63633131 372e4c5a 480d0a20
        0064| Name          Origi|  204e616d 65202020 20202020 2020204f 72696769
        0078|nal    Packed  Ratio|  6e616c20 20202050 61636b65 64202052 6174696f
        008c|   Date     Time   A|  20202044 61746520 20202020 54696d65 20202041
        00a0|ttr Type  CRC-----|  74747220 54797065 20204352 430d0a2d 2d2d2d2d

   .Huge File.                                                        
      For DOS version, 640K limitation is forced and large file cannot be
      processed. Use GCC version if DPMI server is avail.             ||~v124R~
      QEMM386 is one of a DPMI server under DOS.
      If no DPMI host is avail, use CWSDPMI archived in GCC version.  
      Melt CSDPMI4b.zip,then copy .exe to the PATH.
      If no DPMI works well or it takes a long time to load a large
      file or memory shortage occur, use input line range parameter    ||~v124R~
      for EDIt/BROwse command.      e.g.) e 100-500.                   ||~v128R~
   .Line copy between 2 files.
      Cut and Paste(Chapter (1)-#3 ) is avail, but line command also  
      support line copy between 2 files on split screen.              
   .Line compare/matching between 2 files.                            ||~v124R~
      "=" edit line cmd compare lines. Open 2 file on each screen split,
      then enclose by "==" the range to be compared.
      Find/eXclude cmd support special search word "*=Mn" for 2 file key
      matching.
         e.g.) f *=M6 10 18.                                            ||~v128R~
               col.10-18 is key of the file on the current screen,    
               col 6-14 is key of the file on the other screen.       
               searches line having col.10-18 which is matching with col 6 of
               2nd file.                                              
   .Delete lines skipping some lines.
      Use Bundle/Skip parameter on Delete line command.               
      e.g.) d5,3.2 delete 3 lines, leave 2 lines,... ,repeat this 3 times.||~v128R~
            Bundle(,b)/Skip(.s) parameter is avail for all line cmd.  
      This is convenient to edit data files.              Chapter(4)-(A)

            ===>
            *******|********** TOP OF FILE *********************
            d3,6.2 *
            0000200*
            0001000|<AF[177]: Allocation Failure. need 104 bytes
            0002000|<AF[177]: managing allocation failure, actio
            0003000|<GC(177): GC cycle started Sun Feb  1 00:43:
            0004000|<GC(177): freed 1006748624 bytes, 94% free (
            0005000|  <GC(177): mark: 49 ms, sweep: 14 ms, compa
            0006000|  <GC(177): refs: soft 0 (age >= 32), weak 0
            0007000|<AF[177]: completed in 65 ms>
            0008000|
            0009000|<AF[178]: Allocation Failure. need 192 bytes
            0010000|<AF[178]: managing allocation failure, actio
            0011000|<GC(178): GC cycle started Sun Feb  1 01:31:
            0012000|<GC(178): freed 1006747392 bytes, 94% free (
            0013000|  <GC(178): mark: 53 ms, sweep: 16 ms, compa
            0014000|  <GC(178): refs: soft 0 (age >= 32), weak 0
            0015000|<AF[178]: completed in 70 ms>
            0016000|
            0017000|<AF[179]: Allocation Failure. need 176 bytes
            0018000|<AF[179]: managing allocation failure, actio
            0019000|<GC(179): GC cycle started Sun Feb  1 02:19:
            0020000|<GC(179): freed 1006729200 bytes, 94% free (
            0021000|  <GC(179): mark: 52 ms, sweep: 13 ms, compa
            0022000|  <GC(179): refs: soft 0 (age >= 32), weak 0
            0023000|<AF[179]: completed in 67 ms>
            0024000|
            0025000|<AF[180]: Allocation Failure. need 24 bytes,
            0026000|<AF[180]: managing allocation failure, actio
            0027000|<GC(180): GC cycle started Sun Feb  1 03:07:
            0028000|<GC(180): freed 1006536064 bytes, 94% free (
            0029000|  <GC(180): mark: 55 ms, sweep: 15 ms, compa
            0030000|  <GC(180): refs: soft 0 (age >= 32), weak 0
            0031000|<AF[180]: completed in 70 ms>

   .Display top of file and end of file at same time.
      PF2 enable display both on each split screen.                   
      (one of those should be browse mode).
      X line command also enable that excluding intermediate range.
      Use "Y" line cmd to re-display partially.                       ||~v124R~
      Use "RESet X" cmd to reset all X line.                          ||~v124R~
      use FLIp(or alias XX) cmd to exchange displayed and excluded lines.||~v124I~
                                                                      ||~v124R~
   .Delete all lines contained a string.
      At first exclude lines containing the string by EXClude command,
      then use "DEL X ALL" or "DROp X ALL" command                    ||~v124R~
      To delete all lines not include the string, use DEL/DROP NX ALL. ||~v124R~
      To display all lines containing the string use FINd cmd
      after excluded all line by "x all" cmd.
      To select the line range around the line containing search word,
      use -a and/or -b option.
      use FLIp(or alias XX) cmd to exchange displayed and excluded lines.||~v124R~
                                                                      ||~v124R~
      Regular expression or P'pic-str' format is supported to search string,||~v124R~
      and this is available for CHAnge cmd for replaced string search.||~v124R~
                                                                      ||~v124R~
   .UpdateLineTag.
      All file with some selected extension name can be set CID(Change
      ID).
       e.g.) For all .c file are tagged on updated line by the format of||~v128R~
           //~yymdd~ (yy:year,m:month,dd:day)
      Correspondency of extension name and format is specified on
      .INI file(Change_ID_Type_xx)                        Chapter(6)
      Other format than DATE e.g. version number, or files with other  ||~v128R~
      type of extension name can be set by putting a, say, CID header 
      line on the first line of the file.
      e.g. //CID://+v010R~: specify that tag format is fixed to //~v010~R.||~v128R~
      Sample CID header line is inserted by "cid top" or "cid topa" cmd.
      To free to set tag temporarily use CID command.       Chapter-(3)||~v125R~
   .SPF file(LineNumberedFile)
      Specify option=(m72,n) on CID header line.
      e.g.//CID://+DATE~R:#63 option=(m72,n)                          ||~v128R~
          This mean CID format is //~yymdd~ and set to column 63.
          Margin is 1-72(Input avail) and n means LineNumbered file.
      By this line, the file is treated as SPF file.                  
      (All lines are 80 byte fixed length line,73-78 is line-no column,
       79-80 is file update level).SPF file is kept as fixed length,
       with line number/version number maintenance automatically.     
                                                          Chapter-(3)
      If no CID position is required, Edit/Browse/Select cmd with Fn[-m]
      is alternative of CID header line.                              
      EN/BN/SN is equivalent of Edit/Browse/Select cmd each with "F80-72 p0".
      If Col.73-80 is a part of data, use CID header width option(F80)
      or use e8 command.                                              
                                                                      ||~v124R~
   .COBOL file.
      It is COBOL file if CID header contains option=(..,cob,..)      ||~v124R~
      or opened by EC,BC or SC cmd.                                   ||~v124R~
      Line number is col 1-6,4 digit lineno and 2 digit suffix,
      which is set at file save for inserted lines.
      Renum cmd set on this field.
      If you want to accept any char in the col 1-6,specify CID header
      line of option=(..,cobk,..) or use EK,BK or SK cmd.
      Col 73-80 is also lineno if CID header contains
      "option=(..,n,..)" or opened by ECN,BCN,SCN,EKN,BKN or SKN cmd.
      Without Num option, CID is optionally set on Col73-80.           ||~v124R~
      Left most column displayed and indentation pos of inserted line ||~v124R~
      is col 7.(tab stop pos may be set by COL cmd)
      Cob type file is also SPF type file, cobk(my naming in xe) type 
      file is a margined file and has no limitation of line length is
      fixed to 80 if option=(n) is not specified.
      Default CID pos of cobk type file is col 73.
 +-----------+-------------+----------+-------------+-----------+---------+
 |CID Header | Edit cmd    | Line cmd | Col.1-6     | Col.73-80 | LineLen |
 +-----------+-------------+----------+-------------+-----------+---------+
 |cob,n      |BCN/ECN/SCN/ |i/I       |COBOL lineNo |SPF lineNo |80 Fixed |
 |           |Bi/Ei/Si     |          |             |           |         |
 |cobj,n     |BKN/EKN/SKN/ |j/J       |any          |SPF lineNo |80 Fixed |
 |           |BJ/EJ/SJ     |          |             |           |         |
 |cobk       |BK/EK/SK     |k/K       |any          |any        |any      |
 |cob        |BC/EC/SC     |l/L       |COBOL lineNo |any        |80 Fixed |
 |           |BL/EL/SL     |          |             |           |         |
 |n          |BN/EN/SN     |n/N       |any          |SPF lineNo |80 Fixed |
 |f80        |B8/E8/S8     |8         |any          |any        |80 Fixed |
 +-----------+-------------+----------+-------------+-----------+---------+
     Line cmd for filename list screen is same as dirlist screen.     

     To set CapsLock use CAP command or EDIt command width CAP option.
     "U" edit-line-command also support lower-case-->uppercase translation.

   .FixedLengthRecord file.                                           ||~v125R~||~127BR~
                                                                      ||~v125R~
     -EndOfLineID(LF/NL) is not usually used on mainframe world.       ||~v125R~
      Line is split by record length associated to each file.         ||~v125R~
      This option is used to edit the file downloaded from mainframe host.||~v125R~
     -E filename /M[m|p|u|t|R][m|p|u|e|R] /Fn[-m]                     ||~v125R~
         R:record mode(1st "R" is read option, 2nd "R" is write option)||~v125R~||~126FR~
            p:EOL-ID=0x0d0a, u:EOL-ID=0x0a, m:EOL-ID=0x0d             ||~v125R~
            e:EOL-ID=EBCDIC-NL(0x15)                                  ||~v125R~
         Fn[-m]:Record length and margin.                             ||~v125R~
           e.g. F80-72.  record length:80, Col.73-80 is right margin   ||~v125R~||~v128R~
      e.g. "e file1 /Mr /F80-72 P0"                                   ||~v125R~||~v128R~
     -Record mode read each lines by fixed length specified on Fn[-m] option, write no EOL-ID.||~v125R~
      Record mode option and record length parameter is registered to profile.||~v125R~
      To write EOLID to each lines open the file with /Mr[p|u|m] option.||~v125R~
      To remove EOLID from non-record mode file open the file with /M[p|u|m]r||~v125R~
      and after saved re-open it with /Mr Fxx.                        ||~v125R~
      To reset record mode register on profile, specify /M option.    ||~v125R~
      /F0 option will also reset is.                                  ||~v125R~
     -Change of record size.                                          ||~v125R~
       EDIt cmd with new /F option will override lrecl on profile.    ||~v125R~
       You can change it at REPlace/CREate/SAVe/END cmd.                  ||~v125R~||~v125R~
         REPlace/CREate/SAVe/END  [filename]  [/M[p|u|m|e|r]]  [/Fn[-m]]||~v125R~
       You have to adjust line length to below the new record length  ||~127BR~
         by SPLit cmd before the output cmd.                          ||~127BR~
       /M option changes record mode<-->Linefeed by EOLID mode        ||~v125R~
       /F option changes record size.                                 ||~v125R~
       (For SAVe cmd, this is effective only when filename parameter is specified.||~v125R~
        Without filename parameter, you can change record mode by /M option of EDIt cmd.||~v125R~
        Record size will not be changed).                             ||~v125R~
                                                                      ||~v125R~
         ex.1)  cre file1 cpeb /mr /f80                               ||~v125R~
               create EBCDIC 80 byte record mode file from usual PC text file.||~v125R~
         ex.2)  s   file2 cplc /mp                                    ||~v125R~
               reverse operation of ex.1)                             ||~v125R~
     -/M write option is effective for REP cmd for the file if no /M, /F option specified.||~v125R~
       For ex, "rep file2 cplc" for the file opened by "e file1 cpeb /mr f80",||~v125R~
       short record is expanded to the LRECL, record mode and LREC are registered to file2's profile record.||~v125R~
       If file1 is opened by "e file1 cpeb /mrp", EOLid is appended to all lines.||~v125R~
     -Record mode is assumed for EBCDIC file opened by E8 cmd.        ||~v125R~
     -Inserting character into the line could not expand the line over the record length.||~v125R~
     -TAB counter is forced to 1 at open.                             ||~v125R~
      For file opened with /Fxx only(lines have EndOfLine char), TAB is replaced to a space at save.||~127BR~
      For file opened with /Mr and /Fxx(lines have no EOL), TAB is not replaced to space at save.||~127BR~
      TC|NOTC option is used to change default action.                ||~127BR~
     -Display width of UTF8 encoded Record mode files is not fixed to the record length.||~127BR~
      Record length is of UTF8 code. Display width is shorter than record length||~127BI~
      when record contains non-ASCII char, and you can expand the line up to||~127BI~
      displayWidth==recordLength. At save the line is split by UTF8Length==recordLength.||~127BI~
      (FixedLength text file(line is split by EndOfLine char) is not split even if overflow occurred.)||~127BI~
                                                                      ||~v125R~
   .VariableLengthRecord file.                                        ||~127BR~
                                                                      ||~127BR~
     -supported record header format:                                 ||~127BR~
        RDW:LLZZ format(2 byte length filed+0x0000, length is containing header length),default.||~127BR~
        H  :2 byte LL including header length itself.                 ||~127BR~
        HD :halfword LL not including header length.                  ||~127BR~
        F  :fullword LL including header length itself.               ||~127BR~
        FD :fullword LL not including header length.                  ||~127BR~
        MF :Microfocus convention.                                     ||~127BR~
            System record at top of the file indicates header length is halfword or fullword.||~127BR~
            (I do not care role of system record, don't upload the file updated by xe.)||~127BR~
                                                                      ||~127BR~
        If "record format error" is issued, check it by opening the file by EB or EH  command.||~127BR~
        LOCate command will moves cursor to the specified hex offset. ||~127BR~
                                                                      ||~127BR~
        "TOP OF FILE"/END OF FILE" line indicate "v" at col=4 for VRL file.||~127BR~
                                                                      ||~127BR~
        /Mv and /Fvfmt is saved to profile.                           ||~127BR~
        Once opened by Browse/Edit with these option, no need to specify it at next open.||~127BR~
        SAVe/CREate/REPlace/END command also save it for the output file.||~127BR~
                                                                      ||~127BR~
     -Option parameter on each command.                               ||~127BR~
                                                                      ||~127BR~
        Browse /Mv  /Fvfmt                                            ||~127BR~
            vfmt:record header format                                 ||~127BR~
              e.g.  B vfile /Mv /Frdw                                  ||~127BR~||~v128R~
        Edit e /Mrv /Fvfmt                                            ||~127BR~
            r=v:read as vfmt                                          ||~127BR~
            w=v:save as vfmt                                          ||~127BR~
              e.g.  E vfile /Mv /Fh                                    ||~127BR~||~v128R~
            You can change record mode by specifying both "r" and "w".  ||~127BR~
              e.g.  E vfile /Mvr /F130 /Ff (load as vfmt=F, save as RECFM=F+LRECL=130)||~127BR~||~v128R~
            END command is also used to change record format.         ||~127BR~
        End  /Mv /Fvfmt                                               ||~127BR~
            Use to change record type of the file from ones of at opened.||~127BR~
            but new vfmt should not be MFH.                           ||~127BR~
              e.g.  END /Mv /Ff                                        ||~127BR~||~v128R~
        Save filename /Mv /Fvfmt                                      ||~127BR~
             filename required with  /Mv or /F option.                ||~127BR~
             e.g. S vfile CPEB=CP930 /Mv /Fh (save from non-EBCDIC file to EBCDIC file of vfmt=F)||~127BR~||~v128R~
        CRE/REP/APP filename /Mv /Fvfmt                               ||~127BR~
             For APPend, both /M and /F is required if source and target file record type is different.||~127BR~
             For CREate/REPlace, source file profile is applied if /M or /F is not specified.||~127BR~
             e.g. REP ebcvf cpeb=CP930 /Mv /Ff nx                      ||~127BR~||~v128R~
        COPy filename /Mv /Fvfmt                                      ||~127BR~
             Specify record format of copy source file, which is omittable if registered on the profile.||~127BR~
             e.g. COPy ebcvf cpeb=CP930 /Mv /Ff                        ||~127BR~||~v128R~
        XPR  filename [/Vvfmt|/Rlrecl]                                ||~127BR~
             /V:specify format of RECFM=V file, /R:specify LRECL for RECFM=F file.||~127BR~
             No need to specify when registered on profile.           ||~127BR~
             And no need for printing of the opened file("XPRint *" or "XPRint **")||~127BR~
                                                                      ||~127BR~
                                                                      ||~127BR~
   .Profile.                                                          ||~v124R~
                                                                      ||~127BR~
     Following status is saved to profile record and used at next open.||+124LI~,||~v124R~
        BNDS,CAPS,TABCLEAR,SPF,COBOL,P0/P1(margin protection),Fxx-mm(FixedLengthRecord),||~v124R~
        FixLengthRecord mode(/Mr, /Flrecl), VariableLengthRecord mode(/Mv, /Fvfmt),||~127BR~
        SyntaxHighlight options(LangType,OPEN,ENTER).       ||+124LI~,||~v124R~
     Profile is saved on a profile record on work-dir(::profile) corresponding to each file.||~v124R~
        Profile record file name is derived from the file name replacing "\"(/),":" to||~v124R~
        "_", " " to "=" and "." to "~".                               ||~v124R~
#ifdef GCC                                                            ||~v124I~
        GCC version write all record into a file profile.G because DOS is 8.3 filename.||~v124I~
#endif                                                                ||~v124I~
#ifdef OS2                                                            ||~v124I~
        OS2 version write all recor into a file profile.2 if work-dir is not HPFS.||~v124I~
#endif                                                                ||~v124I~
        Profile record for the directory or the extension name is written by PROfile cmd,||~v124R~
        and used as default record for the file in the directory or the file with same||~v124R~
        extension name. The directory record at first then extension record is applyed.||~v124R~
     Profile record is written by the following cmd.                  ||~v124R~
        BNDS:                                                         ||~v124R~
             BND [ [* | 0 | col1] [* | 0 | col2] | RESET ] [EXT]      ||~v124R~
             	RESET:reset BNDS of current file, then write to profile record.||~v124R~
                EXT  :write BNDS profile to profile record of extension type.||~v124R~
             BNDS cmd is accepted on dir-list panel, and write profile as default||~v124R~
             of the file in the dir/                                  ||~v124R~
             Now, INI cmd dose not write BNDS setting to ini file.     ||~v124R~
             But Bounds statement of INI file is yet effective.       ||~v124R~
        CAPS:                                                         ||~v124R~
             CAP [on|off|RESET] [default|tso|cmd|EXT]                 ||~v124R~
             	RESET:Set CAPS OFF, the write to profile record.      ||~v124R~
                EXT  :write CAPS profile to profile record of extension type.||~v124R~
             CAPS cmd is accepted on dir-list panel, and write profile as default||~v124R~
             of the file in the dir.                                  ||~v124R~
        SyntaxHighlight options:                                      ||~v124R~
             SYN [all|reset|enter|entera|on [lang-type]|off]          ||~v124R~
                                                                      ||~v124R~
               ENTER/ENTERA option(syntax re-evaluation by Enter key),||~v124R~
               ON/OFF at open the file and lang-type is written to the profile record.||~v124R~
             SYN cmd is not accepted on the dir-list panel.           ||~v124R~
             Use PROfile cmd to write dir/ext default.                ||~v124R~
             OPEN,OPEN_EXT,_EXT option on .cfg file can be used       ||~v126R~
             to set default for the directory or extension.           ||~v126R~
                                                                      ||~v125R~
#ifdef UTF8SUPP                                                       ||~v125R~
        Encoding of file:                                             ||~v125R~
             Edit/Browse/Select [CPU8|CPLC|CPAS]                      ||~v125R~
           CPxx option to directory is default for the file in the directory.||~v125R~
#endif                                                                ||~v125R~
                                                                      ||~v125R~
     PROfile cmd is for displaying or writing the profile record.     ||~v124R~
        For ex,                                                       ||~v124I~
           To set SPF(80 byte fixed length width line number on col 73-80) profile to dir1,||~v124I~
           open a file in the dir by "EN dir1\samp1" then enter "PRO path save".||~v124I~
           The "E dir1\samp2" is same as "EN dir1\samp2".             ||~v124I~
           This is applied also to Select line cmd on dir-list panel. ||~v124I~
           To set COBOL(80 byte fixed length with COBOL line number on col.1-6) profile to||~v124I~
           all file with extension name "cob", open a file with extension "cob("EC samp3.cob")||~v124I~
           then enter "PRO ext save".                                 ||~v124I~
           To confirm current profile, use "PROfile". ||~v124I~       ||~127BR~
           To confirm contents of profile record, use "PRO {*|path|ext}".||~127BR~
                                                                      ||~127BR~
     To clear directory profile, use "PROfile reset" on the dirlist screen.||~127BR~
                                                                      ||~v124R~
     To ignore profile record.                                        ||~v124R~||~127BR~
             SPF related optios are ignored for Ex cmd such as Et,ec,en....||~v124R~
             Other options are overrided by following cmd option specification.||~v124R~
               NONUM : Ignore SPF related options.                    ||~v124R~
               Fxx-mm: All lines are fixed length and margin width.   ||~v124R~
               NOCAP : CAPS off                                       ||~v124R~
               NOTC  : TABCLEAR off                                   ||~v124R~
               P{0|1}: right margin protection.                       ||~v124R~
                                                                      ||~v125R~
#ifdef UTF8SUPP                                                       ||~v125R~
             New dir-list line cmd is added to specify codepage option explicitly,||~v124I~
             "[" (CPLC)  and  "]" (CPU8).                             ||~v124I~
#endif                                                                ||~v124I~
      CID header line options.                                        ||~v124R~
          n, cob and cobk option on the CID header line is effective   ||~v124R~
          only when it is additional to the profile record.            ||~v124R~
          For ex, option=(cob) on CID header is effective when profile is NUMSTD.||~v124R~
          But option=(n) dose not reset COB option by the profile record.||~v124R~
                                                                      ||~v124R~
                                                                      ||~v124R~
   .Change word at once for all file in the directory.                ||~v124R~
                                                                      ||~v124R~
      e.g.) File execmdf contains following 3 lines.                    ||~v126R~||~v128R~
                       s "%3"                                         ||~v126R~
                       c %1 %2  all                                   ||~v126R~
                       end                                            ||~v126R~
      Enter  "exe ! execmdf FROM TO <s *.c" on dir-list panel.        ||~v126R~
      EXE cmd executes Select/Change/End to all *.c file in this directory.||~v126R~
      (See "EXE cmd")                                                 ||~v126R~
                                                                      ||~v126R~
      Or "%" line cmd.         ||~v124R~                              ||~v126R~
      (See Dirlist % line cmd)                                        ||~v126R~
                                                                      ||~v124R~
   .Move multiple file between 2 directory.
      To enter same command and destination directory name to all line
      is irritating. Use line command copy key on directory screen.   ||~v124R~
      Enter command and destination on a line to be moved, then use PF10
      to get a command input and use PF11 on the other line to be moved.
      PF11 copy command taken by PF10.                    Chapter-(1)-#9
   .File line count.
      On dir-list panel.
#ifdef UNX
      At first, right most column is for UserName/GroupName.          
      Shift+F6 change it to UserID/GroupID and F6 change it file size.
      line count is displayed by F6 with cursor on the line of the file.
#else
   	  F6 on dirlist exchange displaying file size by byte and lineno.
#endif
      For remote file UserName or UserID is fixed to each remote.     ||~v124R~

   .Undo of deleted file
      Undo line command is avail for the file deleted by line command.
      Deleted files by DOS command is not undo-able.                  ||~v124R~
      Undo line command support also Move/Rename line command.
      Delete line command has other variation, Not undo-able(z),       ||~v124R~
      Delete also ReadOnly file(/) and Both undo-able and del ReadOnly(0).||~v124R~

     directory and un-deletability.                                   
     +---+-------+---------------+
     |cmd|undo   | For ReadOnly  |
     +---+-------+---------------+
     | d |Avail  | Error         |
     | / |Avail  | Deleted       |
     | z |N/A    | Error         |
     | 0 |N/A    | Deleted       |
     +---+-------+---------------+

   .Use of OS native command
      Select option 6 on MENU screen.                     Chapter-(2)
      Or using DOS command prefix(>) create child Shell   Chapter-(5)
                                                                      ||~v128I~
      If environment variable such as PATH is required                
      Use SET/EXPort command.
      ::xe.env is read to set environment variable at xe start if exist.
      if xe___.env(___:os type, e.g. xewin.env) is exist this         ||~v128R~
      is used as alternative.
                                                                      ||~v128I~
      For wxe, another process:xesyscmd console application executes the cmd.||~v128I~
      If the cmd requires user interaction, wxe enter to wait cmd response.||~v128I~
      Use Ctrl+C on the command prompt:xesyscmd to break wait.        ||~v128I~
      grep cmd may cause wait for the reserved filename such as AUX,COMn.||~v128I~
      Use Ctr+C also in that case.                                    ||~v128I~

   .Use of other applications such as Excel/OpenOffice.

      "#" dirlist line command is used to execute the file with
      parameters specified in the rename field.

      "%" dirlist line command is used to pass the file name to
      the application specified in the rename field with
      other parameters.
      "%" lcmd is a way of word replacing at once for all file in the directory.||~v124R~

#if defined(WIN) || defined(XXE)

      If association with filename extension is defined,              
      no application name input is required.
      e.g. xxx.xls is opened by excel.                                ||~v128R~
           Directory is associated with Explorer.                     ||~v128R~
      Enter "!" line command on the panel file-name-list or dir-list.
  #if defined(WXE) || defined(XXE)
      OR select OpenWith item of popup menu by R-button down.
      Association is used also by L-button double click on left edge of screen.
      Col.1-5 for dirlist,col.1-3 for filename history list screen.
  #endif
      And ASSociate command is also prepared.

  #ifdef WXE
      wxe may start explorer or DOS prompt by ICON menu.
  #endif
  #ifdef XXE
      gxe may start Nortilus or Terminal window by ICON menu.
  #endif

#endif

   .kick xe from VisualC++.
      /Lnn on xe cmd line parameter is to jump to the line nn just
      after the file is opened.
#ifdef WIN
      This is for VC++ debugger to open by xe the file in question.
      To use this function, setup VC++ as following.                  
           Register xe as tool.(Tool-->Customize-->Tool tab)
           Set argument like as "$(FilePath) /L$(CurLine)"
           and also current dir as "$(CurDir)".
           Shortcut key is registered by Keyboard tab selecting
           UserTool_ of Category:Tool.
      /L is also a parameter of edit/browse cmd.
#endif

#ifdef WIN

   .Periodically check of other application in progress.              ||~v124R~

      AT command support periodically execution of some command sequence.||~v124R~
      For example, to display tail 20 line of output file of an application,
      enter "b outfile;AT 5 ;end;b outfile 20t-".
      SLEep command may be used.
      For example, enter following,you may get same effect as above.  
      "AT 1 ;b outfile 20t-; sle 4;end"

#endif

   .User command.                                                     ||~127ER~
                                                                      ||~127ER~
      Select option 0.1 on MENU screen, then setup these function.     ||~127ER~
                                                          Chapter-(2)-(A-3)
      =0.1 panel shows function-keys the function is not assigned.    ||~127ER~
      You can assign your command string to those keys(User-Command-Key).||~127ER~
      Next part is for Shortcut-key.                                  ||~127ER~
      Shortcut-key is to use put string at the cursor position.       ||~127ER~
      The string assigned Shortcut-key is retrieved by 2 key operation.||~127ER~
      e.g. "sc,0" means press "Alt+a" then press "0".                  ||~127ER~||~v128R~
      Last part is for user defined command.                          ||~127ER~
                                                                      ||~127ER~
      Multiple commands are delimited by ";".                         ||~127ER~
      Long command string over screen width is available.             ||~127ER~
      Total length of cmd staring is limited to 240 byte.             ||~127ER~
                                                                      ||~127ER~
      User-Command-Key:                                               ||~127ER~
        last ";" means executes all command immediately.              ||~127ER~
        If not, string is put on command input line.                  ||~127ER~
        End-of-line comments follow "#".                              ||~v29tR~
        Both Windows and Linux have shortcut keys assigned for the system use,||~v29tR~
        xe cannot receive them                                        ||~v29tR~
        For wxe/gxe there are assignments for ruler (display thin line at cursor position),||~v29tR~
        default values are S+C+F1/F2/F3                               ||~v29tR~
                                                                      ||~127ER~
      Shortcut-Key:                                                   ||~127ER~
        "Alt+q" shows assigned string on header line for confirmation.||~127ER~
        And next hit the same key(e.g. "A+q","0","0") will put string at the cursor position. ||~127ER~||~v128R~||~v29tR~
        "Alt+a" on command input line, put string on command input line||~127ER~
        for execution by next Enter-key.                              ||~127ER~
        It is also possible to receive parameters from the command input line using %1 %2 ....||~v29tR~
        End-of-line comments follow "#".                              ||~v29tR~
                                                                      ||~127ER~
      Alias-cmd:                                                      ||~127ER~
        3byte command verb and command string defines user command.   ||~127ER~
        e.g. ac1 e %1;c word1 word2 all;end                            ||~127ER~||~v128R~
             "ac1 fnm1" will execute 3 commands.                       ||~127ER~||~v128R~
        It can be commented out by setting the column to "*".         ||~v29tR~
        End-of-line comments follow "#".                              ||~v29tR~
                                                                      ||~127ER~
      Parameter replacement using %n,%*,%^,%@ is supported.           ||~127ER~
        %1-%9:It is replaced by pre-entered words on command input line.||~127ER~
              or alias command's parameters.                          ||~127ER~
        %*   :fullpath name currently opened.                         ||~127ER~
        %^   :fullpath name currently opened on the other split screen.||~127ER~
        %@   :all remaining parameters not used by %n up to the position.||~127ER~
        %* and %^ is replaced to space if the screen is not file/dir panel.||~127ER~
                                                                      ||~v130R~
      <B>Example</B>                                                  ||~v130R~
                                                                      ||~v130R~
            0106|********   Alias  :*sl1 e %1 ;x all; i error; del x all #this is comment line
            0107|Alias  :ls e x:\x1 ; i aaaa
            0108|Alias  :al1 e abc
            0109|Alias  :grn gre -n %1 %2 %3
            0110|Alias  :gri gre -ni %1 %2 %3
            0111|Alias  :trc e ::xewin.trc.*
            0112|Alias  :trw e ::xewxe.trc.*
            0136|Alias  :s0  s --
            0137|Alias  :ilr i "getammount longranks="
            0139|Alias  :u8d e g:\src\xe\utf8data.0000-ffff
            0140|Alias  :ud4 e g:\src\ulib\combinedata\unicodeDatabase1.unicode.All.testwcw.e.o
            0142|Alias  :lp3 i lineput       & row=3
            0143|Alias  :lpn i lineput       & row=%1                 ||~v130R~
            0144|Alias  :wc3 i uviowrtcellw1 & row=3
            0145|Alias  :wc4 i uviowrtcellw1 & row=4
            0146|Alias  :chi i ukbdcharin last
            0147*Alias  :jsn b c:\Users\S*\AppData\Local\Packages\*WindowsTerminal*\LocalState\Settings.json
                                                                      ||~v129R~
             Find.exe cmd is available on Windows 10 as alternative of grep.||~v129R~
             Register cmd like as following.                          ||~v129R~
               gre c:\Windows\System32\find.exe %1 %2 %3 %4           ||~v129R~
             Use it on =6 panel like s following. (Quotation is required for search word)||~v129R~
               gre /N /I "search-word" c:\user\srctext                ||~v129R~
             You will find the grep command for Windows in some Web-Site.||~v29tR~

      POS/HOM command is for cursor movement.                         ||~127ER~
      Starting cursor position is top of command input column.        ||~127ER~
      KEY command is for char input. Input on command input field is not effective.||~127ER~
      To execute line command input on lineno field,                  ||~127ER~
      ENT command is to be followed after KEY command.                ||~127ER~
        e.g. pos 3,1;key d3;ent;                                       ||~127ER~||~v128R~
             pos 10,hsp;=6;grep %1 *.c;                                ||~127ER~||~v128R~
                                                                      ||~127ER~
      In addition to these, EXE command supports commands execution, on xe,||~127ER~
      scripted in the file currently opened or on the disk.           ||~127ER~
      Total 240 byte limit is not applied.                            ||~127ER~
                                                                      ||~127ER~
      All command is optionally logged to file "::cl" by "OPT CMDLOG [ON|OFF]"||~v124R~||~127ER~
      ::cl may be used to create EXE cmd file.
      (for OS/2 or GCC, once close by "OPT CMDLOG OFF", then open ::cl)
                                                                      ||~127ER~
      Edit line cmd "#"/"##" is for executing commands on the lines of currently opened file.||~127ER~
                                                                      ||~127ER~

   .Hex-calc/Time-calc/Timestamp-conv/Decimal-fraction-calc.
      XBC cmd is used to base change between Hex, Decimal and Octal digit.
      XBC cmd prepare binary operation such as +,-,*,/,%,!,<,>,&,|,^.
      (!:power;<,>:shift,^:X-or).Time data can be calculated.
      XBC support double word(8 byte) or decimal fraction.
      Timestamp(elapsed seconds from 1970) is converted to date and time.
      It also supports millisecond-level elapsed time on smartphones and 8 byte TOD on mainframes.||+130ER~

   .Parenthesis, #if, "/*" comment and XML tag pair search            ||~v129R~
      C has 3 parenthesis notation (,[ and {.
      It is hard to search pair in deep nest.
      Alt+"." support it, Alt+"," search except excluded line.         ||~v129R~
      To ignore comment line, exclude those lines and use "Alt+,".    
      This function support other pairing of <,> and /*,*/.
      The corresponding of same nest level of #if/#ifdef/#ifndef/#else
      /#endif/#elif is also searched.
      Move cursor on the parenthesis,# etc., then hit key.             ||~v124R~
                                                                      ||~v129R~
      XML tag pair search                                             ||~v129R~
          .Default shortcut key is Alt+"/"                            ||~v129R~
          .Use shortcut key on "<" or ">"                             ||~v129R~
          .Comment portion(from "<!--" to  "-->") is ignored          ||~v129R~
           and recognize nested tag.                                  ||~v129R~
           It is convenient to correct html automation tool generated.||~v129R~

   .Cut and Paste.
        -See xewxee.txt for mouse operation.                          ||~v124R~
         Followings are of using keyboard.
        -There are 3 modes to specify Cut/Copy range.
         Region mode is same as Windows standard cut and paste.
         Using Alt+F6,region is from the latter half of the start line to
         the first half of the end line.
         Alt+F6 is also used to specify target range, so you should    ||~v124R~
         explicitly copy to clipboard by A+F9 when closed copy source range.
         After A+F7,A+F9 is implicit for the case pasting by A+F8,A+Ins.
         Block mode is by using "Block Start/End"(Alt+F7,Alt+b),
         and range is square box diagonal by start and end point.
         Line mode is by using "Line Marking"(Alt+h),
         and range is all full lines start to end.
         If you press block mode key on the line-no field or column 1 of file
         it is also line mode.
         Alt+w is one of block mode and copy the word delimited by space.
         Ctl+w copy the word to clipboard then paste on at end of cmd line text.||~v124R~
        -There are 4 copy mode.
         Ctrl+v paste like as Windows standard, replace range if exist or
         insert region at the cursor position.
         (Notes) When target region is not specified and copy source range is specified by block mode(Alt+F7),||~127MR~
                 target line is split like as source lines have EOL.   ||~127MR~
                 With Ctrl+v, use region mode(Alt+F6) to specify source data.||~127MR~
         Insertion by "Block Insert"(Alt+Ins,Alt+c),
         override paste by "Block Copy Over"(Alt+F8,Alt+p) and
         override space char only by "Block Over Space"(Alt+o).
         "Block Cut Move"(Alt+m) and "Block Clear Move"(Alt+n) do
         insertion.
        -There are 2 block mode insert operation, right shift and line insertion.
         It takes line insertion in the following case.
         (You can also insert line under block mode)
         ."Line Insert Copy"(Alt+i),"Line Insert Cut Move"(Alt+j),
          "Line Insert Clear Move"(Alt+k)
         ."Block Insert"(Alt+Ins,Alt+c),"Block Cut Move"(Alt+m) and
          "Block Clear Move"(Alt+n) if cursor is on line-no filed.
        -There are 3 delete operation; box cut, box space clear and line
         deletion.
         "Block Clear"(Alt+End) and "Block Clear Move"(Alt+n) leave
         space block or space lines.
         "Block Cut"(Alt+Del,Alt+d) and "Block Cut Move"(Alt+m) delete
         lines under line mode, cut and shift to left under block mode.
         Unlike windows Del/Backspace is not effective for Ctrl+v region,
         use Alt+Del.
        -Block/lines are copied to clipboard, it can be used to copy  
         repeatedly any times. It is also available across sessions.  ||~v124R~
         Block is copied to Clipboard at the time copy/del(move) is done.
         To cut the block from the file which will be close(End/Cancel),
         use "Block Save"(Alt+F9) to save block to Clipboard.         ||~v124R~
         And then execute copy/del(move) function.
         Consecutive "Block Save" is avail until copy/del(move) is done.
        -"Line Insert Copy"(Alt+i) may be used to copy a file into the
         current edit file under line-no not displayed mode.
         By using Execute key after entered COPy or MOVe command,
         message is displayed requesting to specify destination line.
         In this situation move cursor to the destination line then   
         use "Line Insert Copy"(Alt+i) to copy file after the line.
        -"Line Marking"(Alt+h) may be used to create/replace a file
         from the current edit file under line-no not displayed mode.
         By using Execute key after entered CREate or REPlace cmd,
         message is displayed requesting to specify copy source range.
         In this situation use "Line Marking" to specify copy range,
         then lines of the range is written to the file when range is ||~v124R~
         closed by 2nd "Line Marking" key.
        -See also "[Table 3] Alternative operation by Cut & Paste".
                                                                      ||~v124R~
        -Cut&Paste using mouse use system clipboard, so copied text is immediately available||~127AR~
         to another session. On the other hands Cut&Paste by Function key save the text at end||~v124R~
         of session. So console version user have to use CUT/PASte cmd to pass text between||~v124R~
         two xe session. CUT/PASte write to/read from the 2nd CB file(::CB2) each time.||~v124R~

#ifdef WXEXXE
   .Drag & Drop.
   	  Using mouse xe support drop into xe and drag out from xe.
      Drag-out is from dir-list panel and drop-in execute file copy
      (into the dir-list panel) or open by edit command(in the case
      of target is not dir-list panel).
      Between split screen drag & drop can be done.                   
      remote file is also supported.

      Also using Cut&Paste function Drag&Drop is done.
      Using paste you can select the option PasteRep not to popup
      override confirmation msg.
      File to be copied is not deleted even if the file is selected by "Cut".
	  See xewxee.txt for Drag&Drop mouse operation.                   ||~v124R~

#endif

   .Basic Table Calculation.
      TC cmd is , e.g., used to calculate elapsed time from timestamp||~v128R~
      data, summarize elapsed time then output average elapsed time.  
      Operation +,-,*,/,% is available between 2 table columns.
      Summary supports subtotal by key-break or line-count.
      By column format function, data column is aligned by space delimiter,
      it enable to process data, e.g., vmstat output(unix cmd).     ||~v128R~
      See next section for sample usage.

   .sample operation to edit logfile to analyze.

      Followings are sample to get average JOB elapsed time from JobLog.
        Other useful command/option for data manipulation is listed bellow.||~v124R~
        Find -j :join lines around the found word,
                 or join between the found 2 word of "&"(AND) search.
        Find -L :set any line command to the found line.
                 useful in the EXE cmd file.                          ||~v124R~
        F *=Mn all:2 file key matching.
        REP/CRE/APP x/nx:output to a file from only excluded/not excluded
                         lines of current file.
        SPLit strdelm:split line at the point before/after the string.
        JOIn x/nx:join each excluded/not excluded part to a line.
        TC FMT  :field alignment for use of cut & paste.
                 for huge file cannot be opened by xe, use xfmt utility.||~v124R~
        TC ~    :alive count calculation.
                 e.g.)count parallel session at each SYN event time    ||~v124R~||~v128R~
                      for the line containing SYN & FIN time edited   
                      from TCP/IP trace.                              
                 For huge file cannot be opened by xe, use xfmt/xmj    ||~v124R~
                 utility to reduce file size by picking-up some required
                 fields and lines, then join lines by matching key.   
        EXE     :execute multiple sequence of cmd.
                 useful to apply same sequence of cmd to multiple     ||~v124R~
                 files. to create cmd file cmd log file may be useful.||~v124R~
                 ::cl(command log file) is optionally written.        ||~v124R~
(1) Use "d" line cmd to delete unrelated lines such as header lines.

dd  |  5722SS1 V5R2M0 020719                                 Activity Log
dd  | MSGID    SEV MSG TYPE
0003| CPF1124 Info       JOB 956017 18:25:14 started
0004|                  956017                   03/08/28 18:25:14.265840
0005| CPF1164 Comp       18:25:14 03/08/28 JOB 956017 Ended. rc=0.
0006|                  956017                   03/08/28 18:25:14.555056
0007| CPF1124 Info       JOB 956018 18:25:24 started
0008|                  956018                   03/08/28 18:25:24.576336
0009| CPF1124 Info       JOB 956019 18:25:34 started
0010|                  956019                   03/08/28 18:25:34.886520
0011| CPF1164 Comp       18:25:24 03/08/28 JOB 956018 Ended. rc=0.
0012|                  956018                   03/08/28 18:25:24.865520
0013| CPF1164 Comp       18:25:35 03/08/28 JOB 956019 Ended. rc=0.
0014|                  956019                   03/08/28 18:25:35.195192
0015| CPF1124 Info       JOB 956020 18:25:40 started
0016|                  956020                   03/08/28 18:25:40.826792
0017| CPI9803 Info       JOB 956020 assigned.
0018|                  956020                   03/08/28 18:25:41.225128
0019| CPF1164 Comp       18:25:41 03/08/28 JOB 956020 Ended. rc=0.
0020|                  956020                   03/08/28 18:25:41.794896
0021| CPF1124 Info       JOB 956021 18:25:41 started
0022|                  956021                   03/08/28 18:25:41.836736
0023| CPI9803 Info       JOB 956021 assigned.
0024|                  956021                   03/08/28 18:25:42.236168
0025| CPF1164 Comp       18:25:43 03/08/28 JOB 956021 Ended. rc=0.
0026|                  956021                   03/08/28 18:25:43.195912
0027| CPF1124 Info       JOB 956022 18:25:43 started
0028|                  956022                   03/08/28 18:25:43.245872
0029| CPI9803 Info       JOB 956022 assigned.
0030|                  956022                   03/08/28 18:25:43.677712

  |
  |
  v

0003| CPF1124 Info       JOB 956017 18:25:14 started
0004|                  956017                   03/08/28 18:25:14.265840
0005| CPF1164 Comp       18:25:14 03/08/28 JOB 956017 Ended. rc=0.
0006|                  956017                   03/08/28 18:25:14.555056
0007| CPF1124 Info       JOB 956018 18:25:24 started
0008|                  956018                   03/08/28 18:25:24.576336
0009| CPF1124 Info       JOB 956019 18:25:34 started
0010|                  956019                   03/08/28 18:25:34.886520
0011| CPF1164 Comp       18:25:24 03/08/28 JOB 956018 Ended. rc=0.
0012|                  956018                   03/08/28 18:25:24.865520
0013| CPF1164 Comp       18:25:35 03/08/28 JOB 956019 Ended. rc=0.
0014|                  956019                   03/08/28 18:25:35.195192
0015| CPF1124 Info       JOB 956020 18:25:40 started
0016|                  956020                   03/08/28 18:25:40.826792
0017| CPI9803 Info       JOB 956020 assigned.
0018|                  956020                   03/08/28 18:25:41.225128
0019| CPF1164 Comp       18:25:41 03/08/28 JOB 956020 Ended. rc=0.
0020|                  956020                   03/08/28 18:25:41.794896
0021| CPF1124 Info       JOB 956021 18:25:41 started
0022|                  956021                   03/08/28 18:25:41.836736
0023| CPI9803 Info       JOB 956021 assigned.
0024|                  956021                   03/08/28 18:25:42.236168
0025| CPF1164 Comp       18:25:43 03/08/28 JOB 956021 Ended. rc=0.
0026|                  956021                   03/08/28 18:25:43.195912
0027| CPF1124 Info       JOB 956022 18:25:43 started
0028|                  956022                   03/08/28 18:25:43.245872
0029| CPI9803 Info       JOB 956022 assigned.
0030|                  956022                   03/08/28 18:25:43.677712

(2) Use "j" line cmd to join multiple lines to a line.
     specify jj3--jj when record is constructed by 3 lines.

     (When record lines are not same between each record type,
      extract all lines belong to the record type then join it.
     To extract the record lines, exclude all lines by "x all".       
     Then, for ex., a record is constructed by 5 lines, enter "i CP1164 -a4".
     -a4 means display found line and following 4 lines.
     After that, extract the record by "del x all" and append to a file
     using APPend cmd. repeat that for all record type.)              ||~v124R~

jj  | CPF1124 Info       JOB 956017 18:25:14 started
0004|                  956017                   03/08/28 18:25:14.265840
0005| CPF1164 Comp       18:25:14 03/08/28 JOB 956017 Ended. rc=0.
0006|                  956017                   03/08/28 18:25:14.555056
0007| CPF1124 Info       JOB 956018 18:25:24 started
0008|                  956018                   03/08/28 18:25:24.576336
0009| CPF1124 Info       JOB 956019 18:25:34 started
0010|                  956019                   03/08/28 18:25:34.886520
0011| CPF1164 Comp       18:25:24 03/08/28 JOB 956018 Ended. rc=0.
0012|                  956018                   03/08/28 18:25:24.865520
0013| CPF1164 Comp       18:25:35 03/08/28 JOB 956019 Ended. rc=0.
0014|                  956019                   03/08/28 18:25:35.195192
0015| CPF1124 Info       JOB 956020 18:25:40 started
0016|                  956020                   03/08/28 18:25:40.826792
0017| CPI9803 Info       JOB 956020 assigned.
0018|                  956020                   03/08/28 18:25:41.225128
0019| CPF1164 Comp       18:25:41 03/08/28 JOB 956020 Ended. rc=0.
0020|                  956020                   03/08/28 18:25:41.794896
0021| CPF1124 Info       JOB 956021 18:25:41 started
0022|                  956021                   03/08/28 18:25:41.836736
0023| CPI9803 Info       JOB 956021 assigned.
0024|                  956021                   03/08/28 18:25:42.236168
0025| CPF1164 Comp       18:25:43 03/08/28 JOB 956021 Ended. rc=0.
0026|                  956021                   03/08/28 18:25:43.195912
0027| CPF1124 Info       JOB 956022 18:25:43 started
0028|                  956022                   03/08/28 18:25:43.245872
0029| CPI9803 Info       JOB 956022 assigned.
jj  |                  956022                   03/08/28 18:25:43.677712

  |
  |  (Intermediate column is dropped to include in the page)
  v

0003| CPF1124 Info       JOB 956017 18:25:14 started        ... 18:25:14.265840
0005| CPF1164 Comp       18:25:14 03/08/28 JOB 956017 Ended....      03/08/28 18:25:14.555056
0007| CPF1124 Info       JOB 956018 18:25:24 started        ... 18:25:24.576336
0009| CPF1124 Info       JOB 956019 18:25:34 started        ... 18:25:34.886520
0011| CPF1164 Comp       18:25:24 03/08/28 JOB 956018 Ended....      03/08/28 18:25:24.865520
0013| CPF1164 Comp       18:25:35 03/08/28 JOB 956019 Ended....      03/08/28 18:25:35.195192
0015| CPF1124 Info       JOB 956020 18:25:40 started        ... 18:25:40.826792
0017| CPI9803 Info       JOB 956020 assigned.               ...1.225128
0019| CPF1164 Comp       18:25:41 03/08/28 JOB 956020 Ended....      03/08/28 18:25:41.794896
0021| CPF1124 Info       JOB 956021 18:25:41 started        ... 18:25:41.836736
0023| CPI9803 Info       JOB 956021 assigned.               ...2.236168
0025| CPF1164 Comp       18:25:43 03/08/28 JOB 956021 Ended....      03/08/28 18:25:43.195912
0027| CPF1124 Info       JOB 956022 18:25:43 started        ... 18:25:43.245872
0029| CPI9803 Info       JOB 956022 assigned.               ...3.677712

(3) Use Shift F11 to display column gauge which is used by SORT or TC cmd.

  |
  |  (Intermediate column is dropped to include in the page)
  v

col |....+....1....+....2....+....3....+....4....+....5....+....6....+....7..
0003| CPF1124 Info       JOB 956017 18:25:14 started        ... 18:25:14.265840
0005| CPF1164 Comp       18:25:14 03/08/28 JOB 956017 Ended....      03/08/28 18:25:14.555056
0007| CPF1124 Info       JOB 956018 18:25:24 started        ... 18:25:24.576336
0009| CPF1124 Info       JOB 956019 18:25:34 started        ... 18:25:34.886520
0011| CPF1164 Comp       18:25:24 03/08/28 JOB 956018 Ended....      03/08/28 18:25:24.865520
0013| CPF1164 Comp       18:25:35 03/08/28 JOB 956019 Ended....      03/08/28 18:25:35.195192
0015| CPF1124 Info       JOB 956020 18:25:40 started        ... 18:25:40.826792
0017| CPI9803 Info       JOB 956020 assigned.               ...1.225128
0019| CPF1164 Comp       18:25:41 03/08/28 JOB 956020 Ended....      03/08/28 18:25:41.794896
0021| CPF1124 Info       JOB 956021 18:25:41 started        ... 18:25:41.836736
0023| CPI9803 Info       JOB 956021 assigned.               ...2.236168
0025| CPF1164 Comp       18:25:43 03/08/28 JOB 956021 Ended....      03/08/28 18:25:43.195912
0027| CPF1124 Info       JOB 956022 18:25:43 started        ... 18:25:43.245872
0029| CPI9803 Info       JOB 956022 assigned.               ...3.677712

(4) exclude lines to be deleted.

    cmd input line===>x COI9803 all

  |
  |  (Intermediate column is dropped to include in the page)
  v

col |....+....1....+....2....+....3....+....4....+....5....+....6....+....7..
0003| CPF1124 Info       JOB 956017 18:25:14 started        ... 18:25:14.265840
0005| CPF1164 Comp       18:25:14 03/08/28 JOB 956017 Ended....      03/08/28 18:25:14.555056
0007| CPF1124 Info       JOB 956018 18:25:24 started        ... 18:25:24.576336
0009| CPF1124 Info       JOB 956019 18:25:34 started        ... 18:25:34.886520
0011| CPF1164 Comp       18:25:24 03/08/28 JOB 956018 Ended....      03/08/28 18:25:24.865520
0013| CPF1164 Comp       18:25:35 03/08/28 JOB 956019 Ended....      03/08/28 18:25:35.195192
0015| CPF1124 Info       JOB 956020 18:25:40 started        ... 18:25:40.826792
-      1 line excluded ----------------------------------------------------------------------
0019| CPF1164 Comp       18:25:41 03/08/28 JOB 956020 Ended....      03/08/28 18:25:41.794896
0021| CPF1124 Info       JOB 956021 18:25:41 started        ... 18:25:41.836736
-      1 line excluded ----------------------------------------------------------------------
0025| CPF1164 Comp       18:25:43 03/08/28 JOB 956021 Ended....      03/08/28 18:25:43.195912
0027| CPF1124 Info       JOB 956022 18:25:43 started        ... 18:25:43.245872
-      1 line excluded ----------------------------------------------------------------------

(5) Delete useless lines.

    cmd input line===>del x all

  |
  |  (Intermediate column is dropped to include in the page)
  v

col |....+....1....+....2....+....3....+....4....+....5....+....6....+....7..
0003| CPF1124 Info       JOB 956017 18:25:14 started        ... 18:25:14.265840
0005| CPF1164 Comp       18:25:14 03/08/28 JOB 956017 Ended....      03/08/28 18:25:14.555056
0007| CPF1124 Info       JOB 956018 18:25:24 started        ... 18:25:24.576336
0009| CPF1124 Info       JOB 956019 18:25:34 started        ... 18:25:34.886520
0011| CPF1164 Comp       18:25:24 03/08/28 JOB 956018 Ended....      03/08/28 18:25:24.865520
0013| CPF1164 Comp       18:25:35 03/08/28 JOB 956019 Ended....      03/08/28 18:25:35.195192
0015| CPF1124 Info       JOB 956020 18:25:40 started        ... 18:25:40.826792
0019| CPF1164 Comp       18:25:41 03/08/28 JOB 956020 Ended....      03/08/28 18:25:41.794896
0021| CPF1124 Info       JOB 956021 18:25:41 started        ... 18:25:41.836736
0025| CPF1164 Comp       18:25:43 03/08/28 JOB 956021 Ended....      03/08/28 18:25:43.195912
0027| CPF1124 Info       JOB 956022 18:25:43 started        ... 18:25:43.245872

(6) Sort by recordID,in this case that is msgid.
    Each record has different msg format, sort to use Cut & Paste.    

    cmd input line===>sort 2-8

  |
  |  (Intermediate column is dropped to include in the page)
  v

col |....+....1....+....2....+....3....+....4....+....5....+....6....+....7..
0003| CPF1124 Info       JOB 956017 18:25:14 started        ... 18:25:14.265840
0005| CPF1124 Info       JOB 956018 18:25:24 started        ... 18:25:24.576336
0006| CPF1124 Info       JOB 956019 18:25:34 started        ... 18:25:34.886520
0009| CPF1124 Info       JOB 956020 18:25:40 started        ... 18:25:40.826792
0011| CPF1124 Info       JOB 956021 18:25:41 started        ... 18:25:41.836736
0013| CPF1124 Info       JOB 956022 18:25:43 started        ... 18:25:43.245872
0015| CPF1164 Comp       18:25:14 03/08/28 JOB 956017 Ended....      03/08/28 18:25:14.555056
0019| CPF1164 Comp       18:25:24 03/08/28 JOB 956018 Ended....      03/08/28 18:25:24.865520
0021| CPF1164 Comp       18:25:35 03/08/28 JOB 956019 Ended....      03/08/28 18:25:35.195192
0025| CPF1164 Comp       18:25:41 03/08/28 JOB 956020 Ended....      03/08/28 18:25:41.794896
0027| CPF1164 Comp       18:25:43 03/08/28 JOB 956021 Ended....      03/08/28 18:25:43.195912

(7) Arrange field of each record to Sort by JOB number.               ||~v124R~

    To arrange use Cut & Paste. If file has many lines, exclude intermediate||~v124R~
    lines using "x" line cmd for convenient operation.
    Or use shift line cmd such as "(".
    When cursor is in the file contents area, shift effect is limited to the
    left or right half of the cursor position.

  |
  |
  v

col |....+....1....+....2....+....3....+....4....+....5....+....6....+....7..
0003| CPF1124 Info       JOB 956017  started  18:25:14.265840
0005| CPF1124 Info       JOB 956018  started  18:25:24.576336
0007| CPF1124 Info       JOB 956019  started  18:25:34.886520
0009| CPF1124 Info       JOB 956020  started  18:25:40.826792
0011| CPF1124 Info       JOB 956021  started  18:25:41.836736
0013| CPF1124 Info       JOB 956022  started  18:25:43.245872
0015| CPF1164 Comp       JOB 956017 Ended.    18:25:14.555056
0019| CPF1164 Comp       JOB 956018 Ended.    18:25:24.865520
0021| CPF1164 Comp       JOB 956019 Ended.    18:25:35.195192
0025| CPF1164 Comp       JOB 956020 Ended.    18:25:41.794896
0027| CPF1164 Comp       JOB 956021 Ended.    18:25:43.195912

(8) Sort by JOB number to construct Job record/

    cmd input line===>sort 25-30

  |
  |
  v

col |....+....1....+....2....+....3....+....4....+....5....+....6....+....7..
0003| CPF1124 Info       JOB 956017  started  18:25:14.265840
0005| CPF1164 Comp       JOB 956017 Ended.    18:25:14.555056
0007| CPF1124 Info       JOB 956018  started  18:25:24.576336
0009| CPF1164 Comp       JOB 956018 Ended.    18:25:24.865520
0011| CPF1124 Info       JOB 956019  started  18:25:34.886520
0013| CPF1164 Comp       JOB 956019 Ended.    18:25:35.195192
0015| CPF1124 Info       JOB 956020  started  18:25:40.826792
0019| CPF1164 Comp       JOB 956020 Ended.    18:25:41.794896
0021| CPF1124 Info       JOB 956021  started  18:25:41.836736
0025| CPF1164 Comp       JOB 956021 Ended.    18:25:43.195912
0027| CPF1124 Info       JOB 956022  started  18:25:43.245872

(9) Join lines to construct job record into a line.
    Delete by "d" line cmd the lines dose not construct full record.

col |....+....1....+....2....+....3....+....4....+....5....+....6....+....7..
jj  | CPF1124 Info       JOB 956017  started  18:25:14.265840
0005| CPF1164 Comp       JOB 956017 Ended.    18:25:14.555056
0007| CPF1124 Info       JOB 956018  started  18:25:24.576336
0009| CPF1164 Comp       JOB 956018 Ended.    18:25:24.865520
0011| CPF1124 Info       JOB 956019  started  18:25:34.886520
0013| CPF1164 Comp       JOB 956019 Ended.    18:25:35.195192
0015| CPF1124 Info       JOB 956020  started  18:25:40.826792
0019| CPF1164 Comp       JOB 956020 Ended.    18:25:41.794896
0021| CPF1124 Info       JOB 956021  started  18:25:41.836736
jj  | CPF1164 Comp       JOB 956021 Ended.    18:25:43.195912
d   | CPF1124 Info       JOB 956022  started  18:25:43.245872

  |
  |
  v

col |....+....1....+....2....+....3....+....4....+....5....+....6....+....7..
0003| CPF1124 Info       JOB 956017  started  18:25:14.265840 CPF1164 Comp JOB 956017 Ended. 18:25:14.555056
0007| CPF1124 Info       JOB 956018  started  18:25:24.576336 CPF1164 Comp JOB 956018 Ended. 18:25:24.865520
0011| CPF1124 Info       JOB 956019  started  18:25:34.886520 CPF1164 Comp JOB 956019 Ended. 18:25:35.195192
0015| CPF1124 Info       JOB 956020  started  18:25:40.826792 CPF1164 Comp JOB 956020 Ended. 18:25:41.794896
0021| CPF1124 Info       JOB 956021  started  18:25:41.836736 CPF1164 Comp JOB 956021 Ended. 18:25:43.195912

(10) Arrange for TC cmd remaining necessary fields by Cut & Paste.    ||~v124R~

  |
  |
  v

col |....+....1....+....2....+....3....+....4....+....5....+....6....+....7..
0003| JOB 956017  started  18:25:14.265840 Ended.    18:25:14.555056
0007| JOB 956018  started  18:25:24.576336 Ended.    18:25:24.865520
0011| JOB 956019  started  18:25:34.886520 Ended.    18:25:35.195192
0015| JOB 956020  started  18:25:40.826792 Ended.    18:25:41.794896
0021| JOB 956021  started  18:25:41.836736 Ended.    18:25:43.195912

(11) calculate elapsed time of each job.

    cmd input line===>tc 49-63-=23-30

  |
  |
  v

col |....+....1....+....2....+....3....+....4....+....5....+....6....+....7..
0003| JOB 956017  started  18:25:14.265840 Ended.    00:00:00.555056
0007| JOB 956018  started  18:25:24.576336 Ended.    00:00:00.865520
0011| JOB 956019  started  18:25:34.886520 Ended.    00:00:01.195192
0015| JOB 956020  started  18:25:40.826792 Ended.    00:00:01.794896
0021| JOB 956021  started  18:25:41.836736 Ended.    00:00:02.195912

(12) Calculate record count and average, min and max of elapsed time. 

    cmd input line===>tc 49-63+ amm aft

  |
  |
  v

col |....+....1....+....2....+....3....+....4....+....5....+....6....+....7..
0003| JOB 956017  started  18:25:14.265840 Ended.    00:00:00.555056
0007| JOB 956018  started  18:25:24.576336 Ended.    00:00:00.865520
0011| JOB 956019  started  18:25:34.886520 Ended.    00:00:01.195192
0015| JOB 956020  started  18:25:40.826792 Ended.    00:00:01.794896
0021| JOB 956021  started  18:25:41.836736 Ended.    00:00:02.195912
0022|=  =00:00:06.606576; /5=00:00:01.321315; (00:00:00.555056<<00:00:02.195912);

   .Android version.                                                  ||~126BR~
      To enable input extended key such as Fn key, Android version is prepared xe specific keyboard,||~126BR~
      it would be preferable that your terminal is equipped for hardware keyboard.||~126BR~
      See xearme.txt for detail.                                      ||~126BR~
                                                                      ||~126BR~
   .Windows7 64bit.                                                   ||~126FR~
      xe is 32 bit application.                                       ||~126FR~
      Windows7(64bit) redirects 32bit app's access to 64bit only directory to the other directory.||~126FR~
      eg. access to %windir%\system32 is redirected to %windir%\SysWOW64,||~126FR~
      So, xe shows dir-list of c:\windows\SysWOW64\drivers for c:\windows\system32\drivers.||~126FR~
                                                                      ||~126FR~
#if defined(W32)||defined(UNX)                                        ||~127AR~
                                                                      ||~127AR~
   .Symbolic Link(Junction).                                          ||~127AR~
      xe treats symbolic link(and JunctionP/MountP for Windows) as following.||~127AR~
       -Identified by prefix "@" on dir-list, S+F11 display target file name.||~127AR~
         '?' prefix of target name means link error.                  ||~127AR~
         Target not found is a Link error,                            ||~127AR~
           and looped link for Linux.                                 ||~127AR~
         For Windows, looped link is checked at copy with /LT (copy target)option.||~127AR~
       -Copy command applies to only link entry as default             ||~127AR~
          (Timestamp is kept for Windows, since kernel 2.6.22 for Linux).||~127AR~
          Copies actual file/directory if /LT option specified.       ||~127AR~
       -Move command ha no /LT option, move always link entry.        ||~127AR~
       -Delete command delete link entry only.                        ||~127AR~
                                                                      ||~127AR~
     Native command processing is as following.                       ||~127AR~
          Windows now supports Junction Point/Mount Point/Symbolic Link on NTFS.||~127AR~
            Administrator privilege is required to create symbolic link(Execute command prompt as administrator)||~127AR~
                                                                      ||~127AR~
          Windows:copy command:copy actual file/directrory            ||~127AR~
                  xcopy command:copy actual entry if /B is not specified||~127AR~
                  delete command:                                     ||~127AR~
                    delete * in actual directory if target is directrory.||~127AR~
                    delete link if target is file.                    ||~127AR~
                    error for junction.                               ||~127AR~
                  rmdir command:                                      ||~127AR~
                    delete link if target is directory.               ||~127AR~
                    error if target is directory.                     ||~127AR~
                    delete link for junction.                         ||~127AR~
                  explorer                                            ||~127AI~
                    delete link.                                      ||~127AI~
          Linux:cp command                                            ||~127AR~
                    cp -s:copy link if target is file.                ||~127AR~
                    cp -d:copy link if target is dir.                 ||~127AR~
                rm command                                            ||~127AR~
                    remove symbolic only                              ||~127AR~
                                                                      ||~127AR~
#endif                                                                ||~127AR~
                                                                      ||~127AR~
********************
  (E) Terminology  *
********************
   - Work directory.
     You can use (::) as path name of the work directory.
     e.g. ::xyz   --->file name xyz in the work directory.            ||~v128R~
     Especially ::cb is work file used for Cut and Paste,             ||~v124R~
     You can also edit it directly, then paste it.                    
     ::so is stdout+stderr from OS native command to chk result of command.
     After write into work directory by REPl ::tmp,
     read it into current screen     by COPy ::tmp.
     It is alternative way of Cut & Paste.
     By APPend cmd you can gather copy source line from files.
#ifdef UNX
     You must specify work directory by env-variable(export xe=xxx)
     or by command line parameter(-wxxx).
     Work directory named xe_wdnnnnn(nnnnn:user id) is created
     automatically in ~/ (HOME) if none is specified.                 
#else
     You must specify work directory by environment variable(set xe=xxx)
     or by command line parameter(/Wxxx).
     If none is specified, c:\xe_wd is created and used as work dir.  
#endif

   - CID (Change ID).                                           
     You can set CID tag on the modified lines by default.            
     CID type is determined by file extension. Default is             ||~v124R~
            type c   for  .c/.h/.cpp/.hpp/.java  format: //~ymddr~    ||~v124R~
            type asm for  .asm                   format: ;;~ymddr~    ||~v124R~
            type doc for  .doc/.me               format: ||~ymddr~    ||~v124R~
                                                                      
                y :Last digit of year.                                
                m :month(A,B,C for Oct,Nov,Dec)                       
                dd:day                                                
                r : I(Inserted), M(Moved), R(Replaced)                
                (Third letter (~) is (+) for the latest update lines) 
       (warning) Compile option is required for some c compiler to treat||~v124R~
                "//" as line comment.                                 
                                                                      
    You must explicitly specify type by CID command for the file which extension is out of list.||~v29tR~
    Or, specify pair of 2 byte tag sign and extension list on INI file.||~v29tR~
    It is also possible to use a single Unicode character as the CID prefix.||~v29tR~
    (Open files with that extension as UTF8 files.)                   ||~v29tR~
    If you want to set something other than the date, use the following CID Header||~v29tR~
    e.g) (ini file specification)                                     ||~v29tR~
         Change_ID_Type_C  = 68 = "//" = C,H,CPP,HPP,JAVA             ||~v29tR~
         Change_ID_Type_ASM= 68 = ";;" = ASM                          ||~v29tR~
         Change_ID_Type_DOC= 71 = "||" = DOC,ME                       ||~v29tR~
         Change_ID_Type_4  = 60 = u-235d= APL                         ||~v29tR~
    The CID-type option of the CID command can be also specify the first of extension list.||~v29tR~
    Either "cid on //" or "cid on C" is OK.                           ||~v29TR~
                                                                      
    You can also set a CID which is effective only to that file by coding||~v29TR~
    called CID Header.
    Sample CID Header line is inserted by "CID TOP" or "CID TOPA" cmd
    on the top line of each file like as following.                   ||~v29tR~
                                                                      ||~v29tR~
    "CID:xx+XXXXR~yy:#nnn option=(option1,option2,...) update#=nnnnn;"
                                                                      ||~v29tR~
     e.g)   //CID://+vbi3R~:#71            update#=  356;             ||~v29tR~
                                                                      ||~v29tR~
        CID: is specification id of any 4 char CID.
             (It can be changed by INI file option.
              Fixed_CID_prefix value,max 15 byte)
        xx   is same top 2 byte as one of predefined on INI file.
             or any 2 byte SBCS char as CID type.
             Single Unicode character can be specified in UTF8 file.  ||~v29tR~
             For example, APL language comment prefix are u-235d(UTF8:e28d9d), so the Header line looks like following.||~v29tR~
               "⍝ CID:⍝+DATER~: update#= 1"                         ||~v29tR~
             You may see spaces after prefix by char width on the display, but there should be no spaces between them on the record.||~v29tR~
             For single column width unicode                          ||~v29tR~
               "//*CID:À+v001R~:#71 update#= 29;"                     ||~v29tR~
             When using Unicode, the display width varies depending on the language environment,||~v29TI~
             so be careful when sharing the file.                     ||~v29TI~
             For example, if Windows displays by 2 columns and Linux displays 1 column,||~v29TI~
             the CID tagged to the update line on Windows is not recognized as CID on Linux.||~v29TI~
             So the "cid clear" command on Linux may return 0 rows.   ||~v29TI~
        XXXX is any 4 byte ASCII code CID like as v094.               ||~v29tR~
             Time stamp type CID ymdd is set if "DATE" is coded.
             No CID is set if specified "NONE", use this pattern when ||~v29tR~
             you need to use option= parm only.
        yy   0 to max 2 byte any optional postfix string. ASCII only. ||~v29tR~
        nnn  is CID set column of 1 to 256.
             this parameter is optional.
             If omitted, column is of INI file when CID type is       
             of predefined on INI file or 1 when not pre-defined.
        other(+,R,~,:,#) character must be coded rigidly like that.
        (~) is omittable,8 byte CID is set if omitted.
        Use 8 byte CID for COBOL with cid on col73-80.

        option=(...) is optional parameter. Each option is following. ||~v124R~
          Fnn     :Fixed-Record-Length                                
          Mnn     :margin.
                   nn:boundary of Left-Right margin(column of right end
                      of Left margin)
          N       :SPF(line-numbered) file. Specify with margin.      ||~v124R~
          COB     :COBOL file. Specify with margin.                   ||~v124R~
          COBK    :COBOL file with col1-6 as comment column.
                   Without N option, line length is not limited to 80.
          Px      :protect option for Right margin.
                   x:0:Not protected, 1:protected. Default is P1.
          tabclear:replace tab by space at file save.
        update#= is optional parameter. Update counter is automaticaly||~v124R~
        maintained and set after this word for each save time.

   - Margin.
     .Support margin if option=(Mnn) on CID header line.
      Column 1-nn is Left margin(or In-margin),(nn+1)-end of line is Right
      margin(or Out-of margin).
     .Fn[-m] option of edit command allows to set margin.             
      F means fixed record length and n is record length, m is margin.
     .Bounds command set margin for some command sensitive to such margin.
     .Different display attr is set for Left and Right margin.
     .CID position can be on Left or Right margin.
      If CID is in Left margin, CID is not set for the line where data exist
      on that pos.
      If CID pos is in right margin or no margin defined, CID is appended
      when CID pos is filled by data.
      For CID CLEAR/SHIFT command, CID search range is limited to     
      the margin.
      In the case CID pos is in Left margin, it may not be right end of left
      margin. You can use the next column of CID as line continuationID column.||~v124R~
     .Right margin protection.
      Option is specified on CID header line like as option=(Px).
      x:0=Not protected, 1:Protected.
      (Specify like as option=(M72,P0) for multiple options)
     .Interference.
      Expansion and contraction act on the margin only, but overflow  
      except space and tab from Left margin is rejected.
     .Search range specification support on Find/Change command.
      Margin can be specified as range operand.

   - SPF(Line-Numbered 80byte fixed length) file.
     .Special case of margin specified file.
      This type file has line number field on the line end and
      all line has same length.
      Specify option=(N) on CID header line.
      It is easy, on PC, to maintenance main frame punched card file  
      (80 byte fixed record length text file).
      Line number field(on Right margin) is input protected and
      page shift scroll width is limited up to the line end.          
      EB/BB/SB cmd(alias of Edit/Browse/Select cmd with /Mn option)
      treat file without CID header as Line-Numbered-File             ||~v124R~
     .Line number field format is nnnnssuu.
      nnnn:line number  ss:suffix  uu:update level
      Maximum update level number among all lines is assigned to the
      file, and File update level number +1 is set to all updated lines
      when save.
      Size of line number display column on the left of screen is
      set to 7 at file open and of nnnnsss format.
     .If invalid line(wrong length, not numeric line number field,line
      number sequence err) exist at open, use RENum cmd to correct it 
      (cutting or space padding to the fixed length then renumber).   ||~v124R~
     .Line number field protection is reset when wrong line detected
      at copy operation by Copy cmd/Copy line cmd.
     .Update level number is displayed or changed by VER cmd.
      If file update level is changed downward, each line update level
      is changed downward relative to the level of command operand
      at save file(max is the level, min is 1).If it is changed to    
      upward, only updated line is set to the new level.              
      This operation is undo-able.                                    ||~v124R~
     .All Tab is replaced by space at save.
     .Also CID can be set to Line-Numbered-File.
     .COBOL is one of Line-Numbered-File.
      COBOL lineno is on col1-6.Col 73-80 is optionally line number column.||~v124R~
      Without option=(n),CID may set on 73-80 field.
      Col1-6 may be optionally all space.                             ||~v124R~
      Renum,num clear,indentation and display start offset function
      consider COBOL file.

   - Long line.
     .Long line over 32760(999 for DOS version) bytes is displayed as ||~v127R~
      multiple split line.                                            
     .Long line is saved as long line. No intermediate cr+lf is       
      inserted.
     .Insert/Copy line operation dose not split line, but inserted    
      line is a part of long line.
     .Split line as source of copy operation is treated as split.     
     .To split to 2 lines ,use Split-Line key at the end of any line.
     .Different display char of line number column delimiter to
      identify each spilt line updated.                               
     .CID is added on end of last of split lines.                     
     .Join line cmd(j) treat split lines as a line up to CRLF.         ||~v124R~
     .Split line is separated multiple line by SPLit cmd.             
      SPLit cmd allow splitting char to specify word boundary to split.

   - ADS(Alternative Data Stream).
     .NTFS supports multiple data stream attached to each file/dir.
      Accessed by naming convention of file-name:stream-name,         ||~v124R~
      echo command will create stream like as
        echo "text" > abc.ext:stream1 (1 byte base name may be error)
      dir command or explorer cannot display stream.
      cat command if you have display the stream contents like as
        cat abc.ext:stream1.
      To delete ADS(ADS size cannot be reduced) copy the file to
      not NTFS volume then CopyBack after deleted the file.
     .If ADS exist, S+F10 display top 47 bytes of ADS on dir-list panel.
      /Md option of Edit/Browse command also display ADS at open dir-list.
      If no ADS exist,top 48 byte of the file is displayed.
     .Utility xads.exe supports to check and access ADS.
************************************************************************
(1).Function-Key default assignment
************************************************************************

[Table 1-R] Function-Key default assignment/by key sequence
    You can see this on xe by "=C" command.                           ||~v129R~
 +-------+--------------+--------------+--------------+--------------+
 |  Key  |     Base     |    Shift     |     Alt      |    Ctrl      |
 +-------+--------------+--------------+--------------+--------------+
 |Esc    |Reset         |              |              |              |
 |Tab    |Next Tab      |Prev Tab      |              |              |
 |BS     |Backspace     |Erase TOL     |Toggle Csr Dn |              |
 |Enter  |Exec+Next Line|Split Line    |Next Line     |              |||~v124R~
 |Ins    |Insert Toggle |Insert Line   |Block Insert  |SameAsLeft(*4)|
 |Del    |Delete Char   |Delete Line   |Block Cut     |SameAsLeft(*4)|
 |Home   |Cursor Home   |              |              | (*4)         |
 |End    |Erase EOL     |Clear TOL     |Block Clear   | (*4)         |
 |PgUp   |Page Up       |Top of File   |              | (*4)         |
 |PgDn   |Page Down     |End of File   |              | (*4)         |
 |Up     |Up            |Scroll Up 1 Ln|              | (*1) (*4)    |
 |       |              |Next Value    |              | (*1)         |
 |       |              |              |SendFName-Up  |              | (*6)
 |Down   |Down          |Scroll Dn 1 Ln|              | (*2) (*4)    |
 |       |              |Prev Value    |              | (*2)         |
 |       |              |Next Value    |SendFName-Down|              | (*6)
 |Left   |Left          |Top of Line   |Path Up       | (*4)         |
 |Right  |Right         |End of Line   |Path Down     | (*4)         |
 |F1     |Cancel        |Undo          |              | (*3)         |
 |F1     |Cancel        |Refresh       |              | (*3)         |
 |F2     |HSplit        |VSplit        |              |              |
 |F3     |End           |Save          |              |              |
 |F4     |Return        |Quit          |              |              |
 |F5     |Re-Find (*5)  |Re-Find(rev)  |              |              |
 |                          (Shift+)-->|FindPSF-rev   |FindPSP-rev   |||~v129R~
 |F6     |Re-Change     |Re-Chng(rev)  |RgnStart/End  | (*3)         |
 |       |Size option   |              |              | (*3)         |
 |F7     |Page Up       |Prev Panel    |BlockStart/End|SameAsLeft    |
 |F8     |Page Down     |Next Panel    |BlockCopy Over|SameAsLeft    |
 |F9     |Swap          |Exit          |BlockSave     |SameAsLeft    |
 |F10    |Scroll Left   |Repeat Line   |              |Hex Vertical  | (*3)||~v124R~
 |       |Linecmd Cut   |FileDescript'n|              |              | (*3)
 |F11    |Scroll Right  |Column gauge  |              |Hex input mode| (*3)
 |       |Linecmd Paste |LongFileName  |              |              | (*3)
 |F12    |Retrieve      |Retrieve(rev) |RetrieveScr   |Repeat cmd    |||~v124R~||~v129R~
 |                          (Shift+)-->|RetrieveScrRev|CmdHistoryList|||~v129R~
 |       |              |              |              |              |
 |a      |              |              |Input Shortcut|              |||~v124R~
 |b      |              |              |BLK Start/End |              |
 |c      |              |              |BLK Insert    |              |
 |d      |              |              |BLK Cut       |              |
 |       |              |              |SendFName-Del |              | (*6)
 |e      |              |              |BLK Clear     |              |
 |f      |              |              |Line Inc 1st  |              |
 |g      |              |              |JumpToHexPart |              |||~v124I~
 |h      |              |              |Line Marking  |              |
 |i      |              |              |Line Ins Copy |              |
 |       |              |              |SendFName-Ins |              | (*6)
 |j      |              |              |Line Ins CutMv|              |
 |k      |              |              |Line Ins ClrMv|              |
 |l      |              |              |Line Inc Last |              |
 |m      |              |              |BLK Cut Move  |              |
 |n      |              |              |BLK Clear Move|              |
 |o      |              |              |BLK Over Space|              |
 |p      |              |              |BLK Copy Over |              |
 |q      |              |              |Disp. Shortcut|              |||~v124R~
 |r      |              |              |Repeat Line   |              |
 |       |              |              |SendFName-Rep |              | (*6)
 |s      |              |              |Split Line    |              |
 |t      |              |              |Erase EOL     |              |
 |u      |              |              |UTF SWKBD     |              |||~v124R~
 |v      |              |              |StandardPaste |              |
 |w      |              |              |WordCopyToCB  |thenPasteToCmd|||~v124R~
 |x      |              |              |Line Exclude  |              |
 |y      |              |              |Line Include  |              |
 |z      |              |              |3270 Hotkey   |              |||~v124R~
 |.      |              |              |Pair search   |              |
 |,      |              |              |Pair search-NX|              |
 |/      |              |              |XML pair srch |              |||~v129R~
 |[      |              |              |FwdSrch-NoCase|FwdSrch-Case  |||~v124R~
 |]      |              |              |BwdSrch-NoCase|BwdSrch-Case  |||~v124R~
 |:      |              |              |Combining Char|              |||~v125R~
 |;      |              |              |Allow Ligature|              |||~v125R~
 |1      |              |              |Graph Char BL |              |
 |2      |              |              |Graph Char BT |Null char,0x00|
 |3      |              |              |Graph Char BR |              |
 |4      |              |              |Graph Char LT |              |
 |5      |              |              |Graph Char CX |              |
 |6      |              |              |Graph Char RT |              |
 |7      |              |              |Graph Char TL |              |
 |8      |              |              |Graph Char TT |              |
 |9      |              |              |Graph Char TR |              |
 |-      |              |              |Graph Char HL |              |
 |^      |              |              |Graph Char VL |              |
 +-------+--------------+--------------+--------------+--------------+
 |10Key  |              |              |              |              |
 |  1    | (End  ) (*4) |              |              |Graph Char BL |
 |  2    | (Down ) (*4) |              |              |Graph Char BT |
 |  3    | (PgDn ) (*4) |              |              |Graph Char BR |
 |  4    | (Left ) (*4) |              |              |Graph Char LT |
 |  5    |              |              |              |Graph Char CX |
 |  6    | (Right) (*4) |              |              |Graph Char RT |
 |  7    | (Home ) (*4) |              |              |Graph Char TL |
 |  8    | (Up   ) (*4) |              |              |Graph Char TT |
 |  9    | (PgUp ) (*4) |              |              |Graph Char TR |
 |  -    |              |              |              |Graph Char HL |
 |  +    |              |              |              |Graph Char VL |
 |  Enter|Exec+Next Line|Split Line    |              |              |||~v124R~
 +-------+--------------+--------------+--------------+--------------+
                                                                      
    BL:BottomLeftCorner  BT:BottomTee    BR:BottomRightCorner         
    LT:LeftTee           CX:CenterCross  RT:RightTee                  
    TL:TopLeftCorner     TT:TopTee       TR:TopRightCorner            
    HL:HorizontalLine    VL:VerticalLine                              ||~v124R~
    In the Japanese environment, set Shift-JIS (Windows) or EUC-JP (Linux) line drawing character||~v29tR~
	(displayed on the opt0.3 screen of "=C").                         ||~v29tR~
    	┗ ┻ ┛┣ ╋ ┫┏  ┳ ┓━ ┃                                ||~v29tR~
                                                                      
(*1)Up-arrow
    Lower row for Color setting screen, Upper for others.             
(*2)Down-arrow
    Lower row for Color setting screen, Upper for others.             
(*3)F1,F6,F10,F11
    Lower row for directory list screen, Upper for BROwse/EDIt.       
    (Ctrl+10key is not avail for AIX version)
(*4)10key generate same code as specified in ( ) without NumLock.
    Ctrl+10key generate same code as specified in ( ) regardless NumLock.
    So, for ex., "Ctrl+Ins" is same as "Ctrl+10key-0" and horizontal line
    char is produced.
    AIX version dose not support 10key,use Ctrl+Ins etc.
(*5)On utility panel 3.12 and 3.14,splits screen then open the dir-list panel
    according to input (wildcard)path on the line.                    
(*6)These keys are used to send filename from dir-list panel to utility panel.
                                                                      
[Table 1] Function-Key default assignment                                  
    You can see this on xe by "=B" command.                           ||~v129R~
 +-----------------+--------+---------------------------------------+
 |Function         |Command |Key assign(*:Fixed,you cannot change)  |
 +-----------------+--------+---------------------------------------+
 |Execute+Next Line|ENT     |10key-Enter(*), Enter(*) #1(Right Ctrl)| ||~v124R~
 |Next Line        |        |Alt+Enter                #1(Enter)     |
 |Reset            |RES     |Esc(*)                   #7            |
 |Insert Toggle    |INS     |Ins(*)                                 |
 |Cursor Right/Down|CSD     |Alt+Backspace                          |
 |Hex Vertical     |HEX     |Ctrl+F10                               | ||~v124R~
 |Hex input mode   |XIN     |Ctrl+F11                               |
 |Up               |        |Up-arrow(*)            #13             |
 |Down             |        |Down-arrow(*)          #13             |
 |Left             |        |Left-arrow(*)          #13             |
 |Right            |        |Right-arrow(*)         #13             |
 |Next Tab         |        |Tab(*)                 #11             |
 |Prev Tab         |        |Shift+Tab(*)                           |
 |Top of Line      |        |Shift+Left-arrow                       |
 |End of Line      |        |Shift+Right-arrow                      |
 |Scroll Up 1 Line |        |Shift+Up-arrow         #8              |
 |Scroll Dn 1 Line |        |Shift+Down-arrow       #8              |
 |Next Value       |        |Shift+Left-arrow       #8              |
 |Prev Value       |        |Shift+Right-arrow      #8              |
 |Cursor Home      |HOM     |Home                                   |
 |Page Up          |UP      |PgUp(*),F7                             |
 |Page Down        |DOW     |PgDn(*),F8                             |
 |Scroll Left      |LEF     |F10                                    |
 |Scroll Right     |RIG     |F11                                    |
 |Set-Scroll-Size  |SCR     |                                       |
 |Top of File      |TOP     |Shift+PgUp                             |
 |End of File      |BOT     |Shift+PgDn                             |
 |Backspace        |        |Backspace(*)                           |
 |Delete Char      |        |Del(*)                                 |
 |Delete Line      |        |Shift+Del                              |
 |Erase End of Line|        |End,Alt+t                              |
 |Erase Top of Line|        |Shift+Backspace                        |
 |Clear Top of Line|        |Shift+End                              |
 |Split Line       |        |Shift+Enter,Shift+10key-Enter,Alt+s #2 |
 |Insert Line      |        |Shift+Ins                              |
 |Repeat Line      |        |Shift+F10,Alt+r                        |
 |Block Start/End  |        |Alt+F7,Alt+b,Ctrl+F7           #3      |
 |Block Save       |        |Alt+F9,Ctrl+F9                 #3      |
 |Word  Save       |        |Alt+w                          #3      |
 |Word  PasteToCmd |        |Ctl+w                          #3      | ||~v124R~
 |Block Insert     |        |Alt+Ins,Alt+c,Ctrl+Ins         #3      | ||~v124R~
 |Block Copy Over  |        |Alt+F8,Alt+p,Ctrl+F8           #3      |
 |Block Over Space |        |Alt+o                          #3      |
 |Block Cut        |        |Alt+Del,Alt+d,Ctrl+Del         #3      |
 |Block Clear      |        |Alt+End,Alt+e                  #3      |
 |Block Cut Move   |        |Alt+m                          #3      |
 |Block Clear Move |        |Alt+n                          #3      |
 |Line Marking     |        |Alt+h                          #3      |
 |Line Insert Copy |        |Alt+i                          #3      |
 |Line Ins Cut Move|        |Alt+j                          #3      |
 |Line Ins Clr Move|        |Alt+k                          #3      |
 |Line Exclude     |        |Alt+x                                  |
 |Line Include     |        |Alt+y                                  |
 |Line Include 1'st|        |Alt+f                                  |
 |Line Include last|        |Alt+l                                  |
 |Input Shortcut   |        |Alt+a                          #12     | ||~v124R~
 |Display Shortcut |        |Alt+q                          #12     | ||~v124R~
 |ScreenHardCopy   |        |Alt+z,Ctl+h                    #16     | ||~v130I~||~v130R~
 |Dir Size option  |        |F6                                     |
 |Dir LongFileName |LFN     |Shift+F11                              |
 |Dir FileDesc     |        |Shift+F10                      #14     |
 |Dir Linecmd Cut  |        |F10                            #9      |
 |Dir Linecmd Paste|        |F11                            #9      |
 |HSplit           |HSP     |F2                                     |
 |VSplit           |VSP     |Shift+F2                               |
 |Swap             |SWA (W) |F9                                     |
 |Next Panel       |NEX (+) |Shift+F8                               |
 |Prev Panel       |PRE (-) |Shift+F7                               |
 |Call Menu        |=       |                                       |
 |Exit             |EXI     |Shift+F9                               |
 |Return           |RET     |F4                                     |
 |Quit             |QUI     |Shift+F4                               |
 |End              |END     |F3                                     |
 |Save             |SAV (S) |Shift+F3                               |
 |Cancel           |CAN     |F1                                     |
 |Edit             |EDI (E) |                                       |
 |Browse           |BRO (B) |                                       |
 |PathUp           |DPU     |Alt+Left-arrow                 #15     | ||~v124R~
 |PathDown         |DPD     |Alt+Right-arrow                #15     | ||~v124R~
 |Select           |SEL (S) |                                       |
 |Create           |CRE     |                                       |
 |Replace          |REP     |                                       |
 |Copy             |COP     |                                       |
 |Move             |MOV     |                                       |
 |Drop set of lines|DRO     |                                       |
 |Undo             |UND (U) |Shift+F1                               |
 |Redo             |RED     |Ctrl+F2                                | ||~v126R~
 |Locate           |LOC (L) |                                       |
 |Ligature mode    |LIG     |A+;                                    | ||~v129R~
 |Combine mode     |CMB     |A+:                                    | ||~v129R~
 |Cursor move      |POS     |                                       |
 |Char input       |KEY     |                                       |
 |Find(Casesense)  |FIN (F) |                       #4              |
 |Find(Caseinsense)|IFI (I) |                       #4              |
 |Find & Exclude   |EXC (X) |                       #4              |
 |do.(Caseinsense) |IX      |                       #4              |
 |Re-Find          |        |F5                     #4              |
 |Re-Find(reverse) |        |Shift+F5               #4  #5          |
 |Find SplitScr    |        |Ctrl+F5                                | ||~v129R~
 |Find SplitScr-rev|        |Shift+Ctrl+F5                          | ||~v129R~
 |Find OnTheScr    |        |Alt+F5                                 | ||~v129R~
 |Find OnTheScr-rev|        |Shift+Alt+F5                           | ||~v129R~
 |WordFindFwdCase  |FWF     |Ctl+] , Alt+Shift+]                    | ||~v124R~
 |WordFindBwdCase  |FWB     |Ctl+[ , Alt+Shift+[                    | ||~v124R~
 |WordFindFwdNoCase|IWF     |Alt+[                                  | ||~v124R~
 |WordFindBwdNoCase|IWB     |Alt+]                                  | ||~v124R~
 |Change           |CHA (C) |                       #4              |
 |Re-Change        |        |F6                     #4              |
 |Re-Chng(reverse) |        |Shift+F6               #4  #5          |
 |Retrieve         |        |F12                    #6              |
 |Retrieve(reverse)|        |Shift+F12              #6              |
 |Repeat-cmd       |        |Ctl+F12                                |
 |RetrieveOfTheScr |        |Alt+F12                                |
 |RetrOfTheScrRev  |        |Shift+Alt+F12                          | ||~v129R~
 |CmdHistoryList   |CHL     |Shift+Ctrl+F12                         | ||~v129R~
 |Exchange-exclude |FLI (XX)|                                       | ||~v124R~
 |Line-no display  |NUM     |                                       |
 |CapsLock         |CAP     |                                       |
 |Re-number        |REN     |                                       |
 |Sort             |SOR     |                                       |
 |Line-split       |SPL     |                                       |
 |TextFlow         |TFL     |                                       | 
 |Refresh          |REF     |Shift+F1                               |
 |Basic-Calc       |XBC     |                                       |
 |Table-Calc       |TC      |                                       |
 |Version          |VER     |                                       |
 |Tab interval     |TAB     |                                       |
 |Column gauge     |COL     |Shift+F11                              |
 |Line Change tag  |CID     |                                       |
 |INI write        |INI     |                                       |
 |Option set       |OPT     |                                       |
 |Submit file      |SUB     |                                       |
 |Async submit     |SPA (&) |                                       |
 |CMD file execute |EXE     |                                       |
 |OpenByAssociated |ASS (!) |                                       |
 |Command by Timer |AT      |                                       |
 |Sleep            |SLE     |                                       |
 |DOS command      |DOS (>) |(CMD or COMmand can be used.)          |
 |Help             |HEL (?) |                                       |
 |                 |        |                                       |
 |Null char 0x00   |        |Ctrl+"2"               #10             |
 |                 |        |                                       |
 |Graphic Char BL  |        |Alt+"1",Ctrl+10key-"1"                 |
 |Graphic Char BT  |        |Alt+"2",Ctrl+10key-"2"                 |
 |Graphic Char BR  |        |Alt+"3",Ctrl+10key-"3"                 |
 |Graphic Char LT  |        |Alt+"4",Ctrl+10key-"4"                 |
 |Graphic Char CX  |        |Alt+"5",Ctrl+10key-"5"                 |
 |Graphic Char RT  |        |Alt+"6",Ctrl+10key-"6"                 |
 |Graphic Char TL  |        |Alt+"7",Ctrl+10key-"7"                 |
 |Graphic Char TT  |        |Alt+"8",Ctrl+10key-"8"                 |
 |Graphic Char TR  |        |Alt+"9",Ctrl+10key-"9"                 |
 |Graphic Char HL  |        |Alt+"-",Ctrl+10key-"0",Ctrl+10key-"-"  |
 |Graphic Char VL  |        |Alt+"^",Ctrl+10key-".",Ctrl+10key-"+", |
 |                 |        |Alt+"="                                |
 +-----------------+--------+---------------------------------------+

#ifdef UNX
 +-----------------+--------+---------------------------------------+
 |UserName/ID      |        |Shift+F6                               |
 +-----------------+--------+---------------------------------------+
#endif
   - You can customize Function-key assignment by preparing modified  ||~v124R~
     XE.INI file.(You can, using INI command, re-create that file with
     default value).
   - Char typed in parenthesis of command column is abridgement.

#ifdef UNX
#else
   - #1:If you specified /Yr on the exe parameter, it is assigned Right-Ctrl
        to "Execute+Next Line" and Enter to "Next Line".
#endif

   - #2:Delete carriage return mark at the end of line to join with nextline.||~v124R~
        And if next line is concatenated line it is concatenated as whole.||~v124R~
   - #3:About Cut and Paste.  Refer (0)-(D).
   - #4:Find/Change parameter is saved at editor termination, so you can
        continue re-find/re-change same word of previous run.         
   - #5:To change direction of word search, press reverse Find/Change key
        only once, then press Re-find/Re-change to continue search to 
        that direction.
   - #6:Command retrieve. Maximum 20 (it can be change by INI file)   ||~v124R~
        command string is stacked.(same cmd string as previously entered
        is not duplicately saved but moved to top of stack).
        Retrieve is available over session termination.
   - #7:Use in following case.
        .cancel response to confirmation message.                     
        .stop and reset range specification of Cut & Paste.
        By pressing reset key twice or "RESet" command, following occur.||~v124R~
        .reset reverse character of found word or copied range by Cut &
         Paste
        .clear line command except label which is not yet processed.
        To clear label cmd, use Esc 3 times or Reset cmd with "L" option.
   - #8:"Scroll Up 1 Line"/"Scroll Dn 1 Line" works on Browse/Edit,
        Directory list and Command Result edit screen.
        "Next Value"/"Prev Value" works on the screen other than else,
        and are effective on the limited fields.
        For example on "OPTION - 1 COLOR" screen, it increase/decrease
        RGB level value.

   - #9:Dir Linecmd Cut/Paste is used to copy line command input of
        a(attrib)/c(copy)/m(move)/r(rename)/o(open)/%(apply cmd) on dir list.
        Use F10 at the status of command input or of copy/move target
        displayed after Execute, then use F11 on the line you want to 
        duplicate the command.
   - #10:For other than x00,see (6).INI file,Valid_Ctrl_char.
   - #11:Tab(next) move cursor to next tab position if replace mode.
         When insert mode it is tab char(x09) input with cursor movement,
         which is to next tab position if text mode and to next column
         if binary mode.
   - #12:String input Shortcut key.                                   ||~v124R~
         See (E)Terminology of (0)Introduction.                       ||~v124R~
   - #13:Direction arrow key.
        .When scroll lock is on, arrow key scrolls file contents       ||~v124R~
         screen by one column to the direction.
         For dir-list screen scroll is up and down only.
		 This is not work for Linux console version.
        .GUI version(wxe,gxe) supports mouse with horizontal scroll function.
         If scroll lock is off, horizontal wheel scrolls screen by    
         the column specified on Setup dialog panel.
   - #14:Toggle to display file description.
   	    .Display 48 byte file description on rename column up to end of line.||~v124R~
        ."description" is gotten as following.
         For Windows version, read from top of stream named "xe-desc".
         This "stream" is one of ADS(Alternative Data Stream) of NTFS.
         ":"+47 byte stream is displayed.
         When "xe-desc" is not set up or for other than Windows version,
         read top 1024 byte of the file itself.
         If ":DID" is contained in the range of 1024 byte, display    
         from the next of ":DID" string to the EndOfLine.
         If no "DID:" found, display from top to EndOfLine of 1st not null line
         of the file. Control char(<0x20) is replaced by ".".
   - #15:PathUp displays the parent directory of the file currently displayed.||~v124R~
         PathDown back to the file before PathUp.                     ||~v124R~
   - #16:Output to ::hcopy(file in workDir)                           ||~v130I~||~v130R~
         Ctrl+h is available except Linux Console version.            ||~v130I~||~v130R~
                                                                      ||~v124R~
************************************************************************
(2).Panel
************************************************************************
********************                                                  
*(A) Menu          *
********************                                                  
                                                                      
     1    -------------- MENU ----------------------------------------
     2    ===>                                                        
#ifdef UNX
     3                                                hostname = myhost
#else
     3
#endif
     4    0  PARM         - Parameter Change
     5       0.0 (0) COLOR   - Palette and Color
     6       0.1 (A) Fn-CMD  - Assign cmd-string to PFkey             ||~v124R~
     7       0.2 (B) FUNC-KEY- Change Key Assignment
     8       0.3 (C) KEY-FUNC- Browse Key List
     9    1  BROWSE       - Display File
    10    2  EDIT         - Edit/Create File
    11    6  COMMAND      - Edit Command Result
    12    X  EXIT         - Save and Split End
    13    R  RETURN       - Save and Exit
    14    Q  QUIT         - Quit and Exit
                                                                      
       row 1     :Header,message display line                         
       row 2     :Command input line                                  
                  Enter Option like as 0,1,2...                       
                  You can also enter command EDIt etc.                ||~v124R~
       row 4-14  :Options
                  0  PARM     :Set parameter
                     0.0 (0) COLOR   : adjust color
                     0.1 (A) Fn-CMD  : set Command-Key
                     0.2 (B) FUNC-KEY: Change Key Assignment
                     0.3 (C) KEY-FUNC: Browse Key List
                  1  BROWSE   :Display file name input panel to browse
                  2  EDIT     :Display file name input panel to edit  
                  6  COMMAND  :Display DOS command result Edit screen
                  X  EXIT     :Save and End one of split screen.      
                               same as RETURN if not split.           
                  R  RETURN   :Save all files and return to cmd prompt
                  Q  QUIT     :Cancel all files and return to cmd prompt

  **************
  * 0.0 Color  *
  **************

          0        1         2         3         4         5           8
          12345678901234567890123456789012345678901234567890....34567890
     1    OPTION - 1 ---- COLOR ----------------------------....----Rep
     2    ===>                                                        
     3                                                                
     4    *Palette number assign (0 to 15) ****************....********
     5       Part of screen  palette no.             sample
     6                       FG / BG (curr.,default)                  
     7       Title-Line      __ / __ (15/ 1, 15/ 1 ) ------- MENU -------
     8       Panel-Frame     __ / __ ( 7/ 0,  7/ 0 ) ===>command line etc
     9       Browse-Lineno   __ / __ ( 2/ 0,  2/ 0 ) 0001000| Browse  scr
    10       Browse-File     __ / __ ( 7/ 0,  7/ 0 )                  
    11       Edit-Lineno     __ / __ ( 2/ 0,  2/ 0 ) 0001000| Edit    scr
    12       Edit-File       __ / __ (14/ 0, 14/ 0 )                  
    13       DirList-Linecmd __ / __ (14/ 0, 14/ 0 ) 003|||. DIRLIST  EXE
    14       DirList-Lineno  __ / __ ( 2/ 0,  2/ 0 )                  
    15       DirList-File    __ / __ ( 7/ 0,  7/ 0 )                  
    16       CmdOut-Lineno   __ / __ ( 2/ 0,  2/ 0 ) 19:55 ===>> dir  
    17       CmdOut-Result   __ / __ (15/ 8, 15/ 8 )  Volume in drive G h
    18                                                                
    19    *Palette color (0 to 3 for R G B each). MAXCOLOR=16. *********
    20       Palette  -->  0   1   2   3   4   5   6   7   8.... 14  15
    21       color    -->                                             
    22       RGB value-->000 ___ ___ ___ ___ ___ ___ ___ ___....___ __
    23       current  -->000 002 020 022 200 202 210 222 111....220 333
    24       standard -->000 002 020 022 200 202 210 222 111....331 333

#ifdef AIX
        AIX version is mono-color,colors is not set.
#endif
                                                                      
       row 1     :Header,message display line
       row 2     :Command input line
       row 4-17  :Palette number assign part
       row 7-17  :palette number input line
                 -Assign a palette number from 0 to 15 to each part
                  of panel.
                 -Duplication is allowed.
                 -Color actually displayed by the palette-no is changed
                  by RGB color level specified in "Palette color" part.
                 -Screen part ID list.
                  Specify FG and BG for each part,FG is for color of
                  character,BG is for background color.
                  .Title-Line     :title line(1st line,1st line of
                                   active if screen split)            
                  .Panel-Frame    :other than else.
                  .Browse-Lineno  :line-no field of browse screen.
                  .Browse-File    :file contents field of browse screen
                  .Edit-Lineno    :line-no field of edit screen.
                  .Edit-File      :file contents field of edit screen
                  .DirList-Linecmd:line command input field of dir list
                                   screen(It is also used for input
                                   directive of this panel)           ||~v124R~
                  .DirList-Lineno :line-no field of dir list screen
                  .DirList-File   :file list field of dir list screen
                  .CmdOut-Lineno  :line-no field and command echo line of
                                   command result edit screen
                  .CmdOut-Result  :command output lines of cmd result
                                   edit screen
           col 20-21 :foreground color input field
           col 25-26 :background color input field
#ifdef LNX
                      PaletteNo>=8 may not be used for background color.
#endif
           col 29-33 :palette number when opened this panel.
           col 36-40 :default value.
           col 43-   :sample display lines.
                      Change takes effect at first when Execute key is||~v124R~
                      entered after input palette number.
                      F3(End) propagate the change,F1(Cancel) reset   ||~v124R~
                      the change and restore the value before panel open
                      (it is displayed on column 29-33).              
       row 19-24 :Palette color part.
#ifdef UNX
	#ifdef LNX
       row 21    :0-7:color is displayed on background.
                 :8-15:color is displayed on foreground.
	#endif
#else
       row 21    :color display line for all palette number( 0 to 15).
#endif
       row 22    :Palette color RGB level input fields.
                 -3 digit(R(ed),G(reen),B(lue) from left) color level,
                  4 level(0 to 3) for each color.
                  Color register value for each level is
                  0:00H, 1:15H, 2:2aH, 3:3fH.
                 -RGB=000(Black) is fixed to palette number 0,
                  it is not allowed to input to palette number 0 and
                  to assign RGB=000 to palette number 1 to 15.
                 -Pressing execute key after input RGB level take effect
                  immediately not only to color display on row 21 but also
                  to all panel.
                 -"Next Value"(Shift + Down-arrow)/"Prev Value"(Shift +||~v124R~
                  Up-arrow) take same effect as increasing/decreasing RGB
                  level then pressing Execute key.                    ||~v124R~
                 -F3(End) leave change,F1(Cancel) restore RGB value
                  before opened this panel(values on row 23).
       row 23    :RGB level value at opened this panel.
       row 24    :default RGB level.
#ifdef UNX
   (note).Delete file xe_save_ on work directory if screen had become to
          hard to see. It reset to default color.                     ||~v124R~
          gxe use xe_save_.xxe as save file.
#else
   (note).Delete file XE!SAVE! on work directory if screen had become to
          hard to see. It reset to default color.                     
#endif
          Default color of each palette-no is as following.
           palette  color-no color     : palette  color-no color
               0     0(000)  black     :     8    56(111)  grey
               1     1(002)  blue      :     9    57(113)  pale blue
               2     2(020)  green     :    10    58(131)  pale green
               3     3(022)  light blue:    11    59(133)  pale light blue
               4     4(200)  red       :    12    60(311)  pale red
               5     5(202)  purple    :    13    61(313)  pale purple
               6    20(210)  brown     :    14    62(331)  pale yellow
               7     7(222)  white     :    15    63(333)  brightened white
         .Light blue is used by MKK(Japanese Front End Processor of PCDOS),
          it is hard to see text if you use that as FG color.
         .Palette color change is not effective under OS/2 window mode,
          Setting color RGB level cause different color displaying    ||~v124R~
          between full-screen-mode and window-mode.
          Palette color change is not available for also WIN version.
         .RGB level of each color register number is as following.
          (4 level for each RGB. 0:00H, 1:15H, 2:2aH, 3:3fH)
          color-no                    RGB level
          00-03: 000(black)    002(blue)    020(green)      022(l-blue)
          04-07: 200(red)      202(purple)  220(yellow)     222(white)
          08-11: 001(d-blue)   003(b-blue)  021             023(greenblue)
          12-15: 201           203          221             223
          16-19: 010(d-green)  012          030(b-green)    032(sky blue)
          20-23: 210(brown)    212          230             232
          24-27: 011(d-l-blue) 013          031(bluegreen)  033(b-l-blue)
          28-31: 211           213          231             233
          32-35: 100(d-red)    102          120(yellowgreen)122
          36-39: 300(b-red)    302(d-pink)  320(gold)       322
          40-43: 101(d-purple) 103(violet)  121             123
          44-47: 301(purplered)303(b-purple)321             323
          48-51: 110(d-yellow) 112          130             132
          52-55: 310           312          330(b-yellow)   332
          56-59: 111(grey)     113(p-blue)  131(p-green)    133(p-l-blue)
          60-63: 311(p-red)    313(p-purple)331(p-yellow)   333(b-white)
                   p-:pale, d-:dark, l-:light, b-:brightened

  *******************
  * 0.1 Command-Key *
  *******************
          0        1         2         3           6         7         8
          12345678901234567890123456789012      789012345678901234567890
                                                                      
     1    KEY----|XE OPT0.1                .... ------ 001-(001)-075Rep
     2    ===>                             ....                ===>PAGE
     3    ****|*** Top of Fn-cmd List * .... ***************************
     4    0001|A+F1 :=6;grep %1 *.c                                  
     5    0002|C+F1 :                                                
     :                                                               
    17    0017|sc,0 :xx;i 'S ' 12 all;i 'R ' 12 all;i ru 12 & 861001 all;
    18    0018|sc,1 :xx;i s 12 & ru 12 -d2 all;i r 12 & ru 12 -d2 all;
     :
    75    0075|Alias:ch1 S %1;c Old New all;end;
    76    0076|Alias:ex e %1 /mtx %2 %3 %4                            
     :

     Operation is basically same as Edit screen.                      
     Enter command string starting from column 14.
     Use ";" as delimiter of each command. Total length is up to 240. 
     If cmd string end by ";" all command is executed sequentially.   
     If no ";" is on end of string,command string is displayed on
     command input line(2nd row).
     Command string may have % replacing character by words on command input line.||~127ER~
     And Shortcut key(2 key operation, shortcut trigger key and char key)||~v124R~
     samples are from 17th line.                                      ||~127ER~
     For the same convenience,Alias command definitions follow after shortcut key.||~127ER~
     sample 75 is used like as "ch1 memb1" on dirlist.                
     sample 76 to open file by 3 line hex display mode.               
     To add alias command,repeat the line then modify it.             ||~127ER~
     To comment out,put "*" on the top of command.
                                                                      ||~127ER~
     (See User command).                                              ||~127ER~
                                                                      ||~127ER~

  ********************
  * 0.2 Function Key *
  ********************
          0        1         2         3           6         7         8
          12345678901234567890123456789012      789012345678901234567890
                                                                      
     1    KEY----|XE OPT0.2                .... ------ 001-(001)-075Rep
     2    ===>                             ....                ===>PAGE
     3    ****|*** Top of Key Assign,ent List .... *********************
     4    0001|Execute+Next-Line   *  10KEY-Enter                     
     5    0002|Execute+Next-Line   *  Enter                           
     6    0003|Next-Line           :A+Enter                           
                                                                      
     Operation is basically same as Edit screen.                      
     Using tab key,move cursor to key-name input field.
     Then enter key-name or press the key you want to set.
     Following key is fixed  and can not be changed the assignment.
       Enter,10key-Enter,Esc,Ins,Del,BackspaceUp/Down/Left/Right cursor,
       Tab,Backtab,Home,Page-Up,Page-Down
       (Key with Shift/Alt/Ctrl key is not fixed except Backtab(S+Tab)).
     Combinations keys Alt+, Ctrl+, Shift+Alt+ and Shift+Ctrl+ are available.||~v128R~
     Shift+Alt+ and Shif+Ctrl+ combination are available only to Fn, Ins, Del and||~v128R~
     destination keys(Up, Down, Left, Right).                         ||~v128R~
     Linux may define those keys as shortcut.                         ||~v128R~
     In that case, to utilize these keys change Linux Settings->Shortcut.||~v128R~
     When key without Shift(A+Fn,C+Fn) is defined as shortcut,       ||~v128R~
     it may be required to set it disable.                            ||~v128R~
     Functions requires command operand can't be assigned key,        ||~v128R~
     Changes are saved to ::xe!save! at end of process,               ||~v128R~
     and effective at next startup.                                   ||~v128R~
     When you are using INI file(::xe.ini exists), assignment by INI file is||~v128R~
     effective(override up to number of defined key on INI file).      ||~v128R~
     After restart, INI file can be updated by INI cmd.               ||~v128R~

  *********************
  * 0.3 Key Usage List*
  *********************
          0        1         2         3           6         7         8
          12345678901234567890123456789012      789012345678901234567890
                                                                      
     1    KEY----|XE OPT0.3                .... ------ 001-(001)-075Rep
     2    ===>                             ....                ===>PAGE
     3    ****|*** Top of Key and Function List ... ********************
     4    0001|  Esc         *RES/___ ## Reset                        
     5    0002|S+Esc         ;___/___                                 
     6    0003|A+Esc         :___/___                                 
                                                                      
     This screen is browse only, cannot be updated.                   
     Each line display key-name, command verb, command alias,function-name.

****************************
*(B) File name input panel *
****************************
                                                                      
#ifdef UNX
     1    BROWSE------------------------------------------------------
     2   ===>
     3
     4       FILE NAME ===>
     5       DIRECTORY ===>
     6       Current   ----/tmp/wkd
     7
     8     - /tmp/x1
#else
     1    BROWSE------------------------------------------------------
     2    ===>                                                        
     3                                                                
     4       FILE NAME ===>                                           
     5       DRIVE     ===> : C D E
     6       DIRECTORY ===>
     7       Current   ----D:\ibmcpp\src
     8
     9     - c:\windows
#endif
                                                                      
       row 1     :Header,message display line                         
                  BROWSE(Option 1 at MENU) or EDIT(Option 2 at MENU)  
       row 2     :Command input line                                  
       row 4     :File name input line
#ifdef UNX
       row 5     :Directory name input line
       row 6     :Current directory is displayed,
                  You cannot type on this field.
       row 8-    :FIFO sequence filename list once opened.
#else
       row 5     :Drive letter input line(A,B,C,...)
       row 6     :Directory name input line
                  Current directory of the drive that you entered on  
                  row 6 is displayed. You can overtype that.          ||~v124R~
       row 7     :Current directory of current drive is displayed,
                  You cannot type on this field.
       row 9-    :FIFO sequence filename list once opened.
#endif
                                                                      
     When pressed Enter key, concatenated data of DIRECTORY and FILE   ||~v124R~
     NAME field is passed to Edit or Browse command.                  
     You can specify path and file name using one field only.         

     Edit/Browse cmd variation like as eb,eh,ec is displayed on
     line cmd input column. The previously used variation cmd can be overrided.||~v124R~
     By simple Enter key hit, BROwse or EDit cmd is set on command input line
     for the file with cmd variation and parm..                       
     Uppercase and Lowercase line cmd letter is distinguished in some case.
     It is used to determine Browse or Edit command.                  ||~v124R~
     Lowercase means to follow with menu option selected before.
     Uppercase means opposite.                                        ||~v124R~
     for ex,If history list is displayed by menu option 1,
     lowercase issue browse cmd,uppercase issue edit command.
     PgUp,PgDn,Shift+PgUp(TopPage),Shift+PgDn(EndPage) key is available.
     Default of scroll size is Page. You can specify scroll size on command input
     line such as "H" as half or line count.                          
     Find command search (part of) filename only  and ignore option parameter string.
                                                                      ||~v125R~
     Option parameter following the filename is dropped by the other cmd than "s".||~v125R~
     "e"/"b" open with linecmd preprinted and edit/browse mode regardless the filename list open mode.(=1 or =2)||~v125R~

     b  :open by Browse cmd.
     c/C:COBOL file with COBOL lineno.
     e  :open by Edit   cmd.
     h/H:Hex digit display mode.
     i/I:SPF-COBOL file with COBOL lineno.
     j/J:SPF-COBOL file with space COBOL lineno.
     k/K:COBOL file with space COBOL lineno.
     l/L:same as c/C.
     n/N:SPF file(col.73-80 is lineno and update-ctr.
     s  :issue Browse or Edit by Menu option.
         cmd variation and parameter is reused.
     t  :text mode is forced. Browse or Edit is by menu option        
     1  :Binary mode Browse.
     2  :Binary mode Edit.
     !  :pass to application associated by ext name.
     d  :delete this entry.
     " ":(space) set simple edit/browse cmd to the cmd input line.
         (previous cmd variation and parameter are ignored)           
                                                                      
********************                                                  
*(C) EDIT/BROWSE   *
********************                                                  
          0        1         2         3           6         7         8
          12345678901234567890123456789012      789012345678901234567890

       1  EDIT---|G:\X1.C (95-05-13 10:44) .... ------ 001-(012)-072=Rep
       2  ===>                             ....                ===>HALF
       3  *******|********** TOP OF FILE * .... ************************
       4  0001000*int main(int argc,char *p....   //main        //~5513R
       5  0002000|{                                                   
       :                                                              

       row 1     :Header,message display line
          col  1 : (EDIT) or (BROWSE)
                   Display hex notation when csr is on the file line area.||~v124R~
                   e.g.  E---31- (for SBCS)  ,  E-81A0-  (for DBCS)   ||~v128R~
                   When entered hex input mode, x_ is displayed and   
                   1st digit follow after input like as xA_.
               8 : (|) not yet updated,  (*) updated
               9 : file name
              64 : record column of left end of screen(start from 1)
              69 : record column of the cursor position
              74 : record column of right end of screen
              77 : (=) cursor step right mode, (|) cursor step down mode||~v124R~
              78 : (Rep) replace mode, (Ins) insert mode
                   ("REP" and "INS" for DOS version,
                    "rep" and "ins" for GCC version)

       row 2     :Command input line                                  
          col  5 : command input field                                ||~v124R~
              76 : scroll display/input field.
                   You can overtype P(age),C(sr),nn(line number) etc. ||~v124R~
                   to change scroll volume.

       row 3     :file display line                                   
          col  1 : line number                                        
                   lines for UNDO are brightened at column1 of line-no
                   when UNDO key is pressed.
                   line number column width is changeable by NUM command.
               8 : (|) not updated line,  (*) updated line
                   (-) long line split top line not updated
                   (+) long line split top line     updated
                   (.) long line split continued line not updated
                   (:) long line split continued line     updated
                   (Long line over 32760 bytes is split by each 32760 ||~v127R~
                    bytes lines. For DOS version max is 999)          ||~v124R~
                   current update level lines when column 7 brightened
                   (level is advanced by Execute Key)
               9 : file lines display field
                   See TAB command about to display Tab char(0x09).
                   Tab char is treated same as space for Find cmd.    
                   Control char except Tab is displayed by special
                   char with same attribute as lineno column.
                   Those are 0x00,0x08,0x0a,0x0c,0x0d,0x11,0x13,0x18,
                   0x7f,0x80,0xa0,0xfd,0xfe,-xff under Japanese mode, ||~v124R~
                   0x00,0xff only under English mode.                 
                   These are defined on INI file.

                                                                      ||~v128R~
          File information on "TOP OF LINE" is as followings.         ||~v128R~
                                                                      ||~v128R~
                *******|*e*rw*fd** TOP OF FILE * .... ************************||~v128R~
                                                                      ||~v128R~
             e: encoding                                              ||~v128R~
                E:EBCDIC                                              ||~v128R~
                e:EBCDIC binary                                       ||~v128R~
                b:binary                                              ||~v128R~
                U:UTF8, opened with CPU8 option.                      ||~v128R~
                u:UTF8, without CPU8 but parent directory is opened with CPU8.||~v128R~
                L:Locale code, opened with CPLC option.               ||~v128R~
                l:other than else.                                    ||~v128R~
             r: read option of /M                                     ||~v128R~
                v:/Mv, variable record length.                        ||~v128R~
                r:/Mr, fixed recordlength.                            ||~v128R~
                p:/Mp, PC file, End-Of-Line is 0x0d0a.                ||~v128R~
                t:with /Mt or without both /Mp and /Mu, End-Of-Line is 0x0a or 0x0d0a.||~v128R~
                u:/Mu, Unix file, End-Of-Line is 0x0a.                ||~v128R~
                m:/Mm, Mac file, End-OfLine is 0x0d.                  ||~v128R~
                e:/Me, EBCDIC, End-Of-Line is 0x15.                   ||~v128R~
                b:/Mb, binary                                         ||~v128R~
             w: If write mode of /M is different of read mode,         ||~v128R~
                id of mode like as read mode.                         ||~v128R~
             f: filename encoding.                                    ||~v128R~
              (Linux)                                                 ||~v128R~
                U:UTF8, by FNU8 option.                               ||~v128R~
                u:UTF8, without FNU8, the device's mount option IOCHARSET is explicitly||~v128R~
                  or implicitly UTF8 or parent directory is opened by FNU8.||~v128R~
                L:Locale code by FNLC option.                         ||~v128R~
                l:other than else.                                    ||~v128R~
              (Windows)                                               ||~v128R~
                U:with FNU8,failed to translate UTF16 to locale code. ||~v128R~
                U:without FNU8,failed to translate UTF16 to locale code.||~v128R~
                L:Locale code by FNLC option.                         ||~v128R~
                l:other than else.                                    ||~v128R~
                                                                      ||~v128R~
             d: dirmode(Linux only)                                   ||~v128R~
                u:device's mount option IOCHARSET is explicitly or implicitly UTF8.||~v128R~

*********************                                                 ||~v124R~
*(D) Directory List *                                                 ||~v124R~
*********************                                                 ||~v124R~

#ifdef UNX

   EDIT---|/tmp (95-09-17 16:54) ------....-----------------------Rep
   ===>                                ....                  ===>HALF
   ****|********** TOP OF LIST ********....***************************
   _001|: /                       x400           649,728 /  1,457,664
   _002||: tmp                    777-t    00-03-25  22:07 root/toot
   _003|||. DISPCHAR C            644--    00-12-17  13:19 bin/bin
   _004|||. DOSFF    MAK          755--    00-12-16  09:49 akir/users
   _005|||- FC10                  644--    00-12-15  23:10 eiko/users
   _006||||- IIIII                755--    00-12-25  23:07 youi/users
   _007|||||+ IU                  755--    00-12-25  23:06 mich/users
   _008|||||+ LL                  755--    00-12-25  23:06 oosa/users
   _009|||||. UFILET   C          755--    00-12-25  22:12 izum/users
   _010||||+ IU                   755--    00-12-25  23:06 ohts/users
   _011||||.@JKKJ                 755--    00-12-29  11:49 ikeu/users

#else

   EDIT---|G:\src (95-09-17 16:54) ----....-----------------------=Rep
   ===>                                ....                  ===>HALF 
   ****|********** TOP OF LIST ********....***************************
   _001|: G:\                     x800           649,728 /  1,456,664
   _002||- src                    ----     94-11-17  22:07          0
   _003|||. DISPCHAR C            ----     94-12-17  13:19        300
   _004|||. DOSFF    MAK          ----     94-08-06  09:49        280
   _005|||- FC10                  ----     95-09-15  23:10          0
   _006||||- IIIII                ----     95-09-15  23:07          0
   _007|||||+ IU                  ----     95-09-15  23:06          0
   _008|||||+ LL                  ----     95-09-15  23:06          0
   _009|||||. UFILET   C          A---     95-09-15  22:12      5,066
   _010||||+ IU                   ----     95-09-15  23:06          0
   _011||||. JKKJ                 A---     95-09-09  11:49          8
   _012||||. JKKJ2                A---     95-08-29  21:51        219
   _013||||+ LL                   ----     95-09-15  23:06          0
   _014||||. UFILET   C           A---     95-09-15  22:12      5,066

#endif

(Line 1 and 2 is same as EDIT/BROWSE except column of cursor is not
displayed)
(display width is by minimum 80 column,filename column is expanded
by screen expansion)
                                                                      
   col  1: directory line command input column                        
        2: line number column                                         
           *D*/*R*/*M* is displayed when Deleted/Renamed/Moved for each.
        5: (|) not updated, (*) updated line(by "A"/"D"/"R"/"M" line
           cmd or ended edit screen saving file.)
        6: directory hierarchy list                                   
           File-type, File-name, Attribute, New-name, File-date,      
           File-time and Size are displayed.                          
#ifdef UNX
           Sift+F6 exchange File size and UserName/GroupName.
           @ is prefix of symbolic link file.
           Shift+F11 display link destination file name.
#endif
           For root-directory line,disk free space is displayed.
           (number on attribute column is cluster size by hex digit)
           That is updated automatically by line command  operation in
           the screen.
           Enter space in cmd input column to update free space info
           for external operation.
         - File-type:indentation by its hierarchical path.            
             (:) directory on the path up to root.                    ||~v124R~
             (+) directory,not expanded.                              
             (-) directory,expanded.(reverse when excluded by x cmd)  
             (.) normal file
         - File-name:indentation is option on INI file.               
                     Sort sequence is BASE and EXT for FAT,
#ifdef UNX
                     case sensitive fullname for LFN.                 ||~v124R~
                     But,case insensitive for files on floppy disk.   
#else
                     case insensitive fullname for LFN.               ||~v124R~
#endif
         - Attribute:You can input in the field when Attribute line   
           command was typed.                                         
         - New-name :space between Attribute and File-date column.    
           When typed Expand(-,>),Rename(r),Copy(c) and Move(m) line
           command,it is cleared and you can type as following.
           File name mask for Expand,New file name for rename,target
           name for Copy and Move.
           And saved file name may be displayed after deleted
           if Undelete option is effective.
           Copy target filename is cleared by space(' ') line cmd.
           To repeat same target for Copy or Move command,use F10(copy)
           and F11(paste) key.
           It is used for the line of "o" cmd with edit/browse parm.
         - If long file name is hidden by attribute column,use S+F11 to
           uncover long name. Next S+F11 will re-hide it.             ||~v124R~
         - By S+F10 key,the file description is displayed on rename field||~v124R~
           up to the end of line.
                -->(1).Function-Key default assignment. #14
                                                                      
*********************
*(E) Command Result *
*********************
          0        1         2         3           6         7         8
          12345678901234567890123456789012      789012345678901234567890
                                                                      
       1  EDIT---|::SO2   (95-05-13 10:44) .... ------ 001-(012)-072=Rep
       2  ===>                             ....                ===>HALF
       3  *******|*e*rw*fd** TOP OF FILE * .... ************************||~v128R~
       4  19:55 ===>> dir                                             
       5                                                              
       6   Volume in drive G has no label.                            
       7   The Volume Serial Number is E5EA:8815                      
       8   Directory of G:\SRC\XE                                     
                                                                      
       :                                                              
                                                                      
       row 1     :Header,message display line
          same as EDIT/BROWSE except
          except file name is work file name on Work dir(::soN,N=0-9).

       row 2     :Command input line
          same as EDIT/BROWSE.
          You can omit DOS command prefix "DOS" or its abridgment ">"

       row 3     :file display line
          same as EDIT/BROWSE.
          But line number column is not displayed as default.         
          Use NUM command to display line number column.

        - When command was entered screen is scroll-upped then latest
          command echo is displayed on the top of screen followed by
          command output.
        - Last line of the file with 0 data length is also used to
          input command which is too long for 2nd line.
          Insert length 0 line on the last then type command.
          Or copy command echo line onto the last line then modify
          the line. Command line is displayed same attribute as command||~v124R~
          echo line(line-no column attr).
                                                                      
******************************                                        
*(F-1) Utility:Compare       *                                        
******************************                                        
                                                                      
          ------ File / Directory Compare ----------------------------------------------=Rep
          ===>                                                        
                                                                      
           Options  =>  [ -nolist:display rc only.  Enter ? or --help for Help]
                                                                      
           Curr Dir --g:\src\xe                                       
                                                                      
           FileSpec1=>  [ Try InsertLine key (default:F5) after partial path input. ]
                                                                      
           FileSpec2=>  [ Then use Send keys (default:A+i/r/d/Up/Down) or "^" lcmd. ]||~v124R~
                                                                      
                                                                      
       .Execute "Compare-tool Options FileSpec1 FileSpec2" by Execute-key,
        then display stdout on Edit panel.                            
        Default command is "xfc" to compare files and "xdc" to compare directories.
        Setup ini file if you want to use "diff".                     
             CompareFile_Cmd   ="xfc"  #("xfc")# File compare cmd.    
             CompareDir_Cmd    ="xdc"  #("xdc")# Directory compare cmd.
                                                                      
       .Options    : specify option parameter of the tool.            
                     Execute the tool with no operand when "?" is specified.
                     diff displays help message by --help option.     
                     -nolist  :output one line msg notifies return code.||~v129R~
                     -CPU8    :Windows only, shou result as UTF8 encoded file.||~v129R~
        Curr Dir   : display current directory.                       
#ifndef UNX                                                           
                     Current directory of the drive of the cursor line is displayed.
#endif                                                                
        FileSpec1/2: type 2 files/directories name to be compared.    
                     Find Key(default:F5) splits screen then open dir-list of you specified.
                     With no input on the line,open the dir-list of Curr Dir.
                     From dir-list on other side of split screen,you can send file name.
                     Use Alt+i(Insert/r(Replace)/d(Delete)/Up(Cursor Up)/Down(Cursor down).
                     Line command "^" send filename according to the status of KeyInputMode(Ins/Rep).
                     Insert means input to null line,Replace means override the line reversed.
                     Text Cut&Paste is available.                     
#ifndef WXE/XXE                                                       
                     You can set filename by mouse Drag&Drop.         
                     Drag from dir-list or Explorer/Nautilus, drop on the line to be set.
                     File Cut&Paste is also available.                
#endif                                                                
                     RESet command or Esc key twice clears all input. 
                                                                      
******************************                                        
*(F-2) Utility:Search        *                                        
******************************                                        
                                                                      
          ------ Grep Search -----------------------------------------------------------=Rep
          ===>                                                        
                                                                      
           Options  =>  [ Enter ? or --help for Help]                 
                                                                      
           Curr Dir --G:\src\mfc\wxe\Release                          
                                                                      
           FileSpec1=>  [ Try InsertLine key (default:F5) after partial path input. ]
                   2=>  [ Then use Send keys (default:A+i/r/d/Up/Down) or "^" lcmd. ]||~v124R~
                   3=>  [ "-f" at end of "Options" allows 1st line as pattern file. ]
                   4=>  [ Drag & Drop is also available.                            ]
                   5=>  [ Use RESet cmd (or Esc twice) to clear.                    ]
                   6=>                                                
                   7=>                                                
                   8=>                                                
                   9=>                                                
                  10=>                                                
                  11=>                                                
                  12=>                                                
                  13=>                                                
                  14=>                                                
                  15=>                                                
                                                                      
       .Execute "Search-tool Options FileSpec1 FileSpec2 ..." by Execute-key,
        then display stdout on Edit panel.                            
        Default command is "grep". Setup ini file if you want to use your own tool.
             Search_Cmd        ="grep" #("grep")# String search cmd.  ||~v124R~
                                                                      
       .Options     : specify option parameter of the tool.           
                      Execute the tool with no operand when "?" is specified.
                      grep display detail help by --help option.      ||~v125R~
                      To use expression file parameter,specify -f at end of Options line,
                      and set the expression file name on FileSpec1 line.
        Curr Dir    : display current directory.                      
#ifndef UNX                                                           
                      Current directory of the drive of the cursor line is displayed.
#endif                                                                
        FileSpec1-15: Specify file/directory parameter of the tool.   
                      Find Key(default:F5) splits screen then open dir-list of you specified.
                      With no input on the line,open the dir-list of Curr Dir.
                      From dir-list on other side of split screen,you can send file name.
                      Use Alt+i(Insert/r(Replace)/d(Delete)/Up(Cursor Up)/Down(Cursor down).
                      Line command "^" send filename according to the status of KeyInputMode(Ins/Rep).
                      Insert means input to null line,Replace means override the line reversed.
                      Text Cut&Paste is available.                    
#ifndef WXE/XXE                                                       
                      You can set filename by mouse Drag&Drop.        
                      Drag from dir-list or Explorer/Nautilus, drop on the line to be set.
                     File Cut&Paste is also available.                
#endif                                                                
                      RESet command or Esc key twice clears all input.

************************************************************************
(3).Edit Command
************************************************************************

**********************
  (A) Command table  *
**********************
 Use function key if assigned to the function, else use command verb.                        ||~v126R~||~127ER~
 +------------------------+------------------------------------------+
 |  Function              |    command                               |
 +------------------------+------------------------------------------+
 |  File browse           | BROwse, BB,BN,BC,BL,BCN,BI,BK,BKN,BJ,BH, |
 |                        |         BT,B8                            |||~v124R~
 |  File edit             | EDIt  , EB,EN,EC,EL,ECN,EI,EK,EKN,EJ,EH, |
 |                        |         ET,E8                            |||~v124R~
 |  Path Up/Down          | DPU,DPD                                  |
 |  Termination           | END, RETurn, QUIt, EXIt, CANcel          |
 |  Save file             | SAVe                                     |
 |  File select           | SELect, SB,SN,SC,SL,SCN,SI,SK,SKN,SJ,SH, |
 |                        |         ST                               |
 |  Line select           | SEL                                      |||~v129R~
 |  File write from screen| CREate, REPlace, APPend                  |
 |  File copy into screen | COPy                                     |
 |  File copy to ::CB2    | CUT                                      |||~v124R~
 |  File paste from ::CB2 | PASte                                    |||~v124R~
 |  File move into screen | MOVe                                     |
 |  Page scroll           | UP, DOWn, LEFt, RIGht                    |
 |  Jump to Top/Bottom    | TOP, BOTtom                              |
 |  Search string         | FINd, IFInd, EXClude, IX, FNX, INX       |
 |  SearchWord on cursor  | FWF, FWB, IWF, IWB                       |||~v124R~
 |  Search then replace   | CHAnge                                   |
 |  CapsLock              | CAP                                      |
 |  Sort                  | SORt                                     |
 |  Code Conversion       | CV                                       |||~v124R~
 |  UTF8 Mode Switch      | UTF                                      |||~v124R~
 |  EBCDIC related        | EBC                                      |||~v125R~
 |  Split line            | SPLit                                    |
 |  Text Flow             | TFLow                                    |
 |  Locate to the line    | LOCate                                   |
 |  Ligature mode         | LIG                                      |||~v129R~
 |  Combine mode          | CMB                                      |||~v129R~
 |  Cursor move           | POSition                                 |
 |  Character input       | KEY                                      |
 |  Delete set of lines   | DROp                                     |
 |  Exchange excluded     | FLIp(XX)                                 |||~v124R~
 |  Undo update           | UNDo                                     |
 |  Redo update           | REDo                                     |||~v126R~
 |  Reset                 | RESet                                    |
 |  Split screen          | HSPlit, VSPlit                           |
 |  Swap active screen    | SWAp                                     |
 |  Rotate screen         | NEXt, PREvious                           |
 |  Call Menu panel       | =                                        |
 |  Set scroll size       | SCRoll                                   |
 |  Line-no display       | NUM                                      |
 |  Line-no re-numbering  | REN                                      |
 |  Tab display           | TAB                                      |
 |  Insert Toggle         | INS                                      |
 |  CurSor Down           | CSD                                      |
 |  HEX input mode        | XIN                                      |
 |  Vertical HEX display  | HEX                                      |
 |  Column gauge          | COL                                      |
 |  Change ID tag         | CID                                      |
 |  Basic Calc            | XBC                                      |
 |  Table Calc            | TC                                       |
 |  Profile save          | PROfile                                  |||~v124R~
 |  INI file output       | INI                                      |
 |  Option set            | OPT                                      |||~v124R~
 |  Version               | VER                                      |
 |  Submit file           | SUB                                      |
 |  execute cmd file      | EXE                                      |
 |  OpenByAssociated      | ASS                                      |
 |  Syntax Highlight      | SYN                                      |||~v124R~
 |  Command by Timer      | AT                                       |
 |  Sleep                 | SLE                                      |
 |  DOS command prefix    | DOS, >                                   |
 +------------------------+------------------------------------------+

**********************
  (B) Note           *
**********************
   - Input command in the field of 2nd line at each panel.        ||~v124R~
     Case Insensitive except for string included quotation (") or (').
   - You can input multiple command at once separated by ";".         
       e.g.  end;e file2.c;vsp;e file1.c                              ||~v128R~
   - First word is command verb,Only first 3 char is meaningful.      ||~v124R~
     Abridgement is a char followed by delimiter.
     ("="(Call Menu Panel) and ">"(DOS command) is exceptions,
     it may not be followed  by delimiter. You can specify like as =x ||~v124R~
     or >d:).
     Some function can be executed also by function key.
   - About word(operand analysis).
     Space( ) or Comma(,) is used as delimiter. To treat space or comma||~v124R~
     as data, include it in a quotation (") or (').                    ||~v124R~
     Delimiter is required to Enclose by quotation.                   ||~v124R~
     To set quotation in data, use another type quotation,or double same ||~v124R~
     quotation.                                                       ||~v124R~
            e.g.       abc def            --->  (abc) and (def)       ||~v128R~
                       abc,def            --->  (abc) and (def)
                       "abc def"          --->  (abc def)
                       "abc"" f", ''''    --->  (abc" f) and (')
                       'abc"",f' ,"''"    --->  (abc"",f) and ('')
                       "abc def""g x      --->  ("abc def""g) and (x)
                       ab'c def"          --->  (ab'c) and (def")
                       "" '',,a           --->  () and () and () and (a)
     (Enclose whole name if file/directory name contains space.       ||~v124R~
      Not "dir\"a b",but "dir\a b".)
   - Specification.
            Only Caps letter of the keyword is effective where Caps used.
            [...]       abridgible.
            {...|...}   select one of them.
            (....)      not keyword but description

   - CANCEL/UNDO/SAVE may optionally request confirmation,Press Enter ||~v124R~
     to execute or press Esc to reset.
                                                                      
   - Changed status by following command is saved on option save file
     in work directory. It is effective on the next editor session.   ||~v124R~
       .NUM    Line number display width for each screen.
       .TAB    tab display mode/tab skip count
       .CID    default CID add mode
       .OPT    undelete mode
       .SCRoll scroll volume for each screen.
       .FINd/  Find/Replace string,search direction/range.
        CHAnge

   - *\, **\, ^*\ and *\  are useful as pathname of filename.         ||~v124R~
      *\  : id of directory of file displayed on edit/browse screen,
            or the directory displayed on directory list screen.
      **\ : id of parent directory of *\,also avail **\**\ etc.
      ^*\ : dir opened on the other screen of split,                  
            or pathname if file is opened on the other side.
      *:  : for remotefile,same hostid as displayed.

**********************
  (C) Command syntax * (Alphabetical sequence)
**********************

   = Call Menu panel.

        =[(command string)]

            -Use to recall Menu panel then enter Option to the panel. ||~v124R~
             e.g. =x  :end the half of split screen.                  ||~v128R~

#if defined(WIN) || defined(XXE)

   = Open by Association

        ASS  filename

            -Pass file to the application associated by filename extension.||~v124R~
             e.g. ASS abcd.xls                                        ||~v128R~

#endif

#ifdef WIN

   = Command by Timer

        AT  [-i] interval [repeat-count];command-1;command-2,...;command-n||~v124R~

            -Repeat commands by the interval seconds.
             Press Esc twice to break repeat.

            interval    :interval by second.                          
            repeat-count:execute infinitely if omitted.               
            -i          :continue even if command error.
                                                                      ||~v124I~
          execute on =6 panel if cmd output is stdout.                ||~v124I~

#endif
                                                                      
   = Bounds                                                           
                                                                      
        {BOUnds | BNDs}  [ ? | [ col1 [ col2 ] [ EXT ] ] ]            
                                                                      
            -Set margin boundary                                      
             Boundary setting influence Find/Change/Sort/Split/Tflow commands and
             Shift(<,>,(,),[,])/Paste(o,p,n)/Compare(=)/CaseConversion(u,_)/Tflow(TF,:,;) line commands.
            -Set default for the directory when entered on directory list panel.
            -Use INI command(write to ini file) to keep setting for the next session.
                                                                      
            ?        :display help message                            
            col1/col2:left and right boundary column                  
                      "0" means reset, "*" means keep current value.  
                      Reset both side if operand missing.             
            EXT      :set default for the file with same extension name as the file opened now.||~v124R~

   = File browse

        {BROwse | BT | BB | BH | BN | BC(=BL) | BCN(=Bi) | BK | BKN(=BJ) | B8}||~v124R~
             file-name [options...]

            -Open with update prohibit mode.
             On directory list opened by browse,following line cmd is ||~v124R~
             prohibit. Attrib,Del,Move,Zero,0,/.
            -Select mode(command verb) by the file type to be opened.

            See EDIt command for options.

   = CapsLock

        CAP [ON|OFF] [TSO|DEFAULT|CMD]

            TSO     :set default for TSO file.
            DEFAULT :set default for the file other than TSO file.
            CMD     :When files is CAPs ON, extend the effect of CAP-ON also||~v124R~
                     to command input line.                           ||~v124R~

            -Fix input letter to uppercase.
             To input lowercase use Shift-key.
             CapsLocks key is effective on the other place than the file contents.
             (Note)Because linux console version can not detect shift key,
                   "CAP ON" exchange upper and lower case.
                   When CapsLock is off "CAP ON"'s effect is same as the other version.
                   When CapsLock is on,"CAP ON" put lowercase without shift-key
                   and put uppercase with shift-key.
            -Without TSO/DEFAULT,set for the file currently opened.   ||~v124R~
             And toggles status if no operand specified.
            -Default is TSO:ON, DEFAULT:OFF, CMD:OFF.

            See also EDIt command CAP/NOCAP option.
                                                                      
   = Search then Replace string.

        {CHAnge | CNX | IC | ICN} {(old-string) | * | \esc} {(new-string) | * | \esc | P'pics'}||~v124R~
                     [-g]                                             ||~v124R~
                     [all | next | + | prev | - | first | last]
                     [-nx] [.lab1 .lab2] [c1 | LM | RM [c2]]          ||~v129R~
                                                                      
                    ( "\" = 0x5c = backslash )                        

            CHA     :All line search including excluded line. Case Sensitive.
            CNX     :All line search excluding excluded line. Case Sensitive.
            IC      :All line search including excluded line. Case In-Sensitive.
            ICN     :All line search excluding excluded line. Case In-Sensitive.
            old-string/new-string
                    :use quotation for space embedded or special
                     string as following.
                     e.g. "F '.exe'", "F 'set up'".                   ||~v128R~
                     Word followed by "\n" means end-of-line matching.
                     e.g. "F word\n".                                 ||~v128R~
                     *= replace the line if the specified column is sama as the above line.||~v125R~
                     e.g. "C *= repstr 1 10 all"                      ||~v125R~||~v128R~
                     Regular expression is supported with -g option.  ||~v124R~
            *       :search same string as previous search command.
                     Use it search changing new-string or direction
                     like as  c * new2 prev, c old2 * etc.
                     * can be used for also replacing string,
                     it mean same replacing string as previous ones.  ||~v124R~
                     When used with old-string "*ec"(UTF8 translation error search),||~v125R~
                     This new-string means to reset translation error status with code unchanged.||~v125R~
                     As a result, these code are translated to UTF8 if saved.||~v125R~
                     Error code is not reset is write back as it as.  ||~v125R~
                     e.g. "c *ec * all"                                ||~v125R~||~v128R~
                     *e/*u etc. which have special meaning in FINd command are treated as character strings||~v30DI~
                                                                      ||~v125R~
            \esc    :same as \esc of FINd cmd.
                     Ctrl char specified on .ini Valid_Ctrl_char
                     parameter is inhibited to input.                 
                     When replacing from Tab,Tab is replaced after
                     followed padding char is changed to space.
                     When replacing to Tab,old string is replaced to
                     one byte tab char,then following string is shift to
                     the next tab position. So, "c x \t" after "c \t x"
                     dose not back to original status.
            P'pics' :specifies char-class for each byte. See FINd cmd for special char such as ".","@".||~v124R~
                     For new-string, following chars have special meaning.||~v124I~
                     Other chars than following 3 chars are used as replacing chars.||~v124I~
                     New-string length hove not to be same as old-string length.||~v124I~
                                                                      ||~v124I~
                     "=" : no replace(keep char on old-string)        ||~v124I~
                     "<" : lowercase translation                      ||~v124I~
                     ">" : uppercase translation                      ||~v124I~
                     e.g.  c AaBbCc P'<=>>=.Xy'                        ||~v124I~||~v128R~
                          changes "AaBbCc" to "aaBBC.Xy".             ||~v124R~
            -g      :specifies old-string is regular expression. See FINd cmd for regular expression syntax.||~v124R~

            all     :change all old-string in the file.
            allkx   :all without revealing found word on excluded line.
            next    :search forward from cursor position.
            +       :same as next
            prev    :search backward from cursor position.
            -       :same as prev
            first   :search forward from start of the file.
            last    :search backward from end of the file.
            .lab1/2 :Limit search line range using a pair of label
                     on lineno column. line number may be used so as to
                     limit line range with no label on lineno column.
            c1      :left-most column of search range.                ||~v129R~
            c2      :right-most column of search range.               ||~v129R~
            LM      :search Left margin only.
            RM      :search Right margin only.                        
            -nx     :search on displayed lines only(same as CNX/ICN)  

            -Case sensitive search.
            -Use function key(F6/Shift+F6) to execute same change operation.
             Different from Find,it dose not re-change returning to top or
             bottom of file.
             If needed,use F5 to back around, then use F6.            ||~126FR~
            -Entering operand only and press function key,it start
             search and change(F6) or reverse search and change
             (Shift+F6).Command verb(only abridgement is allowed) also
             can be put on.
            -Tab and its following space is assumed same as space char.
            -Refer "About word" for how to specify string.
             (To delete word,enter like as CHA xxxx "".)
            -F5(Re-find) after Change is case sensitive.

   = Change ID tag.

        CID [on | off | clear | shift | defon | defoff | top___ | copyon | copyoff | ?]||~v125R~
                    [ [cid-type|prefix[,postfix]] | APPEND ]          ||~v124I~
                    [.lab1 .lab2]                                     ||~v130R~

                    :If operand missing,it is assumed ? is specified.
            on      :Add change id tag to updated line when saved.
            off     :No change id is added.
                  on/off is not effective after the file is closed.   ||~v124I~
            clear   :Clear all tag added before current edit.
                     Current updated line is tagged when saved
                     if CID on.
                     For margined file,CID is searched in the range
                     specified on CID header line. If CID position is ||~v124R~
                     Left margin,it is searched in Left margin only.
                     If you specify a prefix, only the CIDs of the prefix will be cleared.||~v29tR~
            shift   :re-arrange column of CID.                        ||~v124R~
                     column position is specified on INI file
                     Change_ID_Type_xx parameter.
                     Change is effective for only updated line after
                     option changed,you can use this option to arrange||~v124R~
                     CID column of all line with it.
                     If that position is occupied by data,CID follow
                     after the end of data.
                     The position can be specified on CID HEADER.
                     For margined file,CID is searched in the range
                     specified on CID header line.
                     And,it is not shifted when the pos is occupied by
                     data for Left margin CID file.
            defon   :CID is set by default when you do not explicitly
                     set on/off by this command(this is default)
            defoff  :No CID is set by default when you do not explicitly
                     set on/off.
                  defon/defoff status is saved and effective in the next session.||~v124I~
            top___  :Insert sample CID header line.
                     ___ is any string. By puting file xe_top.xxx on  ||~v124R~
                     work directory,any CID header line is set up.
                     If no file prepared,default is inserted.         ||~v124R~
                     Default to topa insert the line with all options,
                     top insert the line with update-ctr only.
                     topc is for COBOL,topcn is for COBOL with SPF num
                     field, topk is for COBOL with space num field,   
                     topkn is topk with SPF num field.                
           copyon/                                                    ||~v125R~
             copyoff:Set default of line copy cmd. Source line is copied with CID.||~127AR~
                     (Note) line cmd "AC"/"BC"(After/Before) is used to copy CID for each copy operation.||~v125R~
            ?       :display current CID set status.
                     CID header line is re-evaluated and update on CID
                     header line became effective.

            cid-type:type of CID tag.(first extension name on Change_ID_
                     Type of listed on .ini file)
                     available for on/clear/shift.
                       e.g) "cid clear c"                             ||~v29tR~
                      It can not be changed by "on" if file has CID
                      HEADER specification on the first line.
                      With clear/shift,specified type of CID is cleared/
                      shifted. The CID type of the file is not replaced.||~v124R~
                      (Without CID type,clear/shift select current CID
                       type of the file. If the file has CID HEADER,  ||~v124R~
                       CID type of the file is replaced by CID HEADER.
                       then clear/shift operation is done.
                       If file has no CID HEADER or deleted,
                       CID type of the file is remain unchanged)
            prefix  :alternative of EXT name. You can use 2 byte prefix||~v124R~
                     itself like as  //,";;",||.
					 For example, "cid clear //" is the same as "cid clear c".||~v29tR~
            postfix :0 to 2 byte any postfix string
                     with on,set CID with the postfix.
                     with clear,clear CID with the postfix.
                     with shift,re-arrange CID with the postfix.      ||~v124R~
            (Use quotation for prefix or postfix when it contain
             these char,",",";"," ".)
                                                                      ||~v124I~
            APPEND/ :Append new CID after the previous CID on the line||~v124I~||~v130R~
            NOAPPEND if new CID is not same as old CID.               ||~v124I~||~v130R~
                     If CID type is date, append if date is changed.  ||~v124I~
                     This is effective only if CID position is not fixed by CID header line.||~v124I~
                     Specify with on/off/defon/defoff.                ||~v124I~
                     "(def)off APPEND" resets APPEND status only,     ||~v124I~
                     "(def)off" resets (def)on and APPEND status.     ||~v124I~
                                                                      ||~v124I~
            lab1 lab2 : Used for clear and shift. Specify the line range by a pair of labels set in the line number field.||~v130R~

   = Combine mode                                                     ||~v129R~
                                                                      ||~v129R~
        CMB                                                           ||~v129R~
                                                                      ||~v129R~
            - same as A+":" key                                       ||~v129R~
            - How to display unicode combining character, wrap around 3 pattern.||~v129R~
              SPLIT(display itself on column)-->UNPR(display alternative char)-->COMB(combine to prev char-->SPLIT...||~v129R~
            - alternative char is set by OPT UNICOMB cmd.             ||~v129R~
                                                                      ||~v129R~
   = Column gauge.

        COLs [on|off] [ALL|type|default]                              ||~v129I~

            -Display on/off column gauge. If omitted, toggles on/off.  ||~v124R~
            -Gauge type is specified by type option.
             Corresponding gauge file should be prepared in work-dir. ||~v124R~
             To reset to default gauge specify "ON" only.             
#ifdef UNX
             File name pattern is "xe_col_.type".
             Default gauge pattern may be changed by preparing        ||~v124R~
             xe_col_.col in work-dir.
#else
             File name pattern is "xe!col!.type".
             Default gauge pattern may be changed by preparing        ||~v124R~
             xe!col!.col in work-dir.
#endif
             Char "*" on gauge line treated as tabstop.
             If any "*" is set on gauge,usual tab span is ignored
             when Char-Replace-Mmode.
             Next line is sample gauge file.
             ......*..1.........2.........3.........4*........5.....
            -Gauge type=ALL means open all file width "COL on".       
            -On directory list, "COL on type" sets default gauge type for all member of the directory.||~v129I~
             "COL off" resets it. You have to prepare following gauge file in work directory.||~v129I~
               (Win) ::xe!col!.type   (Linux) ::xe_col_.type          ||~v129I~
            -When Col type is set to a directory, use COL command for each members to set different option.||~v129I~
             "COL [on|off] [type|default]"                            ||~v129I~
               default:display default gauge for the member file.     ||~v129I~
                       This option is not for directory but file.     ||~v129I~
               on     :follows directory setting if new type is not specified.||~v129I~
               off    :hide gauge and reset type for the file,        ||~v129I~
                       and next "COL on" refers directory setting.    ||~v129I~
                                                                      

   = Copy file into the edit screen.

        {COPy | PASte}  [filename]  [ CPLC | CPU8 | CPEB[:codepage] ] [IE]     ||~v125R~||~v125R~||~126FR~
                    [/M{T|P|U|M|E|R|V}] [/F{nn|vfmt}] [-S{r|i|d}]     ||~127BR~

            CPU8/CPLC: Copy/Move "source-file" after translated if required.||~v125R~
             /CPEB     Copy the file after translating from specified encoding to encoding of current file.||~v125R~
                       Profile is checked for copy source file, so you may not be required to specify CPxx option.||~v125R~||~v125R~
                       For PASte,codepage at CUT is applied using profile.||~v125R~
                                                                      ||~v125R~
                       You can other codepage than specified on cfg file using CPEB:codepage format.||~v125R~
                       When you don't want to translate by the codepage registered on profile,||~v125R~
                       use "B" option to "A"(After) or "B"(Before) line cmd specifying copy target position.||~v125R~
                          e.g. COP ebcf1                              ||~v125R~||~v128R~
                               :                                      ||~v125R~
                               AB                                     ||~v125R~
                                                                      ||~v125R~
            IE       : continue copy operation ignoring translation error.||~v125R~
                       those char are copied as it is and displayed by "?".||~127AR~
                       This option is not required when target file is opened by with "IE" option.||~v125R~
            /M       :EOL-ID of copy source file.                     ||~v125R~
                      P:0d0a(PC file)                                 ||~v125R~
                      U:0a  (Unix file)                               ||~v125R~
                      T:Both 0a and 0d0a                              ||~v125R~
                      M:0d  (Mac file)                                ||~v125R~
                      E:15  (EBCDIC file)                             ||~v125R~
                      R:fixed length record mode. Specify LRECL by /Fnn option.    ||~v125R~||~127BR~
                      V:variable length record mode. Specify record header type by /Fvfmt.||~127BR~
            /Fnn     :LRECL                                           ||~v125R~
            /Fvfmt   :VariableLengthRecord file record header format. See Edit command.||~127BR~
            -S{r|i|d}: SO/SI option                                   ||~v125R~
                       r : When current screen is EBCDIC file and cmd option is CPLC/CPU8,||~v125R~
                           replace both side of space, if available, to SO/SI.||~v125R~
                           When current screen is not EBCDIC and cmd option is CPEB,||~v125R~
                           replace SO/SI to a space.                  ||~v125R~
                       i : Insert SO/SI when translation to EBCDIC.  ||~v125R~
                       d : Delete SO/SI when translation from EBCDIC. ||~v125R~
                                                                      ||~v125R~
            -Copy all line of the file onto the specified position
             of line command such as a(After),b(Before),o(On),p(Paste).
             Use "Line Insert Copy"(Alt+i) to specify destination line
             under line-no not displayed.
             Destination line cmd is not required when null file.
             If it is unique for the wildcard,wildcard path name is
             accepted.
             For PASte cmd, source file is fixed to ::CB2 saved by CUT cmd,            ||~v124R~||~v125R~
             file-name is ignored even if you specified.              ||~v124R~

       (note)Use XCOpy or DOS command >COPY to copy file to file.
             COPy command is treated as XCOpy on the screen except
             BROWSE/EDIT.

   = File write from edit screen.

        {CREate | REPlace | APPend | CUT}  [filename]  [/M{T|P|U|M|E|R|V}] [/F{n[-m]|vfmt}]||~v125R~||~127BR~
                     [[-x|-nx] [.lab1 .lab2]
                     [ CPU8 | CPLC | CPEB[:codepage] ] [IE] [-S{r|i}d}]                                ||~v125R~||~v125R~||~v125R~

            filename:wildcard allowed.
                     wildcard for path should be unique path,
                     wildcard for member is used for rename.
                     For CUT cmd,filename is fixed to ::CB2.          ||~v124R~
                     Specify "-" prefix for all option of CUT cmd like as -IE.||~v125R~
            CRE     :Create new-file(fail if already exist)
            REP     :Replace existing file without confirmation
                     (create if not exist,)
            APP     :Add lines at end of file
                     or create if file is not exist.
                     Specify codepage, record mode of source file     ||~127BR~
                     if that is different from target ones.            ||~127BR~
            CUT     :Copy to ::CB2(2nd clipboard for Cut&Paste)       ||~v124R~
                     Use PASte cmd to paste from ::CB2.               ||~v124R~
            -x      :only excluded line is selected
            -nx     :only not excluded line is selected
            all     :used with -x or -nx.
            .lab1/2 :used with -x or -nx specifying file range.

            /M      :request to change eol char. Use for CRE/REP cmd. ||~v125R~
                     T:Text mode. Linux:0a, Windows:0d0a, single 0a is replaced by 0d0a on Windows.||~v125R~
                     P:0d0a(PC file)
                     U:0a  (Unix file)
                     M:0d  (Mac file)
                     E:15  (EBCDIC file)                              ||~v125R~
                     R:Fixed Length Record mode. Specify LRECL by /Fnn option.    ||~v125R~||~127BR~
                     V:Variable Length Record mode. Specify record header type by /Fvfmt.||~127BR~
            /Fn[-m] :record mode record size and margin.              ||~v125R~||~127BR~
                     Use to change to record mode or change record size.||~v125R~
            /Fvfmt  :VariableLengthRecord file record header format. See Edit command.||~127BR~
                                                                      ||~v125R~
#ifdef UTF8SUPP                                                       ||~v125R~
            CPU8/CPLC:specifies output file encoding.                 ||~v125R~
             /CPEB    write after translating to specified encoding.  ||~v125R~
                      CPEB:codepage pattern allows to specify the EBCDIC codepage other than specified on cfg file.||~v125R~
            IE       : ignore translation error, error code is replaced by "?".||~v125R~
            -S{r|i|d}: SO/SI option                                   ||~v125R~
                       r : When current screen is EBCDIC file and cmd option is CPLC/CPU8,||~v125R~
                           replace SO/SI to a space.                  ||~v125R~
                           When current screen is not EBCDIC and cmd option is CPEB,||~v125R~
                           replace both side of space, if available, to SO/SI.||~v125R~
                       i : Insert SO/SI when translation to EBCDIC.  ||~v125R~
                       d : Delete SO/SI when translation from EBCDIC. ||~v125R~
#endif                                                                ||~v125R~
                                                                      ||~v125R~

             Without -x or -nx option,
             specify copy range by line command c(Copy) or m(Move).
             If source line range is specified by "m" line cmd, those lines are deleted(effect of CUT).||~v124R~
             Use "Line Marking"(Alt+h) to specify line range to be
             written when line-no is not displayed.
                                                                      ||~v124R~

   = CurSor Down

        CSD  [on | off]
            on          :Cursor move to downward after typed a letter.
            off         :Cursor move to right.
            (No operand):toggle

            -It may be convenient when draw line.

   = Code Conversion                                                  ||~v124R~

        CV   [e2s|s2e|e2e|s2s|s2j|j2s|e2j|j2e] [z] [NX] [.lab1 .lab2]
        CV   {s2u|u2s|s2f|f2s|u2f|f2u|e2f|f2e|m2f|f2m} [bom] [ucs4] [be|le] [ibm|nec]||~v124R~||~v125R~
              [\u] ['err-rep-char']
        CV   {b2s|s2b|b2e|e2b|b2a|a2b} [CRLF|ANK] [CP290|CP1027|KANA-EXT|ENG-EXT]||~v125R~||~v125R~
              [JIS78] [-S[a|d|r|m|s]|-SBCS] ['err-rep-char']          ||~v125R~
        CV   {K2L|L2K}
        CV    x2c [EBC] [i[-m[:{n|max|rep}]]] [mult | -H[pre][XXpost]]||~v30CI~
                  [CRLF|ANK] [CP290|CP1027|KANA-EXT|ENG-EXT] [JIS78] [-S[bcs|a|d|r]||~v125R~
        CV   {M2B|B2M} [CP290|CP1027|KANA-EXT|ENG-EXT] ['err-rep-char']||~v125R~
        CV   {M2B|B2M|B2F|F2B}     [CPEB:ebcdic-codepage] [-S{a|d|r}]         ||~v125R~||~126DR~
        CV   B2B           [CPEB:ebcdic-codepage] [-S{a|d|r}] [SETCP] ||~v125R~
        CV   M2M       -F:charset -T:charset [-SBCS] [-ANK] [ICU] ['err-rep-char']||~v126R~

         DOS version support 1st format only.
         [NX] and [.lab1 .lab2] is common to all format.
         Utility XCV is contained in the zip file.

            e2s     :EUC -->SJIS
            s2e     :SJIS-->EUC
            s2s     :SJIS hankaku-katakana-->zenkaku-katakana
            e2e     :EUC hankaku-katakana-->zenkaku-katakana
            s2j/j2s :SJIS<-->JIS
            e2j/j2e :EUC <-->JIS
            s2u/u2s :SJIS<-->UCS2(2byte Unicode)
            s2f/f2s :SJIS<-->UTF8(8 bit UTF)
                                                                      ||~v124R~
#if defined(W32)||defined(LNX)                                        ||~v125R~
                                                                      ||~v125R~
            e2f/f2e :JapaneseEUC<-->UTF8(8bit UTF)                    ||~v124R~
            m2f/f2m :File's CodePage<-->UTF8(8bit UTF)                ||~v124R~
                     Between UTF8 and Codepage specified when open the file.||~v124R~
                     Invalid code is replaced by "?", but there is non reversible conversion||~v124R~
                     even if not replaced to "?". I those case reverse conversion cannot return||~v124R~
                     to the source code.                              ||~v124R~
                                                                      ||~v124R~
#endif                                                                ||~v124R~
            u2f/f2u: UCS2 <--> UTF8. On Windows, this is equivalent to UTF16 <--> UTF8.||+130ER~
            b2s/s2b :IBM-EBCDIC<-->SJIS(Japanese DBCS conversion).
            b2e/e2b :IBM-EBCDIC<-->EUC-JP conversion.                 ||~v130R~
            b2a/a2b :IBM-EBCDIC<-->ASCII SBCS(SO/SI(0x0e/0x0f) is ignored).
            k2L/L2k :HankakuKatakana<-->EnglishLowerCase letter.
                     When EBCDIC-->ASCII translated lowercase letter to
                     hankaku-katakana,re-translate the file to recover
                     lowercase letter.
                     k2L:re-conv by CP1027 the result of CP290
                     L2k:re-conv by CP290  the result of CP1027
            x2c     :convert hex notation string to char(ignore space).
                                                                      ||~v30CI~
              (e.g.1)                                                 ||~v30CR~
                   ===>cv x2c -H%                                     
                   col |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9
                   ****|*L*t**l*** TOP OF FILE *******Lig:OFF ****************************************************
                   0001|Company=%E6%A5%BD%E5%A4%A9%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97;↵
                       |466766732432432442432432432432332432432332442432332442432332333↵
                       |3fd01e9d556515524555514519553582520553583512553583523553583597b↵
                   ****|*L*t**l*** END OF FILE *******Lig:OFF ****************************************************
                                                                      
                   1 line converted(25-05-31 05:46)---------------------------------------------------------------
                   ===>                                               
                   col |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9
                   ****|*L*t**l*** TOP OF FILE *******Lig:OFF ****************************************************
                   0001*Company=%E6%A5%BD%E5%A4%A9%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97;讌ｽ螟ｩ繧ｰ繝ｫ繝ｼ繝▪↵
                       *466766732432432442432432432432332432432332442432332442432332333eabeaae8be8ae8be89↵
                       *3fd01e9d556515524555514519553582520553583512553583523553583597b65d54932033b33c337↵
                   ****|*L*t**l*** END OF FILE *******Lig:OFF ****************************************************
                                                                      
                   e x:\x1 cpu8                                       
                                                                      
                   EDIT---|x:\x1 =U(25-05-31 05:54)---------------------------------------------------------------
                   ===>                                               
                   col |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9
                   ****|*U*t**l*** TOP OF FILE *******Lig:OFF, Unicomb: SPLIT ************************************
                   0001|Company=%E6%A5%BD%E5%A4%A9%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97;楽天グループ↵
                       |46676673243243244243243243243233243243233244243233244243233233367523b3e3f3d↵
                       |3fd01e9d556515524555514519553582520553583512553583523553583597b9d99000b0c07↵
                   ****|*U*t**l*** END OF FILE *******Lig:OFF, Unicomb: SPLIT ************************************
                                                                      ||~v124R~
              (e.g.2)                                                 ||~v30CI~
                   ****|*l*t**l*** TOP OF FILE *******Lig:OFF ******************||~v30CI~
                   0001| abf0        ↵                                ||~v30CI~
                       |2666322222222↵                                ||~v30CI~
                       |0126000000000↵                                ||~v30CI~
                   0002| u-3032      ↵                                ||~v30CI~
                       |2723333222222↵                                ||~v30CI~
                       |05d3032000000↵                                ||~v30CI~
                   0003| 0xaf00RC↵                                    ||~v30CI~
                       *237663354↵                                    ||~v30CI~
                       *008160023↵                                    ||~v30CI~
                   ****|*l*t**l*** END OF FILE *******Lig:OFF ******************||~v30CI~
                                                                      ||~v30CI~
                   ===>cv x2c                                         ||~v30CR~
                                                                      ||~v30CI~
                   ****|*l*t**l*** TOP OF FILE *******Lig:OFF ******************||~v30CI~
                   0001* abf0        ｫ▪↵                              ||~v30CI~
                       *2666322222222af↵                              ||~v30CI~
                       *0126000000000b0↵                              ||~v30CI~
                   0002| u-3032      ↵                                ||~v30CI~
                       |2723333222222↵                                ||~v30CI~
                       |05d3032000000↵                                ||~v30CI~
                   0003| 0xaf00RC↵                                    ||~v30CI~
                       *237663354↵                                    ||~v30CI~
                       *008160023↵                                    ||~v30CI~
                   ****|*l*t**l*** END OF FILE *******Lig:OFF ******************||~v30CI~
                                                                      ||~v30CI~
                   ===>cv x2c -Hu-                                    ||~v30CR~
                                                                      ||~v30CI~
                   ****|*l*t**l*** TOP OF FILE *******Lig:OFF ******************||~v30CI~
                   0001* abf0        ｫ▪↵                              ||~v30CI~
                       *2666322222222af↵                              ||~v30CI~
                       *0126000000000b0↵                              ||~v30CI~
                   0002* u-3032      02↵                              ||~v30CI~
                       *272333322222233↵                              ||~v30CI~
                       *05d303200000002↵                              ||~v30CI~
                   0003* 0xaf00RC↵                                    ||~v30CI~
                       *237663354↵                                    ||~v30CI~
                       *008160023↵                                    ||~v30CI~
                   ****|*l*t**l*** END OF FILE *******Lig:OFF *******************||~v30CI~
                                                                      ||~v30CI~
                   ===>cv x2c -H0xXXRC :20                            ||~v30CR~
                                                                      ||~v30CI~
                   col |....+....1....+....2....+....3....+....4....+....5....+..||~v30CI~
                   ****|*l*t**l*** TOP OF FILE *******Lig:OFF *******************||~v30CI~
                   0001* abf0        ｫ▪↵                              ||~v30CI~
                       *2666322222222af↵                              ||~v30CI~
                       *0126000000000b0↵                              ||~v30CI~
                   0002* u-3032      02↵                              ||~v30CI~
                       *272333322222233↵                              ||~v30CI~
                       *05d303200000002↵                              ||~v30CI~
                   0003* 0xaf00RC          ｯ▪                         ||~v30CI~
                       *2376633542222222222a0↵                        ||~v30CI~
                       *0081600230000000000f0↵                        ||~v30CI~
                   ****|*l*t**l*** END OF FILE *******Lig:OFF ******************||~v30CI~
                                                                      ||~v30CI~
                   ===>cv x2c -HXXRC :18                              ||~v30CI~
                                                                      ||~v30CI~
                   col |....+....1....+....2....+....3....+....4....+....5....+..||~v30CI~
                   ****|*l*t**l*** TOP OF FILE *******Lig:OFF *******************||~v30CI~
                   0001* abf0        ｫ▪↵                              ||~v30CI~
                       *2666322222222af↵                              ||~v30CI~
                       *0126000000000b0↵                              ||~v30CI~
                   0002* u-3032      02↵                              ||~v30CI~
                       *272333322222233↵                              ||~v30CI~
                       *05d303200000002↵                              ||~v30CI~
                   0003* af00RC          ｯ▪                           ||~v30CI~
                       *26633542222222222a0↵                          ||~v30CI~
                       *01600230000000000f0↵                          ||~v30CI~
                   ****|*l*t**l*** END OF FILE *******Lig:OFF ******************||~v30CI~
                                                                      ||~v30CI~
#if (defined(W32)||defined(LNX))                                      ||~v124R~
                                                                      ||~v124R~
            M2B/B2M :translation Local Codepage<->EBCDIC according to a mapfile.||~v124R~||~v125R~
                     mapfile name is specified on INI file.           ||~v125R~
                     Define parameter in the mapfile such as EBCDIC/Local and SBCS mapping to adjust translation.||~v124R~
                     'err-rep-char' option override the SUBCHAR parameter of the mapfile.||~v124R~
                     See "EBCDIC translation".                        ||~v124R~
                     CPEB:codepage pattern allows to specify the EBCDIC codepage other than specified on cfg file.||~v125R~
                                                                      ||~126DI~
            F2B/B2F :UTF8<->EBCDIC("M" of M2B/B2M is UTF8)            ||~126DI~
                     Th file opened as CPU8 dose not accept F2B, open as CPLC then apply F2B.||~126DI~
                     EOL code is not changed unless /Me option is specified.||~126DI~
                       e.g. "END /Me",  "SAVe xx /Me".                 ||~126DI~||~v128R~
                     Even after saved, you can change EOL code by "EDIt xx /Mue" (change LF to BCDIC EOL:0x15)||~126DI~
                                                                      ||~126DI~
                     Also for B2F, it will be required to change EOL code to (CR)LF.||~126DI~
                                                                      ||~126DI~
            B2B     :translation between different EBCDIC codepage.      ||~v124R~||~v125R~
                     Specify target codepage by CPEB:tgtcp( source codepage is of the file)||~126DI~||~v126R~
                     Translation is done using ICU or iconv(for Linux) according to ::xeebc.map spcification||~126DI~
                                                                      ||~126DI~
            SETCP   :change current file's codepage.                  ||~v125R~
                     Translated file is displayed using the codepage. ||~v125R~
                     Without SETCP, after translation to the codepage, code is displayed using original codepage.||~v125R~
                     Use "EBC SETCP:codepage" cmd to change codepage without translation.||~v125R~
            M2M     :translation between any codepage.                ||~v124R~||~v125R~
                     Specify codepage codepage in -f:charset -t:charset option.||~v124R~||~v125R~
                     Available codepage/charset are list by            ||~v127R~
                       "xe -c?"   (Windows)                           ||~v127I~
                       "iconv -l" (Linux)                             ||~v127I~
                       "uconv -l" (ICU).                              ||~v127I~
                     Default of /f: and /t: is "0"(=CP_ACP) for Windows,||~v124R~
                     is determined by current locale and iconv list for Linux.||~v124R~
                     For Windows, "UTF8" is acceptable as alternative of "6500".||~v124I~
                     Use not M2M but B2M/M2B/B2B for EBCDIC translation.||~v125R~
#endif                                                                ||~v124R~

            z       :hankaku-katakana-->zenkaku-katakana
#ifdef UNX
                     z of e2e if conversion type missing.
#else
                     z of s2s if conversion type missing.
#endif

             BOM       :Check/Write BOM(UTF-8 type mark) on top of file.
                        effective for u2f,s2f,f2u,f2s.
             UCS4      :unicode by 4 byte. for U2F and F2u.           ||~v125R~
                        If missing "UCS4" for f2u,xe outputs surrogate pair for ucs4.||~127MR~
             BE/LE     :unicode endian type. Default is BE for UNIX else LE.||~v124R~
                        use with u2s,u2f,s2u,f2u.
             ICU       :use ICU for M2M                               ||~v126R~
             IBM/NEC   :for the case multiple SJIS code point for a unicode,
                        specify target mapping region.
                        use with u2s,f2s. default is IBM.
             JIS78     :DBCS conversion by OLD-JIS sequence.
                        default is JIS83(NEW-JIS) sequence.
             ANK       :replace control char by 'err-rep-char'(e.g. '?' for B2M),||~v130R~
             \u        :\uxxxx format unicode input conversion(u2s,u2f).
                       :\uxxxx format unicode output conversion(s2u,f2u).
             CRLF      :replace CR,LF by 'err-rep-char'.              ||~v125R~
             EBC       :After x2c,do IBM-EBCDIC-->ASCII translation.
                        SO effect(ShiftOut of Japanese Kanji) continues to next line||~v124R~
                        except the case SBCS option or rep option is specified.||~v124R~
             CP290     :use IBM-CP290(katakana extension) for SBCS conversion.
              /CP1027   default table for SBCS conversion is IBM-CP1027(english lowercase letter extension).||~v125R~
             KANA-EXT/ :KANA-EXT:CP290                                ||~v125R~
              ENG-EXT    ENG-EXT:CP1027                               ||~v125R~
             i[-m[:{n|max|rep}]]
                       :Input column. default is TopOfLine. Up to EndOfLine
                        when m is missing.
                        n:Output column. default is TopOfLine.
                        max:Output to the right of longest line.      ||~v124R~
                        rep:convert hex digit in the place.
             mult      :continue hex conversion process even if invalid hex digit
                        detected.
             -Hpre[XXpost]:convert between prefix and postfix.
                           XX is delimiter of prefix and postfix.
                           e.g. -H0x'     -Hx'xx'                     ||~v128R~
             -S[a | d | i | r | m | s | bcs]                          ||~126DI~
                 a     :assume SO on the top of line.
                 bcs   :SBCS mode(no DBCS consideration)              
                 d     :delete SO(0x0e)/SI(0x0f) for B2x.             ||~126DR~
                        SO/SI is not set for x2B.                     ||~126DR~
                 i     :for x2B, insert SO(0x0e)/SI(0x0f).            ||~126DI~
                 r     :for x2B;replace adjacent space char by SO/SI  ||~126DR~
                        or insert SO/SI if no adjacent space char.    ||~126DR~
                        for b2x, replace SO/SI to space.              ||~126DI~
                 m     :for B2c;effect of SO continues to the next line.||~v124R~||~126DR~
                 s     :same as -Sr, but following spaces are reduced by the expanded length||~v124R~||~126DR~
                        by SO/SI insertion if those are not single space.||~v124R~
                 default is replace SO/SI by space for B2x, insert SO/SI for x2B.||~v124R~||~126DR~
                 xeebc.map defines default for B2M/M2B/B2F/F2B.       ||~126DI~
             err-rep-char:substitution char for conversion error.     ||~v124R~
                          Char and HEX notation. for SBCS and DBCS.  ||~v124R~
                          e.g. xcv f2s "."                             ||~v124R~||~v128R~
                               xcv m2b  "6f" "4040"                    ||~v124R~||~v128R~
                               xcv b2m   "?-"                          ||~v124R~||~v128R~
                          use with u2s,f2s. default is '?'.
             NX        :limit the line to be converted to not excluded line.
             .lab1/2   :limit the line to be converted to that label range.

   = DEL command.

             Same as DROp cmd under edit panel,else treated as file   ||~v124R~
             DEL cmd.

   = DOS command.                                                     
                                                                      
#ifdef LNX
        [ DOS | > ]  [command-string | sh  [terminal-options] ] ]     ||~v30BR~
#else
        [ DOS | > ]  [command-string | CMD ]                          ||~v30BR~
#endif
                                                                      
             You can enter DOS,OS/2 command from command input line.
             Sub shell screen is displayed if dos-command-string is
             omitted.(it end by EXIT command).
             *\ , **\ , ^*\ , :: is available for special path notation.||~v124I~
             Enclose by double quotation if it is required as not path||~v124I~
             but command parameter.                                   ||~v124I~
#ifdef LNX
  #ifdef XXE                                                          
             Open a new terminal emulator window.                     ||~v30BR~
             If you do not specify command-string, you can enter any command there.||~v30BR~
             "exit" closes the window.                                ||~v30BR~
             If you specify a command-string, the results are displayed.||~v30BR~
             Pressing the "Enter" key will close the window.          ||~v30BR~
             The terminal emulator will be used in the order listed below, based on the PATH.||~v30BR~
	                 "gnome-terminal"                              //~v5kkR~||~v30BR~
                     "konsole"                                     //~v5kkR~||~v30BR~
                     "xfce4-terminal"                              //~v6s2I~||~v30BR~
                     "qterminal"                             //~v6s2I~||~v30BR~
             However, if you specify a command string on the =6 screen,||~v30BR~
             a new window will not open and the results are appendedd to =6 screens.||~v30BR~
             "DOS sh" will start the terminal emulator in a new window.||~v30BR~
             The terminal emulator can be changed in the ini file.    ||~v30BR~
             "LNX_CmdTerm_gxe" option for "DOS command-string" pattern,||~v30BR~
             in the other cases, specify "LNX_ShellTerm_gxe" option.  ||~v30BR~
  #else                                                               
             If no command-string is specified, the screen will become the child process's window.||~v30BR~
             You can enter any command there. "Exit" will close the window.||~v30BR~
             With command-string, the screen becomes the window for the child process,||~v30BR~
             command results will be displayed and pressing Enter will back to he original xe panel.||~v30BR~
             However, if on the =6 screens, no window will open and the results will be appended there.||~v30BR~
                                                                      ||~v30BR~
             "DOS sh" will start the terminal emulator in a new window.||~v30BR~
             The terminal emulator is the same as the one when you start xe.||~v30BR~
             If it cannot be determined, it will be gnome-terminal.   ||~v30BR~
  #endif                                                              
#else   //W32                                                         ||~v30BR~
  #ifdef WXE                                                          ||~v30BR~
             Open a separate window terminal.                         ||~v30BR~
             Without command-string, you can enter any command there. ||~v30BR~
             "exit" closes the window.                                ||~v30BR~
             With command-string, the results are displayed there.    ||~v30BR~
             "Enter" key closes the window.                           ||~v30BR~
             However, on the =6 panel, the result is appended to =6 pane.||~v30BR~
             The opened window terminal is kept for continued processing,||~v30BR~
             it is closed at end of wxe.                              ||~v30BR~
  #else                                                               ||~v30BR~
             Without command-string, the screen changes to the child process's window.||~v30BR~
             You can enter any command there. "exit" closes the window.||~v30BR~
             With command-string, the screen changes to the child process's window||~v30BR~
             which displays the result of command-string.             ||~v30BR~
             "Enter" key back to xe panel.                            ||~v30BR~
             However, on =6 panel, no new window and the results will be appended to =6 panel.||~v30BR~
  #endif                                                              ||~v30BR~
             If "DOS CMD" opens a new terminal window,                ||~v30BR~
             you can enter any command there.                         ||~v30BR~
#endif

             DOS(>) can be omitted on the Command Result Edit screen. ||~v124R~
             see (5).DOS command.

   = Path Up/Down.

        {DPU|DPD}

          EDIt or BROwse the file/dir in the path of currently displayed.

   = Delete set of lines.

        DROp  {x | nx} [rep] {all | .lab1 .lab2}

          (DELete can be used on edit screen alternatively.)

            -x  :delete excluded lines at once.
             nx :delete not excluded lines at once.                   

            -rep:replace deleted lines by one line " nn lines deleted ".
            -all:through the file
            -.lab1/2:Limit drop line range using a pair of label
                    on lineno column. line number may be used so as to
                    limit line range with no label on lineno column.
                 e.g. "DRO x .from .to"  , "DRO x .120 .150".         ||~v128R~
   = EBCDIC related.                                                  ||~v125R~
                                                                      ||~v125R~
        EBC SETCP:codepage                                            ||~v125R~
                                                                      ||~v125R~
           SETCP :changes the codepage of the file.                   ||~v125R~
                    e.g. EBC SETCP=CP935                               ||~v125R~||~v128R~
                  EBC cmd dose not change original code, but display the code according the codepage.||~v125R~
                  So, close operation dose not write back to the file if there are no other modification to the file.||~v125R~
                  Undo function restores SETCP effects of CV/EBC cmd. ||~v125R~
                  Codepage by SETCP option is registered to profile at close operation(not CANcel but END operation)||~v125R~
			      Use "EBC SETCP=" to back to default codepage.       ||~v127I~
                                                                      ||~v125R~

   = File edit

        {EDIt | ET | EB | EH | EN | EC(=EL) | ECN(=Ei) | EK | EKN(=EJ) | E8}||~v124R~
            file-name [/P[0|1]] [CAP|NOCAP] [TC|NOTC] [NB] [NONUM] [F{n[-m]|vfmt}]||~127BR~
            [CPU8|CPLC|CPAS|CPEB[:converter]] [IE] [FNU8|FNLC|FNAS]   ||~v130R~
            [/L] [/Ln] [[/O][n[t]]-[m[t]]]
            [/M[r[w]][B|C|H|K][n][o|L][X][width[S]][d]]               ||~v125R~
                                                                      
            -Select command verb for the file to be opened.
             (Text or Binary mode is self determined if not specified.)
             ET :force textmode.
                 Except for EBCDIC file, this is the same effect as /Mt option.||~v125R~
                 EOL-ID is 0x0a for Linux, 0x0a and 0x0d0a for Windows.||~v125R~
                 For EBCDIC file EOL-ID is 0x15 if no other /Mx option specified.||~v125R~
             EB :binary mode. 0x0d0a nor 0x0a is not line delimiter.
                 line is split by length of width.                    
             EH :display file with dump mode(CHAR and HEX digit).
                 Both Char and HEX digit input is allowed.
                 You can select letter case by "opt HEX {upper|lower}" cmd.||~v125R~
             EN :SPF file(Col.73-80 is line-number,line length is fixed
                 to 80 byte. Last 2 digit(col.79-80) is line update counter||~v124R~
                 automatically maintained.                            
             EC :80 byte COBOL file with col.1-6 is line-number.
                 EL is alias.
             EK :80 byte COBOL file with col.1-6 is space.
             ECN:EC and EN.SPF-COBOL with col.1-6 is line-number.
                 Ei is alias.
             EKN:EK and EN.SPF-COBOL with col.1-6 is space.
                 EJ is alias.
             E8 :same as "E -f80".                                    ||~v124R~
                 EJ is alias.                                         ||~v124R~
            -P  :P or P1 protect out of margin.
                 P0 means on binary file line expansion is avail only by
                 keyin on the out of margin.
            CAP :All input to the file is translated to upper-case.
                 See also CAP command.
            NOCAP:Upper-case translation is not done.
                  Use to deny default setting by CAP command.
            TC   :TabClear. Tab is replaced by some count of space at save.
                  Count is as you see and controlled by TAB command.  
            NOTC :Use to deny the default TC option for the file opened by
                  en command.
            NB   :skip temporarily backup at file save.               ||~v125R~
                  To protect from file corruption by ABEND at file write,
                  original file(local file except on floppy drive only) is copied||~v124R~
                  on the directory just before writeback,then deleted after
                  write completed. Specify NB if you worry about disk space||~v124R~
                  or performance.                                     ||~v124R~
                  "-BK" option of END/SAVe command denies this option.||~v124R~
            NONUM:Col 73-80 of TSO file with RECFM=Fx,LRECL=80 is treated
                  as line number. Use this option to deny it.
                  NUMSTD,COB,Fxx option of profile record is ignored. ||~v124I~
            Fn[-m]:set max line length to n and left margin to m.
                   Column over n is protected to input.
                   Use n=0 to deny the protection for TSO file with RECFM=Fx.
            Fvfmt:VariableLengthRecord file record header format.      ||~127BR~
                    RDW:LLZZ format(2 byte length filed+0x0000, length is containing header length),default.||~127BR~
                    H  :2 byte LL including header length itself.     ||~127BR~
                    HD :halfword LL not including header length.      ||~127BR~
                    F  :fullword LL including header length itself.   ||~127BR~
                    FD :fullword LL not including header length.      ||~127BR~
                    MF :Microfocus convention.                         ||~127BR~
                        System record at top of the file indicates header length is halfword or fullword.||~127BR~
                        (I do not care role of system record, don't upload the file updated by xe.)||~127BR~
                                                                      ||~v124R~
#ifdef UTF8SUPP                                                       ||~v125R~
                                                                      ||~v125R~
            CPU8: Open as UTF8 file.                                  ||~v125R~
            CPLC: Open as locale code file.                           ||~v125R~
            CPAS: by the LANG environment. Default.                   ||~v125R~
            CPEB[:converter]: Open as EBCDIC file.                                ||~v125R~||~v130R~
                  converter:EBCDIC codepage such as CP930.            ||~v130R~
                  You can use ICU/iconv converter by EBCDIC cfg file prepared.||~v130R~
                  If you do not use the EBCDIC cfg file, you can specify CP037, CP939, or CP930.||~v130R~
                  If you do not specify this converter option, the converter in the cfg file is used.||~v130R~
                  If no cfg file is prepared, the default is CP930 in Japanese environments, and CP037 otherwise.||~v130R~
                                                                      ||~v125R~
              CPxx option is save to profile.                         ||~v125R~
              No need to specify for the 2nd open.                    ||~v125R~
              Default is CPAS, and CPxx option for the directory is default of the file in the directory.||~v125R~
              You can confirm the open option by the id *U/*u/*L/*l/*b on the header filename line.||~v125R~
              ("b" means binary mode open.)                           ||~v125R~
              Uppercase means explicit CPxx specification including the case by saved value in the profile.||~v125R~
              Re-load by CPLC when translation error if no CPU8 option or CPU8 is not registered on profile.||~v125R~
              UTF cmd can change the default and CPLC reload option. ||~v125I~||~v125R~
                                                                      ||~v125R~
            IE  : You can not open by edit mode if translation error occured.||~v125R~
                  To force open, use "IE" option.                     ||~v125R~
                  Not translated code are loaded as it is and displayed by "?".||~v125R~
                  You can open by browse mode even if translation error occured.||~v125R~
                  Error position is searched by "f *ec" cmd.          ||~v125R~
            FNU8|FNLC|FNAS:                                           ||~v128R~
            (Linux)                                                   ||~v128R~
                  Specify dirlist filename encoding if valid on both encoding.||~v128R~
                  It is recorded to profile, so use FNAS to reset it. ||~v126R~||~v128R~
                  Also available to file to be opened.                ||~v128R~
            (Windows)                                                 ||~v128R~
                  Windows use UTF-16 for filename encoding, so FNxx will be ignored.||~v128R~
                  xe display by locale code if utf16-->locale code translation succeeded,||~v128R~
                  else display by unicode with color green.           ||~v128R~
                                                                      ||~v126R~
            Use "O" dirlist line cmd to specify different option with dirlist opened.||~v126R~
                                                                      ||~v125R~
#endif                                                                ||~v124R~
                                                                      ||~v125R~
            -L  :when open using wild card,list not file but dir list
                 even if corresponding member is only one.
            -Ln :initialy jump to n-th line after opened the file.
            -n[t]-m[t]:load start/end line no or file offset.
             t:tail option.
             e.g.100-900 , -600 , 600- , 600 , /o1200-13ff, 100t-100t, /o400t.||~v127R~||~v128R~
                 600 is same as -600.                                 ||~v127I~
             Only one part of a file is loaded at a time.
            -/M:Read,Write mode; specify P,U,T,B,M,E,R or V for r/w.        ||~v125R~||~v125R~||~127BR~
             If r=B,do not specify w.
              P:PC mode    :0x0d0a is line delimiter.
              U:UNIX mode  :0x0a   is line delimiter.
              T:TEXT mode  :0x0d0a and 0x0a is both line delimiter.
                            Text mode write by w=T translate 0x0a to 0x0d0a on Windows.||~v125R~
                            For ex, if /Mpt is specified, single 0x0a is not EOL-ID||~v125R~
                            but it is new EOL-ID at next open after saved.||~v125R~
                     (Note) "ET" cmd check 0x15 as EOL character for EBCDIC file.||~v125R~
                            On the other hands, /Mt recognize 0x0a and 0x0d0a as EOL character.||~v125R~
                            If you cannot open the file due to a header error||~v130R~
                            because the file is recorded as variable length mode in the profile, open it with /Mt.||~v130R~
                                                                      ||~v125R~
              M:Mac  mode  :0x0d   is line delimiter.                 ||~v125R~
              E:EBCDIC mode:0x15   is line delimiter.                 ||~v125R~
              R:Fixed Length Record mode                              ||~127BR~
                  Read/Write by fixed record length.(ignore all EOLID)||~127BR~
                  Specify record length by Fn[-m] option.   ||~v125R~ ||~127BR~
                  Record mode is assumed when open by E8 cmd for EBCDIC file||~v125R~||~127BR~
              V:Variable Length Record mode. Record length is set on the record header at top of line.||~127BR~
                Specify record header type by /Fvfmt.                 ||~127BR~
                                                                      ||~127BR~
              B:same as EB cmd
              H:same as EH cmd
              C:same as EC cmd
              K:same as EK cmd
              N:same as EN cmd

              Default is "t" for input,"u" for output if all input
              line eol is 0x0a, "p" if 0d0a.
              Default is /muu for /mu,/mtp for /mt when only "r" is
              specified.
              If r!=w, EOL char is changed and written when save or close
              file even if no line updated.
                                                                      ||~v125R~
              "width" is initial display width. If line is long over the||~v124R~
              value it is displayed as concatenated line.             ||~v124R~
              When line contains TAB(0x09) ,those lines are expanded over the||~v125R~
              width by TAB expansion(See TAB cmd).                    ||~v125R~
              (To split concatenated line,use "SPL CONT" command)     ||~v124R~
                                                                      ||~v125R~
              Value is save for binary/text edit/text browse mode each
              if 's' option is followed,and effective until next 's'
              specification. 0 means 32760(default,999 for DOS version).||~v127R~
              If no default is set, 32760(Text file) or 72(binary file)||~v127R~
              is selected.
              'd' option is to display file description.
                -->(1).Function-Key default assignment. #14

              o|L:Type of line number column,display by offset or line
                  number. Default to binary file is set by NUM command,||~v124R~
                  hex when no default is set.
                  but input range type specification override it.
              X:vertical HEX display(3 line of char,hex 1st digit and ||~v124R~
                hex 2nd digit on the same column)


            -Directory list is displayed by specifying directory name
             or wild-card filespec,and "."(current) or ".."(parent) is
             allowed.
             If only one file is corresponding to the wild-card,
             the file is displayed except the case /l option specified.
             Wildcard  "*" is usually used for current displayed file,||~v124R~
             use "**" or "*.*" for all files in current directory.
            -System or Hidden cannot be updated by OS/2 version.      

   = Termination

        {END | RETurn | QUIt | EXIt | CANcel}  [-NB|-BK] [CPU8|CPLC|CPEB] [IE]||~v125R~||~v125R~
                   [/M{T|P|U|M|E|R|V}] [/F{n[-m]|vfmt}] [-S{r|i|d}] [-Force]            ||~v125R~||~127BR~||~v129R~

            EXI   :terminate current screen hierarchy(half of split)  
            RET   :return to command prompt(Update is saved)
            QUI   :return to command prompt(Update is abandoned)
            END   :terminate current screen(Update is saved)
            CAN   :terminate current screen(Update is abandoned)      
                                                                      ||~v124R~
            -NB   :(END cmd only)skip temporarily backup at file save.  ||~v124R~||~v125R~
                   To protect from file corruption by ABEND at file write,||~v124R~
                   original file(local file except on floppy drive only) is copied||~v124R~
                   on the directory just before writeback,then deleted after||~v124R~
                   write completed. Specify NB if you worry about disk space||~v124R~
                   or performance.                                    ||~v124R~
            -BK   :(END cmd only)deny NB option of Edit cmd.          ||~v124R~
                                                                      ||~v124R~
#ifdef UTF8SUPP                                                       ||~v124R~
                                                                      ||~v125R~
            (END cmd only)                                            ||~v125R~
              CPU8/CPLC:specifies output file encoding.               ||~v125R~
               /CPEB    translation will be done, then write back.||~v125R~||~v125R~
              IE       : ignore translation error, error code is replaced by "?".||~v125R~
              /M       :request to change eol char.                   ||~v125R~
                        T:Text mode. Linux:0a, Windows:0d0a, single 0a is replaced by 0d0a on Windows.||~v125R~
                        P:0d0a(PC file)                               ||~v125R~
                        U:0a  (Unix file)                             ||~v125R~
                        M:0d  (Mac file)                              ||~v125R~
                        E:15  (EBCDIC file)                           ||~v125R~
                        R:Fixed Length Record mode. Specify LRECL by /Fn[-m] option.    ||~v125R~||~127BR~
                        V:Variable Length Record mode. Specify record header type by /Fvfmt.||~127BR~
              -Fn[-m]  :record mode record size and margin.              ||~v125R~
                        Use to change to record mode or change record size.||~v125R~||~127BR~
                        F0 resets record mode.                        ||~127BR~
              -Fvfmt   :VariableLengthRecord file record header format. See Edit command.||~127BR~
                                                                      ||~v125R~
              -S{r|i|d}: SO/SI option                                 ||~v125R~
                         r : When current screen is EBCDIC file and cmd option is CPLC/CPU8,||~v125R~
                             replace SO/SI to a space.                ||~v125R~
                             When current screen is not EBCDIC and cmd option is CPEB,||~v125R~
                             replace both side of space, if available, to SO/SI.||~v125R~
                         i : Insert SO/SI when translation to EBCDIC.||~v125R~
                         d : Delete SO/SI when translation from EBCDIC.||~v125R~
              -Force   :Warning is issued when timestamp of the file was changed from time of opened||~v129R~
                        (the file was updated in the other session),  ||~v129R~
                        use this option to force save.                ||~v129R~
                                                                      ||~v125R~
#endif                                                                ||~v124R~

   = Execute edit command file.

        EXE  [!] { * | ^* | filename } [parm-1,...] [.lab1 .lab2]
                   [< {@parmfile | [S] wildcard  [D[+]] ]             ||~v124R~

         !       :execute all cmd in the file ignoring each cmd error.
                  ! is specified each line in the cmd file.
         *       :execute command in the currently displayed file.    ||~v124R~
         ^*      :execute command file opened in the other side of
                  split screen.                                       
         filename:file contains edit commands.                        ||~v124R~
                  accept notation *\, ^*\ or :: etc.
                  comment line is start by "#".
                  "#" after ";" also start comment description.
         parm-n  :parms replace %1--%9 in the command file.
         .lab1/2 :limit line range using label line cmd or lineno.
                  e.g. EXE * .from .to; EXE ^* .120 .130              ||~v128R~
                                                                      ||~v124R~
         Parameters after "<" enable to repeat the EXE cmd until all entry are exausted.||~v124R~
                                                                      ||~v124R~
         @parmfile :Repeat for each line of the parmfile.             ||~v124R~
         S         :S means select and used on the dir-list panel.    ||~v124R~
                    Each filename(with out path) corresponding to the wildcard is the last parameter to the EXE cmd.||~v124R~
         wildcard  :Without "S",fullpath name corresponding to the wildcard is the last parameter||~v124R~
                    of each repetation.                               ||~v124R~
         D[+]      :By default,sub dir is not selected.               ||~v124R~
                    D : select directory entry only, D+:select all entry including directory.||~v124R~
                                                                      ||~v124R~
            One supposed usage is change the word in all files in the directory at once.||~v124R~
            e.g. File execmdf contains following 3 lines.              ||~v124R~||~v128R~
                       s "%3"                                         ||~v124R~
                       c %1 %2 all                                    ||~v124R~||~v126R~
                       end                                            ||~v124R~
                Enter  "exe ! execmdf FROM TO <s *.c" on dir-list panel.||~v124R~
                EXE cmd executes Select/Change/End to all *.c file in this directory.||~v124R~
                If "!" is not specified, repetition stop at the file which dose not contains the word FROM.||~v124R~
                To abridge cmd input,you may register this exe cmd in =0.1 panel.||~v124R~
                For ex,enter "chd exe ! execmdf %1 %2 <s *.c" on =0.1 panel.||~v124R~
                "chd FROM TO" on cmd line do the same thing.          ||~v124R~
            When set-upping EXE cmd file, you should consider that file name may have embedding space.||~v124R~
            EXE cmd log remains on ::#exe.                            ||~v124R~

        -Command is optionally logged to file "::cl" by "OPT CMDLOG [ON|OFF]"||~127ER~
         ::cl may be used to create EXE cmd file.                     ||~127ER~
         (for OS/2 or GCC,once close by "OPT CMDLOG OFF",then open ::cl)||~127ER~
                                                                      ||~127ER~
        -AT and SLEep command is not avail in the file.

        -sample command file
                swap
                reset x
                x all
                i %1 all
                i %2 all
                del x all
                s %3
                undo
                undo
                undo
                undo
                undo

   = Search string

        {FINd | IFInd | EXClude | IX | FNX | INX}
                 [!] {string | * | *e | *ec | *g | *L | *u | *=[n] | *=Mn | \esc | P'pics'}||~v125R~
                     [-g]                                             ||~v124R~
                     [U[B|L|8|4]]                                     ||~v125R~
                     [col-range] [& [!] string2 [col-range2] [-d[<|>]n]
                     [all | next | + | prev | - | first | last]
                     [-cont]                                          ||~v130M~||~v130R~
                     [.lab1 .lab2] [l-column | LM | RM [r-column]]
                     [-a[-]n] [-b[-]n] [-c[{L|R}m][{T|B}n]] [-j|-je]
                     [-Llcmd] -m[n] [-nx] [.lab1 .lab2]               
                     [-{PSP|PSF}[X|R|D]]                              ||~v128R~
                                                                      
                    ( "\" = 0x5c = backslash )                        

            col-range:[c1 | LM | RM [c2] | eol | maxeol | ATTR]       ||~v129R~

            FIN     :Case sensitive search
            IFI     :Case Insensitive search
            EXC     :Find string and then exclude the line.
            IX      :IFInd string and then exclude the line.          ||~v130R~||~v130R~
            FNX     :FINd excluding excluded line.
            INX     :IFInd excluding excluded line.

            !       :search lines not containing the search word.
            string  :use quotation for space embedded or for special
                     string as following.
                     For ex, "F '.exe'", "F 'set up'".
                     To exclude all lines,specify simply "EXC ALL".
                     Word followed by "\n" means matching at EndOfLine.
                     e.g. "F word\n".                                 ||~v128R~
                     'F "a b"\n' is invalid, 'F "a b" eol' is valid.  ||~v124I~
                     'F *\n' search EndOfLine position.               ||~v124I~
                     'F "*"\n' search "*" at the eol position.        ||~v124R~
            &       :search line containing 2 word. e.g. word1 & word2.||~v128R~
            *       :search same string as previous search command
                     Use it to search changing direction like as
                     f * last.  
                     search range is not inherited.
                     No effect for 2nd word of &(AND) search..        ||~v125R~
                     When searching for the string itself, enclose it in quotes, e.g. f "*u" .||~v30DI~
            *u      :search updated line.
            *e      :search error line.                               ||~v125R~
                     shift err,line cmd err etc.                      ||~v125R~
                     "." label cmd can be used as marks.              ||~v125R~
                     set any label on lineno column and search by "f *e" cmd.||~v125R~
            *ec     :search UTF8 translation error code position for the file opened with CPU8 option.||~v125R~
                     *e is also avail for the line containing translation error until the line is updated.||~v125R~
            *g      :search grep'ed line by current screen grep.
                     After -g option support, GREp cmd will not be used to search on currently opened screen.||~v124R~
                     But this option yet remains.                     ||~v124R~
            *L      :search matched(unmatched if combined with !) line
                     of the result by line cmd "=" or result of TC cmd "=="
                     operation.
                      e.g. after compare by "=" line cmd,              ||~v126R~||~v128R~
                            "x *l all; del x all" will delete all matched line||~v126R~
            *=[n]   :exclude repeated lines over n+1 lines.
                     column to be compared may be specified.          
                     pattern "x *= all" is just avail. Default n is 1.||~v124R~
                     you can deduce file size by "dro x all" after
                     exclude cmd with this option.
                     "x *= all" leave 1st line of each same line block
                     displayed,to exclude also 1st line,use /b0 option.
                     specifying minus on -a parm bottom line may be
                     remain as not excluded.
                     ex, "x *= -a-1" 2 line of top and bottom remain
                     as not excluded.
            *=Mn    :key matching of 2 file on the split screen.      
                     check the word is exist or not on the file of the other side.
                     n:key position of the file of the other side     ||~v124R~
                     key position of the current file is specified by search||~v124R~
                     range column parameter.
                     key is highlightened when search succeeded.      
                     On the other side, matched key is flagged as error line
                     Lineno field is highlightened and can be searched by "f *e".||~v126R~
                     e.g. "x *=M6 10 18; del x all"                    ||~v126I~||~v128R~
                         search the line column 10-18 of this file match to the column 6-14||~v126M~
                         of any line of the file of another panel.    ||~v126M~
                         "x" then "del" cmd will delete all matched lines.||~v126I~
            \esc    :Following 1 byte escape sequence and hex notation
                     is available.
                     \a (bell=0x07),\b (BS=0x08),\t (H-tab=0x09)
                     \n (LF=0x0a),\v (V-tab=0x0b),\f (FF=0x0c)
                     \r (CR=0x0d),\x(even number of hex notation)
                     example of hex notation. \x8281 , \x09 , \x0c.   ||~v30CR~
                     \a or \x0d0a can not be found if it is treated as
                     line terminator at file load.
                     In text files, character boundary is considered, ||~v30CI~
                     but in binary files, boundary is not considered, ||~v30CI~
                     so find word may matches to not first byte of the character.||~v30CI~
                     It cannot be used with other char like as \aX
                     Tab(x09) is not allowed with others like as \x0920
                     for text file.
                     IFInd is treated as FINd(case sensitive).
                     To search string \t etc.,use quotation like as "\t".||~v124R~
                                                                      ||~v125I~
              (Note) Character boundary is considered for \x__ notation of search/replace||~v125R~
                     string for UTF8 file. it should be 4 bytes multiple.||~v125I~
                     aa of \xaabb dose not match to yy of u-xxyy.     ||~v125I~
                     it may match to xx of u-xxyy.                    ||~v125I~
                     e.g. c \x30003000 \x20202020                      ||~v125I~||~v128R~
                                                                      ||~v125I~
            P'pics' :specifies char-class for each byte.              ||~v124R~
                     Other than special character is searched itself. ||~v124R~
                     Lower/Upper specification has no meaning for IFInd cmd.||~v124R~
                     Tab(0x09) match to space(searches in the line after tab expanded).||~v124R~
                                                                      ||~v124R~
                     Char-class specification.                        ||~v124R~
                       =  any character                               ||~v124R~
                       .  non-displayable characters([^[:cntrl:]] by regular expression; 0x00-0x1f,0x7f,0x80 except 0x09.)||~v124R~
                       @  alphabetic characters     ( [[:alpha:]]  )  ||~v124R~
                          Uses [A-Za-z] on Japanese environment.      ||~v128R~
                       -  non-numeric characters    ( [^[:digit:]] )  ||~v124R~
                       #  numeric characters        ( [[:digit:]]  )  ||~v124R~
                       <  lower case letter         ( [[:lower:]]  )  ||~v124R~
                       $  special characters        ( [[:punct:]]  )  ||~v124R~
                       >  upper case letter         ( [[:upper:]]  )  ||~v124R~
                       ^  non-blank characters(alternative of EBCDIC "NOT" sign)||~v124R~
                          0xac (Not sign of ISO Latin1) is also OK.   ||~v124I~
                                                    ( [^[:space:]] )  ||~v124R~
                     e.g. P'x.@#'                                     ||~v124R~||~v128R~
                          Enclose pattern by quotation to search space, comma or semicolon like as "P'ABC== ###'"||~v124R~
                          Use "\" as escape to search class specification char itself like as P'ABC\=\=##\.##\\'.||~v124R~
                                                                      ||~v124R~
            -g      :specifies string is regular expression.(grep search)          ||~v124R~||~v125R~
                     This is applied to string2 of AND search,but both is not necessary to be||~v124R~
                     regular expressions.                             ||~v124R~
                     Tab(0x09) match to space(searches in the line after tab expanded).||~v124R~
                     e.g. "f abcd|efg -g" searches word "abcd" or "efg".||~v125R~||~v128R~
                                                                      ||~v125I~
              (Note) For UTF8 file,it may not work correctly by the reason of||~v125R~
                     internal data structure for non ASCII character. ||~v125I~
                     Use this option being aware this facts.          ||~v125I~
                     There may be no problem if whole line contains only ascii character.||~v125R~
                                                                      ||~v125I~
                     xe uses GNU API(re_compile_pattern and re_search) with following syntax options.||~v124R~
                     (Windows version extracted sources from GNU regex v2.7)||~v124R~
                                                                      ||~v124R~
                       RE_BACKSLASH_ESCAPE_IN_LISTS :off: backslash is backslash in [ ]||~v124R~
                       RE_BK_PLUS_QM                :off: not \+ or \*  but + or *||~v124R~
                       RE_CHAR_CLASSES              :on : use character class such as [:alpha:]||~v124R~
                       RE_CONTEXT_INDEP_ANCHORS     :off: ^, $ has meaning if at proper position||~v124R~
                       RE_CONTEXT_INDEP_OPS         :off: +, * has meaning if at proper position||~v124R~
                       RE_CONTEXT_INVALID_OPS       :off: +, * is normal char if at not proper position||~v124R~
                       RE_DOT_NEWLINE               :on : . match to newline||~v124R~
                       RE_DOT_NOT_NULL              :off: . match to null||~v124R~
                       RE_HAT_LISTS_NOT_NEWLINE     :on : [^...] unmatch with newline||~v124R~
                       RE_INTERVALS                 :on : use interval { and }||~v124R~
                       RE_LIMITED_OPS               :off: use + * |   ||~v124R~
                       RE_NEWLINE_ALT               :off: newline is normal char||~v124R~
                       RE_NO_BK_BRACES              :on : use { and } not \{ and \}||~v124R~
                       RE_NO_BK_PARENS              :on : use ( and ) not \( and \)||~v124R~
                       RE_NO_BK_REFS                :on : no use bkwd ref \n(digit)||~v124R~
                       RE_NO_BK_VBAR                :on : use | not \|||~v124R~
                       RE_NO_EMPTY_RANGES           :on : invalid when range list seq down in [ ]||~v124R~
                       RE_UNMATCHED_RIGHT_PAREN_ORD :on : unmatched ) is treated as normal char||~v124R~
                                                                      ||~v124R~
                       RE_ICASE(case insensitive) is used for IFInd cmd.||~v124R~

#ifdef UTF8SUPP                                                       ||~v127R~
                                                                      ||~v125R~
            U[B|L|8|4]:search UCS2/UCS4/UTF8 code on binary file.     ||~v128R~
                       Case-Sensitive even if IFInd cmd.              ||~v128R~
             U   : option prefix.                                     ||~v125R~
             B/L : Search UCS2 by BigEndian/LittleEndian mode. default depends on the O/S("L" for 80x86 strings).||~v125R~
                   e.g. "F 123 UB" searches 0x'003100320033',           ||~v125R~||~v128R~
                        "F 123 UL" searches 0x'310032003300'.           ||~v127R~||~v128R~
             8   : Search UTF8 code.                                  ||~v125I~
                   Keyboard input code depends on A+u status indicated by cmdline prefix.||~v125I~
                   "=u=>"  means UTF8, "===>" means locale code.      ||~v125I~
                   Search UTF8 code by U8 option when locale code mode.||~v125I~
                   Use "U8" option to search UTF8 code on the file opened with CPLC||~v125I~
                   and keyboard is locale mode.                       ||~v125I~
                     e.g. F x U8                                      ||~v125I~||~v128R~
                      Assume "x" is locale code, 0xa0 as a example,   ||~v125I~
                      this cmd search 0xc2a0 (UTF8 code corresponding to 0xa0).||~v125I~
             4   : FINd cmd:search not 2 byte ucs but 4 byte ucs.     ||~127MI~
                   Specify for each word when &(AND) search.          ||~127MI~
                      (e.g. f Micro U4 UL & Vender U4 UL               ||~127MI~||~v128R~
                   CHAnge cmd:hex notation of replacing string is UCS4.           ||~v125R~||~127MR~
                     e.g.  C abc  \x10fffd   u4                       ||~v125R~||~v128R~
                   If missing U4 on CHAnge cmd on UTF8 file, replacing string is assumed as UCS2||~v125R~
                     e.g.  C abc  \x30203021                          ||~v125R~||~v128R~
                                                                      ||~v125R~
#endif                                                                ||~v125R~
                                                                      ||~v125R~
            all     :search all lines of the file
            allkx   :all without revealing found word on excluded line.
            next    :search forward from cursor position.
            +       :same as next
            prev    :search backward from cursor position.
            -       :same as prev
            first   :search forward from start of file.
            last    :search backward from end of file.
            -cont   :search starts from the succeeded found position just before.||~v130I~||~v130R~
                     When selecting lines in a large file by the Find command in the Exe cmd file,||~v130I~||~v130R~
                     from a performance consideration,                        //~1301I~||~v130I~||~v130R~
                     when NotFound occurred, the next Find will start not from the first line,//~1301I~||~v130I~||~v130R~
                     but from the last Found line.                            //~1301I~||~v130I~||~v130R~
                     It will be better on condition that files were sorted.||~v130I~||~v130R~
                     Available only in Exe cmd file.                  ||~v130R~
                     (See html Help for sample usage.)                ||~v130R~
            .lab1/2 :Limit search line range using a pair of label
                     on lineno column. line number may be used so as to
                     limit line range with no label on lineno column.
            c1      :left-most column of search range.                ||~v129R~
            c2      :right-most column of search range.               ||~v129R~
            LM      :search Left margin only.
            RM      :search Right margin only.                        
            eol     :search EndOfLine only.
                     e.g. F "a b" eol (F "a b"\n is err)              ||~v128R~
            maxeol  :search EndOfLine of lines with maximum length.   ||~v129R~
            ATTR    :Search file attribute column on dir-list panel.  ||~v129R~
                     Parameter is case insensitive.                   ||~v129R~
                     Use "d" for directory, "L" for symbolic link.    ||~v129R~
                     Specify "d" and "L" alone each.                  ||~v129R~
                     For other attributes, on Windows, select the line having all attributes of parameter,||~v129R~
                     on Linux, select the line having string of attribute parameter.||~v129R~
                     Following attribute IDs are specific to Linux.   ||~v129R~
                       u:setuid, g:setgid, S:setuid+setgid, t:stickey ||~v129R~
                       c:char device, b:block device, p:pipe, s:socket||~v129R~
                     e.g.) (Windows) f SH attr ; f R attr & 17-08 ; f D attr & L attr||~v129R~
                           (Linux)   f 775 attr ; f u attr            ||~v129R~
            -a[-]n  :display/exclude n lines after the line of the word.
                     For & search,base is the line containing the 2nd word.
                     "-" means "before the line" and -b option is also
                     required.
            -b[-]n  :display/exclude n lines before the line of the word.
                     For & search,base is the line containing the 1st word.
                     "-" means "after the line" and -a option is also
                     required.
            -c[{L|R}m][{T|B}n]:scroll option.
                     scroll page to display found word on the specified place.
                     Column is by L(from Left)/R(from Right),         ||~v124R~
                     line is by T(from Top)/B(from Bottom).
                     "-c" means "-cR"(word is right-most position).
                     Without -c option,no scroll is done when word is found
                     in the current page,else scroll to display the line
                     in the middle.
            -d[<|>]n:distance of 2 word of & search. n:line count.
                     -dn :word2 is on the next n'th line.
                     -d>n:distance is over than n lines.
                     -d<n:distance is lower than n lines.
                     without -d option or -d0,& search 2nd word only
                     on the line 1st word found.
            -j      :join lines between -a and -b or -d range for &(and)search.
            -je     :join up to EndOfFile.
                     if 1st word found and 2nd word is not found,
                     joins from 1st word line to end-of-file line.
                     e.g. i StartID & StartID -d>1 -a-1 -j.           ||~v128R~
                     this cmd remains not joined line at EndOfFile,   ||~v124R~
                     but -je option dose not.
            -Llcmd  :set line cmd on the line-no field of the found line.
                     e.g. f StartLineID -Lcc;f EndLineID -Lcc;rep partialcopyfile||~v128R~
                     create partialcopyfile from the line contains "StartLineID"
                     to the line contains "EndLineID".
                     this is for cmd in the EXE cmd file.
            -m[n]   :not reset previous found word reverse display.   ||~v124R~
                     it is effective for next r-find(PF5)
                     n:do that from next r-find(PF5).
            -nx     :search on displayed lines only(same as INX/FNX)  

            .Use function key(F5/Shift+F5) to re-search same word.    ||~v124R~
             Searching re-start from top/bottom when same function key is
             hit after reached to bottom/top.
            .Entering operand only and press function key,it start
             case sensitive search(F5) or case insensitive reverse
             search(Shift+F5).If command verb(only abridgement is allowed)
             is also input,case sensitivity depend on the command verb.
            .Tab and its following space is assumed same as space char.
            .Refer "About word" for how to specify string.
                                                                      ||~v128R~
            -{PSP|PSF}[X|R|D]                                         ||~v128R~
                                                                      ||~v128R~
              . PSP:applied to the split screen, applied also to not split screen.||~v128R~
                PSF:applied to the Edit/Browse file/directory panel.  ||~v128R~
                X:specify -PSPX/-PSFX alone, execute latest PSP/PSF command.||~v128R~
                R:specify -PSPX/-PSFX alone, set latest PSP/PSF command to cmd line.||~v128R~
                D:specify -PSPX/-PSFX alone, display PSP/PSF command effective now.||~v128R~
              . Use PSD cmd to display PSP/PSF command effective now. ||~v128R~
                                                                      ||~v128R~
              . Ctrl+F5 (re)find using PSP cmd, Alt+F5 (re)find using PSF cmd.||~v128R~
                Ctrl+Shift+F5, Alt+Shift+F5 switches search direction.||~v128R~
                If find cmd operand is set on cmd line,               ||~v128R~
                PSP/-PSF option is selected from cmd line regardless function key used(F5, C+F5 or A+F5).||~v128R~
                PSF cmd saved is lost when the file is closed.        ||~v128R~
                Latest two PSP cmds saved are recovered at restart as for SPLIT(1) and SPLIT(2).||~v128R~
              . On Linux, Alt+F5 may be assigned as default shortcut key.||~v128R~
                Inactivate it by Linux Settings-->Shortcut, change Function-Key assignmeny on xe =0.2 panel.||~v128R~
                                                                      ||~v128R~
              . This function enable 3 pattern's search on a file.    ||~v128R~
                After followings                                      ||~v128R~
                  F abcS                                              ||~v128R~
                  F abcP -psp                                         ||~v128R~
                  F abcF -psf                                         ||~v128R~
                F5 searches "abcS", Ctrl+F5 searches "abcP" and Alt+F5 searches "abcF".||~v128R~
                To continue search same pattern, use same key.        ||~v128R~
                (e.g. "F abcP -psp", C+F5, C+F5, S+C+F5                ||~v128R~||~v128R~
              . Change cmd is not supported.                          ||~v128R~
              . Enclose by quotation to search "-PSP" itself. (e.g. F "-PSP".||~v128R~||~v128R~
                                                                      ||~v124M~
   = Exchange excluded.                                               ||~v124M~
                                                                      ||~v124M~
        { FLIp | XX } [.lab1 .lab2]                                   ||~v124I~
                                                                      ||~v124M~
           exchange excluded lines<-->displayed lines.                ||~v124M~
                                                                      ||~v124M~
           .lab1/.lab2 : limit line range by label line cmd.          ||~v124M~
                                                                      ||~v124R~
   = Search Words on the cursor.                                      ||~v124R~
                                                                      ||~v124R~
        { FWF | FWB | IWF | IWF } [ AN | SP | DQ | SQ | (x | x( | )x | x) ]||~v124R~
                                                                      ||~v124R~
        As default, function keys are assigned.                        ||~v124R~
        To use options such as SP, DQ ... put those option on command input line||~v124R~
        the use these function key.                                   ||~v124R~
                                                                      ||~v124R~
                   CaseSensitive       CaseInsensitive                ||~v124R~
            Bwd     FWB: C+[, A+S+[     IWB: A+[                      ||~v124R~
            Fwd     FWF: C+], A+S+]     IWF: A+]                      ||~v124R~
                                                                      ||~v124R~
          AN:all punctuation(Default)                                  ||~v124R~
             @, _, $ and locale specific are not punctuation character.||~v124R~
             On Japanese Environment, DBCS delimiter will be checked  ||~v125R~
             such as DBCS space.                                      ||~v125R~
                                                                      ||~v125R~
          SP:only space is a delimiter.                               ||~v124R~
             use in the COBOL source(COBOL allows "-" as identifier). ||~v124R~
          DQ:only "(double quotation) is a delimiter                  ||~v124R~
          SQ:only '(single quotation) is a delimiter                  ||~v124R~
          ( :left boundary,   (x including  x and x( excluding x.     ||~v124R~
          ) :right boundary,  )x excluding  x and x) including x.     ||~v124R~
             If "(" or ")" is delimiter,specify like as "\(..(" , "\)..(" , "\(..)" , "\)..)".||~v124R~||~v125R~
             If '"' is delimiter specify like as ""(.                 ||~v124R~
             "x" may be multibyte string.                             ||~v124R~
             Nearest delimiter is applied when "x" is not found.      ||~v124R~
                                                                      ||~v124R~
          e.g.Assume the cursor is on "d" of  a string ...  abc -=def*ghi-klm+ nop;||~v124R~||~v128R~
              SP      : "-def*ghi-klm+"                               ||~v124R~
              =(      : "def"                                         ||~v124R~
              )-      : "def*ghi"                                     ||~v124R~
              =)      : "def"                                         ||~v124R~
              (=      : "=def"                                        ||~v124R~
              -(  )+  : "=def*ghi-klm"                                ||~v124R~
              (-  +)  : "-=def*ghi-klm+"                              ||~v124R~
                                                                      ||~v124R~
        Search the word on cursor position,and continue to search same word as long as pressing these key.||~v124R~
        Once intercepted by other key, new word is selected from the cursor position.||~v124R~
        Following cmd verb is assigned for each, FWB,FWF,IWB,IWF.     ||~v124R~
        And you can specify word delimiter type on cmd line(from the first if function key is used).||~v124R~
                                                                      ||~v124R~
        If the cursor is on the reversed range by mouse drag or Cut&Paste function key,||~v124R~
        the whole string in the range is searched.                    ||~v124R~
        If cursor is out of file contents area such as cmd line or lineno field,||~v124R~
        search the same word as previously selected.                  ||~v124R~
        This allow to search in the other file in the same session.   ||~v124R~
                                                                      ||~v30DI~
   = ScreenHardCopy                                                   ||~v30DI~
                                                                      ||~v30DI~
        HCOpy [EOL | NOEOL]                                           ||~v30DI~
                                                                      ||~v30DI~
            Specifies whether lines are cut at the End-of-Line(EOL) or at the screen width (NOEOL).||~v30DI~
            Effective until the end of the session.                   ||~v30DI~
            You can also specify this option by the command line option /Yh (EOL) (default is /Nh).||~v30DI~
            This option is intended for the case lines in UTF8 files contain RightToLeft formatting characters.||~v30DI~

   = Help

        HELp

#if defined(W32) || defined(LNX)                                      ||~v124I~
                                                                      ||~v124I~
            open help document(html files).                           ||~v124R~
            The directory is searched in the sequence of /HD cmdline parameter,||~v124R~
            xehelp= environment variable, work-directory.             ||~v124I~
            Additional directory is searched under Linux. See xelnxe.txt.||~v124R~
#endif
            See menu panel 0.2 or 0.3 for commands,function keys table.||~v124R~

   = Jump to Home position

   = Vertical 3 line HEX display                                      ||~v124R~

        HEX [ On | Off | YZ | NZ ]                                    ||~v125I~
                                                                      ||~v125I~
            YZ:When cursor is on hex line of vertical hex display mode,||~v125I~
               cursor moves to like as upper-->lower-->upper of next column after char input.||~v125I~
               Even if CharacterInsertMode, input on lower line replace the hexdigit||~v125I~
               on the cursor without inserting new character.         ||~v125I~
               This means also On if current status is Off.          ||~v125I~
            NZ:back to usual cursor move mode.                        ||~v125I~
               This measns also On if current status is Off.          ||~v125I~

            -display line by 3 line, char line, hex 1st digit line and
             hex 2nd digit line.
            -toggle when ON/OFF operand missing
            -to print by this mode, use **/*** parameter on XPRint cmd
             (xprint utility also supports 3 line mode hex dump)      ||~v124R~
            -Use "opt HEX {upper|lower}" cmd to change letter case.   ||~v125R~

      HEX 3-line display sample
        ****|********** TOP OF FILE *****************************************************
        0001|G:\src\xe>h:\tool\lha.exe v k:\xe117\xegcc117
            |43577657636357666566626762726357633357666633322222222
            |7ac323c85e8ac4ffccc81e585060bac85117c8573311700000000
        0002|Listing of archive : k:/xe117/xegcc117.LZH
            |467766626626766676232632763332766663332454
            |c9349e70f6012389650a0baf85117f85733117eca8
        0003|  Name          Original    Packed  Ratio   Date     Time   Attr Type  CRC
            |22466622222222224766666622225666662256766222467622222566622247772577622454
            |00e1d50000000000f2979e1c0000013b54002149f00041450000049d500014420490500323

   = Jump to Home position

        HOMe

            -move cursor to home position.

   = Split screen.

        {HSPlit | VSPlit}   (No operand)
            HSP     :Horizontal(above and bellow) split.
            VSP     :Vertical(left and right) split.                  ||~v124R~

            -Fill command line,move cursor to the point to split
             then Press Enter.
            -To end split,enter END/CAN/EXI to the half of screen.    ||~v124R~

   = INI file write.
     
        INI     (ini-file-name)

            -Use when "XE.INI"(default ini file name) is corrupted.
             Starting editor with /i (without ini file name) option,
             INI file is written with program default value by this
             command.
            -If key assignment is changed,re-create ini file.

   = Insert Toggle

        INS  [on | off]
            on          :Character Insert mode
            off         :character Repl mode
            (No operand):toggle

            -It may be used in Command-Key command

   = Join lines

        JOIn  { X | NX | [n[-b-s]] } [ all ]  [ .lab1 .lab2 ]

            Concatenate to lines.                                     ||~v124R~

            X    :concatenation of excluded part.                     
            NX   :concatenation of not-excluded part.                 
            n    :lines to be concatenate to a line.                  ||~v124R~
            b    :repeat n lines concatenation.                       ||~v124R~
            s    :skip s lines after n times repeat.
            all  :in the whole of file.
                  When X or NX,
                  without all, part is searched from the current cursor||~v124R~
                  position. RepeatCmd(Ctl+F12) support to repeat JOI cmd
                  without changing cursor position.
            .lab :join in the range of .lab1 and .lab2.

   = Character input

        KEY   string

          String input at the cursor position.

          string  :any character string

          Use in Command-Key(Menu opt 0.1) command
          like as  "POS 10;Key r3;ENT;"
          ENT is required after KEY command to execute entered KEY input.
          RepeatCmd(Ctl+F12) support to repeat KEY cmd without changing
          cursor position.
                                                                      ||~v124R~

                                                                      ||~v124R~
   = Long File name

        LFN   (no operand)

          display long filename overridden attr/rename field on dirlist.||~v124R~

   = Ligature mode                                                    ||~v129R~
                                                                      ||~v129R~
        LIG                                                           ||~v129R~
            - same as A+";" key                                       ||~v129R~
            - toggle Ligature mode.                                   ||~v129R~
              Console version accept Ligature ON only for CPU8(UTF8 file).||~v129R~
              Console version dose not accept from Windows7.          ||~v129R~
                                                                      ||~v129R~
   = Locate to the line.

        LOCate  { { [L] line-no | [O] offset } [C] | .label | {insall|repall} xxx}||~v30DI~

               (Use this format for Browse/Edit screen)

               Jump to the line with the line-no or offset depending
               on type of line number column if no L/O is specified.

               C : lineno/offset of current updated status.
                   if omitted, that of status of at opened.
               .label:search the line with this label.
                                                                      ||~v30DI~
               insall|repall xxx : Copies the label command to the top of the text line.||~v30DI~
               e.g.) If xxx is "ok", then for the line with the label ".a",||~v30DI~
                     "ok.a" is copied/inserted to the top of that line.||~v30DI~

        LOCate  {filename|timestamp|filesize}

               (Use this format for Directory-list screen. See SORt cmd.)||~v124R~

              filename :When dirlist is sorted by filename,
                        jump to the line with the filename nearest to the
                                                                      ||~v124I~
                        LOCate is executed also by typing char key the field just after||~v124I~
                        line-cmd column to before the attr column.    ||~v124I~
                        Until other than char key such as Esc is pressed,prefixing continues.||~v124I~
                                                                      ||~v124I~
#ifdef UNX
                        file-name by case-sensitive sequence.
#else
                        file-name by case-insensitive sequence.
#endif
              timestamp:When dirlist is sorted by timestamp,
                        specify yymmdd[-hhmm] format timestamp
              filesize :When dirlist is sorted by filesize,
                        specify filesize.

   = Move file into the edit screen(delete the file).

        MOVe    (file-name) [ CPLC | CPU8 | CPEB[:codepage] ] [IE]               ||~v125R~||~v125R~
                    [/M{T|P|U|M|E|R}] [/Fnn] [-S{r|i|d}]  [-S{r|i}d}] ||~v125R~

#ifdef UTF8SUPP                                                       ||~v125R~
                                                                      ||~v125R~
            CPU8/CPLC:encoding of source file.                        ||~v125R~
             /CPEB    Copy/Move "source-file" after translated.       ||~v125R~
                      Profile is checked, so you may not be required to specify CPxx option.||~v125R~
                                                                      ||~v125R~
                      You can other codepage than specified on cfg file using CPEB:codepage format.||~v125R~
                      When you don't want to translate by the codepage registered on profile,||~v125R~
                      use "B" option to "A"(After) or "B"(Before) line cmd specifying copy target position.||~v125R~
                          e.g. MOV ebcf1                              ||~v125R~||~v128R~
                               :                                      ||~v125R~
                               BB                                     ||~v125R~
                                                                      ||~v125R~
            IE       : continue copy operation ignoring translation error.||~v125R~
                       those char are copied as it is and displayed by "?".||~127AR~
                       This option is not required when target file is opened by with "IE" option.||~v125R~
            /M       :EOL-ID of copy source file.                     ||~v125R~
                      P:0d0a(PC file)                                 ||~v125R~
                      U:0a  (Unix file)                               ||~v125R~
                      T:Both 0a and 0d0a                              ||~v125R~
                      M:0d  (Mac file)                                ||~v125R~
                      E:15  (EBCDIC file)                             ||~v125R~
                      R:record mode. Specify LRECL by /Fnn option.    ||~v125R~
            /Fnn     :LRECL                                           ||~v125R~
            -S{r|i|d}: SO/SI option                                   ||~v125R~
                       r : When current screen is EBCDIC file and cmd option is CPLC/CPU8,||~v125R~
                           replace both side of space, if available, to SO/SI.||~v125R~
                           When current screen is not EBCDIC and cmd option is CPEB,||~v125R~
                           replace SO/SI to a space.                  ||~v125R~
                       i : Insert SO/SI when translation to EBCDIC.  ||~v125R~
                       d : Delete SO/SI when translation from EBCDIC. ||~v125R~
#endif                                                                ||~v125R~
                                                                      ||~v125R~
            -Copy all line of the file onto the specified position
             of line command such as a(After),b(Before),o(On),p(Paste),
             and then delete the file.
             Use "Line Insert Copy"(Alt+i) to specify the destination
             line under line-no not displayed mode.
             Destination line cmd is not required when null file.
             Wild card path name is accepted if the path is uniquely
             determined.
                                                                      ||~v125R~
       (note)Use XMOve or DOS command >MOVE to move file.
             MOVe command is treated as XMOve on the screen except
             BROWSE/EDIT.

   = Switch screen                                                    ||~126FR~

        {NEXt | PREvious}   (No operand)
            PRE     :Popup previous screen under the current.
                     Current is stacked to bottom.
            NEX     :Push current screen and popup screen on the bottom.

   = Remote setting                                                   ||~126FI~
                                                                      ||~126FI~
        NODe hostID [password]                                        ||~126FR~
                                                                      ||~126FI~
          replace password on ::xehosts, which is not saved to ::xehosts.||~126FI~
                                                                      ||~126FI~
            hostID  :key of ::xehosts.                                ||~126FI~
            password:remote login password                            ||~126FI~
                     For Android version, try to connect asynchronously to the remote host||~126FI~
                     if password parameter is missing.                ||~126FI~
                                                                      ||~126FI~
   = Line number display

        NUM {on | off | xon | xoff | seti | setr                      ||~v127R~
            (nn) | reset | renum | clear | ?} [s|f|k]
        REN [{setr|seti} [col1[-col2] ['delmchar'|S|B]]]

            on      :display 7 digits line number.
                     line number format is nnnnmmm
                                          nnnn:line number at open
                                          mmm :post-fix by line insert
                      nnnnnmm format if file contain over   10,000 lines
                      nnnnnnm format if file contain over  100,000 lines
                      nnnnnnn format if file contain over 1000,000 lines
            off     :no line number field displayed
            (nn)    :number of line number digit
                     only line update flag is displayed if 0;
                     no post-fix if 1 through 4(5 for over 10,000 line).
                     post-fix is from top digit when 5 or 6.
                     7 is same meaning as on.
             (note).Change is applied to screen of current and opened ||~v124R~
                    after this time.
                   .Line number digit is adjusted for each file at open
                    when this default value is too small.
                   .value is hold for browse/edit/cmd output screen each.
                   .For line-numbered file,7 is user at each open time
                    regardless this setting.

            xon/xoff:Attr of line number column display, offset or lineno.
            s       :Change default value for binary file.
                     (for text file default is always line number type).
            reset/renum:re-number line-number.(reset sub line number to 0)||~v124R~
                        For line-numbered file,all line length is set to
                        the fixed length,and line number column is set.
                        renum set on col 1-6 for COBOL file.
            clear   :space clear line number field.
            f       :force re-number for line-numbered file with error
                     of line-no or line-length.
            k       :clear/renum col 1-6 of cobk type file.
            ?       :display current default value for browse/edit/
                     command output screen.

            SETR/SETI :set line number into the file area by insert or replace mode.
            col1,col2 :column position to set.
                       field width is specified up to 8 byte by col2.
                       same width as left most line number column
                       if col2 is not specified.
            delmchar  :delimiter inserted after line number.
                       enclose by quotation or use S or B for space.
            e.g. ren seti 12'|' ,  ren setr 1-8:                       ||~v125R~||~v128R~

   = Change Options

        OPT  Option-ID  [Option-value,...]

          -Undelete option
               (Mode of delete line cmd on directory list)

             OPT UNDelete [off | on | keep]

              off :Undo cmd not avail.
              on  :Save delete data in saving directory(see following
                   (note)) until session terminate. It can be restored||~v124R~
                   by Undo cmd entered on the line deleted(*D*)
                   if dir-list screen is not yet closed.
                   After closed but session is not yet terminated,
                   you can undelete the deleted file or dir by Undo cmd
                   entering on the line of saving dir dir-list.
                   After terminated editor,you cannot restore deleted
                   ones anymore.
              keep:Save delete data on saving directory and it is not
                   deleted at session termination.
                   It can be restore by Undo cmd even after session was
                   terminated.
                   Drive free space is not increased after deletion.
                   Use "z" or "0" delete line cmd without saving delete
                   data,or DELete/XDD command(this command saves      ||~v124R~
                   nothing),or delete unnecessary files from saving   
                   director on directory list.
#ifdef UNX
            (note)-Saving directory is ~/xe_undel_nnnnn.(nnnnn:UserID).
                   This is changed by setting env-variable xe_undel.
#else
            (note)-Saving directory is \xe!undel on each drive.
#endif
            (note for remote-file)-saved at the same dir as deleted file
                                   renamed as following pattern.
                                   ..xe..org-name.._~yymmdd-hhmmss.mmm

                   Under that,date sub-directories for each days
                   and session sub-directories for each sessions
                   under date sub-directories are created,
                   then deleted files/directories are saved in the
                   session directory with same name as deleted.
                   If same name are multiple,file name extension is
                   changed to 3 digit sequence number.
#ifdef UNX
                   (e.g. ~/xe_undel_01000/01-01-23/000005_D/abcd.001).||~v128R~
#else
                   (e.g. G:\XE!UNDEL\96-01-07\000005!D\abcd.001).     ||~v128R~
#endif
                   In the date directory index file is created
                   corresponding to session directory,which is the
                   table of save file name and full path name of
                   deleted files/directories.
#ifdef UNX
                   (e.g. ~/xe_undel_01000/01-01-23/000005_-)          ||~v128R~
#else
                   (e.g. G:\XE!UNDEL\96-01-07\000005!-)               ||~v128R~
#endif
                   Do not update this file until which is not needed.

          -Allow undo-able delete dirlist line cmd.                   ||~v124R~

             OPT DELZ [off | on]

                  This is intended to avoid accidental not recoverable deletion.||~v124R~

              off :dirlist line cmd "Z" and "0" is rejected.
              on  :dirlist line cmd "Z" and "0" is accepted.

          -Long File Name option
               (filename on dir-list screen)

             OPT LFN [off | on]

              off :by FAT(8.3) name.
              on  :by LFN.(Default)
            (note)-Effective only for WIN,GCC version.
                   For GCC version,effective on Windows9x DOS box.
                   For OS/2 version,this setting is ignored and
                   LFN used for HPFS partition.

          -Long File Name option for Print line command on dir-list.
               (filename parm format for Print command)

             OPT PLFN [off | on]

              off :by FAT(8.3) name.
              on  :by LFN.(Default)
            (note)-Effective only for WIN,GCC version.
                   For GCC version,effective on Windows9x DOS box.

          -Binary file display code option

             OPT ASCII [off | on]

              off :display code>=0x80 as it is.(DBCS may be displayed)
              on  :display code>=0x80 as unprintable char.
#ifdef AIX
              initial value is on.
#else
              initial value is off.
#endif

          -Hex digit case option.

             OPT HEX [U | L]

              L :LowerCase Hex digit.
              U :UpperCase Hex digit.

              This is adapted to the Hex mode file open,
              Line-no column when offset display mode for binary mode.

          -Char and attribute of EndOfLine ID.

             OPT EOL { " " | eol-char | 0xXX | default } [ON | OFF]

              eol-char:char code of EndOfLine ID.
#ifdef UNX
	#ifdef AIX
              default :"_".                                           ||~v124R~
    #else
              default :x1d except under kon. "_" under kon.           ||~v124R~
	#endif
#else
              default :x1b.                                           ||~v124R~
#endif
              ON      :display attr is same as of lineno-column.      ||~v124R~
              OFF     :display attr is same as of file content display
                       column.
              (ON/OFF is applied to both EOL and FOLD char)           

          -Char and attribute of EndOfLine ID of split line.          


             OPT FOLD { " " | fold-char | 0xXX | default } [ON | OFF]

              fold-char:char code of EndOfLine ID of fold line(bynary and
                        split long text line)                         

              ON       :display attr is same as of lineno-column.
              OFF      :display attr is same as of file content display
                        column.
              (ON/OFF is applied to both EOL and FOLD char)           

#ifdef UNX
          -Floppy disk driveID option.

             OPT FD [ON | OFF]

	#ifdef AIX
             for the filename of prefix a:
    #else
             for the filename of prefix a: and b:
    #endif
              ON      :treat as file on FD.                           ||~v124R~
              OFF     :treat as normal UNIX file.                     ||~v124R~
#endif

          -Beep option

             OPT BEEP [ON | OFF]

             beep sound with error msg.

          -Right-Ctrl key usage.

             OPT RCTL [ON | OFF]

             use Right-Ctrl key as execute key.
             If set ON by this command,that override R-Ctl_ENTER option of ini file
             at the next session.                                     
             To make R-Ctl_NewLine on ini file effective,this option is required.
                                                                      
             Not effective under Windows98 and Linux console version. 

          -Detect Ctrl+Char key as function key.

             OPT CCFUNC [ON | OFF]

             Ctrl+Char key is used as function key.
             Use this when Shift+extended key is not detected like as Linux.
             Assignment is available but effective when this option is ON.
             Default assignment is following.
                         C_t=S_TAB,C_b=S_BS,C_x=S_ENTER,C_a=S_INS,
                         C_d=S_DEL,C_e=S_END,C_p=S_PGUP,C_n=S_PGDN,
                         C_u=S_UP,C_f=S_DOWN,C_l=S_LEFT,C_r=S_RIGHT
          -Free cursor mode.

             OPT FREECSR [ON | OFF]

             scroll or wrap when cursor is moved to edge of screen.
             if ON(default) cursor is wrap.
             Always wrap when cursor is on lineno-column.

          -Clipboard(::CB) save option.

             OPT CBSAVE [ON|OFF]

             Deleted data by Alt+Del(Delete by Cut&Paste function) is
             save to clipboard(ON,default) or not(OFF).               ||~v124R~
             By performance reason OFF is recomended.

          -Command logging.

             OPT CMDLOG [ON|OFF]

             command logging to logfile ::cl. default is OFF.
             (for GCC and OS/2 once set OFF before open by Edit/Browse cmd)
             line of ::cl accept "#" edit line cmd to re-execute cmd
             (timestamp field is ignored).
             useful for also create EXE cmd file.                     ||~v124R~

             sample cmdlog.
                === log opened === : 2005/04/12 20:50:14
                =20:50:17.937:e x1
                =20:50:23.828:e ::cl
                =20:50:56.953:e x2
                =20:51:00.484:e ::cl
                =20:51:06.203:e xefunc2.c
                === log closed === : 2005/04/12 20:51:33

          -Cursor Position After Execute.

             OPT RETTOL [ON|OFF]

             After Execute key(Enter key or Right-Ctrl key under "RCTL ON" option)
             on edit screen, Cursor is moved to Line-Number-Column as default.
             To move to Top-Of-Line set RETTOL option to ON.


          -Line Drawing Character setting

             OPT LINECH [on | off | filename | reload ]

#if defined(LNX) || !defined(XXE)
             on/off  :Selection of output string xxxx of yyyy of ini file.
                      if both specified by the ini file(xelch__.ini[.locale]).
                      select output string xxxx(ON) or yyyy(OFF).
                      (on other than linux console version,xxxx or yyyy
                      selection is done by +Shiftkey. linux console
                      version cannot detect complex +Shift key combination)
                      default is off.
                      And if ON and xxxx is 1 byte character,that byte is||~v124R~
                      displayed as Line-Drawing-Character.(use ACS function)
                                                                      ||~v124I~
                      Set off if your language use codepoint >0xa0 e.g. ISO8859-1.||~v124I~
#endif
             filename:temporarily setup from this file.                 ||~v124R~||~v125R~
             reload  :re-read the default file.                       ||~v124R~

             you can see the result of ini file process on =0.2 panel.||~v124R~
                                                                      ||~v124R~
          -Continuation of InsertLine.                                ||~v124R~
                                                                      ||~v124R~
             OPT INS_LINE [on | off ]                                 ||~v124R~
                                                                      ||~v124R~
             on/off  :After Inn edit line cmd, Enter key insert a null line automaticaly.||~v124R~
                      Default is on,                                  ||~v124R~
                      Automatic insertion stops under the condition of ||~v124R~
                      cursor is not on the last inserted line,        ||~v124R~
                      or last inserted is left as null line,          ||~v124R~
                      or another line cmd exist,                      ||~v124R~
                      or there is cmd on the cmd input line,          ||~v124R~
                      or line deletion is done.                       ||~v124R~
                                                                      ||~v124R~
#if defined(LNX) || defined(W32)                                      ||~v125R~
                                                                      ||~v124R~
          -Unicode Combining Character(Diacritical combining).        ||~v125R~
                                                                      ||~v125R~
#if define(LNX)                                                       ||~v30CI~
             OPT UNICOMB [ COMB | SPLIT | UNPR ] [ SHADOW | ITSELF | PADDING | U-xxxx ]||~v125R~
#else //Win32                                                         ||~v30CI~
             OPT UNICOMB [ COMB | SPLIT | UNPR | U-xxxx ]             ||~v30CR~
#endif                                                                ||~v30CI~
                                                                      ||~v125R~
               COMB, SPLIT, UNPR : display combined, split and alternate character each.||~v125R~
                                                                      ||~v128R~
               Following 3 operand is for Linux Console version only and specify how to write to screen||~v129R~
               when split mode and combine.(when combine mode, applied only when csr is on the line.)||~v129R~
                 SHADOW : write combining character with base character of the left side.||~v125R~
                 ITSELF : write combining character itself as single. ||~v125R~
                 PADDING: write tab display character which is cleared by "TAB OFF" cmd||~v125R~
               U-xxxx : any SBCS unicode you prefer.                      ||~v128R~||~v129R~
               U-00 will restore default value(':'(u-3a)).            ||~v128R~
               Cmd with no operand shows current status.              ||~v128R~
                                                                      ||~v125R~
              -Cmd input line(2nd line) is always SPLIT mode to enable modify combining char.||~v128R~
              -display characters of wcwidth=0.                        ||~v125R~
               Validity of the combination is not checked.            ||~v125R~
               (Maximum combination is 4 on Linux console version)    ||~v125R~
              -Alt+":" is also used to switch display mode Combined-->Split-->Unprintable.||~v128R~
              -Visibility of Linux version depends to Linux distribution.||~v125R~
               Try to switch display mode.                            ||~v128R~
               On Edit/Browse panel, displayed string may shift by cursor position.||~v128R~
              -Linux GUI version(gxe) print combined mode except "Wysiwig" checkbox is ON.||~v125R~
                                                                      ||~v125R~
          -Ligature setting.                                          ||~v125R~
                                                                      ||~v125R~
             OPT LIGATURE [ON | OFF]                                  ||~v125R~
                                                                      ||~v125R~
              -Ligature checkbox is added to also gxe Setup dialog.   ||~v125R~
              -Alt+";" is also assigned to toggle ON/OFF.              ||~v125R~
               Alt+";" is temporary for GUI version and checkbox status is saved.||~v125R~
               For Console version, A+";" status is saved to ini file.||~v125R~
               Command format: (reports current status if operand missing)||~v125R~
               From windows7, this is not supported for Console version.||~v129R~
                                                                      ||~v125R~
              -When Ligature is ON, character spacing depends to background(Windows,GTK,pango,ncurses).||~v125R~
               If On,keep monospacing.                                ||~v125R~
               Try not only for European font ligature such as ff/fi,  but also RTL langauge such as Arabic.||~v125R~
               Combination mode by "OPT UNICOMB"(or Alt+":") may be required also additionally to Ligature ON.||~v125R~
              -For Editor's characteristic, Character at the byte position of the cursor is displayed at there even when Ligature ON.||~v125R~
               For Backspace operation, also the previous position is displayed at the point.||~v125R~
               When cursor is on the HEX line, corresponding position on character line is kept the byte position.||~v125R~
               So, for RTL(RightToLeft) language such as Hevrew,arabic...  It seems that line is split by the cyrsor.||~v125R~
               Though I could not read nor understand it.             ||~v125R~
              -Ligature option is ignored in the following case.      ||~v125R~
               Binary file, horizontal hex display(EH cmd), HEX line of vertical HEX display mode, command input line.||~v125R~
              -Cmd input line(2nd line) is always Ligature:OFF.       ||~v128R~
                                                                      ||~v125R~
#endif                                                                ||~v124R~

   = Cursor move

        POS  row [column]

          row     :y co-ordinate (start from 0)
          column  :x co-ordinate (start from 0)

          +/- means relative offset from current position.
          No wrap even if it is over the screen width/height.         ||~v124R~
          Use in Command-Key(Menu opt 0.1) command
          like as  "Pos 10;hsp;home";

   = Profile                                                          ||~v124R~
                                                                      ||~v124R~
     PROfile cmd is for displaying or writing the profile record.     ||~v124R~
                                                                      ||~v124R~
             PRO {?|*|path|ext} [save|reset] [all | tab | cols | numfld | syn]"||~v124R~
                ?     :Help                                           ||~v124R~
                *     :for the profile record of the file currently opend.||~v124R~
                path  :for the profile record of the parent directory of the file currentry opened.||~v124R~
                ext   :for the profile record of the extension name of currently opened file.||~v124R~
                  Display the profile when no other option is followed.||~v124R~
                  Default is "*" when other options are following.    ||~v124R~
                save  :Write to the profile record.                   ||~v124R~
                       This is default when other options are following.||~v124R~
                reset :Delete profile record.                         ||~v124R~
                       Then write the profile when other options are following.||~v124R~
                all   :All profile are written to the profile record. ||~v124R~
                tab   :write tabclear status from current file.       ||~v124R~
                cols  :write cols on/off and type of cols from current file.||~v124R~
                numfld:write following SPF related options.            ||~v124R~
                       NUMSTD(Col.73-80 is line-number field), its protection(P0/P1)||~v124R~
                       COBNUM(col.1-6 is COBOL line number field), its numeric check,||~v124R~
                       Fxx[-yy](Fixed line length and its margin).    ||~v124R~
                syn   :related to SyntaxHighlight.                    ||~v124R~
                                                                      ||~v124I~
        For ex,                                                       ||~v124I~
           To set SPF(80 byte fixed length width line number on col 73-80) profile to dir1,||~v124I~
           open a file in the dir by "EN dir1\samp1" then enter "PRO path save".||~v124I~
           The "E dir1\samp2" is same as "EN dir1\samp2".             ||~v124I~
           This is applied also to Select line cmd on dir-list panel. ||~v124I~
           To set COBOL(80 byte fixed length with COBOL line number on col.1-6) profile to||~v124I~
           all file with extension name "cob", open a file with extension "cob("EC samp3.cob")||~v124I~
           then enter "PRO ext save".                                 ||~v124I~
           To see contents of profile record, use "PRO {*|path|ext}". ||~v124I~
                                                                      ||~v124R~
   = Display Find PSP/PSF cmd.                                        ||~v128R~
                                                                      ||~v128R~
        PSD                                                           ||~v128R~
                                                                      ||~v128R~
            Display PSP/PSF/STD command effective now.                ||~v128R~
            STD:normal Find cmd.                                      ||~v128R~
                                                                      ||~v128R~
   = Redo update.                                                     ||~v126R~
                                                                      ||~v126R~
        REDo                                                          ||~v126R~
                                                                      ||~v126R~
          Redo update(apply updates undone)                           ||~v126R~
                                                                      ||~v126R~
   = Refresh

        REF

          refresh dir list.

   = Re-number

        REN

          same as "NUM reset" command.
          It is treated as file REName cmd except on browse/edit screen.

   = Reset

        RESet [?] [X] [L]                                             ||~v124R~
                                                                      ||~v124R~
          (same as double Esc if no operand)
          .reset reverse character of found word or copied range
           by Cut & Paste
          .clear line command except label which is not yet processed.
          .reset reverse display on err line.

          ? : display help                                            ||~v124R~
          X : re-display all hidden lines.
          L : clear label cmd (same effect as 3 times Esc key)

   =  ROTate

        ROT [R|L|X|Y|RX|LX|RJ|LJ] [DBCSAR|DBCSAL] [NX] [TAIL] [n-m] [.lab1 .lab2]
          R:-90 degree Rotation, L:+90degree rotation,
          X:around X axis, Y:around y axis, RX:R+X, LX:L+X,
          LJ:Left Justify, RJ:Right Justify to EndOfLine of the longest.
            Ex.)  0001| ab
                  0002|cdef   is rotated to
            R: 0001|c    L: 0001| f    RX: 0001|f     LX: 0001| c
               0002|da      0002|be        0002|eb        0002|ad
               0003|eb      0003|ad        0003|da        0003|be
               0004|f       0004| c        0004|c         0004| f

            X: 0001|cdef Y: 0001|ba    RJ: 0001|  ab  LJ: 0001|ab
               0002| ab     0002|fedc      0002|cdef      0002|cdef

          DBCSAR/:SBCS also occupies 2 column to keep same columns as DBCS
          DBCSAL  of the line. DBCSAL put SBCS on the 1st column,     
                  DBCSAR put SBCS on the 2nd column.                  
          NX:apply to the line not excluded.
          TAIL:cut tail space.
          n-m:column range to be rotated.
          .lab1 .lab2:line range to be rotated.

          Use for page format change.
          Japanese allow 2 page drawing mode, WriteDown and WriteToRight.

#if defined(UNX) || defined(W32)

   =  Remote Shell

        RSH [-{e2s|s2e}] [-L username] * cmd-parm
        RSH [-{e2s|s2e}] {hostid:|*:|hostname|ipaddr}
                             [-L username] [cmd-string]
         1st fmt is used to execute the file opened for edit.         ||~v124R~

         -e2s/s2e :output(stdout/stderr) EUC<->SJIS conversion.
                   This parm is omittable when hostid is by hostid:   ||~v124R~
                   as DBCS= parameter specification in the ::xehost
                   is applied.                                        
         hostid:  :this should be defined in the ::xehost.
                   on command-result-panel,"rsh hostid:"(no cmd-string)
                   connect current panel to the hostid.
                   After this until it is reset by "rsh :"(no hostid)
                   or another "rsh hostid:" cmd,
                   no hostid specification required on this panel,
                   simply enter cmd-string only.
                   In these status,to execute local command add ":" at
                   the top of local command like as ":grep ABC *.c".
         *:       :execute at the remote host of the hostid of currently||~v124R~
                   opened file.                                       ||~v124R~
         hostname :by hostname defined on /etc/hosts under UNIX or
                   system32\drivers\etc\hosts under WindowsXP.
         ipaddr   :directly use ipaddr like as 192.168.2.5.
                   ipaddr may be defined hosts on local system.
         -L user  :login UserID.
                   If use rhosts file to allow rsh permission,
                   local hostname and local userID should be defined
                   on remote ".rhosts" file in the home dir of this user.
         cmd-string: use \" for double quotation.                     ||~v124R~
      (Note).
             Check syslog when permission denied. Under Linux,syslog is
             /var/log/messages(it is defined in /etc/syslog.conf)
             File permission of .rhosts may have to be 600 under Linux.
#endif

   =  Save file

        SAVe    [file-name] [/M{T|P|U|M|E|R|V}] [-x | -nx] [-NB] [-F{n[-m]|vfmt}]              ||~v124R~||~v125R~||~v125R~||~127BR~
                [-CPU8|-CPLC|-CPEB[:codepage]] [IE] [-S{r|i}d}] [-Force]                                   ||~v125R~||~v125R~||~v125R~||~v129R~

          file-name : wild card avail to rename.
                                                                      ||~v125R~
            (Note) When save to itself, file-name parameter is not requited.||~v125R~
                   In that case specify option prefix "-" is required for all option.||~v125R~
                                                                      ||~v125R~
          /M     :Save with the specified EndOfLine char.             ||~v125R~
                   T:Linux:0a, Windows:0d0a, single 0a is replaced by 0d0a on Windows.||~v125R~
                   P:0d0a(PC file)                                    ||~v125R~
                   U:0a  (Unix file)                                  ||~v125R~
                   M:0d  (Mac file)                                   ||~v125R~
                   E:15  (EBCDIC file)                                ||~v125R~
                   R:Fixed Length Record mode. Available only when file-name is specified.||~v125R~||~127BR~
                     Specify LRECL by /Fn[-m] option.                 ||~v125R~
                   V:Variable Length Record mode. Specify record header type by /Fvfmt.||~127BR~
          -x     :save excluded lines only                            ||~v125R~
          -nx    :save not excluded lines only                        ||~v125R~
          -NB    :skip temporarily backup at file save.                   ||~v124R~||~v125R~||~v125R~
                  To protect from file corruption by ABEND at file write,||~v124R~||~v125R~
                  original file(local file except on floppy drive only) is copied||~v124R~||~v125R~
                  on the directory just before writeback,then deleted after||~v124R~||~v125R~
                  write completed. Specify NB if you worry about disk space||~v124R~||~v125R~
                  or performance.                                       ||~v124R~||~v125R~
          -BK    :deny NB option of Edit cmd.                           ||~v124R~||~v125R~
          -Fn[-m]:record mode record size and margin.                 ||~v125R~
                  effective only when file-name is specified.         ||~v125R~
                  Use to change to record mode or change record size. ||~v125R~
          -Fvfmt :VariableLengthRecord file record header format. See Edit command.||~127BR~
                                                                      ||~v124R~
#ifdef UTF8SUPP                                                       ||~v124R~
            CPU8/CPLC:specifies output file encoding.                 ||~v125R~
             /CPEB    translation will be done, then write back.      ||~v125R~
                      You can other codepage than specified on cfg file using CPEB:codepage format.||~v125R~
                                                                      ||~v125R~
            IE       : ignore translation error, error code is replaced by "?".||~v125R~
            -S{r|i|d}: SO/SI option                                   ||~v125R~
                       r : When current screen is EBCDIC file and cmd option is CPLC/CPU8,||~v125R~
                           replace SO/SI to a space.                  ||~v125R~
                           When current screen is not EBCDIC and cmd option is CPEB,||~v125R~
                           replace both side of space, if available, to SO/SI.||~v125R~
                       i : Insert SO/SI when translation to EBCDIC.  ||~v125R~
                       d : Delete SO/SI when translation from EBCDIC. ||~v125R~
#endif                                                                ||~v124R~
            -Force   :Warning is issued when timestamp of the file was changed from time of opened||~v129R~
                        (the file was updated out of this session),   ||~v129R~
                        use this option to force save and close panel.||~v129R~
                                                                      ||~v124R~
            -Without terminating edit screen,write all line to the file.
            -Use file-name operand when it can not be saved because disk
             full etc. Once saved to another dir,then end edit screen ||~v124R~
             by CANcel. Copy back to original file after disk clean up.||~v124R~
            -It may be optionally required confirmation when existing ||~v124R~
             filename is specified.
             (CREate/REPlace need line range specification by Line cmd
             c(Copy) or m(Move),but SAVe write whole lines of the file)
            -In BROWSE mode filename operand required.
            -all lines are processed,in the other hand CRE/REP process
             specified range.

   = Set scroll size                                                 
                                                                     
        SCRoll  [p | page | h | half | c | csr | m | max | (nn)]     
            -set scroll size.
            -maximum value for nn is 9,999.
            -same effect as entering on scroll field of command input
             line(===>HALF ).
            -you can set different value for each screen(browse/edit/
             dir list/command result edit).
                                                                     
   = File select

        {SELect | ST | SB | SH | SN | SC(=SL) | SCN(=Si) | SK | SKN(=SJ)}
               [file-name | -lineno]   [options...]                   ||~v128R~

            -Effective on dir-list panel only.
             Depending on directory open command,EDIt or BROwse cmd is
             issued with concatenated filename of operand and directory||~v124R~
             name which is displayed on header line.
             if dir has only one member file-name parameter may be omitted.
            -Select command verb for the file to be opened.
             See EDIt command for also operands.
            -"-lineno"                                                ||~v128R~
             Lineno of dir-list as alternative of file-name.          ||~v128R~
             Selects 1st member if both file-name and lineno is missing.||~v128R~
                                                                      ||~v129I~
   = Line select                                                      ||~v129R~
                                                                      ||~v129I~
        SELect [all] [col1 col2] [.label1 .label2]                    ||~v129R~
                                                                      ||~v129I~
            -label1/2:line range  col1/2:column range                 ||~v129I~
             numeric specification for both label 1 and 2 are accepted as lineno.||~v129I~
             Block mode if col1/2 specified, Range mode if col1/2 is not specified.       ||~v129I~||~v129R~
             "Select All" if both label and column is not specified.                        ||~v129I~||~v129R~
               e.g.) sel; sel .a .b; sel 1 20; sel 10 20 .1 .4;       ||~v129I~
            -Select block/range to Cut/Copy/Paste on Edit panel.            ||~v129I~||~v129R~
             You can paste just after selection of block.             ||~v129R~
             For range mode, selected range itself is target of Paste Range mode.||~v129I~||~v129R~
             So you need to save the region(Alt+F9) before paste(Alt+F8/Alt+Ins).||~v129R~
            -Abridged format command "S" is not available             ||~v129I~
             "S" means "SAVe" on Browse/Edit panel.                   ||~v129I~

#ifdef WIN

   = Sleep

        SLEep interval

            -interval : sleep interval by second.

             Press Esc twice to break repeat.
             It may be used in sub command of AT command.

#endif

   = Line sort

        SORt  n[-[m]][/[b][c][d][i][r]]  [n[-[m]]...] [NX] [NB] [D[S|I|X]] [SBCS] [.lab1 .lab2]||~v125R~||~v125R~
        SORt  [/o]{N|T|S}[-]

            2nd format is to sort dirlist.
            If Bounds is set move the margin only.                    
            Collating sequence is by UCS code for UTF8 file.          ||~v125R~

            -n[-[m]] is sort key,up to 5 keys allowed.
               n    : sort key start at column n and length is 1.     ||~v124R~
               n-   : sort key start at column n and length is 32760. ||~v127R~
               n-m  : sort key is from column n to column m.
            -follow option just after each key. e.g. 10-20/r          ||~v128R~
               b    :check duplicated key line.
               c    :Case Sensitive. This is default.                 ||~v124R~
               d    :check key break line.
               i    :Case Insensitive.
               r    :reverse sequence
            -NX     :Sort displayed lines(Not eXcluded) only.
            -NB     :Ignore Bounds setting(move whole line).          
            -D[S|I|X]:Treatment of DBCS split by key position specification for UTF8 file.||~v125R~
                        S: assume as " "(space)                       ||~v125R~
                        I: include split left or right byte           ||~v125R~
                        X: exclude the split char                     ||~v125R~
            -SBCS   :No consideration to DBCS on BNDs boundary.       ||~v125R~
            -.lab1/2:Limit sort line range using a pair of label
                     on lineno column. line number may be used so as to
                     limit line range with no label on lineno column.
            -/ox[-] :x=N:nameSeq, x=T:timestampSeq, x=S:sizeSeq,
                     -:descending.                                    ||~v124R~

   = ShortPathName                                                    ||~v129R~
                                                                      ||~v129R~
        .SP { edit | refresh | add sp-name { file-spec | *\\ | ^*\\ } }||~v129R~
            edit   : show edit panel of Shortcut pathname definition file(::xe.shortpath).||~v129R~
                     Update is enabled when restart xe,               ||~v129R~
                     or enabled if "refresh" after saved.             ||~v129R~
                     Format of the line of definition file is "Shortcut-pathname fullpath-name".||~v129R~
                     Put "#" at top of line to comment out.           ||~v129R~
                     e.g.) srctest1 d:\eclipse-workspace\testproject1\src\com\debug\test||~v129R~
                           ecws  "c:\Program Files\Android\Android Studio\gradle"||~v129R~
            refresh: reload  definition file of ::xe.shortpath.       ||~v129R~
                     Use after "sp edit", modify then saved or directly updated ::xe.shortpath by||~v129R~
                     another process.                                 ||~v129R~
            add    : add a line to definition file by sp-name:Shortcut pathname and file-spec:shortcut target fullpath name.||~v129R~
                     This definition is enabled instantly.            ||~v129R~
                     Following specifications are effective at proper situation.||~v129R~
                       *\ :the file currently opened on this panel.   ||~v129R~
                       ^*\:the file currently opened on another split panel.||~v129R~
                     e.g.) sp add srctest1 d:\eclipse-workspace\testproject1\src\com\debug\test||~v129R~
                           sp add ecws  "c:\Program Files\Android\Android Studio\gradle"||~v129R~
        .To utilize Shortcut pathname, add prefix "sp:" to file-spec. ||~v129R~
         (If xxx of sp:xxx is not defined, "sp:xxx" is used as is.)   ||~v129R~
           e.g.) e sp:srctest1\Main.java                              ||~v129R~
                 e sp:ecws                                            ||~v129R~
                 e "sp:ecws\space embedded name"                      ||~v129R~
                 xcopy sp:ecdir\x1 sp.ecdir\x2                        ||~v129R~
                 cd sp:ecdir                                          ||~v129R~
                                                                      ||~v29WR~
#ifdef Axe (Android版)                                                ||~v29WR~
                                                                      ||~v29WR~
           If you specify "//" for sp-name, you can access the folders on Shared storage.||~v29WR~
           "sp add //" will display a android dialog,                 ||~v29WR~
           When you press "Use this folder", the specified folder is registered in the definition file (::xe.shortpath).||~v29WR~
           After that, you can access files in that folder like as "e //folder name".||~v29WR~
           In that dialog you can also create a new folder,           ||~v29WR~
           for example, if you create a folder named "Axe" and press "Use this folder",||~v29WR~
           "e //Axe" displays the directory list.                     ||~v29WR~
           Android 11 or later.                                       ||~v29WR~
             On Android 11 or later, you can set permission of access "All files" or "Media only" in Shared storage.||~v29WR~
             Please answer which permission setting you want in the dialog that appears immediately after installing this App.||~v29WR~
             Even if you did not select "All files" here, it can be changed from the menu, "Settings", "Android related".||~v29WR~
             If you select "all files",                               ||~v29WR~
               As the path name of the Shared storage is displayed in the "Android related" dialog||~v29WR~
               you can also use the pathname directly.                ||~v29WR~
               If the /sdcard pathname whown in the dialog is the same as the Shared storage pathname||~v29WR~
               /sdcard is also available as pathname.                 ||~v29WR~
               You can also use short names for parameters of command line tools such as grep, xfg on the =6 screen.||~v29WR~
               e.g) "gre findWord //Axe/*.txt".                       ||~v29WR~
                                                                      ||~v29WR~
#endif Axe (Android版)                                                ||~v29WR~
                                                                      ||~v129R~
   = SPAwn

        SPAwn cmd-name [args]

            -Execute cmd asynchronously.                               ||~v124R~
            -Use to start windows GUI pgm such as explorer etc.

   = Split line.

        SPLit {CONT | OVER | ALL | EXP | TAIL} [SBCS] [TOL]           
               [STRDELM|STRSPACE] [OOM] [SPACE1]                      
               [width] [CRLF] ["str"] [.lab1 .lab2]                   ||~v124R~

            -CONT:process long lines split by the width of /M option  
                  of EDIt cmd.
            -OVER:additional to CONT, process long lines of
                  line-length>width-of-parm.
                  If "str"(delimiter) option specified,the long line is
                  split by the delimiter at the nearest to the width. 
            -ALL :process all lines. Default.
               Split line by delimiter char in the "str" and width.
               Differently with CONT,short line is joined up to the with||~v124R~
               checking delimiter.                                    
               If width parm is missing,width of /M parm of Edit
               /Browse cmd is used.
               If "str" parm is missing,line is split by just         
               the width. In the case DBCS is split by width,         ||~v124R~
               both byte is shifted to the next line unless SBCS option
               specified.
               If both of width parm and /M parm missing,
               line is split simply by all delm char or delm string.
            -EXP :"str" char is padded to end of the line up to the width.
            -TAIL:Chars in the "str"(default is " ") is removed from end of the line.||~127BR~
                  With width parm, removed up to the width even if no char to be deleted found.||~127BR~
                  If multiple char is specified on "str" option,      ||~v125R~
                  all char in the string is deleted from End Of Line. ||~v125R~

            -SBCS:No consideration to DBCS on width boundary.
                  This is always true for binary opened file.         
            -TOL :split line with delimiter at top of line.           
            -STRDELM:str parm is not delimiter characters but a string.
            -STRSPACE:Split only once even when space is continued.   
                      It is assumed "str" contains space when this    
                      option specified.                               
            -SPACE1  :Shrink continued spaces to a space.(with ALL/OCER option)
            -OOM     :width TAIL option,Ignore Bounds/Margin setting. 
            -width:specify new width except for the type CONT.
                   Tab is replaced to spaces of currently expanded column width||~v124I~
                   when the line is moved to the previous line.       ||~v124I~
                   To change display width of binary file simply enter
                   like as "SPL 100". Binary file display width can be
                   changed by this cmd even when browse mode.
            -CRLF    :Split lines by width parameter and CRLF.        ||~v124I~
                      Split type is assumed as ALL.                   ||~v124I~
                      CRLF is not inserted after the split lines.     ||~v124I~
                      Use to change display width of text file.       ||~v124I~
            -str :delimiters. enclose by quotation.                   ||~v124R~
                  For EXT option,padding char if "str" is 1 byte ASCII,||~v125R~
                  EndOfStatement and padding char if 2byte "str",     
                  EndOfStatement+padding+EndOfLine if 3 byte "str".   
                  Hex notation is available like as \x0d.              ||~v126R~
                  Multiple character like as \x8140 is allowed but    ||~v126R~
                  no DBCS consideration.                              ||~v126R~
                  In this case this is treated as 2 SBCS character is specified.||~v126R~
            -.lab1/2:line range correspond to label on lineno column.

        (ex.01) ALL(Default) option.                                  ||~v128R~

            ===>spl 20
            col    |....+....1....+....2....+....3....+....4
            *******|********** TOP OF FILE *****************
            0001000|aaaaaaaaaaaaaaaaaa AAAAAAAAAAAAAAAAAAAAA
            0002000|bbbbbbbbbbbbbbbbbbb BBBBBBBBBBBBBBBBBBBA
            0003000|cccccccccccccccccccc CCCCCCCCCCCCCCCCCCA
            0004000|dddddddddddddddddddddDDDDDDDDDDDDDDDDDDA
            0005000|eeeeeeeeeeeeeeeeeeeeee EEEEEEEEEEEEEEEEA
            0006000|   FF

         ==>simply cram to the width if no "str" specified.
            No space is inserted between each lines,it is different from TF command.||~v124R~

            col    |....+....1....+....2
            *******|********** TOP OF FI
            0001000*aaaaaaaaaaaaaaaaaa A
            0001100*AAAAAAAAAAAAAAAAAAAA
            0002000*bbbbbbbbbbbbbbbbbbb
            0002100*BBBBBBBBBBBBBBBBBBBA
            0003000*cccccccccccccccccccc
            0003100* CCCCCCCCCCCCCCCCCCA
            0004000*dddddddddddddddddddd
            0004100*dDDDDDDDDDDDDDDDDDDA
            0005000*eeeeeeeeeeeeeeeeeeee
            0005100*ee EEEEEEEEEEEEEEEEA
            0006000|   FF

        (ex.02) OVER option.

            ===>spl over 50
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10
            *******|********** TOP OF FILE *****************************************************************************
            0001000*time           event-type       action-before    ,time           event-type       action-after
            0002000*10:11:12.555   aaaa01           bbbbbbbbbb       ,10:11:12.555   AAAA02           BBBBBBBBBB
            0003000*10:11:12.555   aaaa03           bbbbbbbbbb       ,10:11:12.555   AAAA04           BBBBBBBBBB
            0004000*10:11:12.555   aaaa05           CCCCCCCCCCCCCCCCC,
            0005000*10:11:12.555   aaaa07           bbbbbbbbbb       ,10:11:12.555   AAAA08           BBBBBBBBBB

         ==>the line longer than the width is split.                  

            col    |....+....1....+....2....+....3....+....4....+....5
            *******|********** TOP OF FILE ***************************
            0001000*time           event-type       action-before    ,
            0001100*time           event-type       action-after
            0002000*10:11:12.555   aaaa01           bbbbbbbbbb       ,
            0002100*10:11:12.555   AAAA02           BBBBBBBBBB
            0003000*10:11:12.555   aaaa03           bbbbbbbbbb       ,
            0003100*10:11:12.555   AAAA04           BBBBBBBBBB
            0004000*10:11:12.555   aaaa05           CCCCCCCCCCCCCCCCC,
            0005000*10:11:12.555   aaaa07           bbbbbbbbbb       ,
            0006000*10:11:12.555   AAAA08           BBBBBBBBBB

        (ex.03) CONT option.                                          

            ===>e x2sv m50  (width parameter is also specified)       

            ===>spl cont
            col    |....+....1....+....2....+....3....+....4....+....5....+....6
            *******|********** TOP OF FILE ****************************
            0001000-time           event-type       action-before    ,
            0001001.time           event-type       action-after
            0002000-10:11:12.555   aaaa01           bbbbbbbbbb       ,
            0002001.10:11:12.555   AAAA02           BBBBBBBBBB
            0003000-10:11:12.555   aaaa03           bbbbbbbbbb       ,
            0003001.10:11:12.555   AAAA04           BBBBBBBBBB
            0004000|10:11:12.555   aaaa05           CCCCCCCCCCCCCCCCC,
            0005000-10:11:12.555   aaaa07           bbbbbbbbbb       ,
            0005001.10:11:12.555   AAAA08           BBBBBBBBBB

         ==>split line id on the column between lineno field and text field was changed.

            col    |....+....1....+....2....+....3....+....4....+....5....+....6
            *******|********** TOP OF FILE ***************************
            0001000*time           event-type       action-before    ,
            0001001*time           event-type       action-after
            0002000*10:11:12.555   aaaa01           bbbbbbbbbb       ,
            0002001*10:11:12.555   AAAA02           BBBBBBBBBB
            0003000*10:11:12.555   aaaa03           bbbbbbbbbb       ,
            0003001*10:11:12.555   AAAA04           BBBBBBBBBB
            0004000|10:11:12.555   aaaa05           CCCCCCCCCCCCCCCCC,
            0005000*10:11:12.555   aaaa07           bbbbbbbbbb       ,
            0005001*10:11:12.555   AAAA08           BBBBBBBBBB

        (ex.04) TAIL option.                                          

            ===>spl 49 tail
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....
            *******|********** TOP OF FILE ***********************************************************************
            0001000|time           event-type       action-before    ,time           event-type       action-after
            0002000|10:11:12.555   aaaa01           bbbbbbbbbb       ,10:11:12.555   AAAA02           BBBBBBBBBB
            0003000|10:11:12.555   aaaa03           bbbbbbbbbb       ,10:11:12.555   AAAA04           BBBBBBBBBB
            0004000|10:11:12.555   aaaa05           CCCCCCCCCCCCCCCCC,
            0005000|10:11:12.555   aaaa07           bbbbbbbbbb       ,10:11:12.555   AAAA08           BBBBBBBBBB

         ==>lines are cut by the width.                               

            col    |....+....1....+....2....+....3....+....4....+....
            *******|********** TOP OF FILE **************************
            0001000*time           event-type       action-before
            0002000*10:11:12.555   aaaa01           bbbbbbbbbb
            0003000*10:11:12.555   aaaa03           bbbbbbbbbb
            0004000*10:11:12.555   aaaa05           CCCCCCCCCCCCCCCCC
            0005000*10:11:12.555   aaaa07           bbbbbbbbbb

        (ex.05) TAIL option for margined file.                        

            ===>spl 62 tail
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|*//*CID:**+A003R~:#63 option=(m72,n,p0,tabclear) update#=   14;         00010019
            0001010|.*       C R1,CLMSTART              CSECT START ADDR          **~A003R~ 00011020
            0001020|         LR R14,R1                  CHK ADDR                  **+A003R~ 00012021
            0001030|         SLL R14,1                  CHK ADDR                            00013017
            0001040|         SRL R14,1                  CHK ADDR                            00014017
            0001050|         C R14,CLMSTART             CSECT START ADDR                    00015017
            0001060|         BNH UAB&SYSNDX.E           LOWER ADDR(OUT OF RANGE)            00016017
            0001070|*        C R1,CLMEND                CSECT END ADDR + 1                  00017017
            0001080|         C R14,CLMEND               CSECT END ADDR + 1                  00018017

         ==>data on the margin remains.                               

            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000**//*CID:**+A003R~:#63 option=(m72,n,p0,tabclear) update#=   14          00010019
            0001010*.*       C R1,CLMSTART              CSECT START ADDR                    00011020
            0001020*         LR R14,R1                  CHK ADDR                            00012021
            0001030|         SLL R14,1                  CHK ADDR                            00013017
            0001040|         SRL R14,1                  CHK ADDR                            00014017
            0001050|         C R14,CLMSTART             CSECT START ADDR                    00015017
            0001060|         BNH UAB&SYSNDX.E           LOWER ADDR(OUT OF RANGE)            00016017
            0001070|*        C R1,CLMEND                CSECT END ADDR + 1                  00017017
            0001080|         C R14,CLMEND               CSECT END ADDR + 1                  00018017

        (ex.06) TAIL option for margined file, effect of OOM option.  

            ===>spl tail 80 oom
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+...10....+...11
            *******|********** TOP OF FILE ***************************************************************************************
            0001000|*//*CID:**+A003R~:#63 option=(m72,n,p0,tabclear) update#=   15**~A003R~ 00010022
            0002000|.*       C R1,CLMSTART              CSECT START ADDR          **~A003R~ 00011022
            0003000|         LR R14,R1                  CHK ADDR                  **+A003R~ 00012023 SLL R14,1  CHK ADDR  00013017
            0004000|         SRL R14,1                  CHK ADDR                            00014017
            0005000|         C R14,CLMSTART             CSECT START ADDR                    00015017
            0006000|         BNH UAB&SYSNDX.E           LOWER ADDR(OUT OF RANGE)            00016017
            0007000|*        C R1,CLMEND                CSECT END ADDR + 1                  00017017
            0008000|         C R14,CLMEND               CSECT END ADDR + 1                  00018017

         ==>margin data was lost by OOM option.                       

            *******|********** TOP OF FILE *********************************************************
            0001000|*//*CID:**+A003R~:#63 option=(m72,n,p0,tabclear) update#=   15**~A003R~ 00010022
            0002000|.*       C R1,CLMSTART              CSECT START ADDR          **~A003R~ 00011022
            0003000*         LR R14,R1                  CHK ADDR                  **+A003R~ 00012023
            0004000|         SRL R14,1                  CHK ADDR                            00014017
            0005000|         C R14,CLMSTART             CSECT START ADDR                    00015017
            0006000|         BNH UAB&SYSNDX.E           LOWER ADDR(OUT OF RANGE)            00016017
            0007000|*        C R1,CLMEND                CSECT END ADDR + 1                  00017017
            0008000|         C R14,CLMEND               CSECT END ADDR + 1                  00018017

        (ex.07) EXP option.                                           

            ===>spl exp 60 ";"
            col    |....+....1....+....2....+....3....+....4....+....
            *******|********** TOP OF FILE **************************
            0001000|time           event-type       action-before
            0002000|10:11:12.555   aaaa01           bbbbbbbbbb
            0003000|10:11:12.555   aaaa03           bbbbbbbbbb
            0004000|10:11:12.555   aaaa05           CCCCCCCCCCCCCCCCC
            0005000|10:11:12.555   aaaa07           bbbbbbbbbb

         ==>expand lines up to the width. padding char was used to indicate EndOfLine by "str" parameter(default is " ").

            col    |....+....1....+....2....+....3....+....4....+....5....+....6
            *******|********** TOP OF FILE *************************************
            0001000*time           event-type       action-before    ;;;;;;;;;;;
            0002000*10:11:12.555   aaaa01           bbbbbbbbbb       ;;;;;;;;;;;
            0003000*10:11:12.555   aaaa03           bbbbbbbbbb       ;;;;;;;;;;;
            0004000*10:11:12.555   aaaa05           CCCCCCCCCCCCCCCCC;;;;;;;;;;;
            0005000*10:11:12.555   aaaa07           bbbbbbbbbb       ;;;;;;;;;;;

         ==>padding char by 2 byte "str" parameter.( (after cut EndOfLine spaces by "spl tail") spl exp 60 ";+")||~v125R~

            col    |....+....1....+....2....+....3....+....4....+....5....+....6
            *******|********** TOP OF FILE *************************************
            0001000*time           event-type       action-before;++++++++++++++
            0002000*10:11:12.555   aaaa01           bbbbbbbbbb;+++++++++++++++++
            0003000*10:11:12.555   aaaa03           bbbbbbbbbb;+++++++++++++++++
            0004000*10:11:12.555   aaaa05           CCCCCCCCCCCCCCCCC;++++++++++
            0005000*10:11:12.555   aaaa07           bbbbbbbbbb;+++++++++++++++++

         ==>padding char by 3 byte "str" parameter.(spl exp 60 ";-*") ||~v125R~

            col    |....+....1....+....2....+....3....+....4....+....5....+....6
            *******|********** TOP OF FILE *************************************
            0001000*time           event-type       action-before;-------------*
            0002000*10:11:12.555   aaaa01           bbbbbbbbbb;----------------*
            0003000*10:11:12.555   aaaa03           bbbbbbbbbb;----------------*
            0004000*10:11:12.555   aaaa05           CCCCCCCCCCCCCCCCC;---------*
            0005000*10:11:12.555   aaaa07           bbbbbbbbbb;----------------*

        (ex.08) effect of SPACE1 option.                              

            ===>spl space1
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....
            *******|********** TOP OF FILE *************************************************************
            0001000| kay1=11111111;       key2===222222222 :        key3=:333333333 key4=;          key5
            0002000| key6;=cccccc        := key7 :   key8

         ==>shrink continued space chars to one space char.           

            col    |....+....1....+....2....+....3....+....4....+....5....+....6..
            *******|********** TOP OF FILE ***************************************
            0001000* kay1=11111111; key2===222222222 : key3=:333333333 key4=; key5
            0002000* key6;=cccccc := key7 : key8

        (ex.09) "str" and related options.                            

            ===>spl "=;"
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+
            *******|********** TOP OF FILE ******************************************
            0001000| kay1=11111111; key2===222222222 : key3=:333333333 key4=;   key5
            0002000| key6;=cccccc := key7 :   key8

         ==>split line just after the specified delimiter chars.      

            col    |....+....1....+....2....+
            *******|********** TOP OF FILE **
            0001000* kay1=
            0001100*11111111;
            0001200* key2=
            0001300*=
            0001400*=
            0001500*222222222 : key3=
            0001600*:333333333 key4=
            0001700*;
            0001800*   key5
            0002000* key6;
            0003000*=
            0004000*cccccc :=
            0005000* key7 :   key8

         ==>If width is also specified,split by delimiter just before the right boundary of the width.

            ===>spl "=;" 40
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+
            *******|********** TOP OF FILE ******************************************
            0001000| kay1=11111111; key2===222222222 : key3=:333333333 key4=;   key5
            0002000| key6;=cccccc := key7 :   key8

            ===>
            col    |....+....1....+....2....+....3....+....4
            *******|********** TOP OF FILE *****************
            0001000* kay1=11111111; key2===222222222 : key3=
            0001100*:333333333 key4=;   key5 key6;=cccccc :=
            0002000* key7 :   key8

         ==>effect of STRDELM option(spl "=;" strdelm)                

            col    |....+....1....+....2....+....3....+....4....+....5....+..
            *******|********** TOP OF FILE **********************************
            0001000* kay1=11111111; key2===222222222 : key3=:333333333 key4=;
            0001100*   key5
            0002000| key6;=cccccc := key7 :   key8


         ==>effect of TOL option(spl "=;" strdelm tol)                

            col    |....+....1....+....2....+....3....+....4....+....5....+
            *******|********** TOP OF FILE ********************************
            0001000* kay1=11111111; key2===222222222 : key3=:333333333 key4
            0001100*=;   key5
            0002000| key6;=cccccc := key7 :   key8

         ==>effect of STRSPACE option(spl strspace)                   

            ===>spl  all " "
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....
            *******|********** TOP OF FILE *****************************************
            0001000| kay1=11111111; key2===222222222 : key3=:333333333 key4=;   key5
            0002000| key6;=cccccc := key7 :   key8


            ==>all of space chars split the line.                     

            col    |....+....1....+..
            *******|********** TOP OF
            0001000*
            0001100*kay1=11111111;
            0001200*key2===222222222
            0001300*:
            0001400*key3=:333333333
            0001500*key4=;
            0001600*
            0001700*
            0001800*key5
            0002000*
            0003000*key6;=cccccc
            0004000*:=
            0005000*key7
            0006000*:
            0007000*
            0008000*
            0009000*key8


            ===>spl  strspace
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....
            *******|********** TOP OF FILE *****************************************
            0001000| kay1=11111111; key2===222222222 : key3=:333333333 key4=;   key5
            0002000| key6;=cccccc := key7 :   key8

            ==>continued space chars split only once.                 

            col    |....+....1....+...
            *******|********** TOP OF
            0001000*
            0001100*kay1=11111111;
            0001200*key2===222222222
            0001300*:
            0001400*key3=:333333333
            0001500*key4=;
            0001600*key5
            0002000*
            0003000*key6;=cccccc
            0004000*:=
            0005000*key7
            0006000*:
            0007000*key8

   = Submit file.

        SUBmit  [* | ** | file-name [*] ] [ [**] parms,...]
                        [<input-redirect-file-name] [>output-redirect-file-name]

            -Specify filename to submit file other than currently editing.
             If PATH environment variable is not properly setup,it should be||~v124R~
             contain path information. *\ , ^*\ , :: is available in these case.

            -The 1st "*" parameter means the file currently editing is executed,||~v124R~
             use when parms is also required.
             If no additional parm required enter "SUB" simply.
             For TSO file,"SUB" execute the JCL file on the remote system.
             "**" means execution of original file regardless of update
             status of the current file.
             e.g. "SUB ** p1".                                        ||~v128R~

            -The 2nd "*" parameter means the file currently editing is passed to||~v124R~
             the 1st parameter file.("*" is replaced by the file name).
             To pass the character "*",enclose it by quotation.
             When the opened file is updated,the contents are saved to a temporary file,
             then the temporary file name is passed to the 1st operand file.
             This is convenient in the case of repeated submit with a little update
             and finally cancel update.                               
             e.g. "SUB subtool *".                                    ||~v128R~
             To pass the original filename use "**" as parameter.
             e.g. "SUB subtool * **"                                  ||~v128R~
             To pass "**" itself enclose it by quotation.

            -If the file is (member of) remote TSO dataset,parameters except filename||~v124R~
             is ignored.                                              ||~v124R~
             Enter "SUB" on the panel the file opened.                ||~v124R~
             Or on any panel, enter "SUB filename".                   ||~v124R~
             Filename format is dest:'DSN(MEMB)'.                     ||~v124R~
             If the opened file is updated,the contents are send to TSO dataset,||~v124R~
             'XE3270.TEMP.SUBMIT' as default, the TSO SUBMIT cmd is issued.||~v124R~
             Allocate this Sequential Dataset beforehand.             ||~v124R~
             Or you can specify other Dataset(Member) by SUBMITWORK= statement on ::xe3270cfg||~v124R~
                                                                      ||~v124R~
            -To protect HUNG by stdin input wait issued by submitted file,
             there are some case "<NUL" ("</dev/null under UNX) is appended as default
             when input redirect is not specified.                    ||~v124R~
             Those cases are output redirect is specified or SUB on =6 screen etc.

   = Swap active screen.

        SWAp    (No operand)

            -Swap active screen,and swap screen size.
                                                                      ||~v124R~
#if defined(W32)||defined(LNX)                                        ||~v124R~
                                                                      ||~v124R~
   = Syntax Highlight.                                                ||~v124R~

        SYN [ ? | ALL | RESET | ENTER | ON [lang-type] | OFF]         ||~v124R~
             ?                 : Display help and brief current status.||~v124R~
             ALL               : Re-evaluation is done regardless update after previous evaluation.||~v124R~
             RESET             : Use to re-read config file.          ||~v126R~
             ENTER             : Set ENTER key as trigger of re-evaluation for current file on the panel.||~v124R~
             ON [lang-type]    : Do re-evaluation for the file.       ||~v124R~
                                 lang-type is used to change lang type of the file.||~v124R~
                                 to reset lang-type use "".           ||~v124R~
             OFF               : Stop syntax highlight for the file.  ||~v124R~
                                                                      ||~v124R~
        "SYN ON" is done if operand missing or function key Ctrl+s is used as default assignment.||~v124R~
                                                                      ||~v124R~
        Syntax Highlight function draw text width color and font style according to its||~v124R~
        language syntax such as keyword, comment etc.                 ||~v124R~
        See (0)SyntaxHighlight about setup etc.                       ||~v124R~
                                                                      ||~v124R~
#endif //defined(W32)||defined(LNX)                                   ||~v124R~
                                                                      ||~v124R~
   = Tab display

        TAB {on [altch] | off | clear | =default | nn [asdefault] }   ||~v128R~
            on      :display tab char and DBCS(Japanese) space.       ||~v124R~
                     Char used to display tab and its following space
                     is customizable by .INI file parameter.          
                     Default is Tab       :Up-arrow
                                Tab-skip  :Right arrow
                                DBCS space:shadow box
            off     :tab char is not displayed.
                     Special char for un-displayable char
                     is always displayed regardless this option.      ||~v124R~
            clear   :remove tab with space remained.
            =default:set this file's tabctr to the default setting.   ||~v124R~
            nn      :Tab column interval,default is 4.
                     With "asdefault", set default tabctr.            ||~v124R~
                     Without "asdefault", set the tabctr of current opened||~v124R~
                     and profile record is updated.                   ||~v124R~
                     Tab key cause cursor jump not to next tab column
                     but jump to next field when default tab column is 0.||~v124R~
                     Maximum 12.
                     1 is forced to the file opened by record mode.   ||~v125R~
            altch   :Change char to display TAB/DBCS-space char.      ||~v128R~
                     On Windows command prompt, unicode character display-column-width depends its font settiong.||~v128R~
                     If you use ASCII char as alt-displaying-char of TAB and TAB padding space char.||~v128R~
                     If you yet use preferred unicode for TAB and TAB padding, use this altch option.||~v128R~
                     On wxe,gxe,Linux xe, it may not be occur.        ||~v128R~
                     Default is U-21be(display TAB:0x09), U-21c0(Display spaces skipped by TAB)||~v128R~
                     and U-2591(DBCS-space),                          ||~v128R~
                     This option overrides following INI file options.||~v128R~
                       (J)Tab_disp_char  =FFFF #(FFFF)# Tab display char for Japanese mode. (FFFF means U-21be & U-21c0)||~v128R~
                       (E)Tab_disp_char  =FFFF #(FFFF)# Tab display char for English  mode. (FFFF means U-21be & U-21c0)||~v128R~
                       DBCSspace_dispchar=FF #(FF)# DBCS space display char. (FF means U-2591)||~v128R~
                     "tab on 000" is used to back to default(u21be-21c0,2591) or INI settings.||~v128R~
                     e.g.  tab on "^-" ,   tab on u25b8-25b9 ,  tab on "^-!" ,  tab on u25b8-25b9-21be.||~v128R~||~v128R~
                     When Non-ASCII is specified as altch, "xpr -tabon" cmd use the altch||~v128I~
                     for printing CPU8 file and use 0x18 and 0x1a for non-CPU8 file.||~v128I~

   = Table Calculation.

        TC  expression [options] [NX] [Zero] [.lab1 .lab2] [.lab3 .lab4]

        (Not supported by DOS version)

            expression:[[opd3=]opd1]opc[opd2][{/key[/grade]|//count}]

              .5 format type
                -unary operation except summary.
                    TC [opd1]{++|--|=/conv-type}
                -unary operation summary.
                    TC [opd1]+[{/break-key[/grade]|//count}] [option] ||~v124R~
                    especially to count lines,use "1" to opd1.        ||~v124R~
                    e.g. tc 1+/10-16!.                                ||~v128R~
                -binary operation.
                    TC [opd1]{+= | -= | *= | /= | %= | == | ~= | =}[opd2]
                -binary operation with target.
                    TC opd3=opd1{+ | - | * | / | % | ~ | ==}opd2
                -table formatting.                                    ||~v124R~
                    TC FMT [[fieldno[-fieldno]]{R|L|P}[C][N][O] ...]
                            [D[delimiter]] [C][N][O] [S[R]outdelm] [H] [Q[d][s]]

              opd1/2/3:[type]{column1-column2|constant-value} or [type]:fieldno
                  type:data type.
                       d:decimal, x:hexadecimal, o:octal, t:time      ||+130ER~
                         Time should be by the fmt of hhmmss,hh:mm:ss or hh.mm.ss.||+130ER~
                         If type missing,it is assumed as time when fmt is||+130ER~
                         hh:mm:ss or hh.mm.ss,else it is assumed as decimal.||+130ER~
                       z:comma separated decimal string               ||+130ER~
                       L:Timestamp in seconds                         ||+130ER~
                       M:Timestamp in milliseconds                    ||+130ER~
                         L/M are used when converting to clock time.  ||+130ER~
                         Specifying 64-bit mode using ... results will fail.||+130ER~
                         e.g.)                                        ||+130ER~
							tc 40-70=m10-25                           ||+130ER~
                                40-70=l10-25:total 3, err=1, dataovf=0.---------------------------------------||+130ER~
                                ===>                                  ||+130ER~
                                col |....+....1....+....2....+....3....+....4....+....5....+....6....+....7...||+130ER~
                                ****|*L*t**l*** TOP OF FILE *******Lig:OFF ***********************************||+130ER~
                                0001*           x00..19070051              _||+130ER~
                                0002*           19070051                                1983/04/23-04:53:53_||+130ER~
                                0003*           19f7bf51717                         2042/09/18-00:01:03.037_||+130ER~
                                ****|*L*t**l*** END OF FILE *******Lig:OFF ***********************************||+130ER~
                                                                      ||+130ER~
							tc 40-70=m10-25                           ||+130ER~
                                40-70=m10-25:total 3, err=1, dataovf=0.---------------------------------------||+130ER~
                                ===>                                  ||+130ER~
                                col |....+....1....+....2....+....3....+....4....+....5....+....6....+....7...||+130ER~
                                ****|*L*t**l*** TOP OF FILE *******Lig:OFF ***********************************||+130ER~
                                0001*           x00..19070051              _||+130ER~
                                0002*           19070051                            1970/01/06-05:38:09.233_||+130ER~
                                0003*           19f7bf51717                         2026/07/20-04:58:07.639_||+130ER~
                                ****|*L*t**l*** END OF FILE *******Lig:OFF ***********************************||+130ER~
                                                                      ||+130ER~
                  column1/2:Start/End column of table data on file.
                            Decimal fraction data is avail for type=t/d.
                            constant-value is avail for opd2 only.
                            timestamp constant is hh:mm:ss.xxx fmt and
                            string constant used for copy(=) or compare(==)
                            should be enclosed by double quotation.
                        e.g. tc 1-10*=60 tc 1-10+=01:10:29  tc 1-2=10-14=="abcde"||~v30CR~
                                                                      ||~v30CI~
                        Hex double-word data can be concatenated with ".." or 9->16 digits pattern,||~v30CI~
                        but output is displayed as 9->16 digits.      ||~v30CI~
                        e.g) tc 40-50=x4-15+x18-25                    ||~v30CI~
                             123456789     11111110              x0134567899||~v30CI~
                             1..23456789   11111110              x0134567899||~v30CI~
                                                                      ||~v30CI~
                  fieldno  :1 digit field seqno.Use a-z for over 10.
                            Before use fieldno,fieldno guide line have
                            to be inserted by "TC FMT H" cmd.
              opc     :operation code applied to operands.
                      + :Summary.Average,min and max value is optionally||~v124R~
                         displayed.
                         Sub-total line is set by placing '=' on the
                         top byte of data field, or inserted by
                         specifying break-key or count option.        ||~v124R~
                         Sub-total line position is controlled by option.
                      = :-When operand3 is missing.
                            This command set operand1 table. It is used||~v124R~
                            after table is set by Cut&Paste key.
                            (e.g. TC =                                ||~v128R~
                         -When operand3 is specified.
                            It specify left of = is 3rd operand
                            and result is set to.
                            (e.g. TC t10-19=t30-39+50-55              ||~v128R~
                            If no operand at the right of "=" it set the opd1.||~v124I~
                            (e.g. TC 10-20=                            ||~v124I~||~v128R~
                         -Copy operation.
                            opd3=opd2 [INS] [RJust]
                            Without datatype for opd2,opd2 string is copied
                            to opd3 trimming both side space char.
                            With datatype for opd2,numeric assignment done
                            and data type conversion may occur.
                            String constant for opd2 is specified by
                            double quotation.
                            e.g.  tc 1-8="total=" ins;  tc 20-30="";  ||~v128R~
                                  tc z1-8=x10-18;                     ||~v128R~
                      ++:Set summary up to the each lines.
                          e.g. TC x10-19++                            ||~v128R~
                      --:Set each difference value from the previous line.
                          e.g. TC o10-19--                            ||~v128R~
                      +=,-=,*=,/=,%=,~=
                        :Operand 1 is ovrridden by calculated result. 
                          e.g. TC 10-19*=20-21                        ||~v128R~
                      ~ :count "ACTIVE" lines                         ||~v125R~
                         use in the case all log record has start and end time
                         and you want to count how many record is exist
                         at each start time.
                         coutEQ option is to count 1up for the line
                         starttime==endtime.
                         If opd1 datatype is "T" opd2 may interval second.
                         If no data type is specified,opd1 compared with
                         opd2 as string case-sensitively.
                         e.g. TC 10-13=30-41~50-51                     ||~v125R~||~v128R~

                      ==:Compare.
                         If no datatype for both operand,
                         case sensitive string compare is done.
                         When opd1==opd2 fmt, unmatch line is tagged
                         and can be searched by "f *L".
                         When opd3=opd1==opd2 fmt,result(-1,0,1) is set
                         to opd3.
                         To set 1 for true and 0 for false,use TF option.
                         To set 0 for true and 1 for false,use FT option.
                      /conv type:O:octal, X:hex, T:Clock, D:decimal,
                                 Z:FMT(comma separated)decimal,       
                                 U:unsigned D, UZ:unsigned Z,         ||+130ER~
                                 L: Timestamp in seconds --> Clock    ||+130ER~
                      FMT:table column alignment by space delimiter.
                          R :Right justified. Default unless attended to fieldNo.
                          L :left  justified.
                          P :align by decimal point.
                          R/L/P not attended to fieldNo is effective as default
                          until O specification.
                          As a result,fields with no R/L/P specification
                          are left space between them.
                          e.g.                                        ||~v128R~
                               tc fmt                ==> r r r r r
                               tc fmt  r l r o       ==> r l r - -
                               tc fmt  r 3l          ==> r r l r r
                               tc fmt  r 3l l        ==> r r l l l
                               tc fmt  3r            ==> - - r - -
                          N :Numeric FieldSearch is to align at numeric
                             field. the numeric field and all fields before
                             the numeric field is treated as a field.
                          A :reset effect of "N" flag
                          C :compress intermediate spaces of all following
                             fields to a space. NC means combine until
                             the numeric field.
                          O :do not align from this field.
                          H :fieldno guide line is inserted.
                          D[delimiter]:input field separator. default is " ".
                                       "D" means D",".
                                       Multiple characters are avail like as D" ,".||~v129R~
                                       And both " " and "," are delemeter.||~v129R~
                                       Escape sequence is available like as D"\t\x0a\xff".||~v129R~
                                       Unicode pattern is, e.g. D\u00c1.||~v129I~
                          S[R][outdelm]:field separator to be set after formatted.
                                        R      :delete input delimiter.
                                        outdelm:string to be inserted.
                                                default is " ".
                                                Escape sequence is available except \t(0x09).||~v129R~
                                                Multiple characters mean string to be inserted.||~v129R~
                                                DBCS is allowed.      ||~v129R~
                break-key:[type]column1-column2[>|!|<]                ||~v124R~
                          For opcode=+(Summary),specify break point to
                          set sub-total.Table should be sorted by this
                          field when ">"(Ascending:default) or "<"(descending)||~v124R~
                          "!" mean break when not same.
                          Column is key field column.
                          Type is of key field type for grade.
                          Without grade option,sub-total is displayed
                          when key value changed.
                      e.g. TC 10-19+/1-4      TC10-19/1-4!            ||~v125R~||~v128R~
                grade    :For each grade of key value(key field should
                          be numeric type data),sub-total is displayed.
                      e.g. TC 10-19+/1-4/1000                         ||~v125R~||~v128R~
                              : subtotal for each grade, col.1-4 is reached to 1000, 2000, 3000 and so on.||~v125R~
                count    :Sub-total is displayed each lines of the count.
                      e.g. TC 10-19+//100                             ||~v128R~
                              : subtotal for each 100 lines.          ||~v125R~
                filedno  :Rigit or Left justification with filedno.
                          Fieldno start from 1.Default is L.
                          When Fieldno missing,apply to following all.
                      e.g. TC FMT 3L ; TC FMT R L;  TC FMT 1-4L 5-6L; ||~v128R~
            options   :
                ign : Ignore existing sub-total field(prefixed by "=").
                aft|bef|top|end|las :Position of sub-total line to be
                                     inserted.
                                     default is control-break point.  ||~v127I~
                -Ofilename          :output sub/grand total lines to the file.
                                     wild card is used to get output file name
                                     from current filename.
                ave|minmax|maxmin|amm:Additional to summary,average or
                                      min/max value is displayed.
                                      Amm is for both.
            NX        :calculation for displayed lines only.
            Zero      :"0" padding in the preceding space.
            V[n]R     :out decimal fraction precision.                ||~v124R~
                       R:round. (5up,4cut).
            INS       :Not replace but Insert result at the opd3 position
                       by the width specified.
            RJ        :opd3 alignment=Right justification.
                       default is LeftJustify.
            countEQ   :For "~"(count ACTIVE line) operation,
                       count 1 up for the line starttime==endtime.
                       Without countEQ,these line are assumed as INACTIVE.
            Q[d][s]   :consideration of quotation.
                        d:double("), s:single(').
                        treat as Qds when both d and s are omitted.   ||~v124R~
            TF        :result of ==(compare) is 1 for true,0 for false.
            FT        :result of ==(compare) is 0 for true,1 for false.
            .lab1/2/3/4:Start and End line of table.
                        .lab1 and .lab2 is for opd2,.lab3 and .lab4 is
                        for opd2. If .lab3 and .lab4 is missing,
                        .lab1 and .lab2 is for both opd1/2.
                       corresponding label is to be set on lineno columns.||~v124R~
                       If label is all numeric,it is treated as lineno.
                      e.g. TC 10-19+ .a .b ; TC 10-19+ .100 .200      ||~v128R~

            -Sub-total line of summary operation(for opcode is +).
              -With break-key or count.                               ||~v124R~
               Existing sub-total line(data field stating with char '=')
               is deleted without "ign" option,ignored with "ign" option.
               New sub-total line is inserted according to the break.  ||~v124R~
               Inserting position is optionally specified. If no insert||~v124R~
               position,it is inserted into the break position.
              -Without break-key nor count.                           ||~v124R~
               By placing "=" at the top of opd1 field,
               subtotal is gotten at that place.
               Insert position option is for the grand total line.
            -Operand specification using Cut&Paste function.
              When operand 1 and operand 2 is not on the different
              file,specify table block using Cut&Paste.
              Operand 1 is fixed by one mode Alt+F7 just after block
              fixed. "TC =" command is alternative.
              Then next,operand 2 is specified one more block specification.
              Calculation is done by TC command without operand column
              specification. For ex, "TC +=", "TC 1-9=+".             ||~v124R~
              Other option,like as data type is specified. For ex,    ||~v124R~
              "TC t+=t/4-5".
              This is not used for "="(Copy) operation.               ||~v124I~
                                                                      ||~v124I~

   = Text Flow
                                                                      
       {TFL | TF} [width] [SBCS] [TOL] [STRDELM] [SPACE1]             
                  [In] [ALL|EACH] [Pn|NOP] [BASE1] [AWORD|SWORD]      
                  ['delm-chars'} [.lab1 .lab2]                        ||~v126R~
                                                                      
            width   :right boundary after re-flowed.                  
            SBCS    :split DBCS on left/right boundary into 2 SBCSs.  ||~v125R~
                     If SBCS option is not specified,split DBCS is    ||~v125R~
                     replaced by 2 space.                             
                     This option is invalid for UTF8 file.            ||~v125R~
            STRDELM :treat 'delm-chars' as a string to split line.    ||~v124R~
            SPACE1  :shrink continued space chars into a space char.  
            In      :Output indentation(preceding space count).       
            ALL     :Process all paragraphs if Pn is not specified.   
                     Overflowed data by narrow width parameter may override
                     the line of the next paragraph.                  
            EACH    :Process all paragraphs if Pn is not specified.   
                     Do not over flow to the next paragraph but insert lines
                     between each paragraph for the case narrow width 
                     parameter is specified.                          
            Pn      :Specify the paragraph count to be processed. n=0 means all.
            NOP     :Ignore paragraph(Assume all lines are in a paragraph||~v124R~
                     after the end of line is determined by Pn option if specified)
                     All the following lines are re-flowed with the 1st line's
                     indentation if In is not specified.              
            BASE1   :Paragraph indentation base is of the 1st line.   
                     The paragraph contains the following lines of the same
                     indentation as the 1st line.                     
                     If BASE1 is not specified, paragraph contains    
                     1st line and 2nd line, and the following lines of same
                     indentation as 2nd line that may not be same as 1st line.
            AWORD   :(After Word) If space is not contained on source data
                     in the range of target field width,split the line
                     at the point of 1st space beyond the width.      
            SWORD   :(Split Word) If space is not contained on source data
                     in the range of target field width,split the line
                     at the point of the width.                       
           'delm-chars':Line is split at the delimiter searched.      
                        SPLit cmd width width parameter split only once
                        just before the boundary of the width parameter.
                        TFlow cmd split each time at the point delimiter found.
                        Hex notation is available like as \x0d.        ||~v126R~
                        Multiple character like as \x8140 is allowed but||~v126R~
                        no DBCS consideration.                        ||~v126R~
                        In this case this is treated as 2 SBCS character is specified.||~v126R~
           .lab1/.lab2 :line range to be re-flowed.                   
                        If not specified label range,start from the line
                        cursor is placed.                             
                        If cursor is on the command input line start line
                        is the top of file.                           
                                                                      
        (ex.01) Cursor position is specified by '_' on lineno field.  
                Bounds is not set,but option=f80 on the CID header line(line-0001000)
                means right boundary is col.80.                       
                (Without CID header line,you can specify margin by Fxx option of Edit command
                ,"e file-name f80".)                                  

            ===>tf
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....
            *******|********** TOP OF FILE *************************************************************
            0001000|//*CID://+NONER~:    option=(f80,p0) update#=    3;
            _002000|        added this part to test the behavior of the bnds
            0003000|        cmommand for
            0004000|        xe. i use bnds to format paragraphs
            0005000|     so the breakes are nice.
            0006000|     *                                                                 *   CL114
            0007000|     *   JOB stream:   job name  proc name  program run frequency      *   CL114
            0008000|     *                 --------  aaaaaa     weekly.                    *   CL114
            0009000|     *=================================================================*   CL114

         ==>process one paragraph.                                    
            Line-0005000 is of next paragraph by the indentation changed.

            3 line(s) processed,0 err line,delm="".1:17) ------------------------------------------------
            ===>
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....
            *******|********** TOP OF FILE ***********************************************************
            0001000|//*CID://+NONER~:    option=(f80,p0) update#=    3;
            0002000*        added this part to test the behavior of the bnds cmommand for xe. i use
            0003000*        bnds to format paragraphs
            0005000|     so the breakes are nice.
            0006000|     *                                                                 *   CL114||
            0007000|     *   JOB stream:   job name  proc name  program run frequency      *   CL114||
            0008000|     *                 --------  aaaaaa     weekly.                    *   CL114||
            0009000|     *=================================================================*   CL114||

        (ex.02) For Line-Numbered-file,bounds is col.1-72 as default. 
                "option=(m72,n)" on CID header line indicate that.    
                 (en command is for open line-numbered-file. "en file-name").

            ===>tf
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|//*CID://+NONER~:    option=(m72,n,p0) update#=   11;                   00010001
            _002000| ws-ini-key                  w  64  a                                   00020002
            0003000|    ws-ini-key-tag  ws-ini-key       4 a value 'key:'                   00030002
            0003010|    ws-ini-key-data ws-ini-key  .4  60 a                                00031002
            0003020|       field-name      w 60  a                                          00032002
            0003030|       field1-value    w 60  a                                          00033002

         ==>col.73-80 is out of re-flowing area.                      
            Line-0003000 is 2nd line of 1st paragraph and the indentation is of the paragraph.
            The following line with same indentation(Line-0003010) as 2nd line are contained
            in the paragraph. Line-0003020 is the 1st line of the 2nd paragraph.

            3 line(s) processed,0 err line,delm="".9:26) -----------------------------------------------
            ===>
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....
            *******|********** TOP OF FILE *************************************************************
            0001000|//*CID://+NONER~:    option=(m72,n,p0) update#=   11;                   00010001
            0002000* ws-ini-key                  w  64  a ws-ini-key-tag  ws-ini-key        00020002
            0003000*    4 a value 'key:' ws-ini-key-data ws-ini-key  .4  60 a               00030002
            0003020|       field-name      w 60  a                                          00032002
            0003030|       field1-value    w 60  a                                          00033002
            *******|********** END OF FILE *************************************************************

        (ex.03) When Bounds is set different from the margin.         
                Boundary is indicated by the difference of color(This document can not show that).
                BND command in this example is to show bounds setting and need not enter each time.

            ===>bnds;bnds 9 70;tf
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8...
            *******|********** TOP OF FILE ************************************************************
            _002000*        added this part to test the behavior of the bnds              aaaaaaaaaa
            0003000*        command for                                                   aaaaaaaaaa
            0004000*        xe. i use bnds to format paragraphs                           aaaaaaaaaa
            0005000*          so the breakes are nice.                                    aaaaaaaaaa
            0006000|      *                                                                *   CL114
            0007000|      *  JOB stream:  job name  proc name  program run frequency       *   CL114
            0008000|      *               --------  ---------  --------------------------- *   CL114

         ==>Just before the right boundary at least one space is required after re-flowed.

            3 line(s) processed,0 err line,delm="".1:19) --------------------------------------------------
            ===>
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8...
            *******|********** TOP OF FILE ************************************************************
            0002000*        added this part to test the behavior of the bnds command for   aaaaaaaaa
            0003000*        xe. i use bnds to format paragraphs                            aaaaaaaaa
            0004000*                                                                       aaaaaaaaa
            0005000*          so the breakes are nice.                                     aaaaaaaaa
            0006000|      *                                                                *   CL114
            0007000|      *  JOB stream:  job name  proc name  program run frequency       *   CL114
            0008000|      *               --------  ---------  --------------------------- *   CL114

        (ex.04) When width parameter used.                            

            ===>bnd ;bnd 1 28;tf 24 all
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8..
            *******|********** TOP OF FILE ***********************************************************
            0002000|file rep2 fb(80 27920)printer
            0003000|file rep3 fb(80 27920)printer
            0004000|file rep4 fb(80 27920)printer
            0005000|file rep5 fb(80 27920)printer
            0006000|file rep6 fb(80 27920)printer
            0007000|file rep7 fb(80 27920)printer
            0008000|file rep8 fb(80 27920)printer
            0009000|file rep9 printer
            0010000|file repa printer
            0011000|job input ini finish print-tot
            0012000|    ws-ini-key-data = ini-key
            0013000|    ws-ini-key-field-name = ini-field-name
            0014000*  aaaaaaaaaaa bbbbbbbbbbbbbbCCCCCCCCCCCCCCCCCCC

         ==>ALL option is to process all paragraph.                   

            18 line(s) processed,1 err line,delm="".:36) -----------------------------------------------
            ===>
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....
            *******|********** TOP OF FILE *************************************************************
            0002000*file rep2 fb(80             r
            0003000*27920)printe file rep3      r
            0004000*fb(80 27920)printe file     r
            0005000*rep4 fb(80 27920)printe     r
            0006000*file rep5 fb(80             r
            0007000*27920)printe file rep6      r
            0008000*fb(80 27920)printe file     r
            0009000*rep7 fb(80 27920)printe
            0010000*file rep8 fb(80
            0011000*27920)printe file rep9      ot
            0012000*printer file repa           y
            0013000*printer job input ini       ini-field-name
            0014000*finish print-t              CCCCCCCCCCCCCCCCCCC
            0015000*    ws-ini-key-data =
            0016000*    ini-ke
            0017000*    ws-ini-key-field-name =
            0018000*  aaaaaaaaaaa
            0019000*  bbbbbbbbbbbbbb
            *******|********** END OF FILE *************************************************************

        (ex.05) effect of EACH option.                                

            ===>bnd 1 28;tf 24 p3 each
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|file rep2 fb(80 27920)printer
            0002000|file rep3 fb(80 27920)printer
            0003000|file rep4 fb(80 27920)printer
            0004000|file rep5 fb(80 27920)printer
            0005000|file rep6 fb(80 27920)printer
            0006000|file rep7 fb(80 27920)printer
            0007000|file rep8 fb(80 27920)printer
            0008000|file rep9 printer
            0009000|file repa printer
            0010000|job input ini finish print-tot
            0011000|    ws-ini-key-data = ini-key
            0012000|    ws-ini-key-field-name = ini-field-name
            0013000|  aaaaaaaaaaa bbbbbbbbbbbbbbCCCCCCCCCCCCCCCCCCC
            0014000|DDD
            0015000| EEE
            *******|********** END OF FILE *********************************************************

         ==>Different with ALL,overflowed data are inserted after the each paragraph.||~v124R~
            See Line-0011000,"y"(outside of the right boundary) and "ws-ini-key-data ="(inside of the right boundary)
            remains in the same line after re-flowed.                 
            By the parameter "P3",Line-0015000(4'th paragraph) is out of process.
            (p1:00010000-0010000,p2:0011000-0012000,p3:0013000-0014000)

            14 line(s) processed,1 err line,delm="".:43) -------------------------------------------
            ===>
            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000*file rep2 fb(80             r
            0002000*27920)printe file rep3      r
            0003000*fb(80 27920)printe file     r
            0004000*rep4 fb(80 27920)printe     r
            0005000*file rep5 fb(80             r
            0006000*27920)printe file rep6      r
            0007000*fb(80 27920)printe file     r
            0008000*rep7 fb(80 27920)printe
            0009000*file rep8 fb(80
            0010000*27920)printe file rep9      ot
            0010100*printer file repa
            0010200*printer job input ini
            0010300*finish print-t
            0011000*    ws-ini-key-data =       y
            0012000*    ini-ke                  ini-field-name
            0012100*    ws-ini-key-field-name =
            0013000*  aaaaaaaaaaa               CCCCCCCCCCCCCCCCCCC
            0014000*  bbbbbbbbbbbbbb DDD
            0015000| EEE
            *******|********** END OF FILE *********************************************************

        (ex.06) effect of NOP option.                                 

            ===>bnds;bnds 1 40;tf p3 i4 nop
            col    |....+....1....+....2....+....3....+....4.
            *******|********** TOP OF FILE ******************
            0001000* p1       a                             A
            0002000*  p1       b                            A
            0003000*   p2        c                          A
            0004000*    p2        d                         A
            0005000*     p3         e                       A
            0006000*      p3         f                      A
            0007000*       p4                               A
            0008000*        p4                              A
            *******|********** END OF FILE ******************

         ==>p3 limits the line range to be processed to 3 paragraph.  
            re-flowing process ignore the paragraph boundary.         
            Indentation after re-flowed can be changed by "In" option.

            6 line(s) processed,0 err line,delm="".4:55) ----
            ===>
            col    |....+....1....+....2....+....3....+....4.
            *******|********** TOP OF FILE ******************
            0001000*    p1       a p1       b p2        c   A
            0002000*    p2        d p3         e p3         A
            0003000*    f                                   A
            0004000*                                        A
            0005000*                                        A
            0006000*                                        A
            0007000*       p4                               A
            0008000*        p4                              A
            *******|********** END OF FILE ******************

            Result of without NOP option.                             

            ===>bnds;bnds 1 40;tf p3 i4
            col    |....+....1....+....2....+....3....+....4.
            *******|********** TOP OF FILE ******************
            0001000* p1       a                             A
            0002000*  p1       b                            A
            0003000*   p2        c                          A
            0004000*    p2        d                         A
            0005000*     p3         e                       A
            0006000*      p3         f                      A
            0007000*       p4                               A
            0008000*        p4                              A
            *******|********** END OF FILE ******************

         ==>

            6 line(s) processed,0 err line,delm="".4:55) ----
            ===>
            col    |....+....1....+....2....+....3....+....4.
            *******|********** TOP OF FILE ******************
            0001000*    p1       a p1       b               A
            0002000*    p2        c p2        d             A
            0003000*    p3         e p3         f           A
            0004000*                                        A
            0005000*                                        A
            0006000*                                        A
            0007000*       p4                               A
            0008000*        p4                              A
            *******|********** END OF FILE ******************

        (ex.07) effect of BASE1 option.                               

            ===>bnds 1 40;tf p3 base1
            *******|********** TOP OF FILE ******************
            0001000|   p0-----aa                            A
            0002000|   p0-----bb                            A
            0003000| p1       a                             A
            0004000|  p1       b                            A
            0005000|   p2        c                          A
            0006000|    p2        d                         A
            0007000|     p3         e                       A
            0008000|      p3         f                      A
            0009000|       p4                               A
            0010000|        p4                              A
            *******|********** END OF FILE ******************

         ==>Line-002000 and Line-003000 is in the different paragraph by BASE1 option.

            4 line(s) processed,0 err line,delm="".5:21) ----
            ===>
            *******|********** TOP OF FILE ******************
            0001000*   p0-----aa p0-----bb                  A
            0002000* p1       a                             A
            0003000*  p1       b                            A
            0004000*                                        A
            0005000|   p2        c                          A
            0006000|    p2        d                         A
            0007000|     p3         e                       A
            0008000|      p3         f                      A
            0009000|       p4                               A
            0010000|        p4                              A
            *******|********** END OF FILE ******************

        (ex.08) effect of AWORD/SWORD option.                         

            ===>tf 20
            col    |....+....1....+....2....+....3....+....4.
            *******|********** TOP OF FILE ******************
            0001000* aaaaaaaaaaaaaaaaaa AAAAAAAAAAAAAAAAAAAAA
            0002000| bbbbbbbbbbbbbbbbbbb BBBBBBBBBBBBBBBBBBBA
            0003000| cccccccccccccccccccc CCCCCCCCCCCCCCCCCCA
            0004000| dddddddddddddddddddddDDDDDDDDDDDDDDDDDDA
            0005000| eeeeeeeeeeeeeeeeeeeeee EEEEEEEEEEEEEEEEA
            0006000*    FF
            *******|********** END OF FILE ******************

         ==>Without AWORD nor BWORD,the long line(no space in the width) is not split.

            5 line(s) processed,5 err line,delm="".5:33) ----
            ===>
            col    |....+....1....+....2....+....3....+....4.
            *******|********** TOP OF FILE ******************
            0001000* aaaaaaaaaaaaaaaaaa
            0001100* AAAAAAAAAAAAAAAAAAAAA
            0002000* bbbbbbbbbbbbbbbbbbb BBBBBBBBBBBBBBBBBBBA
            0003000* cccccccccccccccccccc CCCCCCCCCCCCCCCCCCA
            0004000* dddddddddddddddddddddDDDDDDDDDDDDDDDDDDA
            0005000* eeeeeeeeeeeeeeeeeeeeee EEEEEEEEEEEEEEEEA
            0006000*    FF
            *******|********** END OF FILE ******************

         ==>With AWORD option("tf 20 aword"),the line is split at the space
            just after the right boundary if exist.                   

            5 line(s) processed,4 err line,delm="".5:33) ----
            ===>
            col    |....+....1....+....2....+....3....+....4.
            *******|********** TOP OF FILE ******************
            0001000* aaaaaaaaaaaaaaaaaa
            0001100* AAAAAAAAAAAAAAAAAAAAA
            0002000* bbbbbbbbbbbbbbbbbbb
            0002100* BBBBBBBBBBBBBBBBBBBA
            0003000* cccccccccccccccccccc
            0003100* CCCCCCCCCCCCCCCCCCA
            0004000* dddddddddddddddddddddDDDDDDDDDDDDDDDDDDA
            0005000* eeeeeeeeeeeeeeeeeeeeee
            0005100* EEEEEEEEEEEEEEEEA
            0006000*    FF
            *******|********** END OF FILE ******************

         ==>With SWORD option("tf 20 sword"),the line is split by the width.||~v124R~

            ===>
            col    |....+....1....+....2....+....3....+....4.
            *******|********** TOP OF FILE ******************
            0001000* aaaaaaaaaaaaaaaaaa
            0001100* AAAAAAAAAAAAAAAAAAA
            0001200* AA
            0002000* bbbbbbbbbbbbbbbbbbb
            0002100* BBBBBBBBBBBBBBBBBBB
            0002200* A
            0003000* ccccccccccccccccccc
            0003100* c
            0003200* CCCCCCCCCCCCCCCCCCA
            0004000* ddddddddddddddddddd
            0004100* ddDDDDDDDDDDDDDDDDD
            0004200* DA
            0005000* eeeeeeeeeeeeeeeeeee
            0005100* eee
            0005200* EEEEEEEEEEEEEEEEA
            0006000|    FF
            *******|********** END OF FILE ******************

        (ex.09) "delm-char" and related options.                      
            ===>bnds 1 40
            *******|********** TOP OF FILE ******************
            0001000| aaaaaaaa=aaaaaaaaa AAAAAAAA===AAAAAAAAA|
            0002000* bbbbbbbb=: bbbbbbbb BBBBB :   BBBBBBBB |
            0003000* cccccccc:=cccccc := CCCCC :   CCCCCCCCC|
            0004000|    FF                                  |
            *******|********** END OF FILE ******************

         ==>tf ":="                                                   
              all of ":" and  "=" split the line.                     

            *******|********** TOP OF FILE ******************
            0001000* aaaaaaaa=                              |
            0002000* aaaaaaaaa AAAAAAAA=                    |
            0003000* =                                      |
            0003100* =
            0003200* AAAAAAAAA bbbbbbbb=
            0003300* :
            0003400* bbbbbbbb BBBBB :
            0003500* BBBBBBBB cccccccc:
            0003600* =
            0003700* cccccc :
            0003800* =
            0003900* CCCCC :
            0003910* CCCCCCCCC
            0004000|    FF                                  |
            *******|********** END OF FILE ******************

         ==>tf ":=" tol                                               ||~v125R~
              TOL means split just before the delimiter.              

            *******|********** TOP OF FILE ******************
            0001000* aaaaaaaa                               |
            0002000* =aaaaaaaaa AAAAAAAA                    |
            0003000* =                                      |
            0003100* =
            0003200* =AAAAAAAAA bbbbbbbb
            0003300* =
            0003400* : bbbbbbbb BBBBB
            0003500* :   BBBBBBBB cccccccc
            0003600* :
            0003700* =cccccc
            0003800* :
            0003900* = CCCCC
            0003910* :   CCCCCCCCC
            0004000|    FF                                  |
            *******|********** END OF FILE ******************

         ==>tf ":=" strdelm                                           ||~v125R~
              "del-chars" parameter is used as string to split the line.

            *******|********** TOP OF FILE ******************
            0001000* aaaaaaaa=aaaaaaaaa                     |
            0002000* AAAAAAAA===AAAAAAAAA bbbbbbbb=:        |
            0003000* bbbbbbbb BBBBB :   BBBBBBBB cccccccc:= |
            0003100* cccccc :=
            0003200* CCCCC :   CCCCCCCCC
            0004000|    FF                                  |

        (ex.10) effect of SPACE1.                                     

            ===>tf space1 all
            *******|********** TOP OF FILE *********************************************************
            0001000|//*CID://+NONER~:    option=(m72,n,p0) update#=   11;                   00010001
            0002000| ws-ini-key                  w  64  a                                   00020002
            0003000|    ws-ini-key-tag  ws-ini-key       4 a value 'key:'                   00030002
            0003010|    ws-ini-key-data ws-ini-key  .4  60 a                                00031002
            0003020|       field-name      w 60  a                                          00032002
            0003030|       field1-value    w 60  a                                          00033002
            *******|********** END OF FILE *********************************************************

         ==>shrink continued spaces between the word to one space.    

            6 line(s) processed,0 err line,delm="".9:26) -------------------------------------------
            ===>
            *******|********** TOP OF FILE *********************************************************
            0001000*//*CID://+NONER~: option=(m72,n,p0) update#= 11; ws-ini-key w 64 a      00010001
            0002000*    ws-ini-key-tag ws-ini-key 4 a value 'key:' ws-ini-key-data          00020002
            0003000*    ws-ini-key .4 60 a                                                  00030002
            0003010*       field-name w 60 a field1-value w 60 a                            00031002
            *******|********** END OF FILE *********************************************************

   = Jump to Top line/Bottom line of file.

        {TOP | BOTtom}  (No operand)

   = Undo update.

        UNDo    [free]

            -free :free saved data area for the case memory shortage.

        (note) Confirmation required if by ext key,but no confirmation
               required if cmd string input.
               Maximum level saved for undo is 20 for DOS version,
               32768 for other version.

   = Page scroll

        {UP | DOWn | LEFt |RIGht} [p | page | h | half | c | csr
                                  | m | max | (nn)]}
            p/page  :by a Height or Width.
            h/half  :by a half of Height or Width.
            c/csr   :Move the point of cursor to the edge of screen.
            m/max   :display file top-line/end-line/left-column/right-||~v124R~
                     last-column-of-displayed-line.
            nn      :number of Lines or Columns to scroll.

            -It may work to input operand only then press each function
             key,but alternatively you can fix scroll value by entering
             it on scroll field of command line(===>HALF ).
                                                                      ||~v124R~
#ifdef UTF8SUPP                                                       ||~v125R~
                                                                      ||~v124R~
   = UTF8 related.                                                  ||~v124R~||~v125R~
                                                                      ||~v125R~
       -UTF related setting.                                          ||~v125R~
                                                                      ||~v125R~
           - UTF { {ALTCPLC | NOALTCPLC } | SWKBD | FILE | FN } [ CPU8 | CPLC | CPAS ]||~v125I~
                                                                      ||~v125I~
              ALTCPLC / NOALOTCPLC : When without CPU8 option including registered on profile,||~v125I~
                                     reload by CPLC or not if UTF8 translation err occured.||~v125I~
                                                                      ||~v125R~
              SWKBD:KBD Input translation(Locale code<-->UTF8)        ||~v125R~
                                                                      ||~v125R~
                Alt+u is shortcut of "UTF SWKBD" cmd.                 ||~v125R~
                "===>" of cmd input line is changed to "=u=>".        ||~v125R~
                =u=>:keyboard input is interpreted as UTF8.           ||~v125R~
              FILE/FN:Set default of text of file/filename encoding.  ||~v125R~
                      Use CPAS to reset it.                           ||~v125R~
                      Option setting is save to ini file.             ||~v125R~
                      -U option of cmdline override this temporarily. ||~v125R~
                                                                      ||~v125R~
              You can mix UTF8 and locale code on command input line, filename input(=1 or =2) panel||~v125R~
              and utility panel(=3.12 or =3.14).                      ||~v125R~
              Use this shortcut key when file pathename is mix of UTF8 and locale code.||~v125R~
              (Note) If the mix is in a path, UTF8 detection may fail.||~v125R~
              		 (Intermediate ASCII code may help as UTF8 encoding separator)||~v125R~
                                                                      ||~v129R~
              -These change is save to inifile,effective also at next session.||~v125R~
                                                                      ||~v124R~
#endif                                                                ||~v124R~

   = Version

        VER  [nn]
           nn:version number of line-numbered file.
              Current SPF file update level number is displayed if omitted.
              File update level number is set to the number.
              File update level number +1 is set to col.79-80 of the updated lines||~v125R~
              when save.
              If file update level is changed downward,each line update
              level is changed downward relative to the level.
              If it is changed to upward,only updated line is set to
              the new level.
          This cmd is undo-able.                                      ||~v124R~
          Effective only for line-numbered file.
          Update# on CID Header is not updated.

   = Basic Calc.

        XBC  value1 [ operation value2 ] [op value3 [... op value10] ] [[/output-type] [R] [Vn[R]]||~v129R~

            -Value1/2:  [type]digit.
               type: z:decimal, x:hexadecimal, o:octal, t:hhmmss.xxx fmt.
               Decimal is up to 19 digit,and may contain separator ",".
               If type is ommitted,decimal when all digit is 0 to 9,
               hexadecimal when all is valid hexadecimal digit,
               t when hh:mm:ss format.
               After decimal point,up to 9 digit is allowed,but for x
               and o,decimal fraction is not supported.
               For double word, concatenate 2 word hex-decimal by ".."||~v124R~
               like as abcded01..23456789.
               Overflow is ignored when Hex/Octal calc,               ||~v126R~
               For Hex or Octal values, word overflows are ignored,   ||+130ER~
               so you will use double word like `0x00..12345678*0x100`.||+130ER~
               		xbc     x19070051*1000 ==>     c3593c68           ||+130ER~
               		xbc x00..19070051*1000 ==>x61..c3593c68           ||+130ER~
            -value3..: up to 10 operators except !,<,>,&,|,^ .        ||~v129R~
             operator has no priority, calculated sequentially left to right.||~v129R~
            -operation:  +,-,*,!,/,%,  <,>,|,&,^.
               ('!':power, '<','>':shift, '^':exclusive OR.)
               Shift or bit operation is not valid for time.
               If operation missing,do base conversion.
               Operand with type!=t is treated as seconds when calculated||~v124R~
               with time operand. Multiply and divide between times is also
               by the value of seconds.
               Doubleword precision is for +,-,*,/,% only.
               Overflow is move up to doubleword precision for decimal calc,
               or ignored for octal/hex calc.
            -output-type:result display type.
               x:hexadecimal, o:octal, d:decimal, u:unsigned decimal,
               W:Output double-word hexdecimal numbers in the format, e.g. x1212345678 instead of x12..12345678.||~v30CI~
               z:decimal by zzz,zz9, uz:unsigned decimal by zzz,zz9,
               t:hh:mm:ss.xxx edit fmt,
               s:translation of UCS-4 unicode and its UCS-2 surrogate.||~v130I~||~v130R~
                                                                      ||+130ER~
               l(lower L):convert to clock from a word(seconds from 1970)
               or double word(Mainframe TOD. In double word bit 51 is 
               unit of micro second).
               When mainframe HOST-TOD is before 2000/01/01,
               it is displayed as elapsed second from 1900/01/01.
                                                                      ||+130ER~
               M: Convert smartphone timestamp by milliseconds to date and time||+130ER~
                                                                      ||+130ER~
               If omitted,hexadecimal for decimal,decimal for octal   
               and hexadecimal and number of second for type=t.
               Result of divide for decimal,precision is 1 up.
               for x or o,residual is displayed.
            -R:leave result string on to the cmd input line to use as
               next XBC cmd input.
            -Vn[R]:n digit under point, R:round.                      ||~v129R~
                                                                      ||~v129R~
          e.g. XBC T010100 ; XBC xfe0100  ; XBC o177 ; XBC e8ff>3     ||~v128R~
               XBC T012159.12+t005212.333 ; XBC xabcdef+1000
               XBC 12345678..abcdef0/30a2 ; XBC 3acf19fe/l
               xbc 1234.56*7.89 v2r       ; xbc 123.45/6.789 vr       ||~v129R~
               xbc 200/3.3*35 v2r         ; xbc 1+2+3+4+5+6+7+8+9+10  ||~v129R~
               xbc 1f468/s  ==> x1f468/s:=d83ddc68                    ||~v130I~||~v130R~
               xbc d83ddc68 ==> xd83ddc68/s:=0001f468                 ||~v130I~||~v130R~
               xbc 19f7bf51717/M ==> 2026/07/20-04:58:27.639          ||+130ER~
               xbc 19f7bf51717/L ==> 2042/09/18-00:01:03.037          ||+130ER~

        (Command line tool XBC is also packaged in zip file.)

   = Hex input mode

        XIN

            -exchange Hex digit input mode and normal input mode.
             default function key is Ctrl+F11.                        ||~v125R~
            -After entered Hex input mode,"x" appear at top-left corner.
            -Hex digit input is accepted on the area file lines displayed.
            -Char is transferred to cursor pos at end of 2byte input  
             for DBCS,but by "x" key only 1st byte of DBCS is transferred.
             But for binary file,No DBCS check is done,and Input-inhibit-
             char check is not done.
             For EBCDIC file, it will be sent byte by byte.           ||~v125R~
                                                                      ||~v125R~
            -"u" and "v" key is for unicode input.                    ||~v125R~
             "u" key start UCS2 input and "v" key start UCS4 input.   ||~v125R~
             Remaining premature hex code is transferred to file text area by also||~v125R~
             "u" or "v" key.                                          ||~v125R~
             "u" or "v" is required to each unicode char.             ||~v125R~
                                                                      ||~v125R~
            -Command input line accept UTF8 code by this HexInputMode.||~v125R~
             When started by "u" or "v", unicode is translated to UTF8 code.||~v125R~
             Without "u" or "v", the char itself is sent.             ||~v125R~
             To input "u" or "v" itself, duplicate it.                ||~v125R~
             UTF8 code is accepted at command input line, dirlist rename input field,||~v125R~
             FileNameList panel(=1, =2) and Utility panel(=3.12, =3.14).||~v125R~

************************************************************************
(4).Line command
************************************************************************
********************                                                  
 (A) Browse/Edit   *
********************                                                  

[Table 2] Edit line command.
 +------+-------+---------------------------------------------------+
 |cmd   |func   | description                                       |
 +------+-------+---------------------------------------------------+
 | r    |Repeat |Repeat the lines.                                  |
 | i    |Insert |insert lines with length 0.                        |
 | d    |Delete |delete the lines.                                  |
 | s    |Split  |Split the lines at cursor pos                      |
 | TS   |Split  |equivalent to s command.                           | 
 | j    |Join   |Join the multiple lines into a line.               |
 | x    |eXclude|hide the lines.                                    |
 | f    |First  |display the lines from first of hidden lines.      | ||~v124R~
 | l    |Last   |display the lines from last of hidden lines.       | ||~v124R~
 | u    |Upper  |lower-case-->upper-case translation.               |
 | _    |Lower  |lower-case<--upper-case translation.               | 
 | y    |Yield  |display the set of hidden lines.                   | ||~v124R~
 +------+-------+---------------------------------------------------+
 | <    |l-shift|shift out left preceding space char only.          |
 | >    |r-shift|shift to right padding n space char to top of line.|
 | [    |l-shift|shift to left compacting space char from TOL.      |
 | ]    |r-shift|shift to right compacting space char from EOL.     |
 | (    |l-shift|shift to left cutting TOL chars.                   |
 | )    |r-shift|shift to right padding space char to top of line.  |
 | TF   |TxtFlow|re-flow lines in a paragraph                       | 
 | :    |TF     |re-flow multiple paragraph                         | 
 | ;    |TF-nop |re-flow width no paragraph consideration.          | 
 | /    |c++cmt |insert // at the cursor pos.                       |
 | +    |set-str|insert any string at the cursor pos.               |
 +------+-------+---------------------------------------------------+
 | c    |Copy   |source lines specification of line copy operation. |
 | m    |Move   |source lines specification of line move operation. |
 | a    |After  |insert after this line from copy source lines      |
 | ac   |       |CID on source line is copied.                      | ||~v125R~||~127AR~
 | ab   |       |Binary(no translation) copy.                       | ||~v125R~
 | abc  |       |Binary+CID copy                                    | ||~v125R~
 | b    |Before |insert before this line from copy source lines     |
 | bc   |       |CID on source line is copied.                      | ||~v125R~||~127AR~
 | bb   |       |Binary(no translation) copy.                       | ||~v125R~
 | bbc  |       |Binary+CID copy                                    | ||~v125R~
 | o    |On     |copy override target specification.                |
 |      |       |only space char(it may spaces by tab) is overridden|
 |      |       |non space char of target line remain.              |
 |      |       |if cursor is at the middle of target 1st line      |
 |      |       |override start at the column.                      |
 | n    |Niche  |copy override target specification.                |
 |      |       |only non-space char of source line is pasted.      |
 |      |       |if cursor is at the middle of target 1st line      |
 |      |       |paste start at the column.                         |
 | p    |Paste  |copy override target destination.                  |
 |      |       |target lines area overrided when Rep mode,         |
 |      |       |source text is inserted into the target line       |
 |      |       |when Ins mode.                                     |
 |      |       |if cursor is at the middle of target 1st line      |
 |      |       |paste start at the column.                         |
 +------+-------+---------------------------------------------------+
 | =    |line-  |compare 2 range of lines.                          |
 | #    |execute|execute command on the line.                       |
 | .    |label  | . followed any string means label. e.g. .abc      | ||~v128R~
 |      |       | It is used on Find/Change cmd to limit search line|
 |      |       | range. Label is not avail on excluded line.       |
 +------+-------+---------------------------------------------------+

   - Enter on line-no field of edit/browse panel,those are processed  
     by Execute key.                                                  
     You can do line copy/move also from one split screen to another
     by pressing Execute key once on any of two screen if those are   
     displaying same file.                                            
     When displaying different file on split screen,                  
     You need to press Execute key twice for each screen.             

     Line command example.
          (move 3 lines of 287-289 after the line 237.)

            0286000|//**************************
            mm     |case 'C':
            0288000|    Gcmdmaxstack=numchk(cptr);
            mm     |    break;
            0230000|//**************************
            0231000|//* help msg      /H*
            0232000|//**************************
            0233000|case '?':
            0234000|case 'H':
            0235000|    help();
            0236000|    exit(4);
            a      |    break;
            0238000|//**************************

   - If cursor is on the edit line except line-no field when entering
     shift command,it influence only on the right part data of cursor.
     Accordingly if cursor is positioned,"(" has effects of deletion
     of block,")" has effects of insertion of space block.

   - Tab is replaced to space by shift cmd.
                                                                      
   - Bounds setting influence to shift(<,>,(,),[,]),paste(o,p,n),compare(=)
     and CaseConversion(u,_) command.                                 
     Shift in the margin and paste source and target is limited in the margin.
     Compare and conversion is done in the range.                     

   - Split lines.                                                     
     Each partial lines are independently processed as a rule.        
     For Join line,a whole line is processed.


   - Command format is x[n][,b][.s], xx[n][,b][.s] , x_ or xx[_]
     x :line command,see [Table 2].
     xx:line command doubled specifying range.
     - :any string except DBCS char up to line-no column field size,
        this is for + cmd only.
     n :digits mean basically repeat count, but it may be shift count or line count.
        See next table.
     (note) n on the line **** TOP OF FILE *** is net file line number
            for Cn,Dn and /n. D on the line **** TOF OF FILE *** delete
            a line on the next.
     ,b:line number in a Bundle                                       
     .s:Skip line count
        Process b lines then skip s lines,then process next b lines
        and so on. e.g. dd,3.2-dd :delete 3 lines then remaining next ||~v128R~
        2 lines delete next 3 line ... in the range of dd-dd.
        Bundle and Skip can be specified separatedly on both line     
        specifying range like as xx,b-xx.s.
        Meaning of n may change for x[n] format if Bundle/Skip is     
        specified. e.g. d3,2.1 :repeat 3 times to delete 2 lines skipping||~v128R~
        a line.
        s=1 as default when only b is specified except r command.

[table 2-2] parameter of edit line command.
 +------+-------+--------------------+--------------------+
 |      |       |         x          |      xx-xx         |
 |ID    |func   |  n           b   s | n            b   s |
 +------+-------+------------+---+---+------------+---+---+
 | r    |Repeat |repeat      |   | 0 |repeat      |   | 0 |
 | i    |Insert |lines/repeat|   |   |lines       |   |   |
 | d    |Delete |lines/repeat|   |   |NA          |   |   |
 | s    |Split  |lines/repeat|   |   |NA          |   |   |
 | TS   |Split  |lines/repeat|   |   |NA          |   |   |           
 | j    |Join   |lines/repeat|   |   |lines       |   |   |
 | x    |eXclude|lines/repeat|   |   |NA          |   |   |
 | f    |First  |lines/repeat|   |   |-           |-  |-  |
 | l    |Last   |lines/repeat|   |   |-           |-  |-  |
 | u    |Upper  |lines/repeat|   |   |NA          |   |   |
 | _    |Lower  |lines/repeat|   |   |NA          |   |   |           
 | y    |Yield  |repeat      |NA |NA |NA          |NA |NA |
 +------+-------+------------+---+---+------------+---+---+
 | <    |l-shift|columns     |NA |NA |columns     |   |   |
 | >    |r-shift|columns     |NA |NA |columns     |   |   |
 | [    |l-shift|columns     |NA |NA |columns     |   |   |
 | ]    |r-shift|columns     |NA |NA |columns     |   |   |
 | (    |l-shift|columns     |NA |NA |columns     |   |   |
 | )    |r-shift|columns     |NA |NA |columns     |   |   |
 | TF   |TxtFlow|RBn         |NA |NA |-           |-  |-  |           
 | :    |TF     |lines       |RBn|Ind|NA          |RBn|Ind|           
 | ;    |TF-nop |lines       |RBn|Ind|NA          |RBn|Ind|           
 | /    |c++cmt |lines/repeat|   |   |NA          |   |   |
 | +    |set-str|NA          |NA |NA |NA          |NA |NA |
 +------+-------+------------+---+---+------------+---+---+
 | c    |Copy   |lines/repeat|   |   |NA          |   |   |
 | m    |Move   |lines/repeat|   |   |NA          |   |   |
 | a    |After  |repeat      |   |   |-           |-  |-  |
 | b    |Before |repeat      |   |   |-           |-  |-  |
 | o    |On     |repeat      |   |   |NA          |   |   |
 | n    |Niche  |repeat      |   |   |NA          |   |   |
 | p    |Paste  |repeat      |   |   |NA          |   |   |
 +------+-------+------------+---+---+------------+---+---+
 | =    |compare|lines/repeat|   |   |NA          |   |   |
 | #    |execute|NA          |NA |NA |NA          |NA |NA |
 | .    |label  |NA          |NA |NA |-           |-  |-  |
 +------+-------+------------+---+---+------------+---+---+
    lines/repeat: line count with no "b" and "s", else repeat count.
    RBn         : (TextFlow)right boundary column.                    
    Ind         : (TextFlow)Indentation count.                        
    NA          : not available
    0           : not s=1 when only b is specified but s=0            ||~v124R~
    -           : xx-xx format is not supported

    Refer example of each command for detail.

[Table 3] Alternative operation.                                      
 +------+-------+-----------------------------------------------+
 |cmd   |func   | alternative                                   |
 +------+-------+-----------------------------------------------+
 | r[n] |Repeat |Shift+F10                                 #1   |
 | rr[n]|       |not supported,use cc as alternative            |
 | i[n] |Insert |Shift+Ins                                 #1   |
 | ii[n]|       |not supported                                  |
 | d[n] |Delete |Shift+Del                                 #1   |
 | dd   |       |Alt+Del with line mode                    #4   |
 | s[n] |       |not supported (Shift+Enter for s1)             |
 | TS[n]|       |not supported (Shift+Enter for s1)             |     
 | ss   |       |SPLit command                                  |     
 | j[n] |       |not supported (Del End-of-line char for j1)    |
 | jj   |       |not supported                                  |
 | x[n] |eXclude|Alt+x                                     #1   |
 | xx   |       |Alt+x with line mode                      #4   |
 | f[n] |First  |Alt+f                                     #1   |
 | l[n] |Last   |Alt+l                                     #1   |
 | u[n] |       |not supported                                  |
 | uu   |       |not supported                                  |
 | _[n] |       |not supported                                  |     
 | __   |       |not supported                                  |     
 | y[n] |xYz    |not supported(Alt+y is for y1)                 |
 | yy   |       |not supported                                  |
 | <[n] |l-shift|not supported                                  |
 | <<[n]|       |not supported                                  |
 | >[n] |r-shift|not supported                                  |
 | >>[n]|       |not supported                                  |
 | [[n] |l-shift|not supported                                  |
 | [[[n]|       |not supported                                  |
 | ][n] |r-shift|not supported                                  |
 | ]][n]|       |not supported                                  |
 | ([n] |l-shift|not supported,use (([n] as alternative         |
 | (([n]|       |Alt+Del under block mode                  #5   |     ||~v124R~
 | )[n] |r-shift|not supported                                  |
 | ))[n]|       |not supported                                  |
 | TF[n]|       |TFLow command                                  |     
 | :[n] |       |TFLow command                                  |     
 | ::[n]|       |TFLow command                                  |     
 | ;[n] |       |TFLow command                                  |     
 | ;;[n]|       |TFLow command                                  |     
 | /[n] |       |not supported                                  |
 | //   |       |not supported                                  |
 | +    |       |not supported                                  |
 | ++   |       |not supported                                  |
 | c[n] |Copy   |not supported,use cc as alternative            |
 | cc   |       |Alt+i with line mode                      #4   |
 | m[n] |Move   |not supported,use mm as alternative            |
 | mm   |       |Alt+j with line mode                      #4   |
 | a[n] |After  |Alt+i to Copy,Alt+j to Move            #1,#2   |
 | b[n] |Before |not supported                                  |
 | o[n] |On     |Alt+o with line mode             #1,#2,#3,#4   |
 | oo   |       |not supported                                  |
 | n[n] |On     |not supported                                  |
 | nn   |       |not supported                                  |
 | p[n] |Paste  |Alt+p with line mode             #1,#2,#3,#4   |
 | pp   |       |not supported                                  |
 | =[n] |       |not supported                                  |
 | ==   |       |not supported                                  |
 | #    |       |not supported                                  |
 | ##   |       |not supported                                  |
 | .    |       |not supported                                  |
 +------+-------+-----------------------------------------------+
   - Alternative operation by Cut & Paste.
     When line number not displayed mode(NUM off),You can not enter   
     line cmd,but almost same function is available using Cut & Paste
     function. 

     #1:[n] is not supported(n is always 1),repeat n times.
     #2:Copy is through clipboard,so You can repeat copy from same source
        without re-specifying source line range.
     #3:Move operation(delete copy source) is not supported.
     #4:Use Alt+h or Alt+F7 at column 1 of both start and end point.
     #5:Use Alt+F7 for Block Range.
     #6:yy-yy may include not excluded lines in the range to reveal multiple
       excluded.

*************************************
 (A-2).Example of edit line command *
*************************************

    = a command
        .aa-aa format is not supported
        .specify destination of m(Move),c(Copy) line command
         or COPy,MOVe command to copy the external file.
        .n,b,s parameter pattern
         an     : copy n times full set of source lines.
         an.s   : copy full set of source lines then skip s lines,
                  repeat that n times.
         a,b.s  : get and copy b lines from source then skip s lines,
                  repeat that until source is exhausted.
         an,b.s : get and copy b lines from source then skip s lines,
                  repeat that n times(break if source is exhausted).
        .Specify "B"(Binary copy option) just after "A"(after) cmd.   ||~v125R~
           abn,b.s                                                    ||~v125R~
        .Specify "C"(CID copy option) after "B" if exist.             ||~v125R~
           a[b]cn,b.s                                                 ||~v125R~

      (1) x[n] pattern

        .copy 3 lines just after the line.

            c3     |A
            0000002|B
            0000003|C
            0000004|D
            0000005|E
            a      |F
            0000007|G
        ===>
            0001000|A
            0002000|B
            0003000|C
            0004000|D
            0005000|E
            0006000|F
            0006100*A
            0006200*B
            0006300*C
            0007000|G

        .repeat 3 times fullset copy.

            cc     |A
            0000002|B
            cc     |C
            0000004|D
            0000005|E
            a3     |F
            0000007|G
        ===>
            0001000|A
            0002000|B
            0003000|C
            0004000|D
            0005000|E
            0006000|F
      r1    0006100*A
            0006200*B
            0006300*C
      r2    0006400*A
            0006500*B
            0006600*C
      r3    0006700*A
            0006800*B
            0006900*C
            0007000|G

      (2) xn.s pattern

        .repeat 3 times fullset copy skipping intermediate 2 line.    ||~v124R~

            cc     |A
            0000002|B
            cc     |C
            0000004|D
            a3.2   |E
            0000006|F
            0000007|G
            0000008|H
            0000009|I
            0000010|J
        ===>
            0001000|A
            0002000|B
            0003000|C
            0004000|D
            0005000|E
      r1 cc 0005100*A
            0005200*B
         cc 0005300*C
         s1 0006000|F
         s1 0007000|G
      r2 cc 0007100*A
            0007200*B
         cc 0007300*C
         s1 0008000|H
         s1 0009000|I
      r3 cc 0009100*A
            0009200*B
         cc 0009300*C
            0010000|J

      (3) x,b.s pattern

        .copy each 4 lines skipping intermediate 1 line for all copy source.

            cc     |1
            0002000|2
            0003000|3
            0004000|4
            0005000|5
            0006000|6
            0007000|7
            0008000|8
            0009000|9
            cc     |0
            a,4.1  |A
            0012000|B
            0013000|C
            0014000|D
        ===>
            0001000|1
            0002000|2
            0003000|3
            0004000|4
            0005000|5
            0006000|6
            0007000|7
            0008000|8
            0009000|9
            0010000|0
            0011000|A
      r1 b1 0011100*1
         b2 0011200*2
         b3 0011300*3
         b4 0011400*4
         s1 0012000|B
      r2 b1 0012100*5
         b2 0012200*6
         b3 0012300*7
         b4 0012400*8
         s1 0013000|C
      r3 b1 0013100*9
         b2 0013200*0
            0014000|D

      (4) xn,b.s pattern

        .copy each 2 lines skipping intermediate 1 line,repeat that 3 times.

            cc     |1
            0002000|2
            0003000|3
            0004000|4
            0005000|5
            0006000|6
            0007000|7
            0008000|8
            0009000|9
            cc     |0
            a3,2.1 |A
            0012000|B
            0013000|C
            0014000|D
        ===>
            0001000|1
            0002000|2
            0003000|3
            0004000|4
            0005000|5
            0006000|6
            0007000|7
            0008000|8
            0009000|9
            0010000|0
            0011000|A
      r1 b1 0011100*1
         b2 0011200*2
         s1 0012000|B
      r2 b1 0012100*3
         b2 0012200*4
         s1 0013000|C
      r3 b1 0013100*5
         b2 0013200*6
            0014000|D
            0015000|E
            0016000|F
            0017000|G
            0018000|H

        .case of b,s parameter for copy source specification.

            cc,3   |1
            0002000|2
            0003000|3
            0004000|4
            0005000|5
            0006000|6
            0007000|7
            0008000|8
            0009000|9
            cc.1   |0
            a3,2.1 |A
            0012000|B
            0013000|C
            0014000|D
            0015000|E
        ===>
            0001000|1
            0002000|2
            0003000|3
            0004000|4
            0005000|5
            0006000|6
            0007000|7
            0008000|8
            0009000|9
            0010000|0
            0011000|A
      r1 c1 0011100*1
         c2 0011200*2
            0012000|B
      r2 c3 0012100*3
         c1 0012200*5
            0013000|C
      r3 c2 0013100*6
         c3 0013200*7
            0014000|D
            0015000|E

      (5) case of copy source is external file.

        .simple case.

            "x2" contents
            *******|********** TOP OF FILE ********************
            0001000*0001
            0002000*0002
            0003000*0003
            0004000*0004
            *******|********** END OF FILE ********************

            ===>copy x2
            0000001|A
            a      |B
            0000003|C
        ===>
            0001000|A
            0002000|B
            0002100*0001
            0002200*0002
            0002300*0003
            0002400*0004
            0003000|C

        .effect of [,b][.s] parameter

            ===>copy x2
            0000001|A
            a2,3.1 |B
            0000003|C
        ===>
            0001000|A
            0002000|B
            0002100*0001
            0002200*0002
            0002300*0003
            0003000|C
            0003100*0004
            0004000|D

    = b command
        .set destination to the previous line of "b" command line,
         then execute "a" command.                                    ||~v124R~
         See "a" command for effect of n,b,s.
        .Specify "B"(Binary copy option) just after "B"(before) cmd.  ||~v125R~
           bbn,b.s                                                    ||~v125R~
        .Specify "C"(CID copy option) after "B" if exist.             ||~v125R~
           b[b]cn,b.s                                                 ||~v125R~

        .copy just before the line.

            c3     |A
            0000002|B
            0000003|C
            0000004|D
            0000005|E
            b      |F
            0000007|G
        ===>
            0001000|A
            0002000|B
            0003000|C
            0004000|D
            0005000|E
            0005100*A
            0005200*B
            0005300*C
            0006000|F
            0007000|G

    = c command
        .copy source line specification in combination with
         destination command(a/b/p/o/n).
        .n for xx-xx[n][,b][.s] pattern is not supported

      (1) x[n] pattern

        .copy following 3 lines.

            0000001|A
            c3     |B
            0000003|C
            0000004|D
            a      |E
            0000006|F
        ===>
            0001000|A
            0002000|B
            0003000|C
            0004000|D
            0005000|E
            0005100*B
            0005200*C
            0005300*D
            0006000|F

      (2) xx-xx pattern

        .copy source is by range specification format.                

            cc     |A
            0000002|B
            cc     |C
            0000004|D
            0000005|E
            b      |F
        ===>
            0001000|A
            0002000|B
            0003000|C
            0004000|D
            0005000|E
            0005100*A
            0005200*B
            0005300*C
            0006000|F

      (3) x[n][,b][.c] pattern

        .get copy source 4 times with 2 each lines skipping 1 line.

            c4,2,1 |A
            0000002|B
            0000003|C
            0000004|D
            0000005|E
            0000006|F
            0000007|G
            0000008|H
            0000009|I
            0000010|J
            0000011|K
            0000012|L
            0000013|M
            0000014|N
            a      |O
            0000016|P
        ===>
     r1 b1  0001000|A
        b2  0002000|B
        s1  0003000|C
     r2 b1  0004000|D
        b2  0005000|E
        s1  0006000|F
     r3 b1  0007000|G
        b2  0008000|H
        s1  0009000|I
     r4 b1  0010000|J
        b2  0011000|K
            0012000|L
            0013000|M
            0014000|N
            0015000|O
     r1 b1  0015100*A
        b2  0015200*B
     r2 b1  0015300*D
        b2  0015400*E
     r3 b1  0015500*G
        b2  0015600*H
     r4 b1  0015700*J
        b2  0015800*K
            0016000|P

      (4) xx-xx[,b][.c] pattern

        .get each 3 lines skipping 2 lines from the range of copy source.

            cc,3.2 |A
            0000002|B
            0000003|C
            0000004|D
            0000005|E
            0000006|F
            0000007|G
            0000008|H
            0000009|I
            0000010|J
            0000011|K
            cc     |L
            0000013|M
            a      |N
            0000015|O
        ===>
     rr b1  0001000|A
        b2  0002000|B
        b3  0003000|C
        s1  0004000|D
        s2  0005000|E
     rr b1  0006000|F
        b2  0007000|G
        b3  0008000|H
        s1  0009000|I
        s2  0010000|J
     rr b1  0011000|K
        b2> 0012000|L
            0013000|M
            0014000|N
     rr b1  0014100*A
        b2  0014200*B
        b3  0014300*C
     rr b1  0014400*F
        b2  0014500*G
        b3  0014600*H
     rr b1  0014700*K
        b2  0014800*L
            0015000|O

    = d command
        .delete lines
        .n is not supported for xx-xx[n][,b][.s] pattern.

      (1) x[n] pattern

        .delete following 3 lines.

            0000001|A
            d3     |B
            0000003|C
            0000004|D
            0000005|E
            0000006|F
        ===>
            0001000|A
            0005000|E

      (2) xx-xx pattern

        .delete the range of lines.

            0000001|A
            dd     |B
            0000003|C
            0000004|D
            dd     |E
            0000006|F
        ===>
            0001000|A
            0006000|F

      (3) x[n][,b][.s] pattern

        .repeat 3 times to delete 2 lines with intermediate 4 lines left.

            0000001|A
     r1 d1  d3,2.4 |B
        d2  0000003|C
        s1  0000004|D
        s2  0000005|E
        s3  0000006|F
        s4  0000007|G
     r2 d1  0000008|H
        d2  0000009|I
        s1  0000010|J
        s2  0000011|K
        s3  0000012|L
        s4  0000013|M
     r3 d1  0000014|N
        d2  0000015|O
            0000016|P
        ===>
            0001000|A
            0004000|D
            0005000|E
            0006000|F
            0007000|G
            0010000|J
            0011000|K
            0012000|L
            0013000|M
            0016000|P

      (4) xx-xx[,b][.s] pattern

        .repeat in the range to delete 3 lines with intermediate 2 lines left.

            0000001|A
    rr d1   dd,3.2 |B
       d2   0000003|C
       d3   0000004|D
       s1   0000005|E
       s2   0000006|F
    rr d1   0000007|G
       d2   0000008|H
       d3   0000009|I
       s1   0000010|J
       s2   0000011|K
    rr d1   0000012|L
       d2   0000013|M
       d3   0000014|N
       s1   dd     |O
            0000016|P
        ===>
            0001000|A
            0005000|E
            0006000|F
            0010000|J
            0011000|K
            0015000|O

    = f command
        .re-display from top of the hidden lines.
        .xx-xx format is not supported.

      (1) x[n] pattern

       .display top 3 lines
            0001000|A
            f3     |-     13 line excluded ------------------------------
            0015000|O
        ===>
            0001000|A
            0002000|B
            0003000|C
            0004000|D
            -------|-     10 line excluded -----------------------
            0015000|O

      (2) x[n][,b][.s] pattern

        .repeat 3 times that display 2 lines with intermediate 1 line left.||~v124R~

            0001000|A
            f3,2.1 |-     13 line excluded ---------------
            0015000|O
        ===>
            0001000|A
            0002000|B
            0003000|C
            -------|-      1 line excluded ----------------
            0005000|E
            0006000|F
            -------|-      1 line excluded ----------------
            0008000|H
            0009000|I
            -------|-      5 line excluded ----------------
            0015000|O

    = i command
        .insert null line.
        .n is repeat count for xn,b.s pattern,but insert line count
         for xx-xxn[,b][.s] pattern.                                  ||~v124R~
        .In pattern optionally(OPT INS_LINE cmd) set the automatic line insertion mode by enter key.||~v124R~
         To stop automatic insertion move cursor out of the line last inserted||~v124R~
         or leave the line null(length=0).                            ||~v124R~
         Last inserted null line is deleted by enter key just after the line inserted.||~v124R~

      (1) x[n] pattern

        .insert 4 null lines.

            0000001|A
            0000002|B
            i4     |C
            0000004|D
            0000005|E
        ===>
            0001000|A
            0002000|B
            0003000|C
       i1   0003100*
       i2   0003200*
       i3   0003300*
       i4   0003400*

      (2) xx-xx[n] pattern

        .insert 3 null lines after each line of the range.

            0004000|D
            0000002|B
            ii3    |C
            0000004|D
            0000005|E
            0000006|F
            ii     |G
            0000008|H
        ===>
            0003000|C
       i1   0003100*
       i2   0003200*
       i3   0003300*
            0004000|D
       i1   0004100*
       i2   0004200*
       i3   0004300*
            0005000|E
       i1   0005100*
       i2   0005200*
       i3   0005300*
            0006000|F
       i1   0006100*
       i2   0006200*
       i3   0006300*
            0007000|G
       i1   0007100*
       i2   0007200*
       i3   0007300*
            0008000|H

      (3) x[n][,b][,s] pattern

        .repeat 2 times to insert 1 null line after each 4 lines and to skip 3 lines.

            0000001|A
            0000002|B
            0000003|C
            i2,4.3 |D
            0000005|E
            0000006|F
        ===>
            0001000|A
            0002000|B
            0003000|C
            0004000|D
      r1 b1 0004100*
            0005000|E
         b2 0005100*
            0006000|F
         b3 0006100*
            0007000|G
         b4 0007100*
         s1 0008000|H
         s2 0009000|I
         s3 0010000|J
      r2    0011000|K
         b1 0011100*
            0012000|L
         b2 0012100*
            0013000|M
         b3 0013100*
            0014000|N
         b4 0014100*
            0015000|O
            0016000|P

      (4) xx-xx[n][,b][,s] pattern

        .repeat in the range to insert 3 null lines after each 4 lines and to skip 1 lines.

            0000001|A
            0000002|B
            0000003|C
            ii3    |D
            0000005|E
            0000006|F
            0000007|G
            0000008|H
            0000009|I
            0000010|J
            0000011|K
            0000012|L
            0000013|M
            0000014|N
            0000015|O
            0000016|P
            0000017|Q
            0000018|R
            ii,4.1 |S
            0000020|T
        ===>
            0001000|A
            0002000|B
            0003000|C
            0004000|D
    rr b1-1 0004100*
       b1-2 0004200*
       b1-3 0004300*
            0005000|E
       b2-1 0005100*
       b2-2 0005200*
       b2-3 0005300*
            0006000|F
       b3-1 0006100*
       b3-2 0006200*
       b3-3 0006300*
            0007000|G
       b4-1 0007100*
       b4-2 0007200*
       b4-3 0007300*
       s1   0008000|H
       s2   0009000|I
    rr b1-1 0009100*
       b1-2 0009200*
       b1-3 0009300*
            0010000|J
       b2-1 0010100*
       b2-2 0010200*
       b2-3 0010300*
            0011000|K
       b3-1 0011100*
       b3-2 0011200*
       b3-3 0011300*
            0012000|L
       b4-1 0012100*
       b4-2 0012200*
       b4-3 0012300*
       s1   0013000|M
       s2   0014000|N
    rr b1-1 0014100*
       b1-2 0014200*
       b1-3 0014300*
            0015000|O
       b2-1 0015100*
       b2-2 0015200*
       b2-3 0015300*
            0016000|P
       b3-1 0016100*
       b3-2 0016200*
       b3-3 0016300*
            0017000|Q
       b4-1 0017100*
       b4-2 0017200*
       b4-3 0017300*
       s1   0018000|R
            0019000|S
            0020000|T

    = j command
        .concatenate the lines.                                       ||~v124R~

      (1) x[n][,b][,s] pattern

        .repeat 5 times to concatenate each 2 lines                   ||~v124R~

            j5     |  A
            0002000|  B
            0003000|  C
            0004000|  D
            0005000|  E
            0006000|  F
            0007000|  G
            0008000|  H
            0009000|  I
            0010000|  J
            0011000|  K
            0012000|  L
        ===>
            0001000*  A  B
            0003000*  C  D
            0005000*  E  F
            0007000*  G  H
            0009000*  I  J
            0011000|  K
            0012000|  L

        .repeat 4 times to repeat 3 times concatenation of 2 lines    ||~v124R~
         and to skip 1 line.

            j4,3.1 |  A
            0002000|  B
            0003000|  C
            0004000|  D
            0005000|  E
            0006000|  F
            0007000|  G
            0008000|  H
            0009000|  I
            0010000|  J
            0011000|  K
            0012000|  L
            0013000|  M
            0014000|  N
            0015000|  O
            0016000|  P
            0017000|  Q
            0018000|  R
            0019000|  S
            0020000|  T
            0021000|  U
            0022000|  V
            0023000|  W
            0024000|  X
            0025000|  Y
            0027000|  0
            0028000|  1
            0029000|  2
            0030000|  3
        ===>
      r1 b1 0001000*  A  B
         b2 0003000*  C  D
         b3 0005000*  E  F
         s1 0007000|  G
      r2 b1 0008000*  H  I
         b2 0010000*  J  K
         b3 0012000*  L  M
         s1 0014000|  N
      r3 b1 0015000*  O  P
         b2 0017000*  Q  R
         b3 0019000*  S  T
         s1 0021000|  U
      r4 b1 0022000*  V  W
         b2 0024000*  X  Y
         b3 0026000*  Z  0
            0028000|  1
            0029000|  2
            0030000|  3

      (2) xx-xx[n][,b][.s] pattern

        .repeat in the range to concatenate each 2 lines              ||~v124R~

            jj     |  A
            0002000|  B
            0003000|  C
            0004000|  D
            jj     |  E
            0006000|  F
            0007000|  G
            0008000|  H
        ===>
            0001000*  A  B
            0003000*  C  D
            0005000|  E
            0006000|  F
            0007000|  G
            0008000|  H

        .repeat in the range to repeat 3 times concatenation of 2 lines||~v124R~
         and to skip 1 line.

            jj,3   |  A
            0002000|  B
            0003000|  C
            0004000|  D
            0005000|  E
            0006000|  F
            0007000|  G
            0008000|  H
            0009000|  I
            0010000|  J
            0011000|  K
            0012000|  L
            0013000|  M
            0014000|  N
            0015000|  O
            0016000|  P
            0017000|  Q
            jj.1   |  R
            0019000|  S
            0020000|  T
        ===>
      rr b1 0001000*  A  B
         b2 0003000*  C  D
         b3 0005000*  E  F
         s1 0007000|  G
      rr b1 0008000*  H  I
         b2 0010000*  J  K
         b3 0012000*  L  M
         s1 0014000|  N
      rr b1 0015000*  O  P
         b2 0017000*  Q  R
            0019000|  S
            0020000|  T

        .repeat in the range to repeat 2 times concatenation of 3 lines||~v124R~
         and to skip 1 line.

            jj3    |  A
            0002000|  B
            0003000|  C
            0004000|  D
            0005000|  E
            0006000|  F
            0007000|  G
            0008000|  H
            0009000|  I
            0010000|  J
            0011000|  K
            0012000|  L
            0013000|  M
            0014000|  N
            0015000|  O
            0016000|  P
            0017000|  Q
            jj,2.1 |  R
            0019000|  S
        ===>
      rr b1 0001000*  A  B  C
         b2 0004000*  D  E  F
         s1 0007000|  G
      rr b1 0008000*  H  I  J
         b2 0011000*  K  L  M
         s1 0014000|  N
      rr b1 0015000*  O  P  Q
            0018000|  R
            0019000|  S

    = l command
        .re-display from last of the hidden lines.
        .xx-xx format is not supported.

      (1) x[n] pattern

        .re-display 3 lines from bottom of hidden lines.

            0001000|A
            l3     |-     13 line excluded ------------------
            0015000|O
        ===>
            0001000|A
            -------|-     10 line excluded ----------------
            0012000|L
            0013000|M
            0014000|N
            0015000|O

      (2) x[n][,b][.s] pattern

        .repeat 3 times that display 2 lines with intermediate 1 lines left.||~v124R~

            0001000|A
            l3,2.1 |-     13 line excluded ---------------
            0015000|O
        ===>
            0001000|A
            -------|-      5 line excluded -----------------------
            0007000|G
            0008000|H
            -------|-      1 line excluded -----------------------
            0000000|J
            0011000|K
            -------|-      1 line excluded -----------------------
            0013000|M
            0014000|N
            0015000|O

    = m command
        .move source line specification in combination with
         destination command(a/b/p/o/n).
        .n for xx-xx[n][,b][.s] pattern is not supported

      (1) x[n] pattern

        .move following 3 lines.

            0000001|A
            m3     |B
            0000003|C
            0000004|D
            a      |E
            0000006|F
        ===>
            0001000|A
            0005000|E
            0005100*B
            0005200*C
            0005300*D
            0006000|F

      (2) xx-xx pattern

        .move source is by range specification format.                

            0000001|A
            mm     |B
            mm     |C
            0000004|D
            0000005|E
            b      |F
        ===>
            0001000|A
            0004000|D
            0005000|E
            0005100*B
            0005200*C
            0006000|F

      (3) x[n][,b][.c] pattern

        .get move source 4 times with 2 each lines skipping 1 line.

            0000001|A
     r1 b1  m4,2.1 |B
        b2  0000003|C
        s1  0000004|D
     r2 b1  0000005|E
        b2  0000006|F
        s1  0000007|G
     r3 b1  0000008|H
        b2  0000009|I
        s1  0000010|J
     r4 b1  0000011|K
        b2  0000012|L
        s1  0000013|M
            0000014|N
            a      |O
            0000016|P
        ===>
            0001000|A
     r1 s1  0004000|D
     r2 s1  0007000|G
     r3 s1  0010000|J
     r4 s1  0013000|M
            0014000|N
            0015000|O
     r1 b1  0015100*B
        b2  0015200*C
     r2 b1  0015300*E
        b2  0015400*F
     r3 b1  0015500*H
        b2  0015600*I
     r4 b1  0015700*K
        b2  0015800*L
            0016000|P

      (4) xx-xx[,b][.c] pattern

        .get each 3 lines skipping 2 lines from the range of move source.

            0000001|A
      rr b1 mm,3.2 |B
         b2 0000003|C
         b3 0000004|D
         s1 0000005|E
         s2 0000006|F
      rr b1 0000007|G
         b2 0000008|H
         b3 0000009|I
         s1 0000010|J
         s2 0000011|K
      rr b1 mm     |L
           0000013|M
           a      |N
           0000015|O
       ===>
           0001000|A
     rr s1 0005000|E
        s2 0006000|F
     rr s1 0010000|J
        s2 0011000|K
           0013000|M
           0014000|N
     rr b1 0014100*B
        b2 0014200*C
        b3 0014300*D
     rr b1 0014400*G
        b2 0014500*H
        b3 0014600*I
        b1 0014700*L
           0015000|O

    = n command
         .only overwrite method is different with "p" command.
          p cmd:paste all chars of the source line.
          o cmd:only space chars of destination line are overwritten
                by char of corresponding position of source line.
          n cmd:only non-space char of source line are selected
                and overwrite corresponding position of destination line.||~v124R~

            c      |  :  :  .
            nn     |01.23.51-123
            0003000|01.23.55-228
            0004000|01.24.12-560
            0005000|02.13.01-125
            0006000|02.43.33-063
            nn     |03.03.34-970
        ===>
            0001000|  :  :  .
            0002000*01:23:51.123
            0003000*01:23:55.228
            0004000*01:24:12.560
            0005000*02:13:01.125
            0006000*02:43:33.063

    = o command
         .only overwrite method is different with "p" command.
          p cmd:paste all chars of the source line.
          o cmd:only space chars of destination line are overwritten
                by char of corresponding position of source line.
          n cmd:only non-space char of source line are selected
                and overwrite corresponding position of destination line.||~v124R~


            c      |  :  :  :
            oo     |02/11/05
            0003000|01 23 51 123
            0004000|01 23 55 228
            0005000|01 24 12 560
            0006000|02 13 01 125
            0007000|02/11/06
            0008000|01 14 12 160
            oo     |02 16 01 225
        ===>
            0001000|  :  :  :
            0002000*02/11/05:
            0003000*01:23:51:123
            0004000*01:23:55:228
            0005000*01:24:12:560
            0006000*02:13:01:125
            0007000*02/11/06:
            0008000*01:14:12:160
            0009000*02:16:01:225
            0007000*03:03:34.970

    = p command
        .specify destination of m(Move),c(Copy) line command
         it is not used as destination of COPy,MOVe command to copy the external file.
        .source line text is inserted into the destination line if char-Ins mode,
         overwrite the destination line if char-Rep mode(toggled by Ins key).
        .if cursor is on the line of destination specified,
         Insert/Replace start at the position.
        .n,b,s parameter pattern
         pn     : copy n times full set of source lines.
         pn.s   : copy full set of source lines then skip s lines,
                  repeat that n times.
         p,b.s  : get and copy b lines from source then skip s lines,
                  repeat that until source is exhausted.
         pn,b.s : get and copy b lines from source then skip s lines,
                  repeat that n times(break if source is exhausted).
         for p[n][,b][.s] pattern,operation break if copy source is exhausted
         but for pp-pp[,b][.s] pattern,operation continues until      ||~v124R~
         all target lines are pasted wrapping to the top of source lines.
        .n is not supported for xx-xx pattern.                        ||~v124R~

      (1) x[n] pattern

        .when cursor is out of file text area.

            cc     |    a
            0002000|   bbb
            0003000|  ccccc
            cc     | ddddddd
            0005000|
            p      |AAAAAAAAAAAA
            0007000|BBBBBBBBBBBB
            0008000|CCCCCCCCCCCC
            0009000|DDDDDDDDDDDD
            0010000|EEEEEEEEEEEE
        ===>

          result of Rep mode

            0001000|    a
            0002000|   bbb
            0003000|  ccccc
            0004000| ddddddd
            0005000|
            0006000*    aAAAAAAA
            0007000*   bbbBBBBBB
            0008000*  cccccCCCCC
            0009000* dddddddDDDD
            0010000|EEEEEEEEEEEE

          result of Ins mode

            0001000|    a
            0002000|   bbb
            0003000|  ccccc
            0004000| ddddddd
            0005000|
            0006000*    aAAAAAAAAAAAA
            0007000*   bbbBBBBBBBBBBBB
            0008000*  cccccCCCCCCCCCCCC
            0009000* dddddddDDDDDDDDDDDD
            0010000|EEEEEEEEEEEE

        .when cursor is on the text area of the destination specification line.

            cc     |    a
            0002000|   bbb
            0003000|  ccccc
            cc     | ddddddd
            0005000|
            0006000|AAAAAAAAAAAA
            p      |BBBBBBBBxBBB
            0008000|CCCCCCCCCCCC
            0009000|DDDDDDDDDDDD
            0010000|EEEEEEEEEEEE
        ===>

          result of Rep mode

            0001000|    a
            0002000|   bbb
            0003000|  ccccc
            0004000| ddddddd
            0005000|
            0006000|AAAAAAAAAAAA
            0007000*BBBBBBBB    a
            0008000*CCCCCCCC   bbb
            0009000*DDDDDDDD  ccccc
            0010000*EEEEEEEE ddddddd
            0011000|FFFFFFFFFFFF

          result of Ins mode

            0001000|    a
            0002000|   bbb
            0003000|  ccccc
            0004000| ddddddd
            0005000|
            0006000|AAAAAAAAAAAA
            0007000*BBBBBBBB    axBBB
            0008000*CCCCCCCC   bbbCCCC
            0009000*DDDDDDDD  cccccDDDD
            0010000*EEEEEEEE dddddddEEEE
            0011000|FFFFFFFFFFFF

      (following samples are for the case of Rep mode and cursor is on lineno column)||~v124R~

        .case of with repeat count.

            cc     |    a
            0002000|   bbb
            cc     |  ccccc
            0004000|
            p3     |AAAAAAAAAAAA
            0006000|BBBBBBBBBBBB
            0007000|CCCCCCCCCCCC
            0008000|DDDDDDDDDDDD
            0009000|EEEEEEEEEEEE
            0010000|FFFFFFFFFFFF
            0011000|GGGGGGGGGGGG
            0012000|HHHHHHHHHHHH
            *******|********** END OF FILE ************************
        ===>
            0001000|    a
            0002000|   bbb
            0003000|  ccccc
            0004000|
      r1    0005000*    aAAAAAAA
            0006000*   bbbBBBBBB
            0007000*  cccccCCCCC
      r2    0008000*    aDDDDDDD
            0009000*   bbbEEEEEE
            0010000*  cccccFFFFF
      r3    0011000*    aGGGGGGG
            0012000*   bbbHHHHHH
            *******|********** END OF FILE ************************

      (2) xn.s pattern

        .repeat 3 times fullset paste skipping intermediate 2 line.   ||~v124R~

            cc     | 1
            0002000| 2
            0003000| 3
            cc     | 4
            0005000| 5
            0006000| 6
            0007000| 7
            0008000| 8
            0009000| 9
            0010000| 0
            p3.2   |AAAAAAAAAAAA
            0012000|BBBBBBBBBBBB
            0013000|CCCCCCCCCCCC
            0014000|DDDDDDDDDDDD
            0015000|EEEEEEEEEEEE
            0016000|FFFFFFFFFFFF
            0017000|GGGGGGGGGGGG
            0018000|HHHHHHHHHHHH
            0019000|IIIIIIIIIIII
            0020000|JJJJJJJJJJJJ
            0021000|KKKKKKKKKKKK
            0022000|LLLLLLLLLLLL
            0023000|MMMMMMMMMMMM
            0024000|NNNNNNNNNNNN
            0025000|OOOOOOOOOOOO
            0026000|PPPPPPPPPPPP
            0027000|QQQQQQQQQQQQ
        ===>
            0001000| 1
            0002000| 2
            0003000| 3
            0004000| 4
            0005000| 5
            0006000| 6
            0007000| 7
            0008000| 8
            0009000| 9
            0010000| 0
      r1    0011000* 1AAAAAAAAAA
            0012000* 2BBBBBBBBBB
            0013000* 3CCCCCCCCCC
            0014000* 4DDDDDDDDDD
         s1 0015000|EEEEEEEEEEEE
         s2 0016000|FFFFFFFFFFFF
      r2    0017000* 1GGGGGGGGGG
            0018000* 2HHHHHHHHHH
            0019000* 3IIIIIIIIII
            0020000* 4JJJJJJJJJJ
         s1 0021000|KKKKKKKKKKKK
         s2 0022000|LLLLLLLLLLLL
      r3    0023000* 1MMMMMMMMMM
            0024000* 2NNNNNNNNNN
            0025000* 3OOOOOOOOOO
            0026000* 4PPPPPPPPPP
            0027000|QQQQQQQQQQQQ

      (3) x,b.s pattern

        .paste each 3 lines then skip 2 line at destination,
         repeat that until source lines are exhausted.

            cc     | 1
            0002000| 2
            0003000| 3
            0004000| 4
            0005000| 5
            0006000| 6
            0007000| 7
            0008000| 8
            0009000| 9
            cc     | 0
            p,3.2  |AAAAAAAAAAAA
            0012000|BBBBBBBBBBBB
            0013000|CCCCCCCCCCCC
            0014000|DDDDDDDDDDDD
            0015000|EEEEEEEEEEEE
            0016000|FFFFFFFFFFFF
            0017000|GGGGGGGGGGGG
            0018000|HHHHHHHHHHHH
            0019000|IIIIIIIIIIII
            0020000|JJJJJJJJJJJJ
            0021000|KKKKKKKKKKKK
            0022000|LLLLLLLLLLLL
            0023000|MMMMMMMMMMMM
            0024000|NNNNNNNNNNNN
            0025000|OOOOOOOOOOOO
            0026000|PPPPPPPPPPPP
            0027000|QQQQQQQQQQQQ
        ===>
            0001000| 1
            0002000| 2
            0003000| 3
            0004000| 4
            0005000| 5
            0006000| 6
            0007000| 7
            0008000| 8
            0009000| 9
            0010000| 0
      rr b1 0011000* 1AAAAAAAAAA
         b2 0012000* 2BBBBBBBBBB
         b3 0013000* 3CCCCCCCCCC
         s1 0014000|DDDDDDDDDDDD
         s2 0015000|EEEEEEEEEEEE
      rr b1 0016000* 4FFFFFFFFFF
         b2 0017000* 5GGGGGGGGGG
         b3 0018000* 6HHHHHHHHHH
         s1 0019000|IIIIIIIIIIII
         s2 0020000|JJJJJJJJJJJJ
      rr b1 0021000* 7KKKKKKKKKK
         b2 0022000* 8LLLLLLLLLL
         b3 0023000* 9MMMMMMMMMM
         s1 0024000|NNNNNNNNNNNN
         s2 0025000|OOOOOOOOOOOO
      rr b1 0026000* 0PPPPPPPPPP
            0027000|QQQQQQQQQQQQ

      (4) xn,b.s pattern

        .paste each 2 lines then skip 1 line at destination,
         repeat that 3 times.

            cc     | 1
            0002000| 2
            0003000| 3
            0004000| 4
            0005000| 5
            0006000| 6
            0007000| 7
            0008000| 8
            0009000| 9
            cc     | 0
            p3,2.1 |AAAAAAAAAAAA
            0012000|BBBBBBBBBBBB
            0013000|CCCCCCCCCCCC
            0014000|DDDDDDDDDDDD
            0015000|EEEEEEEEEEEE
            0016000|FFFFFFFFFFFF
            0017000|GGGGGGGGGGGG
            0018000|HHHHHHHHHHHH
            0019000|IIIIIIIIIIII
            0020000|JJJJJJJJJJJJ
            0021000|KKKKKKKKKKKK
            0022000|LLLLLLLLLLLL
            0023000|MMMMMMMMMMMM
            0024000|NNNNNNNNNNNN
            0025000|OOOOOOOOOOOO
            0026000|PPPPPPPPPPPP
            0027000|QQQQQQQQQQQQ
        ===>
            0001000| 1
            0002000| 2
            0003000| 3
            0004000| 4
            0005000| 5
            0006000| 6
            0007000| 7
            0008000| 8
            0009000| 9
            0010000| 0
      r1 b1 0011000* 1AAAAAAAAAA
         b2 0012000* 2BBBBBBBBBB
         s1 0013000|CCCCCCCCCCCC
      r2 b1 0014000* 3DDDDDDDDDD
         b2 0015000* 4EEEEEEEEEE
         s1 0016000|FFFFFFFFFFFF
      r3 b1 0017000* 5GGGGGGGGGG
         b2 0018000* 6HHHHHHHHHH
            0019000|IIIIIIIIIIII
            0020000|JJJJJJJJJJJJ

      (5) xx-xx pattern

        .fill destination lines.(use source repeatedly)

            cc     | 1
            0002000| 2
            0003000| 3
            cc     | 4
            0005000| 5
            0006000| 6
            0007000| 7
            0008000| 8
            0009000| 9
            0010000| 0
            pp     |AAAAAAAAAAAA
            0012000|BBBBBBBBBBBB
            0013000|CCCCCCCCCCCC
            0014000|DDDDDDDDDDDD
            0015000|EEEEEEEEEEEE
            0016000|FFFFFFFFFFFF
            0017000|GGGGGGGGGGGG
            0018000|HHHHHHHHHHHH
            pp     |IIIIIIIIIIII
            0020000|JJJJJJJJJJJJ
        ===>
            0001000| 1
            0002000| 2
            0003000| 3
            0004000| 4
            0005000| 5
            0006000| 6
            0007000| 7
            0008000| 8
            0009000| 9
            0010000| 0
      rr c1 0011000* 1AAAAAAAAAA
         c2 0012000* 2BBBBBBBBBB
         c3 0013000* 3CCCCCCCCCC
         c4 0014000* 4DDDDDDDDDD
      rr c1 0015000* 1EEEEEEEEEE
         c2 0016000* 2FFFFFFFFFF
         c3 0017000* 3GGGGGGGGGG
         c4 0018000* 4HHHHHHHHHH
      rr c1 0019000* 1IIIIIIIIII
            0020000|JJJJJJJJJJJJ

      (6) xx-xx.s pattern

        .paste fullset of source until fill destination range
         with intermediate 2 lines skip.

            cc     | 1
            0002000| 2
            0003000| 3
            cc     | 4
            0005000| 5
            0006000| 6
            0007000| 7
            0008000| 8
            0009000| 9
            0010000| 0
            pp.2   |AAAAAAAAAAAA
            0012000|BBBBBBBBBBBB
            0013000|CCCCCCCCCCCC
            0014000|DDDDDDDDDDDD
            0015000|EEEEEEEEEEEE
            0016000|FFFFFFFFFFFF
            0017000|GGGGGGGGGGGG
            0018000|HHHHHHHHHHHH
            0019000|IIIIIIIIIIII
            0020000|JJJJJJJJJJJJ
            0021000|KKKKKKKKKKKK
            0022000|LLLLLLLLLLLL
            pp     |MMMMMMMMMMMM
            0024000|NNNNNNNNNNNN
        ===>
            0001000| 1
            0002000| 2
            0003000| 3
            0004000| 4
            0005000| 5
            0006000| 6
            0007000| 7
            0008000| 8
            0009000| 9
            0010000| 0
      rr c1 0011000* 1AAAAAAAAAA
         c2 0012000* 2BBBBBBBBBB
         c3 0013000* 3CCCCCCCCCC
         c4 0014000* 4DDDDDDDDDD
         s1 0015000|EEEEEEEEEEEE
         s2 0016000|FFFFFFFFFFFF
      rr c1 0017000* 1GGGGGGGGGG
         c2 0018000* 2HHHHHHHHHH
         c3 0019000* 3IIIIIIIIII
         c4 0020000* 4JJJJJJJJJJ
         s1 0021000|KKKKKKKKKKKK
         s2 0022000|LLLLLLLLLLLL
      rr c1 0023000* 1MMMMMMMMMM
            0024000|NNNNNNNNNNNN

      (7) xx-xx,b.s pattern

        .paste each 3 lines from source lineset then skip 2 lines
         at destination,repeat that until fill destination range.
         if source exhausted,wrap to top of source then continues.

            cc     | 1
            0002000| 2
            0003000| 3
            cc     | 4
            0005000| 5
            0006000| 6
            0007000| 7
            0008000| 8
            0009000| 9
            0010000| 0
            pp,3   |AAAAAAAAAAAA
            0012000|BBBBBBBBBBBB
            0013000|CCCCCCCCCCCC
            0014000|DDDDDDDDDDDD
            0015000|EEEEEEEEEEEE
            0016000|FFFFFFFFFFFF
            0017000|GGGGGGGGGGGG
            0018000|HHHHHHHHHHHH
            0019000|IIIIIIIIIIII
            0020000|JJJJJJJJJJJJ
            0021000|KKKKKKKKKKKK
            0022000|LLLLLLLLLLLL
            pp.2   |MMMMMMMMMMMM
            0024000|NNNNNNNNNNNN
        ===>
            0001000| 1
            0002000| 2
            0003000| 3
            0004000| 4
            0005000| 5
            0006000| 6
            0007000| 7
            0008000| 8
            0009000| 9
            0010000| 0
      rr b1 0011000* 1AAAAAAAAAA
         b2 0012000* 2BBBBBBBBBB
         b3 0013000* 3CCCCCCCCCC
         s1 0014000|DDDDDDDDDDDD
         s2 0015000|EEEEEEEEEEEE
      rr b1 0016000* 4FFFFFFFFFF
         b2 0017000* 1GGGGGGGGGG
         b3 0018000* 2HHHHHHHHHH
         s1 0019000|IIIIIIIIIIII
         s2 0020000|JJJJJJJJJJJJ
      rr b1 0021000* 3KKKKKKKKKK
         b2 0022000* 4LLLLLLLLLL
         b3 0023000* 1MMMMMMMMMM
            0024000|NNNNNNNNNNNN

    = r command
        .repeat lines.
        .r[n][,b][,s] pattern is slightly different with others,
          it repeat n times to repeat b lines once then skip s lines.

      (1) x[n] pattern

        .repeat a line 3 times.

            r3     |A
            0000002|B
            0000003|C
        ===>
            0001000|A
       r1   0001100*A
       r2   0001200*A
       r3   0001300*A
            0002000|B

      (2) xx-xx[n] pattern

        .repeat the range 4 times.

            rr     |A
            0000002|B
            rr4    |C
            0000004|D
        ===>
            0001000|A
            0002000|B
            0003000|C
       r1   0003010*A
            0003020*B
            0003030*C
       r2   0003040*A
            0003050*B
            0003060*C
       r3   0003070*A
            0003080*B
            0003090*C
       r4   0003100*A
            0003110*B
            0003120*C
            0004000|D

      (3) x[n][,b][.s] pattern

        .repeat 5 times to repeat 2 lines and to skip 1 line.

            r5,2.1 |A
            0000002|B
            0000003|C
            0000004|D
            0000005|E
            0000006|F
            0000007|G
            0000008|H
            0000009|I
            0000010|J
            0000011|K
            0000012|L
            0000013|M
            0000014|N
            0000015|O
        ===>
            0001000|A
            0002000|B
      r1 b1 0002100*A
         b2 0002200*B
         s1 0003000|C
            0004000|D
            0005000|E
      r2 b1 0005100*D
         b2 0005200*E
         s1 0006000|F
            0007000|G
            0008000|H
      r3 b1 0008100*G
         b2 0008200*H
         s1 0009000|I
            0010000|J
            0011000|K
      r4 b1 0011100*J
         b2 0011200*K
         s1 0012000|L
            0013000|M
            0014000|N
      r5 b1 0014100*M
         b2 0014200*N
            0015000|O

        .case of skip=0

            r5,1   |A
            0000002|B
            0000003|C
            0000004|D
            0000005|E
            0000006|F
            0000007|G
        ===>
            0001000|A
      r1    0001100*A
            0002000|B
      r2    0002100*B
            0003000|C
      r3    0003100*C
            0004000|D
      r4    0004100*D
            0005000|E
      r5    0005100*E
            0006000|F
            0007000|G

      (4) xx-xx[n][,b][.s] pattern

        .repeat in the range to repeat 5 lines and to skip 2 lines.

            rr,5.2 |A
            0000002|B
            0000003|C
            0000004|D
            0000005|E
            0000006|F
            0000007|G
            0000008|H
            0000009|I
            0000010|J
            0000011|K
            0000012|L
            0000013|M
            0000014|N
            rr     |O
            0000016|P
        ===>
            0001000|A
            0002000|B
            0003000|C
            0004000|D
            0005000|E
      rr-1  0005100*A
      rr-2  0005200*B
      rr-3  0005300*C
      rr-4  0005400*D
      rr-5  0005500*E
      s1    0006000|F
      s2    0007000|G
            0008000|H
            0009000|I
            0010000|J
            0011000|K
            0012000|L
      rr-1  0012100*H
      rr-2  0012200*I
      rr-3  0012300*J
      rr-4  0012400*K
      rr-5  0012500*L
      s1    0013000|M
      s2    0014000|N
            0015000|O
      rr-1  0015100*O
            0016000|P

        .repeat in the range to repeat 3 lines 2 times and to skip 1 line.||~v124R~

            rr2,3.1|A
            0000002|B
            0000003|C
            0000004|D
            0000005|E
            0000006|F
            0000007|G
            0000008|H
            rr     |I
            0000010|J
        ===>
            0001000|A
            0002000|B
            0003000|C
      r1-1  0003100*A
      r1-2  0003200*B
      r1-3  0003300*C
      r2-1  0003400*A
      r2-2  0003500*B
      r2-3  0003600*C
      s1    0004000|D
            0005000|E
            0006000|F
            0007000|G
      r1-1  0007100*E
      r1-2  0007200*F
      r1-3  0007300*G
      r2-1  0007400*E
      r2-2  0007500*F
      r2-3  0007600*G
      s1    0008000|H
            0009000|I
      r1-1  0009100*I
      r1-2  0009200*I
            0010000|J

    = s/TS command                                                    
        .split the line into the 2 lines at the cursor position
         on any line. null line is inserted for shorter line than cursor pos.
         When cursor is on hex line of vertical hex display mode,     ||~v125R~
         no replacement of split DBCS to space is not done.           ||~v125I~
         Assume cursor is on column 3 in the following examples.      ||~v125R~
        .n is not supported for xx-xx pattern

      (1) x[n][,b][.s] pattern

        .split following 4 lines

            s4     |AAAAAAAAAAAAAAAAA
            0002000|12
            0003000|CCCCCCCCCCCCCCCCC
            0004000|DDDDDDDDDDDDDDDDD
            0005000|EEEEEEEEEEEEEEEEE
        ===>
       r1   0001000*AA
            0001100*AAAAAAAAAAAAAAA
       r2   0002000|12
            0002100*
       r3   0003000*CC
            0003100*CCCCCCCCCCCCCCC
       r4   0004000*DD
            0004100*DDDDDDDDDDDDDDD
            0005000|EEEEEEEEEEEEEEEEE

        .repeat 3 times to split 2 lines and to skip 1 line.

            s3,2.1 |AAAAAAAAAAAAAAAAA
            0002000|12
            0003000|CCCCCCCCCCCCCCCCC
            0004000|DDDDDDDDDDDDDDDDD
            0005000|EEEEEEEEEEEEEEEEE
            0006000|FFFFFFFFFFFFFFFFF
            0007000|GGGGGGGGGGGGGGGGG
            0008000|HHHHHHHHHHHHHHHHH
            0009000|IIIIIIIIIIIIIIIII
            0010000|JJJJJJJJJJJJJJJJJ
        ===>
      r1 b1 0001000*AA
            0001100*AAAAAAAAAAAAAAA
         b2 0002000|12
            0002100*
         s1 0003000|CCCCCCCCCCCCCCCCC
      r2 b1 0004000*DD
            0004100*DDDDDDDDDDDDDDD
         b2 0005000*EE
            0005100*EEEEEEEEEEEEEEE
         s1 0006000|FFFFFFFFFFFFFFFFF
      r3 b1 0007000*GG
            0007100*GGGGGGGGGGGGGGG
         b2 0008000*HH
            0008100*HHHHHHHHHHHHHHH
            0009000|IIIIIIIIIIIIIIIII
            0010000|JJJJJJJJJJJJJJJJJ

      (2) xx-xx[,b][.s] pattern

        .split all the line of the range.

            ss     |AAAAAAAAAAAAAAAAA
            0002000|12
            0003000|CCCCCCCCCCCCCCCCC
            0004000|DDDDDDDDDDDDDDDDD
            0005000|EEEEEEEEEEEEEEEEE
            ss     |FFFFFFFFFFFFFFFFF
            0007000|GGGGGGGGGGGGGGGGG
        ===>
            0001000*AA
            0001100*AAAAAAAAAAAAAAA
            0002000|12
            0002100*
            0003000*CC
            0003100*CCCCCCCCCCCCCCC
            0004000*DD
            0004100*DDDDDDDDDDDDDDD
            0005000*EE
            0005100*EEEEEEEEEEEEEEE
            0006000*FF
            0006100*FFFFFFFFFFFFFFF
            0007000|GGGGGGGGGGGGGGGGG

        .repeat in the range to split 3 lines and to skip 2 lines.

            ss,3   |AAAAAAAAAAAAAAAAA
            0002000|12
            0003000|CCCCCCCCCCCCCCCCC
            0004000|DDDDDDDDDDDDDDDDD
            0005000|EEEEEEEEEEEEEEEEE
            0006000|FFFFFFFFFFFFFFFFF
            0007000|GGGGGGGGGGGGGGGGG
            0008000|HHHHHHHHHHHHHHHHH
            0009000|IIIIIIIIIIIIIIIII
            0010000|JJJJJJJJJJJJJJJJJ
            0011000|KKKKKKKKKKKKKKKKK
            0012000|LLLLLLLLLLLLLLLLL
            0013000|MMMMMMMMMMMMMMMMM
            0014000|NNNNNNNNNNNNNNNNN
            0015000|OOOOOOOOOOOOOOOOO
            0016000|PPPPPPPPPPPPPPPPP
            ss.2   |QQQQQQQQQQQQQQQQQ
            0018000|RRRRRRRRRRRRRRRRR
        ===>
      rr b1 0001000*AA
            0001100*AAAAAAAAAAAAAAA
         b2 0002000|12
            0002100*
         b3 0003000*CC
            0003100*CCCCCCCCCCCCCCC
         s1 0004000|DDDDDDDDDDDDDDDDD
         s2 0005000|EEEEEEEEEEEEEEEEE
      rr b1 0006000*FF
            0006100*FFFFFFFFFFFFFFF
         b2 0007000*GG
            0007100*GGGGGGGGGGGGGGG
         b3 0008000*HH
            0008100*HHHHHHHHHHHHHHH
         s1 0009000|IIIIIIIIIIIIIIIII
         s2 0010000|JJJJJJJJJJJJJJJJJ
      rr b1 0011000*KK
            0011100*KKKKKKKKKKKKKKK
         b2 0012000*LL
            0012100*LLLLLLLLLLLLLLL
         b3 0013000*MM
            0013100*MMMMMMMMMMMMMMM
         s1 0014000|NNNNNNNNNNNNNNNNN
         s2 0015000|OOOOOOOOOOOOOOOOO
      rr b1 0016000*PP
            0016100*PPPPPPPPPPPPPPP
         b2 0017000*QQ
            0017100*QQQQQQQQQQQQQQQ
            0018000|RRRRRRRRRRRRRRRRR

    = u/_ command                                                     
        .lowercase<-->uppercase translation after the cursor position.
         csr may be on any line.
        .n is not supported for xx-xx pattern

      (1) x[n][,b][.s] pattern

        .translate 4 lines

            u4     |aaaaaaaaaaaaaaa                                   
            0002000|bbbbbbbbbbbbbbb                                   
            0003000|ccccccccccccccc                                   
            0004000|ddddddddddddddd                                   
            0005000|eeeeeeeeeeeeeee                                   

        ===>
         r1 0001000*AAAAAAAAAAAAAAA
         r2 0002000*BBBBBBBBBBBBBBB
         r3 0003000*CCCCCCCCCCCCCCC
         r4 0004000*DDDDDDDDDDDDDDD
            0005000|eeeeeeeeeeeeeee

        .repeat 3 times to translate 2 lines and to skip 1 line.

            u3,2.1 |aaaaaaaaaaaaaaa                                   
            0002000|bbbbbbbbbbbbbbb                                   
            0003000|ccccccccccccccc                                   
            0004000|ddddddddddddddd                                   
            0005000|eeeeeeeeeeeeeee                                   
            0006000|fffffffffffffff                                   
            0007000|ggggggggggggggg                                   
            0008000|hhhhhhhhhhhhhhh                                   
            0009000|iiiiiiiiiiiiiii                                   
            0010000|jjjjjjjjjjjjjjj                                   
        ===>
      r1 b1 0001000*AAAAAAAAAAAAAAA
         b2 0002000*BBBBBBBBBBBBBBB
         s1 0003000|ccccccccccccccc
      r2 b1 0004000*DDDDDDDDDDDDDDD
         b2 0005000*EEEEEEEEEEEEEEE
         s1 0006000|fffffffffffffff
      r3 b1 0007000*GGGGGGGGGGGGGGG
         b2 0008000*HHHHHHHHHHHHHHH
            0009000|iiiiiiiiiiiiiii
            0010000|jjjjjjjjjjjjjjj

      (2) xx-xx[,b][.s] pattern

        .translate all the line of the range.
         cursor in at col 9 in the case.

            uu     |aaaaaaaaaaaaaaa
            0002000|bbbbbbbbbbbbbbb
            0003000|ccccccccccccccc
            0004000|ddddddddddddddd
            uu     |eeeeeeeeeeeeeee
            0006000|fffffffffffffff
        ===>
            0001000*aaaaaaaaAAAAAAA
            0002000*bbbbbbbbBBBBBBB
            0003000*ccccccccCCCCCCC
            0004000*ddddddddDDDDDDD
            0005000*eeeeeeeeEEEEEEE
            0006000|fffffffffffffff


        .repeat in the range to translate 3 lines and to skip 2 lines.
         cursor in at col 9 in the case.

            uu,3.2 |aaaaaaaaaaaaaaa
            0002000|bbbbbbbbbbbbbbb
            0003000|ccccccccccccccc
            0004000|ddddddddddddddd
            0005000|eeeeeeeeeeeeeee
            0006000|fffffffffffffff
            0007000|ggggggggggggggg
            0008000|hhhhhhhhhhhhhhh
            0009000|iiiiiiiiiiiiiii
            uu     |jjjjjjjjjjjjjjj
        ===>
      rr b1 0001000*aaaaaaaaaAAAAAA
         b2 0002000*bbbbbbbbbBBBBBB
         b3 0003000*cccccccccCCCCCC
         s1 0004000|ddddddddddddddd
         s2 0005000|eeeeeeeeeeeeeee
      rr b1 0006000*fffffffffFFFFFF
         b2 0007000*gggggggggGGGGGG
         b3 0008000*hhhhhhhhhHHHHHH
         s1 0009000|iiiiiiiiiiiiiii
         s2 0010000|jjjjjjjjjjjjjjj

    = x command
        .hide the line
        .n for xx-xx[n][,b][.s] pattern is not supported

      (1) x[n] pattern

        .hide the following 3 lines                                   ||~v124R~

            0000001|A
            x3     |B
            0000003|C
            0000004|D
            0000005|E
        ===>
            0001000|A
            -------|-      3 line excluded --------------------------
            0005000|E

      (2) xx-xx pattern

        .hide the range of lines

            0000001|A
            xx     |B
            0000003|C
            0000004|D
            xx     |E
            0000006|F
        ===>
            0001000|A
            -------|-  4 line excluded ------------------------------------
            0006000|F

      (3) x[n][,b][,s] pattern

        .repeat 3 times to hide 2 lines with intermediate 1 line left.

            0000001|A
            x3,2.1 |B
            0000003|C
            0000004|D
            0000005|E
            0000006|F
            0000007|G
            0000008|H
            0000009|I
            0000010|J
        ===>
            0001000|A
            -------|-      2 line excluded --------------------
            0004000|D
            -------|-      2 line excluded --------------------
            0007000|G
            -------|-      2 line excluded --------------------
            0010000|J

      (4)xx-xx[,b][,s] pattern

        .repeat in the range to hide 3 lines with intermediate 2 lines left.

            0000001|A
            xx,3   |B
            0000003|C
            0000004|D
            0000005|E
            0000006|F
            0000007|G
            0000008|H
            0000009|I
            xx.2   |J
        ===>
            0001000|A
            -------|-      3 line excluded --------------------------
            0005000|E
            0006000|F
            -------|-      3 line excluded --------------------------
            0010000|J

    = y command
        .re-display all lines of the hidden line set.                 ||~v124R~
        .[,b][.s] parameter is not supported
        .n for xx-xx pattern is not supported

      (1) y[n] pattern

        .following 2 set of hidden lines are un-hidden                ||~v124R~

            0001000|A
            y2     |-      2 line excluded ------------------
            0004000|D
            0005000|E
            -------|-      1 line excluded ------------------
            0007000|G
            -------|-      2 line excluded ------------------
            0010000|J
            -------|-      1 line excluded ------------------
            0012000|L
        ===>
            0001000|A
            0002000|B
            0003000|C
            0004000|D
            0005000|E
            0006000|F
            0007000|G
            -------|-      2 line excluded ----------------
            0010000|J
            -------|-      1 line excluded ----------------
            0012000|L

      (2) yy-yy pattern

        .all hidden part of the range area un-hidden                  ||~v124R~

            0001000|A
            -------|-      2 line excluded ----------------
            0004000|D
            0005000|E
            yy     |-      1 line excluded ----------------
            0007000|G
            -------|-      2 line excluded ----------------
            0010000|J
            yy     |-      1 line excluded ----------------
            0012000|L
        ===>
            0001000|A
            -------|-      2 line excluded ----------------
            0004000|D
            0005000|E
            0006000|F
            0007000|G
            0008000|H
            0009000|I
            0010000|J
            0011000|K
            0012000|L

    = (,) command
        .shift the line to the left/right.
        ."(":cut n columns of top of line.
         ")":n space chars are inserted at top of line.
             for margined file,end of line is cut at the edge.
        .for margined file,only data in the margin is shifted.
        .n of x[n],xx-xx[n] is shift count,default is same as tab count.
         tab count is set by TAB command and default is 4.
         xn,b.s pattern is not supported.

      (1) x[n],xx-xx[n] pattern

            ((     |1234567890ABCDEFG
            0002000|      7890ABCDEFG
            ((     |   4567      DEFG
            ))     |1234567890A
            0005000|12   678
            0006000|  34567890ABC
            ))     |1234567890ABCDEFG
            (8     |1234567890ABCDEFG
            )3     |1234567890ABCDEFG
            ((     |1234567890ABCDEFG
            0011000|1234567890ABCDEFG
            ((2    |1234567890ABCDEFG
            ))5    |1234567890ABCDEFG
            0014000|1234567890ABCDEFG
            ))     |1234567890ABCDEFG

        ===> result for not margined file                             ||~v124R~

      ((4   0001000*567890ABCDEFG
            0002000*  7890ABCDEFG
      ((4   0003000*567      DEFG
      ))4   0004000*    1234567890A
            0005000*    12   678
            0006000*      34567890ABC
      ))4   0007000*    1234567890ABCDEFG
      (8    0008000*90ABCDEFG
      )3    0009000*   1234567890ABCDEFG
      ((2   0010000*34567890ABCDEFG
            0011000*34567890ABCDEFG
      ((2   0012000*34567890ABCDEFG
      ))5   0013000*     1234567890ABCDEFG
            0014000*     1234567890ABCDEFG
      ))5   0015000*     1234567890ABCDEFG

        ===> result for margined(m15) file

            0001000|//*CID://+dateR~:#63 option=(m15,p1,tabclear) update#=    2;
      ((4   0002000*567890ABCDE    FG
            0003000*  7890ABCDE    FG
      ((4   0004000*567      DE    FG
      ))4   0005000*    1234567890A
            0006000*    12   678
      ))4   0007000*      34567890A
      (8    0008000*90ABCDE        FG
      )3    0009000*   1234567890ABFG
      ((2   0010000*34567890ABCDE  FG
            0011000*34567890ABCDE  FG
      ((2   0012000*34567890ABCDE  FG
      ))5   0013000*     1234567890FG
            0014000*     1234567890FG
      ))5   0015000*     1234567890FG

      (2) xx-xx[n][,b][,s] pattern

        .repeat in the range to shift 2 lines to the right by 3 byte
         and skip 1 line.

            ))3,2.1|1234567890ABCDEFG
            0008000|1234567890ABCDEFG
            0009000|1234567890ABCDEFG
            0010000|1234567890ABCDEFG
            0011000|1234567890ABCDEFG
            0012000|1234567890ABCDEFG
            0013000|1234567890ABCDEFG
            0014000|1234567890ABCDEFG
            0015000|1234567890ABCDEFG
            0016000|1234567890ABCDEFG
            ))     |1234567890ABCDEFG
        ===>
      rr b1 0007000*   1234567890ABCDEFG
         b2 0008000*   1234567890ABCDEFG
         s1 0009000|1234567890ABCDEFG
      rr b1 0010000*   1234567890ABCDEFG
         b2 0011000*   1234567890ABCDEFG
         s1 0012000|1234567890ABCDEFG
      rr b1 0013000*   1234567890ABCDEFG
         b2 0014000*   1234567890ABCDEFG
         s1 0015000|1234567890ABCDEFG
      rr b1 0016000*   1234567890ABCDEFG
         b2 0017000*   1234567890ABCDEFG

    = <,> command
        .shift out the space on the top/end of line.
         shift to the left/right max n byte until space char on the
         top/end of line exhausted.                                   
        .for margined file,only data in the margin is shifted.
        .n of x[n],xx-xx[n] is shift count,default is same as tab count.
         tab count is set by TAB command and default is 4.
         xn,b.s pattern is not supported.
         effect of b,s parameter is same as "(" command.

        .space shift out

            <<     |1234567890ABCDEFG
            0002000|      7890ABCDEFG
            <<     |   4567      DEFG
            >>     |1234567890A
            0005000|12   678
            0006000|  34567890ABC
            >>     |1234567890ABCDEFG
            <8     |1234567890ABCDEFG
            >3     |1234567890ABCDEFG
            <<     |1234567890ABCDEFG
            0011000|1234567890ABCDEFG
            <<2    |1234567890ABCDEFG
            >>5    |1234567890ABCDEFG
            0014000|1234567890ABCDEFG
            >>     |1234567890ABCDEFG

        ===> result for not margined file                             ||~v124R~

      <<4   0001000|1234567890ABCDEFG
            0002000*  7890ABCDEFG
      <<4   0003000*4567      DEFG
      >>4   0004000*    1234567890A
            0005000*    12   678
            0006000*      34567890ABC
      >>4   0007000*    1234567890ABCDEFG
      <8    0008000|1234567890ABCDEFG
      >3    0009000*   1234567890ABCDEFG
      <<2   0010000|1234567890ABCDEFG
            0011000|1234567890ABCDEFG
      <<2   0012000|1234567890ABCDEFG
      >>5   0013000*     1234567890ABCDEFG
            0014000*     1234567890ABCDEFG
      >>5   0015000*     1234567890ABCDEFG

        ===> result for margined(m15) file

            0001000|//*CID://+dateR~:#63 option=(m15,p1,tabclear) update#=    2;
      <<4   0002000|1234567890ABCDEFG
            0003000*  7890ABCDE    FG
      <<4   0004000*4567      DE   FG
      >>4   0005000*    1234567890A
            0006000*    12   678
            0007000*    34567890ABC
      >>4   0008000|1234567890ABCDEFG
      <8    0009000|1234567890ABCDEFG
      >3    0010000|1234567890ABCDEFG
      <<2   0011000|1234567890ABCDEFG
            0012000|1234567890ABCDEFG
      <<2   0013000|1234567890ABCDEFG
      >>5   0014000|1234567890ABCDEFG
            0015000|1234567890ABCDEFG
      >>5   0016000|1234567890ABCDEFG

    = [,] command
        .shift the text of the line compressing continued spaces
         to a space char.
         shift stop when n space char is dropped.
        .for margined file,only data in the margin is shifted.
        .n of x[n],xx-xx[n] is shift count,default is same as tab count.
         tab count is set by TAB command and default is 4.
         xn,b.s pattern is not supported.
         effect of b,s parameter is same as "(" command.

        .space compressing shift

            [[     |1234567890ABCDEFG
            0002000|  34567890  CDEFG
            0003000|    567890  CDEFG
            0004000|     67890  CDEFG
            0005000|  34  78  AB  EFG
            [[     |  34  78  AB   FG
            ]]     |  34  78  AB   FG
            0008000|1234567890ABCDEFG
            0009000|1234567890ABCD
            0010000|1234567890A
            ]]     |123  67  0A  DE
            [5     |1   5   90   DEFG
            ]3     | 12   7890ABCDE
        ===>
      [[4   0001000|1234567890ABCDEFG
            0002000* 34567890 CDEFG
            0003000* 567890 CDEFG
            0004000* 67890  CDEFG
      [[4   0005000* 34 78 AB EFG
      ]]4   0006000* 34 78 AB  FG
            0007000*      34 78 AB FG
            0008000|1234567890ABCDEFG
            0009000*  1234567890ABCD
            0010000*    1234567890A
      ]]4   0011000*    123 67 0A DE
      [5    0012000*1 5 90  DEFG
      ]3    0013000*    12 7890ABCDE

    = TF command                                                      

        .See also TFLow/TF command.                                   
        .Re-flow in a paragraph.                                      
         The paragraph contains the 1st line TF line command entered and the next line
         and the line with same indentation as 2nd line.              
        .n of TF[n] is width(column of right boundary) after re-flowed.||~v124R~
         If n is omitted,re-flowing is done in the original boundary from margin setting or
         BND command setting. Fxx option of edit command or en command set right margin.
                                                                      
        .(ex.01) without width option.                                

            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|//*CID://+NONER~:    option=(f80,p0) update#=    3;
            tf     |      added this part to test the behavior of the bnds
            0003000|        cmommand for
            0004000|        xe. i use bnds to format paragraphs
            0005000|     so the breakes are nice.
            0006000|     *                                                                 *   CL114
            0007000|     *   JOB stream:   job name  proc name  program run frequency      *   CL114

        ===>

            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|//*CID://+NONER~:    option=(f80,p0) update#=    3;
            0002000*      added this part to test the behavior of the bnds cmommand for xe. i use
            0003000*        bnds to format paragraphs
            0005000|     so the breakes are nice.
            0006000|     *                                                                 *   CL114
            0007000|     *   JOB stream:   job name  proc name  program run frequency      *   CL114

        .(ex.02) with option                                          

            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|//*CID://+NONER~:    option=(f80,p0) update#=    3;
            tf40   *      added this part to test the behavior of the bnds
            0003000|        cmommand for
            0004000|        xe. i use bnds to format paragraphs
            0005000|     so the breakes are nice.
            0006000|     *                                                                 *   CL114
            0007000|     *   JOB stream:   job name  proc name  program run frequency      *   CL114

        ===>

            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|//*CID://+NONER~:    option=(f80,p0) update#=    3;
            0002000*      added this part to test the
            0003000*      behavior of the bnds cmommand for
            0004000*        xe. i use bnds to format
            0004100*        paragraphs
            0005000|     so the breakes are nice.
            0006000|     *                                                                 *   CL114
            0007000|     *   JOB stream:   job name  proc name  program run frequency      *   CL114

    = : command (TextFlow)                                            
                                                                      
        .:[n][,m][.i]                                                 
         n is line count, no xx-xx[n] format.                         
         m is width after re-flowed(same as width parameter of TFLow command),
         i is indentation after re-flowed used to make all line the same indentation(same as In of TFLow command)
        .re-flow in the range of n lines or lines in the range of ::-::.
        .difference between ":" and ";" is NOP(NoParagraph) option of TFLow command. (";"=":"+NOP).

        .(ex.01) without line-count                                   

            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|//*CID://+NONER~:    option=(f80,p0) update#=    3;
            :      |      added this part to test the behavior of the bnds
            0003000|        cmommand for
            0004000|        xe. i use bnds to format paragraphs
            0005000|     so the breakes are nice.
            0006000|     *                                                                 *   CL114
            0007000|     *   JOB stream:   job name  proc name  program run frequency      *   CL114
            0008000*     *                 --------  AAAAAA     weekly.                    *   CL114
            0009000|     *=================================================================*   CL114

        ===> process one paragraph                                    

            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|//*CID://+NONER~:    option=(f80,p0) update#=    3;
            0002000*      added this part to test the behavior of the bnds cmommand for xe. i use
            0003000*        bnds to format paragraphs
            0005000|     so the breakes are nice.
            0006000|     *                                                                 *   CL114
            0007000|     *   JOB stream:   job name  proc name  program run frequency      *   CL114
            0008000*     *                 --------  AAAAAA     weekly.                    *   CL114
            0009000|     *=================================================================*   CL114

        .(ex.02) with line count,without width option                 

            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|//*CID://+NONER~:    option=(f80,p0) update#=    3;
            :6     |      added this part to test the behavior of the bnds
            0003000|        cmommand for
            0004000|        xe. i use bnds to format paragraphs
            0005000|     so the breakes are nice.
            0006000|     *                                                                 *   CL114
            0007000|     *   JOB stream:   job name  proc name  program run frequency      *   CL114
            0008000|     *                 --------  AAAAAA     weekly.                    *   CL114
            0009000|     *=================================================================*   CL114

        ===> re-flow in the specified line count,in the original line width(set by option=f80.

            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|//*CID://+NONER~:    option=(f80,p0) update#=    3;
            0002000*      added this part to test the behavior of the bnds cmommand for xe. i use
            0003000*        bnds to format paragraphs
            0004000*     so the breakes are nice.  *
            0005000*     *   CL114 *   JOB stream:   job name  proc name  program run frequency
            0006000*     *   CL114
            0008000|     *                 --------  AAAAAA     weekly.                    *   CL114
            0009000|     *=================================================================*   CL114

        .(ex.03) width line-count and width option.                   

            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|//*CID://+NONER~:    option=(f80,p0) update#=    3;
            :6,40  |      added this part to test the behavior of the bnds
            0003000|        cmommand for
            0004000|        xe. i use bnds to format paragraphs
            0005000|     so the breakes are nice.
            0006000|     *                                                                 *   CL114
            0007000|     *   JOB stream:   job name  proc name  program run frequency      *   CL114
            0008000|     *                 --------  AAAAAA     weekly.                    *   CL114
            0009000|     *=================================================================*   CL114

        ===> re-flow into the specified width.                        

            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|//*CID://+NONER~:    option=(f80,p0) update#=    3;
            0002000*      added this part to test the
            0003000*      behavior of the bnds cmommand for
            0004000*        xe. i use bnds to format
            0005000*        paragraphs
            0006000*     so the breakes are nice.  *
            0007000*     *   CL114 *   JOB stream:   job
            0007100*     name  proc name  program run
            0007200*     frequency      *   CL114
            0008000|     *                 --------  AAAAAA     weekly.                    *   CL114
            0009000|     *=================================================================*   CL114

        .(ex.04) width Indentation option.                            

            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|//*CID://+NONER~:    option=(f80,p0) update#=    3;
            i6,40.2|      added this part to test the behavior of the bnds
            0003000|        cmommand for
            0004000|        xe. i use bnds to format paragraphs
            0005000|     so the breakes are nice.
            0006000|     *                                                                 *   CL114
            0007000|     *   JOB stream:   job name  proc name  program run frequency      *   CL114
            0008000*     *                 --------  AAAAAA     weekly.                    *   CL114

        ===> make all the line the same indentation.                  
             ":" command consider paragraph boundary differently from ";" command.

            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|//*CID://+NONER~:    option=(f80,p0) update#=    3;
            0002000*  added this part to test the behavior
            0003000*  of the bnds cmommand for xe. i use
            0004000*  bnds to format paragraphs
            0005000*  so the breakes are nice.  *
            0006000*  *   CL114 *   JOB stream:   job name
            0007000*  proc name  program run frequency
            0007100*  *   CL114
            0008000*     *                 --------  AAAAAA     weekly.                    *   CL114
            0009000|     *=================================================================*   CL114

        .(ex.05). xx-xx format                                        

            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|//*CID://+NONER~:    option=(f80,p0) update#=    3;
            ::,40.2|      added this part to test the behavior of the bnds
            0003000|        cmommand for
            0004000|        xe. i use bnds to format paragraphs
            0005000|     so the breakes are nice.
            0006000|     *                                                                 *   CL114
            0007000|     *   JOB stream:   job name  proc name  program run frequency      *   CL114
            ::     *     *                 --------  AAAAAA     weekly.                    *   CL114
            0009000|     *=================================================================*   CL114

        ===>

            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|//*CID://+NONER~:    option=(f80,p0) update#=    3;
            0002000*  added this part to test the behavior
            0003000*  of the bnds cmommand for xe. i use
            0004000*  bnds to format paragraphs
            0005000*  so the breakes are nice.  *
            0006000*  *   CL114 *   JOB stream:   job name
            0007000*  proc name  program run frequency
            0008000*  *   CL114 *                 --------
            0008100*  AAAAAA     weekly.
            0008200*  *   CL114
            0009000|     *=================================================================*   CL114

    = ; command (TextFlow  with no paragraph)                         
                                                                      
        .;[n][,m][.i]                                                 
         n is line count, no xx-xx[n] format.                         
         m is width after re-flowed(same as width parameter of TFLow command),
         i is indentation after re-flowed used to make all line the same indentation(same as In of TFLow command)
        .re-flow in the range of n lines or lines in the range of ;;-;;.
        .difference between ":" and ";" is NOP(NoParagraph) option of TFLow command. (";"=":"+NOP).
                                                                      
        .(ex.01) with width option.                                   

            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|//*CID://+NONER~:    option=(f80,p0) update#=    3;
            ;6,40  |      added this part to test the behavior of the bnds
            0003000|        cmommand for
            0004000|        xe. i use bnds to format paragraphs
            0005000|     so the breakes are nice.
            0006000|     *                                                                 *   CL114
            0007000|     *   JOB stream:   job name  proc name  program run frequency      *   CL114
            0008000*     *                 --------  AAAAAA     weekly.                    *   CL114
            0009000|     *=================================================================*   CL114

        ===> Without .i(indentation) option, indentation of the 1st line is used.
             All words is packed with no consideration of paragraph boundary.

            col    |....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
            *******|********** TOP OF FILE *********************************************************
            0001000|//*CID://+NONER~:    option=(f80,p0) update#=    3;
            0002000*      added this part to test the
            0003000*      behavior of the bnds cmommand for
            0004000*      xe. i use bnds to format
            0005000*      paragraphs so the breakes are
            0006000*      nice.  *
            0007000*      *   CL114 *   JOB stream:   job
            0007100*      name  proc name  program run
            0007200*      frequency      *   CL114
            0008000*     *                 --------  AAAAAA     weekly.                    *   CL114
            0009000|     *=================================================================*   CL114

    = / command
        .insert the string "//"(comment line ID for C++,java language)
         at the cursor position placed on any line.
        .it is not inserted to the line with length is shorter than
         cursor position.
        .n of xx-xx[n][,b][.s] is not supported

        .comment out 3 lines

            0286000|//**************************
            //     |case 'C':
            0288000|    Gcmdmaxstack=numchk(cptr);
            //     |    break;
            0230000|//**************************
            0231000|//* help msg      /H*
            0232000|//**************************
            0233000|case '?':
            0234000|case 'H':
            0235000|    help();
            0236000|    exit(4);
            0237000|    break;
            0238000|//**************************

        ===>result when cursor is on column 17

            0286000|//**************************
            0287000|case 'C':
            0288000*    Gcmdmaxstack=//numchk(cptr);
            0289000|    break;
            0230000|//**************************
            0231000|//* help msg      /H*
            0232000|//**************************
            0233000|case '?':
            0234000|case 'H':
            0235000|    help();
            0236000|    exit(4);
            0237000|    break;
            0238000|//**************************

        ===>result when cursor is on the lineno field.
            0286000|//**************************
            0287000*//case 'C':
            0288000*//    Gcmdmaxstack=numchk(cptr);
            0289000*//    break;
            0230000|//**************************
            0231000|//* help msg      /H*
            0232000|//**************************
            0233000|case '?':
            0234000|case 'H':
            0235000|    help();
            0236000|    exit(4);
            0237000|    break;
            0238000|//**************************

        .effect of [n][,b][.s]

            /3     |  A
            0002000|  B
            0003000|  C
            0004000|  D
            /3,2.1 |  E
            0006000|  F
            0007000|  G
            0008000|  H
            0009000|  I
            0010000|  J
            0011000|  K
            0012000|  L
            0013000|  M
            //,3.2 |  N
            0015000|  O
            0016000|  P
            0017000|  Q
            0018000|  R
            0019000|  S
            0020000|  T
            0021000|  U
            0022000|  V
            0023000|  W
            0024000|  X
            0025000|  Y
            //     |  Z
        ===>
      r1    0001000*//  A
      r2    0002000*//  B
      r3    0003000*//  C
            0004000|  D
      r1 b1 0005000*//  E
         b2 0006000*//  F
         s1 0007000|  G
      r2 b1 0008000*//  H
         b2 0009000*//  I
         s1 0010000|  J
      r3 b1 0011000*//  K
         b2 0012000*//  L
            0013000|  M
      rr b1 0014000*//  N
         b2 0015000*//  O
         b3 0016000*//  P
         s1 0017000|  Q
         s2 0018000|  R
      rr b1 0019000*//  S
         b2 0020000*//  T
         b3 0021000*//  U
         s1 0022000|  V
         s2 0023000|  W
      rr b1 0024000*//  X
         b2 0025000*//  Y
         b3 0026000*//  Z

    = + command
        .insert any string at the cursor position placed on any line.
        .it is not inserted to the line with length is shorter than
         cursor position.
        .n,b,s parameter is not supported,it is treated as part of string.

        .e.g. comment out the shell script.                           ||~v128R~

            0019000|#   case ${DVWORDS[0]} in
            ++#_   |    case $DIST         in
            0021000|#     Red*)    DID=rh${DVWORDS[4]}  ;;     #Red Hat
            0022000|      Red*)    DID=rh$VER           ;;     #Red Hat
            0023000|#     Turbo*)  DID=tb${DVWORDS[2]}  ;;     #TurboLinux release 6.0 Work
            0024000|      Turbo*)  DID=tb$VER           ;;     #TurboLinux release 6.0 Work
            0025000|      *)      echo "xegetdv:No distribution ID found from /etc/issue (
            0026000|              sleep 2
            0027000|              DID=rh9
            ++     |    esac
            +#;    |fi
        ===>
            0020000*#_    case $DIST         in
            0021000*#_#     Red*)    DID=rh${DVWORDS[4]}  ;;     #Red Hat
            0022000*#_      Red*)    DID=rh$VER           ;;     #Red Hat
            0023000*#_#     Turbo*)  DID=tb${DVWORDS[2]}  ;;     #TurboLinux release 6.0 WorkStation (Shiga)
            0024000*#_      Turbo*)  DID=tb$VER           ;;     #TurboLinux release 6.0 WorkStation (Shiga)
            0025000*#_      *)      echo "xegetdv:No distribution ID found from /etc/issue ( " $DVER " ),assumed \"rh9\"."
            0026000*#_              sleep 2
            0027000*#_              DID=rh9
            0028000*#_    esac
            0029000*#;fi

    = . command
        .set label to the line to be used by Find,Sort etc. command to limit||~v124R~
         the line to apply the command.
        .specify alpha-numeric after ".".
        .It can be used as line mark. Set any label on the line, search those lines by "f *e" cmd.||~v125R~
                                                                      ||~v125R~

        .e.g. sort line 9 to 14                                       ||~v128R~

                ==>SOR 1-12 .a .b
               ****|********** TOP
               0001*20040305
               0002*01 23 51 123
               0003*01 23 55 228
               0004*01 24 12 560
               0005*02 13 01 125
               0006*02 43 33 063
               0007*03 03 34 970
               0008*20040307
               .b  *11 23 51 123
               0010*01 13 55 228
               0011*12 24 12 560
               0012*02 13 01 125
               0013*12 43 33 063
               .a  *03 03 34 970
               0015*20040308

    = = command
        .compare each line then mark the first unmatched position of the line.
        .n of xx-xxn[,b][.s] pattern is not supported
        .range by =[n] pattern and by ==-== pattern may be compared.
        .2 files on the split screen may be compared.                 
        .compares after translation for 2 file with different codepage.||~v125R~
                                                                      ||~v125R~
         Matrix of codepage used                                      ||~v125R~
                      | Locale   | UTF8 |  EBCDIC1                    ||~v125R~
            ----------------------------------------                  ||~v125R~
            LocaleCode|    -     | UTF8 |  Locale                     ||~v125R~
            UTF8      |          |  -   |  UTF8                       ||~v125R~
            EBCDIC2   |          |      |  HexCode     (compares code itself between EBCDIC codepage)||~v125R~
        .Use "B" suffix to compare by binary code.                    ||~v125R~
         Spaces by Tab expansion is ignored.                          ||~v125R~
            =[B][n][,b][.s]                                           ||~v125R~
            ==[B]                                                     ||~v125R~
            (supply "B" at any one of the line cmds)                  ||~v125R~
                                                                      ||~v125R~
        .compare is done in the range of left margin for the case both files are
         margined like as SPF file.

        .e.g.) search unmatch position of line 56 and 58.               ||~v128R~

               0055|#ifdef TEST
               =   |    #define MDOSDISK(fnm) (*((fnm)+1)==':' && (*(fnm)=='a'||*(fnm)=='A'&&*
               0057|#else
               =   |    #define MDOSDISK(fnm) (*((fnm)+1)==':' && (*(fnm)=='a'||*(fnm)=='A'||*
               0059|#endif

        .use of [n][,b][.s]
            (in this example,each compare pair line data is set as same)

            ==,3.1 |  A
            0002000|  B
            0003000|  C
            0004000|  D
            0005000|  E
            0006000|  F
            0007000|  G
            0008000|  H
            0009000|  I
            ==     |  J
            0011000|  K
            0012000|  L
            0013000|  M
            0014000|  N
            0015000|  O
            0016000|  P
            =,2.1  *  A
            0018000*  B
            0019000|  S
            0020000*  C
            0021000*  E
            0022000|  V
            0023000*  F
            0024000*  G
            0025000|  Y
            0026000*  I
            0027000*  J

    = # command
        .no [n][,b][.s] parameter is supported
        .2 option is avail. set after the "#".
         ^ : execute those command on the other side of split screen. 
         ! : continue to next line command even if command rc!=0

        .e.g. execute command on the line from 56 to 58.              ||~v128R~
             command applied on the other side of screen and ignores  
             return code of each command.
             in this example, this file is ::cl(command log) and      
             timestamp field is ignored.(ignore up to next "=" if column.1 is "=")||~v125R~

            0055|s file1                                              ||~v130R~
            ##^ |i word1 -m all                                       ||~v130R~
            0057|i word2 -m all                                       ||~v130R~
            ##! |i wodr3 -m all                                       ||~v130R~
            0059|s                                                    ||~v130R~

*********************
 (B) Directory List *
*********************

[Table 4] Directory List Line command.
 +---+-------+------------------------------------------------------+
 |cmd|func   | description                                          |
 +---+-------+------------------------------------------------------+
 | a |Attrib |set file attribute                                    |
 | b |Browse |browse the file                                       |
 | c |Copy   |copy file or directory                                |
 | d |Delete |delete file or directory.                             |
 | e |Edit   |display the file to edit                              |
 | f |Free   |free(End) view screen,update is saved.                |
 | g |Grep   |grep search in the file or directory.                 | ||~v124R~
 |h/H|Hex    |Open file by Hex mode.                                |
 |i/I|ECN(EI)|Open SPF COBOL file as COL.1-6 is lineno.             |
 |j/J|EKN(EJ)|Open SPF COBOL file as COL.1-6 is space.              |
 |k/K|EK     |Open COBOL file as COL.1-6 is space.                  |
 |l/L|EC(EL) |Open COBOL file as COL.1-6 is lineno.                 |
 | m |Move   |move file or directory                                |
 |n/N|EN     |Open SPF file(col.73-80 is lineno).                   |
 |o/O|Open   |Open with parm of Edit/Browse cmd.                    | ||~127DR~
 | p |Print  |file print,specify print command in INI file.         |
 | r |Rename |rename file or directory                              |
 | s |Select |Browse or Edit                                        |
 | t |Text   |Browse or Edit with text mode forced.                 |
 | u |Undo   |Undo for Renamed/Deleted/Moved lines.                 | ||~v124R~
 | v |View   |split and browse file(end by f command)               |
 | w |vieW   |split and edit file(end by f command,update is saved) |
 | x |eXcude |hide member of the directory(Use "y" to uncover)      |
 | y |Yield  |re-display hidden member of the directory             | ||~v124R~
 | z |Zero   |Delete without undeletability                         |
 | 0 |Zero   |Delete without undeletability(even for Read-only)     | ||~127DR~
 | 1 |BrowseB|browse the file.Binary file mode.                     | 
 | 2 |EditB  |display the file to edit. binary file mode            | 
 | 3 |E/B-B  |Binary mode,Edit or Browse depends on the screen mode.| 
 | 8 |E/B-8  |FixedLRECL=80, E or B depends on the screen mode.     | 
#ifdef UTF8SUPP                                                       ||~v125R~
 | [ |O-CPLC |Open the file with option CPLC                        | ||~v125R~
 | ] |O-CPU8 |Open the file with option CPU8                        | ||~v125R~
#endif                                                                ||~v125R~
 | = |Compare|compare two files/directories using tool xfc,xdc.     | 
 | / |slash  |Delete force to Read-only                             |
 | - |expand |refresh and expand the directory listing the member.  | ||~127DR~
 | > |expall |expand all tree nodes and leaves under the directory  | ||~127DR~
 | + |reduce |Hide members of the directory from the list.          | ||~127DR~
 | : |path   |dsiplay path only.                                    | ||~127DR~
 | . |chdir  |set current drive and current directory from the line.|
 | % |appcmd |apply command to the file/dir of the line.            |
 | % |appcmdA|Async version of "%"                                  | ||~127DI~
 | ! |assoc  |pass to application associated by ext name.           |
 | # |execute|execute local(SUBmit) or remote(RSH) file.            |
 | & |spawn  |file asynchronous execution.                          |
 | ^ |send   |send filename.                                        | 
#if defined(WXE)||defind(LNX)                                         ||~127DI~
 | _ |S-DND  |select for Drag&Drop                                  | ||~127DI~
#endif                                                                ||~127DI~
 +---+-------+------------------------------------------------------+


   - Enter 1 byte command on line cmd input field.
     You can duplicate Attrib/Copy/Move/Rename/Open/%(appcmd) cmd
     using function key.
     See #9 on (1).Function-Key default assignment ...description of
     [Table 1].
   - Line command is processed by reverse sequence(from last to top).
     Accordingly when commands are entered on multiple lines,
     for Browse/Edit command file which has smallest lineno is displayed
     on top of screen and subsequent files are stacked under that.
     If err is occurred, commands BEFORE the line are not processed.  
   - Lower/Upper case is distinguished for the cmd h,i,j,k,L,n and o.
     When lower case,Browse or Edit is determined by the directory    ||~v124R~
     open mode. Uppercase means opposite.                             ||~v124R~
   - To delete file/directory 4 types ("d","/","z","0") command is
     prepared. The difference comes from operation for Read-only file/||~v124R~
     directory and undeletability.
     +---+-------+---------------+
     |cmd|undo   | For ReadOnly  |
     +---+-------+---------------+
     | d |Avail  | Error         |
     | / |Avail  | Deleted       |
     | z |N/A    | Error         |
     | 0 |N/A    | Deleted       |
     +---+-------+---------------+
     In all case,if directory is not empty,confirmation required.
     The screen of deleted is closed which is opened by View command
     typed on the same directory list line.
   - For target of Copy/Move/Rename cmd *\, **\ and ^*\ are useful.   ||~v124R~
       *\  : id of directory containing source file/directory.
       **\ : id of parent directory of *\,also avail **\**\ etc.
       ^*\ : id of dir or filename path of file on the other side of screen
             when screen split.                                       
     Wild card is avail for target name(not effective to pathname).
     If target name contains space,enclose whole target name by quotation.||~v124R~

    (note).file with extension ". SF" on root directory except on A:,
           B: is prohibited to rename or to reset read-only attr.     
           It is to prevent important file for OS/2,for example
           "EA DATA. SF", to be deleted carelessly on DOS.            
           To delete these files in DOS,use attrib/delete DOS native
           command with wild card filename specification.
    (note)DOS6.3 make difference to OS/2 and Windows about wild card.
          For example,x* is same as x*.* under OS/2 and Windows,but under
          DOS 6.3 x1.c is not one of x*.

   - Line command                                                     

     a (Attrib):set file attribute                                    

#if defined(LNX) || defined(W32)
                For TSO file,Version-number and Modification-number,if exist,
                is displayed on attribute column by 4 digit vvmm format.
                "a" line command is used to change this value.
                ATTrib DOS command is not available to change SPF information.
                Use SPF sub command of xe's TSO command to set SPF information.
#endif

#ifdef UNX
                enter in attribute column.
                see ATTrib DOS command for attribute value format.    ||~v124R~
#else
                enter in attribute column by specifying only attribute
                char which you want to set to(e.g. shr),or by + sign  ||~v128R~
                followed by attribute char which you want to add and/or
                by - sign followed by attribute char which you want to
                drop(ex -a+r)                                         
                / (set to the attribute) can be used like as ATTrib cmd.
                a:Archive s:System h:Hidden r:Read only               
#endif

     b (Browse):browse the file                                       
     c (Copy  ):copy file or directory.
                Enter destination name and copy options in new-name column.||~v127R~
                When source is a directory, if destination dose not exist||~v127R~
                destination directory is created.                     ||~v127R~
                If destination exists, with /c option a directory(required||~v127R~
                to be existing) with same name as source directory is created,||~v127R~
                without /c all members of the source directory are copied ||~v127R~
                into the destination directory.                       ||~v127R~
                                                                      ||~v127R~
                When wildcard mask is specified at opened the dir,    ||~v127R~
                only selected members are copied.                     ||~v127R~
                If target is wildcard,source file or member of the directory||~v127R~
                is copied into the destination directory renaming by the wildcard.||~v127R~
                                                                      ||~v127R~
                /s (also copy sub-directory) is added as default,
                You must specify /s- to avoid sub-directory copy.     ||~v124R~
                To override existing file,specify /y or /r after target
                filename like as XCOpy cmd.
                Without /+ option,File attribute like as timestamp is
                copied.
#ifdef UNX
                To skip copy file info,specify -n option.
                Permission err may occur to copy file info even if
                copy is avail case.
#endif
     d (Delete):delete file or directory.
                Read-only cannot be deleted.(Use "/" for that case)
                Deleted file or directory may be Undo-able            ||~v124R~
                if Undelete option is properly set by OPT UNDelete cmd.
                Default is Undeletable for only file/directory deleted||~v124R~
                in the same session.
                To be undeletable,deleted file/directory is saved to
                certain directories,disk space is not freed at delete.
                Use "z" command if you do not want to be undeletable.
                Especially under DOS,Movement of directory cost some times||~v124R~
                because it involves copy operation.                   ||~v124R~
                Root dir is not deleted.
     e (Edit  ):display the file to edit                              
                System or Hidden cannot be updated by OS/2 version.
                (It cause errno=60)
     f (Free  ):free(End) view screen,update is saved.                
     g (Grep  ):grep search in the files or directories.              
                                                                      
                Enter option to grep on rename field such as search string.
                If wildcard char("*" and "?") is contained in grep string,
                enclose it by quotation.                              
                For directory line,last option parameter contains wildcard char
                not enclosed by quotation is treated as wildcard for the directory member.
                e.g.                                                  ||~v128R~
                    _0106||||. ddddddddddd A---                 06-04-19 11:46       33,637
                    g0107||||+ Debug       ----  -n "DATE.*2007" *.c  
                    g0108||||. def         ----  -n "DATE.*2007"      
                    _0109||||. depgen      ----                 05-10-26 09:04           98
                    _0110||||. depgen.aix  A---                 05-04-28 16:30          120
                                                                      
    h/H(Hex   ):Hex display mode open.
    i/I(ECN   ):Use ECN(=EI) or BCN(=BI) cmd.
    j/J(EKN   ):Use EKN(=EJ) or BKN(=BJ) cmd.
    k/K(EK    ):Use EK or BK cmd.
    l/L(EC    ):Use EC(=EL) or BC(=BL) cmd.
     m (Move  ):move file or directory
                enter destination directory in new-name column.
                If rename ,specify also new dir or file name.
                If target is directory,source file or member of directory
                is moved into the directory.
                If target is wildcard,source file or member of directory
                is moved into the parent directory changing the name.
                by that wild card.
                Even when wildcard mask is specified at opened dir,
                copy is done for all member ignoring wildcard mask.   ||~v124R~
                This is different from c(Copy) line command.
                Refer XMOve command about copying of directory time stamp.||~v124R~
                To override existing file,specify /y or /r after target
                filename like as XMOve cmd..
     n/N(EN   ):Use EN or BN cmd.                                     ||~v125R~
     o/O(Open ):Edit or Browse. In the rename column,parm of Edit/Browse||~v124R~||~v125R~
                cmd may be specified.
                This cmd is used when there is required parameter such as CPU8.||~v125R~
     p (Print ):file print,specify print command to be execute in INI file.
                default is XPRINT.EXE                                 
                Directory(it may be opened with wildcard,in this case only||~v124R~
                wildcard matching member are printed) is supported.
                subdir is not a target.
                Remote file is printed locally.                       
     r (Rename):rename file or directory                              
                enter new name in new-name column
     s (Select):Browse if from BROwse command or Option 1 selected    
                on menu,                                              
                or Edit if from EDIt command or Option 2 selected     
                on menu.                                              
     t (Text)  :open by Text mode
     u (Undo  ):Undo for Renamed/Deleted/Moved lines.                 ||~v124R~
                You can enter Undo on the line of delete data save dir.
                For the case screen closed after deleted,
                see Undelete_option of (6).INI file.
         (note).under DOS directory time-stamp is not recovered.
     v (View  ):split and browse file(end by f command)               
     w (vieW  ):split and edit file(end by f command,update is saved)
                System or Hidden cannot be updated by OS/2 version.
     x (eXclude):hide member of the directory(Use "y" to uncover)     ||~v126R~
                effective only when member expanded(+)                
     y (Yield ):re-display hidden member of the directory             ||~v124R~
     z (Zero  ):Delete without undeletability regardless of
                Undelete_option.
                This cannot delete Read-only file/directory or directory||~v124R~
                containing Read-only file/directory.
                Use "0" command for that case.
                It can be disabled by "OPT delz OFF" cmd.             ||~v126R~
     0 (Zero  ):Delete without undeletability regardless of
                Undelete_option.
                This force deletion to Read-only file/directory or
                directory containing Read-only file/directory.        ||~v124R~
                It can be disabled by "OPT delz OFF" cmd.             ||~v126R~
     1 (BrowseB):browse the file. Binary file mode.                   
     2 (EditB ):display the file to edit. Binary file mode.           
     3 (E/B-B ):Open the file as Binary file, Browse or edit depends on the screen mode.
     8 (E/B-8 ):Open the file with option FixedLRECL=80,Browse or edit depends on the screen mode.
                                                                      ||~v124I~
#ifdef UTF8SUPP                                                       ||~v124I~
     [ (O-CPLC):Open the file with option CPLC,Browse or edit depends on the screen mode.||~v124I~||~v125R~
     ] (O-CPU8):Open the file with option CPU8,Browse or edit depends on the screen mode.||~v124I~||~v125R~
#endif                                                                ||~v124I~
                                                                      
     = (Compare):Compare two files/directories using xfc,xdc in this package.
                 xfc:file compare, xdc:directory compare.             
                 Setup ini file if you want to use diff etc.          
                                                                      
                 .Enter "=" command on a couple of lines.             
                 .You may specify the 2nd file name on the rename field of a line.
                 .Option parameters of compare tool xfc,xdc may be entered on the rename field.
                  Followings are description of xfc parameters. (Enter "xfc" on command prompt screen.)
                                                                      
                    XFC:V1.10(W): file compare utility program        ||~v124R~
                    format:                                           
                     XFC  filename1[/range1] filename2[/range2] [/options]
                       filename1,2:filename to be compared.           
                       range1,2   :input range to compare by line(for text file,start from 1)
                                  :or by offset(for binary file,start from 0).
                       /Bn        :do binary compare;n is unmatch ctr to stop compare.default=10.
                       /C[P|N|I][xx]:chk comment. x:comment start id string(ex #,!. default is '//').
                                  :P:output lines with id of '=C' if unmatch is comment only.
                                  :N:No output lines if unmatch is comment only.
                                  :I:full comment line or Null/Space line is ignored.
                                  :else:ignore unmatch of comment except full comment line.
                       /Mm-n      :compare column range in the line(Text file compare only).
                       /Ostyle    :output style,Default is /Od.(Text file compare only)
                                  :style=D:difference only,M:2 files merged,B:both files.
                       /Rnn       :Assume as update line pair when matching char is over this rate
                                  :in a line. Specify digit 0 to 100. 0 means all unmatched line||~v124R~
                                  :is ISRTed or DLETed.(Text file compare only,default is /R50).
                       /T[x]      :Char to replace tab on output list.
                                  :Default is "/T."(period),leave tab when "/T"(with no char)
                       /W[P]      :Word matching(ignore intermediate space or tab)||~v124R~
                                  :P:means output those lines.(identified by '=W',
                                  :  '=w' is for the line by /W and /C).
                       /Na        :No err alarm.                      
                       /Nm        :No msg output when successful compare.||~v124R~
                       ReturnCode :0:Match. 1:Null detected even if text file compare option.
                                  :2:Unmatch is comment only under /CN option.
                                  :3:Unmatch detected. >=4: other err.
                    e.g. XFC  old.c  new.c                            ||~v128R~
                         XFC  old.exe  new.exe  /B                    
                         XFC  old.txt/1-200  new.txt/11-  /M1-72  /Ob /W
                         XFC  old.bin/x2f0-300  new.bin/x2f1-3f1  /B20
                                                                      
                  Followings are description of xdc parameters. (Enter "xdc" on command prompt screen.)
                                                                      
                    XDC:V2.10(W): directory compare utility program   
                    format:  XDC dir1 dir2 [mask] [/Ppath] [/S] [/U[S][T]] [/1] [/2] [/ix] [/Wsz]
                             dir1/2:dir name                          
                                    or intermediate file name(use with /I flag)
                             mask  :wild card spec to select member.  
                                    It is not applied for sub-dir name itself
                             /A    :use alias for long file name(WIN/GCC version only)
                             /F    :compare file contents if size is same
                             /L[nn]:use long file name. nn:filename print width. default 20.
                             /Ppath:subdir specification in the intermediate input file.
                             /S    :search also all sub directory     
                             /U[S][T][L|H]:output unmatch only        
                                    S:means to list file size unmatch only
                                    T:means to list timestamp unmatch only
                                    L/H:means to list timestamp is Low/High only
                             /1    :output dir1 member only           
                             /2    :output dir2 member only           
                                   :default is /1 and /2              
                             /ix   :use intermediate file for input or output
                                    x=o:write directory contents to intermediate file
                                    x=i:compare dir through intermediate file by /lo
                                    x=n:dir1/2 is not intermediate file(default)
                             /Wsz  :work buff area size(default sz is 1024000)
                             /Yx,/Nx:toggle type switch; x is as following.
                                  c   :case sensitive filename.       
                                       Defult is sensitive if one or the other is UNIX file system.
                    sample result:                                    
                    abc.d         (96-06-01 12:58 ASHRD  148250) <*= (96-06-01 12:59 -----  148250)
                    A~~~~~~~~~~~~  A~~~~~~~~~~~~~ A~~~~  A~~~~~  AAA  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                    |              |              |      |       |||       in Dir2
                    file/dir name  time stamp     attr   size    ||+--size compare result||~v124R~
                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  |+---' ' if same attr
                            Status in Dir1                       +----timestamp compare result
                     --- XDC  End Of Help ---                         
                                                                      
                (ex1).Using split screen,2 files are specified.       
                      The file on the active(cursor is set) screen is the 1st file for xfc.
                      When the two lines are on the same dir,1st file is which xfc parameter
                      is specified. When no parameter specified, the 1st file is of
                      smaller line-no.                                
                                                                      
                    ===>                                                                  ===>HALF
                    _0063||||. c                  A---                 06-11-30 19:57        1,591
                    _0064||||. c0                 A---                 06-04-19 13:33          901
                    _0065||||. cclxe.bat          ----                 96-02-04 16:49           82
                    _0066||||. cid                ----                 00-10-22 15:03           78
                    _0067||||. cidspf             ----                 98-02-27 10:54           79
                    _0068||||. cob                ----                 02-03-18 10:28          656
            -->     =0069||||. cob0               A---                 07-05-03 12:33          738
                    _0070||||. cob00              ----                 01-09-18 15:48          656
                    _0071||||. cob1               A---                 06-07-26 10:15          984
                    _0072||||. cob10              ----                 01-09-18 15:35        1,148
                    _0073||||. cob10e             ----                 01-09-18 19:48        1,230
                    EDIT---|p:\ (ROOT DIR) -------------------------------------------------------
                    ===>                                                                  ===>HALF
                    _0038||. B112                 A---                 06-10-15 16:19          472
            -->     =0039||. BB1                  A---                 06-10-18 10:08          162
                    _0040||. BB2                  A---                 06-10-19 19:54          162
                    _0041||. BB3                  A---                 06-10-17 21:28        3,563
                                                                      
                                                                      
                (ex2).2nd file is specified on the rename field.      
                      *\(on the same Dir), ^*\(on the Dir of 2nd screen) can be used
                      as part of filename notation.                   
                                                                      
                    ===>                                                                  ===>HALF
                    _0065||||. cclxe.bat          ----                 96-02-04 16:49           82
                    _0066||||. cid                ----                 00-10-22 15:03           78
                    _0067||||. cidspf             ----                 98-02-27 10:54           79
                    _0068||||. cob                ----                 02-03-18 10:28          656
            -->     =0069||||. cob0               A---  -c ^*\@2       07-05-03 12:33          738
                    _0070||||. cob00              ----                 01-09-18 15:48          656
                    _0071||||. cob1               A---                 06-07-26 10:15          984
                    _0072||||. cob10              ----                 01-09-18 15:35        1,148
                    _0073||||. cob10e             ----                 01-09-18 19:48        1,230
                    _0074||||. cob11              A---                 06-07-25 19:41        1,230
                    _0075||||. cob11e             ----                 01-07-29 17:40        1,078
                    EDIT---|p:\ (ROOT DIR) -------------------------------------------------------
                    ===>                                                                  ===>HALF
                    *****|********** TOP OF LIST *************************************************
                    _0001|: p:\                   x2000                     732,960K/  11,090,032K
                    _0002||. #1                   A---                 06-10-19 19:54           81
                    _0003||. $1                   A---                 06-10-19 19:54           81
                    _0004||+ $RECYCLE.BIN         -SH-                 06-10-26 22:40            0
                    _0005||. &1                   A---                 04-06-23 19:04            0
                    _0006||. 66                   A---                 06-10-15 16:19       80,792
                    _0007||. @                    A---                 06-12-01 10:39          288
                    _0008||. @2                   A---                 06-11-11 15:58        1,833
                                                                      
                                                                      
     / (slash ):Delete with undeletability of Undelete_option.
                This force deletion to Read-only file/directory or
                directory containing Read-only file/directory.        ||~v124R~
     - (expand):refresh and expand the directory listing its member.
                It can be used wild card file mask like as *.c
                It may be reset by new mask for already expanded dir, 
                leaving members(not refreshed) of subdirectory which is
                corresponding to the mask,deleting unmatched subdir
                which may have member expanded.
                excluded status is reset.                             

                By /ox[-](x=n/t/s) parm in the rename field
                dirlist is sorted by name/timestamp/size.(See SORt cmd)

     > (expall):expand all tree nodes and leaves under the directory. 
                It can be used wild card file mask like as *.c
                (once reset and read from the directory).             
     + (reduce):delete members of the directory from the list.        
     : (path  ):for equal or upper level of the directory,remain only 
                the directory of on the path of the directory.
                If the subdir is not expanded before, only path entries are displayed,||~v124I~
                enter expand cmd("-" or ">").                         ||~v124I~
     . (chdir ):set current drive and current directory from the line.
                set from the parent directory when specified on the line
                of normal file.
                                                                      ||~v124I~
            #ifdef W32                                                ||~v124I~
            	UNC format(\\server1\\dir1\...) is treated under the psude drive "\:".||~v124I~
                "." is applied to the line of shared folder,          ||~v124I~
                current drive is set to "\:" and current dir is set to the shared folder.||~v124I~
                Then, \:file means \\server1\dir1\file, \:\file means \\server1\file.||~v124I~
            #endif                                                    ||~v124I~
                                                                      ||~v124I~
     % (appcmd) / $(appcmdAsync)                                      ||~127DR~
               :apply command entered in the field of rename field.   ||~127DI~
                In the cmd string,% is used to specify position of filename
                parm. Without %,filename is appended to the string.
                Set delimiter ";" between multiple cmd.               ||~v124R~
                If ";" is part of parameter specify like as "\;".     ||~v124R~
                $(Async execution) will be required for Linux not to wait xe's processing.||~127DI~
                Command result is redirected to the file "#.cfso_n"(n:1,2,...).||~127DI~
                e.g.                                                   ||~v124R~||~v128R~
                   To change string in the file,enter on rename field as following.||~v124R~
                   sed s/fromstring/tostring/g % > wkd\%.new          ||~v124R~
                   Cmd result is browsed by " ::cfso".(::#.cmd contains executed cmd).||~v124R~
                   "sed" unix tool. Search on web for Windows version.||~v124R~
                   (Note) Don't specify the original file name as redirection target.||~v124R~
                          You will get corrupted file.                ||~v124R~
                   To apply a cmd to all wildcard selected file in the dir,||~v124R~
                   xdig cmd in this package will be used.             ||~v124R~
                   e.g.                                                ||~v124R~||~v128R~
                      Windows version: xdig /L1 /Nh % *.c "//sed s/from/to/g \%\%fp\%\% > \%\%fp\%\%.new"||~v124R~
                                       ( \%\%fp\%\% is passed to cmd prompt as %%fp%%, xdig accept it as %fp%.||~v124R~
                                       D-quote is required to pass ">" (redirection) to xdig.||~v124R~
                      Linux version  : xdig /L1 /Nh % *.c "//sed s/from/to/g \%fp\% > \%fp\%.new"||~v124R~
                                                                      ||~v124R~
                      Some shell script will help you abridge keyboard typing.||~v124R~
                                                                      ||~v124R~
                      EXE cmd redirect function is little bit slow but more convenient.||~v124R~
                                                                      ||~v124R~
#if defined(WIN) || defined(XXE)
     ! (assoc) :pass file to the application associated by extension name.
                e.g. xxx.xls is passed to Excel, xxx.pdf to Acrobat Reader.||~v128R~
#endif

     # (execute):execute file by submit(local file) or rsh(remote file).
                 parameter may be specified in the rename field.
     & (spawn)  :execute the file asynchronously(not wait termination).
                 parameter may be specified in the rename field.
     ^ (send)   :Send filename from dir-list to utility panel(3.12/3.14).
                 According to KeyInpiutMode insert(set to empty line) or
                 replace(set to the line reversed).                   
                 See also SendFName function keys(Alt+i/r/d/Up/Down). 

************************************************************************
(5).DOS command.        ... Description of [Table 5]                  
************************************************************************

[Table 5] DOS command.
 +--------+--------+------------------------------------------------+
 |command | abridge|description                                     |
 +--------+--------+------------------------------------------------+
 |CHDir   | CD     |set current directory                           |
 |PWD     |        |set current directory                           |
 |MKDir   | MD     |make directory.                                 |
 |RMDir   | RD     |remove directory.                               |
 |ATTrib  |        |change file attribute.                          |
 |CHMd    |        |set file permission. same as ATTrib command.    |
 |REName  |        |change name of file/directory.                  |
 |DElete  | DL     |delete files or directory.                      |
 |XDD     | DT     |delete directory/file.(dirdelete,deltree)       |
 |XCOpy   | CP     |copy file or directory.                         |
 |COPy    |        |same as above(for screen except BROWSE/EDIT)    |
 |XMOve   | MV     |move file or directory.                         |
 |MOVe    |        |same as above(for screen except BROWSE/EDIT)    |
 |XAPPend |        |concatenate a file at the end of another file.  | ||~v124R~
 |APPend  |        |same as above(for screen except BROWSE/EDIT)    |
 |XPRint  | PR     |print file using XPRINT.EXE                     |
 |SET     | EXPort |set environment variable                        |
 |GREp    |        |execute OS grep cmd and show result             |
 |TSO     |        |support TSO file access                         | ||~v124R~
 +--------+--------+------------------------------------------------+

#ifdef UNX
#else
 +--------+--------+------------------------------------------------+
 |d:      |        |set default drive, d is drive letter(a,B,c etc.)| ||~v124R~
 |        |        |  #ifdef W32                                    | ||~v124I~
 |        |        |    "\:" means pseudo drive for shared file     | ||~v124I~
 |        |        |  #endif                                        | ||~v124I~
 +--------+--------+------------------------------------------------+
 #ifdef WXEXXE
 +--------+--------+------------------------------------------------+
 |WXP     |        |print file using print function of WXE/XXE      |
 +--------+--------+------------------------------------------------+
 #endif
#endif
   - These command in the [Table 5] is processed internally not       
     passing control to shell processor,which have slightly difference
     with native shell command process.                               ||~v124R~
     Do not use "DOS" or its abbreviation ">" to process internaly,   
     To use native command of same verb, specify "DOS" or ">".         ||~v124R~
     e.g. "DEL abc" is processed by XE,">DEL abc" is processed by shell.||~v128R~
   - Use "DOS" or ">" to execute other commands not listed on the table.
     It may be omitted when Command Result Edit screen,but COPy/MOVe is
     treated as EDIT cmd.To copy/move file,use "DOS"(">") or use
     XCOpy/XMOve command.
   - If command string is not specified,sub shell screen is displayed,
     enter EXIT command to end the sub shell.
#ifdef UNX
#else
     Command prompt may be changed by Sub_Shell_Init parameter on INI
     file.
#endif
   - If command string is too long for command input line,open Command
     Result Edit screen and type it on the last line.
   - COPy/MOVe is duplicated with command on (3).Edit Command.        ||~v124R~
     On BROWSE/EDIT/Command Result Edit  screen it works as copy/move
     a file into the screen,on other screen it works as copy/move
     files/directories. If it is confusing you,use XCOpy/XMOve or CP/MV||~v124R~
     to copy/move files/directories.
   - Commands in the lower part and other commands not in the table is
     processed in the child process which was temporary created,
     and stdout and stderr is written to ::so(in the work directory).
     If any line is written to ::so,process termination code with last
     line of ::so is displayed on first header line. If no data written,||~v124R~
     termination code is displayed with command text.
     Some command return non zero value even if process is normary
     terminated. If so,you should clear command input line.           ||~v124R~
     Check ::so using "E ::so" or "B ::so".If you are opening multiple
#ifdef UNX
     session it may be ::so_,::so__,...etc.
#else
     session it may be ::so!,::so!!,...etc.
#endif
   - Under Command Result Edit screen,contents of ::so is copied after
     the end of currently editing file. The line previously displayed||~v124R~
     are scroll-upped then latest command result are displayed on the
     top of the screen.
     Files used by this screen is from ::so0 up to ::so9,and used     ||~v124R~
     circularly each time command edit screen opened.
   - Some command may return other than 0 even if it is normally      
     processed. Input command string may remain on the command input line||~v124R~
     if return code is not 0.You must clear it manually.              
   - You can specify redirection to commands.
   - *\, **\ and ^*\ are useful as pathname of filename.              ||~v124R~
      *\  : id of directory containing source file/directory.
      **\ : id of parent directory of *\,also avail **\**\ etc.
      ^*\ : id of dir or filename path of file on the other side of screen
      Wild card is avail for filename.
      Wild card of target filename is effective on filename only,
      not on pathname.
 (note)DOS6.3 make difference to OS/2 and Windows about wild card.
       For example,x* is same as x*.* under OS/2 and Windows,but under
       DOS 6.3 x1.c is not one of x*.
   - If target file/directory name of Rename/Copy/Move cmd contains space,||~v124R~
     enclose whole target name by quotation.
                                                                      
#ifdef UNX
   = ATTrib  mode name [name...]
               mode:ooo , oooo or oooxx format.
               oooo:first "o" is setuid(4),setgid(2),sticky(1).
                        last 3 "o" is for usual permission,owner,group
                        and others.
               ooo :permission only. no effect for setuid(4),setgid(2),sticky(1).
               oooxx:ooo is usual permission, xx is uSgt.
                     u:setuid, S:setuid+setgid, g:setgid, t:sticky.   ||~v124R~
               See help msg by attr command with no operand.
          (Note)File of FAT drive mounted may not be changed.
#else
   = ATTrib  [{+|-|/}{a|s|h|r}...] name [name...]
               a:Archive s:System h:Hidden r:Read only                
                 You can specify flag continuously like as +sh -a+shr.
               + :add the attribute
               - :reset the attribute
               / :set to the attribute
                  specify "/" only to reset all attribute.
               e.g.  +sh , -a+shr , /ar                               ||~v128R~
               sub directory attr is not changed when wild-card used. 
               member file attr is not changed but directory attr is  
               changed when directory is specified.                   
#endif
                                                                      
#ifdef UNX
   = CHDir   [pathname | *]
               set to home directory if operand missing.
               * : set from file/directory currently displayed.
#else
   = CHDir   [[d:]pathname | *]
               display current directory if operand missing           
               * : set from file/directory currently displayed.
                                                                      ||~v124I~
  #ifdef W32                                                          ||~v124I~
               UNC format(\\server1\\dir1\...) is treated under the pseudo drive "\:".||~v124I~
               After "CD \\server1\dir1",                             ||~v124I~
               \:file means \\server1\dir1\file, \:\file means \\server1\file.||~v124I~
  #endif                                                              ||~v124I~
                                                                      ||~v124I~
#endif
             wildcard is available if unique path determined.
                                                                      
#ifdef UNX
   = CHMod   mode name [name...]

	        same as ATTrib cmd.
#else
#endif

   = DELete file-spec [file-spec...] [/s] [/h] [/d] [/a]              ||~126FR~
                                                                      ||~126FR~
       (Delete file or files in the directory, Use XDD to delete the directory)||~126FR~

       /s   delete also system file.
       /h   delete also hidden file.
       /d   delete also sub-directory.
       /a   delete also specified directory itself.

#ifdef UNX
            Hidden attribute is for files with name starting ".".
            System attribute is for files without W-permission.
            For root user System attribute is ignored.
#endif
               File with hidden or system attr is not found when
               /h or /s option is not specified.
               (xdd command ignore these 2 attribute).
               deletion continue until error is detected
               when multiple files specified.
               directory member is deleted in the order of name seq.
               process stop when detected read-only file/directory.
               confirmation required when directory or wild card is
               specified,execute deletion after all input confirmation.

   = EXPort [{ var[=[value]] | < env-file }]

        Same as SET cmd.


   = GREp  [grep options] { * | file-spec }

        .Same parameter as native cmdline tool except on browse/edit screen.
         *\(currently opened dir) or ^*\(opened dir on the other split||~v124R~
         screen) notification is avail in file-spec.                  ||~v124R~
        .On browse/edit screen, "*" file-spec parameter is used to
         search in current screen. Flagged line is searched by "F *G". ||~v124R~
         On the other case,grep result is saved to temp file "::#go".
         On cmd result screen,::#go is displayed on the screen.
         (Note).grep search on current screen is currently supported  ||~v124R~
                only for the grep utility which display lineno on top
                of line with "nnn:" format if -n option specified.
                                                                      ||~v124I~
				This function is yet remains,but use Find cmd with -g option.||~v124R~
                (No external process is generated).                   ||~v124R~
                                                                      ||~v124I~
               .On Linux,space embedding path name is troublesome,    
                specify like as  <grep "a b.dir"/*.c>,
                <grep "a b.dir/*.c"> may fail.
                                                                      ||~v129R~
         Find.exe cmd is available on Windows 10 as alternative of grep.||~v129R~
         Register cmd like as following.                              ||~v129R~
           gre c:\Windows\System32\find.exe %1 %2 %3 %4               ||~v129R~
         Use it on =6 panel like s following. (Quotation is required for search word)||~v129R~
           gre /N /I "search-word" c:\user\srctext                    ||~v129R~
#ifdef UNX

   = MKDir   -Mmode dir-name [dir-name...]

       -M   mode;see ATTrib cmd.

#else

   = MKDir   dir-name [dir-name...]

#endif
               create continue until error is detected                
               when multiple directory specified.                     
                                                                      
   = REName  oldname newname
               Directory can be renamed.
               specify newname without path info(rename in the same
               directory as oldname)

   = RMDir   dir-name [dir-name...]
               removable only empty and not current directory.        
               remove continue until error is detected                
               when multiple directory specified.                     
                                                                      
   = SET     var[=[value]]
     SET     < env-file

       - Same as EXPort cmd, set environment variable.
         Use to set, PATH etc., environment variable required for OS Native cmd.||~v124R~
       - On cmd-result-panel,to display all variable enter cmd verb only.
         Following native cmd is executed.
         "env" for unix, "set" for else.
       - "set var":display current value. "set var=":reset
         "set < env-file": set by env-file.
         env-file record format:
            [set|export] var=[value] [comment]
       - ::xe.env(xe.env in workdir) is read at xe start if exist.
         ::xe___.env(___:OStype, e.g. xewin.env) is read alternatively ||~v124R~||~v128R~
         if exist.

   = {XAPpend|APPend} source target [/r] [/:]

       /b   TSO file transfer without conversion.                     ||~v124R~

       - Same as COPy with /+ specified, /s option is invalid.
       - When source is directory and target is not exist,Target file ||~v124R~
         is created then appended all files in source directory.
         Sub-directory is ignored.
         If target is directory,append is executed to files in
         the target directory.

   = {XCOpy|COPy} source target [/y[-]] [/r[-]] [/d] [/t] [/+] [/:]
                                [/s] [/s-] [/n] [/b]
                                [/L{-|[T]M-}]                         ||~127AR~
                                                                      
       When source is directory, if target is not exist,              ||~v127R~
       target directory is created. If target exists,                 ||~v127R~
       with /c option, a directory with same name as source directory is created||~v127R~
       in the target directory(required to be existing),              ||~v127R~
       without /c, all members of the source directory are copied into the destination directory.||~v127R~
                                                                      ||~v127R~
       Copy to file from directory is denied.                         ||~v127R~
       (It is the difference from native COPY cmd, COPY cmd treated like as XCOPY).||~v127R~
       Override to read-only file is also denied.                     ||~v127R~
       Hidden file,empty sub directory is copied also.                ||~v127R~
       Copy is denied when target has system and/or hidden            ||~v127R~
       attribute and source dose not have corresponding               ||~v127R~
       attribute even if /r is specified.                             ||~v127R~
       To override existing file,specify /y or /r after target filename.||~v124R~||~v127R~
       Without /+ option,File attribute like as timestamp is          ||~v127R~
       copied.                                                        ||~v127R~
#ifdef UNX                                                            ||~v127R~
       To skip copy file info,specify -n option.                      ||~v127R~
       Permission err may occur to copy file info even if             ||~v127R~
       copy is avail case.                                            ||~v127R~
#endif                                                                ||~v127R~
                                                                      ||~v127R~
       /y   replace if same name file already exist.
            stop copy with no /y if same name file already exist.
       /y-  skip copy when same name file exist and continue process.
       /r   same as /y
       /r-  same as /y-
       /b   TSO file transfer without conversion.                     ||~v124R~
       /c   if copy source is dir or wildcard,create source dir in
            target dir if same name dir is not exist in target dir.
            If source is dir and target is wildcard, renamed target is created if nor exist,||~127MR~
            and members of source is copied to renamed target(RenameCopy).||~127MR~
       /d   (effective other than OS/2)select only files source is new.
            Note) for remote upload,file timestamp is not preserved
                  and current time is set.
       /+   append  if same name file already exist.                  
       /:   it is needed if you copy between root directory.          ||~v124R~
       /s   copy sub directory                                        
       /s-  do not copy sub directory(default)                        ||~v124R~
                                                                      
#if defined(W32)||defined(UNX)
       /t   Text mode. for remote<-->local copy only.
            LF(0x0a)<-->CRLF(0x0d0a)conversion may occur.
#endif

#ifdef UNX
       /n   bypass copy file info.
#endif
                                                                      ||~127AR~
#if defined(W32)||defined(UNX)                                        ||~127AR~
     /L{-}|[T]M-} : Symbolic Link option, for also Junction point and Mount point on NTFS drive of Windows||~127AR~
            /L-   :bypass copy link entry                             ||~v126I~
                   From Vista, copy(create new link entry) requires Administrator privilege for symlink.||~v126I~
                   Open command prompt with administrator privilege.) ||~127AR~
            /LT   :copy target file/directory of the symbolic link.   ||~127AR~
            /LM-  :no symbolic link err msg is issued.                ||~127AR~
            /LTM- :/LT and /LM-                                       ||~127AR~
#endif                                                                ||~127AR~
                                                                      ||~127AR~
     (note)-additional to OS/2 or Windows DOS XCOPY command.
            (1)copy sub-directory time-stamp and attribute.
               for top-directory it is copied only when target is new
               and /s option specified.
               (under DOS and Windows,time-stamp/attribute for directory
                is not copied)
            (2)hidden/system files are copied unconditionally.        
           -COPy command on the screen BROWSE/EDIT is of Edit Command.
                                                                      
   = XDD     dirname  [dirname...]
                                                                      ||~126FR~
       (Delete the directory)                                         ||~126FR~

       r    Delete also Read-only file/directory
       r-   Delete except Read-Only file/directory
       rl   Do not delete,but count Read-only file/directory
       y    Assume Yes replied for dir delete confirmation",          

               wild-card or file name can specified,
               confirmation required when directory or wild card is
               specified,execute deletion after all input confirmation.

#ifdef UNX
#else
     (note)-XDD.exe also is in the same package.
            deference between XE command process is as following.     ||~v124R~
            .rl list all Read-only file/directory name
            .list all entry deleted.
            .for each directory confirmation and delete.
#endif

   = {XMOve/MOVe} source target [/s] [/t] [/y[-]] [/r[-]] [/b]
                                [/L{-|M-}]                            ||~127AR~

       /s   copy sub directory.(This is effective only when wild card
            source. If not,directory containing sub-directory is fully||~v124R~
            moved.)
            target is destination directory name.
            if you want rename simultaneously,specify also new-name.  
       /y   replace if same name file already exist.
            stop copy with no /y if same name file already exist.
            time stamp is not copied for the subdirectory with the same name.||~v128I~
       /y-  skip copy when same name file exist and continue process.
       /r   same as /y
       /r-  same as /y-
       /b   TSO file transfer without conversion.                     ||~v124R~

#if defined(W32)||defined(UNX)
       /t   Text mode. for remote<-->local copy only.
            LF(0x0a)<-->CRLF(0x0d0a)conversion may occur.
       /L{-}|M-} : Symbolic Link option, for also Junction point and Mount point on NTFS drive of Windows||~127AR~
                   Effective only when inter drive move,else simply renamed.||~127AR~
            /L-   :bypass copy link entry                             ||~127AR~
                   From Vista, copy(create new link entry) requires Administrator privilege for symlink.||~127AR~
                   Open command prompt with administrator privilege.) ||~127AR~
            /LM-  :no symbolic link err msg is issued.                ||~127AR~
#endif

#ifdef UNX
#else
     (note)-additional to OS/2 MOVE cmd is support for inter-drive
            movement(XCOPY and DEL).
           -additional to DOS MOVE cmd is support for inter-directory
            file and directory movement(XCOPY and DEL).
#endif
           -MOVe command on the BROWSE/EDIT panel is of Edit Command. ||~v124R~

#ifdef UNX
   = XPRint {in-file | * | ** | ***} [-tabon] [-xprintoption -...]

       Xprint_Command_LNX is required on ini file.
       XPRint command simply execute that command with specified opd.

#else
   = XPRint {in-file | * | ** | ***} [out-file(PRN)] [-tabon] [/xprintoption /...]

       XPRINT.EXE must be on PATH env.
       PATH may be set by SET cmd.
       See xpe.txt for detail of XPRINT.EXE                           ||~v124R~
 #ifdef WXE
   = WXP (same operand format as XPRint except /xprintoption)
 #endif
#endif

       On edit/browse screen,following special file is supported.
       *   :print currently opened.
       **  :print currently opened.excluded line is printed as you see.
            Hex mode displayed screen is also supported.
            Column gauge is printed if displayed.                     ||~v124R~
            To print vertical HEX format,use ** or *** parameter.     ||~v124R~
            For binary file ctl-char is printed as ".".
            Or use /Md xprint option when not ** case to replace
            ctl-char by ".".
       *** :print a current screen page.

       -tabon:screen print("XPR **/***") send alternative display
         char for tab(0x09) or dbcs space when tab display mode is ON.||~v128R~
         if -tabon is not specified space is send to printer for
         tab and DBCS space alternative display char.
       .label range specification supported with * and **.            
       (note) tab may not be printed and line is shrunk if printer    
              dose not support tab display char when tab display mode is on
              by "Tab on" cmd. Use "Tab off" before xprint in that case.
       remote file is printed on local.

#if defined(LNX) || defined(W32)

   = TSO  hostid { Quit | Logon [FS|FS3|FST] | Logoff | Cancel | {Reply|TSO|Action} ["text..."]||~v124R~
                          | { Alloc|Free|SPF } DataSet [alloc/SPF options] }

       quit  :terminate xe3270.
              If this command is not effective,kill it by tool xkp.exe.
       Logon :TSO Logon.
              This is not needed at normal case,Logon is automatically done
              at first Edit/Browse command to the destination.
              When used on =6 panel,the panel switches to TSO mode.
                FS :output of TSO command is displayed by full screen mode.||~v124R~
                FS3:3270 keyboard mode fullscreen.                    ||~v124R~
                FST:TSO  keyboard mode fullscreen.                    ||~v124R~
       Logoff:Do TSO logoff and termination of 3270 session.
              Use this to release TSO UserID and 3270 session.
              When used on =6 panel,the panel switches to local mode.
       Cancel:Use this to release 3270 thread waiting response from 3270||~v124R~
              emulator. 3270 emulator process is killed.
              Or use to free thread entry when system+UserID count reached
              to maximum 10.
       Reply :Use to write on the TSO screen when "REENTER-" is issued.
              (xe automatically reply to REENTER caused by DSName format error)||~v124R~
              Note) Ensure "\n" at the end of string for Enter key.   ||~v124R~
                    S3270 accepts other special string such as        ||~v124R~
                    \t(TAB), \r(Newline), \f(Clear).                  ||~v124R~
       TSO   :To enter any other TSO cmd. (Jump to cmdline then enter strings with last Enter)||~v124R~
              TSO SUBMIT cmd is supported by xe's SUB cmd.            ||~v124R~
                e.g. TSO h01: TSO "call 'HERC01.TEST.CLIST(FOO)'"      ||~v124R~||~v128R~
       Action:Use to write 3270 command.                              ||~v124R~
              e.g. PA1 key:Action "PA 1". Enter key: Action Enter.     ||~v124R~||~v128R~
       Alloc :Allocate DataSet using TSO ALLOCATE command.
              Use to control exclusive access.
              Default option of TSO is DISP=OLD.
              NEW,CYL,.. option is also passed to TSO,but LRECL may not
              be supported by Turnkey MVS TSO.
       Free  :Release DataSet allocation.
       SPF   :update SPF information
              DataSet parameter is required to specify member(wild card is accepted).
              option format is as following

        	   [V=xx] [M=xx] [DT0=yymmdd] [DTM=[yymmdd[hhtmss]]] [LC] [LC0[=xx]] [UID[=userid]]||~v124R~

               V  :Version number(<100)
               M  :Modification number(<100)
               DT0:Creation date.
               DTM:Update date and time
               LC :current line count. set by reading the member.
               LC0:initial line count. if =xx is missing,current count is set.
               UID:UserID. if =userid is missing,set userid of hostid parameter.||~v124R~
                 e.g. TSO h01: spf 'herc01.jcl.asm(memb1)' "DTM=081231101230 lc"||~v124R~||~v128R~

       - support TSO access.                                          ||~v124R~
       - Same command is available from xe3270 shell screen.
       - logon cmd on =6 panel changes the panel to TSO mode.
         You can enter native MVS TSO command itself without xe TSO command prefix
         like as "listalc" and result is displayed on the screen.
           =6.h01                                                     ||~v124R~
         is same effect as logon to remote then open the panel shows 3270 screen.||~v124R~
         logoff command switches back to local command mode.
         For the case of duplication of TSO command and xe cmd,        ||~v124R~
         use >(DOS cmd prefix) like as                                ||~v124R~
           >LISTA\n                                                   ||~v124R~
             \n appended at end of the line means Enter key.              ||~v124R~||~v126R~
             Do not forget to append \n.                              ||~v126R~
             Or follow by string \n at next.                          ||~v126R~
             e.g. On =6 TSO mode panel                                ||~v126R~||~v128R~
                  ===>LISTDS\N                                        ||~v126R~
                       --->ENTER DATA SET NAME -                      ||~v126R~
                  ===>'SAMP.PDS'                                      ||~v126R~
                       --->No response                                ||~v126R~
                  ===>\N                                              ||~v126R~
                       --->(D/S Info)                                 ||~v126R~
                           READY                                      ||~v126R~
         If you want to execute local command in TSO mode,put ":" as
         prefix like as ":grep ABC *.c".
#endif

************************************************************************
(6).INI file.                                                         
************************************************************************
   - Place xe.ini in your working directory. (::xe.ini)               ||~v29tR~
   - The default value template can be re-output by INI command after started by  with "xe -i".||~v29tR~
     Do this if you modified the INI file and it went wrong.          ||~v29tR~
     "#" is the beginning of a comment, use it instead of deleting a line,||~v29tR~

   - [FUNCTION] section.
      .Coding sample

       (function name)       (key name)  (cmd verb)    (cmd alias)
        Swap              =   F9        = SWA        =  W

      .Assign function key to a function.
       Duplicated assign is not allowed except following two case.
       First is between Graphic char of English mode and Japanese mode.
       Second is between two functions,effective screen type is not
       duplicated. Such as F10 is shift right on edit screen and      ||~v124R~
       command copy on dirlist screen.
      .See INI file for detail how to assign.
       Warning. Shift+Esc etc. may be intercepted by OS/2 or Win95.   ||~v124R~
                Difference may exist between key board type when use  ||~v124R~
                Alt+char key other than alphabetic like as (-) (:).   ||~v124R~
      .To reset default assignment you must assign other key or
       assign null by typing (#) after (=).Default is yet effective
       even if you nullify the whole line putting (#) before function name.
       Check duplication with also default assignment when duplication||~v124R~
       error msg is issued.
       You cannot reset fixed assignment indicated by (*).
       Functions require operand is basically for command name only,  
       key may not be assigned.
      .Combinations keys Alt+, Ctrl+, Shift+Alt+ and Shift+Ctrl+ are available.||~v128R~
       Shift+Alt+ and Shif+Ctrl+ combination are available only to Fn, Ins, Del and||~v128R~
       destination keys(Up, Down, Left, Right).                       ||~v128R~
      .Linux may define those keys as shortcut.                       ||~v128R~
       In that case, to utilize these keys change Linux Settings->Shortcut.||~v128R~
       When key without Shift(A+Fn,C+Fn) is defined as shortcut,     ||~v128R~
       it mey be required to set it disable.                          ||~v128R~
      .Changes on =0.2 panel are saved to ::xe!save! at end of process,||~v128R~
       and effective at next startup, INI file is not updated.        ||~v128R~
       When you are using INI file(::xe.ini exists), assignment by INI file is||~v128R~
       effective(override up to number of defined key on INI file).   ||~v128R~
       After restart, INI file can be updated by INI cmd.             ||~v128R~

   - [OTHER] section
       Some of following option can be override by exe parameter.
       (Check exe parameter by "xe /?")
       Format   Keyword = Value.                                    
       or       Keyword =CID column=CID flag=CID type (for CID list)
       In the following,default value is typed as right value.      
       But in the INI file written by INI command,default value is  
       typed in the parenthesis after the comment sign(#)           
                                                                    
       .Command_Stack      =20                                      
         command stack depth for command retrieve.                  
                                                                    
       .Init_Heap_Block    =5                                       
         initial memory allocation block count by unit of 64KB      
         (effective for OS/2 version only,debug purpose only)       
                                                                    
       .Confirm_CANCEL     =1                                       
         confirm(1) or not(0) when CANCEL update                    
                                                                    
       .Confirm_SAVE       =1                                       
         confirm(1) or not(0) when override file by SAVE file command.
                                                                      
       .Confirm_UNDO       =1                                         
         confirm(1) or not(0) when UNDO updated line.                 
                                                                      
       .Dump_When_Err      =1                                         
         write dump(1) or not(0) for debug when internal error detected.
         (cause abend for OS/2 and WIN version)
                                                                      
       .R-Ctl_ENTER        =0                                         
         Assign(1) Right-Ctrl key to function "Execute+Next-Line" and 
         Enter key to function "Next line",or not(0).                 
         Alternative of "R-Ctrl_ENTER=1" is -Yr command line option.  
         Or use "OPT RCTL ON" command or set checkbox "R-Ctrl" to ON  
         for gxe/wxe.                                                 
                                                                      
       .R-Ctl_NewLine      =0                                         
         assign Right-Ctrl key to function "Next-Line".               
         Enter key is yet assigned to function "Execute+Next-line".   
         Note)Typamatic for Right-Ctrl key is not effective for OS/2 and
         gxe version. R-Ctrl is not used for Linux console version.   
                                                                      
       .InsertLine_Indent  =1                                         
         Indent cursor positioning under the first non space char of  
         preceding line when line inserted(1),or not(0).              
                                                                      
       .Change_ID_Type_C   =68="//"= C,H,CPP,HPP
        Change_ID_Type_ASM =68=";;"= ASM
        Change_ID_Type_DOC =71="||"= DOC,ME                           ||~v124R~
        Change_ID_Type_4 --->Change_ID_Type_9                         
         "CID column position,2 byte prefix and file extension" list.
         Up to 2 byte postfix can be specified like as "//,??".
         "//" is prefix,"??" is postfix.
         The line with position=0 is ignored.
                                                                      
       .Fixed_CID_prefix   ="CID:"                                    
         Fixed CID specification prefix ID(Used on first line of each 
         file,max 15 byte prefix).String following this string is used
         as CID.(") is only needed when use space char.               
         see (0)-(E)."CID (Change ID)".
                                                                      
       .Initial_Ins_Mode   =0                                         
         Insert(1) or Replace(0) mode at start.                       
                                                                      
       .Box_Ins_Cursor     =1
         Use box type cursor(half height) for insert(1) or rep(0) mode.
                                                                      
#ifdef UNX
#else
       .EOF(^Z)_Write      =3                                         
         EOF id(0x1a) write option when file save.                    
         0:write no EOF                                               
         1:write EOF                                                  
         2:write when input file has it and write for new file        
         3:write when input file has it and write no EOF for new file 
         (note)When partial file edit case by end line parameter      
               last part of file is copied,so this parm is ignored and
               EOF char is written when input file has it.
#endif
                                                                      
       .ASCII_only         =0                                         
         Accept char 0x01-->0x1f by Ctrl+a etc. which is not assigned 
         to any function(0) or reject(1).                             
                                                                      
       .Beep               =1
         Set 0 if you feel beep sound is noisy.

#ifdef UTF8SUPP                                                       ||~v125R~
                                                                      ||~v124R~
       .UnicodeTbl        =filename                                   ||~v124R~
          Specify unicode table filename if you want change the unicode codepoint attribute||~v124R~
          of char width and unprintable.                              ||~v124R~
          See "UTF8 support" about file format.                       ||~v124R~
       .UnicodeTbl_Console=filename                                   ||~v125R~
          for console version (xe)                                    ||~v125R~
#endif                                                                ||~v124R~
       .EBCDIC translation definition file name.                      ||~v125R~
          EBCDIC_cfg        ="" #("::xeebc.map")# EBCDIC translation config filename||~v125R~
                                                                      ||~v124R~
       .(J)Valid_Ctrl_char = 00000000000000000000000000100000
        (E)Valid_Ctrl_char = 00000000000000000000000000100000
                        x--> 0123456789ABCDEF0123456789ABCDEF
                     ctrl+   2abcdefghijklmnopqrstuvwxyz[\]6-
         (J):for Japanese mode screen, (E):for English mode screen    
         first byte is corresponding to 0x00 and last is to 0x1f.     ||~v124R~
         0 mean accept and 1 mean reject corresponding char.          
         If Ctrl key combination assigned to a function,it is not avail
         as input char.
   (Note)0x1a is EOF for text mode API on Windows.                    ||~v125I~
         "type" cmd, for ex, stop to read at 0x1a.                    ||~v125I~
         xe use binary mode API, so xe can read beyond 0x1a.          ||~v125I~
         You may be better to set 0x1a as invalid char if you pass the file to another program||~v125I~

#ifdef UNX
       .(J)Disp_trans_tbl = 00 = 1111111111111111
        (J)Disp_trans_tbl = 10 = 1111111111111111
        (J)Disp_trans_tbl = 70 = 0000000000000001
        (J)Disp_trans_tbl = 80 = 1000000000000000
        (J)Disp_trans_tbl = A0 = 1000000000000000
        (J)Disp_trans_tbl = F0 = 0000000000000111

       .(E)Disp_trans_tbl = 00 = 1000000011101111
        (E)Disp_trans_tbl = 10 = 0000000000010000
        (E)Disp_trans_tbl = 70 = 0000000000000001
        (E)Disp_trans_tbl = 90 = 0000000000010000
        (E)Disp_trans_tbl = F0 = 0000000000000001
#else
       .(J)Disp_trans_tbl = 00 = 1000000010101100
        (J)Disp_trans_tbl = 10 = 0101000010000000
        (J)Disp_trans_tbl = 70 = 0000000000000001
        (J)Disp_trans_tbl = 80 = 1000000000000000
        (J)Disp_trans_tbl = A0 = 1000000000000000
        (J)Disp_trans_tbl = F0 = 0000000000000111

        (E)Disp_trans_tbl = 00 = 1000000000000000
        (E)Disp_trans_tbl = F0 = 0000000000000001
#endif
                                                                      ||~v124I~
#if defined(WXE)||defined(XXE)                                        ||~v124I~
    #ifdef WXE                                                        ||~v125R~
        (J)Disp_tr_tb_wxe = 00 = 1000000000001100                     ||~v124I~||~v125R~
        (J)Disp_tr_tb_wxe = 10 = 0000000000001000                     ||~v124I~||~v125R~
    #else                                                             ||~v125R~
        (J)Disp_tr_tb_wxe = 00 = 1000000000000000                     ||~v125R~
        (J)Disp_tr_tb_wxe = 10 = 0000000000000000                     ||~v125R~
    #endif                                                            ||~v125R~
        (J)Disp_tr_tb_wxe = 70 = 0000000000000001                     ||~v124I~
        (J)Disp_tr_tb_wxe = 80 = 1000000000000000                     ||~v124I~
        (J)Disp_tr_tb_wxe = A0 = 1000000000000000                     ||~v124I~
        (J)Disp_tr_tb_wxe = F0 = 0000000000000111                     ||~v124I~
                                                                      ||~v124I~
        (E)Disp_tr_tb_wxe = 00 = 1000000000000000                     ||~v124I~
        (E)Disp_tr_tb_wxe = F0 = 0000000000000001                     ||~v124I~
#endif                                                                ||~v124I~

         (J):for Japanese mode screen, (E):for English mode screen
         Specify un-displayable char table. Un-displayable char is    
         displayed using special char specified on Disp_trans_char
         parameter.
         Use xxx_wxe parameter for wxe and gxe.                       ||~v124I~

         Format: x0 = yyyyyyyyyyyyyyyy
         x : 0 to F (mean offset 00 to F0)
         y : 0 or 1 (1 mean un-displayable char),just 16 byte string.
         You need not specify all '0' line.
         But specify at least a line to deny default.
         For Windows Console version,depending Font setting of CommandPrompt profile,||~v128I~
         control character(<0x20) may be displayed by shifted column. ||~v128I~
         Adjust font setting,                                         ||~v128R~
         or set unprintable by Disp_trans_tbl on ini file,            ||~v128R~
         or set /Disp_trans_char/Tab_disp_char to other than 0xff.    ||~v128R~

#ifdef AIX    //**** AIX ****
       .(J)Disp_trans_char =2E
        (E)Disp_trans_char =2E
#else
       .(J)Disp_trans_char=FF #(FF)# display char for Japanese mode un-displayable char. (FF means U-25aa)||~v128R~
        (E)Disp_trans_char=FF #(FF)# display char for English  mode un-displayable char. (FF means U-25aa)||~v128R~
#endif
          (J):for Japanese mode screen, (E):for English mode screen
          Specify alternative char of un-displayable char specified
          on Disp_trans_tbl parameter.
          Use other than 0x30-->0x39.
          FF means to use internal default value.                     ||~v128R~

#ifdef AIX    //**** AIX ****
       .(J)Tab_disp_char   =5E2C    // ^,
        (E)Tab_disp_char   =5E2C    // ^,
#else
       .(J)Tab_disp_char  =FFFF #(FFFF)# Tab display char for Japanese mode. (FFFF means U-21be & U-21c0)||~v128R~
       .(E)Tab_disp_char  =FFFF #(FFFF)# Tab display char for English  mode. (FFFF means U-21be & U-21c0)||~v128R~
#endif
          (J):for Japanese mode screen, (E):for English mode screen
          Specify display Tab(0x09) and its following space by Tab.
          Use other than 0x30-->0x39.
          TAB cmd can override this parameter without updating INI file.||~v128R~
#ifdef AIX    //**** AIX ****
          Default is Tab       :'^('
                     Tab-skip  :','
#else
          Default is Tab       :Up-arrow    :(E)0x18,(J)0x1c
                     Tab-skip  :Right arrow :(E)0x1a,(J)0x1e
#endif

       .DBCSspace_dispchar=FF #(FF)# DBCS space display char. (FF means U-2591)||~v128R~
                                                                      ||~v128R~
          U-2591 is canged by "TAB" cmd.                              ||~v128R~
#ifdef LNX
          Japanese mode only. Use to display DBCS space(EUC:0xa1a1).  ||~v124R~
#else
          Japanese mode only. Use to display DBCS space(SJIS:0x8140). ||~v124R~
#endif
          Use other than 0x30-->0x39.

#ifdef UNX
#else
       .Keyboard_Speed     =30                                        
        Keyboard_Delay     =250                                       
        Kbd_Speed_at_exit  =30                                        
        Kbd_Delay_at_exit  =250                                       
         Keyboard type speed for entry to and exit from editor.       
         Speed:acceptable char count per second when continue to press the same key.||~v124R~
               Specify value from 0 to 31.                            ||~v124R~
         Delay:delay time to accept second char when continue to press the same key.||~v124R~
               Specify 4 level value 250,500,750 and 1000.            ||~v124R~
         (If both Speed and Delay is 0,no change is done)
#endif
                                                                      
       .DirList_Indent     =1                                         
         How display file name on directory list,                     
         same start column for all(0),or set indentation by path level.
                                                                      
#ifdef UNX
	#ifdef LNX
       .XPrint_Command     ="xprint.sh"
    #else
       .XPrint_Command     ="xprint"
    #endif
#else
       .XPrint_Command     ="XPRINT.EXE"
#endif
        XPrint_Command_DOS =""
        XPrint_Command_GCC =""
        XPrint_Command_WIN =""
        XPrint_Command_OS2 =""
#ifdef UNX
        XPrint_Command_LNX =""
#else
#endif
         Specify command string for XPRint command.
         %1-->%9 can be used. If no % is used,command is issued with  ||~v124R~
         XPRint command operand simply concatenated with this string. ||~v124R~
         Use parm with OS version suffix when a Print command is specific
         to the OS.
       (note).Specify this option before next Print_Command option.

       .Print_Command      =""
        Print_Command_DOS  =""
        Print_Command_GCC  =""
        Print_Command_WIN  =""
        Print_Command_OS2  =""
#ifdef UNX
        Print_Command_LNX  =""
#else
#endif
         Specify command string for "P" dir line command.
         %1 can be used for file name position.
         Default(when "" is specified) is "XPRINT.EXE".
         When Print_Command is "" ,same as XPrint_Command or containing
         string "XPRINT","P" line command print files ascending order
         using xprint indirect filename specification function.
         In other case "P" line command call this command string in the
         reverse order on directory list.
         Use parm with OS version suffix when the Print command is
         specific to the OS.
       (note).Specify this option after previous XPrint_Command option.

#ifdef UNX
#else
       .Sub_Shell_Init     ="prompt $p$l"
         Initial command for sub shell started by DOS command without
         command string.
         Default value is to change prompt for identity of sub-shell.
         ($p mean prompt drive and path,$l display "<").
       (note).DOS version ignore this parameter under WindowsNT.
#endif
                                                                      
#ifdef LNX                                                            
       .LNX_Subshell_xe   =""                                         
         xe(curses) shell pgm name for ">" cmd.                       
         default is bash if dash exist else sh.                       
         (check also to which /bin/sh is slinked.                     
          to bash under RH9,FC%. to dash under Kubuntu6,ubuntu7.)     
       .LNX_ShellTerm_gxe =""                                         
         terminal program for sub shell opened by DOS (abbreviation is ">") cmd or Menu:File->Term.||~v129R~
         Default depends terminal emulator installed(check it in the following sequence),                 ||~127HR~||~v129R~
         Specify if option required. e.g. "gnome-terminal --maximize".||~v129R~
         	"gnome-terminal"                        ||~127HI~         ||~v129R~||~v30BR~
         	"konsole -ls"                                             ||~127HR~||~v30BR~
         	"xfce4-terminal"                                          ||~127HI~||~v30BR~
         	"qterminal"                                               ||~v30BR~
         finally use "xterm".                                                  ||~127HI~||~v129R~
       .LNX_CmdTerm_gxe   =""                                         
         terminal program used by DOS cmd with cmd-string(e.g. ">ls") except on =6 panel.||~127HI~||~v129R~
         The default is to check the PATH env in the following order, ||~v30BR~
         and if not found, it accepts "xterm".                        ||~v30BR~
         You need to put the command option in order to accept the file containing command-string.||~v30BR~
         Currently, it looks like this:                               ||~v30BR~
         	"gnome-terminal -- bash ",                                ||~v30BR~
         	"konsole -e bash",                                        ||~v30BR~
         	"xfce4-terminal -e"                                       ||~v30BR~
         	"qterminal -e bash"                                       ||~v30BR~
#endif                                                                
                                                                      
       .Utility command name.                                         
          Specify command string used by dir-list line command "=","g"
          or utility panel 3.12/3.14.                                 
                                                                      
          CompareFile_Cmd   ="xfc"   :File compare.                   
          CompareDir_Cmd    ="xdc"   :Directory compare.              
          Search_Cmcd       ="grep"  :String search.                  
                                                                      
       .Bounds                                                        
          Set default boundary by directory name or extension name.   
          File name itself is also available.                         
        Bounds            = .cob     =  7  72    # start by "." to set default by extension name.
        Bounds            = "g:\src\xe" = 10 80  # specify fullpath name for the file or directory.
                                                                      ||~v127I~
       .Issue confirmation msg for large file when open.              ||~v127I~
        (Default is 100MB for 32 bit OS, 1GB for 64 bit OS.)          ||~v127I~
			LargeFileSize(MB) =1    #(100)# Size of large file to issue warning when open, 0 means no limit. ||vazd||~v127I~

************************************************************************
(7).Command line parameter.
************************************************************************
#ifdef UNX
   .format:
           xe [ edit-file-name | "*" ] [-option -...]
                edit-file-name:go to Edit screen when specified       ||~v124R~
                "*" means the file/dir last closed on previous session.
                ( '"' is required to avoid shell translation.)
                (note). If 0,1,2 or 6 is specified as edit-file-name,
                        it is treated as input to MENU panel.
                        To edit these file-name,use -B or -E option or
                        once enter to xe without edit-file-name
                        then enter "E 0" etc.
                option        :case insensitive,no sequence,
                               last effective if dup
   .option
      -b           :Browse mode open
      -c           :Codepage(Windows) or Charset(Linux)               ||~v124I~
                    See NLS support.                                  ||~v124I~
      -e           :Edit mode open(default)
                    Use when edit file name is "0","1","2" or "6"
                    (same as menu option id),                         ||~v124R~
                    or start with "=".                                ||~v124R~
                                                                      ||~v124R~
      -EBC[=]{KANA_EXT|ENG_EXT|DefaultMap|DefaultMapEuro|cfg=filepath} : Specify conversion table or cfg file.||~v130R~
                    KANA_EXT(=CP930=CP290+CP300)  : Japanese extended, Katakana.||~v130R~
                    ENG_EXT(=CP939=CP1027+CP300)  : Japanese extended, lowercase alphabetic.||~v130R~
                    DefaultMap(=CP037)            : Latin-1, no Kanji.||~v130R~
                    DefaultMapEuro(=CP037+Euro)                       ||~v130R~
                    cfg=filepath : Temporarily change EBCDIC_cfg option in the ini file.||~v130R~
      -FTPx[t][:hosts]:x=0:FTP is not used, x=1:FTP avail(without log)||~v130R~
                                            x=w:output ftplog, x=a:ftplog by append mode.||~v130R~
                    hosts:hosts filename for xe.                      ||~v130R~
                    Default is -FTP1(hosts="::xehosts", log="::xeftplog").||~v130R~
      -F{fontname[:charset] | @font_param_filename}            //~1301R~||~v130R~||~v130R~
                   :The font name required for /G option is             //~1301I~||~v130I~||~v130R~||~v30BR~
                    when running on Windows Terminal, setting.json is checked,//~1301I~||~v130I~||~v130R~
                    when running on Linux, on gnome-terminal, konsole, etc.,||~v130I~||~v130R~
                    the profile of the Home dir is checked by xeGetFont.sh.||~v130I~||~v130R~
                    But if it fails, specify this option.                  //~1301I~||~v130I~||~v130R~
                    Use font_param_filename when specifying indirectly from a file, use font_param_filename.//~1301I~||~v130I~||~v130R~
                                                                      ||~v30BR~
                    When executing xe on a remote computer using ssh, the font used is that of the local terminal,||~v30BR~
                    so it is advisable to notify the remote computer of the local font.||~v30BR~
                    e.g.                                              ||~v30BR~
            		  xeGetFont.sh                                    # shows font used in the local terminal.||~v30BR~
	        		  ssh -t user@host XEFONT=\"Tlwg Typo 16\" bash   # notify it to the remote||~v30BR~
					  xe  "-F$XEFONT"                                 # notify to xe||~v30BR~
                    However, the remote may not have the same font.   ||~v30BR~
                    About ssh connection, see gxeinstallREADMEe/gxeinstallREADMEj:paragraph (S) s390x.||~v30BR~
                    For Linux console version, you can use "-Fnone" command line option.||~v30BR~
                    In the language environments where it doesn't matter whether ambiguous characters are DBCS or SBCS,||~v30BR~
                    It starts up faster because it does not check the display width of ambiguous characters in the specified font.||~v30BR~
                                                                      ||~v30BR~
                    Ex.) /F"MS Mincho":128, /F@.\fontParm.txt.             //~1301I~||~v130I~||~v130R~
                         /F"\uff2d\uff33 \u660e\u671d".                    //~1301I~||~v130I~||~v130R~
                                                                      ||~v30BR~
      -G{Y|N}{y|0|1|2}:Specy cell width of unicode defined width is ambiguous.||~v130R~||~v130R~
                        Y:Fit to font width.                                   //~1301I~||~v130I~||~v130R~
                          You can also specify the 2nd option for chars in unfamiliar languages.||~v130R~
                          However, this option takes a cost, the start-up will be slightly slower.//~1301I~||~v130I~||~v130R~
                          (See html Help for those languages.)        ||~v130R~
                        N: Specify the display width uniformly using the second option.//~1301I~||~v130I~||~v130R~
                        The default value is /GY2.                             //~1301I~||~v130I~||~v130R~
                        Ex.) /GN2: All ambiguous chars are displayed in two cells.//~1301I~||~v130I~||~v130R~
                             /GYy: All ambiguous chars are adjusted according to the font.//~1301I~||~v130I~||~v130R~
                             /GY0: Unfamiliar languages are displayed as ':;' instead.//~1301I~||~v130I~||~v130R~
                                                                      ||~v130R~
      -h,-?        :Help
      -HDdirname   :dirname:Directory for help html files.            ||~v130R~
      -hnn         :Screen height.                                    ||~v124R~
                    Use when screen height and screen buffer size is not||~v124R~
                    same on TeraTerm ini file specification.
      -i[fname]    :ini filename to be used. If not use, specify simply -I
                   :to use default values.
                   :default is xe.ini if missing this option
      -Ln          :jump to the line nn just after the file is opened.
      -r           :Set current directory.
                    It is set from CD command on previous session.
                    Default drive is of at CD.
      -tn          :TAB column span, default n=4                      
                                                                      ||~v124R~
#ifdef UTF8SUPP                                                       ||~v125R~
                                                                      ||~v125R~
      -U{F|N}{8|L}                                                    ||~v125R~
              UF  : Default for file text encoding.                   ||~v125R~
              UN  : Default for filename encoding                     ||~v125R~
                                                                      ||~v125R~
              -default encoding is set by UTF cmd, This option override the UTF cmd setting.||~v125R~
              -About file text encoding.                              ||~v125R~
               CPU8/CPLC optionon Edit/Browse file/directory cmd is save to profile.||~v125R~
               Priority among those setting are as following.         ||~v125R~
                open cmd option->profile->cmdline option->UTF8 cmd setting.||~v125R~
                And last is LANG environment valiable for Linux.      ||~v125R~
                                                                      ||~v125R~
#endif                                                                ||~v124R~
                                                                      ||~v124R~
      -wxxxx       :Work dir name. It overrides "export xe=xxxx".     ||~v124R~
      -y:x and -n:x:Toggle Set(-y) and Reset(-n) option
                   :(default is in parenthesis)                       ||~v124R~
          x=a (-na):ASCII only(-ya) or Accept Ctrl char(-na)
                    Valid_Ctrl_char option on INI file is ignored
                    when -ya is specified.
          x=c (-yc):add change-id-tag to modified lines
          x=d (-yd):dump when internal error detected
          x=m (-Ym):Accept UTF8 byte without translate to locale code.||~v124I~||~v129R~
		            When /Nm is specified, for UTF8 code input to CPLC(non UTF8) file||~v129R~
                    set UTF8 code itself if Alt+u ON(indecated by =u=> on command input line),||~v129R~
                    set translated locale code if Alt+u OFF(===>) or "?" if translation error occured.||~v129R~
          x=t (-nt):Tab display or not
      -/           :End of parameter(ignore following)
                    Use to cut re-displayed command by history func.

      Other is trated as EDIt/BROwse command parameter.

   .Sample
      xe config.sys -t8 -yrt -nc

   (note)
      Options change by exe line parameter is effective only in current
      session.
      It is not written to option save file(xe_save_).
#else
   .format:
           xe [ edit-file-name | * ] [/option /...]
                edit-file-name:go to Edit screen when specified       ||~v124R~
                * means the file/dir last closed on previous session.
                (note). If 0,1,2 or 6 is specified as edit-file-name,
                        it is treated as input to MENU panel.
                        To edit these file-name,use /B or /E option or
                        once enter to xe without edit-file-name
                        then enter "E 0" etc.
                option        :case insensitive,no sequence,
                               last effective if dup
   .option
      /B           :Browse mode open
      /C           :Codepage(Windows) or Charset(Linux)               ||~v124I~
                    See NLS support.                                  ||~v124I~
      /Dx[t]       :memory alloc trace+debug trace
               x   :0:no memory trace(default),1:statistic,2:to xe___.mtr
               t   :0:no debug trace(default),1:write to xe___.trc
                    ___ is dos , os2 , gcc or win.
      /E           :Edit mode open(default)
                    Use when edit file name is "0","1","2" or "6"
                    (same as menu option id).
                    or start with "=".                                ||~v130R~
      /EBC[=]{KANA_EXT|ENG_EXT|DefaultMap|DefaultMapEuro|cfg=filepath} : Specify conversion table or cfg file.||~v130R~
                    KANA_EXT(=CP930=CP290+CP300)  : Japanese extended, Katakana.||~v130R~
                    ENG_EXT(=CP939=CP1027+CP300)  : Japanese extended, lowercase alphabetic.||~v130R~
                    DefaultMap(=CP037)            : Latin-1, no Kanji.||~v130R~
                    DefaultMapEuro(=CP037+Euro)                       ||~v130R~
                    cfg=filepath : Temporarily change EBCDIC_cfg option in the ini file.||~v130R~
      /FTPx[t][:hosts]:x=0:FTP is not used, x=1:FTP avail(without log)  ||~v130R~||~v130R~||~v130R~
                                            x=w:output ftplog, x=a:ftplog by append mode.||~v130R~
                    hosts:hosts filename for xe.                      ||~v130R~
                    Default is -FTP1(hosts="::xehosts", log="::xeftplog").||~v130R~
      /F{fontname[:charset] | @font_param_filename}            //~1301R~||~v130R~||~v130R~
                   :The font name required for /G option is               //~1301I~||~v130I~||~v130R~||~v30BR~
                    when running on Windows Terminal, setting.json is checked.//~1301I~||~v130I~||~v130R~||~v30BR~
                    But if it fails, specify this option.                  //~1301I~||~v130I~||~v130R~
                    Use font_param_filename when specifying indirectly from a file, use font_param_filename.//~1301I~||~v130I~||~v130R~
                    Ex.) /F"MS Mincho":128, /F@.\fontParm.txt.             //~1301I~||~v130I~||~v130R~
                         /F"\uff2d\uff33 \u660e\u671d".                    //~1301I~||~v130I~||~v130R~
                                                                      ||~v30BR~
                   When executing xe on a remote computer using ssh,  ||~v30BR~
                   the font used for display is that of the local terminal,||~v30BR~
                   so it is advisable to notify the local font to remote.||~v30BR~
                   e.g.                                               ||~v30BR~
            		  xe > tmp                                        ||~v30BR~
                      type x1                                         ||~v30BR~
            	   It will show local font of terminal emulator.      ||~v30BR~
	        		  ssh -t user@host XEFONT=\"Tlwg Typo 16\" bash   ||~v30BR~
                   It connect to remote                               ||~v30BR~
					  xe  "-F$XEFONT"                                 ||~v30BR~
                   Notify font to xe. However, the same font may not be available on the remote.||~v30BR~
                   About ssh connection, see gxeinstallREADMEe:(S) s390x.||~v30BR~
                   For wxe, see the Microsoft documentation for setting the appropriate charset for the selected font.||~v30BR~
                                                                      ||~v30BR~
#ifdef LNX                                                            ||~v30DI~
      -G{Y|N|W}{y|0|1|2|w}                                            ||~v30DI~
#else                                                                 ||~v30DI~
      /G{Y|N}{y|0|1|2}                                                ||~v30DR~
#endif                                                                ||~v30DI~
                   Specy cell width of unicode defined width is ambiguous.||~v30DI~
                        Y:Fit to font width.                                   //~1301I~||~v130I~||~v130R~
                          You can also specify the second option for chars in unfamiliar languages.//~1301I~||~v130I~||~v130R~
                          However, this option takes a cost, the start-up will be slightly slower.//~1301I~||~v130I~||~v130R~
                        N: Specify the display width uniformly using the second option.//~1301I~||~v130I~||~v130R~
#ifdef LNX                                                            ||~v30DI~
                        W:API:wcwidth() に従う                        ||~v30DI~
                        The default value is -GWw.                             //~1301I~||~v30DI~
#else                                                                 ||~v30DI~
                        The default value is /GY2.                             //~1301I~||~v130I~||~v130R~
#endif                                                                ||~v30DI~
                        Ex.) /GN2: All ambiguous chars are displayed in two cells.//~1301I~||~v130I~||~v130R~
                             /GYy: All ambiguous chars are adjusted according to the font.//~1301I~||~v130I~||~v130R~
                             /GY0: Unfamiliar languages are displayed as ':;' instead.//~1301I~||~v130I~||~v130R~
      /H,/?        :Help
      /HDdirname   :dirname:Directory for help html files.            ||~v130R~
      /Hnn         :Screen height. max is screen buff size.           ||~v124R~
                    Use when screen height and screen buffer size is not||~v124R~
                    same on DOS prompt under Windows 2000.
      /I[fname]    :ini filename to be used. If not use, specify simply /I
                   :to use default values.
                   :default is xe.ini if missing this option
      /Ln          :jump to the line nn just after the file is opened.
                    this is for VC++ debugger to open by xe the file in question.
                    to use this function,setup VC++ as following.
                       register xe as tool.(Tool-->Customize-->Tool tab)
                       set argument like as "$(FilePath) /L$(CurLine)"
                       and also current dir as "$(CurDir)"
                       shortcut key is registered by Keyboard tab selecting
                       UserTool_ of Category:Tool.
      /R           :Set default drive,current directory.
                    It is set from CD,d: command on previous session.
                    Default drive is of at CD.
      /Tn          :TAB column span,default n=4
                                                                      ||~v124R~
#ifdef UTF8SUPP                                                       ||~v125R~
                                                                      ||~v125R~
      /U{F|N}{8|L}                                                    ||~v125R~
              UF  : Default for file text encoding.                   ||~v125R~
              UN  : Default for filename encoding                     ||~v125R~
                                                                      ||~v124R~
              -default encoding is set by UTF cmd, This option override the UTF cmd setting.||~v125R~
              -About file text encoding.                              ||~v125R~
               CPU8/CPLC option Edit/Browse file/directory cmd is save to profile.||~v125R~
               Priority among those setting are as following.         ||~v125R~
                open cmd option->profile->cmdline option->UTF8 cmd setting.||~v125R~
                And last is LANG environment variable for Linux.      ||~v125R~
              -For each file, use CPUS/CPLC/CPAS and FNU8/FNLC/FNAS option||~v126R~
               on Edit/Browse cmd.                                    ||~v126R~
                                                                      ||~v125R~
#endif                                                                ||~v124R~
                                                                      ||~v124R~
      /Wxxxx       :Work dir name(alternative of SET xe=xxxx)
                    c:\xe_wd except UNIX when no env var nor /W specified.
      /Y:x and /N:x:Toggle Set(/Y) and Reset(/N) option
                   :(default is in parenthesis)                       ||~v124R~
          x=a (/Na):ASCII only(/Ya) or Accept Ctrl char(/Na)
                    Valid_Ctrl_char option on INI file is ignored
                    when /Ya is specified.                       
          x=c (/Yc):add change-id-tag to modified lines
          x=d (/Yd):dump when internal error detected
          x=h (/Nh):(ScreenHardCopyEndOfLine) cut lines by EndOfLine. ||~v30DI~
          x=m (-Ym):Accept UTF8 byte without translate to locale code.||~v30DI~
                    When /Nm is specified, for UTF8 code input to CPLC(non UTF8) file||~v30DI~
                    set UTF8 code itself if Alt+u ON(indecated by =u=&gt; on command input line),||~v30DI~
                    set translated locale code if Alt+u OFF(===&gt;) or "?" if translation error occured.||~v30DI~
          x=r (/Nr):Use Right-Ctrl key as Execute key
          x=rr(/Nrr):Use Right-Ctrl key as Next line key(effective only when Rctl ON)||~v124R~
          x=t (/Nt):Tab display or not
          x=v (/Yv):                                                  ||~v29XI~
            Windows Console version:                                  ||~v29XI~
                    "-Yv":displays ambiguous width characters in one cell.||~v29XI~
                    "-Nv":displays those in two cell.                 ||~v29XI~
            Wxe, gxe and xe-linux versions:                           ||~v29XI~
                    "-Yv":one or two is by performing internal determination.||~v29XI~
                    "-Nv":displays those in two cell.                 ||~v29XI~
      //           :End of parameter(ignore following)
                    Use to cut re-displayed command by DOSKEY etc.

      Other is treated as EDIt/BROwse command parameter.              

   .Sample
      xe config.sys /T8 /Yrt /Nc

   (note)
      Options change by exe line parameter is effective only in current
      session.
      It is not written to option save file(XE!SAVE!).
#endif
