ver 2010.02 → 2010.08

Sign up to get free protection for your applications and to get access to all the features.
Files changed (651) hide show
  1. data/.gitignore +1 -0
  2. data/.yardopts +1 -1
  3. data/AUTHORS +2 -2
  4. data/CHANGELOG +1160 -0
  5. data/MANIFEST +212 -62
  6. data/README.textile +68 -9
  7. data/Rakefile +2 -2
  8. data/bin/ver +33 -8
  9. data/config/commands/ANTLR.rb +11 -0
  10. data/config/commands/ActionScript.rb +102 -0
  11. data/config/commands/Active4D.rb +30 -0
  12. data/config/commands/Ada.rb +11 -0
  13. data/config/commands/Ant.rb +90 -0
  14. data/config/commands/Apache.rb +98 -0
  15. data/config/commands/AppleScript.rb +169 -0
  16. data/config/commands/Blogging.rb +72 -0
  17. data/config/commands/Bulletin Board.rb +10 -0
  18. data/config/commands/Bundle Development.rb +83 -0
  19. data/config/commands/C++ Qt.rb +158 -0
  20. data/config/commands/C.rb +82 -0
  21. data/config/commands/CMake.rb +32 -0
  22. data/config/commands/CSS.rb +76 -0
  23. data/config/commands/CTags.rb +29 -0
  24. data/config/commands/CVS.rb +114 -0
  25. data/config/commands/CoffeeScript.rb +58 -0
  26. data/config/commands/Context Free.rb +20 -0
  27. data/config/commands/Cucumber.rb +94 -0
  28. data/config/commands/D.rb +47 -0
  29. data/config/commands/Darcs.rb +72 -0
  30. data/config/commands/Diff.rb +76 -0
  31. data/config/commands/Doxygen.rb +9 -0
  32. data/config/commands/Experimental Wiki.rb +9 -0
  33. data/config/commands/Experimental.rb +172 -0
  34. data/config/commands/F-Script.rb +13 -0
  35. data/config/commands/FXScript.rb +11 -0
  36. data/config/commands/FileMerge.rb +42 -0
  37. data/config/commands/Fortran.rb +58 -0
  38. data/config/commands/GTD2.rb +134 -0
  39. data/config/commands/GTDAlt.rb +225 -0
  40. data/config/commands/GetBundle.rb +41 -0
  41. data/config/commands/Go.rb +29 -0
  42. data/config/commands/Graphviz.rb +11 -0
  43. data/config/commands/Greasemonkey.rb +158 -0
  44. data/config/commands/Gri.rb +11 -0
  45. data/config/commands/Groovy Grails.rb +174 -0
  46. data/config/commands/Groovy.rb +66 -0
  47. data/config/commands/HTML.rb +206 -0
  48. data/config/commands/Haskell.rb +48 -0
  49. data/config/commands/Hotkey.rb +50 -0
  50. data/config/commands/Hyperlink Helper.rb +81 -0
  51. data/config/commands/ImageBrowser.rb +10 -0
  52. data/config/commands/Io.rb +11 -0
  53. data/config/commands/JSFL.rb +29 -0
  54. data/config/commands/JSON.rb +11 -0
  55. data/config/commands/Java.rb +45 -0
  56. data/config/commands/JavaDoc.rb +12 -0
  57. data/config/commands/JavaScript Prototype & Script.aculo.us.rb +51 -0
  58. data/config/commands/JavaScript YUI.rb +12 -0
  59. data/config/commands/JavaScript jQuery.rb +12 -0
  60. data/config/commands/JavaScript.rb +50 -0
  61. data/config/commands/LaTeX.rb +423 -0
  62. data/config/commands/Lisp.rb +20 -0
  63. data/config/commands/Logo.rb +10 -0
  64. data/config/commands/Logtalk.rb +34 -0
  65. data/config/commands/Lua.rb +29 -0
  66. data/config/commands/MEL.rb +20 -0
  67. data/config/commands/Mail.rb +73 -0
  68. data/config/commands/Make.rb +20 -0
  69. data/config/commands/Man Pages.rb +20 -0
  70. data/config/commands/Markdown.rb +194 -0
  71. data/config/commands/Math.rb +79 -0
  72. data/config/commands/Matlab.rb +188 -0
  73. data/config/commands/Maven.rb +162 -0
  74. data/config/commands/Mediawiki.rb +12 -0
  75. data/config/commands/Mercurial.rb +185 -0
  76. data/config/commands/MoinMoin.rb +74 -0
  77. data/config/commands/Movable Type.rb +68 -0
  78. data/config/commands/Nemerle.rb +29 -0
  79. data/config/commands/OCaml Experimental Completions.rb +22 -0
  80. data/config/commands/OCaml.rb +99 -0
  81. data/config/commands/Objective-C.rb +181 -0
  82. data/config/commands/Outlines.rb +54 -0
  83. data/config/commands/PHP Smarty.rb +10 -0
  84. data/config/commands/Pascal.rb +11 -0
  85. data/config/commands/Perforce.rb +102 -0
  86. data/config/commands/Perl.rb +78 -0
  87. data/config/commands/Processing.rb +11 -0
  88. data/config/commands/Prolog.rb +11 -0
  89. data/config/commands/Property List.rb +38 -0
  90. data/config/commands/Python Django.rb +11 -0
  91. data/config/commands/Python.rb +131 -0
  92. data/config/commands/R Console (R.app).rb +80 -0
  93. data/config/commands/R Console (Rdaemon).rb +414 -0
  94. data/config/commands/R.rb +337 -0
  95. data/config/commands/Ragel.rb +10 -0
  96. data/config/commands/Regular Expressions.rb +18 -0
  97. data/config/commands/Remind.rb +44 -0
  98. data/config/commands/Ruby RSpec.rb +40 -0
  99. data/config/commands/Ruby on Rails.rb +331 -0
  100. data/config/commands/Ruby.rb +220 -0
  101. data/config/commands/S5 Slide Show.rb +37 -0
  102. data/config/commands/SCons.rb +24 -0
  103. data/config/commands/SQL.rb +60 -0
  104. data/config/commands/SVK.rb +83 -0
  105. data/config/commands/SWeave.rb +63 -0
  106. data/config/commands/Scheme.rb +30 -0
  107. data/config/commands/Scilab.rb +28 -0
  108. data/config/commands/Setext.rb +20 -0
  109. data/config/commands/Shell Script.rb +59 -0
  110. data/config/commands/Slate.rb +9 -0
  111. data/config/commands/Source.rb +84 -0
  112. data/config/commands/Standard ML.rb +38 -0
  113. data/config/commands/Subversion.rb +181 -0
  114. data/config/commands/TODO.rb +32 -0
  115. data/config/commands/Tcl.rb +21 -0
  116. data/config/commands/TerminalMate.rb +30 -0
  117. data/config/commands/Text.rb +137 -0
  118. data/config/commands/TextMate.rb +100 -0
  119. data/config/commands/Textile.rb +58 -0
  120. data/config/commands/Thrift.rb +20 -0
  121. data/config/commands/Transmit.rb +34 -0
  122. data/config/commands/Txt2tags.rb +213 -0
  123. data/config/commands/Vectorscript.rb +19 -0
  124. data/config/commands/Widget Creator.rb +23 -0
  125. data/config/commands/XML.rb +29 -0
  126. data/config/commands/Xcode.rb +106 -0
  127. data/config/commands/YAML.rb +39 -0
  128. data/config/commands/YARD.rb +12 -0
  129. data/config/commands/iTerm.rb +26 -0
  130. data/config/commands/reStructuredText.rb +126 -0
  131. data/config/detect.rb +13 -1
  132. data/config/keymap/diakonos.rb +113 -115
  133. data/config/keymap/emacs.rb +6 -2
  134. data/config/keymap/nano.rb +104 -112
  135. data/config/keymap/vim.rb +329 -258
  136. data/config/plugin/autosave.rb +3 -6
  137. data/config/plugin/git.rb +18 -12
  138. data/config/plugin/soma.rb +1 -1
  139. data/config/preferences/Apache.rb +17 -17
  140. data/config/preferences/AppleScript.rb +5 -5
  141. data/config/preferences/Bundle Development.rb +10 -10
  142. data/config/preferences/C.rb +38 -30
  143. data/config/preferences/CoffeeScript.rb +28 -0
  144. data/config/preferences/ColdFusion.rb +6 -6
  145. data/config/preferences/Cucumber.rb +40 -0
  146. data/config/preferences/Diff.rb +4 -4
  147. data/config/preferences/Eiffel.rb +6 -6
  148. data/config/preferences/Erlang.rb +16 -16
  149. data/config/preferences/F-Script.rb +12 -12
  150. data/config/preferences/FXScript.rb +5 -5
  151. data/config/preferences/Fortran.rb +17 -17
  152. data/config/preferences/Go.rb +23 -0
  153. data/config/preferences/Groovy.rb +29 -0
  154. data/config/preferences/HTML.rb +44 -44
  155. data/config/preferences/Haskell.rb +14 -14
  156. data/config/preferences/Io.rb +11 -11
  157. data/config/preferences/Java.rb +8 -8
  158. data/config/preferences/LaTeX.rb +24 -24
  159. data/config/preferences/Logo.rb +6 -6
  160. data/config/preferences/Logtalk.rb +5 -5
  161. data/config/preferences/Markdown.rb +43 -0
  162. data/config/preferences/Maven.rb +42 -42
  163. data/config/preferences/Mediawiki.rb +8 -8
  164. data/config/preferences/Movable Type.rb +14 -14
  165. data/config/preferences/OCaml.rb +15 -15
  166. data/config/preferences/Objective-C.rb +5 -5
  167. data/config/preferences/PHP.rb +2564 -0
  168. data/config/preferences/Property List.rb +8 -8
  169. data/config/preferences/R.rb +5 -5
  170. data/config/preferences/Ruby.rb +24 -24
  171. data/config/preferences/Source.rb +13 -13
  172. data/config/preferences/Standard ML.rb +9 -9
  173. data/config/preferences/Tcl.rb +5 -5
  174. data/config/preferences/Text.rb +14 -14
  175. data/config/preferences/TextMate.rb +5 -5
  176. data/config/preferences/Textile.rb +8 -8
  177. data/config/preferences/YARD.rb +9 -0
  178. data/config/preferences/iTerm.rb +9 -9
  179. data/config/rc.rb +5 -2
  180. data/config/snippets/ASP vb.NET.rb +203 -54
  181. data/config/snippets/ASP.rb +51 -36
  182. data/config/snippets/ActionScript.rb +332 -205
  183. data/config/snippets/Active4D.rb +325 -256
  184. data/config/snippets/Ada.rb +106 -60
  185. data/config/snippets/Ant.rb +7 -5
  186. data/config/snippets/Apache.rb +24 -20
  187. data/config/snippets/AppleScript.rb +213 -82
  188. data/config/snippets/Blogging.rb +41 -18
  189. data/config/snippets/Bulletin Board.rb +56 -21
  190. data/config/snippets/Bundle Development.rb +108 -63
  191. data/config/snippets/C++ Qt.rb +72 -57
  192. data/config/snippets/C.rb +128 -100
  193. data/config/snippets/CMake.rb +42 -32
  194. data/config/snippets/CSS.rb +515 -115
  195. data/config/snippets/CoffeeScript.rb +85 -0
  196. data/config/snippets/ColdFusion.rb +2228 -1547
  197. data/config/snippets/Context Free.rb +35 -28
  198. data/config/snippets/Cucumber.rb +55 -0
  199. data/config/snippets/D.rb +164 -111
  200. data/config/snippets/DokuWiki.rb +103 -54
  201. data/config/snippets/Doxygen.rb +87 -40
  202. data/config/snippets/Eiffel.rb +121 -18
  203. data/config/snippets/Erlang.rb +109 -68
  204. data/config/snippets/F-Script.rb +30 -24
  205. data/config/snippets/FXScript.rb +364 -210
  206. data/config/snippets/Fortran.rb +462 -280
  207. data/config/snippets/GTDAlt.rb +10 -4
  208. data/config/snippets/Gettext.rb +10 -8
  209. data/config/snippets/Go.rb +52 -0
  210. data/config/snippets/Greasemonkey.rb +52 -42
  211. data/config/snippets/Gri.rb +12 -10
  212. data/config/snippets/Groovy Grails.rb +313 -0
  213. data/config/snippets/Groovy.rb +685 -0
  214. data/config/snippets/HTML.rb +325 -126
  215. data/config/snippets/Haskell.rb +32 -24
  216. data/config/snippets/Io.rb +53 -42
  217. data/config/snippets/Java.rb +204 -92
  218. data/config/snippets/JavaDoc.rb +105 -56
  219. data/config/snippets/JavaScript MooTools.rb +208 -13
  220. data/config/snippets/JavaScript Objective-J.rb +18 -15
  221. data/config/snippets/JavaScript Prototype & Script.aculo.us.rb +362 -107
  222. data/config/snippets/JavaScript YUI.rb +1245 -186
  223. data/config/snippets/JavaScript jQuery.rb +693 -375
  224. data/config/snippets/JavaScript.rb +71 -53
  225. data/config/snippets/LaTeX.rb +188 -0
  226. data/config/snippets/Lisp.rb +59 -40
  227. data/config/snippets/Logo.rb +12 -6
  228. data/config/snippets/Logtalk.rb +131 -60
  229. data/config/snippets/Lua.rb +43 -33
  230. data/config/snippets/MIPS Assembler.rb +7 -5
  231. data/config/snippets/Mail.rb +10 -1
  232. data/config/snippets/Markdown.rb +7 -0
  233. data/config/snippets/Matlab.rb +232 -178
  234. data/config/snippets/Maven.rb +6 -5
  235. data/config/snippets/Mediawiki.rb +43 -12
  236. data/config/snippets/MoinMoin.rb +50 -10
  237. data/config/snippets/Movable Type.rb +368 -53
  238. data/config/snippets/Nemerle.rb +127 -79
  239. data/config/snippets/OCaml Code Completion Misc.rb +1716 -72
  240. data/config/snippets/OCaml Code Completion Unix.rb +2128 -203
  241. data/config/snippets/OCaml.rb +107 -73
  242. data/config/snippets/ODCompletion.rb +169 -118
  243. data/config/snippets/Objective-C.rb +281 -193
  244. data/config/snippets/PHP Smarty.rb +149 -79
  245. data/config/snippets/PHP.rb +186 -0
  246. data/config/snippets/Pascal.rb +47 -33
  247. data/config/snippets/Perl HTML-Template.rb +33 -0
  248. data/config/snippets/Perl Mason.rb +50 -30
  249. data/config/snippets/Perl Template Toolkit.rb +25 -20
  250. data/config/snippets/Perl.rb +91 -72
  251. data/config/snippets/Processing.rb +55 -33
  252. data/config/snippets/Propel.rb +36 -30
  253. data/config/snippets/Property List.rb +57 -24
  254. data/config/snippets/Python Django Templates.rb +381 -95
  255. data/config/snippets/Python Django.rb +159 -132
  256. data/config/snippets/Python.rb +88 -0
  257. data/config/snippets/R Console (Rdaemon).rb +11 -9
  258. data/config/snippets/R.rb +96 -77
  259. data/config/snippets/Remind.rb +18 -15
  260. data/config/snippets/Ruby RSpec.rb +343 -238
  261. data/config/snippets/Ruby on Rails.rb +1116 -765
  262. data/config/snippets/Ruby.rb +770 -545
  263. data/config/snippets/S5 Slide Show.rb +32 -24
  264. data/config/snippets/SSH Config.rb +21 -17
  265. data/config/snippets/SWIG.rb +30 -18
  266. data/config/snippets/Scilab.rb +98 -79
  267. data/config/snippets/Setext.rb +10 -8
  268. data/config/snippets/Shell Script.rb +52 -42
  269. data/config/snippets/Slate.rb +62 -48
  270. data/config/snippets/Source.rb +24 -1
  271. data/config/snippets/Standard ML.rb +37 -27
  272. data/config/snippets/Tcl.rb +32 -26
  273. data/config/snippets/Text.rb +28 -15
  274. data/config/snippets/Textile.rb +130 -45
  275. data/config/snippets/Thrift.rb +22 -18
  276. data/config/snippets/Twiki.rb +158 -105
  277. data/config/snippets/Txt2tags.rb +166 -79
  278. data/config/snippets/Vectorscript.rb +47 -38
  279. data/config/snippets/Widget Creator.rb +5 -5
  280. data/config/snippets/XML.rb +30 -18
  281. data/config/snippets/YAML.rb +5 -4
  282. data/config/snippets/YARD.rb +93 -0
  283. data/config/snippets/reStructuredText.rb +25 -20
  284. data/config/syntax/ANTLR.rb +17 -15
  285. data/config/syntax/ASP vb.NET.rb +27 -24
  286. data/config/syntax/ASP.rb +21 -19
  287. data/config/syntax/ActionScript.rb +16 -16
  288. data/config/syntax/Active4D Config.rb +5 -5
  289. data/config/syntax/Active4D Library.rb +2 -2
  290. data/config/syntax/Active4D.rb +32 -30
  291. data/config/syntax/Ada.rb +13 -10
  292. data/config/syntax/Ant.rb +9 -7
  293. data/config/syntax/Apache.rb +22 -18
  294. data/config/syntax/AppleScript.rb +486 -192
  295. data/config/syntax/AsciiDoc.rb +21 -0
  296. data/config/syntax/BibTeX.rb +7 -7
  297. data/config/syntax/Blog - HTML.rb +7 -7
  298. data/config/syntax/Blog - Markdown.rb +6 -6
  299. data/config/syntax/Blog - Text.rb +2 -2
  300. data/config/syntax/Blog - Textile.rb +2 -2
  301. data/config/syntax/Bulletin Board.rb +33 -32
  302. data/config/syntax/C++ Qt.rb +7 -6
  303. data/config/syntax/C++.rb +31 -28
  304. data/config/syntax/C.rb +55 -51
  305. data/config/syntax/CMake Listfile.rb +12 -11
  306. data/config/syntax/CSS.rb +24 -23
  307. data/config/syntax/CSV.rb +3 -3
  308. data/config/syntax/CoffeeScript.rb +161 -0
  309. data/config/syntax/ColdFusion.rb +8 -8
  310. data/config/syntax/Context Free.rb +18 -16
  311. data/config/syntax/Cucumber Steps.rb +108 -0
  312. data/config/syntax/D.rb +70 -69
  313. data/config/syntax/Diff.rb +13 -10
  314. data/config/syntax/DokuWiki.rb +22 -18
  315. data/config/syntax/Doxygen.rb +1 -1
  316. data/config/syntax/Dylan.rb +8 -8
  317. data/config/syntax/Eiffel.rb +12 -12
  318. data/config/syntax/Erlang.rb +96 -89
  319. data/config/syntax/F-Script.rb +11 -9
  320. data/config/syntax/FXScript.rb +16 -14
  321. data/config/syntax/Fortran - Modern.rb +25 -24
  322. data/config/syntax/Fortran - Punchcard.rb +43 -40
  323. data/config/syntax/GTD.rb +1 -1
  324. data/config/syntax/GTDalt.rb +14 -11
  325. data/config/syntax/Gettext.rb +10 -9
  326. data/config/syntax/Gherkin.rb +65 -0
  327. data/config/syntax/Go.rb +256 -0
  328. data/config/syntax/Grails Server Page.rb +108 -0
  329. data/config/syntax/Graphviz (DOT).rb +6 -6
  330. data/config/syntax/Greasemonkey.rb +3 -3
  331. data/config/syntax/Gri.rb +12 -12
  332. data/config/syntax/Groovy.rb +502 -0
  333. data/config/syntax/HTML (ASP).rb +3 -3
  334. data/config/syntax/HTML (ASP.net).rb +31 -31
  335. data/config/syntax/HTML (Active4D).rb +19 -19
  336. data/config/syntax/HTML (Django).rb +6 -6
  337. data/config/syntax/HTML (Erlang).rb +4 -4
  338. data/config/syntax/HTML (Mason).rb +13 -13
  339. data/config/syntax/HTML (Rails).rb +5 -5
  340. data/config/syntax/HTML (Tcl).rb +3 -3
  341. data/config/syntax/HTML (Template Toolkit).rb +9 -9
  342. data/config/syntax/HTML.rb +27 -27
  343. data/config/syntax/Haskell.rb +31 -28
  344. data/config/syntax/Inform.rb +5 -5
  345. data/config/syntax/Ini.rb +4 -4
  346. data/config/syntax/Installer Distribution Script.rb +19 -18
  347. data/config/syntax/Io.rb +17 -15
  348. data/config/syntax/JSFL.rb +7 -6
  349. data/config/syntax/Java Properties.rb +3 -3
  350. data/config/syntax/Java Server Page (JSP).rb +5 -4
  351. data/config/syntax/Java.rb +40 -33
  352. data/config/syntax/JavaDoc.rb +24 -22
  353. data/config/syntax/JavaScript (Rails).rb +1 -1
  354. data/config/syntax/JavaScript.rb +41 -34
  355. data/config/syntax/Javascript YUI.rb +109 -101
  356. data/config/syntax/LaTeX Beamer.rb +3 -3
  357. data/config/syntax/LaTeX Log.rb +3 -3
  358. data/config/syntax/LaTeX Memoir.rb +7 -5
  359. data/config/syntax/LaTeX Rdaemon.rb +1 -1
  360. data/config/syntax/LaTeX.rb +52 -47
  361. data/config/syntax/Language Grammar.rb +58 -55
  362. data/config/syntax/Lex-Flex.rb +13 -13
  363. data/config/syntax/Lighttpd.rb +7 -7
  364. data/config/syntax/Lisp.rb +6 -5
  365. data/config/syntax/Literate Haskell.rb +2 -2
  366. data/config/syntax/Logo.rb +4 -4
  367. data/config/syntax/Logtalk.rb +64 -49
  368. data/config/syntax/Lua.rb +12 -12
  369. data/config/syntax/MATLAB.rb +71 -70
  370. data/config/syntax/MEL.rb +16 -15
  371. data/config/syntax/MIPS Assembler.rb +11 -11
  372. data/config/syntax/MacPorts Portfile.rb +16 -15
  373. data/config/syntax/Mail.rb +5 -4
  374. data/config/syntax/Makefile.rb +3 -3
  375. data/config/syntax/Man.rb +2 -2
  376. data/config/syntax/Markdown.rb +440 -0
  377. data/config/syntax/Maven POM.rb +17 -16
  378. data/config/syntax/Mediawiki.rb +46 -46
  379. data/config/syntax/Modula-3.rb +7 -6
  380. data/config/syntax/MoinMoin.rb +16 -16
  381. data/config/syntax/MooTools.rb +75 -65
  382. data/config/syntax/Movable Type (MT only).rb +18 -18
  383. data/config/syntax/Movable Type.rb +20 -20
  384. data/config/syntax/MultiMarkdown.rb +35 -0
  385. data/config/syntax/Nemerle.rb +12 -12
  386. data/config/syntax/OCaml.rb +79 -71
  387. data/config/syntax/OCamllex.rb +14 -14
  388. data/config/syntax/OCamlyacc.rb +14 -12
  389. data/config/syntax/Objective-C++.rb +2 -2
  390. data/config/syntax/Objective-C.rb +76 -70
  391. data/config/syntax/Objective-J.rb +30 -29
  392. data/config/syntax/Octave.rb +27 -27
  393. data/config/syntax/OpenGL.rb +4 -4
  394. data/config/syntax/PHP.rb +1154 -0
  395. data/config/syntax/Pascal.rb +8 -8
  396. data/config/syntax/Perl HTML-Template.rb +5 -5
  397. data/config/syntax/Perl.rb +80 -76
  398. data/config/syntax/Plain Text.rb +5 -5
  399. data/config/syntax/Postscript.rb +6 -6
  400. data/config/syntax/Processing.rb +20 -20
  401. data/config/syntax/Prolog.rb +2 -2
  402. data/config/syntax/Property List.rb +50 -47
  403. data/config/syntax/Prototype & Script.aculo.us (JavaScript) Bracketed.rb +15 -13
  404. data/config/syntax/Prototype & Script.aculo.us (JavaScript).rb +9 -8
  405. data/config/syntax/Python Django.rb +6 -6
  406. data/config/syntax/Python.rb +94 -87
  407. data/config/syntax/Quake Style .cfg.rb +4 -4
  408. data/config/syntax/R Console (Rdaemon) Plain.rb +2 -2
  409. data/config/syntax/R Console (Rdaemon).rb +2 -2
  410. data/config/syntax/R.rb +21 -20
  411. data/config/syntax/RSpec.rb +15 -15
  412. data/config/syntax/Ragel.rb +14 -13
  413. data/config/syntax/Rd (R Documentation).rb +4 -4
  414. data/config/syntax/Regular Expressions (Oniguruma).rb +11 -10
  415. data/config/syntax/Regular Expressions (Python).rb +9 -9
  416. data/config/syntax/Release Notes.rb +7 -6
  417. data/config/syntax/Remind.rb +19 -17
  418. data/config/syntax/Rez.rb +10 -9
  419. data/config/syntax/Ruby Haml.rb +11 -11
  420. data/config/syntax/Ruby on Rails.rb +26 -24
  421. data/config/syntax/Ruby.rb +73 -71
  422. data/config/syntax/S5 Slide Show.rb +9 -9
  423. data/config/syntax/SQL.rb +29 -27
  424. data/config/syntax/SSH Config.rb +4 -4
  425. data/config/syntax/SWIG.rb +12 -11
  426. data/config/syntax/SWeave.rb +8 -7
  427. data/config/syntax/Scheme.rb +56 -54
  428. data/config/syntax/Scilab.rb +7 -6
  429. data/config/syntax/Setext.rb +14 -13
  430. data/config/syntax/Shell Script (Bash).rb +42 -42
  431. data/config/syntax/Slate.rb +24 -19
  432. data/config/syntax/Smarty.rb +11 -10
  433. data/config/syntax/Standard ML - CM.rb +2 -2
  434. data/config/syntax/Standard ML.rb +26 -23
  435. data/config/syntax/Strings File.rb +6 -6
  436. data/config/syntax/TSV.rb +2 -2
  437. data/config/syntax/Tcl.rb +10 -9
  438. data/config/syntax/TeX Math.rb +7 -6
  439. data/config/syntax/TeX.rb +7 -7
  440. data/config/syntax/Textile.rb +33 -27
  441. data/config/syntax/Thrift.rb +37 -29
  442. data/config/syntax/Twiki.rb +19 -18
  443. data/config/syntax/Txt2tags.rb +26 -23
  444. data/config/syntax/Vectorscript.rb +9 -7
  445. data/config/syntax/XML strict.rb +6 -4
  446. data/config/syntax/XML.rb +55 -30
  447. data/config/syntax/XSL.rb +5 -5
  448. data/config/syntax/YAML.rb +14 -12
  449. data/config/syntax/camlp4.rb +5 -5
  450. data/config/syntax/iCalendar.rb +3 -3
  451. data/config/syntax/jQuery (JavaScript).rb +9 -9
  452. data/config/syntax/mod_perl.rb +6 -6
  453. data/config/syntax/qmake Project file.rb +16 -15
  454. data/config/syntax/reStructuredText.rb +23 -21
  455. data/config/syntax/svn-commit.tmp.rb +5 -5
  456. data/lib/ver.rb +169 -85
  457. data/lib/ver/action.rb +39 -30
  458. data/lib/ver/buffer.rb +962 -144
  459. data/lib/ver/buffer/frame.rb +23 -0
  460. data/lib/ver/buffer/invalid_trailing_whitespace.rb +17 -0
  461. data/lib/ver/buffer/markup_underline_link.rb +30 -0
  462. data/lib/ver/buffer/matching_brace.rb +22 -0
  463. data/lib/ver/buffer/term.rb +1 -1
  464. data/lib/ver/clipboard.rb +107 -0
  465. data/lib/ver/digraphs.rb +1373 -0
  466. data/lib/ver/entry.rb +54 -43
  467. data/lib/ver/event.rb +335 -0
  468. data/lib/ver/exception_view.rb +3 -1
  469. data/lib/ver/executor.rb +7 -7
  470. data/lib/ver/executor/buffer.rb +4 -4
  471. data/lib/ver/executor/encoding.rb +19 -0
  472. data/lib/ver/executor/entry.rb +9 -9
  473. data/lib/ver/executor/fuzzy_file_finder.rb +1 -1
  474. data/lib/ver/executor/label.rb +2 -0
  475. data/lib/ver/executor/method.rb +2 -3
  476. data/lib/ver/help/describe_key.rb +44 -44
  477. data/lib/ver/hover_completion.rb +11 -6
  478. data/lib/ver/keymap.rb +68 -39
  479. data/lib/ver/layout/paned.rb +56 -44
  480. data/lib/ver/layout/toplevel.rb +68 -0
  481. data/lib/ver/layout/vim.rb +919 -0
  482. data/lib/ver/major_mode.rb +49 -49
  483. data/lib/ver/methods.rb +22 -25
  484. data/lib/ver/methods/basic.rb +49 -20
  485. data/lib/ver/methods/bookmark.rb +33 -33
  486. data/lib/ver/methods/clipboard.rb +186 -49
  487. data/lib/ver/methods/completion.rb +5 -5
  488. data/lib/ver/methods/control.rb +47 -66
  489. data/lib/ver/methods/delete.rb +5 -122
  490. data/lib/ver/methods/help.rb +2 -2
  491. data/lib/ver/methods/insert.rb +101 -29
  492. data/lib/ver/methods/layout.rb +62 -64
  493. data/lib/ver/methods/macro.rb +45 -0
  494. data/lib/ver/methods/move.rb +63 -349
  495. data/lib/ver/methods/nano.rb +99 -71
  496. data/lib/ver/methods/open.rb +8 -7
  497. data/lib/ver/methods/preview.rb +34 -14
  498. data/lib/ver/methods/save.rb +194 -163
  499. data/lib/ver/methods/search.rb +169 -81
  500. data/lib/ver/methods/search_and_replace.rb +62 -49
  501. data/lib/ver/methods/selection.rb +26 -54
  502. data/lib/ver/methods/snippet.rb +79 -54
  503. data/lib/ver/methods/undo.rb +12 -16
  504. data/lib/ver/minibuffer.rb +283 -134
  505. data/lib/ver/minor_mode.rb +36 -47
  506. data/lib/ver/mode_resolving.rb +71 -0
  507. data/lib/ver/platform.rb +41 -0
  508. data/lib/ver/plist.rb +16 -4
  509. data/lib/ver/register.rb +86 -0
  510. data/lib/ver/status.rb +44 -6
  511. data/lib/ver/status/battery.rb +1 -1
  512. data/lib/ver/status/buffer_position.rb +2 -2
  513. data/lib/ver/status/diakonos_position.rb +3 -3
  514. data/lib/ver/status/encoding.rb +1 -1
  515. data/lib/ver/status/filename.rb +1 -1
  516. data/lib/ver/status/label.rb +20 -20
  517. data/lib/ver/status/mode.rb +1 -1
  518. data/lib/ver/status/nano_help.rb +3 -14
  519. data/lib/ver/status/nano_position.rb +6 -6
  520. data/lib/ver/status/percent.rb +2 -2
  521. data/lib/ver/status/position.rb +2 -2
  522. data/lib/ver/status/short_filename.rb +1 -1
  523. data/lib/ver/status/syntax.rb +1 -1
  524. data/lib/ver/struct.rb +28 -0
  525. data/lib/ver/syntax/processor.rb +2 -1
  526. data/lib/ver/text.rb +48 -520
  527. data/lib/ver/text/end.rb +14 -0
  528. data/lib/ver/text/index.rb +16 -101
  529. data/lib/ver/text/insert.rb +138 -0
  530. data/lib/ver/text/mark.rb +559 -0
  531. data/lib/ver/text/position.rb +240 -0
  532. data/lib/ver/text/range.rb +74 -0
  533. data/lib/ver/text/selection.rb +402 -0
  534. data/lib/ver/text/selection/block.rb +69 -0
  535. data/lib/ver/text/selection/char.rb +93 -0
  536. data/lib/ver/text/selection/line.rb +64 -0
  537. data/lib/ver/text/tag.rb +322 -0
  538. data/lib/ver/undo.rb +109 -34
  539. data/lib/ver/vendor/eval_completer.rb +184 -0
  540. data/lib/ver/vendor/json_store.rb +23 -0
  541. data/lib/ver/vendor/open3.rb +729 -0
  542. data/lib/ver/vendor/pathname.rb +73 -0
  543. data/lib/ver/vendor/textpow.rb +1 -1
  544. data/lib/ver/version.rb +1 -1
  545. data/lib/ver/widget_event.rb +9 -5
  546. data/lib/ver/widget_major_mode.rb +69 -23
  547. data/spec/helper.rb +124 -8
  548. data/spec/ver/action.rb +160 -46
  549. data/spec/ver/buffer.rb +23 -0
  550. data/spec/ver/clipboard.rb +92 -0
  551. data/spec/ver/keymap.rb +63 -61
  552. data/spec/ver/keymap/diakonos.rb +88 -0
  553. data/spec/ver/keymap/emacs.rb +65 -0
  554. data/spec/ver/keymap/general.rb +98 -0
  555. data/spec/ver/keymap/nano.rb +84 -0
  556. data/spec/ver/keymap/vim.rb +205 -0
  557. data/spec/ver/keymap/vim/changing_text.rb +489 -0
  558. data/spec/ver/keymap/vim/complex_changes.rb +53 -0
  559. data/spec/ver/keymap/vim/copying_and_moving_text.rb +258 -0
  560. data/spec/ver/keymap/vim/deleting_text.rb +188 -0
  561. data/spec/ver/keymap/vim/digraphs.rb +52 -0
  562. data/spec/ver/keymap/vim/external_commands.rb +21 -0
  563. data/spec/ver/keymap/vim/inserting_mode_keys.rb +115 -0
  564. data/spec/ver/keymap/vim/inserting_mode_special.rb +168 -0
  565. data/spec/ver/keymap/vim/inserting_text.rb +108 -0
  566. data/spec/ver/keymap/vim/left_right_motion.rb +120 -0
  567. data/spec/ver/keymap/vim/mark_motion.rb +73 -0
  568. data/spec/ver/keymap/vim/repeating_commands.rb +64 -0
  569. data/spec/ver/keymap/vim/text_object_motion.rb +137 -0
  570. data/spec/ver/keymap/vim/text_objects.rb +101 -0
  571. data/spec/ver/keymap/vim/undo_redo.rb +21 -0
  572. data/spec/ver/keymap/vim/up_down_motion.rb +94 -0
  573. data/spec/ver/keymap/vim/various_motion.rb +33 -0
  574. data/spec/ver/keysyms.rb +13 -0
  575. data/spec/ver/major_mode.rb +37 -37
  576. data/spec/ver/minor_mode.rb +21 -20
  577. data/spec/ver/plugin/smart_autoindent.rb +2 -2
  578. data/spec/ver/text/index.rb +122 -0
  579. data/spec/ver/text/insert.rb +299 -0
  580. data/spec/ver/text/mark.rb +94 -0
  581. data/spec/ver/text/range.rb +71 -0
  582. data/spec/ver/text/selection.rb +315 -0
  583. data/spec/ver/text/tag.rb +93 -0
  584. data/spec/ver/undo.rb +133 -0
  585. data/spec/ver/undo/record_sanitize.rb +85 -0
  586. data/spec/ver/vendor/eval_completer.rb +91 -0
  587. data/spec/ver/widget_major_mode.rb +4 -3
  588. data/ver.gemspec +8 -8
  589. metadata +234 -72
  590. data/.todo +0 -102
  591. data/ROADMAP.textile +0 -187
  592. data/config/snippets/ANTLR.rb +0 -3
  593. data/config/snippets/Bison.rb +0 -3
  594. data/config/snippets/CTags.rb +0 -3
  595. data/config/snippets/CVS.rb +0 -3
  596. data/config/snippets/Darcs.rb +0 -3
  597. data/config/snippets/Diff.rb +0 -3
  598. data/config/snippets/Dylan.rb +0 -3
  599. data/config/snippets/Experimental Wiki.rb +0 -3
  600. data/config/snippets/Experimental.rb +0 -3
  601. data/config/snippets/FileMerge.rb +0 -3
  602. data/config/snippets/GTD2.rb +0 -3
  603. data/config/snippets/GetBundle.rb +0 -3
  604. data/config/snippets/Graphviz.rb +0 -3
  605. data/config/snippets/Hotkey.rb +0 -3
  606. data/config/snippets/Hyperlink Helper.rb +0 -3
  607. data/config/snippets/ImageBrowser.rb +0 -3
  608. data/config/snippets/Inform.rb +0 -3
  609. data/config/snippets/Ini.rb +0 -3
  610. data/config/snippets/Installer.rb +0 -3
  611. data/config/snippets/JSFL.rb +0 -3
  612. data/config/snippets/JSON.rb +0 -3
  613. data/config/snippets/Lex-Flex.rb +0 -3
  614. data/config/snippets/Lighttpd.rb +0 -3
  615. data/config/snippets/MEL.rb +0 -3
  616. data/config/snippets/MacPorts.rb +0 -3
  617. data/config/snippets/Make.rb +0 -3
  618. data/config/snippets/Man Pages.rb +0 -3
  619. data/config/snippets/Math.rb +0 -3
  620. data/config/snippets/Mercurial.rb +0 -3
  621. data/config/snippets/Modula.rb +0 -3
  622. data/config/snippets/Navigation.rb +0 -3
  623. data/config/snippets/OCaml Experimental Completions.rb +0 -3
  624. data/config/snippets/OpenGL.rb +0 -3
  625. data/config/snippets/Outlines.rb +0 -3
  626. data/config/snippets/Perforce.rb +0 -3
  627. data/config/snippets/Perl HTML::Template.rb +0 -27
  628. data/config/snippets/Postscript.rb +0 -3
  629. data/config/snippets/Prolog.rb +0 -3
  630. data/config/snippets/Quake.rb +0 -3
  631. data/config/snippets/R Console (R.app).rb +0 -3
  632. data/config/snippets/Ragel.rb +0 -3
  633. data/config/snippets/Regular Expressions.rb +0 -3
  634. data/config/snippets/Rez.rb +0 -3
  635. data/config/snippets/Ruby Haml.rb +0 -3
  636. data/config/snippets/SCons.rb +0 -3
  637. data/config/snippets/SQL.rb +0 -3
  638. data/config/snippets/SVK.rb +0 -3
  639. data/config/snippets/SWeave.rb +0 -3
  640. data/config/snippets/Scheme.rb +0 -3
  641. data/config/snippets/Subversion.rb +0 -3
  642. data/config/snippets/TODO.rb +0 -3
  643. data/config/snippets/Tabular.rb +0 -3
  644. data/config/snippets/TerminalMate.rb +0 -3
  645. data/config/snippets/TextMate.rb +0 -3
  646. data/config/snippets/Transmit.rb +0 -3
  647. data/config/snippets/Xcode.rb +0 -3
  648. data/config/snippets/iCalendar.rb +0 -3
  649. data/config/snippets/iTerm.rb +0 -3
  650. data/lib/ver/keysyms.rb +0 -104
  651. data/spec/ver/methods/move.rb +0 -150
