]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
Update runtime files.
authorBram Moolenaar <Bram@vim.org>
Sat, 30 Apr 2016 13:13:38 +0000 (15:13 +0200)
committerBram Moolenaar <Bram@vim.org>
Sat, 30 Apr 2016 13:13:38 +0000 (15:13 +0200)
runtime/compiler/tidy.vim
runtime/doc/channel.txt
runtime/doc/eval.txt
runtime/doc/filetype.txt
runtime/doc/pattern.txt
runtime/doc/quickref.txt
runtime/doc/starting.txt
runtime/doc/tags
runtime/doc/todo.txt
runtime/filetype.vim
runtime/syntax/tidy.vim

index 56baee2224238590cbf7bd7f8fe6e0eb63e5351c..75be8b83d9108b1665272e46322faf088a5b4951 100644 (file)
@@ -1,7 +1,7 @@
 " Vim compiler file
 " Compiler:    HTML Tidy
 " Maintainer:  Doug Kearns <dougkearns@gmail.com>
-" Last Change: 2013 Jul 7
+" Last Change: 2016 Apr 21
 
 if exists("current_compiler")
   finish
@@ -12,8 +12,8 @@ if exists(":CompilerSet") != 2                " older Vim always used :setlocal
   command -nargs=* CompilerSet setlocal <args>
 endif
 
-CompilerSet makeprg=tidy\ -quiet\ -errors\ --gnu-emacs\ yes\ %
+CompilerSet makeprg=tidy\ -quiet\ -errors\ --gnu-emacs\ yes\ %:S
 
-" sample warning: foo.html:8:1: Warning: inserting missing 'foobar' element
-" sample error:   foo.html:9:2: Error: <foobar> is not recognized!
-CompilerSet errorformat=%f:%l:%c:\ Error:%m,%f:%l:%c:\ Warning:%m,%-G%.%#
+" foo.html:8:1: Warning: inserting missing 'foobar' element
+" foo.html:9:2: Error: <foobar> is not recognized!
+CompilerSet errorformat=%f:%l:%c:\ %trror:%m,%f:%l:%c:\ %tarning:%m,%-G%.%#
index e91a40356372627d7f8f0db58fa3ac9f53858deb..668dcad4f1fa8edbb7bcf3774098a895e65cc718 100644 (file)
@@ -1,4 +1,4 @@
-*channel.txt*      For Vim version 7.4.  Last change: 2016 Mar 28
+*channel.txt*      For Vim version 7.4.  Last change: 2016 Apr 26
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -396,6 +396,7 @@ To obtain the status of a channel: ch_status(channel).  The possible results
 are:
        "fail"          Failed to open the channel.
        "open"          The channel can be used.
+       "buffered"      The channel was closed but there is data to read.
        "closed"        The channel was closed.
 
 To obtain the job associated with a channel: ch_getjob(channel)
@@ -451,7 +452,7 @@ it like this: >
     func MyHandler(channel, msg)
 
 Without the handler you need to read the output with |ch_read()| or
-|ch_readraw()|.
+|ch_readraw()|. You can do this in the close callback, see |read-in-close-cb|.
 
 The handler defined for "out_cb" will not receive stderr.  If you want to
 handle that separately, add an "err_cb" handler: >
@@ -490,6 +491,21 @@ time a line is added to the buffer, the last-but-one line will be send to the
 job stdin.  This allows for editing the last line and sending it when pressing
 Enter.
 
+
+Reading job output in the close callback ~
+                                                       *read-in-close-cb*
+If the job can take some time and you don't need intermediate results, you can
+add a close callback and read the output there: >
+
+       func! CloseHandler(channel)
+         while ch_status(a:channel) == 'buffered'
+           echomsg ch_read(a:channel)
+         endwhile
+       endfunc
+       let job = job_start(command, {'close_cb': 'CloseHandler'})
+
+You will want to do something more useful than "echomsg".
+
 ==============================================================================
 9. Starting a job without a channel                    *job-start-nochannel*
 
index 3e9985843b8a564dd79f738115062b920d146e8d..e37dec789574e32669f1041cc168160f5b2e637a 100644 (file)
@@ -1,4 +1,4 @@
-*eval.txt*     For Vim version 7.4.  Last change: 2016 Apr 20
+*eval.txt*     For Vim version 7.4.  Last change: 2016 Apr 26
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -46,6 +46,7 @@ Float         A floating point number. |floating-point-format| *Float*
                {only when compiled with the |+float| feature}
                Examples: 123.456  1.15e-6  -1.1e3
 
+                                                       *E928*
 String         A NUL terminated string of 8-bit unsigned characters (bytes).
                |expr-string| Examples: "ab\txx\"--"  'x-z''a,c'
 
@@ -2922,8 +2923,11 @@ ch_status({handle})                                              *ch_status()*
                Return the status of {handle}:
                        "fail"          failed to open the channel
                        "open"          channel can be used
+                       "buffered"      channel can be read, not written to
                        "closed"        channel can not be used
                {handle} can be Channel or a Job that has a Channel.
+               "buffered" is used when the channel was closed but there is
+               still data that can be obtained with |ch_read()|.
 
                                                        *copy()*
 copy({expr})   Make a copy of {expr}.  For Numbers and Strings this isn't
