Compare commits

..

146 Commits

Author SHA1 Message Date
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
Bram Moolenaar
dac7569612 updated for version 7.3.690
Problem:    When the current directory name is exactly the maximum path length
            Vim may crash.
Solution:   Only add "/" when there is room. (Danek Duvall)
2012-10-14 04:35:45 +02:00
Bram Moolenaar
d04da7cb4a updated for version 7.3.689
Problem:    MzScheme and Lua may use a NULL string.
Solution:   Use an empty string instead of NULL. (Yukihiro Nakadaira)
2012-10-14 03:41:59 +02:00
Bram Moolenaar
7bc4f93c07 updated for version 7.3.688
Problem:    Python 3.3 is not supported.
Solution:   Add Python 3.3 support (Ken Takata)
2012-10-14 03:22:56 +02:00
Bram Moolenaar
172ddb60c2 updated for version 7.3.687
Problem:    Test 16 fails when $DISPLAY is not set.
Solution:   Skip the test when $DISPLAY is not set.
2012-10-11 04:44:33 +02:00
Bram Moolenaar
b73568149f updated for version 7.3.686
Problem:    Using CTRL-\ e mappings is useful also when entering an
            expression, but it doesn't work. (Marcin Szamotulski)
Solution:   Allow using CTRL-\ e when entering an expression if it was not
            typed.
2012-10-11 04:04:37 +02:00
Bram Moolenaar
0c17875ef3 updated for version 7.3.685
Problem:    No test for what patch 7.3.673 fixes.
Solution:   Add a test. (Christian Brabandt)
2012-10-11 03:35:45 +02:00
Bram Moolenaar
b35c338f96 updated for version 7.3.684
Problem:    "make test" does not delete lua.vim.
Solution:   Add lua.vim to the clean target. (Simon Ruderich)
2012-10-06 19:10:35 +02:00
Bram Moolenaar
0c5fa7d740 Updated runtime files. 2012-10-05 22:26:30 +02:00
Bram Moolenaar
d1f13fd597 updated for version 7.3.683
Problem:    ":python" may crash when vimbindeval() returns None.
Solution:   Check for v_string to be NULL. (Yukihiro Nakadaira)
2012-10-05 21:30:07 +02:00
Bram Moolenaar
4ccb265bd4 updated for version 7.3.682
Problem:    Compiler complains about incompatible types.
Solution:   Remove type casts. (hint by Danek Duvall)
2012-10-04 22:38:37 +02:00
Bram Moolenaar
7d11244c99 updated for version 7.3.681
Problem:    List of distributed files picks up backup files.
Solution:   Make tutor patterns more specific.
2012-10-03 21:48:43 +02:00
Bram Moolenaar
97cc2384c0 Update runtime files. 2012-10-03 21:46:54 +02:00
Bram Moolenaar
14f5827940 updated for version 7.3.680
Problem:    Some files missing in the list of distributed files.
Solution:   Add lines for new files.
2012-10-03 21:33:41 +02:00
Bram Moolenaar
8139889a5f updated for version 7.3.679
Problem:    Ruby detection uses Config, newer Ruby versions use RbConfig.
Solution:   Detect the need to use RbConfig. (Vit Ondruch)
2012-10-03 21:09:35 +02:00
Bram Moolenaar
6f3d6b48a6 updated for version 7.3.678
Problem:    Ruby .so name may not be correct.
Solution:   Use the LIBRUBY_SO entry from the config. (Vit Ondruch)
2012-10-03 18:50:00 +02:00
Bram Moolenaar
e1704bada4 updated for version 7.3.677
Problem:    buf_spname() is used inconsistently.
Solution:   Make the return type a char_u pointer.  Check the size of the
            returned string.
2012-10-03 18:25:00 +02:00
Bram Moolenaar
b213da0b57 updated for version 7.3.676
Problem:    Ruby compilation on Windows 32 bit doesn't work.
Solution:   Only use some functions for 64 bit. (Ken Takata)
2012-10-03 18:06:59 +02:00
Bram Moolenaar
ec3cfeb199 updated for version 7.3.675
Problem:    Using uninitialized memory with very long file name.
Solution:   Put NUL after text when it is truncated. (ZyX)
2012-10-03 17:12:47 +02:00
Bram Moolenaar
1e91f2606b updated for version 7.3.674
Problem:    Can't compile with Lua/dyn on Cygwin.
Solution:   Adjust configure to use the right library name. (Ken Takata)
2012-10-03 14:48:08 +02:00
Bram Moolenaar
718f007499 updated for version 7.3.673
Problem:    Using "gN" while 'selection' is "exclusive" misses one character.
            (Ben Fritz)
Solution:   Check the direction when compensating for exclusive selection.
            (Christian Brabandt)
2012-10-03 13:35:51 +02:00
Bram Moolenaar
d09acef44b Updated runtime files. 2012-09-21 14:54:30 +02:00
Bram Moolenaar
66b7985ec9 updated for version 7.3.672
Problem:    Not possible to lock/unlock lists in Python interface.
Solution:   Add .locked and .scope attributes. (ZyX)
2012-09-21 14:00:35 +02:00
Bram Moolenaar
770456589e updated for version 7.3.671
Problem:    More Python code can be shared between Python 2 and 3.
Solution:   Move code to if_py_both.h. (ZyX)
2012-09-21 13:46:06 +02:00
Bram Moolenaar
696c2116dc updated for version 7.3.670
Problem:    Python: memory leaks when there are exceptions.
Solution:   Add DICTKEY_UNREF in the right places. (ZyX)
2012-09-21 13:43:14 +02:00
Bram Moolenaar
f94a13c286 updated for version 7.3.669
Problem:    When building with Cygwin loading Python dynamically fails.
Solution:   Use DLLLIBRARY instead of INSTSONAME. (Ken Takata)
2012-09-21 13:26:49 +02:00
Bram Moolenaar
01c10524d2 updated for version 7.3.668
Problem:    Building with Perl loaded dynamically  still uses static library.
Solution:   Adjust use of PL_thr_key. (Ken Takata)
2012-09-21 12:50:51 +02:00
Bram Moolenaar
f5fe79a5f3 updated for version 7.3.667
Problem:    Unused variables in Perl interface.
Solution:   Adjust #ifdefs.
2012-09-21 12:42:44 +02:00
Bram Moolenaar
6f586de755 updated for version 7.3.666
Problem:    With MSVC 11 Win32.mak is not found.
Solution:   Add the SDK_INCLUDE_DIR variable. (Raymond Ko)
2012-09-18 22:00:08 +02:00
Bram Moolenaar
2b017fae8f updated for version 7.3.665
Problem:    MSVC 11 is not supported.
Solution:   Recognize MSVC 11. (Raymond Ko)
2012-09-18 18:27:12 +02:00
Bram Moolenaar
4fabd7dd4a updated for version 7.3.664
Problem:    Buffer overflow in unescaping text. (Raymond Ko)
Solution:   Limit check for multi-byte character to 4 bytes.
2012-09-18 18:03:37 +02:00
Bram Moolenaar
be1e9e9fc1 updated for version 7.3.663
Problem:    End of color scheme name not clear in E185. (Aaron Lewis)
Solution:   Put the name in single quotes.
2012-09-18 16:47:07 +02:00
Bram Moolenaar
2623b4f412 updated for version 7.3.662
Problem:    Can't build Ruby interface with Ruby 1.9.3.
Solution:   Add missing functions. (V. Ondruch)
2012-09-18 16:36:32 +02:00
Bram Moolenaar
e8cdcef875 updated for version 7.3.661
Problem:    SEGV in Python code.
Solution:   Initialize len to zero.  Use the right function depending on
            version. (Maxim Philippov)
2012-09-12 20:21:43 +02:00
Bram Moolenaar
fca93c093e updated for version 7.3.660
Problem:    ":help !" jumps to help for ":!".
Solution:   Adjust check for tag header line. (Andy Wokula)
2012-09-12 18:19:46 +02:00
Bram Moolenaar
c11073c9aa updated for version 7.3.659
Problem:    Recent Python changes are not tested.
Solution:   Add tests for Python bindings. (ZyX)
2012-09-05 19:17:42 +02:00
Bram Moolenaar
afa6b9af86 updated for version 7.3.658
Problem:    NUL bytes truncate strings when converted from Python.
Solution:   Handle truncation as an error. (ZyX)
2012-09-05 19:09:11 +02:00
Bram Moolenaar
cdab905136 updated for version 7.3.657
Problem:    Python bindings silently truncate string values containing NUL.
Solution:   Fail when a string contains NUL. (ZyX)
2012-09-05 19:03:56 +02:00
Bram Moolenaar
77fceb8908 updated for version 7.3.656
Problem:    Internal error in :pyeval.
Solution:   Handle failed object conversion. (ZyX)
2012-09-05 18:54:48 +02:00
Bram Moolenaar
e48a2dd3af updated for version 7.3.655
Problem:    64 bit MingW xpm .a file is missing.
Solution:   Add the file. (Sergey Khorev)
2012-09-05 18:49:24 +02:00
Bram Moolenaar
231e1a1723 updated for version 7.3.654
Problem:    When creating a Vim dictionary from Python objects an empty key
            might be used.
Solution:   Do not use empty keys, throw an IndexError. (ZyX)
2012-09-05 18:45:28 +02:00
Bram Moolenaar
e2db4361d2 updated for version 7.3.653
Problem:    MingW needs build rule for included XPM files.  Object directory
            for 32 and 64 builds is the same, also for MSVC.
Solution:   Add MingW build rule to use included XPM files.  Add the CPU or
            architecture to the object directory name. (Sergey Khorev)
2012-09-05 17:57:39 +02:00
Bram Moolenaar
ac0ddc15e9 updated for version 7.3.652
Problem:    Workaround for Python crash isn't perfect.
Solution:   Change the type of the length argument. (Sean Estabrooks)
2012-09-05 17:28:21 +02:00
Bram Moolenaar
7c0a86b1e8 updated for version 7.3.651
Problem:    Completion after ":help \{-" gives an error message.
Solution:   Prepend a backslash.
2012-09-05 15:15:07 +02:00
Bram Moolenaar
b4a80cdd91 updated for version 7.3.650
Problem:    Completion after ":help \{-" gives an error message and messes up
            the command line.
Solution:   Cancel the tag search if the pattern can't be compiled. (Yasuhiro
            Matsumoto)
2012-09-05 15:03:30 +02:00
Bram Moolenaar
7c82130a76 updated for version 7.3.649
Problem:    When 'clipboard' is set to "unnamed" small deletes end up in the
            numbered registers. (Ingo Karkat)
Solution:   Use the original register name to decide whether to put a delete
            in a numbered register. (Christian Brabandt)
2012-09-05 14:18:45 +02:00
Bram Moolenaar
2c66669c33 updated for version 7.3.648
Problem:    Crash when using a very long file name. (ZyX)
Solution:   Properly check length of buffer space.
2012-09-05 13:30:40 +02:00
Bram Moolenaar
57c0ea8692 updated for version 7.3.647
Problem:    "gnd" doesn't work correctly in Visual mode.
Solution:   Handle Visual mode differently in "gn". (Christian Brabandt)
2012-09-05 12:16:45 +02:00
Bram Moolenaar
465748e411 updated for version 7.3.646
Problem:    When reloading a buffer the undo file becomes unusable unless ":w"
            is executed. (Dmitri Frank)
Solution:   After reloading the buffer write the undo file. (Christian
            Brabandt)
2012-08-29 18:50:54 +02:00
Bram Moolenaar
dd7d846475 updated for version 7.3.645
Problem:    No tests for patch 7.3.625 and 7.3.637.
Solution:   Add more tests for the "gn" command and try/catch. (Christian
            Brabandt)
2012-08-29 16:55:13 +02:00
Bram Moolenaar
0551410a14 updated for version 7.3.644
Problem:    Dead code for BeOS GUI.
Solution:   Remove unused __BEOS__ stuff.
2012-08-29 16:34:27 +02:00
Bram Moolenaar
3633dc0129 updated for version 7.3.643
Problem:    MS-Windows: When starting gvim maximized 'lines' and 'columns' are
            wrong. (Christian Robinson)
Solution:   Move the check for gui.starting from ui_get_shellsize() to
            check_shellsize().
2012-08-29 16:26:04 +02:00
Bram Moolenaar
8f91399366 updated for version 7.3.642
Problem:    Segfault with specific autocommands.  Was OK after 7.3.449 and
            before 7.3.545. (Richard Brown)
Solution:   Pass TRUE for abort_if_last in the call to close_buffer().
            (Christian Brabandt)
2012-08-29 15:50:26 +02:00
Bram Moolenaar
002a4edc5b updated for version 7.3.641
Problem:    ":mkview" uses ":normal" instead of ":normal!" for folds. (Dan)
Solution:   Add the bang. (Christian Brabandt)
2012-08-29 15:22:25 +02:00
Bram Moolenaar
18a1b9bd5f updated for version 7.3.640
Problem:    It's not easy to build Vim on Windows with XPM support.
Solution:   Binary files for 7.3.639. (Sergey Khorev)
2012-08-29 14:26:27 +02:00
Bram Moolenaar
c6c1d8b802 updated for version 7.3.639
Problem:    It's not easy to build Vim on Windows with XPM support.
Solution:   Include the required files, they are quite small.  Update the
            MSVC makefile to use them.  Binary files are in the next patch.
            (Sergey Khorev)
2012-08-29 14:18:33 +02:00
Bram Moolenaar
1c75a03501 Fix version.c, 638 was there twice. 2012-08-23 22:28:46 +02:00
Bram Moolenaar
451cf63751 updated for version 7.3.638 2012-08-23 18:58:14 +02:00
Bram Moolenaar
00b8ae0d3d updated for version 7.3.637
Problem:    Cannot catch the error caused by a foldopen when there is no fold.
            (ZyX, Issue 48)
Solution:   Do not break out of the loop early when inside try/catch.
            (Christian Brabandt) Except when there is a syntax error.
2012-08-23 18:43:10 +02:00
Bram Moolenaar
dde0efed85 updated for version 7.3.636
Problem:    Not all zero-width matches handled correctly for "gn".
Solution:   Move zero-width detection to a separate function. (Christian
            Brabandt)
2012-08-23 15:53:05 +02:00
Bram Moolenaar
4d93dc2699 updated for version 7.3.635
Problem:    Issue 21: System call during startup sets 'lines' to a wrong
            value. (Karl Yngve)
Solution:   Don't set the shell size while the GUI is still starting up.
            (Christian Brabandt)
2012-08-23 13:28:55 +02:00
Bram Moolenaar
b9ce83e135 updated for version 7.3.634
Problem:    Month/Day format for undo is confusing. (Marcin Szamotulski)
Solution:   Always use Year/Month/Day, should work for everybody.
2012-08-23 12:59:02 +02:00
Bram Moolenaar
9b4512500a Update runtime files. 2012-08-15 17:43:31 +02:00
Bram Moolenaar
dd82d699c8 updated for version 7.3.633
Problem:    Selection remains displayed as selected after selecting another
            text.
Solution:   Call xterm_update() before select(). (Andrew Pimlott)
2012-08-15 17:26:57 +02:00
Bram Moolenaar
2b9578f0f8 updated for version 7.3.632
Problem:    Cannot select beyond 222 columns with the mouse in xterm.
Solution:   Add support for SGR mouse tracking. (Hayaki Saito)
2012-08-15 16:21:32 +02:00
Bram Moolenaar
2430586629 updated for version 7.3.631
Problem:    Cannot complete user names.
Solution:   Add user name completion.  (Dominique Pelle)
2012-08-15 14:05:05 +02:00
Bram Moolenaar
2dac213ac6 updated for version 7.3.630
Problem:    "|" does not behave correctly when 'virtualedit' is set.
Solution:   Call validate_virtcol(). (David Bürgin)
2012-08-15 13:31:00 +02:00
Bram Moolenaar
14f2474147 updated for version 7.3.629
Problem:    There is no way to make 'shiftwidth' follow 'tabstop'.
Solution:   When 'shiftwidth' is zero use the value of 'tabstop'. (Christian
            Brabandt)
2012-08-08 18:01:05 +02:00
Bram Moolenaar
b02612b641 updated for version 7.3.628
Problem:    ":open" does not allow for a !, which results in a confusing error
            message. (Shawn Wilson)
Solution:   Allow ! on ":open". (Christian Brabandt)
2012-08-08 17:31:40 +02:00
Bram Moolenaar
07e31c571a updated for version 7.3.627
Problem:    When using the "n" flag with the ":s" command a \= substitution
            will not be evaluated.
Solution:   Do perform the evaluation, so that a function can be invoked at
            every matching position without changing the text. (Christian
            Brabandt)
2012-08-08 16:51:15 +02:00
Bram Moolenaar
c1a995db49 updated for version 7.3.626
Problem:    Python interface doesn't build with Python 2.4 or older.
Solution:   Define Py_ssize_t. (Benjamin Bannier)
2012-08-08 16:05:07 +02:00
Bram Moolenaar
ba6ba36fa2 updated for version 7.3.625
Problem:    "gn" does not handle zero-width matches correctly.
Solution:   Handle zero-width patterns specially. (Christian Brabandt)
2012-08-08 15:27:57 +02:00
Bram Moolenaar
04b2751899 updated for version 7.3.624
Problem:    When cancelling input() it returns the third argument. That should
            only happen for inputdialog().
Solution:   Check if inputdialog() was used. (Hirohito Higashi)
2012-08-08 14:33:21 +02:00
Bram Moolenaar
c271c48e80 updated for version 7.3.623
Problem:    Perl 5.14 commands crash Vim on MS-Windows.
Solution:   Use perl_get_sv() instead of GvSV(). (Raymond Ko)
2012-08-08 13:17:31 +02:00
Bram Moolenaar
e66822e3d1 updated for version 7.3.622
Problem:    XPM library for Win32 can't be found.
Solution:   Suggest using the one from the Vim ftp site.
2012-08-02 21:48:24 +02:00
Bram Moolenaar
09168a77e4 updated for version 7.3.621
Problem:    Compiler warnings on 64 bit windows.
Solution:   Add type casts. (Mike Williams)
2012-08-02 21:24:42 +02:00
Bram Moolenaar
da3cb831e9 updated for version 7.3.620
Problem:    Building with recent Ruby on Win32 doesn't work.
Solution:   Add a separate argument for the API version. (Yasuhiro Matsumoto)
2012-08-02 21:21:47 +02:00
Bram Moolenaar
e4195c5d84 updated for version 7.3.619
Problem:    When executing a shell command Vim may become slow to respond.
Solution:   Don't wait after every processed message. (idea by Yasuhiro
            Matsumoto)
2012-08-02 12:31:44 +02:00
Bram Moolenaar
8a0f3c78fe updated for version 7.3.618
Problem:    Still doesn't compile with small features.
Solution:   Move current_search() out of #ifdef. (Dominique Pelle)
2012-07-29 12:55:32 +02:00
Bram Moolenaar
a07c831bef updated for version 7.3.617
Problem:    Hang on completion.
Solution:   Skip over the space. (Yasuhiro Matsumoto)
2012-07-27 21:12:07 +02:00
Bram Moolenaar
dad937f77f updated for version 7.3.616
Problem:    Can't compile without +visual.
Solution:   Add #ifdef.
2012-07-27 21:05:54 +02:00
Bram Moolenaar
6c35beaa11 Updated runtime files. 2012-07-25 17:49:10 +02:00
Bram Moolenaar
848f87633a updated for version 7.3.615
Problem:    Completion for a user command does not recognize backslash before
            a space.
Solution:   Recognize escaped characters. (Yasuhiro Matsumoto)
2012-07-25 17:22:23 +02:00
241 changed files with 9650 additions and 2999 deletions

2
.gitignore vendored
View File

@@ -30,6 +30,7 @@ src/auto/pathdef.c
*.suo
*.res
*.RES
src/if_perl.c
src/pathdef.c
src/Obj*/pathdef.c
gvimext.dll
@@ -41,6 +42,7 @@ gvimext.lib
*.mo
*.swp
*~
src/po/vim.pot
# Generated by "make test"
src/po/*.ck

View File

@@ -261,6 +261,7 @@ SRC_DOS = \
src/Make_mvc.mak \
src/Make_w16.mak \
src/bigvim.bat \
src/bigvim64.bat \
src/msvcsetup.bat \
src/msvc2008.bat \
src/msvc2010.bat \
@@ -349,6 +350,13 @@ SRC_DOS_BIN = \
src/vim*.ico \
src/vim.tlb \
src/vimtbar.lib \
src/xpm/COPYRIGHT \
src/xpm/README.txt \
src/xpm/include/*.h \
src/xpm/x64/lib/libXpm.a \
src/xpm/x64/lib/libXpm.lib \
src/xpm/x86/lib/libXpm.a \
src/xpm/x86/lib/libXpm.lib \
src/vimtbar.dll \
nsis/icons/*.bmp \
nsis/icons/*.ico \
@@ -685,9 +693,17 @@ LANG_GEN = \
runtime/tutor/Makefile \
runtime/tutor/tutor.utf-8 \
runtime/tutor/tutor.?? \
runtime/tutor/tutor.??.* \
runtime/tutor/tutor.??.utf-8 \
runtime/tutor/tutor.??.euc \
runtime/tutor/tutor.??.sjis \
runtime/tutor/tutor.??.iso9 \
runtime/tutor/tutor.??.big5 \
runtime/tutor/tutor.??.cp1250 \
runtime/tutor/tutor.??.cp1251 \
runtime/tutor/tutor.??.cp737 \
runtime/tutor/tutor.??_??.utf-8 \
runtime/tutor/tutor.bar \
runtime/tutor/tutor.bar.* \
runtime/tutor/tutor.bar.utf-8 \
runtime/spell/README.txt \
runtime/spell/??/*.diff \
runtime/spell/??/main.aap \

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 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,12 +1,28 @@
" 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
" Version: 10.0
" Last Change: 2012 Oct 20
" Usage: For detailed help, ":help ft-syntax-omni"
" History
"
" 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
@@ -50,7 +66,11 @@ endif
if exists('g:loaded_syntax_completion')
finish
endif
let g:loaded_syntax_completion = 80
let g:loaded_syntax_completion = 100
" 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 +87,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
@@ -446,19 +478,66 @@ 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
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
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 +550,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

@@ -1,6 +1,6 @@
" Vim autoload file for the tohtml plugin.
" Maintainer: Ben Fritz <fritzophrenic@gmail.com>
" Last Change: 2011 Apr 05
" Last Change: 2012 Jun 30
"
" Additional contributors:
"
@@ -11,7 +11,7 @@
" this file uses line continuations
let s:cpo_sav = &cpo
set cpo-=C
set cpo&vim
" Automatically find charsets from all encodings supported natively by Vim. With
" the 8bit- and 2byte- prefixes, Vim can actually support more encodings than
@@ -391,12 +391,25 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
call add(html, '<meta name="plugin-version" content="'.g:loaded_2html_plugin.'"'.tag_close)
call add(html, '<meta name="settings" content="'.
\ join(filter(keys(s:settings),'s:settings[v:val]'),',').
\ ',prevent_copy='.s:settings.prevent_copy.
\ '"'.tag_close)
call add(html, '<meta name="colorscheme" content="'.
\ (exists('g:colors_name')
\ ? g:colors_name
\ : 'none'). '"'.tag_close)
call add(html, '</head>')
let body_line_num = len(html)
call add(html, '<body>')
call add(html, '<table border="1" width="100%">')
if !empty(s:settings.prevent_copy)
call add(html, "<body onload='FixCharWidth();'>")
call add(html, "<!-- hidden divs used by javascript to get the width of a char -->")
call add(html, "<div id='oneCharWidth'>0</div>")
call add(html, "<div id='oneInputWidth'><input size='1' value='0'".tag_close."</div>")
call add(html, "<div id='oneEmWidth' style='width: 1em;'></div>")
else
call add(html, '<body>')
endif
call add(html, "<table border='1' width='100%' id='vimCodeElement'>")
call add(html, '<tr>')
for buf in a:win_list
@@ -454,16 +467,19 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
let insert_index = diff_style_start
endif
" Delete those parts that are not needed so
" we can include the rest into the resulting table
1,/^<body/d_
" Delete those parts that are not needed so we can include the rest into the
" resulting table.
1,/^<body.*\%(\n<!--.*-->\_s\+.*id='oneCharWidth'.*\_s\+.*id='oneInputWidth'.*\_s\+.*id='oneEmWidth'\)\?\zs/d_
$
?</body>?,$d_
let temp = getline(1,'$')
" clean out id on the main content container because we already set it on
" the table
let temp[0] = substitute(temp[0], " id='vimCodeElement'", "", "")
" undo deletion of start and end part
" so we can later save the file as valid html
" TODO: restore using grabbed lines if undolevel is 1?
normal 2u
normal! 2u
if s:settings.use_css
call add(html, '<td valign="top"><div>')
elseif s:settings.use_xhtml
@@ -520,12 +536,47 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
1
let style_start = search('^</head>')-1
" add required javascript in reverse order so we can just call append again
" and again without adjusting {{{
" insert script closing tag if any javascript is needed
if s:settings.dynamic_folds || !empty(s:settings.prevent_copy)
call append(style_start, [
\ '',
\ s:settings.use_xhtml ? '//]]>' : '-->',
\ "</script>"
\ ])
endif
" insert script which corrects the size of small input elements in
" prevent_copy mode. See 2html.vim for details on why this is needed and how
" it works.
if !empty(s:settings.prevent_copy)
call append(style_start, [
\ '',
\ '/* simulate a "ch" unit by asking the browser how big a zero character is */',
\ 'function FixCharWidth() {',
\ ' /* get the hidden element which gives the width of a single character */',
\ ' var goodWidth = document.getElementById("oneCharWidth").clientWidth;',
\ ' /* get all input elements, we''ll filter on class later */',
\ ' var inputTags = document.getElementsByTagName("input");',
\ ' var ratio = 5;',
\ ' var inputWidth = document.getElementById("oneInputWidth").clientWidth;',
\ ' var emWidth = document.getElementById("oneEmWidth").clientWidth;',
\ ' if (inputWidth > goodWidth) {',
\ ' while (ratio < 100*goodWidth/emWidth && ratio < 100) {',
\ ' ratio += 5;',
\ ' }',
\ ' document.getElementById("vimCodeElement").className = "em"+ratio;',
\ ' }',
\ '}'
\ ])
endif
" Insert javascript to toggle matching folds open and closed in all windows,
" if dynamic folding is active. {{{
" if dynamic folding is active.
if s:settings.dynamic_folds
call append(style_start, [
\ "<script type='text/javascript'>",
\ s:settings.use_xhtml ? '//<![CDATA[' : " <!--",
\ " function toggleFold(objID)",
\ " {",
\ " for (win_num = 1; win_num <= ".len(a:buf_list)."; win_num++)",
@@ -542,9 +593,14 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
\ " }",
\ " }",
\ " }",
\ s:settings.use_xhtml ? '//]]>' : " -->",
\ "</script>"
\ ])
endif
" insert script tag if any javascript is needed
if s:settings.dynamic_folds || s:settings.prevent_copy != ""
call append(style_start, [
\ "<script type='text/javascript'>",
\ s:settings.use_xhtml ? '//<![CDATA[' : "<!--"])
endif "}}}
" Insert styles from all the generated html documents and additional styles
@@ -609,9 +665,10 @@ func! tohtml#GetUserSettings() "{{{
call tohtml#GetOption(user_settings, 'ignore_conceal', 0 )
call tohtml#GetOption(user_settings, 'ignore_folding', 0 )
call tohtml#GetOption(user_settings, 'dynamic_folds', 0 )
call tohtml#GetOption(user_settings, 'no_foldcolumn', 0 )
call tohtml#GetOption(user_settings, 'no_foldcolumn', user_settings.ignore_folding)
call tohtml#GetOption(user_settings, 'hover_unfold', 0 )
call tohtml#GetOption(user_settings, 'no_pre', 0 )
call tohtml#GetOption(user_settings, 'no_invalid', 0 )
call tohtml#GetOption(user_settings, 'whole_filler', 0 )
call tohtml#GetOption(user_settings, 'use_xhtml', 0 )
" }}}
@@ -637,6 +694,8 @@ func! tohtml#GetUserSettings() "{{{
" dynamic folding implies css
if user_settings.dynamic_folds
let user_settings.use_css = 1
else
let user_settings.no_foldcolumn = 1 " won't do anything but for consistency and for the test suite
endif
" if we're not using CSS we cannot use a pre section because <font> tags
@@ -663,6 +722,7 @@ func! tohtml#GetUserSettings() "{{{
endif
" }}}
" textual options
if exists("g:html_use_encoding") "{{{
" user specified the desired MIME charset, figure out proper
" 'fileencoding' from it or warn the user if we cannot
@@ -705,6 +765,45 @@ func! tohtml#GetUserSettings() "{{{
endif
endif "}}}
" Default to making nothing uncopyable, because we default to
" not-standards way of doing things, and also because Microsoft Word and
" others paste the <input> elements anyway.
"
" html_prevent_copy only has an effect when using CSS.
"
" All options:
" f - fold column
" n - line numbers (also within fold text)
" t - fold text
" d - diff filler
" c - concealed text (reserved future)
" l - listchars (reserved possible future)
" s - signs (reserved possible future)
"
" Normal text is always selectable.
let user_settings.prevent_copy = ""
if user_settings.use_css
if exists("g:html_prevent_copy")
if user_settings.dynamic_folds && !user_settings.no_foldcolumn && g:html_prevent_copy =~# 'f'
let user_settings.prevent_copy .= 'f'
endif
if user_settings.number_lines && g:html_prevent_copy =~# 'n'
let user_settings.prevent_copy .= 'n'
endif
if &diff && g:html_prevent_copy =~# 'd'
let user_settings.prevent_copy .= 'd'
endif
if !user_settings.ignore_folding && g:html_prevent_copy =~# 't'
let user_settings.prevent_copy .= 't'
endif
else
let user_settings.prevent_copy = ""
endif
endif
if empty(user_settings.prevent_copy)
let user_settings.no_invalid = 0
endif
" TODO: font
return user_settings