@@ -1,10 +1,14 @@
1
1
  module VER
2
2
  major_mode :Fundamental do
3
+ use :fundamental
4
+ end
5
+
6
+ minor_mode :fundamental do
3
7
  handler Methods::Basic
4
8
  map :quit, %w[Control-x Control-c]
5
9
 
6
10
  handler Methods::Save
7
- map :file_save, %w[Control-x Control-s]
11
+ map :save, %w[Control-x Control-s]
8
12
  map :save_all, %w[Control-x s]
9
13
 
10
14
  handler Methods::Open
@@ -17,7 +21,7 @@ module VER
17
21
  map :undo, %w[Control-slash], %w[Control-x u], %w[Control-underscore], %w[Undo]
18
22
  map :redo, %w[Redo] # emacs redo breaks my brain... undo only for now
19
23
 
20
- handler Methods::Move
24
+ handler :at_insert
21
25
  map :end_of_file, %w[Control-greater]
22
26
  map :end_of_line, %w[Control-e], %w[End]
23
27
  map :next_char, %w[Control-f], %w[Right]
@@ -1,6 +1,8 @@
1
1
  module VER
2
- PanedLayout::OPTIONS[:slaves] = 0
3
- layout.options[:slaves] = 0
2
+ options.horizontal_scrollbar = false
3
+ options.vertical_scrollbar = false
4
+
5
+ aliases = Hash.new{|h,k| k }
4
6
 
