]> granicus.if.org Git - vim/commitdiff
Updated runtime files.
authorBram Moolenaar <Bram@vim.org>
Sun, 19 Sep 2010 17:01:21 +0000 (19:01 +0200)
committerBram Moolenaar <Bram@vim.org>
Sun, 19 Sep 2010 17:01:21 +0000 (19:01 +0200)
19 files changed:
runtime/doc/cmdline.txt
runtime/doc/debug.txt
runtime/doc/editing.txt
runtime/doc/eval.txt
runtime/doc/ft_ada.txt
runtime/doc/helphelp.txt
runtime/doc/insert.txt
runtime/doc/message.txt
runtime/doc/os_vms.txt
runtime/doc/pi_zip.txt
runtime/doc/quickref.txt
runtime/doc/starting.txt
runtime/doc/syntax.txt
runtime/doc/todo.txt
runtime/doc/undo.txt
runtime/doc/various.txt
runtime/syntax/d.vim
runtime/syntax/yaml.vim
uninstal.txt

index a072c6cdab220976931d5dd781ea7facec52f9e7..6e42025d28ae1add20ce80b3378be66be781e575 100644 (file)
@@ -1,4 +1,4 @@
-*cmdline.txt*   For Vim version 7.3.  Last change: 2010 May 07
+*cmdline.txt*   For Vim version 7.3.  Last change: 2010 Sep 18
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -423,7 +423,8 @@ CTRL-L              A match is done on the pattern in front of the cursor.  If
 
 The 'wildchar' option defaults to <Tab> (CTRL-E when in Vi compatible mode; in
 a previous version <Esc> was used).  In the pattern standard wildcards '*' and
-'?' are accepted.  '*' matches any string, '?' matches exactly one character.
+'?' are accepted when matching file names.  '*' matches any string, '?'
+matches exactly one character.
 
 If you like tcsh's autolist completion, you can use this mapping:
        :cnoremap X <C-L><C-D>
index 015c4e730d81d984c159d883d45a064d5c4eb0a9..a38b9f67c76595dae9d3b4fded0271a24f84e91f 100644 (file)
@@ -1,4 +1,4 @@
-*debug.txt*     For Vim version 7.3.  Last change: 2010 Jul 20
+*debug.txt*     For Vim version 7.3.  Last change: 2010 Sep 14
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -22,7 +22,8 @@ compilation, here is what you can do to find out exactly where Vim crashes.
 This also applies when using the MingW tools.
 
 1. Compile Vim with the "-g" option (there is a line in the Makefile for this,
-   which you can uncomment).
+   which you can uncomment).  Also make sure "strip" is disabled (do not
+   install it, or use the line "STRIP = /bin/true").
 
 2. Execute these commands (replace "11" with the test that fails): >
        cd testdir
@@ -67,7 +68,7 @@ If the Windows version of Vim crashes in a reproducible manner, you can take
 some steps to provide a useful bug report.
 
 
-GENERIC ~
+3.1 GENERIC ~
 
 You must obtain the debugger symbols (PDB) file for your executable: gvim.pdb
 for gvim.exe, or vim.pdb for vim.exe. The PDB should be available from the