View File

@@ -1,7 +1,8 @@
" Vim compiler file
" Compiler: Mono C# Compiler
" Maintainer: Jarek Sobiecki <harijari@go2.pl>
" Latest Revision: 2006-06-18
" Last Updated By: Peter Collingbourne
" Latest Revision: 2012 Jul 19
if exists("current_compiler")
finish
@@ -12,13 +13,18 @@ let s:cpo_save = &cpo
set cpo-=C
setlocal errorformat=
\%D%.%#Project\ \"%f/%[%^/\"]%#\"%.%#,
\%X%.%#Done\ building\ project\ \"%f/%[%^/\"]%#\"%.%#,
\%-G%\\s%.%#,
\%E%f(%l):\ error\ CS%n:%m,
\%W%f(%l):\ warning\ CS%n:%m,
\%E%f(%l\\,%c):\ error\ CS%n:%m,
\%W%f(%l\\,%c):\ warning\ CS%n:%m,
\%E%>syntax\ error\\,%m,%Z%f(%l\\,%c):\ error\ CS%n:%m,
\%D%*\\a[%*\\d]:\ Entering\ directory\ `%f',
\%X%*\\a[%*\\d]:\ Leaving\ directory\ `%f',
\%DMaking\ %*\\a\ in\ %f,
\%G-%.%#
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -1,4 +1,4 @@
*autocmd.txt* For Vim version 7.3. Last change: 2012 Jul 10
*autocmd.txt* For Vim version 7.3. Last change: 2012 Sep 05
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -263,8 +263,10 @@ Name triggered by ~
Startup and exit
|VimEnter| after doing all the startup stuff
|GUIEnter| after starting the GUI successfully
|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
|VimLeavePre| before exiting Vim, before writing the viminfo file
|VimLeave| before exiting Vim, after writing the viminfo file
@@ -312,6 +314,7 @@ Name triggered by ~
|SessionLoadPost| after loading a session file
|MenuPopup| just before showing the popup menu
|CompleteDone| after Insert mode completion is done
|User| to be used in combination with ":doautocmd"

View File

@@ -1,4 +1,4 @@
*change.txt* For Vim version 7.3. Last change: 2012 Jun 13
*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*
@@ -666,6 +669,8 @@ The flags that you can use for the substitute commands:
[n] Report the number of matches, do not actually substitute. The [c]
flag is ignored. The matches are reported as if 'report' is zero.
Useful to |count-items|.
If \= |sub-replace-expression| is used, the expression will be
evaluated in the |sandbox| at every match.
[p] Print the line containing the last substitute.

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: 2012 Oct 11
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

View File

@@ -1,4 +1,4 @@
*diff.txt* For Vim version 7.3. Last change: 2012 May 18
*diff.txt* For Vim version 7.3. Last change: 2012 Sep 05
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -86,16 +86,16 @@ diff mode. You could use a construct like this: >
While already in Vim you can start diff mode in three ways.
*E98*
:diffsplit {filename} *:diffs* *:diffsplit*
:diffs[plit] {filename} *:diffs* *:diffsplit*
Open a new window on the file {filename}. The options are set
as for "vimdiff" for the current and the newly opened window.
Also see 'diffexpr'.
*:difft* *:diffthis*
:diffthis Make the current window part of the diff windows. This sets
:difft[his] Make the current window part of the diff windows. This sets
the options like for "vimdiff".
:diffpatch {patchfile} *E816* *:diffp* *:diffpatch*
:diffp[atch] {patchfile} *E816* *:diffp* *:diffpatch*
Use the current buffer, patch it with the diff found in
{patchfile} and open a buffer on the result. The options are
set as for "vimdiff".
@@ -123,9 +123,9 @@ Since the option values are remembered with the buffer, you can edit another
file for a moment and come back to the same file and be in diff mode again.
*:diffo* *:diffoff*
:diffoff Switch off diff mode for the current window.
:diffo[ff] Switch off diff mode for the current window.
:diffoff! Switch off diff mode for the current window and in all windows
:diffo[ff]! Switch off diff mode for the current window and in all windows
in the current tab page where 'diff' is set.
The ":diffoff" command resets the relevant options to their default value.
@@ -333,7 +333,7 @@ diff. This example explains the format that Vim expects: >
The "1a2" item appends the line "bbb".
The "4d4" item deletes the line "111".
The '7c7" item replaces the line "GGG" with "ggg".
The "7c7" item replaces the line "GGG" with "ggg".
When 'diffexpr' is not empty, Vim evaluates it to obtain a diff file in the
format mentioned. These variables are set to the file names used:

View File

@@ -1,4 +1,4 @@
*editing.txt* For Vim version 7.3. Last change: 2012 Jul 10
*editing.txt* For Vim version 7.3. Last change: 2012 Aug 08
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -393,7 +393,7 @@ is to use "path\[[]abc]". Then the file "path[abc]" literally.
*starstar-wildcard*
Expanding "**" is possible on Unix, Win32, Mac OS/X and a few other systems.
This allows searching a directory tree. This goes up to 100 directories deep.
Note there are some commands where this works slightly different, see
Note there are some commands where this works slightly differently, see
|file-searching|.
Example: >
:n **/*.txt

View File

@@ -1,4 +1,4 @@
*eval.txt* For Vim version 7.3. Last change: 2012 Jul 10
*eval.txt* For Vim version 7.3. Last change: 2012 Nov 21
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.
@@ -759,7 +759,7 @@ of a |List| is different from the original |List|. When using "is" without
a |List| or a |Dictionary| it is equivalent to using "equal", using "isnot"
equivalent to using "not equal". Except that a different type means the
values are different: "4 == '4'" is true, "4 is '4'" is false and "0 is []" is
false and not a error. "is#"/"isnot#" and "is?"/"isnot?" can be used to match
false and not an error. "is#"/"isnot#" and "is?"/"isnot?" can be used to match
and ignore case.
When comparing a String with a Number, the String is converted to a Number,
@@ -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}]])
@@ -1932,6 +1934,7 @@ setwinvar( {nr}, {varname}, {val}) set {varname} in window {nr} to {val}
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}
@@ -3288,8 +3291,9 @@ getfperm({fname}) *getfperm()*
"rwx" flags represent, in turn, the permissions of the owner
of the file, the group the file belongs to, and other users.
If a user does not have a given permission the flag for this
is replaced with the string "-". Example: >
is replaced with the string "-". Examples: >
:echo getfperm("/etc/passwd")
:echo getfperm(expand("~/.vimrc"))
< This will hopefully (from a security point of view) display
the string "rw-r--r--" or even "rw-------".
@@ -3753,10 +3757,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
@@ -4449,6 +4453,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
@@ -4563,6 +4568,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
@@ -4634,8 +4643,8 @@ pyeval({expr}) *pyeval()*
Numbers and strings are returned as they are (strings are
copied though).
Lists are represented as Vim |List| type.
Dictionaries are represented as Vim |Dictionary| type with
keys converted to strings.
Dictionaries are represented as Vim |Dictionary| type,
non-string keys result in error.
{only available when compiled with the |+python| feature}
*E726* *E727*
@@ -4871,9 +4880,9 @@ 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
@@ -5252,8 +5261,9 @@ setreg({regname}, {value} [,{options}])
If {options} contains no register settings, then the default
is to use character mode unless {value} ends in a <NL>.
Setting the '=' register is not possible.
Returns zero for success, non-zero for failure.
Setting the '=' register is not possible, but you can use >
:let @= = var_expr
< Returns zero for success, non-zero for failure.
Examples: >
:call setreg(v:register, @*)
@@ -5329,6 +5339,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
@@ -5458,7 +5485,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
@@ -5668,8 +5696,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
@@ -6134,8 +6164,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.
@@ -6325,6 +6356,7 @@ mouse_gpm Compiled with support for gpm (Linux console mouse)
mouse_netterm Compiled with support for netterm mouse.
mouse_pterm Compiled with support for qnx pterm mouse.
mouse_sysmouse Compiled with support for sysmouse (*BSD console mouse)
mouse_sgr Compiled with support for sgr mouse.
mouse_urxvt Compiled with support for urxvt mouse.
mouse_xterm Compiled with support for xterm mouse.
mouseshape Compiled with support for 'mouseshape'.
@@ -6505,6 +6537,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

@@ -1,4 +1,4 @@
*gui_w32.txt* For Vim version 7.3. Last change: 2011 Jul 23
*gui_w32.txt* For Vim version 7.3. Last change: 2012 Aug 04
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -489,4 +489,16 @@ to:
And add gvim to the list of applications. This problem only appears to happen
with the Intellimouse driver 2.2 and when "Universal Scrolling" is turned on.
XPM support *w32-xpm-support*
Gvim can be build on MS-Windows with support for XPM files. |+xpm_w32|
See the Make_mvc.mak file for instructions, search for XPM.
To try out if XPM support works do this: >
:help
:exe 'sign define vimxpm icon=' . $VIMRUNTIME . '\\vim16x16.xpm'
:exe 'sign place 1 line=1 name=vimxpm file=' . expand('%:p')
<
vim:tw=78:sw=4:ts=8:ft=help:norl:

View File

@@ -93,7 +93,7 @@ Details
This is also the keymap when 'keymap=hebrew' is set. The advantage of
'keymap' is that it works properly when using UTF8, e.g. it inserts the
correct characters; 'hkmap' does not. The 'keymap' keyboard can also
insert niqud and te`amim. To see what those mappings are,look at the
insert niqud and te`amim. To see what those mappings are, look at the
keymap file 'hebrew.vim' etc.

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_perl.txt* For Vim version 7.3. Last change: 2010 Jul 21
*if_perl.txt* For Vim version 7.3. Last change: 2012 Oct 25
VIM REFERENCE MANUAL by Sven Verdoolaege
@@ -44,15 +44,17 @@ The Perl patches for Vim were made by:
Sven Verdoolaege <skimo@breughel.ufsia.ac.be>
Matt Gerassimof
Perl for MS-Windows can be found at:
http://www.perl.com/CPAN/ports/nt/Standard/x86/
Perl for MS-Windows can be found at: http://www.perl.com/
The ActiveState one should work.
==============================================================================
3. Using the Perl interface *perl-using*
*:perl* *:pe*
:pe[rl] {cmd} Execute Perl command {cmd}. The current package
is "main".
is "main". Simple example to test if `:perl` is
working: >
:perl VIM::Msg("Hello")
:pe[rl] << {endpattern}
{script}
@@ -173,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 Feb 04
*if_pyth.txt* For Vim version 7.3. Last change: 2012 Sep 23
VIM REFERENCE MANUAL by Paul Moore
@@ -27,7 +27,9 @@ The Python 3 interface is available only when Vim was compiled with the
*:python* *:py* *E205* *E263* *E264*
:[range]py[thon] {stmt}
Execute Python statement {stmt}.
Execute Python statement {stmt}. A simple check if
the `:python` command is working: >
:python print "Hello"
:[range]py[thon] << {endmarker}
{script}
@@ -157,6 +159,26 @@ vim.bindeval(str) *python-bindeval*
vimlist or vimdictionary python type that are connected to original
list or dictionary. Thus modifications to these objects imply
modifications of the original.
Additionally, vimlist and vimdictionary type have read-write
`.locked` attribute that returns
Value Meaning ~
zero Variable is not locked
vim.VAR_LOCKED Variable is locked, but can be unlocked
vim.VAR_FIXED Variable is locked and can't be unlocked
integer constants. If variable is not fixed, you can do
`var.locked=True` to lock it and `var.locked=False` to unlock.
There is no recursive locking like |:lockvar|! does. There is also
no way to lock a specific key or check whether it is locked (in any
case these locks are ignored by anything except |:let|: |extend()|
does not care, neither does python interface).
Vimdictionary type also supports `.scope` attribute which is one of
Value Meaning ~
zero Dictionary is not a scope one
vim.VAR_DEF_SCOPE Function-local or global scope dictionary
vim.VAR_SCOPE Other scope dictionary
2. if expression evaluates to a function reference, then it returns
callable vimfunction object. Use self keyword argument to assign
|self| object for dictionary functions.
@@ -362,8 +384,10 @@ sure edit "gvim.exe" and search for "python\d*.dll\c".
8. Python 3 *python3*
*:py3* *:python3*
The |:py3| and |:python3| commands work similar to |:python|.
*:py3file*
The |:py3| and |:python3| commands work similar to |:python|. A simple check
if the `:py3` command is wrong: >
:py3 print("Hello")
< *:py3file*
The |:py3file| command works similar to |:pyfile|.

View File

@@ -1,4 +1,4 @@
*if_ruby.txt* For Vim version 7.3. Last change: 2010 Oct 27
*if_ruby.txt* For Vim version 7.3. Last change: 2012 Aug 02
VIM REFERENCE MANUAL by Shugo Maeda
@@ -25,7 +25,8 @@ downloading Ruby there.
1. Commands *ruby-commands*
*:ruby* *:rub*
:rub[y] {cmd} Execute Ruby command {cmd}.
:rub[y] {cmd} Execute Ruby command {cmd}. A command to try it out: >
:ruby print "Hello"
:rub[y] << {endpattern}
{script}
@@ -40,9 +41,6 @@ downloading Ruby there.
wasn't compiled in. To avoid errors, see
|script-here|.
Command to try it out: >
:ruby print "Hello" # this is a comment
Example Vim script: >
function! RedGem()
@@ -211,6 +209,8 @@ for sure edit "gvim.exe" and search for "ruby\d*.dll\c".
If you want to build Vim with Ruby 1.9.1, you need to edit the config.h file
and comment-out the check for _MSC_VER.
You may also need to rename the include directory name to match the version,
strangely for Ruby 1.9.3 the directory is called 1.9.1.
==============================================================================
vim:tw=78:ts=8:ft=help:norl:

View File

@@ -1,4 +1,4 @@
*if_tcl.txt* For Vim version 7.3. Last change: 2008 Aug 16
*if_tcl.txt* For Vim version 7.3. Last change: 2012 Aug 02
VIM REFERENCE MANUAL by Ingo Wilken
@@ -27,7 +27,9 @@ comments, ideas etc to <Ingo.Wilken@informatik.uni-oldenburg.de>
1. Commands *tcl-ex-commands* *E571* *E572*
*:tcl* *:tc*
:tc[l] {cmd} Execute Tcl command {cmd}.
:tc[l] {cmd} Execute Tcl command {cmd}. A simple check if `:tcl`
is working: >
:tcl puts "Hello"
:[range]tc[l] << {endmarker}
{script}

View File

@@ -1,4 +1,4 @@
*indent.txt* For Vim version 7.3. Last change: 2011 Sep 02
*indent.txt* For Vim version 7.3. Last change: 2012 Aug 30
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -540,7 +540,7 @@ The examples below assume a 'shiftwidth' of 4.
*cino-star*
*N Vim searches for unclosed comments at most N lines away. This
limits the time needed to search for the start of a comment.
If your /* */ comments stop indenting afer N lines this is the
If your /* */ comments stop indenting after N lines this is the
value you will want to change.
(default 70 lines).

View File

