Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ jotxgizmo(1G) — IRIX 6.5.3f

Media Vault

Software Library

Restoration Projects

Artifacts Sought



JOT(1G)                                                                JOT(1G)



NAME
     jot, jotxgizmo - mouse-based text editor

SYNOPSIS
     jot [-fvMx] [-p n,n,n,n] [-l n | +n] file ...

DESCRIPTION
     Jot is a display-oriented cut-and-paste style ASCII text editor tuned to
     run on Silicon Graphics machines.  Jot is written using pure Graphics
     Library code, and hence will not work on a generic X terminal, and it
     ignores the X resources.  Jot (which was originally called "zip"), is
     tuned to run well on large files, and can edit arbitrary binary files.

   Invocation Options
     -f        Run jot in the foreground.  This is often required if you wish
               to use jot as your mail or news editor.

     -v        In view-only mode, jot will not allow you to modify the file
               you are viewing.

     -M        Mmap the file.  This can nearly double the start-up speed for
               large files, but may not work reliably on remote-mounted files.

     -x        Backup override -- overrides saving of backup and checkpoint
               files.

     -l n
     +n        Start jot at line n of the file. If this option is specified as
               +n, this flag must come after all the other options and before
               the first file name.

     -p n,n,n,n
               Place the jot window at xmin,xmax,ymin,ymax.  To specify the
               size and not the position, use negative values for xmin and
               ymin to indicate the dimensions -- in this case, the xmax and
               ymax values are ignored.  For example, -p -400,0,-600,0 makes a
               window 400 pixels wide and 600 high.

     The file argument indicates a list of files to be edited.  If more than
     one file is named, jot edits the first, and adds the others to the reopen
     list.  If no file is specified, and the jotcruft option is set in the
     .jotrc file, jot will come up with the same file and reopen list it had
     when you last quit jot in that directory.  See the section on USER
     PREFERENCES, below.

USER PREFERENCES
     The ASCII file .jotrc in your home directory contains user preferences.
     The parser is pretty idiotic, so errors in this file can cause problems.
     Each option must appear on its own line.  A '#' character at the
     beginning of a line will comment it out.





                                                                        Page 1





JOT(1G)                                                                JOT(1G)



   User Preference Options
     autoaddnewline      This will cause jot to add a newline to the end of
                         each file if one is not present.  Even without this
                         option, you will be warned about a missing final
                         newline when you write a file.

     autoindent          When you type <Enter> or jot automatically breaks a
                         line in word-wrap mode, jot will add enough white
                         space at the beginning of the line to match the
                         indentation of the previous line.

     autosavecount #     Every # keystrokes, jot will automatically make a
                         checkpoint file with a ".sav" extension.

     backups             When you start jot, or visit a new file, a backup
                         version of your file is written with a ".bak"
                         extension.

     colors # # # #      Sets the GL color index values of the background,
                         text, cursor, and selection.  Jot does not change the
                         color map; it just uses the mapped colors it finds.
                         See markcolor.

     commentcolumn #     This sets the column number used by the insert-
                         comment command.

     cyclesearch         This starts jot in cycle search mode in which search
                         commands automatically continue through all the files
                         in the reopen list.

     dblclktime #        Sets the time in 1/100 seconds for the double click
                         time for jot.  The default is 20.

     electriccmode       When a file with extension ".c", ".h", ".C", ".l",
                         ".y", ".v", ".dv", ".iv", ".C++", or ".c++" is
                         visited, jot is put into electric-c mode, and some
                         commands behave slightly differently.

     expertmenus         More extensive pull-down menus appear.

     fontpath path       path is an absolute path name for a font to be used
                         instead of the default for text.  The font must be in
                         .pcf format (or .pcf.Z format), and must be fixed-
                         pitch.

     hardtabsize #       sets the tab size for physical tab characters.  (See
                         the description of tabs under GENERAL FEATURES.)

     incrsearch          Puts jot in incremental search mode.  When a new
                         search is begun with <A-F>, as each character is
                         typed, the search continues to the next place in the
                         file that the string so far typed appears. For



                                                                        Page 2