@@ -89,7 +90,7 @@ a Vim executable compiled with the Borland compiler; gdb (see above
 
 
                                                                *debug-vs2005*
-2.2 Debugging Vim crashes with Visual Studio 2005/Visual C++ 2005 Express ~
+3.2 Debugging Vim crashes with Visual Studio 2005/Visual C++ 2005 Express ~
 
 First launch vim.exe or gvim.exe and then launch Visual Studio.  (If you don't
 have Visual Studio, follow the instructions at |get-ms-debuggers| to obtain a
@@ -123,7 +124,7 @@ installed as a just-in-time debugger. Use WinDbg, |debug-windbg|, if you
 need to save minidumps or you want a just-in-time (postmortem) debugger.
 
                                                                *debug-windbg*
-2.3 Debugging Vim crashes with WinDbg ~
+3.3 Debugging Vim crashes with WinDbg ~
 
 See |get-ms-debuggers| to obtain a copy of WinDbg.
 
@@ -149,7 +150,7 @@ To save a minidump, type the following at the WinDbg command line: >
         .dump vim.dmp
 <
                                                        *debug-minidump*
-2.4 Opening a Minidump ~
+3.4 Opening a Minidump ~
 
 If you have a minidump file, you can open it in Visual Studio or in WinDbg.
 
@@ -161,7 +162,7 @@ In WinDbg: choose Open Crash Dump on the File menu. Follow the instructions in
 |debug-windbg| to set the Symbol File Path.
 
                                                        *get-ms-debuggers*
-2.5 Obtaining Microsoft Debugging Tools ~
+3.5 Obtaining Microsoft Debugging Tools ~
 
 The Debugging Tools for Windows (including WinDbg) can be downloaded from
     http://www.microsoft.com/whdc/devtools/debugging/default.mspx
index 84800aa7890e52d8e714ee4f1d4500563029e911..4a651d3dd2d21da7b667b6fa482df962466ab3a9 100644 (file)
@@ -1,4 +1,4 @@
-*editing.txt*   For Vim version 7.3.  Last change: 2010 Jul 28
+*editing.txt*   For Vim version 7.3.  Last change: 2010 Sep 18
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1431,13 +1431,15 @@ Notes:
   history, showing the 'key' value in a viminfo file.
 - There is never 100% safety.  The encryption in Vim has not been tested for
   robustness.
-- The algorithm used is breakable.  A 4 character key in about one hour, a 6
-  character key in one day (on a Pentium 133 PC).  This requires that you know
-  some text that must appear in the file.  An expert can break it for any key.
-  When the text has been decrypted, this also means that the key can be
-  revealed, and other files encrypted with the same key can be decrypted.
-- Pkzip uses the same encryption, and US Govt has no objection to its export.
-  Pkzip's public file APPNOTE.TXT describes this algorithm in detail.
+- The algorithm used for 'cryptmethod' "zip" is breakable.  A 4 character key
+  in about one hour, a 6 character key in one day (on a Pentium 133 PC).  This
+  requires that you know some text that must appear in the file.  An expert
+  can break it for any key.  When the text has been decrypted, this also means
+  that the key can be revealed, and other files encrypted with the same key
+  can be decrypted.
+- Pkzip uses the same encryption as 'cryptmethod' "zip", and US Govt has no
+  objection to its export.  Pkzip's public file APPNOTE.TXT describes this
+  algorithm in detail.
 - Vim originates from the Netherlands.  That is where the sources come from.
   Thus the encryption code is not exported from the USA.
 
index 54035519e26d73536363581fb8bfd42566edbcf7..9522d3596aa44ae31ec78a8231bb49e42b786874 100644 (file)
@@ -1,4 +1,4 @@
-*eval.txt*     For Vim version 7.3.  Last change: 2010 Aug 15
+*eval.txt*     For Vim version 7.3.  Last change: 2010 Sep 14
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -63,21 +63,21 @@ The Number and String types are converted automatically, depending on how they
 are used.
 
 Conversion from a Number to a String is by making the ASCII representation of
-the Number.  Examples: >
-       Number 123      -->     String "123"
-       Number 0        -->     String "0"
-       Number -1       -->     String "-1"
+the Number.  Examples:
+       Number 123      -->     String "123" ~
+       Number 0        -->     String "0" ~
+       Number -1       -->     String "-1" ~
                                                        *octal*
 Conversion from a String to a Number is done by converting the first digits
 to a number.  Hexadecimal "0xf9" and Octal "017" numbers are recognized.  If
-the String doesn't start with digits, the result is zero.  Examples: >
-       String "456"    -->     Number 456
-       String "6bar"   -->     Number 6
-       String "foo"    -->     Number 0
-       String "0xf1"   -->     Number 241
-       String "0100"   -->     Number 64
-       String "-8"     -->     Number -8
-       String "+8"     -->     Number 0
+the String doesn't start with digits, the result is zero.  Examples:
+       String "456"    -->     Number 456 ~
+       String "6bar"   -->     Number 6 ~
+       String "foo"    -->     Number 0 ~
+       String "0xf1"   -->     Number 241 ~
+       String "0100"   -->     Number 64 ~
+       String "-8"     -->     Number -8 ~
+       String "+8"     -->     Number 0 ~
 
 To force conversion from String to Number, add zero to it: >
        :echo "0100" + 0
@@ -6216,7 +6216,7 @@ toolbar                   Compiled with support for |gui-toolbar|.
 unix                   Unix version of Vim.
 user_commands          User-defined commands.
 viminfo                        Compiled with viminfo support.
-vim_starting           True while initial source'ing takes place.
+vim_starting           True while initial source'ing takes place. |startup|
 vertsplit              Compiled with vertically split windows |:vsplit|.
 virtualedit            Compiled with 'virtualedit' option.
 visual                 Compiled with Visual mode.
index 54c6b3f57e199bc76b37f0384f87b34bc9119406..c74dd01d02b314c2ebcfb1e513f18e8f0d106362 100644 (file)
@@ -6,20 +6,20 @@
 ADA                                                                  *ada.vim*
 
 1.  Syntax Highlighting                            |ft-ada-syntax|
-2.  Plug-in                                |ft-ada-plugin|
+2.  File type Plug-in                      |ft-ada-plugin|
 3.  Omni Completion                        |ft-ada-omni|
     3.1 Omni Completion with "gnat xref"       |gnat-xref|
     3.2 Omni Completion with "ctags"           |ada-ctags|
 4.  Compiler Support                       |ada-compiler|
     4.1 GNAT                                   |compiler-gnat|
-    4.1 Dec Ada                                        |compiler-decada|
+    4.2 Dec Ada                                        |compiler-decada|
 5.  References                             |ada-reference|
     5.1 Options                                        |ft-ada-options|
-    5.2 Functions                              |ft-ada-functions|
-    5.3 Commands                               |ft-ada-commands|
-    5.4 Variables                              |ft-ada-variables|
-    5.5 Constants                              |ft-ada-constants|
-8.  Extra Plug-ins                         |ada-extra-plugins|
+    5.2 Commands                               |ft-ada-commands|
+    5.3 Variables                              |ft-ada-variables|
+    5.4 Constants                              |ft-ada-constants|
+    5.5 Functions                              |ft-ada-functions|
+6.  Extra Plug-ins                         |ada-extra-plugins|
 
 ==============================================================================
 1. Syntax Highlighting ~
@@ -139,7 +139,7 @@ The Ada parser for Exuberant Ctags is fairly new - don't expect complete
 support yet.
 
 ==============================================================================
-4.  Compiler Support ~
+4. Compiler Support ~
                                                                *ada-compiler*
 
 The Ada mode supports more than one Ada compiler and will automatically load the
@@ -367,7 +367,7 @@ false when the variable is undefined. The value to which the variable is set
 makes no difference.
 
 ------------------------------------------------------------------------------
-5.3 Commands ~
+5.2 Commands ~
                                                             *ft-ada-commands*
 
 :AdaRainbow                                                     *:AdaRainbow*
@@ -445,7 +445,7 @@ g:ada#Ctags_Kinds   dictionary of lists
                for Ctags generates.
 
 ------------------------------------------------------------------------------
-5.2 Functions ~
+5.5 Functions ~
                                                            *ft-ada-functions*
 
 ada#Word([{line}, {col}])                                        *ada#Word()*
@@ -479,7 +479,7 @@ gnat#New ()
 
 
 ==============================================================================
-8. Extra Plugins ~
+6. Extra Plugins ~
                                                           *ada-extra-plugins*
 
 You can optionally install the following extra plug-ins. They work well with
index 0ba0bbfa0859451a50d944b23c4ab1d30c78e52a..25bf03aa0c977f6f21d39e95144377cf7b2cbf71 100644 (file)
@@ -1,4 +1,4 @@
-*helphelp.txt* For Vim version 7.3.  Last change: 2010 Jul 29
+*helphelp.txt* For Vim version 7.3.  Last change: 2010 Sep 14
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -7,7 +7,7 @@
 Help on help files                                     *helphelp*
 
 1. Help commands               |online-help|
-2. Translating help files      |help-translated|
+2. Translated help files       |help-translated|
 3. Writing help files          |help-writing|
 
 ==============================================================================
@@ -188,7 +188,7 @@ command: >
                        Only for backwards compatibility.  It now executes the
                        ToolBar.FindHelp menu entry instead of using a builtin
                        dialog.  {only when compiled with |+GUI_GTK|}
-<                      {not in Vi}
+                       {not in Vi}
 
                                        *:helpt* *:helptags*
                                *E154* *E150* *E151* *E152* *E153* *E670*
index 74eff962d1e094337c63d0623dc877a40cee7877..9fe55870b23387fcb2e1dcc1a2b5a6a4fb886bfc 100644 (file)
@@ -1,4 +1,4 @@
-*insert.txt*    For Vim version 7.3.  Last change: 2010 Jul 29
+*insert.txt*    For Vim version 7.3.  Last change: 2010 Sep 15
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -555,12 +555,11 @@ CTRL-D, 'expandtab', 'smarttab', 'softtabstop', etc.
 In 'list' mode, Virtual Replace mode acts as if it was not in 'list' mode,
 unless "L" is in 'cpoptions'.
 
-Note that the only times characters beyond the cursor should appear to move
-are in 'list' mode, and occasionally when 'wrap' is set (and the line changes
-length to become shorter or wider than the width of the screen), or
-momentarily when typing over a CTRL character.  A CTRL character takes up two
-screen spaces.  When replacing it with two normal characters, the first will
-be inserted and the second will replace the CTRL character.
+Note that the only situations for which characters beyond the cursor should
+appear to move are in List mode |'list'|, and occasionally when 'wrap' is set
+(and the line changes length to become shorter or wider than the width of the
+screen).  In other cases spaces may be inserted to avoid following characters
+to move.
 
 This mode is very useful for editing <Tab> separated columns in tables, for
 entering new data while keeping all the columns aligned.
index 4494568e21b375430d5c8a7192b55592836daa11..b0aa754aa8c4c681386224b977e6e0a45226636a 100644 (file)
@@ -1,4 +1,4 @@
-*message.txt*   For Vim version 7.3.  Last change: 2010 Aug 10
+*message.txt*   For Vim version 7.3.  Last change: 2010 Sep 14
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -65,7 +65,7 @@ or view a list of recent messages with: >
 LIST OF MESSAGES
                        *E222* *E228* *E232* *E256* *E293* *E298* *E304* *E317*
                        *E318* *E356* *E438* *E439* *E440* *E316* *E320* *E322*
-                       *E323* *E341* *E473* *E570* *E685* >
+                       *E323* *E341* *E473* *E570* *E685*  >
   Add to read buffer
   makemap: Illegal mode
   Cannot create BalloonEval with both message and callback
index 94a5297057f8531e5ee0261ed3d7f36414cda447..81d184189fe235c265bcddb88d1f2ddfb7e0a8fa 100644 (file)
@@ -1,4 +1,4 @@
-*os_vms.txt*    For Vim version 7.3.  Last change: 2010 Jul 28
+*os_vms.txt*    For Vim version 7.3.  Last change: 2010 Aug 16
 
 
                  VIM REFERENCE MANUAL
@@ -675,7 +675,7 @@ slow when user wants to run Vim just in the console mode - because of X environm
 Luckily, there is a simple solution for that. Administrators need to deploy
 both GUI/GTK build and just console build executables, like below: >
 
-    |- vim72
+    |- vim73
     |----- doc
     |----- syntax        
        vimrc    (system rc files)
@@ -685,7 +685,7 @@ both GUI/GTK build and just console build executables, like below: >
 
 Define system symbols like below in for ex in LOGIN.COM or SYLOGIN.COM: >
 
-       $ define/nolog VIM RF10:[UTIL.VIM72] ! where you VIM directory is
+       $ define/nolog VIM RF10:[UTIL.VIM73] ! where you VIM directory is
        $ vi*m  :== mcr VIM:VIM.EXE
        $ gvi*m :== mcr VIM:GVIM.EXE
        $ ! or you can try to spawn with
@@ -755,7 +755,7 @@ Solution 2.  Different directories: >
        $      define/nolog VIM RF10:[UTIL.IA64_EXE] ! IA64 executables
        $ endif
         $! VIMRUNTIME must be defined in order to find runtime files
-       $ define/nolog VIMRUNTIME RF10:[UTIL.VIM72]
+       $ define/nolog VIMRUNTIME RF10:[UTIL.VIM73]
 
 A good example for this approach is the [GNU]gnu_tools.com script from
 GNU_TOOLS.ZIP package downloadable from http://www.polarhome.com/vim/
index 7b724774510863784be78bfb6715a5b1bdd5fb56..6ad6e31eefa28c8a2c32d72911d04cca5f9003a6 100644 (file)
@@ -1,4 +1,4 @@
-*pi_zip.txt*   For Vim version 7.3.  Last change: 2010 Apr 12
+*pi_zip.txt*   For Vim version 7.3.  Last change: 2010 Sep 14
 
                                +====================+
                                | Zip File Interface |
@@ -64,12 +64,11 @@ Copyright: Copyright (C) 2005-2009 Charles E Campbell, Jr *zip-copyright*
 
    If for some reason you do not wish to use vim to examine zipped files,
    you may put the following two variables into your <.vimrc> to prevent
-   the tar plugin from loading: >
+   the zip plugin from loading: >
 
        let g:loaded_zipPlugin= 1
        let g:loaded_zip      = 1
 <
-<
 
 ==============================================================================
 3. Additional Extensions                                       *zip-extension*
index 7f793b2278252c06ce23bd4891a8bb5b2f4bdb05..a3e114973805e6b896b5a1e12eb43e4fa9c3b852 100644 (file)
@@ -1,4 +1,4 @@
-*quickref.txt*  For Vim version 7.3.  Last change: 2010 Jul 24
+*quickref.txt*  For Vim version 7.3.  Last change: 2010 Sep 14
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1091,11 +1091,11 @@ Context-sensitive completion on the command-line:
 |:_#|      #[num]      alternate file name [num] (only where a file name is
                           expected)
        Note: The next seven are typed literally; these are not special keys!
-|:<afile>|  <abuf>     buffer number, for use in an autocommand (only where a
+|:<abuf>|   <abuf>     buffer number, for use in an autocommand (only where a
                           file name is expected)
-|:<afile>|  <afile>    file name, for user in an autocommand (only where a
+|:<afile>|  <afile>    file name, for use in an autocommand (only where a
                           file name is expected)
-|:<afile>|  <amatch>   what matched with the pattern, for use in an
+|:<amatch>| <amatch>   what matched with the pattern, for use in an
                           autocommand (only where a file name is expected)
 |:<cword>|  <cword>    word under the cursor (only where a file name is
                           expected)
@@ -1377,7 +1377,7 @@ Context-sensitive completion on the command-line:
                set foldmethod=indent   folding by indent
                set foldmethod=expr     folding by 'foldexpr'
                set foldmethod=syntax   folding by syntax regions
-               set foldmethod=marker   folding by 'foldmarkers'
+               set foldmethod=marker   folding by 'foldmarker'
 
 |zf|           zf{motion}              operator: Define a fold manually
 |:fold|                :{range}fold            define a fold for {range} lines
index 0632e8cdd9352566828eeb35371fdafd79833e9b..ba9083c2cec45e6df01a7af67d55741983c96d10 100644 (file)
@@ -1,4 +1,4 @@
-*starting.txt*  For Vim version 7.3.  Last change: 2009 Dec 31
+*starting.txt*  For Vim version 7.3.  Last change: 2010 Sep 18
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -95,14 +95,14 @@ exim        vim -E      Start in improved Ex mode (see |Ex-mode|).      *exim*
                        (normally not installed)
 view   vim -R      Start in read-only mode (see |-R|).             *view*
 gvim   vim -g      Start the GUI (see |gui|).                      *gvim*
-gex    vim -eg     Start the GUI in Ex mode.                       *gex*
-gview  vim -Rg     Start the GUI in read-only mode.                *gview*
+gex    vim -eg     Start the GUI in Ex mode.                     *gex*
+gview  vim -Rg     Start the GUI in read-only mode.              *gview*
 rvim   vim -Z      Like "vim", but in restricted mode (see |-Z|)   *rvim*
-rview  vim -RZ     Like "view", but in restricted mode.            *rview*
-rgvim  vim -gZ     Like "gvim", but in restricted mode.            *rgvim*
-rgview vim -RgZ    Like "gview", but in restricted mode.           *rgview*
+rview  vim -RZ     Like "view", but in restricted mode.          *rview*
+rgvim  vim -gZ     Like "gvim", but in restricted mode.          *rgvim*
+rgview vim -RgZ    Like "gview", but in restricted mode.         *rgview*
 evim    vim -y      Easy Vim: set 'insertmode' (see |-y|)          *evim*
-eview   vim -yR     Like "evim" in read-only mode                  *eview*
+eview   vim -yR     Like "evim" in read-only mode                *eview*
 vimdiff vim -d     Start in diff mode |diff-mode|
 gvimdiff vim -gd    Start in diff mode |diff-mode|
 
@@ -244,7 +244,7 @@ a slash.  Thus "-R" means recovery and "-/R" readonly.
 -Z             Restricted mode.  All commands that make use of an external
                shell are disabled.  This includes suspending with CTRL-Z,
                ":sh", filtering, the system() function, backtick expansion,
-               etc.
+               delete(), rename(), mkdir(), writefile(), libcall(), etc.
                {not in Vi}
 
                                                        *-g*
@@ -869,6 +869,7 @@ accordingly.  Vim proceeds in this order:
 12. Execute startup commands
        If a "-t" flag was given to Vim, the tag is jumped to.
        The commands given with the |-c| and |+cmd| arguments are executed.
+       The starting flag is reset, has("vim_starting") will now return zero.
        If the 'insertmode' option is set, Insert mode is entered.
        The |VimEnter| autocommands are executed.
 
index 267ec5bd27992861db090c6240f2f6f664b01183..171933bc649adf0955600aaa21ddcc499babff8a 100644 (file)
@@ -1,4 +1,4 @@
-*syntax.txt*   For Vim version 7.3.  Last change: 2010 Aug 10
+*syntax.txt*   For Vim version 7.3.  Last change: 2010 Sep 14
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -3953,7 +3953,7 @@ To show the syntax items for one syntax group: >
 
     :sy[ntax] list {group-name}
 
-To list the syntax groups in one cluster:                      *E392*  >
+To list the syntax groups in one cluster:                      *E392*   >
 
     :sy[ntax] list @{cluster-name}
 
@@ -4612,7 +4612,7 @@ is loaded into that window or the file is reloaded.
 When splitting the window, the new window will use the original syntax.
 
 ==============================================================================
-16. Color xterms                               *xterm-color* *color-xterm*
+17. Color xterms                               *xterm-color* *color-xterm*
 
 Most color xterms have only eight colors.  If you don't get colors with the
 default setup, it should work with these lines in your .vimrc: >
index b2ab959adf12c99e3fc9cce36bfa8488af9b4011..7c8244b4993a090d300f600888d6f04eb36f22c0 100644 (file)
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 7.3.  Last change: 2010 Aug 15
+*todo.txt*      For Vim version 7.3.  Last change: 2010 Sep 19
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -30,23 +30,97 @@ be worked on, but only if you sponsor Vim development.  See |sponsor|.
                                                        *known-bugs*
 -------------------- Known bugs and current work -----------------------
 
-":find e" completion, editing a file in the Vim source directory, 'path' set
-to "./proto", does not shorten ./proto/eval.pro, probably because of
-./proto/ex_eval.pro.
+"buffer" in if_python.c, ex_pyfile() shadows global var buffer in if_py_both.h
+
+Crash on Windows when using strftime(). (Christian Brabandt, 2010 Aug 18)
+Appears to be triggered by '%R' and '%T'.
+Use the bad_param_handler() (Mike Williams, 2010 Aug 19, 20)
+
+Patch: missing break in Mac GUI. (Dominique Pelle, 2010 Aug 19)
+
+":e ~br<Tab>" does not complete to ":e /home/bram/".  Crash too?
+
+Patch for Mingw build file (Jon, 2010 Aug 22)
+Patch for loading different Ruby versions. (Jon, 2010 Aug 23)
+
+Patch for clipboard not working properly: (Toni Ronkko)
+http://softagalleria.net/download/vim/clipboard.patch
+Clipboard not working with Athena. (Micael Ringe, 2010 Sep 13)
+
+Document cscope and sign completion for user commands. (Peter Odding, 2010 Aug
+19)
 
 Problem with \NL in Ex script. (Ray Frish, 2010 Aug 10)
 
+Runtime file for Falcon. (Steven Oliver, 2010 Sep 14)
+
+Patch to fix error tags in help files. (Dominique Pelle, 2010 Aug 25)
+
+Patch to fix :nbstart silently failing. (Xavier de Gaye, 2010 Aug 20)
+Another one for when Athena has netbeans support.
+
+patch for 3 bugs reported by smatch. (Dominique Pelle, 2010 Aug 23)
+
+'cursorline' is displayed too short when there are concealed characters and
+'list' is set, 'listchars' at default value. (Dennis Preiser, 2010 Aug 15)
+
+Hang on slave PTY on Mac.  Patch from Nikola Knezevic, 2010 Aug 29.
+
+Patch to support netbeans under Athena. (Xavier de Gaye, 2010 Aug 20)
+
+Patch to fix sign type negative and memory not freed. (Xavier de Gaye, 2010
+Aug 20)
+
+Conceal: using Tab for cchar causes problems.  Should reject it. (ZyX, 2010
+Aug 25)
+
+Syntax region with 'concealends' and a 'cchar' value, 'conceallevel' set to 2,
+only one of the two ends gets the cchar displayed. (Brett Stahlman, 2010 Aug
+21, Ben Fritz, 2010 Sep 14)
+
+Patch for :mksession not escaping file name properly. (Peter Odding, 2010 Sep
+19)
+
+Patch for :grep docs. (Britton Kerin, 2010 Aug 31)
+
+Windows keys not set properly on Windows 7?  (cncyber, 2010 Aug 26)
+
+maparg() doesn't return the flags, such as <buffer>, <script>, <silent>.
+These are needed to save and restore a mapping.
+Also: the rhs string is not always correct. (Hari Krishna Dara, 2009 Sept 29)
+Patch by Christian Brabandt, 2010 Sep 17.
+
+Building the MingW version without clipboard but with multi-byte doesn't
+build. (Bill Lam, 2010 Sep 18)
+
 Bug: E685 error for func_unref(). (ZyX, 2010 Aug 5)
 
+Patch to fix warning for accessing mediumVersion. (Dominique Pelle, 2010 Aug
+18)
+
+Patch for 2html to support 'fileencoding'. (Benjamin Fritz, 2010 Sep 10)
+
 CTRL-] on help tag |/[\n]| doesn't jump to the right place. (Tony Mechelynck,
 2010 Aug 8)
 
+Three patches for undo persistence. (Christian Brabandt, 2010 Sep 4)
+
+string() can't parse back "inf" and "nan".  Fix documentation or fix code?
+(XyX, 2010 Aug 23)
+
 ":command Print echo 'print'" works, but ":Print" doesn't.  Builtin Print
 should be overruled. (Aaron Thoma)
+Patch by Christian Brabandt, 2010 Sep 5.
+
+Comparing recursive structure loops forever. (ZyX, 2010 Aug 22, info from John
+Beckett Aug 23)
 
 GTK: drawing a double-width combining character over single-width characters
 doesn't look right. (Dominique Pelle, 2010 Aug 8)
 
+copy/paste between Vim and Google chrome doesn't work well for multi-byte
+characters. (Ben Haskell, 2010 Sep 17)
+
 Editing a file with a ^M with 'ff' set to "mac", opening a help file, then the
 ^M is displayed as ^J sometimes.  Getting 'ff' value from wrong window/buffer?
 
@@ -55,15 +129,33 @@ Results in E670. (Tony Mechelynck, 2010 May 2)
 
 setpos() does not restore cursor position after :normal. (Tyru, 2010 Aug 11)
 
+getpos()/setpos() don't include curswant.  getpos() could return a fifth
+element.  setpos() could accept an optional fifth element.
+Patch by Christian Brabandt, 2010 Sep 6.  Check that new argument is optional
+and that it's documented.
+
+Messages in message.txt are highlighted as examples.
+
+Win32: Patch to fix slow access over network (David Anderson).  Cleaned up by
+John Beckett, 2010 Aug 25.
+
 Test 73 fails on MS-Windows when compiled with DJGPP and run twice.  How to
 delete the Xfind directory?  Add an rmdir() function, just like we have
 mkdir().
 
 'cindent' not correct when 'list' is set. (Zdravi Korusef, 2010 Apr 15)
 
+Windows installer: licence text should not use indent, causes bad word wrap.
+(Benjamin Fritz, 2010 Aug 16)
+
+Mac with X11: clipboard doesn't work properly. (Raf, 2010 Aug 16)
+
 ":helpgrep" does not put the cursor in the correct column when preceded by
 accented character. (Tony Mechelynck, 2010 Apr 15)
 
+Don't call check_restricted() for histadd(), setbufvar(), settabvar(),
+setwinvar().
+
 Echo starts in the wrong column:
     while 1 | let s = input('A') | echo 'R' | endw
 (Boyko Bantchev, 2010 Aug 9)
@@ -75,6 +167,9 @@ Patch to make more characters work in dialogs. (Yankwei Jia, 2010 Aug 4)
 
 ":drop" does not respect 'autochdir'. (Peter Odding, 2010 Jul 24)
 
+When 'lines' is 25 and 'scrolloff' is 12, "j" scrolls zero or two lines
+instead of one. (Constantin Pan, 2010 Sep 10)
+
 Problem with cursor in the wrong column. (SungHyun Nam, 2010 Mar 11)
 Additional info by Dominique Pelle. (also on 2010 Apr 10)
 
@@ -162,6 +257,12 @@ line argument -noregister.
 When a mapping exists both for insert mode and lang-insert mode, the last one
 doesn't work. (Tyru, 2010 May 6)  Or is this intended?
 
+Cursor position wrong when 'formatoptions' contains "a". (Moshe Kamensky, 2010
+Sep 7, Gary Johnson, 2010 Sep 14)
+Formatoptions cause cursor to jump. (ZyX, 2010 Aug 22)
+Caused by revision 2294, "Make joining a range of lines much faster. (Milan
+Vancura)" ?
+
 Still a problem with ":make" in the wrong directory.  Caused by ":bufdo".
 (Ajit Thakkar, 2009 Jul 1) More information Jul 9, Jul 15.
 Caused by "doautoall syntaxset BufEnter *" in syntax/nosyntax.vim ?