@@ -1,4 +1,4 @@
*index.txt* For Vim version 7.3. Last change: 2011 Aug 06
*index.txt* For Vim version 7.3. Last change: 2012 Jul 25
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -719,6 +719,8 @@ tag char note action in Normal mode ~
|gH| gH start Select line mode
|gI| gI 2 like "I", but always start in column 1
|gJ| gJ 2 join lines without inserting space
|gN| gN 1,2 find the previous match with the last used
search pattern and Visually select it
|gP| ["x]gP 2 put the text [from register x] before the
cursor N times, leave the cursor after it
|gQ| gQ switch to "Ex" mode with Vim editing

View File

@@ -1,4 +1,4 @@
*intro.txt* For Vim version 7.3. Last change: 2011 May 15
*intro.txt* For Vim version 7.3. Last change: 2012 Sep 05
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -394,6 +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.
*key-notation* *key-codes* *keycodes*
These names for keys are used in the documentation. They can also be used

View File

@@ -1244,6 +1244,7 @@ completion can be enabled:
-complete=syntax syntax file names |'syntax'|
-complete=tag tags
-complete=tag_listfiles tags, file names are shown when CTRL-D is hit
-complete=user user names
-complete=var user variables
-complete=custom,{func} custom completion, defined via {func}
-complete=customlist,{func} custom completion, defined via {func}

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 @@
*motion.txt* For Vim version 7.3. Last change: 2012 Jul 06
*motion.txt* For Vim version 7.3. Last change: 2012 Aug 04
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -57,7 +57,7 @@ or change text. The following operators are available:
|>| > shift right
|<| < shift left
|zf| zf define a fold
|g@| g@ call function set with the 'operatorfunc' option
|g@| g@ call function set with the 'operatorfunc' option
If the motion includes a count and the operator also had a count before it,
the two counts are multiplied. For example: "2d3w" deletes six words.
@@ -326,6 +326,7 @@ gg Goto line [count], default first line, on the first
non-blank character |linewise|. If 'startofline' not
set, keep the same column.
*:[range]*
:[range] Set the cursor on the last line number in [range].
[range] can also be just one line number, e.g., ":1"
or ":'m".
@@ -513,6 +514,8 @@ always select less text than the "a" commands.
These commands are {not in Vi}.
These commands are not available when the |+textobjects| feature has been
disabled at compile time.
Also see `gn` and `gN`, operating on the last search pattern.
*v_aw* *aw*
aw "a word", select [count] words (see |word|).
Leading or trailing white space is included, but not
@@ -689,6 +692,7 @@ movement commands are used.
"daw" delete a word *daw*
"diW" delete inner WORD (see |WORD|) *diW*
"daW" delete a WORD (see |WORD|) *daW*
"dgn" delete the next search pattern match *dgn*
"dd" delete one line |dd|
"dis" delete inner sentence *dis*
"das" delete a sentence *das*

View File

@@ -1,4 +1,4 @@
*options.txt* For Vim version 7.3. Last change: 2012 Jul 10
*options.txt* For Vim version 7.3. Last change: 2012 Oct 21
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).
@@ -6119,6 +6119,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. Use the |shiftwidth()|
function to get the effective shiftwidth value.
*'shortmess'* *'shm'*
'shortmess' 'shm' string (Vim default "filnxtToO", Vi default: "",
@@ -6382,6 +6384,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.
@@ -7425,6 +7428,10 @@ A jump table for the options with a short description can be found at |Q_op|.
pterm QNX pterm mouse handling.
*urxvt-mouse*
urxvt Mouse handling for the urxvt (rxvt-unicode) terminal.
*sgr-mouse*
sgr Mouse handling for the terminal that emits SGR-styled
mouse reporting. Works with xterm version 277 or
later.
The mouse handling must be enabled at compile time |+mouse_xterm|
|+mouse_dec| |+mouse_netterm|.
@@ -7437,6 +7444,7 @@ A jump table for the options with a short description can be found at |Q_op|.
or "xterm2" already. The main use of this option is to set it to
"xterm", when the terminal name doesn't start with "xterm", but it can
handle xterm mouse codes.
The "sgr" value will be set if the xterm version is 277 or later.
The "xterm2" value will be set if the xterm version is reported to be
95 or higher. This only works when compiled with the |+termresponse|
feature and if |t_RV| is set to the escape sequence to request the
@@ -7488,7 +7496,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 @@
*pi_gzip.txt* For Vim version 7.3. Last change: 2002 Oct 29
*pi_gzip.txt* For Vim version 7.3. Last change: 2012 Jul 19
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -25,6 +25,8 @@ with these extensions:
*.Z compress (Lempel-Ziv)
*.gz gzip
*.bz2 bzip2
*.lzma lzma
*.xz xz
That's actually the only thing you need to know. There are no options.

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 @@
*syntax.txt* For Vim version 7.3. Last change: 2012 Jun 13
*syntax.txt* For Vim version 7.3. Last change: 2012 Nov 28
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -380,194 +380,23 @@ settings, depending on which syntax is active. Example: >
This is not a syntax file itself, but a script that converts the current
window into HTML. Vim opens a new window in which it builds the HTML file.
After you save the resulting file, you can view it with any browser. The
colors should be exactly the same as you see them in Vim.
You are not supposed to set the 'filetype' or 'syntax' option to "2html"!
Source the script to convert the current file: >
:runtime! syntax/2html.vim
<
*:TOhtml*
Or use the ":TOhtml" user command. It is defined in a standard plugin.
":TOhtml" also works with a range and in a Visual area: >
:10,40TOhtml
Warning: This can be slow! The script must process every character of every
line. Because it can take a long time, by default a progress bar is displayed
in the statusline for each major step in the conversion process. If you don't
like seeing this progress bar, you can disable it and get a very minor speed
improvement with: >
let g:html_no_progress = 1
":TOhtml" has another special feature: if the window is in diff mode, it will
generate HTML that shows all the related windows. This can be disabled by
setting the g:html_diff_one_file variable: >
let g:html_diff_one_file = 1
After you save the resulting file, you can view it with any browser. The
colors should be exactly the same as you see them in Vim.
To restrict the conversion to a range of lines, use a range with the |:TOhtml|
command, or set "g:html_start_line" and "g:html_end_line" to the first and
last line to be converted. Example, using the last set Visual area: >
:let g:html_start_line = line("'<")
:let g:html_end_line = line("'>")
The lines are numbered according to 'number' option and the Number
highlighting. You can force lines to be numbered in the HTML output by
setting "html_number_lines" to non-zero value: >
:let g:html_number_lines = 1
Force to omit the line numbers by using a zero value: >
:let g:html_number_lines = 0
Go back to the default to use 'number' by deleting the variable: >
:unlet g:html_number_lines
By default, valid HTML 4.01 using cascading style sheets (CSS1) is generated.
If you need to generate markup for really old browsers or some other user
agent that lacks basic CSS support, use: >
:let g:html_use_css = 0
Concealed text is removed from the HTML and replaced with the appropriate
character from |:syn-cchar| or 'listchars' depending on the current value of
'conceallevel'. If you always want to display all text in your document,
either set 'conceallevel' to zero before invoking 2html, or use: >
:let g:html_ignore_conceal = 1
Similarly, closed folds are put in the HTML as they are displayed. If you
don't want this, use the |zR| command before invoking 2html, or use: >
:let g:html_ignore_folding = 1
You may want to generate HTML that includes all the data within the folds, and
allow the user to view the folded data similar to how they would in Vim. To
generate this dynamic fold information, use: >
:let g:html_dynamic_folds = 1
Using html_dynamic_folds will imply html_use_css, because it would be far too
difficult to do it for old browsers. However, html_ignore_folding overrides
html_dynamic_folds.
Using html_dynamic_folds will default to generating a foldcolumn in the html
similar to Vim's foldcolumn, that will use javascript to open and close the
folds in the HTML document. The width of this foldcolumn starts at the current
setting of |'foldcolumn'| but grows to fit the greatest foldlevel in your
document. If you do not want to show a foldcolumn at all, use: >
:let g:html_no_foldcolumn = 1
Using this option, there will be no foldcolumn available to open the folds in
the HTML. For this reason, another option is provided: html_hover_unfold.
Enabling this option will use CSS 2.0 to allow a user to open a fold by
hovering the mouse pointer over it. Note that old browsers (notably Internet
Explorer 6) will not support this feature. Browser-specific markup for IE6 is
included to fall back to the normal CSS1 code so that the folds show up
correctly for this browser, but they will not be openable without a
foldcolumn. Note that using html_hover_unfold will allow modern browsers with
disabled javascript to view closed folds. To use this option, use: >
:let g:html_hover_unfold = 1
Setting html_no_foldcolumn with html_dynamic_folds will automatically set
html_hover_unfold, because otherwise the folds wouldn't be dynamic.
By default "<pre>" and "</pre>" are used around the text. When 'wrap' is set
in the window being converted, the CSS 2.0 "white-space:pre-wrap" value is
used to wrap the text. You can explicitly enable the wrapping with: >
:let g:html_pre_wrap = 1
or disable with >
:let g:html_pre_wrap = 0
This generates HTML that looks very close to the Vim window, but unfortunately
there can be minor differences such as the lack of a 'showbreak' option in in
the HTML, or where line breaks can occur.
Another way to obtain text wrapping in the HTML, at the risk of making some
things look even more different, is to use: >
:let g:html_no_pre = 1
This will use <br> at the end of each line and use "&nbsp;" for repeated
spaces. Doing it this way is more compatible with old browsers, but modern
browsers support the "white-space" method.
If you do stick with the default "<pre>" tags, <Tab> characters in the text
are included in the generated output if they will have no effect on the
appearance of the text and it looks like they are in the document
intentionally. This allows for the HTML output to be copied and pasted from a
browser without losing the actual whitespace used in the document.
Specifically, <Tab> characters will be included if the 'tabstop' option is set
to the default of 8, 'expandtab' is not set, and if neither the foldcolumn nor
the line numbers are included in the HTML output (see options above). When any
of these conditions are not met, any <Tab> characters in the text are expanded
to the appropriate number of spaces in the HTML output.
When "<pre>" is included, you can force |:TOhtml| to keep the tabs even if the
other conditions are not met with: >
:let g:html_expand_tabs = 0
Note that this can easily break text alignment and indentation in the HTML.
Force tabs to be expanded even when they would be kept using: >
:let g:html_expand_tabs = 1
For diff mode on a single file (with g:html_diff_one_file) a sequence of more
than 3 filler lines is displayed as three lines with the middle line
mentioning the total number of inserted lines. If you prefer to see all the
inserted lines as with the side-by-side diff, use: >
:let g:html_whole_filler = 1
And to go back to displaying up to three lines again: >
:unlet g:html_whole_filler
For most buffers, TOhtml uses the current value of 'fileencoding' if set, or
'encoding' if not, to determine the charset and 'fileencoding' of the HTML
file. 'encoding' is always used for certain 'buftype' values. In general, this
works for the encodings mentioned specifically by name in |encoding-names|,
but TOhtml will only automatically use those encodings which are widely
supported. However, you can override this to support specific encodings that
may not be automatically detected by default.
To overrule all automatic charset detection, set g:html_use_encoding to the
name of the charset to be used. TOhtml will try to determine the appropriate
'fileencoding' setting from the charset, but you may need to set it manually
if TOhtml cannot determine the encoding. It is recommended to set this
variable to something widely supported, like UTF-8, for anything you will be
hosting on a webserver: >
:let g:html_use_encoding = "UTF-8"
You can also use this option to omit the line that specifies the charset
entirely, by setting g:html_use_encoding to an empty string: >
:let g:html_use_encoding = ""
To go back to the automatic mechanism, delete the g:html_use_encoding
variable: >
:unlet g:html_use_encoding
If you specify a charset with g:html_use_encoding for which TOhtml cannot
automatically detect the corresponding 'fileencoding' setting, you can use
g:html_encoding_override to allow TOhtml to detect the correct encoding.
This is a dictionary of charset-encoding pairs that will replace existing
pairs automatically detected by TOhtml, or supplement with new pairs. For
example, to allow TOhtml to detect the HTML charset "windows-1252" properly as
the encoding "8bit-cp1252", use: >
:let g:html_encoding_override = {'windows-1252': '8bit-cp1252'}
<
The g:html_charset_override is similar, it allows TOhtml to detect the HTML
charset for any 'fileencoding' or 'encoding' which is not detected
automatically. You can also use it to override specific existing
encoding-charset pairs. For example, TOhtml will by default use UTF-8 for all
Unicode/UCS encodings. To use UTF-16 and UTF-32 instead, use: >
:let g:html_charset_override = {'ucs-4': 'UTF-32', 'utf-16': 'UTF-16'}
Note that documents encoded in either UTF-32 or UTF-16 have known
compatibility problems with at least one major browser.
*convert-to-XML* *convert-to-XHTML*
If you do not like plain HTML, an alternative is to have the script generate
XHTML (XML compliant HTML). To do this set the "html_use_xhtml" variable: >
:let g:html_use_xhtml = 1
Any of the on/off options listed above can be enabled or disabled by setting
them explicitly to the desired value, or restored to their default by removing
the variable using |:unlet|.
Many variables affect the output of 2html.vim; see below. Any of the on/off
options listed below can be enabled or disabled by setting them explicitly to
the desired value, or restored to their default by removing the variable using
|:unlet|.
Remarks:
- Some truly ancient browsers may not show the background colors.
- From most browsers you can also print the file (in color)!
- This version of TOhtml may work with older versions of Vim, but some
- The latest TOhtml may actually work with older versions of Vim, but some
features such as conceal support will not function, and the colors may be
incorrect for an old Vim without GUI support compiled in.
@@ -575,6 +404,311 @@ Here is an example how to run the script over all .c and .h files from a
Unix shell: >
for f in *.[ch]; do gvim -f +"syn on" +"run! syntax/2html.vim" +"wq" +"q" $f; done
<
*g:html_start_line* *g:html_end_line*
To restrict the conversion to a range of lines, use a range with the |:TOhtml|
command below, or set "g:html_start_line" and "g:html_end_line" to the first
and last line to be converted. Example, using the last set Visual area: >
:let g:html_start_line = line("'<")
:let g:html_end_line = line("'>")
:runtime! syntax/2html.vim
<
*:TOhtml*
:[range]TOhtml The ":TOhtml" command is defined in a standard plugin.
This command will source |2html.vim| for you. When a
range is given, set |g:html_start_line| and
|g:html_end_line| to the start and end of the range,
respectively. Default range is the entire buffer.
If the current window is part of a |diff|, unless
|g:html_diff_one_file| is set, :TOhtml will convert
all windows which are part of the diff in the current
tab and place them side-by-side in a <table> element
in the generated HTML.
Examples: >
:10,40TOhtml " convert lines 10-40 to html
:'<,'>TOhtml " convert current/last visual selection
:TOhtml " convert entire buffer
<
*g:html_diff_one_file*
Default: 0.
When 0, all windows involved in a |diff| in the current tab page are converted
to HTML and placed side-by-side in a <table> element.
When 1, only the current buffer is converted.
Example: >
let g:html_diff_one_file = 1
<
*g:html_whole_filler*
Default: 0.
When 0, if |g:html_diff_one_file| is 1, a sequence of more than 3 filler lines
is displayed as three lines with the middle line mentioning the total number
of inserted lines.
When 1, always display all inserted lines as if |g:html_diff_one_file| were
not set.
>
:let g:html_whole_filler = 1
<
*TOhtml-performance* *g:html_no_progress*
Default: 0.
When 0, display a progress bar in the statusline for each major step in the
2html.vim conversion process.
When 1, do not display the progress bar. This offers a minor speed improvement
but you won't have any idea how much longer the conversion might take; for big
files it can take a long time!
Example: >
let g:html_no_progress = 1
<
You can obtain better performance improvements by also instructing Vim to not
run interactively, so that too much time is not taken to redraw as the script
moves through the buffer, switches windows, and the like: >
vim -E -s -c "let g:html_no_progress=1" -c "syntax on" -c "set ft=c" -c "runtime syntax/2html.vim" -cwqa myfile.c
<
Note that the -s flag prevents loading your .vimrc and any plugins, so you
need to explicitly source/enable anything that will affect the HTML
conversion. See |-E| and |-s-ex| for details. It is probably best to create a
script to replace all the -c commands and use it with the -u flag instead of
specifying each command separately.
*g:html_number_lines*
Default: current 'number' setting.
When 0, buffer text is displayed in the generated HTML without line numbering.
When 1, a column of line numbers is added to the generated HTML with the same
highlighting as the line number column in Vim (|hl-LineNr|).
Force line numbers even if 'number' is not set: >
:let g:html_number_lines = 1
Force to omit the line numbers: >
:let g:html_number_lines = 0
Go back to the default to use 'number' by deleting the variable: >
:unlet g:html_number_lines
<
*g:html_use_css*
Default: 1.
When 1, generate valid HTML 4.01 markup with CSS1 styling, supported in all
modern browsers and most old browsers.
When 0, generate <font> tags and similar outdated markup. This is not
recommended but it may work better in really old browsers, email clients,
forum posts, and similar situations where basic CSS support is unavailable.
Example: >
:let g:html_use_css = 0
<
*g:html_ignore_conceal*
Default: 0.
When 0, concealed text is removed from the HTML and replaced with a character
from |:syn-cchar| or 'listchars' as appropriate, depending on the current
value of 'conceallevel'.
When 1, include all text from the buffer in the generated HTML, even if it is
|conceal|ed.
Either of the following commands will ensure that all text in the buffer is
included in the generated HTML (unless it is folded): >
:let g:html_ignore_conceal = 1
:setl conceallevel=0
<
*g:html_ignore_folding*
Default: 0.
When 0, text in a closed fold is replaced by the text shown for the fold in
Vim (|fold-foldtext|). See |g:html_dynamic_folds| if you also want to allow
the user to expand the fold as in Vim to see the text inside.
When 1, include all text from the buffer in the generated HTML; whether the
text is in a fold has no impact at all. |g:html_dynamic_folds| has no effect.
Either of these commands will ensure that all text in the buffer is included
in the generated HTML (unless it is concealed): >
zR
:let g:html_ignore_folding = 1
<
*g:html_dynamic_folds*
Default: 0.
When 0, text in a closed fold is not included at all in the generated HTML.
When 1, generate javascript to open a fold and show the text within, just like
in Vim.
Setting this variable to 1 causes 2html.vim to always use CSS for styling,
regardless of what |g:html_use_css| is set to.
This variable is ignored when |g:html_ignore_folding| is set.
>
:let g:html_dynamic_folds = 1
<
*g:html_no_foldcolumn*
Default: 0.
When 0, if |g:html_dynamic_folds| is 1, generate a column of text similar to
Vim's foldcolumn (|fold-foldcolumn|) the user can click on to toggle folds
open or closed. The minimum width of the generated text column is the current
'foldcolumn' setting.
When 1, do not generate this column; instead, hovering the mouse cursor over
folded text will open the fold as if |g:html_hover_unfold| were set.
>
:let g:html_no_foldcolumn = 1
<
*TOhtml-uncopyable-text* *g:html_prevent_copy*
Default: empty string.
This option prevents certain regions of the generated HTML from being copied,
when you select all text in document rendered in a browser and copy it. Useful
for allowing users to copy-paste only the source text even if a fold column or
line numbers are shown in the generated content. Specify regions to be
affected in this way as follows:
f: fold column
n: line numbers (also within fold text)
t: fold text
d: diff filler
Example, to make the fold column and line numbers uncopyable: >
:let g:html_prevent_copy = "fn"
<
This feature is currently implemented by inserting read-only <input> elements
into the markup to contain the uncopyable areas. This does not work well in
all cases. When pasting to some applications which understand HTML, the
<input> elements also get pasted. But plain-text paste destinations should
always work.
*g:html_no_invalid*
Default: 0.
When 0, if |g:html_prevent_copy| is non-empty, an invalid attribute is
intentionally inserted into the <input> element for the uncopyable areas. This
increases the number of applications you can paste to without also pasting the
<input> elements. Specifically, Microsoft Word will not paste the <input>
elements if they contain this invalid attribute.
When 1, no invalid markup is ever intentionally inserted, and the generated
page should validate. However, be careful pasting into Microsoft Word when
|g:html_prevent_copy| is non-empty; it can be hard to get rid of the <input>
elements which get pasted.
*g:html_hover_unfold*
Default: 0.
When 0, the only way to open a fold generated by 2html.vim with
|g:html_dynamic_folds| set, is to click on the generated fold column.
When 1, use CSS 2.0 to allow the user to open a fold by moving the mouse
cursor over the displayed fold text. This is useful to allow users with
disabled javascript to view the folded text.
Note that old browsers (notably Internet Explorer 6) will not support this
feature. Browser-specific markup for IE6 is included to fall back to the
normal CSS1 styling so that the folds show up correctly for this browser, but
they will not be openable without a foldcolumn.
>
:let g:html_hover_unfold = 1
<
*TOhtml-wrap-text* *g:html_pre_wrap*
Default: current 'wrap' setting.
When 0, if |g:html_no_pre| is 0 or unset, the text in the generated HTML does
not wrap at the edge of the browser window.
When 1, if |g:html_use_css| is 1, the CSS 2.0 "white-space:pre-wrap" value is
used, causing the text to wrap at whitespace at the edge of the browser
window.
Explicitly enable text wrapping: >
:let g:html_pre_wrap = 1
Explicitly disable wrapping: >
:let g:html_pre_wrap = 0
Go back to default, determine wrapping from 'wrap' setting: >
:unlet g:html_pre_wrap
<
*g:html_no_pre*
Default: 0.
When 0, buffer text in the generated HTML is surrounded by <pre>...</pre>
tags. Series of whitespace is shown as in Vim without special markup, and tab
characters can be included literally (see |g:html_expand_tabs|).
When 1 (not recommended), the <pre> tags are omitted, and a plain <div> is
used instead. Whitespace is replaced by a series of &nbsp; character
references, and <br> is used to end each line. This is another way to allow
text in the generated HTML is wrap (see |g:html_pre_wrap|) which also works in
old browsers, but may cause noticeable differences between Vim's display and
the rendered page generated by 2html.vim.
>
:let g:html_no_pre = 1
<
*g:html_expand_tabs*
Default: 1 if 'tabstop' is 8, 'expandtab' is 0, and no fold column or line
numbers occur in the generated HTML;
0 otherwise.
When 0, <Tab> characters in the buffer text are replaced with an appropriate
number of space characters, or &nbsp; references if |g:html_no_pre| is 1.
When 1, if |g:html_no_pre| is 0 or unset, <Tab> characters in the buffer text
are included as-is in the generated HTML. This is useful for when you want to
allow copy and paste from a browser without losing the actual whitespace in
the source document. Note that this can easily break text alignment and
indentation in the HTML, unless set by default.
Force |2html.vim| to keep <Tab> characters: >
:let g:html_expand_tabs = 0
<
Force tabs to be expanded: >
:let g:html_expand_tabs = 1
<
*TOhtml-encoding-detect* *TOhtml-encoding*
It is highly recommended to set your desired encoding with
|g:html_use_encoding| for any content which will be placed on a web server.
If you do not specify an encoding, |2html.vim| uses the preferred IANA name
for the current value of 'fileencoding' if set, or 'encoding' if not.
'encoding' is always used for certain 'buftype' values. 'fileencoding' will be
set to match the chosen document encoding.
Automatic detection works for the encodings mentioned specifically by name in
|encoding-names|, but TOhtml will only automatically use those encodings with
wide browser support. However, you can override this to support specific
encodings that may not be automatically detected by default (see options
below). See http://www.iana.org/assignments/character-sets for the IANA names.
Note, by default all Unicode encodings are converted to UTF-8 with no BOM in
the generated HTML, as recommended by W3C:
http://www.w3.org/International/questions/qa-choosing-encodings
http://www.w3.org/International/questions/qa-byte-order-mark
*g:html_use_encoding*
Default: none, uses IANA name for current 'fileencoding' as above.
To overrule all automatic charset detection, set g:html_use_encoding to the
name of the charset to be used. It is recommended to set this variable to
something widely supported, like UTF-8, for anything you will be hosting on a
webserver: >
:let g:html_use_encoding = "UTF-8"
You can also use this option to omit the line that specifies the charset
entirely, by setting g:html_use_encoding to an empty string (NOT recommended): >
:let g:html_use_encoding = ""
To go back to the automatic mechanism, delete the |g:html_use_encoding|
variable: >
:unlet g:html_use_encoding
<
*g:html_encoding_override*
Default: none, autoload/tohtml.vim contains default conversions for encodings
mentioned by name at |encoding-names|.
This option allows |2html.vim| to detect the correct 'fileencoding' when you
specify an encoding with |g:html_use_encoding| which is not in the default
list of conversions.
This is a dictionary of charset-encoding pairs that will replace existing
pairs automatically detected by TOhtml, or supplement with new pairs.
Detect the HTML charset "windows-1252" as the encoding "8bit-cp1252": >
:let g:html_encoding_override = {'windows-1252': '8bit-cp1252'}
<
*g:html_charset_override*
Default: none, autoload/tohtml.vim contains default conversions for encodings
mentioned by name at |encoding-names| and which have wide
browser support.
This option allows |2html.vim| to detect the HTML charset for any
'fileencoding' or 'encoding' which is not detected automatically. You can also
use it to override specific existing encoding-charset pairs. For example,
TOhtml will by default use UTF-8 for all Unicode/UCS encodings. To use UTF-16
and UTF-32 instead, use: >
:let g:html_charset_override = {'ucs-4': 'UTF-32', 'utf-16': 'UTF-16'}
Note that documents encoded in either UTF-32 or UTF-16 have known
compatibility problems with some major browsers.
*convert-to-XML* *convert-to-XHTML* *g:html_use_xhtml*
Default: 0.
When 0, generate standard HTML 4.01 (strict when possible).
When 1, generate XHTML 1.0 instead (XML compliant HTML).
>
:let g:html_use_xhtml = 1
<
ABEL *abel.vim* *ft-abel-syntax*
@@ -956,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*
@@ -2355,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

View File

@@ -1,4 +1,4 @@
*tabpage.txt* For Vim version 7.3. Last change: 2010 Jul 31
*tabpage.txt* For Vim version 7.3. Last change: 2012 Aug 08
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -113,7 +113,7 @@ something else.
this is a "safe" command.
:tabc[lose][!] {count}
Close tab page {count}. Fails in the same way as ':tabclose"
Close tab page {count}. Fails in the same way as `:tabclose`
above.
*:tabo* *:tabonly*

View File

@@ -1186,6 +1186,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
+mouse_gpm various.txt /*+mouse_gpm*
+mouse_netterm various.txt /*+mouse_netterm*
+mouse_pterm various.txt /*+mouse_pterm*
+mouse_sgr various.txt /*+mouse_sgr*
+mouse_sysmouse various.txt /*+mouse_sysmouse*
+mouse_urxvt various.txt /*+mouse_urxvt*
+mouse_xterm various.txt /*+mouse_xterm*
@@ -1836,6 +1837,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
:X editing.txt /*:X*
:XMLent insert.txt /*:XMLent*
:XMLns insert.txt /*:XMLns*
:[range] motion.txt /*:[range]*
:\bar cmdline.txt /*:\\bar*
:_! cmdline.txt /*:_!*
:_# cmdline.txt /*:_#*
@@ -4463,6 +4465,11 @@ Syntax autocmd.txt /*Syntax*
T motion.txt /*T*
TCL if_tcl.txt /*TCL*
TERM starting.txt /*TERM*
TOhtml-encoding syntax.txt /*TOhtml-encoding*
TOhtml-encoding-detect syntax.txt /*TOhtml-encoding-detect*
TOhtml-performance syntax.txt /*TOhtml-performance*
TOhtml-uncopyable-text syntax.txt /*TOhtml-uncopyable-text*
TOhtml-wrap-text syntax.txt /*TOhtml-wrap-text*
TSQL ft_sql.txt /*TSQL*
TTpro-telnet syntax.txt /*TTpro-telnet*
Tab intro.txt /*Tab*
@@ -5285,6 +5292,7 @@ develop-spell develop.txt /*develop-spell*
develop-spell-suggestions develop.txt /*develop-spell-suggestions*
develop.txt develop.txt /*develop.txt*
development develop.txt /*development*
dgn motion.txt /*dgn*
dh change.txt /*dh*
diB motion.txt /*diB*
diW motion.txt /*diW*
@@ -5720,6 +5728,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*
@@ -5828,6 +5837,27 @@ g:gnat.Project_File ft_ada.txt /*g:gnat.Project_File*
g:gnat.Set_Project_File() ft_ada.txt /*g:gnat.Set_Project_File()*
g:gnat.Tags() ft_ada.txt /*g:gnat.Tags()*
g:gnat.Tags_Command ft_ada.txt /*g:gnat.Tags_Command*
g:html_charset_override syntax.txt /*g:html_charset_override*
g:html_diff_one_file syntax.txt /*g:html_diff_one_file*
g:html_dynamic_folds syntax.txt /*g:html_dynamic_folds*
g:html_encoding_override syntax.txt /*g:html_encoding_override*
g:html_end_line syntax.txt /*g:html_end_line*
g:html_expand_tabs syntax.txt /*g:html_expand_tabs*
g:html_hover_unfold syntax.txt /*g:html_hover_unfold*
g:html_ignore_conceal syntax.txt /*g:html_ignore_conceal*
g:html_ignore_folding syntax.txt /*g:html_ignore_folding*
g:html_no_foldcolumn syntax.txt /*g:html_no_foldcolumn*
g:html_no_invalid syntax.txt /*g:html_no_invalid*
g:html_no_pre syntax.txt /*g:html_no_pre*
g:html_no_progress syntax.txt /*g:html_no_progress*
g:html_number_lines syntax.txt /*g:html_number_lines*
g:html_pre_wrap syntax.txt /*g:html_pre_wrap*
g:html_prevent_copy syntax.txt /*g:html_prevent_copy*
g:html_start_line syntax.txt /*g:html_start_line*
g:html_use_css syntax.txt /*g:html_use_css*
g:html_use_encoding syntax.txt /*g:html_use_encoding*
g:html_use_xhtml syntax.txt /*g:html_use_xhtml*
g:html_whole_filler syntax.txt /*g:html_whole_filler*
g:netrw_alto pi_netrw.txt /*g:netrw_alto*
g:netrw_altv pi_netrw.txt /*g:netrw_altv*
g:netrw_banner pi_netrw.txt /*g:netrw_banner*
@@ -5843,6 +5873,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*
@@ -5949,6 +5980,7 @@ gF editing.txt /*gF*
gH visual.txt /*gH*
gI insert.txt /*gI*
gJ change.txt /*gJ*
gN visual.txt /*gN*
gP change.txt /*gP*
gQ intro.txt /*gQ*
gR change.txt /*gR*
@@ -6033,6 +6065,7 @@ glvs-options pi_getscript.txt /*glvs-options*
glvs-plugins pi_getscript.txt /*glvs-plugins*
glvs-usage pi_getscript.txt /*glvs-usage*
gm motion.txt /*gm*
gn visual.txt /*gn*
gnat#Insert_Tags_Header() ft_ada.txt /*gnat#Insert_Tags_Header()*
gnat#New() ft_ada.txt /*gnat#New()*
gnat-xref ft_ada.txt /*gnat-xref*
@@ -6809,6 +6842,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*
@@ -7395,6 +7429,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*
@@ -7510,6 +7545,7 @@ setuid change.txt /*setuid*
setwinvar() eval.txt /*setwinvar()*
sftp pi_netrw.txt /*sftp*
sgml.vim syntax.txt /*sgml.vim*
sgr-mouse options.txt /*sgr-mouse*
sh-awk syntax.txt /*sh-awk*
sh-embed syntax.txt /*sh-embed*
sh.vim syntax.txt /*sh.vim*
@@ -7518,6 +7554,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*
@@ -8296,11 +8333,13 @@ v_d change.txt /*v_d*
v_g? change.txt /*v_g?*
v_gF editing.txt /*v_gF*
v_gJ change.txt /*v_gJ*
v_gN visual.txt /*v_gN*
v_gV visual.txt /*v_gV*
v_g] tagsrch.txt /*v_g]*
v_g_CTRL-G editing.txt /*v_g_CTRL-G*
v_g_CTRL-] tagsrch.txt /*v_g_CTRL-]*
v_gf editing.txt /*v_gf*
v_gn visual.txt /*v_gn*
v_gq change.txt /*v_gq*
v_gv visual.txt /*v_gv*
v_gw change.txt /*v_gw*
@@ -8463,6 +8502,7 @@ vt100-cursor-keys term.txt /*vt100-cursor-keys*
vt100-function-keys term.txt /*vt100-function-keys*
w motion.txt /*w*
w32-clientserver remote.txt /*w32-clientserver*
w32-xpm-support gui_w32.txt /*w32-xpm-support*
w:current_syntax syntax.txt /*w:current_syntax*
w:quickfix_title quickfix.txt /*w:quickfix_title*
w:var eval.txt /*w:var*

View File

@@ -1,4 +1,4 @@
*todo.txt* For Vim version 7.3. Last change: 2012 Jul 11
*todo.txt* For Vim version 7.3. Last change: 2012 Nov 28
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -38,51 +38,128 @@ Go through more coverity reports.
Discussion about canonicalization of Hebrew. (Ron Aaron, 2011 April 10)
Checking runtime scripts: Thilo Six, 2012 Jun 6.
GTK: problem with 'L' in 'guioptions' changing the window width.
(Aaron Cornelius, 2012 Feb 6)
Checking runtime scripts: Thilo Six, 2012 Jun 6.
List of broken mirrors. (Chris Pentago, 2012 Jun 15)
/tmp/broken-mirrors.csv
Javascript file where indent gets stuck on: GalaxyMaster, 2012 May 3.
Patch to fix black on black for terminal with 8 colors.
(James McCoy, 2012 Jul 10)
Patch to make winrestview() work better. (Lech Lorens, 2012 Jul 10)
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.
Completefunc gets number passed instead of string.
Patch from Yakuhiro Matsumoto, 2012 Jul 10
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.
User command complete can't handle spaces. Patch by Yasuhiro Matsumoto, 2012
Jul 11.
Patch for undefined integer behavior. (Dominique Pelle, 2012 Nov 4, second one)
Patch to have Python interface not depend on multi-byte.
Patch to fix justify.vim. (James McCoy, 2012 Nov 23)
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)
Also remove the "rc" variable.
Crash with vimdiff. (Don Cruickshank, 2012 Sep 23)
Patch to support subdirectories for help files. (Charles Campbell, 2012 Nov
21)
Patch for mzscheme. (Sergey Khorev, 2012 Nov 19)
What about ignoring SEGV?
Win32: use 'guifontwide' for IME composition. (Taro Muraoka, 2012 Sep 30)
Update Oct 2.
Patch to fix :s command with confirm and typing "a". (Christian Brabandt, 2012
Oct 28)
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.
(ZyX, 2012 Sep 28)
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)
Help for v/V is not quite right. (Ben Fritz, 2012 Jun 4)
Change [count]v to select last visual area [count] times?
Problem parsing expression with function(). (Andy Wokula, 2012 Nov 22)
Patch by Christian Brabandt, Nov 22. Tests in another patch, Nov 23.
Problem caused by patch 7.3.638: window->open does not update window
correctly. Issue 91.
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) With tests: Oct 9.
Patch for IME handling, adds 'imactivatefunc' and 'imstatusfunc' option.
(Yukihiro Nakadaira, 2012 Aug 16)
Patch to improve IME handling. (Yasuhiro Matsumoto, 2012 Jul 18)
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, 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)
It's probably a good idea to make a negative value for 'sts' use the value of
'sw'. Patch by So8res, Oct 3 2012
Syntax update problem in one buffer opened in two windows, bottom window is
not correctly updated. (Paul Harris, 2012 Feb 27)
Patch to add assignments in cscope. (Uli Meis, Estabrooks, 2012 Sep 1)
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 for :tabcloseleft, after closing a tab go to left tab. (William Bowers,
2012 Aug 4)
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.
MS-Windows resizing problems:
- Windows window on screen positioning: Patch by Yukihiro Nakadaira, 2012 Jun
20. Uses getWindowRect() instead of GetWindowPlacement()
@@ -95,34 +172,57 @@ 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.
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.
- 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.
When running Vim in silent ex mode, an existing swapfile causes Vim to wait
for a user action without a prompt. (Maarten Billemont, 2012 Feb 3)
Do give the prompt? Quit with an error?
Patch for Make_mvc.mak and Make_ming.mak for Ruby support. (Yasuhiro
Matsumoto, 2012 Jan 30)
Patch for 'backupcopy' default behavior for symlinks on Windows. (David Pope,
2012 Mar 21, update Mar 31)
With fix for memory leak: Ken Takata, 2012 Aug 24
Another update Sep 24.
Patch to list user digraphs. (Christian Brabandt, 2012 Apr 14)
Patch for input method status. (Hirohito Higashi, 2012 Apr 18)
Patch to print the result of a :python command. (Maxim Philippov
<philippovmi@gmail.com>, 2012 Aug 16) Update Aug 17.
Problem with winfixheight and resizing. (Yukihiro Nakadaira, 2011 Sep 17)
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.
@@ -135,9 +235,6 @@ And one for gui_x11.txt.
Problem with starting Visual block mode with :norm when 'virtualedit' is set.
(David glts, 2012 Jun 5)
When 'guioptions' contains 'c' (use console dialog) then inputdialog() returns
a different value when the dialog is cancelled. (David Fishburn, 2012 Jul 10)
":cd" doesn't work when current directory path contains "**".
finddir() has the same problem. (Yukihiro Nakadaira, 2012 Jan 10)
Requires a rewrite of the file_file_in_path code.
@@ -169,9 +266,6 @@ Patch to add ":py3do". (Lilydjwg, 2012 Apr 7)
Plugin for Modeleasy. (Massimiliano Tripoli, 2011 Nov 29)
When using remote-silent the -R flag is not passed on. (Axel Bender, 2012 May
31)
Updated syntax file for ssh_config, maintainer doesn't respond.
(Leonard Ehrenfried, 2011 Sep 26)
@@ -238,6 +332,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.
@@ -288,6 +385,10 @@ Vim using lots of memory when joining lines. (John Little, 2010 Dec 3)
Changes to manpage plugin. (Elias Toivanen, 2011 Jul 25)
Patch to make "z=" work when 'spell' is off. Does this have nasty side
effects? (Christian Brabandt, 2012 Aug 5)
Would also need to do this for spellbadword() and spellsuggest().
On 64 bit MS-Windows "long" is only 32 bits, but we sometimes need to store a
64 bits value. Change all number options to use nropt_T and define it to the
right type.
@@ -393,7 +494,7 @@ Searching mixed with Visual mode doesn't redraw properly. (James Vega, 2010 Nov
New esperanto spell file can't be processed. (Dominique Pelle, 2011 Jan 30)
- move compflags to separate growarray?
- instead of a regexp use a hashtable. Expand '?', '*", '+'. What would be
- instead of a regexp use a hashtable. Expand '?', '*', '+'. What would be
the maximum repeat for * and +?
"L'Italie" noted as a spell error at start of the sentence. (Dominique Pelle,
@@ -546,7 +647,7 @@ Find tail? Might have a / in argument. Find space? Might have space in
path.
Test 51 fails when language set to German. (Marco, 2011 Jan 9)
Dominique can't reproduc it.
Dominique can't reproduce it.
'ambiwidth' should be global-local.
@@ -579,10 +680,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)
@@ -601,9 +698,6 @@ When a:base in 'completefunc' starts with a number it's passed as a number,
not a string. (Sean Ma) Need to add flag to call_func_retlist() to force a
string value.
":e ~br<Tab>" does not complete to ":e /home/bram/". Would need to use
getpwent() to find all the matches.
Invalid read error in Farsi mode. (Dominique Pelle, 2009 Aug 2)
For running gvim on an USB stick: avoid the OLE registration. Use a command
@@ -688,10 +782,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.
@@ -731,10 +821,6 @@ Support a 'systemencoding' option (for Unix). It specifies the encoding of
file names. (Kikuchan, 2010 Oct 5). Useful on a latin1 or double-byte Asian
system when 'encoding' is "utf-8".
Win32: A --remote command that has a directory name starting with a ( doesn't
work, the backslash is removed, assuming that it escapes the (. (Valery
Kondakoff, 2009 May 13)
Win32 GUI: Changing manifest helps for dpi changes (Joe Castro, 2009 Mar 27)
Win32 GUI: last message from startup doesn't show up when there is an echoerr
@@ -752,7 +838,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
@@ -873,8 +959,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)
@@ -920,6 +1004,15 @@ escaping characters where the backslash is not removed later. Asked Chris for
an alternate solution, also for src/ex_getln.c.
This also fails when the file or directory name contains "%". (Thoml, 2008
July 7)
Using --remote-silent while the current directory has a # in the name does not
work, the # needs to be escaped. (Tramblay Bruno, 2012 Sep 15)
When using remote-silent the -R flag is not passed on. (Axel Bender, 2012 May
31)
Win32: A --remote command that has a directory name starting with a ( doesn't
work, the backslash is removed, assuming that it escapes the (. (Valery
Kondakoff, 2009 May 13)
Problem with 'langmap' being used on the rhs of a mapping. (Nikolai Weibull,
2008 May 14)
@@ -1515,6 +1608,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 )

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

@@ -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

@@ -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
@@ -1681,7 +1681,7 @@ in your plugin file!
HEADER
You will probably add new corrections to the plugin and soon have several
versions laying around. And when distributing this file, people will want to
versions lying around. And when distributing this file, people will want to
know who wrote this wonderful plugin and where they can send remarks.
Therefore, put a header at the top of your plugin: >

View File

@@ -1,4 +1,4 @@
*various.txt* For Vim version 7.3. Last change: 2012 Jan 15
*various.txt* For Vim version 7.3. Last change: 2012 Aug 03
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -355,6 +355,7 @@ 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_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|
@@ -415,7 +416,7 @@ S *+windows* more than one window
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 |:sign-define|
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

View File

@@ -1,4 +1,4 @@
*version5.txt* For Vim version 7.3. Last change: 2008 Dec 17
*version5.txt* For Vim version 7.3. Last change: 2012 Aug 08
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -6,7 +6,7 @@
Welcome to Vim Version 5.0!
This document lists the differences between Vim 4.x and Vim 5.0.
Although 5.0 is mentioned here, this is also for version 5.1, 5.2, etc..
Although 5.0 is mentioned here, this is also for version 5.1, 5.2, etc.
See |vi_diff.txt| for an overview of differences between Vi and Vim 5.0.
See |version4.txt| for differences between Vim 3.0 and Vim 4.0.
@@ -3888,7 +3888,7 @@ character is typed. Helps to close a /* */ comment in C. (Webb)
When expand() has a second argument which is non-zero, don't use 'suffixes'
and 'wildignore', return all matches.
'O' flag in 'cpoptions: When not included, Vim will not overwrite a file, if
'O' flag in 'cpoptions' When not included, Vim will not overwrite a file, if
it didn't exist when editing started but it does exist when the buffer is
written to the file. The file must have been created outside of Vim, possibly
without the user knowing it. When this is detected after a shell command,
@@ -4499,7 +4499,7 @@ Could not get all windows back when using a smaller terminal screen. Didn't
restore all windows when "winsize" was not in 'sessionoptions'. (Webb)
Command line completion for ":buffer" depended on 'ignorecase' for Unix, but
not for DOS et al.. Now don't use 'ignorecase', but let it depend on whether
not for DOS et al. Now don't use 'ignorecase', but let it depend on whether
file names are case sensitive or not (like when expanding file names).
Win32 GUI: (Negri)

View File

@@ -1,4 +1,4 @@
*version7.txt* For Vim version 7.3. Last change: 2010 Nov 03
*version7.txt* For Vim version 7.3. Last change: 2012 Aug 08
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -3587,7 +3587,7 @@ Files: src/eval.c, src/getchar.c, src/globals.h, src/main.c
Patch 7.0.085
Problem: When doing "make test" the viminfo file is modified.
Solution: Use another viminfo file after setting 'compatible.
Solution: Use another viminfo file after setting 'compatible'.
Files: src/testdir/test56.in
Patch 7.0.086
@@ -7314,8 +7314,6 @@ Command line completion for :lmap and :lunmap.
Support syntax and filetype completion for user commands. (Christian Brabandt)
Add completion for ":ownsyntax" and improve completion for ":filetype".
Avoid use of the GTK main_loop() so that the GtkFileChooser can be used.
(James Vega)

View File

@@ -1,4 +1,4 @@
*vi_diff.txt* For Vim version 7.3. Last change: 2011 Aug 29
*vi_diff.txt* For Vim version 7.3. Last change: 2012 Aug 08
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -192,7 +192,7 @@ Syntax highlighting. |:syntax|
Spell checking. |spell|
When the 'spell' option is set Vim will highlight spelling mistakes.
About 40 languages are currently supported, selected with the
About 50 languages are currently supported, selected with the
'spelllang' option. In source code only comments and strings are
checked for spelling.
@@ -653,7 +653,7 @@ You can backspace, CTRL-U and CTRL-W over line breaks if the 'backspace' (bs)
option includes "eol". You can backspace over the start of insert if the
'backspace' option includes "start".
When the 'paste' option is set, a few option are reset and mapping in insert
When the 'paste' option is set, a few options are reset and mapping in insert
mode and abbreviation are disabled. This allows for pasting text in windowing
systems without unexpected results. When the 'paste' option is reset, the old
option values are restored.

View File

@@ -1,4 +1,4 @@
*visual.txt* For Vim version 7.3. Last change: 2012 Jun 14
*visual.txt* For Vim version 7.3. Last change: 2012 Aug 15
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -62,8 +62,15 @@ position.
*v* *characterwise-visual*
[count]v Start Visual mode per character.
With [count] select that many characters, like moving
the cursor right [count] characters. One less when
With [count] select the same number of characters or
lines as used for the last Visual operation, but at
the current cursor position, multiplied by [count].
When the previous Visual operation was on a block both
the width and height of the block are multiplied by
[count].
When there was no previous Visual operation [count]
characters are selected. This is like moving the
cursor right N * [count] characters. One less when
'selection' is not "exclusive".
*V* *linewise-visual*

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 Jun 20
" Last Change: 2012 Nov 28
" Listen very carefully, I will say this only once
if exists("did_load_filetypes")
@@ -128,6 +128,11 @@ au BufNewFile,BufRead .asoundrc,*/usr/share/alsa/alsa.conf,*/etc/asound.conf set
" Arc Macro Language
au BufNewFile,BufRead *.aml setf aml
" APT config file
au BufNewFile,BufRead apt.conf setf aptconf
au BufNewFile,BufRead */.aptitude/config setf aptconf
au BufNewFile,BufRead */etc/apt/apt.conf.d/{[-_[:alnum:]]\+,[-_.[:alnum:]]\+.conf} setf aptconf
" Arch Inventory file
au BufNewFile,BufRead .arch-inventory,=tagging-method setf arch
@@ -633,6 +638,9 @@ au BufNewFile,BufRead *.dsl setf dsl
" DTD (Document Type Definition for XML)
au BufNewFile,BufRead *.dtd setf dtd
" DTS/DSTI (device tree files)
au BufNewFile,BufRead *.dts,*.dtsi setf dts
" EDIF (*.edf,*.edif,*.edn,*.edo)
au BufNewFile,BufRead *.ed\(f\|if\|n\|o\) setf edif
@@ -1119,6 +1127,9 @@ au BufNewFile,BufRead *.nb setf mma
" Maya Extension Language
au BufNewFile,BufRead *.mel setf mel
" Mercurial (hg) commit file
au BufNewFile,BufRead hg-editor-*.txt setf hgcommit
" Mercurial config (looks like generic config file)
au BufNewFile,BufRead *.hgrc,*hgrc setf cfg
@@ -1555,7 +1566,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")
@@ -1734,7 +1745,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 |
@@ -1769,6 +1781,10 @@ func! SetFileTypeSH(name)
" Some .sh scripts contain #!/bin/tcsh.
call SetFileTypeShell("tcsh")
return
elseif a:name =~ '\<zsh\>'
" Some .sh scripts contain #!/bin/zsh.
call SetFileTypeShell("zsh")
return
elseif a:name =~ '\<ksh\>'
let b:is_kornshell = 1
if exists("b:is_bash")
@@ -1869,6 +1885,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
@@ -2290,8 +2308,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

@@ -1,7 +1,7 @@
" Vim filetype plugin file
" Language: generic Changelog file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2011-05-02
" Latest Revision: 2012-08-23
" Variables:
" g:changelog_timeformat (deprecated: use g:changelog_dateformat instead) -
" description: the timeformat used in ChangeLog entries.
@@ -106,10 +106,10 @@ if &filetype == 'changelog'
function! s:passwd_field(line, field)
let fields = split(a:line, ':', 1)
if len(fields) < field
if len(fields) < a:field
return ""
endif
return fields[field - 1]
return fields[a:field - 1]
endfunction
function! s:capitalize(word)

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

@@ -1,7 +1,7 @@
" Vim filetype plugin file
" Language: Zimbu
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2012 May 18
" Last Change: 2012 Sep 08
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
@@ -34,7 +34,7 @@ setlocal errorformat^=%f\ line\ %l\ col\ %c:\ %m,ERROR:\ %m
" When the matchit plugin is loaded, this makes the % command skip parens and
" braces in comments.
let b:match_words = '\(^\s*\)\@<=\(MODULE\|CLASS\|INTERFACE\|BITS\|ENUM\|SHARED\|FUNC\|REPLACE\|DEFINE\|PROC\|EQUAL\|MAIN\|IF\|GENERATE_IF\|WHILE\|REPEAT\|WITH\|DO\|FOR\|SWITCH\|TRY\)\>\|{\s*$:\(^\s*\)\@<=\(ELSE\|ELSEIF\|GENERATE_ELSE\|GENERATE_ELSEIF\|CATCH\|FINALLY\)\>:\(^\s*\)\@<=}\|\<UNTIL\>'
let b:match_words = '\(^\s*\)\@<=\(MODULE\|CLASS\|INTERFACE\|BITS\|ENUM\|SHARED\|FUNC\|REPLACE\|DEFINE\|PROC\|EQUAL\|MAIN\|IF\|GENERATE_IF\|WHILE\|REPEAT\|WITH\|DO\|FOR\|SWITCH\|TRY\)\>\|{\s*$:\(^\s*\)\@<=\(ELSE\|ELSEIF\|GENERATE_ELSE\|GENERATE_ELSEIF\|CATCH\|FINALLY\)\>:\(^\s*\)\@<=\(}\|\<UNTIL\>\)'
let b:match_skip = 's:comment\|string\|zimbuchar'
@@ -43,12 +43,36 @@ setlocal et sts=2 sw=2
" Does replace when a dot, space or closing brace is typed.
func! GCUpperDot(what)
let col = col(".") - strlen(a:what)
if v:char != ' ' && v:char != "\r" && v:char != "\x1b" && v:char != '.' && v:char != ')' && v:char != '}'
if v:char != ' ' && v:char != "\r" && v:char != "\x1b" && v:char != '.' && v:char != ')' && v:char != '}' && v:char != ','
" no space or dot after the typed text
let g:got_char = v:char
return a:what
endif
return GCUpperCommon(a:what)
endfunc
" Does not replace when a dot is typed.
func! GCUpper(what)
if v:char != ' ' && v:char != "\r" && v:char != "\x1b" && v:char != ')' && v:char != ','
" no space or other "terminating" character after the typed text
let g:got_char = v:char
return a:what
endif
return GCUpperCommon(a:what)
endfunc
" Only replaces when a space is typed.
func! GCUpperSpace(what)
if v:char != ' '
" no space after the typed text
let g:got_char = v:char
return a:what
endif
return GCUpperCommon(a:what)
endfunc
func! GCUpperCommon(what)
let col = col(".") - strlen(a:what)
if col > 1 && getline('.')[col - 2] != ' '
" no space before the typed text
let g:got_char = 999
@@ -64,34 +88,15 @@ func! GCUpperDot(what)
return toupper(a:what)
endfunc
" Does not replace when a dot is typed.
func! GCUpper(what)
if v:char != ' ' && v:char != "\r" && v:char != "\x1b" && v:char != ')'
" no space after the typed text
let g:got_char = v:char
return a:what
endif
return GCUpperDot(a:what)
endfunc
" Only replaces when a space is typed.
func! GCUpperSpace(what)
if v:char != ' '
" no space after the typed text
let g:got_char = v:char
return a:what
endif
return GCUpperDot(a:what)
endfunc
iabbr <buffer> <expr> alias GCUpperSpace("alias")
iabbr <buffer> <expr> arg GCUpperDot("arg")
iabbr <buffer> <expr> bad GCUpper("bad")
iabbr <buffer> <expr> break GCUpper("break")
iabbr <buffer> <expr> case GCUpperSpace("case")
iabbr <buffer> <expr> catch GCUpperSpace("catch")
iabbr <buffer> <expr> check GCUpperDot("check")
iabbr <buffer> <expr> class GCUpperSpace("class")
iabbr <buffer> <expr> interface GCUpperSpace("interface")
iabbr <buffer> <expr> implements GCUpperSpace("implements")
iabbr <buffer> <expr> shared GCUpperSpace("shared")
iabbr <buffer> <expr> continue GCUpper("continue")
iabbr <buffer> <expr> default GCUpper("default")

View File

@@ -1,7 +1,7 @@
" Vim indent file
" Language: Vim script
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2012 May 20
" Last Change: 2012 Aug 02
" Only load this indent file when no other was loaded.
if exists("b:did_indent")
@@ -22,6 +22,16 @@ let s:keepcpo= &cpo
set cpo&vim
function GetVimIndent()
let ignorecase_save = &ignorecase
try
let &ignorecase = 0
return GetVimIndentIntern()
finally
let &ignorecase = ignorecase_save
endtry
endfunc
function GetVimIndentIntern()
" Find a non-blank line above the current line.
let lnum = prevnonblank(v:lnum - 1)

View File

@@ -1,6 +1,6 @@
" Language: xml
" Maintainer: Johannes Zellner <johannes@zellner.org>
" Last Change: 2012 May 18
" Last Change: 2012 Jul 25
" Notes: 1) does not indent pure non-xml code (e.g. embedded scripts)
" 2) will be confused by unbalanced tags in comments
" or CDATA sections.
@@ -31,8 +31,16 @@ if !exists('b:xml_indent_close')
" let b:xml_indent_close = '.\{-}</\(address\)\@!'
endif
let &cpo = s:keepcpo
unlet s:keepcpo
" [-- finish, if the function already exists --]
if exists('*XmlIndentGet') | finish | endif
if exists('*XmlIndentGet')
finish
endif
let s:keepcpo= &cpo
set cpo&vim
fun! <SID>XmlIndentWithPattern(line, pat)
let s = substitute('x'.a:line, a:pat, "\1", 'g')

View File

@@ -1,7 +1,7 @@
" Vim indent file
" Language: Zimbu
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2011 Jun 19
" Last Change: 2012 Sep 08
" Only load this indent file when no other was loaded.
if exists("b:did_indent")
@@ -101,7 +101,7 @@ func GetZimbuIndent(lnum)
endwhile
endif
if prevline =~ '^\s*\(IF\|\|ELSEIF\|ELSE\|GENERATE_IF\|\|GENERATE_ELSEIF\|GENERATE_ELSE\|WHILE\|REPEAT\|TRY\|CATCH\|FINALLY\|FOR\|DO\|SWITCH\|CASE\|DEFAULT\|FUNC\|VIRTUAL\|ABSTRACT\|DEFINE\|REPLACE\|FINAL\|PROC\|MAIN\|NEW\|ENUM\|CLASS\|BITS\|MODULE\|SHARED\)\>'
if prevline =~ '^\s*\(IF\|\|ELSEIF\|ELSE\|GENERATE_IF\|\|GENERATE_ELSEIF\|GENERATE_ELSE\|WHILE\|REPEAT\|TRY\|CATCH\|FINALLY\|FOR\|DO\|SWITCH\|CASE\|DEFAULT\|FUNC\|VIRTUAL\|ABSTRACT\|DEFINE\|REPLACE\|FINAL\|PROC\|MAIN\|NEW\|ENUM\|CLASS\|INTERFACE\|BITS\|MODULE\|SHARED\)\>'
let plindent += &sw
endif
if thisline =~ '^\s*\(}\|ELSEIF\>\|ELSE\>\|CATCH\|FINALLY\|GENERATE_ELSEIF\>\|GENERATE_ELSE\>\|UNTIL\>\)'

View File

@@ -0,0 +1,87 @@
" Vim Keymap file for Belarusian characters, layout 'jcuken', classical variant
" Useful mainly with UTF-8, but may work with other encodings.
" Derived From: russian-jcuken.vim
" Maintainer: Aliaksei Nestserau <aliaksei@screencustoms.com>
" Last Changed: 2012 Jul 23
" All characters are given literally, conversion to another encoding (e.g.,
" UTF-8) should work.
scriptencoding utf-8
let b:keymap_name = "by"
loadkeymap
~ Ё CYRILLIC CAPITAL LETTER IO
` ё CYRILLIC SMALL LETTER IO
F А CYRILLIC CAPITAL LETTER A
< Б CYRILLIC CAPITAL LETTER BE
D В CYRILLIC CAPITAL LETTER VE
U Г CYRILLIC CAPITAL LETTER GHE
L Д CYRILLIC CAPITAL LETTER DE
T Е CYRILLIC CAPITAL LETTER IE
: Ж CYRILLIC CAPITAL LETTER ZHE
P З CYRILLIC CAPITAL LETTER ZE
B І CYRILLIC CAPITAL LETTER I
Q Й CYRILLIC CAPITAL LETTER SHORT I
R К CYRILLIC CAPITAL LETTER KA
K Л CYRILLIC CAPITAL LETTER EL
V М CYRILLIC CAPITAL LETTER EM
Y Н CYRILLIC CAPITAL LETTER EN
J О CYRILLIC CAPITAL LETTER O
G П CYRILLIC CAPITAL LETTER PE
H Р CYRILLIC CAPITAL LETTER ER
C С CYRILLIC CAPITAL LETTER ES
N Т CYRILLIC CAPITAL LETTER TE
E У CYRILLIC CAPITAL LETTER U
A Ф CYRILLIC CAPITAL LETTER EF
{ Х CYRILLIC CAPITAL LETTER HA
W Ц CYRILLIC CAPITAL LETTER TSE
X Ч CYRILLIC CAPITAL LETTER CHE
I Ш CYRILLIC CAPITAL LETTER SHA
O Ў CYRILLIC CAPITAL LETTER ASYLLABIC U
} ' APOSTROPHE
S Ы CYRILLIC CAPITAL LETTER YERU
M Ь CYRILLIC CAPITAL LETTER SOFT SIGN
\" Э CYRILLIC CAPITAL LETTER E
> Ю CYRILLIC CAPITAL LETTER YU
Z Я CYRILLIC CAPITAL LETTER YA
f а CYRILLIC SMALL LETTER A
, б CYRILLIC SMALL LETTER BE
d в CYRILLIC SMALL LETTER VE
u г CYRILLIC SMALL LETTER GHE
l д CYRILLIC SMALL LETTER DE
t е CYRILLIC SMALL LETTER IE
; ж CYRILLIC SMALL LETTER ZHE
p з CYRILLIC SMALL LETTER ZE
b і CYRILLIC SMALL LETTER I
q й CYRILLIC SMALL LETTER SHORT I
r к CYRILLIC SMALL LETTER KA
k л CYRILLIC SMALL LETTER EL
v м CYRILLIC SMALL LETTER EM
y н CYRILLIC SMALL LETTER EN
j о CYRILLIC SMALL LETTER O
g п CYRILLIC SMALL LETTER PE
h р CYRILLIC SMALL LETTER ER
c с CYRILLIC SMALL LETTER ES
n т CYRILLIC SMALL LETTER TE
e у CYRILLIC SMALL LETTER U
a ф CYRILLIC SMALL LETTER EF
[ х CYRILLIC SMALL LETTER HA
w ц CYRILLIC SMALL LETTER TSE
x ч CYRILLIC SMALL LETTER CHE
i ш CYRILLIC SMALL LETTER SHA
o ў CYRILLIC SMALL LETTER ASYLLABIC U
] ' APOSTROPHE
s ы CYRILLIC SMALL LETTER YERU
m ь CYRILLIC SMALL LETTER SOFT SIGN
' э CYRILLIC SMALL LETTER E
. ю CYRILLIC SMALL LETTER YU
z я CYRILLIC SMALL LETTER YA
@ "
# '
$ *
% :
^ ,
& .
* ;

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

@@ -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 Oct 21
" 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.
@@ -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

@@ -1,7 +1,7 @@
" Set options and add mapping such that Vim behaves a lot like MS-Windows
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last change: 2012 Jun 13
" Last change: 2012 Jul 25
" bail out if this isn't wanted (mrsvim.vim uses this).
if exists("g:skip_loading_mswin") && g:skip_loading_mswin
@@ -45,7 +45,7 @@ cmap <S-Insert> <C-R>+
" Use CTRL-G u to have CTRL-Z only undo the paste.
exe 'inoremap <script> <C-V> <C-G>u' . paste#paste_cmd['i']
exe 'vnoremap <script> <C-V>' . paste#paste_cmd['v']
exe 'vnoremap <script> <C-V> ' . paste#paste_cmd['v']
imap <S-Insert> <C-V>
vmap <S-Insert> <C-V>

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,40 +1,95 @@
" Vim plugin for converting a syntax highlighted file to HTML.
" Maintainer: Ben Fritz <fritzophrenic@gmail.com>
" Last Change: 2011 May 26
" Last Change: 2012 Jul 12
"
" The core of the code is in $VIMRUNTIME/autoload/tohtml.vim and
" $VIMRUNTIME/syntax/2html.vim
"
" TODO:
" TODO: {{{
" * Bug: still a 1px gap throughout the fold column when html_prevent_copy is
" "fn" in some browsers. Specifically, in Chromium on Ubuntu (but not Chrome
" on Windows). Perhaps it is font related?
" * Bug: still some gaps in the fold column when html_prevent_copy contains
" 'd' and showing the whole diff (observed in multiple browsers). Only gaps
" on diff lines though.
" * anchors on each line so you can do file.html#1234 to get to line 1234
" * add a modeline to the generated html to set nofoldenable or fdm=manual
" because syntax folding takes a terribly long time to work with the weird
" formatting the script does.
" * Options for generating the CSS in external style sheets. New :TOcss
" command to convert the current color scheme into a (mostly) generic CSS
" stylesheet which can be re-used. Alternate stylesheet support?
" * Undercurl support via CSS3, with fallback to dotted or something:
" https://groups.google.com/d/topic/vim_use/BzXA6He1pHg/discussion
" * Redo updates for modified default foldtext (v11) when/if the patch is
" accepted to modify it.
" * Test case +diff_one_file-dynamic_folds+expand_tabs-hover_unfold
" +ignore_conceal-ignore_folding+no_foldcolumn+no_pre+no_progress
" +number_lines-pre_wrap-use_css+use_xhtml+whole_filler.xhtml
" does not show the whole diff filler as it is supposed to.
" * Add option for not generating the hyperlink on stuff that looks like a
" URL? Or just color the link to fit with the colorscheme (and only special
" when hovering)?
" * Bug: when 'isprint' is wrong for the current encoding, will generate
" invalid content. Can/should anything be done about this? Maybe a separate
" plugin to correct 'isprint' based on encoding?
" * Check to see if the windows-125\d encodings actually work in Unix without
" the 8bit- prefix. Add prefix to autoload dictionaries for Unix if not.
" * Font auto-detection similar to
" http://www.vim.org/scripts/script.php?script_id=2384 but for a variety of
" platforms.
" * Error thrown when sourcing 2html.vim directly when plugins are not loaded.
" * Pull in code from http://www.vim.org/scripts/script.php?script_id=3113 :
" - listchars support
" - full-line background highlight
" - other?
" * Font auto-detection similar to
" http://www.vim.org/scripts/script.php?script_id=2384
" * Explicitly trigger IE8+ Standards Mode?
" * Make it so deleted lines in a diff don't create side-scrolling
" * Explicitly trigger IE8+ Standards Mode? Doesn't seem necessary yet.
" * Make it so deleted lines in a diff don't create side-scrolling (get it
" free with full-line background highlight above).
" * Restore open/closed folds and cursor position after processing each file
" with option not to restore for speed increase
" * Undercurl support via dotted bottom border?
" with option not to restore for speed increase.
" * Add extra meta info (generation time, etc.)?
" * Tidy up so we can use strict doctype in even more situations
" * Implementation detail: add threshold for writing the lines to the html
" buffer before we're done (5000 or so lines should do it)
" * TODO comments for code cleanup scattered throughout
"
"}}}
if exists('g:loaded_2html_plugin')
finish
endif
let g:loaded_2html_plugin = 'vim7.3_v10'
let g:loaded_2html_plugin = 'vim7.3_v12'
"
" Changelog:
" 7.3_v10 (this version): Fix error E684 when converting a range wholly inside
" Changelog: {{{
"
" 7.3_v12 (this version): Fix modeline mangling to also work for when multiple
" highlight groups make up the start-of-modeline text.
" Improve render time of page with uncopyable regions
" by not using one-input-per-char. Change name of
" uncopyable option from html_unselectable to
" html_prevent_copy. Added html_no_invalid option and
" default to inserting invalid markup for uncopyable
" regions to prevent MS Word from pasting undeletable
" <input> elements. Fix 'cpo' handling (Thilo Six).
" 7.3_v12b1: Add html_unselectable option. Rework logic to
" eliminate post-processing substitute commands in
" favor of doing the work up front. Remove unnecessary
" special treatment of 'LineNr' highlight group. Minor
" speed improvements. Fix modeline mangling in
" generated output so it works for text in the first
" column. Fix missing line number and fold column in
" diff filler lines. Fix that some fonts have a 1px
" gap (using a dirty hack, improvements welcome). Add
" "colorscheme" meta tag. Does NOT include support for
" the new default foldtext added in v11, as the patch
" adding it has not yet been included in Vim.
" 7.3_v11 ( unreleased ): Support new default foldtext from patch by Christian
" Brabandt in
" http://groups.google.com/d/topic/vim_dev/B6FSGfq9VoI/discussion.
" This patch has not yet been included in Vim, thus
" these changes are removed in the next version.
" 7.3_v10 (fd09a9c8468e): Fix error E684 when converting a range wholly inside
" multiple nested folds with dynamic folding on.
" Also fix problem with foldtext in this situation.
" 7.3_v9 (0877b8d6370e): Add html_pre_wrap option active with html_use_css
@@ -81,14 +136,15 @@ let g:loaded_2html_plugin = 'vim7.3_v10'
" diff colors and the normal syntax colors
" 7.3_v1 (e7751177126b): Add conceal support and meta tags in output
" Pre-v1 baseline: Mercurial changeset 3c9324c0800e
"}}}
" Define the :TOhtml command when:
" - 'compatible' is not set
" - this plugin was not already loaded
" - user commands are available.
" - user commands are available. {{{
if !&cp && !exists(":TOhtml") && has("user_commands")
command -range=% TOhtml :call tohtml#Convert2HTML(<line1>, <line2>)
endif
endif "}}}
" Make sure any patches will probably use consistent indent
" vim: ts=8 sw=2 sts=2 noet
" vim: ts=8 sw=2 sts=2 noet fdm=marker

View File

@@ -1,7 +1,7 @@
" Vim support file to detect file types in scripts
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last change: 2010 Sep 22
" Last change: 2012 Aug 30
" This file is called by an autocommand for every file that has just been
" loaded into a buffer. It checks if the type of file can be recognized by
@@ -198,7 +198,8 @@ else
" - "=== ", line of "=", "---", "+++ " (SVK diff)
" - "=== ", "--- ", "+++ " (bzr diff, common case)
" - "=== (removed|added|renamed|modified)" (bzr diff, alternative)
elseif s:line1 =~ '^\(diff\>\|Only in \|\d\+\(,\d\+\)\=[cda]\d\+\>\|# It was generated by makepatch \|Index:\s\+\f\+\r\=$\|===== \f\+ \d\+\.\d\+ vs edited\|==== //\f\+#\d\+\)'
" - "# HG changeset patch" in first line (Mercurial export format)
elseif s:line1 =~ '^\(diff\>\|Only in \|\d\+\(,\d\+\)\=[cda]\d\+\>\|# It was generated by makepatch \|Index:\s\+\f\+\r\=$\|===== \f\+ \d\+\.\d\+ vs edited\|==== //\f\+#\d\+\|# HG changeset patch\)'
\ || (s:line1 =~ '^--- ' && s:line2 =~ '^+++ ')
\ || (s:line1 =~ '^\* looking for ' && s:line2 =~ '^\* comparing to ')
\ || (s:line1 =~ '^\*\*\* ' && s:line2 =~ '^--- ')

View File

@@ -1,13 +1,23 @@
*** br_FR.orig.aff 2010-04-14 18:44:36.365731271 +0200
--- br_FR.aff 2010-04-14 18:43:31.069137439 +0200
*** br_FR.aff.orig 2012-08-01 22:40:24.000000000 +0200
--- br_FR.aff 2012-08-01 22:46:03.028851510 +0200
***************
*** 9,14 ****
--- 9,16 ----
*** 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 '
+
PFX m Y 1
PFX m 0 m' [aehiouy]
# 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/3
:attr {fetch = $OODIR/%file%} dict-br_0.3.oxt
OODIR = http://extensions.services.openoffice.org/e-files/2207/6
:attr {fetch = $OODIR/%file%} dict-br_0.8.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.3.oxt
:sys $UNZIP dict-br_0.3.oxt
:delete dict-br_0.3.oxt
:fetch dict-br_0.8.oxt
:sys $UNZIP dict-br_0.8.oxt
:delete dict-br_0.8.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.3.oxt
:fetch dict-br_0.8.oxt
:mkdir tmp
:cd tmp
@try:
@import stat
:sys $UNZIP ../dict-br_0.3.oxt
:sys $UNZIP ../dict-br_0.8.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.3.oxt
:delete dict-br_0.8.oxt
# vim: set sts=4 sw=4 :

File diff suppressed because it is too large Load Diff

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

493
runtime/syntax/aptconf.vim Normal file
View File

@@ -0,0 +1,493 @@
" Vim syntax file
" Language: APT config file
" Maintainer: Yann Amar <quidame@poivron.org>
" 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
if !exists("main_syntax")
if version < 600
syntax clear
elseif exists("b:current_syntax")
finish
endif
let main_syntax = 'aptconf'
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:]]'
syn match aptconfError display '^[^[:blank:]][^:{]*'
" Options:
" Define a general regular expression for the options that are not defined
" later as keywords. Following apt.conf(5), we know that options are case
" insensitive, and can contain alphanumeric characters and '/-:._+'; we
" assume that there can not be consecutive colons (::) which is used as
" syntax operator; we also assume that an option name can not start or end
" by a colon.
syn case ignore
syn match aptconfRegexpOpt '[-[:alnum:]/.+_]\+\(:[-[:alnum:]/.+_]\+\)*' contained display
" Keywords:
setlocal iskeyword+=/,-,.,_,+
"setlocal iskeyword+=: is problematic, because of the '::' separator
" Incomplete keywords will be treated differently than completely bad strings:
syn keyword aptconfGroupIncomplete
\ a[cquire] a[ptitude] d[ebtags] d[ebug] d[ir] d[pkg] d[select]
\ o[rderlist] p[ackagemanager] p[kgcachegen] q[uiet] r[pm]
\ u[nattended-upgrade]
" Only the following keywords can be used at toplevel (to begin an option):
syn keyword aptconfGroup
\ acquire apt aptitude debtags debug dir dpkg dselect
\ orderlist packagemanager pkgcachegen quiet rpm
\ unattended-upgrade
" Possible options for each group:
" Acquire: {{{
syn keyword aptconfAcquire contained
\ cdrom Check-Valid-Until CompressionTypes ForceHash ftp gpgv
\ GzipIndexes http https Languages Max-ValidTime Min-ValidTime PDiffs
\ Queue-Mode Retries Source-Symlinks
syn keyword aptconfAcquireCDROM contained
\ AutoDetect CdromOnly Mount UMount
syn keyword aptconfAcquireCompressionTypes contained
\ bz2 lzma gz Order
syn keyword aptconfAcquireFTP contained
\ Passive Proxy ProxyLogin Timeout
syn keyword aptconfAcquireHTTP contained
\ AllowRedirect Dl-Limit Max-Age No-Cache No-Store Pipeline-Depth
\ Proxy Timeout User-Agent
syn keyword aptconfAcquireHTTPS contained
\ CaInfo CaPath CrlFile IssuerCert SslCert SslForceVersion SslKey
\ Verify-Host Verify-Peer
syn keyword aptconfAcquireMaxValidTime contained
\ Debian Debian-Security
syn keyword aptconfAcquirePDiffs contained
\ FileLimit SizeLimit
syn cluster aptconfAcquire_ contains=aptconfAcquire,
\ aptconfAcquireCDROM,aptconfAcquireCompressionTypes,aptconfAcquireFTP,
\ aptconfAcquireHTTP,aptconfAcquireHTTPS,aptconfAcquireMaxValidTime,
\ aptconfAcquirePDiffs
" }}}
" Apt: {{{
syn keyword aptconfApt contained
\ Architecture Architectures Archive Authentication AutoRemove
\ Build-Essential Cache Cache-Grow Cache-Limit Cache-Start CDROM
\ Changelogs Clean-Installed Compressor Default-Release
\ Force-LoopBreak Get Ignore-Hold Immediate-Configure
\ Install-Recommends Install-Suggests Keep-Fds List-Cleanup
\ NeverAutoRemove Never-MarkAuto-Sections Periodic Status-Fd Update
syn keyword aptconfAptAuthentication contained
\ TrustCDROM
syn keyword aptconfAptAutoRemove contained
\ RecommendsImportant SuggestsImportant
syn keyword aptconfAptCache contained
\ AllNames AllVersions Generate GivenOnly Important Installed NamesOnly
\ RecurseDepends ShowFull
syn keyword aptconfAptCDROM contained
\ Fast NoAct NoMount Rename
syn keyword aptconfAptChangelogs contained
\ Server
syn keyword aptconfAptCompressor contained
\ bzip2 gzip lzma xz
syn keyword aptconfAptCompressorAll contained
\ Binary CompressArg Cost Extension Name UncompressArg
syn keyword aptconfAptGet contained
\ AllowUnauthenticated Arch-Only Assume-No Assume-Yes AutomaticRemove
\ Build-Dep-Automatic Compile Diff-Only Download Download-Only Dsc-Only
\ Fix-Broken Fix-Missing Force-Yes HideAutoRemove Host-Architecture
\ List-Cleanup Only-Source Print-URIs Purge ReInstall Remove
\ Show-Upgraded Show-User-Simulation-Note Show-Versions Simulate
\ Tar-Only Trivial-Only Upgrade
syn keyword aptconfAptPeriodic contained
\ AutocleanInterval BackupArchiveInterval BackupLevel
\ Download-Upgradeable-Packages MaxAge MaxSize MinAge
\ Unattended-Upgrade Update-Package-Lists Verbose
syn keyword aptconfAptUpdate contained
\ Pre-Invoke Post-Invoke Post-Invoke-Success
syn cluster aptconfApt_ contains=aptconfApt,
\ aptconfAptAuthentication,aptconfAptAutoRemove,aptconfAptCache,
\ aptconfAptCDROM,aptconfAptChangelogs,aptconfAptCompressor,
\ aptconfAptCompressorAll,aptconfAptGet,aptconfAptPeriodic,
\ aptconfAptUpdate
" }}}
" Aptitude: {{{
syn keyword aptconfAptitude contained
\ Allow-Null-Upgrade Always-Use-Safe-Resolver Autoclean-After-Update
\ Auto-Install Auto-Fix-Broken Cmdline Debtags-Binary
\ Debtags-Update-Options Delete-Unused Delete-Unused-Pattern
\ Display-Planned-Action Forget-New-On-Install Forget-New-On-Update
\ Get-Root-Command Ignore-Old-Tmp Ignore-Recommends-Important
\ Keep-Recommends Keep-Suggests Keep-Unused-Pattern LockFile Log
\ Logging Parse-Description-Bullets Pkg-Display-Limit ProblemResolver
\ Purge-Unused Recommends-Important Safe-Resolver Screenshot Sections
\ Simulate Spin-Interval Suggests-Important Suppress-Read-Only-Warning
\ Theme Track-Dselect-State UI Warn-Not-Root
syn keyword aptconfAptitudeCmdline contained
\ Always-Prompt Assume-Yes Disable-Columns Download-Only Fix-Broken
\ Ignore-Trust-Violations Package-Display-Format Package-Display-Width
\ Progress Request-Strictness Resolver-Debug Resolver-Dump
\ Resolver-Show-Steps Safe-Upgrade Show-Deps Show-Size-Changes
\ Show-Versions Show-Why Simulate Verbose Version-Display-Format
\ Versions-Group-By Versions-Show-Package-Names Visual-Preview
\ Why-Display-Mode
syn keyword aptconfAptitudeCmdlineProgress contained
\ Percent-On-Right Retain-Completed
syn keyword aptconfAptitudeCmdlineSafeUpgrade contained
\ No-New-Installs
syn keyword aptconfAptitudeLogging contained
\ File Levels
syn keyword aptconfAptitudeProblemResolver contained
\ Allow-Break-Holds BreakHoldScore Break-Hold-Level BrokenScore
\ DefaultResolutionScore Discard-Null-Solution
\ EssentialRemoveScore ExtraScore FullReplacementScore FutureHorizon
\ Hints ImportantScore Infinity InstallScore Keep-All-Level KeepScore
\ NonDefaultScore Non-Default-Level OptionalScore PreserveAutoScore
\ PreserveManualScore RemoveScore Remove-Essential-Level Remove-Level
\ RequiredScore ResolutionScore Safe-Level SolutionCost StandardScore
\ StepLimit StepScore Trace-Directory Trace-File
\ UndoFullReplacementScore UnfixedSoftScore UpgradeScore
syn keyword aptconfAptitudeSafeResolver contained
\ No-New-Installs No-New-Upgrades Show-Resolver-Actions
syn keyword aptconfAptitudeScreenshot contained
\ Cache-Max IncrementalLoadLimit
syn keyword aptconfAptitudeSections contained
\ Descriptions Top-Sections
syn keyword aptconfAptitudeUI contained
\ Advance-On-Action Auto-Show-Reasons Default-Grouping
\ Default-Package-View Default-Preview-Grouping Default-Sorting
\ Description-Visible-By-Default Exit-On-Last-Close Fill-Text
\ Flat-View-As-First-View HelpBar Incremental-Search InfoAreaTabs
\ KeyBindings MenuBar-Autohide Minibuf-Download-Bar Minibuf-Prompts
\ New-package-Commands Package-Display-Format Package-Header-Format
\ Package-Status-Format Pause-After-Download Preview-Limit
\ Prompt-On-Exit Styles ViewTabs
syn keyword aptconfAptitudeUIStyles contained
\ Bullet ChangeLogNewerVersion Default DepBroken DisabledMenuEntry
\ DownloadHit DownloadProgress EditLine Error Header HighlightedMenuBar
\ HighlightedMenuEntry MediaChange MenuBar MenuBorder MenuEntry
\ MineBomb MineBorder MineFlag MineNumber1 MineNumber2 MineNumber3
\ MineNumber4 MineNumber5 MineNumber6 MineNumber7 MineNumber8
\ MultiplexTab MultiplexTabHighlighted PkgBroken PkgBrokenHighlighted
\ PkgIsInstalled PkgIsInstalledHighlighted PkgNotInstalled
\ PkgNotInstalledHighlighted PkgToDowngrade PkgToDowngradeHighlighted
\ PkgToHold PkgToHoldHighlighted PkgToInstall PkgToInstallHighlighted
\ PkgToRemove PkgToRemoveHighlighted PkgToUpgrade
\ PkgToUpgradeHighlighted Progress SolutionActionApproved
\ SolutionActionRejected Status TreeBackground TrustWarning
syn keyword aptconfAptitudeUIStylesElements contained
\ bg clear fg flip set
syn cluster aptconfAptitude_ contains=aptconfAptitude,
\ aptconfAptitudeCmdline,aptconfAptitudeCmdlineProgress,
\ aptconfAptitudeCmdlineSafeUpgrade,aptconfAptitudeLogging,
\ aptconfAptitudeProblemResolver,aptconfAptitudeSafeResolver,
\ aptconfAptitudeScreenshot,aptconfAptitudeSections,aptconfAptitudeUI,
\ aptconfAptitudeUIStyles,aptconfAptitudeUIStylesElements
" }}}
" DebTags: {{{
syn keyword aptconfDebTags contained
\ Vocabulary
syn cluster aptconfDebTags_ contains=aptconfDebTags
" }}}
" Debug: {{{
syn keyword aptconfDebug contained
\ Acquire aptcdrom BuildDeps Hashes IdentCdrom Nolocking
\ pkgAcquire pkgAutoRemove pkgCacheGen pkgDepCache pkgDPkgPM
\ pkgDPkgProgressReporting pkgInitialize pkgOrderList
\ pkgPackageManager pkgPolicy pkgProblemResolver sourceList
syn keyword aptconfDebugAcquire contained
\ cdrom Ftp gpgv Http Https netrc
syn keyword aptconfDebugPkgAcquire contained
\ Auth Diffs RRed Worker
syn keyword aptconfDebugPkgDepCache contained
\ AutoInstall Marker
syn keyword aptconfDebugPkgProblemResolver contained
\ ShowScores
syn cluster aptconfDebug_ contains=aptconfDebug,
\ aptconfDebugAcquire,aptconfDebugPkgAcquire,aptconfDebugPkgDepCache,
\ aptconfDebugPkgProblemResolver
" }}}
" Dir: {{{
syn keyword aptconfDir contained
\ Aptitude Bin Cache Etc Ignore-Files-Silently Log Media Parts RootDir
\ State
syn keyword aptconfDirAptitude contained
\ state
syn keyword aptconfDirBin contained
\ apt-get apt-cache dpkg dpkg-buildpackage dpkg-source gpg gzip Methods
\ solvers
syn keyword aptconfDirCache contained
\ Archives Backup pkgcache srcpkgcache
syn keyword aptconfDirEtc contained
\ Main Netrc Parts Preferences PreferencesParts SourceList SourceParts
\ VendorList VendorParts Trusted TrustedParts
syn keyword aptconfDirLog contained
\ History Terminal
syn keyword aptconfDirMedia contained
\ MountPath
syn keyword aptconfDirState contained
\ cdroms extended_states Lists mirrors status
syn cluster aptconfDir_ contains=aptconfDir,
\ aptconfDirAptitude,aptconfDirBin,aptconfDirCache,aptconfDirEtc,
\ aptconfDirLog,aptconfDirMedia,aptconfDirState
" }}}
" DPkg: {{{
syn keyword aptconfDPkg contained
\ Build-Options Chroot-Directory ConfigurePending FlushSTDIN MaxArgs
\ MaxBytes NoTriggers options Pre-Install-Pkgs Pre-Invoke Post-Invoke
\ Run-Directory StopOnError Tools TriggersPending
syn keyword aptconfDPkgTools contained
\ Options Version
syn cluster aptconfDPkg_ contains=aptconfDPkg,
\ aptconfDPkgOrderList,aptconfDPkgOrderListScore,aptconfDPkgTools
" }}}
" DSelect: {{{
syn keyword aptconfDSelect contained
\ CheckDir Clean Options PromptAfterUpdate UpdateOptions
syn cluster aptconfDSelect_ contains=aptconfDSelect
" }}}
" OrderList: {{{
syn keyword aptconfOrderList contained
\ Score
syn keyword aptconfOrderListScore contained
\ Delete Essential Immediate PreDepends
syn cluster aptconfOrderList_ contains=aptconfOrderList,
\ aptconfOrderListScore
" }}}
" PackageManager: {{{
syn keyword aptconfPackageManager contained
\ Configure
syn cluster aptconfPackageManager_ contains=aptconfPackageManager
" }}}
" PkgCacheGen: {{{
syn keyword aptconfPkgCacheGen contained
\ Essential
syn cluster aptconfPkgCacheGen_ contains=aptconfPkgCacheGen
" }}}
" Quiet: {{{
syn keyword aptconfQuiet contained
\ NoUpdate
syn cluster aptconfQuiet_ contains=aptconfQuiet
" }}}
" Rpm: {{{
syn keyword aptconfRpm contained
\ Post-Invoke Pre-Invoke
syn cluster aptconfRpm_ contains=aptconfRpm
" }}}
" Unattened Upgrade: {{{
syn keyword aptconfUnattendedUpgrade contained
\ AutoFixInterruptedDpkg Automatic-Reboot InstallOnShutdown Mail
\ MailOnlyOnError MinimalSteps Origins-Pattern Package-Blacklist
\ Remove-Unused-Dependencies
syn cluster aptconfUnattendedUpgrade_ contains=aptconfUnattendedUpgrade
" }}}
syn case match
" Now put all the keywords (and 'valid' options) in a single cluster:
syn cluster aptconfOptions contains=aptconfRegexpOpt,
\ @aptconfAcquire_,@aptconfApt_,@aptconfAptitude_,@aptconfDebTags_,
\ @aptconfDebug_,@aptconfDir_,@aptconfDPkg_,@aptconfDSelect_,
\ @aptconfOrderList_,@aptconfPackageManager_,@aptconfPkgCacheGen_,
\ @aptconfQuiet_,@aptconfRpm_,@aptconfUnattendedUpgrade_
" Syntax:
syn match aptconfSemiColon ';'
syn match aptconfDoubleColon '::'
syn match aptconfCurlyBraces '[{}]'
syn region aptconfValue start='"' end='"' oneline display
syn region aptconfInclude matchgroup=aptconfOperator start='{' end='}' contains=ALLBUT,aptconfGroup,aptconfGroupIncomplete,@aptconfCommentSpecial
syn region aptconfInclude matchgroup=aptconfOperator start='::' end='{'me=s-1 contains=@aptconfOptions,aptconfError display
syn region aptconfInclude matchgroup=aptconfOperator start='::' end='::\|\s'me=s-1 oneline contains=@aptconfOptions,aptconfError display
" Basic Syntax Errors: XXX avoid to generate false positives !!!
"
" * Invalid comment format (seems to not cause errors, but...):
syn match aptconfAsError display '^#.*'
"
" * When a semicolon is missing after a double-quoted string:
" There are some cases (for example in the Dir group of options, but not only)
" where this syntax is valid. So we don't treat it as a strict error.
syn match aptconfAsError display '"[^"]*"[^;]'me=e-1
syn match aptconfAsError display '"[^"]*"$'
"
" * When double quotes are missing around a value (before a semicolon):
" This omission has no effect if the value is a single string (without blank
" characters). But apt.conf(5) says that quotes are required, and this item
" avoids to match unquoted keywords.
syn match aptconfAsError display '\s[^"[:blank:]]*[^}"];'me=e-1
"
" * When only one double quote is missing around a value (before a semicolon):
" No comment for that: it must be highly visible.
syn match aptconfError display '\(\s\|;\)"[^"[:blank:]]\+;'me=e-1
syn match aptconfError display '\(\s\|;\)[^"[:blank:]]\+";'me=e-1
"
" * When space is missing between option and (quoted) value:
" TODO (partially implemented)
syn match aptconfError display '::[^[:blank:]]*"'
" Special Actions:
syn match aptconfAction '^#\(clear\|include\)\>'
syn region aptconfAction matchgroup=aptconfAction start='^#clear\>' end=';'me=s-1 oneline contains=aptconfGroup,aptconfDoubleColon,@aptconfOptions
syn region aptconfAction matchgroup=aptconfAction start='^#include\>' end=';'me=s-1 oneline contains=aptconfRegexpOpt
" Comments:
syn keyword aptconfTodo TODO FIXME NOTE XXX contained
syn cluster aptconfCommentSpecial contains=@Spell,aptconfTodo
syn match aptconfComment '//.*' contains=@aptconfCommentSpecial
syn region aptconfComment start='/\*' end='\*/' contains=@aptconfCommentSpecial
" Highlight Definitions:
hi def link aptconfTodo Todo
hi def link aptconfError Error
hi def link aptconfComment Comment
hi def link aptconfOperator Operator
hi def link aptconfAction PreProc
hi def link aptconfOption Type
hi def link aptconfValue String
hi def link aptconfRegexpOpt Normal
hi def link aptconfAsError Special
hi def link aptconfSemiColon aptconfOperator
hi def link aptconfDoubleColon aptconfOperator
hi def link aptconfCurlyBraces aptconfOperator
hi def link aptconfGroupIncomplete Special
hi def link aptconfGroup aptconfOption
hi def link aptconfAcquire aptconfOption
hi def link aptconfAcquireCDROM aptconfOption
hi def link aptconfAcquireCompressionTypes aptconfOption
hi def link aptconfAcquireFTP aptconfOption
hi def link aptconfAcquireHTTP aptconfOption
hi def link aptconfAcquireHTTPS aptconfOption
hi def link aptconfAcquireMaxValidTime aptconfOption
hi def link aptconfAcquirePDiffs aptconfOption
hi def link aptconfApt aptconfOption
hi def link aptconfAptAuthentication aptconfOption
hi def link aptconfAptAutoRemove aptconfOption
hi def link aptconfAptCache aptconfOption
hi def link aptconfAptCDROM aptconfOption
hi def link aptconfAptChangelogs aptconfOption
hi def link aptconfAptCompressor aptconfOption
hi def link aptconfAptCompressorAll aptconfOption
hi def link aptconfAptGet aptconfOption
hi def link aptconfAptPeriodic aptconfOption
hi def link aptconfAptUpdate aptconfOption
hi def link aptconfAptitude aptconfOption
hi def link aptconfAptitudeCmdline aptconfOption
hi def link aptconfAptitudeCmdlineProgress aptconfOption
hi def link aptconfAptitudeCmdlineSafeUpgrade aptconfOption
hi def link aptconfAptitudeLogging aptconfOption
hi def link aptconfAptitudeProblemResolver aptconfOption
hi def link aptconfAptitudeSafeResolver aptconfOption
hi def link aptconfAptitudeScreenshot aptconfOption
hi def link aptconfAptitudeSections aptconfOption
hi def link aptconfAptitudeUI aptconfOption
hi def link aptconfAptitudeUIStyles aptconfOption
hi def link aptconfAptitudeUIStylesElements aptconfOption
hi def link aptconfDebTags aptconfOption
hi def link aptconfDebug aptconfOption
hi def link aptconfDebugAcquire aptconfOption
hi def link aptconfDebugPkgAcquire aptconfOption
hi def link aptconfDebugPkgDepCache aptconfOption
hi def link aptconfDebugPkgProblemResolver aptconfOption
hi def link aptconfDir aptconfOption
hi def link aptconfDirAptitude aptconfOption
hi def link aptconfDirBin aptconfOption
hi def link aptconfDirCache aptconfOption
hi def link aptconfDirEtc aptconfOption
hi def link aptconfDirLog aptconfOption
hi def link aptconfDirMedia aptconfOption
hi def link aptconfDirState aptconfOption
hi def link aptconfDPkg aptconfOption
hi def link aptconfDPkgTools aptconfOption
hi def link aptconfDSelect aptconfOption
hi def link aptconfOrderList aptconfOption
hi def link aptconfOrderListScore aptconfOption
hi def link aptconfPackageManager aptconfOption
hi def link aptconfPkgCacheGen aptconfOption
hi def link aptconfQuiet aptconfOption
hi def link aptconfRpm aptconfOption
hi def link aptconfUnattendedUpgrade aptconfOption
let b:current_syntax = "aptconf"
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -2,7 +2,7 @@
" Language: ASN.1
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
" URL: http://www.fleiner.com/vim/syntax/asn.vim
" Last Change: 2001 Apr 26
" Last Change: 2012 Oct 05
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
@@ -12,6 +12,9 @@ elseif exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" keyword definitions
syn keyword asnExternal DEFINITIONS BEGIN END IMPORTS EXPORTS FROM
syn match asnExternal "\<IMPLICIT\s\+TAGS\>"
@@ -76,6 +79,8 @@ if version >= 508 || !exists("did_asn_syn_inits")
delcommand HiLink
endif
let &cpo = s:cpo_save
unlet s:cpo_save
let b:current_syntax = "asn"
" vim: ts=8

View File

@@ -1,7 +1,7 @@
" Vim syntax file
" Language: Good old CFG files
" Maintainer: Igor N. Prischepoff (igor@tyumbit.ru, pri_igor@mail.ru)
" Last change: 2001 Sep 02
" Last change: 2012 Aug 11
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
@@ -18,7 +18,7 @@ syn match UncPath "\\\\\p*" contained
"Dos Drive:\Path
syn match CfgDirectory "[a-zA-Z]:\\\p*" contained
"Parameters
syn match CfgParams ".*="me=e-1 contains=CfgComment
syn match CfgParams ".\{0}="me=e-1 contains=CfgComment
"... and their values (don't want to highlight '=' sign)
syn match CfgValues "=.*"hs=s+1 contains=CfgDirectory,UncPath,CfgComment,CfgString,CfgOnOff

View File

@@ -1,25 +1,25 @@
" Vim syntax file
" Language: CL
" (pronounced alphabetically, and NOT known as Clever)
" (CL was created by Multibase, http://www.mbase.com.au)
" Language: CL
" (pronounced alphabetically, and NOT known as Clever)
" (CL was created by Multibase, http://www.mbase.com.au)
" Filename extensions: *.ent
" *.eni
" *.eni
" Maintainer: Philip Uren <philuSPAX@ieee.org> Remove SPAX spam block
" Version: 4
" Last Change: May 11 2012
" Version: 5
" Last Change: Aug 16 2012
" 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
syntax clear
elseif exists("b:current_syntax")
finish
finish
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
@@ -27,87 +27,87 @@ syn case ignore
syn sync lines=300
"If/else/elsif/endif and while/wend mismatch errors
syn match clifError "\<wend\>"
syn match clifError "\<elsif\>"
syn match clifError "\<else\>"
syn match clifError "\<endif\>"
syn match clifError "\<wend\>"
syn match clifError "\<elsif\>"
syn match clifError "\<else\>"
syn match clifError "\<endif\>"
syn match clSpaceError "\s\+$"
syn match clSpaceError "\s\+$"
" If and while regions
syn region clLoop transparent matchgroup=clWhile start="\<while\>" matchgroup=clWhile end="\<wend\>" contains=ALLBUT,clBreak,clProcedure
syn region clIf transparent matchgroup=clConditional start="\<if\>" matchgroup=clConditional end="\<endif\>" contains=ALLBUT,clBreak,clProcedure
syn region clLoop transparent matchgroup=clWhile start="\<while\>" matchgroup=clWhile end="\<wend\>" contains=ALLBUT,clBreak,clProcedure
syn region clIf transparent matchgroup=clConditional start="\<if\>" matchgroup=clConditional end="\<endif\>" contains=ALLBUT,clBreak,clProcedure
" Make those TODO notes and debugging stand out!
syn keyword clTodo contained TODO BUG DEBUG FIX
syn match clNeedsWork contained "NEED[S]*\s\s*WORK"
syn keyword clDebug contained debug
syn keyword clTodo contained TODO BUG DEBUG FIX
syn match clNeedsWork contained "NEED[S]*\s\s*WORK"
syn keyword clDebug contained debug
syn match clComment "#.*$" contains=clTodo,clNeedsWork
syn region clProcedure oneline start="^\s*[{}]" end="$"
syn match clInclude "^\s*include\s.*"
syn match clComment "#.*$" contains=clTodo,clNeedsWork,@Spell
syn region clProcedure oneline start="^\s*[{}]" end="$"
syn match clInclude "^\s*include\s.*"
" We don't put "debug" in the clSetOptions;
" we contain it in clSet so we can make it stand out.
syn keyword clSetOptions transparent aauto abort align convert E fill fnum goback hangup justify null_exit output rauto rawprint rawdisplay repeat skip tab trim
syn match clSet "^\s*set\s.*" contains=clSetOptions,clDebug
syn keyword clSetOptions transparent aauto abort align convert E fill fnum goback hangup justify null_exit output rauto rawprint rawdisplay repeat skip tab trim
syn match clSet "^\s*set\s.*" contains=clSetOptions,clDebug
syn match clPreProc "^\s*#P.*"
syn match clPreProc "^\s*#P.*"
syn keyword clConditional else elsif
syn keyword clWhile continue endloop
syn keyword clConditional else elsif
syn keyword clWhile continue endloop
" 'break' needs to be a region so we can sync on it above.
syn region clBreak oneline start="^\s*break" end="$"
syn region clBreak oneline start="^\s*break" end="$"
syn match clOperator "[!;|)(:.><+*=-]"
syn match clOperator "[!;|)(:.><+*=-]"
syn match clNumber "\<\d\+\(u\=l\=\|lu\|f\)\>"
syn match clNumber "\<\d\+\(u\=l\=\|lu\|f\)\>"
syn region clString matchgroup=clQuote start=+"+ end=+"+ skip=+\\"+
syn region clString matchgroup=clQuote start=+'+ end=+'+ skip=+\\'+
syn region clString matchgroup=clQuote start=+"+ end=+"+ skip=+\\"+ contains=@Spell
syn region clString matchgroup=clQuote start=+'+ end=+'+ skip=+\\'+ contains=@Spell
syn keyword clReserved ERROR EXIT INTERRUPT LOCKED LREPLY MODE MCOL MLINE MREPLY NULL REPLY V1 V2 V3 V4 V5 V6 V7 V8 V9 ZERO BYPASS GOING_BACK AAUTO ABORT ABORT ALIGN BIGE CONVERT FNUM GOBACK HANGUP JUSTIFY NEXIT OUTPUT RAUTO RAWDISPLAY RAWPRINT REPEAT SKIP TAB TRIM LCOUNT PCOUNT PLINES SLINES SCOLS MATCH LMATCH
syn keyword clReserved ERROR EXIT INTERRUPT LOCKED LREPLY MODE MCOL MLINE MREPLY NULL REPLY V1 V2 V3 V4 V5 V6 V7 V8 V9 ZERO BYPASS GOING_BACK AAUTO ABORT ABORT ALIGN BIGE CONVERT FNUM GOBACK HANGUP JUSTIFY NEXIT OUTPUT RAUTO RAWDISPLAY RAWPRINT REPEAT SKIP TAB TRIM LCOUNT PCOUNT PLINES SLINES SCOLS MATCH LMATCH
syn keyword clFunction asc asize chr name random slen srandom day getarg getcgi getenv lcase scat sconv sdel skey smult srep substr sword trim ucase match
syn keyword clFunction asc asize chr name random slen srandom day getarg getcgi getenv lcase scat sconv sdel skey smult srep substr sword trim ucase match
syn keyword clStatement clear clear_eol clear_eos close copy create unique with where empty define define ldefine delay_form delete escape exit_block exit_do exit_process field fork format get getfile getnext getprev goto head join maintain message no_join on_eop on_key on_exit on_delete openin openout openapp pause popenin popenout popenio print put range read redisplay refresh restart_block screen select sleep text unlock write and not or do
syn keyword clStatement clear clear_eol clear_eos close copy create unique with where empty define define ldefine delay_form delete escape exit_block exit_do exit_process field fork format get getfile getnext getprev goto head join maintain message no_join on_eop on_key on_exit on_delete openin openout openapp pause popenin popenout popenio print put range read redisplay refresh restart_block screen select sleep text unlock write and not or do
" Define the default highlighting.
" For version 5.7 and earlier: only when not done already
" For version 5.8 and later: only when an item doesn't have highlighting yet
if version >= 508 || !exists("did_cl_syntax_inits")
if version < 508
let did_cl_syntax_inits = 1
command -nargs=+ HiLink hi link <args>
else
command -nargs=+ HiLink hi def link <args>
endif
if version >= 508 || !exists("did_cl_syntax_inits")
if version < 508
let did_cl_syntax_inits = 1
command -nargs=+ HiLink hi link <args>
else
command -nargs=+ HiLink hi def link <args>
endif
HiLink clifError Error
HiLink clSpaceError Error
HiLink clWhile Repeat
HiLink clConditional Conditional
HiLink clDebug Debug
HiLink clNeedsWork Todo
HiLink clTodo Todo
HiLink clComment Comment
HiLink clProcedure Procedure
HiLink clBreak Procedure
HiLink clInclude Include
HiLink clSetOption Statement
HiLink clSet Identifier
HiLink clPreProc PreProc
HiLink clOperator Operator
HiLink clNumber Number
HiLink clString String
HiLink clQuote Delimiter
HiLink clReserved Identifier
HiLink clFunction Function
HiLink clStatement Statement
HiLink clifError Error
HiLink clSpaceError Error
HiLink clWhile Repeat
HiLink clConditional Conditional
HiLink clDebug Debug
HiLink clNeedsWork Todo
HiLink clTodo Todo
HiLink clComment Comment
HiLink clProcedure Procedure
HiLink clBreak Procedure
HiLink clInclude Include
HiLink clSetOption Statement
HiLink clSet Identifier
HiLink clPreProc PreProc
HiLink clOperator Operator
HiLink clNumber Number
HiLink clString String
HiLink clQuote Delimiter
HiLink clReserved Identifier
HiLink clFunction Function
HiLink clStatement Statement
delcommand HiLink
delcommand HiLink
endif
let b:current_syntax = "cl"
" vim: ts=8 sw=4
" vim: ts=8 sw=8

View File

@@ -1,10 +1,12 @@
" Vim syntax file
" Language: Cascading Style Sheets
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
" URL: http://www.fleiner.com/vim/syntax/css.vim
" Last Change: 2011 Dec 14
" CSS2 by Nikolai Weibull
" Full CSS2, HTML4 support by Yeti
" Language: Cascading Style Sheets
" Previous Contributor List:
" Claudio Fleiner <claudio@fleiner.com> (Maintainer)
" Yeti (Add full CSS2, HTML4 support)
" Nikolai Weibull (Add CSS2 support)
" Maintainer: Jules Wang <w.jq0722@gmail.com>
" 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
@@ -17,8 +19,12 @@ endif
let main_syntax = 'css'
endif
let s:cpo_save = &cpo
set cpo&vim
syn case ignore
" All HTML4 tags
syn keyword cssTagName abbr acronym address applet area a b base
syn keyword cssTagName basefont bdo big blockquote body br button
syn keyword cssTagName caption center cite code col colgroup dd del
@@ -27,32 +33,51 @@ syn keyword cssTagName frameset h1 h2 h3 h4 h5 h6 head hr html img i
syn keyword cssTagName iframe img input ins isindex kbd label legend li
syn keyword cssTagName link map menu meta noframes noscript ol optgroup
syn keyword cssTagName option p param pre q s samp script select small
syn keyword cssTagName span strike strong style sub sup tbody td
syn keyword cssTagName span strike strong style sub sup table tbody td
syn keyword cssTagName textarea tfoot th thead title tr tt ul u var
syn match cssTagName "\<table\>"
syn keyword cssTagName object
" HTML5 new tags 5*6=30
syn keyword cssTagName article aside audio bdi canvas command
syn keyword cssTagName datalist details embed figcaption figure footer
syn keyword cssTagName header hgroup keygen mark meter nav
syn keyword cssTagName output progress rt rp ruby section
syn keyword cssTagName source summary time track video wbr
" Tags not supported in HTML5
syn keyword cssDeprecated acronym applet basefont big center dir
syn keyword cssDeprecated font frame frameset noframes strike tt
"syn match cssTagName "\<table\>"
syn match cssTagName "\*"
syn match cssTagName "@page\>" nextgroup=cssDefinition
syn match cssSelectorOp "[+>.]"
syn match cssSelectorOp2 "[~|]\?=" contained
" selectors
syn match cssSelectorOp "[,>+]"
syn match cssSelectorOp2 "[~|^$*]\?=" contained
" FIXME: add HTML5 attribute
syn region cssAttributeSelector matchgroup=cssSelectorOp start="\[" end="]" transparent contains=cssUnicodeEscape,cssSelectorOp2,cssStringQ,cssStringQQ
" .class and #id
syn match cssClassName "\.[A-Za-z][A-Za-z0-9_-]\+"
try
syn match cssIdentifier "#[A-Za-z<>-<2D>_@][A-Za-z<>-<2D>0-9_@-]*"
catch /^.*/
syn match cssIdentifier "#[A-Za-z_@][A-Za-z0-9_@-]*"
endtry
syn match cssTagName "@page\>" nextgroup=cssDefinition
" FIXME: use cssVendor here
syn match cssTagName "@\(-\(webkit\|moz\|o\|ms\)-\)\=keyframes\>" nextgroup=cssDefinition
syn match cssMedia "@media\>" nextgroup=cssMediaType skipwhite skipnl
syn keyword cssMediaType contained screen print aural braile embosed handheld projection ty tv all nextgroup=cssMediaComma,cssMediaBlock skipwhite skipnl
syn match cssMediaComma "," nextgroup=cssMediaType skipwhite skipnl
"syn match cssMediaComma "," nextgroup=cssMediaType skipwhite skipnl
syn region cssMediaBlock transparent matchgroup=cssBraces start='{' end='}' contains=cssTagName,cssError,cssComment,cssDefinition,cssURL,cssUnicodeEscape,cssIdentifier
syn match cssValueInteger contained "[-+]\=\d\+"
syn match cssValueNumber contained "[-+]\=\d\+\(\.\d*\)\="
syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=\(%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\)"
syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=\(%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|rem\)"
syn match cssValueAngle contained "[-+]\=\d\+\(\.\d*\)\=\(deg\|grad\|rad\)"
syn match cssValueTime contained "+\=\d\+\(\.\d*\)\=\(ms\|s\)"
syn match cssValueFrequency contained "+\=\d\+\(\.\d*\)\=\(Hz\|kHz\)"
@@ -66,27 +91,115 @@ 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
syn case match
syn keyword cssColor contained ActiveBorder ActiveCaption AppWorkspace ButtonFace ButtonHighlight ButtonShadow ButtonText CaptionText GrayText Highlight HighlightText InactiveBorder InactiveCaption InactiveCaptionText InfoBackground InfoText Menu MenuText Scrollbar ThreeDDarkShadow ThreeDFace ThreeDHighlight ThreeDLightShadow ThreeDShadow Window WindowFrame WindowText Background
syn case ignore
syn match cssImportant contained "!\s*important\>"
syn match cssColor contained "\<transparent\>"
syn match cssColor contained "\<white\>"
syn match cssColor contained "#[0-9A-Fa-f]\{3\}\>"
syn match cssColor contained "#[0-9A-Fa-f]\{6\}\>"
"syn match cssColor contained "\<rgb\s*(\s*\d\+\(\.\d*\)\=%\=\s*,\s*\d\+\(\.\d*\)\=%\=\s*,\s*\d\+\(\.\d*\)\=%\=\s*)"
syn region cssURL contained matchgroup=cssFunctionName start="\<url\s*(" end=")" oneline keepend
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgb\|clip\|attr\|counter\|rect\)\s*(" end=")" oneline keepend
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgb\|clip\|attr\|counter\|rect\|cubic-bezier\)\s*(" end=")" oneline keepend
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgba\|hsl\|hsla\)\s*(" end=")" oneline keepend
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(linear\|radial\)-gradient\s*(" end=")" oneline keepend
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(matrix\(3d\)\=\|scale\(3d\|X\|Y|\Z\)\=\|translate\(3d\|X\|Y|\Z\)\=\|skew\(X\|Y\)\=\|rotate\(3d\|X\|Y|\Z\)\=\|perspective\)\s*(" end=")" oneline keepend
syn match cssImportant contained "!\s*important\>"
syn keyword cssCommonAttr contained auto none inherit
" Prop and Attr
" Reference: http://www.w3schools.com/cssref/default.asp
syn keyword cssCommonAttr contained auto none inherit all
syn keyword cssCommonAttr contained top bottom
syn keyword cssCommonAttr contained medium normal
syn match cssAnimationProp contained "\<animation\(-\(name\|duration\|timing-function\|delay\|iteration-cout\|play-state\)\)\=\>"
syn keyword cssAnimationAttr contained infinite alternate paused running
" bugfix: escape linear-gradient
syn match cssAnimationAttr contained "\<linear\(-gradient\)\@!\>"
syn match cssAnimationAttr contained "\<ease\(-\(in-out\|out\|in\)\)\=\>"
syn match cssBackgroundProp contained "\<background\(-\(color\|image\|attachment\|position\|clip\|origin\|size\)\)\=\>"
syn keyword cssBackgroundAttr contained center fixed over contain
syn match cssBackgroundAttr contained "\<no-repeat\>"
syn match cssBackgroundAttr contained "\<repeat\(-[xy]\)\=\>"
syn match cssBackgroundAttr contained "\<\(border\|content\|padding\)-box\>"
syn match cssBorderOutlineProp contained "\<border\(-\(top\|right\|bottom\|left\)\)\=\(-\(width\|color\|style\)\)\=\>"
syn match cssBorderOutlineProp contained "\<outline\(-\(width\|style\|color\)\)\=\>"
syn match cssBorderOutlineProp contained "\<border-\(top\|bottom\)-\(left\|right\)\(-radius\)\=\>"
syn match cssBorderOutlineProp contained "\<border-image\(-\(outset\|repeat\|slice\|source\|width\)\)\=\>"
syn match cssBorderOutlineProp contained "\<border-radius\>"
syn keyword cssBorderOutlineAttr contained thin thick medium
syn keyword cssBorderOutlineAttr contained dotted dashed solid double groove ridge inset outset
syn keyword cssBorderOutlineAttr contained hidden visible scroll collapse
syn keyword cssBorderOutlineAttr contained stretch round
syn match cssBoxProp contained "\<overflow\(-\(x\|y\|style\)\)\=\>"
syn match cssBoxProp contained "\<rotation\(-point\)=\>"
syn keyword cssBoxAttr contained visible hidden scroll auto
syn match cssBoxAttr contained "\<no-\(display\|content\)\>"
syn keyword cssColorProp contained opacity
syn match cssColorProp contained "\<color-profile\>"
syn match cssColorProp contained "\<rendering-intent\>"
syn match cssDimensionProp contained "\<\(min\|max\)-\(width\|height\)\>"
syn keyword cssDimensionProp contained height
syn keyword cssDimensionProp contained width
" shadow and sizing are in other property groups
syn match cssFlexibleBoxProp contained "\<box-\(align\|direction\|flex\|ordinal-group\|orient\|pack\|shadow\|sizing\)\>"
syn keyword cssFlexibleBoxAttr contained start end center baseline stretch
syn keyword cssFlexibleBoxAttr contained normal reverse
syn keyword cssFlexibleBoxAttr contained single mulitple
syn keyword cssFlexibleBoxAttr contained horizontal
" bugfix: escape vertial-align
syn match cssFlexibleBoxAttr contained "\<vertical\(-align\)\@!\>"
syn match cssFlexibleBoxAttr contained "\<\(inline\|block\)-axis\>"
syn match cssFontProp contained "\<font\(-\(family\|style\|variant\|weight\|size\(-adjust\)\=\|stretch\)\)\=\>"
syn match cssFontAttr contained "\<\(sans-\)\=\<serif\>"
syn match cssFontAttr contained "\<small\(-\(caps\|caption\)\)\=\>"
@@ -95,67 +208,92 @@ syn match cssFontAttr contained "\<message-box\>"
syn match cssFontAttr contained "\<status-bar\>"
syn match cssFontAttr contained "\<\(\(ultra\|extra\|semi\|status-bar\)-\)\=\(condensed\|expanded\)\>"
syn keyword cssFontAttr contained cursive fantasy monospace italic oblique
syn keyword cssFontAttr contained bold bolder lighter larger smaller
syn keyword cssFontAttr contained icon menu
syn match cssFontAttr contained "\<caption\>"
syn keyword cssFontAttr contained large smaller larger
syn keyword cssFontAttr contained narrower wider
syn keyword cssFontAttr contained bold bolder light lighter larger smaller
syn keyword cssFontAttr contained icon menu caption
syn keyword cssFontAttr contained large smaller larger narrower wider
syn keyword cssFontAttr contained Courier Arial Georgia Times
syn keyword cssColorProp contained color
syn match cssColorProp contained "\<background\(-\(color\|image\|attachment\|position\)\)\=\>"
syn keyword cssColorAttr contained center scroll fixed
syn match cssColorAttr contained "\<repeat\(-[xy]\)\=\>"
syn match cssColorAttr contained "\<no-repeat\>"
syn keyword cssGeneratedContentProp contained content quotes crop
syn match cssGeneratedContentProp contained "\<counter-\(reset\|increment\)\>"
syn match cssGeneratedContentProp contained "\<move-to\>"
syn match cssGeneratedContentProp contained "\<page-policy\>"
syn match cssGeneratedContentAttr contained "\<\(no-\)\=\(open\|close\)-quote\>"
syn match cssGridProp contained "\<grid-\(columns\|rows\)\>"
syn match cssHyerlinkProp contained "\<target\(-\(name\|new\|position\)\)\=\>"
syn match cssListProp contained "\<list-style\(-\(type\|position\|image\)\)\=\>"
syn match cssListAttr contained "\<\(lower\|upper\)-\(roman\|alpha\|greek\|latin\)\>"
syn match cssListAttr contained "\<\(hiragana\|katakana\)\(-iroha\)\=\>"
syn match cssListAttr contained "\<\(decimal\(-leading-zero\)\=\|cjk-ideographic\)\>"
syn keyword cssListAttr contained disc circle square hebrew armenian georgian
syn keyword cssListAttr contained inside outside
syn match cssMarginProp contained "\<margin\(-\(top\|right\|bottom\|left\)\)\=\>"
syn match cssMultiColumnProp contained "\<column\(-\(\break-\(after\|before\)\|count\|gap\|rule\(-\(color\|style\|width\)\)\=\)\|span\|width\)\=\>"
syn match cssPaddingProp contained "\<padding\(-\(top\|right\|bottom\|left\)\)\=\>"
syn keyword cssPositioningProp contained bottom clear clip display float left
syn keyword cssPositioningProp contained position right top visibility
syn match cssPositioningProp contained "\<z-index\>"
syn keyword cssPositioningAttr contained block inline compact
syn match cssPositioningAttr contained "\<table\(-\(row-gorup\|\(header\|footer\)-group\|row\|column\(-group\)\=\|cell\|caption\)\)\=\>"
syn keyword cssPositioningAttr contained left right both
syn match cssPositioningAttr contained "\<list-item\>"
syn match cssPositioningAttr contained "\<inline-\(block\|table\)\>"
syn keyword cssPositioningAttr contained static relative absolute fixed
syn match cssPrintProp contained "\<page\(-break-\(before\|after\|inside\)\)\=\>"
syn keyword cssPrintProp contained orphans widows
syn keyword cssPrintAttr contained landscape portrait crop cross always avoid
syn match cssTableProp contained "\<\(caption-side\|table-layout\|border-collapse\|border-spacing\|empty-cells\)\>"
syn keyword cssTableAttr contained fixed collapse separate show hide once always
syn keyword cssTextProp contained color direction
syn match cssTextProp "\<\(\(word\|letter\)-spacing\|text\(-\(decoration\|transform\|align\|index\|shadow\)\)\=\|vertical-align\|unicode-bidi\|line-height\)\>"
syn match cssTextProp contained "\<text-\(justify\|\outline\|overflow\|warp\|align-last\)\>"
syn match cssTextProp contained "\<word-\(break\|\wrap\)\>"
syn match cssTextProp contained "\<white-space\>"
syn match cssTextProp contained "\<hanging-punctuation\>"
syn match cssTextProp contained "\<punctuation-trim\>"
syn match cssTextAttr contained "\<line-through\>"
syn match cssTextAttr contained "\<text-indent\>"
syn match cssTextAttr contained "\<\(text-\)\=\(top\|bottom\)\>"
syn keyword cssTextAttr contained ltr rtl embed nowrap
syn keyword cssTextAttr contained underline overline blink sub super middle
syn keyword cssTextAttr contained capitalize uppercase lowercase center justify baseline sub super
syn keyword cssTextAttr contained capitalize uppercase lowercase
syn keyword cssTextAttr contained center justify baseline sub super
syn match cssTextAttr contained "\<pre\(-\(line\|wrap\)\)\=\>"
syn match cssTextAttr contained "\<\(allow\|force\)-end\>"
syn keyword cssTextAttr contained start end adjacent
syn match cssTextAttr contained "\<inter-\(word\|ideographic\|cluster\)\>"
syn keyword cssTextAttr contained distribute kashida first last
syn keyword cssTextAttr contained clip ellipsis unrestricted suppress
syn match cssTextAttr contained "\<break-all\>"
syn match cssTextAttr contained "\<break-word\>"
syn keyword cssTextAttr contained hyphenate
syn match cssBoxProp contained "\<\(margin\|padding\|border\)\(-\(top\|right\|bottom\|left\)\)\=\>"
syn match cssBoxProp contained "\<border-\(\(\(top\|right\|bottom\|left\)-\)\=\(width\|color\|style\)\)\=\>"
syn match cssBoxProp contained "\<\(width\|z-index\)\>"
syn match cssBoxProp contained "\<\(min\|max\)-\(width\|height\)\>"
syn keyword cssBoxProp contained width height float clear overflow clip visibility
syn keyword cssBoxAttr contained thin thick both
syn keyword cssBoxAttr contained dotted dashed solid double groove ridge inset outset
syn keyword cssBoxAttr contained hidden visible scroll collapse
syn keyword cssGeneratedContentProp contained content quotes
syn match cssGeneratedContentProp contained "\<counter-\(reset\|increment\)\>"
syn match cssGeneratedContentProp contained "\<list-style\(-\(type\|position\|image\)\)\=\>"
syn match cssGeneratedContentAttr contained "\<\(no-\)\=\(open\|close\)-quote\>"
syn match cssAuralAttr contained "\<lower\>"
syn match cssGeneratedContentAttr contained "\<\(lower\|upper\)-\(roman\|alpha\|greek\|latin\)\>"
syn match cssGeneratedContentAttr contained "\<\(hiragana\|katakana\)\(-iroha\)\=\>"
syn match cssGeneratedContentAttr contained "\<\(decimal\(-leading-zero\)\=\|cjk-ideographic\)\>"
syn keyword cssGeneratedContentAttr contained disc circle square hebrew armenian georgian
syn keyword cssGeneratedContentAttr contained inside outside
syn match cssTransformProp contained "\<transform\(-\(origin\|style\)\)\=\>"
syn match cssTransformProp contained "\<perspective\(-origin\)\=\>"
syn match cssTransformProp contained "\<backface-visibility\>"
syn match cssPagingProp contained "\<page\(-break-\(before\|after\|inside\)\)\=\>"
syn keyword cssPagingProp contained size marks inside orphans widows
syn keyword cssPagingAttr contained landscape portrait crop cross always avoid
syn keyword cssUIProp contained cursor
syn match cssUIProp contained "\<outline\(-\(width\|style\|color\)\)\=\>"
syn match cssUIAttr contained "\<[ns]\=[ew]\=-resize\>"
syn keyword cssUIAttr contained default crosshair pointer move wait help
syn keyword cssUIAttr contained thin thick
syn keyword cssUIAttr contained dotted dashed solid double groove ridge inset outset
syn keyword cssUIAttr contained invert
syn match cssRenderAttr contained "\<marker\>"
syn match cssRenderProp contained "\<\(display\|marker-offset\|unicode-bidi\|white-space\|list-item\|run-in\|inline-table\)\>"
syn keyword cssRenderProp contained position top bottom direction
syn match cssRenderProp contained "\<\(left\|right\)\>"
syn keyword cssRenderAttr contained block inline compact
syn match cssRenderAttr contained "\<table\(-\(row-gorup\|\(header\|footer\)-group\|row\|column\(-group\)\=\|cell\|caption\)\)\=\>"
syn keyword cssRenderAttr contained static relative absolute fixed
syn keyword cssRenderAttr contained ltr rtl embed bidi-override pre nowrap
syn match cssRenderAttr contained "\<bidi-override\>"
syn match cssTransitionProp contained "\<transition\(-\(delay\|duration\|property\|timing-function\)\)\=\>"
syn match cssUIProp contained "\<nav-\(down\|index\|left\|right\|up\)\=\>"
syn match cssUIProp contained "\<outline-offset\>"
syn match cssUIProp contained "\<box-sizing\>"
syn keyword cssUIProp contained appearance icon resize
syn keyword cssUIAttr contained window button menu field
syn match cssAuralProp contained "\<\(pause\|cue\)\(-\(before\|after\)\)\=\>"
syn match cssAuralProp contained "\<\(play-during\|speech-rate\|voice-family\|pitch\(-range\)\=\|speak\(-\(punctuation\|numerals\)\)\=\)\>"
@@ -171,30 +309,54 @@ syn keyword cssAuralAttr contained below level above higher
syn match cssAuralAttr contained "\<\(x-\)\=\(slow\|fast\)\>"
syn keyword cssAuralAttr contained faster slower
syn keyword cssAuralAttr contained male female child code digits continuous
syn match cssAuralAttr contained "\<lower\>"
" cursor
syn keyword cssUIProp contained cursor
syn match cssUIAttr contained "\<[ns]\=[ew]\=-resize\>"
syn keyword cssUIAttr contained crosshair default help move pointer
syn keyword cssUIAttr contained progress wait
" FIXME: I could not find them in reference
syn keyword cssUIAttr contained invert maker size zoom
syn match cssRenderAttr contained "\<run-in\>"
syn match cssRenderAttr contained "\<text-rendering\>"
syn match cssRenderAttr contained "\<font-smoothing\>"
syn match cssRenderProp contained "\<marker-offset\>"
syn match cssRenderAttr contained "\<bidi-override\>"
syn match cssTableProp contained "\<\(caption-side\|table-layout\|border-collapse\|border-spacing\|empty-cells\|speak-header\)\>"
syn keyword cssTableAttr contained fixed collapse separate show hide once always
" FIXME: This allows cssMediaBlock before the semicolon, which is wrong.
syn region cssInclude start="@import" end=";" contains=cssComment,cssURL,cssUnicodeEscape,cssMediaType
syn match cssBraces contained "[{}]"
syn match cssError contained "{@<>"
syn region cssDefinition transparent matchgroup=cssBraces start='{' end='}' contains=css.*Attr,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape
syn region cssDefinition transparent matchgroup=cssBraces start='{' end='}' contains=css.*Attr,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition
syn match cssBraceError "}"
" Pseudo class
syn match cssPseudoClass ":[A-Za-z0-9_-]*" contains=cssPseudoClassId,cssUnicodeEscape
syn keyword cssPseudoClassId contained link visited active hover focus before after left right
syn keyword cssPseudoClassId link visited active hover focus before after left right lang
syn match cssPseudoClassId contained "\<first\(-\(line\|letter\|child\)\)\=\>"
syn region cssPseudoClassLang matchgroup=cssPseudoClassId start=":lang(" end=")" oneline
" FIXME: handle functions.
"syn region cssPseudoClassLang matchgroup=cssPseudoClassId start="lang(" end=")"
syn match cssPseudoClassId contained "\<\(last\|only\|nth\|nth-last\)-child\>"
syn match cssPseudoClassId contained "\<\(first\|last\|only\|nth\|nth-last\)-of-type\>"
syn keyword cssPseudoClassId root empty target enable disabled checked not invalid
syn match cssPseudoClassId contained "::\(-moz-\)\=selection"
" Comment
syn region cssComment start="/\*" end="\*/" contains=@Spell
syn region cssComment start="//" skip="\\$" end="$" keepend contains=@Spell
syn match cssUnicodeEscape "\\\x\{1,6}\s\?"
syn match cssSpecialCharQQ +\\"+ contained
syn match cssSpecialCharQ +\\'+ contained
syn region cssStringQQ start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=cssUnicodeEscape,cssSpecialCharQQ
syn region cssStringQ start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=cssUnicodeEscape,cssSpecialCharQ
syn match cssClassName "\.[A-Za-z][A-Za-z0-9_-]\+"
" Vendor Prefix
syn match cssVendor contained "\(-\(webkit\|moz\|o\|ms\)-\)"
if main_syntax == "css"
syn sync minlines=10
@@ -212,31 +374,75 @@ if version >= 508 || !exists("did_css_syn_inits")
endif
HiLink cssComment Comment
HiLink cssVendor Comment
HiLink cssTagName Statement
HiLink cssDeprecated Error
HiLink cssSelectorOp Special
HiLink cssSelectorOp2 Special
HiLink cssFontProp StorageClass
HiLink cssColorProp StorageClass
HiLink cssTextProp StorageClass
HiLink cssAnimationProp StorageClass
HiLink cssBackgroundProp StorageClass
HiLink cssBorderOutlineProp StorageClass
HiLink cssBoxProp StorageClass
HiLink cssRenderProp StorageClass
HiLink cssColorProp StorageClass
HiLink cssContentForPagedMediaProp StorageClass
HiLink cssDimensionProp StorageClass
HiLink cssFlexibleBoxProp StorageClass
HiLink cssFontProp StorageClass
HiLink cssGeneratedContentProp StorageClass
HiLink cssGridProp StorageClass
HiLink cssHyerlinkProp StorageClass
HiLink cssLineboxProp StorageClass
HiLink cssListProp StorageClass
HiLink cssMarginProp StorageClass
HiLink cssMarqueeProp StorageClass
HiLink cssMultiColumnProp StorageClass
HiLink cssPaddingProp StorageClass
HiLink cssPagedMediaProp StorageClass
HiLink cssPositioningProp StorageClass
HiLink cssPrintProp StorageClass
HiLink cssRubyProp StorageClass
HiLink cssSpeechProp StorageClass
HiLink cssTableProp StorageClass
HiLink cssTextProp StorageClass
HiLink cssTransformProp StorageClass
HiLink cssTransitionProp StorageClass
HiLink cssUIProp StorageClass
HiLink cssAuralProp StorageClass
HiLink cssRenderProp StorageClass
HiLink cssGeneratedContentProp StorageClass
HiLink cssPagingProp StorageClass
HiLink cssTableProp StorageClass
HiLink cssUIProp StorageClass
HiLink cssFontAttr Type
HiLink cssColorAttr Type
HiLink cssTextAttr Type
HiLink cssAnimationAttr Type
HiLink cssBackgroundAttr Type
HiLink cssBorderOutlineAttr Type
HiLink cssBoxAttr Type
HiLink cssRenderAttr Type
HiLink cssAuralAttr Type
HiLink cssColorAttr Type
HiLink cssContentForPagedMediaAttr Type
HiLink cssDimensionAttr Type
HiLink cssFlexibleBoxAttr Type
HiLink cssFontAttr Type
HiLink cssGeneratedContentAttr Type
HiLink cssPagingAttr Type
HiLink cssGridAttr Type
HiLink cssHyerlinkAttr Type
HiLink cssLineboxAttr Type
HiLink cssListAttr Type
HiLink cssMarginAttr Type
HiLink cssMarqueeAttr Type
HiLink cssMultiColumnAttr Type
HiLink cssPaddingAttr Type
HiLink cssPagedMediaAttr Type
HiLink cssPositioningAttr Type
HiLink cssPrintAttr Type
HiLink cssRubyAttr Type
HiLink cssSpeechAttr Type
HiLink cssTableAttr Type
HiLink cssTextAttr Type
HiLink cssTransformAttr Type
HiLink cssTransitionAttr Type
HiLink cssUIAttr Type
HiLink cssAuralAttr Type
HiLink cssRenderAttr Type
HiLink cssCommonAttr Type
HiLink cssPseudoClassId PreProc
HiLink cssPseudoClassLang Constant
HiLink cssValueLength Number
@@ -277,6 +483,7 @@ if main_syntax == 'css'
unlet main_syntax
endif
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8

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

26
runtime/syntax/dts.vim Normal file
View File

@@ -0,0 +1,26 @@
" Vim syntax file
" Language: dts/dtsi (device tree files)
" Maintainer: Daniel Mack <vim@zonque.org>
" Last Change: 2012 Oct 04
if exists("b:current_syntax")
finish
endif
syntax region dtsComment start="/\*" end="\*/"
syntax match dtsReference "&[[:alpha:][:digit:]_]\+"
syntax region dtsBinaryProperty start="\[" end="\]"
syntax match dtsStringProperty "\".*\""
syntax match dtsKeyword "/.*/"
syntax match dtsLabel "^[[:space:]]*[[:alpha:][:digit:]_]\+:"
syntax region dtsCellProperty start="<" end=">" contains=dtsReference,dtsBinaryProperty,dtsStringProperty,dtsComment
syntax region dtsCommentInner start="/\*" end="\*/"
hi def link dtsCellProperty Number
hi def link dtsBinaryProperty Number
hi def link dtsStringProperty String
hi def link dtsKeyword Include
hi def link dtsLabel Label
hi def link dtsReference Macro
hi def link dtsComment Comment
hi def link dtsCommentInner Comment

View File

@@ -2,7 +2,7 @@
" Language: GDB command files
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
" URL: http://www.fleiner.com/vim/syntax/gdb.vim
" Last Change: 2009 May 25
" Last Change: 2012 Oct 05
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
@@ -12,6 +12,9 @@ elseif exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn keyword gdbInfo contained address architecture args breakpoints catch common copying dcache
syn keyword gdbInfo contained display files float frame functions handle line
syn keyword gdbInfo contained locals program registers scope set sharedlibrary signals
@@ -32,7 +35,7 @@ syn match gdbFuncDef "\<define\>.*"
syn match gdbStatmentContainer "^\s*\S\+" contains=gdbStatement,gdbFuncDef
syn match gdbStatement "^\s*info" nextgroup=gdbInfo skipwhite skipempty
" some commonly used abreviations
" some commonly used abbreviations
syn keyword gdbStatement c disp undisp disas p
syn region gdbDocument matchgroup=gdbFuncDef start="\<document\>.*$" matchgroup=gdbFuncDef end="^end\s*$"
@@ -65,12 +68,12 @@ syn match gdbSet "\<input-radix\>"
syn match gdbSet "\<demangle-style\>"
syn match gdbSet "\<output-radix\>"
syn match gdbComment "^\s*#.*"
syn match gdbComment "^\s*#.*" contains=@Spell
syn match gdbVariable "\$\K\k*"
" Strings and constants
syn region gdbString start=+"+ skip=+\\\\\|\\"+ end=+"+
syn region gdbString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@Spell
syn match gdbCharacter "'[^']*'" contains=gdbSpecialChar,gdbSpecialCharError
syn match gdbCharacter "'\\''" contains=gdbSpecialChar
syn match gdbCharacter "'[^\\]'"
@@ -108,4 +111,6 @@ endif
let b:current_syntax = "gdb"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8

View File

@@ -1,7 +1,7 @@
" Vim syntax file
" Language: group(5) user group file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-19
" Latest Revision: 2012-08-05
if exists("b:current_syntax")
finish
@@ -12,7 +12,7 @@ set cpo&vim
syn match groupBegin display '^' nextgroup=groupName
syn match groupName contained display '[a-z_][a-z0-9_-]\{0,15}'
syn match groupName contained display '[^:]\+'
\ nextgroup=groupPasswordColon
syn match groupPasswordColon contained display ':'
@@ -30,7 +30,7 @@ syn match groupGID contained display '\d*'
syn match groupUserListColon contained display ':' nextgroup=groupUserList
syn match groupUserList contained '[a-z_][a-z0-9_-]*'
syn match groupUserList contained '[^,]\+'
\ nextgroup=groupUserListSep
syn match groupUserListSep contained display ',' nextgroup=groupUserList

View File

@@ -1,7 +1,7 @@
" Vim syntax file
" Language: Vim help file
" Maintainer: Bram Moolenaar (Bram@vim.org)
" Last Change: 2012 May 18
" Last Change: 2012 Jul 16
" Quit when a (custom) syntax file was already loaded
if exists("b:current_syntax")
@@ -12,8 +12,8 @@ let s:cpo_save = &cpo
set cpo&vim
syn match helpHeadline "^[-A-Z .][-A-Z0-9 .()]*[ \t]\+\*"me=e-1
syn match helpSectionDelim "^=\{3,}.*===$"
syn match helpSectionDelim "^-\{3,}.*--$"
syn match helpSectionDelim "^===.*===$"
syn match helpSectionDelim "^---.*--$"
syn region helpExample matchgroup=helpIgnore start=" >$" start="^>$" end="^[^ \t]"me=e-1 end="^<"
if has("ebcdic")
syn match helpHyperTextJump "\\\@<!|[^"*|]\+|" contains=helpBar

View File

@@ -0,0 +1,27 @@
" Vim syntax file
" Language: hg (Mercurial) commit file
" Maintainer: Ken Takata <kentkt at csc dot jp>
" Last Change: 2012 Aug 23
" Filenames: hg-editor-*.txt
" License: VIM License
" URL: https://github.com/k-takata/hg-vim
if exists("b:current_syntax")
finish
endif
syn match hgcommitComment "^HG:.*$" contains=@NoSpell
syn match hgcommitUser "^HG: user: \zs.*$" contains=@NoSpell contained containedin=hgcommitComment
syn match hgcommitBranch "^HG: branch \zs.*$" contains=@NoSpell contained containedin=hgcommitComment
syn match hgcommitAdded "^HG: \zsadded .*$" contains=@NoSpell contained containedin=hgcommitComment
syn match hgcommitChanged "^HG: \zschanged .*$" contains=@NoSpell contained containedin=hgcommitComment
syn match hgcommitRemoved "^HG: \zsremoved .*$" contains=@NoSpell contained containedin=hgcommitComment
hi def link hgcommitComment Comment
hi def link hgcommitUser String
hi def link hgcommitBranch String
hi def link hgcommitAdded Identifier
hi def link hgcommitChanged Special
hi def link hgcommitRemoved Constant
let b:current_syntax = "hgcommit"

View File

@@ -2,7 +2,7 @@
" Language: HTML
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
" URL: http://www.fleiner.com/vim/syntax/html.vim
" Last Change: 2006 Jun 19
" Last Change: 2012 Oct 05
" Please check :help html.vim for some comments and a description of the options
@@ -17,6 +17,9 @@ if !exists("main_syntax")
let main_syntax = 'html'
endif
let s:cpo_save = &cpo
set cpo&vim
" don't use standard HiLink, it will not work with included syntax files
if version < 508
command! -nargs=+ HtmlHiLink hi link <args>
@@ -37,7 +40,7 @@ syn region htmlString contained start=+"+ end=+"+ contains=htmlSpecialChar,ja
syn region htmlString contained start=+'+ end=+'+ contains=htmlSpecialChar,javaScriptExpression,@htmlPreproc
syn match htmlValue contained "=[\t ]*[^'" \t>][^ \t>]*"hs=s+1 contains=javaScriptExpression,@htmlPreproc
syn region htmlEndTag start=+</+ end=+>+ contains=htmlTagN,htmlTagError
syn region htmlTag start=+<[^/]+ end=+>+ contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent,htmlCssDefinition,@htmlPreproc,@htmlArgCluster
syn region htmlTag start=+<[^/]+ end=+>+ fold contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent,htmlCssDefinition,@htmlPreproc,@htmlArgCluster
syn match htmlTagN contained +<\s*[-a-zA-Z0-9]\++hs=s+1 contains=htmlTagName,htmlSpecialTagName,@htmlTagNameCluster
syn match htmlTagN contained +</\s*[-a-zA-Z0-9]\++hs=s+2 contains=htmlTagName,htmlSpecialTagName,@htmlTagNameCluster
syn match htmlTagError contained "[^>]<"ms=s+1
@@ -98,11 +101,11 @@ syn match htmlSpecialChar "&#\=[0-9A-Za-z]\{1,8};"
" Comments (the real ones or the old netscape ones)
if exists("html_wrong_comments")
syn region htmlComment start=+<!--+ end=+--\s*>+
syn region htmlComment start=+<!--+ end=+--\s*>+ contains=@Spell
else
syn region htmlComment start=+<!+ end=+>+ contains=htmlCommentPart,htmlCommentError
syn region htmlComment start=+<!+ end=+>+ contains=htmlCommentPart,htmlCommentError,@Spell
syn match htmlCommentError contained "[^><!]"
syn region htmlCommentPart contained start=+--+ end=+--\s*+ contains=@htmlPreProc
syn region htmlCommentPart contained start=+--+ end=+--\s*+ contains=@htmlPreProc,@Spell
endif
syn region htmlComment start=+<!DOCTYPE+ keepend end=+>+
@@ -147,7 +150,8 @@ if !exists("html_no_rendering")
syn region htmlItalicUnderlineBold contained start="<b\>" end="</b>"me=e-4 contains=@htmlTop
syn region htmlItalicUnderlineBold contained start="<strong\>" end="</strong>"me=e-9 contains=@htmlTop
syn region htmlLink start="<a\>\_[^>]*\<href\>" end="</a>"me=e-4 contains=@Spell,htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,javaScript,@htmlPreproc
syn match htmlLeadingSpace "^\s\+" contained
syn region htmlLink start="<a\>\_[^>]*\<href\>" end="</a>"me=e-4 contains=@Spell,htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,htmlLeadingSpace,javaScript,@htmlPreproc
syn region htmlH1 start="<h1\>" end="</h1>"me=e-5 contains=@htmlTop
syn region htmlH2 start="<h2\>" end="</h2>"me=e-5 contains=@htmlTop
syn region htmlH3 start="<h3\>" end="</h3>"me=e-5 contains=@htmlTop
@@ -164,8 +168,8 @@ if main_syntax != 'java' || exists("java_javascript")
" JAVA SCRIPT
syn include @htmlJavaScript syntax/javascript.vim
unlet b:current_syntax
syn region javaScript start=+<script[^>]*>+ keepend end=+</script>+me=s-1 contains=@htmlJavaScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc
syn region htmlScriptTag contained start=+<script+ end=+>+ contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent
syn region javaScript start=+<script\_[^>]*>+ keepend end=+</script>+me=s-1 contains=@htmlJavaScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc
syn region htmlScriptTag contained start=+<script+ end=+>+ fold contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent
HtmlHiLink htmlScriptTag htmlTag
" html events (i.e. arguments that include javascript commands)
@@ -189,7 +193,7 @@ if main_syntax != 'java' || exists("java_vb")
" VB SCRIPT
syn include @htmlVbScript syntax/vb.vim
unlet b:current_syntax
syn region javaScript start=+<script [^>]*language *=[^>]*vbscript[^>]*>+ keepend end=+</script>+me=s-1 contains=@htmlVbScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc
syn region javaScript start=+<script \_[^>]*language *=\_[^>]*vbscript\_[^>]*>+ keepend end=+</script>+me=s-1 contains=@htmlVbScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc
endif
syn cluster htmlJavaScript add=@htmlPreproc
@@ -246,6 +250,7 @@ if version >= 508 || !exists("did_html_syn_inits")
HtmlHiLink htmlItalicBoldUnderline htmlBoldUnderlineItalic
HtmlHiLink htmlItalicUnderlineBold htmlBoldUnderlineItalic
HtmlHiLink htmlLink Underlined
HtmlHiLink htmlLeadingSpace None
if !exists("html_my_rendering")
hi def htmlBold term=bold cterm=bold gui=bold
hi def htmlBoldUnderline term=bold,underline cterm=bold,underline gui=bold,underline
@@ -289,4 +294,6 @@ if main_syntax == 'html'
unlet main_syntax
endif
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8

View File

@@ -1,7 +1,8 @@
" Vim syntax file " Language: Java
" Vim syntax file
" Language: Java
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
" URL: http://www.fleiner.com/vim/syntax/java.vim
" Last Change: 2011 Dec 30
" Last Change: 2012 Oct 05
" Please check :help java.vim for comments on some of the options available.
@@ -17,6 +18,9 @@ if !exists("main_syntax")
syn region javaFold start="{" end="}" transparent fold
endif
let s:cpo_save = &cpo
set cpo&vim
" don't use standard HiLink, it will not work with included syntax files
if version < 508
command! -nargs=+ JavaHiLink hi link <args>
@@ -26,7 +30,8 @@ endif
" some characters that cannot be in a java program (outside a string)
syn match javaError "[\\@`]"
syn match javaError "<<<\|\.\.\|=>\|<>\|||=\|&&=\|[^-]->\|\*\/"
syn match javaError "<<<\|\.\.\|=>\|||=\|&&=\|[^-]->\|\*\/"
syn match javaOK "\.\.\."
" use separate name so that it can be deleted in javacc.vim
@@ -161,7 +166,7 @@ if !exists("java_ignore_javadoc") && main_syntax != 'jsp'
syn region javaDocComment start="/\*\*" end="\*/" keepend contains=javaCommentTitle,@javaHtml,javaDocTags,javaDocSeeTag,javaTodo,@Spell
syn region javaCommentTitle contained matchgroup=javaDocComment start="/\*\*" matchgroup=javaCommentTitle keepend end="\.$" end="\.[ \t\r<&]"me=e-1 end="[^{]@"me=s-2,he=s-1 end="\*/"me=s-1,he=s-1 contains=@javaHtml,javaCommentStar,javaTodo,@Spell,javaDocTags,javaDocSeeTag
syn region javaDocTags contained start="{@\(link\|linkplain\|inherit[Dd]oc\|doc[rR]oot\|value\)" end="}"
syn region javaDocTags contained start="{@\(code\|link\|linkplain\|inherit[Dd]oc\|doc[rR]oot\|value\)" end="}"
syn match javaDocTags contained "@\(param\|exception\|throws\|since\)\s\+\S\+" contains=javaDocParam
syn match javaDocParam contained "\s\S\+"
syn match javaDocTags contained "@\(version\|author\|return\|deprecated\|serial\|serialField\|serialData\)\>"
@@ -341,5 +346,7 @@ if main_syntax == 'java'
endif
let b:spell_options="contained"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8