@@ -6314,6 +6318,7 @@ setqflist({list} [, {action}])                            *setqflist()*
                Note that the list is not exactly the same as what
                |getqflist()| returns.
 
+                                                       *E927*
                If {action} is set to 'a', then the items from {list} are
                added to the existing quickfix list. If there is no existing
                list, then a new list is created. If {action} is set to 'r',
@@ -7739,6 +7744,7 @@ tag_any_white             Compiled with support for any white characters in tags
 tcl                    Compiled with Tcl interface.
 terminfo               Compiled with terminfo instead of termcap.
 termresponse           Compiled with support for |t_RV| and |v:termresponse|.
+termtruecolor          Compiled with true color in terminal support.
 textobjects            Compiled with support for |text-objects|.
 tgetent                        Compiled with tgetent support, able to use a termcap
                        or terminfo file.
index 11ccdc505808cc5682a25c6794cb10118da3a8b3..cc1e53ccb5535cda9669be17c39a33b7277085a1 100644 (file)
@@ -1,4 +1,4 @@
-*filetype.txt*  For Vim version 7.4.  Last change: 2015 Dec 06
+*filetype.txt*  For Vim version 7.4.  Last change: 2016 Apr 30
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -586,6 +586,41 @@ folding style instead.  For example: >
         autocmd FileType man setlocal foldmethod=indent foldenable
 
 
+MANPAGER                                     *manpager.vim*
+
+The :Man command allows you to turn Vim into a manpager (that syntax highlights
+manpages and follows linked manpages on hitting CTRL-]).
+
+Works on:
+
+  - Linux
+  - Mac OS
+  - FreeBSD
+  - Cygwin
+  - Win 10 under Bash
+
+Untested:
+
+  - Amiga OS
+  - BeOS
+  - OS/2
+
+For bash,zsh,ksh or dash by adding to the config file (.bashrc,.zshrc, ...)
+
+       export MANPAGER="env MAN_PN=1 vim -M +MANPAGER -"
+
+For (t)csh by adding to the config file
+
+       setenv MANPAGER "env MAN_PN=1 vim -M +MANPAGER -"
+
+For fish by adding to the config file
+
+       set -x MANPAGER "env MAN_PN=1 vim -M +MANPAGER -"
+
+If man sets the $MAN_PN environment variable, like man-db, the most common
+implementation on Linux and Mac OS, then the "env MAN_PN=1 " part above is
+superfluous.
+
 PDF                                                    *ft-pdf-plugin*
 
 Two maps, <C-]> and <C-T>, are provided to simulate a tag stack for navigating
index e77c1c268840ab12980406f1293e69d72cae93cb..38d172c4340aa36a9a544f0f922c363c7181d8d9 100644 (file)
@@ -1,4 +1,4 @@
-*pattern.txt*   For Vim version 7.4.  Last change: 2016 Apr 03
+*pattern.txt*   For Vim version 7.4.  Last change: 2016 Apr 26
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1079,8 +1079,8 @@ x A single character, with no special meaning, matches itself
          belonging to that character class.  The following character classes
          are supported:
                          Name          Contents ~
-*[:alnum:]*              [:alnum:]     letters and digits
-*[:alpha:]*              [:alpha:]     letters
+*[:alnum:]*              [:alnum:]     ASCII letters and digits
+*[:alpha:]*              [:alpha:]     ASCII letters
 *[:blank:]*              [:blank:]     space and tab characters
 *[:cntrl:]*              [:cntrl:]     control characters
 *[:digit:]*              [:digit:]     decimal digits
@@ -1088,7 +1088,7 @@ x A single character, with no special meaning, matches itself
 *[:lower:]*              [:lower:]     lowercase letters (all letters when
                                        'ignorecase' is used)
 *[:print:]*              [:print:]     printable characters including space
-*[:punct:]*              [:punct:]     punctuation characters
+*[:punct:]*              [:punct:]     ASCII punctuation characters
 *[:space:]*              [:space:]     whitespace characters
 *[:upper:]*              [:upper:]     uppercase letters (all letters when
                                        'ignorecase' is used)
@@ -1105,7 +1105,8 @@ x A single character, with no special meaning, matches itself
          These items only work for 8-bit characters, except [:lower:] and
          [:upper:] also work for multi-byte characters when using the new
          regexp engine.  See |two-engines|.  In the future these items may
