Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
VED(1L) 		     Schily's USER COMMANDS			 VED(1L)

NAME
     ved - visual editor (screen-oriented)

SYNOPSIS
     ved [ options ] [ filename ... ]
     ved-e [ options ] [ filename ... ]
     ved-w [ options ] [ filename ... ]

DESCRIPTION
     Ved  (visual  editor)  is a small and very fast screen-oriented editor that
     implements a user interface somewhere between vi and emacs.  It is powerful
     and easy to learn, it has no limitations on line length  and  the	type  of
     characters that may appear in a file.  It has almost no limitations on file
     size and supports editing of large files (files > 2 GB) if the OS has large
     file support.

     To use ved to edit a file for the first time, call ved and specify the name
     of  the file you want to edit.  If you edit a file for the second time, ved
     will place you at the same cursor position that was used the last time when
     editing this file.  If you do not specify a file name, ved will assume that
     you want to edit the last file you edited in your	current  directory.  The
     cursor  position in this case again will be the same as with the last edit-
     ing session for this file.

     calling ved-e	 is the same as calling

			      ved -e

     calling ved-w	 is the same as calling

			      ved maxlinelen=78.

     Ved is using the termcap data base to  be	independent  from  the	terminal
     type. See Termcap section below.

OPTIONS
     -v, -vhelp, -vedhelp
	    An editing session is started with the on-line help. This is done in
	    read-only mode.

     -r, -readonly
	    In	this  mode,  you may edit the content of the edit buffer but you
	    are not allowed to write back the modified buffer by using the  quit
	    command  of  the editor.  If you use this option more than once, the
	    readonly value is incremented.  If -readonly is used twice or  more,
	    you are not allowed to write the file back even in quit force mode.

     b=#, buffers=#
	    By	default  ved  uses 10 in-core buffers to edit the file, each in-
	    core buffer takes 8 kB (the actual values that are compiled into ved
	    may be retrieved by calling ved -help).  Files that are bigger  than
	    the  total	amount	of  in-core buffer space are edited by using the
	    swap file of ved.  If you specify a number that is higher  than  the
	    default,  you  will  need  more  space  in memory but the speed will
	    slightly increase.

     -n, -nobak
	    Don't create filename.bak when writing back the file using the  quit
	    command  of  the  editor.  Note that if you use this option you will
	    still break hard links.  If you like  to  write  into  the	original
	    file, you should better use the 'W' command when you quit ved.

     -nolock
	    Don't  try	to  use record locking to tell other editors that a file
	    i.e. being edited or just being written to. This option may help  if
	    NFS  record  locking  bugs	would otherwise cause an edit session to
	    hang in the fcntl() lock request.

     -e, -edtmp
	    Don't write to the file .vedtmp.uid.  (ved normally stores the names
	    and cursor positions of files in .vedtmp.uid)

     -raw8  Do not expand characters with the MSB set. Note that ved will by de-
	    fault not expand characters with the MSB set that seem to be  print-
	    able,  e.g.  when  the terminal is in 8-bit mode.  If this option is
	    used, the expansion of 8-bit characters is turned  off  uncondition-
	    ally.   If	the terminal is in 7-bit mode, this may result in incor-
	    rectly displayed characters.

     -d, -dos
	    Map new-line to carriage-return new-line  and  hide  carriage-return
	    characters that are directly followed by a new-line.  If you type in
	    a  new  line  character  this results in inserting a carriage-return
	    new-line pair.  But as ved is acting binary  transparently,  reading
	    in	files  that do not follow DOS newline conventions will not cause
	    the content of the file to be automatically  converted  to	use  DOS
	    new-lines.

	    If -nodos has not been specified, ved tries to auto-detect whether a
	    file needs DOS (CR/LF to LF) mapping or not.

     -nodos
	    Do	not  map new-line to carriage-return new-line and hide carriage-
	    return characters that are directly followed by a new-line.  If -no-
	    dos has been specified, auto-detection of DOS files is disabled  and
	    files will always be edited in POSIX line mode.

     s=search string
	    Start editing session with search to searchstr.

     -t, -tag
	    First filename is really a ctag.

     wrapmargin=#
	    Set  default  wrap margin to #.  The wrap margin is counted from the
	    end of a terminal line.

     maxlinelen=#
	    Set max line length for autowrap to #.  The behaviour is similar  to
	    the  wrapmargin=  option but ved does not use the maximum linelength
	    from the current screen width but the fixed length #.

     -R, -Recover
	    Recover session from  specified  filename.	 ved  generates  a  file
	    vedP.xxxx in the /var/tmp directory or in the directory named by the
	    VED_TMPDIR	environment  in  which	all action of the user is stored
	    during the session.  This file must be used as the only argument  to
	    ved when running a recover session.

THE STATUS LINE
     The  first (top) line of the screen is reserved for ved status information.
     The status line is divided into five fields.  The fields are (from left  to
     right):

     Info/Input
	    The  first	field  is  used to display informational messages and to
	    fetch additional input that is required  for  some	commands.   Each
	    command that needs confirmation requests input from this field.  The
	    size  of this field defaults to 1/4th of the length of a line.  This
	    field may use more space if needed.

     Number
	    The second field contains the current multiplier for the  next  com-
	    mand.   The  current multiplier is reset to 1 after each command, it
	    may be set to a different value by the user (See NUMBERS section be-
	    low).  This multiplier will be referred to as number in the  follow-
	    ing text.  The size of this field is fixed to 1/8th of the length of
	    a line.  If the actual number does not fit into the given space, the
	    text BIG is printed instead.

     Takebuffer
	    The  third field contains is the name of the actual take buffer that
	    is used for cut and paste operations.  The name of this  buffer  de-
	    faults  to	default  on startup. It may be changed by the user.  The
	    size of this field is fixed to 1/4th of the length of a line.

     Filename
	    The fourth field usually displays the current filename.  The size of
	    this field defaults to 1/4th of the length of a line.  It may use up
	    more space if needed and no error text is displayed.  It may be hid-
	    den for some time if a long error message is displayed.

     Error text
	    The fifth field is used to display all error messages and  warnings.
	    The  size  of  this field defaults to 1/4th of the length of a line.
	    If needed, it may use the space of the filename field too.

BASIC COMMAND FORMAT
     Ved does not distinguish between command mode and insert mode.  Unless pre-
     fixed by commands that need  arguments,  all  non	control  characters  are
     treated as input (which is inserted into the file buffer).

     All  basic ved commands are control characters or escape sequences.  To en-
     ter a control character, use the control key like the  shift  key	together
     with a character key; to enter an escape sequence, press the <ESC> key fol-
     lowed by another key.

     In  the  following  description, ^ represents the control key and <ESC> the
     escape key (which is identical to pressing ^[).  <ALT> has a similar  usage
     as  <ESC>	but  different meaning in ved and represents the combination ^].
     The combination ^char is a single keystroke, while <ESC>char  or  <ALT>char
     are  two keystrokes. If the command takes an argument, the argument is ter-
     minated with a carriage return <CR>.

     A command may be modified in five ways:

     Escape commands
	    Typing the <ESC> key (or ^[) before the command will modify it to an
	    alternate form, usually a related function.

     Alt commands
	    Typing the ALT key ( ^] ) before the command, inserts a mark (with a
	    few exceptions) in the text usually at the current	cursor	position
	    and  then  executes the normal command.  You can precede any command
	    that moves the cursor with the ALT key and ved sets the mark  before
	    moving the cursor.

     Alt Escape commands
	    Typing  ALT ( ^] ) and ESC ( ^[ ) before the command, inserts a mark
	    (with a few exceptions) in the text usually at  the  current  cursor
	    position and then executes the ESC command.  You can precede any ESC
	    command that moves the cursor with the ALT key and ved sets the mark
	    before moving the cursor.

	    Typing ESC followed by ALT yields in the same effect.

     Extended commands
	    Typing a ^X before another command enters the extended mode. The ex-
	    tended  mode  just enters another level of commands.  These extended
	    commands have their own list of basic, ESC, ALT and ALT/ESC  command
	    tables.

     Multiplied execution
	    Numbers  that are entered by typing <ESC>#<CR> (# represents a posi-
	    tive number) will set the multiplier to that number and  display  it
	    in	the status line of ved.  If a number greater than one is entered
	    before a command, that command is usually repeated number times. Ex-
	    ceptions are some cursor movement commands where different functions
	    will be executed number times instead of repeating the visible basic
	    functionality of the command.

