vi: redraw if commands like x change visible columns
[neatvi.git] / README
blob0c9a70027c620ad60390479a6f156463f222587a
1 NEATVI
2 ======
4 Neatvi is a vi/ex editor.  It can edit bidirectional UTF-8 text.
6 CONFIGURATION
7 -------------
9 Edit conf.h to adjust syntax highlighting rules and text direction
10 patterns.  To define a new keymap, create a new array in kmap.h, like
11 kmap_fa, and add it to kmaps array in the same header (the first entry
12 of the new array specifies its name).  The current keymap may be
13 changed using :cm ex command.  When in input mode, ^e changes to the
14 English kaymap and ^f changes to the alternate keymap (the last keymap
15 specified with :cm).
17 COMMANDS
18 --------
20 Commands not available in ex(1):
22 :cm[ap][!] [kmap]
23   Without kmap, print the current keymap name.
24   When kmap is specified, set the alternate keymap to
25   kmap and, unless ! is given, switch to this keymap.
26 :ft [filetype]
27   Without filetype, print the current file type.
28   When filetype is specified, set the file type of the
29   current ex buffer.
31 New key mappings:
32 ^a in normal mode, searches for the word under the cursor
33 ^p in insert mode, inserts the contents of the default yank buffer
35 OPTIONS
36 -------
38 To improve neatvi's performance, shaping, character reordering, and
39 syntax highlighting can be disabled by defining the EXINIT environment
40 variable as "set noshape | set noorder | set nohl | set td=+2".
42 Options supported by neatvi:
44 td, textdirection
45   Current direction context.  The following values are meaningful:
46   * +2: always left-to-right.
47   * +1: follow conf.h's dircontexts[]; left-to-right for others.
48   * -1: follow conf.h's dircontexts[]; right-to-left for others.
49   * -2: always right-to-left.
50 shape
51   If set (default), performs Arabic/Farsi letter shaping.
52 order
53   If set, reorder characters based on the rules defined
54   in conf.h.
55 hl, highlight
56   If set (default), text will be highlighted based on syntax
57   highlighting rules in conf.h.
58 ai, autoindent
59   As in vi(1).
60 aw, autowrite
61   As in vi(1).
62 ic, ignorecase
63   As in vi(1).
65 MARKS AND BUFFERS
66 -----------------
68 Special marks:
69 * the position of the previous change
70 [ the first line of the previous change
71 ] the last line of the previous change
73 Special yank buffers:
74 / the previous search keyword
75 : the previous ex command