htaccess: only enable apache deflate option if present
[sheet.git] / vi.eng.inc.pl
1 use utf8;
2
3 {
4 key => {
5
6 '~' => ["case toggle"],
7 '!' => ["filt$sign{_}er lines"],
8 '@' => ["play macro"],
9 '#' => ["rev. find word"],
10 '$' => ["eol"],
11 '%' => ["goto match"],
12 '^' => ['"soft" bol'],
13 '&' => [":s rep$sign{_}eat"],
14 '*' => ["find word"],
15 '(' => ["begin senten$sign{_}ce"],
16 ')' => ["end senten$sign{_}ce"],
17 '_' => ['"soft" bol down'],
18 '+' => ["next line"],
19 '`' => ["goto mark"],
20 '0' => ['"hard" bol'],
21 '^^'=> ["edit alt. file"],
22 '-' => ["prev line"],
23 '=' => ["re$sign{_}ind$sign{_}ent"],
24 '?' => ["find rev."],
25 ';' => ["repeat t/f/T/F"],
26 ':' => ["ex cmd line"],
27 "'" => ["goto mark bol"],
28 '"' => ["use reg$sign{_}ister"],
29 '\\' => ["reser$sign{_}ved"],
30 '^\\' => ["to mode/$sign{_}ext$sign{_}ens$sign{_}ion$sign{_}s"],
31 ',' => ["reverse t/T/f/F"],
32 '<' => ["un$sign{_}ind$sign{_}ent"],
33 '.' => ["repeat last cmd"],
34 '>' => ["ind$sign{_}ent"],
35 '/' => ["find"],
36 '[' => ["move back$sign{_}ward$sign{_}s"],
37 '{' => ["begin parag."],
38 ']' => ["move forw$sign{_}ard"],
39 '}' => ["end parag."],
40 '^]'=> ["go to tag"],
41 '|' => ["goto (1st) col"],
42
43 'a' => ["app$sign{_}end"],
44 'A' => ["app$sign{_}end to eol"],
45 '^a'=> ["incr$sign{_}ement", "Add one"],
46 'b' => ["prev word", "Back"],
47 'B' => ['prev <span style="font-variant:small-caps">word</span>'],
48 '^b'=> ["page up"],
49 'c' => ["chan$sign{_}ge"],
50 'C' => ["chan$sign{_}ge to eol"],
51 '^c'=> ["abort"],
52 'd' => ["del$sign{_}ete"],
53 'D' => ["delete to eol"],
54 '^d'=> ["scroll down"],
55 'e' => ["end word"],
56 'E' => ['end <span style="font-variant:small-caps">word</span>'],
57 '^e'=> ["window down", "Extra line"],
58 'f' => ["fwd to char"],
59 'F' => ["back$sign{_}wd to char"],
60 '^f'=> ["page down", "page Forward"],
61 'g' => ["extra cmds"],
62 'G' => ["eof/$sign{_}goto ln"],
63 '^g'=> [":file (info)"],
64 'h' => [$sign{left}],
65 'H' => ["screen top", 'Home row'],
66 'i' => ["insert mode"],
67 'I' => ["insert at bol"],
68 '^i'=> ["jump to newer", 'Increase position'],
69 'j' => [$sign{down}],
70 'J' => ["join lines"],
71 'k' => [$sign{up}],
72 'K' => ["help", "looKup Keyword"],
73 'l' => [$sign{right}],
74 'L' => ["screen bottom", "Lowermost Line"],
75 '^l'=> ["redraw"],
76 'm' => ["set mark"],
77 'M' => ["screen mid$sign{_}dle"],
78 'n' => ["next find"],
79 'N' => ["prev find"],
80 'o' => ["line below", 'Open'],
81 'O' => ["line above"],
82 '^o'=> ["jump to older"],
83 'p' => ["paste after"],
84 'P' => ["paste before"],
85 'q' => ["rec$sign{_}ord macro", "Queue seQuence"],
86 'Q' => ["ex mode"],
87 '^q'=> ["(xon)", 'Qome back'],
88 'r' => ["repl$sign{_}ace char"],
89 'R' => ["repl$sign{_}ace mode"],
90 '^r'=> ["redo"],
91 's' => ["subst char"],
92 'S' => ["subst line"],
93 '^s'=> ["(xoff)", 'Stop'],
94 't' => ["till char"],
95 'T' => ["back till char"],
96 '^t'=> ["back tag"], # backtrag :P
97 'u' => ["undo"],
98 'U' => ["undo line"],
99 '^u'=> ["scroll up"],
100 'v' => ["visual mode"],
101 'V' => ["visual lines"],
102 '^v'=> ["visual block"],
103 'w' => ["next word"],
104 'W' => ['next <span style="font-variant:small-caps">word</span>'],
105 '^w'=> ["win$sign{_}dow cmds"],
106 'x' => ["delete char"],
107 'X' => ["back$sign{_}space"],
108 '^x'=> ["subs$sign{_}tract"],
109 'y' => ["yank", '(copy)'],
110 'Y' => ["yank line"],
111 '^y'=> ["window up", 'Yield'],
112 'z' => ["extra cmds"],
113 'Z' => ["quit"],
114 '^z'=> [":sus$sign{_}pend", 'zzz (as in sleep)'],
115
116 'g~' => ["case toggl$sign{_}e"],
117 'g@' => ["oper$sign{_}at$sign{_}or$sign{_}func"],
118 'g#' => ["rev. find string"],
119 'g$' => ["virt$sign{_}ual eol"],
120 'g^' => [qq'"soft" bol v$sign{_}irt$sign{_}ual'],
121 'g&' => [":s rep$sign{_}eat glob$sign{_}al$sign{_}ly", "Global substitute"],
122 'g*' => ["find string"],
123 'g_' => [qq'"soft" eol'],
124 'g+' => ["later undo"],
125 'g`' => ["to mark keepj$sign{_}umps"],
126 'g8' => ["char hex val$sign{_}ue$sign{_}s"],
127 'g0' => ["virtual bol"],
128 'g-' => ["earlier undo"],
129 'g^['=> ["esc"],
130 'g]' => ["go to tselect"],
131 'g^]'=> ["go to tjump"],
132 'g;' => ["to prev change pos"],
133 "g'" => ["to mark keepj$sign{_}umps"],
134 'g<' => ["see prev cmd output"],
135 'g?' => ["rot13 encode"],
136 'g,' => ["to next change pos"],
137
138 'ga' => ["char value", "Get Ascii value"],
139 'g^a'=> ["mem usage stats"],
140 'gd' => ["local declar$sign{_}ation"],
141 'gD' => ["global declar$sign{_}ation"],
142 'ge' => ["back to word end"],
143 'gE' => [qq'back to <span style="font-variant:small-caps">word</span> end'],
144 'gf' => ["edit file at cur$sign{_}sor", "Goto File"],
145 'gF' => ["edit file + jump"],
146 'gg' => ["first line"],
147 'g^g'=> ["cur$sign{_}sor pos info"],
148 'gh' => ["select mode", "Get Highlighted"],
149 'gH' => ["select lines", "Get Highlighted"],
150 'g^h'=> ["select block", "Get Highlighted"],
151 'gi' => ["insert at last pos"],
152 'gI' => ["insert at soft bol"],
153 'gj' => ["$sign{down} screen"],
154 'gJ' => ["join leave spac$sign{_}ing"],
155 'gk' => ["$sign{up} screen"],
156 'gm' => ["cen$sign{_}ter screen"],
157 'go' => [":goto (byte)"],
158 'gp' => ["paste still"],
159 'gP' => ["paste before still"],
160 'gq' => ["for$sign{_}mat"],
161 'gQ' => ["ex mode manual :"],
162 'gr' => ["virt. repl$sign{_}ace char"],
163 'gR' => ["virt. repl$sign{_}ace mode"],
164 'gs' => ["sleep", "Go to Sleep"],
165 'gt' => ["next tab", "Goto Tab"],
166 'gT' => ["tab back"],
167 'gu' => ["lower$sign{_}case"],
168 'gU' => ["up$sign{_}per$sign{_}case"],
169 'gv' => ["prev$sign{_}ious highl$sign{_}ight", 'precedinG Visual'],
170 'gV' => ["avoid resel$sign{_}ect$sign{_}ion"],
171 'gw' => ["for$sign{_}mat still"],
172 'gx' => ["Netrw$sign{_}BrowseX"],
173
174 'Z^['=> ["esc"],
175 'ZQ' => [" :q! (force)"],
176 'ZZ' => [" :wq (write)"],
177
178 'z^' => ["page above"],
179 'z+' => ["page below"],
180 'z-' => ["line at bottom bol", "don't (-) see any further"],
181 'z=' => ["sug$sign{_}gest spell$sign{_}ing"],
182 'z.' => ["line at center bol"],
183 'z^['=> ["esc"],
184
185 'za' => ["toggle fold"],
186 'zA' => ["toggle fold rec$sign{_}urs$sign{_}ive$sign{_}ly"],
187 'zb' => ["line at bot. bol"],
188 'zc' => ["close fold"],
189 'zC' => ["close folds rec$sign{_}curs$sign{_}ive$sign{_}ly"],
190 'zd' => ["delete fold"],
191 'zD' => ["delete folds rec$sign{_}urs$sign{_}ive"],
192 'ze' => ["cursor at right side"],
193 'zE' => ["elimi$sign{_}nate f$sign{_}olds"],
194 'zf' => ["create fold"],
195 'zF' => ["fold lines"],
196 'zg' => ["add spell$sign{_}ing", 'Good word'],
197 'zG' => ["temp spell$sign{_}ing"],
198 'zh' => ["scroll $sign{right}"],
199 'zH' => ["scroll $sign{right} half scr$sign{_}een"],
200 'zi' => ["toggle all folds"],
201 'zj' => ["next fold start"],
202 'zk' => ["prev fold end"],
203 'zl' => ["scroll $sign{left}"],
204 'zL' => ["scroll $sign{left} half scr$sign{_}een"],
205 'z^m'=> ["line at top bol"],
206 'zm' => ["fold more"],
207 'zM' => ["close all folds"],
208 'zn' => ["fold none"],
209 'zN' => ["fold norm$sign{_}al"],
210 'zo' => ["open fold"],
211 'zO' => ["open folds rec$sign{_}urs$sign{_}ive$sign{_}ly"],
212 'zr' => ["reduce folding"],
213 'zR' => ["open all folds"],
214 'zs' => ["cursor at left side"],
215 'zt' => ["line at top"],
216 'zu' => ["undo spell$sign{_}ing"],
217 'zv' => ["unfold cursor line"],
218 'zw' => ["add missp$sign{_}ell$sign{_}ing", "Wrong word"],
219 'zW' => ["temp missp$sign{_}ell$sign{_}ing"],
220 'zx' => ["update folds"],
221 'zX' => ["re$sign{_}apply f$sign{_}olds"],
222 'zz' => ["line at center", "Zee Zenter (with a funny accent)"],
223
224 "[`" => ["previous lc mark"],
225 '[#' => ["previous open #if$sign{_}/#else"],
226 '[(' => ["previous open ("],
227 '[/' => ["start of C com$sign{_}m$sign{_}ent"],
228 '[{' => ["previous open {"],
229 '[[' => ["section back$sign{_}ward$sign{_}s"],
230 '[^['=> ["esc"],
231 '[]' => [qq'<span style="font-variant:small-caps">section</span> back$sign{_}ward$sign{_}s'],
232
233 '[c' => ["start of change backw$sign{_}ards"],
234 '[d' => ["define line"],
235 '[D' => ["defin$sign{_}ition"],
236 '[^d'=> ["to defin$sign{_}it$sign{_}ion"],
237 '[i' => ["first occur$sign{_}renc$sign{_}e line"],
238 '[I' => ["first occur$sign{_}renc$sign{_}e"],
239 '[^i'=> ["to first occur$sign{_}renc$sign{_}e"],
240 '[m' => ["start of funct$sign{_}ion"],
241 '[p' => ["P reind$sign{_}ent$sign{_}ed"],
242 '[P' => ["[p"],
243 '[s' => ["last missp$sign{_}ell$sign{_}ing"],
244 '[S' => ["last bad word"],
245 '[z' => ["start of open fold"],
246
247 "]`" => ["next lc mark"],
248 ']#' => ["next open #endif$sign{_}/#else"],
249 '])' => ["next open )"],
250 ']/' => ["end of C com$sign{_}m$sign{_}ent"],
251 '][' => [qq'<span style="font-variant:small-caps">section</span> forw$sign{_}ard'],
252 ']^['=> ["esc"],
253 ']]' => ["section forw$sign{_}ard"],
254 ']}' => ["next open }"],
255
256 ']c' => ["start of change forw$sign{_}ards"],
257 ']d' => ["next define line"],
258 ']D' => ["next define"],
259 ']^d'=> ["to next define"],
260 ']i' => ["next occur$sign{_}renc$sign{_}e line"],
261 ']I' => ["next occur$sign{_}renc$sign{_}e"],
262 ']^i'=> ["to occur$sign{_}renc$sign{_}e"],
263 ']m' => ["end of funct$sign{_}ion"],
264 ']p' => ["p reind$sign{_}ent$sign{_}ed"],
265 ']s' => ["next missp$sign{_}ell$sign{_}ing"],
266 ']S' => ["next bad word"],
267 ']z' => ["end of open fold"],
268
269 '^w<' => ["width decr$sign{_}ease"],
270 '^w>' => ["width incr$sign{_}ease"],
271 '^w^' => ["split, edit alt file"],
272 '^w_' => ["set height"],
273 '^w+' => ["height incr$sign{_}ease"],
274 '^w-' => ["height decr$sign{_}ease"],
275 '^w=' => ["same height"],
276 '^w^['=> ["esc"],
277 '^w]' => ["split, to tag"],
278 '^w}' => ["pre$sign{_}view tag"],
279 '^w|' => ["set width"],
280
281 '^wb' => ["go to bot$sign{_}tom"],
282 '^wc' => [":close"],
283 '^w^c'=> ["abort"],
284 '^wd' => ["split, to def$sign{_}inition"],
285 '^wf' => ["split, file edit"],
286 '^wF' => ["^wf, jump to line"],
287 '^wg' => ["extra cmds"],
288 '^wh' => ["go left"],
289 '^wH' => ["move far left"],
290 '^wi' => ["split, to decl of id$sign{_}ent$sign{_}ifier"],
291 '^wj' => ["go down"],
292 '^wJ' => ["move to bottom"],
293 '^wk' => ["go up"],
294 '^wK' => ["move to top"],
295 '^wl' => ["go right"],
296 '^wL' => ["move far right"],
297 '^wn' => ["open new"],
298 '^wo' => [":only current"],
299 '^wp' => ["go to prev$sign{_}ious"],
300 '^wP' => ["go to pre$sign{_}view"],
301 '^wq' => [":quit current"],
302 '^wr' => ["rotate down$sign{_}ward$sign{_}s"],
303 '^wR' => ["rotate up$sign{_}ward$sign{_}s"],
304 '^ws' => ["split horiz$sign{_}ont$sign{_}al$sign{_}ly"],
305 '^wt' => ["go to top"],
306 '^wv' => ["split vert$sign{_}ic$sign{_}al$sign{_}ly"],
307 '^ww' => ["go to next", "Wrap around"],
308 '^wW' => ["go above$sign{_}/left"],
309 '^wx' => ["ex$sign{_}chan$sign{_}ge"],
310 '^wz' => ["close pre$sign{_}view"],
311
312 '^wg^['=> ["esc"],
313 '^wg]' => ["split, :ts$sign{_}elect"],
314 '^wg}' => [":ptj$sign{_}ump to tag"],
315 '^wg^]'=> ["split, :tj$sign{_}ump"],
316 '^wgf' => ["file in tab"],
317 '^wgF' => ["^wgf, to line$sign{_}nr"],
318
319 'v!' => ["external filter"],
320 'v:' => ["cmd on range"],
321 'v<' => ["un$sign{_}indent"],
322 'v=' => ["re$sign{_}ind$sign{_}ent"],
323 'v>' => ["ind$sign{_}ent"],
324 'v~' => ["toggle case"],
325 'v^['=> ["esc"],
326 'v^]'=> ["jump to tag"],
327
328 'va' => ["ex$sign{_}tend area"],
329 'vA' => ["ap$sign{_}pend to block"], # block
330 'vc' => ["repl$sign{_}ace area"],
331 'vC' => ["repl$sign{_}ace full lines"], # like vS, but blocks are extended until eol
332 'v^c'=> ["abort"],
333 'vd' => ["delete area"],
334 'vD' => ["delete lines"],
335 'vg' => ["extra cmds"],
336 'v^g'=> ["select mode"],
337 'v^h'=> ["back$sign{_}space"], # delete in select mode, left otherwise
338 'vi' => ["extend inner a$sign{_}r$sign{_}ea"],
339 'vI' => ["insert to block"], # block
340 'vJ' => ["join lines"],
341 'vK' => ["help sel$sign{_}ect$sign{_}ion"],
342 'vo' => ["to other corner"],
343 'vO' => ["to other side"],
344 'v^o'=> ["visual once"], # select
345 'vp' => ["repl$sign{_}ace w/ paste"],
346 'vP' => ["repl$sign{_}ace w/ paste"],
347 'vr' => ["fill up w/ ch$sign{_}ar"],
348 'vS' => ["repl$sign{_}ace lines"],
349 'vu' => ["lower$sign{_}case"],
350 'vU' => ["upper$sign{_}case"],
351 'vv' => ["char$sign{_}wise"],
352 'vV' => ["line$sign{_}wise"],
353 'v^v'=> ["block$sign{_}wise"],
354 'vy' => ["yank area"],
355 'vY' => ["yank lines"],
356
357 'vg^['=> ["esc"],
358 'vg?' => ["rot13 encode"],
359 'vgJ' => ["join literal$sign{_}ly"],
360 'vgq' => ["for$sign{_}mat"],
361 'vgw' => ["for$sign{_}mat still"],
362
363 "va'" => ["quoted string"],
364 'va<' => ["&lt;&gt; block"],
365 'va[' => ["[] block"],
366 'va^['=> ["esc"],
367
368 'vab' => ["() block"],
369 'vaB' => ["{} Block"],
370 'vap' => ["para$sign{_}graph"],
371 'vas' => ["senten$sign{_}ce"],
372 'vat' => ["xml tag block"],
373 'vaw' => ["word"],
374 'vaW' => ['<span style="font-variant:small-caps">word</span>'],
375
376 #'c^a' => ["complete"], #todo
377 #'c^b' => ["bol"],
378 #'c^d' => ["complete"], #todo
379 #'c^e' => ["eol"],
380 #'c^j' => ["execute cmd"],
381 #'c^l' => ["complete"], #todo
382 #'c^n' => ["complete"], #todo
383 #'c^p' => ["complete"], #todo
384 #'c^r' => 'i^r', # and then some...
385 #      ## ["insert register"],
386 #'c^y' => ["selec$sign{_}tion to clip$sign{_}b$sign{_}oard"],
387
388 'i^@' => ["last insert"],
389 'i^^' => ["toggle :lmap usag$sign{_}e"],
390 'i^[' => ["esc"],
391 'i^]' => ["abbrev$sign{_}iate"],
392 'i^_' => ["toggle lang$sign{_}uage"],
393
394 'i^a' => ["insert prev$sign{_}ious"],
395 'i^b' => ["former i^_"],
396 'i^c' => ["abort, no abbr"],
397 'i^d' => ["un$sign{_}ind$sign{_}ent"],
398 'i^e' => ["ins char below"],
399 'i^f' => ["set indent$sign{_}ation"],
400 'i^g' => ["extra cmds"],
401 'i^h' => ["back$sign{_}space"],
402 'i^i' => ["tab"],
403 'i^j' => ["enter"],
404 'i^k' => ["di$sign{_}graph", "Key code"],
405 'i^l' => ["<em>im</em> leave ins mode"],
406 'i^m' => ["enter"],
407 'i^n' => ["find next keyword"],
408 'i^o' => ["exec$sign{_}ute cmd"],
409 'i^p' => ["find prev keyword"],
410 'i^r' => ["insert reg$sign{_}ister"],
411 'i^t' => ["indent"],
412 'i^u' => ["delete line"],
413 'i^v' => ["literal or ch$sign{_}ar$sign{_}cod$sign{_}e", "Verbatim or by Value"],
414 'i^w' => ["delete word back"],
415 'i^x' => ["ex$sign{_}pand mode"],
416 'i^y' => ["ins char above"],
417 'i^z' => [":sus$sign{_}pend in <em>im</em>"],
418
419 'i^gk' => ["$sign{up} start col$sign{_}umn"],
420 'i^gj' => ["$sign{down} start col$sign{_}umn"],
421 'i^gu' => ["break undo seq$sign{_}uence"],
422 # other i^g keys (even esc) are not recognized
423
424 'i^x^[' => ["esc"],
425 'i^x^]' => ["tag comp$sign{_}l$sign{_}et$sign{_}e"],
426 'i^x^d' => ["def$sign{_}ine compl$sign{_}et$sign{_}e"],
427 'i^x^e' => ["window up"],
428 'i^x^f' => ["file comp$sign{_}l$sign{_}et$sign{_}e"],
429 'i^x^i' => ["ident comp$sign{_}l$sign{_}et$sign{_}e"],
430 'i^x^k' => ["dict comp$sign{_}l$sign{_}et$sign{_}e"],
431 'i^x^l' => ["line comp$sign{_}l$sign{_}et$sign{_}e"],
432 'i^x^n' => ["next comp$sign{_}l$sign{_}et$sign{_}e"],
433 'i^x^o' => ["omni comp$sign{_}l$sign{_}et$sign{_}e"],
434 'i^x^p' => ["prev comp$sign{_}l$sign{_}ete"],
435 'i^x^s' => ["spell sugg$sign{_}est"],
436 'i^x^t' => ["thes$sign{_}aur$sign{_}us compl$sign{_}et$sign{_}e"],
437 'i^x^u' => ["cus$sign{_}tom comp$sign{_}l$sign{_}et$sign{_}e"],
438 'i^x^v' => ["ex cmd compl$sign{_}et$sign{_}e"],
439 'i^x^y' => ["window down"],
440
441 # XXX ex mode if you want to go completely wild
442 },
443
444 mode => {
445         ''    => "normal mode",
446          g    => "extended commands (g)",
447          Z    => "quit commands",
448          z    => "additional commands (z)",
449         '['   => "backward search commands ([)",
450         ']'   => "forward search commands (])",
451         '^w'  => "window commands (ctrl-w)",
452         '^wg' => "extended window commands (ctrl-w g)",
453          v    => "visual mode",
454          vg   => "extended visual commands (v g)",
455          va   => 'text object selection (v a/i)',
456 #        c    => "command-line mode",
457          i    => "insert mode",
458         'i^g' => "extended insert commands (i ctrl-g)",
459         'i^x' => "insert completion commands (i ctrl-x)",
460 },
461
462 flag => {
463         ci => ["info", "Info command: shows/does something without altering anything."],
464         pm => ["motion", "Moves the cursor, or defines the range for an operator (<:= $sign{motion} :>)."],
465         po => ["positioning", "Other movement (jumps, window (re)positioning)."],
466         co => ["command", "Direct action command."],
467         mi => ["ins mode", "Enters Insert or Replace mode."],
468         mo => ["mode", "Enters a different mode."],
469         mv => ["vis mode", "Enters Visual or Select mode."],
470         me => ["key cmd", "Additional key commands (click for overview)."],
471
472         arg => ["key$sign{arg}", "Commands with a dot need a char argument afterwards."],
473         motion => ["key$sign{motion}", "Requires a motion afterwards, operates between cursor and destination."],
474         'ext vim6' => ["vim", "Not in original Vi (assessment incomplete)."],
475         'ext new vim7' => ["vim7", "New in vim version 7.x."],
476 },
477
478 }