CURSOR MOVEMENT
     Like every editor, ved has a typing point, called cursor,	which  is  indi-
     cated  by the (in most cases) flashing bar or box (depending on your termi-
     nal/window type) on your screen.  The cursor indicates the point within the
     file buffer where the typed characters are going to.  It  is  your  current
     place  in	the  file  buffer.  The commands that move the cursor within the
     file buffer are explained in this section.

     Cursor movement command overview:

 Key	     CTRL	       ESC CTRL        ALT		   ALT ESC
 Label					       set mark first	   set mark first

 |<-	 A   start of line     start of para   start of line	   start of para
 F2	 B   go to beginning   go to bottom    go to beginning	   go to bottom
 ->|	 E   end of line       end of para     end of line	   end of para
 ->	 F   forward char      forward word    forward char	   forward word
 <-	 H   back char	       back word       back char	   back word
 |v	 N   down line	       down para       down line	   down para
 |^	 P   up line	       up para	       up line		   up para

     para is used as ab abbreviation for paragraph to make the	table  fit  into
     the standard line width.

     Cursor movement commands in detail:

     ^A     moves  the cursor to the beginning of the current line.  If the cur-
	    sor is already at the beginning, it will not move.

	    If number is greater than one, ^A moves the cursor	that  number  of
	    characters from the beginning of the current line.

     <ESC>^A
	    moves  the	cursor to the beginning of the current paragraph. If the
	    cursor is already at the beginning, it will not move.

	    If number is greater than one, <ESC>^A moves the cursor that  number
	    of words from the beginning of the current paragraph.

     <ALT>^A
	    inserts  the  mark	at the current cursor position before moving the
	    cursor to the beginning of the current line.  If the cursor  is  al-
	    ready at the beginning, it will not move, but ved will still inserts
	    the mark.

	    If	number is greater than one, <ALT>^A inserts the mark, then moves
	    the cursor that number of characters from the beginning of the  cur-
	    rent line.

     <ALT><ESC>^A
	    inserts  the  mark	at the current cursor position before moving the
	    cursor to the beginning of the current paragraph. If the  cursor  is
	    already  at  the beginning, it will not move, but ved will still in-
	    serts the mark.

	    If number is greater than one, <ALT><ESC>^A inserts the  mark,  then
	    moves the cursor that number of words from the beginning of the cur-
	    rent paragraph.

     ^B     moves  the cursor to the beginning of the file. If the cursor is al-
	    ready at the beginning of the file, it will not move.

	    If number is greater than one, ^B moves the cursor	that  number  of
	    lines from the beginning of the file.

     <ESC>^B
	    moves the cursor to the end of the file. If the cursor is already at
	    the end of the file, it will not move.

	    If	number is greater than one, <ESC>^B moves the cursor that number
	    of lines from the end of the file.

     <ALT>^B
	    inserts the mark at the current cursor position  before  moving  the
	    cursor to the beginning of the file. If the cursor is already at the
	    beginning  of  the file, it will not move, but ved still inserts the
	    mark.

	    If number is greater than one, <ALT>^B inserts the mark, then  moves
	    the cursor that number of lines from the beginning of the file.

     <ALT><ESC>^B
	    inserts  the  mark	at the current cursor position before moving the
	    cursor to the end of the file. If the cursor is already at	the  end
	    of the file, it will not move, but ved still inserts the mark.

	    If	number	is greater than one, <ALT><ESC>^B inserts the mark, then
	    moves the cursor that number of lines from the end of the file.

     ^E     moves the cursor to the end of the current line. If  the  cursor  is
	    already at the end of the line, it will not move. The last character
	    on	the  line  is the invisible ASCII newline character NL; when the
	    cursor is at the end of the line, it is not on a visible character.

	    If number is greater than one, ^E moves the cursor	that  number  of
	    characters from the end of the current line.

     <ESC>^E
	    moves the cursor to the end of the current paragraph.  If the cursor
	    is already at the end, it will not move.

	    If	number is greater than one, <ESC>^E moves the cursor that number
	    of words from the end of the current paragraph.

     <ALT>^E
	    inserts the mark at the current cursor position  before  moving  the
	    cursor  to	the end of the current line. If the cursor is already at
	    the end of the line, it will not move, but	ved  still  inserts  the
	    mark.

	    If	number is greater than one, <ALT>^E inserts the mark, then moves
	    the cursor that number of characters from the  end	of  the  current
	    line.

     <ALT><ESC>^E
	    inserts  the  mark	at the current cursor position before moving the
	    cursor to the end of the current paragraph.  If the  cursor  is  al-
	    ready  at  the end of the paragraph, it will not move, but ved still
	    inserts the mark.

	    If number is greater than one, <ALT><ESC>^E inserts the  mark,  then
	    moves  the	cursor	that number of words from the end of the current
	    paragraph.

     ^F     moves the cursor one character position to the right.

	    If number is greater than one, ^F moves the cursor	that  number  of
	    characters to the right.

	    Depending  on  the	cursor	position,  with  or without number being
	    greater than one, ^F could move the cursor to a later line.  If  the
	    cursor  is at the end of the line, the cursor will move to the first
	    position of the next line.

     <ESC>^F
	    moves the cursor forward to the first letter of the next word.

	    If number is greater than one, <ESC>^F moves the cursor forward that
	    number of words.

	    Depending on the current cursor position and the  value  of  number,
	    <ESC>^F might move the cursor down one or more lines.

     <ALT>^F
	    inserts  the  mark	at the current cursor position before moving the
	    cursor one character to the right.

	    If number is greater than one, <ALT>^F inserts the mark, then  moves
	    the cursor that number of characters to the right.

     <ALT><ESC>^F
	    inserts  the  mark	at the current cursor position before moving the
	    cursor to the first letter of the next word.

	    If number is greater than one, <ALT><ESC>^F inserts the  mark,  then
	    moves the cursor that number of words to the right.

     ^H     moves the cursor one character position to the left.

	    If	number	is  greater than one, ^H moves the cursor that number of
	    characters to the left.

	    Depending on the cursor position, ^H, with or without  number  being
	    greater  than one, could move the cursor up to the previous line. If
	    the cursor is at the beginning of the line when you  press	^H,  the
	    cursor will move to the last position of the previous line.

     <ESC>^H
	    moves  the	cursor to the first letter of the word just prior to its
	    current position.

	    If number is greater than one, <ESC>^H moves the cursor that  number
	    of	words  backwards.   Depending on the current cursor position and
	    the value of number, the cursor may move up one or more lines.

     <ALT>^H
	    inserts the mark at the current cursor position  before  moving  the
	    cursor one character position to the left.

	    If	number is greater than one, <ALT>^H inserts the mark, then moves
	    the cursor that number of characters to the left.

     <ALT><ESC>^H
	    inserts the mark at the current cursor position  before  moving  the
	    cursor to the first letter of the previous word.

	    If	number	is greater than one, <ALT><ESC>^H inserts the mark, then
	    moves the cursor that number of words to the left.

     ^N     moves the cursor down one line while maintaining its horizontal  po-
	    sition. If the cursor is on the last character of the last line when
	    you press ^N, the cursor will not move and you will hear a beep.

	    If	number is greater than one, ^N moves the cursor down that number
	    of lines.  If number is greater than the number lines  remaining  in
	    the file, the cursor will stop moving at the end of the file.

     <ESC>^N
	    moves the cursor to the beginning of the next paragraph.

	    If	number	is  greater than one, <ESC>^N moves the cursor down that
	    number of paragraphs.

     <ALT>^N
	    inserts the mark at the current cursor position  before  moving  the
	    cursor  down one line. Note that the cursor maintains its horizontal
	    position on the line; i.e., if the cursor was on the fifth character
	    of the line when you pressed <ALT>^N, it  will  move  to  the  fifth
	    character of the line below.

	    If	number is greater than one, <ALT>^N inserts the mark, then moves
	    the cursor down that number of lines.

     <ALT><ESC>^N
	    inserts the mark at the current cursor position  before  moving  the
	    cursor to the beginning of the next paragraph.

	    If	number is greater than one, <ALT><ESC>^N first inserts the mark,
	    then moves the cursor down that number of paragraphs.

     ^P     moves the cursor up one line while maintaining its horizontal  posi-
	    tion.  If the cursor is on the first line of the file when you press
	    ^P, the cursor will not move and you will hear a beep.

	    If number is greater than one, ^P moves the cursor up that number of
	    lines.  If number is greater than the number of  lines  between  the
	    cursor and the beginning of the file, the cursor will stop moving at
	    the beginning of the file.

     <ESC>^P
	    moves the cursor to the beginning of the previous paragraph.

	    If	number is greater than one, <ESC>^P moves the cursor that number
	    of paragraphs prior to the cursor's position.

     <ALT>^P
	    inserts the mark at the current cursor position  before  moving  the
	    cursor  up	one  line. Note that the cursor maintains its horizontal
	    position on the line; i.e., if the cursor was on the fifth character
	    of the line when you pressed <ALT>^P, it  will  move  to  the  fifth
	    character of the line above.

	    If	number is greater than one, <ALT>^P inserts the mark, then moves
	    the cursor up that number of lines.

     <ALT><ESC>^P
	    inserts the mark at the current cursor position  before  moving  the
	    cursor to the beginning of the previous paragraph.

	    If	number is greater than one, <ALT><ESC>^P first inserts the mark,
	    then moves the cursor up that number of paragraphs prior to its cur-
	    rent position.