5
7
  major_mode :Fundamental do
6
8
  use :control
@@ -9,145 +11,134 @@ module VER
9
11
  major_mode :MiniBuffer do
10
12
  use :basic, :readline
11
13
 
12
- map :abort, %w[Escape], %w[Control-c], %w[Control-x]
13
- map :attempt, %w[Return]
14
- map :complete_large, %w[Double-Tab]
15
- map :complete_small, %w[Tab]
14
+ map :abort, '<Escape>', '<Control-c>', '<Control-x>'
15
+ map :attempt, '<Return>'
16
+ map :complete_small, '<Tab>'
16
17
  end
17
18
 
18
19
  major_mode :HoverCompletion do
19
20
  use :basic
20
21
 
21
- map :cancel, %w[Escape], %w[BackSpace]
22
- map :continue_completion, %w[Right], %w[Tab]
23
- map :go_down, %w[Down], %w[Control-p]
24
- map :go_up, %w[Up], %w[Control-n]
25
- map :submit, %w[Return]
22
+ map :cancel, '<Escape>', '<BackSpace>'
23
+ map :continue_completion, '<Right>', '<Tab>'
24
+ map :go_down, '<Down>', '<Control-p>'
25
+ map :go_up, '<Up>', '<Control-n>'
26
+ map :submit, '<Return>'
26
27
  end
