Compare commits

...

148 Commits

Author SHA1 Message Date
Bram Moolenaar
558ddad8e8 updated for version 7.3.830
Problem:    :mksession confuses bytes, columns and characters when positioning
            the cursor.
Solution:   Use w_virtcol with "|" instead of w_cursor.col with "l".
2013-02-20 19:26:29 +01:00
Bram Moolenaar
187d3acb7f updated for version 7.3.829
Problem:    When compiled with the +rightleft feature 'showmatch' also shows a
            match for the opening paren.  When 'revins' is set the screen may
            scroll.
Solution:   Only check the opening paren when the +rightleft feature was
            enabled.  Do not show a match that is not visible. (partly by
            Christian Brabandt)
2013-02-20 18:39:13 +01:00
Bram Moolenaar
8738fc1be8 updated for version 7.3.828
Problem:    Mappings are not aware of wildmenu mode.
Solution:   Add wildmenumode(). (Christian Brabandt)
2013-02-20 17:59:11 +01:00
Bram Moolenaar
995a8cd181 updated for version 7.3.827
Problem:    Python tests fail.
Solution:   Adjust the output for the stack trace.
2013-02-20 16:54:27 +01:00
Bram Moolenaar
445f3037ea updated for version 7.3.826
Problem:    List of features in :version output is hard to read.
Solution:   Make columns. (Nazri Ramliy)
2013-02-20 16:47:36 +01:00
Bram Moolenaar
4d36987c25 updated for version 7.3.825
Problem:    With Python errors are not always clear.
Solution:   Print the stack trace, unless :silent is used. (ZyX)
2013-02-20 16:09:43 +01:00
Bram Moolenaar
2142e5d851 updated for version 7.3.824
Problem:    Can redefine builtin functions.  (ZyX)
Solution:   Disallow adding a function to g:.
2013-02-20 15:19:43 +01:00
Bram Moolenaar
452ff5bdc7 updated for version 7.3.823
Problem:    Building with Cygwin: '-lsupc++' is not needed.
Solution:   Remove it. (Ken Takata)
2013-02-20 13:34:19 +01:00
Bram Moolenaar
6d47df7ca0 updated for version 7.3.822
Problem:    Crash when accessing freed buffer.
Solution:   Get 'textwidth' in caller of enter_buffer(). (Christian Brabandt)
2013-02-17 15:45:37 +01:00
Bram Moolenaar
5004e8846e updated for version 7.3.821
Problem:    Build with OLE and Cygwin is broken. (Steve Hall)
Solution:   Select static or shared stdc library. (Ken Takta)
2013-02-16 18:16:15 +01:00
Bram Moolenaar
feeaa688eb updated for version 7.3.820
Problem:    Build errors and warnings when building with small features and
            Lua, Perl or Ruby.
Solution:   Add #ifdefs and UNUSED.
2013-02-14 22:19:51 +01:00
Bram Moolenaar
b2c5a5ac79 updated for version 7.3.819
Problem:    Compiling without +eval and with Python isn't working.
Solution:   Add the eval feature when building with Python.
2013-02-14 22:11:39 +01:00
Bram Moolenaar
707060e2ee updated for version 7.3.818
Problem:    When test 40 fails because of a bad build it may leave files
            behind that cause it to fail later.
Solution:   Let the file names start with "X".
2013-02-14 20:58:35 +01:00
Bram Moolenaar
caca92be8a updated for version 7.3.817
Problem:    Test 89 fails with tiny and small features.
Solution:   Add sourcing small.vim.
2013-02-14 20:10:33 +01:00
Bram Moolenaar
f6ecd99cec Add test files. 2013-02-13 17:35:34 +01:00
Bram Moolenaar
af9aeb9250 updated for version 7.3.816
Problem:    Can't compute a hash.
Solution:   Add the sha256() function. (Tyru, Hirohito Higashi)
2013-02-13 17:35:04 +01:00
Bram Moolenaar
c2149ea7cd updated for version 7.3.815
Problem:    Building with Cygwin and Ruby doesn't work.
Solution:   Copy some things from the MingW build file. (Ken Takata)
2013-02-13 17:06:11 +01:00
Bram Moolenaar
ffeedec023 updated for version 7.3.814
Problem:    Can't input multibyte characters on Win32 console if 'encoding' is
            different from current codepage.
Solution:   Use convert_input_safe() instead of convert_input().  Make
            string_convert_ext() return an error for incomplete input. (Ken
            Takata)
2013-02-13 16:49:58 +01:00
Bram Moolenaar
a3914327f7 updated for version 7.3.813
Problem:    The CompleteDone event is not triggered when there are no pattern
            matches. (Jianjun Mao)
Solution:   Trigger the event. (Christian Brabandt)
2013-02-13 16:30:21 +01:00
Bram Moolenaar
00154508de Update runtime files.
Add missing test files.
2013-02-13 16:15:55 +01:00
Bram Moolenaar
8fe8d9ed06 updated for version 7.3.812
Problem:    When 'indentexpr' moves the cursor "curswant" not restored.
Solution:   Restore "curswant". (Sung Pae)
2013-02-13 16:10:17 +01:00
Bram Moolenaar
be9c627666 updated for version 7.3.811
Problem:    Useless termresponse parsing for SGR mouse.
Solution:   Skip the parsing. (Hayaki Saito)
2013-02-13 15:53:19 +01:00
Bram Moolenaar
f4e5e86627 updated for version 7.3.810
Problem:    'relativenumber is reset unexpectedly. (François Ingelrest)
Solution:   After an option was reset also reset the global value. Add a test.
            (Christian Brabandt)
2013-02-13 15:44:26 +01:00
Bram Moolenaar
181ace28ed updated for version 7.3.809
Problem:    The dosinst.c program has a buffer overflow. (Thomas Gwae)
Solution:   Ignore $VIMRUNTIME if it is too long.
2013-02-13 14:36:44 +01:00
Bram Moolenaar
76d711c3b5 updated for version 7.3.808
Problem:    Python threads still do not work properly.
Solution:   Fix both Python 2 and 3.  Add tests. (Ken Takata)
2013-02-13 14:17:08 +01:00
Bram Moolenaar
51971b3398 updated for version 7.3.807
Problem:    Popup menu does not work properly with the preview window, folds
            and 'cursorcolumn'.
Solution:   Redraw the popup menu after redrawing windows. (Christian
            Brabandt)
2013-02-13 12:16:05 +01:00
Bram Moolenaar
e9d47cd08b updated for version 7.3.806
Problem:    Compiler warnings in Perl code when building with Visual studio
            2012. (skeept)
Solution:   Add type casts. (Christian Brabandt, 2013 Jan 30)
2013-02-06 19:58:43 +01:00
Bram Moolenaar
07e1da6bbd updated for version 7.3.805
Problem:    Lua version 5.2 is not detected properly on Arch Linux.
Solution:   Adjust autoconf. (lilydjwg)
2013-02-06 19:49:43 +01:00
Bram Moolenaar
fffcfea984 updated for version 7.3.804
Problem:    Compiler warning for tiny build. (Tony Mechelynck)
Solution:   Add #ifdefs around variable.
2013-02-06 18:45:01 +01:00
Bram Moolenaar
11cb6e6e13 updated for version 7.3.803
Problem:    Substitute with confirmation and then "q" does not replace
            anything.  (John McGowan)
Solution:   Do not break the loop, skip to the end.
2013-02-06 18:24:02 +01:00
Bram Moolenaar
fa13eef3c9 Updated runtime files. 2013-02-06 17:34:04 +01:00
Bram Moolenaar
309379fc98 updated for version 7.3.802
Problem:    After setting 'isk' to a value ending in a comma appending to the
            option fails.
Solution:   Disallow a trailing comma for 'isk' and similar options.
2013-02-06 16:26:26 +01:00
Bram Moolenaar
530e7dfafd updated for version 7.3.801
Problem:    ":window set nu?" displays the cursor line. (Nazri Ramliy)
Solution:   Do not update the cursor line when conceallevel is zero or the
            screen has scrolled. (partly by Christian Brabandt)
2013-02-06 13:38:02 +01:00
Bram Moolenaar
b6a76ffc4c updated for version 7.3.800
Problem:    The " mark is not adjusted when inserting lines. (Roland Eggner)
Solution:   Adjust the line number. (Christian Brabandt)
2013-02-06 12:33:21 +01:00
Bram Moolenaar
9c2e6cc6ed updated for version 7.3.799
Problem:    The color column is not correct when entering a buffer. (Ben
            Fritz)
Solution:   Call check_colorcolumn() if 'textwidth' changed. (Christian
            Brabandt)
2013-02-06 12:14:48 +01:00
Bram Moolenaar
39d7d51bcd updated for version 7.3.798
Problem:    MzScheme: circular list does not work correctly.
Solution:   Separate Mac-specific code from generic code. (Sergey Khorev)
2013-01-31 21:09:15 +01:00
Bram Moolenaar
04e5b5a228 updated for version 7.3.797
Problem:    Compiler warning for size_t to int conversion. (Skeept)
Solution:   Add type casts.
2013-01-30 21:56:21 +01:00
Bram Moolenaar
e337e5f634 updated for version 7.3.796
Problem:    "/[^\n]" does match at a line break.
Solution:   Make it do the same as "/.". (Christian Brabandt)
2013-01-30 18:21:51 +01:00
Bram Moolenaar
d214221375 updated for version 7.3.795
Problem:    MzScheme does not build with tiny features.
Solution:   Add #ifdefs.  Also add UNUSED to avoid warnings.  And change
            library ordering.
2013-01-30 17:41:50 +01:00
Bram Moolenaar
a50e5866b0 updated for version 7.3.794
Problem:    Tiny build fails. (Tony Mechelynck)
Solution:   Adjust #ifdefs.
2013-01-30 17:30:17 +01:00
Bram Moolenaar
8ceb1735a2 updated for version 7.3.793
Problem:    New interactive :substutite behavior is not tested.
Solution:   Add tests. (Christian Brabandt)
2013-01-30 17:03:30 +01:00
Bram Moolenaar
4bc8cf0e7c updated for version 7.3.792
Problem:    ":substitute" works differently without confirmation.
Solution:   Do not change the text when asking for confirmation, only display
            it.
2013-01-30 16:30:26 +01:00
Bram Moolenaar
7567646f13 updated for version 7.3.791
Problem:    MzScheme interface doesn't work propely.
Solution:   Make it work better. (Sergey Khorev)
2013-01-30 14:55:42 +01:00
Bram Moolenaar
a3e6bc93d1 Update runtime files. 2013-01-30 14:18:00 +01:00
Bram Moolenaar
52f85b730e updated for version 7.3.790
Problem:    After reloading a buffer the modelines are not processed.
Solution:   call do_modelines(). (Ken Takata)
2013-01-30 14:13:56 +01:00
Bram Moolenaar
f813a1883f updated for version 7.3.789
Problem:    "\k" in regexp does not work in other window.
Solution:   Use the right buffer. (Yukihiro Nakadaira)
2013-01-30 13:59:37 +01:00
Bram Moolenaar
8d61617238 updated for version 7.3.788
Problem:    When only using patches build fails on missing nl.po.
Solution:   Create an empty nl.po file.
2013-01-30 12:50:56 +01:00
Bram Moolenaar
700e7345de updated for version 7.3.787
Problem:    With 'relativenumber' set it is not possible to see the absolute
            line number.
Solution:   For the cursor line show the absolute line number instead of a
            zero. (Nazri Ramliy)
2013-01-30 12:31:36 +01:00
Bram Moolenaar
02366255c9 updated for version 7.3.786
Problem:    Python threads don't run in the background (issue 103).
Solution:   Move the statements to manipulate thread state.
2013-01-30 11:44:39 +01:00
Bram Moolenaar
2f315ab7be updated for version 7.3.785
Problem:    Crash with specific use of search pattern.
Solution:   Initialize reg_buf to curbuf.
2013-01-25 20:11:01 +01:00
Bram Moolenaar
826763f87b updated for version 7.3.784
Problem:    Error when 'guifontwide' has a comma.
Solution:   Use gui.wide_font. (Taro Muraoka)
2013-01-25 19:28:38 +01:00
Bram Moolenaar
15364d74ca updated for version 7.3.783
Problem:    Crash when mark is not set. (Dominique Pelle)
Solution:   Check for NULL.
2013-01-24 21:00:20 +01:00
Bram Moolenaar
0f2721223e updated for version 7.3.782
Problem:    Windows: IME composition may use a wrong font.
Solution:   Use 'guifontwide' for IME when it is set. (Taro Muraoka)
2013-01-23 18:37:40 +01:00
Bram Moolenaar
4593396625 updated for version 7.3.781
Problem:    Drawing with 'guifontwide' can be slow.
Solution:   Draw multiple characters at a time. (Taro Muraoka)
2013-01-23 17:43:57 +01:00
Bram Moolenaar
d35d784e91 updated for version 7.3.780
Problem:    char2nr() and nr2char() always use 'encoding'.
Solution:   Add argument to use utf-8 characters. (Yasuhiro Matsumoto)
2013-01-23 17:17:10 +01:00
Bram Moolenaar
55b7b7eeb5 updated for version 7.3.779
Problem:    Backwards search lands in wrong place when started on a multibyte
            character.
Solution:   Do not set extra_col for a backwards search. (Sung Pae)
2013-01-23 16:43:11 +01:00
Bram Moolenaar
94a8adfdd8 updated for version 7.3.778
Problem:    Compiler error for adding up two pointers. (Titov Anatoly)
Solution:   Add a type cast. (Ken Takata)
2013-01-23 16:19:23 +01:00
Bram Moolenaar
3be71ce28d updated for version 7.3.777
Problem:    When building with Gnome locale gets reset.
Solution:   Set locale after gnome_program_init(). (Christian Brabandt)
2013-01-23 16:00:11 +01:00
Bram Moolenaar
9d182dd0a6 updated for version 7.3.776
Problem:    ml_get error when searching, caused by curwin not matching curbuf.
Solution:   Avoid changing curbuf. (Lech Lorens)
2013-01-23 15:53:15 +01:00
Bram Moolenaar
4da70dbc4d updated for version 7.3.775
Problem:    Cygwin and Mingw builds miss dependency on gui_w48.c.
Solution:   Add a build rule. (Ken Takata)
2013-01-23 13:55:20 +01:00
Bram Moolenaar
f939c4e6b1 updated for version 7.3.774
Problem:    Tiny GUI version misses console dialog feature.
Solution:   Define FEAT_CON_DIALOG when apprpriate. (Christian Brabandt)
2013-01-23 13:41:00 +01:00
Bram Moolenaar
b5f7bf6ed9 updated for version 7.3.773
Problem:    Crash when OriginalFirstThunk is zero.
Solution:   Skip items with OriginalFirstThunk not set. (Ken Takata)
2013-01-19 14:02:02 +01:00
Bram Moolenaar
8c4fbd1a15 updated for version 7.3.772
Problem:    Cursor is at the wrong location and below the end of the file
            after doing substitutions with confirm flag: %s/x/y/c
            (Dominique Pelle)
Solution:   Update the cursor position. (Christian Brabandt & Dominique)
2013-01-17 18:34:05 +01:00
Bram Moolenaar
0936502538 updated for version 7.3.771
Problem:    Uninitialized variable. (Yasuhiro Matsumoto)
Solution:   Set x2 to -1.
2013-01-17 17:37:35 +01:00
Bram Moolenaar
08ed30eca7 updated for version 7.3.770
Problem:    Vim.h indentation is inconsistent.
Solution:   Adjust the indentation. (Elias Diem)
2013-01-17 17:17:26 +01:00
Bram Moolenaar
8c7694a864 updated for version 7.3.769
Problem:    'matchpairs' does not work with multi-byte characters.
Solution:   Make it work. (Christian Brabandt)
2013-01-17 17:02:05 +01:00
Bram Moolenaar
3e37fd0950 updated for version 7.3.768
Problem:    settabvar() and setwinvar() may move the cursor.
Solution:   Save and restore the cursor position when appropriate. (idea by
            Yasuhiro Matsumoto)
2013-01-17 15:37:01 +01:00
Bram Moolenaar
8fae8e658f updated for version 7.3.767
Problem:    (Win32) The _errno used for iconv may be the wrong one.
Solution:   Use the _errno from iconv.dll. (Ken Takata)
2013-01-17 14:39:47 +01:00
Bram Moolenaar
117f2c4b91 updated for version 7.3.766
Problem:    ":help cpo-*" jumps to the wrong place.
Solution:   Make it equivalent to ":help cpo-star".
2013-01-17 14:09:44 +01:00
Bram Moolenaar
802418d5eb updated for version 7.3.765
Problem:    Segfault when doing "cclose" on BufUnload in a python function.
            (Sean Reifschneider)
Solution:   Skip window with NULL buffer. (Christian Brabandt)
2013-01-17 14:00:11 +01:00
Bram Moolenaar
c4fba6f881 updated for version 7.3.764
Problem:    Not all message translation files are installed.
Solution:   Also install the converted files.
2013-01-17 13:37:32 +01:00
Bram Moolenaar
8754deb3b6 updated for version 7.3.763
Problem:    Jumping to a mark does not open a fold if it is in the same line.
            (Wiktor Ruben)
Solution:   Also compare the column after the jump. (Christian Brabandt)
2013-01-17 13:24:08 +01:00
Bram Moolenaar
14e28811b3 updated for version 7.3.762
Problem:    On some systems the tabline is not redrawn.
Solution:   Call RedrawWindow(). (Charles Peacech)
2012-12-16 12:50:39 +01:00
Bram Moolenaar
ba6e858556 updated for version 7.3.761
Problem:    In Visual mode a "-p does not work. (Marcin Szamotulski)
Solution:   Avoid writing to "- before putting it. (Christian Brabandt)
2012-12-12 18:20:32 +01:00
Bram Moolenaar
83dadafdd7 updated for version 7.3.760
Problem:    dv_ deletes the white space before the line.
Solution:   Move the cursor to the first non-white. (Christian Brabandt)
2012-12-12 17:33:32 +01:00
Bram Moolenaar
4b166d0a6d updated for version 7.3.759
Problem:    MS-Windows: Updating the tabline is slow when there are many tabs.
Solution:   Disable redrawing while performing the update. (Arseny Kapoulkine)
2012-12-12 17:12:25 +01:00
Bram Moolenaar
cfde76c74d updated for version 7.3.758
Problem:    Matchit plugin does not handle space in #ifdef.
Solution:   Change matching pattern to allow spaces. (Mike Morearty)
2012-12-12 16:43:58 +01:00
Bram Moolenaar
27356ad4f4 updated for version 7.3.757
Problem:    Issue 96: May access freed memory when a put command triggers
            autocommands. (Dominique Pelle)
Solution:   Call u_save() before getting y_array.
2012-12-12 16:11:36 +01:00
Bram Moolenaar
321a9ec680 updated for version 7.3.756
Problem:    A location list can get a wrong count in :lvimgrep.
Solution:   Check if the list was changed by autocommands. (mostly by
            Christian Brabandt)
2012-12-12 15:55:20 +01:00
Bram Moolenaar
09ba6d766b updated for version 7.3.755
Problem:    Autoconf doesn't find Python 3 if it's called "python".
Solution:   Search for "python2" and "python3" first, then "python".
2012-12-12 14:25:05 +01:00
Bram Moolenaar
52cc266dae updated for version 7.3.754
Problem:    Latest nmake is not recognized.
Solution:   Add nmake version 11.00.51106.1. (Raymond Ko)
2012-12-06 21:30:29 +01:00
Bram Moolenaar
21691f896a updated for version 7.3.753
Problem:    When there is a QuitPre autocommand using ":q" twice does not work
            for exiting when there are more files to edit.
Solution:   Do not decrement quitmore in an autocommand. (Techlive Zheng)
2012-12-05 19:13:18 +01:00
Bram Moolenaar
34feacbcce Update runtime files. 2012-12-05 19:01:43 +01:00
Bram Moolenaar
32c8f1cb19 updated for version 7.3.752
Problem:    Test 49 script file doesn't fold properly.
Solution:   Add a colon.
2012-12-05 19:00:06 +01:00
Bram Moolenaar
60ec5f35a5 updated for version 7.3.751
Problem:    Test 61 is flaky, it fails once in a while.
Solution:   When it fails retry once.
2012-12-05 18:21:32 +01:00
Bram Moolenaar
57e4ee4d38 updated for version 7.3.750
Problem:    The justify macro does not always work correctly.
Solution:   Fix off-by-one error (James McCoy)
2012-12-05 17:03:22 +01:00
Bram Moolenaar
a54bf40017 updated for version 7.3.749
Problem:    Python interface doesn't build without the multi-byte feature.
Solution:   Add #ifdef. (Ken Takata)
2012-12-05 16:30:07 +01:00
Bram Moolenaar
9750bb199e updated for version 7.3.748
Problem:    Cannot properly test conceal mode.
Solution:   Add the screencol() and screenrow() functions.  Use them in
            test88. (Simon Ruderich)
2012-12-05 16:10:42 +01:00
Bram Moolenaar
0f9d0869c7 updated for version 7.3.747
Problem:    When characters are concealed text aligned with tabs are no longer
            aligned, e.g. at ":help :index".
Solution:   Compensate space for tabs for concealed characters. (Dominique
            Pelle)
2012-12-05 15:32:30 +01:00
Bram Moolenaar
81484f4215 updated for version 7.3.746
Problem:    Memory leaks when using location lists.
Solution:   Set qf_title to something. (Christian Brabandt)
2012-12-05 15:16:47 +01:00
Bram Moolenaar
15d55dec03 updated for version 7.3.745
Problem:    Automatically setting 'ttymouse' doesn't work.
Solution:   Reset the "option was set" flag when using the default.
2012-12-05 14:43:02 +01:00
Bram Moolenaar
862cfa356d updated for version 7.3.744
Problem:    64 bit compiler warning.
Solution:   Add type cast. (Mike Williams)
2012-11-29 20:10:00 +01:00
Bram Moolenaar
2a94225c23 updated for version 7.3.743
Problem:    Tiny build still fails.
Solution:   Add #else in the right place.
2012-11-28 23:03:07 +01:00
Bram Moolenaar
f135435f80 updated for version 7.3.742
Problem:    Leaking memory when :vimgrep restores the directory.
Solution:   Free the allocated memory. (Christian Brabandt)
2012-11-28 22:12:44 +01:00
Bram Moolenaar
2e18a12780 updated for version 7.3.741
Problem:    Tiny build fails.
Solution:   Move #ifdef. (Ike Devolder)
2012-11-28 19:10:54 +01:00
Bram Moolenaar
97d4ea71d6 updated for version 7.3.740
Problem:    IOC tool complains about undefined behavior for int.
Solution:   Change to unsigned int. (Dominique Pelle)
2012-11-28 18:31:54 +01:00
Bram Moolenaar
f4f1956724 updated for version 7.3.739
Problem:    Computing number of lines may have an integer overflow.
Solution:   Check for MAXCOL explicitly. (Dominique Pelle)
2012-11-28 18:22:11 +01:00
Bram Moolenaar
2df58b4a58 Updated runtime files. 2012-11-28 18:21:11 +01:00
Bram Moolenaar
9411615985 updated for version 7.3.738
Problem:    Unused function argument.
Solution:   Remove it. (Christian Brabandt)
2012-11-28 17:41:59 +01:00
Bram Moolenaar
d4ad0d4e21 updated for version 7.3.737
Problem:    When using do_cmdline() recursively did_endif is not reset,
            causing messages to be overwritten.
Solution:   Reset did_endif. (Christian Brabandt)
2012-11-28 17:34:48 +01:00
Bram Moolenaar
b347963869 updated for version 7.3.736
Problem:    File name completion in input() escapes white space. (Frederic
            Hardy)
Solution:   Do not escape white space. (Christian Brabandt)
2012-11-28 16:49:58 +01:00
Bram Moolenaar
dd53a41553 updated for version 7.3.735
Problem:    Cannot build Ruby 1.9 with MingW or Cygwin.
Solution:   Add another include directory. (Ken Takata)
2012-11-28 16:18:29 +01:00
Bram Moolenaar
442b5c48fd updated for version 7.3.734
Problem:    Cannot put help files in a sub-directory.
Solution:   Make :helptags work for sub-directories. (Charles Campbell)
2012-11-28 16:06:22 +01:00
Bram Moolenaar
8866d277c9 updated for version 7.3.733
Problem:    Tests fail when including MzScheme.
Solution:   Change #ifdefs for vim_main2().
2012-11-28 15:55:42 +01:00
Bram Moolenaar
02e14d67b9 updated for version 7.3.732
Problem:    Compiler warnings for function arguments.
Solution:   Use inteptr_t instead of long.
2012-11-28 15:37:51 +01:00
Bram Moolenaar
7854e3abcf updated for version 7.3.731
Problem:    Py3Init_vim() is exported uneccessarily.
Solution:   Make it static. (Ken Takata)
2012-11-28 15:33:14 +01:00
Bram Moolenaar
c83a44bf8f updated for version 7.3.730
Problem:    Crash in PHP file when using syntastic. (Ike Devolder)
Solution:   Avoid using NULL pointer. (Christian Brabandt)
2012-11-28 15:25:34 +01:00
Bram Moolenaar
ff8cf2be66 updated for version 7.3.729
Problem:    Building with Ruby fails on some systems.
Solution:   Remove "static" and add #ifndef PROTO. (Ken Takata)
2012-11-24 13:39:00 +01:00
Bram Moolenaar
fe9fb927ae updated for version 7.3.728
Problem:    Cannot compile with MzScheme interface on Ubuntu 12.10.
Solution:   Find the collects directory under /usr/share.
2012-11-23 21:54:48 +01:00
Bram Moolenaar
7331304fd3 updated for version 7.3.727
Problem:    Can't always find Win32.mak when building GvimExt.
Solution:   Use same mechanism as in Make_mvc.mak. (Cade Foster)
2012-11-23 21:47:22 +01:00
Bram Moolenaar
ef6585abef updated for version 7.3.726
Problem:    Typos and duplicate info in README.
Solution:   Fix the text.
2012-11-23 21:45:25 +01:00
Bram Moolenaar
77642c0fef updated for version 7.3.725
Problem:    :aboveleft and :belowright have no effect on :copen.
Solution:   Check for cmdmod.split. (Christian Brabandt)
2012-11-20 17:55:10 +01:00
Bram Moolenaar
65d7396cb4 updated for version 7.3.724
Problem:    Building with Ruby and Tcl on MS-Windows does not work.
Solution:   Remove Ruby and Tcl from the big MS-Windows build.
2012-11-20 17:21:52 +01:00
Bram Moolenaar
8d4eecc5e8 updated for version 7.3.723
Problem:    Various tiny problems.
Solution:   Various tiny fixes.
2012-11-20 17:19:01 +01:00
Bram Moolenaar
d59762dcb6 updated for version 7.3.722
Problem:    Perl flags may contain "-g", which breaks "make proto".
Solution:   Filter out the "-g" flag for cproto. (Ken Takata)
2012-11-20 17:03:27 +01:00
Bram Moolenaar
c0d4759373 updated for version 7.3.721
Problem:    Ruby interface defines local functions globally.
Solution:   Make the functions static.
2012-11-20 16:59:14 +01:00
Bram Moolenaar
7c5f120410 updated for version 7.3.720
Problem:    Proto files are outdated.
Solution:   Update the newly generated proto files.
2012-11-20 16:56:54 +01:00
Bram Moolenaar
8288149866 updated for version 7.3.719
Problem:    Cannot run new version of cproto, it fails on missing include
            files.
Solution:   Add lots of #ifndef PROTO
2012-11-20 16:53:39 +01:00
Bram Moolenaar
0ac24e1ef4 updated for version 7.3.718
Problem:    When re-using the current buffer the buffer-local options stay.
Solution:   Re-initialize the buffer-local options. (Christian Brabandt)
2012-11-20 12:16:58 +01:00
Bram Moolenaar
b031626427 updated for version 7.3.717
Problem:    When changing the font size, only MS-Windows limits the window
            size.
Solution:   Also limit the window size on other systems. (Roland Puntaier)
2012-11-20 12:03:06 +01:00
Bram Moolenaar
99a547d3a1 updated for version 7.3.716
Problem:    Error on exit when using Python 3.
Solution:   Remove PythonIO_Fini(). (Roland Puntaier)
2012-11-20 11:04:35 +01:00
Bram Moolenaar
97d62497f5 Updated runtime files. 2012-11-15 21:28:22 +01:00
Bram Moolenaar
41b884b273 updated for version 7.3.715
Problem:    Crash when calling setloclist() in BufUnload autocmd. (Marcin
            Szamotulski)
Solution:   Set w_llist to NULL when it was freed.  Also add a test.
            (Christian Brabandt)
2012-11-14 22:38:08 +01:00
Bram Moolenaar
b826ddb034 updated for version 7.3.714
Problem:    Inconsistency: :set can be used in the sandbox, but :setlocal and
            :setglobal cannot. (Michael Henry)
Solution:   Fix the flags for :setlocal and :setglobal. (Christian Brabandt)
2012-11-14 20:52:28 +01:00
Bram Moolenaar
3ab72c5c72 updated for version 7.3.713
Problem:    printf() can only align to bytes, not characters.
Solution:   Add the "S" item. (Christian Brabandt)
2012-11-14 18:10:56 +01:00
Bram Moolenaar
e3a2246227 updated for version 7.3.712
Problem:    Nmake from VS2010 SP1 is not recognized.
Solution:   Add the version number. (Ken Takata)
2012-10-23 05:35:34 +02:00
Bram Moolenaar
9c9cbf1351 updated for version 7.3.711
Problem:    vim.current.buffer is not available. (lilydjwg)
Solution:   Use py3_PyUnicode_AsUTF8 instead of py3_PyUnicode_AsUTF8String.
            (Ken Takata)
2012-10-23 05:17:37 +02:00
Bram Moolenaar
12a753a5ca updated for version 7.3.710
Problem:    Patch 7.3.704 breaks "fn".
Solution:   Add check for ca.cmdchar. (Christian Brabandt)
2012-10-23 05:08:53 +02:00
Bram Moolenaar
95e09eaaad updated for version 7.3.709
Problem:    Compiler warning for unused argument.
Solution:   Add UNUSED.
2012-10-21 23:56:05 +02:00
Bram Moolenaar
a80888d296 updated for version 7.3.708
Problem:    Filler lines above the first line may be hidden when opening Vim.
Solution:   Change how topfill is computed. (Christian Brabandt)
2012-10-21 22:18:21 +02:00
Bram Moolenaar
17aa8cc255 updated for version 7.3.707
Problem:    Problems loading a library for a file name with non-latin
            characters.
Solution:   Use wide system functions when possible. (Ken Takata)
2012-10-21 21:38:45 +02:00
Bram Moolenaar
a9a2d8f4d0 updated for version 7.3.706
Problem:    Can't build Motif version.
Solution:   Fix wrongly named variable. (Ike Devolder)
2012-10-21 21:25:22 +02:00
Bram Moolenaar
707cfb82dc updated for version 7.3.705
Problem:    Mouse features are not sorted properly. (Tony Mechelynck)
Solution:   Put the mouse features in alphabetical order.
2012-10-21 04:00:07 +02:00
Bram Moolenaar
f00dc2627b updated for version 7.3.704
Problem:    Repeating "cgn" does not always work correctly.
Solution:   Also fetch the operator character. (Christian Brabandt)
2012-10-21 03:54:33 +02:00
Bram Moolenaar
e8d8fd2add updated for version 7.3.703
Problem:    When 'undofile' is reset the hash is computed unnecessarily.
Solution:   Only compute the hash when the option was set. (Christian Brabandt)
2012-10-21 03:46:05 +02:00
Bram Moolenaar
3a0d8090b1 Updated runtime files. 2012-10-21 03:02:54 +02:00
Bram Moolenaar
67a4f6cfb4 updated for version 7.3.702
Problem:    Nmake from VS6 service pack 6 is not recognized.
Solution:   Detect the version number. (Jiri Sedlak)
2012-10-21 02:41:08 +02:00
Bram Moolenaar
faca84059a updated for version 7.3.701
Problem:    MS-Windows: Crash with stack overflow when setting 'encoding'.
Solution:   Handle that loading the iconv library may be called recursively.
            (Jiri Sedlak)
2012-10-21 02:37:10 +02:00
Bram Moolenaar
cfb807026f updated for version 7.3.700
Problem:    Cannot detect URXVT and SGR mouse support.
Solution:   add +mouse_urxvt and +mouse_sgr. (Hayaki Saito)
2012-10-21 02:17:45 +02:00
Bram Moolenaar
bffa06ddb8 updated for version 7.3.699
Problem:    When 'ttymouse' is set to "sgr" manually, it is overruled by
            automatic detection.
Solution:   Do not use automatic detection when 'ttymouse' was set manually.
            (Hayaki Saito)
2012-10-21 02:10:24 +02:00
Bram Moolenaar
003d14a267 updated for version 7.3.698
Problem:    Python 3 does not preserve state beween commands.
Solution:   Preserve the state. (Paul Ollis)
2012-10-21 01:47:00 +02:00
Bram Moolenaar
c4b98fbb3e updated for version 7.3.697
Problem:    Leaking resources when setting GUI font.
Solution:   Free the font. (Ken Takata)
2012-10-21 01:40:30 +02:00
Bram Moolenaar
f3408e76fb updated for version 7.3.696
Problem:    Message about added spell language can be wrong.
Solution:   Give correct message. Add g:menutrans_set_lang_to to allow for
            translation. (Jiri Sedlak)
2012-10-21 01:21:59 +02:00
Bram Moolenaar
b6101cf77f updated for version 7.3.695
Problem:    Balloon cannot show multi-byte text.
Solution:   Properly deal with multi-byte characters. (Dominique Pelle)
2012-10-21 00:58:39 +02:00
Bram Moolenaar
2d17fa3ebd updated for version 7.3.694
Problem:    Now that 'shiftwidth' may use the value of 'tabstop' it is not so
            easy to use in indent files.
Solution:   Add the shiftwidth() function. (so8res)
2012-10-21 00:45:18 +02:00
Bram Moolenaar
9f340fa57b updated for version 7.3.693
Problem:    Can't make 'softtabstop' follow 'shiftwidth'.
Solution:   When 'softtabstop' is negative use the value of 'shiftwidth'.
            (so8res)
2012-10-21 00:10:39 +02:00
Bram Moolenaar
205f9f5e2d updated for version 7.3.692
Problem:    Can't build GTK version with GTK 2.0.
Solution:   Put GtkFileFilter declaration in the right place. (Yegappan
            Lakshmanan)
2012-10-18 05:18:32 +02:00
Bram Moolenaar
b88adbf844 updated for version 7.3.691
Problem:    State specific to the Python thread is discarded.
Solution:   Keep state between threads. (Paul)
2012-10-14 05:20:12 +02:00
220 changed files with 8094 additions and 3060 deletions

View File

@@ -97,10 +97,12 @@ The latest news about Vim can be found on the Vim home page:
If you have problems, have a look at the Vim FAQ:
http://vimdoc.sf.net/vimfaq.html
Send bug reports to:
Bram Moolenaar <Bram@vim.org>
If you still have problems or any other questions, use one of the mailing
lists to discuss them with Vim users and developers:
http://www.vim.org/maillist.php
There are several mailing lists for Vim, see http://www.vim.org/maillist.php.
If nothing else works, report bugs directly:
Bram Moolenaar <Bram@vim.org>
MAIN AUTHOR

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

View File

@@ -106,7 +106,7 @@ fun! netrwSettings#NetrwSettings()
put = 'let g:netrw_browsex_viewer = (not defined)'
endif
put = 'let g:netrw_compress = '.g:netrw_compress
put = 'let g:netrw_cursorline = '.g:netrw_cursorline
put = 'let g:netrw_cursor = '.g:netrw_cursor
let decompressline= line("$")
put ='let g:netrw_decompress...'
put = 'let g:netrw_dirhistmax = '.g:netrw_dirhistmax
@@ -125,9 +125,9 @@ fun! netrwSettings#NetrwSettings()
put = 'let g:netrw_list_hide = '.g:netrw_list_hide
put = 'let g:netrw_liststyle = '.g:netrw_liststyle
put = 'let g:netrw_localcopycmd = '.g:netrw_localcopycmd
put = 'let g:netrw_local_mkdir = '.g:netrw_local_mkdir
put = 'let g:netrw_localmkdir = '.g:netrw_localmkdir
put = 'let g:netrw_localmovecmd = '.g:netrw_localmovecmd
put = 'let g:netrw_local_rmdir = '.g:netrw_local_rmdir
put = 'let g:netrw_localrmdir = '.g:netrw_localrmdir
put = 'let g:netrw_maxfilenamelen = '.g:netrw_maxfilenamelen
put = 'let g:netrw_menu = '.g:netrw_menu
put = 'let g:netrw_mkdir_cmd = '.g:netrw_mkdir_cmd

View File

@@ -1,23 +1,43 @@
" Vim OMNI completion script for SQL
" Language: SQL
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
" Version: 12.0
" Last Change: 2012 Feb 08
" Version: 14.0
" Last Change: 2012 Dec 04
" Homepage: http://www.vim.org/scripts/script.php?script_id=1572
" Usage: For detailed help
" ":help sql.txt"
" or ":help ft-sql-omni"
" or read $VIMRUNTIME/doc/sql.txt
" History
" Version 12.0
"
" Version 14.0 (Dec 2012)
" - BF: Added check for cpo
"
" Version 13.0 (Dec 2012)
" - NF: When completing column lists or drilling into a table
" and g:omni_sql_include_owner is enabled, the
" only the table name would be replaced with the column
" list instead of the table name and owner (if specified).
" - NF: When completing column lists using table aliases
" and g:omni_sql_include_owner is enabled, account
" for the owner name when looking up the table
" list instead of the table name and owner (if specified).
" - BF: When completing column lists or drilling into a table
" and g:omni_sql_include_owner is enabled, the
" column list could often not be found for the table.
" - BF: When OMNI popped up, possibly the wrong word
" would be replaced for column and column list options.
"
" Version 12.0 (Feb 2012)
" - Partial column name completion did not work when a table
" name or table alias was provided (Jonas Enberg).
" - Improved the handling of column completion. First we match any
" columns from a previous completion. If not matches are found, we
" consider the partial name to be a table or table alias for the
" consider the partial name to be a table or table alias for the
" query and attempt to match on it.
"
" Version 11.0
" Version 11.0 (Jan 2012)
" Added g:omni_sql_default_compl_type variable
" - You can specify which type of completion to default to
" when pressing <C-X><C-O>. The entire list of available
@@ -40,7 +60,7 @@
" - Prepends error message with SQLComplete so you know who issued
" the error.
"
" Version 9.0
" Version 9.0 (May 2010)
" This change removes some of the support for tables with spaces in their
" names in order to simplify the regexes used to pull out query table
" aliases for more robust table name and column name code completion.
@@ -51,10 +71,10 @@
" Incorrectly re-executed the g:ftplugin_sql_omni_key_right and g:ftplugin_sql_omni_key_left
" when drilling in and out of a column list for a table.
"
" Version 7.0
" Version 7.0 (Jan 2010)
" Better handling of object names
"
" Version 6.0
" Version 6.0 (Apr 2008)
" Supports object names with spaces "my table name"
"
" Set completion with CTRL-X CTRL-O to autoloaded function.
@@ -71,7 +91,9 @@ endif
if exists('g:loaded_sql_completion')
finish
endif
let g:loaded_sql_completion = 120
let g:loaded_sql_completion = 130
let s:keepcpo= &cpo
set cpo&vim
" Maintains filename of dictionary
let s:sql_file_table = ""
@@ -137,6 +159,13 @@ if !exists('g:omni_sql_default_compl_type')
endif
" This function is used for the 'omnifunc' option.
" It is called twice by omni and it is responsible
" for returning the completion list of items.
" But it must also determine context of what to complete
" and what to "replace" with the completion.
" The a:base, is replaced directly with what the user
" chooses from the choices.
" The s:prepend provides context for the completion.
function! sqlcomplete#Complete(findstart, base)
" Default to table name completion
@@ -145,6 +174,7 @@ function! sqlcomplete#Complete(findstart, base)
if exists('b:sql_compl_type')
let compl_type = b:sql_compl_type
endif
let begindot = 0
" First pass through this function determines how much of the line should
" be replaced by whatever is chosen from the completion list
@@ -153,7 +183,6 @@ function! sqlcomplete#Complete(findstart, base)
let line = getline('.')
let start = col('.') - 1
let lastword = -1
let begindot = 0
" Check if the first character is a ".", for column completion
if line[start - 1] == '.'
let begindot = 1
@@ -179,7 +208,10 @@ function! sqlcomplete#Complete(findstart, base)
" If lastword has already been set for column completion
" break from the loop, since we do not also want to pickup
" a table name if it was also supplied.
" Unless g:omni_sql_include_owner == 1, then we can
" include the ownername.
if lastword != -1 && compl_type == 'column'
\ && g:omni_sql_include_owner == 0
break
endif
" If column completion was specified stop at the "." if
@@ -191,7 +223,7 @@ function! sqlcomplete#Complete(findstart, base)
" If omni_sql_include_owner = 0, do not include the table
" name as part of the substitution, so break here
if lastword == -1 &&
\ compl_type =~ 'table\|view\|procedure\column_csv' &&
\ compl_type =~ '\<\(table\|view\|procedure\|column\|column_csv\)\>' &&
\ g:omni_sql_include_owner == 0
let lastword = start
break
@@ -288,6 +320,12 @@ function! sqlcomplete#Complete(findstart, base)
let table = matchstr( base, '^\(.*\.\)\?\zs.*\ze\..*' )
let column = matchstr( base, '.*\.\zs.*' )
if g:omni_sql_include_owner == 1 && owner == '' && table != '' && column != ''
let owner = table
let table = column
let column = ''
endif
" It is pretty well impossible to determine if the user
" has entered:
" owner.table
@@ -370,7 +408,16 @@ function! sqlcomplete#Complete(findstart, base)
let list_type = 'csv'
endif
let compl_list = s:SQLCGetColumns(table, list_type)
" If we are including the OWNER for the objects, then for
" table completion, if we have it, it should be included
" as there can be the same table names in a database yet
" with different owner names.
if g:omni_sql_include_owner == 1 && owner != '' && table != ''
let compl_list = s:SQLCGetColumns(owner.'.'.table, list_type)
else
let compl_list = s:SQLCGetColumns(table, list_type)
endif
if column != ''
" If no column prefix has been provided and the table
" name was provided, append it to each of the items
@@ -393,11 +440,14 @@ function! sqlcomplete#Complete(findstart, base)
endif
elseif compl_type == 'resetCache'
" Reset all cached items
let s:tbl_name = []
let s:tbl_alias = []
let s:tbl_cols = []
let s:syn_list = []
let s:syn_value = []
let s:tbl_name = []
let s:tbl_alias = []
let s:tbl_cols = []
let s:syn_list = []
let s:syn_value = []
let s:sql_file_table = ""
let s:sql_file_procedure = ""
let s:sql_file_view = ""
let msg = "All SQL cached items have been removed."
call s:SQLCWarningMsg(msg)
@@ -423,12 +473,27 @@ function! sqlcomplete#Complete(findstart, base)
" let expr = 'v:val '.(g:omni_sql_ignorecase==1?'=~?':'=~#').' "\\(^'.base.'\\|\\(\\.\\)\\?'.base.'\\)"'
" let expr = 'v:val '.(g:omni_sql_ignorecase==1?'=~?':'=~#').' "\\(^'.base.'\\|\\([^.]*\\)\\?'.base.'\\)"'
let compl_list = filter(deepcopy(compl_list), expr)
if empty(compl_list) && compl_type == 'table' && base =~ '\.$'
" It is possible we could be looking for column name completion
" and the user simply hit C-X C-O to lets try it as well
" since we had no hits with the tables.
" If the base ends with a . it is hard to know if we are
" completing table names or column names.
let list_type = ''
let compl_list = s:SQLCGetColumns(base, list_type)
endif
endif
if exists('b:sql_compl_savefunc') && b:sql_compl_savefunc != ""
let &omnifunc = b:sql_compl_savefunc
endif
if empty(compl_list)
call s:SQLCWarningMsg( 'Could not find type['.compl_type.'] using prepend[.'.s:prepended.'] base['.a:base.']' )
endif
return compl_list
endfunc
@@ -664,8 +729,26 @@ function! s:SQLCGetObjectOwner(object)
endfunction
function! s:SQLCGetColumns(table_name, list_type)
if a:table_name =~ '\.'
" Check if the owner/creator has been specified
let owner = matchstr( a:table_name, '^\zs.*\ze\..*\..*' )
let table = matchstr( a:table_name, '^\(.*\.\)\?\zs.*\ze\..*' )
let column = matchstr( a:table_name, '.*\.\zs.*' )
if g:omni_sql_include_owner == 1 && owner == '' && table != '' && column != ''
let owner = table
let table = column
let column = ''
endif
else
let owner = ''
let table = matchstr(a:table_name, '^["\[\]a-zA-Z0-9_ ]\+\ze\.\?')
let column = ''
endif
" Check if the table name was provided as part of the column name
let table_name = matchstr(a:table_name, '^["\[\]a-zA-Z0-9_ ]\+\ze\.\?')
" let table_name = matchstr(a:table_name, '^["\[\]a-zA-Z0-9_ ]\+\ze\.\?')
let table_name = table
let table_cols = []
let table_alias = ''
let move_to_top = 1
@@ -786,7 +869,12 @@ function! s:SQLCGetColumns(table_name, list_type)
if table_name_new != ''
let table_alias = table_name
let table_name = matchstr( table_name_new, '^\(.*\.\)\?\zs.*\ze' )
if g:omni_sql_include_owner == 1
let table_name = matchstr( table_name_new, '^\zs\(.\{-}\.\)\?\(.\{-}\.\)\?.*\ze' )
else
" let table_name = matchstr( table_name_new, '^\(.*\.\)\?\zs.*\ze' )
let table_name = matchstr( table_name_new, '^\(.\{-}\.\)\?\zs\(.\{-}\.\)\?.*\ze' )
endif
let list_idx = index(s:tbl_name, table_name, 0, &ignorecase)
if list_idx > -1
@@ -828,7 +916,8 @@ function! s:SQLCGetColumns(table_name, list_type)
if empty(table_cols)
" Specify silent mode, no messages to the user (tbl, 1)
" Specify do not comma separate (tbl, 1, 1)
let table_cols_str = DB_getListColumn(table_name, 1, 1)
" let table_cols_str = DB_getListColumn(table_name, 1, 1)
let table_cols_str = DB_getListColumn((owner!=''?owner.'.':'').table_name, 1, 1)
if table_cols_str != ""
let s:tbl_name = add( s:tbl_name, table_name )
@@ -854,3 +943,7 @@ function! s:SQLCGetColumns(table_name, list_type)
return table_cols
endfunction
" Restore:
let &cpo= s:keepcpo
unlet s:keepcpo
" vim: ts=4 fdm=marker

View File

@@ -1,12 +1,32 @@
" Vim completion script
" Language: All languages, uses existing syntax highlighting rules
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
" Version: 8.0
" Last Change: 2011 Nov 02
" Usage: For detailed help, ":help ft-syntax-omni"
" Version: 11.0
" Last Change: 2012 Dec 04
" Usage: For detailed help, ":help ft-syntax-omni"
" History
"
" Version 11.0
" Corrected which characters required escaping during
" substitution calls.
"
" Version 10.0
" Cycle through all the character ranges specified in the
" iskeyword option and build a list of valid word separators.
" Prior to this change, only actual characters were used,
" where for example ASCII "45" == "-". If "45" were used
" in iskeyword the hyphen would not be picked up.
" This introduces a new option, since the character ranges
" specified could be multibyte:
" let g:omni_syntax_use_single_byte = 1
" This by default will only allow single byte ASCII
" characters to be added and an additional check to ensure
" the charater is printable (see documentation for isprint).
"
" Version 9.0
" Add the check for cpo.
"
" Version 8.0
" Updated SyntaxCSyntaxGroupItems()
" - Some additional syntax items were also allowed
@@ -16,7 +36,7 @@
" Version 7.0
" Updated syntaxcomplete#OmniSyntaxList()
" - Looking up the syntax groups defined from a syntax file
" looked for only 1 format of {filetype}GroupName, but some
" looked for only 1 format of {filetype}GroupName, but some
" syntax writers use this format as well:
" {b:current_syntax}GroupName
" OmniSyntaxList() will now check for both if the first
@@ -24,11 +44,11 @@
"
" Version 6.0
" Added syntaxcomplete#OmniSyntaxList()
" - Allows other plugins to use this for their own
" - Allows other plugins to use this for their own
" purposes.
" - It will return a List of all syntax items for the
" syntax group name passed in.
" - XPTemplate for SQL will use this function via the
" syntax group name passed in.
" - XPTemplate for SQL will use this function via the
" sqlcomplete plugin to populate a Choose box.
"
" Version 5.0
@@ -38,7 +58,7 @@
"
" Set completion with CTRL-X CTRL-O to autoloaded function.
" This check is in place in case this script is
" sourced directly instead of using the autoload feature.
" sourced directly instead of using the autoload feature.
if exists('+omnifunc')
" Do not set the option if already set since this
" results in an E117 warning.
@@ -48,9 +68,13 @@ if exists('+omnifunc')
endif
if exists('g:loaded_syntax_completion')
finish
finish
endif
let g:loaded_syntax_completion = 80
let g:loaded_syntax_completion = 110
" Turn on support for line continuations when creating the script
let s:cpo_save = &cpo
set cpo&vim
" Set ignorecase to the ftplugin standard
" This is the default setting, but if you define a buffer local
@@ -67,6 +91,18 @@ if !exists('g:omni_syntax_use_iskeyword')
let g:omni_syntax_use_iskeyword = 1
endif
" When using iskeyword, this setting controls whether the characters
" should be limited to single byte characters.
if !exists('g:omni_syntax_use_single_byte')
let g:omni_syntax_use_single_byte = 1
endif
" When using iskeyword, this setting controls whether the characters
" should be limited to single byte characters.
if !exists('g:omni_syntax_use_iskeyword_numeric')
let g:omni_syntax_use_iskeyword_numeric = 1
endif
" Only display items in the completion window that are at least
" this many characters in length.
" This is the default setting, but if you define a buffer local
@@ -158,7 +194,7 @@ endfunc
function! syntaxcomplete#OmniSyntaxList(...)
if a:0 > 0
let parms = []
if 3 == type(a:1)
if 3 == type(a:1)
let parms = a:1
elseif 1 == type(a:1)
let parms = split(a:1, ',')
@@ -172,7 +208,7 @@ endfunc
function! OmniSyntaxList(...)
let list_parms = []
if a:0 > 0
if 3 == type(a:1)
if 3 == type(a:1)
let list_parms = a:1
elseif 1 == type(a:1)
let list_parms = split(a:1, ',')
@@ -208,18 +244,18 @@ function! OmniSyntaxList(...)
let saveL = @l
let filetype = substitute(&filetype, '\.', '_', 'g')
if empty(list_parms)
" Default the include group to include the requested syntax group
let syntax_group_include_{filetype} = ''
" Check if there are any overrides specified for this filetype
if exists('g:omni_syntax_group_include_'.filetype)
let syntax_group_include_{filetype} =
\ substitute( g:omni_syntax_group_include_{filetype},'\s\+','','g')
\ substitute( g:omni_syntax_group_include_{filetype},'\s\+','','g')
let list_parms = split(g:omni_syntax_group_include_{filetype}, ',')
if syntax_group_include_{filetype} =~ '\w'
let syntax_group_include_{filetype} =
\ substitute( syntax_group_include_{filetype},
let syntax_group_include_{filetype} =
\ substitute( syntax_group_include_{filetype},
\ '\s*,\s*', '\\|', 'g'
\ )
endif
@@ -229,11 +265,11 @@ function! OmniSyntaxList(...)
endif
" Loop through all the syntax groupnames, and build a
" syntax file which contains these names. This can
" syntax file which contains these names. This can
" work generically for any filetype that does not already
" have a plugin defined.
" This ASSUMES the syntax groupname BEGINS with the name
" of the filetype. From my casual viewing of the vim7\syntax
" of the filetype. From my casual viewing of the vim7\syntax
" directory this is true for almost all syntax definitions.
" As an example, the SQL syntax groups have this pattern:
" sqlType
@@ -246,7 +282,7 @@ function! OmniSyntaxList(...)
let syntax_full = "\n".@l
let @l = saveL
if syntax_full =~ 'E28'
if syntax_full =~ 'E28'
\ || syntax_full =~ 'E411'
\ || syntax_full =~ 'E415'
\ || syntax_full =~ 'No Syntax items'
@@ -256,7 +292,7 @@ function! OmniSyntaxList(...)
let filetype = substitute(&filetype, '\.', '_', 'g')
let list_exclude_groups = []
if a:0 > 0
if a:0 > 0
" Do nothing since we have specific a specific list of groups
else
" Default the exclude group to nothing
@@ -264,11 +300,11 @@ function! OmniSyntaxList(...)
" Check if there are any overrides specified for this filetype
if exists('g:omni_syntax_group_exclude_'.filetype)
let syntax_group_exclude_{filetype} =
\ substitute( g:omni_syntax_group_exclude_{filetype},'\s\+','','g')
\ substitute( g:omni_syntax_group_exclude_{filetype},'\s\+','','g')
let list_exclude_groups = split(g:omni_syntax_group_exclude_{filetype}, ',')
if syntax_group_exclude_{filetype} =~ '\w'
let syntax_group_exclude_{filetype} =
\ substitute( syntax_group_exclude_{filetype},
if syntax_group_exclude_{filetype} =~ '\w'
let syntax_group_exclude_{filetype} =
\ substitute( syntax_group_exclude_{filetype},
\ '\s*,\s*', '\\|', 'g'
\ )
endif
@@ -285,14 +321,14 @@ function! OmniSyntaxList(...)
while ftindex > -1
let ft_part_name = matchstr( &filetype, '\w\+', ftindex )
" Syntax rules can contain items for more than just the current
" Syntax rules can contain items for more than just the current
" filetype. They can contain additional items added by the user
" via autocmds or their vimrc.
" Some syntax files can be combined (html, php, jsp).
" We want only items that begin with the filetype we are interested in.
let next_group_regex = '\n' .
\ '\zs'.ft_part_name.'\w\+\ze'.
\ '\s\+xxx\s\+'
\ '\s\+xxx\s\+'
let index = 0
let index = match(syntax_full, next_group_regex, index)
@@ -306,11 +342,11 @@ function! OmniSyntaxList(...)
" syn keyword {syntax_filename}Keyword values ...
" let b:current_syntax = "mysql"
" So, we will make the format of finding the syntax group names
" a bit more flexible and look for both if the first fails to
" a bit more flexible and look for both if the first fails to
" find a match.
let next_group_regex = '\n' .
\ '\zs'.b:current_syntax.'\w\+\ze'.
\ '\s\+xxx\s\+'
\ '\s\+xxx\s\+'
let index = 0
let index = match(syntax_full, next_group_regex, index)
endif
@@ -324,9 +360,9 @@ function! OmniSyntaxList(...)
let get_syn_list = 0
endif
endfor
" This code is no longer needed in version 6.0 since we have
" augmented the syntax list command to only retrieve the syntax
" augmented the syntax list command to only retrieve the syntax
" groups we are interested in.
"
" if get_syn_list == 1
@@ -338,7 +374,7 @@ function! OmniSyntaxList(...)
" endif
if get_syn_list == 1
" Pass in the full syntax listing, plus the group name we
" Pass in the full syntax listing, plus the group name we
" are interested in.
let extra_syn_list = s:SyntaxCSyntaxGroupItems(group_name, syntax_full)
let syn_list = syn_list . extra_syn_list . "\n"
@@ -392,7 +428,7 @@ function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
" \| - 2nd potential match
" \%$ - matches end of the file or string
" \) - end a group
let syntax_group = matchstr(a:syntax_full,
let syntax_group = matchstr(a:syntax_full,
\ "\n".a:group_name.'\s\+xxx\s\+\zs.\{-}\ze\(\n\w\|\%$\)'
\ )
@@ -402,42 +438,42 @@ function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
" We only want the words for the lines begining with
" containedin, but there could be other items.
" Tried to remove all lines that do not begin with contained
" but this does not work in all cases since you can have
" contained nextgroup=...
" So this will strip off the ending of lines with known
" keywords.
let syn_list = substitute(
let syn_list = substitute(
\ syntax_group, '\<\('.
\ substitute(
\ escape(s:syn_remove_words, '\\/.*$^~[]')
\ , ',', '\\|', 'g'
\ ).
\ '\).\{-}\%($\|'."\n".'\)'
\ , "\n", 'g'
\ , "\n", 'g'
\ )
" Now strip off the newline + blank space + contained.
" Also include lines with nextgroup=@someName skip_key_words syntax_element
let syn_list = substitute(
let syn_list = substitute(
\ syn_list, '\%(^\|\n\)\@<=\s*\<\(contained\|nextgroup=\)'
\ , "", 'g'
\ , "", 'g'
\ )
" This can leave lines like this
" =@vimMenuList skipwhite onoremenu
" Strip the special option keywords first
" :h :syn-skipwhite*
let syn_list = substitute(
let syn_list = substitute(
\ syn_list, '\<\(skipwhite\|skipnl\|skipempty\)\>'
\ , "", 'g'
\ , "", 'g'
\ )
" Now remove the remainder of the nextgroup=@someName lines
let syn_list = substitute(
let syn_list = substitute(
\ syn_list, '\%(^\|\n\)\@<=\s*\(@\w\+\)'
\ , "", 'g'
\ , "", 'g'
\ )
if b:omni_syntax_use_iskeyword == 0
@@ -446,19 +482,74 @@ function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
" This will replace non-word characters with spaces.
let syn_list = substitute( syn_list, '[^0-9A-Za-z_ ]', ' ', 'g' )
else
let accept_chars = ','.&iskeyword.','
" Remove all character ranges
" let accept_chars = substitute(accept_chars, ',[^,]\+-[^,]\+,', ',', 'g')
let accept_chars = substitute(accept_chars, ',\@<=[^,]\+-[^,]\+,', '', 'g')
" Remove all numeric specifications
" let accept_chars = substitute(accept_chars, ',\d\{-},', ',', 'g')
let accept_chars = substitute(accept_chars, ',\@<=\d\{-},', '', 'g')
" Remove all commas
let accept_chars = substitute(accept_chars, ',', '', 'g')
" Escape special regex characters
let accept_chars = escape(accept_chars, '\\/.*$^~[]' )
" Remove all characters that are not acceptable
let syn_list = substitute( syn_list, '[^0-9A-Za-z_ '.accept_chars.']', ' ', 'g' )
if g:omni_syntax_use_iskeyword_numeric == 1
" iskeyword can contain value like this
" 38,42,43,45,47-58,60-62,64-90,97-122,_,+,-,*,/,%,<,=,>,:,$,?,!,@-@,94
" Numeric values convert to their ASCII equivalent using the
" nr2char() function.
" & 38
" * 42
" + 43
" - 45
" ^ 94
" Iterate through all numeric specifications and convert those
" to their ascii equivalent ensuring the character is printable.
" If so, add it to the list.
let accepted_chars = ''
for item in split(&iskeyword, ',')
if item =~ '-'
" This is a character range (ie 47-58),
" cycle through each character within the range
let [b:start, b:end] = split(item, '-')
for range_item in range( b:start, b:end )
if range_item <= 127 || g:omni_syntax_use_single_byte == 0
if nr2char(range_item) =~ '\p'
let accepted_chars = accepted_chars . nr2char(range_item)
endif
endif
endfor
elseif item =~ '^\d\+$'
" Only numeric, translate to a character
if item < 127 || g:omni_syntax_use_single_byte == 0
if nr2char(item) =~ '\p'
let accepted_chars = accepted_chars . nr2char(item)
endif
endif
else
if char2nr(item) < 127 || g:omni_syntax_use_single_byte == 0
if item =~ '\p'
let accepted_chars = accepted_chars . item
endif
endif
endif
endfor
" Escape special regex characters
" Looks like the wrong chars are escaped. In a collection,
" :h /[]
" only `]', `\', `-' and `^' are special:
" let accepted_chars = escape(accepted_chars, '\\/.*$^~[]' )
let accepted_chars = escape(accepted_chars, ']\-^' )
" Remove all characters that are not acceptable
let syn_list = substitute( syn_list, '[^A-Za-z'.accepted_chars.']', ' ', 'g' )
else
let accept_chars = ','.&iskeyword.','
" Remove all character ranges
" let accept_chars = substitute(accept_chars, ',[^,]\+-[^,]\+,', ',', 'g')
let accept_chars = substitute(accept_chars, ',\@<=[^,]\+-[^,]\+,', '', 'g')
" Remove all numeric specifications
" let accept_chars = substitute(accept_chars, ',\d\{-},', ',', 'g')
let accept_chars = substitute(accept_chars, ',\@<=\d\{-},', '', 'g')
" Remove all commas
let accept_chars = substitute(accept_chars, ',', '', 'g')
" Escape special regex characters
" Looks like the wrong chars are escaped. In a collection,
" :h /[]
" only `]', `\', `-' and `^' are special:
" let accept_chars = escape(accept_chars, '\\/.*$^~[]' )
let accept_chars = escape(accept_chars, ']\-^' )
" Remove all characters that are not acceptable
let syn_list = substitute( syn_list, '[^0-9A-Za-z_'.accept_chars.']', ' ', 'g' )
endif
endif
if b:omni_syntax_minimum_length > 0
@@ -471,3 +562,27 @@ function! s:SyntaxCSyntaxGroupItems( group_name, syntax_full )
return syn_list
endfunction
function! OmniSyntaxShowChars(spec)
let result = []
for item in split(a:spec, ',')
if len(item) > 1
if item == '@-@'
call add(result, char2nr(item))
else
call extend(result, call('range', split(item, '-')))
endif
else
if item == '@' " assume this is [A-Za-z]
for [c1, c2] in [['A', 'Z'], ['a', 'z']]
call extend(result, range(char2nr(c1), char2nr(c2)))
endfor
else
call add(result, char2nr(item))
endif
endif
endfor
return join(map(result, 'nr2char(v:val)'), ', ')
endfunction
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -266,7 +266,7 @@ Name triggered by ~
|GUIFailed| after starting the GUI failed
|TermResponse| after the terminal response to |t_RV| is received
|QuitPre| when using `:quit`, before deciding whether to quit
|QuitPre| when using `:quit`, before deciding whether to quit
|VimLeavePre| before exiting Vim, before writing the viminfo file
|VimLeave| before exiting Vim, after writing the viminfo file

View File

@@ -1,4 +1,4 @@
*change.txt* For Vim version 7.3. Last change: 2012 Aug 08
*change.txt* For Vim version 7.3. Last change: 2012 Nov 02
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -598,8 +598,11 @@ For other systems the tmpnam() library function is used.
the flags.
*g&*
g& Synonym for `:%s//~/&` (repeat last substitute on all
lines with the same flags).
g& Synonym for `:%s//~/&` (repeat last substitute with
last search pattern on all lines with the same flags).
For exaple, when you first do a substitution with
`:s/pattern/repl/flags` and then `/search` for
something else, `g&` will do `:%s/search/repl/flags`.
Mnemonic: global substitute. {not in Vi}
*:snomagic* *:sno*

View File

@@ -1,4 +1,4 @@
*cmdline.txt* For Vim version 7.3. Last change: 2012 Jun 20
*cmdline.txt* For Vim version 7.3. Last change: 2013 Jan 17
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -217,7 +217,7 @@ CTRL-\ e {expr} *c_CTRL-\_e*
:return cmd
:endfunc
< This doesn't work recursively, thus not when already editing
an expression.
an expression. But it is possible to use in a mapping.
*c_CTRL-Y*
CTRL-Y When there is a modeless selection, copy the selection into
@@ -714,10 +714,15 @@ three lines: >
Visual Mode and Range *v_:*
{Visual}: Starts a command-line with the Visual selected lines as a
range. The code ":'<,'>" is used for this range, which makes
range. The code `:'<,'>` is used for this range, which makes
it possible to select a similar line from the command-line
history for repeating a command on different Visually selected
lines.
When Visual mode was already ended, a short way to use the
Visual area for a range is `:*`. This requires that "*" does
not appear in 'cpo', see |cpo-star|. Otherwise you will have
to type `:'<,'>`
==============================================================================
5. Ex command-line flags *ex-flags*

View File

@@ -220,7 +220,7 @@ The diffs are highlighted with these groups:
that parts in the middle that are still the
same are highlighted anyway. Only "iwhite" of
'diffopt' is used here.
|hl-DiffDelete| DiffDelete Deleted lines. Also called filler lines,
|hl-DiffDelete| DiffDelete Deleted lines. Also called filler lines,
because they don't really exist in this
buffer.

View File

@@ -1,4 +1,4 @@
*editing.txt* For Vim version 7.3. Last change: 2012 Aug 08
*editing.txt* For Vim version 7.3. Last change: 2013 Feb 07
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -424,7 +424,7 @@ external command, by using the syntax `={expr}` e.g.: >
:e `=tempname()`
The expression can contain just about anything, thus this can also be used to
avoid the special meaning of '"', '|', '%' and '#'. However, 'wildignore'
does apply like to other wildcars.
does apply like to other wildcards.
If the expression returns a string then names are to be separated with line
breaks. When the result is a |List| then each item is used as a name. Line
breaks also separate names.

View File

@@ -1,4 +1,4 @@
*eval.txt* For Vim version 7.3. Last change: 2012 Sep 05
*eval.txt* For Vim version 7.3. Last change: 2013 Jan 23
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -91,8 +91,8 @@ For boolean operators Numbers are used. Zero is FALSE, non-zero is TRUE.
Note that in the command >
:if "foo"
"foo" is converted to 0, which means FALSE. To test for a non-empty string,
use strlen(): >
:if strlen("foo")
use empty(): >
:if !empty("foo")
< *E745* *E728* *E703* *E729* *E730* *E731*
List, Dictionary and Funcref types are not automatically converted.
@@ -1716,7 +1716,7 @@ call( {func}, {arglist} [, {dict}])
any call {func} with arguments {arglist}
ceil( {expr}) Float round {expr} up
changenr() Number current change number
char2nr( {expr}) Number ASCII value of first char in {expr}
char2nr( {expr}[, {utf8}]) Number ASCII/UTF8 value of first char in {expr}
cindent( {lnum}) Number C indent for line {lnum}
clearmatches() none clear all matches
col( {expr}) Number column nr of cursor or mark
@@ -1873,7 +1873,7 @@ mkdir( {name} [, {path} [, {prot}]])
mode( [expr]) String current editing mode
mzeval( {expr}) any evaluate |MzScheme| expression
nextnonblank( {lnum}) Number line nr of non-blank line >= {lnum}
nr2char( {expr}) String single char with ASCII value {expr}
nr2char( {expr}[, {utf8}]) String single char with ASCII/UTF8 value {expr}
or( {expr}, {expr}) Number bitwise OR
pathshorten( {expr}) String shorten directory names in a path
pow( {x}, {y}) Float {x} to the power of {y}
@@ -1903,6 +1903,8 @@ repeat( {expr}, {count}) String repeat {expr} {count} times
resolve( {filename}) String get filename a shortcut points to
reverse( {list}) List reverse {list} in-place
round( {expr}) Float round off {expr}
screencol() Number current cursor column
screenrow() Number current cursor row
search( {pattern} [, {flags} [, {stopline} [, {timeout}]]])
Number search for {pattern}
searchdecl( {name} [, {global} [, {thisblock}]])
@@ -1929,9 +1931,11 @@ settabvar( {nr}, {varname}, {val}) set {varname} in tab page {nr} to {val}
settabwinvar( {tabnr}, {winnr}, {varname}, {val}) set {varname} in window
{winnr} in tab page {tabnr} to {val}
setwinvar( {nr}, {varname}, {val}) set {varname} in window {nr} to {val}
sha256( {string}) String SHA256 checksum of {string}
shellescape( {string} [, {special}])
String escape {string} for use as shell
command argument
shiftwidth() Number effective value of 'shiftwidth'
simplify( {filename}) String simplify filename as much as possible
sin( {expr}) Float sine of {expr}
sinh( {expr}) Float hyperbolic sine of {expr}
@@ -1989,6 +1993,7 @@ undotree() List undo file tree
values( {dict}) List values in {dict}
virtcol( {expr}) Number screen column of cursor or mark
visualmode( [expr]) String last visual mode used
wildmenumode() Number whether 'wildmenu' mode is active
winbufnr( {nr}) Number buffer number of window {nr}
wincol() Number window column of the cursor
winheight( {nr}) Number height of window {nr}
@@ -2291,14 +2296,16 @@ changenr() *changenr()*
redo it is the number of the redone change. After undo it is
one less than the number of the undone change.
char2nr({expr}) *char2nr()*
char2nr({expr}[, {utf8}]) *char2nr()*
Return number value of the first char in {expr}. Examples: >
char2nr(" ") returns 32
char2nr("ABC") returns 65
< The current 'encoding' is used. Example for "utf-8": >
< When {utf8} is omitted or zero, the current 'encoding' is used.
Example for "utf-8": >
char2nr("<22>") returns 225
char2nr("<22>"[0]) returns 195
< A combining character is a separate character.
< With {utf8} set to 1, always treat as utf-8 characters.
A combining character is a separate character.
|nr2char()| does the opposite.
cindent({lnum}) *cindent()*
@@ -3754,10 +3761,10 @@ inputdialog({prompt} [, {text} [, {cancelreturn}]]) *inputdialog()*
Like |input()|, but when the GUI is running and text dialogs
are supported, a dialog window pops up to input the text.
Example: >
:let n = inputdialog("value for shiftwidth", &sw)
:if n != ""
: let &sw = n
:endif
:let n = inputdialog("value for shiftwidth", shiftwidth())
:if n != ""
: let &sw = n
:endif
< When the dialog is cancelled {cancelreturn} is returned. When
omitted an empty string is returned.
Hitting <Enter> works like pressing the OK button. Hitting
@@ -4368,14 +4375,16 @@ nextnonblank({lnum}) *nextnonblank()*
below it, zero is returned.
See also |prevnonblank()|.
nr2char({expr}) *nr2char()*
nr2char({expr}[, {utf8}]) *nr2char()*
Return a string with a single character, which has the number
value {expr}. Examples: >
nr2char(64) returns "@"
nr2char(32) returns " "
< The current 'encoding' is used. Example for "utf-8": >
< When {utf8} is omitted or zero, the current 'encoding' is used.
Example for "utf-8": >
nr2char(300) returns I with bow character
< Note that a NUL character in the file is specified with
< With {utf8} set to 1, always return utf-8 characters.
Note that a NUL character in the file is specified with
nr2char(10), because NULs are represented with newline
characters. nr2char(0) is a real NUL and terminates the
string, thus results in an empty string.
@@ -4450,6 +4459,7 @@ printf({fmt}, {expr1} ...) *printf()*
Often used items are:
%s string
%6S string right-aligned in 6 display cells
%6s string right-aligned in 6 bytes
%.9s string truncated to 9 bytes
%c single byte
@@ -4564,6 +4574,10 @@ printf({fmt}, {expr1} ...) *printf()*
s The text of the String argument is used. If a
precision is specified, no more bytes than the number
specified are used.
S The text of the String argument is used. If a
precision is specified, no more display cells than the
number specified are used. Without the |+multi_byte|
feature works just like 's'.
*printf-f* *E807*
f The Float argument is converted into a string of the
@@ -4866,15 +4880,34 @@ round({expr}) *round()*
echo round(-4.5)
< -5.0
{only available when compiled with the |+float| feature}
screencol() *screencol()*
The result is a Number, which is the current screen column of
the cursor. The leftmost column has number 1.
This function is mainly used for testing.
Note: Always returns the current screen column, thus if used
in a command (e.g. ":echo screencol()") it will return the
column inside the command line, which is 1 when the command is
executed. To get the cursor position in the file use one of
the following mappings: >
nnoremap <expr> GG ":echom ".screencol()."\n"
nnoremap <silent> GG :echom screencol()<CR>
<
screenrow() *screenrow()*
The result is a Number, which is the current screen row of the
cursor. The top line has number one.
This function is mainly used for testing.
Note: Same restrictions as with |screencol()|.
search({pattern} [, {flags} [, {stopline} [, {timeout}]]]) *search()*
Search for regexp pattern {pattern}. The search starts at the
cursor position (you can use |cursor()| to set it).
When a match has been found its line number is returned.
If there is no match a 0 is returned and the cursor doesn't
move. No error message is given.
When a match has been found its line number is returned.
{flags} is a String, which can contain these character flags:
'b' search backward instead of forward
@@ -5305,6 +5338,11 @@ setwinvar({nr}, {varname}, {val}) *setwinvar()*
:call setwinvar(1, "&list", 0)
:call setwinvar(2, "myvar", "foobar")
sha256({string}) *sha256()*
Returns a String with 64 hex charactes, which is the SHA256
checksum of {string}.
{only available when compiled with the |+cryptv| feature}
shellescape({string} [, {special}]) *shellescape()*
Escape {string} for use as a shell command argument.
On MS-Windows and MS-DOS, when 'shellslash' is not set, it
@@ -5331,6 +5369,23 @@ shellescape({string} [, {special}]) *shellescape()*
:call system("chmod +w -- " . shellescape(expand("%")))
shiftwidth() *shiftwidth()*
Returns the effective value of 'shiftwidth'. This is the
'shiftwidth' value unless it is zero, in which case it is the
'tabstop' value. To be backwards compatible in indent
plugins, use this: >
if exists('*shiftwidth')
func s:sw()
return shiftwidth()
endfunc
else
func s:sw()
return &sw
endfunc
endif
< And then use s:sw() instead of &sw.
simplify({filename}) *simplify()*
Simplify the file name as much as possible without changing
the meaning. Shortcuts (on MS-Windows) or symbolic links (on
@@ -5460,7 +5515,8 @@ split({expr} [, {pattern} [, {keepempty}]]) *split()*
empty each white-separated sequence of characters becomes an
item.
Otherwise the string is split where {pattern} matches,
removing the matched characters.
removing the matched characters. 'ignorecase' is not used
here, add \c to ignore case. |/\c|
When the first or last item is empty it is omitted, unless the
{keepempty} argument is given and it's non-zero.
Other empty items are kept when {pattern} matches at least one
@@ -5670,8 +5726,10 @@ substitute({expr}, {pat}, {sub}, {flags}) *substitute()*
This works like the ":substitute" command (without any flags).
But the matching with {pat} is always done like the 'magic'
option is set and 'cpoptions' is empty (to make scripts
portable). 'ignorecase' is still relevant. 'smartcase' is
not used. See |string-match| for how {pat} is used.
portable). 'ignorecase' is still relevant, use |/\c| or |/\C|
if you want to ignore or match case and ignore 'ignorecase'.
'smartcase' is not used. See |string-match| for how {pat} is
used.
A "~" in {sub} is not replaced with the previous {sub}.
Note that some codes in {sub} have a special meaning
@@ -5892,8 +5950,9 @@ taglist({expr}) *taglist()*
If there are no matching tags, then an empty list is returned.
To get an exact tag match, the anchors '^' and '$' should be
used in {expr}. Refer to |tag-regexp| for more information
about the tag search regular expression pattern.
used in {expr}. This also make the function work faster.
Refer to |tag-regexp| for more information about the tag
search regular expression pattern.
Refer to |'tags'| for information about how the tags file is
located by Vim. Refer to |tags-file-format| for the format of
@@ -6104,6 +6163,18 @@ visualmode([expr]) *visualmode()*
Dictionary or Float is not a Number or String, thus does not
cause the mode to be cleared.
wildmenumode() *wildmenumode()*
Returns non-zero when the wildmenu is active and zero
otherwise. See 'wildmenu' and 'wildmode'.
This can be used in mappings to handle the 'wildcharm' option
gracefully. (Makes only sense with |mapmode-c| mappings).
For example to make <c-j> work like <down> in wildmode, use: >
:cnoremap <expr> <C-j> wildmenumode() ? "\<Down>\<Tab>" : "\<c-j>"
<
(Note, this needs the 'wildcharm' option set appropriately).
*winbufnr()*
winbufnr({nr}) The result is a Number, which is the number of the buffer
associated with window {nr}. When {nr} is zero, the number of
@@ -6136,8 +6207,9 @@ winline() The result is a Number, which is the screen line of the cursor
winnr([{arg}]) The result is a Number, which is the number of the current
window. The top window has number 1.
When the optional argument is "$", the number of the
last window is returned (the window count).
When the optional argument is "#", the number of the last
last window is returned (the window count). >
let window_count = winnr('$')
< When the optional argument is "#", the number of the last
accessed window is returned (where |CTRL-W_p| goes to).
If there is no previous window or it is in another tab page 0
is returned.
@@ -6508,6 +6580,8 @@ See |:verbose-cmd| for more information.
is excluded, ":{range}call" will call the function for
each line in the range, with the cursor on the start
of each line. See |function-range-example|.
The cursor is still moved to the first line of the
range, as is the case with all Ex commands.
When the [abort] argument is added, the function will
abort as soon as an error is detected.

View File

@@ -16,7 +16,7 @@ Vim's Graphical User Interface *gui-w16* *win16-gui*
Other relevant documentation:
|gui.txt| For generic items of the GUI.
|os_msdos.txt| For items common to DOS and Windows.
|os_msdos.txt| For items common to DOS and Windows.
|gui_w32.txt| Some items here are also applicable to the Win16 version.
{Vi does not have a Windows GUI}

View File

@@ -17,7 +17,7 @@ Vim's Win32 Graphical User Interface *gui-w32* *win32-gui*
Other relevant documentation:
|gui.txt| For generic items of the GUI.
|os_win32.txt| For Win32 specific items.
|os_win32.txt| For Win32 specific items.
{Vi does not have a Windows GUI}

View File

@@ -1,4 +1,4 @@
*help.txt* For Vim version 7.3. Last change: 2010 Jul 20
*help.txt* For Vim version 7.3. Last change: 2012 Dec 06
VIM - main help file
k
@@ -195,12 +195,12 @@ Remarks about specific systems ~
*standard-plugin-list*
Standard plugins ~
|pi_getscript.txt| Downloading latest version of Vim scripts
|pi_gzip.txt| Reading and writing compressed files
|pi_netrw.txt| Reading and writing files over a network
|pi_paren.txt| Highlight matching parens
|pi_tar.txt| Tar file explorer
|pi_gzip.txt| Reading and writing compressed files
|pi_netrw.txt| Reading and writing files over a network
|pi_paren.txt| Highlight matching parens
|pi_tar.txt| Tar file explorer
|pi_vimball.txt| Create a self-installing Vim script
|pi_zip.txt| Zip archive explorer
|pi_zip.txt| Zip archive explorer
LOCAL ADDITIONS: *local-additions*

View File

@@ -1,4 +1,4 @@
*helphelp.txt* For Vim version 7.3. Last change: 2012 May 18
*helphelp.txt* For Vim version 7.3. Last change: 2012 Nov 28
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -194,11 +194,12 @@ command: >
*E154* *E150* *E151* *E152* *E153* *E670*
:helpt[ags] [++t] {dir}
Generate the help tags file(s) for directory {dir}.
All "*.txt" and "*.??x" files in the directory are
scanned for a help tag definition in between stars.
The "*.??x" files are for translated docs, they
generate the "tags-??" file, see |help-translated|.
The generated tags files are sorted.
All "*.txt" and "*.??x" files in the directory and
sub-directories are scanned for a help tag definition
in between stars. The "*.??x" files are for
translated docs, they generate the "tags-??" file, see
|help-translated|. The generated tags files are
sorted.
When there are duplicates an error message is given.
An existing tags file is silently overwritten.
The optional "++t" argument forces adding the

View File

@@ -1,4 +1,4 @@
*if_mzsch.txt* For Vim version 7.3. Last change: 2010 Feb 11
*if_mzsch.txt* For Vim version 7.3. Last change: 2012 Dec 17
VIM REFERENCE MANUAL by Sergey Khorev
@@ -11,7 +11,8 @@ The MzScheme Interface to Vim *mzscheme* *MzScheme*
3. Threads |mzscheme-threads|
4. Vim access from MzScheme |mzscheme-vim|
5. mzeval() Vim function |mzscheme-mzeval|
6. Dynamic loading |mzscheme-dynamic|
6. Using Function references |mzscheme-funcref|
7. Dynamic loading |mzscheme-dynamic|
{Vi does not have any of these commands}
@@ -21,10 +22,17 @@ The MzScheme interface is available only if Vim was compiled with the
Based on the work of Brent Fulgham.
Dynamic loading added by Sergey Khorev
For downloading MzScheme and other info:
http://www.plt-scheme.org/software/mzscheme/
MzScheme and PLT Scheme names have been rebranded as Racket. For more
information please check http://racket-lang.org
Note: On FreeBSD you should use the "drscheme" port.
Futures and places of Racket version 5.x up to and including 5.3.1 do not
work correctly with processes created by Vim.
The simplest solution is to build Racket on your own with these features
disabled: >
./configure --disable-futures --disable-places --prefix=your-install-prefix
To speed up the process, you might also want to use --disable-gracket and
--disable-docs
==============================================================================
1. Commands *mzscheme-commands*
@@ -155,8 +163,11 @@ Common
(eval {expr-string}) Evaluate the vim expression into
respective MzScheme object: |Lists| are
represented as Scheme lists,
|Dictionaries| as hash tables.
NOTE the name clashes with MzScheme eval
|Dictionaries| as hash tables,
|Funcref|s as functions (see also
|mzscheme-funcref|)
NOTE the name clashes with MzScheme eval,
use module qualifiers to overcome this.
(range-start) Start/End of the range passed with
(range-end) the Scheme command.
(beep) beep
@@ -237,7 +248,23 @@ To facilitate bi-directional interface, you can use |mzeval()| function to
evaluate MzScheme expressions and pass their values to VimL.
==============================================================================
6. Dynamic loading *mzscheme-dynamic* *E815*
6. Using Function references *mzscheme-funcref*
MzScheme interface allows use of |Funcref|s so you can call Vim functions
directly from Scheme. For instance: >
function! MyAdd2(arg)
return a:arg + 2
endfunction
mz (define f2 (vim-eval "function(\"MyAdd2\")"))
mz (f2 7)
< or : >
:mz (define indent (vim-eval "function('indent')"))
" return Vim indent for line 12
:mz (indent 12)
<
==============================================================================
7. Dynamic loading *mzscheme-dynamic* *E815*
On MS-Windows the MzScheme libraries can be loaded dynamically. The |:version|
output then includes |+mzscheme/dyn|.

View File

@@ -1,4 +1,4 @@
*if_perl.txt* For Vim version 7.3. Last change: 2012 Aug 02
*if_perl.txt* For Vim version 7.3. Last change: 2012 Oct 25
VIM REFERENCE MANUAL by Sven Verdoolaege
@@ -175,7 +175,8 @@ VIM::Windows([{wn}...]) With no arguments, returns a list of all the windows
VIM::DoCommand({cmd}) Executes Ex command {cmd}.
*perl-Eval*
VIM::Eval({expr}) Evaluates {expr} and returns (success, val).
VIM::Eval({expr}) Evaluates {expr} and returns (success, value) in list
context or just value in scalar context.
success=1 indicates that val contains the value of
{expr}; success=0 indicates a failure to evaluate
the expression. '@x' returns the contents of register

View File

@@ -1,4 +1,4 @@
*if_pyth.txt* For Vim version 7.3. Last change: 2012 Sep 23
*if_pyth.txt* For Vim version 7.3. Last change: 2013 Feb 03
VIM REFERENCE MANUAL by Paul Moore
@@ -54,8 +54,8 @@ Example: >
EOF
endfunction
<
Note: Python is very sensitive to the indenting. Also make sure the "class"
line and "EOF" do not have any indent.
Note: Python is very sensitive to the indenting. Make sure the "class" line
and "EOF" do not have any indent.
*:pyfile* *:pyf*
:[range]pyf[ile] {file}
@@ -385,7 +385,7 @@ sure edit "gvim.exe" and search for "python\d*.dll\c".
*:py3* *:python3*
The |:py3| and |:python3| commands work similar to |:python|. A simple check
if the `:py3` command is wrong: >
if the `:py3` command is working: >
:py3 print("Hello")
< *:py3file*
The |:py3file| command works similar to |:pyfile|.

View File

@@ -577,6 +577,106 @@ $VIMRUNTIME/indent directory for examples.
REMARKS ABOUT SPECIFIC INDENT FILES ~
CLOJURE *ft-clojure-indent* *clojure-indent*
Clojure indentation differs somewhat from traditional Lisps, due in part to
the use of square and curly brackets, and otherwise by community convention.
These conventions are not always universally followed, so the Clojure indent
script offers a few configurable options, listed below.
If the current vim does not include searchpairpos(), the indent script falls
back to normal 'lisp' indenting, and the following options are ignored.
*g:clojure_maxlines*
Set maximum scan distance of searchpairpos(). Larger values trade performance
for correctness when dealing with very long forms. A value of 0 will scan
without limits.
>
" Default
let g:clojure_maxlines = 100
<
*g:clojure_fuzzy_indent*
*g:clojure_fuzzy_indent_patterns*
*g:clojure_fuzzy_indent_blacklist*
The 'lispwords' option is a list of comma-separated words that mark special
forms whose subforms must be indented with two spaces.
For example:
>
(defn bad []
"Incorrect indentation")
(defn good []
"Correct indentation")
<
If you would like to specify 'lispwords' with a |pattern| instead, you can use
the fuzzy indent feature:
>
" Default
let g:clojure_fuzzy_indent = 1
let g:clojure_fuzzy_indent_patterns = ['^with', '^def', '^let']
let g:clojure_fuzzy_indent_blacklist =
\ ['-fn$', '\v^with-%(meta|out-str|loading-context)$']
" Legacy comma-delimited string version; the list format above is
" recommended. Note that patterns are implicitly anchored with ^ and $
let g:clojure_fuzzy_indent_patterns = 'with.*,def.*,let.*'
<
|g:clojure_fuzzy_indent_patterns| and |g:clojure_fuzzy_indent_blacklist| are
|Lists| of patterns that will be matched against the unquoted, unqualified
symbol at the head of a list. This means that a pattern like "^foo" will match
all these candidates: "foobar", "my.ns/foobar", and "#'foobar".
Each candidate word is tested for special treatment in this order:
1. Return true if word is literally in 'lispwords'
2. Return false if word matches a pattern in
|g:clojure_fuzzy_indent_blacklist|
3. Return true if word matches a pattern in
|g:clojure_fuzzy_indent_patterns|
4. Return false and indent normally otherwise
*g:clojure_special_indent_words*
Some forms in Clojure are indented so that every subform is indented only two
spaces, regardless of 'lispwords'. If you have a custom construct that should
be indented in this idiosyncratic fashion, you can add your symbols to the
default list below.
>
" Default
let g:clojure_special_indent_words =
\ 'deftype,defrecord,reify,proxy,extend-type,extend-protocol,letfn'
<
*g:clojure_align_multiline_strings*
Align subsequent lines in multiline strings to the column after the opening
quote, instead of the same column.
For example:
>
(def default
"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
enim ad minim veniam, quis nostrud exercitation ullamco laboris
nisi ut aliquip ex ea commodo consequat.")
(def aligned
"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
enim ad minim veniam, quis nostrud exercitation ullamco laboris
nisi ut aliquip ex ea commodo consequat.")
<
This option is off by default.
>
" Default
let g:clojure_align_multiline_strings = 0
<
FORTRAN *ft-fortran-indent*
Block if, select case, where, and forall constructs are indented. So are

View File

@@ -94,8 +94,8 @@ tag char action in Insert mode ~
|i_CTRL-Z| CTRL-Z when 'insertmode' set: suspend Vim
|i_<Esc>| <Esc> end insert mode (unless 'insertmode' set)
|i_CTRL-[| CTRL-[ same as <Esc>
|i_CTRL-\_CTRL-N| CTRL-\ CTRL-N go to Normal mode
|i_CTRL-\_CTRL-G| CTRL-\ CTRL-G go to mode specified with 'insertmode'
|i_CTRL-\_CTRL-N| CTRL-\ CTRL-N go to Normal mode
|i_CTRL-\_CTRL-G| CTRL-\ CTRL-G go to mode specified with 'insertmode'
CTRL-\ a - z reserved for extensions
CTRL-\ others not used
|i_CTRL-]| CTRL-] trigger abbreviation
@@ -141,7 +141,7 @@ tag char action in Insert mode ~
|i_<ScrollWheelUp>| <ScrollWheelUp> move window three lines up
|i_<S-ScrollWheelUp>| <S-ScrollWheelUp> move window one page up
|i_<ScrollWheelLeft>| <ScrollWheelLeft> move window six columns left
|i_<S-ScrollWheelLeft>| <S-ScrollWheelLeft> move window one page left
|i_<S-ScrollWheelLeft>| <S-ScrollWheelLeft> move window one page left
|i_<ScrollWheelRight>| <ScrollWheelRight> move window six columns right
|i_<S-ScrollWheelRight>| <S-ScrollWheelRight> move window one page right
@@ -212,8 +212,8 @@ tag char note action in Normal mode ~
|CTRL-Y| CTRL-Y scroll N lines downwards
|CTRL-Z| CTRL-Z suspend program (or start new shell)
CTRL-[ <Esc> not used
|CTRL-\_CTRL-N| CTRL-\ CTRL-N go to Normal mode (no-op)
|CTRL-\_CTRL-G| CTRL-\ CTRL-G go to mode specified with 'insertmode'
|CTRL-\_CTRL-N| CTRL-\ CTRL-N go to Normal mode (no-op)
|CTRL-\_CTRL-G| CTRL-\ CTRL-G go to mode specified with 'insertmode'
CTRL-\ a - z reserved for extensions
CTRL-\ others not used
|CTRL-]| CTRL-] :ta to ident under cursor
@@ -431,7 +431,7 @@ tag char note action in Normal mode ~
|<Insert>| <Insert> 2 same as "i"
|<Left>| <Left> 1 same as "h"
|<LeftMouse>| <LeftMouse> 1 move cursor to the mouse click position
|<MiddleMouse>| <MiddleMouse> 2 same as "gP" at the mouse click position
|<MiddleMouse>| <MiddleMouse> 2 same as "gP" at the mouse click position
|<PageDown>| <PageDown> same as CTRL-F
|<PageUp>| <PageUp> same as CTRL-B
|<Right>| <Right> 1 same as "l"
@@ -640,7 +640,7 @@ tag char note action in Normal mode ~
|[s| [s 1 move to the previous misspelled word
|[z| [z 1 move to start of open fold
|[{| [{ 1 cursor N times back to unmatched '{'
|[<MiddleMouse> [<MiddleMouse> 2 same as "[p"
|[<MiddleMouse>| [<MiddleMouse> 2 same as "[p"
|]_CTRL-D| ] CTRL-D jump to first #define found in current and
included files matching the word under the
@@ -680,7 +680,7 @@ tag char note action in Normal mode ~
|]s| ]s 1 move to next misspelled word
|]z| ]z 1 move to end of open fold
|]}| ]} 1 cursor N times forward to unmatched '}'
|]<MiddleMouse> ]<MiddleMouse> 2 same as "]p"
|]<MiddleMouse>| ]<MiddleMouse> 2 same as "]p"
==============================================================================
2.4 Commands starting with 'g' *g*
@@ -1011,8 +1011,8 @@ tag command action in Command-line editing mode ~
CTRL-Z not used (reserved for suspend)
|c_<Esc>| <Esc> abandon command-line without executing it
|c_<Esc>| CTRL-[ same as <Esc>
|c_CTRL-\_CTRL-N| CTRL-\ CTRL-N go to Normal mode, abandon command-line
|c_CTRL-\_CTRL-G| CTRL-\ CTRL-G go to mode specified with 'insertmode',
|c_CTRL-\_CTRL-N| CTRL-\ CTRL-N go to Normal mode, abandon command-line
|c_CTRL-\_CTRL-G| CTRL-\ CTRL-G go to mode specified with 'insertmode',
abandon command-line
CTRL-\ a - d reserved for extensions
|c_CTRL-\_e| CTRL-\ e {expr} replace the command line with the result of

View File

@@ -1,4 +1,4 @@
*insert.txt* For Vim version 7.3. Last change: 2012 Jul 10
*insert.txt* For Vim version 7.3. Last change: 2013 Jan 09
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -380,7 +380,9 @@ The CTRL-O command sometimes has a side effect: If the cursor was beyond the
end of the line, it will be put on the last character in the line. In
mappings it's often better to use <Esc> (first put an "x" in the text, <Esc>
will then always put the cursor on it). Or use CTRL-\ CTRL-O, but then
beware of the cursor possibly being beyond the end of the line.
beware of the cursor possibly being beyond the end of the line. Note that the
command following CTRL-\ CTRL-O can still move the cursor, it is not restored
to its original position.
The CTRL-O command takes you to Normal mode. If you then use a command enter
Insert mode again it normally doesn't nest. Thus when typing "a<C-O>a" and

View File

@@ -394,8 +394,8 @@ CTRL-{char} {char} typed as a control character; that is, typing {char}
*quotecommandquote*
"command" A reference to a command that you can type is enclosed in
double quotes.
`command` New style command, this distinguishes it from other
quoted text and strings.
`command` New style command, this distinguishes it from other quoted
text and strings.
*key-notation* *key-codes* *keycodes*
These names for keys are used in the documentation. They can also be used

View File

@@ -1,4 +1,4 @@
*mbyte.txt* For Vim version 7.3. Last change: 2012 Jun 06
*mbyte.txt* For Vim version 7.3. Last change: 2012 Oct 06
VIM REFERENCE MANUAL by Bram Moolenaar et al.
@@ -1085,6 +1085,13 @@ Since the mapping is defined with |:lnoremap| the resulting quote will not be
used for the start of another character.
The "accents" keymap uses this. *keymap-accents*
The first column can also be in |<>| form:
<C-c> Ctrl-C
<A-c> Alt-c
<A-C> Alt-C
Note that the Alt mappings may not work, depending on your keyboard and
terminal.
Although it's possible to have more than one character in the second column,
this is unusual. But you can use various ways to specify the character: >
A a literal character

View File

@@ -1,4 +1,4 @@
*options.txt* For Vim version 7.3. Last change: 2012 Aug 15
*options.txt* For Vim version 7.3. Last change: 2013 Feb 13
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -756,7 +756,7 @@ A jump table for the options with a short description can be found at |Q_op|.
feature}
When on and 'termbidi' is off, the required visual character
corrections that need to take place for displaying the Arabic language
take affect. Shaping, in essence, gets enabled; the term is a broad
take effect. Shaping, in essence, gets enabled; the term is a broad
one which encompasses:
a) the changing/morphing of characters based on their location
within a word (initial, medial, final and stand-alone).
@@ -1463,11 +1463,14 @@ A jump table for the options with a short description can be found at |Q_op|.
|gui-clipboard|.
*clipboard-unnamedplus*
unnamedplus A variant of "unnamed" flag which uses the clipboard
register '+' (|quoteplus|) instead of register '*' for
all operations except yank. Yank shall copy the text
into register '+' and also into '*' when "unnamed" is
included.
unnamedplus A variant of the "unnamed" flag which uses the
clipboard register '+' (|quoteplus|) instead of
register '*' for all yank, delete, change and put
operations which would normally go to the unnamed
register. When "unnamed" is also included to the
option, yank operations (but not delete, change or
put) will additionally copy the text into register
'*'.
Only available with the |+X11| feature.
Availability can be checked with: >
if has('unnamedplus')
@@ -3560,6 +3563,10 @@ A jump table for the options with a short description can be found at |Q_op|.
to set 'guifontwide' at all unless you want to override the choice
made by Pango/Xft.
Windows +multibyte only: *guifontwide_win_mbyte*
If set and valid, 'guifontwide' is used for IME instead of 'guifont'.
*'guiheadroom'* *'ghr'*
'guiheadroom' 'ghr' number (default 50)
global
@@ -3820,7 +3827,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|hl-ModeMsg| M Mode (e.g., "-- INSERT --")
|hl-LineNr| n line number for ":number" and ":#" commands, and
when 'number' or 'relativenumber' option is set.
|hl-CursorLineNr| N like n for when 'cursorline' is set.
|hl-CursorLineNr| N like n for when 'cursorline' or 'relativenumber' is
set.
|hl-Question| r |hit-enter| prompt and yes/no questions
|hl-StatusLine| s status line of current window |status-line|
|hl-StatusLineNC| S status lines of not-current windows
@@ -4713,8 +4721,10 @@ A jump table for the options with a short description can be found at |Q_op|.
local to buffer
{not in Vi}
Characters that form pairs. The |%| command jumps from one to the
other. Currently only single byte character pairs are allowed, and
they must be different. The characters must be separated by a colon.
other.
Only character pairs are allowed that are different, thus you cannot
jump between two double quotes.
The characters must be separated by a colon.
The pairs must be separated by a comma. Example for including '<' and
'>' (HTML): >
:set mps+=<:>
@@ -6119,7 +6129,8 @@ A jump table for the options with a short description can be found at |Q_op|.
local to buffer
Number of spaces to use for each step of (auto)indent. Used for
|'cindent'|, |>>|, |<<|, etc.
When zero the 'ts' value will be used.
When zero the 'ts' value will be used. Use the |shiftwidth()|
function to get the effective shiftwidth value.
*'shortmess'* *'shm'*
'shortmess' 'shm' string (Vim default "filnxtToO", Vi default: "",
@@ -6383,6 +6394,7 @@ A jump table for the options with a short description can be found at |Q_op|.
of 8, while being able to edit like it is set to 'sts'. However,
commands like "x" still work on the actual characters.
When 'sts' is zero, this feature is off.
When 'sts' is negative, the value of 'shiftwidth' is used.
'softtabstop' is set to 0 when the 'paste' option is set.
See also |ins-expandtab|. When 'expandtab' is not set, the number of
spaces is minimized by using <Tab>s.
@@ -7494,7 +7506,7 @@ A jump table for the options with a short description can be found at |Q_op|.
For more information about this feature see |undo-persistence|.
The undo file is not read when 'undoreload' causes the buffer from
before a reload to be saved for undo.
WARNING: this is a very new feature. Use at your own risk!
When 'undofile' is turned off the undo file is NOT deleted.
*'undolevels'* *'ul'*
'undolevels' 'ul' number (default 100, 1000 for Unix, VMS,

View File

@@ -1,4 +1,4 @@
*pattern.txt* For Vim version 7.3. Last change: 2012 May 18
*pattern.txt* For Vim version 7.3. Last change: 2013 Jan 25
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -504,7 +504,7 @@ Character classes {not in Vi}: */character-classes*
x x a character with no special meaning matches itself
|/[]| [] \[] any character specified inside the []
|/\%[]| \%[] \%[] a sequence of optionally matched atoms
|/\%[]| \%[] \%[] a sequence of optionally matched atoms
|/\c| \c \c ignore case, do not use the 'ignorecase' option
|/\C| \C \C match case, do not use the 'ignorecase' option
@@ -993,6 +993,8 @@ x A single character, with no special meaning, matches itself
[xyz] any 'x', 'y' or 'z'
[a-zA-Z]$ any alphabetic character at the end of a line
\c[a-z]$ same
[А-яЁё] Russian alphabet (with utf-8 and cp1251)
*/[\n]*
With "\_" prepended the collection also includes the end-of-line.
The same can be done by including "\n" in the collection. The

View File

@@ -1,4 +1,4 @@
*pi_netrw.txt* For Vim version 7.3. Last change: 2012 Apr 05
*pi_netrw.txt* For Vim version 7.3. Last change: 2012 Oct 25
-----------------------------------------------------
NETRW REFERENCE MANUAL by Charles E. Campbell, Jr.
@@ -143,7 +143,7 @@ and has lines resembling >
Windows' ftp doesn't support .netrc; however, one may have in one's .vimrc: >
let g:netrw_ftp_cmd= 'c:\Windows\System32\ftp -s:C:\Users\Myself\MACHINE'
<
<
Netrw will substitute the host's machine name for MACHINE from the url it is
attempting to open, and so one may specify >
userid
@@ -209,7 +209,7 @@ EXTERNAL APPLICATIONS AND PROTOCOLS *netrw-externapp* {{{2
default, the option arguments for the http-handling commands are: >
elinks : "-source >"
links : "-source >"
links : "-dump >"
curl : "-o"
wget : "-q -O"
fetch : "-o"
@@ -1072,6 +1072,7 @@ QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2
v Enter the file/directory under the cursor in a new |netrw-v|
browser window. A vertical split is used.
x View file with an associated program |netrw-x|
X Execute filename under cursor via |system()| |netrw-X|
% Open a new file in netrw's current directory |netrw-%|
@@ -1589,6 +1590,15 @@ Related topics: |netrw-s| |netrw-S|
Associated setting variables: |g:netrw_sort_sequence| |g:netrw_sort_options|
EXECUTING FILE UNDER CURSOR VIA SYSTEM() *netrw-X*
Pressing X while the cursor is atop an executable file will yield a prompt
using the filename asking for any arguments. Upon pressing a [return], netrw
will then call |system()| with that command and arguments. The result will
be displayed by |:echomsg|, and so |:messages| will repeat display of the
result. Ansi escape sequences will be stripped out.
FORCING TREATMENT AS A FILE OR DIRECTORY *netrw-gd* *netrw-gf* {{{2
Remote symbolic links (ie. those listed via ssh or ftp) are problematic
@@ -1596,10 +1606,10 @@ in that it is difficult to tell whether they link to a file or to a
directory.
To force treatment as a file: use >
gd
gf
<
To force treatment as a directory: use >
gf
gd
<
GOING UP *netrw--* {{{2
@@ -1957,7 +1967,7 @@ The "mT" mapping will apply the command in |g:netrw_ctags| (by default, it is
netrw will use ssh (see |g:netrw_ssh_cmd|), and so ssh must be available for
this to work on remote systems. For your local system, see |ctags| on how to
get a version. I myself use hdrtags, currently available at
http://mysite.verizon.net/astronaut/src/index.html , and have >
http://www.drchip.org/astronaut/src/index.html , and have >
let g:netrw_ctags= "hdrtag"
<
@@ -2093,6 +2103,9 @@ your browsing preferences. (see also: |netrw-settings|)
history.
(related: |netrw-qb| |netrw-u| |netrw-U|)
*g:netrw_dynamic_maxfilenamelen* =32: enables dynamic determination of
|g:netrw_maxfilenamelen|, which affects
local file long listing.
*g:netrw_errorlvl* =0: error levels greater than or equal to
this are permitted to be displayed
0: notes
@@ -2843,13 +2856,13 @@ which is loaded automatically at startup (assuming :set nocp).
1. Get the <Decho.vim> script, available as:
http://mysite.verizon.net/astronaut/vim/index.html#DECHO
http://www.drchip.org/astronaut/vim/index.html#DECHO
or
http://vim.sourceforge.net/scripts/script.php?script_id=120
It now comes as a "vimball"; if you're using vim 7.0 or earlier,
you'll need to update vimball, too. See
http://mysite.verizon.net/astronaut/vim/index.html#VIMBALL
http://www.drchip.org/astronaut/vim/index.html#VIMBALL
2. Edit the <netrw.vim> file by typing: >
@@ -2882,57 +2895,77 @@ which is loaded automatically at startup (assuming :set nocp).
==============================================================================
12. History *netrw-history* {{{1
v145: Apr 05, 2012 * moved some command from a g:netrw_local_...
format to g:netwr_local... format
* included some NOTE level messages about
commands that aren't executable
* |g:netrw_errorlvl| (default: NOTE=0)
option introduced
v144: Mar 12, 2012 * when |CTRL-W_s| or |CTRL-W_v| are used,
or their wincmd equivalents, on a netrw
buffer, the netrw's w: variables were
not copied over. Fixed.
Mar 13, 2012 * nbcd_curpos_{bufnr('%')} was commented
out, and was mistakenly used during
RestorePosn. Unfortunately, I'm not
sure why it was commented out, so this
"fix" may re-introduce an earlier problem.
Mar 21, 2012 * included s:rexposn internally to make
:Rex return the cursor to the same pos'n
upon restoration of netrw buffer
Mar 27, 2012 * (sjbesse) s:NetrwGetFile() needs to remove
"/" from the netrw buffer's usual |'isk'|
in order to allow "filetype detect" to work
properly for scripts.
v143: Jun 01, 2011 * |g:netrw_winsize| will accept a negative
number; the absolute value of it will then
be used to specify lines/columns instead of
a percentage.
Jul 05, 2011 * the "d" map now supports mkdir via ftp
See |netrw-d| and |g:netrw_remote_mkdir|
Jul 11, 2011 * Changed Explore!, Sexplore!, and Vexplore
to use a percentage of |winwidth()| instead
of a percentage of |winheight()|.
Jul 11, 2011 * included support for https://... I'm just
beginning to test this, however.
Aug 01, 2011 * changed RestoreOptions to also restore
cursor position in netrw buffers.
Aug 12, 2011 * added a note about "%" to the balloon
Aug 30, 2011 * if |g:netrw_nobeval| exists, then balloon
evaluation is suppressed.
Aug 31, 2011 * (Benjamin R Haskell) provided a patch that
implements non-standard port handling for
files opened via the remote browser.
Aug 31, 2011 * Fixed a **//pattern Explorer bug
Sep 15, 2011 * (reported by Francesco Campana) netrw
now permits the "@" to be part of the
user id (if there's an @ that appears
to the right).
Nov 21, 2011 * New option: |g:netrw_ftp_options|
Dec 07, 2011 * (James Sinclair) provided a fix handling
attempts to use a uid and password when
they weren't defined. This affected
NetWrite (NetRead already had that fix).
v146: Oct 20, 2012 * (David Kotchan) reported that under Windows,
directories named with unusual characters
such as "#" or "$" were not being listed
properly.
* (Kenny Lee) reported that the buffer list
was being populated by netrw buffers.
Netrw will now |:bwipe| netrw buffers
upon editing a file if g:netrw_fastbrowse
is zero and its not in tree listing style.
v145: Apr 05, 2012 * moved some command from a g:netrw_local_...
format to g:netwr_local... format
* included some NOTE level messages about
commands that aren't executable
* |g:netrw_errorlvl| (default: NOTE=0)
option introduced
May 18, 2012 * (Ilya Dogolazky) a scenario where a
|g:netrw_fastbrowse| of zero did not
have a local directory refreshed fixed.
Jul 10, 2012 * (Donatas) |netrw-gb| wasn't working due
to an incorrectly used variable.
Aug 09, 2012 * (Bart Baker) netrw was doubling
of entries after a split.
* (code by Takahiro Yoshihara) implemented
|g:netrw_dynamic_maxfilenamelen|
Aug 31, 2012 * (Andrew Wong) netrw refresh overwriting
the yank buffer.
v144: Mar 12, 2012 * when |CTRL-W_s| or |CTRL-W_v| are used,
or their wincmd equivalents, on a netrw
buffer, the netrw's w: variables were
not copied over. Fixed.
Mar 13, 2012 * nbcd_curpos_{bufnr('%')} was commented
out, and was mistakenly used during
RestorePosn. Unfortunately, I'm not
sure why it was commented out, so this
"fix" may re-introduce an earlier problem.
Mar 21, 2012 * included s:rexposn internally to make
:Rex return the cursor to the same pos'n
upon restoration of netrw buffer
Mar 27, 2012 * (sjbesse) s:NetrwGetFile() needs to remove
"/" from the netrw buffer's usual |'isk'|
in order to allow "filetype detect" to work
properly for scripts.
v143: Jun 01, 2011 * |g:netrw_winsize| will accept a negative
number; the absolute value of it will then
be used to specify lines/columns instead of
a percentage.
Jul 05, 2011 * the "d" map now supports mkdir via ftp
See |netrw-d| and |g:netrw_remote_mkdir|
Jul 11, 2011 * Changed Explore!, Sexplore!, and Vexplore
to use a percentage of |winwidth()| instead
of a percentage of |winheight()|.
Jul 11, 2011 * included support for https://... I'm just
beginning to test this, however.
Aug 01, 2011 * changed RestoreOptions to also restore
cursor position in netrw buffers.
Aug 12, 2011 * added a note about "%" to the balloon
Aug 30, 2011 * if |g:netrw_nobeval| exists, then balloon
evaluation is suppressed.
Aug 31, 2011 * (Benjamin R Haskell) provided a patch that
implements non-standard port handling for
files opened via the remote browser.
Aug 31, 2011 * Fixed a **//pattern Explorer bug
Sep 15, 2011 * (reported by Francesco Campana) netrw
now permits the "@" to be part of the
user id (if there's an @ that appears
to the right).
Nov 21, 2011 * New option: |g:netrw_ftp_options|
Dec 07, 2011 * (James Sinclair) provided a fix handling
attempts to use a uid and password when
they weren't defined. This affected
NetWrite (NetRead already had that fix).
==============================================================================

View File

@@ -1,4 +1,4 @@
*quickref.txt* For Vim version 7.3. Last change: 2012 Feb 22
*quickref.txt* For Vim version 7.3. Last change: 2013 Feb 06
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -7,7 +7,7 @@
*quickref* *Contents*
tag subject tag subject ~
|Q_ct| list of help files |Q_re| Repeating commands
|Q_ct| list of help files |Q_re| Repeating commands
|Q_lr| motion: Left-right |Q_km| Key mapping
|Q_ud| motion: Up-down |Q_ab| Abbreviations
|Q_tm| motion: Text object |Q_op| Options
@@ -27,7 +27,7 @@
|Q_co| change: Complex |Q_bu| Buffer list commands
|Q_vi| Visual mode |Q_sy| Syntax highlighting
|Q_to| Text objects |Q_gu| GUI commands
|Q_fo| Folding
|Q_fo| Folding
------------------------------------------------------------------------------
N is used to indicate an optional count that can be given before the command.
@@ -186,7 +186,7 @@ N is used to indicate an optional count that can be given before the command.
|:marks| :marks print the active marks
|CTRL-O| N CTRL-O go to Nth older position in jump list
|CTRL-I| N CTRL-I go to Nth newer position in jump list
|:ju| :ju[mps] print the jump list
|:ju| :ju[mps] print the jump list
------------------------------------------------------------------------------
*Q_vm* Various motions
@@ -204,30 +204,30 @@ N is used to indicate an optional count that can be given before the command.
------------------------------------------------------------------------------
*Q_ta* Using tags
|:ta| :ta[g][!] {tag} jump to tag {tag}
|:ta| :[count]ta[g][!] jump to [count]'th newer tag in tag list
|:ta| :ta[g][!] {tag} jump to tag {tag}
|:ta| :[count]ta[g][!] jump to [count]'th newer tag in tag list
|CTRL-]| CTRL-] jump to the tag under cursor, unless changes
have been made
|:ts| :ts[elect][!] [tag] list matching tags and select one to jump to
|:ts| :ts[elect][!] [tag] list matching tags and select one to jump to
|:tjump| :tj[ump][!] [tag] jump to tag [tag] or select from list when
there are multiple matches
|:ltag| :lt[ag][!] [tag] jump to tag [tag] and add matching tags to the
|:ltag| :lt[ag][!] [tag] jump to tag [tag] and add matching tags to the
location list
|:tags| :tags print tag list
|:tags| :tags print tag list
|CTRL-T| N CTRL-T jump back from Nth older tag in tag list
|:po| :[count]po[p][!] jump back from [count]'th older tag in tag list
|:po| :[count]po[p][!] jump back from [count]'th older tag in tag list
|:tnext| :[count]tn[ext][!] jump to [count]'th next matching tag
|:tp| :[count]tp[revious][!] jump to [count]'th previous matching tag
|:tr| :[count]tr[ewind][!] jump to [count]'th matching tag
|:tl| :tl[ast][!] jump to last matching tag
|:tr| :[count]tr[ewind][!] jump to [count]'th matching tag
|:tl| :tl[ast][!] jump to last matching tag
|:ptag| :pt[ag] {tag} open a preview window to show tag {tag}
|CTRL-W_}| CTRL-W } like CTRL-] but show tag in preview window
|:ptag| :pt[ag] {tag} open a preview window to show tag {tag}
|CTRL-W_}| CTRL-W } like CTRL-] but show tag in preview window
|:pts| :pts[elect] like ":tselect" but show tag in preview window
|:ptjump| :ptj[ump] like ":tjump" but show tag in preview window
|:pclose| :pc[lose] close tag preview window
|CTRL-W_z| CTRL-W z close tag preview window
|CTRL-W_z| CTRL-W z close tag preview window
------------------------------------------------------------------------------
*Q_sc* Scrolling
@@ -260,7 +260,7 @@ These only work when 'wrap' is off:
|:startreplace| :startr[eplace][!] start Replace mode, at EOL when [!] used
in Visual block mode:
|v_b_I| I insert the same text in front of all the selected lines
|v_b_I| I insert the same text in front of all the selected lines
|v_b_A| A append the same text after all the selected lines
------------------------------------------------------------------------------
*Q_ai* Insert mode keys
@@ -334,16 +334,16 @@ In Insert or Command-line mode:
*Q_de* Deleting text
|x| N x delete N characters under and after the cursor
|<Del>| N <Del> delete N characters under and after the cursor
|<Del>| N <Del> delete N characters under and after the cursor
|X| N X delete N characters before the cursor
|d| N d{motion} delete the text that is moved over with {motion}
|v_d| {visual}d delete the highlighted text
|v_d| {visual}d delete the highlighted text
|dd| N dd delete N lines
|D| N D delete to the end of the line (and N-1 more lines)
|J| N J join N-1 lines (delete <EOL>s)
|v_J| {visual}J join the highlighted lines
|v_J| {visual}J join the highlighted lines
|gJ| N gJ like "J", but without inserting spaces
|v_gJ| {visual}gJ like "{visual}J", but without inserting spaces
|v_gJ| {visual}gJ like "{visual}J", but without inserting spaces
|:d| :[range]d [x] delete [range] lines [into register x]
------------------------------------------------------------------------------
*Q_cm* Copying and moving text
@@ -369,7 +369,7 @@ In Insert or Command-line mode:
|R| N R enter Replace mode (repeat the entered text N times)
|gR| N gR enter virtual Replace mode: Like Replace mode but
without affecting layout
|v_b_r| {visual}r{char}
|v_b_r| {visual}r{char}
in Visual block mode: Replace each char of the
selected text with {char}
@@ -447,13 +447,13 @@ In Insert or Command-line mode:
|visual-index| list of Visual mode commands.
|v| v start highlighting characters } move cursor and use
|V| V start highlighting linewise } operator to affect
|v| v start highlighting characters } move cursor and use
|V| V start highlighting linewise } operator to affect
|CTRL-V| CTRL-V start highlighting blockwise } highlighted text
|v_o| o exchange cursor position with start of highlighting
|gv| gv start highlighting on previous visual area
|v_v| v highlight characters or stop highlighting
|v_V| V highlight linewise or stop highlighting
|v_o| o exchange cursor position with start of highlighting
|gv| gv start highlighting on previous visual area
|v_v| v highlight characters or stop highlighting
|v_V| V highlight linewise or stop highlighting
|v_CTRL-V| CTRL-V highlight blockwise or stop highlighting
------------------------------------------------------------------------------
*Q_to* Text objects (only in Visual mode or after an operator)
@@ -509,8 +509,8 @@ In Insert or Command-line mode:
------------------------------------------------------------------------------
*Q_km* Key mapping
|:map| :ma[p] {lhs} {rhs} map {lhs} to {rhs} in Normal and Visual mode
|:map!| :ma[p]! {lhs} {rhs} map {lhs} to {rhs} in Insert and Command-line
|:map| :ma[p] {lhs} {rhs} map {lhs} to {rhs} in Normal and Visual mode
|:map!| :ma[p]! {lhs} {rhs} map {lhs} to {rhs} in Insert and Command-line
mode
|:noremap| :no[remap][!] {lhs} {rhs}
same as ":map", no remapping for this {rhs}
@@ -522,19 +522,19 @@ In Insert or Command-line mode:
Normal and Visual mode
|:map_l!| :ma[p]! [lhs] list mappings (starting with [lhs]) for
Insert and Command-line mode
|:cmap| :cmap/:cunmap/:cnoremap
|:cmap| :cmap/:cunmap/:cnoremap
like ":map!"/":unmap!"/":noremap!" but for
Command-line mode only
|:imap| :imap/:iunmap/:inoremap
|:imap| :imap/:iunmap/:inoremap
like ":map!"/":unmap!"/":noremap!" but for
Insert mode only
|:nmap| :nmap/:nunmap/:nnoremap
|:nmap| :nmap/:nunmap/:nnoremap
like ":map"/":unmap"/":noremap" but for
Normal mode only
|:vmap| :vmap/:vunmap/:vnoremap
|:vmap| :vmap/:vunmap/:vnoremap
like ":map"/":unmap"/":noremap" but for
Visual mode only
|:omap| :omap/:ounmap/:onoremap
|:omap| :omap/:ounmap/:onoremap
like ":map"/":unmap"/":noremap" but only for
when an operator is pending
|:mapc| :mapc[lear] remove mappings for Normal and Visual mode
@@ -958,9 +958,9 @@ Short explanation of each option: *option-list*
------------------------------------------------------------------------------
*Q_ur* Undo/Redo commands
|u| N u undo last N changes
|u| N u undo last N changes
|CTRL-R| N CTRL-R redo last N undone changes
|U| U restore last changed line
|U| U restore last changed line
------------------------------------------------------------------------------
*Q_et* External commands
@@ -1011,7 +1011,7 @@ Short explanation of each option: *option-list*
C4350, etc.)
|:normal| :norm[al][!] {commands}
execute Normal mode commands
|Q| Q switch to "Ex" mode
|Q| Q switch to "Ex" mode
|:redir| :redir >{file} redirect messages to {file}
|:silent| :silent[!] {command} execute {command} silently
@@ -1087,11 +1087,11 @@ Context-sensitive completion on the command-line:
------------------------------------------------------------------------------
*Q_ex* Special Ex characters
|:bar| | separates two commands (not for ":global" and ":!")
|:bar| | separates two commands (not for ":global" and ":!")
|:quote| " begins comment
|:_%| % current file name (only where a file name is expected)
|:_#| #[num] alternate file name [num] (only where a file name is
|:_%| % current file name (only where a file name is expected)
|:_#| #[num] alternate file name [num] (only where a file name is
expected)
Note: The next seven are typed literally; these are not special keys!
|:<abuf>| <abuf> buffer number, for use in an autocommand (only where a
@@ -1171,18 +1171,18 @@ Context-sensitive completion on the command-line:
Without !: Fail if changes have been made to the current buffer.
With !: Discard any changes to the current buffer.
|:edit_f| :e[dit][!] {file} edit {file}
|:edit| :e[dit][!] reload the current file
|:enew| :ene[w][!] edit a new, unnamed buffer
|:edit| :e[dit][!] reload the current file
|:enew| :ene[w][!] edit a new, unnamed buffer
|:find| :fin[d][!] {file} find {file} in 'path' and edit it
|CTRL-^| N CTRL-^ edit alternate file N (equivalent to ":e #N")
|gf| gf or ]f edit the file whose name is under the cursor
|:pwd| :pwd print the current directory name
|:cd| :cd [path] change the current directory to [path]
|:cd-| :cd - back to previous current directory
|:file| :f[ile] print the current file name and the cursor
|CTRL-^| N CTRL-^ edit alternate file N (equivalent to ":e #N")
|gf| gf or ]f edit the file whose name is under the cursor
|:pwd| :pwd print the current directory name
|:cd| :cd [path] change the current directory to [path]
|:cd-| :cd - back to previous current directory
|:file| :f[ile] print the current file name and the cursor
position
|:file| :f[ile] {name} set the current file name to {name}
|:file| :f[ile] {name} set the current file name to {name}
|:files| :files show alternate file names
------------------------------------------------------------------------------
*Q_fl* Using the argument list |argument-list|
@@ -1198,12 +1198,12 @@ Context-sensitive completion on the command-line:
in current window in new window ~
|:argument| :argu[ment] N :sar[gument] N edit file N
|:next| :n[ext] :sn[ext] edit next file
|:next| :n[ext] :sn[ext] edit next file
|:next_f| :n[ext] {arglist} :sn[ext] {arglist} define new arg list
and edit first file
|:Next| :N[ext] :sN[ext] edit previous file
|:Next| :N[ext] :sN[ext] edit previous file
|:first| :fir[st] :sfir[st] edit first file
|:last| :la[st] :sla[st] edit last file
|:last| :la[st] :sla[st] edit last file
------------------------------------------------------------------------------
*Q_wq* Writing and quitting

View File

@@ -1,4 +1,4 @@
*syntax.txt* For Vim version 7.3. Last change: 2012 Jul 16
*syntax.txt* For Vim version 7.3. Last change: 2013 Jan 30
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1090,6 +1090,10 @@ Simpler is setting the filetype to "docbkxml" or "docbksgml": >
or: >
:set filetype=docbkxml
You can specify the DocBook version: >
:let docbk_ver = 3
When not set 4 is used.
DOSBATCH *dosbatch.vim* *ft-dosbatch-syntax*
@@ -2489,6 +2493,12 @@ This will add highlighting for the commands that BASH (version 2.05a and
later, and part earlier) adds.
RESTRUCTURED TEXT *rst.vim* *ft-rst-syntax*
You may set what syntax definitions should be used for code blocks via
let rst_syntax_code_list = ['vim', 'lisp', ...]
REXX *rexx.vim* *ft-rexx-syntax*
If you notice highlighting errors while scrolling backwards, which are fixed
@@ -3893,9 +3903,9 @@ External matches *:syn-ext-match*
These extra regular expression items are available in region patterns:
*/\z(* */\z(\)* *E50* *E52*
\z(\) Marks the sub-expression as "external", meaning that it is can
be accessed from another pattern match. Currently only usable
in defining a syntax region start pattern.
\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.
*/\z1* */\z2* */\z3* */\z4* */\z5*
\z1 ... \z9 */\z6* */\z7* */\z8* */\z9* *E66* *E67*
@@ -4582,7 +4592,8 @@ IncSearch 'incsearch' highlighting; also used for the text replaced with
LineNr Line number for ":number" and ":#" commands, and when 'number'
or 'relativenumber' option is set.
*hl-CursorLineNr*
CursorLineNr Like LineNr when 'cursorline' is set for the cursor line.
CursorLineNr Like LineNr when 'cursorline' or 'relativenumber' is set for
the cursor line.
*hl-MatchParen*
MatchParen The character under the cursor or just before it, if it
is a paired bracket, and its match. |pi_paren.txt|

View File

@@ -5032,6 +5032,7 @@ clipboard-exclude options.txt /*clipboard-exclude*
clipboard-html options.txt /*clipboard-html*
clipboard-unnamed options.txt /*clipboard-unnamed*
clipboard-unnamedplus options.txt /*clipboard-unnamedplus*
clojure-indent indent.txt /*clojure-indent*
cmdarg-variable eval.txt /*cmdarg-variable*
cmdbang-variable eval.txt /*cmdbang-variable*
cmdline-arguments vi_diff.txt /*cmdline-arguments*
@@ -5653,6 +5654,7 @@ ft-ch-syntax syntax.txt /*ft-ch-syntax*
ft-changelog-plugin filetype.txt /*ft-changelog-plugin*
ft-changelog-syntax syntax.txt /*ft-changelog-syntax*
ft-chill-syntax syntax.txt /*ft-chill-syntax*
ft-clojure-indent indent.txt /*ft-clojure-indent*
ft-cobol-syntax syntax.txt /*ft-cobol-syntax*
ft-coldfusion-syntax syntax.txt /*ft-coldfusion-syntax*
ft-csh-syntax syntax.txt /*ft-csh-syntax*
@@ -5728,6 +5730,7 @@ ft-quake-syntax syntax.txt /*ft-quake-syntax*
ft-r-indent indent.txt /*ft-r-indent*
ft-readline-syntax syntax.txt /*ft-readline-syntax*
ft-rexx-syntax syntax.txt /*ft-rexx-syntax*
ft-rst-syntax syntax.txt /*ft-rst-syntax*
ft-ruby-omni insert.txt /*ft-ruby-omni*
ft-ruby-syntax syntax.txt /*ft-ruby-syntax*
ft-scheme-syntax syntax.txt /*ft-scheme-syntax*
@@ -5816,6 +5819,12 @@ g:ada_space_errors ft_ada.txt /*g:ada_space_errors*
g:ada_standard_types ft_ada.txt /*g:ada_standard_types*
g:ada_with_gnat_project_files ft_ada.txt /*g:ada_with_gnat_project_files*
g:ada_withuse_ordinary ft_ada.txt /*g:ada_withuse_ordinary*
g:clojure_align_multiline_strings indent.txt /*g:clojure_align_multiline_strings*
g:clojure_fuzzy_indent indent.txt /*g:clojure_fuzzy_indent*
g:clojure_fuzzy_indent_blacklist indent.txt /*g:clojure_fuzzy_indent_blacklist*
g:clojure_fuzzy_indent_patterns indent.txt /*g:clojure_fuzzy_indent_patterns*
g:clojure_maxlines indent.txt /*g:clojure_maxlines*
g:clojure_special_indent_words indent.txt /*g:clojure_special_indent_words*
g:colors_name options.txt /*g:colors_name*
g:decada ft_ada.txt /*g:decada*
g:decada.Error_Format ft_ada.txt /*g:decada.Error_Format*
@@ -5872,6 +5881,7 @@ g:netrw_cygwin pi_netrw.txt /*g:netrw_cygwin*
g:netrw_dav_cmd pi_netrw.txt /*g:netrw_dav_cmd*
g:netrw_decompress pi_netrw.txt /*g:netrw_decompress*
g:netrw_dirhistmax pi_netrw.txt /*g:netrw_dirhistmax*
g:netrw_dynamic_maxfilenamelen pi_netrw.txt /*g:netrw_dynamic_maxfilenamelen*
g:netrw_errorlvl pi_netrw.txt /*g:netrw_errorlvl*
g:netrw_fastbrowse pi_netrw.txt /*g:netrw_fastbrowse*
g:netrw_fetch_cmd pi_netrw.txt /*g:netrw_fetch_cmd*
@@ -6148,6 +6158,7 @@ gui_w16.txt gui_w16.txt /*gui_w16.txt*
gui_w32.txt gui_w32.txt /*gui_w32.txt*
gui_x11.txt gui_x11.txt /*gui_x11.txt*
guifontwide_gtk2 options.txt /*guifontwide_gtk2*
guifontwide_win_mbyte options.txt /*guifontwide_win_mbyte*
guioptions_a options.txt /*guioptions_a*
guu change.txt /*guu*
gv visual.txt /*gv*
@@ -6794,6 +6805,7 @@ mzscheme-buffer if_mzsch.txt /*mzscheme-buffer*
mzscheme-commands if_mzsch.txt /*mzscheme-commands*
mzscheme-dynamic if_mzsch.txt /*mzscheme-dynamic*
mzscheme-examples if_mzsch.txt /*mzscheme-examples*
mzscheme-funcref if_mzsch.txt /*mzscheme-funcref*
mzscheme-mzeval if_mzsch.txt /*mzscheme-mzeval*
mzscheme-sandbox if_mzsch.txt /*mzscheme-sandbox*
mzscheme-threads if_mzsch.txt /*mzscheme-threads*
@@ -6840,6 +6852,7 @@ netrw-R pi_netrw.txt /*netrw-R*
netrw-S pi_netrw.txt /*netrw-S*
netrw-T pi_netrw.txt /*netrw-T*
netrw-U pi_netrw.txt /*netrw-U*
netrw-X pi_netrw.txt /*netrw-X*
netrw-a pi_netrw.txt /*netrw-a*
netrw-activate pi_netrw.txt /*netrw-activate*
netrw-bookmark pi_netrw.txt /*netrw-bookmark*
@@ -7426,6 +7439,7 @@ rileft.txt rileft.txt /*rileft.txt*
riscos os_risc.txt /*riscos*
rot13 change.txt /*rot13*
round() eval.txt /*round()*
rst.vim syntax.txt /*rst.vim*
rsync pi_netrw.txt /*rsync*
ruby if_ruby.txt /*ruby*
ruby-buffer if_ruby.txt /*ruby-buffer*
@@ -7477,6 +7491,8 @@ save-file editing.txt /*save-file*
save-settings starting.txt /*save-settings*
scheme.vim syntax.txt /*scheme.vim*
scp pi_netrw.txt /*scp*
screencol() eval.txt /*screencol()*
screenrow() eval.txt /*screenrow()*
script usr_41.txt /*script*
script-here if_perl.txt /*script-here*
script-local map.txt /*script-local*
@@ -7550,6 +7566,7 @@ shell_error-variable eval.txt /*shell_error-variable*
shellescape() eval.txt /*shellescape()*
shift intro.txt /*shift*
shift-left-right change.txt /*shift-left-right*
shiftwidth() eval.txt /*shiftwidth()*
short-name-changed version4.txt /*short-name-changed*
showing-menus gui.txt /*showing-menus*
sign-commands sign.txt /*sign-commands*

View File

@@ -1,4 +1,4 @@
*todo.txt* For Vim version 7.3. Last change: 2012 Oct 04
*todo.txt* For Vim version 7.3. Last change: 2013 Feb 13
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -34,10 +34,12 @@ not be repeated below, unless there is extra information.
*known-bugs*
-------------------- Known bugs and current work -----------------------
Patch with Test for patch 7.3.673 (Christian Brabandt, 2012 Oct 3)
Download counter for scripts no longer incremented?
Because SourceForge does not have the IP address now, see ticket
https://sourceforge.net/p/forge/site-support/2461/?page=1
Patch for C-\ e when editing expression. (Christian Brabandt, 2012 Oct 3)
Correction by ZyX.
Several syntax file match "^\s*" which may get underlined if that's in the
highlight group. Add a "\zs" after it?
Go through more coverity reports.
@@ -45,66 +47,71 @@ Discussion about canonicalization of Hebrew. (Ron Aaron, 2011 April 10)
Checking runtime scripts: Thilo Six, 2012 Jun 6.
Crash with 1023 byte directory name. (Danek Duvall, 2012 Sep 19)
Patch for wrong text in balloon, Issue 58. (Dominique Pelle)
Patch for menu.vim to correct message about adding spell file.
(Jiri Sedlak, 2012 Sep 24)
GTK: problem with 'L' in 'guioptions' changing the window width.
(Aaron Cornelius, 2012 Feb 6)
Patch for SGR mouse with older xterm. (Hayaki Saito, 2012 Sep 19)
Patch for crash with an autocommand. (ZyX, 2012 Sep 6, second one)
Also patch for garbage, but use vim_strncpy() instead.
Patch to fix crash on Win32 when setting 'encoding'. (Jiri Sedlak, 2012 Sep
12)
Patch to update example using empty(). (ZyX, 2012 Sep 13)
Javascript file where indent gets stuck on: GalaxyMaster, 2012 May 3.
Updated French and Esperanto files. (Dominique Pelle, 2012 Aug 19)
When showing diffs filler lines may be hidden at first.
Patch by Christian Brabandt, 2012 Sep 6.
Patch for memory leaks on exception. (ZyX, 2012 Sep 9)
Patch to trigger CompleteDone when there are no pattern matches. (Christian
Brabandt, 2013 Feb 7)
The CompleteDone autocommand needs some info passed to it:
- The word that was selected (empty if abandoned complete)
- Type of completion: tag, omnifunc, user func.
mouse_sgr is not ordered alphabetically in :version output.
Docs list mouse_urxvt as normal feature, should be big. (Hayaki Saito, 2012
Aug 16)
":gundo" command: global undo. Undoes changes spread over multiple files in
the order they were made. Also ":gredo". Both with a count. Useful when
tests fail after making changes and you forgot in which files.
Patch to make updating tabline faster. (Arseny Kapoulkine, 2012 Oct 3)
Crash with vimdiff. (Don Cruickshank, 2012 Sep 23)
Win32: use 'guifontwide' for IME composition. (Taro Muraoka, 2012 Sep 30)
Update Oct 2.
Patch to make multibyte input work on Win32 console when codepage differs from
'encoding'. (Ken Takata, 2012 Sep 29)
It's possible to defined an input() function that overrides the built-in one.
Patch for building with Ruby and Cygwin. (Ken Takata, 2013 Jan 9)
Patch to make 'relativenumber' show the current lnum instead of zero.
(Nazri Ramliy, 2013 Jan 29)
It's possible to define an input() function that overrides the built-in one.
(ZyX, 2012 Sep 28)
Patch to add sha256() function. (Tyru, 2013 Jan 8)
Test by Higashi, 2013 Feb 2.
All together (tyru, 2013 Feb 5)
Patch to make pyeval() print error messages. (ZyX, 2013 Jan 12)
Win32: When a directory name contains an exclamation mark, completion doesn't
complete the contents of the directory. No escaping for the "!"? (Jan
Stocker, 2012 Jan 5)
Patch for Win32 clipboard under Cygwin. (Frodak Baksik, Feb 15)
Sutcliffe says it works well.
Update 2007 May 22 for Vim 7.1
Update 2008 Dec 2008 for Vim 7.2.xx (Sharonov)
Update by Ken Takata (2012 Dec 31, 2013 Jan 4, 2013 Jan 26)
Problem parsing expression with function(). (Andy Wokula, 2012 Nov 22)
Patch by Christian Brabandt, Nov 22. Tests in another patch, Nov 23.
Patch to detect value of 'ambiwidth' from the termresponse.
(Hayaki Saito, 2013 Feb 11)
Matchparen does not update match when indenting. (Marc Aldorasi, 2013 Feb 9)
Patch to add default value to getbufvar() et al. (Shougo Matsushita, Hirohito
Higashi, 2013 Jan 1)
Problem caused by patch 7.3.638: window->open does not update window
correctly. Issue 91.
Patch to add argument to bufname() to only consider buffers in the current
tab. (Alexey Radkov, 2013 Feb 8) Example in later email.
Is this right?
Patch to fix compiler warnings for MingW 4.5.3. (Ken Takata, 2013 Jan 26)
Do allow real tags above the !_TAG entries. Undo older patch. Issue 90.
Patch to support 'u' in interactive substitute. (Christian Brabandt, 2012 Sep
28) Asked for tests.
28) With tests: Oct 9.
Patch to make fold updates much faster. (Christian Brabandt, 2012 Dec)
Patch for IME handling, adds 'imactivatefunc' and 'imstatusfunc' option.
(Yukihiro Nakadaira, 2012 Aug 16)
@@ -114,20 +121,30 @@ Issue 54: document behavior of -complete, also expands arg.
New syntax files for apt. (quidame, 2012 Sep 21)
'ff' is wrong for one-line file without EOL. (Issue 77)
Patch for if_lua. (Luis Carvalho, 2012 Aug 26, update Aug 29, another Aug 30,
then Sep 1)
then Sep 1, reminder Oct 14)
Issue 72: 'autochdir' causes problems for :vimgrep.
Undo problem: line not removed as expected when using setline() from Insert
mode. (Israel Chauca, 2010 May 13, more in second msg)
Break undo when CTRL-R = changes the text? Or save more lines?
Patch by Christian Brabandt, 2012 Nov 16.
In the ATTENTION message about an existing swap file, mention the name of the
process that is running. It might actually be some other program, e.g. after
a reboot.
MS-Windows: Crash opening very long file name starting with "\\".
(Christian Brock, 2012 Jun 29)
Win32: patch for current directory, "loading iof conv". (Ken Takata, 2012 Sep
15)
It's probably a good idea to make a negative value for 'sts' use the value of
'sw'. Patch by So8res, Oct 3 2012
patch to add "combine" flag to syntax commands. (so8res, 2012 Dec 6)
Syntax update problem in one buffer opened in two windows, bottom window is
not correctly updated. (Paul Harris, 2012 Feb 27)
@@ -137,18 +154,35 @@ Alternate patch by Gary Johnson, Sep 4.
Patch to add getsid(). (Tyru, 2011 Oct 2) Do we want this? Update Oct 4.
Or use expand('<sid>')?
Patch to make confirm() display colors. (Christian Brabandt, 2012 Nov 9)
Patch to add functions for signs. (Christian Brabandt,, 2013 Jan 27)
Patch to use directX to draw text on Windows. Adds the 'directx' option.
(Taro Muraoka, 2013 Jan 25)
b:undo_ftplugin cannot call a script-local function. (Boris Danilov, 2013 Jan
7)
Patch for :tabcloseleft, after closing a tab go to left tab. (William Bowers,
2012 Aug 4)
Patch for Tab behavior with 'conceal'. (Dominique Pelle, 2012 Mar 18)
Patch to test functionality of 'conceal' with tabs. (Simon Ruderich, 2012 Sep
5) Update with screencol() and screenrow() functions: Sep 7.
Patch to improve equivalence classes in regexp patterns.
(Christian Brabandt, 2013 Jan 16, update Jan 17)
Patch with suggestions for starting.txt. (Tony Mechelynck, 2012 Oct 24)
But use Gnome instead of GTK?
Should be possible to enable/disable matchparen per window or buffer.
Add a check for b:no_match_paren in Highlight_matching_Pair() (Marcin
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?
MS-Windows ACL support doesn't work well. Patch from Ken Takata, 2012 Aug 29.
Update Aug 31.
Another patch for MingW, 2012 Dec 29.
MS-Windows resizing problems:
- Windows window on screen positioning: Patch by Yukihiro Nakadaira, 2012 Jun
@@ -162,6 +196,9 @@ MS-Windows resizing problems:
Help for b:undo_indent'. (Thilo Six, 2012 May 28)
Also question if examples are correct.
It should be possible to make globpath() return a list instead of a string,
like with glob(). (Greg Novack, 2012 Nov 2)
The input map for CTRL-O in mswin.vim causes problems after CTRL-X CTRL-O.
Suggestion for another map. (Philip Mat, 2012 Jun 18)
But use "gi" instead of "a". Or use CTRL-\ CTRL-O.
@@ -169,11 +206,20 @@ But use "gi" instead of "a". Or use CTRL-\ CTRL-O.
Patch to support user name completion on MS-Windows. (Yasuhiro Matsumoto, 2012
Aug 16)
Have an option for spell checking to not mark any Chinese, Japanese or other
double-width characters as error. Or perhaps all characters above 256.
(Bill Sun) Helps a lot for mixed Asian and latin text.
When there are no command line arguments ":next" and ":argu" give E163, which
is confusing. Should say "the argument list is empty".
URXVT:
- will get stuck if byte sequence does not containe expected semicolon.
- will get stuck if byte sequence does not contain the expected semicolon.
- Use urxvt mouse support also in xterm. Explanations:
http://www.midnight-commander.org/ticket/2662
MS-Windows: test 17 fails. Analysis by Michael Soyka, 2012 Nov 5.
Patch to add tests for if_xcmdsrv.c., Jul 8, need some more work. (Brian Burns)
New tests Jul 13. Update Jul 17. Discussion Jul 18.
@@ -199,8 +245,6 @@ Patch Sep 18.
Patch for IME problems. Remove hacking code for old IM. (Yukihiro Nakadaira,
2012 Jul 20)
/[^\n] does match at a line break. Expected to do the same as /.
Patch for has('unnamedplus') docs. (Tony Mechelynck, 2011 Sep 27)
And one for gui_x11.txt.
@@ -239,7 +283,7 @@ Update Jun 2.
Patch to add ":py3do". (Lilydjwg, 2012 Apr 7)
`[ moves to character after insert, instead of the last inserted character.
`] moves to character after insert, instead of the last inserted character.
(Yukihiro Nakadaira, 2011 Dec 9)
Plugin for Modeleasy. (Massimiliano Tripoli, 2011 Nov 29)
@@ -267,12 +311,6 @@ On MS-Windows a temp dir with a & init causes system() to fail. (Ben Fritz,
'list' is set. (Dennis Preiser)
Patch 7.3.116 was the wrong solution.
Christian Brabandt has another incomplete patch. (2011 Jul 13)
Also: Alignment in help with tabs gets messed up, esp. at ":help index".
Probably need to make a tab work like there was no concealing. Possibly with
an option. Like line wrapping works as if there is no concealing.
Patch by Dominique Pelle, Also fixes "fC" problem.
"fC" doesn't position the cursor correctly when there are concealed
characters. Patch by Christian Brabandt, 2011 Oct 11)
With concealed text mouse click doesn't put the cursor in the right position.
(Herb Sitz) Fix by Christian Brabandt, 2011 Jun 16. Doesn't work properly,
@@ -310,6 +348,9 @@ Oct 26)
Bug in repeating Visual "u". (Lawrence Kesteloot, 2010 Dec 20)
Using "p" in Visual mode while specifying the small delete register "-
overwrites the register before it is put. (Marcin Szamotulski, 2012 Nov 23)
With "unamedplus" in 'clipboard' pasting in Visual mode causes error for empty
register. (Michael Seiwald, 2011 Jun 28) I can't reproduce it.
@@ -328,14 +369,8 @@ The error was 'RenderBadPicture (invalid Picture parameter)'.
backtrace from your debugger if you break on the gdk_x_error() function.)
Check that number of pixels doesn't go above 65535?
popup completion menu closes quickly when there is a fold in the buffer. (Jan
Christoph Ebersbach, 2011 Jul 3)
Windows keys not set properly on Windows 7? (cncyber, 2010 Aug 26)
This line hangs Vim, because of syntax HL:
call append(line, "INFO ....12....18....24....30....36....42....48....54....60....66....72....78%$")
When using a Vim server, a # in the path causes an error message.
(Jeff Lanzarotta, 2011 Feb 17)
@@ -373,6 +408,12 @@ string() can't parse back "inf" and "nan". Fix documentation or fix code?
Make 'formatprg' global-local. (Sung Pae)
When a buffer-local mapping is used, but a global mapping starts with the same
characters, Vim currently waits for the next typed character to find out if
the global mapping matches. It is probably better to let the local mapping
win and not wait. (discussion with Andy Wokula, 2013 Jan 30)
Patch by Michael Henry, 2013 Jan 30.
When doing "redir => s:foo" in a script and then "redir END" somewhere else
(e.g. in a function) it can't find s:foo.
@@ -388,9 +429,6 @@ mapping, how to restore the script ID?
Bug in try/catch: return with invalid compare throws error that isn't caught.
(ZyX, 2011 Jan 26)
Highlighting stops working after changing it many times. Script to reproduce
it: Pablo Contreras, 2010 Oct 12 Windows XP and 7. Font is never freed?
When setting a local option value from the global value, add a script ID that
indicates this, so that ":verbose set" can give a hint. Check with options in
the help file.
@@ -504,6 +542,9 @@ names, shell commands and the like. (Kikuchan, 2010 Oct 14)
Assume the system converts between the actual encoding of the filesystem to
the system encoding (usually utf-8).
Patch to add GUI colors to the terminal, when it supports it. (ZyX, 2013 Jan
26)
Problem producing tags file when hebrew.frx is present. It has a BOM.
Results in E670. (Tony Mechelynck, 2010 May 2)
@@ -617,6 +658,11 @@ Add local time at start of --startuptime output.
Requires configure check for localtime().
Use format year-month-day hr:min:sec.
Patch to add "combine" to :syntax, combines highlight attributes. (Nate
Soares, 2012 Dec 3)
Patch to make ":hi link" also take arguments. (Nate Soares, 2012 Dec 4)
Shell not recognized properly if it ends in "csh -f". (James Vega, 2009 Nov 3)
Find tail? Might have a / in argument. Find space? Might have space in
path.
@@ -655,10 +701,6 @@ Problem with stop directory in findfile(). (Adam Simpkins, 2009 Aug 26)
Using ']' as the end of a range in a pattern requires double escaping:
/[@-\\]] (Andy Wokula, 2011 Jun 28)
Undo problem: line not removed as expected when using setline() from Insert
mode. (Israel Chauca, 2010 May 13, more in second msg)
Break undo when CTRL-R = changes the text? Or save more lines?
Slow combination of folding and PHP syntax highlighting. Script to reproduce
it. Caused by "syntax sync fromstart" in combination with patch 7.2.274.
(Christian Brabandt, 2010 May 27)
@@ -701,7 +743,7 @@ to avoid changing 'eventignore'?
Patch for displaying 0x200c and 0x200d. (Ali Gholami Rudi, 2009 May 6)
Probably needs a bit of work.
List of encoding aliases. (Takao Fujiware, 2009 Jul 18)
List of encoding aliases. (Takao Fujiwara, 2009 Jul 18)
Are they all OK? Update Jul 22.
Win32: Improved Makefile for MSVC. (Leonardo Valeri Manera, 2010 Aug 18)
@@ -731,7 +773,7 @@ Problem with <script> mappings (Andy Wokula, 2009 Mar 8)
When starting Vim with "gvim -f -u non_existent_file > foo.txt" there are a
few control characters in the output. (Dale Wiles, 2009 May 28)
'cmdwinheight is only used in last window when 'winheight' is a large value.
'cmdwinheight' is only used in last window when 'winheight' is a large value.
(Tony Mechelynck, 2009 Apr 15)
Status line containing winnr() isn't updated when splitting the window (Clark
@@ -761,10 +803,6 @@ Now that colnr_T is int instead of unsigned, more type casts can be removed.
'delcombine' does not work for the command line. (Tony Mechelynck, 2009 Jul
20)
Unwanted file name escaping: ":echo input('file:' , '', 'file')"
And use file name completion on a file with spaces. (Frederic Hardy, 2009 Mar
23)
Don't load macmap.vim on startup, turn it into a plugin. (Ron Aaron,
2009 Apr 7) Reminder Apr 14.
@@ -821,7 +859,7 @@ very high. (Yegappan Lakshmanan, 2010 Jul 22, Michael Peeters, 2010 Jul 22)
Directory wrong in session file, caused by ":lcd" in BufEnter autocommand.
(Felix Kater, 2009 Mar 3)
Session file generates error upon loading, cause bu --remote-silent-tab.
Session file generates error upon loading, cause by --remote-silent-tab.
(7tommm (ytommm) 2010 Nov 24)
Using ~ works OK on 'a' with composing char, but not on 0x0418 with composing
@@ -942,8 +980,6 @@ error message? Or is this easy to implement? (Nathan Stratton Treadway, 2008
Aug 20) This is in ucs2bytes(), search for 0xBF. Using the ++bad argument is
at the other match for 0xBF.
Fix for matchparen HL doesn't work. beep.
When adding "-complete=file" to a user command this also changes how the
argument is processed for <f-args>. (Ivan Tishchenko, 2008 Aug 19)
@@ -1238,11 +1274,6 @@ makes his own wrapper). Add a magic string with the version number to the
Changes for Win32 makefile. (Mike Williams, 2007 Jan 22, Alexei Alexandrov,
2007 Feb 8)
Patch for Win32 clipboard under Cygwin. (Frodak Baksik, Feb 15)
Sutcliffe says it works well.
Update 2007 May 22 for Vim 7.1
Update 2008 Dec 2008 for Vim 7.2.xx (Sharonov)
Win32: Can't complete shell command names. Why is setting xp_context in
set_one_cmd_context() inside #ifndef BACKSLASH_IN_FILENAME?
@@ -1280,10 +1311,6 @@ pointer in long and seek offset in 64 bit var.
Win32: patch for fullscreen mode. (Liushaolin, 2008 April 17)
Win32: When there is 4 Gbyte of memory mch_avail_mem() doesn't work properly.
Unfinished patch by Jelle Geerts, 2008 Aug 24.
Let mch_avail_mem() return Kbyte instead?
Win32: When 'shell' is bash shellescape() doesn't always do the right thing.
Depends on 'shellslash', 'shellquote' and 'shellxquote', but shellescape()
only takes 'shellslash' into account.
@@ -1553,9 +1580,6 @@ resulting in highlighted "{" in that window, not in the other.
In mswin.vim: Instead of mapping <C-V> for Insert mode in a complicated way,
can it be done like ":imap <C-V> <MiddleMouse>" without negative side effects?
Completion menu disappears when using 'cursorcolumn'. (Sven-Hendrik Haase,
2011 May 23)
GTK: when the Tab pages bar appears or disappears while the window is
maximized the window is no longer maximized. Patch that has some idea but
doesn't work from Geoffrey Antos, 2008 May 5.
@@ -1593,6 +1617,9 @@ Win32, NTFS: When editing a specific infostream directly and 'backupcopy' is
name is something like "c:\path\foo.txt:bar", includes a colon. (Alex
Jakushev, 2008 Feb 1)
printf() uses the field width in bytes. Can it be made character width,
perhaps with a modifier? What does Posix say?
Small problem displaying diff filler line when opening windows with a script.
(David Luyer, 2007 Mar 1 ~/Mail/oldmail/mool/in.15872 )
@@ -1658,7 +1685,8 @@ Patch to support horizontal scroll wheel in GTK. Untested. (Bjorn Winckler,
2010 Jun 30)
At next release:
At next release 7.4:
- Build a huge version by default.
- Rename src/Makefile and create a new one like toplevel Makefile that
creates auto/config.mk when it's not there? (Ben Schmidt, 2011 Feb 11)
- Improve plugin handling: Automatic updates, handle dependencies?
@@ -4291,6 +4319,7 @@ Incsearch:
Searching:
9 Should have an option for :vimgrep to find lines without a match.
8 Add "g/" and "gb" to search for a pattern in the Visually selected text?
"g?" is already used for rot13.
The vis.vim script has a ":S" command that does something like this.
@@ -4422,6 +4451,9 @@ Searching:
Undo:
9 ":gundo" command: global undo. Undoes changes spread over multiple files
in the order they were made. Also ":gredo". Both with a count. Useful
when tests fail after making changes and you forgot in which files.
9 After undo/redo, in the message show whether the buffer is modified or
not.
8 Use timestamps for undo, so that a version a certain time ago can be found
@@ -4606,6 +4638,7 @@ Options:
7 There is 'titleold', why is there no 'iconold'? (Chazelas)
7 Make 'scrolloff' a global-local option, so that it can be different in the
quickfix window, for example. (Gary Holloway)
Also do 'sidescrolloff'.
External commands:

View File

@@ -1,4 +1,4 @@
*uganda.txt* For Vim version 7.3. Last change: 2012 May 28
*uganda.txt* For Vim version 7.3. Last change: 2012 Dec 02
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -238,6 +238,7 @@ Canada: Contact Kibaale Children's Fund (KCF) in Surrey, Canada. They
Holland: Transfer to the account of "Stichting ICCF Holland" in Lisse.
This will allow for tax deduction if you live in Holland.
Postbank, nr. 4548774
IBAN: NL95 INGB 0004 5487 74
Germany: It is possible to make donations that allow for a tax return.
Check the ICCF web site for the latest information:

View File

@@ -1,4 +1,4 @@
*usr_05.txt* For Vim version 7.3. Last change: 2009 Jun 04
*usr_05.txt* For Vim version 7.3. Last change: 2012 Nov 20
VIM USER MANUAL - by Bram Moolenaar
@@ -49,8 +49,7 @@ For MS-DOS and MS-Windows you can use one of these:
The vimrc file can contain all the commands that you type after a colon. The
most simple ones are for setting options. For example, if you want Vim to
always start with the 'incsearch' option on, add this line you your vimrc
file: >
always start with the 'incsearch' option on, add this line your vimrc file: >
set incsearch

View File

@@ -17,7 +17,7 @@ side by side. All this is possible with split windows.
|08.6| Commands for all windows
|08.7| Viewing differences with vimdiff
|08.8| Various
|08.9| Tab pages
|08.9| Tab pages
Next chapter: |usr_09.txt| Using the GUI
Previous chapter: |usr_07.txt| Editing more than one file

View File

@@ -1,4 +1,4 @@
*usr_21.txt* For Vim version 7.3. Last change: 2008 Nov 09
*usr_21.txt* For Vim version 7.3. Last change: 2012 Nov 02
VIM USER MANUAL - by Bram Moolenaar
@@ -282,7 +282,7 @@ example, use: >
SESSION HERE, SESSION THERE
The obvious way to use sessions is when working on different projects.
Suppose you store you session files in the directory "~/.vim". You are
Suppose you store your session files in the directory "~/.vim". You are
currently working on the "secret" project and have to switch to the "boring"
project: >
@@ -295,7 +295,7 @@ is saved, using ":mksession!". This overwrites the previous session. The
next time you load the secret session you can continue where you were at this
point. And finally you load the new "boring" session.
If you open help windows, split and close various window, and generally mess
If you open help windows, split and close various windows, and generally mess
up the window layout, you can go back to the last saved session: >
:source ~/.vim/boring.vim
@@ -423,10 +423,10 @@ and nine numbered 1 to 9.
A VIEW WITH A NAME
The second basic way to use views is by storing the view in a file with a name
you chose. This view can be loaded while editing another file. Vim will then
switch to editing the file specified in the view. Thus you can use this to
quickly switch to editing another file, with all its options set as you saved
them.
you choose. This view can be loaded while editing another file. Vim will
then switch to editing the file specified in the view. Thus you can use this
to quickly switch to editing another file, with all its options set as you
saved them.
For example, to save the view of the current file: >
:mkview ~/.vim/main.vim

View File

@@ -1,4 +1,4 @@
*usr_22.txt* For Vim version 7.3. Last change: 2010 Feb 21
*usr_22.txt* For Vim version 7.3. Last change: 2012 Nov 15
VIM USER MANUAL - by Bram Moolenaar
@@ -326,9 +326,9 @@ shorter to type: >
The output could look like this:
1 #h "help.txt" line 62 ~
2 %a+ "usr_21.txt" line 1 ~
3 "usr_toc.txt" line 1 ~
1 #h "help.txt" line 62 ~
2 %a + "usr_21.txt" line 1 ~
3 "usr_toc.txt" line 1 ~
The first column contains the buffer number. You can use this to edit the
buffer without having to type the name, see below.

View File

@@ -18,7 +18,7 @@ This chapter explains the different ways this can be done.
|28.7| Folding by syntax
|28.8| Folding by expression
|28.9| Folding unchanged lines
|28.10| Which fold method to use?
|28.10| Which fold method to use?
Next chapter: |usr_29.txt| Moving through programs
Previous chapter: |usr_27.txt| Search commands and patterns

View File

@@ -1,4 +1,4 @@
*usr_41.txt* For Vim version 7.3. Last change: 2012 Mar 16
*usr_41.txt* For Vim version 7.3. Last change: 2012 Oct 13
VIM USER MANUAL - by Bram Moolenaar
@@ -1581,7 +1581,7 @@ Here the comment part will be ignored. However, Vim will try to unmap
RESTORING THE VIEW
Sometimes you want to make a change and go back to where cursor was.
Sometimes you want to make a change and go back to where the cursor was.
Restoring the relative position would also be nice, so that the same line
appears at the top of the window.
This example yanks the current line, puts it above the first line in the

View File

@@ -248,7 +248,7 @@ Subjects that can be read independently.
|28.7| Folding by syntax
|28.8| Folding by expression
|28.9| Folding unchanged lines
|28.10| Which fold method to use?
|28.10| Which fold method to use?
|usr_29.txt| Moving through programs
|29.1| Using tags

View File

@@ -1,4 +1,4 @@
*various.txt* For Vim version 7.3. Last change: 2012 Aug 03
*various.txt* For Vim version 7.3. Last change: 2012 Dec 06
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -174,27 +174,37 @@ g8 Print the hex values of the bytes used in the
the command-line. {commands} are executed like they
are typed. For undo all commands are undone together.
Execution stops when an error is encountered.
If the [!] is given, mappings will not be used.
Without it, when this command is called from a
non-remappable mapping (|:noremap|), the argument can
be mapped anyway.
{commands} should be a complete command. If
{commands} does not finish a command, the last one
will be aborted as if <Esc> or <C-C> was typed.
The display isn't updated while ":normal" is busy.
This implies that an insert command must be completed
(to start Insert mode, see |:startinsert|). A ":"
command must be completed as well. And you can't use
"Q" or "gQ" to start Ex mode.
The display is not updated while ":normal" is busy.
{commands} cannot start with a space. Put a count of
1 (one) before it, "1 " is one space.
The 'insertmode' option is ignored for {commands}.
This command cannot be followed by another command,
since any '|' is considered part of the command.
This command can be used recursively, but the depth is
limited by 'maxmapdepth'.
When this command is called from a non-remappable
mapping |:noremap|, the argument can be mapped anyway.
An alternative is to use |:execute|, which uses an
expression as argument. This allows the use of
printable characters to represent special characters.
Example: >
:exe "normal \<c-w>\<c-w>"
< {not in Vi, of course}
@@ -353,75 +363,75 @@ N *+mouseshape* |'mouseshape'|
B *+mouse_dec* Unix only: Dec terminal mouse handling |dec-mouse|
N *+mouse_gpm* Unix only: Linux console mouse handling |gpm-mouse|
B *+mouse_netterm* Unix only: netterm mouse handling |netterm-mouse|
N *+mouse_pterm* QNX only: pterm mouse handling |qnx-terminal|
N *+mouse_pterm* QNX only: pterm mouse handling |qnx-terminal|
N *+mouse_sysmouse* Unix only: *BSD console mouse handling |sysmouse|
B *+mouse_sgr* Unix only: sgr mouse handling |sgr-mouse|
N *+mouse_urxvt* Unix only: urxvt mouse handling |urxvt-mouse|
N *+mouse_xterm* Unix only: xterm mouse handling |xterm-mouse|
B *+multi_byte* 16 and 32 bit characters |multibyte|
B *+mouse_urxvt* Unix only: urxvt mouse handling |urxvt-mouse|
N *+mouse_xterm* Unix only: xterm mouse handling |xterm-mouse|
B *+multi_byte* 16 and 32 bit characters |multibyte|
*+multi_byte_ime* Win32 input method for multibyte chars |multibyte-ime|
N *+multi_lang* non-English language support |multi-lang|
N *+multi_lang* non-English language support |multi-lang|
m *+mzscheme* Mzscheme interface |mzscheme|
m *+mzscheme/dyn* Mzscheme interface |mzscheme-dynamic| |/dyn|
m *+netbeans_intg* |netbeans|
m *+ole* Win32 GUI only: |ole-interface|
N *+path_extra* Up/downwards search in 'path' and 'tags'
m *+ole* Win32 GUI only: |ole-interface|
N *+path_extra* Up/downwards search in 'path' and 'tags'
m *+perl* Perl interface |perl|
m *+perl/dyn* Perl interface |perl-dynamic| |/dyn|
N *+persistent_undo* Persistent undo |undo-persistence|
*+postscript* |:hardcopy| writes a PostScript file
*+postscript* |:hardcopy| writes a PostScript file
N *+printer* |:hardcopy| command
H *+profile* |:profile| command
m *+python* Python 2 interface |python|
m *+python/dyn* Python 2 interface |python-dynamic| |/dyn|
m *+python/dyn* Python 2 interface |python-dynamic| |/dyn|
m *+python3* Python 3 interface |python|
m *+python3/dyn* Python 3 interface |python-dynamic| |/dyn|
m *+python3/dyn* Python 3 interface |python-dynamic| |/dyn|
N *+quickfix* |:make| and |quickfix| commands
N *+reltime* |reltime()| function, 'hlsearch'/'incsearch' timeout,
'redrawtime' option
B *+rightleft* Right to left typing |'rightleft'|
m *+ruby* Ruby interface |ruby|
m *+ruby/dyn* Ruby interface |ruby-dynamic| |/dyn|
N *+scrollbind* |'scrollbind'|
N *+scrollbind* |'scrollbind'|
B *+signs* |:sign|
N *+smartindent* |'smartindent'|
N *+smartindent* |'smartindent'|
m *+sniff* SniFF interface |sniff|
N *+startuptime* |--startuptime| argument
N *+statusline* Options 'statusline', 'rulerformat' and special
N *+startuptime* |--startuptime| argument
N *+statusline* Options 'statusline', 'rulerformat' and special
formats of 'titlestring' and 'iconstring'
m *+sun_workshop* |workshop|
N *+syntax* Syntax highlighting |syntax|
*+system()* Unix only: opposite of |+fork|
N *+tag_binary* binary searching in tags file |tag-binary-search|
N *+tag_binary* binary searching in tags file |tag-binary-search|
N *+tag_old_static* old method for static tags |tag-old-static|
m *+tag_any_white* any white space allowed in tags file |tag-any-white|
m *+tcl* Tcl interface |tcl|
m *+tcl* Tcl interface |tcl|
m *+tcl/dyn* Tcl interface |tcl-dynamic| |/dyn|
*+terminfo* uses |terminfo| instead of termcap
N *+termresponse* support for |t_RV| and |v:termresponse|
N *+textobjects* |text-objects| selection
N *+textobjects* |text-objects| selection
*+tgetent* non-Unix only: able to use external termcap
N *+title* Setting the window 'title' and 'icon'
N *+toolbar* |gui-toolbar|
N *+user_commands* User-defined commands. |user-commands|
N *+viminfo* |'viminfo'|
N *+vertsplit* Vertically split windows |:vsplit|
N *+virtualedit* |'virtualedit'|
N *+virtualedit* |'virtualedit'|
S *+visual* Visual mode |Visual-mode|
N *+visualextra* extra Visual mode commands |blockwise-operators|
N *+visualextra* extra Visual mode commands |blockwise-operators|
N *+vreplace* |gR| and |gr|
N *+wildignore* |'wildignore'|
N *+wildignore* |'wildignore'|
N *+wildmenu* |'wildmenu'|
S *+windows* more than one window
m *+writebackup* |'writebackup'| is default on
m *+xim* X input method |xim|
m *+writebackup* |'writebackup'| is default on
m *+xim* X input method |xim|
*+xfontset* X fontset support |xfontset|
m *+xpm_w32* Win32 GUI only: pixmap support |w32-xpm-support|
*+xsmp* XSMP (X session management) support
*+xsmp_interact* interactive XSMP (X session management) support
N *+xterm_clipboard* Unix only: xterm clipboard handling
m *+xterm_save* save and restore xterm screen |xterm-screens|
N *+X11* Unix only: can restore window title |X11|
m *+xterm_save* save and restore xterm screen |xterm-screens|
N *+X11* Unix only: can restore window title |X11|
*/dyn* *E370* *E448*
To some of the features "/dyn" is added when the

View File

@@ -1,4 +1,4 @@
*windows.txt* For Vim version 7.3. Last change: 2012 Apr 13
*windows.txt* For Vim version 7.3. Last change: 2012 Nov 15
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -939,9 +939,9 @@ list of buffers. |unlisted-buffer|
:buffers[!] *:buffers* *:ls*
:ls[!] Show all buffers. Example:
1 #h "/test/text" line 1 ~
2u "asdf" line 0 ~
3 %a+ "version.c" line 1 ~
1 #h "/test/text" line 1 ~
2u "asdf" line 0 ~
3 %a + "version.c" line 1 ~
When the [!] is included the list will show unlisted buffers
(the term "unlisted" is a bit confusing then...).

View File

@@ -1,7 +1,7 @@
" Vim support file to detect file types
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2012 Oct 05
" Last Change: 2013 Feb 12
" Listen very carefully, I will say this only once
if exists("did_load_filetypes")
@@ -489,6 +489,9 @@ au BufNewFile,BufRead *.prg
\ setf clipper |
\ endif
" Clojure
au BufNewFile,BufRead *.clj,*.cljs setf clojure
" Cmake
au BufNewFile,BufRead CMakeLists.txt,*.cmake,*.cmake.in setf cmake
@@ -744,6 +747,7 @@ au BufNewFile,BufRead *.ged,lltxxxxx.txt setf gedcom
" Git
au BufNewFile,BufRead *.git/COMMIT_EDITMSG setf gitcommit
au BufNewFile,BufRead *.git/MERGE_MSG setf gitcommit
au BufNewFile,BufRead *.git/config,.gitconfig,.gitmodules setf gitconfig
au BufNewFile,BufRead *.git/modules/**/COMMIT_EDITMSG setf gitcommit
au BufNewFile,BufRead *.git/modules/**/config setf gitconfig
@@ -1075,6 +1079,9 @@ au BufNewFile,BufRead *[mM]akefile,*.mk,*.mak,*.dsp setf make
" MakeIndex
au BufNewFile,BufRead *.ist,*.mst setf ist
" Mallard
au BufNewFile,BufRead *.page setf mallard
" Manpage
au BufNewFile,BufRead *.man setf man
@@ -1566,7 +1573,7 @@ au BufNewFile,BufRead *.reg
au BufNewFile,BufRead *.rib setf rib
" Rexx
au BufNewFile,BufRead *.rexx,*.rex,*.jrexx,*.rxj,*.orx setf rexx
au BufNewFile,BufRead *.rex,*.orx,*.rxo,*.rxj,*.jrexx,*.rexxj,*.rexx,*.testGroup,*.testUnit setf rexx
" R (Splus)
if has("fname_case")
@@ -1745,7 +1752,8 @@ au BufNewFile,BufRead *.sgm,*.sgml
\ if getline(1).getline(2).getline(3).getline(4).getline(5) =~? 'linuxdoc' |
\ setf sgmllnx |
\ elseif getline(1) =~ '<!DOCTYPE.*DocBook' || getline(2) =~ '<!DOCTYPE.*DocBook' |
\ let b:docbk_type="sgml" |
\ let b:docbk_type = "sgml" |
\ let b:docbk_ver = 4 |
\ setf docbk |
\ else |
\ setf sgml |
@@ -1884,6 +1892,8 @@ au BufNewFile,BufRead *.st setf st
au BufNewFile,BufRead *.cls
\ if getline(1) =~ '^%' |
\ setf tex |
\ elseif getline(1)[0] == '#' && getline(1) =~ 'rexx' |
\ setf rexx |
\ else |
\ setf st |
\ endif
@@ -2305,8 +2315,16 @@ func! s:FTxml()
let n = 1
while n < 100 && n < line("$")
let line = getline(n)
if line =~ '<!DOCTYPE.*DocBook'
" DocBook 4 or DocBook 5.
let is_docbook4 = line =~ '<!DOCTYPE.*DocBook'
let is_docbook5 = line =~ ' xmlns="http://docbook.org/ns/docbook"'
if is_docbook4 || is_docbook5
let b:docbk_type = "xml"
if is_docbook5
let b:docbk_ver = 5
else
let b:docbk_ver = 4
endif
setf docbk
return
endif

View File

@@ -0,0 +1,79 @@
" Vim filetype plugin file
" Language: Clojure
" Author: Meikel Brandmeyer <mb@kotka.de>
"
" Maintainer: Sung Pae <self@sungpae.com>
" URL: https://github.com/guns/vim-clojure-static
" License: Same as Vim
" Last Change: 30 January 2013
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
let b:undo_ftplugin = 'setlocal define< formatoptions< comments< commentstring<'
" There will be false positives, but this is better than missing the whole set
" of user-defined def* definitions.
setlocal define=\\v[(/]def(ault)@!\\S*
" Remove 't' from 'formatoptions' to avoid auto-wrapping code. The '+=croql'
" is standard ftplugin boilerplate, although it is arguably intrusive.
setlocal formatoptions-=t formatoptions+=croql
" Lisp comments are routinely nested (e.g. ;;; SECTION HEADING)
setlocal comments=n:;
setlocal commentstring=;\ %s
" Provide insert mode completions for special forms and clojure.core. As
" 'omnifunc' is set by popular Clojure REPL client plugins, we also set
" 'completefunc' so that the user has some form of completion available when
" 'omnifunc' is set and no REPL connection exists.
for s:setting in ['omnifunc', 'completefunc']
if exists('&' . s:setting) && empty(eval('&' . s:setting))
execute 'setlocal ' . s:setting . '=clojurecomplete#Complete'
let b:undo_ftplugin .= ' | setlocal ' . s:setting . '<'
endif
endfor
" Take all directories of the CLOJURE_SOURCE_DIRS environment variable
" and add them to the path option.
"
" This is a legacy option for VimClojure users.
if exists('$CLOJURE_SOURCE_DIRS')
for s:dir in split($CLOJURE_SOURCE_DIRS, (has("win32") || has("win64")) ? ';' : ':')
let s:dir = fnameescape(s:dir)
" Whitespace escaping for Windows
let s:dir = substitute(s:dir, '\', '\\\\', 'g')
let s:dir = substitute(s:dir, '\ ', '\\ ', 'g')
execute "setlocal path+=" . s:dir . "/**"
endfor
let b:undo_ftplugin .= ' | setlocal path<'
endif
" Skip brackets in ignored syntax regions when using the % command
if exists('loaded_matchit')
let b:match_words = &matchpairs
let b:match_skip = 's:comment\|string\|regex\|character'
let b:undo_ftplugin .= ' | unlet! b:match_words b:match_skip'
endif
" Win32 can filter files in the browse dialog
if has("gui_win32") && !exists("b:browsefilter")
let b:browsefilter = "Clojure Source Files (*.clj)\t*.clj\n" .
\ "ClojureScript Source Files (*.cljs)\t*.cljs\n" .
\ "Java Source Files (*.java)\t*.java\n" .
\ "All Files (*.*)\t*.*\n"
let b:undo_ftplugin .= ' | unlet! b:browsefilter'
endif
let &cpo = s:cpo_save
unlet! s:cpo_save s:setting s:dir
" vim:sts=4 sw=4 et:

View File

@@ -4,7 +4,7 @@
" URL: http://sites.google.com/site/khorser/opensource/vim
" Original author: Dorai Sitaram <ds26@gte.com>
" Original URL: http://www.ccs.neu.edu/~dorai/vimplugins/vimplugins.html
" Last Change: Mar 5, 2012
" Last Change: Feb 12, 2013
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
@@ -19,10 +19,11 @@ setl define=^\\s*(def\\k*
setl formatoptions-=t
setl iskeyword+=+,-,*,/,%,<,=,>,:,$,?,!,@-@,94
setl lisp
setl commentstring=;%s
" make comments behaviour like in c.vim
" e.g. insertion of ;;; and ;; on normal "O" or "o" when staying in comment
setl comments^=:;;;,:;;,sr:#\|,mb:\|,ex:\|#
setl formatoptions+=croql
let b:undo_ftplugin = "setlocal comments< define< formatoptions< iskeyword< lisp<"
let b:undo_ftplugin = "setlocal comments< define< formatoptions< iskeyword< lisp< commentstring<"

View File

@@ -1,7 +1,7 @@
" Vim filetype plugin file
" Language: Mail
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2009 Jun 03
" Last Change: 2012 Nov 20
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
@@ -9,7 +9,7 @@ if exists("b:did_ftplugin")
endif
let b:did_ftplugin = 1
let b:undo_ftplugin = "setl modeline< tw< fo<"
let b:undo_ftplugin = "setl modeline< tw< fo< comments<"
" Don't use modelines in e-mail messages, avoid trojan horses and nasty
" "jokes" (e.g., setting 'textwidth' to 5).
@@ -23,6 +23,9 @@ endif
" Set 'formatoptions' to break text lines and keep the comment leader ">".
setlocal fo+=tcql
" Add n:> to 'comments, in case it was removed elsewhere
setlocal comments+=n:>
" Add mappings, unless the user doesn't want this.
if !exists("no_plugin_maps") && !exists("no_mail_maps")
" Quote text by inserting "> "

View File

@@ -4,7 +4,7 @@
" URL: http://sites.google.com/site/khorser/opensource/vim
" Original author: Dorai Sitaram <ds26@gte.com>
" Original URL: http://www.ccs.neu.edu/~dorai/vimplugins/vimplugins.html
" Last Change: Mar 5, 2012
" Last Change: Feb 12, 2013
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
@@ -20,6 +20,7 @@ setl define=^\\s*(def\\k*
setl formatoptions-=t
setl iskeyword+=+,-,*,/,%,<,=,>,:,$,?,!,@-@,94
setl lisp
setl commentstring=;%s
" make comments behaviour like in c.vim
" e.g. insertion of ;;; and ;; on normal "O" or "o" when staying in comment
@@ -44,4 +45,4 @@ if exists("b:is_chicken") || exists("is_chicken")
setl lispwords+=cond-expand,and-let*,foreign-lambda,foreign-lambda*
endif
let b:undo_ftplugin = "setlocal comments< define< formatoptions< iskeyword< lispwords< lisp<"
let b:undo_ftplugin = "setlocal comments< define< formatoptions< iskeyword< lispwords< lisp< commentstring<"

View File

@@ -1,8 +1,8 @@
" SQL filetype plugin file
" Language: SQL (Common for Oracle, Microsoft SQL Server, Sybase)
" Version: 8.0
" Version: 10.0
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
" Last Change: 2012 May 18
" Last Change: 2012 Dec 04
" Download: http://vim.sourceforge.net/script.php?script_id=454
" For more details please use:
@@ -30,34 +30,48 @@
" To change the default dialect, add the following to your vimrc:
" let g:sql_type_default = 'sqlanywhere'
"
" This file also creates a command, SQLGetType, which allows you to
" This file also creates a command, SQLGetType, which allows you to
" determine what the current dialect is in use.
" :SQLGetType
"
" History
"
" Version 10.0 (Dec 2012)
"
" NF: Changed all maps to use noremap instead of must map
" NF: Changed all visual maps to use xnoremap instead of vnoremap as they
" should only be used in visual mode and not select mode.
" BF: Most of the maps were using doubled up backslashes before they were
" changed to using the search() function, which meant they no longer
" worked.
"
" Version 9.0
"
" NF: Completes 'b:undo_ftplugin'
" BF: Correctly set cpoptions when creating script
"
" Version 8.0
"
"
" NF: Improved the matchit plugin regex (Talek)
"
" Version 7.0
"
"
" NF: Calls the sqlcomplete#ResetCacheSyntax() function when calling
" SQLSetType.
"
" Version 6.0
"
"
" NF: Adds the command SQLGetType
"
" Version 5.0
"
" NF: Adds the ability to choose the keys to control SQL completion, just add
"
" NF: Adds the ability to choose the keys to control SQL completion, just add
" the following to your .vimrc:
" let g:ftplugin_sql_omni_key = '<C-C>'
" let g:ftplugin_sql_omni_key_right = '<Right>'
" let g:ftplugin_sql_omni_key_left = '<Left>'
"
" BF: format-options - Auto-wrap comments using textwidth was turned off
" BF: format-options - Auto-wrap comments using textwidth was turned off
" by mistake.
@@ -81,7 +95,7 @@ setlocal formatoptions+=c
" This works with both Vim 6 and 7.
if !exists("*SQL_SetType")
" NOTE: You cannot use function! since this file can be
" NOTE: You cannot use function! since this file can be
" sourced from within this function. That will result in
" an error reported by Vim.
function SQL_GetList(ArgLead, CmdLine, CursorPos)
@@ -105,9 +119,9 @@ if !exists("*SQL_SetType")
"
" Recursively, since there are many filenames that contain
" the word SQL in the indent, syntax and ftplugin directory
let sqls = substitute( sqls,
\ '[\n]\%(.\{-}\)\(\w\+\.\w\+\)\n\@=',
\ '\1\n',
let sqls = substitute( sqls,
\ '[\n]\%(.\{-}\)\(\w\+\.\w\+\)\n\@=',
\ '\1\n',
\ 'g'
\ )
@@ -142,10 +156,10 @@ if !exists("*SQL_SetType")
function SQL_SetType(name)
" User has decided to override default SQL scripts and
" specify a vendor specific version
" specify a vendor specific version
" (ie Oracle, Informix, SQL Anywhere, ...)
" So check for an remove any settings that prevent the
" scripts from being executed, and then source the
" scripts from being executed, and then source the
" appropriate Vim scripts.
if exists("b:did_ftplugin")
unlet b:did_ftplugin
@@ -163,10 +177,10 @@ if !exists("*SQL_SetType")
endif
" Ensure the name is in the correct format
let new_sql_type = substitute(a:name,
let new_sql_type = substitute(a:name,
\ '\s*\([^\.]\+\)\(\.\w\+\)\?', '\L\1', '')
" Do not specify a buffer local variable if it is
" Do not specify a buffer local variable if it is
" the default value
if new_sql_type == 'sql'
let new_sql_type = 'sqloracle'
@@ -203,10 +217,10 @@ endif
if !exists("*SQL_GetType")
function SQL_GetType()
if exists('b:sql_type_override')
if exists('b:sql_type_override')
echomsg "Current SQL dialect in use:".b:sql_type_override
else
echomsg "Current SQL dialect in use:".g:sql_type_default
echomsg "Current SQL dialect in use:".g:sql_type_default
endif
endfunction
command! -nargs=0 SQLGetType :call SQL_GetType()
@@ -233,7 +247,8 @@ if exists("b:did_ftplugin")
finish
endif
let b:undo_ftplugin = "setl comments<"
let b:undo_ftplugin = "setl comments< formatoptions< define< omnifunc<" .
\ " | unlet! b:browsefilter b:match_words"
" Don't load another plugin for this buffer
let b:did_ftplugin = 1
@@ -280,7 +295,7 @@ if !exists("b:match_words")
" doend
"
" case
" when
" when
" when
" default
" end case
@@ -296,8 +311,10 @@ if !exists("b:match_words")
" create[ or replace] procedure|function|event
" \ '^\s*\<\%(do\|for\|while\|loop\)\>.*:'.
let b:match_words =
\ '\<begin\>:\<end\>\W*$,'.
" For ColdFusion support
setlocal matchpairs+=<:>
let b:match_words = &matchpairs .
\ ',\<begin\>:\<end\>\W*$,'.
\
\ s:notend . '\<if\>:'.
\ '\<elsif\>\|\<elseif\>\|\<else\>:'.
@@ -337,14 +354,14 @@ let &l:define = '\c\<\(VARIABLE\|DECLARE\|IN\|OUT\|INOUT\)\>'
" Mappings to move to the next BEGIN ... END block
" \W - no characters or digits
nmap <buffer> <silent> ]] :call search('\\c^\\s*begin\\>', 'W' )<CR>
nmap <buffer> <silent> [[ :call search('\\c^\\s*begin\\>', 'bW' )<CR>
nmap <buffer> <silent> ][ :call search('\\c^\\s*end\\W*$', 'W' )<CR>
nmap <buffer> <silent> [] :call search('\\c^\\s*end\\W*$', 'bW' )<CR>
vmap <buffer> <silent> ]] :<C-U>exec "normal! gv"<Bar>call search('\\c^\\s*begin\\>', 'W' )<CR>
vmap <buffer> <silent> [[ :<C-U>exec "normal! gv"<Bar>call search('\\c^\\s*begin\\>', 'bW' )<CR>
vmap <buffer> <silent> ][ :<C-U>exec "normal! gv"<Bar>call search('\\c^\\s*end\\W*$', 'W' )<CR>
vmap <buffer> <silent> [] :<C-U>exec "normal! gv"<Bar>call search('\\c^\\s*end\\W*$', 'bW' )<CR>
nnoremap <buffer> <silent> ]] :call search('\c^\s*begin\>', 'W' )<CR>
nnoremap <buffer> <silent> [[ :call search('\c^\s*begin\>', 'bW' )<CR>
nnoremap <buffer> <silent> ][ :call search('\c^\s*end\W*$', 'W' )<CR>
nnoremap <buffer> <silent> [] :call search('\c^\s*end\W*$', 'bW' )<CR>
xnoremap <buffer> <silent> ]] :<C-U>exec "normal! gv"<Bar>call search('\c^\s*begin\>', 'W' )<CR>
xnoremap <buffer> <silent> [[ :<C-U>exec "normal! gv"<Bar>call search('\c^\s*begin\>', 'bW' )<CR>
xnoremap <buffer> <silent> ][ :<C-U>exec "normal! gv"<Bar>call search('\c^\s*end\W*$', 'W' )<CR>
xnoremap <buffer> <silent> [] :<C-U>exec "normal! gv"<Bar>call search('\c^\s*end\W*$', 'bW' )<CR>
" By default only look for CREATE statements, but allow
@@ -361,7 +378,7 @@ endif
" backwards, you must use \{,1}
if !exists('g:ftplugin_sql_objects')
let g:ftplugin_sql_objects = 'function,procedure,event,' .
\ '\\(existing\\\\|global\\s\\+temporary\\s\\+\\)\\\{,1}' .
\ '\(existing\\|global\s\+temporary\s\+\)\{,1}' .
\ 'table,trigger' .
\ ',schema,service,publication,database,datatype,domain' .
\ ',index,subscription,synchronization,view,variable'
@@ -382,47 +399,47 @@ endif
" Replace all ,'s with bars, except ones with numbers after them.
" This will most likely be a \{,1} string.
let s:ftplugin_sql_objects =
\ '\\c^\\s*' .
\ '\\(\\(' .
\ substitute(g:ftplugin_sql_statements, ',\d\@!', '\\\\\\|', 'g') .
\ '\\)\\s\\+\\(or\\s\\+replace\\\s\+\\)\\{,1}\\)\\{,1}' .
\ '\\<\\(' .
\ substitute(g:ftplugin_sql_objects, ',\d\@!', '\\\\\\|', 'g') .
\ '\\)\\>'
let s:ftplugin_sql_objects =
\ '\c^\s*' .
\ '\(\(' .
\ substitute(g:ftplugin_sql_statements, ',\d\@!', '\\\\|', 'g') .
\ '\)\s\+\(or\s\+replace\s\+\)\{,1}\)\{,1}' .
\ '\<\(' .
\ substitute(g:ftplugin_sql_objects, ',\d\@!', '\\\\|', 'g') .
\ '\)\>'
" Mappings to move to the next CREATE ... block
exec "nmap <buffer> <silent> ]} :call search('".s:ftplugin_sql_objects."', 'W')<CR>"
exec "nmap <buffer> <silent> [{ :call search('".s:ftplugin_sql_objects."', 'bW')<CR>"
exec "nnoremap <buffer> <silent> ]} :call search('".s:ftplugin_sql_objects."', 'W')<CR>"
exec "nnoremap <buffer> <silent> [{ :call search('".s:ftplugin_sql_objects."', 'bW')<CR>"
" Could not figure out how to use a :call search() string in visual mode
" without it ending visual mode
" Unfortunately, this will add a entry to the search history
exec 'vmap <buffer> <silent> ]} /'.s:ftplugin_sql_objects.'<CR>'
exec 'vmap <buffer> <silent> [{ ?'.s:ftplugin_sql_objects.'<CR>'
exec 'xnoremap <buffer> <silent> ]} /'.s:ftplugin_sql_objects.'<CR>'
exec 'xnoremap <buffer> <silent> [{ ?'.s:ftplugin_sql_objects.'<CR>'
" Mappings to move to the next COMMENT
"
" Had to double the \ for the \| separator since this has a special
" meaning on maps
let b:comment_leader = '\\(--\\\|\\/\\/\\\|\\*\\\|\\/\\*\\\|\\*\\/\\)'
let b:comment_leader = '\(--\\|\/\/\\|\*\\|\/\*\\|\*\/\)'
" Find the start of the next comment
let b:comment_start = '^\\(\\s*'.b:comment_leader.'.*\\n\\)\\@<!'.
\ '\\(\\s*'.b:comment_leader.'\\)'
let b:comment_start = '^\(\s*'.b:comment_leader.'.*\n\)\@<!'.
\ '\(\s*'.b:comment_leader.'\)'
" Find the end of the previous comment
let b:comment_end = '\\(^\\s*'.b:comment_leader.'.*\\n\\)'.
\ '\\(^\\s*'.b:comment_leader.'\\)\\@!'
let b:comment_end = '\(^\s*'.b:comment_leader.'.*\n\)'.
\ '\(^\s*'.b:comment_leader.'\)\@!'
" Skip over the comment
let b:comment_jump_over = "call search('".
\ '^\\(\\s*'.b:comment_leader.'.*\\n\\)\\@<!'.
\ '^\(\s*'.b:comment_leader.'.*\n\)\@<!'.
\ "', 'W')"
let b:comment_skip_back = "call search('".
\ '^\\(\\s*'.b:comment_leader.'.*\\n\\)\\@<!'.
\ '^\(\s*'.b:comment_leader.'.*\n\)\@<!'.
\ "', 'bW')"
" Move to the start and end of comments
exec 'nnoremap <silent><buffer> ]" :call search('."'".b:comment_start."'".', "W" )<CR>'
exec 'nnoremap <silent><buffer> [" :call search('."'".b:comment_end."'".', "W" )<CR>'
exec 'vnoremap <silent><buffer> ]" :<C-U>exec "normal! gv"<Bar>call search('."'".b:comment_start."'".', "W" )<CR>'
exec 'vnoremap <silent><buffer> [" :<C-U>exec "normal! gv"<Bar>call search('."'".b:comment_end."'".', "W" )<CR>'
exec 'xnoremap <silent><buffer> ]" :<C-U>exec "normal! gv"<Bar>call search('."'".b:comment_start."'".', "W" )<CR>'
exec 'xnoremap <silent><buffer> [" :<C-U>exec "normal! gv"<Bar>call search('."'".b:comment_end."'".', "W" )<CR>'
" Comments can be of the form:
" /*
@@ -431,7 +448,7 @@ exec 'vnoremap <silent><buffer> [" :<C-U>exec "normal! gv"<Bar>call search('."'"
" or
" --
" or
" //
" //
setlocal comments=s1:/*,mb:*,ex:*/,:--,://
" Set completion with CTRL-X CTRL-O to autoloaded function.
@@ -443,7 +460,7 @@ if exists('&omnifunc')
" This is used by the sqlcomplete.vim plugin
" Source it for it's global functions
runtime autoload/syntaxcomplete.vim
runtime autoload/syntaxcomplete.vim
setlocal omnifunc=sqlcomplete#Complete
" Prevent the intellisense plugin from loading
@@ -451,32 +468,32 @@ if exists('&omnifunc')
if !exists('g:omni_sql_no_default_maps')
" Static maps which use populate the completion list
" using Vim's syntax highlighting rules
exec 'imap <buffer> '.g:ftplugin_sql_omni_key.'a <C-\><C-O>:call sqlcomplete#Map("syntax")<CR><C-X><C-O>'
exec 'imap <buffer> '.g:ftplugin_sql_omni_key.'k <C-\><C-O>:call sqlcomplete#Map("sqlKeyword")<CR><C-X><C-O>'
exec 'imap <buffer> '.g:ftplugin_sql_omni_key.'f <C-\><C-O>:call sqlcomplete#Map("sqlFunction")<CR><C-X><C-O>'
exec 'imap <buffer> '.g:ftplugin_sql_omni_key.'o <C-\><C-O>:call sqlcomplete#Map("sqlOption")<CR><C-X><C-O>'
exec 'imap <buffer> '.g:ftplugin_sql_omni_key.'T <C-\><C-O>:call sqlcomplete#Map("sqlType")<CR><C-X><C-O>'
exec 'imap <buffer> '.g:ftplugin_sql_omni_key.'s <C-\><C-O>:call sqlcomplete#Map("sqlStatement")<CR><C-X><C-O>'
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'a <C-\><C-O>:call sqlcomplete#Map("syntax")<CR><C-X><C-O>'
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'k <C-\><C-O>:call sqlcomplete#Map("sqlKeyword")<CR><C-X><C-O>'
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'f <C-\><C-O>:call sqlcomplete#Map("sqlFunction")<CR><C-X><C-O>'
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'o <C-\><C-O>:call sqlcomplete#Map("sqlOption")<CR><C-X><C-O>'
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'T <C-\><C-O>:call sqlcomplete#Map("sqlType")<CR><C-X><C-O>'
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'s <C-\><C-O>:call sqlcomplete#Map("sqlStatement")<CR><C-X><C-O>'
" Dynamic maps which use populate the completion list
" using the dbext.vim plugin
exec 'imap <buffer> '.g:ftplugin_sql_omni_key.'t <C-\><C-O>:call sqlcomplete#Map("table")<CR><C-X><C-O>'
exec 'imap <buffer> '.g:ftplugin_sql_omni_key.'p <C-\><C-O>:call sqlcomplete#Map("procedure")<CR><C-X><C-O>'
exec 'imap <buffer> '.g:ftplugin_sql_omni_key.'v <C-\><C-O>:call sqlcomplete#Map("view")<CR><C-X><C-O>'
exec 'imap <buffer> '.g:ftplugin_sql_omni_key.'c <C-\><C-O>:call sqlcomplete#Map("column")<CR><C-X><C-O>'
exec 'imap <buffer> '.g:ftplugin_sql_omni_key.'l <C-\><C-O>:call sqlcomplete#Map("column_csv")<CR><C-X><C-O>'
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'t <C-\><C-O>:call sqlcomplete#Map("table")<CR><C-X><C-O>'
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'p <C-\><C-O>:call sqlcomplete#Map("procedure")<CR><C-X><C-O>'
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'v <C-\><C-O>:call sqlcomplete#Map("view")<CR><C-X><C-O>'
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'c <C-\><C-O>:call sqlcomplete#Map("column")<CR><C-X><C-O>'
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'l <C-\><C-O>:call sqlcomplete#Map("column_csv")<CR><C-X><C-O>'
" The next 3 maps are only to be used while the completion window is
" active due to the <CR> at the beginning of the map
exec 'imap <buffer> '.g:ftplugin_sql_omni_key.'L <C-Y><C-\><C-O>:call sqlcomplete#Map("column_csv")<CR><C-X><C-O>'
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'L <C-Y><C-\><C-O>:call sqlcomplete#Map("column_csv")<CR><C-X><C-O>'
" <C-Right> is not recognized on most Unix systems, so only create
" these additional maps on the Windows platform.
" If you would like to use these maps, choose a different key and make
" the same map in your vimrc.
" if has('win32')
exec 'imap <buffer> '.g:ftplugin_sql_omni_key_right.' <C-R>=sqlcomplete#DrillIntoTable()<CR>'
exec 'imap <buffer> '.g:ftplugin_sql_omni_key_left.' <C-R>=sqlcomplete#DrillOutOfColumns()<CR>'
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key_right.' <C-R>=sqlcomplete#DrillIntoTable()<CR>'
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key_left.' <C-R>=sqlcomplete#DrillOutOfColumns()<CR>'
" endif
" Remove any cached items useful for schema changes
exec 'imap <buffer> '.g:ftplugin_sql_omni_key.'R <C-\><C-O>:call sqlcomplete#Map("resetCache")<CR><C-X><C-O>'
exec 'inoremap <buffer> '.g:ftplugin_sql_omni_key.'R <C-\><C-O>:call sqlcomplete#Map("resetCache")<CR><C-X><C-O>'
endif
if b:sql_compl_savefunc != ""

398
runtime/indent/clojure.vim Normal file
View File

@@ -0,0 +1,398 @@
" Vim indent file
" Language: Clojure
" Author: Meikel Brandmeyer <mb@kotka.de>
" URL: http://kotka.de/projects/clojure/vimclojure.html
"
" Maintainer: Sung Pae <self@sungpae.com>
" URL: https://github.com/guns/vim-clojure-static
" License: Same as Vim
" Last Change: 30 January 2013
" Only load this indent file when no other was loaded.
if exists("b:did_indent")
finish
endif
let b:did_indent = 1
let s:save_cpo = &cpo
set cpo&vim
let b:undo_indent = 'setlocal autoindent< smartindent< lispwords< expandtab< softtabstop< shiftwidth< indentexpr< indentkeys<'
setlocal noautoindent nosmartindent
setlocal softtabstop=2 shiftwidth=2 expandtab
setlocal indentkeys=!,o,O
if exists("*searchpairpos")
if !exists('g:clojure_maxlines')
let g:clojure_maxlines = 100
endif
if !exists('g:clojure_fuzzy_indent')
let g:clojure_fuzzy_indent = 1
endif
if !exists('g:clojure_fuzzy_indent_patterns')
let g:clojure_fuzzy_indent_patterns = ['^with', '^def', '^let']
endif
if !exists('g:clojure_fuzzy_indent_blacklist')
let g:clojure_fuzzy_indent_blacklist = ['-fn$', '\v^with-%(meta|out-str|loading-context)$']
endif
if !exists('g:clojure_special_indent_words')
let g:clojure_special_indent_words = 'deftype,defrecord,reify,proxy,extend-type,extend-protocol,letfn'
endif
if !exists('g:clojure_align_multiline_strings')
let g:clojure_align_multiline_strings = 0
endif
function! s:SynIdName()
return synIDattr(synID(line("."), col("."), 0), "name")
endfunction
function! s:CurrentChar()
return getline('.')[col('.')-1]
endfunction
function! s:CurrentWord()
return getline('.')[col('.')-1 : searchpos('\v>', 'n', line('.'))[1]-2]
endfunction
function! s:IsParen()
return s:CurrentChar() =~ '\v[\(\)\[\]\{\}]' &&
\ s:SynIdName() !~? '\vstring|comment'
endfunction
" Returns 1 if string matches a pattern in 'patterns', which may be a
" list of patterns, or a comma-delimited string of implicitly anchored
" patterns.
function! s:MatchesOne(patterns, string)
let list = type(a:patterns) == type([])
\ ? a:patterns
\ : map(split(a:patterns, ','), '"^" . v:val . "$"')
for pat in list
if a:string =~ pat | return 1 | endif
endfor
endfunction
function! s:SavePosition()
let [ _b, l, c, _o ] = getpos(".")
let b = bufnr("%")
return [b, l, c]
endfunction
function! s:RestorePosition(value)
let [b, l, c] = a:value
if bufnr("%") != b
execute b "buffer!"
endif
call setpos(".", [0, l, c, 0])
endfunction
function! s:MatchPairs(open, close, stopat)
" Stop only on vector and map [ resp. {. Ignore the ones in strings and
" comments.
if a:stopat == 0
let stopat = max([line(".") - g:clojure_maxlines, 0])
else
let stopat = a:stopat
endif
let pos = searchpairpos(a:open, '', a:close, 'bWn', "!s:IsParen()", stopat)
return [pos[0], virtcol(pos)]
endfunction
function! s:ClojureCheckForStringWorker()
" Check whether there is the last character of the previous line is
" highlighted as a string. If so, we check whether it's a ". In this
" case we have to check also the previous character. The " might be the
" closing one. In case the we are still in the string, we search for the
" opening ". If this is not found we take the indent of the line.
let nb = prevnonblank(v:lnum - 1)
if nb == 0
return -1
endif
call cursor(nb, 0)
call cursor(0, col("$") - 1)
if s:SynIdName() !~? "string"
return -1
endif
" This will not work for a " in the first column...
if s:CurrentChar() == '"'
call cursor(0, col("$") - 2)
if s:SynIdName() !~? "string"
return -1
endif
if s:CurrentChar() != '\\'
return -1
endif
call cursor(0, col("$") - 1)
endif
let p = searchpos('\(^\|[^\\]\)\zs"', 'bW')
if p != [0, 0]
return p[1] - 1
endif
return indent(".")
endfunction
function! s:CheckForString()
let pos = s:SavePosition()
try
let val = s:ClojureCheckForStringWorker()
finally
call s:RestorePosition(pos)
endtry
return val
endfunction
function! s:ClojureIsMethodSpecialCaseWorker(position)
" Find the next enclosing form.
call search('\S', 'Wb')
" Special case: we are at a '(('.
if s:CurrentChar() == '('
return 0
endif
call cursor(a:position)
let nextParen = s:MatchPairs('(', ')', 0)
" Special case: we are now at toplevel.
if nextParen == [0, 0]
return 0
endif
call cursor(nextParen)
call search('\S', 'W')
if g:clojure_special_indent_words =~ '\<' . s:CurrentWord() . '\>'
return 1
endif
return 0
endfunction
function! s:IsMethodSpecialCase(position)
let pos = s:SavePosition()
try
let val = s:ClojureIsMethodSpecialCaseWorker(a:position)
finally
call s:RestorePosition(pos)
endtry
return val
endfunction
function! GetClojureIndent()
" Get rid of special case.
if line(".") == 1
return 0
endif
" We have to apply some heuristics here to figure out, whether to use
" normal lisp indenting or not.
let i = s:CheckForString()
if i > -1
return i + !!g:clojure_align_multiline_strings
endif
call cursor(0, 1)
" Find the next enclosing [ or {. We can limit the second search
" to the line, where the [ was found. If no [ was there this is
" zero and we search for an enclosing {.
let paren = s:MatchPairs('(', ')', 0)
let bracket = s:MatchPairs('\[', '\]', paren[0])
let curly = s:MatchPairs('{', '}', bracket[0])
" In case the curly brace is on a line later then the [ or - in
" case they are on the same line - in a higher column, we take the
" curly indent.
if curly[0] > bracket[0] || curly[1] > bracket[1]
if curly[0] > paren[0] || curly[1] > paren[1]
return curly[1]
endif
endif
" If the curly was not chosen, we take the bracket indent - if
" there was one.
if bracket[0] > paren[0] || bracket[1] > paren[1]
return bracket[1]
endif
" There are neither { nor [ nor (, ie. we are at the toplevel.
if paren == [0, 0]
return 0
endif
" Now we have to reimplement lispindent. This is surprisingly easy, as
" soon as one has access to syntax items.
"
" - Check whether we are in a special position after a word in
" g:clojure_special_indent_words. These are special cases.
" - Get the next keyword after the (.
" - If its first character is also a (, we have another sexp and align
" one column to the right of the unmatched (.
" - In case it is in lispwords, we indent the next line to the column of
" the ( + sw.
" - If not, we check whether it is last word in the line. In that case
" we again use ( + sw for indent.
" - In any other case we use the column of the end of the word + 2.
call cursor(paren)
if s:IsMethodSpecialCase(paren)
return paren[1] + &shiftwidth - 1
endif
" In case we are at the last character, we use the paren position.
if col("$") - 1 == paren[1]
return paren[1]
endif
" In case after the paren is a whitespace, we search for the next word.
normal! l
if s:CurrentChar() == ' '
normal! w
endif
" If we moved to another line, there is no word after the (. We
" use the ( position for indent.
if line(".") > paren[0]
return paren[1]
endif
" We still have to check, whether the keyword starts with a (, [ or {.
" In that case we use the ( position for indent.
let w = s:CurrentWord()
if stridx('([{', w[0]) > -1
return paren[1]
endif
" Test words without namespace qualifiers and leading reader macro
" metacharacters.
"
" e.g. clojure.core/defn and #'defn should both indent like defn.
let ww = substitute(w, "\\v%(.*/|[#'`~@^,]*)(.*)", '\1', '')
if &lispwords =~ '\V\<' . ww . '\>'
return paren[1] + &shiftwidth - 1
endif
if g:clojure_fuzzy_indent
\ && !s:MatchesOne(g:clojure_fuzzy_indent_blacklist, ww)
\ && s:MatchesOne(g:clojure_fuzzy_indent_patterns, ww)
return paren[1] + &shiftwidth - 1
endif
normal! W
if paren[0] < line(".")
return paren[1] + &shiftwidth - 1
endif
normal! ge
return virtcol(".") + 1
endfunction
setlocal indentexpr=GetClojureIndent()
else
" In case we have searchpairpos not available we fall back to
" normal lisp indenting.
setlocal indentexpr=
setlocal lisp
let b:undo_indent .= '| setlocal lisp<'
endif
" Specially indented symbols from clojure.core and clojure.test.
"
" Clojure symbols are indented in the defn style when they:
"
" * Define vars and anonymous functions
" * Create new lexical scopes or scopes with altered environments
" * Create conditional branches from a predicate function or value
"
" The arglists for these functions are generally in the form of [x & body];
" Functions that accept a flat list of forms do not treat the first argument
" specially and hence are not indented specially.
" Definitions
setlocal lispwords=
setlocal lispwords+=bound-fn
setlocal lispwords+=def
setlocal lispwords+=definline
setlocal lispwords+=definterface
setlocal lispwords+=defmacro
setlocal lispwords+=defmethod
setlocal lispwords+=defmulti
setlocal lispwords+=defn
setlocal lispwords+=defn-
setlocal lispwords+=defonce
setlocal lispwords+=defprotocol
setlocal lispwords+=defrecord
setlocal lispwords+=defstruct
setlocal lispwords+=deftest " clojure.test
setlocal lispwords+=deftest- " clojure.test
setlocal lispwords+=deftype
setlocal lispwords+=extend
setlocal lispwords+=extend-protocol
setlocal lispwords+=extend-type
setlocal lispwords+=fn
setlocal lispwords+=ns
setlocal lispwords+=proxy
setlocal lispwords+=reify
setlocal lispwords+=set-test " clojure.test
" Binding forms
setlocal lispwords+=as->
setlocal lispwords+=binding
setlocal lispwords+=doall
setlocal lispwords+=dorun
setlocal lispwords+=doseq
setlocal lispwords+=dotimes
setlocal lispwords+=doto
setlocal lispwords+=for
setlocal lispwords+=if-let
setlocal lispwords+=let
setlocal lispwords+=letfn
setlocal lispwords+=locking
setlocal lispwords+=loop
setlocal lispwords+=testing " clojure.test
setlocal lispwords+=when-first
setlocal lispwords+=when-let
setlocal lispwords+=with-bindings
setlocal lispwords+=with-in-str
setlocal lispwords+=with-local-vars
setlocal lispwords+=with-open
setlocal lispwords+=with-precision
setlocal lispwords+=with-redefs
setlocal lispwords+=with-redefs-fn
setlocal lispwords+=with-test " clojure.test
" Conditional branching
setlocal lispwords+=case
setlocal lispwords+=cond->
setlocal lispwords+=cond->>
setlocal lispwords+=condp
setlocal lispwords+=if
setlocal lispwords+=if-not
setlocal lispwords+=when
setlocal lispwords+=when-not
setlocal lispwords+=while
" Exception handling
setlocal lispwords+=catch
setlocal lispwords+=try " For aesthetics when enclosing single line
let &cpo = s:save_cpo
unlet! s:save_cpo
" vim:sts=4 sw=4 et:

View File

@@ -1,8 +1,8 @@
" Vim indent file
" Language: SQL
" Maintainer: David Fishburn <fishburn at ianywhere dot com>
" Last Change: Mon Apr 02 2007 9:13:47 AM
" Version: 1.5
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
" Last Change: 2012 Dec 06
" Version: 3.0
" Download: http://vim.sourceforge.net/script.php?script_id=495
" Notes:
@@ -18,6 +18,17 @@
" Known Issues:
" The Oracle MERGE statement does not have an end tag associated with
" it, this can leave the indent hanging to the right one too many.
"
" History:
" 3.0 (Dec 2012)
" Added cpo check
"
" 2.0
" Added the FOR keyword to SQLBlockStart to handle (Alec Tica):
" for i in 1..100 loop
" |<-- I expect to have indentation here
" end loop;
"
" Only load this indent file when no other was loaded.
if exists("b:did_indent")
@@ -56,8 +67,8 @@ set cpo&vim
" IS is excluded, since it is difficult to determine when the
" ending block is (especially for procedures/functions).
let s:SQLBlockStart = '^\s*\%('.
\ 'if\|else\|elseif\|elsif\|'.
\ 'while\|loop\|do\|'.
\ 'if\|else\|elseif\|elsif\|'.
\ 'while\|loop\|do\|for\|'.
\ 'begin\|'.
\ 'case\|when\|merge\|exception'.
\ '\)\>'
@@ -66,7 +77,7 @@ let s:SQLBlockEnd = '^\s*\(end\)\>'
" The indent level is also based on unmatched paranethesis
" If a line has an extra "(" increase the indent
" If a line has an extra ")" decrease the indent
function s:CountUnbalancedParan( line, paran_to_check )
function! s:CountUnbalancedParan( line, paran_to_check )
let l = a:line
let lp = substitute(l, '[^(]', '', 'g')
let l = a:line
@@ -88,7 +99,7 @@ function s:CountUnbalancedParan( line, paran_to_check )
endfunction
" Unindent commands based on previous indent level
function s:CheckToIgnoreRightParan( prev_lnum, num_levels )
function! s:CheckToIgnoreRightParan( prev_lnum, num_levels )
let lnum = a:prev_lnum
let line = getline(lnum)
let ends = 0
@@ -151,7 +162,7 @@ endfunction
" something;
" WHEN ...
" Should return indent level of exception.
function s:GetStmtStarterIndent( keyword, curr_lnum )
function! s:GetStmtStarterIndent( keyword, curr_lnum )
let lnum = a:curr_lnum
" Default - reduce indent by 1
@@ -193,7 +204,7 @@ endfunction
" Check if the line is a comment
function s:IsLineComment(lnum)
function! s:IsLineComment(lnum)
let rc = synIDattr(
\ synID(a:lnum,
\ match(getline(a:lnum), '\S')+1, 0)
@@ -205,7 +216,7 @@ endfunction
" Check if the column is a comment
function s:IsColComment(lnum, cnum)
function! s:IsColComment(lnum, cnum)
let rc = synIDattr(synID(a:lnum, a:cnum, 0), "name")
\ =~? "comment"
@@ -215,7 +226,7 @@ endfunction
" Instead of returning a column position, return
" an appropriate value as a factor of shiftwidth.
function s:ModuloIndent(ind)
function! s:ModuloIndent(ind)
let ind = a:ind
if ind > 0
@@ -231,7 +242,7 @@ endfunction
" Find correct indent of a new line based upon the previous line
function GetSQLIndent()
function! GetSQLIndent()
let lnum = v:lnum
let ind = indent(lnum)
@@ -242,35 +253,27 @@ function GetSQLIndent()
" return ind
" endif
" while 1
" Get previous non-blank line
let prevlnum = prevnonblank(lnum - 1)
if prevlnum <= 0
return ind
endif
" Get previous non-blank line
let prevlnum = prevnonblank(lnum - 1)
if prevlnum <= 0
return ind
endif
if s:IsLineComment(prevlnum) == 1
if getline(v:lnum) =~ '^\s*\*'
let ind = s:ModuloIndent(indent(prevlnum))
return ind + 1
endif
" If the previous line is a comment, then return -1
" to tell Vim to use the formatoptions setting to determine
" the indent to use
" But only if the next line is blank. This would be true if
" the user is typing, but it would not be true if the user
" is reindenting the file
if getline(v:lnum) =~ '^\s*$'
return -1
endif
if s:IsLineComment(prevlnum) == 1
if getline(v:lnum) =~ '^\s*\*'
let ind = s:ModuloIndent(indent(prevlnum))
return ind + 1
endif
" let prevline = getline(prevlnum)
" if prevline !~ '^\s*$'
" " echom 'previous non blank - break: ' . prevline
" break
" endif
" endwhile
" If the previous line is a comment, then return -1
" to tell Vim to use the formatoptions setting to determine
" the indent to use
" But only if the next line is blank. This would be true if
" the user is typing, but it would not be true if the user
" is reindenting the file
if getline(v:lnum) =~ '^\s*$'
return -1
endif
endif
" echom 'PREVIOUS INDENT: ' . indent(prevlnum) . ' LINE: ' . getline(prevlnum)
@@ -384,7 +387,7 @@ function GetSQLIndent()
return s:ModuloIndent(ind)
endfunction
let &cpo = s:keepcpo
" Restore:
let &cpo= s:keepcpo
unlet s:keepcpo
" vim:sw=4:
" vim: ts=4 fdm=marker sw=4

132
runtime/indent/yaml.vim Normal file
View File

@@ -0,0 +1,132 @@
" Vim indent file
" Language: YAML
" Maintainer: Nikolai Pavlov <zyx.vim@gmail.com>
" Only load this indent file when no other was loaded.
if exists('b:did_indent')
finish
endif
let s:save_cpo = &cpo
set cpo&vim
let b:did_indent = 1
setlocal indentexpr=GetYAMLIndent(v:lnum)
setlocal indentkeys=!^F,o,O,0#,0},0],<:>,-
setlocal nosmartindent
let b:undo_indent = 'setlocal indentexpr< indentkeys< smartindent<'
" Only define the function once.
if exists('*GetYAMLIndent')
finish
endif
if exists('*shiftwidth')
let s:shiftwidth = function('shiftwidth')
else
function s:shiftwidth()
return &shiftwidth
endfunction
endif
function s:FindPrevLessIndentedLine(lnum, ...)
let prevlnum = prevnonblank(a:lnum-1)
let curindent = a:0 ? a:1 : indent(a:lnum)
while prevlnum
\&& indent(prevlnum) >= curindent
\&& getline(prevlnum) !~# '^\s*#'
let prevlnum = prevnonblank(prevlnum-1)
endwhile
return prevlnum
endfunction
function s:FindPrevLEIndentedLineMatchingRegex(lnum, regex)
let plilnum = s:FindPrevLessIndentedLine(a:lnum, indent(a:lnum)+1)
while plilnum && getline(plilnum) !~# a:regex
let plilnum = s:FindPrevLessIndentedLine(plilnum)
endwhile
return plilnum
endfunction
let s:mapkeyregex='\v^\s*%(\''%([^'']|'''')*\'''.
\ '|\"%([^"\\]|\\.)*\"'.
\ '|%(%(\:\ )@!.)*)\:%(\ |$)'
let s:liststartregex='\v^\s*%(\-%(\ |$))'
function GetYAMLIndent(lnum)
if a:lnum == 1 || !prevnonblank(a:lnum-1)
return 0
endif
let prevlnum = prevnonblank(a:lnum-1)
let previndent = indent(prevlnum)
let line = getline(a:lnum)
if line =~# '^\s*#' && getline(a:lnum-1) =~# '^\s*#'
" Comment blocks should have identical indent
return previndent
elseif line =~# '^\s*[\]}]'
" Lines containing only closing braces should have previous indent
return indent(s:FindPrevLessIndentedLine(a:lnum))
endif
" Ignore comment lines when calculating indent
while getline(prevlnum) =~# '^\s*#'
let prevlnum = prevnonblank(prevlnum-1)
if !prevlnum
return previndent
endif
endwhile
let prevline = getline(prevlnum)
let previndent = indent(prevlnum)
" Any examples below assume that shiftwidth=2
if prevline =~# '\v[{[:]$|[:-]\ [|>][+\-]?%(\s+\#.*|\s*)$'
" Mapping key:
" nested mapping: ...
"
" - {
" key: [
" list value
" ]
" }
"
" - |-
" Block scalar without indentation indicator
return previndent+s:shiftwidth()
elseif prevline =~# '\v[:-]\ [|>]%(\d+[+\-]?|[+\-]?\d+)%(\#.*|\s*)$'
" - |+2
" block scalar with indentation indicator
"#^^ indent+2, not indent+shiftwidth
return previndent + str2nr(matchstr(prevline,
\'\v([:-]\ [|>])@<=[+\-]?\d+%([+\-]?%(\s+\#.*|\s*)$)@='))
elseif prevline =~# '\v\"%([^"\\]|\\.)*\\$'
" "Multiline string \
" with escaped end"
let qidx = match(prevline, '\v\"%([^"\\]|\\.)*\\')
return virtcol([prevlnum, qidx+1])
elseif line =~# s:liststartregex
" List line should have indent equal to previous list line unless it was
" caught by one of the previous rules
return indent(s:FindPrevLEIndentedLineMatchingRegex(a:lnum,
\ s:liststartregex))
elseif line =~# s:mapkeyregex
" Same for line containing mapping key
return indent(s:FindPrevLEIndentedLineMatchingRegex(a:lnum,
\ s:mapkeyregex))
elseif prevline =~# '^\s*- '
" - List with
" multiline scalar
return previndent+2
elseif prevline =~# s:mapkeyregex
" Mapping with: value
" that is multiline scalar
return previndent+s:shiftwidth()
endif
return previndent
endfunction
let &cpo = s:save_cpo

View File

@@ -1,32 +1,38 @@
" Menu Translations: Czech for ISO-8859-2
" Maintainer: Jiri Brezina <brzj@seznam.cz>
" vim:set foldmethod=marker:
" $Revision: 1.3 $
" $Date: 2005/12/19 22:08:24 $
" Menu Translations: Czech (ISO-8859-2)
" Maintainer: Jiri Sedlak <jiri_sedlak@users.sourceforge.net>
" Previous maintainer: Jiri Brezina
" Based on: menu.vim (2012-10-21)
" Quit when menu translations have already been done.
if exists("did_menu_trans")
finish
finish
endif
let did_menu_trans = 1
let s:keepcpo= &cpo
set cpo&vim
scriptencoding ISO-8859-2
scriptencoding iso-8859-2
" {{{ File menu
menutrans &File &Soubor
menutrans &Open\.\.\.<Tab>:e &Otev<EFBFBD><EFBFBD>t\.\.\.<Tab>:e
menutrans Sp&lit-Open\.\.\.<Tab>:sp Otev<EFBFBD><EFBFBD>t\ v\ no&v<EFBFBD>m\ okn<EFBFBD>\.\.\.<Tab>:sp
menutrans Open\ Tab\.\.\.<Tab>:tabnew Otev<EFBFBD><EFBFBD>t\ tab\.\.\.<Tab>:tabnew
menutrans &New<Tab>:enew &Nov<EFBFBD><Tab>:enew
menutrans &Close<Tab>:close &Zav<EFBFBD><EFBFBD>t<Tab>:close
menutrans &Save<Tab>:w &Ulo<EFBFBD>it<Tab>:w
menutrans Save\ &As\.\.\.<Tab>:sav Ulo<EFBFBD>it\ &jako\.\.\.<Tab>:sav
menutrans Split\ &Diff\ with\.\.\. Rozd<EFBFBD>lit\ okno\ -\ &Diff\.\.\.
menutrans Split\ Patched\ &By\.\.\. Rozd<EFBFBD>lit\ okno\ -\ &Patch\.\.\.
menutrans &Print &Tisk
menutrans Sa&ve-Exit<Tab>:wqa U&lo<EFBFBD>it\ -\ Konec<Tab>:wqa
menutrans E&xit<Tab>:qa &Konec<Tab>:qa
if has("printer") || has("unix")
menutrans &Print &Tisk
endif
menutrans Sa&ve-Exit<Tab>:wqa U&lo<EFBFBD>it\ a\ ukon<EFBFBD>it<Tab>:wqa
menutrans E&xit<Tab>:qa &Ukon<EFBFBD>it<Tab>:qa
if has("diff")
menutrans Split\ &Diff\ with\.\.\. Rozd<EFBFBD>lit\ okno\ -\ &Diff\.\.\.
menutrans Split\ Patched\ &By\.\.\. Rozd<EFBFBD>lit\ okno\ -\ &Patch\.\.\.
endif
" }}}
" {{{ Edit menu
@@ -39,24 +45,32 @@ menutrans &Copy<Tab>"+y &Kop
menutrans &Paste<Tab>"+gP V&lo<6C>it<Tab>"+gP
menutrans Put\ &Before<Tab>[p Vlo<EFBFBD>it\ &p<EFBFBD>ed<Tab>[p
menutrans Put\ &After<Tab>]p Vlo<EFBFBD>i&t\ za<Tab>]p
menutrans &Delete<Tab>x &Smazat<Tab>x
if has("win32") || has("win16")
menutrans &Delete<Tab>x &Smazat<Tab>x
endif
menutrans &Select\ All<Tab>ggVG Vy&brat\ v<EFBFBD>e<Tab>ggVG
menutrans &Find\.\.\. &Hledat\.\.\.
menutrans Find\ and\ Rep&lace\.\.\. &Nahradit\.\.\.
menutrans Options\.\.\. Volb&y\.\.\.
if has("win32") || has("win16") || has("gui_gtk") || has("gui_kde") || has("gui_motif")
menutrans &Find\.\.\. &Hledat\.\.\.
menutrans Find\ and\ Rep&lace\.\.\. &Nahradit\.\.\.
else
menutrans Find<Tab>/ &Hledat<Tab>/
menutrans Find\ and\ Rep&lace<Tab>:%s &Nahradit<Tab>:%s
menutrans Find\ and\ Rep&lace<Tab>:s &Nahradit<Tab>:s
endif
menutrans Settings\ &Window Nastav&en<EFBFBD>\ okna
" {{{2 Edit -1
" {{{2 Edit -1
menutrans Startup\ &Settings Po<EFBFBD><EFBFBD>te<EFBFBD>n<EFBFBD>\ &nastaven<EFBFBD>
menutrans &Global\ Settings &Glob<EFBFBD>ln<EFBFBD>\ nastaven<EFBFBD>
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! &P<EFBFBD>epnout\ zv<EFBFBD>razn<EFBFBD>n<EFBFBD>\ vzoru<Tab>:set\ hls!
menutrans Toggle\ &Ignore-case<Tab>:set\ ic! P<EFBFBD>epnout\ ignorov<EFBFBD>n<EFBFBD>\ &VERZ<EFBFBD>LEK<Tab>:set\ ic!
menutrans Toggle\ &Showmatch<Tab>:set\ sm! P<EFBFBD>epnout\ &Showmatch\ \{\(\[\])\}<Tab>:set\ sm!
menutrans &Context\ lines Zobrazit\ konte&xt\ kurzoru
menutrans &Virtual\ Edit Virtu<EFBFBD>ln<EFBFBD>\ p&ozice\ kurzoru
menutrans Never Nikdy
menutrans Block\ Selection V<EFBFBD>b<EFBFBD>r\ Bloku
menutrans Insert\ mode Insert\ m<EFBFBD>d
menutrans Block\ and\ Insert Blok\ a\ Insert
menutrans Always V<EFBFBD>dycky
menutrans Never Nikdy
menutrans Block\ Selection V<EFBFBD>b<EFBFBD>r\ Bloku
menutrans Insert\ mode Insert\ m<EFBFBD>d
menutrans Block\ and\ Insert Blok\ a\ Insert
menutrans Always V<EFBFBD>dycky
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! P<EFBFBD>epnout\ Insert\ m<EFBFBD>&d<Tab>:set\ im!
menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! P<EFBFBD>epnout\ kompatibiln<EFBFBD>\ re<EFBFBD>im\ s\ 'vi'<Tab>:set\ cp!
menutrans Search\ &Path\.\.\. Nastavit\ &cestu\ k\ prohled<EFBFBD>v<EFBFBD>n<EFBFBD>\.\.\.
@@ -65,9 +79,10 @@ menutrans Toggle\ &Toolbar P
menutrans Toggle\ &Bottom\ Scrollbar P<EFBFBD>&epnout\ doln<EFBFBD>\ rolovac<EFBFBD>\ li<EFBFBD>tu
menutrans Toggle\ &Left\ Scrollbar P<EFBFBD>epnout\ &levou\ rolovac<EFBFBD>\ li<EFBFBD>tu
menutrans Toggle\ &Right\ Scrollbar P<EFBFBD>epnout\ p&ravou\ rolovac<EFBFBD>\ li<EFBFBD>tu
" {{{2 Edit -2
" {{{2 Edit -2
menutrans F&ile\ Settings Nastaven<EFBFBD>\ so&uboru
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! P<EFBFBD>epnout\ <20><>slov<EFBFBD>n<EFBFBD>\ <20><>&dk<EFBFBD><Tab>:set\ nu!
menutrans Toggle\ relati&ve\ Line\ Numbering<Tab>:set\ rnu! P<EFBFBD>epnout\ relativn<EFBFBD>\ <20><>slov<EFBFBD>n<EFBFBD>\ <20><>&dk<EFBFBD><Tab>:set\ rnu!
menutrans Toggle\ &List\ Mode<Tab>:set\ list! P<EFBFBD>epnout\ &List\ m<EFBFBD>d<Tab>:set\ list!
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! P<EFBFBD>epnout\ zala&mov<EFBFBD>n<EFBFBD>\ <20><>dk<EFBFBD><Tab>:set\ wrap!
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! P<EFBFBD>epnout\ zl&om\ ve\ slov<EFBFBD><Tab>:set\ lbr!
@@ -78,10 +93,12 @@ menutrans &Shiftwidth Nastav&it\
menutrans Soft\ &Tabstop Nastavit\ Soft\ &Tabstop
menutrans Te&xt\ Width\.\.\. <09><><EFBFBD>ka\ te&xtu\.\.\.
menutrans &File\ Format\.\.\. &Form<EFBFBD>t\ souboru\.\.\.
" {{{2 Edit -3
" {{{2 Edit -3
menutrans C&olor\ Scheme Barevn<EFBFBD>\ s&ch<EFBFBD>ma
menutrans &Keymap Kl<EFBFBD>vesov<EFBFBD>\ m&apa
menutrans Select\ Fo&nt\.\.\. Vybrat\ p<EFBFBD>s&mo\.\.\.
if has("win32") || has("win16") || has("gui_motif") || has("gui_gtk") || has("gui_kde") || has("gui_photon") || has("gui_mac")
menutrans Select\ Fo&nt\.\.\. Vybrat\ p<EFBFBD>s&mo\.\.\.
endif
" }}}1
" {{{ Programming menu
@@ -90,46 +107,52 @@ menutrans &Jump\ to\ this\ tag<Tab>g^] &Sko
menutrans Jump\ &back<Tab>^T Sko<EFBFBD>it\ &zp<EFBFBD>t<Tab>^T
menutrans Build\ &Tags\ File &Vytvo<EFBFBD>it\ soubor\ tag<EFBFBD>
menutrans &Spelling &Kontrola\ pravopisu
menutrans &Spell\ Check\ On Kontrola\ pravopisu\ &zapnuta
menutrans Spell\ Check\ &Off Kontrola\ pravopisu\ &vypnuta
menutrans To\ Next\ error<Tab>]s &Dal<EFBFBD><EFBFBD>\ chyba<Tab>]s
menutrans To\ Previous\ error<Tab>[s &P<EFBFBD>edchoz<EFBFBD>\ chyba<Tab>[s
menutrans Suggest\ Corrections<Tab>z? &N<EFBFBD>vrh\ oprav<Tab>z?
menutrans Repeat\ correction<Tab>:spellrepall Zopakovat\ &opravu<Tab>:spellrepall
menutrans Set\ language\ to\ "en" Nastav\ jazyk\ na\ "en"
menutrans Set\ language\ to\ "en_au" Nastav\ jazyk\ na\ "en_au"
menutrans Set\ language\ to\ "en_ca" Nastav\ jazyk\ na\ "en_ca"
menutrans Set\ language\ to\ "en_gb" Nastav\ jazyk\ na\ "en_gb"
menutrans Set\ language\ to\ "en_nz" Nastav\ jazyk\ na\ "en_nz"
menutrans Set\ language\ to\ "en_us" Nastav\ jazyk\ na\ "en_us"
menutrans Set\ language\ to\ "cz" Nastav\ jazyk\ na\ "cz"
menutrans Set\ language\ to\ "cs_cz" Nastav\ jazyk\ na\ "cs_cz"
menutrans &Find\ More\ Languages Nal<EFBFBD>zt\ dal<EFBFBD><EFBFBD>\ &jazyky
if has("spell")
menutrans &Spelling &Kontrola\ pravopisu
menutrans &Spell\ Check\ On &Zapnout\ kontrolu\ pravopisu
menutrans Spell\ Check\ &Off &Vypnout \kontrolu\ pravopisu
menutrans To\ &Next\ error<Tab>]s &Dal<EFBFBD><EFBFBD>\ chyba<Tab>]s
menutrans To\ &Previous\ error<Tab>[s &P<EFBFBD>edchoz<EFBFBD>\ chyba<Tab>[s
menutrans Suggest\ &Corrections<Tab>z= &Navrhnout\ opravy<Tab>z=
menutrans &Repeat\ correction<Tab>:spellrepall Zopakovat\ &opravu<Tab>:spellrepall
menutrans Set\ language\ to\ "en" Nastavit\ jazyk\ na\ "en"
menutrans Set\ language\ to\ "en_au" Nastavit\ jazyk\ na\ "en_au"
menutrans Set\ language\ to\ "en_ca" Nastavit\ jazyk\ na\ "en_ca"
menutrans Set\ language\ to\ "en_gb" Nastavit\ jazyk\ na\ "en_gb"
menutrans Set\ language\ to\ "en_nz" Nastavit\ jazyk\ na\ "en_nz"
menutrans Set\ language\ to\ "en_us" Nastavit\ jazyk\ na\ "en_us"
menutrans &Find\ More\ Languages Nal<EFBFBD>zt\ dal<EFBFBD><EFBFBD>\ &jazyky
let g:menutrans_set_lang_to = "Nastavit jazyk na"
endif
menutrans &Folding &Foldy
menutrans &Enable/Disable\ folds<Tab>zi &Ano/Ne<Tab>zi
menutrans &View\ Cursor\ Line<Tab>zv &Zobrazit\ <20><>dek\ kurzoru<Tab>zv
menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx Zo&brazit\ pouze\ <20><>dek\ kurzoru\ <Tab>zMzx
menutrans C&lose\ more\ folds<Tab>zm &Vyjmout\ jednu\ <20>rove<EFBFBD>\ fold<EFBFBD><Tab>zm
menutrans &Close\ all\ folds<Tab>zM Zav<EFBFBD><EFBFBD>&t\ v<EFBFBD>echny\ foldy<Tab>zM
menutrans O&pen\ more\ folds<Tab>zr P<EFBFBD>idat\ jedn&u\ <20>rove<EFBFBD>\ fold<EFBFBD><Tab>zr
menutrans &Open\ all\ folds<Tab>zR &Otev<EFBFBD><EFBFBD>t\ v<EFBFBD>echny\ foldy<Tab>zR
menutrans Fold\ Met&hod Metoda\ &skl<EFBFBD>d<EFBFBD>n<EFBFBD>
"menutrans M&anual &Ru<52>n<EFBFBD>
"menutrans I&ndent &Odsazen<65>
"menutrans E&xpression &V<>raz
"menutrans S&yntax &Syntax
"menutrans &Diff &Diff
"menutrans Ma&rker Ma&rker
menutrans Create\ &Fold<Tab>zf Vytvo<EFBFBD>it\ &fold<Tab>zf
menutrans &Delete\ Fold<Tab>zd Vymazat\ fol&d<Tab>zd
menutrans Delete\ &All\ Folds<Tab>zD V&ymazat\ v<EFBFBD>echny\ foldy<Tab>zD
menutrans Fold\ col&umn\ width Sloupec\ zob&razen<EFBFBD>\ fold<EFBFBD>
if has("Folding")
menutrans &Folding &Skl<EFBFBD>d<EFBFBD>n<EFBFBD>
menutrans &Enable/Disable\ folds<Tab>zi &Ano/Ne<Tab>zi
menutrans &View\ Cursor\ Line<Tab>zv Zobrazit\ <20><>dek\ &kurzoru<Tab>zv
menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx Zobrazit\ &pouze\ <20><>dek\ kurzoru\ <Tab>zMzx
menutrans C&lose\ more\ folds<Tab>zm Slo<EFBFBD>it\ &jednu\ <20>rove<EFBFBD>\ sklad<EFBFBD><Tab>zm
menutrans &Close\ all\ folds<Tab>zM Slo<EFBFBD>it\ v<EFBFBD>echny\ sklady<Tab>zM
menutrans O&pen\ more\ folds<Tab>zr P<EFBFBD>idat\ jednu\ <20>rove<EFBFBD>\ sklad<EFBFBD><Tab>zr
menutrans &Open\ all\ folds<Tab>zR &Otev<EFBFBD><EFBFBD>t\ v<EFBFBD>echny\ sklady<Tab>zR
menutrans Fold\ Met&hod &Metoda\ skl<EFBFBD>d<EFBFBD>n<EFBFBD>
menutrans M&anual &Ru<EFBFBD>n<EFBFBD>
menutrans I&ndent &Odsazen<EFBFBD>
menutrans E&xpression &V<EFBFBD>raz
menutrans S&yntax &Syntaxe
menutrans &Diff &Rozd<EFBFBD>ly
menutrans Ma&rker &Zna<EFBFBD>ky
menutrans Create\ &Fold<Tab>zf Vytvo<EFBFBD>it\ &sklad<Tab>zf
menutrans &Delete\ Fold<Tab>zd Vymazat\ skla&d<Tab>zd
menutrans Delete\ &All\ Folds<Tab>zD Vymazat\ v<EFBFBD>echny\ sklady<Tab>zD
menutrans Fold\ col&umn\ width Sloupec\ zob&razen<EFBFBD>\ sklad<EFBFBD>
endif
if has("diff")
menutrans &Update &Obnovit
menutrans &Get\ Block &Sejmout\ Blok
menutrans &Put\ Block &Vlo<EFBFBD>it\ Blok
endif
menutrans &Update &Obnovit
menutrans &Get\ Block &Sejmout\ Blok
menutrans &Put\ Block &Vlo<EFBFBD>it\ Blok
menutrans &Make<Tab>:make &Make<Tab>:make
menutrans &List\ Errors<Tab>:cl V<EFBFBD>pis\ &chyb<Tab>:cl
menutrans L&ist\ Messages<Tab>:cl! V<EFBFBD>p&is\ zpr<EFBFBD>v<Tab>:cl!
@@ -142,7 +165,7 @@ menutrans SeT\ Compiler Nas&taven
menutrans &Update<Tab>:cwin O&bnovit<Tab>:cwin
menutrans &Open<Tab>:copen &Otev<EFBFBD><EFBFBD>t<Tab>:copen
menutrans &Close<Tab>:cclose &Zav<EFBFBD><EFBFBD>t<Tab>:cclose
menutrans &Set\ Compiler N&astavit\ kompil<EFBFBD>tor
menutrans Se&T\ Compiler N&astavit\ kompil<EFBFBD>tor
menutrans &Convert\ to\ HEX<Tab>:%!xxd P<EFBFBD>ev<EFBFBD>st\ do\ <20>estn<EFBFBD>ctkov<EFBFBD>ho\ form<EFBFBD>t&u<Tab>:%!xxd
menutrans Conve&rt\ back<Tab>:%!xxd\ -r P<EFBFBD>&ev<EFBFBD>st\ zp<EFBFBD>t<Tab>:%!xxd\ -r
@@ -170,7 +193,6 @@ menutrans &Delete Z&ru
menutrans &Alternate &Zm<EFBFBD>nit
menutrans &Next &Dal<EFBFBD><EFBFBD>
menutrans &Previous &P<EFBFBD>edchoz<EFBFBD>
menutrans [No\ File] [<5B><>dn<EFBFBD>\ soubor]
" }}}
" {{{ Menu Window
@@ -221,6 +243,8 @@ menutrans &Paste &Vlo
menutrans &Delete &Smazat
menutrans Select\ Blockwise Vybrat\ blokov<EFBFBD>
menutrans Select\ &Word Vybrat\ &slovo
menutrans Select\ Pa&ragraph Vybrat\ &odstavec
menutrans Select\ &Sentence Vybrat\ v<EFBFBD>&tu
menutrans Select\ &Line Vybrat\ &<26><>dek
menutrans Select\ &Block Vybrat\ &blok
menutrans Select\ &All Vybrat\ &v<EFBFBD>e
@@ -228,42 +252,57 @@ menutrans Select\ &All Vybrat\ &v
" {{{ The GUI toolbar
if has("toolbar")
if exists("*Do_toolbar_tmenu")
delfun Do_toolbar_tmenu
endif
fun Do_toolbar_tmenu()
tmenu ToolBar.Open Otev<EFBFBD><EFBFBD>t soubor
tmenu ToolBar.Save Ulo<EFBFBD>it soubor
tmenu ToolBar.SaveAll Ulo<EFBFBD>it v<EFBFBD>echny soubory
tmenu ToolBar.Print Tisk
tmenu ToolBar.Undo Zp<EFBFBD>t
tmenu ToolBar.Redo Zru<EFBFBD>it vr<EFBFBD>cen<EFBFBD>
tmenu ToolBar.Cut Vy<EFBFBD><EFBFBD>znout
tmenu ToolBar.Copy Kop<EFBFBD>rovat
tmenu ToolBar.Paste Vlo<EFBFBD>it
tmenu ToolBar.Find Hledat...
tmenu ToolBar.FindNext Hledat dal<EFBFBD><EFBFBD>
tmenu ToolBar.FindPrev Hledat p<EFBFBD>edchoz<EFBFBD>
tmenu ToolBar.Replace Nahradit...
if 0 " disabled; These are in the Windows menu
tmenu ToolBar.New Nov<EFBFBD> okno
tmenu ToolBar.WinSplit Rozd<EFBFBD>lit okno
tmenu ToolBar.WinMax Maximalizovat okno
tmenu ToolBar.WinMin Minimalizovat okno
tmenu ToolBar.WinClose Zav<EFBFBD><EFBFBD>t okno
endif
tmenu ToolBar.LoadSesn Na<EFBFBD><EFBFBD>st sezen<EFBFBD>
tmenu ToolBar.SaveSesn Ulo<EFBFBD>it sezen<EFBFBD>
tmenu ToolBar.RunScript Spustit skript
tmenu ToolBar.Make Spustit make
tmenu ToolBar.Shell Spustit shell
tmenu ToolBar.RunCtags Spustit ctags
tmenu ToolBar.TagJump Sko<EFBFBD>it na tag pod kurzorem
tmenu ToolBar.Help N<EFBFBD>pov<EFBFBD>da
tmenu ToolBar.FindHelp Hledat n<EFBFBD>pov<EFBFBD>du k...
endfun
if exists("*Do_toolbar_tmenu")
delfun Do_toolbar_tmenu
endif
fun Do_toolbar_tmenu()
tmenu ToolBar.Open Otev<EFBFBD><EFBFBD>t soubor
tmenu ToolBar.Save Ulo<EFBFBD>it soubor
tmenu ToolBar.SaveAll Ulo<EFBFBD>it v<EFBFBD>echny soubory
if has("printer") || has("unix")
tmenu ToolBar.Print Tisk
endif
tmenu ToolBar.Undo Zp<EFBFBD>t
tmenu ToolBar.Redo Zru<EFBFBD>it vr<EFBFBD>cen<EFBFBD>
tmenu ToolBar.Cut Vy<EFBFBD><EFBFBD>znout
tmenu ToolBar.Copy Kop<EFBFBD>rovat
tmenu ToolBar.Paste Vlo<EFBFBD>it
tmenu ToolBar.Find Hledat...
tmenu ToolBar.FindNext Hledat dal<EFBFBD><EFBFBD>
tmenu ToolBar.FindPrev Hledat p<EFBFBD>edchoz<EFBFBD>
tmenu ToolBar.Replace Nahradit...
if 0 " disabled; These are in the Windows menu
tmenu ToolBar.New Nov<EFBFBD> okno
tmenu ToolBar.WinSplit Rozd<EFBFBD>lit okno
tmenu ToolBar.WinMax Maximalizovat okno
tmenu ToolBar.WinMin Minimalizovat okno
tmenu ToolBar.WinClose Zav<EFBFBD><EFBFBD>t okno
endif
tmenu ToolBar.LoadSesn Na<EFBFBD><EFBFBD>st sezen<EFBFBD>
tmenu ToolBar.SaveSesn Ulo<EFBFBD>it sezen<EFBFBD>
tmenu ToolBar.RunScript Spustit skript
tmenu ToolBar.Make Spustit make
tmenu ToolBar.Shell Spustit shell
tmenu ToolBar.RunCtags Spustit ctags
tmenu ToolBar.TagJump Sko<EFBFBD>it na tag pod kurzorem
tmenu ToolBar.Help N<EFBFBD>pov<EFBFBD>da
tmenu ToolBar.FindHelp Hledat n<EFBFBD>pov<EFBFBD>du k...
endfun
endif
" }}}
" {{{ DIALOG TEXTS
let g:menutrans_no_file = "[<5B><>dn<64> soubor]"
let g:menutrans_help_dialog = "Zadejte hledan<61> p<><70>kaz nebo slovo:\n\n\tP<74>idejte i_ pro p<><70>kazy vkl<6B>dac<61>ho re<72>imu (nap<61>. i_CTRL-X)\n\tP<74>idejte c_ pro p<><70>kazy p<><70>kazov<6F> <20><>dky (nap<61>. c_<Del>)\n\tP<74>idejte ' pro jm<6A>no volby (nap<61>. 'shiftwidth')"
let g:menutrans_path_dialog = "Zadejte cesty pro vyhled<65>v<EFBFBD>n<EFBFBD> soubor<6F>. Jednotliv<69> cesty odd<64>lte <20><>rkou"
let g:menutrans_tags_dialog = "Zadejte jm<6A>na soubor<6F> s tagy. Jm<4A>na odd<64>lte <20><>rkami."
let g:menutrans_textwidth_dialog = "Zadejte d<>lku <20><>dku (0 pro zak<61>z<EFBFBD>n<EFBFBD> form<72>tov<6F>n<EFBFBD>):"
let g:menutrans_fileformat_dialog = "Vyberte typ konce <20><>dk<64>"
" }}}"
let &cpo = s:keepcpo
unlet s:keepcpo
" vim:set foldmethod=marker expandtab tabstop=3 shiftwidth=3:

View File

@@ -1,3 +1,3 @@
" Menu Translations: Czech
source <sfile>:p:h/menu_czech_czech_republic.1252.vim
source <sfile>:p:h/menu_czech_czech_republic.ascii.vim

View File

@@ -0,0 +1,308 @@
" Menu Translations: Czech (UTF-8)
" Maintainer: Jiri Sedlak <jiri_sedlak@users.sourceforge.net>
" Previous maintainer: Jiri Brezina
" Based on: menu.vim (2012-10-21)
" Quit when menu translations have already been done.
if exists("did_menu_trans")
finish
endif
let did_menu_trans = 1
let s:keepcpo= &cpo
set cpo&vim
scriptencoding utf-8
" {{{ File menu
menutrans &File &Soubor
menutrans &Open\.\.\.<Tab>:e &Otevřít\.\.\.<Tab>:e
menutrans Sp&lit-Open\.\.\.<Tab>:sp Otevřít\ v\ no&vém\ okně\.\.\.<Tab>:sp
menutrans Open\ Tab\.\.\.<Tab>:tabnew Otevřít\ tab\.\.\.<Tab>:tabnew
menutrans &New<Tab>:enew &Nový<Tab>:enew
menutrans &Close<Tab>:close &Zavřít<Tab>:close
menutrans &Save<Tab>:w &Uložit<Tab>:w
menutrans Save\ &As\.\.\.<Tab>:sav Uložit\ &jako\.\.\.<Tab>:sav
if has("printer") || has("unix")
menutrans &Print &Tisk
endif
menutrans Sa&ve-Exit<Tab>:wqa U&ložit\ a\ ukončit<Tab>:wqa
menutrans E&xit<Tab>:qa &Ukončit<Tab>:qa
if has("diff")
menutrans Split\ &Diff\ with\.\.\. Rozdělit\ okno\ -\ &Diff\.\.\.
menutrans Split\ Patched\ &By\.\.\. Rozdělit\ okno\ -\ &Patch\.\.\.
endif
" }}}
" {{{ Edit menu
menutrans &Edit Úpr&avy
menutrans &Undo<Tab>u &Zpět<Tab>u
menutrans &Redo<Tab>^R Z&rušit\ vrácení<Tab>^R
menutrans Rep&eat<Tab>\. &Opakovat<Tab>\.
menutrans Cu&t<Tab>"+x &Vyříznout<Tab>"+x
menutrans &Copy<Tab>"+y &Kopírovat<Tab>"+y
menutrans &Paste<Tab>"+gP V&ložit<Tab>"+gP
menutrans Put\ &Before<Tab>[p Vložit\ &před<Tab>[p
menutrans Put\ &After<Tab>]p Vloži&t\ za<Tab>]p
if has("win32") || has("win16")
menutrans &Delete<Tab>x &Smazat<Tab>x
endif
menutrans &Select\ All<Tab>ggVG Vy&brat\ vše<Tab>ggVG
if has("win32") || has("win16") || has("gui_gtk") || has("gui_kde") || has("gui_motif")
menutrans &Find\.\.\. &Hledat\.\.\.
menutrans Find\ and\ Rep&lace\.\.\. &Nahradit\.\.\.
else
menutrans Find<Tab>/ &Hledat<Tab>/
menutrans Find\ and\ Rep&lace<Tab>:%s &Nahradit<Tab>:%s
menutrans Find\ and\ Rep&lace<Tab>:s &Nahradit<Tab>:s
endif
menutrans Settings\ &Window Nastav&ení\ okna
" {{{2 Edit -1
menutrans Startup\ &Settings Počáteční\ &nastavení
menutrans &Global\ Settings &Globální\ nastavení
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! &Přepnout\ zvýraznění\ vzoru<Tab>:set\ hls!
menutrans Toggle\ &Ignore-case<Tab>:set\ ic! Přepnout\ ignorování\ &VERZÁLEK<Tab>:set\ ic!
menutrans Toggle\ &Showmatch<Tab>:set\ sm! Přepnout\ &Showmatch\ \{\(\[\])\}<Tab>:set\ sm!
menutrans &Context\ lines Zobrazit\ konte&xt\ kurzoru
menutrans &Virtual\ Edit Virtuální\ p&ozice\ kurzoru
menutrans Never Nikdy
menutrans Block\ Selection Výběr\ Bloku
menutrans Insert\ mode Insert\ mód
menutrans Block\ and\ Insert Blok\ a\ Insert
menutrans Always Vždycky
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! Přepnout\ Insert\ &d<Tab>:set\ im!
menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! Přepnout\ kompatibilní\ režim\ s\ 'vi'<Tab>:set\ cp!
menutrans Search\ &Path\.\.\. Nastavit\ &cestu\ k\ prohledávání\.\.\.
menutrans Ta&g\ Files\.\.\. Ta&g\ soubory\.\.\.
menutrans Toggle\ &Toolbar Přepnout\ &Toolbar
menutrans Toggle\ &Bottom\ Scrollbar &epnout\ dolní\ rolovací\ lištu
menutrans Toggle\ &Left\ Scrollbar Přepnout\ &levou\ rolovací\ lištu
menutrans Toggle\ &Right\ Scrollbar Přepnout\ p&ravou\ rolovací\ lištu
" {{{2 Edit -2
menutrans F&ile\ Settings Nastavení\ so&uboru
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! Přepnout\ číslování\ řá&dků<Tab>:set\ nu!
menutrans Toggle\ relati&ve\ Line\ Numbering<Tab>:set\ rnu! Přepnout\ relativní\ číslování\ řá&dků<Tab>:set\ rnu!
menutrans Toggle\ &List\ Mode<Tab>:set\ list! Přepnout\ &List\ mód<Tab>:set\ list!
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! Přepnout\ zala&mování\ řádků<Tab>:set\ wrap!
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! Přepnout\ zl&om\ ve\ slově<Tab>:set\ lbr!
menutrans Toggle\ &expand-tab<Tab>:set\ et! Přepnout\ &expand-tab<Tab>:set\ et!
menutrans Toggle\ &auto-indent<Tab>:set\ ai! Přepnout\ &auto-indent<Tab>:set\ ai!
menutrans Toggle\ &C-indenting<Tab>:set\ cin! Přepnout\ &C-indenting<Tab>:set\ cin!
menutrans &Shiftwidth Nastav&it\ šířku\ od&sazení
menutrans Soft\ &Tabstop Nastavit\ Soft\ &Tabstop
menutrans Te&xt\ Width\.\.\. Šířka\ te&xtu\.\.\.
menutrans &File\ Format\.\.\. &Formát\ souboru\.\.\.
" {{{2 Edit -3
menutrans C&olor\ Scheme Barevné\ s&chéma
menutrans &Keymap Klávesová\ m&apa
if has("win32") || has("win16") || has("gui_motif") || has("gui_gtk") || has("gui_kde") || has("gui_photon") || has("gui_mac")
menutrans Select\ Fo&nt\.\.\. Vybrat\ pís&mo\.\.\.
endif
" }}}1
" {{{ Programming menu
menutrans &Tools Nást&roje
menutrans &Jump\ to\ this\ tag<Tab>g^] &Skočit\ na\ tag<Tab>g^]
menutrans Jump\ &back<Tab>^T Skočit\ &zpět<Tab>^T
menutrans Build\ &Tags\ File &Vytvořit\ soubor\ tagů
if has("spell")
menutrans &Spelling &Kontrola\ pravopisu
menutrans &Spell\ Check\ On &Zapnout\ kontrolu\ pravopisu
menutrans Spell\ Check\ &Off &Vypnout \kontrolu\ pravopisu
menutrans To\ &Next\ error<Tab>]s &Další\ chyba<Tab>]s
menutrans To\ &Previous\ error<Tab>[s &Předchozí\ chyba<Tab>[s
menutrans Suggest\ &Corrections<Tab>z= &Navrhnout\ opravy<Tab>z=
menutrans &Repeat\ correction<Tab>:spellrepall Zopakovat\ &opravu<Tab>:spellrepall
menutrans Set\ language\ to\ "en" Nastavit\ jazyk\ na\ "en"
menutrans Set\ language\ to\ "en_au" Nastavit\ jazyk\ na\ "en_au"
menutrans Set\ language\ to\ "en_ca" Nastavit\ jazyk\ na\ "en_ca"
menutrans Set\ language\ to\ "en_gb" Nastavit\ jazyk\ na\ "en_gb"
menutrans Set\ language\ to\ "en_nz" Nastavit\ jazyk\ na\ "en_nz"
menutrans Set\ language\ to\ "en_us" Nastavit\ jazyk\ na\ "en_us"
menutrans &Find\ More\ Languages Nalézt\ další\ &jazyky
let g:menutrans_set_lang_to = "Nastavit jazyk na"
endif
if has("Folding")
menutrans &Folding &Skládání
menutrans &Enable/Disable\ folds<Tab>zi &Ano/Ne<Tab>zi
menutrans &View\ Cursor\ Line<Tab>zv Zobrazit\ řádek\ &kurzoru<Tab>zv
menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx Zobrazit\ &pouze\ řádek\ kurzoru\ <Tab>zMzx
menutrans C&lose\ more\ folds<Tab>zm Složit\ &jednu\ úroveň\ skladů<Tab>zm
menutrans &Close\ all\ folds<Tab>zM Složit\ všechny\ sklady<Tab>zM
menutrans O&pen\ more\ folds<Tab>zr Přidat\ jednu\ úroveň\ skladů<Tab>zr
menutrans &Open\ all\ folds<Tab>zR &Otevřít\ všechny\ sklady<Tab>zR
menutrans Fold\ Met&hod &Metoda\ skládání
menutrans M&anual &Ručně
menutrans I&ndent &Odsazení
menutrans E&xpression &Výraz
menutrans S&yntax &Syntaxe
menutrans &Diff &Rozdíly
menutrans Ma&rker &Značky
menutrans Create\ &Fold<Tab>zf Vytvořit\ &sklad<Tab>zf
menutrans &Delete\ Fold<Tab>zd Vymazat\ skla&d<Tab>zd
menutrans Delete\ &All\ Folds<Tab>zD Vymazat\ všechny\ sklady<Tab>zD
menutrans Fold\ col&umn\ width Sloupec\ zob&razení\ skladů
endif
if has("diff")
menutrans &Update &Obnovit
menutrans &Get\ Block &Sejmout\ Blok
menutrans &Put\ Block &Vložit\ Blok
endif
menutrans &Make<Tab>:make &Make<Tab>:make
menutrans &List\ Errors<Tab>:cl Výpis\ &chyb<Tab>:cl
menutrans L&ist\ Messages<Tab>:cl! Výp&is\ zpráv<Tab>:cl!
menutrans &Next\ Error<Tab>:cn Další\ ch&yba<Tab>:cn
menutrans &Previous\ Error<Tab>:cp &Předchozí\ chyba<Tab>:cp
menutrans &Older\ List<Tab>:cold Sta&rší\ seznam<Tab>:cold
menutrans N&ewer\ List<Tab>:cnew N&ovější\ seznam<Tab>:cnew
menutrans Error\ &Window Chybové\ o&kno
menutrans SeT\ Compiler Nas&tavení\ kompilátoru
menutrans &Update<Tab>:cwin O&bnovit<Tab>:cwin
menutrans &Open<Tab>:copen &Otevřít<Tab>:copen
menutrans &Close<Tab>:cclose &Zavřít<Tab>:cclose
menutrans Se&T\ Compiler N&astavit\ kompilátor
menutrans &Convert\ to\ HEX<Tab>:%!xxd Převést\ do\ šestnáctkového\ formát&u<Tab>:%!xxd
menutrans Conve&rt\ back<Tab>:%!xxd\ -r &evést\ zpět<Tab>:%!xxd\ -r
" }}}
" {{{ Syntax menu
menutrans &Syntax Synta&xe
menutrans Set\ '&syntax'\ only Nastavit\ pouze\ 'synta&x'
menutrans Set\ '&filetype'\ too Nastavit\ také\ '&filetype'
menutrans &Off &Vypnout
menutrans &Manual &Ručně
menutrans A&utomatic A&utomaticky
menutrans on/off\ for\ &This\ file &Přepnout\ (pro\ tento\ soubor)
menutrans o&ff\ (this\ file) vyp&nout\ (pro\ tento\ soubor)
menutrans Co&lor\ test Test\ &barev
menutrans &Highlight\ test &Test\ zvýrazňování
menutrans &Convert\ to\ HTML Převést\ &do\ HTML
menutrans &Show\ filetypes\ in\ menu &Zobrazit\ výběr\ možností
" }}}
" {{{ Menu Buffers
menutrans &Buffers &Buffery
menutrans &Refresh\ menu &Obnovit\ menu
menutrans &Delete Z&rušit
menutrans &Alternate &Změnit
menutrans &Next &Další
menutrans &Previous &Předchozí
" }}}
" {{{ Menu Window
menutrans &Window &Okna
menutrans &New<Tab>^Wn &Nové<Tab>^Wn
menutrans S&plit<Tab>^Ws &Rozdělit<Tab>^Ws
menutrans Sp&lit\ To\ #<Tab>^W^^ Ro&zdělit\ na\ #<Tab>^W^^
menutrans Split\ &Vertically<Tab>^Wv Rozdělit\ &vertikálně<Tab>^Wv
menutrans Split\ File\ E&xplorer Rozdělit\ -\ File\ E&xplorer
menutrans Move\ &To &Přesun
menutrans &Top<Tab>^WK &Nahoru<Tab>^WK
menutrans &Bottom<Tab>^WJ &Dolu<Tab>^WJ
menutrans &Left\ side<Tab>^WH &Vlevo<Tab>^WH
menutrans &Right\ side<Tab>^WL Vp&ravo<Tab>^WL
menutrans &Close<Tab>^Wc Zavří&t<Tab>^Wc
menutrans Close\ &Other(s)<Tab>^Wo Zavřít\ &ostatní<Tab>^Wo
menutrans Ne&xt<Tab>^Ww &Další<Tab>^Ww
menutrans P&revious<Tab>^WW &Předchozí<Tab>^WW
menutrans &Equal\ Size<Tab>^W= &Stejná\ výška<Tab>^W=
menutrans &Max\ Height<Tab>^W_ Maximální\ výš&ka<Tab>^W_
menutrans M&in\ Height<Tab>^W1_ M&inimální\ výška<Tab>^W1_
menutrans Max\ &Width<Tab>^W\| &Maximální\ šířka<Tab>^W\|
menutrans Min\ Widt&h<Tab>^W1\| Minimální\ šířk&a<Tab>^W1\|
menutrans Rotate\ &Up<Tab>^WR Rotovat\ na&horu<Tab>^WR
menutrans Rotate\ &Down<Tab>^Wr Rotovat\ &dolů<Tab>^Wr
" {{{ Help menu
menutrans &Help &Nápověda
menutrans &Overview<Tab><F1> &Přehled<Tab><F1>
menutrans &User\ Manual &Uživatelský\ Manuál
menutrans &How-to\ links Ho&wto
menutrans &GUI &Grafické\ rozhraní
menutrans &Credits &Autoři
menutrans Co&pying &Licenční\ politika
menutrans &Sponsor/Register Sponzorování/&Registrace
menutrans &Find\.\.\. &Hledat\.\.\.
menutrans O&rphans O&siřelé\ děti
menutrans &Version &Verze
menutrans &About &O\ aplikaci
" }}}
" {{{ The popup menu
menutrans &Undo &Zpět
menutrans Cu&t &Vyříznout
menutrans &Copy &Kopírovat
menutrans &Paste &Vložit
menutrans &Delete &Smazat
menutrans Select\ Blockwise Vybrat\ blokově
menutrans Select\ &Word Vybrat\ &slovo
menutrans Select\ Pa&ragraph Vybrat\ &odstavec
menutrans Select\ &Sentence Vybrat\ &tu
menutrans Select\ &Line Vybrat\ &řádek
menutrans Select\ &Block Vybrat\ &blok
menutrans Select\ &All Vybrat\ &vše
" }}}
" {{{ The GUI toolbar
if has("toolbar")
if exists("*Do_toolbar_tmenu")
delfun Do_toolbar_tmenu
endif
fun Do_toolbar_tmenu()
tmenu ToolBar.Open Otevřít soubor
tmenu ToolBar.Save Uložit soubor
tmenu ToolBar.SaveAll Uložit všechny soubory
if has("printer") || has("unix")
tmenu ToolBar.Print Tisk
endif
tmenu ToolBar.Undo Zpět
tmenu ToolBar.Redo Zrušit vrácení
tmenu ToolBar.Cut Vyříznout
tmenu ToolBar.Copy Kopírovat
tmenu ToolBar.Paste Vložit
tmenu ToolBar.Find Hledat...
tmenu ToolBar.FindNext Hledat další
tmenu ToolBar.FindPrev Hledat předchozí
tmenu ToolBar.Replace Nahradit...
if 0 " disabled; These are in the Windows menu
tmenu ToolBar.New Nové okno
tmenu ToolBar.WinSplit Rozdělit okno
tmenu ToolBar.WinMax Maximalizovat okno
tmenu ToolBar.WinMin Minimalizovat okno
tmenu ToolBar.WinClose Zavřít okno
endif
tmenu ToolBar.LoadSesn Načíst sezení
tmenu ToolBar.SaveSesn Uložit sezení
tmenu ToolBar.RunScript Spustit skript
tmenu ToolBar.Make Spustit make
tmenu ToolBar.Shell Spustit shell
tmenu ToolBar.RunCtags Spustit ctags
tmenu ToolBar.TagJump Skočit na tag pod kurzorem
tmenu ToolBar.Help Nápověda
tmenu ToolBar.FindHelp Hledat nápovědu k...
endfun
endif
" }}}
" {{{ DIALOG TEXTS
let g:menutrans_no_file = "[Žádný soubor]"
let g:menutrans_help_dialog = "Zadejte hledaný příkaz nebo slovo:\n\n\tPřidejte i_ pro příkazy vkládacího režimu (např. i_CTRL-X)\n\tPřidejte c_ pro příkazy příkazové řádky (např. c_<Del>)\n\tPřidejte ' pro jméno volby (např. 'shiftwidth')"
let g:menutrans_path_dialog = "Zadejte cesty pro vyhledávání souborů. Jednotlivé cesty oddělte čárkou"
let g:menutrans_tags_dialog = "Zadejte jména souborů s tagy. Jména oddělte čárkami."
let g:menutrans_textwidth_dialog = "Zadejte délku řádku (0 pro zakázání formátování):"
let g:menutrans_fileformat_dialog = "Vyberte typ konce řádků"
" }}}"
let &cpo = s:keepcpo
unlet s:keepcpo
" vim:set foldmethod=marker expandtab tabstop=3 shiftwidth=3:

View File

@@ -1,13 +1,13 @@
" Menu Translations: Czech for MS-Windows
" Maintainer: Jiri Brezina <brzj@seznam.cz>
" vim:set foldmethod=marker:
" $Revision: 1.3 $
" $Date: 2005/12/19 22:13:30 $
" Menu Translations: Czech (CP1250)
" Maintainer: Jiri Sedlak <jiri_sedlak@users.sourceforge.net>
" Previous maintainer: Jiri Brezina
" Based on: menu.vim (2012-10-21)
" Quit when menu translations have already been done.
if exists("did_menu_trans")
finish
finish
endif
let did_menu_trans = 1
let s:keepcpo= &cpo
set cpo&vim
@@ -18,15 +18,21 @@ scriptencoding cp1250
menutrans &File &Soubor
menutrans &Open\.\.\.<Tab>:e &Otev<EFBFBD><EFBFBD>t\.\.\.<Tab>:e
menutrans Sp&lit-Open\.\.\.<Tab>:sp Otev<EFBFBD><EFBFBD>t\ v\ no&v<EFBFBD>m\ okn<EFBFBD>\.\.\.<Tab>:sp
menutrans Open\ Tab\.\.\.<Tab>:tabnew Otev<EFBFBD><EFBFBD>t\ tab\.\.\.<Tab>:tabnew
menutrans &New<Tab>:enew &Nov<EFBFBD><Tab>:enew
menutrans &Close<Tab>:close &Zav<EFBFBD><EFBFBD>t<Tab>:close
menutrans &Save<Tab>:w &Ulo<EFBFBD>it<Tab>:w
menutrans Save\ &As\.\.\.<Tab>:sav Ulo<EFBFBD>it\ &jako\.\.\.<Tab>:sav
menutrans Split\ &Diff\ with\.\.\. Rozd<EFBFBD>lit\ okno\ -\ &Diff\.\.\.
menutrans Split\ Patched\ &By\.\.\. Rozd<EFBFBD>lit\ okno\ -\ &Patch\.\.\.
menutrans &Print &Tisk
menutrans Sa&ve-Exit<Tab>:wqa U&lo<EFBFBD>it\ -\ Konec<Tab>:wqa
menutrans E&xit<Tab>:qa &Konec<Tab>:qa
if has("printer") || has("unix")
menutrans &Print &Tisk
endif
menutrans Sa&ve-Exit<Tab>:wqa U&lo<EFBFBD>it\ a\ ukon<EFBFBD>it<Tab>:wqa
menutrans E&xit<Tab>:qa &Ukon<EFBFBD>it<Tab>:qa
if has("diff")
menutrans Split\ &Diff\ with\.\.\. Rozd<EFBFBD>lit\ okno\ -\ &Diff\.\.\.
menutrans Split\ Patched\ &By\.\.\. Rozd<EFBFBD>lit\ okno\ -\ &Patch\.\.\.
endif
" }}}
" {{{ Edit menu
@@ -39,24 +45,32 @@ menutrans &Copy<Tab>"+y &Kop
menutrans &Paste<Tab>"+gP V&lo<6C>it<Tab>"+gP
menutrans Put\ &Before<Tab>[p Vlo<EFBFBD>it\ &p<EFBFBD>ed<Tab>[p
menutrans Put\ &After<Tab>]p Vlo<EFBFBD>i&t\ za<Tab>]p
menutrans &Delete<Tab>x &Smazat<Tab>x
if has("win32") || has("win16")
menutrans &Delete<Tab>x &Smazat<Tab>x
endif
menutrans &Select\ All<Tab>ggVG Vy&brat\ v<EFBFBD>e<Tab>ggVG
menutrans &Find\.\.\. &Hledat\.\.\.
menutrans Find\ and\ Rep&lace\.\.\. &Nahradit\.\.\.
menutrans Options\.\.\. Volb&y\.\.\.
if has("win32") || has("win16") || has("gui_gtk") || has("gui_kde") || has("gui_motif")
menutrans &Find\.\.\. &Hledat\.\.\.
menutrans Find\ and\ Rep&lace\.\.\. &Nahradit\.\.\.
else
menutrans Find<Tab>/ &Hledat<Tab>/
menutrans Find\ and\ Rep&lace<Tab>:%s &Nahradit<Tab>:%s
menutrans Find\ and\ Rep&lace<Tab>:s &Nahradit<Tab>:s
endif
menutrans Settings\ &Window Nastav&en<EFBFBD>\ okna
" {{{2 Edit -1
" {{{2 Edit -1
menutrans Startup\ &Settings Po<EFBFBD><EFBFBD>te<EFBFBD>n<EFBFBD>\ &nastaven<EFBFBD>
menutrans &Global\ Settings &Glob<EFBFBD>ln<EFBFBD>\ nastaven<EFBFBD>
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! &P<EFBFBD>epnout\ zv<EFBFBD>razn<EFBFBD>n<EFBFBD>\ vzoru<Tab>:set\ hls!
menutrans Toggle\ &Ignore-case<Tab>:set\ ic! P<EFBFBD>epnout\ ignorov<EFBFBD>n<EFBFBD>\ &VERZ<EFBFBD>LEK<Tab>:set\ ic!
menutrans Toggle\ &Showmatch<Tab>:set\ sm! P<EFBFBD>epnout\ &Showmatch\ \{\(\[\])\}<Tab>:set\ sm!
menutrans &Context\ lines Zobrazit\ konte&xt\ kurzoru
menutrans &Virtual\ Edit Virtu<EFBFBD>ln<EFBFBD>\ p&ozice\ kurzoru
menutrans Never Nikdy
menutrans Block\ Selection V<EFBFBD>b<EFBFBD>r\ Bloku
menutrans Insert\ mode Insert\ m<EFBFBD>d
menutrans Block\ and\ Insert Blok\ a\ Insert
menutrans Always V<EFBFBD>dycky
menutrans Never Nikdy
menutrans Block\ Selection V<EFBFBD>b<EFBFBD>r\ Bloku
menutrans Insert\ mode Insert\ m<EFBFBD>d
menutrans Block\ and\ Insert Blok\ a\ Insert
menutrans Always V<EFBFBD>dycky
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! P<EFBFBD>epnout\ Insert\ m<EFBFBD>&d<Tab>:set\ im!
menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! P<EFBFBD>epnout\ kompatibiln<EFBFBD>\ re<EFBFBD>im\ s\ 'vi'<Tab>:set\ cp!
menutrans Search\ &Path\.\.\. Nastavit\ &cestu\ k\ prohled<EFBFBD>v<EFBFBD>n<EFBFBD>\.\.\.
@@ -65,9 +79,10 @@ menutrans Toggle\ &Toolbar P
menutrans Toggle\ &Bottom\ Scrollbar P<EFBFBD>&epnout\ doln<EFBFBD>\ rolovac<EFBFBD>\ li<EFBFBD>tu
menutrans Toggle\ &Left\ Scrollbar P<EFBFBD>epnout\ &levou\ rolovac<EFBFBD>\ li<EFBFBD>tu
menutrans Toggle\ &Right\ Scrollbar P<EFBFBD>epnout\ p&ravou\ rolovac<EFBFBD>\ li<EFBFBD>tu
" {{{2 Edit -2
" {{{2 Edit -2
menutrans F&ile\ Settings Nastaven<EFBFBD>\ so&uboru
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! P<EFBFBD>epnout\ <20><>slov<EFBFBD>n<EFBFBD>\ <20><>&dk<EFBFBD><Tab>:set\ nu!
menutrans Toggle\ relati&ve\ Line\ Numbering<Tab>:set\ rnu! P<EFBFBD>epnout\ relativn<EFBFBD>\ <20><>slov<EFBFBD>n<EFBFBD>\ <20><>&dk<EFBFBD><Tab>:set\ rnu!
menutrans Toggle\ &List\ Mode<Tab>:set\ list! P<EFBFBD>epnout\ &List\ m<EFBFBD>d<Tab>:set\ list!
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! P<EFBFBD>epnout\ zala&mov<EFBFBD>n<EFBFBD>\ <20><>dk<EFBFBD><Tab>:set\ wrap!
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! P<EFBFBD>epnout\ zl&om\ ve\ slov<EFBFBD><Tab>:set\ lbr!
@@ -78,10 +93,12 @@ menutrans &Shiftwidth Nastav&it\
menutrans Soft\ &Tabstop Nastavit\ Soft\ &Tabstop
menutrans Te&xt\ Width\.\.\. <09><><EFBFBD>ka\ te&xtu\.\.\.
menutrans &File\ Format\.\.\. &Form<EFBFBD>t\ souboru\.\.\.
" {{{2 Edit -3
" {{{2 Edit -3
menutrans C&olor\ Scheme Barevn<EFBFBD>\ s&ch<EFBFBD>ma
menutrans &Keymap Kl<EFBFBD>vesov<EFBFBD>\ m&apa
menutrans Select\ Fo&nt\.\.\. Vybrat\ p<EFBFBD>s&mo\.\.\.
if has("win32") || has("win16") || has("gui_motif") || has("gui_gtk") || has("gui_kde") || has("gui_photon") || has("gui_mac")
menutrans Select\ Fo&nt\.\.\. Vybrat\ p<EFBFBD>s&mo\.\.\.
endif
" }}}1
" {{{ Programming menu
@@ -90,46 +107,52 @@ menutrans &Jump\ to\ this\ tag<Tab>g^] &Sko
menutrans Jump\ &back<Tab>^T Sko<EFBFBD>it\ &zp<EFBFBD>t<Tab>^T
menutrans Build\ &Tags\ File &Vytvo<EFBFBD>it\ soubor\ tag<EFBFBD>
menutrans &Spelling &Kontrola\ pravopisu
menutrans &Spell\ Check\ On Kontrola\ pravopisu\ &zapnuta
menutrans Spell\ Check\ &Off Kontrola\ pravopisu\ &vypnuta
menutrans To\ Next\ error<Tab>]s &Dal<EFBFBD><EFBFBD>\ chyba<Tab>]s
menutrans To\ Previous\ error<Tab>[s &P<EFBFBD>edchoz<EFBFBD>\ chyba<Tab>[s
menutrans Suggest\ Corrections<Tab>z? &N<EFBFBD>vrh\ oprav<Tab>z?
menutrans Repeat\ correction<Tab>:spellrepall Zopakovat\ &opravu<Tab>:spellrepall
menutrans Set\ language\ to\ "en" Nastav\ jazyk\ na\ "en"
menutrans Set\ language\ to\ "en_au" Nastav\ jazyk\ na\ "en_au"
menutrans Set\ language\ to\ "en_ca" Nastav\ jazyk\ na\ "en_ca"
menutrans Set\ language\ to\ "en_gb" Nastav\ jazyk\ na\ "en_gb"
menutrans Set\ language\ to\ "en_nz" Nastav\ jazyk\ na\ "en_nz"
menutrans Set\ language\ to\ "en_us" Nastav\ jazyk\ na\ "en_us"
menutrans Set\ language\ to\ "cz" Nastav\ jazyk\ na\ "cz"
menutrans Set\ language\ to\ "cs_cz" Nastav\ jazyk\ na\ "cs_cz"
menutrans &Find\ More\ Languages Nal<EFBFBD>zt\ dal<EFBFBD><EFBFBD>\ &jazyky
if has("spell")
menutrans &Spelling &Kontrola\ pravopisu
menutrans &Spell\ Check\ On &Zapnout\ kontrolu\ pravopisu
menutrans Spell\ Check\ &Off &Vypnout \kontrolu\ pravopisu
menutrans To\ &Next\ error<Tab>]s &Dal<EFBFBD><EFBFBD>\ chyba<Tab>]s
menutrans To\ &Previous\ error<Tab>[s &P<EFBFBD>edchoz<EFBFBD>\ chyba<Tab>[s
menutrans Suggest\ &Corrections<Tab>z= &Navrhnout\ opravy<Tab>z=
menutrans &Repeat\ correction<Tab>:spellrepall Zopakovat\ &opravu<Tab>:spellrepall
menutrans Set\ language\ to\ "en" Nastavit\ jazyk\ na\ "en"
menutrans Set\ language\ to\ "en_au" Nastavit\ jazyk\ na\ "en_au"
menutrans Set\ language\ to\ "en_ca" Nastavit\ jazyk\ na\ "en_ca"
menutrans Set\ language\ to\ "en_gb" Nastavit\ jazyk\ na\ "en_gb"
menutrans Set\ language\ to\ "en_nz" Nastavit\ jazyk\ na\ "en_nz"
menutrans Set\ language\ to\ "en_us" Nastavit\ jazyk\ na\ "en_us"
menutrans &Find\ More\ Languages Nal<EFBFBD>zt\ dal<EFBFBD><EFBFBD>\ &jazyky
let g:menutrans_set_lang_to = "Nastavit jazyk na"
endif
menutrans &Folding &Foldy
menutrans &Enable/Disable\ folds<Tab>zi &Ano/Ne<Tab>zi
menutrans &View\ Cursor\ Line<Tab>zv &Zobrazit\ <20><>dek\ kurzoru<Tab>zv
menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx Zo&brazit\ pouze\ <20><>dek\ kurzoru\ <Tab>zMzx
menutrans C&lose\ more\ folds<Tab>zm &Vyjmout\ jednu\ <20>rove<EFBFBD>\ fold<EFBFBD><Tab>zm
menutrans &Close\ all\ folds<Tab>zM Zav<EFBFBD><EFBFBD>&t\ v<EFBFBD>echny\ foldy<Tab>zM
menutrans O&pen\ more\ folds<Tab>zr P<EFBFBD>idat\ jedn&u\ <20>rove<EFBFBD>\ fold<EFBFBD><Tab>zr
menutrans &Open\ all\ folds<Tab>zR &Otev<EFBFBD><EFBFBD>t\ v<EFBFBD>echny\ foldy<Tab>zR
menutrans Fold\ Met&hod Metoda\ &skl<EFBFBD>d<EFBFBD>n<EFBFBD>
"menutrans M&anual &Ru<52>n<EFBFBD>
"menutrans I&ndent &Odsazen<65>
"menutrans E&xpression &V<>raz
"menutrans S&yntax &Syntax
"menutrans &Diff &Diff
"menutrans Ma&rker Ma&rker
menutrans Create\ &Fold<Tab>zf Vytvo<EFBFBD>it\ &fold<Tab>zf
menutrans &Delete\ Fold<Tab>zd Vymazat\ fol&d<Tab>zd
menutrans Delete\ &All\ Folds<Tab>zD V&ymazat\ v<EFBFBD>echny\ foldy<Tab>zD
menutrans Fold\ col&umn\ width Sloupec\ zob&razen<EFBFBD>\ fold<EFBFBD>
if has("Folding")
menutrans &Folding &Skl<EFBFBD>d<EFBFBD>n<EFBFBD>
menutrans &Enable/Disable\ folds<Tab>zi &Ano/Ne<Tab>zi
menutrans &View\ Cursor\ Line<Tab>zv Zobrazit\ <20><>dek\ &kurzoru<Tab>zv
menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx Zobrazit\ &pouze\ <20><>dek\ kurzoru\ <Tab>zMzx
menutrans C&lose\ more\ folds<Tab>zm Slo<EFBFBD>it\ &jednu\ <20>rove<EFBFBD>\ sklad<EFBFBD><Tab>zm
menutrans &Close\ all\ folds<Tab>zM Slo<EFBFBD>it\ v<EFBFBD>echny\ sklady<Tab>zM
menutrans O&pen\ more\ folds<Tab>zr P<EFBFBD>idat\ jednu\ <20>rove<EFBFBD>\ sklad<EFBFBD><Tab>zr
menutrans &Open\ all\ folds<Tab>zR &Otev<EFBFBD><EFBFBD>t\ v<EFBFBD>echny\ sklady<Tab>zR
menutrans Fold\ Met&hod &Metoda\ skl<EFBFBD>d<EFBFBD>n<EFBFBD>
menutrans M&anual &Ru<EFBFBD>n<EFBFBD>
menutrans I&ndent &Odsazen<EFBFBD>
menutrans E&xpression &V<EFBFBD>raz
menutrans S&yntax &Syntaxe
menutrans &Diff &Rozd<EFBFBD>ly
menutrans Ma&rker &Zna<EFBFBD>ky
menutrans Create\ &Fold<Tab>zf Vytvo<EFBFBD>it\ &sklad<Tab>zf
menutrans &Delete\ Fold<Tab>zd Vymazat\ skla&d<Tab>zd
menutrans Delete\ &All\ Folds<Tab>zD Vymazat\ v<EFBFBD>echny\ sklady<Tab>zD
menutrans Fold\ col&umn\ width Sloupec\ zob&razen<EFBFBD>\ sklad<EFBFBD>
endif
if has("diff")
menutrans &Update &Obnovit
menutrans &Get\ Block &Sejmout\ Blok
menutrans &Put\ Block &Vlo<EFBFBD>it\ Blok
endif
menutrans &Update &Obnovit
menutrans &Get\ Block &Sejmout\ Blok
menutrans &Put\ Block &Vlo<EFBFBD>it\ Blok
menutrans &Make<Tab>:make &Make<Tab>:make
menutrans &List\ Errors<Tab>:cl V<EFBFBD>pis\ &chyb<Tab>:cl
menutrans L&ist\ Messages<Tab>:cl! V<EFBFBD>p&is\ zpr<EFBFBD>v<Tab>:cl!
@@ -142,7 +165,7 @@ menutrans SeT\ Compiler Nas&taven
menutrans &Update<Tab>:cwin O&bnovit<Tab>:cwin
menutrans &Open<Tab>:copen &Otev<EFBFBD><EFBFBD>t<Tab>:copen
menutrans &Close<Tab>:cclose &Zav<EFBFBD><EFBFBD>t<Tab>:cclose
menutrans &Set\ Compiler N&astavit\ kompil<EFBFBD>tor
menutrans Se&T\ Compiler N&astavit\ kompil<EFBFBD>tor
menutrans &Convert\ to\ HEX<Tab>:%!xxd P<EFBFBD>ev<EFBFBD>st\ do\ <20>estn<EFBFBD>ctkov<EFBFBD>ho\ form<EFBFBD>t&u<Tab>:%!xxd
menutrans Conve&rt\ back<Tab>:%!xxd\ -r P<EFBFBD>&ev<EFBFBD>st\ zp<EFBFBD>t<Tab>:%!xxd\ -r
@@ -170,7 +193,6 @@ menutrans &Delete Z&ru
menutrans &Alternate &Zm<EFBFBD>nit
menutrans &Next &Dal<EFBFBD><EFBFBD>
menutrans &Previous &P<EFBFBD>edchoz<EFBFBD>
menutrans [No\ File] [<5B><>dn<EFBFBD>\ soubor]
" }}}
" {{{ Menu Window
@@ -221,6 +243,8 @@ menutrans &Paste &Vlo
menutrans &Delete &Smazat
menutrans Select\ Blockwise Vybrat\ blokov<EFBFBD>
menutrans Select\ &Word Vybrat\ &slovo
menutrans Select\ Pa&ragraph Vybrat\ &odstavec
menutrans Select\ &Sentence Vybrat\ v<EFBFBD>&tu
menutrans Select\ &Line Vybrat\ &<26><>dek
menutrans Select\ &Block Vybrat\ &blok
menutrans Select\ &All Vybrat\ &v<EFBFBD>e
@@ -228,42 +252,57 @@ menutrans Select\ &All Vybrat\ &v
" {{{ The GUI toolbar
if has("toolbar")
if exists("*Do_toolbar_tmenu")
delfun Do_toolbar_tmenu
endif
fun Do_toolbar_tmenu()
tmenu ToolBar.Open Otev<EFBFBD><EFBFBD>t soubor
tmenu ToolBar.Save Ulo<EFBFBD>it soubor
tmenu ToolBar.SaveAll Ulo<EFBFBD>it v<EFBFBD>echny soubory
tmenu ToolBar.Print Tisk
tmenu ToolBar.Undo Zp<EFBFBD>t
tmenu ToolBar.Redo Zru<EFBFBD>it vr<EFBFBD>cen<EFBFBD>
tmenu ToolBar.Cut Vy<EFBFBD><EFBFBD>znout
tmenu ToolBar.Copy Kop<EFBFBD>rovat
tmenu ToolBar.Paste Vlo<EFBFBD>it
tmenu ToolBar.Find Hledat...
tmenu ToolBar.FindNext Hledat dal<EFBFBD><EFBFBD>
tmenu ToolBar.FindPrev Hledat p<EFBFBD>edchoz<EFBFBD>
tmenu ToolBar.Replace Nahradit...
if 0 " disabled; These are in the Windows menu
tmenu ToolBar.New Nov<EFBFBD> okno
tmenu ToolBar.WinSplit Rozd<EFBFBD>lit okno
tmenu ToolBar.WinMax Maximalizovat okno
tmenu ToolBar.WinMin Minimalizovat okno
tmenu ToolBar.WinClose Zav<EFBFBD><EFBFBD>t okno
endif
tmenu ToolBar.LoadSesn Na<EFBFBD><EFBFBD>st sezen<EFBFBD>
tmenu ToolBar.SaveSesn Ulo<EFBFBD>it sezen<EFBFBD>
tmenu ToolBar.RunScript Spustit skript
tmenu ToolBar.Make Spustit make
tmenu ToolBar.Shell Spustit shell
tmenu ToolBar.RunCtags Spustit ctags
tmenu ToolBar.TagJump Sko<EFBFBD>it na tag pod kurzorem
tmenu ToolBar.Help N<EFBFBD>pov<EFBFBD>da
tmenu ToolBar.FindHelp Hledat n<EFBFBD>pov<EFBFBD>du k...
endfun
if exists("*Do_toolbar_tmenu")
delfun Do_toolbar_tmenu
endif
fun Do_toolbar_tmenu()
tmenu ToolBar.Open Otev<EFBFBD><EFBFBD>t soubor
tmenu ToolBar.Save Ulo<EFBFBD>it soubor
tmenu ToolBar.SaveAll Ulo<EFBFBD>it v<EFBFBD>echny soubory
if has("printer") || has("unix")
tmenu ToolBar.Print Tisk
endif
tmenu ToolBar.Undo Zp<EFBFBD>t
tmenu ToolBar.Redo Zru<EFBFBD>it vr<EFBFBD>cen<EFBFBD>
tmenu ToolBar.Cut Vy<EFBFBD><EFBFBD>znout
tmenu ToolBar.Copy Kop<EFBFBD>rovat
tmenu ToolBar.Paste Vlo<EFBFBD>it
tmenu ToolBar.Find Hledat...
tmenu ToolBar.FindNext Hledat dal<EFBFBD><EFBFBD>
tmenu ToolBar.FindPrev Hledat p<EFBFBD>edchoz<EFBFBD>
tmenu ToolBar.Replace Nahradit...
if 0 " disabled; These are in the Windows menu
tmenu ToolBar.New Nov<EFBFBD> okno
tmenu ToolBar.WinSplit Rozd<EFBFBD>lit okno
tmenu ToolBar.WinMax Maximalizovat okno
tmenu ToolBar.WinMin Minimalizovat okno
tmenu ToolBar.WinClose Zav<EFBFBD><EFBFBD>t okno
endif
tmenu ToolBar.LoadSesn Na<EFBFBD><EFBFBD>st sezen<EFBFBD>
tmenu ToolBar.SaveSesn Ulo<EFBFBD>it sezen<EFBFBD>
tmenu ToolBar.RunScript Spustit skript
tmenu ToolBar.Make Spustit make
tmenu ToolBar.Shell Spustit shell
tmenu ToolBar.RunCtags Spustit ctags
tmenu ToolBar.TagJump Sko<EFBFBD>it na tag pod kurzorem
tmenu ToolBar.Help N<EFBFBD>pov<EFBFBD>da
tmenu ToolBar.FindHelp Hledat n<EFBFBD>pov<EFBFBD>du k...
endfun
endif
" }}}
" {{{ DIALOG TEXTS
let g:menutrans_no_file = "[<5B><>dn<64> soubor]"
let g:menutrans_help_dialog = "Zadejte hledan<61> p<><70>kaz nebo slovo:\n\n\tP<74>idejte i_ pro p<><70>kazy vkl<6B>dac<61>ho re<72>imu (nap<61>. i_CTRL-X)\n\tP<74>idejte c_ pro p<><70>kazy p<><70>kazov<6F> <20><>dky (nap<61>. c_<Del>)\n\tP<74>idejte ' pro jm<6A>no volby (nap<61>. 'shiftwidth')"
let g:menutrans_path_dialog = "Zadejte cesty pro vyhled<65>v<EFBFBD>n<EFBFBD> soubor<6F>. Jednotliv<69> cesty odd<64>lte <20><>rkou"
let g:menutrans_tags_dialog = "Zadejte jm<6A>na soubor<6F> s tagy. Jm<4A>na odd<64>lte <20><>rkami."
let g:menutrans_textwidth_dialog = "Zadejte d<>lku <20><>dku (0 pro zak<61>z<EFBFBD>n<EFBFBD> form<72>tov<6F>n<EFBFBD>):"
let g:menutrans_fileformat_dialog = "Vyberte typ konce <20><>dk<64>"
" }}}"
let &cpo = s:keepcpo
unlet s:keepcpo
" vim:set foldmethod=marker expandtab tabstop=3 shiftwidth=3:

View File

@@ -1,30 +1,38 @@
" Menu Translations: Czech for systems without localization
" Maintainer: Jiri Brezina <brzj@seznam.cz>
" vim:set foldmethod=marker:
" $Revision: 1.3 $
" $Date: 2005/12/19 22:06:56 $
" Menu Translations: Czech (latin1 - w/o diacritics)
" Maintainer: Jiri Sedlak <jiri_sedlak@users.sourceforge.net>
" Previous maintainer: Jiri Brezina
" Based on: menu.vim (2012-10-21)
" Quit when menu translations have already been done.
if exists("did_menu_trans")
finish
finish
endif
let did_menu_trans = 1
let s:keepcpo= &cpo
set cpo&vim
scriptencoding latin1
" {{{ File menu
menutrans &File &Soubor
menutrans &Open\.\.\.<Tab>:e &Otevrit\.\.\.<Tab>:e
menutrans Sp&lit-Open\.\.\.<Tab>:sp Otevrit\ v\ no&vem\ okne\.\.\.<Tab>:sp
menutrans Open\ Tab\.\.\.<Tab>:tabnew Otevrit\ tab\.\.\.<Tab>:tabnew
menutrans &New<Tab>:enew &Novy<Tab>:enew
menutrans &Close<Tab>:close &Zavrit<Tab>:close
menutrans &Save<Tab>:w &Ulozit<Tab>:w
menutrans Save\ &As\.\.\.<Tab>:sav Ulozit\ &jako\.\.\.<Tab>:sav
menutrans Split\ &Diff\ with\.\.\. Rozdelit\ okno\ -\ &Diff\.\.\.
menutrans Split\ Patched\ &By\.\.\. Rozdelit\ okno\ -\ &Patch\.\.\.
menutrans &Print &Tisk
menutrans Sa&ve-Exit<Tab>:wqa U&lozit\ -\ Konec<Tab>:wqa
menutrans E&xit<Tab>:qa &Konec<Tab>:qa
if has("printer") || has("unix")
menutrans &Print &Tisk
endif
menutrans Sa&ve-Exit<Tab>:wqa U&lozit\ a\ ukoncit<Tab>:wqa
menutrans E&xit<Tab>:qa &Ukoncit<Tab>:qa
if has("diff")
menutrans Split\ &Diff\ with\.\.\. Rozdelit\ okno\ -\ &Diff\.\.\.
menutrans Split\ Patched\ &By\.\.\. Rozdelit\ okno\ -\ &Patch\.\.\.
endif
" }}}
" {{{ Edit menu
@@ -37,24 +45,32 @@ menutrans &Copy<Tab>"+y &Kopirovat<Tab>"+y
menutrans &Paste<Tab>"+gP V&lozit<Tab>"+gP
menutrans Put\ &Before<Tab>[p Vlozit\ &pred<Tab>[p
menutrans Put\ &After<Tab>]p Vlozi&t\ za<Tab>]p
menutrans &Delete<Tab>x &Smazat<Tab>x
if has("win32") || has("win16")
menutrans &Delete<Tab>x &Smazat<Tab>x
endif
menutrans &Select\ All<Tab>ggVG Vy&brat\ vse<Tab>ggVG
menutrans &Find\.\.\. &Hledat\.\.\.
menutrans Find\ and\ Rep&lace\.\.\. &Nahradit\.\.\.
menutrans Options\.\.\. Volb&y\.\.\.
if has("win32") || has("win16") || has("gui_gtk") || has("gui_kde") || has("gui_motif")
menutrans &Find\.\.\. &Hledat\.\.\.
menutrans Find\ and\ Rep&lace\.\.\. &Nahradit\.\.\.
else
menutrans Find<Tab>/ &Hledat<Tab>/
menutrans Find\ and\ Rep&lace<Tab>:%s &Nahradit<Tab>:%s
menutrans Find\ and\ Rep&lace<Tab>:s &Nahradit<Tab>:s
endif
menutrans Settings\ &Window Nastav&eni\ okna
" {{{2 Edit -1
" {{{2 Edit -1
menutrans Startup\ &Settings Pocatecni\ &nastaveni
menutrans &Global\ Settings &Globalni\ nastaveni
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! &Prepnout\ zvyrazneni\ vzoru<Tab>:set\ hls!
menutrans Toggle\ &Ignore-case<Tab>:set\ ic! Prepnout\ ignorovani\ &VERZALEK<Tab>:set\ ic!
menutrans Toggle\ &Showmatch<Tab>:set\ sm! Prepnout\ &Showmatch\ \{\(\[\])\}<Tab>:set\ sm!
menutrans &Context\ lines Zobrazit\ konte&xt\ kurzoru
menutrans &Virtual\ Edit Virtualni\ p&ozice\ kurzoru
menutrans Never Nikdy
menutrans Block\ Selection Vyber\ Bloku
menutrans Insert\ mode Insert\ mod
menutrans Block\ and\ Insert Blok\ a\ Insert
menutrans Always Vzdycky
menutrans Never Nikdy
menutrans Block\ Selection Vyber\ Bloku
menutrans Insert\ mode Insert\ mod
menutrans Block\ and\ Insert Blok\ a\ Insert
menutrans Always Vzdycky
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! Prepnout\ Insert\ mo&d<Tab>:set\ im!
menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! Prepnout\ kompatibilni\ rezim\ s\ 'vi'<Tab>:set\ cp!
menutrans Search\ &Path\.\.\. Nastavit\ &cestu\ k\ prohledavani\.\.\.
@@ -63,9 +79,10 @@ menutrans Toggle\ &Toolbar Prepnout\ &Toolbar
menutrans Toggle\ &Bottom\ Scrollbar Pr&epnout\ dolni\ rolovaci\ listu
menutrans Toggle\ &Left\ Scrollbar Prepnout\ &levou\ rolovaci\ listu
menutrans Toggle\ &Right\ Scrollbar Prepnout\ p&ravou\ rolovaci\ listu
" {{{2 Edit -2
" {{{2 Edit -2
menutrans F&ile\ Settings Nastaveni\ so&uboru
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! Prepnout\ cislovani\ ra&dku<Tab>:set\ nu!
menutrans Toggle\ relati&ve\ Line\ Numbering<Tab>:set\ rnu! Prepnout\ relativni\ cislovani\ ra&dku<Tab>:set\ rnu!
menutrans Toggle\ &List\ Mode<Tab>:set\ list! Prepnout\ &List\ mod<Tab>:set\ list!
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! Prepnout\ zala&movani\ radku<Tab>:set\ wrap!
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! Prepnout\ zl&om\ ve\ slove<Tab>:set\ lbr!
@@ -76,10 +93,12 @@ menutrans &Shiftwidth Nastav&it\ sirku\ od&sazeni
menutrans Soft\ &Tabstop Nastavit\ Soft\ &Tabstop
menutrans Te&xt\ Width\.\.\. Sirka\ te&xtu\.\.\.
menutrans &File\ Format\.\.\. &Format\ souboru\.\.\.
" {{{2 Edit -3
" {{{2 Edit -3
menutrans C&olor\ Scheme Barevne\ s&chema
menutrans &Keymap Klavesova\ m&apa
menutrans Select\ Fo&nt\.\.\. Vybrat\ pis&mo\.\.\.
if has("win32") || has("win16") || has("gui_motif") || has("gui_gtk") || has("gui_kde") || has("gui_photon") || has("gui_mac")
menutrans Select\ Fo&nt\.\.\. Vybrat\ pis&mo\.\.\.
endif
" }}}1
" {{{ Programming menu
@@ -88,46 +107,52 @@ menutrans &Jump\ to\ this\ tag<Tab>g^] &Skocit\ na\ tag<Tab>g^]
menutrans Jump\ &back<Tab>^T Skocit\ &zpet<Tab>^T
menutrans Build\ &Tags\ File &Vytvorit\ soubor\ tagu
menutrans &Spelling &Kontrola\ pravopisu
menutrans &Spell\ Check\ On Kontrola\ pravopisu\ &zapnuta
menutrans Spell\ Check\ &Off Kontrola\ pravopisu\ &vypnuta
menutrans To\ Next\ error<Tab>]s &Dalsi\ chyba<Tab>]s
menutrans To\ Previous\ error<Tab>[s &Predchozi\ chyba<Tab>[s
menutrans Suggest\ Corrections<Tab>z? &Navrh\ oprav<Tab>z?
menutrans Repeat\ correction<Tab>:spellrepall Zopakovat\ &opravu<Tab>:spellrepall
menutrans Set\ language\ to\ "en" Nastav\ jazyk\ na\ "en"
menutrans Set\ language\ to\ "en_au" Nastav\ jazyk\ na\ "en_au"
menutrans Set\ language\ to\ "en_ca" Nastav\ jazyk\ na\ "en_ca"
menutrans Set\ language\ to\ "en_gb" Nastav\ jazyk\ na\ "en_gb"
menutrans Set\ language\ to\ "en_nz" Nastav\ jazyk\ na\ "en_nz"
menutrans Set\ language\ to\ "en_us" Nastav\ jazyk\ na\ "en_us"
menutrans Set\ language\ to\ "cz" Nastav\ jazyk\ na\ "cz"
menutrans Set\ language\ to\ "cs_cz" Nastav\ jazyk\ na\ "cs_cz"
menutrans &Find\ More\ Languages Nalezt\ dalsi\ &jazyky
if has("spell")
menutrans &Spelling &Kontrola\ pravopisu
menutrans &Spell\ Check\ On &Zapnout\ kontrolu\ pravopisu
menutrans Spell\ Check\ &Off &Vypnout \kontrolu\ pravopisu
menutrans To\ &Next\ error<Tab>]s &Dalsi\ chyba<Tab>]s
menutrans To\ &Previous\ error<Tab>[s &Predchozi\ chyba<Tab>[s
menutrans Suggest\ &Corrections<Tab>z= &Navrhnout\ opravy<Tab>z=
menutrans &Repeat\ correction<Tab>:spellrepall Zopakovat\ &opravu<Tab>:spellrepall
menutrans Set\ language\ to\ "en" Nastavit\ jazyk\ na\ "en"
menutrans Set\ language\ to\ "en_au" Nastavit\ jazyk\ na\ "en_au"
menutrans Set\ language\ to\ "en_ca" Nastavit\ jazyk\ na\ "en_ca"
menutrans Set\ language\ to\ "en_gb" Nastavit\ jazyk\ na\ "en_gb"
menutrans Set\ language\ to\ "en_nz" Nastavit\ jazyk\ na\ "en_nz"
menutrans Set\ language\ to\ "en_us" Nastavit\ jazyk\ na\ "en_us"
menutrans &Find\ More\ Languages Nalezt\ dalsi\ &jazyky
let g:menutrans_set_lang_to = "Nastavit jazyk na"
endif
menutrans &Folding &Foldy
menutrans &Enable/Disable\ folds<Tab>zi &Ano/Ne<Tab>zi
menutrans &View\ Cursor\ Line<Tab>zv &Zobrazit\ radek\ kurzoru<Tab>zv
menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx Zo&brazit\ pouze\ radek\ kurzoru\ <Tab>zMzx
menutrans C&lose\ more\ folds<Tab>zm &Vyjmout\ jednu\ uroven\ foldu<Tab>zm
menutrans &Close\ all\ folds<Tab>zM Zavri&t\ vsechny\ foldy<Tab>zM
menutrans O&pen\ more\ folds<Tab>zr Pridat\ jedn&u\ uroven\ foldu<Tab>zr
menutrans &Open\ all\ folds<Tab>zR &Otevrit\ vsechny\ foldy<Tab>zR
menutrans Fold\ Met&hod Metoda\ &skladani
"menutrans M&anual &Rucne
"menutrans I&ndent &Odsazeni
"menutrans E&xpression &Vyraz
"menutrans S&yntax &Syntax
"menutrans &Diff &Diff
"menutrans Ma&rker Ma&rker
menutrans Create\ &Fold<Tab>zf Vytvorit\ &fold<Tab>zf
menutrans &Delete\ Fold<Tab>zd Vymazat\ fol&d<Tab>zd
menutrans Delete\ &All\ Folds<Tab>zD V&ymazat\ vsechny\ foldy<Tab>zD
menutrans Fold\ col&umn\ width Sloupec\ zob&razeni\ foldu
if has("Folding")
menutrans &Folding &Skladani
menutrans &Enable/Disable\ folds<Tab>zi &Ano/Ne<Tab>zi
menutrans &View\ Cursor\ Line<Tab>zv Zobrazit\ radek\ &kurzoru<Tab>zv
menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx Zobrazit\ &pouze\ radek\ kurzoru\ <Tab>zMzx
menutrans C&lose\ more\ folds<Tab>zm Slozit\ &jednu\ uroven\ skladu<Tab>zm
menutrans &Close\ all\ folds<Tab>zM Slozit\ vsechny\ sklady<Tab>zM
menutrans O&pen\ more\ folds<Tab>zr Pridat\ jednu\ uroven\ skladu<Tab>zr
menutrans &Open\ all\ folds<Tab>zR &Otevrit\ vsechny\ sklady<Tab>zR
menutrans Fold\ Met&hod &Metoda\ skladani
menutrans M&anual &Rucne
menutrans I&ndent &Odsazeni
menutrans E&xpression &Vyraz
menutrans S&yntax &Syntaxe
menutrans &Diff &Rozdily
menutrans Ma&rker &Znacky
menutrans Create\ &Fold<Tab>zf Vytvorit\ &sklad<Tab>zf
menutrans &Delete\ Fold<Tab>zd Vymazat\ skla&d<Tab>zd
menutrans Delete\ &All\ Folds<Tab>zD Vymazat\ vsechny\ sklady<Tab>zD
menutrans Fold\ col&umn\ width Sloupec\ zob&razeni\ skladu
endif
if has("diff")
menutrans &Update &Obnovit
menutrans &Get\ Block &Sejmout\ Blok
menutrans &Put\ Block &Vlozit\ Blok
endif
menutrans &Update &Obnovit
menutrans &Get\ Block &Sejmout\ Blok
menutrans &Put\ Block &Vlozit\ Blok
menutrans &Make<Tab>:make &Make<Tab>:make
menutrans &List\ Errors<Tab>:cl Vypis\ &chyb<Tab>:cl
menutrans L&ist\ Messages<Tab>:cl! Vyp&is\ zprav<Tab>:cl!
@@ -140,7 +165,7 @@ menutrans SeT\ Compiler Nas&taveni\ kompilatoru
menutrans &Update<Tab>:cwin O&bnovit<Tab>:cwin
menutrans &Open<Tab>:copen &Otevrit<Tab>:copen
menutrans &Close<Tab>:cclose &Zavrit<Tab>:cclose
menutrans &Set\ Compiler N&astavit\ kompilator
menutrans Se&T\ Compiler N&astavit\ kompilator
menutrans &Convert\ to\ HEX<Tab>:%!xxd Prevest\ do\ sestnactkoveho\ format&u<Tab>:%!xxd
menutrans Conve&rt\ back<Tab>:%!xxd\ -r Pr&evest\ zpet<Tab>:%!xxd\ -r
@@ -168,7 +193,6 @@ menutrans &Delete Z&rusit
menutrans &Alternate &Zmenit
menutrans &Next &Dalsi
menutrans &Previous &Predchozi
menutrans [No\ File] [Zadny\ soubor]
" }}}
" {{{ Menu Window
@@ -219,6 +243,8 @@ menutrans &Paste &Vlozit
menutrans &Delete &Smazat
menutrans Select\ Blockwise Vybrat\ blokove
menutrans Select\ &Word Vybrat\ &slovo
menutrans Select\ Pa&ragraph Vybrat\ &odstavec
menutrans Select\ &Sentence Vybrat\ ve&tu
menutrans Select\ &Line Vybrat\ &radek
menutrans Select\ &Block Vybrat\ &blok
menutrans Select\ &All Vybrat\ &vse
@@ -226,42 +252,57 @@ menutrans Select\ &All Vybrat\ &vse
" {{{ The GUI toolbar
if has("toolbar")
if exists("*Do_toolbar_tmenu")
delfun Do_toolbar_tmenu
endif
fun Do_toolbar_tmenu()
tmenu ToolBar.Open Otevrit soubor
tmenu ToolBar.Save Ulozit soubor
tmenu ToolBar.SaveAll Ulozit vsechny soubory
tmenu ToolBar.Print Tisk
tmenu ToolBar.Undo Zpet
tmenu ToolBar.Redo Zrusit vraceni
tmenu ToolBar.Cut Vyriznout
tmenu ToolBar.Copy Kopirovat
tmenu ToolBar.Paste Vlozit
tmenu ToolBar.Find Hledat...
tmenu ToolBar.FindNext Hledat dalsi
tmenu ToolBar.FindPrev Hledat predchozi
tmenu ToolBar.Replace Nahradit...
if 0 " disabled; These are in the Windows menu
tmenu ToolBar.New Nove okno
tmenu ToolBar.WinSplit Rozdelit okno
tmenu ToolBar.WinMax Maximalizovat okno
tmenu ToolBar.WinMin Minimalizovat okno
tmenu ToolBar.WinClose Zavrit okno
endif
tmenu ToolBar.LoadSesn Nacist sezeni
tmenu ToolBar.SaveSesn Ulozit sezeni
tmenu ToolBar.RunScript Spustit skript
tmenu ToolBar.Make Spustit make
tmenu ToolBar.Shell Spustit shell
tmenu ToolBar.RunCtags Spustit ctags
tmenu ToolBar.TagJump Skocit na tag pod kurzorem
tmenu ToolBar.Help Napoveda
tmenu ToolBar.FindHelp Hledat napovedu k...
endfun
if exists("*Do_toolbar_tmenu")
delfun Do_toolbar_tmenu
endif
fun Do_toolbar_tmenu()
tmenu ToolBar.Open Otevrit soubor
tmenu ToolBar.Save Ulozit soubor
tmenu ToolBar.SaveAll Ulozit vsechny soubory
if has("printer") || has("unix")
tmenu ToolBar.Print Tisk
endif
tmenu ToolBar.Undo Zpet
tmenu ToolBar.Redo Zrusit vraceni
tmenu ToolBar.Cut Vyriznout
tmenu ToolBar.Copy Kopirovat
tmenu ToolBar.Paste Vlozit
tmenu ToolBar.Find Hledat...
tmenu ToolBar.FindNext Hledat dalsi
tmenu ToolBar.FindPrev Hledat predchozi
tmenu ToolBar.Replace Nahradit...
if 0 " disabled; These are in the Windows menu
tmenu ToolBar.New Nove okno
tmenu ToolBar.WinSplit Rozdelit okno
tmenu ToolBar.WinMax Maximalizovat okno
tmenu ToolBar.WinMin Minimalizovat okno
tmenu ToolBar.WinClose Zavrit okno
endif
tmenu ToolBar.LoadSesn Nacist sezeni
tmenu ToolBar.SaveSesn Ulozit sezeni
tmenu ToolBar.RunScript Spustit skript
tmenu ToolBar.Make Spustit make
tmenu ToolBar.Shell Spustit shell
tmenu ToolBar.RunCtags Spustit ctags
tmenu ToolBar.TagJump Skocit na tag pod kurzorem
tmenu ToolBar.Help Napoveda
tmenu ToolBar.FindHelp Hledat napovedu k...
endfun
endif
" }}}
" {{{ DIALOG TEXTS
let g:menutrans_no_file = "[Zadny soubor]"
let g:menutrans_help_dialog = "Zadejte hledany prikaz nebo slovo:\n\n\tPridejte i_ pro prikazy vkladaciho rezimu (napr. i_CTRL-X)\n\tPridejte c_ pro prikazy prikazove radky (napr. c_<Del>)\n\tPridejte ' pro jmeno volby (napr. 'shiftwidth')"
let g:menutrans_path_dialog = "Zadejte cesty pro vyhledavani souboru. Jednotlive cesty oddelte carkou"
let g:menutrans_tags_dialog = "Zadejte jmena souboru s tagy. Jmena oddelte carkami."
let g:menutrans_textwidth_dialog = "Zadejte delku radku (0 pro zakazani formatovani):"
let g:menutrans_fileformat_dialog = "Vyberte typ konce radku"
" }}}"
let &cpo = s:keepcpo
unlet s:keepcpo
" vim:set foldmethod=marker expandtab tabstop=3 shiftwidth=3:

View File

@@ -1,4 +1,4 @@
" Function to left and rigt align text.
" Function to left and right align text.
"
" Written by: Preben "Peppe" Guldberg <c928400@student.dtu.dk>
" Created: 980806 14:13 (or around that time anyway)
@@ -256,18 +256,17 @@ function! Justify(...) range
let str = substitute(str, '\s\+$', '', '')
let str = substitute(str, '^\s\+', '', '')
let str = substitute(str, '\s\+', ' ', 'g')
" Use substitute() hack to get strlen in characters instead of bytes
let str_n = strlen(substitute(str, '.', 'x', 'g'))
let str_n = strdisplaywidth(str)
" Possible addition of space after punctuation
if exists("join_str")
let str = substitute(str, join_str, '\1 ', 'g')
endif
let join_n = strlen(substitute(str, '.', 'x', 'g')) - str_n
let join_n = strdisplaywidth(str) - str_n
" Can extraspaces be added?
" Note that str_n may be less than strlen(str) [joinspaces above]
if strlen(substitute(str, '.', 'x', 'g')) < tw - indent_n && str_n > 0
if strdisplaywidth(str) <= tw - indent_n && str_n > 0
" How many spaces should be added
let s_add = tw - str_n - indent_n - join_n
let s_nr = strlen(substitute(str, '\S', '', 'g') ) - join_n

View File

@@ -131,7 +131,7 @@ function! s:Match_wrapper(word, forward, mode) range
" let default = substitute(escape(&mps, '[$^.*~\\/?]'), '[,:]\+',
" \ '\\|', 'g').'\|\/\*\|\*\/\|#if\>\|#ifdef\>\|#else\>\|#elif\>\|#endif\>'
let default = escape(&mps, '[$^.*~\\/?]') . (strlen(&mps) ? "," : "") .
\ '\/\*:\*\/,#if\%(def\)\=:#else\>:#elif\>:#endif\>'
\ '\/\*:\*\/,#\s*if\%(def\)\=:#\s*else\>:#\s*elif\>:#\s*endif\>'
" s:all = pattern with all the keywords
let match_words = match_words . (strlen(match_words) ? "," : "") . default
if match_words !~ s:notslash . '\\\d'
@@ -649,7 +649,7 @@ fun! s:MultiMatch(spflag, mode)
" s:all regexp based on s:pat and the default groups
" This part is copied and slightly modified from s:Match_wrapper().
let default = escape(&mps, '[$^.*~\\/?]') . (strlen(&mps) ? "," : "") .
\ '\/\*:\*\/,#if\%(def\)\=:#else\>:#elif\>:#endif\>'
\ '\/\*:\*\/,#\s*if\%(def\)\=:#\s*else\>:#\s*elif\>:#\s*endif\>'
" Allow b:match_words = "GetVimMatchWords()" .
if b:match_words =~ ":"
let match_words = b:match_words

View File

@@ -2,7 +2,7 @@
" You can also use this as a start for your own set of menus.
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2011 Mar 22
" Last Change: 2012 Dec 06
" Note that ":an" (short for ":anoremenu") is often used to make a menu work
" in all modes and avoid side effects from mappings defined by the user.
@@ -132,7 +132,7 @@ an 10.610 &File.Sa&ve-Exit<Tab>:wqa :confirm wqa<CR>
an 10.620 &File.E&xit<Tab>:qa :confirm qa<CR>
func! <SID>SelectAll()
exe "norm gg" . (&slm == "" ? "VG" : "gH\<C-O>G")
exe "norm! gg" . (&slm == "" ? "VG" : "gH\<C-O>G")
endfunc
func! s:FnameEscape(fname)
@@ -434,6 +434,10 @@ if has("spell")
let enc = &enc
endif
if !exists("g:menutrans_set_lang_to")
let g:menutrans_set_lang_to = 'Set language to'
endif
let found = 0
let s = globpath(&rtp, "spell/*." . enc . ".spl")
if s != ""
@@ -441,8 +445,9 @@ if has("spell")
for f in split(s, "\n")
let nm = substitute(f, '.*spell[/\\]\(..\)\.[^/\\]*\.spl', '\1', "")
if nm != "en" && nm !~ '/'
let _nm = nm
let found += 1
let menuname = '&Tools.&Spelling.Set\ language\ to\ "' . nm . '"'
let menuname = '&Tools.&Spelling.' . escape(g:menutrans_set_lang_to, "\\. \t|") . '\ "' . nm . '"'
exe 'an 40.335.' . n . ' ' . menuname . ' :set spl=' . nm . ' spell<CR>'
let s:undo_spellang += ['aun ' . menuname]
endif
@@ -452,7 +457,7 @@ if has("spell")
if found == 0
echomsg "Could not find other spell files"
elseif found == 1
echomsg "Found spell file " . nm
echomsg "Found spell file " . _nm
else
echomsg "Found " . found . " more spell files"
endif

View File

@@ -20,7 +20,7 @@
if &cp || exists("g:loaded_netrwPlugin")
finish
endif
let g:loaded_netrwPlugin = "v145"
let g:loaded_netrwPlugin = "v146"
if v:version < 702
echohl WarningMsg | echo "***netrw*** you need vim version 7.2 for this version of netrw" | echohl None
finish

View File

@@ -1,23 +0,0 @@
*** br_FR.aff.orig 2012-08-01 22:40:24.000000000 +0200
--- br_FR.aff 2012-08-01 22:46:03.028851510 +0200
***************
*** 13,20 ****
SET UTF-8
TRY esiaùnñrtolcdugmphbyfvkwzESIAÙNÑRTOLCDUGMPHBYFVKWZ'
# Permet à l'utilitaire en ligne de commande hunspell de fonctionner avec les mots contenant des quotes (lec'hienn, ...)
! WORDCHARS '
FLAG long
--- 13,22 ----
SET UTF-8
TRY esiaùnñrtolcdugmphbyfvkwzESIAÙNÑRTOLCDUGMPHBYFVKWZ'
+ MIDWORD '
+
# Permet à l'utilitaire en ligne de commande hunspell de fonctionner avec les mots contenant des quotes (lec'hienn, ...)
! WORDCHARS '-
FLAG long

View File

@@ -25,16 +25,16 @@ $SPELLDIR/br.utf-8.spl : $FILES
#
# Fetching the files from OpenOffice.org.
#
OODIR = http://extensions.services.openoffice.org/e-files/2207/6
:attr {fetch = $OODIR/%file%} dict-br_0.8.oxt
OODIR = http://extensions.libreoffice.org/extension-center/an-drouizig-breton-spellchecker/releases/0.11/
:attr {fetch = $OODIR/%file%} dict-br-0.11.oxt
# The files don't depend on the .zip file so that we can delete it.
# Only download the zip file if the targets don't exist.
br_FR.aff br_FR.dic: {buildcheck=}
:assertpkg unzip patch
:fetch dict-br_0.8.oxt
:sys $UNZIP dict-br_0.8.oxt
:delete dict-br_0.8.oxt
:fetch dict-br-0.11.oxt
:sys $UNZIP dict-br-0.11.oxt
:delete dict-br-0.11.oxt
:copy dictionaries/br_FR.aff br_FR.aff
:copy dictionaries/br_FR.dic br_FR.dic
# The br_FR.aff file contains a BOM, remove it.
@@ -65,12 +65,12 @@ diff:
check:
:assertpkg unzip diff
:fetch dict-br_0.8.oxt
:fetch dict-br-0.11.oxt
:mkdir tmp
:cd tmp
@try:
@import stat
:sys $UNZIP ../dict-br_0.8.oxt
:sys $UNZIP ../dict-br-0.11.oxt
:sys {force} diff ../dictionaries/br_FR.aff br_FR.aff >d
@if os.stat('d')[stat.ST_SIZE] > 0:
:copy br_FR.aff ../br_FR.new.aff
@@ -80,7 +80,7 @@ check:
@finally:
:cd ..
:delete {r}{f}{q} tmp
:delete dict-br_0.8.oxt
:delete dict-br-0.11.oxt
# vim: set sts=4 sw=4 :

View File

@@ -1,8 +1,9 @@
" Vim ABAP syntax file
" Language: SAP - ABAP/R4
" Revision: 1.0
" Maintainer: Marius Piedallu van Wyk <marius@e.co.za>
" Last Change: 2006 Apr 13
" Revision: 2.1
" Maintainer: Marius Piedallu van Wyk <lailoken@gmail.com>
" Last Change: 2012 Oct 23
" Comment: Thanks to EPI-USE Labs for all your assistance. :)
" For version < 6.0: Clear all syntax items
" For version >= 6.0: Quit when a syntax file was already loaded
@@ -15,101 +16,153 @@ endif
" Always ignore case
syn case ignore
" Symbol Operators
syn match abapSymbolOperator "[+\-/=<>$]"
syn match abapSymbolOperator "\*"
syn match abapSymbolOperator "[<>]="
syn match abapSymbolOperator "<>"
syn match abapSymbolOperator "\*\*"
syn match abapSymbolOperator "[()]"
syn match abapSymbolOperator "[:,\.]"
" Symbol Operators (space delimited)
syn match abapSymbolOperator "\W+\W"
syn match abapSymbolOperator "\W-\W"
syn match abapSymbolOperator "\W/\W"
syn match abapSymbolOperator "\W%\W"
syn match abapSymbolOperator "\W=\W"
syn match abapSymbolOperator "\W<\W"
syn match abapSymbolOperator "\W>\W"
syn match abapSymbolOperator "\W\*\W"
syn match abapSymbolOperator "\W[<>]=\W"
syn match abapSymbolOperator "\W<>\W"
syn match abapSymbolOperator "\W\*\*\W"
syn match abapSymbolOperator "\[\]"
syn match abapSymbolOperator "->\*\?"
syn match abapSymbolOperator "=>"
syn match abapSymbolOperator "[()~:,\.&$]"
" Literals
syn region abapString matchgroup=abapString start="'" end="'" contains=abapStringEscape
syn match abapStringEscape contained "''"
syn region abapCharString matchgroup=abapCharString start="'" end="'" contains=abapCharStringEscape
syn match abapCharStringEscape contained "''"
syn match abapNumber "-\=\<\d\+\>"
syn region abapString matchgroup=abapString start="`" end="`" contains=abapStringEscape
syn match abapStringEscape contained "``"
syn match abapNumber "\-\=\<\d\+\>"
syn region abapHex matchgroup=abapHex start="X'" end="'"
if version >= 600
setlocal iskeyword=-,48-57,_,A-Z,a-z
setlocal iskeyword=48-57,_,A-Z,a-z,/
else
set iskeyword=-,48-57,_,A-Z,a-z
set iskeyword=48-57,_,A-Z,a-z,/
endif
syn match abapNamespace "\</\w\+/"
" multi-word statements
syn match abapComplexStatement "\<\(WITH\W\+\(HEADER\W\+LINE\|FRAME\|KEY\)\|WITH\)\>"
syn match abapComplexStatement "\<NO\W\+STANDARD\W\+PAGE\W\+HEADING\>"
syn match abapComplexStatement "\<\(EXIT\W\+FROM\W\+STEP\W\+LOOP\|EXIT\)\>"
syn match abapComplexStatement "\<\(BEGIN\W\+OF\W\+\(BLOCK\|LINE\)\|BEGIN\W\+OF\)\>"
syn match abapComplexStatement "\<\(END\W\+OF\W\+\(BLOCK\|LINE\)\|END\W\+OF\)\>"
syn match abapComplexStatement "\<NO\W\+INTERVALS\>"
syn match abapComplexStatement "\<RESPECTING\W\+BLANKS\>"
syn match abapComplexStatement "\<SEPARATED\W\+BY\>"
syn match abapComplexStatement "\<USING\(\W\+EDIT\W\+MASK\)\?\>"
syn match abapComplexStatement "\<WHERE\(\W\+LINE\)\?\>"
syn match abapComplexStatement "\<RADIOBUTTON\W\+GROUP\>"
syn match abapComplexStatement "\<REF\W\+TO\>"
syn match abapComplexStatement "\<\(PUBLIC\|PRIVATE\|PROTECTED\)\(\W\+SECTION\)\?\>"
syn match abapComplexStatement "\<DELETING\W\+\(TRAILING\|LEADING\)\>"
syn match abapComplexStatement "\<\(ALL\W\+OCCURRENCES\)\|\(\(FIRST\|LAST\)\W\+OCCURRENCE\)\>"
syn match abapComplexStatement "\<INHERITING\W\+FROM\>"
syn match abapComplexStatement "\<\(UP\W\+\)\?TO\>"
" hyphenated-word statements
syn match abapComplexStatement "\<LINE-COUNT\>"
syn match abapComplexStatement "\<ADD-CORRESPONDING\>"
syn match abapComplexStatement "\<AUTHORITY-CHECK\>"
syn match abapComplexStatement "\<BREAK-POINT\>"
syn match abapComplexStatement "\<CLASS-DATA\>"
syn match abapComplexStatement "\<CLASS-METHODS\>"
syn match abapComplexStatement "\<CLASS-METHOD\>"
syn match abapComplexStatement "\<DIVIDE-CORRESPONDING\>"
syn match abapComplexStatement "\<EDITOR-CALL\>"
syn match abapComplexStatement "\<END-OF-DEFINITION\>"
syn match abapComplexStatement "\<END-OF-PAGE\>"
syn match abapComplexStatement "\<END-OF-SELECTION\>"
syn match abapComplexStatement "\<FIELD-GROUPS\>"
syn match abapComplexStatement "\<FIELD-SYMBOLS\>"
syn match abapComplexStatement "\<FUNCTION-POOL\>"
syn match abapComplexStatement "\<IS\W\+\(NOT\W\+\)\?\(ASSIGNED\|BOUND\|INITIAL\|SUPPLIED\)\>"
syn match abapComplexStatement "\<MOVE-CORRESPONDING\>"
syn match abapComplexStatement "\<MULTIPLY-CORRESPONDING\>"
syn match abapComplexStatement "\<NEW-LINE\>"
syn match abapComplexStatement "\<NEW-PAGE\>"
syn match abapComplexStatement "\<NEW-SECTION\>"
syn match abapComplexStatement "\<PRINT-CONTROL\>"
syn match abapComplexStatement "\<RP-PROVIDE-FROM-LAST\>"
syn match abapComplexStatement "\<SELECT-OPTIONS\>"
syn match abapComplexStatement "\<SELECTION-SCREEN\>"
syn match abapComplexStatement "\<START-OF-SELECTION\>"
syn match abapComplexStatement "\<SUBTRACT-CORRESPONDING\>"
syn match abapComplexStatement "\<SYNTAX-CHECK\>"
syn match abapComplexStatement "\<SYNTAX-TRACE\>"
syn match abapComplexStatement "\<TOP-OF-PAGE\>"
syn match abapComplexStatement "\<TYPE-POOL\>"
syn match abapComplexStatement "\<TYPE-POOLS\>"
syn match abapComplexStatement "\<LINE-SIZE\>"
syn match abapComplexStatement "\<LINE-COUNT\>"
syn match abapComplexStatement "\<MESSAGE-ID\>"
syn match abapComplexStatement "\<DISPLAY-MODE\>"
syn match abapComplexStatement "\<READ\(-ONLY\)\?\>"
" ABAP statements
syn keyword abapStatement ADD ADD-CORRESPONDING ASSIGN AT AUTHORITY-CHECK
syn keyword abapStatement BACK BREAK-POINT
syn keyword abapStatement CALL CASE CHECK CLEAR CLOSE CNT COLLECT COMMIT COMMUNICATION COMPUTE CONCATENATE CONDENSE CONSTANTS CONTINUE CONTROLS CONVERT CREATE CURRENCY
syn keyword abapStatement DATA DEFINE DELETE DESCRIBE DETAIL DIVIDE DIVIDE-CORRESPONDING DO
syn keyword abapStatement EDITOR-CALL ELSE ELSEIF END-OF-DEFINITION END-OF-PAGE END-OF-SELECTION ENDAT ENDCASE ENDDO ENDEXEC ENDFORM ENDFUNCTION ENDIF ENDIFEND ENDLOOP ENDMODULE ENDON ENDPROVIDE ENDSELECT ENDWHILE EXEC EXPORT EXPORTING EXTRACT
syn keyword abapStatement FETCH FIELD-GROUPS FIELD-SYMBOLS FIELDS FORM FORMAT FREE FUNCTION FUNCTION-POOL
syn keyword abapStatement ADD ALIAS ALIASES ASSERT ASSIGN ASSIGNING AT
syn keyword abapStatement BACK
syn keyword abapStatement CALL CASE CATCH CHECK CLASS CLEAR CLOSE CNT COLLECT COMMIT COMMUNICATION COMPUTE CONCATENATE CONDENSE CONSTANTS CONTINUE CONTROLS CONVERT CREATE CURRENCY
syn keyword abapStatement DATA DEFINE DEFINITION DEFERRED DELETE DESCRIBE DETAIL DIVIDE DO
syn keyword abapStatement ELSE ELSEIF ENDAT ENDCASE ENDCLASS ENDDO ENDEXEC ENDFORM ENDFUNCTION ENDIF ENDIFEND ENDINTERFACE ENDLOOP ENDMETHOD ENDMODULE ENDON ENDPROVIDE ENDSELECT ENDTRY ENDWHILE EVENT EVENTS EXEC EXIT EXPORT EXPORTING EXTRACT
syn keyword abapStatement FETCH FIELDS FORM FORMAT FREE FROM FUNCTION
syn keyword abapStatement GENERATE GET
syn keyword abapStatement HIDE
syn keyword abapStatement IF IMPORT IMPORTING INDEX INFOTYPES INITIALIZATION INPUT INSERT
syn keyword abapStatement LEAVE LIKE LOAD LOCAL LOOP
syn keyword abapStatement MESSAGE MODIFY MODULE MOVE MOVE-CORRESPONDING MULTIPLY MULTIPLY-CORRESPONDING
syn keyword abapStatement NEW-LINE NEW-PAGE NEW-SECTION
syn keyword abapStatement ON OVERLAY
syn keyword abapStatement PACK PARAMETERS PERFORM POSITION PRINT-CONTROL PROGRAM PROVIDE PUT
syn keyword abapStatement RAISE RANGES READ RECEIVE REFRESH REJECT REPLACE REPORT RESERVE RESTORE ROLLBACK RP-PROVIDE-FROM-LAST
syn keyword abapStatement SCAN SCROLL SEARCH SELECT SELECT-OPTIONS SELECTION-SCREEN SET SHIFT SKIP SORT SPLIT START-OF-SELECTION STATICS STOP SUBMIT SUBTRACT SUBTRACT-CORRESPONDING SUM SUMMARY SUPPRESS SYNTAX-CHECK SYNTAX-TRACE
syn keyword abapStatement TABLES TOP-OF-PAGE TRANSFER TRANSLATE TYPE TYPE-POOL TYPE-POOLS TYPES
syn keyword abapStatement UNPACK UPDATE
syn keyword abapStatement IF IMPORT IMPORTING INDEX INFOTYPES INITIALIZATION INTERFACE INTERFACES INPUT INSERT IMPLEMENTATION
syn keyword abapStatement LEAVE LIKE LINE LOAD LOCAL LOOP
syn keyword abapStatement MESSAGE METHOD METHODS MODIFY MODULE MOVE MULTIPLY
syn keyword abapStatement ON OVERLAY OPTIONAL OTHERS
syn keyword abapStatement PACK PARAMETERS PERFORM POSITION PROGRAM PROVIDE PUT
syn keyword abapStatement RAISE RANGES RECEIVE RECEIVING REDEFINITION REFERENCE REFRESH REJECT REPLACE REPORT RESERVE RESTORE RETURNING ROLLBACK
syn keyword abapStatement SCAN SCROLL SEARCH SELECT SET SHIFT SKIP SORT SORTED SPLIT STANDARD STATICS STEP STOP SUBMIT SUBTRACT SUM SUMMARY SUPPRESS
syn keyword abapStatement TABLES TIMES TRANSFER TRANSLATE TRY TYPE TYPES
syn keyword abapStatement UNASSIGN ULINE UNPACK UPDATE
syn keyword abapStatement WHEN WHILE WINDOW WRITE
" More statemets
syn keyword abapStatement LINES
syn keyword abapStatement INTO GROUP BY HAVING ORDER BY SINGLE
syn keyword abapStatement APPENDING CORRESPONDING FIELDS OF TABLE
syn keyword abapStatement LEFT RIGHT OUTER INNER JOIN AS CLIENT SPECIFIED BYPASSING BUFFER ROWS CONNECTING
syn keyword abapStatement OCCURS STRUCTURE OBJECT PROPERTY
syn keyword abapStatement CASTING APPEND RAISING VALUE COLOR
syn keyword abapStatement LINE-SIZE LINE-COUNT MESSAGE-ID
syn keyword abapStatement CHANGING EXCEPTIONS DEFAULT CHECKBOX COMMENT
syn keyword abapStatement ID NUMBER FOR DISPLAY-MODE TITLE OUTPUT
" More multi-word statements
syn match abapStatement "\(\W\|^\)\(WITH\W\+\(HEADER\W\+LINE\|FRAME\|KEY\)\|WITH\)\(\W\|$\)"ms=s+1,me=e-1
syn match abapStatement "\(\W\|^\)NO\W\+STANDARD\W\+PAGE\W\+HEADING\(\W\|$\)"ms=s+1,me=e-1
syn match abapStatement "\(\W\|^\)\(EXIT\W\+FROM\W\+STEP\W\+LOOP\|EXIT\)\(\W\|$\)"ms=s+1,me=e-1
syn match abapStatement "\(\W\|^\)\(BEGIN\W\+OF\W\+\(BLOCK\|LINE\)\|BEGIN\W\+OF\)\(\W\|$\)"ms=s+1,me=e-1
syn match abapStatement "\(\W\|^\)\(END\W\+OF\W\+\(BLOCK\|LINE\)\|END\W\+OF\)\(\W\|$\)"ms=s+1,me=e-1
syn match abapStatement "\(\W\|^\)IS\W\+INITIAL\(\W\|$\)"ms=s+1,me=e-1
syn match abapStatement "\(\W\|^\)NO\W\+INTERVALS\(\W\|$\)"ms=s+1,me=e-1
syn match abapStatement "\(\W\|^\)SEPARATED\W\+BY\(\W\|$\)"ms=s+1,me=e-1
syn match abapStatement "\(\W\|^\)\(USING\W\+\(EDIT\W\+MASK\)\|USING\)\(\W\|$\)"ms=s+1,me=e-1
syn match abapStatement "\(\W\|^\)\(WHERE\W\+\(LINE\)\)\(\W\|$\)"ms=s+1,me=e-1
syn match abapStatement "\(\W\|^\)RADIOBUTTON\W\+GROUP\(\W\|$\)"ms=s+1,me=e-1
syn match abapStatement "\(\W\|^\)REF\W\+TO\(\W\|$\)"ms=s+1,me=e-1
syn keyword abapStatement CHANGING EXCEPTION EXCEPTIONS DEFAULT CHECKBOX COMMENT
syn keyword abapStatement ID NUMBER FOR TITLE OUTPUT
" Special ABAP specific tables:
syn match abapSpecial "\(\W\|^\)\(sy\|\(p\|pa\)\d\d\d\d\|t\d\d\d.\|innnn\)\(\W\|$\)"ms=s+1,me=e-1
syn match abapSpecialTables "\(sy\|\(p\|pa\)\d\d\d\d\|t\d\d\d.\|innnn\)-"me=e-1 contained
syn match abapSpecial "\(\W\|^\)\w\+-\(\w\+-\w\+\|\w\+\)"ms=s+1 contains=abapSpecialTables
syn match abapSpecialTables "\<\(sy\|\(p\|pa\)\d\d\d\d\|t\d\d\d.\|innnn\)-"me=e-1 contained
syn match abapStructure "\<\w\+-[^\>]"me=e-2 contains=abapSpecialTables,abapStatement,abapComplexStatement
syn match abapField "-\w\+"ms=s+1
" Pointer
syn match abapSpecial "<\w\+>"
" Abap constants:
" Abap common constants:
syn keyword abapSpecial TRUE FALSE NULL SPACE
" Includes
syn region abapInclude start="include" end="." contains=abapComment
" Types
syn keyword abapTypes c n i p f d t x
syn keyword abapTypes c n i p f d t x string xstring decfloat16 decfloat34
" Atritmitic operators
syn keyword abapOperator abs sign ceil floor trunc frac acos asin atan cos sin tan
syn keyword abapOperator cosh sinh tanh exp log log10 sqrt
" String operators
syn keyword abapOperator strlen xstrlen charlen numofchar dbmaxlen
syn keyword abapStatement strlen xstrlen charlen numofchar dbmaxlen
" Table operators
syn keyword abapOperator lines
" Table operators (SELECT operators)
syn keyword abapOperator INTO FROM WHERE GROUP BY HAVING ORDER BY SINGLE
syn keyword abapOperator APPENDING CORRESPONDING FIELDS OF TABLE
syn keyword abapOperator LEFT RIGHT OUTER INNER JOIN AS CLIENT SPECIFIED BYPASSING BUFFER UP TO ROWS CONNECTING
syn keyword abapOperator EQ NE LT LE GT GE NOT AND OR XOR IN LIKE BETWEEN
" An error? Not strictly... but cannot think of reason this is intended.
@@ -119,6 +172,7 @@ syn match abapError "\.\."
syn region abapComment start="^\*" end="$" contains=abapTodo
syn match abapComment "\".*" contains=abapTodo
syn keyword abapTodo contained TODO NOTE
syn match abapTodo "\#EC\W\+\w\+"
" Define the default highlighting.
" For version 5.7 and earlier: only when not done already
@@ -134,13 +188,20 @@ if version >= 508 || !exists("did_abap_syntax_inits")
HiLink abapError Error
HiLink abapComment Comment
HiLink abapInclude Include
HiLink abapStatement Statement
HiLink abapComplexStatement Statement
HiLink abapSpecial Special
HiLink abapSpecialTables PreProc
HiLink abapNamespace Special
HiLink abapSpecialTables Special
HiLink abapSymbolOperator abapOperator
HiLink abapOperator Operator
HiLink abapStatement Statement
HiLink abapCharString String
HiLink abapString String
HiLink abapFloat Float
HiLink abapTypes Type
HiLink abapSymbol Structure
HiLink abapStructure Structure
HiLink abapField Variable
HiLink abapNumber Number
HiLink abapHex Number

View File

@@ -1,7 +1,7 @@
" Vim syntax file
" Language: APT config file
" Maintainer: Yann Amar <quidame@poivron.org>
" Last Change: 2012 Oct 05
" Last Change: 2012 Oct 06
" For version 5.x: Clear all syntax items
" For version 6.x and 7.x: Quit when a syntax file was already loaded
@@ -17,6 +17,7 @@ endif
let s:cpo_save = &cpo
set cpo&vim
" Errors:
" Catch all that is not overridden by next rules/items:
syn match aptconfError display '[^[:blank:]]'
@@ -490,4 +491,3 @@ let b:current_syntax = "aptconf"
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -1,7 +1,7 @@
" Vim syntax file
" Language: C
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2012 May 03
" Last Change: 2012 Dec 14
" Quit when a (custom) syntax file was already loaded
if exists("b:current_syntax")
@@ -93,16 +93,16 @@ endif
" This should be before cErrInParen to avoid problems with #define ({ xxx })
if exists("c_curly_error")
syntax match cCurlyError "}"
syntax region cBlock start="{" end="}" contains=ALLBUT,cBadBlock,cCurlyError,@cParenGroup,cErrInParen,cCppParen,cErrInBracket,cCppBracket,cCppString,@Spell fold
syn match cCurlyError "}"
syn region cBlock start="{" end="}" contains=ALLBUT,cBadBlock,cCurlyError,@cParenGroup,cErrInParen,cCppParen,cErrInBracket,cCppBracket,cCppString,@Spell fold
else
syntax region cBlock start="{" end="}" transparent fold
syn region cBlock start="{" end="}" transparent fold
endif
"catch errors caused by wrong parenthesis and brackets
" also accept <% for {, %> for }, <: for [ and :> for ] (C99)
" But avoid matching <::.
syn cluster cParenGroup contains=cParenError,cIncluded,cSpecial,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cUserCont,cUserLabel,cBitField,cOctalZero,@cCppOutInGroup,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom
syn cluster cParenGroup contains=cParenError,cIncluded,cSpecial,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cUserLabel,cBitField,cOctalZero,@cCppOutInGroup,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom
if exists("c_no_curly_error")
syn region cParen transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,cCppString,@Spell
" cCppParen: same as cParen but ends at end-of-line; used in cDefine

View File

@@ -17,9 +17,9 @@ elseif exists("b:current_syntax")
endif
if version >= 600
setlocal iskeyword=@,48-57,_,-,
setlocal iskeyword=@,48-57,_,-
else
set iskeyword=@,48-57,_,-,
set iskeyword=@,48-57,_,-
endif
syn case ignore

134
runtime/syntax/clojure.vim Normal file

File diff suppressed because one or more lines are too long

View File

@@ -5,7 +5,8 @@
" Yeti (Add full CSS2, HTML4 support)
" Nikolai Weibull (Add CSS2 support)
" Maintainer: Jules Wang <w.jq0722@gmail.com>
" Last Change: 2012 Oct 05
" URL: https://github.com/JulesWang/css.vim
" Last Change: 2012 Dec 15
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
@@ -90,7 +91,37 @@ syn region cssFontDescriptorFunction contained matchgroup=cssFunctionName start=
syn match cssUnicodeRange contained "U+[0-9A-Fa-f?]\+"
syn match cssUnicodeRange contained "U+\x\+-\x\+"
" The 16 basic color names
syn keyword cssColor contained aqua black blue fuchsia gray green lime maroon navy olive purple red silver teal yellow
" 130 more color names
syn keyword cssColor contained aliceblue antiquewhite aquamarine azure
syn keyword cssColor contained beige bisque blanchedalmond blueviolet brown burlywood
syn keyword cssColor contained cadetblue chartreuse chocolate coral cornflowerblue cornsilk crimson cyan
syn match cssColor contained /dark\(blue\|cyan\|goldenrod\|gray\|green\|grey\|khaki\)/
syn match cssColor contained /dark\(magenta\|olivegreen\|orange\|orchid\|red\|salmon\|seagreen\)/
syn match cssColor contained /darkslate\(blue\|gray\|grey\)/
syn match cssColor contained /dark\(turquoise\|violet\)/
syn keyword cssColor contained deeppink deepskyblue dimgray dimgrey dodgerblue firebrick
syn keyword cssColor contained floralwhite forestgreen gainsboro ghostwhite gold
syn keyword cssColor contained goldenrod greenyellow grey honeydew hotpink
syn keyword cssColor contained indianred indigo ivory khaki lavender lavenderblush lawngreen
syn keyword cssColor contained lemonchiffon limegreen linen magenta
syn match cssColor contained /light\(blue\|coral\|cyan\|goldenrodyellow\|gray\|green\)/
syn match cssColor contained /light\(grey\|pink\|salmon\|seagreen\|skyblue\|yellow\)/
syn match cssColor contained /light\(slategray\|slategrey\|steelblue\)/
syn match cssColor contained /medium\(aquamarine\|blue\|orchid\|purple\|seagreen\)/
syn match cssColor contained /medium\(slateblue\|springgreen\|turquoise\|violetred\)/
syn keyword cssColor contained midnightblue mintcream mistyrose moccasin navajowhite
syn keyword cssColor contained oldlace olivedrab orange orangered orchid
syn match cssColor contained /pale\(goldenrod\|green\|turquoise\|violetred\)/
syn keyword cssColor contained papayawhip peachpuff peru pink plum powderblue
syn keyword cssColor contained rosybrown royalblue saddlebrown salmon sandybrown
syn keyword cssColor contained seagreen seashell sienna skyblue slateblue
syn keyword cssColor contained slategray slategrey snow springgreen steelblue tan
syn keyword cssColor contained thistle tomato turquoise violet wheat
syn keyword cssColor contained whitesmoke yellowgreen
" FIXME: These are actually case-insentivie too, but (a) specs recommend using
" mixed-case (b) it's hard to highlight the word `Background' correctly in
" all situations

View File

@@ -3,7 +3,7 @@
" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
" Former Maintainers: Gerfried Fuchs <alfie@ist.org>
" Wichert Akkerman <wakkerma@debian.org>
" Last Change: 2011 Dec 09
" Last Change: 2012 Jun 06
" URL: http://anonscm.debian.org/hg/pkg-vim/vim/raw-file/unstable/runtime/syntax/debcontrol.vim
" Standard syntax initialization
@@ -45,7 +45,7 @@ syn match debcontrolEmail "[_=[:alnum:]\.+-]\+@[[:alnum:]\./\-]\+"
syn match debcontrolEmail "<.\{-}>"
" #-Comments
syn match debcontrolComment "^#.*$"
syn match debcontrolComment "^#.*$" contains=@Spell
syn case ignore
@@ -69,6 +69,7 @@ syn region debcontrolStrictField start="^\%(XS-\)\=DM-Upload-Allowed" end="$" co
" Catch-all for the other legal fields
syn region debcontrolField start="^\%(\%(XSBC-Original-\)\=Maintainer\|Standards-Version\|Essential\|Bugs\|Origin\|X[SB]-Python-Version\|\%(XS-\)\=Vcs-Mtn\):" end="$" contains=debcontrolKey,debcontrolVariable,debcontrolEmail oneline
syn region debcontrolMultiField start="^\%(Build-\%(Conflicts\|Depends\)\%(-Indep\)\=\|\%(Pre-\)\=Depends\|Recommends\|Suggests\|Provides\|Replaces\|Conflicts\|Enhances\|Breaks\|Uploaders\|Description\):" skip="^ " end="^$"me=s-1 end="^[^ #]"me=s-1 contains=debcontrolKey,debcontrolEmail,debcontrolVariable,debcontrolComment
syn region debcontrolMultiFieldSpell start="^\%(Description\):" skip="^ " end="^$"me=s-1 end="^[^ #]"me=s-1 contains=debcontrolKey,debcontrolEmail,debcontrolVariable,debcontrolComment,@Spell
" Associate our matches and regions with pretty colours
if version >= 508 || !exists("did_debcontrol_syn_inits")

View File

@@ -1,9 +1,10 @@
" Vim syntax file
" Language: DocBook
" Maintainer: Devin Weaver <vim@tritarget.com>
" Last Updated By: Shlomi Fish
" URL: http://tritarget.com/pub/vim/syntax/docbk.vim
" Last Change: $Date: 2005/06/23 22:31:01 $
" Version: $Revision: 1.2 $
" Last Change: 2012 Nov 28
" Version: 1.2 (and modified after that)
" Thanks to Johannes Zellner <johannes@zellner.org> for the default to XML
" suggestion.
@@ -28,6 +29,15 @@ if !exists('b:docbk_type')
let b:docbk_type = 'xml'
endif
endif
if !exists('b:docbk_ver')
if exists('docbk_ver')
let b:docbk_ver = docbk_ver
else
let b:docbk_ver = 4
endif
end
if 'xml' == b:docbk_type
doau Syntax xml
syn cluster xmlTagHook add=docbkKeyword
@@ -40,81 +50,121 @@ elseif 'sgml' == b:docbk_type
syn case ignore
endif
" <comment> has been removed and replace with <remark> in DocBook 4.0
" <comment> kept for backwards compatability.
syn keyword docbkKeyword abbrev abstract accel ackno acronym action contained
syn keyword docbkKeyword address affiliation alt anchor answer appendix contained
syn keyword docbkKeyword application area areaset areaspec arg artheader contained
syn keyword docbkKeyword article articleinfo artpagenums attribution audiodata contained
syn keyword docbkKeyword audioobject author authorblurb authorgroup contained
syn keyword docbkKeyword authorinitials beginpage bibliodiv biblioentry contained
syn keyword docbkKeyword bibliography bibliomisc bibliomixed bibliomset contained
syn keyword docbkKeyword biblioset blockquote book bookbiblio bookinfo contained
syn keyword docbkKeyword bridgehead callout calloutlist caption caution contained
syn keyword docbkKeyword chapter citation citerefentry citetitle city contained
syn keyword docbkKeyword classname cmdsynopsis co collab collabname contained
syn keyword docbkKeyword colophon colspec command comment computeroutput contained
syn keyword docbkKeyword confdates confgroup confnum confsponsor conftitle contained
syn keyword docbkKeyword constant contractnum contractsponsor contrib contained
syn keyword docbkKeyword copyright corpauthor corpname country database contained
syn keyword docbkKeyword date dedication docinfo edition editor email contained
syn keyword docbkKeyword emphasis entry entrytbl envar epigraph equation contained
syn keyword docbkKeyword errorcode errorname errortype example fax figure contained
syn keyword docbkKeyword filename firstname firstterm footnote footnoteref contained
syn keyword docbkKeyword abbrev abstract accel acronym address contained
syn keyword docbkKeyword affiliation alt anchor answer appendix contained
syn keyword docbkKeyword application area areaset areaspec arg contained
syn keyword docbkKeyword article artpagenums attribution audiodata contained
syn keyword docbkKeyword audioobject author authorgroup contained
syn keyword docbkKeyword authorinitials bibliocoverage bibliodiv contained
syn keyword docbkKeyword biblioentry bibliography biblioid contained
syn keyword docbkKeyword bibliolist bibliomisc bibliomixed contained
syn keyword docbkKeyword bibliomset biblioref bibliorelation contained
syn keyword docbkKeyword biblioset bibliosource blockquote book contained
syn keyword docbkKeyword bridgehead callout calloutlist caption contained
syn keyword docbkKeyword caution chapter citation citebiblioid contained
syn keyword docbkKeyword citerefentry citetitle city classname contained
syn keyword docbkKeyword classsynopsis classsynopsisinfo cmdsynopsis contained
syn keyword docbkKeyword co code col colgroup collab colophon contained
syn keyword docbkKeyword colspec command computeroutput confdates contained
syn keyword docbkKeyword confgroup confnum confsponsor conftitle contained
syn keyword docbkKeyword constant constructorsynopsis contractnum contained
syn keyword docbkKeyword contractsponsor contrib copyright coref contained
syn keyword docbkKeyword country database date dedication contained
syn keyword docbkKeyword destructorsynopsis edition editor email contained
syn keyword docbkKeyword emphasis entry entrytbl envar epigraph contained
syn keyword docbkKeyword equation errorcode errorname errortext contained
syn keyword docbkKeyword errortype example exceptionname fax contained
syn keyword docbkKeyword fieldsynopsis figure filename firstname contained
syn keyword docbkKeyword firstterm footnote footnoteref contained
syn keyword docbkKeyword foreignphrase formalpara funcdef funcparams contained
syn keyword docbkKeyword funcprototype funcsynopsis funcsynopsisinfo contained
syn keyword docbkKeyword function glossary glossdef glossdiv glossentry contained
syn keyword docbkKeyword glosslist glosssee glossseealso glossterm graphic contained
syn keyword docbkKeyword graphicco group guibutton guiicon guilabel contained
syn keyword docbkKeyword function glossary glossdef glossdiv contained
syn keyword docbkKeyword glossentry glosslist glosssee glossseealso contained
syn keyword docbkKeyword glossterm group guibutton guiicon guilabel contained
syn keyword docbkKeyword guimenu guimenuitem guisubmenu hardware contained
syn keyword docbkKeyword highlights holder honorific imagedata imageobject contained
syn keyword docbkKeyword imageobjectco important index indexdiv indexentry contained
syn keyword docbkKeyword indexterm informalequation informalexample contained
syn keyword docbkKeyword informalfigure informaltable inlineequation contained
syn keyword docbkKeyword inlinegraphic inlinemediaobject interface contained
syn keyword docbkKeyword interfacedefinition invpartnumber isbn issn contained
syn keyword docbkKeyword issuenum itemizedlist itermset jobtitle keycap contained
syn keyword docbkKeyword keycode keycombo keysym keyword keywordset label contained
syn keyword docbkKeyword legalnotice lineage lineannotation link listitem contained
syn keyword docbkKeyword literal literallayout lot lotentry manvolnum contained
syn keyword docbkKeyword markup medialabel mediaobject mediaobjectco contained
syn keyword docbkKeyword member menuchoice modespec mousebutton msg msgaud contained
syn keyword docbkKeyword msgentry msgexplan msginfo msglevel msgmain contained
syn keyword docbkKeyword msgorig msgrel msgset msgsub msgtext note contained
syn keyword docbkKeyword objectinfo olink option optional orderedlist contained
syn keyword docbkKeyword orgdiv orgname otheraddr othercredit othername contained
syn keyword docbkKeyword pagenums para paramdef parameter part partintro contained
syn keyword docbkKeyword phone phrase pob postcode preface primary contained
syn keyword docbkKeyword primaryie printhistory procedure productname contained
syn keyword docbkKeyword productnumber programlisting programlistingco contained
syn keyword docbkKeyword prompt property pubdate publisher publishername contained
syn keyword docbkKeyword pubsnumber qandadiv qandaentry qandaset question contained
syn keyword docbkKeyword quote refclass refdescriptor refentry contained
syn keyword docbkKeyword holder honorific imagedata imageobject contained
syn keyword docbkKeyword imageobjectco important index indexdiv contained
syn keyword docbkKeyword indexentry indexterm informalequation contained
syn keyword docbkKeyword informalexample informalfigure contained
syn keyword docbkKeyword informaltable initializer inlineequation contained
syn keyword docbkKeyword inlinemediaobject interfacename issuenum contained
syn keyword docbkKeyword itemizedlist itermset jobtitle keycap contained
syn keyword docbkKeyword keycode keycombo keysym keyword keywordset contained
syn keyword docbkKeyword label legalnotice lineage lineannotation contained
syn keyword docbkKeyword link listitem literal literallayout contained
syn keyword docbkKeyword manvolnum markup mathphrase mediaobject contained
syn keyword docbkKeyword member menuchoice methodname methodparam contained
syn keyword docbkKeyword methodsynopsis modifier mousebutton msg contained
syn keyword docbkKeyword msgaud msgentry msgexplan msginfo msglevel contained
syn keyword docbkKeyword msgmain msgorig msgrel msgset msgsub contained
syn keyword docbkKeyword msgtext note olink ooclass ooexception contained
syn keyword docbkKeyword oointerface option optional orderedlist contained
syn keyword docbkKeyword orgdiv orgname otheraddr othercredit contained
syn keyword docbkKeyword othername package pagenums para paramdef contained
syn keyword docbkKeyword parameter part partintro personblurb contained
syn keyword docbkKeyword personname phone phrase pob postcode contained
syn keyword docbkKeyword preface primary primaryie printhistory contained
syn keyword docbkKeyword procedure productname productnumber contained
syn keyword docbkKeyword programlisting programlistingco prompt contained
syn keyword docbkKeyword property pubdate publisher publishername contained
syn keyword docbkKeyword qandadiv qandaentry qandaset question quote contained
syn keyword docbkKeyword refclass refdescriptor refentry contained
syn keyword docbkKeyword refentrytitle reference refmeta refmiscinfo contained
syn keyword docbkKeyword refname refnamediv refpurpose refsect1 contained
syn keyword docbkKeyword refsect1info refsect2 refsect2info refsect3 contained
syn keyword docbkKeyword refsect3info refsynopsisdiv refsynopsisdivinfo contained
syn keyword docbkKeyword releaseinfo remark replaceable returnvalue revhistory contained
syn keyword docbkKeyword revision revnumber revremark row sbr screen contained
syn keyword docbkKeyword screenco screeninfo screenshot secondary contained
syn keyword docbkKeyword secondaryie sect1 sect1info sect2 sect2info sect3 contained
syn keyword docbkKeyword sect3info sect4 sect4info sect5 sect5info section contained
syn keyword docbkKeyword sectioninfo see seealso seealsoie seeie seg contained
syn keyword docbkKeyword seglistitem segmentedlist segtitle seriesinfo contained
syn keyword docbkKeyword seriesvolnums set setindex setinfo sgmltag contained
syn keyword docbkKeyword shortaffil shortcut sidebar simpara simplelist contained
syn keyword docbkKeyword simplesect spanspec state step street structfield contained
syn keyword docbkKeyword structname subject subjectset subjectterm contained
syn keyword docbkKeyword subscript substeps subtitle superscript surname contained
syn keyword docbkKeyword symbol synopfragment synopfragmentref synopsis contained
syn keyword docbkKeyword systemitem table tbody term tertiary tertiaryie contained
syn keyword docbkKeyword textobject tfoot tgroup thead tip title contained
syn keyword docbkKeyword titleabbrev toc tocback tocchap tocentry tocfront contained
syn keyword docbkKeyword toclevel1 toclevel2 toclevel3 toclevel4 toclevel5 contained
syn keyword docbkKeyword tocpart token trademark type ulink userinput contained
syn keyword docbkKeyword refsect2 refsect3 refsection refsynopsisdiv contained
syn keyword docbkKeyword releaseinfo remark replaceable returnvalue contained
syn keyword docbkKeyword revdescription revhistory revision contained
syn keyword docbkKeyword revnumber revremark row sbr screen screenco contained
syn keyword docbkKeyword screenshot secondary secondaryie sect1 contained
syn keyword docbkKeyword sect2 sect3 sect4 sect5 section see seealso contained
syn keyword docbkKeyword seealsoie seeie seg seglistitem contained
syn keyword docbkKeyword segmentedlist segtitle seriesvolnums set contained
syn keyword docbkKeyword setindex shortaffil shortcut sidebar contained
syn keyword docbkKeyword simpara simplelist simplemsgentry contained
syn keyword docbkKeyword simplesect spanspec state step contained
syn keyword docbkKeyword stepalternatives street subject subjectset contained
syn keyword docbkKeyword subjectterm subscript substeps subtitle contained
syn keyword docbkKeyword superscript surname symbol synopfragment contained
syn keyword docbkKeyword synopfragmentref synopsis systemitem table contained
syn keyword docbkKeyword task taskprerequisites taskrelated contained
syn keyword docbkKeyword tasksummary tbody td term termdef tertiary contained
syn keyword docbkKeyword tertiaryie textdata textobject tfoot tgroup contained
syn keyword docbkKeyword th thead tip title titleabbrev toc tocentry contained
syn keyword docbkKeyword token tr trademark type uri userinput contained
syn keyword docbkKeyword varargs variablelist varlistentry varname contained
syn keyword docbkKeyword videodata videoobject void volumenum warning contained
syn keyword docbkKeyword wordasword xref year contained
syn keyword docbkKeyword videodata videoobject void volumenum contained
syn keyword docbkKeyword warning wordasword xref year contained
if b:docbk_ver == 4
syn keyword docbkKeyword ackno action appendixinfo articleinfo contained
syn keyword docbkKeyword authorblurb beginpage bibliographyinfo contained
syn keyword docbkKeyword blockinfo bookinfo chapterinfo contained
syn keyword docbkKeyword collabname corpauthor corpcredit contained
syn keyword docbkKeyword corpname glossaryinfo graphic graphicco contained
syn keyword docbkKeyword highlights indexinfo inlinegraphic contained
syn keyword docbkKeyword interface invpartnumber isbn issn lot contained
syn keyword docbkKeyword lotentry medialabel mediaobjectco contained
syn keyword docbkKeyword modespec objectinfo partinfo contained
syn keyword docbkKeyword prefaceinfo pubsnumber refentryinfo contained
syn keyword docbkKeyword referenceinfo refsect1info refsect2info contained
syn keyword docbkKeyword refsect3info refsectioninfo contained
syn keyword docbkKeyword refsynopsisdivinfo screeninfo sect1info contained
syn keyword docbkKeyword sect2info sect3info sect4info sect5info contained
syn keyword docbkKeyword sectioninfo setindexinfo setinfo contained
syn keyword docbkKeyword sgmltag sidebarinfo structfield contained
syn keyword docbkKeyword structname tocback tocchap tocfront contained
syn keyword docbkKeyword toclevel1 toclevel2 toclevel3 toclevel4 contained
syn keyword docbkKeyword toclevel5 tocpart ulink contained
else
syn keyword docbkKeyword acknowledgements annotation arc contained
syn keyword docbkKeyword constraint constraintdef cover contained
syn keyword docbkKeyword extendedlink givenname info lhs locator contained
syn keyword docbkKeyword multimediaparam nonterminal org person contained
syn keyword docbkKeyword production productionrecap contained
syn keyword docbkKeyword productionset rhs tag tocdiv topic contained
endif
" Add special emphasis on some regions. Thanks to Rory Hunter <roryh@dcs.ed.ac.uk> for these ideas.
syn region docbkRegion start="<emphasis>"lc=10 end="</emphasis>"me=e-11 contains=xmlRegion,xmlEntity,sgmlRegion,sgmlEntity keepend

View File

@@ -25,10 +25,12 @@ else
syn match helpHyperTextEntry "\*[#-)!+-~]\+\*$" contains=helpStar
endif
if has("conceal")
syn match helpBar contained "[|`]" conceal
syn match helpBar contained "|" conceal
syn match helpBacktick contained "`" conceal
syn match helpStar contained "\*" conceal
else
syn match helpBar contained "[|`]"
syn match helpBar contained "|"
syn match helpBacktick contained "`"
syn match helpStar contained "\*"
endif
syn match helpNormal "|.*====*|"
@@ -38,7 +40,7 @@ syn match helpVim "Vim version [0-9.a-z]\+"
syn match helpVim "VIM REFERENCE.*"
syn match helpOption "'[a-z]\{2,\}'"
syn match helpOption "'t_..'"
syn match helpCommand "`[^` ]*`"hs=s+1,he=e-1 contains=helpBar
syn match helpCommand "`[^` ]*`"hs=s+1,he=e-1 contains=helpBacktick
syn match helpHeader "\s*\zs.\{-}\ze\s\=\~$" nextgroup=helpIgnore
syn match helpGraphic ".* \ze`$" nextgroup=helpIgnore
if has("conceal")
@@ -150,6 +152,7 @@ syn sync minlines=40
hi def link helpIgnore Ignore
hi def link helpHyperTextJump Subtitle
hi def link helpBar Ignore
hi def link helpBacktick Ignore
hi def link helpStar Ignore
hi def link helpHyperTextEntry String
hi def link helpHeadline Statement

View File

@@ -1,8 +1,8 @@
" Vim syntax file
" Language: Lex
" Maintainer: Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change: Nov 01, 2010
" Version: 12
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change: Nov 14, 2012
" Version: 14
" URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax
"
" Option:
@@ -17,20 +17,16 @@ elseif exists("b:current_syntax")
endif
" Read the C/C++ syntax to start with
if version >= 600
if exists("lex_uses_cpp")
runtime! syntax/cpp.vim
else
runtime! syntax/c.vim
endif
unlet b:current_syntax
else
if exists("lex_uses_cpp")
so <sfile>:p:h/cpp.vim
else
so <sfile>:p:h/c.vim
let s:Cpath= fnameescape(expand("<sfile>:p:h").(exists("g:lex_uses_cpp")? "/cpp.vim" : "/c.vim"))
if !filereadable(s:Cpath)
for s:Cpath in split(globpath(&rtp,(exists("g:lex_uses_cpp")? "syntax/cpp.vim" : "syntax/c.vim")),"\n")
if filereadable(fnameescape(s:Cpath))
let s:Cpath= fnameescape(s:Cpath)
break
endif
endfor
endif
exe "syn include @lexCcode ".s:Cpath
" --- ========= ---
" --- Lex stuff ---
@@ -39,10 +35,6 @@ endif
" Options Section
syn match lexOptions '^%\s*option\>.*$' contains=lexPatString
"I'd prefer to use lex.* , but vim doesn't handle forward definitions yet
syn cluster lexListGroup contains=lexAbbrvBlock,lexAbbrv,lexAbbrv,lexAbbrvRegExp,lexInclude,lexPatBlock,lexPat,lexBrace,lexPatString,lexPatTag,lexPatTag,lexPatComment,lexPatCodeLine,lexMorePat,lexPatSep,lexSlashQuote,lexPatCode,cInParen,cUserLabel,cOctalZero,cCppSkip,cErrInBracket,cErrInParen,cOctalError,cCppOut2,cCommentStartError,cParenError
syn cluster lexListPatCodeGroup contains=lexAbbrvBlock,lexAbbrv,lexAbbrv,lexAbbrvRegExp,lexInclude,lexPatBlock,lexPat,lexBrace,lexPatTag,lexPatTag,lexPatTagZoneStart,lexPatComment,lexPatCodeLine,lexMorePat,lexPatSep,lexSlashQuote,cInParen,cUserLabel,cOctalZero,cCppSkip,cErrInBracket,cErrInParen,cOctalError,cCppOut2,cCommentStartError,cParenError
" Abbreviations Section
if has("folding")
syn region lexAbbrvBlock fold start="^\(\h\+\s\|%{\)" end="^\ze%%$" skipnl nextgroup=lexPatBlock contains=lexAbbrv,lexInclude,lexAbbrvComment,lexStartState
@@ -53,52 +45,69 @@ syn match lexAbbrv "^\I\i*\s"me=e-1 skipwhite contained nextgroup=lexAbbrvRe
syn match lexAbbrv "^%[sx]" contained
syn match lexAbbrvRegExp "\s\S.*$"lc=1 contained nextgroup=lexAbbrv,lexInclude
if has("folding")
syn region lexInclude fold matchgroup=lexSep start="^%{" end="%}" contained contains=ALLBUT,@lexListGroup
syn region lexInclude fold matchgroup=lexSep start="^%{" end="%}" contained contains=@lexCcode
syn region lexAbbrvComment fold start="^\s\+/\*" end="\*/" contains=@Spell
syn region lexAbbrvComment fold start="\%^/\*" end="\*/" contains=@Spell
syn region lexStartState fold matchgroup=lexAbbrv start="^%\a\+" end="$" contained
else
syn region lexInclude matchgroup=lexSep start="^%{" end="%}" contained contains=ALLBUT,@lexListGroup
syn region lexInclude matchgroup=lexSep start="^%{" end="%}" contained contains=@lexCcode
syn region lexAbbrvComment start="^\s\+/\*" end="\*/" contains=@Spell
syn region lexAbbrvComment start="\%^/\*" end="\*/" contains=@Spell
syn region lexStartState matchgroup=lexAbbrv start="^%\a\+" end="$" contained
endif
"%% : Patterns {Actions}
if has("folding")
syn region lexPatBlock fold matchgroup=Todo start="^%%$" matchgroup=Todo end="^%%$" skipnl skipwhite contains=lexPatTag,lexPatTagZone,lexPatComment,lexPat,lexPatInclude
syn region lexPat fold start=+\S+ skip="\\\\\|\\." end="\s"me=e-1 contained nextgroup=lexMorePat,lexPatSep contains=lexPatTag,lexPatString,lexSlashQuote,lexBrace
syn region lexPatBlock fold matchgroup=Todo start="^%%$" matchgroup=Todo end="^%\ze%$" skipnl skipwhite nextgroup=lexFinalCodeBlock contains=lexPatTag,lexPatTagZone,lexPatComment,lexPat,lexPatInclude
syn region lexPat fold start=+\S+ skip="\\\\\|\\." end="\s"me=e-1 skipwhite contained nextgroup=lexMorePat,lexPatSep,lexPattern contains=lexPatTag,lexPatString,lexSlashQuote,lexBrace
syn region lexPatInclude fold matchgroup=lexSep start="^%{" end="%}" contained contains=lexPatCode
syn region lexBrace fold start="\[" skip=+\\\\\|\\+ end="]" contained
syn region lexPatString fold matchgroup=String start=+"+ skip=+\\\\\|\\"+ matchgroup=String end=+"+ contained
else
syn region lexPatBlock matchgroup=Todo start="^%%$" matchgroup=Todo end="^%%$" skipnl skipwhite contains=lexPatTag,lexPatTagZone,lexPatComment,lexPat,lexPatInclude
syn region lexPat start=+\S+ skip="\\\\\|\\." end="\s"me=e-1 contained nextgroup=lexMorePat,lexPatSep contains=lexPatTag,lexPatString,lexSlashQuote,lexBrace
syn region lexPatBlock matchgroup=Todo start="^%%$" matchgroup=Todo end="^%%$" skipnl skipwhite nextgroup=lexFinalCodeBlock contains=lexPatTag,lexPatTagZone,lexPatComment,lexPat,lexPatInclude
syn region lexPat start=+\S+ skip="\\\\\|\\." end="\s"me=e-1 skipwhite contained nextgroup=lexMorePat,lexPatSep,lexPattern contains=lexPatTag,lexPatString,lexSlashQuote,lexBrace
syn region lexPatInclude matchgroup=lexSep start="^%{" end="%}" contained contains=lexPatCode
syn region lexBrace start="\[" skip=+\\\\\|\\+ end="]" contained
syn region lexPatString matchgroup=String start=+"+ skip=+\\\\\|\\"+ matchgroup=String end=+"+ contained
endif
syn match lexPatTag "^<\I\i*\(,\I\i*\)*>" contained nextgroup=lexPat,lexPatTag,lexMorePat,lexPatSep
syn match lexPatTagZone "^<\I\i*\(,\I\i*\)*>\s*\ze{" contained nextgroup=lexPatTagZoneStart
syn match lexPatTagZone "^<\I\i*\(,\I\i*\)*>\s\+\ze{" contained nextgroup=lexPatTagZoneStart
syn match lexPatTag +^<\I\i*\(,\I\i*\)*>*\(\\\\\)*\\"+ contained nextgroup=lexPat,lexPatTag,lexMorePat,lexPatSep
" Lex Patterns
syn region lexPattern start='[^ \t{}]' end="$" contained contains=lexPatRange
syn region lexPatRange matchgroup=Delimiter start='\[' skip='\\\\\|\\.' end='\]' contains=lexEscape
syn match lexEscape '\%(\\\\\)*\\.' contained
if has("folding")
syn region lexPatTagZoneStart matchgroup=lexPatTag fold start='{' end='}' contained contains=lexPat,lexPatComment
syn region lexPatTagZoneStart matchgroup=lexPatTag fold start='{' end='}' contained contains=lexPat,lexPatComment
syn region lexPatComment start="\s\+/\*" end="\*/" fold skipnl contained contains=cTodo skipwhite nextgroup=lexPatComment,lexPat,@Spell
else
syn region lexPatTagZoneStart matchgroup=lexPatTag start='{' end='}' contained contains=lexPat,lexPatComment
syn region lexPatTagZoneStart matchgroup=lexPatTag start='{' end='}' contained contains=lexPat,lexPatComment
syn region lexPatComment start="\s\+/\*" end="\*/" skipnl contained contains=cTodo skipwhite nextgroup=lexPatComment,lexPat,@Spell
endif
syn match lexPatCodeLine ".*$" contained contains=ALLBUT,@lexListGroup
syn match lexPatCodeLine "[^{\[].*" contained contains=@lexCcode
syn match lexMorePat "\s*|\s*$" skipnl contained nextgroup=lexPat,lexPatTag,lexPatComment
syn match lexPatSep "\s\+" contained nextgroup=lexMorePat,lexPatCode,lexPatCodeLine
syn match lexSlashQuote +\(\\\\\)*\\"+ contained
if has("folding")
syn region lexPatCode matchgroup=Delimiter start="{" end="}" fold skipnl contained contains=ALLBUT,@lexListPatCodeGroup
syn region lexPatCode matchgroup=Delimiter start="{" end="}" fold skipnl contained contains=@lexCcode,lexCFunctions
else
syn region lexPatCode matchgroup=Delimiter start="{" end="}" skipnl contained contains=ALLBUT,@lexListPatCodeGroup
syn region lexPatCode matchgroup=Delimiter start="{" end="}" skipnl contained contains=@lexCcode,lexCFunctions
endif
" Lex "functions" which may appear in C/C++ code blocks
syn keyword lexCFunctions BEGIN input unput woutput yyleng yylook yytext
syn keyword lexCFunctions ECHO output winput wunput yyless yymore yywrap
" %%
" lexAbbrevBlock
" %%
" lexPatBlock
" %%
" lexFinalCodeBlock
syn region lexFinalCodeBlock matchgroup=Todo start="%$"me=e-1 end="\%$" contained contains=@lexCcode
" <c.vim> includes several ALLBUTs; these have to be treated so as to exclude lex* groups
syn cluster cParenGroup add=lex.*
syn cluster cDefineGroup add=lex.*
@@ -107,27 +116,27 @@ syn cluster cMultiGroup add=lex.*
" Synchronization
syn sync clear
syn sync minlines=300
syn sync minlines=500
syn sync match lexSyncPat grouphere lexPatBlock "^%[a-zA-Z]"
syn sync match lexSyncPat groupthere lexPatBlock "^<$"
syn sync match lexSyncPat groupthere lexPatBlock "^%%$"
" The default highlighting.
hi def link lexAbbrvComment lexPatComment
hi def link lexBrace lexPat
hi def link lexPatTagZone lexPatTag
hi def link lexSlashQuote lexPat
hi def link lexAbbrvRegExp Macro
hi def link lexAbbrv SpecialChar
hi def link lexBrace lexPat
hi def link lexCFunctions Function
hi def link lexCstruct cStructure
hi def link lexMorePat SpecialChar
hi def link lexOptions PreProc
hi def link lexPatComment Comment
hi def link lexPat Function
hi def link lexPatString Function
hi def link lexPatTag Special
hi def link lexPatTagZone lexPatTag
hi def link lexSep Delimiter
hi def link lexSlashQuote lexPat
hi def link lexStartState Statement
let b:current_syntax = "lex"

View File

@@ -0,0 +1,37 @@
" Vim syntax file
" Language: Mallard
" Maintainer: Jaromir Hradilek <jhradilek@gmail.com>
" URL: https://github.com/jhradilek/vim-syntax
" Last Change: 11 February 2013
" Description: A syntax file for the Mallard markup language according to
" Mallard 1.0 DRAFT as of 2013-02-11.
if exists("b:current_syntax")
finish
endif
do Syntax xml
syn cluster xmlTagHook add=mallardTagName
syn spell toplevel
syn case match
syn keyword mallardTagName app cite cmd code col colgroup comment contained
syn keyword mallardTagName credit desc em email example figure contained
syn keyword mallardTagName file gui guiseq info input item key contained
syn keyword mallardTagName keyseq license link links list listing contained
syn keyword mallardTagName media name note output p page quote contained
syn keyword mallardTagName revision screen section span steps contained
syn keyword mallardTagName subtitle synopsis sys table tbody td contained
syn keyword mallardTagName terms tfoot thead title tr tree var contained
syn keyword mallardTagName years contained
syn region mallardComment start="<comment\>" end="</comment>"me=e-10 contains=xmlTag,xmlNamespace,xmlTagName,xmlEndTag,xmlRegion,xmlEntity,@Spell keepend
syn region mallardEmphasis start="<em\>" end="</em>"me=e-5 contains=xmlTag,xmlNamespace,xmlTagName,xmlEndTag,xmlRegion,xmlEntity,@Spell keepend
syn region mallardTitle start="<title\>" end="</title>"me=e-8 contains=xmlTag,xmlNamespace,xmlTagName,xmlEndTag,xmlRegion,xmlEntity,@Spell keepend
hi def link mallardComment Comment
hi def link mallardTagName Statement
hi def link mallardTitle Title
hi def mallardEmphasis term=italic cterm=italic gui=italic
let b:current_syntax = "mallard"

View File

@@ -1,7 +1,7 @@
" Vim syntax file
" Language: php PHP 3/4/5
" Maintainer: Jason Woofenden <jason@jasonwoof.com>
" Last Change: Oct 20, 2011
" Last Change: Dec 11, 2012
" URL: https://gitorious.org/jasonwoof/vim-syntax/blobs/master/php.vim
" Former Maintainers: Peter Hodge <toomuchphp-vim@yahoo.com>
" Debian VIM Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
@@ -182,6 +182,7 @@ syn keyword phpFunctions assert_options assert dl extension_loaded get_cfg_var
syn keyword phpFunctions ingres_autocommit ingres_close ingres_commit ingres_connect ingres_fetch_array ingres_fetch_object ingres_fetch_row ingres_field_length ingres_field_name ingres_field_nullable ingres_field_precision ingres_field_scale ingres_field_type ingres_num_fields ingres_num_rows ingres_pconnect ingres_query ingres_rollback contained
syn keyword phpFunctions ircg_channel_mode ircg_disconnect ircg_fetch_error_msg ircg_get_username ircg_html_encode ircg_ignore_add ircg_ignore_del ircg_is_conn_alive ircg_join ircg_kick ircg_lookup_format_messages ircg_msg ircg_nick ircg_nickname_escape ircg_nickname_unescape ircg_notice ircg_part ircg_pconnect ircg_register_format_messages ircg_set_current ircg_set_file ircg_set_on_die ircg_topic ircg_whois contained
syn keyword phpFunctions java_last_exception_clear java_last_exception_get contained
syn keyword phpFunctions json_decode json_encode json_last_error contained
syn keyword phpFunctions ldap_8859_to_t61 ldap_add ldap_bind ldap_close ldap_compare ldap_connect ldap_count_entries ldap_delete ldap_dn2ufn ldap_err2str ldap_errno ldap_error ldap_explode_dn ldap_first_attribute ldap_first_entry ldap_first_reference ldap_free_result ldap_get_attributes ldap_get_dn ldap_get_entries ldap_get_option ldap_get_values_len ldap_get_values ldap_list ldap_mod_add ldap_mod_del ldap_mod_replace ldap_modify ldap_next_attribute ldap_next_entry ldap_next_reference ldap_parse_reference ldap_parse_result ldap_read ldap_rename ldap_search ldap_set_option ldap_set_rebind_proc ldap_sort ldap_start_tls ldap_t61_to_8859 ldap_unbind contained
syn keyword phpFunctions lzf_compress lzf_decompress lzf_optimized_for contained
syn keyword phpFunctions ezmlm_hash mail contained

View File

@@ -12,9 +12,9 @@ elseif exists("b:current_syntax")
endif
if version >= 600
setlocal iskeyword=@,48-57,_,128-167,224-235,-,
setlocal iskeyword=@,48-57,_,128-167,224-235,-
else
set iskeyword=@,48-57,_,128-167,224-235,-,
set iskeyword=@,48-57,_,128-167,224-235,-
endif
syn keyword pineConfig addrbook-sort-rule

View File

@@ -3,13 +3,13 @@
" Filename extensions: *.p (collides with Pascal),
" *.i (collides with assembler)
" *.w (collides with cweb)
" Maintainer: Philip Uren <philuSPAX@ieee.org> Remove SPAX spam block
" Contributors: Chris Ruprecht <chris@ruprecht.org>
" Philip Uren <philu@computer.org>
" Mikhail Kuperblum <mikhail@whasup.com>
" John Florian <jflorian@voyager.net>
" Version: 12
" Last Change: Aug 16 2012
" Maintainer: Philip Uren <philuSPAXY@ieee.org> Remove SPAXY spam block
" Contributors: Matthew Stickney <mtstickneySPAXY@gmail.com>
" Chris Ruprecht <chrisSPAXY@ruprecht.org>
" Mikhail Kuperblum <mikhailSPAXY@whasup.com>
" John Florian <jflorianSPAXY@voyager.net>
" Version: 13
" Last Change: Nov 11 2012
" For version 5.x: Clear all syntax item
" For version 6.x: Quit when a syntax file was already loaded
@@ -99,8 +99,8 @@ syn keyword ProgressReserved window-maxim[ized] window-minim[ized] window-normal
" Strings. Handles embedded quotes.
" Note that, for some reason, Progress doesn't use the backslash, "\"
" as the escape character; it uses tilde, "~".
syn region ProgressString matchgroup=ProgressQuote start=+"+ end=+"+ skip=+\~'\|\~\~+ contains=@Spell
syn region ProgressString matchgroup=ProgressQuote start=+'+ end=+'+ skip=+\~'\|\~\~+ contains=@Spell
syn region ProgressString matchgroup=ProgressQuote start=+"+ end=+"+ skip=+\~'\|\~\~\|\~"+ contains=@Spell
syn region ProgressString matchgroup=ProgressQuote start=+'+ end=+'+ skip=+\~'\|\~\~\|\~"+ contains=@Spell
syn match ProgressIdentifier "\<[a-zA-Z_][a-zA-Z0-9_]*\>()"

View File

@@ -1,14 +1,8 @@
" Vim syntax file
" Language: Rexx
" Maintainer: Thomas Geulig <geulig@nentec.de>
" Last Change: 2005 Dez 9, added some <http://www.ooRexx.org>-coloring,
" line comments, do *over*, messages, directives,
" highlighting classes, methods, routines and requires
" 2007 Oct 17, added support for new ooRexx 3.2 features
" Rony G. Flatscher <rony.flatscher@wu-wien.ac.at>
"
" Last Change: 2012 Sep 14, added support for new ooRexx 4.0 features
" URL: http://www.geulig.de/vim/rexx.vim
"
" Special Thanks to Dan Sharp <dwsharp@hotmail.com> and Rony G. Flatscher
" <Rony.Flatscher@wu-wien.ac.at> for comments and additions
@@ -54,7 +48,7 @@ syn match rexxKeyword contained "\<use\>\s*\(strict\s*\)\?\<arg\>"
syn match rexxRegularCallSignal contained "\<\(call\|signal\)\s\(\s*on\>\|\s*off\>\)\@!\(\k\+\ze\|\ze(\)\(\s*\|;\|$\|(\)"
syn region rexxLabel contained start="\<\(call\|signal\)\>\s*\zs\(\k*\|(\)" end="\ze\(\s*\|;\|$\|(\)" containedin=rexxRegularCallSignal
syn match rexxExceptionHandling contained "\<\(call\|signal\)\>\s\+\<\(on\|off\)\>.*\(;\|$\)"
syn match rexxExceptionHandling contained "\<\(call\|signal\)\>\s\+\<\(on\|off\)\>.*\(;\|$\)" contains=rexxComment
" hilite label given after keyword "name"
syn match rexxLabel "name\s\+\zs\k\+\ze" containedin=rexxExceptionHandling
@@ -74,13 +68,14 @@ syn match rexxConditional "\<\(then\|else\|when\|otherwise\)\(\s*\|;\|\_$\|\)\>"
syn match rexxLoopKeywords "\<\(to\|by\|for\|until\|while\|over\)\>" containedin=doLoopSelectLabelRegion
" must be after Conditional phrases!
syn match doLoopSelectLabelRegion "\<\(do\|loop\|select\)\>\s\+\(label\s\+\)\?\(\s\+\k\+\s\+\zs\<over\>\)\?\k*\(\s\+forever\)\?\(\s\|;\|$\)"
syn match doLoopSelectLabelRegion "\<\(do\|loop\|select\)\>\s\+\(label\s\+\)\?\(\s\+\k\+\s\+\zs\<over\>\)\?\k*\(\s\+forever\)\?\(\s\|;\|$\)" contains=doLoopSelectLabelRegion,rexxStartValueAssignment,rexxLoopKeywords
" color label's name
syn match rexxLabel2 "\<\(do\|loop\|select\)\>\s\+label\s\+\zs\k*\ze" containedin=doLoopSelectLabelRegion
" make sure control variable is normal
syn match rexxControlVariable "\<\(do\|loop\)\>\(\s\+label\s\+\k*\)\?\s\+\zs.*\ze\s\+\<over\>" containedin=doLoopSelectLabelRegion
" TODO: re-activate ?
"rgf syn match rexxControlVariable "\<\(do\|loop\)\>\(\s\+label\s\+\k*\)\?\s\+\zs.*\ze\s\+\<over\>" containedin=doLoopSelectLabelRegion
" make sure control variable assignment is normal
syn match rexxStartValueAssignment "\<\(do\|loop\)\>\(\s\+label\s\+\k*\)\?\s\+\zs.*\ze\(=.*\)\?\s\+\<to\>" containedin=doLoopSelectLabelRegion
@@ -96,7 +91,8 @@ syn match rexxGuard "\(^\|;\|:\)\s*\<guard\>\s\+\<\(on\|off\)\>"
syn match rexxTrace "\(^\|;\|:\)\s*\<trace\>\s\+\<\K\k*\>"
" Raise statement
syn match rexxRaise "\(^\|;\|:\)\s\+\<raise\>\s*\<\(propagate\|error\|failure\|syntax\|user\)\>\?" contains=rexxRaise2
" syn match rexxRaise "\(^\|;\|:\)\s\+\<raise\>\s*\<\(propagate\|error\|failure\|syntax\|user\)\>\?" contains=rexxRaise2
syn match rexxRaise "\(^\|;\|:\)\s*\<raise\>\s*\<\(propagate\|error\|failure\|syntax\|user\)\>\?" contains=rexxRaise2
syn match rexxRaise2 "\<\(additional\|array\|description\|exit\|propagate\|return\)\>" containedin=rexxRaise
" Forward statement
@@ -142,19 +138,36 @@ syn keyword rexxSpecialVariable sigl rc result self super
syn keyword rexxSpecialVariable .environment .error .input .local .methods .output .rs .stderr .stdin .stdout .stdque
" Constants
syn keyword rexxConst .true .false .nil .endOfLine .line
syn keyword rexxConst .true .false .nil .endOfLine .line .context
" Rexx numbers
" int like number
syn match rexxNumber '\d\+' contained
syn match rexxNumber '[-+]\s*\d\+' contained
" Floating point number with decimal
syn match rexxNumber '\d\+\.\d*' contained
syn match rexxNumber '[-+]\s*\d\+\.\d*' contained
" Floating point like number with E
syn match rexxNumber '[-+]\s*\d*[eE][\-+]\d\+' contained
syn match rexxNumber '\d*[eE][\-+]\d\+' contained
" Floating point like number with E and decimal point (+,-)
syn match rexxNumber '[-+]\s*\d*\.\d*[eE][\-+]\d\+' contained
syn match rexxNumber '\d*\.\d*[eE][\-+]\d\+' contained
syn match rexxNumber "\(-\|+\)\?\s*\zs\<\(\d\+\.\?\|\d*\.\d\+\(E\(+\|-\)\d\{2,2}\)\?\)\?\>"
" ooRexx builtin classes (as of version 3.2.0, fall 2007), first define dot to be o.k. in keywords
syn keyword rexxBuiltinClass .Alarm .ArgUtil .Array .Bag .CaselessColumnComparator
syn keyword rexxBuiltinClass .CaselessComparator .CaselessDescendingComparator .CircularQueue
syn keyword rexxBuiltinClass .Class .Collection .ColumnComparator .Comparable .Comparator
syn keyword rexxBuiltinClass .DateTime .DescendingComparator .Directory .InputOutputStream
syn keyword rexxBuiltinClass .DateTime .DescendingComparator .Directory .File .InputOutputStream
syn keyword rexxBuiltinClass .InputStream .InvertingComparator .List .MapCollection
syn keyword rexxBuiltinClass .Message .Method .Monitor .MutableBuffer .Object
syn keyword rexxBuiltinClass .OrderedCollection .OutputStream .Properties .Queue
syn keyword rexxBuiltinClass .Relation .RexxQueue .Set .SetCollection .Stem .Stream
syn keyword rexxBuiltinClass .OrderedCollection .OutputStream .Package .Properties .Queue
syn keyword rexxBuiltinClass .RegularExpression .Relation .RexxContext .RexxQueue .Routine
syn keyword rexxBuiltinClass .Set .SetCollection .Stem .Stream
syn keyword rexxBuiltinClass .StreamSupplier .String .Supplier .Table .TimeSpan
" Windows-only classes
@@ -163,7 +176,8 @@ syn keyword rexxBuiltinClass .CategoryDialog .CheckBox .CheckList .ComboBox .Dia
syn keyword rexxBuiltinClass .DialogExtensions .DlgArea .DlgAreaU .DynamicDialog
syn keyword rexxBuiltinClass .EditControl .InputBox .IntegerBox .ListBox .ListChoice
syn keyword rexxBuiltinClass .ListControl .MenuObject .MessageExtensions .MultiInputBox
syn keyword rexxBuiltinClass .MultiListChoice .PasswordBox .PlainBaseDialog .PlainUserDialog
syn keyword rexxBuiltinClass .MultiListChoice .OLEObject .OLEVariant
syn keyword rexxBuiltinClass .PasswordBox .PlainBaseDialog .PlainUserDialog
syn keyword rexxBuiltinClass .ProgressBar .ProgressIndicator .PropertySheet .RadioButton
syn keyword rexxBuiltinClass .RcDialog .ResDialog .ScrollBar .SingleSelection .SliderControl
syn keyword rexxBuiltinClass .StateIndicator .StaticControl .TabControl .TimedMessage
@@ -171,22 +185,34 @@ syn keyword rexxBuiltinClass .TreeControl .UserDialog .VirtualKeyCodes .WindowBa
syn keyword rexxBuiltinClass .WindowExtensions .WindowObject .WindowsClassesBase .WindowsClipboard
syn keyword rexxBuiltinClass .WindowsEventLog .WindowsManager .WindowsProgramManager .WindowsRegistry
" BSF4ooRexx classes
syn keyword rexxBuiltinClass .BSF .bsf.dialog .bsf_proxy
syn keyword rexxBuiltinClass .UNO .UNO_ENUM .UNO_CONSTANTS .UNO_PROPERTIES
" ooRexx directives, ---rgf location important, otherwise directives in top of file not matched!
syn region rexxClassDirective start="::\s*class\s*"ms=e+1 end="\ze\(\s\|;\|$\)"
syn region rexxMethodDirective start="::\s*method\s*"ms=e+1 end="\ze\(\s\|;\|$\)"
syn region rexxRequiresDirective start="::\s*requires\s*"ms=e+1 end="\ze\(\s\|;\|$\)"
syn region rexxRoutineDirective start="::\s*routine\s*"ms=e+1 end="\ze\(\s\|;\|$\)"
syn region rexxAttributeDirective start="::\s*attribute\s*"ms=e+1 end="\ze\(\s\|;\|$\)"
" rgf, 2012-09-09
syn region rexxOptionsDirective start="::\s*options\s*"ms=e+1 end="\ze\(\s\|;\|$\)"
syn region rexxConstantDirective start="::\s*constant\s*"ms=e+1 end="\ze\(\s\|;\|$\)"
syn region rexxDirective start="\(^\|;\)\s*::\s*\w\+" end="\($\|;\)" contains=rexxString,rexxNumber,rexxComment,rexxLineComment,rexxClassDirective,rexxMethodDirective,rexxRoutineDirective,rexxRequiresDirective,rexxAttributeDirective,rexxOptionsDirective,rexxConstantDirective keepend
syn match rexxOptionsDirective2 "\<\(digits\|form\|fuzz\|trace\)\>" containedin = rexxOptionsDirective3
syn region rexxOptionsDirective3 start="\(^\|;\)\s*::\s*options\s"ms=e+1 end="\($\|;\)" contains=rexxString,rexxNumber,rexxVariable,rexxComment,rexxLineComment containedin = rexxDirective
syn region rexxDirective start="\(^\|;\)\s*::\s*\w\+" end="\($\|;\)" contains=rexxString,rexxComment,rexxLineComment,rexxClassDirective,rexxMethodDirective,rexxRoutineDirective,rexxRequiresDirective,rexxAttributeDirective keepend
syn region rexxVariable start="\zs\<\(\.\)\@!\K\k\+\>\ze\s*\(=\|,\|)\|%\|\]\|\\\||\|&\|+=\|-=\|<\|>\)" end="\(\_$\|.\)"me=e-1
syn match rexxVariable "\(=\|,\|)\|%\|\]\|\\\||\|&\|+=\|-=\|<\|>\)\s*\zs\K\k*\ze"
syn match rexxVariable "\(=\|,\|)\|%\|\]\|\\\||\|&\|+=\|-=\|<\|>\)\s*\zs\K\k*\ze"
" rgf, 2007-07-22: unfortunately, the entire region is colored (not only the
" patterns), hence useless (vim 7.0)! (syntax-docs hint that that should work)
" attempt: just colorize the parenthesis in matching colors, keep content
" transparent to keep the formatting already done to it!
" TODO: test on 7.3
" syn region par1 matchgroup=par1 start="(" matchgroup=par1 end=")" transparent contains=par2
" syn region par2 matchgroup=par2 start="(" matchgroup=par2 end=")" transparent contains=par3 contained
" syn region par3 matchgroup=par3 start="(" matchgroup=par3 end=")" transparent contains=par4 contained
@@ -200,11 +226,11 @@ syn match rexxVariable "\(=\|,\|)\|%\|\]\|\\\||\|&\|+=\|-=\|<\|>\)\s*\zs\K\k*\ze
" syn region par4 matchgroup=par4 start="(" end=")" contains=par5 contained
" syn region par5 matchgroup=par5 start="(" end=")" contains=par1 contained
hi par1 ctermfg=red guifg=red
hi par2 ctermfg=blue guifg=blue
hi par3 ctermfg=darkgreen guifg=darkgreen
hi par4 ctermfg=darkyellow guifg=darkyellow
hi par5 ctermfg=darkgrey guifg=darkgrey
hi par1 ctermfg=red guifg=red "guibg=grey
hi par2 ctermfg=blue guifg=blue "guibg=grey
hi par3 ctermfg=darkgreen guifg=darkgreen "guibg=grey
hi par4 ctermfg=darkyellow guifg=darkyellow "guibg=grey
hi par5 ctermfg=darkgrey guifg=darkgrey "guibg=grey
" line continuation (trailing comma or single dash)
syn sync linecont "\(,\|-\ze-\@!\)\ze\s*\(--.*\|\/\*.*\)*$"
@@ -214,7 +240,7 @@ syn sync linecont "\(,\|-\ze-\@!\)\ze\s*\(--.*\|\/\*.*\)*$"
" endif
" exec "syn sync ccomment rexxComment minlines=" . rexx_minlines
" always scan from start, PCs are powerful enough for that in 2007 !
" always scan from start, PCs have long become to be powerful enough for that
exec "syn sync fromstart"
" Define the default highlighting.
@@ -236,7 +262,7 @@ if version >= 508 || !exists("did_rexx_syn_inits")
HiLink endIterateLeaveLabelRegion rexxKeyword
HiLink rexxLoopKeywords rexxKeyword " Todo
HiLink rexxNumber Normal
HiLink rexxNumber Normal "DiffChange
" HiLink rexxIdentifier DiffChange
HiLink rexxRegularCallSignal Statement
@@ -249,7 +275,7 @@ if version >= 508 || !exists("did_rexx_syn_inits")
HiLink rexxCommentError rexxError
HiLink rexxError Error
HiLink rexxKeyword Statement
HiLink rexxKeywordStatements Statement
HiLink rexxKeywordStatements Statement
HiLink rexxFunction Function
HiLink rexxString String
@@ -271,6 +297,13 @@ if version >= 508 || !exists("did_rexx_syn_inits")
HiLink rexxRequiresDirective Include
HiLink rexxRoutineDirective rexxFunction
" rgf, 2012-09-09
HiLink rexxOptionsDirective rexxFunction
HiLink rexxOptionsDirective2 rexxOptionsDirective
HiLink rexxOptionsDirective3 Normal " rexxOptionsDirective
HiLink rexxConstantDirective rexxFunction
HiLink rexxConst Constant
HiLink rexxTypeSpecifier Type
HiLink rexxBuiltinClass rexxTypeSpecifier

View File

@@ -1,7 +1,7 @@
" Vim syntax file
" Language: reStructuredText documentation format
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2012-08-05
" Latest Revision: 2012-11-01
if exists("b:current_syntax")
finish
@@ -139,6 +139,27 @@ syn match rstStandaloneHyperlink contains=@NoSpell
" though.
syn sync minlines=50 linebreaks=1
syn region rstCodeBlock contained matchgroup=rstDirective
\ start=+\%(sourcecode\|code\%(-block\)\=\)::\s+
\ skip=+^$+
\ end=+^\s\@!+
\ contains=@NoSpell
syn cluster rstDirectives add=rstCodeBlock
if !exists('g:rst_syntax_code_list')
let g:rst_syntax_code_list = ['vim', 'java', 'cpp', 'lisp', 'php', 'python', 'perl']
endif
for code in g:rst_syntax_code_list
unlet! b:current_syntax
exe 'syn include @rst'.code.' syntax/'.code.'.vim'
exe 'syn region rstDirective'.code.' matchgroup=rstDirective fold '
\.'start=#\%(sourcecode\|code\%(-block\)\=\)::\s\+'.code.'\s*$# '
\.'skip=#^$# '
\.'end=#^\s\@!# contains=@NoSpell,@rst'.code
exe 'syn cluster rstDirectives add=rstDirective'.code
endfor
hi def link rstTodo Todo
hi def link rstComment Comment
hi def link rstSections Title
@@ -168,6 +189,7 @@ hi def link rstFootnoteReference Identifier
hi def link rstCitationReference Identifier
hi def link rstHyperLinkReference Identifier
hi def link rstStandaloneHyperlink Identifier
hi def link rstCodeBlock String
let b:current_syntax = "rst"

View File

@@ -1,9 +1,9 @@
" Vim syntax file
" Language: shell (sh) Korn shell (ksh) bash (sh)
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Previous Maintainer: Lennart Schultz <Lennart.Schultz@ecmwf.int>
" Last Change: Mar 19, 2012
" Version: 122
" Last Change: Nov 14, 2012
" Version: 128
" URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax
" For options and settings, please use: :help ft-sh-syntax
" This file includes many ideas from ?ric Brunet (eric.brunet@ens.fr)
@@ -17,15 +17,18 @@ elseif exists("b:current_syntax")
endif
" AFAICT "." should be considered part of the iskeyword. Using iskeywords in
" syntax is dicey, so the following code permits the user to prevent/override
" its setting.
if exists("g:sh_isk") " override support
exe "setlocal isk=".g:sh_isk
elseif !exists("g:sh_noisk") " prevent modification support
setlocal isk+=.
" syntax is dicey, so the following code permits the user to
" g:sh_isk set to a string : specify iskeyword.
" g:sh_noisk exists : don't change iskeyword
" g:sh_noisk does not exist : (default) append "." to iskeyword
if exists("g:sh_isk") && type(g:sh_isk) == 1 " user specifying iskeyword
exe "setl isk=".g:sh_isk
elseif !exists("g:sh_noisk") " optionally prevent appending '.' to iskeyword
setl isk+=.
endif
" trying to answer the question: which shell is /bin/sh, really?
" If the user has not specified any of g:is_kornshell, g:is_bash, g:is_posix, g:is_sh, then guess.
if !exists("g:is_kornshell") && !exists("g:is_bash") && !exists("g:is_posix") && !exists("g:is_sh")
if executable("/bin/sh")
if resolve("/bin/sh") =~ 'bash$'
@@ -76,16 +79,19 @@ elseif g:sh_fold_enabled != 0 && !has("folding")
echomsg "Ignoring g:sh_fold_enabled=".g:sh_fold_enabled."; need to re-compile vim for +fold support"
endif
if !exists("s:sh_fold_functions")
let s:sh_fold_functions = 1
let s:sh_fold_functions= and(g:sh_fold_enabled,1)
endif
if !exists("s:sh_fold_heredoc")
let s:sh_fold_heredoc = 2
let s:sh_fold_heredoc = and(g:sh_fold_enabled,2)
endif
if !exists("s:sh_fold_ifdofor")
let s:sh_fold_ifdofor = 4
let s:sh_fold_ifdofor = and(g:sh_fold_enabled,4)
endif
if g:sh_fold_enabled && &fdm == "manual"
setlocal fdm=syntax
" Given that the user provided g:sh_fold_enabled
" AND g:sh_fold_enabled is manual (usual default)
" implies a desire for syntax-based folding
setl fdm=syntax
endif
" sh syntax is case sensitive {{{1
@@ -102,12 +108,12 @@ syn cluster shArithList contains=@shArithParenList,shParenError
syn cluster shCaseEsacList contains=shCaseStart,shCase,shCaseBar,shCaseIn,shComment,shDeref,shDerefSimple,shCaseCommandSub,shCaseExSingleQuote,shCaseSingleQuote,shCaseDoubleQuote,shCtrlSeq,@shErrorList,shStringSpecial,shCaseRange
syn cluster shCaseList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shHereDoc,shIf,shRedir,shSetList,shSource,shStatement,shVariable,shCtrlSeq
"syn cluster shColonList contains=@shCaseList
syn cluster shCommandSubList contains=shArithmetic,shDeref,shDerefSimple,shEscape,shNumber,shOperator,shPosnParm,shExSingleQuote,shSingleQuote,shExDoubleQuote,shDoubleQuote,shStatement,shVariable,shSubSh,shAlias,shTest,shCtrlSeq,shSpecial
syn cluster shCommandSubList contains=shArithmetic,shDeref,shDerefSimple,shEscape,shNumber,shOperator,shPosnParm,shExSingleQuote,shSingleQuote,shExDoubleQuote,shDoubleQuote,shStatement,shVariable,shSubSh,shAlias,shTest,shCtrlSeq,shSpecial,shCmdParenRegion
syn cluster shCurlyList contains=shNumber,shComma,shDeref,shDerefSimple,shDerefSpecial
syn cluster shDblQuoteList contains=shCommandSub,shDeref,shDerefSimple,shPosnParm,shCtrlSeq,shSpecial
syn cluster shDblQuoteList contains=shCommandSub,shDeref,shDerefSimple,shEscape,shPosnParm,shCtrlSeq,shSpecial
syn cluster shDerefList contains=shDeref,shDerefSimple,shDerefVar,shDerefSpecial,shDerefWordError,shDerefPPS
syn cluster shDerefVarList contains=shDerefOp,shDerefVarArray,shDerefOpError
syn cluster shEchoList contains=shArithmetic,shCommandSub,shDeref,shDerefSimple,shExpr,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shCtrlSeq,shEchoQuote
syn cluster shEchoList contains=shArithmetic,shCommandSub,shDeref,shDerefSimple,shEscape,shExpr,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shCtrlSeq,shEchoQuote
syn cluster shExprList1 contains=shCharClass,shNumber,shOperator,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shExpr,shDblBrace,shDeref,shDerefSimple,shCtrlSeq
syn cluster shExprList2 contains=@shExprList1,@shCaseList,shTest
syn cluster shFunctionList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shHereDoc,shIf,shOption,shRedir,shSetList,shSource,shStatement,shVariable,shOperator,shCtrlSeq
@@ -160,7 +166,7 @@ endif
" Options: {{{1
" ====================
syn match shOption "\s\zs[-+][-_a-zA-Z0-9]\+\>"
syn match shOption "\s\zs[-+][-_a-zA-Z0-9#]\+"
syn match shOption "\s\zs--[^ \t$`'"|]\+"
" File Redirection Highlighted As Operators: {{{1
@@ -204,14 +210,15 @@ syn match shCharClass contained "\[:\(backspace\|escape\|return\|xdigit\|alnum
" Loops: do, if, while, until {{{1
" ======
if (g:sh_fold_enabled % (s:sh_fold_ifdofor * 2))/s:sh_fold_ifdofor
if s:sh_fold_ifdofor
syn region shDo fold transparent matchgroup=shConditional start="\<do\>" matchgroup=shConditional end="\<done\>" contains=@shLoopList
syn region shIf fold transparent matchgroup=shConditional start="\<if\_s" matchgroup=shConditional skip=+-fi\>+ end="\<;\_s*then\>" end="\<fi\>" contains=@shIfList
syn region shFor fold matchgroup=shLoop start="\<for\_s" end="\<in\_s" end="\<do\>"me=e-2 contains=@shLoopList,shDblParen skipwhite nextgroup=shCurlyIn
syn region shFor fold matchgroup=shLoop start="\<for\ze\_s\s*\%(((\)\@!" end="\<in\_s" end="\<do\>"me=e-2 contains=@shLoopList,shDblParen skipwhite nextgroup=shCurlyIn
else
syn region shDo transparent matchgroup=shConditional start="\<do\>" matchgroup=shConditional end="\<done\>" contains=@shLoopList
syn region shIf transparent matchgroup=shConditional start="\<if\_s" matchgroup=shConditional skip=+-fi\>+ end="\<;\_s*then\>" end="\<fi\>" contains=@shIfList
syn region shFor matchgroup=shLoop start="\<for\_s" end="\<in\>" end="\<do\>"me=e-2 contains=@shLoopList,shDblParen skipwhite nextgroup=shCurlyIn
syn region shFor matchgroup=shLoop start="\<for\ze\_s\s*\%(((\)\@!" end="\<in\>" end="\<do\>"me=e-2 contains=@shLoopList,shDblParen skipwhite nextgroup=shCurlyIn
syn match shForPP '\<for\>\ze\_s*(('
endif
if exists("b:is_kornshell") || exists("b:is_bash")
syn cluster shCaseList add=shRepeat
@@ -230,7 +237,7 @@ syn match shComma contained ","
" ====
syn match shCaseBar contained skipwhite "\(^\|[^\\]\)\(\\\\\)*\zs|" nextgroup=shCase,shCaseStart,shCaseBar,shComment,shCaseExSingleQuote,shCaseSingleQuote,shCaseDoubleQuote
syn match shCaseStart contained skipwhite skipnl "(" nextgroup=shCase,shCaseBar
if (g:sh_fold_enabled % (s:sh_fold_ifdofor * 2))/s:sh_fold_ifdofor
if s:sh_fold_ifdofor
syn region shCase fold contained skipwhite skipnl matchgroup=shSnglCase start="\%(\\.\|[^#$()'" \t]\)\{-}\zs)" end=";;" end="esac"me=s-1 contains=@shCaseList nextgroup=shCaseStart,shCase,shComment
syn region shCaseEsac fold matchgroup=shConditional start="\<case\>" end="\<esac\>" contains=@shCaseEsacList
else
@@ -246,13 +253,17 @@ endif
syn region shCaseSingleQuote matchgroup=shQuote start=+'+ end=+'+ contains=shStringSpecial skipwhite skipnl nextgroup=shCaseBar contained
syn region shCaseDoubleQuote matchgroup=shQuote start=+"+ skip=+\\\\\|\\.+ end=+"+ contains=@shDblQuoteList,shStringSpecial skipwhite skipnl nextgroup=shCaseBar contained
syn region shCaseCommandSub start=+`+ skip=+\\\\\|\\.+ end=+`+ contains=@shCommandSubList skipwhite skipnl nextgroup=shCaseBar contained
syn region shCaseRange matchgroup=Delimiter start=+\[+ skip=+\\\\+ end=+]+ contained
if exists("b:is_bash")
syn region shCaseRange matchgroup=Delimiter start=+\[+ skip=+\\\\+ end=+\]+ contained contains=shCharClass
syn match shCharClass '\[:\%(alnum\|alpha\|ascii\|blank\|cntrl\|digit\|graph\|lower\|print\|punct\|space\|upper\|word\|or\|xdigit\):\]' contained
else
syn region shCaseRange matchgroup=Delimiter start=+\[+ skip=+\\\\+ end=+\]+ contained
endif
" Misc: {{{1
"======
syn match shWrapLineOperator "\\$"
syn region shCommandSub start="`" skip="\\\\\|\\." end="`" contains=@shCommandSubList
syn match shEscape contained '\\.' contains=@shCommandSubList
syn region shCommandSub start="`" skip="\\\\\|\\." end="`" contains=@shCommandSubList
syn match shEscape contained '\%(\\\\\)*\\.'
" $() and $(()): {{{1
" $(..) is not supported by sh (Bourne shell). However, apparently
@@ -268,20 +279,23 @@ if exists("b:is_kornshell") || exists("b:is_bash")
elseif !exists("g:sh_no_error")
syn region shCommandSub matchgroup=Error start="\$(" end=")" contains=@shCommandSubList
endif
syn region shCmdParenRegion matchgroup=shCmdSubRegion start="(" skip='\\\\\|\\.' end=")" contains=@shCommandSubList
if exists("b:is_bash")
syn cluster shCommandSubList add=bashSpecialVariables,bashStatement
syn cluster shCaseList add=bashAdminStatement,bashStatement
syn keyword bashSpecialVariables contained auto_resume BASH BASH_ALIASES BASH_ALIASES BASH_ARGC BASH_ARGC BASH_ARGV BASH_ARGV BASH_CMDS BASH_CMDS BASH_COMMAND BASH_COMMAND BASH_ENV BASH_EXECUTION_STRING BASH_EXECUTION_STRING BASH_LINENO BASH_LINENO BASHOPTS BASHOPTS BASHPID BASHPID BASH_REMATCH BASH_REMATCH BASH_SOURCE BASH_SOURCE BASH_SUBSHELL BASH_SUBSHELL BASH_VERSINFO BASH_VERSION BASH_XTRACEFD BASH_XTRACEFD CDPATH COLUMNS COLUMNS COMP_CWORD COMP_CWORD COMP_KEY COMP_KEY COMP_LINE COMP_LINE COMP_POINT COMP_POINT COMPREPLY COMPREPLY COMP_TYPE COMP_TYPE COMP_WORDBREAKS COMP_WORDBREAKS COMP_WORDS COMP_WORDS COPROC COPROC DIRSTACK EMACS EMACS ENV ENV EUID FCEDIT FIGNORE FUNCNAME FUNCNAME FUNCNEST FUNCNEST GLOBIGNORE GROUPS histchars HISTCMD HISTCONTROL HISTFILE HISTFILESIZE HISTIGNORE HISTSIZE HISTTIMEFORMAT HISTTIMEFORMAT HOME HOSTFILE HOSTNAME HOSTTYPE IFS IGNOREEOF INPUTRC LANG LC_ALL LC_COLLATE LC_CTYPE LC_CTYPE LC_MESSAGES LC_NUMERIC LC_NUMERIC LINENO LINES LINES MACHTYPE MAIL MAILCHECK MAILPATH MAPFILE MAPFILE OLDPWD OPTARG OPTERR OPTIND OSTYPE PATH PIPESTATUS POSIXLY_CORRECT POSIXLY_CORRECT PPID PROMPT_COMMAND PS1 PS2 PS3 PS4 PWD RANDOM READLINE_LINE READLINE_LINE READLINE_POINT READLINE_POINT REPLY SECONDS SHELL SHELL SHELLOPTS SHLVL TIMEFORMAT TIMEOUT TMPDIR TMPDIR UID
syn keyword bashStatement chmod clear complete du egrep expr fgrep find gnufind gnugrep grep install less ls mkdir mv rm rmdir rpm sed sleep sort strip tail touch
syn keyword bashStatement chmod clear complete du egrep expr fgrep find gnufind gnugrep grep less ls mkdir mv rm rmdir rpm sed sleep sort strip tail touch
syn keyword bashAdminStatement daemon killall killproc nice reload restart start status stop
syn keyword bashStatement command compgen
endif
if exists("b:is_kornshell")
syn cluster shCommandSubList add=kshSpecialVariables,kshStatement
syn cluster shCaseList add=kshStatement
syn keyword kshSpecialVariables contained CDPATH COLUMNS EDITOR ENV ERRNO FCEDIT FPATH HISTFILE HISTSIZE HOME IFS LINENO LINES MAIL MAILCHECK MAILPATH OLDPWD OPTARG OPTIND PATH PPID PS1 PS2 PS3 PS4 PWD RANDOM REPLY SECONDS SHELL TMOUT VISUAL
syn keyword kshStatement cat chmod clear cp du egrep expr fgrep find grep install killall less ls mkdir mv nice printenv rm rmdir sed sort strip stty tail touch tput
syn keyword kshStatement cat chmod clear cp du egrep expr fgrep find grep killall less ls mkdir mv nice printenv rm rmdir sed sort strip stty tail touch tput
syn keyword kshStatement command setgroups setsenv
endif
syn match shSource "^\.\s"
@@ -309,8 +323,8 @@ syn region shDoubleQuote matchgroup=shQuote start=+\%(\%(\\\\\)*\\\)\@<!"+ skip
"syn region shDoubleQuote matchgroup=shQuote start=+"+ skip=+\\"+ end=+"+ contains=@shDblQuoteList,shStringSpecial,@Spell
syn match shStringSpecial "[^[:print:] \t]" contained
syn match shStringSpecial "\%(\\\\\)*\\[\\"'`$()#]"
syn match shSpecial "[^\\]\zs\%(\\\\\)*\\[\\"'`$()#]" nextgroup=shMoreSpecial
syn match shSpecial "^\%(\\\\\)*\\[\\"'`$()#]"
syn match shSpecial "[^\\]\zs\%(\\\\\)*\\[\\"'`$()#]" nextgroup=shMoreSpecial,shComment
syn match shSpecial "^\%(\\\\\)*\\[\\"'`$()#]" nextgroup=shComment
syn match shMoreSpecial "\%(\\\\\)*\\[\\"'`$()#]" nextgroup=shMoreSpecial contained
" Comments: {{{1
@@ -319,6 +333,7 @@ syn cluster shCommentGroup contains=shTodo,@Spell
syn keyword shTodo contained COMBAK FIXME TODO XXX
syn match shComment "^\s*\zs#.*$" contains=@shCommentGroup
syn match shComment "\s\zs#.*$" contains=@shCommentGroup
syn match shComment contained "#.*$" contains=@shCommentGroup
syn match shQuickComment contained "#.*$"
" Here Documents: {{{1
@@ -331,52 +346,52 @@ if version < 600
syn region shHereDoc matchgroup=shRedir start="<<\s*\**\.\**" matchgroup=shRedir end="^\.$" contains=@shDblQuoteList
syn region shHereDoc matchgroup=shRedir start="<<-\s*\**\.\**" matchgroup=shRedir end="^\s*\.$" contains=@shDblQuoteList
elseif (g:sh_fold_enabled % (s:sh_fold_heredoc * 2))/s:sh_fold_heredoc
syn region shHereDoc matchgroup=shRedir fold start="<<\s*\z(\S*\)" matchgroup=shRedir end="^\z1\s*$" contains=@shDblQuoteList
syn region shHereDoc matchgroup=shRedir fold start="<<\s*\"\z(\S*\)\"" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<\s*'\z(\S*\)'" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<-\s*\z(\S*\)" matchgroup=shRedir end="^\s*\z1\s*$" contains=@shDblQuoteList
syn region shHereDoc matchgroup=shRedir fold start="<<-\s*\"\z(\S*\)\"" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<-\s*'\z(\S*\)'" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<\s*\\\_$\_s*\z(\S*\)" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<\s*\\\_$\_s*\"\z(\S*\)\"" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<-\s*\\\_$\_s*'\z(\S*\)'" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<-\s*\\\_$\_s*\z(\S*\)" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<-\s*\\\_$\_s*\"\z(\S*\)\"" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<\s*\\\_$\_s*'\z(\S*\)'" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<\\\z(\S*\)" matchgroup=shRedir end="^\z1\s*$"
elseif s:sh_fold_heredoc
syn region shHereDoc matchgroup=shRedir fold start="<<\s*\z([^ \t|]*\)" matchgroup=shRedir end="^\z1\s*$" contains=@shDblQuoteList
syn region shHereDoc matchgroup=shRedir fold start="<<\s*\"\z([^ \t|]*\)\"" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<\s*'\z([^ \t|]*\)'" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<-\s*\z([^ \t|]*\)" matchgroup=shRedir end="^\s*\z1\s*$" contains=@shDblQuoteList
syn region shHereDoc matchgroup=shRedir fold start="<<-\s*\"\z([^ \t|]*\)\"" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<-\s*'\z([^ \t|]*\)'" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<\s*\\\_$\_s*\z([^ \t|]*\)" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<\s*\\\_$\_s*\"\z([^ \t|]*\)\"" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<-\s*\\\_$\_s*'\z([^ \t|]*\)'" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<-\s*\\\_$\_s*\z([^ \t|]*\)" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<-\s*\\\_$\_s*\"\z([^ \t|]*\)\"" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<\s*\\\_$\_s*'\z([^ \t|]*\)'" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir fold start="<<\\\z([^ \t|]*\)" matchgroup=shRedir end="^\z1\s*$"
else
syn region shHereDoc matchgroup=shRedir start="<<\s*\\\=\z(\S*\)" matchgroup=shRedir end="^\z1\s*$" contains=@shDblQuoteList
syn region shHereDoc matchgroup=shRedir start="<<\s*\"\z(\S*\)\"" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<-\s*\z(\S*\)" matchgroup=shRedir end="^\s*\z1\s*$" contains=@shDblQuoteList
syn region shHereDoc matchgroup=shRedir start="<<-\s*'\z(\S*\)'" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<\s*'\z(\S*\)'" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<-\s*\"\z(\S*\)\"" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<\s*\\\_$\_s*\z(\S*\)" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<-\s*\\\_$\_s*\z(\S*\)" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<-\s*\\\_$\_s*'\z(\S*\)'" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<\s*\\\_$\_s*'\z(\S*\)'" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<\s*\\\_$\_s*\"\z(\S*\)\"" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<-\s*\\\_$\_s*\"\z(\S*\)\"" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<\\\z(\S*\)" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<\s*\\\=\z([^ \t|]*\)" matchgroup=shRedir end="^\z1\s*$" contains=@shDblQuoteList
syn region shHereDoc matchgroup=shRedir start="<<\s*\"\z([^ \t|]*\)\"" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<-\s*\z([^ \t|]*\)" matchgroup=shRedir end="^\s*\z1\s*$" contains=@shDblQuoteList
syn region shHereDoc matchgroup=shRedir start="<<-\s*'\z([^ \t|]*\)'" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<\s*'\z([^ \t|]*\)'" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<-\s*\"\z([^ \t|]*\)\"" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<\s*\\\_$\_s*\z([^ \t|]*\)" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<-\s*\\\_$\_s*\z([^ \t|]*\)" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<-\s*\\\_$\_s*'\z([^ \t|]*\)'" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<\s*\\\_$\_s*'\z([^ \t|]*\)'" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<\s*\\\_$\_s*\"\z([^ \t|]*\)\"" matchgroup=shRedir end="^\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<-\s*\\\_$\_s*\"\z([^ \t|]*\)\"" matchgroup=shRedir end="^\s*\z1\s*$"
syn region shHereDoc matchgroup=shRedir start="<<\\\z([^ \t|]*\)" matchgroup=shRedir end="^\z1\s*$"
endif
" Here Strings: {{{1
" =============
" available for: bash; ksh (really should be ksh93 only) but not if its a posix
if exists("b:is_bash") || (exists("b:is_kornshell") && !exists("g:is_posix"))
syn match shRedir "<<<"
syn match shRedir "<<<" skipwhite nextgroup=shCmdParenRegion
endif
" Identifiers: {{{1
"=============
syn match shSetOption "\s\zs[-+][a-zA-Z0-9]\+\>" contained
syn match shVariable "\<\([bwglsav]:\)\=[a-zA-Z0-9.!@_%+,]*\ze=" nextgroup=shSetIdentifier
syn match shSetIdentifier "=" contained nextgroup=shPattern,shDeref,shDerefSimple,shDoubleQuote,shExDoubleQuote,shSingleQuote,shExSingleQuote
syn match shSetIdentifier "=" contained nextgroup=shCmdParenRegion,shPattern,shDeref,shDerefSimple,shDoubleQuote,shExDoubleQuote,shSingleQuote,shExSingleQuote
if exists("b:is_bash")
syn region shSetList oneline matchgroup=shSet start="\<\(declare\|typeset\|local\|export\|unset\)\>\ze[^/]" end="$" matchgroup=shSetListDelim end="\ze[}|);&]" matchgroup=NONE end="\ze\s\+#\|=" contains=@shIdList
syn region shSetList oneline matchgroup=shSet start="\<set\>\ze[^/]" end="\ze[;|)]\|$" matchgroup=shSetListDelim end="\ze[}|);&]" matchgroup=NONE end="\ze\s\+[#=]" contains=@shIdList
syn region shSetList oneline matchgroup=shSet start="\<set\>\ze[^/]" end="\ze[;|)]\|$" matchgroup=shSetListDelim end="\ze[}|);&]" matchgroup=NONE end="\ze\s\+=" contains=@shIdList
elseif exists("b:is_kornshell")
syn region shSetList oneline matchgroup=shSet start="\<\(typeset\|export\|unset\)\>\ze[^/]" end="$" matchgroup=shSetListDelim end="\ze[}|);&]" matchgroup=NONE end="\ze\s\+[#=]" contains=@shIdList
syn region shSetList oneline matchgroup=shSet start="\<set\>\ze[^/]" end="$" matchgroup=shSetListDelim end="\ze[}|);&]" matchgroup=NONE end="\ze\s\+[#=]" contains=@shIdList
@@ -390,15 +405,15 @@ if !exists("g:is_posix")
endif
if exists("b:is_bash")
if (g:sh_fold_enabled % (s:sh_fold_functions * 2))/s:sh_fold_functions
syn region shFunctionOne fold matchgroup=shFunction start="^\s*\h[-a-zA-Z_0-9]*\s*()\_s*{" end="}" contains=@shFunctionList skipwhite skipnl nextgroup=shFunctionStart,shQuickComment
if s:sh_fold_functions
syn region shFunctionOne fold matchgroup=shFunction start="^\s*\h[-a-zA-Z_0-9]*\s*()\_s*{" end="}" contains=@shFunctionList skipwhite skipnl nextgroup=shFunctionStart,shQuickComment
syn region shFunctionTwo fold matchgroup=shFunction start="\h[-a-zA-Z_0-9]*\s*\%(()\)\=\_s*{" end="}" contains=shFunctionKey,@shFunctionList contained skipwhite skipnl nextgroup=shFunctionStart,shQuickComment
else
syn region shFunctionOne matchgroup=shFunction start="^\s*\h[-a-zA-Z_0-9]*\s*()\_s*{" end="}" contains=@shFunctionList
syn region shFunctionTwo matchgroup=shFunction start="\h[-a-zA-Z_0-9]*\s*\%(()\)\=\_s*{" end="}" contains=shFunctionKey,@shFunctionList contained
endif
else
if (g:sh_fold_enabled % (s:sh_fold_functions * 2))/s:sh_fold_functions
if s:sh_fold_functions
syn region shFunctionOne fold matchgroup=shFunction start="^\s*\h\w*\s*()\_s*{" end="}" contains=@shFunctionList skipwhite skipnl nextgroup=shFunctionStart,shQuickComment
syn region shFunctionTwo fold matchgroup=shFunction start="\h\w*\s*\%(()\)\=\_s*{" end="}" contains=shFunctionKey,@shFunctionList contained skipwhite skipnl nextgroup=shFunctionStart,shQuickComment
else
@@ -409,7 +424,7 @@ endif
" Parameter Dereferencing: {{{1
" ========================
syn match shDerefSimple "\$\%(\h\w*\|\d\)"
syn match shDerefSimple "\$\%(\k\+\|\d\)"
syn region shDeref matchgroup=PreProc start="\${" end="}" contains=@shDerefList,shDerefVarArray
if !exists("g:sh_no_error")
syn match shDerefWordError "[^}$[]" contained
@@ -425,12 +440,12 @@ endif
" ====================================
if exists("b:is_bash")
syn region shDeref matchgroup=PreProc start="\${!" end="\*\=}" contains=@shDerefList,shDerefOp
syn match shDerefVar contained "{\@<=!\w\+" nextgroup=@shDerefVarList
syn match shDerefVar contained "{\@<=!\k\+" nextgroup=@shDerefVarList
endif
syn match shDerefSpecial contained "{\@<=[-*@?0]" nextgroup=shDerefOp,shDerefOpError
syn match shDerefSpecial contained "\({[#!]\)\@<=[[:alnum:]*@_]\+" nextgroup=@shDerefVarList,shDerefOp
syn match shDerefVar contained "{\@<=\w\+" nextgroup=@shDerefVarList
syn match shDerefVar contained "{\@<=\k\+" nextgroup=@shDerefVarList
" sh ksh bash : ${var[... ]...} array reference: {{{1
syn region shDerefVarArray contained matchgroup=shDeref start="\[" end="]" contains=@shCommandSubList nextgroup=shDerefOp,shDerefOpError
@@ -477,12 +492,12 @@ if exists("b:is_bash")
" bash : ${parameter//pattern/string}
" bash : ${parameter//pattern}
syn match shDerefPPS contained '/\{1,2}' nextgroup=shDerefPPSleft
syn region shDerefPPSleft contained start='.' skip=@\%(\\\)\/@ matchgroup=shDerefOp end='/' end='\ze}' nextgroup=shDerefPPSright contains=@shCommandSubList
syn region shDerefPPSright contained start='.' end='\ze}' contains=@shCommandSubList
syn region shDerefPPSleft contained start='.' skip=@\%(\\\\\)*\\/@ matchgroup=shDerefOp end='/' end='\ze}' nextgroup=shDerefPPSright contains=@shCommandSubList
syn region shDerefPPSright contained start='.' skip=@\%(\\\\\)\+@ end='\ze}' contains=@shCommandSubList
endif
" Arithmetic Parenthesized Expressions: {{{1
syn region shParen matchgroup=shArithRegion start='(\%(\ze[^(]\|$\)' end=')' contains=@shArithParenList
syn region shParen matchgroup=shArithRegion start='[^$]\zs(\%(\ze[^(]\|$\)' end=')' contains=@shArithParenList
" Useful sh Keywords: {{{1
" ===================
@@ -557,6 +572,7 @@ hi def link shDoubleQuote shString
hi def link shEcho shString
hi def link shEchoDelim shOperator
hi def link shEchoQuote shString
hi def link shForPP shLoop
hi def link shEmbeddedEcho shString
hi def link shEscape shCommandSub
hi def link shExDoubleQuote shDoubleQuote
@@ -592,6 +608,7 @@ if exists("b:is_bash")
hi def link bashStatement shStatement
hi def link shFunctionParen Delimiter
hi def link shFunctionDelim Delimiter
hi def link shCharClass shSpecial
endif
if exists("b:is_kornshell")
hi def link kshSpecialVariables shShellVariables

293
runtime/syntax/sqlhana.vim Normal file
View File

@@ -0,0 +1,293 @@
" Vim syntax file
" Language: SQL, SAP HANA In Memory Database
" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com>
" Last Change: 2012 Oct 23
" Version: SP4 b (Q2 2012)
" Homepage: http://www.vim.org/scripts/script.php?script_id=4275
" Description: Updated to SAP HANA SP4
"
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
if version < 600
syntax clear
elseif exists("b:current_syntax")
finish
endif
syn case ignore
" The SQL reserved words, defined as keywords.
" These were pulled from the following SQL reference:
" http://help.sap.com/hana/hana_sql_en.pdf
" An easy approach is to copy all text from the PDF
" into a Vim buffer. The keywords are in UPPER case,
" so you can run the following commands to be left with
" mainly the UPPER case words:
" 1. Delete all words that do not begin with a Capital
" %s/\(\<[^A-Z]\w*\>\)//g
" 2. Remove all words where the 2nd letter is not a Capital
" %s/\(\<[A-Z][^A-Z]\w*\>\)//g
" 3. Remove all non-word (or space) characters
" %s/[^0-9A-Za-z_ ]*//g
" 4. Remove some known words
" %s/\<\(SAP\|HANA\|OK\|AG\|IBM\|DB2\|AIX\|POWER\d\+\|UNIX\)\>//g
" 5. Remove blank lines and trailing spaces
" %s/\s\+$//g
" %s/^\s\+//g
" %s/^$\n//g
" 6. Convert spaces to newlines remove single character
" %s/[ ]\+/\r/g
" %g/^\w$/d
" 7. Sort and remove duplicates
" :sort
" :Uniq
" 8. Use the WhatsMissing plugin against the sqlhana.vim file.
" 9. Generated a file of all UPPER cased words which should not
" be in the syntax file. These items should be removed
" from the list in step 7. You can use WhatsNotMissing
" between step 7 and this new file to weed out the words
" we know are not syntax related.
" 10. Use the WhatsMissingRemoveMatches to remove the words
" from step 9.
syn keyword sqlSpecial false null true
" Supported Functions for Date/Time types
syn keyword sqlFunction ADD_DAYS ADD_MONTHS ADD_SECONDS ADD_YEARS COALESCE
syn keyword sqlFunction CURRENT_DATE CURRENT_TIME CURRENT_TIMESTAMP CURRENT_UTCDATE
syn keyword sqlFunction CURRENT_UTCTIME CURRENT_UTCTIMESTAMP
syn keyword sqlFunction DAYNAME DAYOFMONTH DAYOFYEAR DAYS_BETWEEN EXTRACT
syn keyword sqlFunction GREATEST HOUR IFNULL ISOWEEK LAST_DAY LEAST LOCALTOUTC
syn keyword sqlFunction MINUTE MONTH MONTHNAME NEXT_DAY NOW QUARTER SECOND
syn keyword sqlFunction SECONDS_BETWEEN UTCTOLOCAL WEEK WEEKDAY YEAR
syn keyword sqlFunction TO_CHAR TO_DATE TO_DATS TO_NCHAR TO_TIME TO_TIMESTAMP UTCTOLOCAL
" Aggregate
syn keyword sqlFunction COUNT MIN MAX SUM AVG STDDEV VAR
" Datatype conversion
syn keyword sqlFunction CAST TO_ALPHANUM TO_BIGINT TO_BINARY TO_BLOB TO_CHAR TO_CLOB
syn keyword sqlFunction TO_DATE TO_DATS TO_DECIMAL TO_DOUBLE TO_INT TO_INTEGER TO_NCHAR
syn keyword sqlFunction TO_NCLOB TO_NVARCHAR TO_REAL TO_SECONDDATE TO_SMALLDECIMAL
syn keyword sqlFunction TO_SMALLINT TO_TIME TO_TIMESTAMP TO_TINYINT TO_VARCHAR TO_VARBINARY
" Number functions
syn keyword sqlFunction ABS ACOS ASIN ATAN ATAN2 BINTOHEX BITAND CEIL COS COSH COT
syn keyword sqlFunction EXP FLOOR GREATEST HEXTOBIN LEAST LN LOG MOD POWER ROUND
syn keyword sqlFunction SIGN SIN SINH SQRT TAN TANH UMINUS
" String functions
syn keyword sqlFunction ASCII CHAR CONCAT LCASE LENGTH LOCATE LOWER LPAD LTRIM
syn keyword sqlFunction NCHAR REPLACE RPAD RTRIM SUBSTR_AFTER SUBSTR_BEFORE
syn keyword sqlFunction SUBSTRING TRIM UCASE UNICODE UPPER
" Miscellaneous functions
syn keyword sqlFunction COALESCE CURRENT_CONNECTION CURRENT_SCHEMA CURRENT_USER
syn keyword sqlFunction GROUPING_ID IFNULL MAP NULLIF SESSION_CONTEXT SESSION_USER SYSUUIDSQL
syn keyword sqlFunction GET_NUM_SERVERS
" sp_ procedures
" syn keyword sqlFunction sp_addalias
" Reserved keywords
syn keyword sqlkeyword ALL AS AT BEFORE
syn keyword sqlkeyword BEGIN BOTH BY
syn keyword sqlkeyword CONDITION
syn keyword sqlkeyword CURRVAL CURSOR DECLARE
syn keyword sqlkeyword DISTINCT DO ELSE ELSEIF ELSIF
syn keyword sqlkeyword END EXCEPTION EXEC
syn keyword sqlkeyword FOR FROM GROUP
syn keyword sqlkeyword HAVING IN
syn keyword sqlkeyword INOUT INTO IS
syn keyword sqlkeyword LEADING
syn keyword sqlkeyword LOOP MINUS NATURAL NEXTVAL
syn keyword sqlkeyword OF ON ORDER OUT
syn keyword sqlkeyword PRIOR RETURN RETURNS REVERSE
syn keyword sqlkeyword ROWID SELECT
syn keyword sqlkeyword SQL START STOP SYSDATE
syn keyword sqlkeyword SYSTIME SYSTIMESTAMP SYSUUID
syn keyword sqlkeyword TRAILING USING UTCDATE
syn keyword sqlkeyword UTCTIME UTCTIMESTAMP VALUES
syn keyword sqlkeyword WHILE
syn keyword sqlkeyword ANY SOME EXISTS ESCAPE
" IF keywords
syn keyword sqlkeyword IF
" CASE keywords
syn keyword sqlKeyword WHEN THEN
" Syntax rules common to TEXT and SHORTTEXT keywords
syn keyword sqlKeyword LANGUAGE DETECTION LINGUISTIC
syn keyword sqlkeyword MIME TYPE
syn keyword sqlkeyword EXACT WEIGHT FUZZY FUZZINESSTHRESHOLD SEARCH
syn keyword sqlkeyword PHRASE INDEX RATIO REBUILD
syn keyword sqlkeyword CONFIGURATION
syn keyword sqlkeyword SEARCH ONLY
syn keyword sqlkeyword FAST PREPROCESS
syn keyword sqlkeyword SYNC SYNCHRONOUS ASYNC ASYNCHRONOUS FLUSH QUEUE
syn keyword sqlkeyword EVERY AFTER MINUTES DOCUMENTS SUSPEND
" Statement keywords (i.e. after ALTER or CREATE)
syn keyword sqlkeyword AUDIT POLICY
syn keyword sqlkeyword FULLTEXT
syn keyword sqlkeyword SEQUENCE RESTART
syn keyword sqlkeyword TABLE
syn keyword sqlkeyword PROCEDURE STATISTICS
syn keyword sqlkeyword SCHEMA
syn keyword sqlkeyword SYNONYM
syn keyword sqlkeyword VIEW
syn keyword sqlkeyword COLUMN
syn keyword sqlkeyword SYSTEM LICENSE
syn keyword sqlkeyword SESSION
syn keyword sqlkeyword CANCEL WORK
syn keyword sqlkeyword PLAN CACHE
syn keyword sqlkeyword LOGGING NOLOGGING RETENTION
syn keyword sqlkeyword RECONFIGURE SERVICE
syn keyword sqlkeyword RESET MONITORING
syn keyword sqlkeyword SAVE DURATION PERFTRACE FUNCTION_PROFILER
syn keyword sqlkeyword SAVEPOINT
syn keyword sqlkeyword USER
syn keyword sqlkeyword ROLE
syn keyword sqlkeyword ASC DESC
syn keyword sqlkeyword OWNED
syn keyword sqlkeyword DEPENDENCIES SCRAMBLE
" Create sequence
syn keyword sqlkeyword INCREMENT MAXVALUE MINVALUE CYCLE
" Create table
syn keyword sqlkeyword HISTORY GLOBAL LOCAL TEMPORARY
" Create trigger
syn keyword sqlkeyword TRIGGER REFERENCING EACH DEFAULT
syn keyword sqlkeyword SIGNAL RESIGNAL MESSAGE_TEXT OLD NEW
syn keyword sqlkeyword EXIT HANDLER SQL_ERROR_CODE
syn keyword sqlkeyword TARGET CONDITION SIGNAL
" Alter table
syn keyword sqlkeyword ADD DROP MODIFY GENERATED ALWAYS
syn keyword sqlkeyword UNIQUE BTREE CPBTREE PRIMARY KEY
syn keyword sqlkeyword CONSTRAINT PRELOAD NONE
syn keyword sqlkeyword ROW THREADS BATCH
syn keyword sqlkeyword MOVE PARTITION TO LOCATION PHYSICAL OTHERS
syn keyword sqlkeyword ROUNDROBIN PARTITIONS HASH RANGE VALUE
syn keyword sqlkeyword PERSISTENT DELTA AUTO AUTOMERGE
" Create audit policy
syn keyword sqlkeyword AUDITING SUCCESSFUL UNSUCCESSFUL
syn keyword sqlkeyword PRIVILEGE STRUCTURED CHANGE LEVEL
syn keyword sqlkeyword EMERGENCY ALERT CRITICAL WARNING INFO
" Privileges
syn keyword sqlkeyword DEBUG EXECUTE
" Schema
syn keyword sqlkeyword CASCADE RESTRICT PARAMETERS SCAN
" Traces
syn keyword sqlkeyword CLIENT CRASHDUMP EMERGENCYDUMP
syn keyword sqlkeyword INDEXSERVER NAMESERVER DAEMON
syn keyword sqlkeyword CLEAR REMOVE TRACES
" Reclaim
syn keyword sqlkeyword RECLAIM DATA VOLUME VERSION SPACE DEFRAGMENT SPARSIFY
" Join
syn keyword sqlkeyword INNER OUTER LEFT RIGHT FULL CROSS JOIN
syn keyword sqlkeyword GROUPING SETS ROLLUP CUBE
syn keyword sqlkeyword BEST LIMIT OFFSET
syn keyword sqlkeyword WITH SUBTOTAL BALANCE TOTAL
syn keyword sqlkeyword TEXT_FILTER FILL UP SORT MATCHES TOP
syn keyword sqlkeyword RESULT OVERVIEW PREFIX MULTIPLE RESULTSETS
" Lock
syn keyword sqlkeyword EXCLUSIVE MODE NOWAIT
" Transaction
syn keyword sqlkeyword TRANSACTION ISOLATION READ COMMITTED
syn keyword sqlkeyword REPEATABLE SERIALIZABLE WRITE
" Saml
syn keyword sqlkeyword SAML ASSERTION PROVIDER SUBJECT ISSUER
" User
syn keyword sqlkeyword PASSWORD IDENTIFIED EXTERNALLY ATTEMPTS ATTEMPTS
syn keyword sqlkeyword ENABLE DISABLE OFF LIFETIME FORCE DEACTIVATE
syn keyword sqlkeyword ACTIVATE IDENTITY KERBEROS
" Grant
syn keyword sqlkeyword ADMIN BACKUP CATALOG SCENARIO INIFILE MONITOR
syn keyword sqlkeyword OPTIMIZER OPTION
syn keyword sqlkeyword RESOURCE STRUCTUREDPRIVILEGE TRACE
" Import
syn keyword sqlkeyword CSV FILE CONTROL NO CHECK SKIP FIRST LIST
syn keyword sqlkeyword RECORD DELIMITED FIELD OPTIONALLY ENCLOSED FORMAT
" Roles
syn keyword sqlkeyword PUBLIC CONTENT_ADMIN MODELING MONITORING
" Miscellaneous
syn keyword sqlkeyword APPLICATION BINARY IMMEDIATE COREFILE SECURITY DEFINER
syn keyword sqlkeyword DUMMY INVOKER MATERIALIZED MESSEGE_TEXT PARAMETER PARAMETERS
syn keyword sqlkeyword PART
syn keyword sqlkeyword CONSTANT SQLEXCEPTION SQLWARNING
syn keyword sqlOperator WHERE BETWEEN LIKE NULL CONTAINS
syn keyword sqlOperator AND OR NOT CASE
syn keyword sqlOperator UNION INTERSECT EXCEPT
syn keyword sqlStatement ALTER CALL CALLS CREATE DROP RENAME TRUNCATE
syn keyword sqlStatement DELETE INSERT UPDATE EXPLAIN
syn keyword sqlStatement MERGE REPLACE UPSERT SELECT
syn keyword sqlStatement SET UNSET LOAD UNLOAD
syn keyword sqlStatement CONNECT DISCONNECT COMMIT LOCK ROLLBACK
syn keyword sqlStatement GRANT REVOKE
syn keyword sqlStatement EXPORT IMPORT
syn keyword sqlType DATE TIME SECONDDATE TIMESTAMP TINYINT SMALLINT
syn keyword sqlType INT INTEGER BIGINT SMALLDECIMAL DECIMAL
syn keyword sqlType REAL DOUBLE FLOAT
syn keyword sqlType VARCHAR NVARCHAR ALPHANUM SHORTTEXT VARBINARY
syn keyword sqlType BLOB CLOB NCLOB TEXT DAYDATE
syn keyword sqlOption Webservice_namespace_host
" Strings and characters:
syn region sqlString start=+"+ end=+"+ contains=@Spell
syn region sqlString start=+'+ end=+'+ contains=@Spell
" Numbers:
syn match sqlNumber "-\=\<\d*\.\=[0-9_]\>"
" Comments:
syn region sqlDashComment start=/--/ end=/$/ contains=@Spell
syn region sqlSlashComment start=/\/\// end=/$/ contains=@Spell
syn region sqlMultiComment start="/\*" end="\*/" contains=sqlMultiComment,@Spell
syn cluster sqlComment contains=sqlDashComment,sqlSlashComment,sqlMultiComment,@Spell
syn sync ccomment sqlComment
syn sync ccomment sqlDashComment
syn sync ccomment sqlSlashComment
hi def link sqlDashComment Comment
hi def link sqlSlashComment Comment
hi def link sqlMultiComment Comment
hi def link sqlNumber Number
hi def link sqlOperator Operator
hi def link sqlSpecial Special
hi def link sqlKeyword Keyword
hi def link sqlStatement Statement
hi def link sqlString String
hi def link sqlType Type
hi def link sqlFunction Function
hi def link sqlOption PreProc
let b:current_syntax = "sqlhana"
" vim:sw=4:

View File

@@ -1,8 +1,8 @@
" Vim syntax file
" Language: TeX
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrchipO@ScampbellPfamily.AbizM>
" Last Change: Apr 24, 2012
" Version: 73
" Maintainer: Charles E. Campbell <NdrchipO@ScampbellPfamily.AbizM>
" Last Change: Nov 14, 2012
" Version: 75
" URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax
"
" Notes: {{{1
@@ -155,7 +155,7 @@ endif
" Try to flag {} and () mismatches: {{{1
if !exists("g:tex_no_error")
syn region texMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\[{}]" end="}" contains=@texMatchGroup,texError
syn region texMatcher matchgroup=Delimiter start="\[" end="]" contains=@texMatchGroup,texError
syn region texMatcher matchgroup=Delimiter start="\[" end="]" contains=@texMatchGroup,texError,@NoSpell
else
syn region texMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\[{}]" end="}" contains=@texMatchGroup
syn region texMatcher matchgroup=Delimiter start="\[" end="]" contains=@texMatchGroup
@@ -723,7 +723,7 @@ if has("conceal") && &enc == 'utf-8'
\ ['leftarrowtail' , '↢'],
\ ['leftharpoondown', '↽'],
\ ['leftharpoonup' , '↼'],
\ ['leftrightarrow' , ''],
\ ['leftrightarrow' , ''],
\ ['Leftrightarrow' , '⇔'],
\ ['leftrightsquigarrow', '↭'],
\ ['leftthreetimes' , '⋋'],

View File

@@ -1,8 +1,8 @@
" Vim syntax file
" Language: Vim 7.3 script
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change: Jan 11, 2012
" Version: 7.3-13
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change: Nov 14, 2012
" Version: 7.3-20
" Automatically generated keyword lists: {{{1
" Quit when a syntax file was already loaded {{{2
@@ -76,7 +76,7 @@ syn case match
" Function Names {{{2
syn keyword vimFuncName contained abs append argv atan2 bufexists bufname byte2line ceil cindent complete confirm cosh cursor did_filetype empty eventhandler exp extend filewritable findfile fmod foldclosed foldtext function getbufline getcharmod getcmdtype getfperm getftype getmatches getqflist gettabvar getwinposy globpath haslocaldir histdel hlexists iconv input inputrestore insert items len line localtime map match matchdelete matchstr min mode nextnonblank pathshorten prevnonblank pumvisible readfile reltimestr remote_foreground remote_read remove repeat reverse search searchpair searchpos serverlist setcmdpos setloclist setpos setreg settabwinvar shellescape sin sort spellbadword split str2float strchars strftime string strpart strtrans submatch synconcealed synIDattr synstack tabpagebuflist tabpagewinnr taglist tanh tolower tr type undotree virtcol winbufnr winheight winnr winrestview winwidth
syn keyword vimFuncName contained acos argc asin browse buflisted bufnr byteidx changenr clearmatches complete_add copy count deepcopy diff_filler escape executable expand feedkeys filter float2nr fnameescape foldclosedend foldtextresult garbagecollect getbufvar getcmdline getcwd getfsize getline getpid getreg gettabwinvar getwinvar has hasmapto histget hlID indent inputdialog inputsave isdirectory join libcall line2byte log maparg matchadd matchend max mkdir mzeval nr2char pow printf range reltime remote_expr remote_peek remote_send rename resolve round searchdecl searchpairpos server2client setbufvar setline setmatches setqflist settabvar setwinvar simplify sinh soundfold spellsuggest sqrt str2nr strdisplaywidth stridx strlen strridx strwidth substitute synID synIDtrans system tabpagenr tagfiles tan tempname toupper trunc undofile values visualmode wincol winline winrestcmd winsaveview writefile
syn keyword vimFuncName contained add argidx atan browsedir bufloaded bufwinnr call char2nr col complete_check cos cscope_connection delete diff_hlID eval exists expr8 filereadable finddir floor fnamemodify foldlevel foreground get getchar getcmdpos getfontname getftime getloclist getpos getregtype getwinposx glob has_key histadd histnr hostname index inputlist inputsecret islocked keys libcallnr lispindent log10 mapcheck matcharg matchlist pyeval py3eval luaeval
syn keyword vimFuncName contained add argidx atan browsedir bufloaded bufwinnr call char2nr col complete_check cos cscope_connection delete diff_hlID eval exists expr8 filereadable finddir floor fnamemodify foldlevel foreground get getchar getcmdpos getfontname getftime getloclist getpos getregtype getwinposx glob has_key histadd histnr hostname index inputlist inputsecret islocked keys libcallnr lispindent log10 mapcheck matcharg matchlist
"--- syntax above generated by mkvimvim ---
" Special Vim Highlighting (not automatic) {{{1
@@ -149,11 +149,12 @@ syn keyword vimAugroupKey contained aug[roup]
" Operators: {{{2
" =========
" COMBAK: vimOperParen used to have "oneline"
syn cluster vimOperGroup contains=vimFunc,vimFuncVar,vimOper,vimOperParen,vimNumber,vimString,vimRegister,vimContinue
syn match vimOper "\(==\|!=\|>=\|<=\|=\~\|!\~\|>\|<\|=\)[?#]\{0,2}" skipwhite nextgroup=vimString,vimSpecFile
syn match vimOper "||\|&&\|[-+.]" skipwhite nextgroup=vimString,vimSpecFile
syn region vimOperParen oneline matchgroup=vimParenSep start="(" end=")" contains=@vimOperGroup
syn region vimOperParen oneline matchgroup=vimSep start="{" end="}" contains=@vimOperGroup nextgroup=vimVar,vimFuncVar
syn region vimOperParen matchgroup=vimParenSep start="(" end=")" contains=@vimOperGroup
syn region vimOperParen matchgroup=vimSep start="{" end="}" contains=@vimOperGroup nextgroup=vimVar,vimFuncVar
if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_noopererror")
syn match vimOperError ")"
endif
@@ -203,7 +204,7 @@ if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_nousercmderror")
endif
syn case ignore
syn keyword vimUserAttrbKey contained bar ban[g] cou[nt] ra[nge] com[plete] n[args] re[gister]
syn keyword vimUserAttrbCmplt contained augroup buffer command dir environment event expression file function help highlight mapping menu option shellcmd something tag tag_listfiles var
syn keyword vimUserAttrbCmplt contained augroup buffer color command compiler cscope dir environment event expression file file_in_path filetype function help highlight locale mapping menu option shellcmd sign syntax tag tag_listfiles var
syn keyword vimUserAttrbCmplt contained custom customlist nextgroup=vimUserAttrbCmpltFunc,vimUserCmdError
syn match vimUserAttrbCmpltFunc contained ",\%([sS]:\|<[sS][iI][dD]>\)\=\%(\h\w*\%(#\u\w*\)\+\|\u\w*\)"hs=s+1 nextgroup=vimUserCmdError
@@ -328,7 +329,7 @@ syn match vimMapLhs contained "\S\+" contains=vimNotation,vimCtrlChar skipwhit
syn match vimMapBang contained "!" skipwhite nextgroup=vimMapMod,vimMapLhs
syn match vimMapMod contained "\c<\(buffer\|expr\|\(local\)\=leader\|plug\|script\|sid\|unique\|silent\)\+>" contains=vimMapModKey,vimMapModErr skipwhite nextgroup=vimMapMod,vimMapLhs
syn match vimMapRhs contained ".*" contains=vimNotation,vimCtrlChar skipnl nextgroup=vimMapRhsExtend
syn match vimMapRhsExtend contained "^\s*\\.*$" contains=vimContinue
syn match vimMapRhsExtend contained "^\s*\\.*$" contains=vimNotation,vimCtrlChar,vimContinue skipnl nextgroup=vimMapRhsExtend
syn case ignore
syn keyword vimMapModKey contained buffer expr leader localleader plug script sid silent unique
syn case match
@@ -360,8 +361,8 @@ syn case match
" User Function Highlighting {{{2
" (following Gautam Iyer's suggestion)
" ==========================
syn match vimFunc "\%(\%([sSgGbBwWtTlL]:\|<[sS][iI][dD]>\)\=\%([a-zA-Z0-9_.]\+\.\)*\I[a-zA-Z0-9_.]*\)\ze\s*(" contains=vimFuncName,vimUserFunc,vimExecute
syn match vimUserFunc contained "\%(\%([sSgGbBwWtTlL]:\|<[sS][iI][dD]>\)\=\%([a-zA-Z0-9_.]\+\.\)*\I[a-zA-Z0-9_.]*\)\|\<\u[a-zA-Z0-9.]*\>\|\<if\>" contains=vimNotation
syn match vimFunc "\%(\%([sSgGbBwWtTlL]:\|<[sS][iI][dD]>\)\=\%([a-zA-Z0-9_]\+\.\)*\I[a-zA-Z0-9_.]*\)\ze\s*(" contains=vimFuncName,vimUserFunc,vimExecute
syn match vimUserFunc contained "\%(\%([sSgGbBwWtTlL]:\|<[sS][iI][dD]>\)\=\%([a-zA-Z0-9_]\+\.\)*\I[a-zA-Z0-9_.]*\)\|\<\u[a-zA-Z0-9.]*\>\|\<if\>" contains=vimNotation
syn match vimNotFunc "\<if\>\|\<el\%[seif]\>\|\<return\>\|\<while\>"
" Errors And Warnings: {{{2
@@ -429,7 +430,7 @@ syn keyword vimSynType contained match skipwhite nextgroup=vimSynMatchRegion
syn region vimSynMatchRegion contained keepend matchgroup=vimGroupName start="\k\+" matchgroup=vimSep end="|\|$" contains=@vimSynMtchGroup
syn match vimSynMtchOpt contained "\<\(conceal\|transparent\|contained\|excludenl\|skipempty\|skipwhite\|display\|extend\|skipnl\|fold\)\>"
if has("conceal")
syn match vimSynMtchOpt contained "\<cchar=" nextgroup=VimSynMtchCchar
syn match vimSynMtchOpt contained "\<cchar=" nextgroup=vimSynMtchCchar
syn match vimSynMtchCchar contained "\S"
endif
syn cluster vimFuncBodyList add=vimSynMtchGroup
@@ -510,17 +511,18 @@ endif
syn match vimHiTerm contained "\cterm="he=e-1 nextgroup=vimHiAttribList
syn match vimHiStartStop contained "\c\(start\|stop\)="he=e-1 nextgroup=vimHiTermcap,vimOption
syn match vimHiCTerm contained "\ccterm="he=e-1 nextgroup=vimHiAttribList
syn match vimHiCtermFgBg contained "\ccterm[fb]g="he=e-1 nextgroup=vimNumber,vimHiCtermColor,vimFgBgAttrib,vimHiCtermError
syn match vimHiCtermFgBg contained "\ccterm[fb]g="he=e-1 nextgroup=vimHiNmbr,vimHiCtermColor,vimFgBgAttrib,vimHiCtermError
syn match vimHiGui contained "\cgui="he=e-1 nextgroup=vimHiAttribList
syn match vimHiGuiFont contained "\cfont="he=e-1 nextgroup=vimHiFontname
syn match vimHiGuiFgBg contained "\cgui\%([fb]g\|sp\)="he=e-1 nextgroup=vimHiGroup,vimHiGuiFontname,vimHiGuiRgb,vimFgBgAttrib
syn match vimHiTermcap contained "\S\+" contains=vimNotation
syn match vimHiNmbr contained '\d\+'
" Highlight: clear {{{2
syn keyword vimHiClear contained clear nextgroup=vimHiGroup
" Highlight: link {{{2
syn region vimHiLink contained oneline matchgroup=vimCommand start="\<\(def\%[ault]\s\+\)\=link\>\|\<def\>" end="$" contains=vimHiGroup,vimGroup,vimHLGroup,vimNotation
syn region vimHiLink contained oneline matchgroup=vimCommand start="\(\<hi\%[ghlight]\s\+\)\@<=\(\(def\%[ault]\s\+\)\=link\>\|\<def\>\)" end="$" contains=vimHiGroup,vimGroup,vimHLGroup,vimNotation
syn cluster vimFuncBodyList add=vimHiLink
" Control Characters {{{2
@@ -562,7 +564,12 @@ endif
" [-- lua --] {{{3
let s:luapath= fnameescape(expand("<sfile>:p:h")."/lua.vim")
if !filereadable(s:luapath)
let s:luapath= fnameescape(globpath(&rtp,"syntax/lua.vim"))
for s:luapath in split(globpath(&rtp,"syntax/lua.vim"),"\n")
if filereadable(fnameescape(s:luapath))
let s:luapath= fnameescape(s:luapath)
break
endif
endfor
endif
if (g:vimsyn_embed =~ 'l' && has("lua")) && filereadable(s:luapath)
unlet! b:current_syntax
@@ -584,7 +591,12 @@ unlet s:luapath
" [-- perl --] {{{3
let s:perlpath= fnameescape(expand("<sfile>:p:h")."/perl.vim")
if !filereadable(s:perlpath)
let s:perlpath= fnameescape(globpath(&rtp,"syntax/perl.vim"))
for s:perlpath in split(globpath(&rtp,"syntax/perl.vim"),"\n")
if filereadable(fnameescape(s:perlpath))
let s:perlpath= fnameescape(s:perlpath)
break
endif
endfor
endif
if (g:vimsyn_embed =~ 'p' && has("perl")) && filereadable(s:perlpath)
unlet! b:current_syntax
@@ -606,7 +618,12 @@ unlet s:perlpath
" [-- ruby --] {{{3
let s:rubypath= fnameescape(expand("<sfile>:p:h")."/ruby.vim")
if !filereadable(s:rubypath)
let s:rubypath= fnameescape(globpath(&rtp,"syntax/ruby.vim"))
for s:rubypath in split(globpath(&rtp,"syntax/ruby.vim"),"\n")
if filereadable(fnameescape(s:rubypath))
let s:rubypath= fnameescape(s:rubypath)
break
endif
endfor
endif
if (g:vimsyn_embed =~ 'r' && has("ruby")) && filereadable(s:rubypath)
unlet! b:current_syntax
@@ -627,9 +644,14 @@ unlet s:rubypath
" [-- python --] {{{3
let s:pythonpath= fnameescape(expand("<sfile>:p:h")."/python.vim")
if !filereadable(s:pythonpath)
let s:pythonpath= fnameescape(globpath(&rtp,"syntax/python.vim"))
for s:pythonpath in split(globpath(&rtp,"syntax/python.vim"),"\n")
if filereadable(fnameescape(s:pythonpath))
let s:pythonpath= fnameescape(s:pythonpath)
break
endif
endfor
endif
if (g:vimsyn_embed =~ 'P' && has("python")) && filereadable(s:pythonpath)
if g:vimsyn_embed =~ 'P' && (has("python") || has("python3")) && filereadable(s:pythonpath)
unlet! b:current_syntax
exe "syn include @vimPythonScript ".s:pythonpath
if exists("g:vimsyn_folding") && g:vimsyn_folding =~ 'P'
@@ -656,7 +678,12 @@ endif
if s:trytcl
let s:tclpath= fnameescape(expand("<sfile>:p:h")."/tcl.vim")
if !filereadable(s:tclpath)
let s:tclpath= fnameescape(globpath(&rtp,"syntax/tcl.vim"))
for s:tclpath in split(globpath(&rtp,"syntax/tcl.vim"),"\n")
if filereadable(fnameescape(s:tclpath))
let s:tclpath= fnameescape(s:tclpath)
break
endif
endfor
endif
if (g:vimsyn_embed =~ 't' && has("tcl")) && filereadable(s:tclpath)
unlet! b:current_syntax
@@ -683,7 +710,12 @@ unlet s:trytcl
" [-- mzscheme --] {{{3
let s:mzschemepath= fnameescape(expand("<sfile>:p:h")."/scheme.vim")
if !filereadable(s:mzschemepath)
let s:mzschemepath= fnameescape(globpath(&rtp,"syntax/scheme.vim"))
for s:mzschemepath in split(globpath(&rtp,"syntax/mzscheme.vim"),"\n")
if filereadable(fnameescape(s:mzschemepath))
let s:mzschemepath= fnameescape(s:mzschemepath)
break
endif
endfor
endif
if (g:vimsyn_embed =~ 'm' && has("mzscheme")) && filereadable(s:mzschemepath)
unlet! b:current_syntax
@@ -879,6 +911,7 @@ hi def link vimUserCmdError Error
hi def link vimUserFunc Normal
hi def link vimVar Identifier
hi def link vimWarn WarningMsg
hi def link vimHiNmbr Number
" Current Syntax Variable: {{{2
let b:current_syntax = "vim"

View File

@@ -1,8 +1,8 @@
" Vim syntax file
" Language: Yacc
" Maintainer: Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change: Aug 12, 2010
" Version: 9
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change: Nov 14, 2012
" Version: 10
" URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax
"
" Options: {{{1
@@ -20,18 +20,24 @@ endif
" ---------------------------------------------------------------------
" Folding Support {{{1
if has("folding")
com! -nargs=+ HiFold <args> fold
com! -nargs=+ SynFold <args> fold
else
com! -nargs=+ HiFold <args>
com! -nargs=+ SynFold <args>
endif
" ---------------------------------------------------------------------
" Read the C syntax to start with {{{1
if exists("g:yacc_uses_cpp")
syn include @yaccCode <sfile>:p:h/cpp.vim
else
syn include @yaccCode <sfile>:p:h/c.vim
" Read the C/C++ syntax to start with
let s:Cpath= fnameescape(expand("<sfile>:p:h").(exists("g:yacc_uses_cpp")? "/cpp.vim" : "/c.vim"))
if !filereadable(s:Cpath)
for s:Cpath in split(globpath(&rtp,(exists("g:yacc_uses_cpp")? "syntax/cpp.vim" : "syntax/c.vim")),"\n")
if filereadable(fnameescape(s:Cpath))
let s:Cpath= fnameescape(s:Cpath)
break
endif
endfor
endif
exe "syn include @yaccCode ".s:Cpath
" ---------------------------------------------------------------------
" Yacc Clusters: {{{1
@@ -40,12 +46,12 @@ syn cluster yaccRulesCluster contains=yaccNonterminal,yaccString
" ---------------------------------------------------------------------
" Yacc Sections: {{{1
HiFold syn region yaccInit start='.'ms=s-1,rs=s-1 matchgroup=yaccSectionSep end='^%%$'me=e-2,re=e-2 contains=@yaccInitCluster nextgroup=yaccRules skipwhite skipempty contained
HiFold syn region yaccInit2 start='\%^.'ms=s-1,rs=s-1 matchgroup=yaccSectionSep end='^%%$'me=e-2,re=e-2 contains=@yaccInitCluster nextgroup=yaccRules skipwhite skipempty
HiFold syn region yaccHeader2 matchgroup=yaccSep start="^\s*\zs%{" end="^\s*%}" contains=@yaccCode nextgroup=yaccInit skipwhite skipempty contained
HiFold syn region yaccHeader matchgroup=yaccSep start="^\s*\zs%{" end="^\s*%}" contains=@yaccCode nextgroup=yaccInit skipwhite skipempty
HiFold syn region yaccRules matchgroup=yaccSectionSep start='^%%$' end='^%%$'me=e-2,re=e-2 contains=@yaccRulesCluster nextgroup=yaccEndCode skipwhite skipempty contained
HiFold syn region yaccEndCode matchgroup=yaccSectionSep start='^%%$' end='\%$' contains=@yaccCode contained
SynFold syn region yaccInit start='.'ms=s-1,rs=s-1 matchgroup=yaccSectionSep end='^%%$'me=e-2,re=e-2 contains=@yaccInitCluster nextgroup=yaccRules skipwhite skipempty contained
SynFold syn region yaccInit2 start='\%^.'ms=s-1,rs=s-1 matchgroup=yaccSectionSep end='^%%$'me=e-2,re=e-2 contains=@yaccInitCluster nextgroup=yaccRules skipwhite skipempty
SynFold syn region yaccHeader2 matchgroup=yaccSep start="^\s*\zs%{" end="^\s*%}" contains=@yaccCode nextgroup=yaccInit skipwhite skipempty contained
SynFold syn region yaccHeader matchgroup=yaccSep start="^\s*\zs%{" end="^\s*%}" contains=@yaccCode nextgroup=yaccInit skipwhite skipempty
SynFold syn region yaccRules matchgroup=yaccSectionSep start='^%%$' end='^%%$'me=e-2,re=e-2 contains=@yaccRulesCluster nextgroup=yaccEndCode skipwhite skipempty contained
SynFold syn region yaccEndCode matchgroup=yaccSectionSep start='^%%$' end='\%$' contains=@yaccCode contained
" ---------------------------------------------------------------------
" Yacc Commands: {{{1
@@ -63,11 +69,11 @@ syn match yaccKey "\$\(<[a-zA-Z_][a-zA-Z_0-9]*>\)\=[\$0-9]\+" contained
syn keyword yaccKeyActn yyerrok yyclearin contained
syn match yaccUnionStart "^%union" skipwhite skipnl nextgroup=yaccUnion contained
HiFold syn region yaccUnion matchgroup=yaccCurly start="{" matchgroup=yaccCurly end="}" contains=@yaccCode contained
SynFold syn region yaccUnion matchgroup=yaccCurly start="{" matchgroup=yaccCurly end="}" contains=@yaccCode contained
syn match yaccBrkt "[<>]" contained
syn match yaccType "<[a-zA-Z_][a-zA-Z0-9_]*>" contains=yaccBrkt contained
HiFold syn region yaccNonterminal start="^\s*\a\w*\ze\_s*\(/\*\_.\{-}\*/\)\=\_s*:" matchgroup=yaccDelim end=";" matchgroup=yaccSectionSep end='^%%$'me=e-2,re=e-2 contains=yaccAction,yaccDelim,yaccString,yaccComment contained
SynFold syn region yaccNonterminal start="^\s*\a\w*\ze\_s*\(/\*\_.\{-}\*/\)\=\_s*:" matchgroup=yaccDelim end=";" matchgroup=yaccSectionSep end='^%%$'me=e-2,re=e-2 contains=yaccAction,yaccDelim,yaccString,yaccComment contained
syn region yaccComment start="/\*" end="\*/"
syn match yaccString "'[^']*'" contained
@@ -75,7 +81,8 @@ syn match yaccString "'[^']*'" contained
" ---------------------------------------------------------------------
" I'd really like to highlight just the outer {}. Any suggestions??? {{{1
syn match yaccCurlyError "[{}]"
HiFold syn region yaccAction matchgroup=yaccCurly start="{" end="}" contains=@yaccCode contained
SynFold syn region yaccAction matchgroup=yaccCurly start="{" end="}" contains=@yaccCode,yaccVar contained
syn match yaccVar '\$\d\+\|\$\$\|\$<\I\i*>\$\|\$<\I\i*>\d\+' containedin=cParen,cPreProc,cMulti contained
" ---------------------------------------------------------------------
" Yacc synchronization: {{{1
@@ -84,39 +91,30 @@ syn sync fromstart
" ---------------------------------------------------------------------
" Define the default highlighting. {{{1
if !exists("did_yacc_syn_inits")
command -nargs=+ HiLink hi def link <args>
" Internal yacc highlighting links {{{2
HiLink yaccBrkt yaccStmt
HiLink yaccKey yaccStmt
HiLink yaccOper yaccStmt
HiLink yaccUnionStart yaccKey
" External yacc highlighting links {{{2
HiLink yaccComment Comment
HiLink yaccCurly Delimiter
HiLink yaccCurlyError Error
HiLink yaccDefines cDefine
HiLink yaccParseParam yaccParseOption
HiLink yaccParseOption cDefine
HiLink yaccNonterminal Function
HiLink yaccDelim Delimiter
HiLink yaccKeyActn Special
HiLink yaccSectionSep Todo
HiLink yaccSep Delimiter
HiLink yaccString String
HiLink yaccStmt Statement
HiLink yaccType Type
" since Bram doesn't like my Delimiter :| {{{2
HiLink Delimiter Type
delcommand HiLink
hi def link yaccBrkt yaccStmt
hi def link yaccComment Comment
hi def link yaccCurly Delimiter
hi def link yaccCurlyError Error
hi def link yaccDefines cDefine
hi def link yaccDelim Delimiter
hi def link yaccKeyActn Special
hi def link yaccKey yaccStmt
hi def link yaccNonterminal Function
hi def link yaccOper yaccStmt
hi def link yaccParseOption cDefine
hi def link yaccParseParam yaccParseOption
hi def link yaccSectionSep Todo
hi def link yaccSep Delimiter
hi def link yaccStmt Statement
hi def link yaccString String
hi def link yaccType Type
hi def link yaccUnionStart yaccKey
hi def link yaccVar Special
endif
" ---------------------------------------------------------------------
" Cleanup: {{{1
delcommand HiFold
delcommand SynFold
let b:current_syntax = "yacc"
" ---------------------------------------------------------------------

View File

@@ -126,8 +126,8 @@ NOTE:
3. <20>ƥ<EFBFBD><C6A5><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>ɲä<C9B2><C3A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>顢 <ESC> <20>򲡤<EFBFBD><F2B2A1A4>ƥΡ<C6A5><CEA1>ޥ<EFBFBD><DEA5><EFBFBD>ɤ<EFBFBD><C9A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><E7A4A6>
4. 2<><32><EFBFBD>ܤ<EFBFBD> ---> <20>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD>줿<EFBFBD><ECA4BF><EFBFBD><EFBFBD><EFBFBD>ذ<EFBFBD>ư<EFBFBD><C6B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƥå<C6A5> 2 <20><><EFBFBD><EFBFBD> 3 <20><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><EFBFBD><EFBFBD>ʸˡ<EFBFBD><EFBFBD>
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><E7A4A6>
4. 2<><32><EFBFBD>ܤ<EFBFBD> ---> <20>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD>줿<EFBFBD><ECA4BF><EFBFBD><EFBFBD><EFBFBD>ذ<EFBFBD>ư<EFBFBD><C6B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƥå<C6A5> 2 <20><><EFBFBD><EFBFBD> 3 <20>򷫤<EFBFBD><EFBFBD>֤<EFBFBD><EFBFBD><EFBFBD>ʸˡ
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
---> <20><><EFBFBD><EFBFBD><EFBFBD>ˤϴְ<CFB4><D6B0>ä<EFBFBD><C3A4>ƥ<EFBFBD><C6A5><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4><EFBFBD><EFBFBD><EFBFBD>
<20><><EFBFBD><EFBFBD><EFBFBD>ˤϴְ<CFB4><D6B0>ä<EFBFBD><C3A4>ƥ<EFBFBD><C6A5><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
@@ -215,7 +215,7 @@ NOTE: <ESC>
2. <20>ʲ<EFBFBD><CAB2><EFBFBD> ---> <20>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD>줿<EFBFBD>Ԥ˥<D4A4><CBA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ư<EFBFBD><C6B0><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><E7A4A6>
3. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʸ<EFBFBD><CAB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>إ<EFBFBD><D8A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ư<EFBFBD><C6B0><EFBFBD>ޤ<EFBFBD><DEA4>礦(<28>ǽ<EFBFBD><C7BD><EFBFBD> . <20>θ<EFBFBD><CEB8>Ǥ<EFBFBD>)<29><>
3. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʸ<EFBFBD><CAB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>إ<EFBFBD><D8A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ư<EFBFBD><C6B0><EFBFBD>ޤ<EFBFBD><DEA4>礦(<28>ǽ<EFBFBD><C7BD><EFBFBD> <EFBFBD><EFBFBD> <20>θ<EFBFBD><CEB8>Ǥ<EFBFBD>)<29><>
4. <20><><EFBFBD><EFBFBD><EFBFBD>ޤǺ<DEA4><C7BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Τ<EFBFBD> d$ <20>ȥ<EFBFBD><C8A5><EFBFBD><EFBFBD>פ<EFBFBD><D7A4>ޤ<EFBFBD><DEA4><EFBFBD><E7A4A6>
@@ -265,7 +265,7 @@ NOTE:
4. 0 (<28><><EFBFBD><EFBFBD>)<29>򥿥<EFBFBD><F2A5BFA5>פ<EFBFBD><D7A4>ƹ<EFBFBD>Ƭ<EFBFBD>˰<EFBFBD>ư<EFBFBD><C6B0><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
5. <20><><EFBFBD>ƥå<C6A5> 2 <20><> 3 <20><><EFBFBD><EFBFBD><E3A4A6><EFBFBD>ͤȻȤäƷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
5. <20><><EFBFBD>ƥå<C6A5> 2 <20><> 3 <20><><EFBFBD><EFBFBD><E3A4A6><EFBFBD>ͤ<EFBFBD><EFBFBD>ȤäƷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
---> This is just a line with words you can move around in.
@@ -541,7 +541,7 @@ Note:
4. <20>ǽ<EFBFBD><C7BD>γ<EFBFBD><CEB3>̤˰<CCA4>ư<EFBFBD><C6B0><EFBFBD><EFBFBD><EFBFBD>ˤ<EFBFBD> % <20>ȥ<EFBFBD><C8A5><EFBFBD><EFBFBD>פ<EFBFBD><D7A4>ޤ<EFBFBD><DEA4><EFBFBD><E7A4A6>
5. ¾<><C2BE> (,),[,],{ or } <20>ǥ<EFBFBD><C7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ư<EFBFBD><C6B0><EFBFBD><EFBFBD>% <20><><EFBFBD><EFBFBD><EFBFBD>򤷤Ƥ<F2A4B7A4><C6A4><EFBFBD><EBA4AB>ǧ<EFBFBD><C7A7><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><E7A4A6>
5. ¾<><C2BE> (,),[,],{ <EFBFBD><EFBFBD> } <20>ǥ<EFBFBD><C7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ư<EFBFBD><C6B0><EFBFBD><EFBFBD>% <20><><EFBFBD><EFBFBD><EFBFBD>򤷤Ƥ<F2A4B7A4><C6A4><EFBFBD><EBA4AB>ǧ<EFBFBD><C7A7><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><E7A4A6>
---> This ( is a test line with ('s, ['s ] and {'s } in it. ))
@@ -655,7 +655,7 @@ Note:
3. ʸ<><CAB8> : <20>򲡤<EFBFBD><F2B2A1A4>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>̤κDz<CEBA><C7B2><EFBFBD><EFBFBD><EFBFBD> :'<,'> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
4. w TEST (TESET <20><>¸<EFBFBD>ߤ<EFBFBD><DFA4>ʤ<EFBFBD><CAA4>ե<EFBFBD><D5A5><EFBFBD><EFBFBD><EFBFBD>̾)<29>򥿥<EFBFBD><F2A5BFA5>פ<EFBFBD><D7A4>ޤ<EFBFBD><DEA4><EFBFBD>
4. w TEST (TEST <20><>¸<EFBFBD>ߤ<EFBFBD><DFA4>ʤ<EFBFBD><CAA4>ե<EFBFBD><D5A5><EFBFBD><EFBFBD><EFBFBD>̾)<29>򥿥<EFBFBD><F2A5BFA5>פ<EFBFBD><D7A4>ޤ<EFBFBD><DEA4><EFBFBD>
Enter <20>򲡤<EFBFBD><F2B2A1A4><EFBFBD><EFBFBD><EFBFBD> :'<,'>w TEST <20>ȤʤäƤ<C3A4><C6A4><EFBFBD>Ȥ<EFBFBD><C8A4><EFBFBD>ǧ<EFBFBD><C7A7><EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
5. Vim <20><> TEST <20>Ȥ<EFBFBD><C8A4><EFBFBD><EFBFBD>ե<EFBFBD><D5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>򤵤줿<F2A4B5A4>Ԥ<EFBFBD><D4A4>񤭹<EFBFBD><F1A4ADB9><EFBFBD><EFBFBD>Ǥ<EFBFBD><C7A4><EFBFBD><E7A4A6>
@@ -747,7 +747,7 @@ NOTE:
3. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>θ<EFBFBD><CEB8><EFBFBD><EFBFBD>˥ƥ<CBA5><C6A5><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>ɲä<C9B2><C3A4>뤿<EFBFBD><EBA4BF><EFBFBD><EFBFBD> a (<28><>ʸ<EFBFBD><CAB8>) <20>򥿥<EFBFBD><F2A5BFA5>פ<EFBFBD><D7A4>ޤ<EFBFBD><DEA4><EFBFBD>
4. <20><><EFBFBD>β<EFBFBD><CEB2>ιԤΤΤ<EFBFBD><EFBFBD>ñ<EFBFBD><EFBFBD><EFBFBD>˴<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɤ<EFBFBD>ȴ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>٤<EFBFBD> <ESC> <20>˲<EFBFBD>
4. <20><><EFBFBD>β<EFBFBD><CEB2>ιԤΤ<CEA4><E8A4A6>ñ<EFBFBD><C3B1><EFBFBD>˴<EFBFBD><CBB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɤ<EFBFBD>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD>٤<EFBFBD> <ESC> <20><EFBFBD><EFBFBD><EFBFBD>
<20><><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
5. e <20><><EFBFBD>ȤäƼ<C3A4><C6BC><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD>ذ<EFBFBD>ư<EFBFBD><C6B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƥå<C6A5> 3 <20><> 4 <20>򷫤<EFBFBD><F2B7ABA4>֤<EFBFBD><D6A4>ޤ<EFBFBD><DEA4><EFBFBD>
@@ -772,7 +772,7 @@ Note: a, i
3. <20>ִ<EFBFBD><D6B4><EFBFBD>ɤ<EFBFBD>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD>ˤ<EFBFBD> <ESC> <20>򲡤<EFBFBD><F2B2A1A4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>ԤλĤ꤬<C4A4>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƥ<EFBFBD><C6A4>ʤ<EFBFBD><CAA4>ޤޤ<DEA4>
<20>ʤ뤳<CAA4>Ȥ<EFBFBD><C8A4><EFBFBD><EFBFBD>դ<EFBFBD><D5A4>Ƥ<EFBFBD><C6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
5. <20>Ĥä<C4A4> xxx <20>򥹥ƥåפ򷫤<D7A4><F2B7ABA4>֤<EFBFBD><D6A4><EFBFBD><EFBFBD>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><E7A4A6>
4. <20>Ĥä<C4A4> xxx <20>򥹥ƥåפ򷫤<D7A4><F2B7ABA4>֤<EFBFBD><D6A4><EFBFBD><EFBFBD>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><E7A4A6>
---> Adding 123 to xxx gives you xxx.
---> Adding 123 to 456 gives you 579.
@@ -869,16 +869,16 @@ Note: 1
":help" <20><><EFBFBD>ޥ<EFBFBD><DEA5>ɤ˰<C9A4><CBB0><EFBFBD><EFBFBD><EFBFBD>Ϳ<EFBFBD><CDBF><EFBFBD><EFBFBD>Ȥˤ<C8A4><CBA4><EFBFBD><EAA1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̾<EFBFBD>Υإ<CEA5><D8A5>פ򸫤Ĥ<F2B8ABA4><C4A4><EFBFBD><EBA4B3>
<20><><EFBFBD>Ǥ<EFBFBD><C7A4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƥߤޤ<DFA4><DEA4>礦(<ENTER> <20>򥿥<EFBFBD><F2A5BFA5>פ<EFBFBD>˺<EFBFBD><CBBA><EFBFBD>ʤ<EFBFBD><CAA4><EFBFBD><E8A4A6>):
:help w
:help c_<T
:help insert-index
:help user-manual
:help w
:help c_CTRL-D
:help insert-index
:help user-manual
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<20><><EFBFBD>å<EFBFBD><C3A5><EFBFBD> 7.2: <20><>ư<EFBFBD><C6B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץȤκ<C8A4><CEBA><EFBFBD>
** Vim <20><><EFBFBD><EFBFBD>ħ<EFBFBD><C4A7>ȯ<EFBFBD><C8AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD> **
Vim <20>ˤ<EFBFBD> Vi <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¿<EFBFBD><C2BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ħ<EFBFBD><C4A7>Ƨ<EFBFBD>ޤ<EFBFBD><DEA4>Ƥ<EFBFBD><C6A4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ΤۤȤ<DBA4><C8A4>ɤϽ<C9A4><CFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤ˤ<D6A4>
Vim <20>ˤ<EFBFBD> Vi <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¿<EFBFBD><C2BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ħ<EFBFBD><C4A7>Ƨ<EFBFBD>ޤ<EFBFBD><DEA4>Ƥ<EFBFBD><C6A4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ΤۤȤ<EFBFBD><EFBFBD>ɤϽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤ˤ<EFBFBD>
<20><><EFBFBD><EFBFBD><EFBFBD>ԲĤȤʤäƤ<C3A4><C6A4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¿<EFBFBD><C2BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ħ<EFBFBD><C4A7><EFBFBD>Ȥ<EFBFBD><C8A4>Ϥ<EFBFBD><CFA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˤ<EFBFBD> "vimrc" <20>ե<EFBFBD><D5A5><EFBFBD><EFBFBD><EFBFBD>
<20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
@@ -947,7 +947,7 @@ NOTE:
<20><><EFBFBD><EFBFBD><EFBFBD>ˤ<EFBFBD> Vim <20>Υ<EFBFBD><CEA5><EFBFBD>ȥꥢ<C8A5><EAA5A2><EFBFBD>򽪤<EFBFBD><F2BDAAA4><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǥ<EFBFBD><C7A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD>ˡ<EFBFBD><CBA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⽼ʬ<E2BDBC><CAAC>
<20>Ȥ<EFBFBD><C8A4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>Ǥ<EFBFBD><C7A4><EFBFBD><EFBFBD><EFBFBD>ˤȡ<CBA4>Vim <20>λ<EFBFBD><CEBB>ij<EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Τߤ<CEA4><DFA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD>
Vim <20>ˤϤ<CBA4><CFA4><EFBFBD><EFBFBD><EFBFBD>¿<EFBFBD><C2BF><EFBFBD>Υ<EFBFBD><CEA5>ޥ<EFBFBD><DEA5>ɤ<EFBFBD><C9A4><EFBFBD><EFBFBD><EFBFBD><EAA1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƥ<EFBFBD><C6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȤϤǤ<CFA4><C7A4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD>
<20>ʹߤϥ桼<CFA5><E6A1BC><EFBFBD>ޥ˥奢<CBA5><E5A5A2><EFBFBD>򻲾Ȥ<F2BBB2BE><C8A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: "help :user-manual"
<20>ʹߤϥ桼<CFA5><E6A1BC><EFBFBD>ޥ˥奢<CBA5><E5A5A2><EFBFBD>򻲾Ȥ<F2BBB2BE><C8A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: ":help user-manual"
<20><><EFBFBD><EFBFBD><EFBFBD>ʸ<EFBFBD><CAB8>γؽ<CEB3><D8BD>Τ<EFBFBD><CEA4><EFBFBD><EFBFBD>ˡ<EFBFBD><CBA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܤ<EFBFBD><DCA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
Vim - Vi Improved - by Steve Oualline

View File

@@ -126,8 +126,8 @@ NOTE:
3. <20>e<EFBFBD>L<EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>lj<EFBFBD><C789><EFBFBD><EFBFBD>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A <ESC> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ăm<C483>[<5B>}<7D><><EFBFBD><EFBFBD><EFBFBD>[<5B>h<EFBFBD>ɖ߂<C996><DF82>܂<EFBFBD><DC82><EFBFBD>B
4. 2<>s<EFBFBD>ڂ<EFBFBD> ---> <20>Ǝ<EFBFBD><C68E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֈړ<D688><DA93><EFBFBD><EFBFBD>A<EFBFBD>X<EFBFBD>e<EFBFBD>b<EFBFBD>v 2 <20><><EFBFBD><EFBFBD> 3 <20>J<EFBFBD><4A><EFBFBD>Ԃ<EFBFBD><D482>ĕ<EFBFBD><C495>@<EFBFBD><EFBFBD>
<20>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD>B
4. 2<>s<EFBFBD>ڂ<EFBFBD> ---> <20>Ǝ<EFBFBD><C68E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֈړ<D688><DA93><EFBFBD><EFBFBD>A<EFBFBD>X<EFBFBD>e<EFBFBD>b<EFBFBD>v 2 <20><><EFBFBD><EFBFBD> 3 <20><EFBFBD><EFBFBD>J<EFBFBD><EFBFBD><EFBFBD>Ԃ<EFBFBD><EFBFBD>ĕ<EFBFBD><EFBFBD>@
<20><EFBFBD><EFBFBD>C<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><EFBFBD><EFBFBD>B
---> <20><><EFBFBD><EFBFBD><EFBFBD>ɂ͊Ԉ<CD8A><D488><EFBFBD><EFBFBD><EFBFBD><EFBFBD>e<EFBFBD>L<EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<20><><EFBFBD><EFBFBD><EFBFBD>ɂ͊Ԉ<CD8A><D488><EFBFBD><EFBFBD><EFBFBD><EFBFBD>e<EFBFBD>L<EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
@@ -215,7 +215,7 @@ NOTE: <ESC>
2. <20>ȉ<EFBFBD><C889><EFBFBD> ---> <20>Ǝ<EFBFBD><C68E><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>ɃJ<C983>[<5B>\<5C><><EFBFBD><EFBFBD><EFBFBD>ړ<EFBFBD><DA93><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD>B
3. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̖<EFBFBD><CC96><EFBFBD><EFBFBD>փJ<D683>[<5B>\<5C><><EFBFBD><EFBFBD><EFBFBD>ړ<EFBFBD><DA93><EFBFBD><EFBFBD>܂<EFBFBD><DC82>傤(<28>ŏ<EFBFBD><C58F><EFBFBD> . <20>̌<EFBFBD><CC8C>ł<EFBFBD>)<29>B
3. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̖<EFBFBD><CC96><EFBFBD><EFBFBD>փJ<D683>[<5B>\<5C><><EFBFBD><EFBFBD><EFBFBD>ړ<EFBFBD><DA93><EFBFBD><EFBFBD>܂<EFBFBD><DC82>傤(<28>ŏ<EFBFBD><C58F><EFBFBD> <EFBFBD>B <20>̌<EFBFBD><CC8C>ł<EFBFBD>)<29>B
4. <20>s<EFBFBD><73><EFBFBD>܂ō폜<C58D><ED8F9C><EFBFBD><EFBFBD><EFBFBD>̂<EFBFBD> d$ <20>ƃ^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>܂<EFBFBD><DC82><EFBFBD>B
@@ -265,7 +265,7 @@ NOTE:
4. 0 (<28>[<5B><>)<29><><EFBFBD>^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>čs<C48D><73><EFBFBD>Ɉړ<C988><DA93><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
5. <20>X<EFBFBD>e<EFBFBD>b<EFBFBD>v 2 <20><> 3 <20><><EFBFBD><EFBFBD><E182A4><EFBFBD>l<EFBFBD>Ǝg<EFBFBD><EFBFBD><EFBFBD>ČJ<EFBFBD><EFBFBD><EFBFBD>Ԃ<EFBFBD><EFBFBD>܂<EFBFBD><EFBFBD>B
5. <20>X<EFBFBD>e<EFBFBD>b<EFBFBD>v 2 <20><> 3 <20><><EFBFBD><EFBFBD><E182A4><EFBFBD>l<EFBFBD><EFBFBD><EFBFBD>g<EFBFBD><EFBFBD><EFBFBD>ČJ<EFBFBD><EFBFBD><EFBFBD>Ԃ<EFBFBD><EFBFBD>܂<EFBFBD><EFBFBD>B
---> This is just a line with words you can move around in.
@@ -541,7 +541,7 @@ Note:
4. <20>ŏ<EFBFBD><C58F>̊<EFBFBD><CC8A>ʂɈړ<C988><DA93><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD> % <20>ƃ^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>܂<EFBFBD><DC82><EFBFBD>B
5. <20><><EFBFBD><EFBFBD> (,),[,],{ or } <20>ŃJ<C583>[<5B>\<5C><><EFBFBD><EFBFBD><EFBFBD>ړ<EFBFBD><DA93><EFBFBD><EFBFBD>A% <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>m<EFBFBD>F<EFBFBD><46><EFBFBD>܂<EFBFBD><DC82><EFBFBD>B
5. <20><><EFBFBD><EFBFBD> (,),[,],{ <EFBFBD><EFBFBD> } <20>ŃJ<C583>[<5B>\<5C><><EFBFBD><EFBFBD><EFBFBD>ړ<EFBFBD><DA93><EFBFBD><EFBFBD>A% <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>m<EFBFBD>F<EFBFBD><46><EFBFBD>܂<EFBFBD><DC82><EFBFBD>B
---> This ( is a test line with ('s, ['s ] and {'s } in it. ))
@@ -655,7 +655,7 @@ Note:
3. <20><><EFBFBD><EFBFBD> : <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƁA<C681><41><EFBFBD>ʂ̍ʼn<CC8D><C589><EFBFBD><EFBFBD><EFBFBD> :'<,'> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
4. w TEST (TESET <20>͑<EFBFBD><CD91>݂<EFBFBD><DD82>Ȃ<EFBFBD><C882>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD>)<29><><EFBFBD>^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>܂<EFBFBD><DC82>B
4. w TEST (TEST <20>͑<EFBFBD><CD91>݂<EFBFBD><DD82>Ȃ<EFBFBD><C882>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD>)<29><><EFBFBD>^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>܂<EFBFBD><DC82>B
Enter <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>O<EFBFBD><4F> :'<,'>w TEST <20>ƂȂ<C682><C882>Ă<EFBFBD><C482><EFBFBD>Ƃ<EFBFBD><C682>m<EFBFBD>F<EFBFBD><46><EFBFBD>ĉ<EFBFBD><C489><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B
5. Vim <20><> TEST <20>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>ɑI<C991><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ނł<DE82><C582><EFBFBD>B
@@ -747,7 +747,7 @@ NOTE:
3. <20>J<EFBFBD>[<5B>\<5C><><EFBFBD>̌<EFBFBD><CC8C><EFBFBD><EFBFBD>Ƀe<C983>L<EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>lj<EFBFBD><C789><EFBFBD><EFBFBD><EFBFBD>߂<EFBFBD> a (<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) <20><><EFBFBD>^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>܂<EFBFBD><DC82>B
4. <20><><EFBFBD>̉<EFBFBD><CC89>̍s<CC8D>̂̂<EFBFBD>ȒP<EFBFBD><EFBFBD><EFBFBD>Ɋ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><EFBFBD>B<EFBFBD>}<7D><><EFBFBD><EFBFBD><EFBFBD>[<5B>h<EFBFBD>𔲂<EFBFBD><F094B282><EFBFBD><EFBFBD>ׂ<EFBFBD> <ESC> <20>ɉ<EFBFBD>
4. <20><><EFBFBD>̉<EFBFBD><CC89>̍s<CC8D>̂悤<CC82>ȒP<C892><50><EFBFBD>Ɋ<EFBFBD><C98A><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B<EFBFBD>}<7D><><EFBFBD><EFBFBD><EFBFBD>[<5B>h<EFBFBD>𔲂<EFBFBD><F094B282><EFBFBD><EFBFBD>ׂ<EFBFBD> <ESC> <20><EFBFBD><EFBFBD><EFBFBD>
<20><><EFBFBD>܂<EFBFBD><DC82>B
5. e <20><><EFBFBD>g<EFBFBD><67><EFBFBD>Ď<EFBFBD><C48E>̕s<CC95><73><EFBFBD>S<EFBFBD>ȒP<C892><50><EFBFBD>ֈړ<D688><DA93><EFBFBD><EFBFBD>A<EFBFBD>X<EFBFBD>e<EFBFBD>b<EFBFBD>v 3 <20><> 4 <20><><EFBFBD>J<EFBFBD><4A><EFBFBD>Ԃ<EFBFBD><D482>܂<EFBFBD><DC82>B
@@ -772,7 +772,7 @@ Note: a, i
3. <20>u<EFBFBD><75><EFBFBD><EFBFBD><EFBFBD>[<5B>h<EFBFBD>𔲂<EFBFBD><F094B282><EFBFBD><EFBFBD>ɂ<EFBFBD> <ESC> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B<EFBFBD>s<EFBFBD>̎c<CC8E><EFBFBD>ύX<CF8D><58><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482>Ȃ<EFBFBD><C882>܂܂<DC82>
<20>Ȃ邱<C882>Ƃɒ<C682><C992>ӂ<EFBFBD><D382>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B
5. <20>c<EFBFBD><63><EFBFBD><EFBFBD> xxx <20><><EFBFBD>X<EFBFBD>e<EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD>J<EFBFBD><4A><EFBFBD>Ԃ<EFBFBD><D482>Ēu<C492><75><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD>B
4. <20>c<EFBFBD><63><EFBFBD><EFBFBD> xxx <20><><EFBFBD>X<EFBFBD>e<EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD>J<EFBFBD><4A><EFBFBD>Ԃ<EFBFBD><D482>Ēu<C492><75><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD>B
---> Adding 123 to xxx gives you xxx.
---> Adding 123 to 456 gives you 579.
@@ -869,16 +869,16 @@ Note: 1
":help" <20>R<EFBFBD>}<7D><><EFBFBD>h<EFBFBD>Ɉ<EFBFBD><C988><EFBFBD><EFBFBD><EFBFBD><EFBFBD>^<5E><><EFBFBD><EFBFBD>Ƃɂ<C682><C982><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̃w<CC83><77><EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD>‚<EFBFBD><C282><EFBFBD><E982B1>
<20><><EFBFBD>ł<EFBFBD><C582>܂<EFBFBD><DC82>B<EFBFBD><42><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă݂܂<DD82><DC82>傤(<ENTER> <20><><EFBFBD>^<5E>C<EFBFBD>v<EFBFBD><76><EFBFBD>Y<EFBFBD><59><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><E682A4>):
:help w
:help c_<T
:help insert-index
:help user-manual
:help w
:help c_CTRL-D
:help insert-index
:help user-manual
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<20><><EFBFBD>b<EFBFBD>X<EFBFBD><58> 7.2: <20>N<EFBFBD><4E><EFBFBD>X<EFBFBD>N<EFBFBD><4E><EFBFBD>v<EFBFBD>g<EFBFBD>̍쐬
** Vim <20>̓<EFBFBD><CC93><EFBFBD><EFBFBD>𔭊<EFBFBD><F094AD8A><EFBFBD><EFBFBD><EFBFBD> **
Vim <20>ɂ<EFBFBD> Vi <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̓<EFBFBD><CC93><EFBFBD><EFBFBD>𓥂܂<F093A582><DC82>Ă<EFBFBD><C482>܂<EFBFBD><DC82>A<EFBFBD><41><EFBFBD>̂قƂ<D982><C682>ǂ͏<C782><CD8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԃɂ<D482>
Vim <20>ɂ<EFBFBD> Vi <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̓<EFBFBD><CC93><EFBFBD><EFBFBD>𓥂܂<F093A582><DC82>Ă<EFBFBD><C482>܂<EFBFBD><DC82><EFBFBD><EFBFBD>A<EFBFBD><EFBFBD><EFBFBD>̂قƂ<EFBFBD><EFBFBD>ǂ͏<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԃɂ<EFBFBD>
<20>g<EFBFBD>p<EFBFBD>s<EFBFBD>‚ƂȂ<C682><C882>Ă<EFBFBD><C482>܂<EFBFBD><DC82>B<EFBFBD><42><EFBFBD><EFBFBD><E891BD><EFBFBD>̓<EFBFBD><CC93><EFBFBD><EFBFBD><EFBFBD><EFBFBD>g<EFBFBD><67><EFBFBD>͂<EFBFBD><CD82>߂<EFBFBD><DF82>ɂ<EFBFBD> "vimrc" <20>t<EFBFBD>@<40>C<EFBFBD><43>
<20><><EFBFBD><EFBFBD><EC90AC><EFBFBD>܂<EFBFBD><DC82>B
@@ -947,7 +947,7 @@ NOTE:
<20><><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD> Vim <20>̃`<60><><EFBFBD>[<5B>g<EFBFBD><67><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B<EFBFBD>G<EFBFBD>f<EFBFBD>B<EFBFBD>^<5E><><EFBFBD>ȒP<C892>ɁA<C981><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[<5B><><EFBFBD><EFBFBD>
<20>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682>ł<EFBFBD><C582><EFBFBD><EFBFBD><EFBFBD>ɂƁAVim <20>̎<EFBFBD><CC8E>ŠT<C28A>O<EFBFBD>̗v<CC97>_<EFBFBD>݂̂<CC82><DD82>`<60><><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B
Vim <20>ɂ͂<C982><CD82><EFBFBD><EFBFBD>ɑ<EFBFBD><C991><EFBFBD><EFBFBD>̃R<CC83>}<7D><><EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>őS<C591>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƃ͂ł<CD82><C582>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B
<20>ȍ~<7E>̓<EFBFBD><CD83>[<5B>U<EFBFBD>}<7D>j<EFBFBD><6A><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>Q<EFBFBD>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: "help :user-manual"
<20>ȍ~<7E>̓<EFBFBD><CD83>[<5B>U<EFBFBD>}<7D>j<EFBFBD><6A><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>Q<EFBFBD>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: ":help user-manual"
<20><><EFBFBD><EFBFBD><EFBFBD>Ȍ<EFBFBD><C88C>̊w<CC8A>K<EFBFBD>̂<EFBFBD><CC82>߂ɁA<C981><41><EFBFBD>̖{<7B>𐄑E<F0908491><45><EFBFBD>܂<EFBFBD><DC82>B
Vim - Vi Improved - by Steve Oualline

View File

@@ -126,8 +126,8 @@ NOTE: 全てのレッスンを通じて、覚えようとするのではなく
3. テキストを追加し終えたら、 <ESC> を押してノーマルモードに戻りましょう。
4. 2行目の ---> と示された場所へ移動し、ステップ 2 から 3 繰り返して文法
修正しましょう。
4. 2行目の ---> と示された場所へ移動し、ステップ 2 から 3 繰り返して文法
修正しましょう。
---> ここには間違ったテキストがあり
ここには間違ったテキストがあります。
@@ -215,7 +215,7 @@ NOTE: <ESC> キーを押すとノーマルモードに移行します。その
2. 以下の ---> と示された行にカーソルを移動しましょう。
3. 正しい文の末尾へカーソルを移動しましょう(最初の . の後です)。
3. 正しい文の末尾へカーソルを移動しましょう(最初の の後です)。
4. 行末まで削除するのに d$ とタイプしましょう。
@@ -265,7 +265,7 @@ NOTE: 冒険したい人は、ノーマルモードにてコマンドなしに
4. 0 (ゼロ)をタイプして行頭に移動します。
5. ステップ 2 と 3 を違う数値使って繰り返します。
5. ステップ 2 と 3 を違う数値使って繰り返します。
---> This is just a line with words you can move around in.
@@ -541,7 +541,7 @@ Note: 検索がファイルの終わりに達すると、オプション 'wrapsc
4. 最初の括弧に移動するには % とタイプしましょう。
5. 他の (,),[,],{ or } でカーソルを移動し、% が何をしているか確認しましょう。
5. 他の (,),[,],{ } でカーソルを移動し、% が何をしているか確認しましょう。
---> This ( is a test line with ('s, ['s ] and {'s } in it. ))
@@ -655,7 +655,7 @@ Note: ここで Vim を終了し、ファイル名 TEST と共に起動すると
3. 文字 : を押すと、画面の最下部に :'<,'> が現れます。
4. w TEST (TESET は存在しないファイル名)をタイプします。
4. w TEST (TEST は存在しないファイル名)をタイプします。
Enter を押す前に :'<,'>w TEST となっていることを確認して下さい。
5. Vim は TEST というファイルに選択された行を書き込むでしょう。
@@ -747,7 +747,7 @@ NOTE: 外部コマンドの出力を読み込むことも出来ます。例え
3. カーソルの後ろにテキストを追加するために a (小文字) をタイプします。
4. その下の行のような単語に完成させます。挿入モードを抜ける為に <ESC>
4. その下の行のような単語に完成させます。挿入モードを抜ける為に <ESC>
します。
5. e を使って次の不完全な単語へ移動し、ステップ 3 と 4 を繰り返します。
@@ -772,7 +772,7 @@ Note: a, i と A は同じ挿入モードへ移りますが、文字が挿入さ
3. 置換モードを抜けるには <ESC> を押します。行の残りが変更されていないままに
なることに注意してください。
5. 残った xxx をステップを繰り返して置換しましょう。
4. 残った xxx をステップを繰り返して置換しましょう。
---> Adding 123 to xxx gives you xxx.
---> Adding 123 to 456 gives you 579.
@@ -869,16 +869,16 @@ Note: 1つの検索コマンドだけ大文字小文字の区別をやめたい
":help" コマンドに引数を与えることにより、あらゆる題名のヘルプを見つけること
ができます。これらを試してみましょう(<ENTER> をタイプし忘れないように):
:help w
:help c_<T
:help insert-index
:help user-manual
:help w
:help c_CTRL-D
:help insert-index
:help user-manual
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
レッスン 7.2: 起動スクリプトの作成
** Vim の特徴を発揮する **
Vim には Vi よりも多くの特徴を踏まえていまが、そのほとんどは初期状態にて
Vim には Vi よりも多くの特徴を踏まえていまが、そのほとんどは初期状態にて
使用不可となっています。より多くの特徴を使いはじめるには "vimrc" ファイル
を作成します。
@@ -947,7 +947,7 @@ NOTE: 補完は多くのコマンドで動作します。そして CTRL-D と <T
これにて Vim のチュートリアルを終わります。エディタを簡単に、しかも充分に
使うことができるようにと、Vim の持つ概念の要点のみを伝えようとしました。
Vim にはさらに多くのコマンドがあり、ここで全てを説明することはできません。
以降はユーザマニュアルを参照ください: "help :user-manual"
以降はユーザマニュアルを参照ください: ":help user-manual"
これ以後の学習のために、次の本を推薦します。
Vim - Vi Improved - by Steve Oualline

View File

@@ -10,7 +10,11 @@ APPVER=4.0
NODEBUG = 1
!endif
!include <win32.mak>
!ifdef SDK_INCLUDE_DIR
!include $(SDK_INCLUDE_DIR)\Win32.mak
!else
!include <Win32.mak>
!endif
all: gvimext.dll

View File

@@ -1,6 +1,6 @@
#
# Makefile for VIM on Win32, using Cygnus gcc
# Last updated by Dan Sharp. Last Change: 2012 Jun 30
# Last updated by Dan Sharp. Last Change: 2013 Feb 17
#
# Also read INSTALLpc.txt!
#
@@ -21,7 +21,11 @@
# TCL_VER define to version of TCL being used (83)
# DYNAMIC_TCL no or yes: use yes to load the TCL DLL dynamically (yes)
# RUBY define to path to Ruby dir to get Ruby support (not defined)
# RUBY_VER define to version of Ruby being used (16)
# RUBY_VER define to version of Ruby being used (16)
# RUBY_VER_LONG same, but in format with dot. (1.6)
# You must set RUBY_VER_LONG when changing RUBY_VER.
# You must set RUBY_API_VER version to RUBY_VER_LONG.
# Don't set ruby API version to RUBY_VER like 191.
# DYNAMIC_RUBY no or yes: use yes to load the Ruby DLL dynamically (yes)
# MZSCHEME define to path to MzScheme dir to get MZSCHEME support (not defined)
# MZSCHEME_VER define to version of MzScheme being used (209_000)
@@ -43,8 +47,8 @@
# (i386)
# USEDLL no or yes: set to yes to use the Runtime library DLL (no)
# For USEDLL=yes the cygwin1.dll is required to run Vim.
# "no" does not work with latest version of Cygwin, use
# Make_ming.mak instead. Or set CC to gcc-3 and add
# For "no" the mingw-gcc-g++ package or the mingw64-i686-gcc-g++
# package is required to complie Vim. Or set CC to gcc-3 and add
# -L/lib/w32api to EXTRA_LIBS.
# POSTSCRIPT no or yes: set to yes for PostScript printing (no)
# FEATURES TINY, SMALL, NORMAL, BIG or HUGE (BIG)
@@ -102,6 +106,13 @@ ifndef OPTIMIZE
OPTIMIZE = MAXSPEED
endif
# Link against the shared version of libstdc++ by default. Set
# STATIC_STDCPLUS to "yes" to link against static version instead.
ifndef STATIC_STDCPLUS
STATIC_STDCPLUS=no
endif
### See feature.h for a list of optionals.
### Any other defines can be included here.
@@ -110,9 +121,17 @@ DEFINES = -DWIN32 -DHAVE_PATHDEF -DFEAT_$(FEATURES) \
INCLUDES = -march=$(ARCH) -Iproto
#>>>>> name of the compiler and linker, name of lib directory
CROSS_COMPILE =
ifeq (yes, $(USEDLL))
# CROSS_COMPILE is used for the gvimext DLL.
CROSS_COMPILE = i686-pc-mingw32-
CC = gcc
RC = windres
else
# i686-pc-mingw32-gcc, i686-w64-mingw32-gcc or gcc-3 can be used.
CROSS_COMPILE = i686-pc-mingw32-
CC = $(CROSS_COMPILE)gcc
RC = $(CROSS_COMPILE)windres
endif
##############################
# DYNAMIC_PERL=yes and no both work
@@ -189,36 +208,53 @@ endif
##############################
ifdef RUBY
ifndef RUBY_VER
RUBY_VER=16
endif
ifndef RUBY_VER_LONG
RUBY_VER_LONG=1.6
endif
ifndef DYNAMIC_RUBY
DYNAMIC_RUBY = yes
DYNAMIC_RUBY=yes
endif
# Set default value
ifndef RUBY_VER
RUBY_VER = 16
endif
ifndef RUBY_VER_LONG
RUBY_VER_LONG = 1.6
endif
ifndef RUBY_API_VER
RUBY_API_VER = $(subst .,,$(RUBY_VER_LONG))
endif
ifndef RUBY_PLATFORM
ifeq ($(RUBY_VER), 16)
ifndef RUBY_PLATFORM
RUBY_PLATFORM = i586-mswin32
endif
ifndef RUBY_INSTALL_NAME
RUBY_INSTALL_NAME = mswin32-ruby$(RUBY_VER)
endif
else
ifndef RUBY_PLATFORM
ifneq ($(wildcard $(RUBY)/lib/ruby/$(RUBY_VER_LONG)/i386-mingw32),)
RUBY_PLATFORM = i386-mingw32
else
RUBY_PLATFORM = i386-mswin32
endif
ifndef RUBY_INSTALL_NAME
RUBY_INSTALL_NAME = msvcrt-ruby$(RUBY_VER)
endif
endif
ifndef RUBY_INSTALL_NAME
ifeq ($(RUBY_VER), 16)
RUBY_INSTALL_NAME = mswin32-ruby$(RUBY_API_VER)
else
RUBY_INSTALL_NAME = msvcrt-ruby$(RUBY_API_VER)
endif
endif
ifeq (19, $(word 1,$(sort 19 $(RUBY_VER))))
RUBY_19_OR_LATER = 1
endif
DEFINES += -DFEAT_RUBY
ifneq ($(findstring w64-mingw32,$(CC)),)
# A workaround for mingw-w64
DEFINES += -DHAVE_STRUCT_TIMESPEC -DHAVE_STRUCT_TIMEZONE
endif
INCLUDES += -I$(RUBY)/lib/ruby/$(RUBY_VER_LONG)/$(RUBY_PLATFORM)
ifdef RUBY_19_OR_LATER
INCLUDES += -I$(RUBY)/include/ruby-$(RUBY_VER_LONG) -I$(RUBY)/include/ruby-$(RUBY_VER_LONG)/$(RUBY_PLATFORM)
endif
EXTRA_OBJS += $(OUTDIR)/if_ruby.o
ifeq (yes, $(DYNAMIC_RUBY))
@@ -449,7 +485,12 @@ endif
ifeq (yes, $(OLE))
DEFINES += -DFEAT_OLE
EXTRA_OBJS += $(OUTDIR)/if_ole.o
EXTRA_LIBS += -loleaut32 -lstdc++
EXTRA_LIBS += -loleaut32
ifeq (yes, $(STATIC_STDCPLUS))
EXTRA_LIBS += -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic
else
EXTRA_LIBS += -lstdc++
endif
endif
##############################
@@ -589,6 +630,9 @@ $(OUTDIR)/ex_docmd.o: ex_docmd.c $(INCL) ex_cmds.h
$(OUTDIR)/ex_eval.o: ex_eval.c $(INCL) ex_cmds.h
$(CC) -c $(CFLAGS) ex_eval.c -o $(OUTDIR)/ex_eval.o
$(OUTDIR)/gui_w32.o: gui_w32.c gui_w48.c $(INCL)
$(CC) -c $(CFLAGS) gui_w32.c -o $(OUTDIR)/gui_w32.o
$(OUTDIR)/if_cscope.o: if_cscope.c $(INCL) if_cscope.h
$(CC) -c $(CFLAGS) if_cscope.c -o $(OUTDIR)/if_cscope.o

View File

@@ -301,7 +301,14 @@ RUBY_INSTALL_NAME = msvcrt-ruby$(RUBY_API_VER)
endif
endif
RUBYINC =-I $(RUBY)/lib/ruby/$(RUBY_VER_LONG)/$(RUBY_PLATFORM) -I $(RUBY)/include/ruby-$(RUBY_VER_LONG) -I $(RUBY)/include/ruby-$(RUBY_VER_LONG)/$(RUBY_PLATFORM)
ifeq (19, $(word 1,$(sort 19 $(RUBY_VER))))
RUBY_19_OR_LATER = 1
endif
RUBYINC = -I $(RUBY)/lib/ruby/$(RUBY_VER_LONG)/$(RUBY_PLATFORM)
ifdef RUBY_19_OR_LATER
RUBYINC += -I $(RUBY)/include/ruby-$(RUBY_VER_LONG) -I $(RUBY)/include/ruby-$(RUBY_VER_LONG)/$(RUBY_PLATFORM)
endif
ifeq (no, $(DYNAMIC_RUBY))
RUBYLIB = -L$(RUBY)/lib -l$(RUBY_INSTALL_NAME)
endif
@@ -377,6 +384,9 @@ CFLAGS += -I$(MZSCHEME)/include -DFEAT_MZSCHEME -DMZSCHEME_COLLECTS=\"$(MZSCHEME
ifeq (yes, $(DYNAMIC_MZSCHEME))
CFLAGS += -DDYNAMIC_MZSCHEME -DDYNAMIC_MZSCH_DLL=\"lib$(MZSCHEME_MAIN_LIB)$(MZSCHEME_VER).dll\" -DDYNAMIC_MZGC_DLL=\"libmzgc$(MZSCHEME_VER).dll\"
endif
ifeq (yes, "$(MZSCHEME_DEBUG)")
CFLAGS += -DMZSCHEME_FORCE_GC
endif
endif
ifdef RUBY
@@ -724,6 +734,9 @@ $(OUTDIR)/ex_docmd.o: ex_docmd.c $(INCL) ex_cmds.h
$(OUTDIR)/ex_eval.o: ex_eval.c $(INCL) ex_cmds.h
$(CC) -c $(CFLAGS) ex_eval.c -o $(OUTDIR)/ex_eval.o
$(OUTDIR)/gui_w32.o: gui_w32.c gui_w48.c $(INCL)
$(CC) -c $(CFLAGS) gui_w32.c -o $(OUTDIR)/gui_w32.o
$(OUTDIR)/if_cscope.o: if_cscope.c $(INCL) if_cscope.h
$(CC) -c $(CFLAGS) if_cscope.c -o $(OUTDIR)/if_cscope.o

View File

@@ -373,6 +373,10 @@ MSVCVER = 5.0
MSVCVER = 6.0
CPU = ix86
!endif
!if "$(_NMAKE_VER)" == "6.00.9782.0"
MSVCVER = 6.0
CPU = ix86
!endif
!if "$(_NMAKE_VER)" == "7.00.9466"
MSVCVER = 7.0
!endif
@@ -403,9 +407,15 @@ MSVCVER = 10.0
!if "$(_NMAKE_VER)" == "10.00.30319.01"
MSVCVER = 10.0
!endif
!if "$(_NMAKE_VER)" == "10.00.40219.01"
MSVCVER = 10.0
!endif
!if "$(_NMAKE_VER)" == "11.00.50727.1"
MSVCVER = 11.0
!endif
!if "$(_NMAKE_VER)" == "11.00.51106.1"
MSVCVER = 11.0
!endif
!endif
# Abort bulding VIM if version of VC is unrecognised.
@@ -1086,7 +1096,7 @@ $(OUTDIR)/if_perl.obj: $(OUTDIR) if_perl.c $(INCL)
$(OUTDIR)/if_perlsfio.obj: $(OUTDIR) if_perlsfio.c $(INCL)
$(CC) $(CFLAGS) $(PERL_INC) if_perlsfio.c
$(OUTDIR)/if_mzsch.obj: $(OUTDIR) if_mzsch.c $(INCL) $(MZSCHEME_EXTRA_DEP)
$(OUTDIR)/if_mzsch.obj: $(OUTDIR) if_mzsch.c if_mzsch.h $(INCL) $(MZSCHEME_EXTRA_DEP)
$(CC) $(CFLAGS) if_mzsch.c \
-DMZSCHEME_COLLECTS=\"$(MZSCHEME:\=\\)\\collects\"
mzscheme_base.c:

View File

@@ -1345,6 +1345,8 @@ LINT_EXTRA = -DUSE_SNIFF -DHANGUL_INPUT -D"__attribute__(x)="
DEPEND_CFLAGS = -DPROTO -DDEPEND -DFEAT_GUI $(LINT_CFLAGS)
# Note: MZSCHEME_LIBS must come before LIBS, because LIBS adds -lm which is
# needed by racket.
ALL_LIB_DIRS = $(GUI_LIBS_DIR) $(X_LIBS_DIR)
ALL_LIBS = \
$(GUI_LIBS1) \
@@ -1353,10 +1355,10 @@ ALL_LIBS = \
$(X_PRE_LIBS) \
$(X_LIBS) \
$(X_EXTRA_LIBS) \
$(MZSCHEME_LIBS) \
$(LIBS) \
$(EXTRA_LIBS) \
$(LUA_LIBS) \
$(MZSCHEME_LIBS) \
$(PERL_LIBS) \
$(PYTHON_LIBS) \
$(PYTHON3_LIBS) \
@@ -1753,10 +1755,11 @@ proto: $(PRO_AUTO) $(PRO_MANUAL)
# Filter out arguments that cproto doesn't support.
# Don't pass "-pthread" to cproto, it sees it as a list of individual flags.
# Don't pass "-fstack-protector" to cproto, for the same reason.
# Don't pass "-g" to cproto.
# The -E"gcc -E" argument must be separate to avoid problems with shell
# quoting.
CPROTO = cproto $(PROTO_FLAGS) -DPROTO \
`echo '$(LINT_CFLAGS)' | sed -e 's/-pthread//g' -e 's/-fstack-protector//g'`
`echo '$(LINT_CFLAGS)' | sed -e 's/-pthread//g' -e 's/-fstack-protector//g' -e 's/\ -g\ / /g'`
### Would be nice if this would work for "normal" make.
### Currently it only works for (Free)BSD make.

72
src/auto/configure vendored
View File

@@ -4737,13 +4737,15 @@ $as_echo "no" >&6; }
if test -f "${vi_cv_path_lua_pfx}/bin/cyglua-${vi_cv_version_lua}.dll"; then
vi_cv_dll_name_lua="cyglua-${vi_cv_version_lua}.dll"
else
for i in 0 1 2 3 4 5 6 7 8 9; do
if test -f "${vi_cv_path_lua_pfx}/lib/liblua${vi_cv_version_lua}.so.$i"; then
LUA_SONAME=".$i"
break
fi
for LUA_SOVER in "${vi_cv_version_lua}.so" ".so.${vi_cv_version_lua}"; do
for i in 0 1 2 3 4 5 6 7 8 9; do
if test -f "${vi_cv_path_lua_pfx}/lib/liblua${LUA_SOVER}.$i"; then
LUA_SONAME=".$i"
break
fi
done
vi_cv_dll_name_lua="liblua${LUA_SOVER}$LUA_SONAME"
done
vi_cv_dll_name_lua="liblua${vi_cv_version_lua}.so$LUA_SONAME"
fi
$as_echo "#define DYNAMIC_LUA 1" >>confdefs.h
@@ -4927,7 +4929,8 @@ $as_echo "no" >&6; }
if test "X$vi_cv_path_mzscheme_pfx" != "X"; then
if test "x$MACOSX" = "xyes"; then
MZSCHEME_LIBS="-framework PLT_MzScheme"
MZSCHEME_LIBS="-framework Racket"
MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libmzscheme3m.a"; then
MZSCHEME_LIBS="${vi_cv_path_mzscheme_pfx}/lib/libmzscheme3m.a"
MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
@@ -4957,26 +4960,53 @@ $as_echo "no" >&6; }
MZSCHEME_LIBS="${MZSCHEME_LIBS} -R ${vi_cv_path_mzscheme_pfx}/lib"
fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for racket collects directory" >&5
$as_echo_n "checking for racket collects directory... " >&6; }
if test -d $vi_cv_path_mzscheme_pfx/lib/plt/collects; then
SCHEME_COLLECTS=lib/plt/
SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/lib/plt/
else
if test -d $vi_cv_path_mzscheme_pfx/lib/racket/collects; then
SCHEME_COLLECTS=lib/racket/
SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/lib/racket/
else
if test -d $vi_cv_path_mzscheme_pfx/share/racket/collects; then
SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/share/racket/
else
if test -d $vi_cv_path_mzscheme_pfx/collects; then
SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/
fi
fi
fi
fi
if test -f "${vi_cv_path_mzscheme_pfx}/${SCHEME_COLLECTS}collects/scheme/base.ss" ; then
if test "X$SCHEME_COLLECTS" != "X" ; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${SCHEME_COLLECTS}" >&5
$as_echo "${SCHEME_COLLECTS}" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5
$as_echo "not found" >&6; }
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for mzscheme_base.c" >&5
$as_echo_n "checking for mzscheme_base.c... " >&6; }
if test -f "${SCHEME_COLLECTS}collects/scheme/base.ss" ; then
MZSCHEME_EXTRA="mzscheme_base.c"
else
if test -f "${vi_cv_path_mzscheme_pfx}/${SCHEME_COLLECTS}collects/scheme/base.rkt" ; then
if test -f "${SCHEME_COLLECTS}collects/scheme/base.rkt" ; then
MZSCHEME_EXTRA="mzscheme_base.c"
fi
fi
if test "X$MZSCHEME_EXTRA" != "X" ; then
MZSCHEME_CFLAGS="${MZSCHEME_CFLAGS} -DINCLUDE_MZSCHEME_BASE"
MZSCHEME_MZC="${vi_cv_path_mzscheme_pfx}/bin/mzc"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: needed" >&5
$as_echo "needed" >&6; }
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: not needed" >&5
$as_echo "not needed" >&6; }
fi
MZSCHEME_CFLAGS="${MZSCHEME_CFLAGS} -I${SCHEME_INC} \
-DMZSCHEME_COLLECTS='\"${vi_cv_path_mzscheme_pfx}/${SCHEME_COLLECTS}collects\"'"
-DMZSCHEME_COLLECTS='\"${SCHEME_COLLECTS}collects\"'"
MZSCHEME_SRC="if_mzsch.c"
MZSCHEME_OBJ="objects/if_mzsch.o"
MZSCHEME_PRO="if_mzsch.pro"
@@ -5191,8 +5221,10 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_pythoninterp" >&5
$as_echo "$enable_pythoninterp" >&6; }
if test "$enable_pythoninterp" = "yes" -o "$enable_pythoninterp" = "dynamic"; then
# Extract the first word of "python", so it can be a program name with args.
set dummy python; ac_word=$2
for ac_prog in python2 python
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
if test "${ac_cv_path_vi_cv_path_python+set}" = set; then :
@@ -5231,6 +5263,9 @@ $as_echo "no" >&6; }
fi
test -n "$vi_cv_path_python" && break
done
if test "X$vi_cv_path_python" != "X"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Python version" >&5
@@ -5486,8 +5521,10 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_python3interp" >&5
$as_echo "$enable_python3interp" >&6; }
if test "$enable_python3interp" = "yes" -o "$enable_python3interp" = "dynamic"; then
# Extract the first word of "python3", so it can be a program name with args.
set dummy python3; ac_word=$2
for ac_prog in python3 python
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
if test "${ac_cv_path_vi_cv_path_python3+set}" = set; then :
@@ -5526,6 +5563,9 @@ $as_echo "no" >&6; }
fi
test -n "$vi_cv_path_python3" && break
done
if test "X$vi_cv_path_python3" != "X"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Python version" >&5

View File

@@ -1,6 +1,7 @@
:: command to build big Vim 64 bit with OLE, Perl, Python, Ruby and Tcl
:: First run: %VCDIR%\vcvarsall.bat x86_amd64
:: Ruby and Tcl are excluded, doesn't seem to work.
SET VCDIR="C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\"
SET TOOLDIR=E:\
%VCDIR%\bin\nmake -f Make_mvc.mak CPU=AMD64 GUI=yes OLE=yes PERL=E:\perl514 DYNAMIC_PERL=yes PERL_VER=514 PYTHON=%TOOLDIR%python27 DYNAMIC_PYTHON=yes PYTHON_VER=27 PYTHON3=%TOOLDIR%python32 DYNAMIC_PYTHON3=yes PYTHON3_VER=32 RUBY=%TOOLDIR%ruby192 DYNAMIC_RUBY=yes RUBY_VER=192 RUBY_VER_LONG=1.9.2 TCL=%TOOLDIR%tcl TCL_VER=85 TCL_VER_LONG=8.5 DYNAMIC_TCL=yes %1 IME=yes CSCOPE=yes
%VCDIR%\bin\nmake -f Make_mvc.mak CPU=AMD64 GUI=yes OLE=yes PERL=E:\perl514 DYNAMIC_PERL=yes PERL_VER=514 PYTHON=%TOOLDIR%python27 DYNAMIC_PYTHON=yes PYTHON_VER=27 PYTHON3=%TOOLDIR%python32 DYNAMIC_PYTHON3=yes PYTHON3_VER=32 %1 IME=yes CSCOPE=yes

View File

@@ -82,6 +82,9 @@ open_buffer(read_stdin, eap, flags)
#ifdef FEAT_AUTOCMD
buf_T *old_curbuf;
#endif
#ifdef FEAT_SYN_HL
long old_tw = curbuf->b_p_tw;
#endif
/*
* The 'readonly' flag is only set when BF_NEVERLOADED is being reset.
@@ -113,6 +116,10 @@ open_buffer(read_stdin, eap, flags)
}
EMSG(_("E83: Cannot allocate buffer, using other one..."));
enter_buffer(curbuf);
#ifdef FEAT_SYN_HL
if (old_tw != curbuf->b_p_tw)
check_colorcolumn(curwin);
#endif
return FAIL;
}
@@ -786,6 +793,9 @@ handle_swap_exists(old_curbuf)
# if defined(FEAT_AUTOCMD) && defined(FEAT_EVAL)
cleanup_T cs;
# endif
#ifdef FEAT_SYN_HL
long old_tw = curbuf->b_p_tw;
#endif
if (swap_exists_action == SEA_QUIT)
{
@@ -804,7 +814,13 @@ handle_swap_exists(old_curbuf)
if (!buf_valid(old_curbuf) || old_curbuf == curbuf)
old_curbuf = buflist_new(NULL, NULL, 1L, BLN_CURBUF | BLN_LISTED);
if (old_curbuf != NULL)
{
enter_buffer(old_curbuf);
#ifdef FEAT_SYN_HL
if (old_tw != curbuf->b_p_tw)
check_colorcolumn(curwin);
#endif
}
/* If "old_curbuf" is NULL we are in big trouble here... */
# if defined(FEAT_AUTOCMD) && defined(FEAT_EVAL)
@@ -1364,6 +1380,9 @@ set_curbuf(buf, action)
buf_T *prevbuf;
int unload = (action == DOBUF_UNLOAD || action == DOBUF_DEL
|| action == DOBUF_WIPE);
#ifdef FEAT_SYN_HL
long old_tw = curbuf->b_p_tw;
#endif
setpcmark();
if (!cmdmod.keepalt)
@@ -1430,12 +1449,19 @@ set_curbuf(buf, action)
# endif
)
#endif
{
enter_buffer(buf);
#ifdef FEAT_SYN_HL
if (old_tw != curbuf->b_p_tw)
check_colorcolumn(curwin);
#endif
}
}
/*
* Enter a new current buffer.
* Old curbuf must have been abandoned already!
* Old curbuf must have been abandoned already! This also means "curbuf" may
* be pointing to freed memory.
*/
void
enter_buffer(buf)
@@ -1702,6 +1728,11 @@ buflist_new(ffname, sfname, lnum, flags)
#endif
/* buf->b_nwindows = 0; why was this here? */
free_buffer_stuff(buf, FALSE); /* delete local variables et al. */
/* Init the options. */
buf->b_p_initialized = FALSE;
buf_copy_options(buf, BCO_ENTER);
#ifdef FEAT_KEYMAP
/* need to reload lmaps and set b:keymap_name */
curbuf->b_kmap_state |= KEYMAP_INIT;

View File

@@ -284,7 +284,12 @@ buf_init_chartab(buf, global)
}
++c;
}
c = *p;
p = skip_to_option_part(p);
if (c == ',' && *p == NUL)
/* Trailing comma is not allowed. */
return FAIL;
}
}
chartab_initialized = TRUE;
@@ -904,6 +909,14 @@ vim_isIDc(c)
int
vim_iswordc(c)
int c;
{
return vim_iswordc_buf(c, curbuf);
}
int
vim_iswordc_buf(c, buf)
int c;
buf_T *buf;
{
#ifdef FEAT_MBYTE
if (c >= 0x100)
@@ -914,7 +927,7 @@ vim_iswordc(c)
return utf_class(c) >= 2;
}
#endif
return (c > 0 && c < 0x100 && GET_CHARTAB(curbuf, c) != 0);
return (c > 0 && c < 0x100 && GET_CHARTAB(buf, c) != 0);
}
/*
@@ -931,19 +944,17 @@ vim_iswordp(p)
return GET_CHARTAB(curbuf, *p) != 0;
}
#if defined(FEAT_SYN_HL) || defined(PROTO)
int
vim_iswordc_buf(p, buf)
vim_iswordp_buf(p, buf)
char_u *p;
buf_T *buf;
{
# ifdef FEAT_MBYTE
#ifdef FEAT_MBYTE
if (has_mbyte && MB_BYTE2LEN(*p) > 1)
return mb_get_class(p) >= 2;
# endif
#endif
return (GET_CHARTAB(buf, *p) != 0);
}
#endif
/*
* return TRUE if 'c' is a valid file-name character

View File

@@ -496,13 +496,15 @@ if test "$enable_luainterp" = "yes" -o "$enable_luainterp" = "dynamic"; then
else
dnl Determine the SONAME for the current version, but fallback to
dnl liblua${vi_cv_version_lua}.so if no SONAME-versioned file is found.
for i in 0 1 2 3 4 5 6 7 8 9; do
if test -f "${vi_cv_path_lua_pfx}/lib/liblua${vi_cv_version_lua}.so.$i"; then
LUA_SONAME=".$i"
break
fi
for LUA_SOVER in "${vi_cv_version_lua}.so" ".so.${vi_cv_version_lua}"; do
for i in 0 1 2 3 4 5 6 7 8 9; do
if test -f "${vi_cv_path_lua_pfx}/lib/liblua${LUA_SOVER}.$i"; then
LUA_SONAME=".$i"
break
fi
done
vi_cv_dll_name_lua="liblua${LUA_SOVER}$LUA_SONAME"
done
vi_cv_dll_name_lua="liblua${vi_cv_version_lua}.so$LUA_SONAME"
fi
AC_DEFINE(DYNAMIC_LUA)
LUA_LIBS=""
@@ -617,7 +619,8 @@ if test "$enable_mzschemeinterp" = "yes"; then
if test "X$vi_cv_path_mzscheme_pfx" != "X"; then
if test "x$MACOSX" = "xyes"; then
MZSCHEME_LIBS="-framework PLT_MzScheme"
MZSCHEME_LIBS="-framework Racket"
MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
elif test -f "${vi_cv_path_mzscheme_pfx}/lib/libmzscheme3m.a"; then
MZSCHEME_LIBS="${vi_cv_path_mzscheme_pfx}/lib/libmzscheme3m.a"
MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
@@ -650,17 +653,34 @@ if test "$enable_mzschemeinterp" = "yes"; then
MZSCHEME_LIBS="${MZSCHEME_LIBS} -R ${vi_cv_path_mzscheme_pfx}/lib"
fi
fi
AC_MSG_CHECKING(for racket collects directory)
if test -d $vi_cv_path_mzscheme_pfx/lib/plt/collects; then
SCHEME_COLLECTS=lib/plt/
SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/lib/plt/
else
if test -d $vi_cv_path_mzscheme_pfx/lib/racket/collects; then
SCHEME_COLLECTS=lib/racket/
SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/lib/racket/
else
if test -d $vi_cv_path_mzscheme_pfx/share/racket/collects; then
SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/share/racket/
else
if test -d $vi_cv_path_mzscheme_pfx/collects; then
SCHEME_COLLECTS=$vi_cv_path_mzscheme_pfx/
fi
fi
fi
fi
if test -f "${vi_cv_path_mzscheme_pfx}/${SCHEME_COLLECTS}collects/scheme/base.ss" ; then
if test "X$SCHEME_COLLECTS" != "X" ; then
AC_MSG_RESULT(${SCHEME_COLLECTS})
else
AC_MSG_RESULT(not found)
fi
AC_MSG_CHECKING(for mzscheme_base.c)
if test -f "${SCHEME_COLLECTS}collects/scheme/base.ss" ; then
MZSCHEME_EXTRA="mzscheme_base.c"
else
if test -f "${vi_cv_path_mzscheme_pfx}/${SCHEME_COLLECTS}collects/scheme/base.rkt" ; then
if test -f "${SCHEME_COLLECTS}collects/scheme/base.rkt" ; then
MZSCHEME_EXTRA="mzscheme_base.c"
fi
fi
@@ -668,9 +688,13 @@ if test "$enable_mzschemeinterp" = "yes"; then
dnl need to generate bytecode for MzScheme base
MZSCHEME_CFLAGS="${MZSCHEME_CFLAGS} -DINCLUDE_MZSCHEME_BASE"
MZSCHEME_MZC="${vi_cv_path_mzscheme_pfx}/bin/mzc"
AC_MSG_RESULT(needed)
else
AC_MSG_RESULT(not needed)
fi
MZSCHEME_CFLAGS="${MZSCHEME_CFLAGS} -I${SCHEME_INC} \
-DMZSCHEME_COLLECTS='\"${vi_cv_path_mzscheme_pfx}/${SCHEME_COLLECTS}collects\"'"
-DMZSCHEME_COLLECTS='\"${SCHEME_COLLECTS}collects\"'"
MZSCHEME_SRC="if_mzsch.c"
MZSCHEME_OBJ="objects/if_mzsch.o"
MZSCHEME_PRO="if_mzsch.pro"
@@ -821,7 +845,7 @@ AC_ARG_ENABLE(pythoninterp,
AC_MSG_RESULT($enable_pythoninterp)
if test "$enable_pythoninterp" = "yes" -o "$enable_pythoninterp" = "dynamic"; then
dnl -- find the python executable
AC_PATH_PROG(vi_cv_path_python, python)
AC_PATH_PROGS(vi_cv_path_python, python2 python)
if test "X$vi_cv_path_python" != "X"; then
dnl -- get its version number
@@ -1011,7 +1035,7 @@ AC_ARG_ENABLE(python3interp,
AC_MSG_RESULT($enable_python3interp)
if test "$enable_python3interp" = "yes" -o "$enable_python3interp" = "dynamic"; then
dnl -- find the python3 executable
AC_PATH_PROG(vi_cv_path_python3, python3)
AC_PATH_PROGS(vi_cv_path_python3, python3 python)
if test "X$vi_cv_path_python3" != "X"; then
dnl -- get its version number

View File

@@ -615,11 +615,13 @@ diff_redraw(dofold)
#endif
/* A change may have made filler lines invalid, need to take care
* of that for other windows. */
if (wp != curwin && wp->w_topfill > 0)
n = diff_check(wp, wp->w_topline);
if ((wp != curwin && wp->w_topfill > 0) || n > 0)
{
n = diff_check(wp, wp->w_topline);
if (wp->w_topfill > n)
wp->w_topfill = (n < 0 ? 0 : n);
else if (n > 0 && n > wp->w_topfill)
wp->w_topfill = n;
}
}
}

View File

@@ -375,7 +375,7 @@ get_vim_env(void)
/* First get $VIMRUNTIME. If it's set, remove the tail. */
vim = getenv("VIMRUNTIME");
if (vim != NULL && *vim != 0)
if (vim != NULL && *vim != 0 && strlen(vim) < BUFSIZE)
{
strcpy(buf, vim);
remove_tail(buf);

View File

@@ -372,6 +372,8 @@ edit(cmdchar, startln, count)
*/
if (cmdchar != 'r' && cmdchar != 'v')
{
pos_T save_cursor = curwin->w_cursor;
# ifdef FEAT_EVAL
if (cmdchar == 'R')
ptr = (char_u *)"r";
@@ -382,6 +384,19 @@ edit(cmdchar, startln, count)
set_vim_var_string(VV_INSERTMODE, ptr, 1);
# endif
apply_autocmds(EVENT_INSERTENTER, NULL, NULL, FALSE, curbuf);
/* Since Insert mode was not started yet a call to check_cursor_col()
* may have moved the cursor, especially with the "A" command. */
if (curwin->w_cursor.col != save_cursor.col
&& curwin->w_cursor.lnum == save_cursor.lnum)
{
int save_state = State;
curwin->w_cursor = save_cursor;
State = INSERT;
check_cursor_col();
State = save_state;
}
}
#endif
@@ -3831,6 +3846,12 @@ ins_compl_prep(c)
#endif
}
}
#ifdef FEAT_AUTOCMD
else if (ctrl_x_mode == CTRL_X_LOCAL_MSG)
/* Trigger the CompleteDone event to give scripts a chance to act
* upon the (possibly failed) completion. */
apply_autocmds(EVENT_COMPLETEDONE, NULL, NULL, FALSE, curbuf);
#endif
/* reset continue_* if we left expansion-mode, if we stay they'll be
* (re)set properly in ins_complete() */
@@ -8885,7 +8906,7 @@ ins_bs(c, mode, inserted_space_p)
*/
if ( mode == BACKSPACE_CHAR
&& ((p_sta && in_indent)
|| (curbuf->b_p_sts != 0
|| (get_sts_value() != 0
&& curwin->w_cursor.col > 0
&& (*(ml_get_cursor() - 1) == TAB
|| (*(ml_get_cursor() - 1) == ' '
@@ -8901,7 +8922,7 @@ ins_bs(c, mode, inserted_space_p)
if (p_sta && in_indent)
ts = (int)get_sw_value();
else
ts = (int)curbuf->b_p_sts;
ts = (int)get_sts_value();
/* Compute the virtual column where we want to be. Since
* 'showbreak' may get in the way, need to get the last column of
* the previous character. */
@@ -9590,7 +9611,7 @@ ins_tab()
*/
if (!curbuf->b_p_et
&& !(p_sta && ind && curbuf->b_p_ts != get_sw_value())
&& curbuf->b_p_sts == 0)
&& get_sts_value() == 0)
return TRUE;
if (stop_arrow() == FAIL)
@@ -9606,8 +9627,8 @@ ins_tab()
if (p_sta && ind) /* insert tab in indent, use 'shiftwidth' */
temp = (int)get_sw_value();
else if (curbuf->b_p_sts > 0) /* use 'softtabstop' when set */
temp = (int)curbuf->b_p_sts;
else if (curbuf->b_p_sts != 0) /* use 'softtabstop' when set */
temp = (int)get_sts_value();
else /* otherwise use 'tabstop' */
temp = (int)curbuf->b_p_ts;
temp -= get_nolist_virtcol() % temp;
@@ -9635,7 +9656,7 @@ ins_tab()
/*
* When 'expandtab' not set: Replace spaces by TABs where possible.
*/
if (!curbuf->b_p_et && (curbuf->b_p_sts || (p_sta && ind)))
if (!curbuf->b_p_et && (get_sts_value() || (p_sta && ind)))
{
char_u *ptr;
#ifdef FEAT_VREPLACE

View File

@@ -668,6 +668,8 @@ static void f_reverse __ARGS((typval_T *argvars, typval_T *rettv));
#ifdef FEAT_FLOAT
static void f_round __ARGS((typval_T *argvars, typval_T *rettv));
#endif
static void f_screencol __ARGS((typval_T *argvars, typval_T *rettv));
static void f_screenrow __ARGS((typval_T *argvars, typval_T *rettv));
static void f_search __ARGS((typval_T *argvars, typval_T *rettv));
static void f_searchdecl __ARGS((typval_T *argvars, typval_T *rettv));
static void f_searchpair __ARGS((typval_T *argvars, typval_T *rettv));
@@ -686,7 +688,11 @@ static void f_setreg __ARGS((typval_T *argvars, typval_T *rettv));
static void f_settabvar __ARGS((typval_T *argvars, typval_T *rettv));
static void f_settabwinvar __ARGS((typval_T *argvars, typval_T *rettv));
static void f_setwinvar __ARGS((typval_T *argvars, typval_T *rettv));
#ifdef FEAT_CRYPT
static void f_sha256 __ARGS((typval_T *argvars, typval_T *rettv));
#endif /* FEAT_CRYPT */
static void f_shellescape __ARGS((typval_T *argvars, typval_T *rettv));
static void f_shiftwidth __ARGS((typval_T *argvars, typval_T *rettv));
static void f_simplify __ARGS((typval_T *argvars, typval_T *rettv));
#ifdef FEAT_FLOAT
static void f_sin __ARGS((typval_T *argvars, typval_T *rettv));
@@ -745,6 +751,7 @@ static void f_undotree __ARGS((typval_T *argvars, typval_T *rettv));
static void f_values __ARGS((typval_T *argvars, typval_T *rettv));
static void f_virtcol __ARGS((typval_T *argvars, typval_T *rettv));
static void f_visualmode __ARGS((typval_T *argvars, typval_T *rettv));
static void f_wildmenumode __ARGS((typval_T *argvars, typval_T *rettv));
static void f_winbufnr __ARGS((typval_T *argvars, typval_T *rettv));
static void f_wincol __ARGS((typval_T *argvars, typval_T *rettv));
static void f_winheight __ARGS((typval_T *argvars, typval_T *rettv));
@@ -911,7 +918,9 @@ eval_clear()
hash_clear(&compat_hashtab);
free_scriptnames();
# if defined(FEAT_CMDL_COMPL)
free_locales();
# endif
/* global variables */
vars_clear(&globvarht);
@@ -1555,8 +1564,6 @@ eval_expr(arg, nextcmd)
}
#if (defined(FEAT_USR_CMDS) && defined(FEAT_CMDL_COMPL)) \
|| defined(FEAT_COMPL_FUNC) || defined(PROTO)
/*
* Call some vimL function and return the result in "*rettv".
* Uses argv[argc] for the function arguments. Only Number and String
@@ -1634,6 +1641,33 @@ call_vim_function(func, argc, argv, safe, str_arg_only, rettv)
return ret;
}
/*
* Call vimL function "func" and return the result as a number.
* Returns -1 when calling the function fails.
* Uses argv[argc] for the function arguments.
*/
long
call_func_retnr(func, argc, argv, safe)
char_u *func;
int argc;
char_u **argv;
int safe; /* use the sandbox */
{
typval_T rettv;
long retval;
/* All arguments are passed as strings, no conversion to number. */
if (call_vim_function(func, argc, argv, safe, TRUE, &rettv) == FAIL)
return -1;
retval = get_tv_number_chk(&rettv, NULL);
clear_tv(&rettv);
return retval;
}
#if (defined(FEAT_USR_CMDS) && defined(FEAT_CMDL_COMPL)) \
|| defined(FEAT_COMPL_FUNC) || defined(PROTO)
# if (defined(FEAT_USR_CMDS) && defined(FEAT_CMDL_COMPL)) || defined(PROTO)
/*
* Call vimL function "func" and return the result as a string.
@@ -1660,32 +1694,6 @@ call_func_retstr(func, argc, argv, safe)
}
# endif
# if defined(FEAT_COMPL_FUNC) || defined(PROTO)
/*
* Call vimL function "func" and return the result as a number.
* Returns -1 when calling the function fails.
* Uses argv[argc] for the function arguments.
*/
long
call_func_retnr(func, argc, argv, safe)
char_u *func;
int argc;
char_u **argv;
int safe; /* use the sandbox */
{
typval_T rettv;
long retval;
/* All arguments are passed as strings, no conversion to number. */
if (call_vim_function(func, argc, argv, safe, TRUE, &rettv) == FAIL)
return -1;
retval = get_tv_number_chk(&rettv, NULL);
clear_tv(&rettv);
return retval;
}
# endif
/*
* Call vimL function "func" and return the result as a List.
* Uses argv[argc] for the function arguments.
@@ -1714,7 +1722,6 @@ call_func_retlist(func, argc, argv, safe)
}
#endif
/*
* Save the current function call pointer, and set it to NULL.
* Used when executing autocommands and for ":source".
@@ -7851,7 +7858,7 @@ static struct fst
{"ceil", 1, 1, f_ceil},
#endif
{"changenr", 0, 0, f_changenr},
{"char2nr", 1, 1, f_char2nr},
{"char2nr", 1, 2, f_char2nr},
{"cindent", 1, 1, f_cindent},
{"clearmatches", 0, 0, f_clearmatches},
{"col", 1, 1, f_col},
@@ -8000,7 +8007,7 @@ static struct fst
{"mzeval", 1, 1, f_mzeval},
#endif
{"nextnonblank", 1, 1, f_nextnonblank},
{"nr2char", 1, 1, f_nr2char},
{"nr2char", 1, 2, f_nr2char},
{"or", 2, 2, f_or},
{"pathshorten", 1, 1, f_pathshorten},
#ifdef FEAT_FLOAT
@@ -8032,6 +8039,8 @@ static struct fst
#ifdef FEAT_FLOAT
{"round", 1, 1, f_round},
#endif
{"screencol", 0, 0, f_screencol},
{"screenrow", 0, 0, f_screenrow},
{"search", 1, 4, f_search},
{"searchdecl", 1, 3, f_searchdecl},
{"searchpair", 3, 7, f_searchpair},
@@ -8050,7 +8059,11 @@ static struct fst
{"settabvar", 3, 3, f_settabvar},
{"settabwinvar", 4, 4, f_settabwinvar},
{"setwinvar", 3, 3, f_setwinvar},
#ifdef FEAT_CRYPT
{"sha256", 1, 1, f_sha256},
#endif
{"shellescape", 1, 2, f_shellescape},
{"shiftwidth", 0, 0, f_shiftwidth},
{"simplify", 1, 1, f_simplify},
#ifdef FEAT_FLOAT
{"sin", 1, 1, f_sin},
@@ -8109,6 +8122,7 @@ static struct fst
{"values", 1, 1, f_values},
{"virtcol", 1, 1, f_virtcol},
{"visualmode", 0, 1, f_visualmode},
{"wildmenumode", 0, 0, f_wildmenumode},
{"winbufnr", 1, 1, f_winbufnr},
{"wincol", 0, 0, f_wincol},
{"winheight", 1, 1, f_winheight},
@@ -9297,7 +9311,17 @@ f_char2nr(argvars, rettv)
{
#ifdef FEAT_MBYTE
if (has_mbyte)
rettv->vval.v_number = (*mb_ptr2char)(get_tv_string(&argvars[0]));
{
int utf8 = 0;
if (argvars[1].v_type != VAR_UNKNOWN)
utf8 = get_tv_number_chk(&argvars[1], NULL);
if (utf8)
rettv->vval.v_number = (*utf_ptr2char)(get_tv_string(&argvars[0]));
else
rettv->vval.v_number = (*mb_ptr2char)(get_tv_string(&argvars[0]));
}
else
#endif
rettv->vval.v_number = get_tv_string(&argvars[0])[0];
@@ -9308,7 +9332,7 @@ f_char2nr(argvars, rettv)
*/
static void
f_cindent(argvars, rettv)
typval_T *argvars;
typval_T *argvars UNUSED;
typval_T *rettv;
{
#ifdef FEAT_CINDENT
@@ -10357,9 +10381,9 @@ static void findfilendir __ARGS((typval_T *argvars, typval_T *rettv, int find_wh
static void
findfilendir(argvars, rettv, find_what)
typval_T *argvars;
typval_T *argvars UNUSED;
typval_T *rettv;
int find_what;
int find_what UNUSED;
{
#ifdef FEAT_SEARCHPATH
char_u *fname;
@@ -10729,9 +10753,9 @@ static void foldclosed_both __ARGS((typval_T *argvars, typval_T *rettv, int end)
*/
static void
foldclosed_both(argvars, rettv, end)
typval_T *argvars;
typval_T *argvars UNUSED;
typval_T *rettv;
int end;
int end UNUSED;
{
#ifdef FEAT_FOLDING
linenr_T lnum;
@@ -10780,8 +10804,8 @@ f_foldclosedend(argvars, rettv)
*/
static void
f_foldlevel(argvars, rettv)
typval_T *argvars;
typval_T *rettv;
typval_T *argvars UNUSED;
typval_T *rettv UNUSED;
{
#ifdef FEAT_FOLDING
linenr_T lnum;
@@ -11561,7 +11585,7 @@ f_getline(argvars, rettv)
static void
f_getmatches(argvars, rettv)
typval_T *argvars UNUSED;
typval_T *rettv;
typval_T *rettv UNUSED;
{
#ifdef FEAT_SEARCH_EXTRA
dict_T *dict;
@@ -12274,9 +12298,15 @@ f_has(argvars, rettv)
# ifdef FEAT_MOUSE_PTERM
"mouse_pterm",
# endif
# ifdef FEAT_MOUSE_SGR
"mouse_sgr",
# endif
# ifdef FEAT_SYSMOUSE
"mouse_sysmouse",
# endif
# ifdef FEAT_MOUSE_URXVT
"mouse_urxvt",
# endif
# ifdef FEAT_MOUSE_XTERM
"mouse_xterm",
# endif
@@ -13561,7 +13591,7 @@ f_line2byte(argvars, rettv)
*/
static void
f_lispindent(argvars, rettv)
typval_T *argvars;
typval_T *argvars UNUSED;
typval_T *rettv;
{
#ifdef FEAT_LISP
@@ -13955,8 +13985,8 @@ f_match(argvars, rettv)
*/
static void
f_matchadd(argvars, rettv)
typval_T *argvars;
typval_T *rettv;
typval_T *argvars UNUSED;
typval_T *rettv UNUSED;
{
#ifdef FEAT_SEARCH_EXTRA
char_u buf[NUMBUFLEN];
@@ -13993,7 +14023,7 @@ f_matchadd(argvars, rettv)
*/
static void
f_matcharg(argvars, rettv)
typval_T *argvars;
typval_T *argvars UNUSED;
typval_T *rettv;
{
if (rettv_list_alloc(rettv) == OK)
@@ -14025,8 +14055,8 @@ f_matcharg(argvars, rettv)
*/
static void
f_matchdelete(argvars, rettv)
typval_T *argvars;
typval_T *rettv;
typval_T *argvars UNUSED;
typval_T *rettv UNUSED;
{
#ifdef FEAT_SEARCH_EXTRA
rettv->vval.v_number = match_delete(curwin,
@@ -14311,6 +14341,22 @@ f_mzeval(argvars, rettv)
str = get_tv_string_buf(&argvars[0], buf);
do_mzeval(str, rettv);
}
void
mzscheme_call_vim(name, args, rettv)
char_u *name;
typval_T *args;
typval_T *rettv;
{
typval_T argvars[3];
argvars[0].v_type = VAR_STRING;
argvars[0].vval.v_string = name;
copy_tv(args, &argvars[1]);
argvars[2].v_type = VAR_UNKNOWN;
f_call(argvars, rettv);
clear_tv(&argvars[1]);
}
#endif
/*
@@ -14348,7 +14394,16 @@ f_nr2char(argvars, rettv)
#ifdef FEAT_MBYTE
if (has_mbyte)
buf[(*mb_char2bytes)((int)get_tv_number(&argvars[0]), buf)] = NUL;
{
int utf8 = 0;
if (argvars[1].v_type != VAR_UNKNOWN)
utf8 = get_tv_number_chk(&argvars[1], NULL);
if (utf8)
buf[(*utf_char2bytes)((int)get_tv_number(&argvars[0]), buf)] = NUL;
else
buf[(*mb_char2bytes)((int)get_tv_number(&argvars[0]), buf)] = NUL;
}
else
#endif
{
@@ -14818,8 +14873,8 @@ list2proftime(arg, tm)
*/
static void
f_reltime(argvars, rettv)
typval_T *argvars;
typval_T *rettv;
typval_T *argvars UNUSED;
typval_T *rettv UNUSED;
{
#ifdef FEAT_RELTIME
proftime_T res;
@@ -14867,7 +14922,7 @@ f_reltime(argvars, rettv)
*/
static void
f_reltimestr(argvars, rettv)
typval_T *argvars;
typval_T *argvars UNUSED;
typval_T *rettv;
{
#ifdef FEAT_RELTIME
@@ -15716,6 +15771,30 @@ f_round(argvars, rettv)
}
#endif
/*
* "screencol()" function
*
* First column is 1 to be consistent with virtcol().
*/
static void
f_screencol(argvars, rettv)
typval_T *argvars UNUSED;
typval_T *rettv;
{
rettv->vval.v_number = screen_screencol() + 1;
}
/*
* "screenrow()" function
*/
static void
f_screenrow(argvars, rettv)
typval_T *argvars UNUSED;
typval_T *rettv;
{
rettv->vval.v_number = screen_screenrow() + 1;
}
/*
* "search()" function
*/
@@ -15888,7 +15967,7 @@ do_searchpair(spat, mpat, epat, dir, skip, flags, match_pos,
int flags; /* SP_SETPCMARK and other SP_ values */
pos_T *match_pos;
linenr_T lnum_stop; /* stop at this line if not zero */
long time_limit; /* stop after this many msec */
long time_limit UNUSED; /* stop after this many msec */
{
char_u *save_cpo;
char_u *pat, *pat2 = NULL, *pat3 = NULL;
@@ -16284,7 +16363,8 @@ set_qf_ll_list(wp, list_arg, action_arg, rettv)
action = *act;
}
if (l != NULL && set_errorlist(wp, l, action, NULL) == OK)
if (l != NULL && set_errorlist(wp, l, action,
(char_u *)(wp == NULL ? "setqflist()" : "setloclist()")) == OK)
rettv->vval.v_number = 0;
}
#endif
@@ -16312,8 +16392,8 @@ f_setloclist(argvars, rettv)
*/
static void
f_setmatches(argvars, rettv)
typval_T *argvars;
typval_T *rettv;
typval_T *argvars UNUSED;
typval_T *rettv UNUSED;
{
#ifdef FEAT_SEARCH_EXTRA
list_T *l;
@@ -16638,6 +16718,24 @@ setwinvar(argvars, rettv, off)
}
}
#ifdef FEAT_CRYPT
/*
* "sha256({string})" function
*/
static void
f_sha256(argvars, rettv)
typval_T *argvars;
typval_T *rettv;
{
char_u *p;
p = get_tv_string(&argvars[0]);
rettv->vval.v_string = vim_strsave(
sha256_bytes(p, (int)STRLEN(p), NULL, 0));
rettv->v_type = VAR_STRING;
}
#endif /* FEAT_CRYPT */
/*
* "shellescape({string})" function
*/
@@ -16651,6 +16749,17 @@ f_shellescape(argvars, rettv)
rettv->v_type = VAR_STRING;
}
/*
* shiftwidth() function
*/
static void
f_shiftwidth(argvars, rettv)
typval_T *argvars UNUSED;
typval_T *rettv;
{
rettv->vval.v_number = get_sw_value();
}
/*
* "simplify()" function
*/
@@ -18356,7 +18465,7 @@ f_type(argvars, rettv)
*/
static void
f_undofile(argvars, rettv)
typval_T *argvars;
typval_T *argvars UNUSED;
typval_T *rettv;
{
rettv->v_type = VAR_STRING;
@@ -18469,6 +18578,20 @@ f_visualmode(argvars, rettv)
#endif
}
/*
* "wildmenumode()" function
*/
static void
f_wildmenumode(argvars, rettv)
typval_T *argvars UNUSED;
typval_T *rettv UNUSED;
{
#ifdef FEAT_WILDMENU
if (wild_menu_showing)
rettv->vval.v_number = 1;
#endif
}
/*
* "winbufnr(nr)" function
*/
@@ -18836,7 +18959,7 @@ var2fpos(varp, dollar_lnum, fnum)
#endif
if (name[0] == '\'') /* mark */
{
pp = getmark_fnum(name[1], FALSE, fnum);
pp = getmark_buf_fnum(curbuf, name[1], FALSE, fnum);
if (pp == NULL || pp == (pos_T *)-1 || pp->lnum <= 0)
return NULL;
return pp;
@@ -21057,6 +21180,9 @@ ex_function(eap)
if (arg[j] != NUL)
emsg_funcname((char *)e_invarg2, arg);
}
/* Disallow using the g: dict. */
if (fudi.fd_dict != NULL && fudi.fd_dict->dv_scope == VAR_DEF_SCOPE)
EMSG(_("E862: Cannot use g: here"));
}
/*

View File

@@ -4727,6 +4727,8 @@ do_sub(eap)
}
else
{
char_u *orig_line = NULL;
int len_change = 0;
#ifdef FEAT_FOLDING
int save_p_fen = curwin->w_p_fen;
@@ -4737,9 +4739,43 @@ do_sub(eap)
temp = RedrawingDisabled;
RedrawingDisabled = 0;
if (new_start != NULL)
{
/* There already was a substitution, we would
* like to show this to the user. We cannot
* really update the line, it would change
* what matches. Temporarily replace the line
* and change it back afterwards. */
orig_line = vim_strsave(ml_get(lnum));
if (orig_line != NULL)
{
char_u *new_line = concat_str(new_start,
sub_firstline + copycol);
if (new_line == NULL)
{
vim_free(orig_line);
orig_line = NULL;
}
else
{
/* Position the cursor relative to the
* end of the line, the previous
* substitute may have inserted or
* deleted characters before the
* cursor. */
len_change = (int)STRLEN(new_line)
- (int)STRLEN(orig_line);
curwin->w_cursor.col += len_change;
ml_replace(lnum, new_line, FALSE);
}
}
}
search_match_lines = regmatch.endpos[0].lnum
- regmatch.startpos[0].lnum;
search_match_endcol = regmatch.endpos[0].col;
search_match_endcol = regmatch.endpos[0].col
+ len_change;
highlight_match = TRUE;
update_topline();
@@ -4781,6 +4817,10 @@ do_sub(eap)
msg_didout = FALSE; /* don't scroll up */
msg_col = 0;
gotocmdline(TRUE);
/* restore the line */
if (orig_line != NULL)
ml_replace(lnum, orig_line, FALSE);
}
need_wait_return = FALSE; /* no hit-return prompt */
@@ -4838,7 +4878,7 @@ do_sub(eap)
goto skip;
}
if (got_quit)
break;
goto skip;
}
/* Move the cursor to the start of the match, so that we can
@@ -5045,14 +5085,10 @@ skip:
* The check for nmatch_tl is needed for when multi-line
* matching must replace the lines before trying to do another
* match, otherwise "\@<=" won't work.
* When asking the user we like to show the already replaced
* text, but don't do it when "\<@=" or "\<@!" is used, it
* changes what matches.
* When the match starts below where we start searching also
* need to replace the line first (using \zs after \n).
*/
if (lastone
|| (do_ask && !re_lookbehind(regmatch.regprog))
|| nmatch_tl > 0
|| (nmatch = vim_regexec_multi(&regmatch, curwin,
curbuf, sub_firstlnum,
@@ -5200,6 +5236,12 @@ outofmem:
EMSG2(_(e_patnotf2), get_search_pat());
}
#ifdef FEAT_FOLDING
if (do_ask && hasAnyFolding(curwin))
/* Cursor position may require updating */
changed_window_setting();
#endif
vim_free(regmatch.regprog);
}
@@ -5849,14 +5891,14 @@ find_help_tags(arg, num_matches, matches, keep_lang)
int i;
static char *(mtable[]) = {"*", "g*", "[*", "]*", ":*",
"/*", "/\\*", "\"*", "**",
"/\\(\\)",
"cpo-*", "/\\(\\)",
"?", ":?", "?<CR>", "g?", "g?g?", "g??", "z?",
"/\\?", "/\\z(\\)", "\\=", ":s\\=",
"[count]", "[quotex]", "[range]",
"[pattern]", "\\|", "\\%$"};
static char *(rtable[]) = {"star", "gstar", "[star", "]star", ":star",
"/star", "/\\\\star", "quotestar", "starstar",
"/\\\\(\\\\)",
"cpo-star", "/\\\\(\\\\)",
"?", ":?", "?<CR>", "g?", "g?g?", "g??", "z?",
"/\\\\?", "/\\\\z(\\\\)", "\\\\=", ":s\\\\=",
"\\[count]", "\\[quotex]", "\\[range]",
@@ -6344,10 +6386,10 @@ ex_helptags(eap)
}
#ifdef FEAT_MULTI_LANG
/* Get a list of all files in the directory. */
/* Get a list of all files in the help directory and in subdirectories. */
STRCPY(NameBuff, dirname);
add_pathsep(NameBuff);
STRCAT(NameBuff, "*");
STRCAT(NameBuff, "**");
if (gen_expand_wildcards(1, &NameBuff, &filecount, &files,
EW_FILE|EW_SILENT) == FAIL
|| filecount == 0)
@@ -6436,8 +6478,8 @@ ex_helptags(eap)
helptags_one(dir, ext, tagfname, add_help_tags)
char_u *dir; /* doc directory */
char_u *ext; /* suffix, ".txt", ".itx", ".frx", etc. */
char_u *tagfname; /* "tags" for English, "tags-fr" for French. */
int add_help_tags; /* add "help-tags" tag */
char_u *tagfname; /* "tags" for English, "tags-fr" for French. */
int add_help_tags; /* add "help-tags" tag */
{
FILE *fd_tags;
FILE *fd;
@@ -6449,6 +6491,7 @@ helptags_one(dir, ext, tagfname, add_help_tags)
char_u *s;
int i;
char_u *fname;
int dirlen;
# ifdef FEAT_MBYTE
int utf8 = MAYBE;
int this_utf8;
@@ -6459,9 +6502,9 @@ helptags_one(dir, ext, tagfname, add_help_tags)
/*
* Find all *.txt files.
*/
dirlen = (int)STRLEN(dir);
STRCPY(NameBuff, dir);
add_pathsep(NameBuff);
STRCAT(NameBuff, "*");
STRCAT(NameBuff, "/**/*");
STRCAT(NameBuff, ext);
if (gen_expand_wildcards(1, &NameBuff, &filecount, &files,
EW_FILE|EW_SILENT) == FAIL
@@ -6522,7 +6565,7 @@ helptags_one(dir, ext, tagfname, add_help_tags)
EMSG2(_("E153: Unable to open %s for reading"), files[fi]);
continue;
}
fname = gettail(files[fi]);
fname = files[fi] + dirlen + 1;
# ifdef FEAT_MBYTE
firstline = TRUE;

Some files were not shown because too many files have changed in this diff Show More