summaryrefslogtreecommitdiff
path: root/runtime
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2016-04-30 15:13:38 +0200
committerBram Moolenaar <Bram@vim.org>2016-04-30 15:13:38 +0200
commit06481427005a9dae39721087df94855f7d4d1feb (patch)
tree1fecc2ac5af171492d02dcc073671562ce6d121d /runtime
parent4cc39a527fecc96ad6639f10c9389c66af828cf1 (diff)
downloadvim-git-06481427005a9dae39721087df94855f7d4d1feb.tar.gz
Update runtime files.
Diffstat (limited to 'runtime')
-rw-r--r--runtime/compiler/tidy.vim10
-rw-r--r--runtime/doc/channel.txt20
-rw-r--r--runtime/doc/eval.txt8
-rw-r--r--runtime/doc/filetype.txt37
-rw-r--r--runtime/doc/pattern.txt11
-rw-r--r--runtime/doc/quickref.txt3
-rw-r--r--runtime/doc/starting.txt5
-rw-r--r--runtime/doc/tags13
-rw-r--r--runtime/doc/todo.txt65
-rw-r--r--runtime/filetype.vim16
-rw-r--r--runtime/syntax/tidy.vim242
11 files changed, 259 insertions, 171 deletions
diff --git a/runtime/compiler/tidy.vim b/runtime/compiler/tidy.vim
index 56baee222..75be8b83d 100644
--- a/runtime/compiler/tidy.vim
+++ b/runtime/compiler/tidy.vim
@@ -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%.%#
diff --git a/runtime/doc/channel.txt b/runtime/doc/channel.txt
index e91a40356..668dcad4f 100644
--- a/runtime/doc/channel.txt
+++ b/runtime/doc/channel.txt
@@ -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*
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 3e9985843..e37dec789 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -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.
diff --git a/runtime/doc/filetype.txt b/runtime/doc/filetype.txt
index 11ccdc505..cc1e53ccb 100644
--- a/runtime/doc/filetype.txt
+++ b/runtime/doc/filetype.txt
@@ -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
diff --git a/runtime/doc/pattern.txt b/runtime/doc/pattern.txt
index e77c1c268..38d172c43 100644
--- a/runtime/doc/pattern.txt
+++ b/runtime/doc/pattern.txt
@@ -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
diff --git a/runtime/doc/quickref.txt b/runtime/doc/quickref.txt
index f42ea82f0..f3b11c93e 100644
--- a/runtime/doc/quickref.txt
+++ b/runtime/doc/quickref.txt
@@ -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'
diff --git a/runtime/doc/starting.txt b/runtime/doc/starting.txt
index 050afcd9f..23546d959 100644
--- a/runtime/doc/starting.txt
+++ b/runtime/doc/starting.txt
@@ -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*
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 1a221ac5f..0d765672e 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -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*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 8b0329c9a..8eb06ddaa 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -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"
diff --git a/runtime/filetype.vim b/runtime/filetype.vim
index 813db93ca..992757157 100644
--- a/runtime/filetype.vim
+++ b/runtime/filetype.vim
@@ -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
diff --git a/runtime/syntax/tidy.vim b/runtime/syntax/tidy.vim
index c24796edd..6371cb5a8 100644
--- a/runtime/syntax/tidy.vim
+++ b/runtime/syntax/tidy.vim
@@ -1,145 +1,135 @@
" 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