INSERTION/DELETION
     All insertions are always made at the place where the visible cursor is.

     All deletions are saved in two buffers: the forward delete buffer	contains
     the  text that has been deleted using forward delete commands and the back-
     wards delete buffer contains the text that has been deleted using	backward
     delete commands.  The characters in the backward delete buffer are saved in
     reverse  order  to allow reinserting them in the correct order.  As long as
     you don't move the cursor and start deleting new text in either  direction,
     the  content  of  both,  the forward and the backwards delete buffer may be
     reinserted with the undo delete command. This allows you to  move	text  by
     deleting  it and reinserting it after you moved the cursor to another posi-
     tion in the file

     Insertion/Deletion command overview:

 Key	       CTRL		 ESC CTRL	ALT		   ALT ESC
 Label						set mark first	   set mark first

 F3	 D     delete char	 delete words	~		   ~
 TAB	 I     tab		 ~		tab		   ~
 NL	 J     insert new line	 ~		jump to mark	   switch mark
								   and cursor
 F4	 K     kill line	 kill para	kill selection	   ~
 CR	 M     insert new line	 change modes	sets mark	   ~
 F5	 O     open line	 ~		open line	   ~
	 _     undo delete	 ~		clear mark	   ~
 DEL	 DEL   erase char	 erase word	~		   ~

     Insertion/Deletion commands in detail:

     ^D     erases the character at the cursor position.

	    If number is greater than one, ^D erases that number  of  characters
	    to the right of the cursor.

     <ESC>^D
	    erases  the next word. A word is defined from the current cursor po-
	    sition to the next blank or carriage return.

	    If number is greater than one, <ESC>^D erases that number  of  words
	    to the right of the cursor.

     ^I     inserts a TAB character.

	    If number is greater than one, ^I inserts that number of TAB charac-
	    ters.

     <ALT>^I
	    inserts  the  mark at the current cursor position before inserting a
	    TAB character.

	    If number is greater than one, <ALT>^I inserts the	mark,  then  in-
	    serts that number of TAB characters.

     ^J     inserts a new line at the current cursor position and moves the cur-
	    sor to the beginning of the next line.

	    If number is greater than one, ^J inserts that number of new lines.

     ^K     erases  the  current line. If the cursor is located at the beginning
	    of the line, the entire line is erased, including the  carriage  re-
	    turn  at  the end of the line.  If the cursor is located between the
	    beginning and end of the line, everything right  of  the  cursor  is
	    erased,  including	the carriage return at the end of the line.  You
	    can use ^K to erase blank lines.

	    If number is greater than one, ^K erases that number of  lines  from
	    the current cursor position.

     <ESC>^K
	    erases from the current cursor position to the end of the paragraph.
	    The  end  of a paragraph is indicated by two successive carriage re-
	    turns--one at the end of the last line and one  on	the  blank  line
	    that follows the paragraph.

	    If	number	is greater than one, <ESC>^K erases that number of para-
	    graphs.

     <ALT>^K
	    erases text between the mark and the current  cursor  position.  For
	    instance, if the mark is in the middle of the file and the cursor is
	    at the end, the last half of the file will be erased.

     ^M     inserts a new line at the current cursor position and moves the cur-
	    sor to the beginning of the next line.

	    If number is greater than one, ^M inserts that number of new lines.

     ^O     inserts a new line at the current cursor position, but does not move
	    the  cursor. Any text to the right of the cursor moves down to start
	    a new line.

	    If number is greater than one, ^O inserts that number of  new  lines
	    without moving the cursor.

     <ALT>^O
	    inserts  a	new line without moving the cursor.  It inserts the mark
	    at the beginning of the next (new) line.

	    If number is greater than one, <ALT>^O inserts that  number  of  new
	    lines without moving the cursor.  It inserts the mark after the last
	    new line.

     ^DELETE
	    erases  the  character to the left of the cursor. This acts the same
	    as using the DELETE key alone.

	    If number is greater than one, ^DELETE erases that number of charac-
	    ters to the left of the cursor.

     <ESC>^DELETE
	    erases the word to the left of the cursor. This acts the same as us-
	    ing ^DELETE.

	    If number is greater than one, <ESC>^DELETE erases	that  number  of
	    words to the left of the cursor.

     ^_     reinserts the last deletion. The content of the forward and backward
	    delete buffer is cleared after reinserting the deleted text.

     <ALT>^_
	    erases the mark.

CUT/PASTE
     These  commands  deal  with  the 'take' buffers. You can have up to 32 take
     buffers, each named as you choose when you use it for the first time.   The
     name  appears on the status (top) line of the terminal screen following \:.
     The default take buffer is "default".

     Cut/Paste command overview:

 Key	     CTRL	      ESC CTRL		ALT		  ALT ESC
 Label						set mark first	  set mark first

 F6	 T   save line	      save para 	save selection	  ~
	     into paste buf   into paste buf	into paste buf	  into paste buf
 F7	 V   paste	      paste and 	replace select	  replace select
			      clear paste buf	with paste buf	  clear paste buf
	 Y   save char	      save word 	~		  ~
	     into paste buf   into paste buf
 F8	 \\  chng paste buf   clr paste buf	~		  ~

     Cut/Paste commands in detail:

     ^T     removes a line from the file buffer and puts it in the current  take
	    buffer.  The line is defined from the current cursor position to the
	    next carriage return.

	    If number is greater than one, ^T removes that number of lines  from
	    the file buffer and puts them in the current take buffer.

     <ESC>^T
	    removes  a paragraph from the file buffer and puts it in the current
	    take buffer. A paragraph is defined from the current cursor position
	    to two successive carriage returns--one at the end of the last  line
	    and one on the blank line that follows the paragraph.

	    If	number is greater than one, <ESC>^T removes that number of para-
	    graphs from the file buffer  and  puts  them  in  the  current  take
	    buffer.

     <ALT>^T
	    removes  the  selection  (what lies between the mark and the cursor)
	    and puts it in the current take buffer.

     ^V     pastes the contents of the current take buffer into the file at  the
	    current  cursor  position. The take buffer will still contain a copy
	    of the text.

     <ESC>^V
	    pastes and clears the contents of the current take buffer  into  the
	    file at the current cursor position. The take buffer will be empty.

     <ALT>^V
	    replaces  the  selection (what lies between the mark and the cursor)
	    with whatever is in the current take buffer.  The old content of the
	    selection is not saved in any way.	The take buffer will still  con-
	    tain a copy of the text.

     <ALT><ESC>^V
	    replaces  the  selection (what lies between the mark and the cursor)
	    with whatever is in the current take  buffer  and  clears  the  take
	    buffer.   The  old content of the selection is not saved in any way.
	    The take buffer will be empty.

     ^Y     removes a character from the file buffer and puts it in the  current
	    take buffer. The character at the current cursor position is the one
	    taken.

	    If	number	is  greater than one, ^Y takes that number of characters
	    and puts them in the current buffer.

     <ESC>^Y
	    removes a word from the file buffer and puts it in the current  take
	    buffer.  A	word  consists of any characters from the current cursor
	    position up to the next blank or carriage return.

	    If number is greater than one, <ESC>^Y takes that  number  of  words
	    and puts them in the current buffer.

     ^\     changes the current take buffer.

	    On the information line you will see the Take Buffer: prompt. Type a
	    take buffer name and press the RETURN key.

	    If	you type a new name, a new take buffer is created. If you type a
	    name you have already used during the current editing  session,  you
	    can  reuse	that  take  buffer.  The take buffer name is always dis-
	    played on the information line.

     <ESC>^\
	    clears any text out of the current take buffer. On	the  information
	    line you will see the Buffer cleared message.