@@ -178,8 +279,13 @@ Probably needs a bit of work.
 List of encoding aliases. (Takao Fujiware, 2009 Jul 18)
 Are they all OK?  Update Jul 22.
 
+Win32: Improved Makefile for MSVC. (Leonardo Valeri Manera, 2010 Aug 18)
+
 Win32: Expanding 'path' runs into a maximum size limit. (bgold12, 2009 Nov 15)
 
+Win32: Patch for enabling quick edit mode in console. (Craig Barkhouse, 2010
+Sep 1)
+
 Putting a Visual block while 'visualedit' is "all" does not leave the cursor
 on the first character. (John Beckett, 2010 Aug 7)
 
@@ -288,10 +394,6 @@ 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)
 
-maparg() doesn't return the flags, such as <buffer>, <script>, <silent>.
-These are needed to save and restore a mapping.
-Also: the rhs string is not always correct. (Hari Krishna Dara, 2009 Sept 29)
-
 Using ~ works OK on 'a' with composing char, but not on 0x0418  with composing
 char 0x0301. (Tony Mechelynck, 2009 Mar 4)
 
@@ -424,6 +526,15 @@ argument is processed for <f-args>. (Ivan Tishchenko, 2008 Aug 19)
 Win32: associating a type with Vim doesn't take care of space after a
 backslash? (Robert Vibrant, 2008 Jun 5)
 