View File

@@ -2,7 +2,7 @@
" Language: JavaCC, a Java Compiler Compiler written by JavaSoft
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
" URL: http://www.fleiner.com/vim/syntax/javacc.vim
" Last Change: 2001 Jun 20
" Last Change: 2012 Oct 05
" Uses java.vim, and adds a few special things for JavaCC Parser files.
" Those files usually have the extension *.jj
@@ -15,6 +15,9 @@ elseif exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" source the java.vim file
if version < 600
source <sfile>:p:h/java.vim
@@ -44,7 +47,7 @@ syn keyword javaccPackages options DEBUG_PARSER DEBUG_LOOKAHEAD DEBUG_TOKEN_MANA
syn keyword javaccPackages COMMON_TOKEN_ACTION IGNORE_CASE CHOICE_AMBIGUITY_CHECK
syn keyword javaccPackages OTHER_AMBIGUITY_CHECK STATIC LOOKAHEAD ERROR_REPORTING
syn keyword javaccPackages USER_TOKEN_MANAGER USER_CHAR_STREAM JAVA_UNICODE_ESCAPE
syn keyword javaccPackages UNICODE_INPUT
syn keyword javaccPackages UNICODE_INPUT JDK_VERSION
syn match javaccPackages "PARSER_END([^)]*)"
syn match javaccPackages "PARSER_BEGIN([^)]*)"
syn match javaccSpecToken "<EOF>"
@@ -73,5 +76,7 @@ if version >= 508 || !exists("did_css_syn_inits")
endif
let b:current_syntax = "javacc"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8

