1VILE(1)                     General Commands Manual                    VILE(1)
2
3
4

NAME

6       vile, xvile, uxvile, lxvile - VI Like Emacs
7

SYNOPSIS

9       vile  [@cmdfile] [+command] [-FhIiRVv] [-gNNN] [-kcryptkey] [-spattern]
10       [-ttag] [filename]...
11

DESCRIPTION

13       vile is a text editor.  This man page is fairly terse.   More  informa‐
14       tion  can  be  obtained  from  the internal help, available with the -h
15       option or by using the ":help" command from within vile.
16
17       xvile is the same text editor, built as an X-windows application,  with
18       fully integrated mouse support, scrollbars, etc.
19
20       uxvile  is a wrapper around xvile which invokes the latter program with
21       the correct locale environment required to use a unicode character  set
22       and the "UXVile" X resource class set.
23
24       lxvile  is a wrapper around xvile which invokes the latter program with
25       a font chosen to match the current locale environment.
26

SPIRIT

28       vile retains the "finger-feel", if you will, of vi,  while  adding  the
29       multiple  buffer  and  multiple window features of emacs and other edi‐
30       tors.  It is definitely not a vi clone, in that some substantial  stuff
31       is  missing,  and  the  screen doesn't look quite the same.  The things
32       that you tend to type over and over probably work.   Things  done  less
33       frequently,  like  configuring  a  startup file, are somewhat (or very,
34       depending on how ambitious you are) different.  But what  matters  most
35       is that one's "muscle memory" does the right thing to the text in front
36       of you, and that is what vile tries to do for vi users.
37

OPTIONS

39       Vile accumulates most options into two temporary buffers [vileinit] and
40       [vileopts].   The former is executed before reading the first file into
41       a buffer.  The latter is executed after reading the first file  into  a
42       buffer.  Each is removed after executing (unless an error is detected).
43
44   COMMON OPTIONS
45       -ccommand
46              vile will begin the session on the first file invoking the given
47              command.  Legal commands include many ex-style  commands,  vile-
48              commands,  etc.,  subject to shell quoting.  This option is used
49              most often with a line number or search pattern.  For example
50
51                 vile -c123 filename
52                 vile -c/pattern filename
53
54              They correspond to ex-style commands on the given file:
55
56                 :123
57                 :/pattern
58
59              These are more verbose equivalents:
60
61                 vile -c'123 goto-line' filename
62                 vile -c'search-forward /pattern/' filename
63
64              You can use more than one command, e.g.,
65
66                 vile -c'123' -c'10*goto-col' filename
67
68              to put the cursor on column 10 of line 123.  The  "*"  (or  ":")
69              separates  the repeat count (used by goto-col) from the line- or
70              range-specification used by line-oriented commands.
71
72       @cmdfile
73              vile will run the specified file as its startup file,  and  will
74              bypass  any  normal  startup file (i.e.  .vilerc) or environment
75              variable (i.e.  $VILEINIT).  This is added to [vileinit].
76
77       -D     tells vile to trace the results of macro execution into the hid‐
78              den buffer "[Trace]".
79
80       -e | -E
81              Invokes  vile  in  "noview"  mode - changes are permitted to any
82              buffer while in this mode (see "-v").
83
84       -F     will run the syntax filter that applies to each filename on  the
85              command-line, and write the attributed text to the standard out‐
86              put.
87
88       -h     Invokes vile on the helpfile.
89
90       -i | -I
91              Tells vile to use vileinit.rc (which is installed) as  the  ini‐
92              tialization  file.  If you do not have a .vilerc, vile will make
93              a  short  one  that  sources  vileinit.rc  This  is   added   to
94              [vileinit].
95
96       -k cryptkey | -K cryptkey
97              Specifies  an  encryption/decryption key.  See below for further
98              discussion.  This option applies only  locally  to  the  buffers
99              named on the command-line, and is not added to [vileopts], since
100              that is executed too late.
101
102       -R     Invokes vile in "readonly" mode - no writes are permitted  while
103              in  this  mode.   (This  will also be true if vile is invoked as
104              view, or if "readonly" mode is set in the startup file.)
105
106       -s pattern | -S pattern
107              In the first file, vile will execute an initial search  for  the
108              given pattern.  This is not the same as "-c/pattern", since that
109              positions the cursor to the line  matching  the  pattern.   This
110              option positions the cursor within the line.
111
112       -t tag
113              vile will edit the correct file and move the cursor to the loca‐
114              tion of the tag.  This requires  a  tagsfile  created  with  the
115              ctags(1)  command.  The option -T is equivalent, and can be used
116              when X11 option parsing eats the -t.
117
118       -v     Invokes vile in "view" mode - no changes are  permitted  to  any
119              buffer while in this mode (see "-e").
120
121       -V     vile will report its version number.
122
123       -25 -43 -50 -60
124              On  PC systems you may be able to set the initial screen resolu‐
125              tion from the command line.
126
127       -80 -132
128              On VMS systems you may be able to set the initial screen resolu‐
129              tion from the command line.  See vile.hlp for details.
130
131   X11 OPTIONS
132       xvile-specific  command-line options are detailed in the help file (see
133       "Standard X command line arguments").  The standard  ones  (e.g.  -dis‐
134       play, -fn, -geometry, -name, etc.) are all supported.
135
136   OBSOLETE OPTIONS
137       vile  recognizes  some options which duplicate the functionality of the
138       POSIX "-c" option:
139
140       +command
141              This has the same effect as "-ccommand".
142
143       -g NNN | -G NNN
144              This has the same effect as "-cNNN".  vile will begin  the  ses‐
145              sion on the first file jumping to the given line number NNN.
146

