From 203d04d76413fb46ada3feb73144f3172b1a9e05 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar <Bram@vim.org> Date: Thu, 6 Jun 2013 21:36:40 +0200 Subject: [PATCH] Updated runtime files. --- runtime/compiler/haml.vim | 5 + runtime/compiler/sass.vim | 5 + runtime/doc/if_pyth.txt | 8 +- runtime/doc/index.txt | 3 +- runtime/doc/options.txt | 20 +- runtime/doc/pattern.txt | 4 +- runtime/doc/syntax.txt | 7 +- runtime/doc/tags | 6 + runtime/doc/todo.txt | 113 ++++++----- runtime/indent/erlang.vim | 109 ++++++----- runtime/lang/menu_ru_ru.koi8-r.vim | 97 ++++++---- runtime/lang/menu_ru_ru.vim | 99 ++++++---- runtime/scripts.vim | 9 + runtime/syntax/c.vim | 2 +- runtime/syntax/erlang.vim | 297 ++++++++++++++++++----------- runtime/syntax/falcon.vim | 46 ++++- runtime/syntax/help.vim | 2 +- runtime/syntax/r.vim | 32 +++- runtime/syntax/rst.vim | 9 +- 19 files changed, 561 insertions(+), 312 deletions(-) diff --git a/runtime/compiler/haml.vim b/runtime/compiler/haml.vim index faa1fd9780..b06a672df7 100644 --- a/runtime/compiler/haml.vim +++ b/runtime/compiler/haml.vim @@ -1,3 +1,8 @@ +" Vim compiler file +" Compiler: Haml +" Maintainer: Tim Pope <vimNOSPAM@tpope.org> +" Last Change: 2013 May 30 + if exists("current_compiler") finish endif diff --git a/runtime/compiler/sass.vim b/runtime/compiler/sass.vim index 8340b9c7de..376a52b303 100644 --- a/runtime/compiler/sass.vim +++ b/runtime/compiler/sass.vim @@ -1,3 +1,8 @@ +" Vim compiler file +" Compiler: Sass +" Maintainer: Tim Pope <vimNOSPAM@tpope.org> +" Last Change: 2013 May 30 + if exists("current_compiler") finish endif diff --git a/runtime/doc/if_pyth.txt b/runtime/doc/if_pyth.txt index 7bd9b377e4..165131e64b 100644 --- a/runtime/doc/if_pyth.txt +++ b/runtime/doc/if_pyth.txt @@ -1,4 +1,4 @@ -*if_pyth.txt* For Vim version 7.3. Last change: 2013 May 25 +*if_pyth.txt* For Vim version 7.3. Last change: 2013 Jun 02 VIM REFERENCE MANUAL by Paul Moore @@ -340,7 +340,7 @@ The buffer object attributes are: |BufFilePost| autocommands are launched. b.number Buffer number. Can be used as |python-buffers| key. Read-only. - b.valid True or False. Buffer object becames invalid when + b.valid True or False. Buffer object becomes invalid when corresponding buffer is wiped out. The buffer object methods are: @@ -446,7 +446,7 @@ Window attributes are: row, col (read-only) On-screen window position in display cells. First position is zero. tabpage (read-only) Window tab page. - valid (read-write) True or False. Window object becames invalid + valid (read-write) True or False. Window object becomes invalid when corresponding window is closed. The height attribute is writable only if the screen is split horizontally. @@ -471,7 +471,7 @@ Tab page attributes are: windows Like |python-windows|, but for current tab page. vars The tab page |t:| variables. window Current tabpage window. - valid True or False. Tab page object becames invalid when + valid True or False. Tab page object becomes invalid when corresponding tab page is closed. TabPage object type is available using "TabPage" attribute of vim module. diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt index 6b8d445e47..c2b1ca1600 100644 --- a/runtime/doc/index.txt +++ b/runtime/doc/index.txt @@ -1,4 +1,4 @@ -*index.txt* For Vim version 7.3. Last change: 2013 May 17 +*index.txt* For Vim version 7.3. Last change: 2013 Jun 06 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1510,6 +1510,7 @@ tag command action ~ |:sview| :sv[iew] split window and edit file read-only |:swapname| :sw[apname] show the name of the current swap file |:syntax| :sy[ntax] syntax highlighting +|:syntime| :synti[me] measure syntax highlighting speed |:syncbind| :sync[bind] sync scroll binding |:t| :t same as ":copy" |:tNext| :tN[ext] jump to previous matching tag diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index 6b01d7c179..d7f9db011f 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -1,4 +1,4 @@ -*options.txt* For Vim version 7.3. Last change: 2013 May 23 +*options.txt* For Vim version 7.3. Last change: 2013 Jun 04 VIM REFERENCE MANUAL by Bram Moolenaar @@ -5132,7 +5132,18 @@ A jump table for the options with a short description can be found at |Q_op|. characters are put before the number. See |hl-LineNr| and |hl-CursorLineNr| for the highlighting used for the number. - When setting this option, 'relativenumber' is reset. + *number_relativenumber* + The 'relativenumber' option changes the displayed number to be + relative to the cursor. Together with 'number' there are these + four combinations (cursor in line 3): + + 'nonu' 'nu' 'nonu' 'nu' + 'nornu' 'nornu' 'rnu' 'rnu' + + |apple | 1 apple | 2 apple | 2 apple + |pear | 2 pear | 1 pear | 1 pear + |nobody | 3 nobody | 0 nobody |3 nobody + |there | 4 there | 1 there | 1 there *'numberwidth'* *'nuw'* 'numberwidth' 'nuw' number (Vim default: 4 Vi default: 8) @@ -5547,7 +5558,10 @@ A jump table for the options with a short description can be found at |Q_op|. characters are put before the number. See |hl-LineNr| and |hl-CursorLineNr| for the highlighting used for the number. - When setting this option, 'number' is reset. + + The number in front of the cursor line also depends on the value of + 'number', see |number_relativenumber| for all combinations of the two + options. *'remap'* *'noremap'* 'remap' boolean (default on) diff --git a/runtime/doc/pattern.txt b/runtime/doc/pattern.txt index e90e388391..69b4a9f220 100644 --- a/runtime/doc/pattern.txt +++ b/runtime/doc/pattern.txt @@ -1,4 +1,4 @@ -*pattern.txt* For Vim version 7.3. Last change: 2013 May 29 +*pattern.txt* For Vim version 7.3. Last change: 2013 Jun 02 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1232,7 +1232,7 @@ Suppose B is a base character and x and y are composing characters: Bxy Byx yes (order ignored) Bxy By no (x missing) Bxy Bx no (y missing) - Bx Bx yes (perfect mach) + Bx Bx yes (perfect match) Bx By no (x missing) Bx Bxy yes (extra y ignored) Bx Byx yes (extra y ignored) diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt index 7f296d142a..3779de12e3 100644 --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -1,4 +1,4 @@ -*syntax.txt* For Vim version 7.3. Last change: 2013 May 31 +*syntax.txt* For Vim version 7.3. Last change: 2013 Jun 06 VIM REFERENCE MANUAL by Bram Moolenaar @@ -3957,7 +3957,7 @@ External matches *:syn-ext-match* These extra regular expression items are available in region patterns: - */\z(* */\z(\)* *E50* *E52* + */\z(* */\z(\)* *E50* *E52* *E879* \z(\) Marks the sub-expression as "external", meaning that it can be accessed from another pattern match. Currently only usable in defining a syntax region start pattern. @@ -5097,6 +5097,9 @@ If your syntax causes redrawing to be slow, here are a few hints on making it faster. To see slowness switch on some features that usually interfere, such as 'relativenumber' and |folding|. +Note: this is only available when compiled with the |+profile| feature. +You many need to build Vim with "huge" features. + To find out what patterns are consuming most time, get an overview with this sequence: > :syntime on diff --git a/runtime/doc/tags b/runtime/doc/tags index f02c4c2967..69ed5336d0 100644 --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -2876,6 +2876,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME* :syntax-enable syntax.txt /*:syntax-enable* :syntax-on syntax.txt /*:syntax-on* :syntax-reset syntax.txt /*:syntax-reset* +:syntime syntax.txt /*:syntime* :t change.txt /*:t* :tN tagsrch.txt /*:tN* :tNext tagsrch.txt /*:tNext* @@ -4281,6 +4282,7 @@ E875 pattern.txt /*E875* E876 pattern.txt /*E876* E877 pattern.txt /*E877* E878 pattern.txt /*E878* +E879 syntax.txt /*E879* E88 windows.txt /*E88* E89 message.txt /*E89* E90 message.txt /*E90* @@ -7159,6 +7161,7 @@ notation intro.txt /*notation* notepad gui_w32.txt /*notepad* nr2char() eval.txt /*nr2char()* nroff.vim syntax.txt /*nroff.vim* +number_relativenumber options.txt /*number_relativenumber* numbered-function eval.txt /*numbered-function* o insert.txt /*o* o_CTRL-V motion.txt /*o_CTRL-V* @@ -7353,6 +7356,7 @@ python-bindeval if_pyth.txt /*python-bindeval* python-bindeval-objects if_pyth.txt /*python-bindeval-objects* python-buffer if_pyth.txt /*python-buffer* python-buffers if_pyth.txt /*python-buffers* +python-chdir if_pyth.txt /*python-chdir* python-command if_pyth.txt /*python-command* python-commands if_pyth.txt /*python-commands* python-current if_pyth.txt /*python-current* @@ -7360,11 +7364,13 @@ python-dynamic if_pyth.txt /*python-dynamic* python-error if_pyth.txt /*python-error* python-eval if_pyth.txt /*python-eval* python-examples if_pyth.txt /*python-examples* +python-fchdir if_pyth.txt /*python-fchdir* python-input if_pyth.txt /*python-input* python-options if_pyth.txt /*python-options* python-output if_pyth.txt /*python-output* python-pyeval if_pyth.txt /*python-pyeval* python-range if_pyth.txt /*python-range* +python-strwidth if_pyth.txt /*python-strwidth* python-tabpage if_pyth.txt /*python-tabpage* python-tabpages if_pyth.txt /*python-tabpages* python-vars if_pyth.txt /*python-vars* diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt index e77fb55c52..5f01603234 100644 --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 7.3. Last change: 2013 Jun 01 +*todo.txt* For Vim version 7.3. Last change: 2013 Jun 06 VIM REFERENCE MANUAL by Bram Moolenaar @@ -34,33 +34,17 @@ not be repeated below, unless there is extra information. *known-bugs* -------------------- Known bugs and current work ----------------------- ---- Python interface - -Patch from ZyX, May 30: Fix some possible memory problems - -Check: docs for .valid patch by ZyX, May 30 -Correction by Roland Eggner, May 31. - -Tests are disabled because they fail. - -Configure doesn't find Python 3 on Ubuntu 13.04. (Ken Takata, Apr 13) - -Python SystemExit exception is not handled properly. Patch to catch the -exception and give an error. (Yasuhiro Matsumoto) -Does not work, tests fail. - -Patch to complete after :py3. (Taro Muraoka, 2013 May 31) - -":python os.chdir('/tmp')" makes short buffer names invalid. (Xavier de Gaye) -Patch to make os.chdir() handle side effects. (Xavier de Gaye, 2013 May 17) -Update May 19, also for os.fchdir(). -Adds a $VIMRUNTIME/python directory. -ZyX: OK to add python and python3 directory. +Make it possible to test the status line: add screenchar(col, row). +Use screen_getbytes(). +Could also add screenattr(col, row), but value is unpredictable. +Functions to read the actual contents of the screen, so that things like +conceal can be tested. (Nazri Ramliy, 2013 Feb 18) -Mac: OS/X 10.4 with Python 2.5 installed: configure finds an extra argument -that breaks the build. (Brian Victor, 2008 Sep 1) +function() does not work like before. (lilydjwg, 2013 Jun 4) +I guess this is caused by patch 7.3.1058: +"Call of funcref does not succeed in other script." -Patch to access screen under Python. (Marko Mahni, 2010 Jul 18) +--- Python interface Python: ":py raw_input('prompt')" doesn't work. (Manu Hack) @@ -71,8 +55,19 @@ Python: Be able to define a Python function that can be called directly from Vim script. Requires converting the arguments and return value, like with vim.bindeval(). +Python SystemExit exception is not handled properly. Patch to catch the +exception and give an error. (Yasuhiro Matsumoto) +Does not work, tests fail. + +Python: crash in test 86 because of int/size_t mixup? (Jun Takimoto, 2013 Jun +6) + +Add a $VIMRUNTIME/python and $VIMRUNTIME/python3 directories? + --- runtime files +Alternate html indent file by Andy Wokula, script 2075. + Syntax file for protocol buffers. (Feng Xiao, 2013 May 9) Has an ugly copyright notice. Add statement that it does not conflict with Vim license. @@ -80,32 +75,22 @@ Add statement that it does not conflict with Vim license. Patch for JavaScript syntax. (Kevin Locke, 2013 May 9) Claudio didn't respond yet. ---- Fast regexp engine - -Error in HTML highlighting. (Hiroshi Shirosaki) +upstream_dat, usserver_log et al. syntax files. (Rob Owens, 2013 Jun 5) -Tests for \{-} : Requires trying to start at every position? -If so, rename nfa_has_backref to nfa_dup_states and re-use it for this. +--- New regexp engine -Allow "^*" as a literal "*". +Does not work (yet) with NFA: +- \%u, \%x, \%o, \%d followed by a composing character -Need more testing for \1 back references. +Don't call nfa_regmatch() recursively if the "out" state is not going to be +added anyway. In run log: + > Not adding state 6 to list 4. char -971: NFA_SKIP Profiling: + ./vim -s ~/vim/test/alsa.vim + ./vim -s ~/vim/test/todo.vim ./vim -s ~/vim/test/loop.vim - ./vim -s ~/vim/test/xml.vim (Fix: Uses the old engine, see - bt_regexp_debug.log) - Need \@<= - NFA engine could not handle "[<]\@<=[^ /!?<>"']\+" - NFA engine could not handle "<!--\_.\{-}-->" - -setting cpo_lit and cpo_bsl can be slow. Make them global. - -Get example files for many languages. Compare syntax highlighting with old and -new regexp, find regexp constructs where NFA does not work correctly. -source ~/vim/regexp/runold.vim to update the "old" files. -source ~/vim/regexp/runnew.vim to update the "new" files -source ~/vim/regexp/diff.vim to find differences + ./vim -s ~/vim/test/xml.vim More test files from the src/pkg/regexp/testdata directory in the Go repo. @@ -127,18 +112,14 @@ Performance tests: - When lists are empty in nfa_regmatch() and match is true, it keeps looping without doing anything. -Does not work (yet) with NFA: -- \z() \z1 .. "\z9": Previously matched text in syn HL. -- ~: previous substitute pattern. Requires recursive compilation? -- \%u, \%x, \%o, \%d followed by a composing character -- \%V Visual -- \%[abc] -- \%' mark -- \@< match before zero-width -- \@> match whole pattern +BT engine: After \@> match and failing submatches are not cleared. +See test64. --- bug fixes +:wviminfo does not write old history entries. (Roland Eggner, 2013 Jun 5) +Another message Jun 6. + Patch to avoid wrong error message for 1.0[0]. (Yasuhiro Matsumoto, 2013 May 1) @@ -190,6 +171,9 @@ Patch by Christian Brabandt, Feb 16. Issue 134: pasting in visual selection in empty buffer. Patch by Christian Brabandt, 2013 May 22. +Patch to fix "gn" on single character matches. (Christian Brabandt, 2013 Jun +2) + 'cursorline' is drawn incorrectly in diff mode. Patch by Christian Brabandt, 2012 Apr 2. @@ -202,6 +186,12 @@ line. ":diffoff" does not restore options from before starting diff mode. Patch by Christian Brabandt, 2013 May 26. +Can't use multi-byte fill character in custom status line. +Patch by Christian Wellenbrock, 2013 Jun 2. Update Jun 3 (second one). + +Patch to fix glob() and globpath() with escaped special characters. +(Adnan Zafar, 2013 Jun 2, tests Jun 3) + --- slightly incompatible changes Patch to load ~/.vim/vimrc when ~/.vimrc isn't found. (Lech Lorens, 2013 Apr @@ -264,6 +254,9 @@ Patch to view coverage of the tests. (Nazri Ramliy, 2013 Feb 15) Patch to invert characters differently in GTK. (Yukihiro Nakadaira, 2013 May 5) +Bug with 'cursorline' in diff mode. Line being scrolled into view gets +highlighted as the cursor line. (Alessandro Ivaldi, 2013 Jun 4) + Patch to add the bufferlist() function. (Yegappan Lakshmanan, 2013 May 5) May 17: with winlist() and tabpagelist(). May 19: with local variables. @@ -356,6 +349,9 @@ Szamotulski, 2012 Nov 8) Crash in autocmd that unloads buffers in a BufUnload event. (Andrew Pimlott, 2012 Aug 11) Disallow :new when BufUnload is being handled? +Patch to add ":ldo" and ":cdo", execute commands over quickfix list and +location list. (Yegappan Lakshmanan, 2013 Jun 2) + MS-Windows resizing problems: - Windows window on screen positioning: Patch by Yukihiro Nakadaira, 2012 Jun 20. Uses getWindowRect() instead of GetWindowPlacement() @@ -549,6 +545,8 @@ Patch to make "z=" work when 'spell' is off. Does this have nasty side effects? (Christian Brabandt, 2012 Aug 5) Would also need to do this for spellbadword() and spellsuggest(). +Patch for variable tabstops. + On 64 bit MS-Windows "long" is only 32 bits, but we sometimes need to store a 64 bits value. Change all number options to use nropt_T and define it to the right type. @@ -657,9 +655,6 @@ New esperanto spell file can't be processed. (Dominique Pelle, 2011 Jan 30) "L'Italie" noted as a spell error at start of the sentence. (Dominique Pelle, 2011 Feb 27) -Functions to read the actual contents of the screen, so that things like -conceal can be tested. (Nazri Ramliy, 2013 Feb 18) - Copy/paste between Vim and Google chrome doesn't work well for multi-byte characters. (Ben Haskell, 2010 Sep 17) When putting text in the cut buffer (when exiting) and conversion doesn't work @@ -4336,7 +4331,7 @@ More advanced repeating commands: - Add "." command for visual mode: redo last visual command (e.g. ":fmt"). 7 Repeating "d:{cmd}" with "." doesn't work. (Benji Fisher) Somehow remember the command line so that it can be repeated? -- Add "gn": repeat last movement command. Including count. +- Add command to repeat last movement. Including count. - Add "." command after operator: repeat last command of same operator. E.g. "c." will repeat last change, also when "x" used since then (Webb). "y." will repeat last yank. diff --git a/runtime/indent/erlang.vim b/runtime/indent/erlang.vim index 416c40e935..c11bbeb4b7 100644 --- a/runtime/indent/erlang.vim +++ b/runtime/indent/erlang.vim @@ -4,7 +4,7 @@ " Contributors: Edwin Fine <efine145_nospam01 at usa dot net> " Pawel 'kTT' Salata <rockplayer.pl@gmail.com> " Ricardo Catalinas Jiménez <jimenezrick@gmail.com> -" Last Update: 2013-Mar-05 +" Last Update: 2013-Jun-01 " License: Vim license " URL: https://github.com/hcs42/vim-erlang @@ -1086,62 +1086,74 @@ function! s:ErlangCalcIndent2(lnum, stack) endif endif - elseif token == 'end' - let [lnum_new, col_new] = s:SearchEndPair(lnum, curr_col) + elseif index(['end', ')', ']', '}', '>>'], token) != -1 - if lnum_new == 0 - return s:IndentError('Matching token for "end" not found', - \token, stack) - else - if lnum_new != lnum - call s:Log(' Tokenize for "end" <<<<') - let [lnum, indtokens] = s:TokenizeLine(lnum_new, 'up') - call s:Log(' >>>> Tokenize for "end"') - endif + " If we can be sure that there is synchronization in the Erlang + " syntax, we use searchpair to make the script quicker. Otherwise we + " just push the token onto the stack and keep parsing. + + " No synchronization -> no searchpair optimization + if !exists('b:erlang_syntax_synced') + call s:Push(stack, token) - let [success, i] = s:GetIndtokenAtCol(indtokens, col_new) - if !success | return i | endif - let [token, curr_vcol, curr_col] = indtokens[i] - call s:Log(' Match for "end" in line ' . lnum_new . ': ' . - \string(indtokens[i])) - endif + " We don't have searchpair optimization for '>>' + elseif token == '>>' + call s:Push(stack, token) - elseif index([')', ']', '}'], token) != -1 + elseif token == 'end' + let [lnum_new, col_new] = s:SearchEndPair(lnum, curr_col) - call s:Push(stack, token) + if lnum_new == 0 + return s:IndentError('Matching token for "end" not found', + \token, stack) + else + if lnum_new != lnum + call s:Log(' Tokenize for "end" <<<<') + let [lnum, indtokens] = s:TokenizeLine(lnum_new, 'up') + call s:Log(' >>>> Tokenize for "end"') + endif + + let [success, i] = s:GetIndtokenAtCol(indtokens, col_new) + if !success | return i | endif + let [token, curr_vcol, curr_col] = indtokens[i] + call s:Log(' Match for "end" in line ' . lnum_new . ': ' . + \string(indtokens[i])) + endif - " We have to escape '[', because this string will be interpreted as a - " regexp - let open_paren = (token == ')' ? '(' : - \token == ']' ? '\[' : - \ '{') + else " token is one of the following: ')', ']', '}' - let [lnum_new, col_new] = s:SearchPair(lnum, curr_col, - \open_paren, '', token) + call s:Push(stack, token) - if lnum_new == 0 - return s:IndentError('Matching token not found', - \token, stack) - else - if lnum_new != lnum - call s:Log(' Tokenize the opening paren <<<<') - let [lnum, indtokens] = s:TokenizeLine(lnum_new, 'up') - call s:Log(' >>>>') - endif + " We have to escape '[', because this string will be interpreted as a + " regexp + let open_paren = (token == ')' ? '(' : + \token == ']' ? '\[' : + \ '{') - let [success, i] = s:GetIndtokenAtCol(indtokens, col_new) - if !success | return i | endif - let [token, curr_vcol, curr_col] = indtokens[i] - call s:Log(' Match in line ' . lnum_new . ': ' . - \string(indtokens[i])) + let [lnum_new, col_new] = s:SearchPair(lnum, curr_col, + \open_paren, '', token) - " Go back to the beginning of the loop and handle the opening paren - continue + if lnum_new == 0 + return s:IndentError('Matching token not found', + \token, stack) + else + if lnum_new != lnum + call s:Log(' Tokenize the opening paren <<<<') + let [lnum, indtokens] = s:TokenizeLine(lnum_new, 'up') + call s:Log(' >>>>') + endif + + let [success, i] = s:GetIndtokenAtCol(indtokens, col_new) + if !success | return i | endif + let [token, curr_vcol, curr_col] = indtokens[i] + call s:Log(' Match in line ' . lnum_new . ': ' . + \string(indtokens[i])) + + " Go back to the beginning of the loop and handle the opening paren + continue + endif endif - elseif token == '>>' - call s:Push(stack, token) - elseif token == ';' if empty(stack) @@ -1323,7 +1335,10 @@ function! ErlangIndent() let curr_col = len(ml[1]) - if ml[2] == 'end' + " If we can be sure that there is synchronization in the Erlang + " syntax, we use searchpair to make the script quicker. + if ml[2] == 'end' && exists('b:erlang_syntax_synced') + let [lnum, col] = s:SearchEndPair(v:lnum, curr_col) if lnum == 0 diff --git a/runtime/lang/menu_ru_ru.koi8-r.vim b/runtime/lang/menu_ru_ru.koi8-r.vim index 0d4fbaa2ab..e66b728e7d 100644 --- a/runtime/lang/menu_ru_ru.koi8-r.vim +++ b/runtime/lang/menu_ru_ru.koi8-r.vim @@ -1,9 +1,10 @@ " Menu Translations: Russian -" Maintainer: vassily ragosin <vrr[at]users.sourceforge.net> -" Last Change: 26 Apr 2004 +" Maintainer: Sergey Alyoshin <alyoshin.s@gmail.com> +" Previous Maintainer: vassily ragosin <vrr[at]users.sourceforge.net> +" Last Change: 29 May 2013 " URL: cvs://cvs.sf.net:/cvsroot/ruvim/extras/menu/menu_ru_ru.vim " -" $Id: menu_ru_ru.koi8-r.vim,v 1.2 2004/06/16 11:19:21 vimboss Exp $ +" $Id: menu_ru_ru.vim,v 1.1 2004/06/13 16:09:10 vimboss Exp $ " " Adopted for RuVim project by Vassily Ragosin. " First translation: Tim Alexeevsky <realtim [at] mail.ru>, @@ -50,6 +51,7 @@ menutrans &About & " File menu menutrans &Open\.\.\.<Tab>:e &ïÔËÒÙÔØ\.\.\.<Tab>:e menutrans Sp&lit-Open\.\.\.<Tab>:sp ðÏ&ÄÅÌÉÔØ\ ÏËÎÏ\.\.\.<Tab>:sp +menutrans Open\ Tab\.\.\.<Tab>:tabnew ïÔËÒÙÔØ\ ×&ËÌÁÄËÕ\.\.\.<Tab>:tabnew menutrans &New<Tab>:enew &îÏ×ÙÊ<Tab>:enew menutrans &Close<Tab>:close &úÁËÒÙÔØ<Tab>:close "-------------------- @@ -77,51 +79,57 @@ menutrans Put\ &After<Tab>]p menutrans &Delete<Tab>x &õÄÁÌÉÔØ<Tab>x menutrans &Select\ All<Tab>ggVG ÷&ÙÄÅÌÉÔØ\ ×Ó£<Tab>ggVG "-------------------- +" Athena GUI only +menutrans &Find<Tab>/ &ðÏÉÓË<Tab>/ +menutrans Find\ and\ Rep&lace<Tab>:%s ðÏÉÓË\ É\ &ÚÁÍÅÎÁ<Tab>:%s +" End Athena GUI only menutrans &Find\.\.\.<Tab>/ &ðÏÉÓË\.\.\.<Tab>/ menutrans Find\ and\ Rep&lace\.\.\. ðÏÉÓË\ É\ &ÚÁÍÅÎÁ\.\.\. menutrans Find\ and\ Rep&lace\.\.\.<Tab>:%s ðÏÉÓË\ É\ &ÚÁÍÅÎÁ\.\.\.<Tab>:%s -menutrans Find\ and\ Rep&lace\.\.\.<Tab>:s ðÏÉÓË\ É\ &ÚÁÍÅÎÁ\.\.\.<Tab>:s +menutrans Find\ and\ Rep&lace\.\.\.<Tab>:s ðÏÉÓË\ É\ &ÚÁÍÅÎÁ\.\.\.<Tab>:s "-------------------- menutrans Settings\ &Window ïËÎÏ\ ÎÁÓÔÒÏÊËÉ\ &ÏÐÃÉÊ +menutrans Startup\ &Settings îÁÓÔÒÏÊËÉ\ ÚÁÐÕÓ&ËÁ menutrans &Global\ Settings &çÌÏÂÁÌØÎÙÅ\ ÎÁÓÔÒÏÊËÉ menutrans F&ile\ Settings îÁÓÔÒÏÊËÉ\ &ÆÁÊÌÏ× menutrans C&olor\ Scheme &ã×ÅÔÏ×ÁÑ\ ÓÈÅÍÁ menutrans &Keymap òÁÓËÌÁÄËÁ\ ËÌ&Á×ÉÁÔÕÒÙ menutrans Select\ Fo&nt\.\.\. ÷ÙÂÏÒ\ &ÛÒÉÆÔÁ\.\.\. ">>>----------------- Edit/Global settings -menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! ðÏÄÓ×ÅÔËÁ\ &ÎÁÊÄÅÎÎÙÈ\ ÓÏÏÔ×ÅÔÓÔ×ÉÊ<Tab>:set\ hls! -menutrans Toggle\ &Ignore-case<Tab>:set\ ic! &òÅÇÉÓÔÒÏÎÅÚÁ×ÉÓÉÍÙÊ\ ÐÏÉÓË<Tab>:set\ ic! -menutrans Toggle\ &Showmatch<Tab>:set\ sm! ðÏËÁÚÙ×ÁÔØ\ ÐÁÒÎÙÅ\ &ÜÌÅÍÅÎÔÙ<Tab>:set\ sm! -menutrans &Context\ lines óÔÒ&ÏË\ ×ÏËÒÕÇ\ ËÕÒÓÏÒÁ -menutrans &Virtual\ Edit ÷ÉÒ&ÔÕÁÌØÎÏÅ\ ÒÅÄÁËÔÉÒÏ×ÁÎÉÅ -menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! òÅÖÉÍ\ &÷ÓÔÁ×ËÉ<Tab>:set\ im! -menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! &óÏ×ÍÅÓÔÉÍÏÓÔØ\ Ó\ Vi<Tab>:set\ cp! -menutrans Search\ &Path\.\.\. &ðÕÔØ\ ÄÌÑ\ ÐÏÉÓËÁ\ ÆÁÊÌÏ×\.\.\. -menutrans Ta&g\ Files\.\.\. æÁÊÌÙ\ &ÍÅÔÏË\.\.\. -" -menutrans Toggle\ &Toolbar &éÎÓÔÒÕÍÅÎÔÁÌØÎÁÑ\ ÐÁÎÅÌØ -menutrans Toggle\ &Bottom\ Scrollbar ðÏÌÏÓÁ\ ÐÒÏËÒÕÔËÉ\ ×ÎÉ&ÚÕ -menutrans Toggle\ &Left\ Scrollbar ðÏÌÏÓÁ\ ÐÒÏËÒÕÔËÉ\ Ó&ÌÅ×Á -menutrans Toggle\ &Right\ Scrollbar ðÏÌÏÓÁ\ ÐÒÏËÒÕÔËÉ\ ÓÐÒ&Á×Á +menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! ðÏÄÓ×ÅÔËÁ\ &ÎÁÊÄÅÎÎÙÈ\ ÓÏÏÔ×ÅÔÓÔ×ÉÊ<Tab>:set\ hls! +menutrans Toggle\ &Ignore-case<Tab>:set\ ic! &òÅÇÉÓÔÒÏÎÅÚÁ×ÉÓÉÍÙÊ\ ÐÏÉÓË<Tab>:set\ ic! +menutrans Toggle\ &Showmatch<Tab>:set\ sm! ðÏËÁÚÙ×ÁÔØ\ ÐÁÒÎÙÅ\ &ÜÌÅÍÅÎÔÙ<Tab>:set\ sm! +menutrans &Context\ lines óÔÒ&ÏË\ ×ÏËÒÕÇ\ ËÕÒÓÏÒÁ +menutrans &Virtual\ Edit ÷ÉÒ&ÔÕÁÌØÎÏÅ\ ÒÅÄÁËÔÉÒÏ×ÁÎÉÅ +menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! òÅÖÉÍ\ &÷ÓÔÁ×ËÉ<Tab>:set\ im! +menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! &óÏ×ÍÅÓÔÉÍÏÓÔØ\ Ó\ Vi<Tab>:set\ cp! +menutrans Search\ &Path\.\.\. &ðÕÔØ\ ÄÌÑ\ ÐÏÉÓËÁ\ ÆÁÊÌÏ×\.\.\. +menutrans Ta&g\ Files\.\.\. æÁÊÌÙ\ &ÍÅÔÏË\.\.\. +" +menutrans Toggle\ &Toolbar &éÎÓÔÒÕÍÅÎÔÁÌØÎÁÑ\ ÐÁÎÅÌØ +menutrans Toggle\ &Bottom\ Scrollbar ðÏÌÏÓÁ\ ÐÒÏËÒÕÔËÉ\ ×ÎÉ&ÚÕ +menutrans Toggle\ &Left\ Scrollbar ðÏÌÏÓÁ\ ÐÒÏËÒÕÔËÉ\ Ó&ÌÅ×Á +menutrans Toggle\ &Right\ Scrollbar ðÏÌÏÓÁ\ ÐÒÏËÒÕÔËÉ\ ÓÐÒ&Á×Á ">>>->>>------------- Edit/Global settings/Virtual edit -menutrans Never ÷ÙËÌÀÞÅÎÏ -menutrans Block\ Selection ðÒÉ\ ×ÙÄÅÌÅÎÉÉ\ ÂÌÏËÁ -menutrans Insert\ mode ÷\ ÒÅÖÉÍÅ\ ÷ÓÔÁ×ËÉ -menutrans Block\ and\ Insert ðÒÉ\ ×ÙÄÅÌÅÎÉÉ\ ÂÌÏËÁ\ É\ ×\ ÒÅÖÉÍÅ\ ÷ÓÔÁ×ËÉ -menutrans Always ÷ËÌÀÞÅÎÏ\ ×ÓÅÇÄÁ +menutrans Never ÷ÙËÌÀÞÅÎÏ +menutrans Block\ Selection ðÒÉ\ ×ÙÄÅÌÅÎÉÉ\ ÂÌÏËÁ +menutrans Insert\ mode ÷\ ÒÅÖÉÍÅ\ ÷ÓÔÁ×ËÉ +menutrans Block\ and\ Insert ðÒÉ\ ×ÙÄÅÌÅÎÉÉ\ ÂÌÏËÁ\ É\ ×\ ÒÅÖÉÍÅ\ ÷ÓÔÁ×ËÉ +menutrans Always ÷ËÌÀÞÅÎÏ\ ×ÓÅÇÄÁ ">>>----------------- Edit/File settings -menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! &îÕÍÅÒÁÃÉÑ\ ÓÔÒÏË<Tab>:set\ nu! -menutrans Toggle\ &List\ Mode<Tab>:set\ list! ïÔÏÂÒÁ&ÖÅÎÉÅ\ ÎÅ×ÉÄÉÍÙÈ\ ÓÉÍ×ÏÌÏ×<Tab>:set\ list! -menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! &ðÅÒÅÎÏÓ\ ÄÌÉÎÎÙÈ\ ÓÔÒÏË<Tab>:set\ wrap! -menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! ðÅÒÅÎÏÓ\ &ÃÅÌÙÈ\ ÓÌÏ×<Tab>:set\ lbr! -menutrans Toggle\ &expand-tab<Tab>:set\ et! ðÒÏ&ÂÅÌÙ\ ×ÍÅÓÔÏ\ ÔÁÂÕÌÑÃÉÉ<Tab>:set\ et! -menutrans Toggle\ &auto-indent<Tab>:set\ ai! á×ÔÏÍÁÔÉÞÅÓËÏÅ\ ÆÏÒÍÁÔÉÒÏ×ÁÎÉÅ\ &ÏÔÓÔÕÐÏ×<Tab>:set\ ai! -menutrans Toggle\ &C-indenting<Tab>:set\ cin! æÏÒÍÁÔÉÒÏ×ÁÎÉÅ\ ÏÔÓÔÕÐÏ×\ ×\ &ÓÔÉÌÅ\ C<Tab>:set\ cin! +menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! &îÕÍÅÒÁÃÉÑ\ ÓÔÒÏË<Tab>:set\ nu! +menutrans Toggle\ relati&ve\ Line\ Numbering<Tab>:set\ rnu! ïÔÎÏÓÉÔÅ&ÌØÎÁÑ\ ÎÕÍÅÒÁÃÉÑ\ ÓÔÒÏË<Tab>:set\ nru! +menutrans Toggle\ &List\ Mode<Tab>:set\ list! ïÔÏÂÒÁ&ÖÅÎÉÅ\ ÎÅ×ÉÄÉÍÙÈ\ ÓÉÍ×ÏÌÏ×<Tab>:set\ list! +menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! &ðÅÒÅÎÏÓ\ ÄÌÉÎÎÙÈ\ ÓÔÒÏË<Tab>:set\ wrap! +menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! ðÅÒÅÎÏÓ\ &ÃÅÌÙÈ\ ÓÌÏ×<Tab>:set\ lbr! +menutrans Toggle\ &expand-tab<Tab>:set\ et! ðÒÏ&ÂÅÌÙ\ ×ÍÅÓÔÏ\ ÔÁÂÕÌÑÃÉÉ<Tab>:set\ et! +menutrans Toggle\ &auto-indent<Tab>:set\ ai! á×ÔÏÍÁÔÉÞÅÓËÏÅ\ ÆÏÒÍÁÔÉÒÏ×ÁÎÉÅ\ &ÏÔÓÔÕÐÏ×<Tab>:set\ ai! +menutrans Toggle\ &C-indenting<Tab>:set\ cin! æÏÒÍÁÔÉÒÏ×ÁÎÉÅ\ ÏÔÓÔÕÐÏ×\ ×\ &ÓÔÉÌÅ\ C<Tab>:set\ cin! ">>>--- -menutrans &Shiftwidth ÷ÅÌÉ&ÞÉÎÁ\ ÏÔÓÔÕÐÁ -menutrans Soft\ &Tabstop ûÉÒÉÎÁ\ &ÔÁÂÕÌÑÃÉÉ -menutrans Te&xt\ Width\.\.\. &ûÉÒÉÎÁ\ ÔÅËÓÔÁ\.\.\. -menutrans &File\ Format\.\.\. &æÏÒÍÁÔ\ ÆÁÊÌÁ\.\.\. +menutrans &Shiftwidth ÷ÅÌÉ&ÞÉÎÁ\ ÏÔÓÔÕÐÁ +menutrans Soft\ &Tabstop ûÉÒÉÎÁ\ &ÔÁÂÕÌÑÃÉÉ +menutrans Te&xt\ Width\.\.\. &ûÉÒÉÎÁ\ ÔÅËÓÔÁ\.\.\. +menutrans &File\ Format\.\.\. &æÏÒÍÁÔ\ ÆÁÊÌÁ\.\.\. " " " @@ -131,6 +139,7 @@ menutrans Jump\ &back<Tab>^T & menutrans Build\ &Tags\ File óÏÚÄÁÔØ\ &ÆÁÊÌ\ ÍÅÔÏË "------------------- menutrans &Folding òÁÂÏÔÁ\ ÓÏ\ &ÓËÌÁÄËÁÍÉ +menutrans &Spelling ðÒ&Á×ÏÐÉÓÁÎÉÅ menutrans &Diff &ïÔÌÉÞÉÑ\ (diff) "------------------- menutrans &Make<Tab>:make ëÏ&ÍÐÉÌÑÃÉÑ<Tab>:make @@ -141,10 +150,26 @@ menutrans &Previous\ Error<Tab>:cp menutrans &Older\ List<Tab>:cold âÏÌÅÅ\ ÓÔÁÒ&ÙÊ\ ÓÐÉÓÏË\ ÏÛÉÂÏË<Tab>:cold menutrans N&ewer\ List<Tab>:cnew âÏÌÅÅ\ Ó×Å&ÖÉÊ\ ÓÐÉÓÏË\ ÏÛÉÂÏË<Tab>:cnew menutrans Error\ &Window ïË&ÎÏ\ ÏÛÉÂÏË -menutrans &Set\ Compiler ÷ÙÂÏÒ\ &ËÏÍÐÉÌÑÔÏÒÁ +menutrans Se&T\ Compiler ÷ÙÂÏÒ\ &ËÏÍÐÉÌÑÔÏÒÁ "------------------- menutrans &Convert\ to\ HEX<Tab>:%!xxd ð&ÅÒÅ×ÅÓÔÉ\ ×\ HEX<Tab>:%!xxd menutrans Conve&rt\ back<Tab>:%!xxd\ -r ðÅÒÅ×ÅÓÔÉ\ É&Ú\ HEX<Tab>:%!xxd\ -r +">>>---------------- Tools/Spelling +menutrans &Spell\ Check\ On &÷ËÌ\ ÐÒÏ×ÅÒËÕ\ ÐÒÁ×ÏÐÉÓÁÎÉÑ +menutrans Spell\ Check\ &Off ÷Ù&ËÌ\ ÐÒÏ×ÅÒËÕ\ ÐÒÁ×ÏÐÉÓÁÎÉÑ +menutrans To\ &Next\ error<Tab>]s &óÌÅÄÕÀÝÁÑ\ ÏÛÉÂËÁ +menutrans To\ &Previous\ error<Tab>[s &ðÒÅÄÙÄÕÝÁÑ\ ÏÛÉÂËÁ +menutrans Suggest\ &Corrections<Tab>z= ðÒÅÄÌÏÖÉÔØ\ ÉÓÐ&ÒÁ×ÌÅÎÉÑ +menutrans &Repeat\ correction<Tab>:spellrepall ðÏ×&ÔÏÒÉÔØ\ ÉÓÐÒÁ×ÌÅÎÉÅ\ ÄÌÑ\ ×ÓÅÈ +"------------------- +menutrans Set\ language\ to\ "en" õÓÔÁÎÏ×ÉÔØ\ ÑÚÙË\ "en" +menutrans Set\ language\ to\ "en_au" õÓÔÁÎÏ×ÉÔØ\ ÑÚÙË\ "en_au" +menutrans Set\ language\ to\ "en_ca" õÓÔÁÎÏ×ÉÔØ\ ÑÚÙË\ "en_ca" +menutrans Set\ language\ to\ "en_gb" õÓÔÁÎÏ×ÉÔØ\ ÑÚÙË\ "en_gb" +menutrans Set\ language\ to\ "en_nz" õÓÔÁÎÏ×ÉÔØ\ ÑÚÙË\ "en_nz" +menutrans Set\ language\ to\ "en_us" õÓÔÁÎÏ×ÉÔØ\ ÑÚÙË\ "en_us" +menutrans &Find\ More\ Languages &îÁÊÔÉ\ ÂÏÌØÛÅ\ ÑÚÙËÏ× +let g:menutrans_set_lang_to = 'õÓÔÁÎÏ×ÉÔØ ÑÚÙË' ">>>---------------- Folds menutrans &Enable/Disable\ folds<Tab>zi ÷ËÌ/×ÙËÌ\ &ÓËÌÁÄËÉ<Tab>zi menutrans &View\ Cursor\ Line<Tab>zv ïÔËÒÙÔØ\ ÓÔÒÏËÕ\ Ó\ &ËÕÒÓÏÒÏÍ<Tab>zv @@ -219,7 +244,7 @@ menutrans M&in\ Height<Tab>^W1_ menutrans Max\ &Width<Tab>^W\| íÁËÓÉÍÁÌØÎÁÑ\ &ÛÉÒÉÎÁ<Tab>^W\| menutrans Min\ Widt&h<Tab>^W1\| íÉÎÉÍÁÌ&ØÎÁÑ\ ÛÉÒÉÎÁ<Tab>^W1\| ">>>----------------- Window/Move To -menutrans &Top<Tab>^WK îÁ&×ÅÒÈ<Tab>^WK +menutrans &Top<Tab>^WK ÷&×ÅÒÈ<Tab>^WK menutrans &Bottom<Tab>^WJ ÷&ÎÉÚ<Tab>^WJ menutrans &Left\ side<Tab>^WH ÷&ÌÅ×Ï<Tab>^WH menutrans &Right\ side<Tab>^WL ÷&ÐÒÁ×Ï<Tab>^WL diff --git a/runtime/lang/menu_ru_ru.vim b/runtime/lang/menu_ru_ru.vim index 23a111ab75..69616083b0 100644 --- a/runtime/lang/menu_ru_ru.vim +++ b/runtime/lang/menu_ru_ru.vim @@ -1,6 +1,7 @@ " Menu Translations: Russian -" Maintainer: vassily ragosin <vrr[at]users.sourceforge.net> -" Last Change: 26 Apr 2004 +" Maintainer: Sergey Alyoshin <alyoshin.s@gmail.com> +" Previous Maintainer: vassily ragosin <vrr[at]users.sourceforge.net> +" Last Change: 29 May 2013 " URL: cvs://cvs.sf.net:/cvsroot/ruvim/extras/menu/menu_ru_ru.vim " " $Id: menu_ru_ru.vim,v 1.1 2004/06/13 16:09:10 vimboss Exp $ @@ -50,6 +51,7 @@ menutrans &About &ЗаÑтавка " File menu menutrans &Open\.\.\.<Tab>:e &Открыть\.\.\.<Tab>:e menutrans Sp&lit-Open\.\.\.<Tab>:sp По&делить\ окно\.\.\.<Tab>:sp +menutrans Open\ Tab\.\.\.<Tab>:tabnew Открыть\ в&кладку\.\.\.<Tab>:tabnew menutrans &New<Tab>:enew &Ðовый<Tab>:enew menutrans &Close<Tab>:close &Закрыть<Tab>:close "-------------------- @@ -77,51 +79,57 @@ menutrans Put\ &After<Tab>]p Вклеить\ по&Ñле<Tab>]p menutrans &Delete<Tab>x &Удалить<Tab>x menutrans &Select\ All<Tab>ggVG Ð’&ыделить\ вÑÑ‘<Tab>ggVG "-------------------- +" Athena GUI only +menutrans &Find<Tab>/ &ПоиÑк<Tab>/ +menutrans Find\ and\ Rep&lace<Tab>:%s ПоиÑк\ и\ &замена<Tab>:%s +" End Athena GUI only menutrans &Find\.\.\.<Tab>/ &ПоиÑк\.\.\.<Tab>/ -menutrans Find\ and\ Rep&lace\.\.\. ПоиÑк\ и\ &замена\.\.\. -menutrans Find\ and\ Rep&lace\.\.\.<Tab>:%s ПоиÑк\ и\ &замена\.\.\.<Tab>:%s -menutrans Find\ and\ Rep&lace\.\.\.<Tab>:s ПоиÑк\ и\ &замена\.\.\.<Tab>:s +menutrans Find\ and\ Rep&lace\.\.\. ПоиÑк\ и\ &замена\.\.\. +menutrans Find\ and\ Rep&lace\.\.\.<Tab>:%s ПоиÑк\ и\ &замена\.\.\.<Tab>:%s +menutrans Find\ and\ Rep&lace\.\.\.<Tab>:s ПоиÑк\ и\ &замена\.\.\.<Tab>:s "-------------------- menutrans Settings\ &Window Окно\ наÑтройки\ &опций +menutrans Startup\ &Settings ÐаÑтройки\ запуÑ&ка menutrans &Global\ Settings &Глобальные\ наÑтройки menutrans F&ile\ Settings ÐаÑтройки\ &файлов menutrans C&olor\ Scheme &ЦветоваÑ\ Ñхема menutrans &Keymap РаÑкладка\ кл&авиатуры menutrans Select\ Fo&nt\.\.\. Выбор\ &шрифта\.\.\. ">>>----------------- Edit/Global settings -menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! ПодÑветка\ &найденных\ ÑоответÑтвий<Tab>:set\ hls! -menutrans Toggle\ &Ignore-case<Tab>:set\ ic! &РегиÑтронезавиÑимый\ поиÑк<Tab>:set\ ic! -menutrans Toggle\ &Showmatch<Tab>:set\ sm! Показывать\ парные\ &Ñлементы<Tab>:set\ sm! -menutrans &Context\ lines Стр&ок\ вокруг\ курÑора -menutrans &Virtual\ Edit Вир&туальное\ редактирование -menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! Режим\ &Ð’Ñтавки<Tab>:set\ im! -menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! &СовмеÑтимоÑÑ‚ÑŒ\ Ñ\ Vi<Tab>:set\ cp! -menutrans Search\ &Path\.\.\. &Путь\ длÑ\ поиÑка\ файлов\.\.\. -menutrans Ta&g\ Files\.\.\. Файлы\ &меток\.\.\. -" -menutrans Toggle\ &Toolbar &ИнÑтрументальнаÑ\ панель -menutrans Toggle\ &Bottom\ Scrollbar ПолоÑа\ прокрутки\ вни&зу -menutrans Toggle\ &Left\ Scrollbar ПолоÑа\ прокрутки\ Ñ&лева -menutrans Toggle\ &Right\ Scrollbar ПолоÑа\ прокрутки\ Ñпр&ава +menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! ПодÑветка\ &найденных\ ÑоответÑтвий<Tab>:set\ hls! +menutrans Toggle\ &Ignore-case<Tab>:set\ ic! &РегиÑтронезавиÑимый\ поиÑк<Tab>:set\ ic! +menutrans Toggle\ &Showmatch<Tab>:set\ sm! Показывать\ парные\ &Ñлементы<Tab>:set\ sm! +menutrans &Context\ lines Стр&ок\ вокруг\ курÑора +menutrans &Virtual\ Edit Вир&туальное\ редактирование +menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! Режим\ &Ð’Ñтавки<Tab>:set\ im! +menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! &СовмеÑтимоÑÑ‚ÑŒ\ Ñ\ Vi<Tab>:set\ cp! +menutrans Search\ &Path\.\.\. &Путь\ длÑ\ поиÑка\ файлов\.\.\. +menutrans Ta&g\ Files\.\.\. Файлы\ &меток\.\.\. +" +menutrans Toggle\ &Toolbar &ИнÑтрументальнаÑ\ панель +menutrans Toggle\ &Bottom\ Scrollbar ПолоÑа\ прокрутки\ вни&зу +menutrans Toggle\ &Left\ Scrollbar ПолоÑа\ прокрутки\ Ñ&лева +menutrans Toggle\ &Right\ Scrollbar ПолоÑа\ прокрутки\ Ñпр&ава ">>>->>>------------- Edit/Global settings/Virtual edit -menutrans Never Выключено -menutrans Block\ Selection При\ выделении\ блока -menutrans Insert\ mode Ð’\ режиме\ Ð’Ñтавки -menutrans Block\ and\ Insert При\ выделении\ блока\ и\ в\ режиме\ Ð’Ñтавки -menutrans Always Включено\ вÑегда +menutrans Never Выключено +menutrans Block\ Selection При\ выделении\ блока +menutrans Insert\ mode Ð’\ режиме\ Ð’Ñтавки +menutrans Block\ and\ Insert При\ выделении\ блока\ и\ в\ режиме\ Ð’Ñтавки +menutrans Always Включено\ вÑегда ">>>----------------- Edit/File settings -menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! &ÐумерациÑ\ Ñтрок<Tab>:set\ nu! -menutrans Toggle\ &List\ Mode<Tab>:set\ list! Отобра&жение\ невидимых\ Ñимволов<Tab>:set\ list! -menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! &ПереноÑ\ длинных\ Ñтрок<Tab>:set\ wrap! -menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! ПереноÑ\ &целых\ Ñлов<Tab>:set\ lbr! -menutrans Toggle\ &expand-tab<Tab>:set\ et! Про&белы\ вмеÑто\ табулÑции<Tab>:set\ et! -menutrans Toggle\ &auto-indent<Tab>:set\ ai! ÐвтоматичеÑкое\ форматирование\ &отÑтупов<Tab>:set\ ai! -menutrans Toggle\ &C-indenting<Tab>:set\ cin! Форматирование\ отÑтупов\ в\ &Ñтиле\ C<Tab>:set\ cin! +menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! &ÐумерациÑ\ Ñтрок<Tab>:set\ nu! +menutrans Toggle\ relati&ve\ Line\ Numbering<Tab>:set\ rnu! ОтноÑите&льнаÑ\ нумерациÑ\ Ñтрок<Tab>:set\ nru! +menutrans Toggle\ &List\ Mode<Tab>:set\ list! Отобра&жение\ невидимых\ Ñимволов<Tab>:set\ list! +menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! &ПереноÑ\ длинных\ Ñтрок<Tab>:set\ wrap! +menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! ПереноÑ\ &целых\ Ñлов<Tab>:set\ lbr! +menutrans Toggle\ &expand-tab<Tab>:set\ et! Про&белы\ вмеÑто\ табулÑции<Tab>:set\ et! +menutrans Toggle\ &auto-indent<Tab>:set\ ai! ÐвтоматичеÑкое\ форматирование\ &отÑтупов<Tab>:set\ ai! +menutrans Toggle\ &C-indenting<Tab>:set\ cin! Форматирование\ отÑтупов\ в\ &Ñтиле\ C<Tab>:set\ cin! ">>>--- -menutrans &Shiftwidth Вели&чина\ отÑтупа -menutrans Soft\ &Tabstop Ширина\ &табулÑции -menutrans Te&xt\ Width\.\.\. &Ширина\ текÑта\.\.\. -menutrans &File\ Format\.\.\. &Формат\ файла\.\.\. +menutrans &Shiftwidth Вели&чина\ отÑтупа +menutrans Soft\ &Tabstop Ширина\ &табулÑции +menutrans Te&xt\ Width\.\.\. &Ширина\ текÑта\.\.\. +menutrans &File\ Format\.\.\. &Формат\ файла\.\.\. " " " @@ -131,6 +139,7 @@ menutrans Jump\ &back<Tab>^T &ВернутьÑÑ\ назад<Tab>^T menutrans Build\ &Tags\ File Создать\ &файл\ меток "------------------- menutrans &Folding Работа\ Ñо\ &Ñкладками +menutrans &Spelling Пр&авопиÑание menutrans &Diff &ОтличиÑ\ (diff) "------------------- menutrans &Make<Tab>:make Ко&мпилÑциÑ<Tab>:make @@ -141,10 +150,26 @@ menutrans &Previous\ Error<Tab>:cp П&редыдущаÑ\ ошибка<Tab>:cp menutrans &Older\ List<Tab>:cold Более\ Ñтар&ый\ ÑпиÑок\ ошибок<Tab>:cold menutrans N&ewer\ List<Tab>:cnew Более\ Ñве&жий\ ÑпиÑок\ ошибок<Tab>:cnew menutrans Error\ &Window Ок&но\ ошибок -menutrans &Set\ Compiler Выбор\ &компилÑтора +menutrans Se&T\ Compiler Выбор\ &компилÑтора "------------------- menutrans &Convert\ to\ HEX<Tab>:%!xxd П&еревеÑти\ в\ HEX<Tab>:%!xxd menutrans Conve&rt\ back<Tab>:%!xxd\ -r ПеревеÑти\ и&з\ HEX<Tab>:%!xxd\ -r +">>>---------------- Tools/Spelling +menutrans &Spell\ Check\ On &Вкл\ проверку\ правопиÑÐ°Ð½Ð¸Ñ +menutrans Spell\ Check\ &Off Ð’Ñ‹&кл\ проверку\ правопиÑÐ°Ð½Ð¸Ñ +menutrans To\ &Next\ error<Tab>]s &СледующаÑ\ ошибка +menutrans To\ &Previous\ error<Tab>[s &ПредыдущаÑ\ ошибка +menutrans Suggest\ &Corrections<Tab>z= Предложить\ иÑп&Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ +menutrans &Repeat\ correction<Tab>:spellrepall Пов&торить\ иÑправление\ длÑ\ вÑех +"------------------- +menutrans Set\ language\ to\ "en" УÑтановить\ Ñзык\ "en" +menutrans Set\ language\ to\ "en_au" УÑтановить\ Ñзык\ "en_au" +menutrans Set\ language\ to\ "en_ca" УÑтановить\ Ñзык\ "en_ca" +menutrans Set\ language\ to\ "en_gb" УÑтановить\ Ñзык\ "en_gb" +menutrans Set\ language\ to\ "en_nz" УÑтановить\ Ñзык\ "en_nz" +menutrans Set\ language\ to\ "en_us" УÑтановить\ Ñзык\ "en_us" +menutrans &Find\ More\ Languages &Ðайти\ больше\ Ñзыков +let g:menutrans_set_lang_to = 'УÑтановить Ñзык' ">>>---------------- Folds menutrans &Enable/Disable\ folds<Tab>zi Вкл/выкл\ &Ñкладки<Tab>zi menutrans &View\ Cursor\ Line<Tab>zv Открыть\ Ñтроку\ Ñ\ &курÑором<Tab>zv @@ -219,7 +244,7 @@ menutrans M&in\ Height<Tab>^W1_ МинимальнаÑ\ выÑо&та<Tab>^W1 menutrans Max\ &Width<Tab>^W\| МакÑимальнаÑ\ &ширина<Tab>^W\| menutrans Min\ Widt&h<Tab>^W1\| Минимал&ьнаÑ\ ширина<Tab>^W1\| ">>>----------------- Window/Move To -menutrans &Top<Tab>^WK Ðа&верх<Tab>^WK +menutrans &Top<Tab>^WK Ð’&верх<Tab>^WK menutrans &Bottom<Tab>^WJ Ð’&низ<Tab>^WJ menutrans &Left\ side<Tab>^WH Ð’&лево<Tab>^WH menutrans &Right\ side<Tab>^WL Ð’&право<Tab>^WL diff --git a/runtime/scripts.vim b/runtime/scripts.vim index 459b03064b..251e4c8f08 100644 --- a/runtime/scripts.vim +++ b/runtime/scripts.vim @@ -152,6 +152,10 @@ if s:line1 =~ "^#!" elseif s:name =~ 'cfengine' set ft=cfengine + " Erlang scripts + elseif s:name =~ 'escript' + set ft=erlang + endif unlet s:name @@ -333,6 +337,11 @@ else \ && s:line3 =~ '^Each sample counts as .* seconds.$' set ft=gprof + " Erlang terms + " (See also: http://www.gnu.org/software/emacs/manual/html_node/emacs/Choosing-Modes.html#Choosing-Modes) + elseif s:line1 =~? '-\*-.*erlang.*-\*-' + set ft=erlang + " CVS diff else let s:lnum = 1 diff --git a/runtime/syntax/c.vim b/runtime/syntax/c.vim index ceb14103b9..6a62fe3762 100644 --- a/runtime/syntax/c.vim +++ b/runtime/syntax/c.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: C " Maintainer: Bram Moolenaar <Bram@vim.org> -" Last Change: 2013 Mar 13 +" Last Change: 2013 Jun 06 " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") diff --git a/runtime/syntax/erlang.vim b/runtime/syntax/erlang.vim index f34a004df6..5eb61440cc 100644 --- a/runtime/syntax/erlang.vim +++ b/runtime/syntax/erlang.vim @@ -1,23 +1,32 @@ " Vim syntax file " Language: Erlang (http://www.erlang.org) " Maintainer: Csaba Hoch <csaba.hoch@gmail.com> -" Former Maintainer: KreÄ…imir Marľić (Kresimir Marzic) <kmarzic@fly.srk.fer.hr> -" Last Update: 2013-Mar-07 +" Last Update: 2013-Jun-01 " License: Vim license " URL: https://github.com/hcs42/vim-erlang +" Acknowledgements: This script was originally created by Kresimir Marzic [1]. +" The script was then revamped by Csaba Hoch [2]. During the revamp, the new +" highlighting style and some code was taken from the Erlang syntax script +" that is part of vimerl [3], created by Oscar Hellström [4] and improved by +" Ricardo Catalinas Jiménez [5]. + +" [1]: KreÄ…imir Marľić (Kresimir Marzic) <kmarzic@fly.srk.fer.hr> +" [2]: Csaba Hoch <csaba.hoch@gmail.com> +" [3]: https://github.com/jimenezrick/vimerl +" [4]: Oscar Hellström <oscar@oscarh.net> (http://oscar.hellstrom.st) +" [5]: Ricardo Catalinas Jiménez <jimenezrick@gmail.com> + " Customization: " -" There are two optional sets of highlighting: -" -" 1. The BIFs (built-in functions) are highlighted by default. To disable -" this, put the following line in your vimrc: +" To use the old highlighting style, add this to your .vimrc: " -" let g:erlang_highlight_bifs = 0 +" let g:erlang_old_style_highlight = 1 " -" 2. To enable highlighting some special atoms, put this in your vimrc: +" To highlight further module attributes, add them to +" ~/.vim/after/syntax/erlang.vim: " -" let g:erlang_highlight_special_atoms = 1 +" syn keyword erlangAttribute myattr1 myattr2 contained " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded @@ -35,94 +44,108 @@ if version >= 600 endif " Comments -syn match erlangComment '%.*$' contains=erlangCommentAnnotation,erlangTodo -syn match erlangCommentAnnotation ' \@<=@\%(clear\|docfile\|end\|headerfile\|todo\|TODO\|type\|author\|copyright\|doc\|reference\|see\|since\|title\|version\|deprecated\|hidden\|private\|equiv\|spec\|throws\)' contained -syn match erlangCommentAnnotation /`[^']*'/ contained -syn keyword erlangTodo TODO FIXME XXX contained +syn match erlangComment '%.*$' contains=erlangCommentAnnotation,erlangTodo +syn match erlangCommentAnnotation ' \@<=@\%(clear\|docfile\|end\|headerfile\|todo\|TODO\|type\|author\|copyright\|doc\|reference\|see\|since\|title\|version\|deprecated\|hidden\|private\|equiv\|spec\|throws\)' contained +syn match erlangCommentAnnotation /`[^']*'/ contained +syn keyword erlangTodo TODO FIXME XXX contained +syn match erlangShebang '^#!.*' " Numbers (minimum base is 2, maximum is 36.) -syn match erlangNumberInteger '\<\d\+\>' -syn match erlangNumberInteger '\<\%([2-9]\|[12]\d\|3[0-6]\)\+#[[:alnum:]]\+\>' -syn match erlangNumberFloat '\<\d\+\.\d\+\%([eE][+-]\=\d\+\)\=\>' +syn match erlangNumberInteger '\<\d\+\>' +syn match erlangNumberInteger '\<\%([2-9]\|[12]\d\|3[0-6]\)\+#[[:alnum:]]\+\>' +syn match erlangNumberFloat '\<\d\+\.\d\+\%([eE][+-]\=\d\+\)\=\>' " Strings, atoms, characters -syn region erlangString start=/"/ end=/"/ contains=erlangStringModifier -syn region erlangQuotedAtom start=/'/ end=/'/ contains=erlangQuotedAtomModifier -syn match erlangStringModifier '\~\a\|\\\%(\o\{1,3}\|x\x\x\|x{\x\+}\|\^.\|.\)' contained -syn match erlangQuotedAtomModifier '\~\a\|\\\%(\o\{1,3}\|x\x\x\|x{\x\+}\|\^.\|.\)' contained -syn match erlangModifier '\$\%([^\\]\|\\\%(\o\{1,3}\|x\x\x\|x{\x\+}\|\^.\|.\)\)' - -" Operators -syn match erlangOperator '==\|=:=\|/=\|=/=\|<\|=<\|>\|>=\|++\|--\|=\|!\|<-\|+\|-\|\*\|\/' -syn keyword erlangOperator div rem or xor bor bxor bsl bsr and band not bnot andalso orelse - -" Separators -syn match erlangSeparator '(\|)\|{\|}\|\[\|]\||\|||\|;\|,\|?\|#' -syn match erlangRightArrow '->' - -" Functions call -syn match erlangFCall '\<\%(\a[[:alnum:]@]*\s*\.\s*\)*\a[[:alnum:]@]*\s*:\s*\a[[:alnum:]@]*\>' +syn region erlangString start=/"/ end=/"/ contains=erlangStringModifier +syn region erlangQuotedAtom start=/'/ end=/'/ contains=erlangQuotedAtomModifier +syn match erlangStringModifier '\~\a\|\\\%(\o\{1,3}\|x\x\x\|x{\x\+}\|\^.\|.\)' contained +syn match erlangQuotedAtomModifier '\~\a\|\\\%(\o\{1,3}\|x\x\x\|x{\x\+}\|\^.\|.\)' contained +syn match erlangModifier '\$\%([^\\]\|\\\%(\o\{1,3}\|x\x\x\|x{\x\+}\|\^.\|.\)\)' + +" Operators, separators +syn match erlangOperator '==\|=:=\|/=\|=/=\|<\|=<\|>\|>=\|++\|--\|=\|!\|<-\|+\|-\|\*\|\/' +syn keyword erlangOperator div rem or xor bor bxor bsl bsr and band not bnot andalso orelse +syn match erlangBracket '{\|}\|\[\|]\||\|||' +syn match erlangPipe '|' +syn match erlangRightArrow '->' + +" Atoms, function calls (order is important) +syn match erlangAtom '\<\l[[:alnum:]_@]*' contains=erlangBoolean +syn keyword erlangBoolean true false contained +syn match erlangLocalFuncCall '\<\a[[:alnum:]_@]*\>\%(\%(\s\|\n\|%.*\n\)*(\)\@=' contains=erlangBIF +syn match erlangLocalFuncRef '\<\a[[:alnum:]_@]*\>\%(\%(\s\|\n\|%.*\n\)*/\)\@=' +syn match erlangGlobalFuncCall '\<\%(\a[[:alnum:]_@]*\%(\s\|\n\|%.*\n\)*\.\%(\s\|\n\|%.*\n\)*\)*\a[[:alnum:]_@]*\%(\s\|\n\|%.*\n\)*:\%(\s\|\n\|%.*\n\)*\a[[:alnum:]_@]*\>\%(\%(\s\|\n\|%.*\n\)*(\)\@=' contains=erlangComment +syn match erlangGlobalFuncRef '\<\%(\a[[:alnum:]_@]*\%(\s\|\n\|%.*\n\)*\.\%(\s\|\n\|%.*\n\)*\)*\a[[:alnum:]_@]*\%(\s\|\n\|%.*\n\)*:\%(\s\|\n\|%.*\n\)*\a[[:alnum:]_@]*\>\%(\%(\s\|\n\|%.*\n\)*/\)\@=' contains=erlangComment + +" Variables, macros, records +syn match erlangVariable '\<[A-Z_][[:alnum:]_@]*' +syn match erlangMacro '??\=[[:alnum:]_@]\+' +syn match erlangMacro '\%(-define(\)\@<=[[:alnum:]_@]\+' +syn match erlangRecord '#\s*\l[[:alnum:]_@]*' + +" Bitstrings +syn match erlangBitType '\%(\/\%(\s\|\n\|%.*\n\)*\)\@<=\%(integer\|float\|binary\|bytes\|bitstring\|bits\|binary\|utf8\|utf16\|utf32\|signed\|unsigned\|big\|little\|native\|unit\)\%(\%(\s\|\n\|%.*\n\)*-\%(\s\|\n\|%.*\n\)*\%(integer\|float\|binary\|bytes\|bitstring\|bits\|binary\|utf8\|utf16\|utf32\|signed\|unsigned\|big\|little\|native\|unit\)\)*' contains=erlangComment " Constants and Directives -syn match erlangDirective '-\%(behaviour\|behavior\|compile\|define\|else\|endif\|export\|file\|ifdef\|ifndef\|import\|include_lib\|include\|module\|record\|undef\|author\|copyright\|doc\|vsn\|on_load\|export_type\)\>' +syn match erlangUnknownAttribute '-\%(\s\|\n\|%.*\n\)*\l[[:alnum:]_@]*' contains=erlangComment +syn match erlangAttribute '-\%(\s\|\n\|%.*\n\)*\%(behaviou\=r\|compile\|export\|file\|import\|module\|author\|copyright\|doc\|vsn\|on_load\|export_type\)' contains=erlangComment +syn match erlangInclude '-\%(\s\|\n\|%.*\n\)*\%(include\|include_lib\)\>' contains=erlangComment +syn match erlangRecordDef '-\%(\s\|\n\|%.*\n\)*record\>' contains=erlangComment +syn match erlangDefine '-\%(\s\|\n\|%.*\n\)*\%(define\|undef\)\>' contains=erlangComment +syn match erlangPreCondit '-\%(\s\|\n\|%.*\n\)*\%(ifdef\|ifndef\|else\|endif\)\>' contains=erlangComment +syn match erlangType '-\%(\s\|\n\|%.*\n\)*\%(spec\|type\|opaque\|callback\)\>' contains=erlangComment " Keywords -syn keyword erlangKeyword after begin case catch cond end fun if let of query receive when try -syn keyword erlangExtra true false - - -if !exists("g:erlang_highlight_bifs") || g:erlang_highlight_bifs == 1 - - " build-in-functions (BIFs) - syn keyword erlangBIF abs alive apply atom_to_binary atom_to_list binary_part binary_to_atom binary_to_existing_atom binary_to_float binary_to_integer bitstring_to_list binary_to_list binary_to_term bit_size byte_size check_old_code check_process_code concat_binary date delete_module demonitor disconnect_node element erase error exit float float_to_binary float_to_list garbage_collect get get_keys group_leader halt hd integer_to_binary integer_to_list iolist_to_binary iolist_size is_alive is_atom is_binary is_bitstring is_boolean is_float is_function is_integer is_list is_number is_pid is_port is_process_alive is_record is_reference is_tuple length link list_to_atom list_to_binary list_to_bitstring list_to_existing_atom list_to_float list_to_integer list_to_pid list_to_tuple load_module make_ref max min module_loaded monitor monitor_node node nodes now open_port pid_to_list port_close port_command port_connect pre_loaded process_flag process_flag process_info process purge_module put register registered round self setelement size spawn spawn_link spawn_monitor spawn_opt split_binary statistics term_to_binary throw time tl trunc tuple_size tuple_to_list unlink unregister whereis - -endif - - -if exists("g:erlang_highlight_special_atoms") && g:erlang_highlight_special_atoms == 1 - - " Processes - syn keyword erlangProcess creation current_function dictionary - syn keyword erlangProcess group_leader heap_size high initial_call - syn keyword erlangProcess linked low memory_in_use message_queue - syn keyword erlangProcess net_kernel node normal priority - syn keyword erlangProcess reductions registered_name runnable - syn keyword erlangProcess running stack_trace status timer - syn keyword erlangProcess trap_exit waiting - - " Ports - syn keyword erlangPort command count_in count_out creation in - syn keyword erlangPort in_format linked node out owner packeting - - " Nodes - syn keyword erlangNode atom_tables communicating creation - syn keyword erlangNode current_gc current_reductions current_runtime - syn keyword erlangNode current_wall_clock distribution_port - syn keyword erlangNode entry_points error_handler friends - syn keyword erlangNode garbage_collection magic_cookie magic_cookies - syn keyword erlangNode module_table monitored_nodes name next_ref - syn keyword erlangNode ports preloaded processes reductions - syn keyword erlangNode ref_state registry runtime wall_clock - - " Reserved - syn keyword erlangReserved apply_lambda module_info module_lambdas - syn keyword erlangReserved record record_index record_info - - " Extras - syn keyword erlangExtra badarg nocookie - - " Signals - syn keyword erlangSignal badsig kill killed exit normal -endif +syn keyword erlangKeyword after begin case catch cond end fun if let of query +syn keyword erlangKeyword receive when try + +" Build-in-functions (BIFs) +syn keyword erlangBIF abs alive apply atom_to_binary atom_to_list contained +syn keyword erlangBIF binary_part binary_to_atom contained +syn keyword erlangBIF binary_to_existing_atom binary_to_float contained +syn keyword erlangBIF binary_to_integer bitstring_to_list contained +syn keyword erlangBIF binary_to_list binary_to_term bit_size contained +syn keyword erlangBIF byte_size check_old_code check_process_code contained +syn keyword erlangBIF concat_binary date delete_module demonitor contained +syn keyword erlangBIF disconnect_node element erase error exit contained +syn keyword erlangBIF float float_to_binary float_to_list contained +syn keyword erlangBIF garbage_collect get get_keys group_leader contained +syn keyword erlangBIF halt hd integer_to_binary integer_to_list contained +syn keyword erlangBIF iolist_to_binary iolist_size is_alive contained +syn keyword erlangBIF is_atom is_binary is_bitstring is_boolean contained +syn keyword erlangBIF is_float is_function is_integer is_list contained +syn keyword erlangBIF is_number is_pid is_port is_process_alive contained +syn keyword erlangBIF is_record is_reference is_tuple length link contained +syn keyword erlangBIF list_to_atom list_to_binary contained +syn keyword erlangBIF list_to_bitstring list_to_existing_atom contained +syn keyword erlangBIF list_to_float list_to_integer list_to_pid contained +syn keyword erlangBIF list_to_tuple load_module make_ref max min contained +syn keyword erlangBIF module_loaded monitor monitor_node node contained +syn keyword erlangBIF nodes now open_port pid_to_list port_close contained +syn keyword erlangBIF port_command port_connect pre_loaded contained +syn keyword erlangBIF process_flag process_flag process_info contained +syn keyword erlangBIF process purge_module put register registered contained +syn keyword erlangBIF round self setelement size spawn spawn_link contained +syn keyword erlangBIF spawn_monitor spawn_opt split_binary contained +syn keyword erlangBIF statistics term_to_binary throw time tl contained +syn keyword erlangBIF trunc tuple_size tuple_to_list unlink contained +syn keyword erlangBIF unregister whereis contained " Sync at the beginning of functions: if this is not used, multiline string -" are not always recognized +" are not always recognized, and the indentation script cannot use the +" "searchpair" (because it would not always skip strings and comments when +" looking for keywords and opening parens/brackets). syn sync match erlangSync grouphere NONE "^[a-z]\s*(" +let b:erlang_syntax_synced = 1 + +" Define the default highlighting. See ":help group-name" for the groups and +" their colors. + +let s:old_style = (exists("g:erlang_old_style_highlight") && g:erlang_old_style_highlight == 1) -" Define the default highlighting. " For version 5.7 and earlier: only when not done already " For version 5.8 and later: only when an item doesn't have highlighting yet -if version >= 508 || !exists ("did_erlang_inits") +if version >= 508 || !exists("did_erlang_inits") if version < 508 let did_erlang_inits = 1 command -nargs=+ HiLink hi link <args> @@ -130,46 +153,106 @@ if version >= 508 || !exists ("did_erlang_inits") command -nargs=+ HiLink hi def link <args> endif - " erlang_characters + " Comments HiLink erlangComment Comment HiLink erlangCommentAnnotation Special HiLink erlangTodo Todo - HiLink erlangSeparator Normal - HiLink erlangOperator Operator - HiLink erlangRightArrow Operator + HiLink erlangShebang Comment - HiLink erlangStartString String + " Numbers + HiLink erlangNumberInteger Number + HiLink erlangNumberFloat Float + + " Strings, atoms, characters HiLink erlangString String - HiLink erlangStringModifier Special - HiLink erlangStartQuotedAtom Type - HiLink erlangQuotedAtom Type + if s:old_style + HiLink erlangQuotedAtom Type + else + HiLink erlangQuotedAtom String + endif + + HiLink erlangStringModifier Special HiLink erlangQuotedAtomModifier Special + HiLink erlangModifier Special - HiLink erlangNumberInteger Number - HiLink erlangNumberFloat Float - HiLink erlangNumberHex Number + " Operators, separators + HiLink erlangOperator Operator + HiLink erlangRightArrow Operator + if s:old_style + HiLink erlangBracket Normal + HiLink erlangPipe Normal + else + HiLink erlangBracket Delimiter + HiLink erlangPipe Delimiter + endif - HiLink erlangModifier Special + " Atoms, functions, variables, macros + if s:old_style + HiLink erlangAtom Normal + HiLink erlangLocalFuncCall Normal + HiLink erlangLocalFuncRef Normal + HiLink erlangGlobalFuncCall Function + HiLink erlangGlobalFuncRef Function + HiLink erlangVariable Normal + HiLink erlangMacro Normal + HiLink erlangRecord Normal + else + HiLink erlangAtom String + HiLink erlangLocalFuncCall Normal + HiLink erlangLocalFuncRef Normal + HiLink erlangGlobalFuncCall Normal + HiLink erlangGlobalFuncRef Normal + HiLink erlangVariable Identifier + HiLink erlangMacro Macro + HiLink erlangRecord Structure + endif - " erlang_functions - HiLink erlangFCall Function - HiLink erlangBIF Function + " Bitstrings + if !s:old_style + HiLink erlangBitType Type + endif + + " Constants and Directives + if s:old_style + HiLink erlangAttribute Type + HiLink erlangMacroDef Type + HiLink erlangUnknownAttribute Normal + HiLink erlangInclude Type + HiLink erlangRecordDef Type + HiLink erlangDefine Type + HiLink erlangPreCondit Type + HiLink erlangType Type + else + HiLink erlangAttribute Keyword + HiLink erlangMacroDef Macro + HiLink erlangUnknownAttribute Normal + HiLink erlangInclude Include + HiLink erlangRecordDef Keyword + HiLink erlangDefine Define + HiLink erlangPreCondit PreCondit + HiLink erlangType Type + endif - " erlang_keywords - HiLink erlangDirective Type + " Keywords HiLink erlangKeyword Keyword - HiLink erlangProcess Special - HiLink erlangPort Special - HiLink erlangNode Special - HiLink erlangReserved Statement - HiLink erlangExtra Statement - HiLink erlangSignal Statement + + " Build-in-functions (BIFs) + HiLink erlangBIF Function + + if s:old_style + HiLink erlangBoolean Statement + HiLink erlangExtra Statement + HiLink erlangSignal Statement + else + HiLink erlangBoolean Boolean + HiLink erlangExtra Statement + HiLink erlangSignal Statement + endif delcommand HiLink endif - let b:current_syntax = "erlang" " vim: sw=2 et diff --git a/runtime/syntax/falcon.vim b/runtime/syntax/falcon.vim index 0ff500ccc9..1f6fefa9ff 100644 --- a/runtime/syntax/falcon.vim +++ b/runtime/syntax/falcon.vim @@ -3,8 +3,8 @@ " Maintainer: Steven Oliver <oliver.steven@gmail.com> " Website: http://github.com/steveno/vim-files/blob/master/syntax/falcon.vim " Credits: Thanks the ruby.vim authors, I borrowed a lot! +" Thanks to the lisp authors for the rainbow code! " ------------------------------------------------------------------------------- -" GetLatestVimScripts: 2745 1 :AutoInstall: falcon.vim " When wanted, highlight the trailing whitespace. if exists("c_space_errors") @@ -56,6 +56,7 @@ syn keyword falconBool true false " Constants syn keyword falconConst PI E nil +syn match falconConstant "\%(\%([.@$]\@<!\.\)\@<!\<\|::\)\_s*\zs\u\w*\%(\>\|::\)\@=\%(\s*(\)\@!" " Comments syn match falconCommentSkip contained "^\s*\*\($\|\s\+\)" @@ -116,6 +117,47 @@ syn region falconString start=+\%(\%(class\s*\|\%([]}).]\|::\)\)\_s*\|\w\)\@<!<< syn region falconString start=+\%(\%(class\s*\|\%([]}).]\|::\)\)\_s*\|\w\)\@<!<<-'\z([^']*\)'\ze+hs=s+3 matchgroup=falconStringDelimiter end=+^\s*\zs\z1$+ fold keepend syn region falconString start=+\%(\%(class\s*\|\%([]}).]\|::\)\)\_s*\|\w\)\@<!<<-`\z([^`]*\)`\ze+hs=s+3 matchgroup=falconStringDelimiter end=+^\s*\zs\z1$+ contains=falconStringEscape fold keepend +" Falcon rainbox to highlight parens in varying colors +if exists("g:falcon_rainbow") && g:falcon_rainbow != 0 + syn region falconParen0 matchgroup=hlLevel0 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen1 + syn region falconParen1 contained matchgroup=hlLevel1 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen2 + syn region falconParen2 contained matchgroup=hlLevel2 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen3 + syn region falconParen3 contained matchgroup=hlLevel3 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen4 + syn region falconParen4 contained matchgroup=hlLevel4 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen5 + syn region falconParen5 contained matchgroup=hlLevel5 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen6 + syn region falconParen6 contained matchgroup=hlLevel6 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen7 + syn region falconParen7 contained matchgroup=hlLevel7 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen8 + syn region falconParen8 contained matchgroup=hlLevel8 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen9 + syn region falconParen9 contained matchgroup=hlLevel9 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen0 +endif + +" Setup the colors for the rainbox +if exists("g:falcon_rainbow") && g:falcon_rainbow != 0 + if &bg == "dark" + hi def hlLevel0 ctermfg=red guifg=red1 + hi def hlLevel1 ctermfg=yellow guifg=orange1 + hi def hlLevel2 ctermfg=green guifg=yellow1 + hi def hlLevel3 ctermfg=cyan guifg=greenyellow + hi def hlLevel4 ctermfg=magenta guifg=green1 + hi def hlLevel5 ctermfg=red guifg=springgreen1 + hi def hlLevel6 ctermfg=yellow guifg=cyan1 + hi def hlLevel7 ctermfg=green guifg=slateblue1 + hi def hlLevel8 ctermfg=cyan guifg=magenta1 + hi def hlLevel9 ctermfg=magenta guifg=purple1 + else + hi def hlLevel0 ctermfg=red guifg=red3 + hi def hlLevel1 ctermfg=darkyellow guifg=orangered3 + hi def hlLevel2 ctermfg=darkgreen guifg=orange2 + hi def hlLevel3 ctermfg=blue guifg=yellow3 + hi def hlLevel4 ctermfg=darkmagenta guifg=olivedrab4 + hi def hlLevel5 ctermfg=red guifg=green4 + hi def hlLevel6 ctermfg=darkyellow guifg=paleturquoise3 + hi def hlLevel7 ctermfg=darkgreen guifg=deepskyblue4 + hi def hlLevel8 ctermfg=blue guifg=darkslateblue + hi def hlLevel9 ctermfg=darkmagenta guifg=darkviolet + endif +endif + " Syntax Synchronizing syn sync minlines=10 maxlines=100 @@ -132,6 +174,7 @@ if !exists("did_falcon_syn_inits") HiLink falconComment Comment HiLink falconCommentL Comment HiLink falconConst Constant + HiLink falconConstants Constant HiLink falconOperator Operator HiLink falconSymbol Normal HiLink falconSpaceError Error @@ -153,3 +196,4 @@ endif let b:current_syntax = "falcon" " vim: set sw=4 sts=4 et tw=80 : + diff --git a/runtime/syntax/help.vim b/runtime/syntax/help.vim index 68e0a1a7f4..ee5563e6bd 100644 --- a/runtime/syntax/help.vim +++ b/runtime/syntax/help.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: Vim help file " Maintainer: Bram Moolenaar (Bram@vim.org) -" Last Change: 2013 Apr 07 +" Last Change: 2013 Jun 02 " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") diff --git a/runtime/syntax/r.vim b/runtime/syntax/r.vim index d92f5c5bd0..5e76e7af7f 100644 --- a/runtime/syntax/r.vim +++ b/runtime/syntax/r.vim @@ -3,7 +3,7 @@ " Maintainer: Jakson Aquino <jalvesaq@gmail.com> " Former Maintainers: Vaidotas Zemlys <zemlys@gmail.com> " Tom Payne <tom@tompayne.org> -" Last Change: Sun Feb 20, 2011 12:06PM +" Last Change: Sun May 19, 2013 05:59PM " Filenames: *.R *.r *.Rhistory *.Rt " " NOTE: The highlighting of R functions is defined in the @@ -30,7 +30,16 @@ endif syn case match " Comment -syn match rComment contains=@Spell "\#.*" +syn match rComment contains=@Spell "#.*" + +" Roxygen +syn match rOKeyword contained "@\(param\|return\|name\|rdname\|examples\|include\|docType\)" +syn match rOKeyword contained "@\(S3method\|TODO\|aliases\|alias\|assignee\|author\|callGraphDepth\|callGraph\)" +syn match rOKeyword contained "@\(callGraphPrimitives\|concept\|exportClass\|exportMethod\|exportPattern\|export\|formals\)" +syn match rOKeyword contained "@\(format\|importClassesFrom\|importFrom\|importMethodsFrom\|import\|keywords\)" +syn match rOKeyword contained "@\(method\|nord\|note\|references\|seealso\|setClass\|slot\|source\|title\|usage\)" +syn match rOComment contains=@Spell,rOKeyword "#'.*" + if &filetype == "rhelp" " string enclosed in double quotes @@ -65,7 +74,7 @@ syn keyword rConditional if else syn keyword rRepeat for in repeat while " Constant (not really) -syn keyword rConstant T F LETTERS letters month.ab month.name pi +syn keyword rConstant T F LETTERS letters month.abb month.name pi syn keyword rConstant R.version.string syn keyword rNumber NA_integer_ NA_real_ NA_complex_ NA_character_ @@ -105,8 +114,13 @@ syn match rOperator '-' syn match rOperator '\*' syn match rOperator '+' syn match rOperator '=' -syn match rOperator "[|!<>^~`/:@]" -syn match rOperator "%\{2}\|%\*%\|%\/%\|%in%\|%o%\|%x%" +if &filetype != "rmd" && &filetype != "rrst" + syn match rOperator "[|!<>^~/:]" +else + syn match rOperator "[|!<>^~`/:]" +endif +syn match rOperator "%\{2}\|%\S*%" +syn match rOpError '\*\{3}' syn match rOpError '//' syn match rOpError '&&&' syn match rOpError '|||' @@ -140,9 +154,11 @@ syn match rParenError "[\]}]" contained runtime r-plugin/functions.vim syn match rDollar display contained "\$" +syn match rDollar display contained "@" " List elements will not be highlighted as functions: syn match rLstElmt "\$[a-zA-Z0-9\\._]*" contains=rDollar +syn match rLstElmt "@[a-zA-Z0-9\\._]*" contains=rDollar " Functions that may add new objects syn keyword rPreProc library require attach detach source @@ -156,7 +172,9 @@ endif syn keyword rType array category character complex double function integer list logical matrix numeric vector data.frame " Name of object with spaces -syn region rNameWSpace start="`" end="`" +if &filetype != "rmd" && &filetype != "rrst" + syn region rNameWSpace start="`" end="`" +endif if &filetype == "rhelp" syn match rhPreProc "^#ifdef.*" @@ -169,6 +187,7 @@ hi def link rArrow Statement hi def link rBoolean Boolean hi def link rBraceError Error hi def link rComment Comment +hi def link rOComment Comment hi def link rComplex Number hi def link rConditional Conditional hi def link rConstant Constant @@ -195,6 +214,7 @@ hi def link rStatement Statement hi def link rString String hi def link rStrError Error hi def link rType Type +hi def link rOKeyword Title let b:current_syntax="r" diff --git a/runtime/syntax/rst.vim b/runtime/syntax/rst.vim index b68089720b..159d14ef37 100644 --- a/runtime/syntax/rst.vim +++ b/runtime/syntax/rst.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: reStructuredText documentation format " Maintainer: Nikolai Weibull <now@bitwi.se> -" Latest Revision: 2012-11-01 +" Latest Revision: 2013-06-03 if exists("b:current_syntax") finish @@ -135,10 +135,6 @@ execute 'syn match rstHyperlinkReference' . syn match rstStandaloneHyperlink contains=@NoSpell \ "\<\%(\%(\%(https\=\|file\|ftp\|gopher\)://\|\%(mailto\|news\):\)[^[:space:]'\"<>]\+\|www[[:alnum:]_-]*\.[[:alnum:]_-]\+\.[^[:space:]'\"<>]\+\)[[:alnum:]/]" -" TODO: Use better syncing. I don’t know the specifics of syncing well enough, -" though. -syn sync minlines=50 linebreaks=1 - syn region rstCodeBlock contained matchgroup=rstDirective \ start=+\%(sourcecode\|code\%(-block\)\=\)::\s+ \ skip=+^$+ @@ -160,6 +156,9 @@ for code in g:rst_syntax_code_list exe 'syn cluster rstDirectives add=rstDirective'.code endfor +" TODO: Use better syncing. +syn sync minlines=50 linebreaks=2 + hi def link rstTodo Todo hi def link rstComment Comment hi def link rstSections Title -- GitLab