SEARCH
     The  search  commands  search for specified text in the file buffer and may
     place the cursor to matching text.

     If the pattern contains  pattern  matching  meta  characters,  the  pattern
     matcher  is used (unless the no magic mode has been selected - see set com-
     mand below) and if there are no meta characters, a simple search is used.

     See match(1) for more information on the pattern matcher.

     Search command overview:

 Key	     CTRL	      ESC CTRL		ALT		 ALT ESC
 Label						set mark first	 set mark first

 F9	 R   forward search   reverse search	forward search	 reverse search
 F10	 Z   re-search	      reverse re-srch	re-srch 	 reverse re-srch

     Search commands in detail:

     ^R     searches forward in a file for the specified text string.

	    On the information line you will see the +Search: prompt.  Type  the
	    string  you  want to find. If the string exists between the cursor's
	    current position and the end of the file, ved moves  the  cursor  to
	    that  location. If ved can not find the specified string, the cursor
	    does not move and you will hear a beep.

	    If number is greater than one, ^R finds that numbered occurrence  of
	    the string.

     <ESC>^R
	    searches backwards in a file for the specified text string.

	    On	the  information line you will see the -Search: prompt. Type the
	    string you want to find. If the string exists between  the	cursor's
	    current position and the beginning of the file, ved moves the cursor
	    to	that  location.  If ved can not find the string, the cursor does
	    not move and you will hear a beep.

	    If number is greater than one, <ESC>^R finds  that	numbered  occur-
	    rence of the string.

     <ALT>^R
	    searches forward in a file for the specified text string.

	    On	the  information line you will see the +Search: prompt. Type the
	    string you want to find. When (and if) found, the mark  is	inserted
	    at	the  beginning	of the string and the cursor moves to the end of
	    the string; the string is then considered selected. If ved	can  not
	    find  the string, the cursor does not move, no mark is inserted, and
	    you will hear a beep.

	    If number is greater than one, <ALT>^R finds  that	numbered  occur-
	    rence of the string.

     <ALT><ESC>^R
	    searches backwards in a file for the specified text string.

	    On	the  information line you will see the -Search: prompt. Type the
	    string you want to find. When found, the mark is inserted at the be-
	    ginning of the search string and the cursor moves to the end of  the
	    string;  the string is then considered selected. If ved can not find
	    the string, the cursor does not move, no mark is inserted,	and  you
	    will hear a beep.

	    If	number is greater than one, <ALT><ESC>^R finds that numbered oc-
	    currence of the string.

     ^Z     re-searches for the last text string you asked to for with	the  ^R,
	    <ESC>^R,  <ALT>^R, or <ALT><ESC>^R command. If you already found one
	    occurrence of the text string, ^Z will find the next occurrence.  If
	    ved  can  not  find another occurrence, the cursor does not move and
	    you will hear a beep.

	    If number is greater than one, instance, ^Z finds that numbered  oc-
	    currence of the string.

     <ESC>^Z
	    reverses  direction  and  re-searches  for	the last text string you
	    asked for with the ^R, <ESC>^R, <ALT>^R, or <ALT><ESC>^R command. If
	    you already found one occurrence of the text  string,  <ESC>^Z  will
	    find  the next, or previous, occurrence, depending on which your di-
	    rection. For instance, if the original command was ^R, <ESC>^Z  will
	    find  the  previous  occurrence.  If ved can not find another occur-
	    rence, the cursor does not move and you will hear a beep.

	    If number is greater than one, instance, <ESC>^Z finds that numbered
	    occurrence of the string.

     <ALT>^Z
	    re-searches for the last text string you  asked  for  with	the  ^R,
	    <ESC>^R,  <ALT>^R, or <ALT><ESC>^R command. If you already found one
	    occurrence of the text string, <ALT>^Z will  find  the  next  occur-
	    rence,  set  the mark at the beginning of it, and move the cursor to
	    the end of it.  This occurrence of the string is then considered se-
	    lected. If ved can not find another occurrence, the cursor does  not
	    move, no mark is inserted, and you will hear a beep.

	    If number is greater than one, instance, <ALT>^Z finds that numbered
	    occurrence	of  the search string, with the numbering beginning from
	    the current cursor position. For instance, if number is 4, the  next
	    three occurrences are skipped and the mark is inserted at the begin-
	    ning of the fourth occurrence of the string. This happens regardless
	    of how many occurrences of the string have already been located, un-
	    less there are not that many occurrences of the string in the file.

     <ALT><ESC>^Z
	    reverses  direction  and  re-searches  for	the last text string you
	    asked for with the ^R, <ESC>^R, <ALT>^R, or <ALT><ESC>^R command. If
	    you already found one occurrence of the  text  string,  <ALT><ESC>^Z
	    will  find	the next, or previous, occurrence, depending on your di-
	    rection. For instance, if the original command was ^R,  <ALT><ESC>^Z
	    will  find the previous occurrence, set the mark at the beginning of
	    it, and move the cursor to the end of it.  This  occurrence  of  the
	    search string is then considered selected.

	    If	number	is  greater  than one, instance, <ALT><ESC>^Z finds that
	    numbered occurrence of the search string, with the numbering  begin-
	    ning from the current cursor position.

EXITING/SAVING
     These  commands  are related to quitting ved and saving the current version
     of the edited text in a file.

     ^C     The QUIT command ends the editing session.

	    On the information line  you  will	see  the  QUITTING.  PUT  EDITS?
	    (Y/W/N/F/!)  prompt.

	    Type Y  if	you  want  to  save the changes made during this editing
		    session by creating a backup file and creating  a  new  file
		    that holds the modified content.  The backup process is done
		    the following way:

		    The  current  backup  file	(if  there is one) (called file-
		    name.bak) is deleted, the current file is renamed  to  file-
		    name.bak,  and  a  version of the file containing the latest
		    changes becomes filename.	If  there  is  no  filename.bak,
		    filename becomes filename.bak.

	    Type W  if	you  want  to  save the changes made during this editing
		    session by directly writing the new  content  into	the  old
		    file.

	    Type F  if	you  want  to forcibly save the changes made during this
		    editing session.  This command works similar to the  Y  com-
		    mand,  but	ved  will ignore the state of the -readonly flag
		    and the access rights of the file.	The  latter  will  allow
		    you to write into files without write permissions if you are
		    super user.  For exceptions on this rule, see description of
		    the -readonly flag.

	    Type !  if	you  want  to forcibly save the changes made during this
		    editing session by directly writing the new content into the
		    old file.

	    Type N  if you want to end the session but don't want  to  save  the
		    changes.

	    If	you don't want to end the session, type anything except Y, W, F,
	    !  or N.

	    If the file has been locked before by another edit session or if the
	    file has been modified more recently than the  copy  that  has  been
	    used  for  the  current session, you will not be allowed to save the
	    file.  Use the force commands (F or !)  or write back using  differ-
	    ent file name.

     <ESC>^C
	    The BACKUP command backs up the current file.

	    On the information line you will see the BACKUP?(Y/W/N/F/!)  prompt.

	    If	you  enter one of the expected answers ( Y, W, !  or N) The same
	    actions as with the QUIT command are performed except that the  con-
	    trols stays inside ved after the backup command has completed.

     ^X^H   calls on-line help.

	    On	the  information line you will see the HELP(Y?)  prompt. To con-
	    tinue editing (and abort this command), type N.   To  see  the  help
	    file, type Y.

	    Note that this command may not work in case that the terminal in use
	    outputs  a	backspace when typing the DEL key. In such a case, it is
	    appropriate to type: ESC : vhelp

     ^X^Z   suspends the current editing session.

	    On the information line you will  see  the	SUSPENDING.  PUT  EDITS?
	    (Y/W/N/F/!)  prompt.

	    Type Y  if	you want the file to be backuped and updated before sus-
		    pending ved.  See the QUIT command for a description of  the
		    backup process.

	    Type W  if	you want the the file to be updated in place before sus-
		    pending ved.

	    Type F  if you want file to be forcibly  updated  before  suspending
		    ved.   This  command works similar to the Y command, but ved
		    will ignore the state of the -readonly flag and  the  access
		    rights of the file.  The latter will allow you to write into
		    files  without write permissions if you are super user.  For
		    exceptions on this rule, see description  of  the  -readonly
		    flag.

	    Type !  if you want file to be forcibly updated in place before sus-
		    pending ved.

	    Type N  if	you  want  to  suspend	ved  but  don't want to save the
		    changes before.

	    If you don't want to suspend ved, type anything except Y,  W,  F,  !
	    or N.

	    If the file has been locked before by another edit session or if the
	    file  has  been  modified  more recently than the copy that has been
	    used for the current session, you will not be allowed  to  save  the
	    file.   Use the force commands (F or !)  or write back using differ-
	    ent file name.

	    When you are ready to continue editing, use the fg or resume command
	    of your shell. You will return to the editing  session.  The  cursor
	    will be in the same place it was when you suspended the session, re-
	    gardless of whether or not you saved your edits.