27
28
 
28
29
  minor_mode :readline do
29
- map :accept_line, %w[Return]
30
-
31
- map :end_of_line, %w[End], %w[Control-e]
32
- map :insert_selection, %w[Shift-Insert]
33
- map :insert_tab, %w[Control-v Tab]
34
- map :kill_end_of_line, %w[Control-k]
35
- map :kill_next_char, %w[Control-d], %w[Delete]
36
- map :kill_next_word, %w[Alt-d]
37
- map :kill_prev_char, %w[BackSpace]
38
- map :kill_prev_word, %w[Control-w]
39
- map :next_char, %w[Right], %w[Control-f]
40
- map :next_word, %w[Shift-Right], %w[Alt-f]
41
- map :prev_char, %w[Left], %w[Control-b]
42
- map :prev_word, %w[Shift-Left], %w[Alt-b]
43
- map :start_of_line, %w[Home], %w[Control-a]
44
- map :transpose_chars, %w[Control-t]
45
-
46
- map :sel_prev_char, %w[Shift-Left]
47
- map :sel_next_char, %w[Shift-Right]
48
- map :sel_prev_word, %w[Shift-Control-Left]
49
- map :sel_next_word, %w[Shift-Control-Right]
50
- map :sel_start_of_line, %w[Shift-Home]
51
- map :sel_end_of_line, %w[Shift-End]
30
+ map :accept_line, '<Return>'
31
+
32
+ map :last_char, '<End>', '<Control-e>'
33
+ map :insert_selection, '<Shift-Insert>'
34
+ map :insert_tab, '<Control-v><Tab>'
35
+ map :kill_end_of_line, '<Control-k>'
36
+ map :kill_next_char, '<Control-d>', '<Delete>'
37
+ map :kill_next_word, '<Alt-d>'
38
+ map :kill_prev_char, '<BackSpace>'
39
+ map :kill_prev_word, '<Control-w>'
40
+ map :next_char, '<Right>', '<Control-f>'
41
+ map :next_word, '<Shift-Right>', '<Alt-f>'
42
+ map :prev_char, '<Left>', '<Control-b>'
43
+ map :prev_word, '<Shift-Left>', '<Alt-b>'
44
+ map :start_of_line, '<Home>', '<Control-a>'
45
+ map :transpose_chars, '<Control-t>'
52
46
 