-         work for multi-byte characters.
+         work for multi-byte characters.  For now, to get all "alpha"
+         characters you can use: [[:lower:][:upper:]].
                                                        */[[=* *[==]*
        - An equivalence class.  This means that characters are matched that
          have almost the same meaning, e.g., when ignoring accents.  This
index f42ea82f09cc35554f551fcab66c276e9dcdf26f..f3b11c93ef2a17b872d0c805ae9ae37ea265b77b 100644 (file)
@@ -1,4 +1,4 @@
-*quickref.txt*  For Vim version 7.4.  Last change: 2016 Mar 30
+*quickref.txt*  For Vim version 7.4.  Last change: 2016 Apr 29
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -915,6 +915,7 @@ Short explanation of each option:           *option-list*
 'term'                     name of the terminal
 'termbidi'       'tbidi'   terminal takes care of bi-directionality
 'termencoding'   'tenc'    character encoding used by the terminal
+'termguicolors'          'tgc'     use GUI colors for the terminal
 'terse'                            shorten some messages
 'textauto'       'ta'      obsolete, use 'fileformats'
 'textmode'       'tx'      obsolete, use 'fileformat'
index 050afcd9f7fb45e2c6c029e488f8005afe852ada..23546d959fc8a0ddec1e699b4c3b20b6d739410e 100644 (file)
@@ -1,4 +1,4 @@
-*starting.txt*  For Vim version 7.4.  Last change: 2016 Apr 05
+*starting.txt*  For Vim version 7.4.  Last change: 2016 Apr 22
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -249,7 +249,8 @@ 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,
-               delete(), rename(), mkdir(), writefile(), libcall(), etc.
+               delete(), rename(), mkdir(), writefile(), libcall(),
+               job_start(), etc.
                {not in Vi}
 
                                                        *-g*
index 1a221ac5f440aaf8dc0fc2472c3e780f1d01fa7e..0d765672e075142eb712c1b6fd10c3625436bbad 100644 (file)
@@ -911,6 +911,8 @@ $VIM_POSIX  vi_diff.txt     /*$VIM_POSIX*
 't_%1' term.txt        /*'t_%1'*
 't_%i' term.txt        /*'t_%i'*
 't_&8' term.txt        /*'t_&8'*
+'t_8b' term.txt        /*'t_8b'*
+'t_8f' term.txt        /*'t_8f'*
 't_@7' term.txt        /*'t_@7'*
 't_AB' term.txt        /*'t_AB'*
 't_AF' term.txt        /*'t_AF'*
@@ -1046,11 +1048,13 @@ $VIM_POSIX      vi_diff.txt     /*$VIM_POSIX*
 'term' options.txt     /*'term'*
 'termbidi'     options.txt     /*'termbidi'*
 'termencoding' options.txt     /*'termencoding'*
+'termguicolors'        options.txt     /*'termguicolors'*
 'terse'        options.txt     /*'terse'*
 'textauto'     options.txt     /*'textauto'*
 'textmode'     options.txt     /*'textmode'*
 'textwidth'    options.txt     /*'textwidth'*
 'tf'   options.txt     /*'tf'*
+'tgc'  options.txt     /*'tgc'*
 'tgst' options.txt     /*'tgst'*
 'thesaurus'    options.txt     /*'thesaurus'*
 'tildeop'      options.txt     /*'tildeop'*
@@ -1286,6 +1290,7 @@ $VIM_POSIX        vi_diff.txt     /*$VIM_POSIX*
 +tag_old_static        various.txt     /*+tag_old_static*
 +tcl   various.txt     /*+tcl*
 +tcl/dyn       various.txt     /*+tcl\/dyn*
++termguicolors various.txt     /*+termguicolors*
 +terminfo      various.txt     /*+terminfo*
 +termresponse  various.txt     /*+termresponse*
 +textobjects   various.txt     /*+textobjects*
@@ -4443,6 +4448,8 @@ E923      eval.txt        /*E923*
 E924   quickfix.txt    /*E924*
 E925   quickfix.txt    /*E925*
 E926   quickfix.txt    /*E926*
+E927   eval.txt        /*E927*
+E928   eval.txt        /*E928*
 E93    windows.txt     /*E93*
 E94    windows.txt     /*E94*
 E95    message.txt     /*E95*
@@ -6257,6 +6264,7 @@ g:netrw_special_syntax    pi_netrw.txt    /*g:netrw_special_syntax*
 g:netrw_ssh_browse_reject      pi_netrw.txt    /*g:netrw_ssh_browse_reject*
 g:netrw_ssh_cmd        pi_netrw.txt    /*g:netrw_ssh_cmd*
 g:netrw_sshport        pi_netrw.txt    /*g:netrw_sshport*
+g:netrw_suppress_gx_mesg       pi_netrw.txt    /*g:netrw_suppress_gx_mesg*
 g:netrw_timefmt        pi_netrw.txt    /*g:netrw_timefmt*
 g:netrw_tmpfile_escape pi_netrw.txt    /*g:netrw_tmpfile_escape*
 g:netrw_uid    pi_netrw.txt    /*g:netrw_uid*
@@ -7054,6 +7062,7 @@ maillist  intro.txt       /*maillist*
 maillist-archive       intro.txt       /*maillist-archive*
 make.vim       syntax.txt      /*make.vim*
 man.vim        filetype.txt    /*man.vim*
+manpager.vim   filetype.txt    /*manpager.vim*
 manual-copyright       usr_01.txt      /*manual-copyright*
 map()  eval.txt        /*map()*
 map-<SID>      map.txt /*map-<SID>*
@@ -7867,6 +7876,7 @@ r change.txt      /*r*
 range()        eval.txt        /*range()*
 raw-terminal-mode      term.txt        /*raw-terminal-mode*
 rcp    pi_netrw.txt    /*rcp*
+read-in-close-cb       channel.txt     /*read-in-close-cb*
 read-messages  insert.txt      /*read-messages*
 read-only-share        editing.txt     /*read-only-share*
 read-stdin     version5.txt    /*read-stdin*
@@ -8332,6 +8342,8 @@ t_#4      term.txt        /*t_#4*
 t_%1   term.txt        /*t_%1*
 t_%i   term.txt        /*t_%i*
 t_&8   term.txt        /*t_&8*
+t_8b   term.txt        /*t_8b*
+t_8f   term.txt        /*t_8f*
 t_@7   term.txt        /*t_@7*
 t_AB   term.txt        /*t_AB*
 t_AF   term.txt        /*t_AF*
@@ -9186,6 +9198,7 @@ xterm-save-screen tips.txt        /*xterm-save-screen*
 xterm-screens  tips.txt        /*xterm-screens*
 xterm-scroll-region    term.txt        /*xterm-scroll-region*
 xterm-shifted-keys     term.txt        /*xterm-shifted-keys*
+xterm-true-color       term.txt        /*xterm-true-color*
 y      change.txt      /*y*
 yaml.vim       syntax.txt      /*yaml.vim*
 yank   change.txt      /*yank*
index 8b0329c9a4683a2d0c92bbd9859adbc39f639265..8eb06ddaaf03c70caaa6ff1708fb95f23d6fd1e0 100644 (file)
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 7.4.  Last change: 2016 Apr 21
+*todo.txt*      For Vim version 7.4.  Last change: 2016 Apr 30
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -34,17 +34,36 @@ not be repeated below, unless there is extra information.
                                                        *known-bugs*
 -------------------- Known bugs and current work -----------------------
 
+Athena version doesn't start up.  Related to termguicolors change. (Kelvin
+Lee)
+
+Test_out_close_cb sometimes fails.
+    Why is DETACH not send to OutHandler()?
+
+Vim reliably crashes when freeing the job and operator-pending mode is active.
+(James McCoy, 2016 Apr 26)
+
+Using close callback to read output doesn't work reliably.
+(Andrew Stewart, 2016 Apr 27)
+
+problem with "Ignore" after adding 'guicolors'. (Charles Campbell, 2016 Apr
+27)
+
 In test_partial when start_job() has a non-existing command memory leaks.
 
 Memory leak in test49
 Memory leak in test_alot, with matchstrpos()
 
+Packages:
 Also keep a list of loaded plugins, skip when encountered again?
 
 Vim.org: when a user already has a homepage, do show the field so that it can
 be deleted.
 
+Running gvim from Agide causes a crash.
+
 +channel:
+- Only add DETACH message for netbeans.
 - GUI:cursor blinking is irregular when invoking callbacks. (Ramel Eshed, 2016
   Apr 16) somehow remember the previous state?
 - When a message in the queue but there is no callback, drop it after a while?
@@ -66,6 +85,10 @@ Patch to fix invalid behavior with NULL list. (Nikolai Pavlov, #768)
 Also check :for.
 
 Regexp problems:
+- Since 7.4.704 the old regex engine fails to match [[:print:]] in 0xf6.
+  (Manuel Ortega, 2016 Apr 24)
+  Test fails on Mac.  Avoid using isalpha(), isalnum(), etc?  Depends on
+  LC_CTYPE
 - The regexp engines are not reentrant, causing havoc when interrupted by a
   remote expression or something else.  Move global variables onto the stack
   or into an allocated struct.
@@ -118,6 +141,10 @@ about /S and /D options (Ken Takata, 2016 Apr 13)
 
 Patch to make cursor blinking work better with GTK3. (Kazunobu Kuriyama, 2016
 Apr 19)  Need to check this works on Linux.
+Alternative:
+- add gui_restart_blink flag, set when key typed.
+- in gui_mch_start_blink(): continue if possible.
+- in gui_mch_stop_blink(): remember last state.
 
 Use ADDR_OTHER instead of ADDR_LINES for many more commands.
 Add tests for using number larger than number of lines in buffer.
@@ -125,32 +152,20 @@ Add tests for using number larger than number of lines in buffer.
 Patch to fix escaping special characters for delete(). (tc-0, 2016 Mar 20,
 #700) Test fails on MS-Windows.
 
+When 'autochdir' is set, writing  new file does not change the current dir.
+(Dan Church, issue #777)
+
 ml_get errors when reloading file. (Chris Desjardins, 2016 Apr 19)
 Also with latest version.
 
-Patch to put undo options together in undo window.
-(Gary Johnson, 2016 Jan 28)
+Patch to load rgb.txt once. (Christian Brabandt, 2016 Apr 29)
 
 Still problems with 'emoji'.  See issue #721.  Patch 7.4.1697 half-fixes it.
 Avoid PLAN_WRITE in windgoto() ?
-
-AVR assembler syntax file. (Marius Ghita, #439)
-
-Patch to have better check for {action} argument of setqflist().
-Nikolai Pavlov, Feb 25, #661.  Can be even more strict.
-Also see patch from Hirohito Higashi, Feb 25.
-Updated patch, 2016 Mar 25.
-
-Patch to update the GTK icon cache when installing. (Kazunobu Kuriyama, 2016
-Feb 3)
-
-Patch for test86 and test87. (Roland Puntaier, #622)
+Should already never use utf-8 chars to position the cursor.
 
 Cannot delete a file with square brackets with delete(). (#696)
 
-Patch to add GUI colors to the terminal, when 'guicolors' is set. (ZyX, 2013
-Jan 26, update 2013 Dec 14, another 2014 Nov 22)
-
 Patch to add TabNew, TabNewEntered and TabClosed autocommand events.
 (Felipe Morales, 2015 Feb 1)
 
@@ -176,6 +191,11 @@ What does it change?
 It's possible to add ",," to 'wildignore', an empty entry.  Causes problems.
 Reject the value? #710.
 
+Patch to support strikethrough next to bold and italic. (Christian Brabandt,
+2013 Jul 30)  Update from Ken Takata, 2013 Oct 12.
+Update mentioned by Christian, 2016 Apr 25.
+Update from Ken Takata, 2016 Apr 26.
+
 Win32: patch to use 64 bit stat() if possible. (Ken Takata, 2014 May 12)
 More tests May 14. Update May 29.  Update Aug 10.
 Now part of large file patches. (Ken Takata, 2016 Feb 1)
@@ -185,7 +205,7 @@ Patches from Ken Takata might help (2014 Apr 17)
 Update 2016 Mar 28.  Can include all parts into one dist patch.
 
 Patch to support 64 bit ints for Number. (Ken Takata, 2016 Jan 21)
-Update 2016 Apr 4.
+Update 2016 Apr 24.
 
 Patch to add the :bvimgrep command.  (Christian Brabandt, 2014 Nov 12)
 Updated 2016 Feb 10
@@ -267,8 +287,8 @@ directory exists. (Sergio Gallelli, 2013 Dec 29)
     ":watchlist" lists the items. (Charles Campbell)
 Patch by Christian Brabandt, 2016 Feb 1.
 
-Patch to discard remainder of long error messages in quickfix, avoid using
-them as separate messages. (Anton Lindqvist, 2016 Apr 9, update Apr 13)
+If ":bd" also closes a Tab page then the " mark is not set.  (Harm te Hennepe,
+2016 Apr 25, #780)
 
 Patch to avoid redrawing tabline when the popup menu is visible.
 (Christian Brabandt, 2016 Jan 28)
@@ -1594,9 +1614,6 @@ probably causes this.
 'scrollbind' is not respected when deleting lines or undo. (Milan Vancura,
 2009 Jan 16)
 
-Patch to support strikethrough next to bold and italic. (Christian Brabandt,
-2013 Jul 30)  Update from Ken Takata, 2013 Oct 12.
-
 Document that default font in Athena can be set with resources:
    XtDefaultFont: "9x15"
    XtDefaultFontSet: "9x15"
index 813db93ca3a40a675d6563a762ae08ce38644d1e..99275715761caed8f343133ba6e232adcf8d606c 100644 (file)
@@ -1,7 +1,7 @@
 " Vim support file to detect file types
 "
 " Maintainer:  Bram Moolenaar <Bram@vim.org>
-" Last Change: 2015 Dec 03
+" Last Change: 2016 Apr 29
 
 " Listen very carefully, I will say this only once
 if exists("did_load_filetypes")
@@ -17,7 +17,7 @@ augroup filetypedetect
 
 " Ignored extensions
 if exists("*fnameescape")
-au BufNewFile,BufRead ?\+.orig,?\+.bak,?\+.old,?\+.new,?\+.dpkg-dist,?\+.dpkg-old,?\+.dpkg-new,?\+.dpkg-bak,?\+.rpmsave,?\+.rpmnew
+au BufNewFile,BufRead ?\+.orig,?\+.bak,?\+.old,?\+.new,?\+.dpkg-dist,?\+.dpkg-old,?\+.dpkg-new,?\+.dpkg-bak,?\+.rpmsave,?\+.rpmnew,?\+.pacsave,?\+.pacnew
        \ exe "doau filetypedetect BufRead " . fnameescape(expand("<afile>:r"))
 au BufNewFile,BufRead *~
        \ let s:name = expand("<afile>") |
@@ -1861,11 +1861,19 @@ au BufNewFile,BufRead catalog                   setf catalog
 au BufNewFile,BufRead sgml.catalog*            call s:StarSetf('catalog')
 
 " Shell scripts (sh, ksh, bash, bash2, csh); Allow .profile_foo etc.
-" Gentoo ebuilds are actually bash scripts
-au BufNewFile,BufRead .bashrc*,bashrc,bash.bashrc,.bash[_-]profile*,.bash[_-]logout*,.bash[_-]aliases*,*.bash,*/{,.}bash[_-]completion{,.d,.sh}{,/*},*.ebuild,*.eclass call SetFileTypeSH("bash")
+" Gentoo ebuilds and Arch Linux PKGBUILDs are actually bash scripts
+au BufNewFile,BufRead .bashrc*,bashrc,bash.bashrc,.bash[_-]profile*,.bash[_-]logout*,.bash[_-]aliases*,*.bash,*/{,.}bash[_-]completion{,.d,.sh}{,/*},*.ebuild,*.eclass,PKGBUILD* call SetFileTypeSH("bash")
 au BufNewFile,BufRead .kshrc*,*.ksh call SetFileTypeSH("ksh")
 au BufNewFile,BufRead */etc/profile,.profile*,*.sh,*.env call SetFileTypeSH(getline(1))
 
+" Shell script (Arch Linux) or PHP file (Drupal)
+au BufNewFile,BufRead *.install
+       \ if getline(1) =~ '<?php' |
+       \   setf php |
+       \ else |
+       \   call SetFileTypeSH("bash") |
+       \ endif
+
 " Also called from scripts.vim.
 func! SetFileTypeSH(name)
   if expand("<amatch>") =~ g:ft_ignore_pat
index c24796edd1a62e645009990378d637f09d59d335..6371cb5a860690de38e8001936c75d2ad90cbe57 100644 (file)
 " Vim syntax file
 " Language:    HMTL Tidy configuration file (/etc/tidyrc ~/.tidyrc)
 " Maintainer:  Doug Kearns <dougkearns@gmail.com>
-" Last Change: 2013 June 01
+" Last Change: 2016 Apr 24
 
 if exists("b:current_syntax")
   finish
 endif
 
-setlocal iskeyword=@,48-57,-
+let s:cpo_save = &cpo
+set cpo&vim
+
+syn iskeyword @,48-57,-,_
+
+syn case ignore
+syn keyword    tidyBoolean     contained t[rue] f[alse] y[es] n[o] 1 0
+syn keyword    tidyAutoBoolean contained t[rue] f[alse] y[es] n[o] 1 0 auto
+syn case match
+syn keyword    tidyDoctype     contained html5 omit auto strict loose transitional user
+syn keyword    tidyEncoding    contained raw ascii latin0 latin1 utf8 iso2022 mac win1252 ibm858 utf16le utf16be utf16 big5 shiftjis
+syn keyword    tidyNewline     contained LF CRLF CR
+syn match      tidyNumber      contained "\<\d\+\>"
+syn keyword    tidyRepeat      contained keep-first keep-last
+syn keyword    tidySorter      contained alpha none
+syn region     tidyString      contained start=+"+ skip=+\\\\\|\\"+ end=+"+ oneline
+syn region     tidyString      contained start=+'+ skip=+\\\\\|\\'+ end=+'+ oneline
+syn match      tidyTags        contained "\<\w\+\(\s*,\s*\w\+\)*\>"
+
+syn keyword tidyBooleanOption add-xml-decl add-xml-pi add-xml-space
+       \ anchor-as-name ascii-chars assume-xml-procins bare break-before-br
+       \ clean coerce-endtags decorate-inferred-ul drop-empty-paras
+       \ drop-empty-elements drop-font-tags drop-proprietary-attributes
+       \ enclose-block-text enclose-text escape-cdata escape-scripts
+       \ fix-backslash fix-bad-comments fix-uri force-output gdoc gnu-emacs
+       \ hide-comments hide-endtags indent-attributes indent-cdata
+       \ indent-with-tabs input-xml join-classes join-styles keep-time
+       \ language literal-attributes logical-emphasis lower-literals markup
+       \ merge-emphasis ncr numeric-entities omit-optional-tags output-html
+       \ output-xhtml output-xml preserve-entities punctuation-wrap quiet
+       \ quote-ampersand quote-marks quote-nbsp raw replace-color show-info
+       \ show-warnings skip-nested split strict-tags-attributes tidy-mark
+       \ uppercase-attributes uppercase-tags word-2000 wrap-asp
+       \ wrap-attributes wrap-jste wrap-php wrap-script-literals
+       \ wrap-sections write-back
+       \ contained nextgroup=tidyBooleanDelimiter
+
+syn match tidyBooleanDelimiter ":" nextgroup=tidyBoolean contained skipwhite
+
+syn keyword tidyAutoBooleanOption indent merge-divs merge-spans output-bom show-body-only vertical-space contained nextgroup=tidyAutoBooleanDelimiter
+syn match tidyAutoBooleanDelimiter ":" nextgroup=tidyAutoBoolean contained skipwhite
+
+syn keyword tidyCSSSelectorOption css-prefix contained nextgroup=tidyCSSSelectorDelimiter
+syn match tidyCSSSelectorDelimiter ":" nextgroup=tidyCSSSelector contained skipwhite
+
+syn keyword tidyDoctypeOption doctype contained nextgroup=tidyDoctypeDelimiter
+syn match tidyDoctypeDelimiter ":" nextgroup=tidyDoctype contained skipwhite
+
+syn keyword tidyEncodingOption char-encoding input-encoding output-encoding contained nextgroup=tidyEncodingDelimiter
+syn match tidyEncodingDelimiter ":" nextgroup=tidyEncoding contained skipwhite
+
+syn keyword tidyIntegerOption accessibility-check doctype-mode indent-spaces show-errors tab-size wrap contained nextgroup=tidyIntegerDelimiter
+syn match tidyIntegerDelimiter ":" nextgroup=tidyNumber contained skipwhite
+
+syn keyword tidyNameOption slide-style contained nextgroup=tidyNameDelimiter
+syn match tidyNameDelimiter ":" nextgroup=tidyName contained skipwhite
+
+syn keyword tidyNewlineOption newline contained nextgroup=tidyNewlineDelimiter
+syn match tidyNewlineDelimiter ":" nextgroup=tidyNewline contained skipwhite
+
+syn keyword tidyTagsOption new-blocklevel-tags new-empty-tags new-inline-tags new-pre-tags contained nextgroup=tidyTagsDelimiter
+syn match tidyTagsDelimiter ":" nextgroup=tidyTags contained skipwhite
+
+syn keyword tidyRepeatOption repeated-attributes contained nextgroup=tidyRepeatDelimiter
+syn match tidyRepeatDelimiter ":" nextgroup=tidyRepeat contained skipwhite
+
+syn keyword tidySorterOption sort-attributes contained nextgroup=tidySorterDelimiter
+syn match tidySorterDelimiter ":" nextgroup=tidySorter contained skipwhite
+
+syn keyword tidyStringOption alt-text error-file gnu-emacs-file output-file contained nextgroup=tidyStringDelimiter
+syn match tidyStringDelimiter ":" nextgroup=tidyString contained skipwhite
+
+syn cluster tidyOptions contains=tidy.*Option
+
+syn match tidyStart "^" nextgroup=@tidyOptions
 
 syn match      tidyComment     "^\s*//.*$" contains=tidyTodo
 syn match      tidyComment     "^\s*#.*$"  contains=tidyTodo
 syn keyword    tidyTodo        TODO NOTE FIXME XXX contained
 
-syn match      tidyAssignment  "^[a-z0-9-]\+:\s*.*$" contains=tidyOption,@tidyValue,tidyDelimiter
-syn match      tidyDelimiter   ":" contained
+hi def link tidyAutoBooleanOption      Identifier
+hi def link tidyBooleanOption          Identifier
+hi def link tidyCSSSelectorOption      Identifier
+hi def link tidyDoctypeOption          Identifier
+hi def link tidyEncodingOption         Identifier
+hi def link tidyIntegerOption          Identifier
+hi def link tidyNameOption             Identifier
+hi def link tidyNewlineOption          Identifier
+hi def link tidyTagsOption             Identifier
+hi def link tidyRepeatOption           Identifier
+hi def link tidySorterOption           Identifier
+hi def link tidyStringOption           Identifier
 
-syn match      tidyNewTagAssignment    "^new-\l\+-tags:\s*.*$" contains=tidyNewTagOption,tidyNewTagDelimiter,tidyNewTagValue,tidyDelimiter
-syn match      tidyNewTagDelimiter     "," contained
-syn match      tidyNewTagValue         "\<\w\+\>" contained
+hi def link tidyAutoBooleanDelimiter   Special
+hi def link tidyBooleanDelimiter       Special
+hi def link tidyCSSSelectorDelimiter   Special
+hi def link tidyDoctypeDelimiter       Special
+hi def link tidyEncodingDelimiter      Special
+hi def link tidyIntegerDelimiter       Special
+hi def link tidyNameDelimiter          Special
+hi def link tidyNewlineDelimiter       Special
+hi def link tidyTagsDelimiter          Special
+hi def link tidyRepeatDelimiter                Special
+hi def link tidySorterDelimiter                Special
+hi def link tidyStringDelimiter                Special
 
-syn case ignore
-syn keyword    tidyBoolean t[rue] f[alse] y[es] n[o] contained
-syn case match
-syn match      tidyDoctype "\<\%(omit\|auto\|strict\|loose\|transitional\|user\)\>" contained
-" NOTE: use match rather than keyword here so that tidyEncoding 'raw' does not
-"       always have precedence over tidyOption 'raw'
-syn match      tidyEncoding    "\<\%(ascii\|latin0\|latin1\|raw\|utf8\|iso2022\|mac\|utf16le\|utf16be\|utf16\|win1252\|ibm858\|big5\|shiftjis\)\>" contained
-syn match      tidyNewline     "\<\%(LF\|CRLF\|CR\)\>"
-syn match      tidyNumber      "\<\d\+\>" contained
-syn match      tidyRepeat      "\<\%(keep-first\|keep-last\)\>" contained
-syn region     tidyString      start=+"+ skip=+\\\\\|\\"+ end=+"+ contained oneline
-syn region     tidyString      start=+'+ skip=+\\\\\|\\'+ end=+'+ contained oneline
-syn cluster    tidyValue       contains=tidyBoolean,tidyDoctype,tidyEncoding,tidyNewline,tidyNumber,tidyRepeat,tidyString
-
-syn match tidyOption "^accessibility-check"            contained
-syn match tidyOption "^add-xml-decl"                   contained
-syn match tidyOption "^add-xml-pi"                     contained
-syn match tidyOption "^add-xml-space"                  contained
-syn match tidyOption "^alt-text"                       contained
-syn match tidyOption "^anchor-as-name"                 contained
-syn match tidyOption "^ascii-chars"                    contained
-syn match tidyOption "^assume-xml-procins"             contained
-syn match tidyOption "^bare"                           contained
-syn match tidyOption "^break-before-br"                        contained
-syn match tidyOption "^char-encoding"                  contained
-syn match tidyOption "^clean"                          contained
-syn match tidyOption "^css-prefix"                     contained
-syn match tidyOption "^decorate-inferred-ul"           contained
-syn match tidyOption "^doctype"                                contained
-syn match tidyOption "^doctype-mode"                   contained
-syn match tidyOption "^drop-empty-paras"               contained
-syn match tidyOption "^drop-font-tags"                 contained
-syn match tidyOption "^drop-proprietary-attributes"    contained
-syn match tidyOption "^enclose-block-text"             contained
-syn match tidyOption "^enclose-text"                   contained
-syn match tidyOption "^error-file"                     contained
-syn match tidyOption "^escape-cdata"                   contained
-syn match tidyOption "^fix-backslash"                  contained
-syn match tidyOption "^fix-bad-comments"               contained
-syn match tidyOption "^fix-uri"                                contained
-syn match tidyOption "^force-output"                   contained
-syn match tidyOption "^gnu-emacs"                      contained
-syn match tidyOption "^gnu-emacs-file"                 contained
-syn match tidyOption "^hide-comments"                  contained
-syn match tidyOption "^hide-endtags"                   contained
-syn match tidyOption "^indent"                         contained
-syn match tidyOption "^indent-attributes"              contained
-syn match tidyOption "^indent-cdata"                   contained
-syn match tidyOption "^indent-spaces"                  contained
-syn match tidyOption "^input-encoding"                 contained
-syn match tidyOption "^input-xml"                      contained
-syn match tidyOption "^join-classes"                   contained
-syn match tidyOption "^join-styles"                    contained
-syn match tidyOption "^keep-time"                      contained
-syn match tidyOption "^language"                       contained
-syn match tidyOption "^literal-attributes"             contained
-syn match tidyOption "^logical-emphasis"               contained
-syn match tidyOption "^lower-literals"                 contained
-syn match tidyOption "^markup"                         contained
-syn match tidyOption "^merge-divs"                     contained
-syn match tidyOption "^merge-spans"                    contained
-syn match tidyOption "^ncr"                            contained
-syn match tidyOption "^newline"                                contained
-syn match tidyOption "^numeric-entities"               contained
-syn match tidyOption "^output-bom"                     contained
-syn match tidyOption "^output-encoding"                        contained
-syn match tidyOption "^output-file"                    contained
-syn match tidyOption "^output-html"                    contained
-syn match tidyOption "^output-xhtml"                   contained
-syn match tidyOption "^output-xml"                     contained
-syn match tidyOption "^preserve-entities"              contained
-syn match tidyOption "^punctuation-wrap"               contained
-syn match tidyOption "^quiet"                          contained
-syn match tidyOption "^quote-ampersand"                        contained
-syn match tidyOption "^quote-marks"                    contained
-syn match tidyOption "^quote-nbsp"                     contained
-syn match tidyOption "^raw"                            contained
-syn match tidyOption "^repeated-attributes"            contained
-syn match tidyOption "^replace-color"                  contained
-syn match tidyOption "^show-body-only"                 contained
-syn match tidyOption "^show-errors"                    contained
-syn match tidyOption "^show-warnings"                  contained
-syn match tidyOption "^slide-style"                    contained
-syn match tidyOption "^sort-attributes"                        contained
-syn match tidyOption "^split"                          contained
-syn match tidyOption "^tab-size"                       contained
-syn match tidyOption "^tidy-mark"                      contained
-syn match tidyOption "^uppercase-attributes"           contained
-syn match tidyOption "^uppercase-tags"                 contained
-syn match tidyOption "^word-2000"                      contained
-syn match tidyOption "^wrap"                           contained
-syn match tidyOption "^wrap-asp"                       contained
-syn match tidyOption "^wrap-attributes"                        contained
-syn match tidyOption "^wrap-jste"                      contained
-syn match tidyOption "^wrap-php"                       contained
-syn match tidyOption "^wrap-script-literals"           contained
-syn match tidyOption "^wrap-sections"                  contained
-syn match tidyOption "^write-back"                     contained
-syn match tidyOption "^vertical-space"                 contained
-
-syn match tidyNewTagOption "^new-blocklevel-tags"      contained
-syn match tidyNewTagOption "^new-empty-tags"           contained
-syn match tidyNewTagOption "^new-inline-tags"          contained
-syn match tidyNewTagOption "^new-pre-tags"             contained
-
-hi def link tidyBoolean                Boolean
-hi def link tidyComment                Comment
-hi def link tidyDelimiter      Special
-hi def link tidyDoctype                Constant
-hi def link tidyEncoding       Constant
-hi def link tidyNewline                Constant
-hi def link tidyNewTagDelimiter        Special
-hi def link tidyNewTagOption   Identifier
-hi def link tidyNewTagValue    Constant
-hi def link tidyNumber         Number
-hi def link tidyOption         Identifier
-hi def link tidyRepeat         Constant
-hi def link tidyString         String
-hi def link tidyTodo           Todo
+hi def link tidyAutoBoolean            Boolean
+hi def link tidyBoolean                        Boolean
+hi def link tidyDoctype                        Constant
+hi def link tidyEncoding               Constant
+hi def link tidyNewline                        Constant
+hi def link tidyTags                   Constant
+hi def link tidyNumber                 Number
+hi def link tidyRepeat                 Constant
+hi def link tidySorter                 Constant
+hi def link tidyString                 String
+
+hi def link tidyComment                        Comment
+hi def link tidyTodo                   Todo
 
 let b:current_syntax = "tidy"
 
+let &cpo = s:cpo_save
+unlet s:cpo_save
+
 " vim: ts=8