FILE COMMANDS
     ^G     lets you insert another file at the current cursor position.

	    On	the  information  line you will see the Get from: prompt. Type a
	    file name and press the RETURN key.

	    You can insert files from the  current  working  directory	or  from
	    other  directories	(as long as you use a valid path name). The path
	    name is subject of filename globbing by your shell (e.g. wild  cards
	    are working as long as they expand to exactly one filename).

     <ESC>^G
	    exits the current file and enters another file.

	    On the information line you will see the Change to: prompt. Type the
	    name of the file you wish to edit and press the RETURN key.

	    If	the  old  file was modified, you will see the CHANGING TO: file-
	    name.  PUT EDITS?(Y/W/N/F/!)  prompt; if you want to save and backup
	    the edits in the current file.

	    Type Y  if you want the file  to  be  backuped  and  updated  before
		    changing  the  file.  See the QUIT command for a description
		    of the backup process.

	    Type W  if you want the the file  to  be  updated  in  place  before
		    changing the file.

	    Type F  if	you want file to be forcibly updated before changing the
		    file.  This command works similar to the Y command, but  ved
		    will  ignore  the state of the -readonly flag and the access
		    rights of the file.  The latter will allow you to write into
		    files without write permissions if you are super user.   For
		    exceptions	on  this  rule, see description of the -readonly
		    flag.

	    Type !  if you want file to be  forcibly  updated  in  place  before
		    changing the file.

	    Type N  if	you  want  to change the file but don't want to save the
		    changes before.

	    If you don't want to change the edited file, type anything except Y,
	    W, F, !  or N.

	    If the file has been locked before by another edit session or if the
	    file has been modified more recently than the  copy  that  has  been
	    used  for  the  current session, you will not be allowed to save the
	    file.  Use the force commands (F or !)  or write back using  differ-
	    ent file name.

     ^W     writes a copy of the file you are editing to the file you specify.

	    On	the  information  line you will see the Write to: prompt. Type a
	    file name and press the RETURN key. If the file exists, its contents
	    are overwritten. If the file does not exist, it is created.

     <ESC>^W
	    writes the contents of the current take buffer to the file you spec-
	    ify.

	    On the information line you will see the \ to file: prompt.  Type  a
	    file name and press the RETURN key. If the file exists, its contents
	    are overwritten. If the file does not exist, it is created. The take
	    buffer contents will remain intact.

     <ALT>^W
	    writes  a  copy of the selection (what lies between the mark and the
	    cursor) to the file you specify.

	    On the information line you will see the Sel to: prompt. Type a file
	    name and press the RETURN key. If the file exists, its contents  are
	    overwritten. If the file does not exist, it is created.

NUMBERS
     <ESC>#<CR>
	    To	enter  a  multiplier  that only works for the next command, type
	    <ESC>, enter a number and then press the RETURN key.  If you entered
	    a number by mistake, simply enter <ESC>1<CR> to reset the number  to
	    its default value.

     ^U     multiplies	number	by  the multiplier. The default multiplier is 4.
	    Each time you press ^U number changes to the next multiple of 4 (16,
	    16, 64, and so on).

     <ESC>^U
	    changes the multiplier.

	    The default multiplier is 4. If you want to  multiply  number  by  a
	    different  value, use <ESC>^U.  On the information line you will see
	    the Mult = prompt. Type a number and press the RETURN key.