JOT(1G)                                                                JOT(1G)



                         example, if the cursor were at the beginning of this
                         paragraph, and you searched for "thex", the "t" would
                         put you at the "t" in "Put" in line 1, the "h" in
                         "with" in line 2, "e" to "the" in line 3, and "x" to
                         the "thex" in line 6.  Type <Esc> or any other non-
                         character command to get out of the search mode.

     jotcruft            Causes jot to save a file with the name ".jotcruft"
                         in each directory where you exit from jot.  The
                         .jotcruft file contains the currently open file and
                         the files in the reopen list, together with the
                         selections and marks defined in those files.  If you
                         invoke jot without a file name, the state in the
                         .jotcruft file will be restored.  If jot is invoked
                         with a file name, the .jotcruft information is
                         ignored.

     leftscroll          Puts the scroll bar on the left.  Motif requires a
                         right-hand scroll bar, which doesn't make much sense
                         for text editors.

     linenumbers         Causes jot to display line numbers by default.

     locale file         Jot reads the file named file to get
                         internationalization information.  The file must
                         contain the correct messages in the correct order.

     mapkey key meta cmd Remap a command to a different key.  The first entry
                         is the key name, as specified in the file
                         /usr/include/gl.h, like AKEY, ZEROKEY, et cetera.
                         The meta entry is one of NONE, SHIFT, CTRLSHIFT, ALT,
                         ALTSHIFT, ALTCTRL, ALTCTRLSHIFT, and the third is the
                         command name.  A complete list of command names
                         appears under COMMAND NAMES, below.  For example:

     mapkey CKEY CTRLSHIFT ENDFILECMD

     will cause jot to move the cursor to the end of the file when you hold
     down the control and shift keys and type the 'C' key.

     margin #            Sets the right margin which is used in word wrap mode
                         and for paragraph reformatting.  It is in column 72
                         by default.

     markcolor #         The color index for the marks and line numbers.  See
                         colors.

     nobrowsegizmo       Causes jot to use its internal high-speed file name
                         chooser instead of the browse gizmo.  If the
                         browsegizmo is not installed, jot will always use its
                         own file chooser.




                                                                        Page 3





JOT(1G)                                                                JOT(1G)



     nocase              Causes searches to be case-independent by default.

     oldstyle            Runs jot in the old default zip modes -- the old fast
                         font is used, the scroll bar is on the left, the
                         right mouse button pans, and expert menus are
                         enabled.

     oldaccelerators     Runs jot with the original Alt key accelerators.
                         Accelerators are also called "speed-keys" or
                         "shortcuts" position # # # # The numbers represent
                         the same values as in the "-p" command line option to
                         jot.

     rightmousepan       Pressing the right mouse button pans the text, rather
                         than invoking a popup menu.

     tabsize #           Sets the tab column size.  See "tabs" in the GENERAL
                         FEATURES section.

     undobuffersize #    Sets the size of the undo buffer.  By default it is
                         2000.  Commands of differing complexity use different
                         numbers of undo buffer entries.  Most commands use
                         only a few entries, but a global search/replace can
                         use a large number of entries.  There is no penalty
                         (except for process size) for having a larger undo
                         buffer.  The undo buffer is a circular queue, so
                         normally a few hundred operations can be undone.

     wordwrap            Enables word wrapping when you type with your cursor
                         at the end of a line past the right margin.  Adding
                         text in the middle of the line will not word-wrap.
                         Use the reformat command (<A-R>) to reformat such
                         paragraphs.

WINDOW HEADER
     If your window manager has window headers, jot displays some interesting
     information in its header:

     * (asterisk)        indicates that the file is modified.

     [Macro F* Open]     Macro F1, F2, ..., or F12 is being created.

     [Incr search ...]   Jot is doing an incremental search.

     [View Only]         The file is open in view-only mode.

COMMAND SUMMARY
     In the descriptions, 'A' stands for the left Alt key, 'C' for a Control
     key, 'S' for a shift key (where emphasis is needed), and the '<' and '>'
     symbols bound the command.  Note that although there is a right Alt key,
     it is reserved as a "compose" key for internationalization.  For example,
     the command "<C-a>" means to hold down the control key while you type a



                                                                        Page 4





JOT(1G)                                                                JOT(1G)



     lower-case 'a'; "<C-A-P>" means to hold down both the control and alt
     keys while you type an upper-case 'P'.  There are two sets of keyboard
     commands.  The first table lists the default command accelerators.  The
     second set of accelerators is used when "oldaccelerators" or "oldstyle"
     at set in the $HOME/.jotrc file.  These are the default accelerators from
     previous versions of jot.

     Commands followed by an asterisk are explained further in the GENERAL
     FEATURES section.

Default Command Accelerators
   File Control:
     <C-n>                 Visit new file
     <C-o>                 Open file
     <C-O>                 Reopen file
     <C-A-o>               Cycle reopen file
     <C-p>                 Print file
     <C-s>                 Save file
     <C-Q>                 Save file and exit (Rambo style)
     <C-q>                 Exit

   Mode Control:
     <A-w>                 Toggle word-wrap mode
     <A-Y>                 Toggle auto-indent mode
     <C-A-W>               Toggle electric-c mode
     <A-y>                 Toggle search case
     <C-A-l>               Toggle line number display
     <A-.>                 Show current position

   Text Selection:
     <leftmouse>           Select characters
     <dblclk-leftmouse>    Select words

     If the shift key is held down, the above commands
     extend the selection as above.

     <C-leftmouse>         Select lines
     <C-dblclk-leftmouse>  Select paragraphs
     <A-l>                 Select line
     <A-p>                 Select paragraph
     <C-/>                 Select all
     <A-[>, <A-]>          (Extend) select to matching brackets
     <C-A-J>               Extend selection to line
     <A-e>                 Extend select with search
     <A-E>                 Repeat extend select with search

   Cursor Movement (change selection)
     <rightarrow>, <C-f>   Move right character
     <leftarrow>, <C-b>    Move left character
     <uparrow>, <C-p>      Move up character
     <downarrow>, <C-n>    Move down character
     <C-rightarrow>        Move right word



                                                                        Page 5