53
47
  missing :insert_string
54
48
  end
55
49
 
56
50
  minor_mode :basic do
57
- map :quit, %w[Control-x]
51
+ map :quit, '<Control-x>'
58
52
  end
59
53
 
60
54
  minor_mode :control do
61
55
  inherits :basic
62
56
 
63
- map :start_select_char_mode, %w[Control-asciicircum]
57
+ become :ascii_digit, '<Escape><Escape>'
58
+
59
+ map :start_select_char_mode, '<Control-asciicircum>'
60
+
61
+ map :undo, '<Alt-u>'
62
+ map :redo, '<Alt-e>'
63
+ map :save, '<Control-o>', '<F3>'
64
64
 
65
65
  handler Methods::Help
66
- map :nano, %w[Control-g], %w[F1]
66
+ map :nano, '<Control-g>', '<F1>'
67
67
 
68
68
  handler Methods::Layout
69
- map :close, %w[Control-x], %w[F2]
70
- map :focus_prev, %w[Alt-less], %w[Alt-comma]
71
- map :focus_next, %w[Alt-greater], %w[Alt-period]
72
-
73
- handler Methods::Save
74
- map :save, %w[Control-o], %w[F3]
69
+ map :close, '<Control-x>', '<F2>'
70
+ map :focus_prev, '<Alt-less>', '<Alt-comma>'
71
+ map :focus_next, '<Alt-greater>', '<Alt-period>'
75
72
 
76
73
  handler Methods::Control
77
- map :wrap_line, %w[Control-j], %w[F4]
78
- map :indent_line, %w[Alt-bracketright]
79
- map :unindent_line, %w[Alt-braceleft]
74
+ map :wrap_line, '<Control-j>', '<F4>'
75
+ map :unindent_line, '<Alt-braceleft>'
80
76
 
81
77
  handler Methods::Insert
82
- map :file, %w[Control-w], %w[F6]
83
- map :newline, %w[Return], %w[Control-m]
78
+ map :file, '<Control-r>', '<F5>'
84
79
  missing :string
85
80
 
86
81
  handler Methods::Search
87
- map :status_next, %w[Control-w], %w[F6]
88
- map :again, %w[Alt-w], %w[F16]
89
-
90
- handler Methods::Move
91
- map :ask_go_line, %w[Control-underscore], %w[F13]
92
- map :backward_scroll, %w[Alt-minus], %w[Alt-underscore]
93
- map :end_of_file, %w[Alt-slash], %w[Alt-question]
94
- map :end_of_line, %w[End], %w[Control-e]
95
- map :forward_scroll, %w[Alt-plus], %w[Alt-equal]
96
- map :matching_brace, %w[Control-bracketleft]
97
- map :next_char, %w[Right], %w[Control-f]
98
- map :next_line, %w[Control-n], %w[Down]
99
- map :next_page, %w[Control-v], %w[F8]
100
- map :next_word, %w[Shift-Right], %w[Alt-f], %w[Control-space]
101
- map :prev_char, %w[Left], %w[Control-b]
102
- map :prev_line, %w[Control-p], %w[Up]
103
- map :prev_page, %w[Control-y], %w[F7]
104
- map :prev_word, %w[Shift-Left], %w[Alt-b], %w[Alt-space]
105
- map :start_of_file, %w[Alt-backslash], %w[Alt-bar]
106
- map :start_of_line, %w[Home], %w[Control-a]
82
+ map :status_next, '<Control-w>', '<F6>'
83
+ map :again, '<Alt-w>', '<F16>'
84
+
85
+ handler :at_insert
86
+ map :ask_go_line, '<Control-underscore>', '<F13>'
87
+ map :backward_scroll, '<Alt-minus>', '<Alt-underscore>'
88
+ map :end_of_buffer, '<Alt-slash>', '<Alt-question>'
89
+ map :last_char, '<End>', '<Control-e>'
90
+ map :forward_scroll, '<Alt-plus>', '<Alt-equal>'
91
+ map :indent_line, '<Alt-bracketright>'
92
+ map :kill_line, '<Control-k>', '<F9>'
93
+ map :matching_brace, '<Control-bracketleft>'
94
+ map :next_char, '<Right>', '<Control-f>'
95
+ map :next_line, '<Control-n>', '<Down>'
96
+ map :next_page, '<Control-v>', '<F8>'
97
+ map :next_word, '<Shift-Right>', '<Control-space>'
98
+ map :prev_char, '<Left>', '<Control-b>'
99
+ map :prev_line, '<Control-p>', '<Up>'
100
+ map :prev_page, '<Control-y>', '<F7>'
101
+ map :prev_word, '<Shift-Left>', '<Alt-space>'
102
+ map :start_of_buffer, '<Alt-backslash>', '<Alt-bar>'
103
+ map [:killing, :end_of_buffer], '<Alt-t>'
104
+ map [:killing, :prev_char], '<BackSpace>'
105
+ map [:killing, :next_char], '<Delete>'
106
+ map :newline, '<Return>', '<Control-m>'
107
107
 
108
108
  # M-( (M-9) Go to beginning of paragraph; then of previous paragraph
109
- map :start_of_paragraph, %w[Control-braceleft], %w[Alt-9]
109
+ map :start_of_paragraph, '<Control-braceleft>', '<Alt-Key-9>'
110
110
  # M-) (M-0) Go just beyond end of paragraph; then of next paragraph
111
- map :end_of_paragraph, %w[Control-braceright], %w[Alt-0]
111
+ map :end_of_paragraph, '<Control-braceright>', '<Alt-Key-0>'
112
112
 
113
113
  handler Methods::SearchAndReplace
114
- map :query, %w[Control-backslash], %w[F14], %w[Alt-r]
115
-
116
- handler Methods::Delete
117
- map :kill_line, %w[Control-k], %w[F9]
118
- # M-T Cut from the cursor position to the end of the file
119
- map [:kill_motion, :end_of_file], %w[Alt-t]
114
+ map :query, '<Control-backslash>', '<F14>', '<Alt-r>'
120
115
 
121
116
  handler Methods::Clipboard
122
- map :paste, %w[Control-u], %w[F10]
123
- map :copy_line, %w[Alt-asciicircum]
124
-
125
- handler Methods::Undo
126
- map :undo, %w[Alt-u]
127
- map :redo, %w[Alt-e]
117
+ map :paste, '<Control-u>', '<F10>'
118
+ map :copy_line, '<Alt-asciicircum>'
128
119
 
129
120
  handler Methods::Nano
130
- map :verbatim, ['Alt-v', :verbatim]
131
- map :home, %w[Home]
132
- map :suspend, %w[Control-z]
133
- map :redraw, %w[Control-l]
134
- map :toggle_help_mode, %w[Alt-x]
135
- map :toggle_cursor_pos, %w[Alt-c]
136
- map :toggle_one_more_line, %w[Alt-o]
137
- map :toggle_smooth_scrolling, %w[Alt-s]
138
- map :toggle_whitespace_display, %w[Alt-p]
139
- map :toggle_color_syntax_highlighting, %w[Alt-y]
140
- map :toggle_smart_home_key, %w[Alt-h]
141
- map :toggle_auto_indent, %w[Alt-i]
142
- map :toggle_cut_to_end, %w[Alt-k]
143
- map :toggle_long_line_wrapping, %w[Alt-l]
144
- map :toggle_convert_typed_tabs_to_spaces, %w[Alt-q]
145
- map :toggle_backup_files, %w[Alt-b]
146
- map :toggle_multiple_file_buffers, %w[Alt-f]
147
- map :toggle_mouse, %w[Alt-m]
148
- map :toggle_dos_mac_format_conversion, %w[Alt-n]
149
- map :toggle_suspension, %w[Alt-z]
150
- map :toggle_soft_line_wrapping, %w[Alt-dollar]
121
+ map :verbatim, ['<Alt-v>', :verbatim]
122
+ map :home, '<Home>', '<Control-a>'
123
+ map :suspend, '<Control-z>'
124
+ map :redraw, '<Control-l>'
125
+ map :toggle_help_mode, '<Alt-x>'
126
+ map :toggle_cursor_pos, '<Alt-c>'
127
+ map :toggle_one_more_line, '<Alt-o>'
128
+ map :toggle_smooth_scrolling, '<Alt-s>'
129
+ map :toggle_whitespace_display, '<Alt-p>'
130
+ map :toggle_color_syntax_highlighting, '<Alt-y>'
131
+ map :toggle_smart_home_key, '<Alt-h>'
132
+ map :toggle_auto_indent, '<Alt-i>'
133
+ map :toggle_cut_to_end, '<Alt-k>'
134
+ map :toggle_long_line_wrapping, '<Alt-l>'
135
+ map :toggle_convert_typed_tabs_to_spaces, '<Alt-q>'
136
+ map :toggle_backup_files, '<Alt-b>'
137
+ map :toggle_multiple_file_buffers, '<Alt-f>'
138
+ map :toggle_mouse, '<Alt-m>'
139
+ map :toggle_dos_mac_format_conversion, '<Alt-n>'
140
+ map :toggle_suspension, '<Alt-z>'
141
+ map :toggle_soft_line_wrapping, '<Alt-dollar>'
151
142
 
152
143
  ## Missing
153
144
  # M-J Justify the entire file
@@ -160,15 +151,16 @@ module VER
160
151
  minor_mode :verbatim do
161
152
  handler Methods::Nano
162
153
 
163
- # try mapping all possible combinations.
164
- mods = %w[Alt Control Control-Alt]
165
- (0..255).each do |ord|
166
- chr = ord.chr
167
- next unless sym = KEYSYMS[chr]
168
- sym = sym.sub(/<([^>]+)>/, '\1')
169
- map :verbatim_insert, [sym], *mods.map{|mod| "#{mod}-#{sym}" }
170
- end
171
-
154
+ # try mapping all possible Control-Key combinations.
155
+ map :verbatim_insert, "<Control-Key>"
172
156
  missing :verbatim_insert
173
157
  end
158
+
159
+ minor_mode :ascii_digit do
160
+ handler Methods::Nano
161
+ enter :ascii_enter
162
+ leave :ascii_leave
163
+
164
+ map :ascii, *('<Key-0>'..'<Key-9>')
165
+ end
174
166
  end
@@ -2,138 +2,141 @@ module VER
2
2
  minor_mode :help do
3
3
  handler Methods::Help
4
4
 
5
- map :describe_key, %w[Control-h k]
5
+ map :describe_key, '<Control-h>k'
6
6
  end
7
7
 
8
8
  minor_mode :open do
9
9
  handler Methods::Open
10
+ map :file_open_popup, '<Control-o>'
10
11
 
11
- map :file_open_popup, %w[Control-o]
12
- map :file_open_fuzzy, %w[Alt-o], %w[Control-m o]
13
- map :file_open_ask, %w[colon o space]
12
+ handler Methods::Control
13
+ map [:ex, :fuzzy], '<Alt-o>', '<Control-m>o'
14
14
  end