+Win32: bold font doesn't work when 'guifontwide' has been set. (Yue Wu, 2010
+Aug 23)
+
+When 'rightleft' is set, cursorcolumn isn't highlighted after the end of a
+line.  It's also wrong in folds. (Dominique Pelle, 2010 Aug 21)
+
+Using an insert mode expression mapping, cursor is not in the expected
+position. (ZyX, 2010 Aug 29)
+
 After using <Tab> for command line completion after ":ta blah" and getting E33
 (no tags file), further editing the command to e.g., ":echo 'blah'", the
 command is not executed.  Fix by Ian Kelling?
@@ -513,6 +624,12 @@ When 'smartcase' is set and using CTRL-L to add to the search pattern it may
 result in no matches.  Convert chars to lower case? (Erik Wognsen, 2009 Apr
 16)
 
+Searching for composing char works, but not when inside []. (ZyX, Benjamin R.
+Haskell, 2010 Aug 24)
+
+Fail to edit file after failed register access.  Error flag remains set?
+(Lech Lorens, 2010 Aug 30)
+
 Patch for redo register. (Ben Schmidt, 2007 Oct 19)
 Await response to question to make the register writable.
 
@@ -560,6 +677,7 @@ C syntax: {} inside () causes following {} to be highlighted as error.
 
 Can't easily close the help window, like ":pc" closes the preview window and
 ":ccl" closes the quickfix window.  Add ":hclose". (Chris Gaal)
+Patch for :helpclose, Christian Brabandt, 2010 Sep 6.
 
 When 'diffopt' has "context:0" a single deleted line causes two folds to merge
 and mess up syncing. (Austin Jennings, 2008 Jan 31)
@@ -589,6 +707,9 @@ Asked about latest version: 0.77.1 is on www.vim.org.
 
 More AmigaOS4 patches. (Peter Bengtsson, Nov 9)
 
+Amiga patches with vbcc. (Adrien Destugues, 2010 Aug 30)
+http://pulkomandy.ath.cx/drop/vim73_vbcc_amiga.diff
+
 Insert mode completion: When editing the text and pressing CTRL-N again goes
 back to originally completed text, edited text is gone. (Peng Yu, 2008 Jul 24)
 Suggestion by Ben Schmidt, 2008 Aug 6.
@@ -718,9 +839,6 @@ Win32: When there is 4 Gbyte of memory mch_avail_mem() doesn't work properly.
 Unfinished patch by Jelle Geerts, 2008 Aug 24.
 Let mch_avail_mem() return Kbyte instead?
 
-Win32: With two monitors, gvim partly on both, and adding/removing a scrollbar
-Vim resizes and moves to one of the monitors. (Chris Monkiewicz, 2008 Oct)
-
 Win32: When 'shell' is bash shellescape() doesn't always do the right thing.
 Depends on 'shellslash', 'shellquote' and 'shellxquote', but shellescape()
 only takes 'shellslash' into account.
@@ -802,9 +920,6 @@ VMS: VFC files are in some cases truncated during reading (Zoltan Arpadffy)
 input() completion should not insert a backslash to escape a space in a file
 name?
 
-getpos()/setpos() don't include curswant.  getpos() could return a fifth
-element.  setpos() could accept an optional fifth element.
-
 Ruby completion is insecure.  Can this be fixed?
 
 When 'backupskip' is set from $TEMP special characters need to be escaped.
@@ -993,9 +1108,6 @@ resulting in highlighted "{" in that window, not in the other.
 In mswin.vim: Instead of mapping <C-V> for Insert mode in a complicated way,
 can it be done like ":imap <C-V> <MiddleMouse>" without negative side effects?
 
-Win32: When the GUI tab pages line is displayed Vim jumps from the secondary
-to the primary monitor. (Afton Lewis, 2007 Mar 9)  Old resizing problem?
-
 GTK: when the Tab pages bar appears or disappears while the window is
 maximized the window is no longer maximized.  Patch that has some idea but
 doesn't work from Geoffrey Antos, 2008 May 5.
@@ -1319,9 +1431,18 @@ Win32 GUI known bugs:
     the wide functions.
 8   On Windows 98 the unicows library is needed to support functions with UCS2
     file names.  Can we load unicows.dll dynamically?
+8   Win32: With two monitors, gvim partly on both, and adding/removing a
+    scrollbar Vim resizes and moves to one of the monitors. (Chris Monkiewicz,
+    2008 Oct)
 8   When the primary monitor is below or right of the secondary monitor and
     Vim is on the secondary monitor it will often move to the primary monitor.
     Window position coordinates can be negative. (James Harvey)
+    When the primary monitor is on the right, coordinates on the left monitor
+    are negative.  Clamping to zero means gvim jups to the primary monitor.
+    (Michael Wookey, 2010 Aug 17)
+    Probably the same issue: When the GUI tab pages line is displayed Vim
+    jumps from the secondary to the primary monitor. (Afton Lewis, 2007 Mar 9)
+    Possible solution using GetSystemMetrics() (Sergey Khorev, 2010 Aug 18)
 8   The -P argument doesn't work very well with many MDI applications.
     The last argument of CreateWindowEx() should be used, see MSDN docs.
     Tutorial: http://win32assembly.online.fr/tut32.html
index 3c47db7f362467fb88dd8b280a6cbfc6545f1297..afa959b1a46208784a2de3536f4e1c00801ead3d 100644 (file)
@@ -1,4 +1,4 @@
-*undo.txt*      For Vim version 7.3.  Last change: 2010 Jul 20
+*undo.txt*      For Vim version 7.3.  Last change: 2010 Sep 14
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -125,9 +125,9 @@ This is explained in the user manual: |usr_32.txt|.
 
                                                        *:undol* *:undolist*
 :undol[ist]            List the leafs in the tree of changes.  Example:
-                               number changes   time ~
+                               number changes   time      saved ~
                                4      10        10:34:11
-                               18     4         11:01:46
+                               18     4         11:01:46  7
 
                        The "number" column is the change number.  This number
                        continuously increases and can be used to identify a
@@ -135,6 +135,9 @@ This is explained in the user manual: |usr_32.txt|.
                        The "changes" column is the number of changes to this
                        leaf from the root of the tree.
                        The "time" column is the time this change was made.
+                       The "saved" column specifies, if this change was
+                       written to disk and which file write it was. This can
+                       be used with the |later| and |earlier| commands.
                        For more details use the |undotree()| function.
 
                                                        *g-*
@@ -148,7 +151,7 @@ g-                  Go to older text state.  With a count repeat that many
 :earlier {N}d          Go to older text state about {N} days before.
 
 :earlier {N}f          Go to older text state {N} file writes before.
-                       When changes were made since the laste write
+                       When changes were made since the last write
                        ":earlier 1f" will revert the text to the state when
                        it was written.  Otherwise it will go to the write
                        before that.
@@ -324,8 +327,8 @@ Writing an undo file may fail for these reasons:
        A file exists with the name of the undo file to be written, but it
        does not start with the right magic number.  You may want to delete
        this file or rename it.
-"Skipping undo file write, noting to undo"
-       There is no undo information not be written, nothing has been changed
+"Skipping undo file write, nothing to undo"
+       There is no undo information to be written, nothing has been changed
        or 'undolevels' is negative.
 *E829* An error occurred while writing the undo file.  You may want to try
        again.
index d3b15526abfaa8972b0ce611b1cb40ceb5a4d426..6569b2577009fddce09bd6528588c13b7b604c82 100644 (file)
@@ -1,4 +1,4 @@
-*various.txt*   For Vim version 7.3.  Last change: 2010 Aug 10
+*various.txt*   For Vim version 7.3.  Last change: 2010 Sep 14
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -610,7 +610,7 @@ g CTRL-A            Only when Vim was compiled with MEM_PROFILING defined
                        Only useful for debugging Vim.
 
 ==============================================================================
-3. Using Vim like less or more                                 *less*
+2. Using Vim like less or more                                 *less*
 
 If you use the less or more program to view a file, you don't get syntax
 highlighting.  Thus you would like to use Vim instead.  You can do this by
index 964936e60642c72900308024ab3b94356b43f8f2..e43487cd1ab6e7a002dabf698924538b4b0d5450 100644 (file)
@@ -1,16 +1,19 @@
-" Vim syntax file for the D programming language (version 1.053 and 2.039).
+" Vim syntax file for the D programming language (version 1.053 and 2.047).
 "
-" Language:    D
-" Maintainer:  Jason Mills<jasonmills@nf.sympatico.ca>
-" Last Change: 2010 Jan 07
-" Version:     0.18
+" Language:     D
+" Maintainer:   Jesse Phillips <Jesse.K.Phillips+D@gmail.com>
+" Last Change:  2010 Sep 9
+" Version:      0.21
 "
 " Contributors:
+"   - Jason Mills <jasonmills@nf.sympatico.ca>: original Maintainer
 "   - Kirk McDonald: version 0.17 updates, with minor modifications
 "     (http://paste.dprogramming.com/dplmb7qx?view=hidelines)
-"   - Jesse K. Phillips: patch for some keywords and attributes (annotations), with modifications
 "   - Tim Keating: patch to fix a bug in highlighting the `\` literal
 "   - Frank Benoit: Fixed a bug that caused some identifiers and numbers to highlight as octal number errors.
+"   - Shougo Matsushita <Shougo.Matsu@gmail.com>: updates for latest 2.047 highlighting
+"   - Ellery Newcomer: Fixed some highlighting bugs.
+"   - Steven N. Oliver: #! highlighting
 "
 " Please email me with bugs, comments, and suggestions.
 "
@@ -47,52 +50,89 @@ endif
 
 " Keyword definitions
 "