JOT(1G)                                                                JOT(1G)



     <C-leftarrow>         Move left word
     <C-uparrow>           Move up paragraph
     <C-downarrow>         Move down paragraph
     <A-rightarrow>,<C-e>  Move to end of line
     <A-leftarrow>,<C-a>   Move to start of line
     <A-uparrow>,<C-Home>  Move to beginning of file
     <A-downarrow>,<C-End> Move to end of file

     With the shift key down, the above commands extend the
     selection as above.

     <C-T>                 Jump to tag (*)
     <C-L>, <A-#><C-L>     Jump to line number
     <C-A-j>, <A-#><C-A-j> Jump to column
     <A-W>                 Split window

   Change View (do not change selection)
     <leftmouse>           Scroll if cursor is in scroll bar
     <C-A-rightmouse>      Pan text
     <End>                 End of line
     <Home>                Beginning of line
     <A-End>               View end of selection
     <A-Home>              View start of selection
     <PageUp>              Up a page
     <C-PageUp>            Up half a page
     <PageDown>            Down a page
     <C-PageDown>          Down half a page

   Cut and Paste (*)
     <C-x>                 Cut
     <C-A-x>               X-cut
     <C-c>                 Copy
     <C-v>                 Paste
     <C-A-v>,<middlemouse> X-paste
     <C-rightmouse>        Copy + Paste
     <S-rightmouse>        Cut + Paste

   Search/Replace
     <C-F>                 Forward search
     <C-f>                 Repeat previous forward search (*)
     <C-B>                 Backward search
     <C-b>                 Repeat previous backward search
     <C-r>                 Replace dialog
     <C-A-F>               Regular expression forward search
     <C-A-f>               Repeat regular expression search
     <C-A-r>               Regular expression replace
     <A-g>                 Paste + repeat search
     <C-A-g>               Paste + repeat regular expression search
     <C-A-w>               Keyboard replace
     <C-R>                 Bounded replace dialog
     <C-A-R>               Bounded replace regular expression




                                                                        Page 6





JOT(1G)                                                                JOT(1G)



   General Editing
     <C-z>                 Undo last operation (*)
     <C-Z>                 Redo last undo
     <C-k>                 Kill to end of line (*)
     <C-u>                 Kill to beginning of line
     <C-c>                 Center selected lines
     <Insert>              Repeat last typein
     <A-U>                 Selection to uppercase
     <A-L>                 Selection to lowercase
     <A-C>                 Selection to first letter uppercase
     <C-d>                 Kill next character
     <A-d>                 Kill next word
     <Backspace>           Kill previous character
     <A-Backspace>         Kill previous word
     <Delete>              Kill previous character, hacking tabs (*)
     <S-Tab>               Backward tab
     <C-Tab>               Insert raw tab character
     <C-,>                 Insert raw comma in electric-c mode
     <C-Enter>             Insert raw newline character
     <C-R>, <A-#><C-R>     Reformat paragraphs (to # columns) (*)
     <C-i>, <A-#><C-i>     Indent 4 (or #) characters
     <C-I>, <A-#><C-I>     Outdent 4 (or #) characters
     <A-Enter>,                                  Newline plus indent
     <A-%>                 Insert C comment
     <A-#><Esc>            Insert ASCII character (*)
     <C-Esc>char           Insert ASCII character (*)
     <C-Esc><A-char>       Insert ASCII character with high bit on (*)

   Macros (*)
     <C-F#>                Define/End Definition of macro F#
     <F#>                  Invoke macro F#
     <C-A-M>               Save macro definitions in ~/.jotmacs

   Filters (*)
     <C-G>                 Filter selected text
     <C-A-p>               Filter from cutbuffer
     <C-A-P>               Filter to shell

   Marks (*)
     <C-m>, <A-#><C-m>     Insert mark (#)
     <C-j>, <A-#><C-j>     Jump to mark
     <C-M>, <A-#><C-M>     Delete mark (#)
     <A-k>                 Textpointers to marks
     <A-K>                 Marks to textpointers
     <C-A-k>               Swap marks and textpointers

Old Command Accelerators
   File Control:
     <A-n>                 Visit new file
     <A-o>                 Open file
     <A-O>                 Reopen file
     <C-A-o>               Cycle reopen file



                                                                        Page 7