INVOCATION

148       vile  will  edit  the files specified on the command line.  If no files
149       are specified, and standard input is not connected to a terminal,  then
150       vile  will  bring  up  a buffer containing the output of the pipe it is
151       connected to, and will re-open /dev/tty for  commands.   Files  (except
152       for the first) are not actually read into buffers until "visited".  All
153       buffers are kept in memory: machines with not much memory or swap space
154       may have trouble with this.
155

STARTUP

157       If  the @cmdfile option is given, then the file given as "cmdfile" will
158       be run before any files are loaded.  If no @  option  appears,  startup
159       commands will be taken from the user's VILEINIT variable, if it is set,
160       from the file .vilerc in the current directory, if it exists,  or  from
161       $HOME/.vilerc,  as  a  last  resort.  See the help file for examples of
162       what sorts of things might go into these command files.
163

COMMANDS

165       Please refer to the help available within vile for  vile-specific  com‐
166       mands.   (That  document, however, assumes familiarity with vi.)  Short
167       descriptions of each vile command may be obtained with the  ":describe-
168       function"  and  ":describe-key"  commands.   All commands may be listed
169       with ":show-commands".
170
171       Additional documentation on writing macros using the internal scripting
172       language can be found in the file macros.doc, distributed with the vile
173       source.
174
176       vile may also be built and installed as xvile, in which case it behaves
177       as  a  native X Windows application, with scrollbars, better mouse sup‐
178       port, etc.  The help file has more information on this.
179
180       There is a program distributed with the vile source  which  is  usually
181       installed  as  vile-manfilt.  (Two versions of the source for vile-man‐
182       filt are available, in C (manfilt.c) and in Perl (manfilt.pl).)  It may
183       be  used  in conjunction with vile or xvile (with the help of the macro
184       in the file manpage.rc) to filter and view system manual pages.   xvile
185       will even (with your font set properly) display certain portions of the
186       manual page text in bold or italics as appropriate.  See the help  file
187       for details.
188
189       Likewise,  there are several language filters, e.g., vile-c-filt for C,
190       which can embolden, underline, or perform coloring  on  program  source
191       code.  Again, see the help file for more information.
192

ENCRYPTION

194       The  program  vile-crypt can be used to encrypt/decrypt files using the
195       same algorithm as microEmac's internal crypt algorithm.  This  program,
196       which  uses public domain code written by by Dana Hoggatt, is no longer
197       used in vile, though it is provided for compatibility.
198
199       vile currently uses the crypt(3)  function  for  encryption/decryption,
200       which  is  available  on  most Unix systems.  This ensures that vile is
201       able to read and write files compatibly with vi  (but  not  vim,  which
202       uses  an  different  algorithm  derived  from  info-zip).  The editor's
203       encryption/decryption key can be specified on the command line with "-k
204       key".   Text  to be encrypted can be specified as filenames on the com‐
205       mand line, or provided as the standard input.  On systems with  a  get‐
206       pass()  library  routine,  the user will be prompted for the encryption
207       key if it is not given on the command  line.   To  accommodate  systems
208       (such  as  linux) where the getpass() library routine is not interrupt‐
209       ible from the keyboard, entering a crypt-key password which ends in  ^C
210       will cause the program to quit.  See the help file for more information
211       on vile's encryption support, including a discussion of a collection of
212       macros that interface with GNU's gpg package.
213

ENVIRONMENT VARIABLES

215       VILEINIT
216              Editor initialization commands in lieu of a startup file.  These
217              are copied into [vileinit], and executed.
218
219       VILE_HELP_FILE
220              Override the name of the help file, normally ``vile.hlp''.
221
222       VILE_LIBDIR_PATH
223              Augment $PATH when searching for a filter program.
224
225       VILE_STARTUP_FILE
226              Override the name of the startup file, normally ``.vilerc''  (or
227              ``vile.rc'' for non-UNIX systems).
228
229       VILE_STARTUP_PATH
230              Override the search path for the startup and help files.
231

SEE ALSO

233       Your favorite vi document, the file macros.doc, and the vile help page,
234       available with the -h option or as the text file vile.hlp.
235

DEBTS and CREDITS

237       vile was originally built from a copy of microEmacs, so a large debt of
238       gratitude  is  due  to the developers of that program.  A lot of people
239       have helped with code and bug reports on vile.  Names are named at  the
240       bottom of the help file.
241

AUTHORS

243       vile was created by Paul Fox, Tom Dickey, and Kevin Buettner.
244

BUGS

246       The  "VI Like Emacs" joke isn't really funny.  It only sounds that way.
247       :-)   Other suspicious behavior should  be  reported  via  the  project
248       mailing list, or via the web-based bug reporting system.  Both of these
249       are available here:
250
251       https://savannah.nongnu.org/projects/vile
252
253
254
255                                                                       VILE(1)
Impressum