-syn keyword dExternal          import package module extern
-syn keyword dConditional       if else switch
-syn keyword dBranch            goto break continue
-syn keyword dRepeat            while for do foreach foreach_reverse
-syn keyword dBoolean           true false
-syn keyword dConstant          null
-syn keyword dConstant          __FILE__ __LINE__ __EOF__ __VERSION__
-syn keyword dConstant          __DATE__ __TIME__ __TIMESTAMP__ __VENDOR__
-
-syn keyword dTypedef           alias typedef
-syn keyword dStructure         template interface class struct union
-syn keyword dEnum              enum
-syn keyword dOperator          new delete typeof typeid cast align is
-syn keyword dOperator          this super
+syn keyword dExternal              import package module extern
+syn keyword dConditional           if else switch
+syn keyword dBranch                goto break continue
+syn keyword dRepeat                while for do foreach foreach_reverse
+syn keyword dBoolean               true false
+syn keyword dConstant              null
+syn keyword dConstant              __FILE__ __LINE__ __EOF__ __VERSION__
+syn keyword dConstant              __DATE__ __TIME__ __TIMESTAMP__ __VENDOR__
+syn keyword dTypedef               alias typedef
+syn keyword dStructure             template interface class struct union
+syn keyword dEnum                  enum
+syn keyword dOperator              new delete typeof typeid cast align is
+syn keyword dOperator              this super
 if exists("d_hl_operator_overload")
-  syn keyword dOpOverload      opNeg opCom opPostInc opPostDec opCast opAdd opSub opSub_r
-  syn keyword dOpOverload      opMul opDiv opDiv_r opMod opMod_r opAnd opOr opXor
-  syn keyword dOpOverload      opShl opShl_r opShr opShr_r opUShr opUShr_r opCat
-  syn keyword dOpOverload      opCat_r opEquals opEquals opCmp
-  syn keyword dOpOverload      opAssign opAddAssign opSubAssign opMulAssign opDivAssign
-  syn keyword dOpOverload      opModAssign opAndAssign opOrAssign opXorAssign
-  syn keyword dOpOverload      opShlAssign opShrAssign opUShrAssign opCatAssign
-  syn keyword dOpOverload      opIndex opIndexAssign opCall opSlice opSliceAssign opPos
-  syn keyword dOpOverload      opAdd_r opMul_r opAnd_r opOr_r opXor_r opIn opIn_r
-  syn keyword dOpOverload      opPow opDispatch opStar opDot opApply opApplyReverse
+  syn keyword dOpOverload          opNeg opCom opPostInc opPostDec opCast opAdd
+  syn keyword dOpOverload          opSub opSub_r opMul opDiv opDiv_r opMod 
+  syn keyword dOpOverload          opMod_r opAnd opOr opXor opShl opShl_r opShr
+  syn keyword dOpOverload          opShr_r opUShr opUShr_r opCat
+  syn keyword dOpOverload          opCat_r opEquals opEquals opCmp
+  syn keyword dOpOverload          opAssign opAddAssign opSubAssign opMulAssign
+  syn keyword dOpOverload          opDivAssign opModAssign opAndAssign 
+  syn keyword dOpOverload          opOrAssign opXorAssign opShlAssign 
+  syn keyword dOpOverload          opShrAssign opUShrAssign opCatAssign
+  syn keyword dOpOverload          opIndex opIndexAssign opIndexOpAssign
+  syn keyword dOpOverload          opCall opSlice opSliceAssign opSliceOpAssign 
+  syn keyword dOpOverload          opPos opAdd_r opMul_r opAnd_r opOr_r opXor_r
+  syn keyword dOpOverload          opIn opIn_r opPow opDispatch opStar opDot 
+  syn keyword dOpOverload          opApply opApplyReverse
+  syn keyword dOpOverload          opUnary opIndexUnary opSliceUnary
+  syn keyword dOpOverload          opBinary opBinaryRight
 endif
-syn keyword dType              ushort int uint long ulong float
-syn keyword dType              void byte ubyte double bit char wchar ucent cent
-syn keyword dType              short bool dchar string wstring dstring
-syn keyword dType              real ireal ifloat idouble creal cfloat cdouble
-syn keyword dDebug             deprecated unittest
-syn keyword dExceptions                throw try catch finally
-syn keyword dScopeDecl         public protected private export
-syn keyword dStatement         version debug return with
-syn keyword dStatement         function delegate __traits asm mixin macro
-syn keyword dStorageClass      in out inout ref lazy scope body
-syn keyword dStorageClass      pure nothrow
-syn keyword dStorageClass      auto static override final abstract volatile __gshared __thread
-syn keyword dStorageClass      synchronized immutable shared const invariant lazy
-syn keyword dPragma            pragma
+
+syn keyword dType                  void ushort int uint long ulong float
+syn keyword dType                  byte ubyte double bit char wchar ucent cent
+syn keyword dType                  short bool dchar wstring dstring
+syn keyword dType                  real ireal ifloat idouble
+syn keyword dType                  creal cfloat cdouble
+syn keyword dDebug                 deprecated unittest invariant
+syn keyword dExceptions            throw try catch finally
+syn keyword dScopeDecl             public protected private export
+syn keyword dStatement             debug return with
+syn keyword dStatement             function delegate __traits mixin macro
+syn keyword dStorageClass          in out inout ref lazy body
+syn keyword dStorageClass          pure nothrow
+syn keyword dStorageClass          auto static override final abstract volatile
+syn keyword dStorageClass          __gshared __thread
+syn keyword dStorageClass          synchronized shared immutable const lazy
+syn keyword dPragma                pragma
+syn keyword dIdentifier            _arguments _argptr __vptr __monitor _ctor _dtor
+syn keyword dScopeIdentifier       contained exit success failure
+syn keyword dAttribute             contained safe trusted system
+syn keyword dAttribute             contained property disable
+syn keyword dVersionIdentifier     contained DigitalMars GNU LDC LLVM
+syn keyword dVersionIdentifier     contained X86 X86_64 Windows Win32 Win64 
+syn keyword dVersionIdentifier     contained linux Posix OSX FreeBSD
+syn keyword dVersionIdentifier     contained LittleEndian BigEndian D_Coverage
+syn keyword dVersionIdentifier     contained D_Ddoc D_InlineAsm_X86
+syn keyword dVersionIdentifier     contained D_InlineAsm_X86_64 D_LP64 D_PIC
+syn keyword dVersionIdentifier     contained unittest D_Version2 none all
+
+" Highlight the sharpbang
+syn match dSharpBang "\%^#!.*"     display
 
 " Attributes/annotations
-syn match dAnnotation  "@[_$a-zA-Z][_$a-zA-Z0-9_]*\>"
+syn match dAnnotation  "@[_$a-zA-Z][_$a-zA-Z0-9_]*\>" contains=dAttribute
+
+" Version Identifiers
+syn match dVersion     "version\s*([_a-zA-Z][_a-zA-Z0-9]*\>"he=s+7 contains=dVersionIdentifier
+syn match dVersion     "[^.]\s*\<version\>"
+syn match dVersion     "^\<version\>"
+
+" Scope StorageClass
+syn match dStorageClass   "scope"
+
+" Scope Identifiers
+syn match dScope       "scope\s*([_a-zA-Z][_a-zA-Z0-9]*\>"he=s+5 contains=dScopeIdentifier
+
+" String is a statement and a module name.
+syn match dType "^string"
+syn match dType "[^.]\s*\<string\>"ms=s+1
 
 " Assert is a statement and a module name.
-syn match dAssert "^assert\>"
+syn match dAssert "^assert"
 syn match dAssert "[^.]\s*\<assert\>"ms=s+1
 
 " dTokens is used by the token string highlighting
@@ -101,26 +141,18 @@ syn cluster dTokens add=dConstant,dTypedef,dStructure,dOperator,dOpOverload
 syn cluster dTokens add=dType,dDebug,dExceptions,dScopeDecl,dStatement
 syn cluster dTokens add=dStorageClass,dPragma,dAssert,dAnnotation
 
-" Marks contents of the asm statment body as special
-"
-" TODO
-"syn match dAsmStatement "\<asm\>"
-"syn region dAsmBody start="asm[\n]*\s*{"hs=e+1 end="}"he=e-1 contains=dAsmStatement
-"
-"hi def link dAsmBody dUnicode
-"hi def link dAsmStatement dStatement
 
 " Labels
 "
 " We contain dScopeDecl so public: private: etc. are not highlighted like labels
 syn match dUserLabel    "^\s*[_$a-zA-Z][_$a-zA-Z0-9_]*\s*:"he=e-1 contains=dLabel,dScopeDecl,dEnum
-syn keyword dLabel     case default
+syn keyword dLabel      case default
 
 syn cluster dTokens add=dUserLabel,dLabel
 
 " Comments
 "
-syn keyword dTodo      contained TODO FIXME TEMP REFACTOR REVIEW HACK BUG XXX
+syn keyword dTodo                                                                contained TODO FIXME TEMP REFACTOR REVIEW HACK BUG XXX
 syn match dCommentStar contained "^\s*\*[^/]"me=e-1
 syn match dCommentStar contained "^\s*\*$"
 syn match dCommentPlus contained "^\s*+[^/]"me=e-1
@@ -251,51 +283,184 @@ syn region  dPragma start="#\s*\(line\>\)" skip="\\$" end="$"
 
 " The default highlighting.
 "