MISCELLANEOUS
     <ALT>^G
	    lets you edit your editing macro file called .vedmac (which  is  lo-
	    cated  in your $HOME directory).  It is the same as if you used ^X^X
	    to execute a new ved and answered N to the put  question.  When  you
	    are  through  editing .vedmac, press ^C to continue editing the file
	    you were in when you issued the <ALT>^G command; you will  be  asked
	    whether or not you want to put the edits from .vedmac before you re-
	    turn to the original file.

     <ALT>^J
	    moves the cursor to the mark.

	    The  current cursor position determines whether this is a forward or
	    backward movement. For instance, if the mark is in the middle of the
	    file and the cursor is at the beginning, its a forward movement;  if
	    the cursor is at the end, its a backward movement.

     <ALT><ESC>^J
	    switches the cursor and the mark.

     ^L     redisplays	the  current  screenful  of text. This is useful after a
	    message has been sent to your terminal which  may  have  overwritten
	    some of the text.

     <ESC>^L
	    adjusts  the  text displayed on the terminal screen so that the line
	    the cursor is on becomes the optimum line on the screen.  This  usu-
	    ally  is  the center line of the display but it may be changed using
	    the <ESC>:set optline # <CR> command.  This may  involve  displaying
	    different  text,  depending on where the cursor is when you use this
	    command.

     <ALT>^L
	    Adjusts the current Line of the Cursor  to	be  the  first	Line  on
	    Screen.

     <ESC>^M
	    changes modes.

	    On the information line you will see the Mode?(ORV8) prompt.  Type

	    D	   to enable or disable DOS mode.

	    V	   for visible mode.

	    O	   for overstrike mode.

	    8	   to enable or disable raw8 mode.

	    R	   to reset back to default mode.

	    <CR>   to list the current mode settings.

	    If you type anything else, you will abort the command.

     <ALT>^M
	    sets a mark at the current cursor position.

     <ESC>n
	    displays the next Page of file.

     <ESC>p
	    displays the previous Page of file.

     <ALT><ESC>n
	    Sets a Mark, then displays the next Page of file.

     <ALT><ESC>p
	    Sets a Mark, then displays the previous Page of file.

     ^Q     unfreezes the screen which was frozen by pressing ^S.

     ^S     freezes  cursor  and text movement on the screen. Use ^Q to unfreeze
	    it.

     ^X^X   lets you execute a shell command  without  terminating  the  editing
	    session.

	    Control  temporarily  returns  to  the Command Interpreter while the
	    command is executed, then you can continue editing. For instance, if
	    you want to read another file into the one you are editing	but  can
	    not  remember  the	file name, you can execute an ls command to find
	    its name. When you type ^X^X, you will see the  Execute:  prompt  on
	    the  information  line.  Type  the command line and press the RETURN
	    key.  If the file was modified before you called ^X^X, you will  see
	    the EXECUTING. PUT EDITS? (Y/W/N/F/!)  prompt.

	    Type Y  if	you want the file to be backuped and updated before exe-
		    cuting the command.  See the QUIT command for a  description
		    of the backup process.

	    Type W  if	you want the the file to be updated in place before exe-
		    cuting the command.

	    Type F  if you want file to be forcibly updated before executing the
		    command.  This command works similar to the Y  command,  but
		    ved  will ignore the state of the -readonly flag and the ac-
		    cess rights of the file.  The latter will allow you to write
		    into files without write permissions if you are super  user.
		    For  exceptions  on this rule, see description of the -read-
		    only flag.

	    Type !  if you want file to be forcibly updated in place before exe-
		    cuting the command.

	    Type N  if you want to execute the command but don't  want	to  save
		    the changes before.

	    If the file has been locked before by another edit session or if the
	    file  has  been  modified  more recently than the copy that has been
	    used for the current session, you will not be allowed  to  save  the
	    file.   Use the force commands (F or !)  or write back using differ-
	    ent file name.

	    In all cases, after returning from the command, the cursor	will  be
	    on the same place as it was before typing ^X^X.

	    Note that if the shell command you want to execute requires the cur-
	    rent file as an argument, you might need to update it. For instance,
	    if	you  the  file you are editing contains formatting commands that
	    you want to test, you will need to update the file so that the  ver-
	    sion of the file you format and view is the most up-to-date one.

	    To	abort  the command while you can see the Execute: prompt, do not
	    type a command; simply press the RETURN key. If you had  started  to
	    type  a command, use the DELETE key to erase it; the field following
	    the prompt must be blank. To abort the command while you can see the
	    EXECUTING. PUT EDITS? (Y/W/N/F/!)  prompt, type anything  except  Y,
	    W, F, !  N.

     <ESC>^X
	    executes the contents of the current take buffer.

	    You can type a shell command line in your file and then save it in a
	    take buffer (using the ^T, <ESC>^T, ^Y or <ESC>^Y commands).

	    When  you  type  <ESC>^X,  you  will  see  the EXECUTING. PUT EDITS?
	    (Y/W/N/F/!)  prompt on the information line.

	    Type Y  if you want the file to be backuped and updated before  exe-
		    cuting  the command.  See the QUIT command for a description
		    of the backup process.

	    Type W  if you want the the file to be updated in place before  exe-
		    cuting the command.

	    Type F  if you want file to be forcibly updated before executing the
		    command.   This  command works similar to the Y command, but
		    ved will ignore the state of the -readonly flag and the  ac-
		    cess rights of the file.  The latter will allow you to write
		    into  files without write permissions if you are super user.
		    For exceptions on this rule, see description of  the  -read-
		    only flag.

	    Type !  if you want file to be forcibly updated in place before exe-
		    cuting the command.

	    Type N  if	you  want  to execute the command but don't want to save
		    the changes before.

	    If you don't want to execute the command, type anything except Y, W,
	    F, !  or N.

	    If the file has been locked before by another edit session or if the
	    file has been modified more recently than the  copy  that  has  been
	    used  for  the  current session, you will not be allowed to save the
	    file.  Use the force commands (F or !)  or write back using  differ-
	    ent file name.

     <ALT>^X
	    executes the selection (what lies between the mark and the cursor).

	    You can type a shell command line in your file and select it.

	    When  you  type  <ALT>^X,  you  will  see  the EXECUTING. PUT EDITS?
	    (Y/W/N/F/!)  prompt on the information line.

	    Type Y  if you want the file to be backuped and updated before  exe-
		    cuting  the command.  See the QUIT command for a description
		    of the backup process.

	    Type W  if you want the the file to be updated in place before  exe-
		    cuting the command.

	    Type F  if you want file to be forcibly updated before executing the
		    command.   This  command works similar to the Y command, but
		    ved will ignore the state of the -readonly flag and the  ac-
		    cess rights of the file.  The latter will allow you to write
		    into  files without write permissions if you are super user.
		    For exceptions on this rule, see description of  the  -read-
		    only flag.

	    Type !  if you want file to be forcibly updated in place before exe-
		    cuting the command.

	    Type N  if	you  want  to execute the command but don't want to save
		    the changes before.

	    If you don't want to execute the command, type anything except Y, W,
	    F, !  or N.

	    If the file has been locked before by another edit session or if the
	    file has been modified more recently than the  copy  that  has  been
	    used  for  the  current session, you will not be allowed to save the
	    file.  Use the force commands (F or !)  or write back using  differ-
	    ent file name.

     ^@     indicates  the  current  line number. This number tells you how many
	    lines exist between the beginning of the file and the current cursor
	    position.

	    On the information line you will see +Line: 333  where  333  is  the
	    current line number.

     <ESC>^@
	    indicates  how  many lines exist between the current cursor position
	    and the end of the file.

	    On the information line you will see -Line: 22 where 22 is the  num-
	    ber of lines remaining in the file.

     <ALT>^@
	    indicates  what line the mark is on, in relation to the beginning of
	    the file.

	    On the information line you will see +Line: 45 where 45 is the posi-
	    tive line number on which the mark is located.

	    If there is no mark, you will see No mark!	 displayed  on	the  far
	    right of the information line.

     <ALT><ESC>^@
	    indicates  what  line  the mark is on, in relation to the end of the
	    file.

	    On the information line you will see -Line: 109  where  109  is  the
	    negative line number on which the mark is located.

	    If	there  is  no  mark, you will see No mark!  displayed on the far
	    right of the information line.

     ^[     is the same as using the <ESC> key.

     ^]     is <ALT>.  Use this sequence of keystrokes to start an ALT command.

     ^X     is the lead in character for an extended command.

     <ESC>^]
	    is the same as using <ALT><ESC>.

     ^^     quotes the next character so that it is taken literally and then  is
	    converted  to a control character.	For instance, if you want to in-
	    clude a command in a macro definition, you must quote the  keystroke
	    sequence. Otherwise, the command will be executed rather than become
	    part of your macro.

     <ESC>^^
	    quotes the next character so that is becomes a 8 bit character.

     <ALT>^^
	    quotes the next character so that is becomes a 8 bit control charac-
	    ter.

     <ALT><ESC>^^
	    quotes  the  next  character so that you type it in in a hexadecimal
	    notation.

     <ALT><ALT>
	    goto tag that is a word located at cursor position.  See FILES  sec-
	    tion for more information on the tag file.

     <ESC><ALT><ALT>
	    pop the tag stack by one entry.  Every time you go to a tag, the old
	    location is pushed on top of the tag stack.

     <ESC>%
	    search  for  matching  parenthesis.  If this command is entered, the
	    cursor is put to the parenthesis that matches the parenthesis  where
	    the cursor is currently located.

     <ESC>*
	    Execute  temporary	macro.	 One temporary macro may be set up using
	    the command <ESC>:macro command.

     <ESC>:
	    introduce a colon command.	See section COLON COMMANDS for more  in-
	    formation.