View File

@@ -7,7 +7,7 @@
" (ss) repaired several quoting and grouping glitches
" (ss) fixed regex parsing issue with multiple qualifiers [gi]
" (ss) additional factoring of keywords, globals, and members
" Last Change: 2010 Mar 25
" Last Change: 2012 Oct 05
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
@@ -23,6 +23,9 @@ if !exists("main_syntax")
let main_syntax = 'javascript'
endif
let s:cpo_save = &cpo
set cpo&vim
" Drop fold if it set but vim doesn't support it.
if version < 600 && exists("javaScript_fold")
unlet javaScript_fold
@@ -131,5 +134,7 @@ let b:current_syntax = "javascript"
if main_syntax == 'javascript'
unlet main_syntax
endif
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8

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

@@ -2,7 +2,7 @@
" Language: Lua 4.0, Lua 5.0, Lua 5.1 and Lua 5.2
" Maintainer: Marcus Aurelius Farias <masserahguard-lua 'at' yahoo com>
" First Author: Carlos Augusto Teixeira Mendes <cmendes 'at' inf puc-rio br>
" Last Change: 2012 Feb 07
" Last Change: 2012 Aug 12
" Options: lua_version = 4 or 5
" lua_subversion = 0 (4.0, 5.0) or 1 (5.1) or 2 (5.2)
" default 5.2
@@ -48,39 +48,41 @@ syn match luaComment "\%^#!.*"
" catch errors caused by wrong parenthesis and wrong curly brackets or
" keywords placed outside their respective blocks
syn region luaParen transparent start='(' end=')' contains=ALLBUT,luaParenError,luaTodo,luaSpecial,luaIfThen,luaElseifThen,luaElse,luaThenEnd,luaBlock,luaLoopBlock,luaIn,luaStatement
syn region luaTableBlock transparent matchgroup=luaTable start="{" end="}" contains=ALLBUT,luaBraceError,luaTodo,luaSpecial,luaIfThen,luaElseifThen,luaElse,luaThenEnd,luaBlock,luaLoopBlock,luaIn,luaStatement
syn region luaParen transparent start='(' end=')' contains=TOP,luaParenError
syn match luaParenError ")"
syn match luaError "}"
syn match luaBraceError "}"
syn match luaError "\<\%(end\|else\|elseif\|then\|until\|in\)\>"
" Function declaration
syn region luaFunctionBlock transparent matchgroup=luaFunction start="\<function\>" end="\<end\>" contains=TOP
" else
syn keyword luaCondElse matchgroup=luaCond contained containedin=luaCondEnd else
" then ... end
syn region luaCondEnd contained transparent matchgroup=luaCond start="\<then\>" end="\<end\>" contains=TOP
" elseif ... then
syn region luaCondElseif contained containedin=luaCondEnd transparent matchgroup=luaCond start="\<elseif\>" end="\<then\>" contains=TOP
" function ... end
syn region luaFunctionBlock transparent matchgroup=luaFunction start="\<function\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaElseifThen,luaElse,luaThenEnd,luaIn
" if ... then
syn region luaCondStart transparent matchgroup=luaCond start="\<if\>" end="\<then\>"me=e-4 contains=TOP nextgroup=luaCondEnd skipwhite skipempty
syn region luaIfThen transparent matchgroup=luaCond start="\<if\>" end="\<then\>"me=e-4 contains=ALLBUT,luaTodo,luaSpecial,luaElseifThen,luaElse,luaIn nextgroup=luaThenEnd skipwhite skipempty
" then ... end
syn region luaThenEnd contained transparent matchgroup=luaCond start="\<then\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaThenEnd,luaIn
" elseif ... then
syn region luaElseifThen contained transparent matchgroup=luaCond start="\<elseif\>" end="\<then\>" contains=ALLBUT,luaTodo,luaSpecial,luaElseifThen,luaElse,luaThenEnd,luaIn
" else
syn keyword luaElse contained else
" do ... end
syn region luaBlock transparent matchgroup=luaStatement start="\<do\>" end="\<end\>" contains=TOP
syn region luaBlock transparent matchgroup=luaStatement start="\<do\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaElseifThen,luaElse,luaThenEnd,luaIn
" repeat ... until
syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<repeat\>" end="\<until\>" contains=TOP
syn region luaLoopBlock transparent matchgroup=luaRepeat start="\<repeat\>" end="\<until\>" contains=ALLBUT,luaTodo,luaSpecial,luaElseifThen,luaElse,luaThenEnd,luaIn
" while ... do
syn region luaWhile transparent matchgroup=luaRepeat start="\<while\>" end="\<do\>"me=e-2 contains=TOP nextgroup=luaBlock skipwhite skipempty
syn region luaLoopBlock transparent matchgroup=luaRepeat start="\<while\>" end="\<do\>"me=e-2 contains=ALLBUT,luaTodo,luaSpecial,luaIfThen,luaElseifThen,luaElse,luaThenEnd,luaIn nextgroup=luaBlock skipwhite skipempty
" for ... do and for ... in ... do
syn region luaFor transparent matchgroup=luaRepeat start="\<for\>" end="\<do\>"me=e-2 contains=TOP nextgroup=luaBlock skipwhite skipempty
syn region luaLoopBlock transparent matchgroup=luaRepeat start="\<for\>" end="\<do\>"me=e-2 contains=ALLBUT,luaTodo,luaSpecial,luaIfThen,luaElseifThen,luaElse,luaThenEnd nextgroup=luaBlock skipwhite skipempty
syn keyword luaFor contained containedin=luaFor in
syn keyword luaIn contained in
" other keywords
syn keyword luaStatement return local break
@@ -131,9 +133,6 @@ if lua_version >= 5
endif
endif
" tables
syn region luaTableBlock transparent matchgroup=luaTable start="{" end="}" contains=TOP,luaStatement
syn keyword luaFunc assert collectgarbage dofile error next
syn keyword luaFunc print rawget rawset tonumber tostring type _VERSION
@@ -343,15 +342,17 @@ if version >= 508 || !exists("did_lua_syntax_inits")
HiLink luaString2 String
HiLink luaNumber Number
HiLink luaOperator Operator
HiLink luaIn Operator
HiLink luaConstant Constant
HiLink luaCond Conditional
HiLink luaCondElse Conditional
HiLink luaElse Conditional
HiLink luaFunction Function
HiLink luaComment Comment
HiLink luaTodo Todo
HiLink luaTable Structure
HiLink luaError Error
HiLink luaParenError Error
HiLink luaBraceError Error
HiLink luaSpecial SpecialChar
HiLink luaFunc Identifier
HiLink luaLabel Label