JOT(1G)                                                                JOT(1G)



     <A-s>                 Save file
     <A-S>                 Save file (as ...)
     <C-I>                 Insert file
     <C-A-s>               Save file and quit (Rambo style)

   Mode Control:
     <A-w>                 Toggle word-wrap mode
     <A-Y>                 Toggle auto-indent mode
     <C-A-W>               Toggle electric-c mode
     <A-y>                 Toggle search case
     <C-A-l>               Toggle line number display
     <A-.>                 Show current position

   Text Selection:
     <leftmouse>           Select characters
     <dblclk-leftmouse>    Select words

     If the shift key is held down, the above commands
     extend the selection as above.

     <C-leftmouse>         Select lines
     <C-dblclk-leftmouse>  Select paragraphs
     <A-l>                 Select line
     <A-p>                 Select paragraph
     <A-a>                 Select all
     <A-[>, <A-]>          (Extend) select to matching brackets
     <C-A-J>               Extend selection to line
     <A-e>                 Extend select with search
     <A-E>                 Repeat extend select with search

   Cursor Movement (change selection)
     <rightarrow>, <C-f>   Move right character
     <leftarrow>, <C-b>    Move left character
     <uparrow>, <C-p>      Move up character
     <downarrow>, <C-n>    Move down character
     <C-rightarrow>        Move right word
     <C-leftarrow>         Move left word
     <C-uparrow>           Move up paragraph
     <C-downarrow>         Move down paragraph
     <A-rightarrow>, <C-e> Move to end of line
     <A-leftarrow>, <C-a>  Move to start of line
     <A-uparrow>           Move to beginning of file
     <A-downarrow>         Move to end of file

     With the shift key down, the above commands extend the
     selection as above.

     <A-J>                 Jump to tag (*)
     <A-j>, <A-#><A-j>     Jump to line number
     <C-A-j>, <A-#><C-A-j> Jump to column
     <A-W>                 Split window




                                                                        Page 8





JOT(1G)                                                                JOT(1G)



   Change View (do not change selection)
     <leftmouse>           Scroll if cursor is in scroll bar
     <C-A-rightmouse>      Pan text
     <End>                 View end of file
     <Home>                View beginning of file
     <A-End>               View end of selection
     <A-Home>              View start of selection
     <PageUp>              Up a page
     <C-PageUp>            Up half a page
     <PageDown>            Down a page
     <C-PageDown>          Down half a page

   Cut and Paste (*)
     <A-x>                 Cut
     <C-A-x>               X-cut
     <A-c>                 Copy
     <C-v>                 Paste
     <C-A-v>,<middlemouse> X-paste
     <A-z>                 Append to selection
     <C-S-.>               Show cut buffer
     <C-rightmouse>        Copy + Paste
     <S-rightmouse>        Cut + Paste

   Search/Replace
     <A-F>                 Forward search
     <A-f>                 Repeat previous forward search (*)
     <A-B>                 Backward search
     <A-b>                 Repeat previous backward search
     <C-r>                 Replace dialog
     <C-A-F>               Regular expression forward search
     <C-A-f>               Repeat regular expression search
     <C-A-r>               Regular expression replace
     <A-g>                 Paste + repeat search
     <C-A-g>               Paste + repeat regular expression search
     <C-A-w>               Keyboard replace
     <C-R>                 Bounded replace dialog
     <C-A-R>               Bounded replace regular expression

   General Editing
     <A-u>                 Undo last operation (*)
     <A-r>                 Redo last undo
     <C-k>                 Kill to end of line (*)
     <C-u>                 Kill to beginning of line
     <C-c>                 Center selected lines
     <Insert>              Repeat last typein
     <A-U>                 Selection to uppercase
     <A-L>                 Selection to lowercase
     <A-C>                 Selection to first letter uppercase
     <C-o>                 Open next line
     <C-O>                 Open previous line
     <C-t>                 Transpose characters (*)
     <C-d>                 Kill next character



                                                                        Page 9





JOT(1G)                                                                JOT(1G)



     <A-d>                 Kill next word
     <Backspace>           Kill previous character
     <A-Backspace>         Kill previous word
     <Delete>              Kill previous character, hacking tabs (*)
     <S-Tab>               Backward tab
     <C-Tab>               Insert raw tab character
     <C-,>                 Insert raw comma in electric-c mode
     <C-Enter>             Insert raw newline character
     <A-R>, <A-#><A-R>     Reformat paragraphs (to # columns) (*)
     <A-i>, <A-#><A-i>     Indent 4 (or #) characters
     <A-I>, <A-#><A-I>     Outdent 4 (or #) characters
     <A-Enter>, <C-j>      Newline plus indent
     <A-%>                 Insert C comment
     <A-#><Esc>            Insert ASCII character (*)
     <C-v>char             Insert ASCII character (*)
     <C-v><A-char>         Insert ASCII character with high bit on (*)

   Macros (*)
     <C-F#>                Define/End Definition of macro F#
     <F#>                  Invoke macro F#
     <C-A-M>               Save macro definitions in ~/.jotmacs

   Filters (*)
     <A-P>                 Filter selected text
     <C-A-p>               Filter from cutbuffer
     <C-A-P>               Filter to shell

   Marks (*)
     <A-M>, <A-#><A-M>     Insert mark (#)
     <A-m>, <A-#><A-m>     Jump to mark
     <C-A-m>, <A-#><C-A-m> Delete mark (#)
     <A-k>                 Textpointers to marks
     <A-K>                 Marks to textpointers
     <C-A-k>               Swap marks and textpointers