COLON COMMANDS
     Colon commands are introduced via <ESC>:
     The command then may be entered on the (top) status line of ved.

     The colon commands are:

     backup
	    Backup current file. This command is the same as when <ESC>^C is en-
	    tered.   It  may  be needed if for some reason it it not possible to
	    enter the interrupt character of the terminal driver.

     bind   Print the current command binding for ved.	Later  versions  of  ved
	    may allow modification of the binding with this command.

     help   print online help for available colon commands.

     macro macro body
	    set up a temporary macro that may be executed via <ESC>*

     map

     map from-string to-string
	    The  first form lists all currently active mappings, the second form
	    sets up a new mapping.

     next   switch to next file in file list.  This command may only be used  if
	    ved has been called with more than one file argument.

     prev   switch to previous file in file list.  This command may only be used
	    if ved has been called with more than one file argument.

     quit   Quit  ved.	 This command is the same as when ^C is entered.  It may
	    be needed if for some reason it it not possible to enter the  inter-
	    rupt character of the terminal driver.

     set

     set set-variable set-args
	    The  first	form  lists the current settings of ved, the second form
	    sets a specific property of ved.  The variables that may be modified
	    via the set command are:

	    autoindent
		   If set, ved activates the auto indent mode. Subsequent  lines
		   will  be  automatically  indented with the same indent as the
		   previous line.  Switch off with <ESC>:set noautoindent

	    linelen new-linelen
		   Set linelength that is used as base for screen updates.  This
		   linelength usually is retrieved from the terminal driver  but
		   may be modified manually.

	    magic  Switch  to  magic  mode for pattern matching (this is the de-
		   fault when ved has been started). If in magic mode,	matching
		   is done using regular expression pattern matching.  This mode
		   may be switched off with <ESC>:set nomagic.	If magic mode is
		   turned off, matching is done without using regular expression
		   matching  even  if  the pattern contains magic characters for
		   pattern matching.

	    markwrap
		   Mark wrapped lines with a \ character at the end of a visible
		   terminal  line  (this  is  the  default  when  ved  has  been
		   started).   This  mode may be switched off with <ESC>:set no-
		   markwrap.

	    optline opt-line
		   Set the optimal line.  This is the line (counted from the top
		   of the terminal) where the cursor is  adjusted  to  when  ved
		   does scrolling.  It is set by default to the half of the num-
		   ber of lines of the terminal.

	    pmargin page-margin
		   Set	the distance you need to have between the cursor and the
		   upper or lower border of the terminal. If you cross this bor-
		   der, ved will start to scroll and adjust the  cursor  to  the
		   optimal  line.   It	is set by default to 0 and allows one to
		   place the cursor to any visible line on the screen.

	    psize page-size
		   Set pagesize that is used as base for screen  updates.   This
		   pagesize  usually  is  retrieved from the terminal driver but
		   may be modified manually.

	    tabstop tab-width
		   Set the size of a visible tab character. This width is set to
		   8 by default.

	    taglength tag-len-value
		   Set the number of characters that are used to compare  a  tag
		   name  with  a  tag label in the tags file.  If it is set to 0
		   (the default), ved compares the complete tag length.

	    tags tag-file-list
		   Set the list if files that is searched when looking for a tag
		   data base.  The tag file list is separated by blanks  and  by
		   default set to

		   tags .. /usr/lib/tags

		   This  means	that  ved will first look for a file tags in the
		   current directory, then search up for (directory by directory
		   until the root directors is reached) a file tags and last  it
		   will look for a file /usr/lib/tags.

	    wrapmargin wrap-margin
		   If wrapmagin is set, ved will activate the auto-warp mode. In
		   auto-wrap  mode, ved will automatically insert a new-line be-
		   fore a word if the cursor is less than  wrap-magin  from  the
		   right terminal border.

     substitute /old/new/
	    Substitute pattern old by new.  The pattern new may contain an & for
	    the old string.

     tag tag-name
	    goto  tag named tag-name.  See FILES section for more information on
	    the tag file.

     vhelp  Edit the online help file.	This is the same as calling ved -vhelp.

MACROS
     You may create macros in ved that are a combination of different ved  basic
     commands  and  input  text.   To  create a macro, you need to edit the file
     .vedmac in your home directory.  You may do this by either explicitly  typ-
     ing ved ~/.vedmac or by using the built in ved command <ALT>^G.

     The  file	~/.vedmac contains a number of lines, each holds a macro defini-
     tion like this:

     L:/*^[74^M-*/: Comment Line

     Each macro definition has three fields:

     name   The name of the macro. In our case, the name is  simply  L	and  the
	    macro may executed by typing <ESC>L.

     function
	    The  implementation  of the macro. In our case the function contains
	    /*^[74^M-*/ and will draw a C-comment  line  that  contains  74  '-'
	    chars as body.

     comment
	    A comment for better understanding of the macro file. The comment is
	    ignored.

     The fields are separated by a colon.

     Macros  may be combined to form new macros.  They also may recursively call
     each other and you may set number to a value greater than one to execute  a
     macro  more  than	once.  There is currently no way to execute a macro in a
     conditional way.