View File

@@ -2,7 +2,7 @@
" Language: Makefile
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
" URL: http://www.fleiner.com/vim/syntax/make.vim
" Last Change: 2008 Aug 04
" Last Change: 2012 Oct 05
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
@@ -12,6 +12,10 @@ elseif exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" some special characters
syn match makeSpecial "^\s*[@+-]\+"
syn match makeNextLine "\\\n\s*"
@@ -25,8 +29,8 @@ syn match makeOverride "^ *override"
hi link makeOverride makeStatement
hi link makeExport makeStatement
" Koehler: catch unmatched define/endef keywords. endef only matches it is by itself on a line
syn region makeDefine start="^\s*define\s" end="^\s*endef\s*$" contains=makeStatement,makeIdent,makePreCondit,makeDefine
" catch unmatched define/endef keywords. endef only matches it is by itself on a line, possibly followed by a commend
syn region makeDefine start="^\s*define\s" end="^\s*endef\s*\(#.*\)\?$" contains=makeStatement,makeIdent,makePreCondit,makeDefine
" Microsoft Makefile specials
syn case ignore
@@ -48,8 +52,8 @@ syn match makeConfig "@[A-Za-z0-9_]\+@"
" make targets
" syn match makeSpecTarget "^\.\(SUFFIXES\|PHONY\|DEFAULT\|PRECIOUS\|IGNORE\|SILENT\|EXPORT_ALL_VARIABLES\|KEEP_STATE\|LIBPATTERNS\|NOTPARALLEL\|DELETE_ON_ERROR\|INTERMEDIATE\|POSIX\|SECONDARY\)\>"
syn match makeImplicit "^\.[A-Za-z0-9_./\t -]\+\s*:[^=]"me=e-2 nextgroup=makeSource
syn match makeImplicit "^\.[A-Za-z0-9_./\t -]\+\s*:$"me=e-1 nextgroup=makeSource
syn match makeImplicit "^\.[A-Za-z0-9_./\t -]\+\s*:[^=]"me=e-2 nextgroup=makeSource
syn region makeTarget transparent matchgroup=makeTarget start="^[A-Za-z0-9_./$()%-][A-Za-z0-9_./\t $()%-]*:\{1,2}[^:=]"rs=e-1 end=";"re=e-1,me=e-1 end="[^\\]$" keepend contains=makeIdent,makeSpecTarget,makeNextLine skipnl nextGroup=makeCommands
syn match makeTarget "^[A-Za-z0-9_./$()%*@-][A-Za-z0-9_./\t $()%*@-]*::\=\s*$" contains=makeIdent,makeSpecTarget skipnl nextgroup=makeCommands,makeCommandError
@@ -134,4 +138,6 @@ endif
let b:current_syntax = "make"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8