GENERAL FEATURES
   Tabs
     By default, literal tab characters in a file advance to the next column
     that is a multiple of 8.  If jot's tab size is something other than 8,
     then pressing the tab key advances to a column that is a multiple of that
     tab size, but it does so by inserting the appropriate combination of tab
     characters and spaces.  In addition, it will clean up spaces before the
     cursor when the tab key is pressed.

     For example, if the tab size is 5, and the cursor is at the beginning of
     a line, the first tab key press will insert 5 spaces. The second press
     will delete those 5, add a raw tab, and then 2 more spaces to advance to
     column 10.  The next tab inserts 5 more spaces, and so on.  The tab size
     can be anything; if it is 17, for example, the first tab from the left
     margin will add two tab characters and 1 space character.





                                                                       Page 10





JOT(1G)                                                                JOT(1G)



     If you set the hard tab size this will make physical tabs advance by a
     different number of columns.  Usually it is not a good idea to do this
     since so many UNIX utilities depend on a tab size of 8.

     The <Backspace> key deletes the character before the cursor, so if the
     tab size is 4 and you type tab twice from the left margin, there will be
     a single tab behind the cursor.  A backspace at that point eliminates the
     tab character and will put the cursor at the beginning of the line.  The
     <Delete> key is exactly like the backspace key unless there is a tab
     character before it.  If so, the tab is first converted to the
     appropriate number of spaces, and then the final space character is
     deleted.  <Delete> thus moves backward one column at a time, no matter
     whether it is passing tabs or any other character.

   The Command Multiplier
     If the <Alt> key is held down while a decimal number is typed, that
     number becomes the command multiplier.  It can have multiple digits.  For
     example, to get a command multiplier of 25, type <A-2><A-5>.

     Normally, the command multiplier is the number of times the next command
     is to be repeated.  <A-1><A-7>a will insert 17 'a's into the file. <A-
     9><A-n> will move the cursor down by 9 lines.

     A few commands interpret the command multiplier differently.  The indent
     and outdent commands interpret the multiplier as the number of columns to
     indent or outdent (the default is 4).  The reformat command interprets it
     as a margin for reformatting.  The jump to line and jump to column
     commands interpret it as the line or column to jump to.  For example,
     <A1><A-2><A-7><A-j> jumps to line 127.

     A command multiplier in the jump to mark, delete mark and set mark
     commands is interpreted as the mark number.

     The command multiplier is also used to insert non-standard characters
     into the file.  See "Typing Weird Characters", below.

   Typing Weird Characters
     There are 2 ways to insert control characters and characters outside the
     ASCII character set into the file.  If a command multiplier is followed
     by an <Esc>, the number is interpreted as the ASCII code and that number
     is inserted.  For example, to insert a 'control-A' (ASCII 1) into your
     file, type: <A-1><Esc>.  Unfortunately, you have to specify the character
     in decimal.

     The other way is to use the <C-Esc> literal escape mechanism.  To insert
     an ASCII 'control-a', type: <C-Esc><C-a>.  If you want the high order bit
     of your character turned on, hold the <Alt> key down while you type the
     next character.  So if you want ASCII 129 (which is the same as
     'control-a' with the high order bit on), type: <C-v><C-A-a>.






                                                                       Page 11





JOT(1G)                                                                JOT(1G)



     This method can be used to insert unusual characters in search and/or
     replace strings.  Jot cannot, however, search for or replace the newline
     character.

     Non-standard characters are displayed in jot as 3-character sequences.
     The first character looks like an 'x' with a box around it, (unless
     you've chosen a non-default font, in which case it's an 'X'), followed by
     2 hexadecimal characters.  An ASCII 'control-a' looks something like
     this: "X01".

   Electric-c Mode
     In this mode, certain parenthesis-matching operations are performed, tabs
     are set to 4, and auto-indent is enabled.  Some automatic spacing and
     indentation is also performed.  It is quite conservative, and it is not
     customizable.

   The Reopen List
     In a jot session, each time a file is visited, it is added to the reopen
     list.  When a new file is opened, the previous file's position in the
     window, selection, and marks are all saved in the reopen list so that
     revisiting a file puts you back in the same place.  A roll-over menu
     (with long menus enabled) allows easy access to the previously visited
     files.

     If you simply click on the reopen menu entry without rolling over, you'll
     visit the previous file, making it very easy to flip-flop between 2
     files.

   File Name Typein
     When using the simple jot file browser, often it has a guess at the file
     name which is presented.  Typing <Enter> selects that name, but typing
     any character erases the entire guess and allows typein from scratch.  To
     modify a guessed name, click the cursor in the typein field, and then
     begin typing.  The paste command works in the typein field as well.

     While typing, <Esc> attempts file name completion.  Typing <uparrow> and
     <downarrow> go though possibilities.  Typing <rightarrow> goes down a
     directory, and <leftarrow>, up a directory.

   Macros
     Any sequence of keystrokes, including command multipliers, can be saved
     in macro definitions.  Up to 12 macros invoked by the keys F1, F2, ...,
     F12 can be saved, and the macros can be nested.

     To define a macro, say F3, type <C-F3>, then type the commands you want
     (jot will perform the commands as you do them), and end the macro
     definition with another <C-F3>.  For example, to make a macro that adds a
     semicolon to the beginning and end of a line and then advances to the
     next line, type:  "<C-F5><C-a>;<C-e>;<C-n><C-F5>". Then to perform this
     operation on the next 150 lines of the file, type: "<A-1><A-5><A-0>F5",
     using the command multiplier.




                                                                       Page 12