15
15
 
16
16
  minor_mode :save do
17
- handler Methods::Save
18
- map :save, %w[Control-s], %w[colon w Return]
19
- map :save_as, %w[Control-S], %w[colon w space]
20
- map :save_all, %w[colon w a]
21
- map :quit, %w[colon q a], %w[Z Z]
17
+ map :save, '<Control-s>'
18
+ map :save_as, '<Control-S>'
22
19
  end
23
20
 
24
21
  minor_mode :preview do
25
- handler Methods::Preview
22
+ map :eval_buffer, '<Control-R>'
23
+ map :tags_tooltip, '<Control-g>t'
26
24
 
27
- map :preview, %w[F5]
25
+ handler Methods::Preview
26
+ map :preview, '<F5>'
28
27
  end
29
28
 
30
29
  minor_mode :basic do
31
- inherits :help, :preview, :save, :open
30
+ inherits :help, :preview, :save
32
31
 
33
32
  handler Methods::Basic
34
- map :source_buffer, %w[Control-R]
35
- map :status_evaluate, %w[Alt-x], %w[Control-m x]
36
- map :tags_at, %w[Control-g t]
33
+ map :minibuf_eval, '<Alt-x>', '<Control-m>x'
34
+ map :open_terminal, '<F9>'
35
+ map :open_console, '<Control-exlam>' if defined?(::EM)
36
+ end
37
+
38
+ minor_mode :vim_layout do
39
+ # map :quit!, ':q!'
40
+ map :quit, '<Control-w>q', '<Control-w><Control-q>', ':q<Return>'
41
+ map :close, '<Control-w>c', ':clo<Return>'
42
+ # map :close!, ':clo!'
37
43
 
38
- map :open_terminal, %w[F9]
39
- map :open_console, %w[Control-exclam] if defined?(::EM)
44
+ handler :window
45
+ map :split_horizontal, '<Control-w>s', '<Control-w><Control-s>', ':sh'
46
+ map :split_vertical, '<Control-w>v', '<Control-w><Control-v>', ':sv'
47
+ map :new_horizontal, '<Control-w>n', '<Control-w><Control-n>', ':n'
48
+ map :only, '<Control-w>o', '<Control-w><Control-o>', ':on<Return>'
49
+ map :go_below, '<Control-w>j', '<Control-w><Control-j>', '<Control-w><Down>'
50
+ map :go_above, '<Control-w>k', '<Control-w><Control-k>', '<Control-w><Up>'
51
+ map :go_left, '<Control-w>h', '<Control-w><Control-h>', '<Control-w><Left>', '<Control-w><BackSpace>'
52
+ map :go_right, '<Control-w>l', '<Control-w><Control-l>', '<Control-w><Right>'
40
53
  end
41
54
 
42
55
  minor_mode :layout do
43
56
  inherits :basic
44
57
  handler Methods::Layout
45
58
 
46
- map :one, %w[1]
47
- map :two, %w[2]
48
-
49
- map :slave_inc, %w[plus]
50
- map :slave_dec, %w[minus]
51
-
52
- map :master_inc, %w[H]
53
- map :master_dec, %w[L]
54
-
55
- map :create, %w[c]
56
- map :focus_next, %w[j], %w[Right]
57
- map :focus_prev, %w[k], %w[Left]
58
- map :push_down, %w[J], %w[Down]
59
- map :push_up, %w[K], %w[Up]
60
- map :close, %w[w]
61
- map :push_top, %w[Return]
62
- map :push_bottom, %w[BackSpace]
63
-
64
- map :master_shrink, %w[h]
65
- map :master_grow, %w[l]
66
- map :master_equal, %w[equal]
67
-
68
- map :peer, %w[p]
59
+ map :hide, '<Key-0>'
60
+ map :create, 'c'
61
+ map :close, 'w'
62
+ map :peer, 'p'
69
63
  end
70
64
 
71
65
  minor_mode :layout_control do
72
- become :layout, %w[Control-w r]
66
+ become :layout, '<Control-w>r'
73
67
 
74
68
  handler Methods::Layout
75
- map :change, ['Control-w', :layout]
76
- map :focus_next, %w[Control-Tab]
77
- map :focus_prev, %w[Control-Shift-Tab], %w[Control-ISO_Left_Tab]
78
- map :cycle_next, %w[Alt-Tab], %w[colon b n]
79
- map :cycle_prev, %w[Alt-Shift-Tab], %w[Alt-ISO_Left_Tab], %w[colon b p]
80
- map :close, %w[colon q Return], %w[colon x]
69
+ map :change, ['<Control-w>', :layout]
81
70
  end
82
71
 
83
72
  minor_mode :move do
84
73
  inherits :prefix
85
74
 
75
+ map :ask_go_line, *(':<Key-1>'..':<Key-9>')
76
+
86
77
  handler Methods::Move
87
- (0..9).each{|n| map :ask_go_line, ['colon', n.to_s] }
88
- map :prev_char, %w[h], %w[Left]
89
- map :prev_chunk, %w[B]
90
- map :prev_word, %w[b], %w[Shift-Left]
91
- map :start_of_line, %w[Home]
92
- map :prefix_arg_sol, %w[0]
93
- map :end_of_text, %w[G]
94
- map :end_of_line, %w[dollar], %w[End]
95
- map :next_char, %w[l], %w[Right]
96
- map :next_chunk, %w[W]
97
- map :next_word, %w[w], %w[Shift-Right]
98
- map :go_line, %w[g g]
99
- map :matching_brace, %w[percent]
100
- map :next_line, %w[j], %w[Down], %w[Control-n]
101
- map :next_page, %w[Control-f], %w[Next]
102
- map :prev_page, %w[Control-b], %w[Prior]
103
- map :prev_line, %w[k], %w[Up], %w[Control-p]
104
- map :next_word_end, %w[e]
78
+ map :prefix_arg_sol, '<Key-0>'
79
+ map :percent, '%'
80
+
81
+ handler :at_insert
82
+ map :last_char, '$', '<End>'
83
+ map :first_line, 'gg'
84
+ map :last_line, 'G'
85
+ map :next_char, 'l', '<Right>', '<space>'
86
+ map :next_chunk, 'W'
87
+ map :next_chunk_end, 'E'
88
+ map :next_line, 'j', '<Down>', '<Control-n>', '<Control-j>'
89
+ map :next_line_nonblank, '+', '<Control-m>', '<Return>'
90
+ map :next_page, '<Control-f>', '<Next>'
91
+ map :next_word, 'w'
92
+ map :next_word_end, 'e'
93
+ map :prev_char, 'h', '<Left>', '<BackSpace>'
94
+ map :prev_chunk, 'B'
95
+ map :prev_line, 'k', '<Up>', '<Control-p>'
96
+ map :prev_page, '<Control-b>', '<Prior>'
97
+ map :prev_word, 'b'
98
+ map :start_of_line, '<Home>' # 0
99
+ map :home_of_line, '^'
100
+ map :go_char, '|'
101
+ map :down_nonblank, '_'
102
+ map :prev_line_nonblank, '-'
105
103
  end
106
104
 
107
105
  minor_mode :prefix do
108
- map(:update_prefix_arg, *('0'..'9'))
106
+ # Sometimes Range really surprises me...
107
+ map :update_prefix_arg, *('<Key-0>'..'<Key-9>')
109
108
  end
110
109
 
111
110
  minor_mode :search do
112
111
  handler Methods::Search
113
112
 
114
- map :char_left, %w[F]
115
- map :char_right, %w[f]
116
- map :next, %w[n]
117
- map :next_word_under_cursor, %w[asterisk]
118
- map :prev, %w[N]
119
- map :prev_word_under_cursor, %w[numbersign]
120
- map :remove, %w[g slash]
121
- map :status_next, %w[slash]
122
- map :status_prev, %w[question]
113
+ map :char_left, 'F'
114
+ map :till_char_left, 'T'
115
+ map :char_right, 'f'
116
+ map :till_char_right, 't'
117
+ map :next, 'n'
118
+ map :next_word_under_cursor, '*'
119
+ map :prev, 'N'
120
+ map :prev_word_under_cursor, '#'
121
+ map :remove, 'g/'
122
+ map :status_next, '/'
123
+ map :status_prev, '?'
124
+ map :again_char, ';'
125
+ map :again_char_opposite, ',,' # ',' is used as prefix for ',c' ',u'
123
126
  end
124
127
 
125
128
  minor_mode :ctags do
126
129
  handler Methods::CTags
127
130
 
128
- map :find_current, %w[Control-bracketright] # C-]
129
- map :prev, %w[Control-bracketleft] # C-[
131
+ map :find_current, '<Control-bracketright>' # C-]
132
+ map :prev, '<Control-bracketleft>' # C-[
130
133
  end
131
134
 
132
135
  minor_mode :bookmark do
133
136
  handler Methods::Bookmark
134
137
 
135
- map :add_char, %w[m]
136
- map :visit_char, %w[quoteleft]
138
+ map :add_char, 'm'
139
+ map :visit_char, '`'
137
140
  # vim also has quoteright to jump to the start of the line, but who
138
141
  # needs that *_*
139
142
  end
@@ -141,284 +144,350 @@ module VER
141
144
  minor_mode :complete do
142
145
  handler Methods::Completion
143
146
 
144
- map :aspell, %w[Control-x Control-a]
145
- map :contextual, %w[Control-x Control-x]
146
- map :file, %w[Control-x Control-f]
147
- map :line, %w[Control-x Control-l]
148
- map :snippet, %w[Control-x Control-s]
149
- map :word, %w[Control-x Control-w]
150
- map :smart_tab, %w[Tab]
147
+ map :aspell, '<Control-x><Control-a>'
148
+ map :contextual, '<Control-x><Control-x>'
149
+ map :file, '<Control-x><Control-f>'
150
+ map :line, '<Control-x><Control-l>'
151
+ map :snippet, '<Control-x><Control-s>'
152
+ map :word, '<Control-x><Control-w>'
153
+ map :smart_tab, '<Tab>'
151
154
  end
152
155
 
153
156
  minor_mode :delete do
154
- handler Methods::Delete
155
-
156
- map :change_line, %w[c c]
157
- map :kill_line, %w[d d]
158
- map :kill_motion, ['d', :move]
159
- map :change_motion, ['c', :move]
160
- map [:change_motion, :end_of_line], %w[C]
161
- map [:change_word_right_end], %w[c w]
162
- map [:kill_motion, :prev_char], %w[X]
163
- map [:kill_motion, :end_of_line], %w[D]
164
- map [:kill_motion, :next_char], %w[x]
157
+ handler :at_insert
158
+ map :change_next_word_end, 'cw'
159
+ map :change_line, 'cc', 'S'
160
+ map :change, 's'
161
+ map :changing, ['c', :move]
162
+ map :kill_line, 'dd'
163
+ map :killing, ['d', :move]
164
+ map [:changing, :last_char], 'C'
165
+ map [:killing, :last_char], 'D'
166
+ map [:killing, :next_char], 'x', '<Delete>'
167
+ map [:killing, :prev_char], 'X'
165
168
  end