View File

@@ -3,20 +3,20 @@
" 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: 11
" Last Change: May 11 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
if version < 600
syntax clear
syntax clear
elseif exists("b:current_syntax")
finish
finish
endif
let s:cpo_save = &cpo
@@ -34,7 +34,7 @@ set expandtab
syn case ignore
" Progress Blocks of code and mismatched "end." errors.
syn match ProgressEndError "\<end\>"
syn match ProgressEndError "\<end\>"
syn region ProgressDoBlock transparent matchgroup=ProgressDo start="\<do\>" matchgroup=ProgressDo end="\<end\>" contains=ALLBUT,ProgressProcedure,ProgressFunction
syn region ProgressForBlock transparent matchgroup=ProgressFor start="\<for\>" matchgroup=ProgressFor end="\<end\>" contains=ALLBUT,ProgressProcedure,ProgressFunction
syn region ProgressRepeatBlock transparent matchgroup=ProgressRepeat start="\<repeat\>" matchgroup=ProgressRepeat end="\<end\>" contains=ALLBUT,ProgressProcedure,ProgressFunction
@@ -44,20 +44,20 @@ syn region ProgressCaseBlock transparent matchgroup=ProgressCase start="\<case\>
" and they could go in ProgressReserved,
" but I found it more helpful to highlight them in a different color.
syn keyword ProgressConditional if else then when otherwise
syn keyword ProgressFor each where
syn keyword ProgressFor each where
" Make those TODO and debugging notes stand out!
syn keyword ProgressTodo contained TODO BUG FIX
syn keyword ProgressDebug contained DEBUG
syn keyword ProgressTodo contained TODO BUG FIX
syn keyword ProgressDebug contained DEBUG
syn keyword ProgressDebug debugger
" If you like to highlight the whole line of
" the start and end of procedures
" to make the whole block of code stand out:
syn match ProgressProcedure "^\s*procedure.*"
syn match ProgressProcedure "^\s*end\s\s*procedure.*"
syn match ProgressFunction "^\s*function.*"
syn match ProgressFunction "^\s*end\s\s*function.*"
syn match ProgressProcedure "^\s*procedure.*"
syn match ProgressProcedure "^\s*end\s\s*procedure.*"
syn match ProgressFunction "^\s*function.*"
syn match ProgressFunction "^\s*end\s\s*function.*"
" ... otherwise use this:
" syn keyword ProgressFunction procedure function
@@ -99,14 +99,14 @@ 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=+\~'\|\~\~+
syn region ProgressString matchgroup=ProgressQuote start=+'+ end=+'+ skip=+\~'\|\~\~+
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_]*\>()"
" syn match ProgressDelimiter "()"
syn match ProgressMatrixDelimiter "[][]"
syn match ProgressMatrixDelimiter "[][]"
" If you prefer you can highlight the range:
"syn match ProgressMatrixDelimiter "[\d\+\.\.\d\+]"
@@ -114,7 +114,7 @@ syn match ProgressNumber "\<\-\=\d\+\(u\=l\=\|lu\|f\)\>"
syn match ProgressByte "\$[0-9a-fA-F]\+"
" More values: Logicals, and Progress's unknown value, ?.
syn match ProgressNumber "?"
syn match ProgressNumber "?"
syn keyword ProgressNumber true false yes no
" If you don't like tabs:
@@ -123,9 +123,9 @@ syn match ProgressShowTab "\t"
" If you don't like white space on the end of lines, uncomment this:
" syn match ProgressSpaceError "\s\+$"
syn region ProgressComment start="/\*" end="\*/" contains=ProgressComment,ProgressTodo,ProgressDebug
syn region ProgressInclude start="^[ ]*[{]" end="[}]" contains=ProgressPreProc,ProgressOperator,ProgressString,ProgressComment
syn region ProgressPreProc start="&" end="\>" contained
syn region ProgressComment start="/\*" end="\*/" contains=ProgressComment,ProgressTodo,ProgressDebug,@Spell
syn region ProgressInclude start="^[ ]*[{]" end="[}]" contains=ProgressPreProc,ProgressOperator,ProgressString,ProgressComment
syn region ProgressPreProc start="&" end="\>" contained
" This next line works reasonably well.
" syn match ProgressOperator "[!;|)(:.><+*=-]"
@@ -277,7 +277,7 @@ syn keyword ProgressOperator write-fragment write-message write-processing-instr
syn keyword ProgressOperator xml-data-type xml-node-name xml-node-type xml-schema-pat[h] xml-suppress-namespace-processing y y-of year year-offset yes-no
syn keyword ProgressOperator yes-no-cancel
syn keyword ProgressType char[acter] int[eger] int64 dec[imal] log[ical] da[te] datetime datetime-tz
syn keyword ProgressType char[acter] int[eger] int64 dec[imal] log[ical] da[te] datetime datetime-tz
syn sync lines=800
@@ -285,40 +285,40 @@ syn sync lines=800
" For version 5.7 and earlier: only when not done already
" For version 5.8 and later: only when an item doesn't have highlighting yet
if version >= 508 || !exists("did_progress_syntax_inits")
if version < 508
let did_progress_syntax_inits = 1
command -nargs=+ HiLink hi link <args>
else
command -nargs=+ HiLink hi def link <args>
endif
if version < 508
let did_progress_syntax_inits = 1
command -nargs=+ HiLink hi link <args>
else
command -nargs=+ HiLink hi def link <args>
endif
" The default methods for highlighting. Can be overridden later.
HiLink ProgressByte Number
HiLink ProgressCase Repeat
HiLink ProgressComment Comment
HiLink ProgressConditional Conditional
HiLink ProgressDebug Debug
HiLink ProgressDo Repeat
HiLink ProgressEndError Error
HiLink ProgressFor Repeat
HiLink ProgressFunction Procedure
HiLink ProgressIdentifier Identifier
HiLink ProgressInclude Include
HiLink ProgressMatrixDelimiter Identifier
HiLink ProgressNumber Number
HiLink ProgressOperator Operator
HiLink ProgressPreProc PreProc
HiLink ProgressProcedure Procedure
HiLink ProgressQuote Delimiter
HiLink ProgressRepeat Repeat
HiLink ProgressReserved Statement
HiLink ProgressSpaceError Error
HiLink ProgressString String
HiLink ProgressTodo Todo
HiLink ProgressType Statement
HiLink ProgressShowTab Error
" The default methods for highlighting. Can be overridden later.
HiLink ProgressByte Number
HiLink ProgressCase Repeat
HiLink ProgressComment Comment
HiLink ProgressConditional Conditional
HiLink ProgressDebug Debug
HiLink ProgressDo Repeat
HiLink ProgressEndError Error
HiLink ProgressFor Repeat
HiLink ProgressFunction Procedure
HiLink ProgressIdentifier Identifier
HiLink ProgressInclude Include
HiLink ProgressMatrixDelimiter Identifier
HiLink ProgressNumber Number
HiLink ProgressOperator Operator
HiLink ProgressPreProc PreProc
HiLink ProgressProcedure Procedure
HiLink ProgressQuote Delimiter
HiLink ProgressRepeat Repeat
HiLink ProgressReserved Statement
HiLink ProgressSpaceError Error
HiLink ProgressString String
HiLink ProgressTodo Todo
HiLink ProgressType Statement
HiLink ProgressShowTab Error
delcommand HiLink
delcommand HiLink
endif
let b:current_syntax = "progress"
@@ -326,4 +326,4 @@ let b:current_syntax = "progress"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8 sw=4
" vim: ts=8 sw=8

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: 2010-01-23
" Latest Revision: 2012-11-01
if exists("b:current_syntax")
finish
@@ -139,10 +139,31 @@ 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 Type
hi def link rstTransition Type
hi def link rstSections Title
hi def link rstTransition rstSections
hi def link rstLiteralBlock String
hi def link rstQuotedLiteralBlock String
hi def link rstDoctestBlock PreProc
@@ -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