MAPPINGS
     You may create mappings in ved that contain arbitrary character  sequences.
     To  create a mapping, you need to edit the file .vedmap in your home direc-
     tory.

     The file ~/.vedmap contains a number of lines with the following structure:

       map_from:map_to:comment

     and holds a map definition like this:

     \E[193z:^C:Quit Editor  (L2)

     Each map definition has three fields:

     map-from  The from string (left hand side) of the map.  In  our  case,  the
	       name  is the sequence \E[193z which is the output of the L2 func-
	       tion key on a Sun keyboard.  Every time when you type the charac-
	       ter sequence \E[193z or hit a function key that emits this  char-
	       acter  sequence,  it  will replaced by the the replacement string
	       before the input is read by ved.

     map-to    The replacement (right hand size or to string) of the  macro.  In
	       our case the map expands to ^C and will quit ved.

     comment   A  comment  for better understanding of the map file. The comment
	       is ignored.

     If both map_from and map_to are empty, the related line is ignored  by  the
     mapper, so a line may contain:

       ::comment

     A	nul  character	in either map_from or map_to is currently not supported,
     but an empty map_to is interpreted as a nul character.

     If a line has an empty map_to and the comment field starts with  a  *  like
     this:

       map_from::*comment

     an  existing  mapping  is	removed. This permits ignoring unwanted mappings
     that have been set up from the TERMCAP entry.  A typical use case for  this
     feature is to avoid the mapping:

       ^H:^?:Key Backspace -> Delete Char

     that  is  caused  by  the TERMCAP capability kb for terminals that create a
     backspace with the delete key.

     Since the file $HOME/.vedmap is read in a sequential way, a later line with
     the same map_from may establish a different mapping.

     The fields are separated by a colon.  The text in the  macro  file  is  fed
     through tdecode() to allow the same escape sequences as you may have in the
     termcap file.

   Input Mappings
     Ved  maps input from the terminal into mapped text before it is interpreted
     by the editor. If a match is found on the input from the terminal, the  re-
     lated  input  text is directly replaced by it's replacement string.  A map-
     ping may be prevented by typing the map quote character which  is	the  nul
     character (^@), directly before the matching text is entered.  If this text
     is usually interpreted by ved, you first need to type the ved quoting char-
     acter  ^^.  To be sure that you are able to literally enter some text, type
     ^^^@ (control up-arrow followed by Nul and the text).

     At startup, ved first tries to initialize	the  terminal  setup  using  the
     variables HOME, TERM, TERMCAP and TERMPATH.

     If TERM is not set, the mapper establishes standard mappings for the cursor
     keys assuming an ANSI-compatible terminal.

     TERM  is set, the mapper establishes mappings for the following termcap ca-
     pabilities:

     ku     Key cursor up, mapped to ^P.
	    The cursor is placed on the previous line.

     kd     Key cursor down, mapped to ^N.
	    The cursor is placed on the next line.

     kr     Key cursor forward (right), mapped to ^F.
	    Move cursor one character to the right.

     kl     Key cursor left, mapped to ^H.
	    Move cursor one character to the left.

     kh     Key cursor -> Home, mapped to ^A.
	    The Cursor is moved to the beginning of the current line.

     @7     Key cursor -> End, mapped to ^E.
	    The Cursor is moved to the end of the current line.

     kD     Key Delete Character, mapped to \177 (DEL).
	    Erase one character to the left of the cursor.

     kb     Key Backspace, mapped to \177 (DEL).
	    Erase one character to the left of the cursor.

	    Note that the Backspace Key is the larger key that is just above the
	    Carriage Return Key.  In former times, this key  was  called  Delete
	    and send the \177 (DEL) character.	Since companies followed the de-
	    sign  of  the  IBM PC keyboard layout, the related key usually sends
	    \010.  If you like to literally enter a backspace, type ^^^@^H (con-
	    trol up-arrow followed by Nul followed by ^H).

     k1     Key F1, mapped to Quit Editor (^C).

     k2     Key F2, mapped to Top of File (^B).

     k3     Key F3, mapped to Delete char (^D).

     k4     Key F4, mapped to Delete line (^K).

     k5     Key F5, mapped to Open line (^O).

     k6     Key F6, mapped to Cut line (^T).

     k7     Key F7, mapped to Paste (^V).

     k8     Key F8, mapped to Change buffer (^ ).

     k9     Key F9, mapped to Search down (^R).

     k;     Key F10, mapped to Re search (^Z).

     F1     Key F11, mapped to Get from (^G).

     F2     Key F12, mapped to Write to (^W).

     kA     Key Insert, mapped to Insert line (^A^O).

     kE     Key Clear EOL, mapped to Delete to eol (^K).

     kL     Key delete line, mapped to Delete line (^A^K).

     kN     Key Page down, mapped to Page down (^[n).

     kP     Key Page up, mapped to Page up (^[p).

     kS     Key Clear EOS, mapped to Delete to end of screen (^[999999\015^K).

     After the mappings from the termcap entry for  the  current  terminal  type
     have been established, ved tries to read the file $HOME/.vedmap to retrieve
     additional mappings.

   Termcap
     The termcap data base is used to make ved independent from the terminal ca-
     pabilities. Cursor key output is retrieved from the data base and mapped to
     the cursor movement commands of ved.

     Ved  uses	a  real termcap database, not terminfo.  It is advised to have a
     suitable termcap database available, either in the file /etc/termcap or  in
     the private file $HOME/.termcap with an entry for the terminal type that is
     currently in use.	If an entry for the current terminal could not be found,
     ved  uses a builtin terminal description for a minimal ansi compatible ter-
     minal.

     The following variables are used by termcap:

     HOME      To find the private files like $HOME/.termcap.

     TERM      A name representing the type of the current terminal.

     TERMCAP   This environment variable holds either a precompiled termcap  en-
	       try  or	the pathname to be used to find a termcap database file.
	       If it holds a precompiled entry that does not match the TERM  en-
	       vironment, the termcap database is parsed as if the TERMCAP envi-
	       ronment is not set.  See section Parameter Substitution above for
	       more information.

     TERMPATH  If  TERMCAP is empty or not set, then the TERMPATH environment is
	       scanned for pathnames of files that contain a  termcap  database.
	       It holds a list of filenames separated by colons or spaces (i.e.,
	       ":"  or	" ").  See section Parameter Substitution above for more
	       information.

     The following escape sequences are understood by the termcap implementation
     used by ved:

     \\      The literal character \.
     \E      The ESC character (ASCII 033).
     \e      The ESC character (ASCII 033).
     \^      The literal character ^.
     \:      The literal character :.
     \,      The literal character ,.
     \b      The BACKSPACE character (ASCII 010).
     \f      The FORMFEED character (ASCII 014).
     \l      The LINEFEED character (ASCII 012).
     \n      The NEWLINE character (ASCII 012).
     \r      The CR character (ASCII 015).
     \s      The SPACE character (ASCII 040).
     \t      The TAB character (ASCII 007).
     \v      The VERTICAL TAB character (ASCII 013).
     ^c      Maps to control(c) for any appropriate c.
     ^?      The DEL character (ASCII 0177).
     \nnn    Maps to a character with the octal representation nnn with 1..3 oc-
	     tal digits.
     \0      Maps to ASCII 0200.
     ^@      Maps to ASCII 00.

     Mapping \0 to ASCII 0200 is required by the termcap documentation.  A  real
     nul character created from (^@) is currently neither supported by the upper
     layers of termcap, nor by the upper layers of the mapper.

ENVIRONMENT
     SHELL  For  the  shell to use for shell command escapes, file name globbing
	    and similar.

     HOME   To find the private files ~/.vedmac ~/.vedmap and ~/.termcap

     TERM   The type of terminal for which the output should be formatted.

     TERMCAP
	    This environment variable holds either a precompiled  termcap  entry
	    or	the  pathname to be used to find a termcap database file.  If it
	    holds a precompiled entry that does not match the TERM  environment,
	    the  termcap database is parsed as if the TERMCAP environment is not
	    set.

     TERMPATH
	    If TERMCAP is empty, then the TERMPATH environment	is  scanned  for
	    pathnames of files that contain a termcap database.  It holds a list
	    of	filenames separated by colons or spaces (i.e.,	":" or " ").  If
	    the TERMPATH  symbol  is  not  set,  the  files  $HOME/.termcap  and
	    /etc/termcap are scanned in that order.

     BEEP   The  environment  variable BEEP is used to suppress beeping when set
	    to off.  This helps to use ved on a notebook in a meeting.

     PATH   The environment variable PATH is used to find the on-line help  file
	    of ved.

     SLASH  If	the  environment  variable SLASH is set to 'off', no slashes are
	    accepted in filenames.

     VED_FTMPDIR
	    Fast tmp directory.  The directory where the ved swap file vedF.pro-
	    cessid is stored.  If VED_FTMPDIR is not specified,  the  swap  file
	    will usually be stored in /tmp/.

     VED_TMPDIR
	    General tmp directory.  The directory where all ved tmp files except
	    the swap file are stored.  If VED_FTMPDIR is not defined but VED_TM-
	    PDIR  is  defined, all ved tmp files will be placed into this direc-
	    tory.  If VED_TMPDIR is not specified, the other ved tmp files  will
	    usually be stored in /var/tmp/.

     VED_STATISTICS
	    If	set  and ved has been compiled with statistics support, ved will
	    print statistic information at the end of a session.

FILES
     /etc/termcap
	    The system's terminal capabilities database.

     ~/.termcap
	    The private terminal capabilities database.

     ~/.vedmac
	    Contains private macro definitions.

     ~/.vedmap
	    Contains private mappings.

     ~/.vedtmp.uid
	    Contains the names of the files that have been edit from the current
	    directory as well as the cursor position of  the  last  visit.   Ved
	    also keeps track of the last edited file.

     tags   This  file	contains a list of tags that tell ved where a definition
	    for a tag may be found. Tags may contain e.g. function names,  macro
	    names  and	typedefs.   By default, ved looks for a tags file in the
	    current directory and if a tags file is not found in the current di-
	    rectory, the directories above the current	directory  are	searched
	    until  the root directory is reached. If a tags file can be found in
	    a directory closer to the root directory, ved will modify  the  file
	    path  from within the tags file to reflect the directory distance to
	    this tags file. This property is unique to ved.   Ved  accepts  tags
	    files in the same notation as vi.

     /tmp/vedF.processid
	    The ved swap file.

     /var/tmp/vedB.processid
	    The ved backward delete buffer.

     /var/tmp/vedD.processid
	    The ved forward delete buffer.

     /var/tmp/vedT.processid
	    The current take buffer.

     /var/tmp/vedTpastename.processid
	    One file for every named take buffer.

     /var/tmp/vedP.processid
	    The ved crash recovery protocol buffer.

     /var/tmp/vedX.processid
	    The ved shell command execute buffer.

     .../man/help/ved.help
	    The on-line help file is assumed to be in the same directory tree as
	    the ved binary.

SEE ALSO
     change(1), match(1).

NOTES
     Unlike vi, ved is not based on a line editor. This avoids annoying bugs but
     may cause to irritate people who are used to work with vi.

     Since ved uses a private implementation of the termcap terminal independent
     screen  package, ved uses /etc/termcap even on systems that usually emulate
     termcap with terminfo.  This allows us to use  the  portable  terminal  de-
     scription on all operating systems. From my current point of view, ved will
     never switch towards terminfo.  Although terminfo provides more functional-
     ity  than termcap, it tends to be non-portable between different platforms.
     While termcap allows one to have a private terminal  database  in	the  NFS
     mounted  home  directory, the same attempt tends to give problems with ter-
     minfo if a vendor did make private additions.  Because  termcap  explicitly
     names  all  capabilities,	there  are less problems with private additions;
     terminfo only uses an array index to identify a specific capability so this
     method only works if there is a global unique implementation.

     If your platform does not provide an /etc/termcap file, or if your  termcap
     database does not contain an entry for the terminal type you are using, the
     following	command  may  be used to convert a terminfo entry into a termcap
     entry and to append it to your private termcap database

	 incofmp -C >> $HOME/.termcap

     Make sure that the TERM environment is assigned  to  the  correct	terminal
     type.

     If the eighth bit of a character is "on", the tilde character ~ appears be-
     fore characters, i.e., ~C.

BUGS
     None currently known.

     Mail  bugs  and  suggestions  to  schilytools@mlists.in-berlin.de or open a
     ticket at https://codeberg.org/schilytools/schilytools/issues

     The mailing list archive may be found at:

     https://mlists.in-berlin.de/mailman/listinfo/schilytools-mlists.in-berlin.de

AUTHORS
     Joerg Schilling and the schilytools project authors.

SOURCE DOWNLOAD
     The source code for ved is included in the schilytools project and  may  be
     retrieved from the schilytools project at Codeberg at:

     https://codeberg.org/schilytools/schilytools/

     The download directory is:

     https://codeberg.org/schilytools/schilytools/releases

Joerg Schilling 		   2022/09/14				 VED(1L)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=ved-e&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help