166
169
 
167
170
  minor_mode :clipboard do
168
- handler Methods::Clipboard
171
+ handler :at_insert
172
+ map :copy_line, 'yy','Y'
173
+ map :copying, ['y', :move]
169
174
 
170
- map :copy_line, %w[y y], %w[Y]
171
- map :copy_motion, ['y', :move]
172
- map :paste, %w[p]
173
- map :paste_above, %w[P]
175
+ handler Methods::Clipboard
176
+ map :paste_after, 'p'
177
+ map :paste_before, 'P'
178
+ map :paste_after_adjust, ']p'
179
+ map :paste_before_adjust, '[p'
180
+ map :paste_after_go_after, 'gp'
181
+ map :paste_before_go_after, 'gP'
174
182
  end
175
183
 
176
184
  minor_mode :undo do
177
185
  handler Methods::Undo
178
186
 
179
- map :redo, %w[Control-r]
180
- map :undo, %w[u]
187
+ map :redo, '<Control-r>'
188
+ map :undo, 'u'
181
189
  end
182
190
 
183
- minor_mode :control do
184
- inherits :basic, :move, :delete, :undo, :layout_control, :search, :ctags,
185
- :bookmark, :clipboard
191
+ minor_mode :macro do
192
+ inherits :control
186
193
 
187
- become :select_block, %w[Control-v]
188
- become :select_char, %w[v]
189
- become :select_line, %w[V]
190
- become :insert, %w[i]
191
- become :replace, %w[R]
192
- become :replace_char, %w[r]
194
+ become :control, 'q'
193
195
 
194
- handler Methods::Control
196
+ handler Methods::Macro
195
197
  enter :enter
196
198
  leave :leave
197
- map :chdir, %w[g c]
198
-
199
- map :cursor_vertical_bottom, %w[z b]
200
- map :cursor_vertical_bottom_sol, %w[z minus]
201
- map :cursor_vertical_center, %w[z z]
202
- map :cursor_vertical_center_sol, %w[z period]
203
- map :cursor_vertical_top, %w[z t]
204
- map :cursor_vertical_top_sol, %w[z Return]
205
-
206
- map [:insert_at, :end_of_line], %w[A]
207
- map [:insert_at, :next_char], %w[a]
208
-
209
- map :indent_line, %w[greater]
210
- map :unindent_line, %w[less]
211
-
212
- map :join_line_forward, %w[J]
213
-
214
- map :open_file_under_cursor, %w[g f]
199
+ end
215
200
 
216
- map :repeat_command, %w[period]
217
- map :smart_evaluate, %w[Alt-e], %w[Control-m e]
201
+ minor_mode :control do
202
+ inherits :basic, :move, :delete, :undo, :layout_control, :search, :ctags,
203
+ :bookmark, :clipboard, :open
204
+
205
+ become :insert, 'i', '<Insert>'
206
+ become :replace, 'R'
207
+ become :replace_char, 'r'
208
+ become :select_block, '<Control-v>'
209
+ become :select_char, 'v'
210
+ become :select_line, 'V'
211
+ become :control, '<Escape>'
212
+ become :macro, *('a'..'z').map{|c| "q#{c}" }
213
+
214
+ handler Methods::Macro
215
+ map :repeat, '@@'
216
+ ('a'..'z').each{|c| map [:play, c], "@#{c}" }
217
+
218
+ handler nil # whatever the widget happens to be
219
+ map :repeat_action, '.'
220
+ map :quit, ':qa', 'ZZ'
221
+ map :close, ':q<Return>', ':x'
222
+ map [:touch!, '1.0', 'end'], '<Control-l>'
223
+ map :save, ':w<Return>'
224
+ map :save_as, ':w<space>'
225
+ map :save_all, ':wa'
226
+ map :change_register, '"'
227
+
228
+ handler RegisterList
229
+ map :open, ':reg<Return>'
230
+ map :show, ':reg<space>'
218
231
 
219
- map [:insert_at, :home_of_line], %w[I]
232
+ handler Methods::Open
233
+ map :file_open_ask, ':o<space>'
234
+
235
+ handler :at_insert
236
+ map :insert_newline_above, 'O'
237
+ map :insert_newline_below, 'o'
238
+ map :increase_number, '<Control-a>'
239
+ map :decrease_number, '<Control-x>'
240
+ map :toggle_case!, '~'
241
+ map :toggle_casing, ['g~', :move]
242
+ map :lower_casing, ['gu', :move]
243
+ map :upper_casing, ['gU', :move]
244
+ map :encoding_rot13, ['g?', :move]
245
+ map [:change_at, :last_char], 'A'
246
+ map [:change_at, :next_char], 'a'
247
+ map [:change_at, :home_of_line], 'I'
248
+ map [:change_at, :start_of_line], 'gI'
220
249
 
221
- map :executor, %w[colon colon]
222
- map [:ex, :buffer], %w[colon b u], %w[Alt-b], %w[Control-m b]
223
- map [:ex, :edit], %w[colon e space]
224
- map [:ex, :fuzzy], %w[colon f]
225
- map [:ex, :grep], %w[colon g]
226
- map [:ex, :grep_buffers], %w[colon G]
227
- map [:ex, :locate], %w[colon l]
228
- map [:ex, :method], %w[colon m]
229
- map [:ex, :open], %w[colon o Return]
230
- map [:ex, :syntax], %w[colon s]
231
- map [:ex, :theme], %w[colon t]
232
- # map [:ex, :write], %w[colon w]
250
+ handler Methods::Control
251
+ enter :enter
252
+ leave :leave
233
253
 
234
- map :toggle_case, %w[asciitilde]
235
- map :wrap_line, %w[g w]
254
+ map :chdir, 'gc'
236
255
 
237
- handler Methods::Insert
238
- map :newline_above, %w[O]
239
- map :newline_below, %w[o]
256
+ handler Methods::Control
257
+ map :cursor_horizontal_center, 'gm'
258
+ map :cursor_vertical_bottom, 'zb'
259
+ map :cursor_vertical_bottom_sol, 'z-'
260
+ map :cursor_vertical_center, 'zz'
261
+ map :cursor_vertical_center_sol, 'z.'
262
+ map :cursor_vertical_top, 'zt'
263
+ map :cursor_vertical_top_sol, 'z<Return>'
264
+
265
+ map :executor, '::'
266
+ map [:ex, :buffer], ':bu', '<Alt-b>', '<Control-m>b'
267
+ map [:ex, :edit], ':e<space>'
268
+ map [:ex, :encoding], ':en<space>'
269
+ map [:ex, :fuzzy], ':f'
270
+ map [:ex, :grep], ':g'
271
+ map [:ex, :grep_buffers], ':G'
272
+ map [:ex, :locate], ':l'
273
+ map [:ex, :method], ':m'
274
+ map [:ex, :open], ':o<Return>'
275
+ map [:ex, :syntax], ':s'
276
+ map [:ex, :theme], ':t'
277
+ # map [:ex, :write], ':w'
278
+
279
+ map :wrap_line, 'gw'
280
+ map :indent_line, '>'
281
+ map :unindent_line, '<'
282
+ map :join_forward, 'J'
283
+ map :join_forward_nospace, 'gJ'
284
+ map :open_file_under_cursor, 'gf'
285
+ map :smart_evaluate, '<Alt-e>', '<Control-m>e'
240
286
 
241
287
  handler Methods::SearchAndReplace
242
- map :query, %w[Alt-percent]
288
+ map :query, '<Alt-percent>'
243
289
  end
244
290
 
245
291
  minor_mode :readline do
246
- map :accept_line, %w[Return]
247
-
248
- map :end_of_line, %w[End], %w[Control-e]
249
- map :insert_selection, %w[Shift-Insert]
250
- map :insert_tab, %w[Control-v Tab], %w[Control-i]
251
- map :kill_end_of_line, %w[Control-k]
252
- map :kill_next_char, %w[Control-d], %w[Delete]
253
- map :kill_next_word, %w[Alt-d]
254
- map :kill_prev_char, %w[BackSpace]
255
- map :kill_prev_word, %w[Control-w]
256
- map :next_char, %w[Right], %w[Control-f]
257
- map :next_word, %w[Shift-Right], %w[Alt-f]
258
- map :prev_char, %w[Left], %w[Control-b]
259
- map :prev_word, %w[Shift-Left], %w[Alt-b]
260
- map :start_of_line, %w[Home], %w[Control-a]
261
- map :transpose_chars, %w[Control-t]
262
-
263
- map :sel_prev_char, %w[Shift-Left]
264
- map :sel_next_char, %w[Shift-Right]
265
- map :sel_prev_word, %w[Shift-Control-Left]
266
- map :sel_next_word, %w[Shift-Control-Right]
267
- map :sel_start_of_line, %w[Shift-Home]
268
- map :sel_end_of_line, %w[Shift-End]
292
+ map :accept_line, '<Return>'
293
+
294
+ map :last_char, '<End>', '<Control-e>'
295
+ map :insert_selection, '<Shift-Insert>'
296
+ map :insert_tab, '<Control-v><Tab>', '<Control-i>'
297
+ map :kill_last_char, '<Control-k>'
298
+ map :delete_next_char, '<Control-d>', '<Delete>'
299
+ map :delete_next_word, '<Alt-d>'
300
+ map :delete_prev_char, '<BackSpace>'
301
+ map :delete_prev_word, '<Control-w>'
302
+ map :next_char, '<Right>', '<Control-f>'
303
+ map :next_word, '<Shift-Right>', '<Alt-f>'
304
+ map :prev_char, '<Left>', '<Control-b>'
305
+ map :prev_word, '<Shift-Left>', '<Alt-b>'
306
+ map :start_of_line, '<Home>', '<Control-a>'
307
+ map :transpose_chars, '<Control-t>'
308
+ map :paste, '<Control-y>'
269
309
 
270
310
  missing :insert_string
271
311
  end
272
312
 
273
313
  minor_mode :insert do
274
314
  inherits :basic, :layout_control, :complete
275
- become :control, %w[Escape], %w[Control-c]
315
+ become :control, '<Escape>', '<Control-c>'
276
316
 
277
317
  handler Methods::AutoFill