@@ -2,14 +2,15 @@
" Language: Subversion (svn) commit file
" Maintainer: Dmitry Vasiliev <dima at hlabs dot org>
" URL: https://github.com/hdima/vim-scripts/blob/master/syntax/svn.vim
" Last Change: 2012-04-15
" Last Change: 2012-07-21
" Filenames: svn-commit*.tmp
" Version: 1.8
" Version: 1.9
" Contributors:
" Stefano Zacchiroli
" A. S. Budden
" Myk Taylor
" Ingo Karkat
" For version 5.x: Clear all syntax items.
" For version 6.x: Quit when a syntax file was already loaded.
@@ -19,7 +20,9 @@ elseif exists("b:current_syntax")
finish
endif
syn region svnRegion start="^--.*--$" end="\%$" contains=ALL contains=@NoSpell
syn region svnText start="\%^" end="^--.*--$"me=s-1 contains=@Spell
syn region svnRegion start="^--.*--$" end="\%$" contains=ALL
syn match svnRemoved "^D .*$" contained
syn match svnRenamed "^R[ M][ U][ +] .*$" contained
syn match svnAdded "^A[ M][ U][ +] .*$" contained

View File

@@ -1,6 +1,6 @@
" Vim syntax support file
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2012 Feb 11
" Last Change: 2012 Sep 25
" This file sets up for syntax highlighting.
" It is loaded from "syntax.vim" and "manual.vim".
@@ -46,6 +46,8 @@ fun! s:SynSet()
echohl None
endif
let s = &filetype
elseif s == "OFF"
let s = ""
endif
if s != ""

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

@@ -3,7 +3,7 @@
# vimparse.pl - Reformats the error messages of the Perl interpreter for use
# with the quickfix mode of Vim
#
# Copyright (<EFBFBD>) 2001 by J<EFBFBD>rg Ziefle <joerg.ziefle@gmx.de>
# Copyright (c) 2001 by Joerg Ziefle <joerg.ziefle@gmx.de>
# You may use and distribute this software under the same terms as Perl itself.
#
# Usage: put one of the two configurations below in your ~/.vimrc (without the

View File

@@ -658,7 +658,7 @@ NOTE: If you were to exit Vim and start it again with vim TEST , the file
4. Type w TEST , where TEST is a filename that does not exist yet. Verify
that you see :'<,'>w TEST before you press <ENTER>.
5. Vim will write the selected lines to the file TEST. Use :!dir or !ls
5. Vim will write the selected lines to the file TEST. Use :!dir or :!ls
to see it. Do not remove it yet! We will use it in the next lesson.
NOTE: Pressing v starts Visual selection. You can move the cursor around

View File

@@ -645,7 +645,7 @@ RIMARKO: Ĉiuj : komandoj devas finiĝi per tajpo de <Enenklavo>
3. Nun tajpu: :w TESTO (kie TESTO estas la elektita dosiernomo)
4. Tio konservas la tutan dosieron (instruilon de Vim) kun la nomo TESTO.
Por kontroli tion, tajpu :!dir aŭ !ls denove por vidigi vian
Por kontroli tion, tajpu :!dir aŭ :!ls denove por vidigi vian
dosierujon.
RIMARKO: Se vi volus eliri el Vim kaj restartigi ĝin denove per vim TESTO,

View File

@@ -707,7 +707,7 @@ NOTE : Si vous quittez Vim et le red
V<>rifiez que vous voyez :'<,'>w TEST avant de d'appuyer sur <Entr<74>e>.
5. Vim va enregistrer les lignes s<>lectionn<6E>es dans le fichier TEST.
Utilisez :!dir ou !ls pour le voir. Ne l'effacez pas encore !
Utilisez :!dir ou :!ls pour le voir. Ne l'effacez pas encore !
Nous allons l'utiliser dans la le<6C>on suivante.
NOTE : L'appui de v d<>marre la s<>lection Visuelle. Vous pouvez d<>placer le

View File

@@ -707,7 +707,7 @@ NOTE : Si vous quittez Vim et le redémarrez de nouveau avec le fichier TEST,
Vérifiez que vous voyez :'<,'>w TEST avant de d'appuyer sur <Entrée>.
5. Vim va enregistrer les lignes sélectionnées dans le fichier TEST.
Utilisez :!dir ou !ls pour le voir. Ne l'effacez pas encore !
Utilisez :!dir ou :!ls pour le voir. Ne l'effacez pas encore !
Nous allons l'utiliser dans la leçon suivante.
NOTE : L'appui de v démarre la sélection Visuelle. Vous pouvez déplacer le

View File

@@ -659,7 +659,7 @@ NAPOMENA: Ako bi napustili Vim i ponovno ga pokrenuli sa vim TEST ,
Provjerite da zaista pi<70>e :'<,'>w TEST
prije nego <20>to pritisnite <ENTER>.
5. Vim <20>e spremiti ozna<6E>eni tekst u TEST. Provjerite sa :!dir ili !ls .
5. Vim <20>e spremiti ozna<6E>eni tekst u TEST. Provjerite sa :!dir ili :!ls .
Nemojte je jo<6A> brisati! Koristiti <20>e te je u sljede<64>oj lekciji.
NAPOMENA: Tipka v zapo<70>inje Vizualno ozna<6E>avanje. Mo<4D>ete pomicati kursor

View File

@@ -659,7 +659,7 @@ NAPOMENA: Ako bi napustili Vim i ponovno ga pokrenuli sa vim TEST ,
Provjerite da zaista pi<70>e :'<,'>w TEST
prije nego <20>to pritisnite <ENTER>.
5. Vim <20>e spremiti ozna<6E>eni tekst u TEST. Provjerite sa :!dir ili !ls .
5. Vim <20>e spremiti ozna<6E>eni tekst u TEST. Provjerite sa :!dir ili :!ls .
Nemojte je jo<6A> brisati! Koristiti <20>e te je u sljede<64>oj lekciji.
NAPOMENA: Tipka v zapo<70>inje Vizualno ozna<6E>avanje. Mo<4D>ete pomicati kursor

View File

@@ -659,7 +659,7 @@ NAPOMENA: Ako bi napustili Vim i ponovno ga pokrenuli sa vim TEST ,
Provjerite da zaista piše :'<,'>w TEST
prije nego što pritisnite <ENTER>.
5. Vim će spremiti označeni tekst u TEST. Provjerite sa :!dir ili !ls .
5. Vim će spremiti označeni tekst u TEST. Provjerite sa :!dir ili :!ls .
Nemojte je još brisati! Koristiti će te je u sljedećoj lekciji.
NAPOMENA: Tipka v započinje Vizualno označavanje. Možete pomicati kursor

View File

@@ -2,16 +2,16 @@
== <20> d v <20> z <20> l j <20> k a V I M - o k t a t <20> b a n - 1.5-<2D>s verzi<7A> ==
===============================================================================
A Vim egy nagyon hat<61>kony szerkeszt<7A>, amelnyek rengeteg utas<61>t<EFBFBD>sa
A Vim egy nagyon hat<61>kony szerkeszt<7A>, amelynek rengeteg utas<61>t<EFBFBD>sa
van, t<>l sok, hogy egy ilyen oktat<61>ban (tutorban), mint az itteni
mindet elmagyar<61>zzuk. Ez az oktat<61> arra t<>rekszik, hogy annyit
elmagyar<61>zzon, amennyi el<65>g, hogy k<>nnyed<65>n haszn<7A>ljuk a Vim-et, az
<20>ltal<61>nos c<>l<EFBFBD> sz<73>vegszerkeszt<7A>t.
A feladatok megold<6C>s<EFBFBD>hoz 25-30 perc sz<73>ks<6B>ges att<74>l f<>gg<67>en,
mennyit t<>lt<6C>nk a kis<EFBFBD>rletez<EFBFBD>ssel.
mennyit t<>lt<6C>nk a k<EFBFBD>s<EFBFBD>rletez<EFBFBD>ssel.
A leck<63>ben szerepl<70> utas<61>t<EFBFBD>sok m<>dos<6F>tani fogj<67>k a sz<73>vegek.
A leck<63>ben szerepl<70> utas<61>t<EFBFBD>sok m<>dos<6F>tani fogj<67>k a sz<73>veget.
K<>sz<73>tsen m<>solatot err<72>l a f<>jlr<6C>l, ha gyakorolni akar.
(Ha "vimtutor"-ral ind<6E>totta, akkor ez m<>r egy m<>solat.)
@@ -81,7 +81,7 @@ Megj: A kurzor gomboknak is m
2. A hib<69>k kijav<61>t<EFBFBD>s<EFBFBD>hoz mozgassa a kurzort am<61>g a t<>rlend<6E> karakter
f<>l<EFBFBD> nem <20>r.
3. Nyomja meg az x gombot, hogy t<>r<EFBFBD>lje a nemk<6D>v<EFBFBD>nt karaktert.
3. Nyomja meg az x gombot, hogy t<>r<EFBFBD>lje a nem k<EFBFBD>v<EFBFBD>nt karaktert.
4. Ism<73>telje a 2, 3, 4-es l<>p<EFBFBD>seket, hogy kijav<61>tsa a mondatot.
@@ -172,7 +172,7 @@ Most folytassuk a 2. leck
3. Mozgassa a kurzort a helyes sor v<>g<EFBFBD>re (az els<6C> . UT<55>N)!
4. d$ beg<65>pel<65>s<EFBFBD>velt<6C>r<EFBFBD>lje a sor v<>g<EFBFBD>t!
4. d$ beg<65>pel<65>s<EFBFBD>vel t<EFBFBD>r<EFBFBD>lje a sor v<>g<EFBFBD>t!
---> Valaki a sor v<>g<EFBFBD>t k<>tszer g<>pelte be. k<>tszer g<>pelte be.
@@ -184,30 +184,30 @@ Most folytassuk a 2. leck
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2.3. lecke: UTAS<41>T<EFBFBD>SOKR<4B>L <20>S OBJEKTUMOKR<EFBFBD>L
2.3. lecke: UTAS<41>T<EFBFBD>SOKR<4B>L <20>S MOZG<EFBFBD>SOKR<EFBFBD>L
A d (delete=t<>rl<72>s) utas<61>t<EFBFBD>s form<72>ja a k<>vetkez<65>:
[sz<73>m] d objektum VAGY d [sz<73>m] objektum
[sz<73>m] d mozg<EFBFBD>s VAGY d [sz<73>m] mozg<EFBFBD>s
Ahol:
sz<73>m - h<>nyszor hajt<6A>djon v<>gre a parancs (elhagyhat<61>, alap<61>rt<72>k=1).
d - a t<>rl<72>s (delete) utas<61>t<EFBFBD>s.
objektum - amin a parancsnak teljes<65>lnie kell (al<61>bb list<73>zva).
mozg<EFBFBD>s - amin a parancsnak teljes<65>lnie kell (al<61>bb list<73>zva).
Objektumok r<>vid list<73>ja:
Mozg<EFBFBD>sok r<>vid list<73>ja:
w - a kurzort<72>l a sz<73> v<>g<EFBFBD>ig, bele<6C>rtve a sz<73>k<EFBFBD>zt.
e - a kurzort<72>l a sz<73> v<>g<EFBFBD>ig, NEM bele<6C>rtve a sz<73>k<EFBFBD>zt.
$ - a kurzort<72>l a sor v<>g<EFBFBD>ig.
MEGJ: V<EFBFBD>llalkoz<EFBFBD>bbak kedv<64><76>rt, csup<75>n az objektum beg<65>pel<65>s<EFBFBD>vel parancs n<>lk<6C>l
a kurzor oda ker<65>l, amit az objektumlista megad.
MEGJ: Csup<EFBFBD>n a mozg<7A>s beg<65>pel<65>s<EFBFBD>vel (parancs n<>lk<6C>l)
a kurzor mozg<EFBFBD>s <20>ltal megadott helyre ker<65>l.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2.4. lecke: EGY KIV<49>TEL A 'PARANCSOBJEKTUM' AL<41>L
2.4. lecke: EG<EFBFBD>SZ SOROK FELDOLGOZ<4F>SA
** dd be<62>r<EFBFBD>s<EFBFBD>val t<>r<EFBFBD>lheti az eg<65>sz sort. **
@@ -217,8 +217,8 @@ MEGJ: V
1. Mozgassa a kurzort az al<61>bbi kifejez<65>sek m<>sodik sor<6F>ra!
2. dd beg<65>pel<65>s<EFBFBD>vel t<>r<EFBFBD>lje a sort!
3. Menjen a 4. (eredetileg 5.) sorra!
4. 2dd (ugyeb<65>r sz<73>m-utas<61>t<EFBFBD>s-objektum) beg<65>pel<65>s<EFBFBD>vel t<>r<EFBFBD>lj<6C>n k<>t sort!
3. Menjen a 3. (eredetileg 4.) sorra!
4. 2dd (ugyeb<65>r sz<73>m-utas<61>t<EFBFBD>s-mozg<EFBFBD>s) beg<65>pel<65>s<EFBFBD>vel t<>r<EFBFBD>lj<6C>n k<>t sort!
1) Alv<6C> szegek a j<>ghideg homokban,
2) - kezdi a k<>lt<6C> -
@@ -238,9 +238,9 @@ MEGJ: V
1. Menj<6E>nk az al<61>bbi ---> kezdet<65> sor els<6C> hib<69>j<EFBFBD>ra!
2. x lenyom<6F>s<EFBFBD>val t<>r<EFBFBD>lje az els<6C> felesleges karaktert!
3. u megnyom<6F>s<EFBFBD>val vonja vissza az utols<6C>nak v<>grehajtott utas<61>t<EFBFBD>st!
4. M<>sodj<64>ra jav<61>tson ki minden hib<69>t a sorben az x utas<61>t<EFBFBD>ssal!
4. M<>sodj<64>ra jav<61>tson ki minden hib<69>t a sorban az x utas<61>t<EFBFBD>ssal!
5. Most nagy U -val <20>ll<6C>tsa vissza a sor eredeti <20>llapot<6F>t!
6. Nyomja meg az u gombot p<>rszor, hogy az U <20>s sz el<65>z<EFBFBD> utas<61>t<EFBFBD>sokat
6. Nyomja meg az u gombot p<>rszor, hogy az U <20>s az azt megel<EFBFBD>z<EFBFBD> utas<61>t<EFBFBD>sokat
vissza<7A>ll<6C>tsa!
7. CTRL-R (CTRL gomb lenyom<6F>sa mellett <20>ss<73>n R-t) p<>rszor csin<69>lja <20>jra a
visszavont parancsokat (redo)!
@@ -263,11 +263,11 @@ MEGJ: V
4. Egy utas<61>t<EFBFBD>s alakja norm<72>l m<>dban:
[sz<73>m] utas<61>t<EFBFBD>s objektum VAGY utas<61>t<EFBFBD>s [sz<73>m] objektum
[sz<73>m] utas<61>t<EFBFBD>s mozg<EFBFBD>s VAGY utas<61>t<EFBFBD>s [sz<73>m] mozg<EFBFBD>s
ahol:
sz<73>m - h<>nyszor ism<73>telj<6C>k a parancsot
utas<61>t<EFBFBD>s - mit tegy<67>nk, pl. d a t<>rl<72>skor
objektum - mire hasson az utas<61>t<EFBFBD>s, p<>ld<6C>ul w (sz<73>=word),
mozg<EFBFBD>s - mire hasson az utas<61>t<EFBFBD>s, p<>ld<6C>ul w (sz<73>=word),
$ (a sor v<>g<EFBFBD>ig), stb.
5. Az el<65>z<EFBFBD> tett visszavon<6F>sa (undo): u (kis u)
@@ -278,11 +278,11 @@ MEGJ: V
3.1. lecke: A BEILLESZT<5A>S (PUT) PARANCS
** p le<6C>t<EFBFBD>s<EFBFBD>vel az utols<6C>nak t<>r<EFBFBD>ltet a kurzor ut<75>n illeszhetj<74>k. **
** p le<6C>t<EFBFBD>s<EFBFBD>vel az utols<6C>nak t<>r<EFBFBD>ltet a kurzor ut<75>n illeszthetj<EFBFBD>k. **
1. Mozgassuk a kurzort az al<61>bbi sorok els<6C> sor<6F>ra.
2. dd le<6C>t<EFBFBD>s<EFBFBD>vel t<>r<EFBFBD>lj<6C>k a sort <20>s elt<6C>rol<6F>dik a Vim puffer<65>ben.
2. dd le<6C>t<EFBFBD>s<EFBFBD>vel t<>r<EFBFBD>lj<6C>k a sort <20>s elt<6C>rol<6F>dik a Vim puffer<65>ben.
3. Mozgassuk a kurzort azel<65>tt a sor EL<45>TTI sorba, ahov<6F> mozgatni
szeretn<74>nk a t<>r<EFBFBD>lt sort.
@@ -350,13 +350,13 @@ Vegy
3.4. lecke: T<>BBF<42>LE V<>LTOZTAT<41>S c-VEL
** A c utas<61>t<EFBFBD>s haszn<7A>lhat<61> ugyanazokkal az objektumokkal mint a t<>rl<72>s **
** A c utas<61>t<EFBFBD>s haszn<7A>lhat<61> ugyanazokkal az mozg<EFBFBD>sokkal mint a t<>rl<72>s **
1. A change utas<61>t<EFBFBD>s a t<>rl<72>ssel azonosan viselkedik. A forma:
[sz<73>m] c objektum OR c [sz<73>m] objektum
[sz<73>m] c mozg<EFBFBD>s OR c [sz<73>m] mozg<EFBFBD>s
2. Az objektumok is azonosak, pl. w (sz<73>), $ (sorv<72>g), stb.
2. A mozg<7A>sok is azonosak, pl. w (sz<73>), $ (sorv<72>g), stb.
3. Mozgassuk a kurzort az els<6C> ---> kezdet<65> sorra!
@@ -374,18 +374,18 @@ Vegy
1. A m<>r t<>r<EFBFBD>lt sort beilleszt<7A>s<EFBFBD>hez nyomjunk p-t. Ez a t<>r<EFBFBD>lt sz<73>veget
a kurzor UT<55>N helyezi (ha sor ker<65>lt t<>rl<72>sre, a kurzor allatti sorba).
a kurzor UT<55>N helyezi (ha sor ker<65>lt t<>rl<72>sre, a kurzor alatti sorba).
2. A kurzor alatti karakter <20>t<EFBFBD>r<EFBFBD>s<EFBFBD>hoz az r-et <20>s azt a karaktert
nyomjuk, amellyel az eredetit fel<65>l szeretn<74>nk <20>rni.
3. A v<>ltoztat<61>s (c) utas<61>t<EFBFBD>s a karaktert<72>l az objektum v<>g<EFBFBD>ig
v<>ltoztatja meg az objektumot. P<>ld<6C>ul a cw a kurzort<72>l a sz<73> v<>g<EFBFBD>ig,
3. A v<>ltoztat<61>s (c) utas<61>t<EFBFBD>s a karaktert<72>l az mozg<EFBFBD>s v<>g<EFBFBD>ig
v<>ltoztatja meg az mozg<EFBFBD>st. P<>ld<6C>ul a cw a kurzort<72>l a sz<73> v<>g<EFBFBD>ig,
a c$ a sor v<>g<EFBFBD>ig.
4. A v<>ltoztat<61>s form<72>tuma:
[sz<73>m] c objektum VAGY c [sz<73>m] objektum
[sz<73>m] c mozg<EFBFBD>s VAGY c [sz<73>m] mozg<EFBFBD>s
Ugorjunk a k<>vetkez<65> leck<63>re!
@@ -428,7 +428,7 @@ Ugorjunk a k
3. A kifejez<65>s <20>jabb keres<65>s<EFBFBD>hez <20>ss<73>k le egyszer<65>en: n .
A kifejez<65>s ellenkez<65> ir<69>nyban t<>rt<72>n<EFBFBD> keres<65>s<EFBFBD>hez ezt <20>ss<73>k be: Shift-N .
4. Ha visszafel<65> szeretne keresni, akkor ? kell a ! helyett.
4. Ha visszafel<65> szeretne keresni, akkor ? kell a / helyett.
---> "hiibaa" nem a helyes m<>dja a hiba le<6C>r<EFBFBD>s<EFBFBD>nak; a hiibaa egy hiba.
@@ -462,7 +462,7 @@ Megj: Ez nagyon hasznos, ha olyan programot debugolunk, amelyben a
4.4. lecke: A HIB<49>K KIJAV<41>T<EFBFBD>S<EFBFBD>NAK EGY M<>DJA
** :s/<EFBFBD>j/r<EFBFBD>gi/g beg<65>pel<65>s<EFBFBD>vel az '<27>j'-ra cser<65>lj<6C>k a 'r<>gi'-t. **
** :s/r<>gi/<EFBFBD>j/g beg<65>pel<65>s<EFBFBD>vel az '<27>j'-ra cser<65>lj<6C>k a 'r<>gi'-t. **
1. Menj<6E>nk a ---> kezdet<65> sorra!
@@ -579,7 +579,7 @@ Megj: Ha
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5.4. lecke: RETRIEVING AND MERGING FILES
5.4. lecke: F<EFBFBD>JLOK VISSZA<5A>LL<4C>T<EFBFBD>SA <20>S <20>SSZEF<45>Z<EFBFBD>SE
** Egy f<>jl tartalm<6C>nak beilleszt<7A>s<EFBFBD>hez <20>rja :r F<>JLN<4C>V **
@@ -592,11 +592,11 @@ MEGJ: A 3. l
keresse meg ism<73>t ezt a leck<63>t.
3. Most sz<73>rja be a TESZT nev<65> f<>jlt a :r TESZT paranccsal, ahol
TESZT az <20>n f<>jlj<6C>nak a neve.
TESZT az <20>n f<>jlj<6C>nak a neve.
MEGJ: A f<>jl, amit beillesztett a kurzora alatt helyezkedik el.
4. Hogy ellen<65>rizz<7A>k, hogy a f<>jlt t<>nyleg beillsztett<74>k, menjen
4. Hogy ellen<65>rizz<7A>k, hogy a f<>jlt t<>nyleg beillesztett<EFBFBD>k, menjen
vissza, <20>s n<>zze meg, hogy k<>tszer szerepel az 5.3. lecke! Az eredeti
mellett a f<>jlb<6C>l bem<65>solt is ott van.
@@ -616,11 +616,11 @@ MEGJ: A f
2. :w F<>JLN<4C>V ki<6B>rja a jelenlegi Vim-f<>jlt a lemezre F<>JN<4A>V n<>ven.
3. :#,#w F<>JLN<4C>V ki<6B>rja a k<>t sorsz<73>m (#) k<>z<EFBFBD>tti sorokat F<>JLN<4C>V-be
M<>sik lehet<65>s<EFBFBD>g, hogy a kezd<7A>sorn<72>l Ctrl-v-t nyom lemegy az utols<6C>
M<>sik lehet<65>s<EFBFBD>g, hogy a kezd<7A>sorn<72>l Shift-v-t nyom lemegy az utols<6C>
sorra, majd ezt <20>ti be :w F<>JLN<4C>V
4. :r F<>JLN<4C>V beolvassa a F<>JLN<4C>V f<>jlt <20>s behelyezi a jelenlegi f<>jlba
a kurzorpozici<EFBFBD> ut<75>ni sorba.
a kurzorpoz<EFBFBD>ci<EFBFBD> ut<75>ni sorba.
@@ -629,7 +629,7 @@ MEGJ: A f
6.1. lecke: A MEGNYIT<49>S (OPEN) PARANCS
** o be<62>r<EFBFBD>s<EFBFBD>val nyithat egy <20>j sort a kurzor alatt <20>s v<EFBFBD>lthat besz<EFBFBD>r<EFBFBD> m<>dba **
** o be<62>r<EFBFBD>s<EFBFBD>val nyit egy <20>j sort a kurzor alatt <20>s besz<73>r<EFBFBD> m<>dba v<EFBFBD>lt **
1. Mozgassuk a kurzort a ---> kezdet<65> sorra.
@@ -641,7 +641,7 @@ MEGJ: A f
---> Az o lenyom<6F>sa ut<75>n a kurzor a k<>vetkez<65> sor elej<65>n <20>ll besz<73>r<EFBFBD> m<>dban.
4. A kurzor FELETTI for megnyit<69>s<EFBFBD>hoz egyzser<EFBFBD>en a nagy O bet<65>t <20>rjon
4. A kurzor FELETTI sor megnyit<69>s<EFBFBD>hoz egyszer<EFBFBD>en nagy O bet<65>t <20>rjon
kicsi helyett. Pr<50>b<EFBFBD>lja ki a k<>vetkez<65> soron!
Nyisson egy <20>j sort efelett Shift-O megnyom<6F>s<EFBFBD>val, mialatt a kurzor
ezen a soron <20>ll.
@@ -654,16 +654,16 @@ ezen a soron
6.2. lecke: AZ APPEND PARANCS
** a lenyom<6F>s<EFBFBD>val a kuror UT<55>N sz<73>rhatunk sz<73>veget. **
** a lenyom<6F>s<EFBFBD>val a kurzor UT<55>N sz<73>rhatunk sz<73>veget. **
1. Mozgassuk a kurzort a k<>vetkez<65> ---> kezdet<65> sor v<>g<EFBFBD>re <20>gy,
hogy norm<72>l m<>dban $ <20>r be.
hogy norm<EFBFBD>l m<EFBFBD>dban $-t <20>r be.
2. a (kicsi) le<6C>t<EFBFBD>s<EFBFBD>vel sz<73>veget sz<73>rhat be AM<41>G<EFBFBD> a karakter m<>g<EFBFBD>,
2. Kis "a" le<6C>t<EFBFBD>s<EFBFBD>vel sz<73>veget sz<73>rhat be AM<41>G<EFBFBD> a karakter m<>g<EFBFBD>,
amelyen a kurzor <20>ll.
(A nagy A az eg<65>sz sor v<>g<EFBFBD>re <20>rja a sz<73>veget.)
(A nagy "A" az eg<65>sz sor v<>g<EFBFBD>re <20>rja a sz<73>veget.)
Megj: A Vimben a sor legv<67>g<EFBFBD>re is lehet <20>llni, azonba ez el<65>dj<64>ben
Megj: A Vimben a sor legv<67>g<EFBFBD>re is lehet <20>llni, azonban ez el<65>dj<64>ben
a Vi-ban nem lehets<74>ges, ez<65>rt abban az a n<>lk<6C>l el<65>g k<>r<EFBFBD>lm<6C>nyes
a sor v<>g<EFBFBD>hez sz<73>veget <20>rni.
@@ -687,13 +687,13 @@ Megj: A Vimben a sor legv
2. Helyezze a kurzort az els<6C> sz<73> elej<65>re amely elt<6C>r a m<>sodik
---> kezdet<65> sor tartalm<6C>t<EFBFBD>l (a 'az utols<6C>val' r<>szt<7A>l).
3. Nyomjon R karaktert <20>s <20>rja <20>t a sz<73>veg marad<61>k<EFBFBD>t az els<6C> sorban
3. Nyomjon R karaktert <20>s <20>rja <20>t a sz<73>veg marad<61>k<EFBFBD>t az els<6C> sorban
<20>gy, hogy a k<>t sor egyez<65> legyen.
---> Az els<6C> sort tegye azonoss<73> az utols<6C>val: haszn<7A>lja a gombokat.
---> Az els<6C> sort tegye azonoss<73> a m<>sodikkal: <20>rjon R-t <20>s az <20>j sz<73>veget.
4. Jegyezz<7A>k meg, ha <ESC>-et nyomok, akkor a v<>ltozatlanuk hagyott
4. Jegyezz<7A>k meg, ha <ESC>-et nyomok, akkor a v<>ltozatlanul hagyott
sz<73>vegek v<>ltozatlanok maradnak.
@@ -826,5 +826,5 @@ Megj: A Vimben a sor legv
A Vimhez idom<6F>totta Bram Moolenaar.
Magyar<61>totta: Horv<72>th <20>rp<72>d <horvath.arpad@roik.bmf.hu>, 2006-2008
Magyar<61>totta: Horv<72>th <20>rp<72>d <horvath.arpad@arek.uni-opbuda.hu>, 2006-2012

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