-hi def link dBinary            Number
-hi def link dDec               Number
-hi def link dHex               Number
-hi def link dOctal             Number
-hi def link dFloat             Float
-hi def link dHexFloat          Float
-hi def link dDebug             Debug
-hi def link dBranch            Conditional
-hi def link dConditional       Conditional
-hi def link dLabel             Label
-hi def link dUserLabel         Label
-hi def link dRepeat            Repeat
-hi def link dExceptions                Exception
-hi def link dAssert            Statement
-hi def link dStatement         Statement
-hi def link dScopeDecl         dStorageClass
-hi def link dStorageClass      StorageClass
-hi def link dBoolean           Boolean
-hi def link dUnicode           Special
-hi def link dTokenStringBrack  String
-hi def link dHereString                String
-hi def link dNestString                String
-hi def link dDelimString       String
-hi def link dRawString         String
-hi def link dString            String
-hi def link dHexString         String
-hi def link dCharacter         Character
-hi def link dEscSequence       SpecialChar
-hi def link dSpecialCharError  Error
-hi def link dOctalError                Error
-hi def link dOperator          Operator
-hi def link dOpOverload                Identifier
-hi def link dConstant          Constant
-hi def link dTypedef           Typedef
-hi def link dEnum              Structure
-hi def link dStructure         Structure
-hi def link dTodo              Todo
-hi def link dType              Type
-hi def link dLineComment       Comment
-hi def link dBlockComment      Comment
-hi def link dNestedComment     Comment
-hi def link dExternal          Include
-hi def link dPragma            PreProc
-hi def link dAnnotation                PreProc
+hi def link dBinary              Number
+hi def link dDec                 Number
+hi def link dHex                 Number
+hi def link dOctal               Number
+hi def link dFloat               Float
+hi def link dHexFloat            Float
+hi def link dDebug               Debug
+hi def link dBranch              Conditional
+hi def link dConditional         Conditional
+hi def link dLabel               Label
+hi def link dUserLabel           Label
+hi def link dRepeat              Repeat
+hi def link dExceptions          Exception
+hi def link dAssert              Statement
+hi def link dStatement           Statement
+hi def link dScopeDecl           dStorageClass
+hi def link dStorageClass        StorageClass
+hi def link dBoolean             Boolean
+hi def link dUnicode             Special
+hi def link dTokenStringBrack    String
+hi def link dHereString          String
+hi def link dNestString          String
+hi def link dDelimString         String
+hi def link dRawString           String
+hi def link dString              String
+hi def link dHexString           String
+hi def link dCharacter           Character
+hi def link dEscSequence         SpecialChar
+hi def link dSpecialCharError    Error
+hi def link dOctalError          Error
+hi def link dOperator            Operator
+hi def link dOpOverload          Identifier
+hi def link dConstant            Constant
+hi def link dTypedef             Typedef
+hi def link dEnum                Structure
+hi def link dStructure           Structure
+hi def link dTodo                Todo
+hi def link dType                Type
+hi def link dLineComment         Comment
+hi def link dBlockComment        Comment
+hi def link dNestedComment       Comment
+hi def link dExternal            Include
+hi def link dPragma              PreProc
+hi def link dAnnotation          PreProc
+hi def link dSharpBang           PreProc
+hi def link dAttribute           StorageClass
+hi def link dIdentifier          Identifier
+hi def link dVersionIdentifier   Identifier
+hi def link dVersion             dStatement
+hi def link dScopeIdentifier     dStatement
+hi def link dScope               dStorageClass
 
 let b:current_syntax = "d"
 
-" vim: ts=8 noet
+" Marks contents of the asm statment body as special
+
+syn match dAsmStatement "\<asm\>"
+syn region dAsmBody start="asm[\n]*\s*{"hs=e+1 end="}"he=e-1 contains=dAsmStatement,dAsmOpCode
+
+hi def link dAsmBody dUnicode
+hi def link dAsmStatement dStatement
+hi def link dAsmOpCode Identifier
+
+syn keyword dAsmOpCode contained       aaa     aad     aam     aas     adc
+syn keyword dAsmOpCode contained       add     addpd   addps   addsd   addss
+syn keyword dAsmOpCode contained       and     andnpd  andnps  andpd   andps
+syn keyword dAsmOpCode contained       arpl    bound   bsf     bsr     bswap
+syn keyword dAsmOpCode contained       bt      btc     btr     bts     call
+syn keyword dAsmOpCode contained       cbw     cdq     clc     cld     clflush
+syn keyword dAsmOpCode contained       cli     clts    cmc     cmova   cmovae
+syn keyword dAsmOpCode contained       cmovb   cmovbe  cmovc   cmove   cmovg
+syn keyword dAsmOpCode contained       cmovge  cmovl   cmovle  cmovna  cmovnae
+syn keyword dAsmOpCode contained       cmovnb  cmovnbe         cmovnc  cmovne  cmovng
+syn keyword dAsmOpCode contained       cmovnge         cmovnl  cmovnle         cmovno  cmovnp
+syn keyword dAsmOpCode contained       cmovns  cmovnz  cmovo   cmovp   cmovpe
+syn keyword dAsmOpCode contained       cmovpo  cmovs   cmovz   cmp     cmppd
+syn keyword dAsmOpCode contained       cmpps   cmps    cmpsb   cmpsd   cmpss
+syn keyword dAsmOpCode contained       cmpsw   cmpxch8b        cmpxchg         comisd  comiss
+syn keyword dAsmOpCode contained       cpuid   cvtdq2pd        cvtdq2ps        cvtpd2dq        cvtpd2pi
+syn keyword dAsmOpCode contained       cvtpd2ps        cvtpi2pd        cvtpi2ps        cvtps2dq        cvtps2pd
+syn keyword dAsmOpCode contained       cvtps2pi        cvtsd2si        cvtsd2ss        cvtsi2sd        cvtsi2ss
+syn keyword dAsmOpCode contained       cvtss2sd        cvtss2si        cvttpd2dq       cvttpd2pi       cvttps2dq
+syn keyword dAsmOpCode contained       cvttps2pi       cvttsd2si       cvttss2si       cwd     cwde
+syn keyword dAsmOpCode contained       da      daa     das     db      dd
+syn keyword dAsmOpCode contained       de      dec     df      di      div
+syn keyword dAsmOpCode contained       divpd   divps   divsd   divss   dl
+syn keyword dAsmOpCode contained       dq      ds      dt      dw      emms
+syn keyword dAsmOpCode contained       enter   f2xm1   fabs    fadd    faddp
+syn keyword dAsmOpCode contained       fbld    fbstp   fchs    fclex   fcmovb
+syn keyword dAsmOpCode contained       fcmovbe         fcmove  fcmovnb         fcmovnbe        fcmovne
+syn keyword dAsmOpCode contained       fcmovnu         fcmovu  fcom    fcomi   fcomip
+syn keyword dAsmOpCode contained       fcomp   fcompp  fcos    fdecstp         fdisi
+syn keyword dAsmOpCode contained       fdiv    fdivp   fdivr   fdivrp  feni
+syn keyword dAsmOpCode contained       ffree   fiadd   ficom   ficomp  fidiv
+syn keyword dAsmOpCode contained       fidivr  fild    fimul   fincstp         finit
+syn keyword dAsmOpCode contained       fist    fistp   fisub   fisubr  fld
+syn keyword dAsmOpCode contained       fld1    fldcw   fldenv  fldl2e  fldl2t
+syn keyword dAsmOpCode contained       fldlg2  fldln2  fldpi   fldz    fmul
+syn keyword dAsmOpCode contained       fmulp   fnclex  fndisi  fneni   fninit
+syn keyword dAsmOpCode contained       fnop    fnsave  fnstcw  fnstenv         fnstsw
+syn keyword dAsmOpCode contained       fpatan  fprem   fprem1  fptan   frndint
+syn keyword dAsmOpCode contained       frstor  fsave   fscale  fsetpm  fsin
+syn keyword dAsmOpCode contained       fsincos         fsqrt   fst     fstcw   fstenv
+syn keyword dAsmOpCode contained       fstp    fstsw   fsub    fsubp   fsubr
+syn keyword dAsmOpCode contained       fsubrp  ftst    fucom   fucomi  fucomip
+syn keyword dAsmOpCode contained       fucomp  fucompp         fwait   fxam    fxch
+syn keyword dAsmOpCode contained       fxrstor         fxsave  fxtract         fyl2x   fyl2xp1
+syn keyword dAsmOpCode contained       hlt     idiv    imul    in      inc
+syn keyword dAsmOpCode contained       ins     insb    insd    insw    int
+syn keyword dAsmOpCode contained       into    invd    invlpg  iret    iretd
+syn keyword dAsmOpCode contained       ja      jae     jb      jbe     jc
+syn keyword dAsmOpCode contained       jcxz    je      jecxz   jg      jge
+syn keyword dAsmOpCode contained       jl      jle     jmp     jna     jnae
+syn keyword dAsmOpCode contained       jnb     jnbe    jnc     jne     jng
+syn keyword dAsmOpCode contained       jnge    jnl     jnle    jno     jnp
+syn keyword dAsmOpCode contained       jns     jnz     jo      jp      jpe
+syn keyword dAsmOpCode contained       jpo     js      jz      lahf    lar
+syn keyword dAsmOpCode contained       ldmxcsr         lds     lea     leave   les
+syn keyword dAsmOpCode contained       lfence  lfs     lgdt    lgs     lidt
+syn keyword dAsmOpCode contained       lldt    lmsw    lock    lods    lodsb
+syn keyword dAsmOpCode contained       lodsd   lodsw   loop    loope   loopne
+syn keyword dAsmOpCode contained       loopnz  loopz   lsl     lss     ltr
+syn keyword dAsmOpCode contained       maskmovdqu      maskmovq        maxpd   maxps   maxsd
+syn keyword dAsmOpCode contained       maxss   mfence  minpd   minps   minsd
+syn keyword dAsmOpCode contained       minss   mov     movapd  movaps  movd
+syn keyword dAsmOpCode contained       movdq2q         movdqa  movdqu  movhlps         movhpd
+syn keyword dAsmOpCode contained       movhps  movlhps         movlpd  movlps  movmskpd
+syn keyword dAsmOpCode contained       movmskps        movntdq         movnti  movntpd         movntps
+syn keyword dAsmOpCode contained       movntq  movq    movq2dq         movs    movsb
+syn keyword dAsmOpCode contained       movsd   movss   movsw   movsx   movupd
+syn keyword dAsmOpCode contained       movups  movzx   mul     mulpd   mulps
+syn keyword dAsmOpCode contained       mulsd   mulss   neg     nop     not
+syn keyword dAsmOpCode contained       or      orpd    orps    out     outs
+syn keyword dAsmOpCode contained       outsb   outsd   outsw   packssdw        packsswb
+syn keyword dAsmOpCode contained       packuswb        paddb   paddd   paddq   paddsb
+syn keyword dAsmOpCode contained       paddsw  paddusb         paddusw         paddw   pand
+syn keyword dAsmOpCode contained       pandn   pavgb   pavgw   pcmpeqb         pcmpeqd
+syn keyword dAsmOpCode contained       pcmpeqw         pcmpgtb         pcmpgtd         pcmpgtw         pextrw
+syn keyword dAsmOpCode contained       pinsrw  pmaddwd         pmaxsw  pmaxub  pminsw
+syn keyword dAsmOpCode contained       pminub  pmovmskb        pmulhuw         pmulhw  pmullw
+syn keyword dAsmOpCode contained       pmuludq         pop     popa    popad   popf
+syn keyword dAsmOpCode contained       popfd   por     prefetchnta     prefetcht0      prefetcht1
+syn keyword dAsmOpCode contained       prefetcht2      psadbw  pshufd  pshufhw         pshuflw
+syn keyword dAsmOpCode contained       pshufw  pslld   pslldq  psllq   psllw
+syn keyword dAsmOpCode contained       psrad   psraw   psrld   psrldq  psrlq
+syn keyword dAsmOpCode contained       psrlw   psubb   psubd   psubq   psubsb
+syn keyword dAsmOpCode contained       psubsw  psubusb         psubusw         psubw   punpckhbw
+syn keyword dAsmOpCode contained       punpckhdq       punpckhqdq      punpckhwd       punpcklbw       punpckldq
+syn keyword dAsmOpCode contained       punpcklqdq      punpcklwd       push    pusha   pushad
+syn keyword dAsmOpCode contained       pushf   pushfd  pxor    rcl     rcpps
+syn keyword dAsmOpCode contained       rcpss   rcr     rdmsr   rdpmc   rdtsc
+syn keyword dAsmOpCode contained       rep     repe    repne   repnz   repz
+syn keyword dAsmOpCode contained       ret     retf    rol     ror     rsm
+syn keyword dAsmOpCode contained       rsqrtps         rsqrtss         sahf    sal     sar
+syn keyword dAsmOpCode contained       sbb     scas    scasb   scasd   scasw
+syn keyword dAsmOpCode contained       seta    setae   setb    setbe   setc
+syn keyword dAsmOpCode contained       sete    setg    setge   setl    setle
+syn keyword dAsmOpCode contained       setna   setnae  setnb   setnbe  setnc
+syn keyword dAsmOpCode contained       setne   setng   setnge  setnl   setnle
+syn keyword dAsmOpCode contained       setno   setnp   setns   setnz   seto
+syn keyword dAsmOpCode contained       setp    setpe   setpo   sets    setz
+syn keyword dAsmOpCode contained       sfence  sgdt    shl     shld    shr
+syn keyword dAsmOpCode contained       shrd    shufpd  shufps  sidt    sldt
+syn keyword dAsmOpCode contained       smsw    sqrtpd  sqrtps  sqrtsd  sqrtss
+syn keyword dAsmOpCode contained       stc     std     sti     stmxcsr         stos
+syn keyword dAsmOpCode contained       stosb   stosd   stosw   str     sub
+syn keyword dAsmOpCode contained       subpd   subps   subsd   subss   sysenter
+syn keyword dAsmOpCode contained       sysexit         test    ucomisd         ucomiss         ud2
+syn keyword dAsmOpCode contained       unpckhpd        unpckhps        unpcklpd        unpcklps        verr
+syn keyword dAsmOpCode contained       verw    wait    wbinvd  wrmsr   xadd
+syn keyword dAsmOpCode contained       xchg    xlat    xlatb   xor     xorpd
+syn keyword dAsmOpCode contained       xorps                           
+syn keyword dAsmOpCode contained       addsubpd        addsubps        fisttp  haddpd  haddps
+syn keyword dAsmOpCode contained       hsubpd  hsubps  lddqu   monitor         movddup
+syn keyword dAsmOpCode contained       movshdup        movsldup        mwait           
+syn keyword dAsmOpCode contained       pavgusb         pf2id   pfacc   pfadd   pfcmpeq
+syn keyword dAsmOpCode contained       pfcmpge         pfcmpgt         pfmax   pfmin   pfmul
+syn keyword dAsmOpCode contained       pfnacc  pfpnacc         pfrcp   pfrcpit1        pfrcpit2
+syn keyword dAsmOpCode contained       pfrsqit1        pfrsqrt         pfsub   pfsubr  pi2fd
+syn keyword dAsmOpCode contained       pmulhrw         pswapd
+
index 1ff4fffc745c64fe8d2a222eb4790444cbdf086d..ba8906dfc41378ee4cb535456dfdb5acd6abc322 100644 (file)
 " Vim syntax file