JOT(1G)                                                                JOT(1G)



     All the current macros can be saved in the file ~/.jotmacs using the save
     macros command.

   Scroll Bar
     In addition to the usual things a scroll bar does, the highlighted
     portion of jot's scroll bar indicates roughly the size and position of
     the current selection within the file.  In addition, if any marks are
     set, the corresponding numbers are shown in the scroll bar.  The size of
     the thumb is proportional to the size of the viewed window in comparison
     to the size of the whole file, unless the file is huge, in which case the
     thumb is some minimal size.  There's a hole in the thumb to see the
     selection and marks through it.

   Search Commands
     The repeat search repeats the previous search command, unless there is a
     non-empty selection that is less than a whole line, in which case the
     search is for that.  Thus to find the next occurrence of a word that
     already appears as text, double-click the word, and type <A-f>.

     Regular expression search and replace commands use the regular
     expressions recognized by "ed".  Try "man ed" for more information. Jot
     cannot search for regular expressions containing a newline.

   Ctags
     Jot has a "Jump to tag" command that searches for a file called "tags" in
     the current directory produced by the program ctags.  If a word is
     selected (usually a procedure name), jump to tag will use that word as
     the tag name; otherwise, it will ask for the name.

   Transpose
     If the selection is empty (the cursor is between two characters, the
     transpose command swaps the characters on both sides and advances to the
     right.  This makes it easy to drag a character to the right an arbitrary
     distance.

     If there's a non-empty selection, the entire selection is reversed. There
     is no good reason to do this, but the results can be really entertaining.

   Split Window
     Jot only knows about a single window, but the split window command fires
     up another version viewing the same file.  The two jots are completely
     independent, but one is made view-only for protection.

   Cut and Paste
     Jot originally ran on non-X platforms, and used a cut and paste strategy
     where the buffer was saved as /tmp/.cutbuffer.  This mechanism remains,
     together with the X-based cut and paste commands.  Jot effectively has
     two cut buffers.

     The non-X cut and paste buffer can be appended to, so it is easy to
     collect a lot of text from a file using <A-z> and paste it all at once.




                                                                       Page 13





JOT(1G)                                                                JOT(1G)



     To cut and paste text to and from other X processes requires the X cut
     and paste mechanism.  Each text selection automatically becomes the X
     selection, and <middlemouse> pastes it.  It doesn't behave exactly as
     most X processes, however, in that making a selection in another process
     does not unselect the jot selection.

   Undo and Redo
     Each time the undo command is invoked, jot undoes one more operation.
     For example, if "abcde" is typed followed by 3 undos, first the 'e', then
     the 'd', and finally the 'c' is removed.  Redo steps forward, undoing the
     undos.  After some undos have been typed, a single non-redo command
     clobbers any possibility of continuing with the redo sequence.

   Filters
     An arbitrary UNIX command can be applied to the current selection, and
     the results of the filter are placed in the (non-X) cut buffer. For
     example, to sort a bunch of lines, select them (including the final
     newline), invoke the filter command with <C-G>, and type "sort" as the
     filter command.  The sort command executes, and the output replaces the
     contents of the cut buffer, the first few lines of which are displayed.
     Thus, a simple paste replaces the original selected lines.  If you make a
     mistake, just don't do the paste, and try again.  And there's always
     undo.

     The filter command can take the UNIX command from the cutbuffer so it can
     be used in macros.  It can also redirect the output to the invoking shell
     so that compiles, for example, can run independently of the rest of the
     jot session.

   Marks
     A mark is simply a position between a pair of characters in a file. The
     marks stay between the same two characters, if possible, so if the mark
     is near the end of the file, and characters are typed near the beginning,
     the mark effectively moves further from the beginning.  There are 10
     marks available, numbered 0 through 9.  The positions of the marks are
     roughly displayed in the scroll bar by their corresponding numbers.
     Clicking with the right mouse button on the mark in the scroll bar places
     the cursor at the mark.

     The selection is bounded by two text pointers.  If the selection is
     empty, the two text pointers are at the same place.  There are commands
     that take the text pointers and convert them to marks and vice-versa, and
     a command to swap the marks and the text pointers. This is often very
     useful in macros.

   Kill to End of Line
     If there is any text beyond the cursor in a line, <C-k> kills to the end
     of the line, but does not kill the newline character.  If there is no
     text, <C-k> kills the newline, appending the current line with the next.
     Thus usually two <C-k>s are required to kill each line.





                                                                       Page 14





JOT(1G)                                                                JOT(1G)



     However, if there is a command multiplier, it is used as the actual
     number of lines (including newlines) to kill.  <A-3><C-k> kills 3 entire
     lines.

     Finally, repeated <C-k> commands append the cut material to the contents
     of the cut buffer -- the first <C-k> replaces the cut buffer with the
     kill contents and each successive <C-k> adds more to the cutbuffer.  <C-
     u> (kill to beginning of line) does not append successive kills to the
     beginning of the cutbuffer as might be expected.

COMMAND NAMES
     These are the names used by the mapkey command in the .jotrc file.

     APPENDTOBUFFERCMD     append selection to cut buffer
     ASKFILTERCMD          apply UNIX filter to the selection
     ASKREGEXSEARCHCMD     regular expression search
     ASKREVSEARCHCMD       reverse search
     ASKSEARCHCMD          forward search
     ASKSHELLFILTERCMD     apply filter; results to shell
     BACKSPACECMD          backspace
     BACKSPACENUKECMD      backspace; hack tabs to spaces
     BACKTABCMD            backward tab
     BACKWORDCMD           move the cursor back a word
     BEGINFILECMD          jump to the start of the file
     BEGINLINECMD          move cursor to start of line
     BOUNDEDREREPLACECMD   bounded regex replace
     BOUNDEDREPALCECMD     bounded replace
     CALLF1MACROCMD        call macro F1
     CALLF2MACROCMD        call macro F2
     CALLF3MACROCMD        call macro F3
     CALLF4MACROCMD        call macro F4
     CALLF5MACROCMD        call macro F5
     CALLF6MACROCMD        call macro F6
     CALLF7MACROCMD        call macro F7
     CALLF8MACROCMD        call macro F8
     CALLF9MACROCMD        call macro F9
     CALLF10MACROCMD       call macro F10
     CALLF11MACROCMD       call macro F11
     CALLF12MACROCMD       call macro F12
     CENTERLINECMD         center selected lines
     COPYCMD               copy selection to cut buffer
     CRAFTERCURSORCMD      add newline after the cursor
     CURSORDOWNCMD         cursor down a line
     CURSORLEFTCMD         cursor left a character
     CURSORRIGHTCMD        cursor right a character
     CURSORUPCMD           cursor up a line
     CUTBUFFILTERCMD       use the cut buffer as a filter
     CUTCMD                cut selection into cut buffer
     CYCLEFILECMD          cycle to next file
     CYCLESEARCHCMD        cycle files during search
     DEFF1MACROCMD         define macro F1
     DEFF2MACROCMD         define macro F2



                                                                       Page 15





JOT(1G)                                                                JOT(1G)



     DEFF3MACROCMD         define macro F3
     DEFF4MACROCMD         define macro F4
     DEFF5MACROCMD         define macro F5
     DEFF6MACROCMD         define macro F6
     DEFF7MACROCMD         define macro F7
     DEFF8MACROCMD         define macro F8
     DEFF9MACROCMD         define macro F9
     DEFF10MACROCMD        define macro F10
     DEFF11MACROCMD        define macro F11
     DEFF12MACROCMD        define macro F12
     DELETEMARKCMD         delete mark
     DELETENEXTCHARCMD     delete character after cursor
     DOWNPARAGRAPHCMD      cursor down a paragraph
     ELECTRICCOMMENTCMD    add a C comment
     ENDFILECMD            jump to the end of the file
     ENDLINECMD            cursor to the end of the line
     ESASKSEARCHCMD        extend select search
     ESBACKWORDCMD         extend select back a word
     ESBEGINFILECMD        extend select to top of file
     ESBEGINLINECMD        extend select to start of line
     ESCURSORDOWNCMD       extend select down a line
     ESCURSORLEFTCMD       extend select left a character
     ESCURSORRIGHTCMD      extend select right a character
     ESCURSORUPCMD         extend select up a line
     ESDELETENEXTCHARCMD   delete selection plus character
     ESDOWNPARAGRAPHCMD    extend select to end paragraph
     ESENDFILECMD          extend select to end of file
     ESENDLINECMD          extend select to end of line
     ESFWDWORDCMD          extend select to next word
     ESGOTOLINECMD         extend select to line
     ESSEARCHCMD           extend select search
     ESUPPARAGRAPHCMD      extend select up a paragraph
     FIRSTUPPERCMD         first character to uppercase
     FWDWORDCMD            cursor forward a word
     GETLINERANGE          display range of the selection
     GOTOCOLUMNCMD         go to column
     GOTOLINECMD           go to line
     GOTOMARKCMD           go to mark
     HALFPAGEDOWNCMD       go down a half page
     HALFPAGEUPCMD         go up a half page
     HELPCMD               display help
     INDENTCMD             indent selected lines
     INDENTNEWCMD          insert newline with indentation
     INSERTBRACECMD        insert the '' character
     INSERTFILECMD         insert the contents of a file
     INSERTFILENAMECMD     insert this file name as text
     INSERTRAWNEWLINECMD   insert a newline character
     INSERTTABCMD          insert a tab character
     JUMPTOTAGCMD          jump to tag
     KBDREPLACECMD         replace command
     KILLBACKWORDCMD       kill word before cursor
     KILLTOBGNLINECMD      kill to start of line



                                                                       Page 16





JOT(1G)                                                                JOT(1G)



     KILLTOEOLCMD          kill to end of line
     KILLWORDCMD           kill the next word
     LITERALESCAPE         use command count as ascii
     MARKSTOTPSCMD         put marks 8, 9 into text pointers
     NEWFILECMD            visit a new file
     OPENCMD               open a file
     OPENLINECMD           open a line after the cursor
     OPENPREVLINECMD       open a line before the cursor
     OUTDENTCMD            outdent selected lines
     PAGEDOWNCMD           move down a screenful
     PAGEUPCMD             move up a screenful
     PARENMATCHCMD         select bracketed text
     PASTEANDREGEXCMD      paste + repeat reg exp search
     PASTECMD              paste contents of cut buffer
     PASTENSEARCHCMD       paste and repeat search
     QUITCMD               quit
     QUITDAMMITCMD         quit no matter what
     REDOCMD               redo command
     REFORMATREGIONCMD     reformat selected region
     REGEXREPLACECMD       regular expression replace
     REGEXSEARCHCMD        regular expression search
     REOPENCMD             reopen a previously visited file
     REPEATCMDCMD          repeat the last typein
     REPLACECMD            replace command
     REVSEARCHCMD          search backwards
     SAVEASCMD             save with new file name
     SAVECMD               save the buffer
     SAVEMACRODEFSCMD      save macro definitions
     SAVEQUITCMD           save the file and quit
     SCROLLDOWNCMD         scroll down
     SCROLLLEFTCMD         scroll left
     SCROLLRIGHTCMD        scroll right
     SCROLLUPCMD           scroll up
     SEARCHCMD             search command
     SELECTALLCMD          select entire buffer
     SELECTLINECMD         select the line
     SELECTPARAGRAPHCMD    select the paragraph
     SETMARKCMD            set a mark at the cursor
     SHOWCUTBUFCMD         show the cutbuffer
     SWAPMARKSTPSCMD       swap marks 8,9 and textpointers
     TOBEGINFILECMD        view start of file
     TOENDFILECMD          view end of file
     TOGGLEAUTOINDENTCMD   toggle auto indent on newline
     TOGGLECASECMD         toggle case-dependent search
     TOGGLEELECCCMD        toggle  electric-C mode
     TOGGLENUMBERSCMD      toggle line number display
     TOGGLEVIEWCMD         toggle of view-only mode
     TOGGLEWORDWRAPCMD     toggle word-wrap mode
     TOLOWERCMD            convert to lower case
     TOTP1CMD              view the first text pointer
     TOTP2CMD              view the last text pointer
     TOUPPERCMD            convert to upper case



                                                                       Page 17





JOT(1G)                                                                JOT(1G)



     TPSTOMARKSCMD         put text pointers into marks 8,9
     TRANSPOSECMD          transpose characters
     TUTORIALCMD           run the tutorial
     UNDOCMD               undo the last command
     UPPARAGRAPHCMD        move up a paragraph
     WINSPLITCMD           split window
     XCOPYCMD              copy to X cut buffer
     XCUTCMD               cut to X cut buffer
     XPASTECMD             paste from X cut buffer
     ZERO                  disable normal action of key

AUTHOR
     Jot was originally called zip, and was written by Tom Davis and Derrick
     Burns of Silicon Graphics.  Some of the conversion from zip to jot was
     done by Chris Eveland of Silicon Graphics.

FILES
     /usr/sbin/jot                               Executable
     /usr/lib/jot/jotxgizmo                      X agent for X cut and paste
     /usr/lib/jot/browsegizmo                    File selection dialog
     ~/.jotrc                                    jot options
     ~/.jotmacs                                  jot macros

BUGS
     Line numbers only work correctly for files with fewer than 100000 lines.

     When you run "jot -M" over a network on a remote file, sometimes jot just
     dies and goes away with no warning.



























                                                                       Page 18



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026