278
- map :auto_fill_space, %w[space]
279
-
280
- handler Methods::Delete
281
- map [:kill_motion, :next_char], %w[Delete], %w[Control-d]
282
- map [:kill_motion, :prev_char], %w[BackSpace]
283
- map [:kill_motion, :prev_word], %w[Control-w]
284
-
285
- handler Methods::Move
286
- map :next_line, %w[Down], %w[Control-n]
287
- map :next_page, %w[Control-f], %w[Next], %w[Shift-Down]
288
- map :prev_page, %w[Control-b], %w[Prior], %w[Shift-Up]
289
- map :prev_line, %w[Up], %w[Control-p]
290
- map :end_of_line, %w[End], %w[Control-e]
291
- map :next_char, %w[Right], %w[Control-f]
292
- map :next_word, %w[Shift-Right], %w[Alt-f]
293
- map :prev_char, %w[Left], %w[Control-b]
294
- map :prev_word, %w[Shift-Left], %w[Alt-b]
295
- map :start_of_line, %w[Home], %w[Control-a]
318
+ map :auto_fill_space, '<space>'
319
+
320
+ handler :at_insert
321
+ map :insert_char_above, '<Control-y>'
322
+ map :insert_char_below, '<Control-e>'
323
+ map :insert_digraph, '<Control-k>'
324
+ map :insert_newline, '<Return>', '<Control-m>', '<Control-j>'
325
+ map :insert_selection, '<Shift-Insert>', '<Insert>'
326
+ map :insert_tab, '<Control-i>'
327
+ map :last_char, '<End>'
328
+ map :next_char, '<Right>'
329
+ map :next_line, '<Down>', '<Control-n>'
330
+ map :next_page, '<Control-f>', '<Next>', '<Shift-Down>'
331
+ map :next_word, '<Shift-Right>', '<Alt-f>'
332
+ map :prev_char, '<Left>'
333
+ map :prev_line, '<Up>', '<Control-p>'
334
+ map :prev_page, '<Control-b>', '<Prior>', '<Shift-Up>'
335
+ map :prev_word, '<Shift-Left>', '<Alt-b>'
336
+ map :start_of_line, '<Home>', '<Control-a>'
337
+ map [:killing, :next_char], '<Delete>'
338
+ map [:killing, :prev_char], '<BackSpace>', '<Control-h>'
339
+ map [:killing, :prev_word], '<Control-w>'
296
340
 
297
341
  handler Methods::Control
298
- map :smart_evaluate, %w[Alt-e], %w[Control-e]
342
+ map :smart_evaluate, '<Alt-e>'
343
+ map :temporary, ['<Control-o>', :control]
344
+ map :indent_line, '<Control-t>'
345
+ map :unindent_line, '<Control-d>'
346
+ if x11?
347
+ map :unindent_line, '<ISO_Left_Tab>'
348
+ else
349
+ map :unindent_line, '<Shift-Tab>'
350
+ end
299
351
 
300
352
  handler Methods::Insert
301
- map :newline, %w[Return]
302
- map :selection, %w[Shift-Insert]
303
- map :tab, %w[Control-v Tab], %w[Control-i]
353
+ map :literal, '<Control-v>', '<Control-q>'
304
354
  missing :string
305
355
  end
306
356
 
307
357
  minor_mode :replace do
308
- become :control, %w[Escape], %w[Control-c]
358
+ become :control, '<Escape>', '<Control-c>'
309
359
 
310
360
  handler Methods::Insert
311
- map [:replace_string, "\n"], %w[Return]
361
+ enter :enter_replace
362
+ leave :leave_replace
363
+ map [:replace_string, "\n"], '<Return>'
312
364
  missing :replace_string
313
365
  end
314
366
 
315
367
  minor_mode :replace_char do
316
- become :control, %w[Escape], %w[Control-c]
368
+ become :control, '<Escape>', '<Control-c>'
317
369
 
318
370
  handler Methods::Insert
319
- map [:replace_char, "\n"], %w[Return]
371
+ map [:replace_char, "\n"], '<Return>'
320
372
  missing :replace_char
321
373
  end
322
374
 
323
375
  minor_mode :search_and_replace do
324
- become :control, %w[Escape], %w[Control-c], %w[q]
376
+ become :control, '<Escape>', '<Control-c>', 'q'
325
377
 
326
378
  handler Methods::SearchAndReplace
327
379
  enter :enter
328
380
  leave :leave
329
381
 
330
- map :replace_all, %w[a], %w[exclam]
331
- map :replace_once, %w[y]
332
- map :next, %w[n], %w[s], %w[j], %w[Control-n]
333
- map :prev, %w[k], %w[Control-p]
382
+ map :replace_all, 'a', '<exclam>'
383
+ map :replace_once, 'y'
384
+ map :next, 'n', 's', 'j', '<Control-n>'
385
+ map :prev, 'k', '<Control-p>'
334
386
  end
335
387
 
336
388
  minor_mode :select do
337
389
  inherits :basic, :move, :search
338
390
 
339
- handler Methods::Selection
340
- map :comment, %w[comma c]
341
- map :copy, %w[y], %w[Y]
342
- map :indent, %w[greater]
343
- map :kill, %w[d], %w[D], %w[x], %w[BackSpace], %w[Delete]
344
- map :pipe, %w[exclam]
345
- map :lower_case, %w[u]
346
- map :replace_string, %w[c]
347
- map :toggle_case, %w[asciitilde]
348
- map :upper_case, %w[U]
349
- map :uncomment, %w[comma u]
350
- map :unindent, %w[less]
351
- map :wrap, %w[g w]
391
+ handler nil
392
+ map :change_register, '"'
393
+
394
+ handler :at_sel
395
+ map :comment, ',c'
396
+ map :copy, 'y', 'Y'
397
+ map :indent, '<greater>'
398
+ map :kill, 'd', 'D', 'x', '<BackSpace>', '<Delete>'
399
+ map :lower_case!, 'u'
400
+ map :replace_string, 'c'
401
+ map :replace_string_eol, 'C'
402
+ map :toggle_case!, '~'
403
+ map :upper_case!, 'U'
404
+ map :uncomment, ',u'
405
+ map :unindent, '<less>'
406
+ map :string_operation, '<F19>'
407
+ map :array_operation, '<Alt-F7>'
408
+ map :line_operation, '<F7>'
409
+ map :encode_rot13!, 'g?'
410
+ map [:join, ' '], 'J'
411
+ map [:join, ''], 'gJ'
412
+ map :change_linestart, 'I'
413
+ map :change_lineend, 'A'
352
414
 
353
415
  handler Methods::Control
354
- map :smart_evaluate, %w[Alt-e], %w[Control-e]
416
+ map :smart_evaluate, '<Alt-e>', '<Control-e>'
417
+
418
+ handler Methods::Selection
419
+ map :pipe, '<exclam>'
355
420
  end
356
421
 
357
422
  minor_mode :select_char do
358
423
  inherits :select
359
424
 
360
- become :control, %w[Escape], %w[Control-c]
361
- become :select_line, %w[V]
362
- become :select_block, %w[Control-v]
363
- become :select_replace_char, %w[r]
425
+ become :control, '<Escape>', '<Control-c>'
426
+ become :select_line, 'V'
427
+ become :select_block, '<Control-v>'
428
+ become :select_replace_char, 'r'
364
429
 
365
- handler Methods::Selection
430
+ handler :at_sel
366
431
  enter :enter
367
432
  leave :leave
433
+ map :wrap, 'gw'
434
+ map :change, 'c', 's'
368
435
  end
369
436
 
370
437
  minor_mode :select_line do
371
438
  inherits :select
372
439
 
373
- become :control, %w[Escape], %w[Control-c]
374
- become :select_char, %w[v]
375
- become :select_block, %w[Control-v]
376
- become :select_replace_char, %w[r]
440
+ become :control, '<Escape>', '<Control-c>'
441
+ become :select_char, 'v'
442
+ become :select_block, '<Control-v>'
443
+ become :select_replace_char, 'r'
377
444
 
378
- handler Methods::Selection
445
+ handler :at_sel
379
446
  enter :enter
380
447
  leave :leave
448
+ map :wrap, 'gw'
449
+ map :change, 'c', 's'
381
450
  end
382
451
 
383
452
  minor_mode :select_block do
384
453
  inherits :select
385
454
 
386
- become :control, %w[Escape], %w[Control-c]
387
- become :select_char, %w[v]
388
- become :select_line, %w[V]
389
- become :select_replace_char, %w[r]
455
+ become :control, '<Escape>', '<Control-c>'
456
+ become :select_char, 'v'
457
+ become :select_line, 'V'
458
+ become :select_replace_char, 'r'
390
459
 
391
- handler Methods::Selection
460
+ handler :at_sel
392
461
  enter :enter
393
462
  leave :leave
394
463
  end
395
464
 
396
465
  minor_mode :select_replace_char do
397
- become :control, %w[Escape], %w[Control-c]
466
+ become :control, '<Escape>', '<Control-c>'
398
467
 
399
- handler Methods::Selection
400
- map [:replace_char, "\n"], %w[Return]
468
+ handler :at_sel
469
+ map [:replace_char, "\n"], '<Return>'
401
470
  missing :replace_char
402
471
  end
403
472
 
404
473
  major_mode :HoverCompletion do
405
474
  inherits :basic
406
475
 
407
- map :cancel, %w[Escape], %w[BackSpace]
408
- map :continue_completion, %w[Right], %w[l]
409
- map :go_down, %w[Down], %w[j]
410
- map :go_up, %w[Up], %w[k]
411
- map :submit, %w[Return]
476
+ map :cancel, '<Escape>', '<BackSpace>'
477
+ map :continue_completion, '<Right>', 'l'
478
+ map :go_down, '<Down>', 'j'
479
+ map :go_up, '<Up>', 'k'
480
+ map :submit, '<Return>'
412
481
  end
413
482
 
414
483
  minor_mode :snippet do
415
484
  inherits :readline
416
485
 
417
486
  handler Methods::Snippet
418
- map :cancel, %w[Escape], %w[Control-c]
419
- map :jump, %w[Tab]
487
+ map :cancel, '<Escape>', '<Control-c>'
488
+ map :jump, '<Tab>'
420
489
 
421
- missing :insert_string
490
+ missing :on_insert
422
491
  end
423
492
 
424
493
  major_mode :Fundamental do
@@ -428,15 +497,17 @@ module VER
428
497
  major_mode :MiniBuffer do
429
498
  use :readline
430
499
 
431
- map :abort, %w[Escape], %w[Control-c]
432
- map :attempt, %w[Return]
433
- map :complete_large, %w[Double-Tab]
434
- map :complete_small, %w[Tab]
500
+ map :abort, '<Escape>', '<Control-c>'
501
+ map :attempt, '<Return>'
502
+ map :complete_large, '<Control-d>'
503
+ map :complete_small, '<Tab>'
504
+ map :next_history, '<Down>'
505
+ map :prev_history, '<Up>'
435
506
  end
436
507
 
437
508
  major_mode :Completions do
438
509
  handler MiniBuffer
439
- map :answer_from, %w[Button-1]
510
+ # map :answer_from, '<Button-1>'
440
511
  end
441
512
 
442
513
  major_mode :Executor do
@@ -446,16 +517,16 @@ module VER
446
517
  minor_mode :executor_entry do
447
518
  inherits :readline
448
519
 
449
- map :completion, %w[Tab]
450
- map :cancel, %w[Escape]
451
- map :next_line, %w[Down], %w[Control-j], %w[Control-n]
452
- map :prev_line, %w[Up], %w[Control-k], %w[Control-p]
520
+ map :completion, '<Tab>'
521
+ map :cancel, '<Escape>'
522
+ map :next_line, '<Down>', '<Control-j>', '<Control-n>'
523
+ map :prev_line, '<Up>', '<Control-k>', '<Control-p>'
453
524
  end
454
525
 
455
526
  minor_mode :executor_label do
456
527
  inherits :executor_entry
457
528
 
458
- map :speed_selection, %w[space]
529
+ map :speed_selection, '<space>'
459
530
 
460
531
  missing :insert_string
461
532
  end