-" Language:         YAML (YAML Ain't Markup Language)
-" Maintainer:       Nikolai Weibull <now@bitwi.se>
-" Latest Revision:  2010-08-12
+" Language:         YAML (YAML Ain't Markup Language) 1.2
+" Maintainer:       Nikolai Pavlov <zyx.vim@gmail.com>
+" First author:     Nikolai Weibull <now@bitwi.se>
+" Latest Revision:  2010-09-16
 
-if exists("b:current_syntax")
-  finish
+if exists('b:current_syntax')
+    finish
 endif
 
 let s:cpo_save = &cpo
 set cpo&vim
 
+let s:ns_char = '\%(\%([\n\r\uFEFF \t]\)\@!\p\)'
+let s:ns_word_char = '\%(\w\|-\)'
+let s:ns_uri_char  = '\%(%\x\x\|'.s:ns_word_char.'\|[#/;?:@&=+$,.!~*''()\[\]]\)'
+let s:ns_tag_char  = '\%(%\x\x\|'.s:ns_word_char.'\|[#/;?:@&=+$.~*''()]\)'
+let s:c_ns_anchor_char = '\%(\%([\n\r\uFEFF \t,\[\]{}]\)\@!\p\)'
+let s:c_indicator      = '[\-?:,\[\]{}#&*!|>''"%@`]'
+let s:c_flow_indicator = '[,\[\]{}]'
+
+let s:c_verbatim_tag = '!<'.s:ns_uri_char.'\+>'
+let s:c_named_tag_handle     = '!'.s:ns_word_char.'\+!'
+let s:c_secondary_tag_handle = '!!'
+let s:c_primary_tag_handle   = '!'
+let s:c_tag_handle = '\%('.s:c_named_tag_handle.
+            \         '\|'.s:c_secondary_tag_handle.
+            \         '\|'.s:c_primary_tag_handle.'\)'
+let s:c_ns_shorthand_tag = s:c_tag_handle . s:ns_tag_char.'\+'
+let s:c_non_specific_tag = '!'
+let s:c_ns_tag_property = s:c_verbatim_tag.
+            \        '\|'.s:c_ns_shorthand_tag.
+            \        '\|'.s:c_non_specific_tag
+
+let s:c_ns_anchor_name = s:c_ns_anchor_char.'\+'
+let s:c_ns_anchor_property =  '&'.s:c_ns_anchor_name
+let s:c_ns_alias_node      = '\*'.s:c_ns_anchor_name
+
+let s:ns_directive_name = s:ns_char.'\+'
+
+let s:ns_local_tag_prefix  = '!'.s:ns_uri_char.'*'
+let s:ns_global_tag_prefix = s:ns_tag_char.s:ns_uri_char.'*'
+let s:ns_tag_prefix = s:ns_local_tag_prefix.
+            \    '\|'.s:ns_global_tag_prefix
+
+let s:ns_plain_safe_out = s:ns_char
+let s:ns_plain_safe_in  = '\%('.s:c_flow_indicator.'\@!'.s:ns_char.'\)'
+
+let s:ns_plain_first_in  = '\%('.s:c_indicator.'\@!'.s:ns_char.'\|[?:\-]\%('.s:ns_plain_safe_in.'\)\@=\)'
+let s:ns_plain_first_out = '\%('.s:c_indicator.'\@!'.s:ns_char.'\|[?:\-]\%('.s:ns_plain_safe_out.'\)\@=\)'
+
+let s:ns_plain_char_in  = '\%('.s:ns_char.'#\|:'.s:ns_plain_safe_in.'\|[:#]\@!'.s:ns_plain_safe_in.'\)'
+let s:ns_plain_char_out = '\%('.s:ns_char.'#\|:'.s:ns_plain_safe_out.'\|[:#]\@!'.s:ns_plain_safe_out.'\)'
+
+let s:ns_plain_out = s:ns_plain_first_out . s:ns_plain_char_out.'*'
+let s:ns_plain_in  = s:ns_plain_first_in  . s:ns_plain_char_in.'*'
+
+
 syn keyword yamlTodo            contained TODO FIXME XXX NOTE
 
-syn region  yamlComment         display oneline start='\%(^\|\s\)#' end='$'
-                                \ contains=yamlTodo,@Spell
-
-syn match   yamlNodeProperty    '!\%(![^\\^%     ]\+\|[^!][^:/   ]*\)'
-
-syn match   yamlAnchor          '&.\+'
-
-syn match   yamlAlias           '\*.\+'
-
-syn match   yamlDelimiter       '[-,:]'
-syn match   yamlBlock           '[\[\]{}>|]'
-syn match   yamlOperator        '[?+-]'
-syn match   yamlKey             '\w\+\(\s\+\w\+\)*\ze\s*:'
-
-syn region  yamlString          matchgroup=yamlStringDelimiter
-                                \ start=+"+ skip=+\\"+ end=+"+
-                                \ contains=yamlEscape
-syn region  yamlString          matchgroup=yamlStringDelimiter
-                                \ start=+'+ skip=+''+ end=+'+
-                                \ contains=yamlSingleEscape
-syn match   yamlEscape          contained display +\\[\\"abefnrtv^0_ NLP]+
-syn match   yamlEscape          contained display '\\x\x\{2}'
-syn match   yamlEscape          contained display '\\u\x\{4}'
-syn match   yamlEscape          contained display '\\U\x\{8}'
-" TODO: how do we get 0x85, 0x2028, and 0x2029 into this?
-syn match   yamlEscape          display '\\\%(\r\n\|[\r\n]\)'
-syn match   yamlSingleEscape    contained +''+
-
-" TODO: sexagecimal and fixed (20:30.15 and 1,230.15)
-syn match   yamlNumber          display
-                                \ '\<[+-]\=\d\+\%(\.\d\+\%([eE][+-]\=\d\+\)\=\)\='
-syn match   yamlNumber          display '0\o\+'
-syn match   yamlNumber          display '0x\x\+'
-syn match   yamlNumber          display '([+-]\=[iI]nf)'
-syn match   yamlNumber          display '(NaN)'
-
-syn match   yamlConstant        '\<[~yn]\>'
-syn keyword yamlConstant        true True TRUE false False FALSE
-syn keyword yamlConstant        yes Yes on ON no No off OFF
-syn keyword yamlConstant        null Null NULL nil Nil NIL
-
-syn match   yamlTimestamp       '\d\d\d\d-\%(1[0-2]\|\d\)-\%(3[0-2]\|2\d\|1\d\|\d\)\%( \%([01]\d\|2[0-3]\):[0-5]\d:[0-5]\d.\d\d [+-]\%([01]\d\|2[0-3]\):[0-5]\d\|t\%([01]\d\|2[0-3]\):[0-5]\d:[0-5]\d.\d\d[+-]\%([01]\d\|2[0-3]\):[0-5]\d\|T\%([01]\d\|2[0-3]\):[0-5]\d:[0-5]\d.\dZ\)\='
-
-syn region  yamlDocumentHeader  start='---' end='$' contains=yamlDirective
-syn match   yamlDocumentEnd     '\.\.\.'
-
-syn match   yamlDirective       contained '%[^:]\+:.\+'
-
-hi def link yamlTodo            Todo
-hi def link yamlComment         Comment
-hi def link yamlDocumentHeader  PreProc
-hi def link yamlDocumentEnd     PreProc
-hi def link yamlDirective       Keyword
-hi def link yamlNodeProperty    Type
-hi def link yamlAnchor          Type
-hi def link yamlAlias           Type
-hi def link yamlDelimiter       Delimiter
-hi def link yamlBlock           Operator
-hi def link yamlOperator        Operator
-hi def link yamlKey             Identifier
-hi def link yamlString          String
-hi def link yamlStringDelimiter yamlString
-hi def link yamlEscape          SpecialChar
-hi def link yamlSingleEscape    SpecialChar
-hi def link yamlNumber          Number
-hi def link yamlConstant        Constant
-hi def link yamlTimestamp       Number
+syn region  yamlComment         display oneline start='\%\(^\|\s\)#' end='$'
+            \                   contains=yamlTodo
+
+execute 'syn region yamlDirective oneline start='.string('^\ze%'.s:ns_directive_name.'\s\+').' '.
+            \                            'end="$" '.
+            \                            'contains=yamlTAGDirective,'.
+            \                                     'yamlYAMLDirective,'.
+            \                                     'yamlReservedDirective '.
+            \                            'keepend'
+
+syn match yamlTAGDirective '%TAG\s\+' contained nextgroup=yamlTagHandle
+execute 'syn match yamlTagHandle contained nextgroup=yamlTagPrefix '.string(s:c_tag_handle.'\s\+')
+execute 'syn match yamlTagPrefix contained nextgroup=yamlComment ' . string(s:ns_tag_prefix)
+
+syn match yamlYAMLDirective '%YAML\s\+'  contained nextgroup=yamlYAMLVersion
+syn match yamlYAMLVersion   '\d\+\.\d\+' contained nextgroup=yamlComment
+
+execute 'syn match yamlReservedDirective contained nextgroup=yamlComment '.
+            \string('%\%(\%(TAG\|YAML\)\s\)\@!'.s:ns_directive_name)
+
+syn region yamlFlowString matchgroup=yamlFlowStringDelimiter start='"' skip='\\"' end='"'
+            \ contains=yamlEscape
+            \ nextgroup=yamlKeyValueDelimiter
+syn region yamlFlowString matchgroup=yamlFlowStringDelimiter start="'" skip="''"  end="'"
+            \ contains=yamlSingleEscape
+            \ nextgroup=yamlKeyValueDelimiter
+syn match  yamlEscape contained '\\\%([\\"abefnrtv\^0_ NLP\n]\|x\x\x\|u\x\{4}\|U\x\{8}\)'
+syn match  yamlSingleEscape contained "''"
+
+syn match yamlBlockScalarHeader contained '\s\+\zs[|>]\%([+-]\=[1-9]\|[1-9]\=[+-]\)\='
+
+syn cluster yamlFlow contains=yamlFlowString,yamlFlowMapping,yamlFlowCollection
+syn cluster yamlFlow      add=yamlFlowMappingKey,yamlFlowMappingMerge
+syn cluster yamlFlow      add=yamlConstant,yamlPlainScalar,yamlFloat
+syn cluster yamlFlow      add=yamlTimestamp,yamlInteger,yamlMappingKeyStart
+syn cluster yamlFlow      add=yamlComment
+syn region yamlFlowMapping    matchgroup=yamlFlowIndicator start='{' end='}' contains=@yamlFlow
+syn region yamlFlowCollection matchgroup=yamlFlowIndicator start='\[' end='\]' contains=@yamlFlow
+
+execute 'syn match yamlPlainScalar /'.s:ns_plain_out.'/'
+execute 'syn match yamlPlainScalar contained /'.s:ns_plain_in.'/'
+
+syn match yamlMappingKeyStart '?\ze\s'
+syn match yamlMappingKeyStart '?' contained
+
+execute 'syn match yamlFlowMappingKey /'.s:ns_plain_in.'\ze\s*:/ contained '.
+            \'nextgroup=yamlKeyValueDelimiter'
+syn match yamlFlowMappingMerge /<<\ze\s*:/ contained nextgroup=yamlKeyValueDelimiter
+
+syn match yamlBlockCollectionItemStart '^\s*\zs-\%(\s\+-\)*\s' nextgroup=yamlBlockMappingKey,yamlBlockMappingMerge
+execute 'syn match yamlBlockMappingKey /^\s*\zs'.s:ns_plain_out.'\ze\s*:\%(\s\|$\)/ '.
+            \'nextgroup=yamlKeyValueDelimiter'
+execute 'syn match yamlBlockMappingKey /\s*\zs'.s:ns_plain_out.'\ze\s*:\%(\s\|$\)/ contained '.
+            \'nextgroup=yamlKeyValueDelimiter'
+syn match yamlBlockMappingMerge /^\s*\zs<<\ze:\%(\s\|$\)/ nextgroup=yamlKeyValueDelimiter
+syn match yamlBlockMappingMerge /<<\ze\s*:\%(\s\|$\)/ nextgroup=yamlKeyValueDelimiter contained
+
+syn match   yamlKeyValueDelimiter /\s*:/ contained
+syn match   yamlKeyValueDelimiter /\s*:/ contained
+
+syn keyword yamlConstant true True TRUE false False FALSE
+syn keyword yamlConstant null Null NULL
+syn match   yamlConstant '\<\~\>'
+
+syn match   yamlTimestamp /\%([\[\]{}, \t]\@!\p\)\@<!\%(\d\{4}-\d\d\=-\d\d\=\%(\%([Tt]\|\s\+\)\%(\d\d\=\):\%(\d\d\):\%(\d\d\)\%(\.\%(\d*\)\)\=\%(\s*\%(Z\|[+-]\d\d\=\%(:\d\d\)\=\)\)\=\)\=\)\%([\[\]{}, \t]\@!\p\)\@!/
+
+syn match   yamlInteger /\%([\[\]{}, \t]\@!\p\)\@<!\%([+-]\=\%(0\%(b[0-1_]\+\|[0-7_]\+\|x[0-9a-fA-F_]\+\)\=\|\%([1-9][0-9_]*\%(:[0-5]\=\d\)\+\)\)\)\%([\[\]{}, \t]\@!\p\)\@!/
+syn match   yamlFloat   /\%([\[\]{}, \t]\@!\p\)\@<!\%([+-]\=\%(\%(\d[0-9_]*\)\.[0-9_]*\%([eE][+-]\d\+\)\=\|\.[0-9_]\+\%([eE][-+][0-9]\+\)\=\|\d[0-9_]*\%(:[0-5]\=\d\)\+\.[0-9_]*\|\.\%(inf\|Inf\|INF\)\)\|\%(\.\%(nan\|NaN\|NAN\)\)\)\%([\[\]{}, \t]\@!\p\)\@!/
+
+execute 'syn match yamlNodeTag '.string(s:c_ns_tag_property)
+execute 'syn match yamlAnchor  '.string(s:c_ns_anchor_property)
+execute 'syn match yamlAlias   '.string(s:c_ns_alias_node)
+
+syn match yamlDocumentStart '^---\ze\%(\s\|$\)'
+syn match yamlDocumentEnd   '^\.\.\.\ze\%(\s\|$\)'
+
+hi def link yamlTodo                     Todo
+hi def link yamlComment                  Comment
+
+hi def link yamlDocumentStart            PreProc
+hi def link yamlDocumentEnd              PreProc
+
+hi def link yamlDirectiveName            Keyword
+
+hi def link yamlTAGDirective             yamlDirectiveName
+hi def link yamlTagHandle                String
+hi def link yamlTagPrefix                String
+
+hi def link yamlYAMLDirective            yamlDirectiveName
+hi def link yamlReservedDirective        Error
+hi def link yamlYAMLVersion              Number
+
+hi def link yamlString                   String
+hi def link yamlFlowString               yamlString
+hi def link yamlFlowStringDelimiter      yamlString
+hi def link yamlEscape                   SpecialChar
+hi def link yamlSingleEscape             SpecialChar
+
+hi def link yamlBlockCollectionItemStart Label
+hi def link yamlBlockMappingKey          Identifier
+hi def link yamlBlockMappingMerge        Special
+
+hi def link yamlFlowMappingKey           Identifier
+hi def link yamlFlowMappingMerge         Special
+
+hi def link yamlMappingKeyStart          Special
+hi def link yamlFlowIndicator            Special
+hi def link yamlKeyValueDelimiter        Special
+
+hi def link yamlConstant                 Constant
+
+hi def link yamlAnchor                   Type
+hi def link yamlAlias                    Type
+hi def link yamlNodeTag                  Type
+
+hi def link yamlInteger                  Number
+hi def link yamlFloat                    Float
+hi def link yamlTimestamp                Number
 
 let b:current_syntax = "yaml"
 
+unlet s:ns_word_char s:ns_uri_char s:c_verbatim_tag s:c_named_tag_handle s:c_secondary_tag_handle s:c_primary_tag_handle s:c_tag_handle s:ns_tag_char s:c_ns_shorthand_tag s:c_non_specific_tag s:c_ns_tag_property s:c_ns_anchor_char s:c_ns_anchor_name s:c_ns_anchor_property s:c_ns_alias_node s:ns_char s:ns_directive_name s:ns_local_tag_prefix s:ns_global_tag_prefix s:ns_tag_prefix s:c_indicator s:ns_plain_safe_out s:c_flow_indicator s:ns_plain_safe_in s:ns_plain_first_in s:ns_plain_first_out s:ns_plain_char_in s:ns_plain_char_out s:ns_plain_out s:ns_plain_in
+
 let &cpo = s:cpo_save
 unlet s:cpo_save
+
index 62cd6585bd802e92e36c056c55eb767a694fc108..ea458fa46fc18b9bc54c336686123cf60210b8af 100644 (file)
@@ -55,8 +55,8 @@ Here are guidelines for removing Vim by hand:
    skip the next step.
 
 5. Delete the distributed files.  If you followed the directions, these will
-   be located in a directory like "C:\vim\vim72".  If the $VIM environment
-   variable is set, the directory will be $VIM\vim72.  Delete the "vim72"
+   be located in a directory like "C:\vim\vim73".  If the $VIM environment
+   variable is set, the directory will be $VIM\vim73.  Delete the "vim73"
    directory and all that is in it.  Warning: If you changed any of the
    distributed files, or added some of your own files, you might want to save
    these first.  But normally you would not have changed or added files here.