]> granicus.if.org Git - vim/commitdiff
Update runtime files
authorBram Moolenaar <Bram@vim.org>
Fri, 6 Apr 2018 09:14:11 +0000 (11:14 +0200)
committerBram Moolenaar <Bram@vim.org>
Fri, 6 Apr 2018 09:14:11 +0000 (11:14 +0200)
runtime/doc/indent.txt
runtime/doc/terminal.txt
runtime/doc/todo.txt
runtime/syntax/lisp.vim
runtime/syntax/ninja.vim
runtime/syntax/sh.vim
runtime/syntax/tex.vim
runtime/syntax/vim.vim
runtime/tools/shtags.pl

index efb0a7d79225f8e70e19e1dfd9ff30982dc20c47..59183007051a03cd465e61ea199c2e9fa8d13f21 100644 (file)
@@ -1,4 +1,4 @@
-*indent.txt*    For Vim version 8.0.  Last change: 2014 Dec 06
+*indent.txt*    For Vim version 8.0.  Last change: 2018 Apr 04
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -414,10 +414,10 @@ The examples below assume a 'shiftwidth' of 4.
                                                        *cino-(*
        (N    When in unclosed parentheses, indent N characters from the line
              with the unclosed parentheses.  Add a 'shiftwidth' for every
-             unclosed parentheses.  When N is 0 or the unclosed parentheses
-             is the first non-white character in its line, line up with the
-             next non-white character after the unclosed parentheses.
-             (default 'shiftwidth' * 2).
+             extra unclosed parentheses.  When N is 0 or the unclosed
+             parentheses is the first non-white character in its line, line
+             up with the next non-white character after the unclosed
+             parentheses.  (default 'shiftwidth' * 2).
 
                cino=                     cino=(0 >
                  if (c1 && (c2 ||          if (c1 && (c2 ||
@@ -428,7 +428,8 @@ The examples below assume a 'shiftwidth' of 4.
                     {                         {
 <
                                                        *cino-u*
-       uN    Same as (N, but for one level deeper.  (default 'shiftwidth').
+       uN    Same as (N, but for one nesting level deeper.
+             (default 'shiftwidth').
 
                cino=                     cino=u2 >
                  if (c123456789            if (c123456789
index 8dc19cbf609eed57f9315685ec3150dff2a547a1..9a1c1d229c5aac5c175530b224f746f0bf132ba0 100644 (file)
@@ -1,4 +1,4 @@
-*terminal.txt* For Vim version 8.0.  Last change: 2018 Mar 26
+*terminal.txt* For Vim version 8.0.  Last change: 2018 Apr 05
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
index f9fa06b42e67a0de490a7b0c330af99b1189df85..98304e88754decf69aa24120eb1b2ba0cc24d1d7 100644 (file)
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 8.0.  Last change: 2018 Mar 29
+*todo.txt*      For Vim version 8.0.  Last change: 2018 Apr 05
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -39,7 +39,12 @@ Terminal emulator window:
 - dump diff sometimes creates a different way of repeating.
    Example: https://api.travis-ci.org/v3/job/359102504/log.txt
   unclear why this can happen.
+- Passing 'term' as $TERM doesn't work in GUI.
 - Still some stuff to implement and bugs to fix, see src/terminal.c
+- GUI: problem with split window and sourcing the current buffer into python?
+    (Blay263, 2018 Mar 31)
+- Terminal debugger: need a way to (re) open the source window, where current
+  position is displayed.
 
 Mode message isn't updated on vertical split. (Alexei Averchenko, 2018 Feb 2,
 #2611)
@@ -50,18 +55,31 @@ Problem with sudo. #2758
 
 Code refactoring, macro for message, #2729
 
+Fix for crash with non-dict argument to job options. (ichizok, #2765)
+
 Patch to enforce c89 compliance. (James McCoy, #2735)
 With fix for Mac from Kazunobu.
 
+Block insert doesn't work if the first line is auto-indented. (Christian
+Brabandt, 2018 Apr 4, #2778)
+
 Errors found with random data:
     heap-buffer-overflow in alist_add (#2472)
 
 Patch to avoid bad highlighting caused by #if. (ichizok, #2731)
 
+Patch to make mkdir() more like the shell command. (James McCoy, #2775)
+
 Implement option_save() and option_restore()?  Or remove the help.
 
+Patch for static analysis warnings. (Christian Brabandt, 2018 Apr 1, #2770)
+
+Patch to refactor ex_helpgrep. (Yegappan, #2766, 2018 Mar 30)
+Also in email, take the one with a test.
+
 Looks like an error for inserting register makes ":file other" not work.
-(Tom M, 2018 Mar 28)
+(Tom M, 2018 Mar 28)  Reset did_emsg after inserting a register.
+Or at the top of the loop? (Apr 4)
 
 Patch to fix mouse pointer after :tselect. (Hirohito Higashi, #2709)
 How to reproduce the problem?
@@ -116,6 +134,7 @@ Patch to add more flags to :ls. (Marcin Szamotulski, #2751)
 
 Does setting 'cursorline' cause syntax highlighting to slow down?  Perhaps is
 mess up the cache?  (Mike Lee Williams, 2018 Jan 27, #2539)
+Also: 'foldtext' is evaluated too often. (Daniel Hahler, #2773)
 
 When using :packadd files under "later" are not used, which is inconsistent
 with packages under "start". (xtal8, #1994)
@@ -158,9 +177,6 @@ applying the diff, etc.
 User dictionary ~/.vim/spell/lang.utf-8.add not used for spell checking until a
 word is re-added to it. (Matej Cepl, 2018 Feb 6)
 
-Problem with mouse scroll in tmux. (fcying, #2419)  Might be caused by patch
-8.0.1309.  Removing "held_button = MOUSE_RELEASE;" helps. (2018 Feb 5)
-
 Fold at end of the buffer behaves inconsistently. (James McCoy, 2017 Oct 9)
 
 With foldmethod=syntax and nofoldenable comment highlighting isn't removed.
index b02eb09d0a5675168d90001506a68555750c8daa..b6aa04b2c797815a628bddf73cb58f1a2a0ecb4f 100644 (file)
@@ -1,9 +1,9 @@
 " Vim syntax file
 " Language:    Lisp
 " Maintainer:  Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
-" Last Change: May 02, 2016
-" Version:     26
-" URL:        http://www.drchip.org/astronaut/vim/index.html#SYNTAX_LISP
+" Last Change: Feb 15, 2018
+" Version:     27
+" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_LISP
 "
 "  Thanks to F Xavier Noria for a list of 978 Common Lisp symbols taken from HyperSpec
 "  Clisp additions courtesy of http://clisp.cvs.sourceforge.net/*checkout*/clisp/clisp/emacs/lisp.vim
@@ -40,8 +40,8 @@ syn case ignore
 
 " ---------------------------------------------------------------------
 " Lists: {{{1
-syn match                      lispSymbol                      contained                       ![^()'`,"; \t]\+!
-syn match                      lispBarSymbol                   contained                       !|..\{-}|!
+syn match lispSymbol   contained       ![^()'`,"; \t]\+!
+syn match lispBarSymbol        contained       !|..\{-}|!
 if exists("g:lisp_rainbow") && g:lisp_rainbow != 0
  syn region lispParen0           matchgroup=hlLevel0 start="`\=(" end=")" skip="|.\{-}|" contains=@lispListCluster,lispParen1
  syn region lispParen1 contained matchgroup=hlLevel1 start="`\=(" end=")" skip="|.\{-}|" contains=@lispListCluster,lispParen2
@@ -71,320 +71,320 @@ syn match lispLeadWhite                   contained                       "^\s\+"
 
 " ---------------------------------------------------------------------
 " Standard Lisp Functions and Macros: {{{1
-syn keyword lispFunc           *                               find-method                                     pprint-indent
-syn keyword lispFunc           **                              find-package                                    pprint-linear
-syn keyword lispFunc           ***                             find-restart                                    pprint-logical-block
-syn keyword lispFunc           +                               find-symbol                                     pprint-newline
-syn keyword lispFunc           ++                              finish-output                                   pprint-pop
-syn keyword lispFunc           +++                             first                                           pprint-tab
-syn keyword lispFunc           -                               fixnum                                          pprint-tabular
-syn keyword lispFunc           /                               flet                                            prin1
-syn keyword lispFunc           //                              float                                           prin1-to-string
-syn keyword lispFunc           ///                             float-digits                                    princ
-syn keyword lispFunc           /=                              float-precision                                 princ-to-string
-syn keyword lispFunc           1+                              float-radix                                     print
-syn keyword lispFunc           1-                              float-sign                                      print-not-readable
-syn keyword lispFunc           <                               floating-point-inexact                          print-not-readable-object
-syn keyword lispFunc           <=                              floating-point-invalid-operation print-object
-syn keyword lispFunc           =                               floating-point-overflow                         print-unreadable-object
-syn keyword lispFunc           >                               floating-point-underflow                        probe-file
-syn keyword lispFunc           >=                              floatp                                          proclaim
-syn keyword lispFunc           abort                           floor                                           prog
-syn keyword lispFunc           abs                             fmakunbound                                     prog*
-syn keyword lispFunc           access                          force-output                                    prog1
-syn keyword lispFunc           acons                           format                                          prog2
-syn keyword lispFunc           acos                            formatter                                       progn
-syn keyword lispFunc           acosh                           fourth                                          program-error
-syn keyword lispFunc           add-method                      fresh-line                                      progv
-syn keyword lispFunc           adjoin                          fround                                          provide
-syn keyword lispFunc           adjust-array                    ftruncate                                       psetf
-syn keyword lispFunc           adjustable-array-p              ftype                                           psetq
-syn keyword lispFunc           allocate-instance               funcall                                         push
-syn keyword lispFunc           alpha-char-p                    function                                        pushnew
-syn keyword lispFunc           alphanumericp                   function-keywords                               putprop
-syn keyword lispFunc           and                             function-lambda-expression                      quote
-syn keyword lispFunc           append                          functionp                                       random
-syn keyword lispFunc           apply                           gbitp                                           random-state
-syn keyword lispFunc           applyhook                       gcd                                             random-state-p
-syn keyword lispFunc           apropos                         generic-function                                rassoc
-syn keyword lispFunc           apropos-list                    gensym                                          rassoc-if
-syn keyword lispFunc           aref                            gentemp                                         rassoc-if-not
-syn keyword lispFunc           arithmetic-error                get                                             ratio
-syn keyword lispFunc           arithmetic-error-operands       get-decoded-time                                rational
-syn keyword lispFunc           arithmetic-error-operation      get-dispatch-macro-character                    rationalize
-syn keyword lispFunc           array                           get-internal-real-time                          rationalp
-syn keyword lispFunc           array-dimension                 get-internal-run-time                           read
-syn keyword lispFunc           array-dimension-limit           get-macro-character                             read-byte
-syn keyword lispFunc           array-dimensions                get-output-stream-string                        read-char
-syn keyword lispFunc           array-displacement              get-properties                                  read-char-no-hang
-syn keyword lispFunc           array-element-type              get-setf-expansion                              read-delimited-list
-syn keyword lispFunc           array-has-fill-pointer-p        get-setf-method                                 read-eval-print
-syn keyword lispFunc           array-in-bounds-p               get-universal-time                              read-from-string
-syn keyword lispFunc           array-rank                      getf                                            read-line
-syn keyword lispFunc           array-rank-limit                gethash                                         read-preserving-whitespace
-syn keyword lispFunc           array-row-major-index           go                                              read-sequence
-syn keyword lispFunc           array-total-size                graphic-char-p                                  reader-error
-syn keyword lispFunc           array-total-size-limit          handler-bind                                    readtable
-syn keyword lispFunc           arrayp                          handler-case                                    readtable-case
-syn keyword lispFunc           ash                             hash-table                                      readtablep
-syn keyword lispFunc           asin                            hash-table-count                                real
-syn keyword lispFunc           asinh                           hash-table-p                                    realp
-syn keyword lispFunc           assert                          hash-table-rehash-size                          realpart
-syn keyword lispFunc           assoc                           hash-table-rehash-threshold                     reduce
-syn keyword lispFunc           assoc-if                        hash-table-size                                 reinitialize-instance
-syn keyword lispFunc           assoc-if-not                    hash-table-test                                 rem
-syn keyword lispFunc           atan                            host-namestring                                 remf
-syn keyword lispFunc           atanh                           identity                                        remhash
-syn keyword lispFunc           atom                            if                                              remove
-syn keyword lispFunc           base-char                       if-exists                                       remove-duplicates
-syn keyword lispFunc           base-string                     ignorable                                       remove-if
-syn keyword lispFunc           bignum                          ignore                                          remove-if-not
-syn keyword lispFunc           bit                             ignore-errors                                   remove-method
-syn keyword lispFunc           bit-and                         imagpart                                        remprop
-syn keyword lispFunc           bit-andc1                       import                                          rename-file
-syn keyword lispFunc           bit-andc2                       in-package                                      rename-package
-syn keyword lispFunc           bit-eqv                         in-package                                      replace
-syn keyword lispFunc           bit-ior                         incf                                            require
-syn keyword lispFunc           bit-nand                        initialize-instance                             rest
-syn keyword lispFunc           bit-nor                         inline                                          restart
-syn keyword lispFunc           bit-not                         input-stream-p                                  restart-bind
-syn keyword lispFunc           bit-orc1                        inspect                                         restart-case
-syn keyword lispFunc           bit-orc2                        int-char                                        restart-name
-syn keyword lispFunc           bit-vector                      integer                                         return
-syn keyword lispFunc           bit-vector-p                    integer-decode-float                            return-from
-syn keyword lispFunc           bit-xor                         integer-length                                  revappend
-syn keyword lispFunc           block                           integerp                                        reverse
-syn keyword lispFunc           boole                           interactive-stream-p                            room
-syn keyword lispFunc           boole-1                         intern                                          rotatef
-syn keyword lispFunc           boole-2                         internal-time-units-per-second                  round
-syn keyword lispFunc           boole-and                       intersection                                    row-major-aref
-syn keyword lispFunc           boole-andc1                     invalid-method-error                            rplaca
-syn keyword lispFunc           boole-andc2                     invoke-debugger                                 rplacd
-syn keyword lispFunc           boole-c1                        invoke-restart                                  safety
-syn keyword lispFunc           boole-c2                        invoke-restart-interactively                    satisfies
-syn keyword lispFunc           boole-clr                       isqrt                                           sbit
-syn keyword lispFunc           boole-eqv                       keyword                                         scale-float
-syn keyword lispFunc           boole-ior                       keywordp                                        schar
-syn keyword lispFunc           boole-nand                      labels                                          search
-syn keyword lispFunc           boole-nor                       lambda                                          second
-syn keyword lispFunc           boole-orc1                      lambda-list-keywords                            sequence
-syn keyword lispFunc           boole-orc2                      lambda-parameters-limit                         serious-condition
-syn keyword lispFunc           boole-set                       last                                            set
-syn keyword lispFunc           boole-xor                       lcm                                             set-char-bit
-syn keyword lispFunc           boolean                         ldb                                             set-difference
-syn keyword lispFunc           both-case-p                     ldb-test                                        set-dispatch-macro-character
-syn keyword lispFunc           boundp                          ldiff                                           set-exclusive-or
-syn keyword lispFunc           break                           least-negative-double-float                     set-macro-character
-syn keyword lispFunc           broadcast-stream                least-negative-long-float                       set-pprint-dispatch
-syn keyword lispFunc           broadcast-stream-streams        least-negative-normalized-double-float          set-syntax-from-char
-syn keyword lispFunc           built-in-class                  least-negative-normalized-long-float            setf
-syn keyword lispFunc           butlast                         least-negative-normalized-short-float           setq
-syn keyword lispFunc           byte                            least-negative-normalized-single-float          seventh
-syn keyword lispFunc           byte-position                   least-negative-short-float                      shadow
-syn keyword lispFunc           byte-size                       least-negative-single-float                     shadowing-import
-syn keyword lispFunc           call-arguments-limit            least-positive-double-float                     shared-initialize
-syn keyword lispFunc           call-method                     least-positive-long-float                       shiftf
-syn keyword lispFunc           call-next-method                least-positive-normalized-double-float          short-float
-syn keyword lispFunc           capitalize                      least-positive-normalized-long-float            short-float-epsilon
-syn keyword lispFunc           car                             least-positive-normalized-short-float           short-float-negative-epsilon
-syn keyword lispFunc           case                            least-positive-normalized-single-float          short-site-name
-syn keyword lispFunc           catch                           least-positive-short-float                      signal
-syn keyword lispFunc           ccase                           least-positive-single-float                     signed-byte
-syn keyword lispFunc           cdr                             length                                          signum
-syn keyword lispFunc           ceiling                         let                                             simple-condition
-syn keyword lispFunc           cell-error                      let*                                            simple-array
-syn keyword lispFunc           cell-error-name                 lisp                                            simple-base-string
-syn keyword lispFunc           cerror                          lisp-implementation-type                        simple-bit-vector
-syn keyword lispFunc           change-class                    lisp-implementation-version                     simple-bit-vector-p
-syn keyword lispFunc           char                            list                                            simple-condition-format-arguments
-syn keyword lispFunc           char-bit                        list*                                           simple-condition-format-control
-syn keyword lispFunc           char-bits                       list-all-packages                               simple-error
-syn keyword lispFunc           char-bits-limit                 list-length                                     simple-string
-syn keyword lispFunc           char-code                       listen                                          simple-string-p
-syn keyword lispFunc           char-code-limit                 listp                                           simple-type-error
-syn keyword lispFunc           char-control-bit                load                                            simple-vector
-syn keyword lispFunc           char-downcase                   load-logical-pathname-translations              simple-vector-p
-syn keyword lispFunc           char-equal                      load-time-value                                 simple-warning
-syn keyword lispFunc           char-font                       locally                                         sin
-syn keyword lispFunc           char-font-limit                 log                                             single-flaot-epsilon
-syn keyword lispFunc           char-greaterp                   logand                                          single-float
-syn keyword lispFunc           char-hyper-bit                  logandc1                                        single-float-epsilon
-syn keyword lispFunc           char-int                        logandc2                                        single-float-negative-epsilon
-syn keyword lispFunc           char-lessp                      logbitp                                         sinh
-syn keyword lispFunc           char-meta-bit                   logcount                                        sixth
-syn keyword lispFunc           char-name                       logeqv                                          sleep
-syn keyword lispFunc           char-not-equal                  logical-pathname                                slot-boundp
-syn keyword lispFunc           char-not-greaterp               logical-pathname-translations                   slot-exists-p
-syn keyword lispFunc           char-not-lessp                  logior                                          slot-makunbound
-syn keyword lispFunc           char-super-bit                  lognand                                         slot-missing
-syn keyword lispFunc           char-upcase                     lognor                                          slot-unbound
-syn keyword lispFunc           char/=                          lognot                                          slot-value
-syn keyword lispFunc           char<                           logorc1                                         software-type
-syn keyword lispFunc           char<=                          logorc2                                         software-version
-syn keyword lispFunc           char=                           logtest                                         some
-syn keyword lispFunc           char>                           logxor                                          sort
-syn keyword lispFunc           char>=                          long-float                                      space
-syn keyword lispFunc           character                       long-float-epsilon                              special
-syn keyword lispFunc           characterp                      long-float-negative-epsilon                     special-form-p
-syn keyword lispFunc           check-type                      long-site-name                                  special-operator-p
-syn keyword lispFunc           cis                             loop                                            speed
-syn keyword lispFunc           class                           loop-finish                                     sqrt
-syn keyword lispFunc           class-name                      lower-case-p                                    stable-sort
-syn keyword lispFunc           class-of                        machine-instance                                standard
-syn keyword lispFunc           clear-input                     machine-type                                    standard-char
-syn keyword lispFunc           clear-output                    machine-version                                 standard-char-p
-syn keyword lispFunc           close                           macro-function                                  standard-class
-syn keyword lispFunc           clrhash                         macroexpand                                     standard-generic-function
-syn keyword lispFunc           code-char                       macroexpand-1                                   standard-method
-syn keyword lispFunc           coerce                          macroexpand-l                                   standard-object
-syn keyword lispFunc           commonp                         macrolet                                        step
-syn keyword lispFunc           compilation-speed               make-array                                      storage-condition
-syn keyword lispFunc           compile                         make-array                                      store-value
-syn keyword lispFunc           compile-file                    make-broadcast-stream                           stream
-syn keyword lispFunc           compile-file-pathname           make-char                                       stream-element-type
-syn keyword lispFunc           compiled-function               make-concatenated-stream                        stream-error
-syn keyword lispFunc           compiled-function-p             make-condition                                  stream-error-stream
-syn keyword lispFunc           compiler-let                    make-dispatch-macro-character                   stream-external-format
-syn keyword lispFunc           compiler-macro                  make-echo-stream                                streamp
-syn keyword lispFunc           compiler-macro-function make-hash-table                                         streamup
-syn keyword lispFunc           complement                      make-instance                                   string
-syn keyword lispFunc           complex                         make-instances-obsolete                         string-capitalize
-syn keyword lispFunc           complexp                        make-list                                       string-char
-syn keyword lispFunc           compute-applicable-methods      make-load-form                                  string-char-p
-syn keyword lispFunc           compute-restarts                make-load-form-saving-slots                     string-downcase
-syn keyword lispFunc           concatenate                     make-method                                     string-equal
-syn keyword lispFunc           concatenated-stream             make-package                                    string-greaterp
-syn keyword lispFunc           concatenated-stream-streams     make-pathname                                   string-left-trim
-syn keyword lispFunc           cond                            make-random-state                               string-lessp
-syn keyword lispFunc           condition                       make-sequence                                   string-not-equal
-syn keyword lispFunc           conjugate                       make-string                                     string-not-greaterp
-syn keyword lispFunc           cons                            make-string-input-stream                        string-not-lessp
-syn keyword lispFunc           consp                           make-string-output-stream                       string-right-strim
-syn keyword lispFunc           constantly                      make-symbol                                     string-right-trim
-syn keyword lispFunc           constantp                       make-synonym-stream                             string-stream
-syn keyword lispFunc           continue                        make-two-way-stream                             string-trim
-syn keyword lispFunc           control-error                   makunbound                                      string-upcase
-syn keyword lispFunc           copy-alist                      map                                             string/=
-syn keyword lispFunc           copy-list                       map-into                                        string<
-syn keyword lispFunc           copy-pprint-dispatch            mapc                                            string<=
-syn keyword lispFunc           copy-readtable                  mapcan                                          string=
-syn keyword lispFunc           copy-seq                        mapcar                                          string>
-syn keyword lispFunc           copy-structure                  mapcon                                          string>=
-syn keyword lispFunc           copy-symbol                     maphash                                         stringp
-syn keyword lispFunc           copy-tree                       mapl                                            structure
-syn keyword lispFunc           cos                             maplist                                         structure-class
-syn keyword lispFunc           cosh                            mask-field                                      structure-object
-syn keyword lispFunc           count                           max                                             style-warning
-syn keyword lispFunc           count-if                        member                                          sublim
-syn keyword lispFunc           count-if-not                    member-if                                       sublis
-syn keyword lispFunc           ctypecase                       member-if-not                                   subseq
-syn keyword lispFunc           debug                           merge                                           subsetp
-syn keyword lispFunc           decf                            merge-pathname                                  subst
-syn keyword lispFunc           declaim                         merge-pathnames                                 subst-if
-syn keyword lispFunc           declaration                     method                                          subst-if-not
-syn keyword lispFunc           declare                         method-combination                              substitute
-syn keyword lispFunc           decode-float                    method-combination-error                        substitute-if
-syn keyword lispFunc           decode-universal-time           method-qualifiers                               substitute-if-not
-syn keyword lispFunc           defclass                        min                                             subtypep
-syn keyword lispFunc           defconstant                     minusp                                          svref
-syn keyword lispFunc           defgeneric                      mismatch                                        sxhash
-syn keyword lispFunc           define-compiler-macro           mod                                             symbol
-syn keyword lispFunc           define-condition                most-negative-double-float                      symbol-function
-syn keyword lispFunc           define-method-combination       most-negative-fixnum                            symbol-macrolet
-syn keyword lispFunc           define-modify-macro             most-negative-long-float                        symbol-name
-syn keyword lispFunc           define-setf-expander            most-negative-short-float                       symbol-package
-syn keyword lispFunc           define-setf-method              most-negative-single-float                      symbol-plist
-syn keyword lispFunc           define-symbol-macro             most-positive-double-float                      symbol-value
-syn keyword lispFunc           defmacro                        most-positive-fixnum                            symbolp
-syn keyword lispFunc           defmethod                       most-positive-long-float                        synonym-stream
-syn keyword lispFunc           defpackage                      most-positive-short-float                       synonym-stream-symbol
-syn keyword lispFunc           defparameter                    most-positive-single-float                      sys
-syn keyword lispFunc           defsetf                         muffle-warning                                  system
-syn keyword lispFunc           defstruct                       multiple-value-bind                             t
-syn keyword lispFunc           deftype                         multiple-value-call                             tagbody
-syn keyword lispFunc           defun                           multiple-value-list                             tailp
-syn keyword lispFunc           defvar                          multiple-value-prog1                            tan
-syn keyword lispFunc           delete                          multiple-value-seteq                            tanh
-syn keyword lispFunc           delete-duplicates               multiple-value-setq                             tenth
-syn keyword lispFunc           delete-file                     multiple-values-limit                           terpri
-syn keyword lispFunc           delete-if                       name-char                                       the
-syn keyword lispFunc           delete-if-not                   namestring                                      third
-syn keyword lispFunc           delete-package                  nbutlast                                        throw
-syn keyword lispFunc           denominator                     nconc                                           time
-syn keyword lispFunc           deposit-field                   next-method-p                                   trace
-syn keyword lispFunc           describe                        nil                                             translate-logical-pathname
-syn keyword lispFunc           describe-object                 nintersection                                   translate-pathname
-syn keyword lispFunc           destructuring-bind              ninth                                           tree-equal
-syn keyword lispFunc           digit-char                      no-applicable-method                            truename
-syn keyword lispFunc           digit-char-p                    no-next-method                                  truncase
-syn keyword lispFunc           directory                       not                                             truncate
-syn keyword lispFunc           directory-namestring            notany                                          two-way-stream
-syn keyword lispFunc           disassemble                     notevery                                        two-way-stream-input-stream
-syn keyword lispFunc           division-by-zero                notinline                                       two-way-stream-output-stream
-syn keyword lispFunc           do                              nreconc                                         type
-syn keyword lispFunc           do*                             nreverse                                        type-error
-syn keyword lispFunc           do-all-symbols                  nset-difference                                 type-error-datum
-syn keyword lispFunc           do-exeternal-symbols            nset-exclusive-or                               type-error-expected-type
-syn keyword lispFunc           do-external-symbols             nstring                                         type-of
-syn keyword lispFunc           do-symbols                      nstring-capitalize                              typecase
-syn keyword lispFunc           documentation                   nstring-downcase                                typep
-syn keyword lispFunc           dolist                          nstring-upcase                                  unbound-slot
-syn keyword lispFunc           dotimes                         nsublis                                         unbound-slot-instance
-syn keyword lispFunc           double-float                    nsubst                                          unbound-variable
-syn keyword lispFunc           double-float-epsilon            nsubst-if                                       undefined-function
-syn keyword lispFunc           double-float-negative-epsilon   nsubst-if-not                                   unexport
-syn keyword lispFunc           dpb                             nsubstitute                                     unintern
-syn keyword lispFunc           dribble                         nsubstitute-if                                  union
-syn keyword lispFunc           dynamic-extent                  nsubstitute-if-not                              unless
-syn keyword lispFunc           ecase                           nth                                             unread
-syn keyword lispFunc           echo-stream                     nth-value                                       unread-char
-syn keyword lispFunc           echo-stream-input-stream        nthcdr                                          unsigned-byte
-syn keyword lispFunc           echo-stream-output-stream       null                                            untrace
-syn keyword lispFunc           ed                              number                                          unuse-package
-syn keyword lispFunc           eighth                          numberp                                         unwind-protect
-syn keyword lispFunc           elt                             numerator                                       update-instance-for-different-class
-syn keyword lispFunc           encode-universal-time           nunion                                          update-instance-for-redefined-class
-syn keyword lispFunc           end-of-file                     oddp                                            upgraded-array-element-type
-syn keyword lispFunc           endp                            open                                            upgraded-complex-part-type
-syn keyword lispFunc           enough-namestring               open-stream-p                                   upper-case-p
-syn keyword lispFunc           ensure-directories-exist        optimize                                        use-package
-syn keyword lispFunc           ensure-generic-function or                                                      use-value
-syn keyword lispFunc           eq                              otherwise                                       user
-syn keyword lispFunc           eql                             output-stream-p                                 user-homedir-pathname
-syn keyword lispFunc           equal                           package                                         values
-syn keyword lispFunc           equalp                          package-error                                   values-list
-syn keyword lispFunc           error                           package-error-package                           vector
-syn keyword lispFunc           etypecase                       package-name                                    vector-pop
-syn keyword lispFunc           eval                            package-nicknames                               vector-push
-syn keyword lispFunc           eval-when                       package-shadowing-symbols                       vector-push-extend
-syn keyword lispFunc           evalhook                        package-use-list                                vectorp
-syn keyword lispFunc           evenp                           package-used-by-list                            warn
-syn keyword lispFunc           every                           packagep                                        warning
-syn keyword lispFunc           exp                             pairlis                                         when
-syn keyword lispFunc           export                          parse-error                                     wild-pathname-p
-syn keyword lispFunc           expt                            parse-integer                                   with-accessors
-syn keyword lispFunc           extended-char                   parse-namestring                                with-compilation-unit
-syn keyword lispFunc           fboundp                         pathname                                        with-condition-restarts
-syn keyword lispFunc           fceiling                        pathname-device                                 with-hash-table-iterator
-syn keyword lispFunc           fdefinition                     pathname-directory                              with-input-from-string
-syn keyword lispFunc           ffloor                          pathname-host                                   with-open-file
-syn keyword lispFunc           fifth                           pathname-match-p                                with-open-stream
-syn keyword lispFunc           file-author                     pathname-name                                   with-output-to-string
-syn keyword lispFunc           file-error                      pathname-type                                   with-package-iterator
-syn keyword lispFunc           file-error-pathname             pathname-version                                with-simple-restart
-syn keyword lispFunc           file-length                     pathnamep                                       with-slots
-syn keyword lispFunc           file-namestring                 peek-char                                       with-standard-io-syntax
-syn keyword lispFunc           file-position                   phase                                           write
-syn keyword lispFunc           file-stream                     pi                                              write-byte
-syn keyword lispFunc           file-string-length              plusp                                           write-char
-syn keyword lispFunc           file-write-date                 pop                                             write-line
-syn keyword lispFunc           fill                            position                                        write-sequence
-syn keyword lispFunc           fill-pointer                    position-if                                     write-string
-syn keyword lispFunc           find                            position-if-not                                 write-to-string
-syn keyword lispFunc           find-all-symbols                pprint                                          y-or-n-p
-syn keyword lispFunc           find-class                      pprint-dispatch                                 yes-or-no-p
-syn keyword lispFunc           find-if                         pprint-exit-if-list-exhausted                   zerop
-syn keyword lispFunc           find-if-not                     pprint-fill
+syn keyword lispFunc           <                               find-method                             pprint-indent
+syn keyword lispFunc           <=                              find-package                            pprint-linear
+syn keyword lispFunc           =                               find-restart                            pprint-logical-block
+syn keyword lispFunc           >                               find-symbol                             pprint-newline
+syn keyword lispFunc           >=                              finish-output                           pprint-pop
+syn keyword lispFunc           -                               first                                   pprint-tab
+syn keyword lispFunc           /                               fixnum                                  pprint-tabular
+syn keyword lispFunc           /=                              flet                                    prin1
+syn keyword lispFunc           //                              float                                   prin1-to-string
+syn keyword lispFunc           ///                             float-digits                            princ
+syn keyword lispFunc           *                               floating-point-inexact                  princ-to-string
+syn keyword lispFunc           **                              floating-point-invalid-operation        print
+syn keyword lispFunc           ***                             floating-point-overflow                 print-not-readable
+syn keyword lispFunc           +                               floating-point-underflow                print-not-readable-object
+syn keyword lispFunc           ++                              floatp                                  print-object
+syn keyword lispFunc           +++                             float-precision                         print-unreadable-object
+syn keyword lispFunc           1-                              float-radix                             probe-file
+syn keyword lispFunc           1+                              float-sign                              proclaim
+syn keyword lispFunc           abort                           floor                                   prog
+syn keyword lispFunc           abs                             fmakunbound                             prog*
+syn keyword lispFunc           access                          force-output                            prog1
+syn keyword lispFunc           acons                           format                                  prog2
+syn keyword lispFunc           acos                            formatter                               progn
+syn keyword lispFunc           acosh                           fourth                                  program-error
+syn keyword lispFunc           add-method                      fresh-line                              progv
+syn keyword lispFunc           adjoin                          fround                                  provide
+syn keyword lispFunc           adjustable-array-p              ftruncate                               psetf
+syn keyword lispFunc           adjust-array                    ftype                                   psetq
+syn keyword lispFunc           allocate-instance               funcall                                 push
+syn keyword lispFunc           alpha-char-p                    function                                pushnew
+syn keyword lispFunc           alphanumericp                   function-keywords                       putprop
+syn keyword lispFunc           and                             function-lambda-expression              quote
+syn keyword lispFunc           append                          functionp                               random
+syn keyword lispFunc           apply                           gbitp                                   random-state
+syn keyword lispFunc           applyhook                       gcd                                     random-state-p
+syn keyword lispFunc           apropos                         generic-function                        rassoc
+syn keyword lispFunc           apropos-list                    gensym                                  rassoc-if
+syn keyword lispFunc           aref                            gentemp                                 rassoc-if-not
+syn keyword lispFunc           arithmetic-error                get                                     ratio
+syn keyword lispFunc           arithmetic-error-operands       get-decoded-time                        rational
+syn keyword lispFunc           arithmetic-error-operation      get-dispatch-macro-character            rationalize
+syn keyword lispFunc           array                           getf                                    rationalp
+syn keyword lispFunc           array-dimension                 gethash                                 read
+syn keyword lispFunc           array-dimension-limit           get-internal-real-time                  read-byte
+syn keyword lispFunc           array-dimensions                get-internal-run-time                   read-char
+syn keyword lispFunc           array-displacement              get-macro-character                     read-char-no-hang
+syn keyword lispFunc           array-element-type              get-output-stream-string                read-delimited-list
+syn keyword lispFunc           array-has-fill-pointer-p        get-properties                          reader-error
+syn keyword lispFunc           array-in-bounds-p               get-setf-expansion                      read-eval-print
+syn keyword lispFunc           arrayp                          get-setf-method                         read-from-string
+syn keyword lispFunc           array-rank                      get-universal-time                      read-line
+syn keyword lispFunc           array-rank-limit                go                                      read-preserving-whitespace
+syn keyword lispFunc           array-row-major-index           graphic-char-p                          read-sequence
+syn keyword lispFunc           array-total-size                handler-bind                            readtable
+syn keyword lispFunc           array-total-size-limit          handler-case                            readtable-case
+syn keyword lispFunc           ash                             hash-table                              readtablep
+syn keyword lispFunc           asin                            hash-table-count                        real
+syn keyword lispFunc           asinh                           hash-table-p                            realp
+syn keyword lispFunc           assert                          hash-table-rehash-size                  realpart
+syn keyword lispFunc           assoc                           hash-table-rehash-threshold             reduce
+syn keyword lispFunc           assoc-if                        hash-table-size                         reinitialize-instance
+syn keyword lispFunc           assoc-if-not                    hash-table-test                         rem
+syn keyword lispFunc           atan                            host-namestring                         remf
+syn keyword lispFunc           atanh                           identity                                remhash
+syn keyword lispFunc           atom                            if                                      remove
+syn keyword lispFunc           base-char                       if-exists                               remove-duplicates
+syn keyword lispFunc           base-string                     ignorable                               remove-if
+syn keyword lispFunc           bignum                          ignore                                  remove-if-not
+syn keyword lispFunc           bit                             ignore-errors                           remove-method
+syn keyword lispFunc           bit-and                         imagpart                                remprop
+syn keyword lispFunc           bit-andc1                       import                                  rename-file
+syn keyword lispFunc           bit-andc2                       incf                                    rename-package
+syn keyword lispFunc           bit-eqv                         initialize-instance                     replace
+syn keyword lispFunc           bit-ior                         inline                                  require
+syn keyword lispFunc           bit-nand                        in-package                              rest
+syn keyword lispFunc           bit-nor                         in-package                              restart
+syn keyword lispFunc           bit-not                         input-stream-p                          restart-bind
+syn keyword lispFunc           bit-orc1                        inspect                                 restart-case
+syn keyword lispFunc           bit-orc2                        int-char                                restart-name
+syn keyword lispFunc           bit-vector                      integer                                 return
+syn keyword lispFunc           bit-vector-p                    integer-decode-float                    return-from
+syn keyword lispFunc           bit-xor                         integer-length                          revappend
+syn keyword lispFunc           block                           integerp                                reverse
+syn keyword lispFunc           boole                           interactive-stream-p                    room
+syn keyword lispFunc           boole-1                         intern                                  rotatef
+syn keyword lispFunc           boole-2                         internal-time-units-per-second          round
+syn keyword lispFunc           boolean                         intersection                            row-major-aref
+syn keyword lispFunc           boole-and                       invalid-method-error                    rplaca
+syn keyword lispFunc           boole-andc1                     invoke-debugger                         rplacd
+syn keyword lispFunc           boole-andc2                     invoke-restart                          safety
+syn keyword lispFunc           boole-c1                        invoke-restart-interactively            satisfies
+syn keyword lispFunc           boole-c2                        isqrt                                   sbit
+syn keyword lispFunc           boole-clr                       keyword                                 scale-float
+syn keyword lispFunc           boole-eqv                       keywordp                                schar
+syn keyword lispFunc           boole-ior                       labels                                  search
+syn keyword lispFunc           boole-nand                      lambda                                  second
+syn keyword lispFunc           boole-nor                       lambda-list-keywords                    sequence
+syn keyword lispFunc           boole-orc1                      lambda-parameters-limit                 serious-condition
+syn keyword lispFunc           boole-orc2                      last                                    set
+syn keyword lispFunc           boole-set                       lcm                                     set-char-bit
+syn keyword lispFunc           boole-xor                       ldb                                     set-difference
+syn keyword lispFunc           both-case-p                     ldb-test                                set-dispatch-macro-character
+syn keyword lispFunc           boundp                          ldiff                                   set-exclusive-or
+syn keyword lispFunc           break                           least-negative-double-float             setf
+syn keyword lispFunc           broadcast-stream                least-negative-long-float               set-macro-character
+syn keyword lispFunc           broadcast-stream-streams        least-negative-normalized-double-float  set-pprint-dispatch
+syn keyword lispFunc           built-in-class                  least-negative-normalized-long-float    setq
+syn keyword lispFunc           butlast                         least-negative-normalized-short-float   set-syntax-from-char
+syn keyword lispFunc           byte                            least-negative-normalized-single-float  seventh
+syn keyword lispFunc           byte-position                   least-negative-short-float              shadow
+syn keyword lispFunc           byte-size                       least-negative-single-float             shadowing-import
+syn keyword lispFunc           call-arguments-limit            least-positive-double-float             shared-initialize
+syn keyword lispFunc           call-method                     least-positive-long-float               shiftf
+syn keyword lispFunc           call-next-method                least-positive-normalized-double-float  short-float
+syn keyword lispFunc           capitalize                      least-positive-normalized-long-float    short-float-epsilon
+syn keyword lispFunc           car                             least-positive-normalized-short-float   short-float-negative-epsilon
+syn keyword lispFunc           case                            least-positive-normalized-single-float  short-site-name
+syn keyword lispFunc           catch                           least-positive-short-float              signal
+syn keyword lispFunc           ccase                           least-positive-single-float             signed-byte
+syn keyword lispFunc           cdr                             length                                  signum
+syn keyword lispFunc           ceiling                         let                                     simple-array
+syn keyword lispFunc           cell-error                      let*                                    simple-base-string
+syn keyword lispFunc           cell-error-name                 lisp                                    simple-bit-vector
+syn keyword lispFunc           cerror                          lisp-implementation-type                simple-bit-vector-p
+syn keyword lispFunc           change-class                    lisp-implementation-version             simple-condition
+syn keyword lispFunc           char                            list                                    simple-condition-format-arguments
+syn keyword lispFunc           char<                           list*                                   simple-condition-format-control
+syn keyword lispFunc           char<=                          list-all-packages                       simple-error
+syn keyword lispFunc           char=                           listen                                  simple-string
+syn keyword lispFunc           char>                           list-length                             simple-string-p
+syn keyword lispFunc           char>=                          listp                                   simple-type-error
+syn keyword lispFunc           char/=                          load                                    simple-vector
+syn keyword lispFunc           character                       load-logical-pathname-translations      simple-vector-p
+syn keyword lispFunc           characterp                      load-time-value                         simple-warning
+syn keyword lispFunc           char-bit                        locally                                 sin
+syn keyword lispFunc           char-bits                       log                                     single-flaot-epsilon
+syn keyword lispFunc           char-bits-limit                 logand                                  single-float
+syn keyword lispFunc           char-code                       logandc1                                single-float-epsilon
+syn keyword lispFunc           char-code-limit                 logandc2                                single-float-negative-epsilon
+syn keyword lispFunc           char-control-bit                logbitp                                 sinh
+syn keyword lispFunc           char-downcase                   logcount                                sixth
+syn keyword lispFunc           char-equal                      logeqv                                  sleep
+syn keyword lispFunc           char-font                       logical-pathname                        slot-boundp
+syn keyword lispFunc           char-font-limit                 logical-pathname-translations           slot-exists-p
+syn keyword lispFunc           char-greaterp                   logior                                  slot-makunbound
+syn keyword lispFunc           char-hyper-bit                  lognand                                 slot-missing
+syn keyword lispFunc           char-int                        lognor                                  slot-unbound
+syn keyword lispFunc           char-lessp                      lognot                                  slot-value
+syn keyword lispFunc           char-meta-bit                   logorc1                                 software-type
+syn keyword lispFunc           char-name                       logorc2                                 software-version
+syn keyword lispFunc           char-not-equal                  logtest                                 some
+syn keyword lispFunc           char-not-greaterp               logxor                                  sort
+syn keyword lispFunc           char-not-lessp                  long-float                              space
+syn keyword lispFunc           char-super-bit                  long-float-epsilon                      special
+syn keyword lispFunc           char-upcase                     long-float-negative-epsilon             special-form-p
+syn keyword lispFunc           check-type                      long-site-name                          special-operator-p
+syn keyword lispFunc           cis                             loop                                    speed
+syn keyword lispFunc           class                           loop-finish                             sqrt
+syn keyword lispFunc           class-name                      lower-case-p                            stable-sort
+syn keyword lispFunc           class-of                        machine-instance                        standard
+syn keyword lispFunc           clear-input                     machine-type                            standard-char
+syn keyword lispFunc           clear-output                    machine-version                         standard-char-p
+syn keyword lispFunc           close                           macroexpand                             standard-class
+syn keyword lispFunc           clrhash                         macroexpand-1                           standard-generic-function
+syn keyword lispFunc           code-char                       macroexpand-l                           standard-method
+syn keyword lispFunc           coerce                          macro-function                          standard-object
+syn keyword lispFunc           commonp                         macrolet                                step
+syn keyword lispFunc           compilation-speed               make-array                              storage-condition
+syn keyword lispFunc           compile                         make-array                              store-value
+syn keyword lispFunc           compiled-function               make-broadcast-stream                   stream
+syn keyword lispFunc           compiled-function-p             make-char                               stream-element-type
+syn keyword lispFunc           compile-file                    make-concatenated-stream                stream-error
+syn keyword lispFunc           compile-file-pathname           make-condition                          stream-error-stream
+syn keyword lispFunc           compiler-let                    make-dispatch-macro-character           stream-external-format
+syn keyword lispFunc           compiler-macro                  make-echo-stream                        streamp
+syn keyword lispFunc           compiler-macro-function         make-hash-table                         streamup
+syn keyword lispFunc           complement                      make-instance                           string
+syn keyword lispFunc           complex                         make-instances-obsolete                 string<
+syn keyword lispFunc           complexp                        make-list                               string<=
+syn keyword lispFunc           compute-applicable-methods      make-load-form                          string=
+syn keyword lispFunc           compute-restarts                make-load-form-saving-slots             string>
+syn keyword lispFunc           concatenate                     make-method                             string>=
+syn keyword lispFunc           concatenated-stream             make-package                            string/=
+syn keyword lispFunc           concatenated-stream-streams     make-pathname                           string-capitalize
+syn keyword lispFunc           cond                            make-random-state                       string-char
+syn keyword lispFunc           condition                       make-sequence                           string-char-p
+syn keyword lispFunc           conjugate                       make-string                             string-downcase
+syn keyword lispFunc           cons                            make-string-input-stream                string-equal
+syn keyword lispFunc           consp                           make-string-output-stream               string-greaterp
+syn keyword lispFunc           constantly                      make-symbol                             string-left-trim
+syn keyword lispFunc           constantp                       make-synonym-stream                     string-lessp
+syn keyword lispFunc           continue                        make-two-way-stream                     string-not-equal
+syn keyword lispFunc           control-error                   makunbound                              string-not-greaterp
+syn keyword lispFunc           copy-alist                      map                                     string-not-lessp
+syn keyword lispFunc           copy-list                       mapc                                    stringp
+syn keyword lispFunc           copy-pprint-dispatch            mapcan                                  string-right-strim
+syn keyword lispFunc           copy-readtable                  mapcar                                  string-right-trim
+syn keyword lispFunc           copy-seq                        mapcon                                  string-stream
+syn keyword lispFunc           copy-structure                  maphash                                 string-trim
+syn keyword lispFunc           copy-symbol                     map-into                                string-upcase
+syn keyword lispFunc           copy-tree                       mapl                                    structure
+syn keyword lispFunc           cos                             maplist                                 structure-class
+syn keyword lispFunc           cosh                            mask-field                              structure-object
+syn keyword lispFunc           count                           max                                     style-warning
+syn keyword lispFunc           count-if                        member                                  sublim
+syn keyword lispFunc           count-if-not                    member-if                               sublis
+syn keyword lispFunc           ctypecase                       member-if-not                           subseq
+syn keyword lispFunc           debug                           merge                                   subsetp
+syn keyword lispFunc           decf                            merge-pathname                          subst
+syn keyword lispFunc           declaim                         merge-pathnames                         subst-if
+syn keyword lispFunc           declaration                     method                                  subst-if-not
+syn keyword lispFunc           declare                         method-combination                      substitute
+syn keyword lispFunc           decode-float                    method-combination-error                substitute-if
+syn keyword lispFunc           decode-universal-time           method-qualifiers                       substitute-if-not
+syn keyword lispFunc           defclass                        min                                     subtypep
+syn keyword lispFunc           defconstant                     minusp                                  svref
+syn keyword lispFunc           defgeneric                      mismatch                                sxhash
+syn keyword lispFunc           define-compiler-macro           mod                                     symbol
+syn keyword lispFunc           define-condition                most-negative-double-float              symbol-function
+syn keyword lispFunc           define-method-combination       most-negative-fixnum                    symbol-macrolet
+syn keyword lispFunc           define-modify-macro             most-negative-long-float                symbol-name
+syn keyword lispFunc           define-setf-expander            most-negative-short-float               symbolp
+syn keyword lispFunc           define-setf-method              most-negative-single-float              symbol-package
+syn keyword lispFunc           define-symbol-macro             most-positive-double-float              symbol-plist
+syn keyword lispFunc           defmacro                        most-positive-fixnum                    symbol-value
+syn keyword lispFunc           defmethod                       most-positive-long-float                synonym-stream
+syn keyword lispFunc           defpackage                      most-positive-short-float               synonym-stream-symbol
+syn keyword lispFunc           defparameter                    most-positive-single-float              sys
+syn keyword lispFunc           defsetf                         muffle-warning                          system
+syn keyword lispFunc           defstruct                       multiple-value-bind                     t
+syn keyword lispFunc           deftype                         multiple-value-call                     tagbody
+syn keyword lispFunc           defun                           multiple-value-list                     tailp
+syn keyword lispFunc           defvar                          multiple-value-prog1                    tan
+syn keyword lispFunc           delete                          multiple-value-seteq                    tanh
+syn keyword lispFunc           delete-duplicates               multiple-value-setq                     tenth
+syn keyword lispFunc           delete-file                     multiple-values-limit                   terpri
+syn keyword lispFunc           delete-if                       name-char                               the
+syn keyword lispFunc           delete-if-not                   namestring                              third
+syn keyword lispFunc           delete-package                  nbutlast                                throw
+syn keyword lispFunc           denominator                     nconc                                   time
+syn keyword lispFunc           deposit-field                   next-method-p                           trace
+syn keyword lispFunc           describe                        nil                                     translate-logical-pathname
+syn keyword lispFunc           describe-object                 nintersection                           translate-pathname
+syn keyword lispFunc           destructuring-bind              ninth                                   tree-equal
+syn keyword lispFunc           digit-char                      no-applicable-method                    truename
+syn keyword lispFunc           digit-char-p                    no-next-method                          truncase
+syn keyword lispFunc           directory                       not                                     truncate
+syn keyword lispFunc           directory-namestring            notany                                  two-way-stream
+syn keyword lispFunc           disassemble                     notevery                                two-way-stream-input-stream
+syn keyword lispFunc           division-by-zero                notinline                               two-way-stream-output-stream
+syn keyword lispFunc           do                              nreconc                                 type
+syn keyword lispFunc           do*                             nreverse                                typecase
+syn keyword lispFunc           do-all-symbols                  nset-difference                         type-error
+syn keyword lispFunc           documentation                   nset-exclusive-or                       type-error-datum
+syn keyword lispFunc           do-exeternal-symbols            nstring                                 type-error-expected-type
+syn keyword lispFunc           do-external-symbols             nstring-capitalize                      type-of
+syn keyword lispFunc           dolist                          nstring-downcase                        typep
+syn keyword lispFunc           do-symbols                      nstring-upcase                          unbound-slot
+syn keyword lispFunc           dotimes                         nsublis                                 unbound-slot-instance
+syn keyword lispFunc           double-float                    nsubst                                  unbound-variable
+syn keyword lispFunc           double-float-epsilon            nsubst-if                               undefined-function
+syn keyword lispFunc           double-float-negative-epsilon   nsubst-if-not                           unexport
+syn keyword lispFunc           dpb                             nsubstitute                             unintern
+syn keyword lispFunc           dribble                         nsubstitute-if                          union
+syn keyword lispFunc           dynamic-extent                  nsubstitute-if-not                      unless
+syn keyword lispFunc           ecase                           nth                                     unread
+syn keyword lispFunc           echo-stream                     nthcdr                                  unread-char
+syn keyword lispFunc           echo-stream-input-stream        nth-value                               unsigned-byte
+syn keyword lispFunc           echo-stream-output-stream       null                                    untrace
+syn keyword lispFunc           ed                              number                                  unuse-package
+syn keyword lispFunc           eighth                          numberp                                 unwind-protect
+syn keyword lispFunc           elt                             numerator                               update-instance-for-different-class
+syn keyword lispFunc           encode-universal-time           nunion                                  update-instance-for-redefined-class
+syn keyword lispFunc           end-of-file                     oddp                                    upgraded-array-element-type
+syn keyword lispFunc           endp                            open                                    upgraded-complex-part-type
+syn keyword lispFunc           enough-namestring               open-stream-p                           upper-case-p
+syn keyword lispFunc           ensure-directories-exist        optimize                                use-package
+syn keyword lispFunc           ensure-generic-function         or                                      user
+syn keyword lispFunc           eq                              otherwise                               user-homedir-pathname
+syn keyword lispFunc           eql                             output-stream-p                         use-value
+syn keyword lispFunc           equal                           package                                 values
+syn keyword lispFunc           equalp                          package-error                           values-list
+syn keyword lispFunc           error                           package-error-package                   variable
+syn keyword lispFunc           etypecase                       package-name                            vector
+syn keyword lispFunc           eval                            package-nicknames                       vectorp
+syn keyword lispFunc           evalhook                        packagep                                vector-pop
+syn keyword lispFunc           eval-when                       package-shadowing-symbols               vector-push
+syn keyword lispFunc           evenp                           package-used-by-list                    vector-push-extend
+syn keyword lispFunc           every                           package-use-list                        warn
+syn keyword lispFunc           exp                             pairlis                                 warning
+syn keyword lispFunc           export                          parse-error                             when
+syn keyword lispFunc           expt                            parse-integer                           wild-pathname-p
+syn keyword lispFunc           extended-char                   parse-namestring                        with-accessors
+syn keyword lispFunc           fboundp                         pathname                                with-compilation-unit
+syn keyword lispFunc           fceiling                        pathname-device                         with-condition-restarts
+syn keyword lispFunc           fdefinition                     pathname-directory                      with-hash-table-iterator
+syn keyword lispFunc           ffloor                          pathname-host                           with-input-from-string
+syn keyword lispFunc           fifth                           pathname-match-p                        with-open-file
+syn keyword lispFunc           file-author                     pathname-name                           with-open-stream
+syn keyword lispFunc           file-error                      pathnamep                               with-output-to-string
+syn keyword lispFunc           file-error-pathname             pathname-type                           with-package-iterator
+syn keyword lispFunc           file-length                     pathname-version                        with-simple-restart
+syn keyword lispFunc           file-namestring                 peek-char                               with-slots
+syn keyword lispFunc           file-position                   phase                                   with-standard-io-syntax
+syn keyword lispFunc           file-stream                     pi                                      write
+syn keyword lispFunc           file-string-length              plusp                                   write-byte
+syn keyword lispFunc           file-write-date                 pop                                     write-char
+syn keyword lispFunc           fill                            position                                write-line
+syn keyword lispFunc           fill-pointer                    position-if                             write-sequence
+syn keyword lispFunc           find                            position-if-not                         write-string
+syn keyword lispFunc           find-all-symbols                pprint                                  write-to-string
+syn keyword lispFunc           find-class                      pprint-dispatch                         yes-or-no-p
+syn keyword lispFunc           find-if                         pprint-exit-if-list-exhausted           y-or-n-p
+syn keyword lispFunc           find-if-not                     pprint-fill                             zerop
 
 syn match   lispFunc           "\<c[ad]\+r\>"
 if exists("g:lispsyntax_clisp")
@@ -563,50 +563,50 @@ syn sync lines=100
 " Define Highlighting: {{{1
 if !exists("skip_lisp_syntax_inits")
 
-  hi def link lispCommentRegion        lispComment
+  hi def link lispCommentRegion                lispComment
   hi def link lispAtomNmbr             lispNumber
   hi def link lispAtomMark             lispMark
   hi def link lispInStringString       lispString
 
-  hi def link lispAtom         Identifier
-  hi def link lispAtomBarSymbol        Special
+  hi def link lispAtom                 Identifier
+  hi def link lispAtomBarSymbol                Special
   hi def link lispBarSymbol            Special
   hi def link lispComment              Comment
   hi def link lispConcat               Statement
-  hi def link lispDecl         Statement
-  hi def link lispFunc         Statement
-  hi def link lispKey          Type
-  hi def link lispMark         Delimiter
+  hi def link lispDecl                 Statement
+  hi def link lispFunc                 Statement
+  hi def link lispKey                  Type
+  hi def link lispMark                 Delimiter
   hi def link lispNumber               Number
   hi def link lispParenError           Error
-  hi def link lispEscapeSpecial        Type
+  hi def link lispEscapeSpecial                Type
   hi def link lispString               String
-  hi def link lispTodo         Todo
-  hi def link lispVar          Statement
+  hi def link lispTodo                 Todo
+  hi def link lispVar                  Statement
 
   if exists("g:lisp_rainbow") && g:lisp_rainbow != 0
    if &bg == "dark"
-    hi def hlLevel0 ctermfg=red         guifg=red1
-    hi def hlLevel1 ctermfg=yellow      guifg=orange1
-    hi def hlLevel2 ctermfg=green       guifg=yellow1
-    hi def hlLevel3 ctermfg=cyan        guifg=greenyellow
-    hi def hlLevel4 ctermfg=magenta     guifg=green1
-    hi def hlLevel5 ctermfg=red         guifg=springgreen1
-    hi def hlLevel6 ctermfg=yellow      guifg=cyan1
-    hi def hlLevel7 ctermfg=green       guifg=slateblue1
-    hi def hlLevel8 ctermfg=cyan        guifg=magenta1
-    hi def hlLevel9 ctermfg=magenta     guifg=purple1
+    hi def hlLevel0 ctermfg=red                guifg=red1
+    hi def hlLevel1 ctermfg=yellow     guifg=orange1
+    hi def hlLevel2 ctermfg=green      guifg=yellow1
+    hi def hlLevel3 ctermfg=cyan       guifg=greenyellow
+    hi def hlLevel4 ctermfg=magenta    guifg=green1
+    hi def hlLevel5 ctermfg=red                guifg=springgreen1
+    hi def hlLevel6 ctermfg=yellow     guifg=cyan1
+    hi def hlLevel7 ctermfg=green      guifg=slateblue1
+    hi def hlLevel8 ctermfg=cyan       guifg=magenta1
+    hi def hlLevel9 ctermfg=magenta    guifg=purple1
    else
-    hi def hlLevel0 ctermfg=red         guifg=red3
-    hi def hlLevel1 ctermfg=darkyellow  guifg=orangered3
-    hi def hlLevel2 ctermfg=darkgreen   guifg=orange2
-    hi def hlLevel3 ctermfg=blue        guifg=yellow3
-    hi def hlLevel4 ctermfg=darkmagenta guifg=olivedrab4
-    hi def hlLevel5 ctermfg=red         guifg=green4
-    hi def hlLevel6 ctermfg=darkyellow  guifg=paleturquoise3
-    hi def hlLevel7 ctermfg=darkgreen   guifg=deepskyblue4
-    hi def hlLevel8 ctermfg=blue        guifg=darkslateblue
-    hi def hlLevel9 ctermfg=darkmagenta guifg=darkviolet
+    hi def hlLevel0 ctermfg=red                guifg=red3
+    hi def hlLevel1 ctermfg=darkyellow guifg=orangered3
+    hi def hlLevel2 ctermfg=darkgreen  guifg=orange2
+    hi def hlLevel3 ctermfg=blue       guifg=yellow3
+    hi def hlLevel4 ctermfg=darkmagenta        guifg=olivedrab4
+    hi def hlLevel5 ctermfg=red                guifg=green4
+    hi def hlLevel6 ctermfg=darkyellow guifg=paleturquoise3
+    hi def hlLevel7 ctermfg=darkgreen  guifg=deepskyblue4
+    hi def hlLevel8 ctermfg=blue       guifg=darkslateblue
+    hi def hlLevel9 ctermfg=darkmagenta        guifg=darkviolet
    endif
   endif
 
index f34588f60c3e1eaa8e76745a35e50e06c6c11849..a53567e5859759a4f4e7b202bb0ec81f7f5fd939 100644 (file)
@@ -1,16 +1,16 @@
 " ninja build file syntax.
 " Language: ninja build file as described at
-"           http://martine.github.com/ninja/manual.html
-" Version: 1.4
-" Last Change: 2014/05/13
+"           http://ninja-build.org/manual.html
+" Version: 1.5
+" Last Change: 2018/04/05
 " Maintainer: Nicolas Weber <nicolasweber@gmx.de>
-" Version 1.4 of this script is in the upstream vim repository and will be
+" Version 1.5 of this script is in the upstream vim repository and will be
 " included in the next vim release. If you change this, please send your change
 " upstream.
 
 " ninja lexer and parser are at
-" https://github.com/martine/ninja/blob/master/src/lexer.in.cc
-" https://github.com/martine/ninja/blob/master/src/manifest_parser.cc
+" https://github.com/ninja-build/ninja/blob/master/src/lexer.in.cc
+" https://github.com/ninja-build/ninja/blob/master/src/manifest_parser.cc
 
 if exists("b:current_syntax")
   finish
@@ -21,7 +21,10 @@ set cpo&vim
 
 syn case match
 
-syn match ninjaComment /#.*/  contains=@Spell
+" Comments are only matched when the # is at the beginning of the line (with
+" optional whitespace), as long as the prior line didn't end with a $
+" continuation.
+syn match ninjaComment /\(\$\n\)\@<!\_^\s*#.*$/  contains=@Spell
 
 " Toplevel statements are the ones listed here and
 " toplevel variable assignments (ident '=' value).
@@ -38,12 +41,13 @@ syn match ninjaKeyword "^subninja\>"
 " limited set of magic variables, 'build' allows general
 " let assignments.
 " manifest_parser.cc, ParseRule()
-syn region ninjaRule start="^rule" end="^\ze\S" contains=ALL transparent
-syn keyword ninjaRuleCommand contained command deps depfile description generator
+syn region ninjaRule start="^rule" end="^\ze\S" contains=TOP transparent
+syn keyword ninjaRuleCommand contained containedin=ninjaRule command
+                                     \ deps depfile description generator
                                      \ pool restat rspfile rspfile_content
 
-syn region ninjaPool start="^pool" end="^\ze\S" contains=ALL transparent
-syn keyword ninjaPoolCommand contained depth
+syn region ninjaPool start="^pool" end="^\ze\S" contains=TOP transparent
+syn keyword ninjaPoolCommand contained containedin=ninjaPool  depth
 
 " Strings are parsed as follows:
 " lexer.in.cc, ReadEvalString()
index 838c5eb4a705866b9e73866df72d659b598cb397..a8258d725fb87ae91a58243711b33b674785577f 100644 (file)
@@ -2,8 +2,8 @@
 " Language:            shell (sh) Korn shell (ksh) bash (sh)
 " Maintainer:          Charles E. Campbell  <NdrOchipS@PcampbellAfamily.Mbiz>
 " Previous Maintainer: Lennart Schultz <Lennart.Schultz@ecmwf.int>
-" Last Change:         Oct 02, 2017
-" Version:             172
+" Last Change:         Mar 19, 2018
+" Version:             174
 " URL:         http://www.drchip.org/astronaut/vim/index.html#SYNTAX_SH
 " For options and settings, please use:      :help ft-sh-syntax
 " This file includes many ideas from Eric Brunet (eric.brunet@ens.fr)
@@ -121,7 +121,7 @@ syn case match
 " Clusters: contains=@... clusters {{{1
 "==================================
 syn cluster shErrorList        contains=shDoError,shIfError,shInError,shCaseError,shEsacError,shCurlyError,shParenError,shTestError,shOK
-if exists("b:is_kornshell")
+if exists("b:is_kornshell") || exists("b:is_bash")
  syn cluster ErrorList add=shDTestError
 endif
 syn cluster shArithParenList   contains=shArithmetic,shCaseEsac,shComment,shDeref,shDo,shDerefSimple,shEcho,shEscape,shNumber,shOperator,shPosnParm,shExSingleQuote,shExDoubleQuote,shHereString,shRedir,shSingleQuote,shDoubleQuote,shStatement,shVariable,shAlias,shTest,shCtrlSeq,shSpecial,shParen,bashSpecialVariables,bashStatement,shIf,shFor
@@ -164,7 +164,7 @@ syn region shEmbeddedEcho contained matchgroup=shStatement start="\<print\>" ski
 
 " Alias: {{{1
 " =====
-if exists("b:is_kornshell") || exists("b:is_bash")
+if exists("b:is_kornshell") || exists("b:is_bash") || exists("b:is_posix")
  syn match shStatement "\<alias\>"
  syn region shAlias matchgroup=shStatement start="\<alias\>\s\+\(\h[-._[:alnum:]]\+\)\@="  skip="\\$" end="\>\|`"
  syn region shAlias matchgroup=shStatement start="\<alias\>\s\+\(\h[-._[:alnum:]]\+=\)\@=" skip="\\$" end="="
@@ -186,7 +186,7 @@ if !exists("g:sh_no_error")
  syn match   shCurlyError "}"
  syn match   shParenError ")"
  syn match   shOK      '\.\(done\|fi\|in\|esac\)'
- if exists("b:is_kornshell")
+ if exists("b:is_kornshell") || exists("b:is_bash")
   syn match     shDTestError "]]"
  endif
  syn match     shTestError "]"
@@ -245,12 +245,14 @@ ShFoldIfDoFor syn region shIf     transparent     matchgroup=shConditional start="\<if\_
 ShFoldIfDoFor syn region shFor         matchgroup=shLoop start="\<for\ze\_s\s*\%(((\)\@!" end="\<in\>" end="\<do\>"me=e-2                      contains=@shLoopList,shDblParen skipwhite nextgroup=shCurlyIn
 ShFoldIfDoFor syn region shForPP       matchgroup=shLoop start='\<for\>\_s*((' end='))' contains=shTestOpr
 
-if exists("b:is_kornshell") || exists("b:is_bash")
+if exists("b:is_kornshell") || exists("b:is_bash") || exists("b:is_posix")
  syn cluster shCaseList        add=shRepeat
  syn cluster shFunctionList    add=shRepeat
- syn region shRepeat   matchgroup=shLoop   start="\<while\_s" end="\<in\_s" end="\<do\>"me=e-2 contains=@shLoopList,shDblParen,shDblBrace
- syn region shRepeat   matchgroup=shLoop   start="\<until\_s" end="\<in\_s" end="\<do\>"me=e-2 contains=@shLoopList,shDblParen,shDblBrace
- syn region shCaseEsac matchgroup=shConditional start="\<select\s" matchgroup=shConditional end="\<in\>" end="\<do\>" contains=@shLoopList
+ syn region shRepeat   matchgroup=shLoop   start="\<while\_s" end="\<do\>"me=e-2       contains=@shLoopList,shDblParen,shDblBrace
+ syn region shRepeat   matchgroup=shLoop   start="\<until\_s" end="\<do\>"me=e-2       contains=@shLoopList,shDblParen,shDblBrace
+ if !exists("b:is_posix")
+  syn region shCaseEsac matchgroup=shConditional start="\<select\s" matchgroup=shConditional end="\<in\>" end="\<do\>" contains=@shLoopList
+ endif
 else
  syn region shRepeat   matchgroup=shLoop   start="\<while\_s" end="\<do\>"me=e-2               contains=@shLoopList
  syn region shRepeat   matchgroup=shLoop   start="\<until\_s" end="\<do\>"me=e-2               contains=@shLoopList
@@ -287,7 +289,7 @@ endif
 " Misc: {{{1
 "======
 syn match   shWrapLineOperator "\\$"
-syn region  shCommandSub   start="`" skip="\\\\\|\\." end="`"  contains=@shCommandSubList
+syn region  shCommandSub       start="`" skip="\\\\\|\\." end="`"      contains=@shCommandSubList
 syn match   shEscape   contained       '\%(^\)\@!\%(\\\\\)*\\.'
 
 " $() and $(()): {{{1
@@ -315,7 +317,7 @@ if exists("b:is_bash")
  syn keyword bashStatement     command compgen
 endif
 
-if exists("b:is_kornshell")
+if exists("b:is_kornshell") || exists("b:is_posix")
  syn cluster shCommandSubList add=kshSpecialVariables,kshStatement
  syn cluster shCaseList add=kshStatement
  syn keyword kshSpecialVariables contained CDPATH COLUMNS EDITOR ENV ERRNO FCEDIT FPATH HISTFILE HISTSIZE HOME IFS LINENO LINES MAIL MAILCHECK MAILPATH OLDPWD OPTARG OPTIND PATH PPID PS1 PS2 PS3 PS4 PWD RANDOM REPLY SECONDS SHELL TMOUT VISUAL
@@ -327,7 +329,7 @@ syn match   shSource        "^\.\s"
 syn match   shSource   "\s\.\s"
 "syn region  shColon   start="^\s*:" end="$" end="\s#"me=e-2 contains=@shColonList
 "syn region  shColon   start="^\s*\zs:" end="$" end="\s#"me=e-2
-if exists("b:is_kornshell")
+if exists("b:is_kornshell") || exists("b:is_posix")
  syn match   shColon   '^\s*\zs:'
 endif
 
@@ -339,19 +341,18 @@ syn match   shCtrlSeq     "\\\d\d\d\|\\[abcfnrtv0]"                       contained
 if exists("b:is_bash")
  syn match   shSpecial "[^\\]\(\\\\\)*\zs\\\o\o\o\|\\x\x\x\|\\c[^"]\|\\[abefnrtv]"     contained
  syn match   shSpecial "^\(\\\\\)*\zs\\\o\o\o\|\\x\x\x\|\\c[^"]\|\\[abefnrtv]" contained
-endif
-if exists("b:is_bash")
  syn region  shExSingleQuote   matchgroup=shQuote start=+\$'+ skip=+\\\\\|\\.+ end=+'+ contains=shStringSpecial,shSpecial              nextgroup=shSpecialNxt
  syn region  shExDoubleQuote   matchgroup=shQuote start=+\$"+ skip=+\\\\\|\\.\|\\"+ end=+"+    contains=@shDblQuoteList,shStringSpecial,shSpecial      nextgroup=shSpecialNxt
 elseif !exists("g:sh_no_error")
  syn region  shExSingleQuote   matchGroup=Error start=+\$'+ skip=+\\\\\|\\.+ end=+'+   contains=shStringSpecial
  syn region  shExDoubleQuote   matchGroup=Error start=+\$"+ skip=+\\\\\|\\.+ end=+"+   contains=shStringSpecial
 endif
-syn region  shSingleQuote      matchgroup=shQuote start=+'+ end=+'+            contains=@Spell
-syn region  shDoubleQuote      matchgroup=shQuote start=+\%(\%(\\\\\)*\\\)\@<!"+ skip=+\\"+ end=+"+    contains=@shDblQuoteList,shStringSpecial,@Spell
+syn region  shSingleQuote      matchgroup=shQuote start=+'+ end=+'+            contains=@Spell nextgroup=shSpecialStart
+syn region  shDoubleQuote      matchgroup=shQuote start=+\%(\%(\\\\\)*\\\)\@<!"+ skip=+\\"+ end=+"+    contains=@shDblQuoteList,shStringSpecial,@Spell nextgroup=shSpecialStart
 syn match   shStringSpecial    "[^[:print:] \t]"                       contained
 syn match   shStringSpecial    "[^\\]\zs\%(\\\\\)*\\[\\"'`$()#]"
 syn match   shSpecial  "[^\\]\zs\%(\\\\\)*\\[\\"'`$()#]"               nextgroup=shBkslshSnglQuote,shBkslshDblQuote,@shNoZSList
+syn match   shSpecialStart     "\%(\\\\\)*\\[\\"'`$()#]"                       contained       nextgroup=shBkslshSnglQuote,shBkslshDblQuote,@shNoZSList
 syn match   shSpecial  "^\%(\\\\\)*\\[\\"'`$()#]"
 syn match   shSpecialNoZS      contained       "\%(\\\\\)*\\[\\"'`$()#]"
 syn match   shSpecialNxt       contained       "\\[\\"'`$()#]"
@@ -373,21 +374,21 @@ syn match shQuickComment  contained       "#.*$"
 
 " Here Documents: {{{1
 " =========================================
-ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc01 start="<<\s*\\\=\z([^ \t|>]\+\)"             matchgroup=shHereDoc01 end="^\z1\s*$"   contains=@shDblQuoteList
-ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc02 start="<<\s*\"\z([^ \t|>]\+\)\""             matchgroup=shHereDoc02 end="^\z1\s*$"
-ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc03 start="<<-\s*\z([^ \t|>]\+\)"                matchgroup=shHereDoc03 end="^\s*\z1\s*$"        contains=@shDblQuoteList
-ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc04 start="<<-\s*'\z([^']\+\)'"          matchgroup=shHereDoc04 end="^\s*\z1\s*$"
-ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc05 start="<<\s*'\z([^']\+\)'"           matchgroup=shHereDoc05 end="^\z1\s*$"
-ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc06 start="<<-\s*\"\z([^ \t|>]\+\)\""            matchgroup=shHereDoc06 end="^\s*\z1\s*$"
-ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc07 start="<<\s*\\\_$\_s*\z([^ \t|>]\+\)"                matchgroup=shHereDoc07 end="^\z1\s*$"           contains=@shDblQuoteList
-ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc08 start="<<\s*\\\_$\_s*'\z([^ \t|>]\+\)'"      matchgroup=shHereDoc08 end="^\z1\s*$"
-ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc09 start="<<\s*\\\_$\_s*\"\z([^ \t|>]\+\)\""    matchgroup=shHereDoc09 end="^\z1\s*$"
-ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc10 start="<<-\s*\\\_$\_s*\z([^ \t|>]\+\)"       matchgroup=shHereDoc10 end="^\s*\z1\s*$"
-ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc11 start="<<-\s*\\\_$\_s*\\\z([^ \t|>]\+\)"     matchgroup=shHereDoc11 end="^\s*\z1\s*$"
-ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc12 start="<<-\s*\\\_$\_s*'\z([^ \t|>]\+\)'"     matchgroup=shHereDoc12 end="^\s*\z1\s*$"
-ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc13 start="<<-\s*\\\_$\_s*\"\z([^ \t|>]\+\)\""   matchgroup=shHereDoc13 end="^\s*\z1\s*$"
-ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc14 start="<<\\\z([^ \t|>]\+\)"          matchgroup=shHereDoc14 end="^\z1\s*$"
-ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc15 start="<<-\s*\\\z([^ \t|>]\+\)"              matchgroup=shHereDoc15 end="^\s*\z1\s*$"
+ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc01 start="<<\s*\\\=\z([^ \t0-9|>]\+\)"          matchgroup=shHereDoc01 end="^\z1\s*$"   contains=@shDblQuoteList
+ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc02 start="<<\s*\"\z([^ \t0-9|>]\+\)\""          matchgroup=shHereDoc02 end="^\z1\s*$"
+ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc03 start="<<-\s*\z([^ \t0-9|>]\+\)"             matchgroup=shHereDoc03 end="^\s*\z1\s*$"        contains=@shDblQuoteList
+ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc04 start="<<-\s*'\z([^'0-9]\+\)'"               matchgroup=shHereDoc04 end="^\s*\z1\s*$"
+ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc05 start="<<\s*'\z([^'0-9]\+\)'"                matchgroup=shHereDoc05 end="^\z1\s*$"
+ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc06 start="<<-\s*\"\z([^ \t0-9|>]\+\)\""         matchgroup=shHereDoc06 end="^\s*\z1\s*$"
+ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc07 start="<<\s*\\\_$\_s*\z([^ \t0-9|>]\+\)"     matchgroup=shHereDoc07 end="^\z1\s*$"           contains=@shDblQuoteList
+ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc08 start="<<\s*\\\_$\_s*'\z([^ \t0-9|>]\+\)'"   matchgroup=shHereDoc08 end="^\z1\s*$"
+ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc09 start="<<\s*\\\_$\_s*\"\z([^ \t0-9|>]\+\)\"" matchgroup=shHereDoc09 end="^\z1\s*$"
+ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc10 start="<<-\s*\\\_$\_s*\z([^ \t0-9|>]\+\)"    matchgroup=shHereDoc10 end="^\s*\z1\s*$"
+ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc11 start="<<-\s*\\\_$\_s*\\\z([^ \t0-9|>]\+\)"  matchgroup=shHereDoc11 end="^\s*\z1\s*$"
+ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc12 start="<<-\s*\\\_$\_s*'\z([^ \t0-9|>]\+\)'"  matchgroup=shHereDoc12 end="^\s*\z1\s*$"
+ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc13 start="<<-\s*\\\_$\_s*\"\z([^ \t0-9|>]\+\)\""        matchgroup=shHereDoc13 end="^\s*\z1\s*$"
+ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc14 start="<<\\\z([^ \t0-9|>]\+\)"               matchgroup=shHereDoc14 end="^\z1\s*$"
+ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc15 start="<<-\s*\\\z([^ \t0-9|>]\+\)"           matchgroup=shHereDoc15 end="^\s*\z1\s*$"
 
 " Here Strings: {{{1
 " =============
@@ -405,7 +406,7 @@ syn region shAtExpr contained       start="@(" end=")" contains=@shIdList
 if exists("b:is_bash")
  syn region shSetList oneline matchgroup=shSet start="\<\(declare\|typeset\|local\|export\|unset\)\>\ze[^/]" end="$"   matchgroup=shSetListDelim end="\ze[}|);&]" matchgroup=NONE end="\ze\s\+#\|="    contains=@shIdList
  syn region shSetList oneline matchgroup=shSet start="\<set\>\ze[^/]" end="\ze[;|)]\|$"                        matchgroup=shSetListDelim end="\ze[}|);&]" matchgroup=NONE end="\ze\s\+="       contains=@shIdList
-elseif exists("b:is_kornshell")
+elseif exists("b:is_kornshell") || exists("b:is_posix")
  syn region shSetList oneline matchgroup=shSet start="\<\(typeset\|export\|unset\)\>\ze[^/]" end="$"           matchgroup=shSetListDelim end="\ze[}|);&]" matchgroup=NONE end="\ze\s\+[#=]"    contains=@shIdList
  syn region shSetList oneline matchgroup=shSet start="\<set\>\ze[^/]" end="$"                          matchgroup=shSetListDelim end="\ze[}|);&]" matchgroup=NONE end="\ze\s\+[#=]"    contains=@shIdList
 else
@@ -439,14 +440,14 @@ syn region shDeref        matchgroup=PreProc start="\${" end="}"  contains=@shDerefList,
 syn match  shDerefSimple       "\$[-#*@!?]"    nextgroup=@shNoZSList
 syn match  shDerefSimple       "\$\$"  nextgroup=@shNoZSList
 syn match  shDerefSimple       "\${\d}"        nextgroup=@shNoZSList
-if exists("b:is_bash") || exists("b:is_kornshell")
+if exists("b:is_bash") || exists("b:is_kornshell") || exists("b:is_posix")
  syn region shDeref    matchgroup=PreProc start="\${##\=" end="}"      contains=@shDerefList   nextgroup=@shSpecialNoZS
  syn region shDeref    matchgroup=PreProc start="\${\$\$" end="}"      contains=@shDerefList   nextgroup=@shSpecialNoZS
 endif
 
 " ksh: ${!var[*]} array index list syntax: {{{1
 " ========================================
-if exists("b:is_kornshell")
+if exists("b:is_kornshell") || exists("b:is_posix")
  syn region shDeref    matchgroup=PreProc start="\${!" end="}" contains=@shDerefVarArray
 endif
 
@@ -464,7 +465,7 @@ syn match  shDerefSpecial   contained       "{\@<=[-*@?0]"          nextgroup=shDerefOp,shDerefO
 syn match  shDerefSpecial      contained       "\({[#!]\)\@<=[[:alnum:]*@_]\+" nextgroup=@shDerefVarList,shDerefOp
 syn match  shDerefVar  contained       "{\@<=\h\w*"            nextgroup=@shDerefVarList
 syn match  shDerefVar  contained       '\d'                            nextgroup=@shDerefVarList
-if exists("b:is_kornshell")
+if exists("b:is_kornshell") || exists("b:is_posix")
   syn match  shDerefVar        contained       "{\@<=\h\w*[[:alnum:]_.]*"      nextgroup=@shDerefVarList
 endif
 
@@ -490,7 +491,7 @@ if !exists("g:sh_no_error")
 endif
 syn match  shDerefOp   contained       ":\=[-=?]"      nextgroup=@shDerefPatternList
 syn match  shDerefOp   contained       ":\=+"  nextgroup=@shDerefPatternList
-if exists("b:is_bash") || exists("b:is_kornshell")
+if exists("b:is_bash") || exists("b:is_kornshell") || exists("b:is_posix")
  syn match  shDerefOp  contained       "#\{1,2}"               nextgroup=@shDerefPatternList
  syn match  shDerefOp  contained       "%\{1,2}"               nextgroup=@shDerefPatternList
  syn match  shDerefPattern     contained       "[^{}]\+"               contains=shDeref,shDerefSimple,shDerefPattern,shDerefString,shCommandSub,shDerefEscape nextgroup=shDerefPattern
@@ -537,7 +538,7 @@ endif
 
 " Useful ksh Keywords: {{{1
 " ====================
-if exists("b:is_kornshell") || exists("b:is_bash")
+if exists("b:is_kornshell") || exists("b:is_bash") || exists("b:is_posix")
  syn keyword shStatement autoload bg false fc fg functions getopts hash history integer jobs let nohup printf r stop suspend times true type unalias whence
  if exists("b:is_posix")
   syn keyword shStatement command
@@ -635,6 +636,7 @@ if !exists("skip_sh_syntax_inits")
  hi def link shSingleQuote     shString
  hi def link shSource  shOperator
  hi def link shStringSpecial   shSpecial
+ hi def link shSpecialStart    shSpecial
  hi def link shSubShRegion     shOperator
  hi def link shTestOpr shConditional
  hi def link shTestPattern     shString
@@ -652,7 +654,7 @@ if !exists("skip_sh_syntax_inits")
    hi def link shDerefOff              shDerefOp
    hi def link shDerefLen              shDerefOff
  endif
- if exists("b:is_kornshell")
+ if exists("b:is_kornshell") || exists("b:is_posix")
    hi def link kshSpecialVariables     shShellVariables
    hi def link kshStatement            shStatement
  endif
@@ -669,7 +671,7 @@ if !exists("skip_sh_syntax_inits")
   hi def link shInError                Error
   hi def link shParenError             Error
   hi def link shTestError              Error
-  if exists("b:is_kornshell")
+  if exists("b:is_kornshell") || exists("b:is_posix")
     hi def link shDTestError           Error
   endif
  endif
@@ -725,6 +727,8 @@ if exists("b:is_bash")
  let b:current_syntax = "bash"
 elseif exists("b:is_kornshell")
  let b:current_syntax = "ksh"
+elseif exists("b:is_posix")
+ let b:current_syntax = "posix"
 else
  let b:current_syntax = "sh"
 endif
index 1d777f8022e54ab4eaf2071f53d831210edb612c..d5f900ae5c1ed0ac5fed6a504b4997c69f9568c1 100644 (file)
@@ -1,8 +1,8 @@
 " Vim syntax file
 " Language:    TeX
 " Maintainer:  Charles E. Campbell <NdrchipO@ScampbellPfamily.AbizM>
-" Last Change: Dec 11, 2017
-" Version:     107
+" Last Change: Mar 30, 2018
+" Version:     109
 " URL:         http://www.drchip.org/astronaut/vim/index.html#SYNTAX_TEX
 "
 " Notes: {{{1
@@ -396,7 +396,7 @@ endif
 
 " Bad Math (mismatched): {{{1
 if !exists("g:tex_no_math") && !s:tex_no_error
- syn match texBadMath          "\\end\s*{\s*\(array\|bBpvV]matrix\|split\|smallmatrix\)\s*}"
+ syn match texBadMath          "\\end\s*{\s*\(array\|[bBpvV]matrix\|split\|smallmatrix\)\s*}"
  syn match texBadMath          "\\end\s*{\s*\(displaymath\|equation\|eqnarray\|math\)\*\=\s*}"
  syn match texBadMath          "\\[\])]"
 endif
@@ -1012,6 +1012,48 @@ if has("conceal") && &enc == 'utf-8'
   syn match texMathSymbol '\\hat{y}' contained conceal cchar=ŷ
   syn match texMathSymbol '\\hat{Y}' contained conceal cchar=Ŷ
 "  syn match texMathSymbol '\\bar{a}' contained conceal cchar=a̅
+
+  syn match texMathSymbol '\\dot{B}' contained conceal cchar=Ḃ
+  syn match texMathSymbol '\\dot{b}' contained conceal cchar=ḃ
+  syn match texMathSymbol '\\dot{D}' contained conceal cchar=Ḋ
+  syn match texMathSymbol '\\dot{d}' contained conceal cchar=ḋ
+  syn match texMathSymbol '\\dot{F}' contained conceal cchar=Ḟ
+  syn match texMathSymbol '\\dot{f}' contained conceal cchar=ḟ
+  syn match texMathSymbol '\\dot{H}' contained conceal cchar=Ḣ
+  syn match texMathSymbol '\\dot{h}' contained conceal cchar=ḣ
+  syn match texMathSymbol '\\dot{M}' contained conceal cchar=Ṁ
+  syn match texMathSymbol '\\dot{m}' contained conceal cchar=ṁ
+  syn match texMathSymbol '\\dot{N}' contained conceal cchar=Ṅ
+  syn match texMathSymbol '\\dot{n}' contained conceal cchar=ṅ
+  syn match texMathSymbol '\\dot{P}' contained conceal cchar=Ṗ
+  syn match texMathSymbol '\\dot{p}' contained conceal cchar=ṗ
+  syn match texMathSymbol '\\dot{R}' contained conceal cchar=Ṙ
+  syn match texMathSymbol '\\dot{r}' contained conceal cchar=ṙ
+  syn match texMathSymbol '\\dot{S}' contained conceal cchar=Ṡ
+  syn match texMathSymbol '\\dot{s}' contained conceal cchar=ṡ
+  syn match texMathSymbol '\\dot{T}' contained conceal cchar=Ṫ
+  syn match texMathSymbol '\\dot{t}' contained conceal cchar=ṫ
+  syn match texMathSymbol '\\dot{W}' contained conceal cchar=Ẇ
+  syn match texMathSymbol '\\dot{w}' contained conceal cchar=ẇ
+  syn match texMathSymbol '\\dot{X}' contained conceal cchar=Ẋ
+  syn match texMathSymbol '\\dot{x}' contained conceal cchar=ẋ
+  syn match texMathSymbol '\\dot{Y}' contained conceal cchar=Ẏ
+  syn match texMathSymbol '\\dot{y}' contained conceal cchar=ẏ
+  syn match texMathSymbol '\\dot{Z}' contained conceal cchar=Ż
+  syn match texMathSymbol '\\dot{z}' contained conceal cchar=ż
+
+  syn match texMathSymbol '\\dot{C}' contained conceal cchar=Ċ
+  syn match texMathSymbol '\\dot{c}' contained conceal cchar=ċ
+  syn match texMathSymbol '\\dot{E}' contained conceal cchar=Ė
+  syn match texMathSymbol '\\dot{e}' contained conceal cchar=ė
+  syn match texMathSymbol '\\dot{G}' contained conceal cchar=Ġ
+  syn match texMathSymbol '\\dot{g}' contained conceal cchar=ġ
+  syn match texMathSymbol '\\dot{I}' contained conceal cchar=İ
+
+  syn match texMathSymbol '\\dot{A}' contained conceal cchar=Ȧ
+  syn match texMathSymbol '\\dot{a}' contained conceal cchar=ȧ
+  syn match texMathSymbol '\\dot{O}' contained conceal cchar=Ȯ
+  syn match texMathSymbol '\\dot{o}' contained conceal cchar=ȯ
  endif
 
  " Greek {{{2
index 48b02970ed2f6bf24d6914aef88546a961dda98b..012d2ae2a5031b2049df073df03028525859cf16 100644 (file)
@@ -1,9 +1,9 @@
 " Vim syntax file
 " Language:    Vim 8.0 script
 " Maintainer:  Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
-" Last Change: Dec 15, 2017
-" Version:     8.0-07
-" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_VIM
+" Last Change: February 13, 2018
+" Version:             8.0-12
+" URL:                 http://www.drchip.org/astronaut/vim/index.html#SYNTAX_VIM
 " Automatically generated keyword lists: {{{1
 
 " Quit when a syntax file was already loaded {{{2
@@ -24,9 +24,9 @@ syn keyword vimCommand contained      ab argd[elete] as[cii] bd[elete] bo[tright] bre
 syn keyword vimCommand contained       abc[lear] argdo au bel[owright] bp[revious] bro[wse] cNf[ile] cal[l] cd cfir[st] che[ckpath] clo[se] col[der] conf[irm] cs debug deletep delp diffp[atch] dj[ump] dr[op] ec em[enu] ene[w] filet fir[st] foldo[pen] grepa[dd] helpf[ind] i  imapc[lear] j[oin] keepj[umps] lad[dexpr] lb[uffer] lcscope lfdo lgrepa[dd] lmak[e] loadk lp[revious] luado ma[rk] messages mod[e] nbc[lose] noautocmd nu[mber] opt[ions] pc[lose] popu[p] prof[ile] ptN[ext] ptn[ext] pw[d] pyf[ile] pyxfile rec[over] reg[isters] ri[ght] rubyf[ile] sIe sIr sav[eas] sbl[ast] sc scl scscope sf[ind] sge sgr sig sip sm[ap] sno[magic] sp[lit] spellu[ndo] src srn startg[replace] sun[hide] sw[apname] syntime tabN[ext] tabfir[st] tabo[nly] tc[l] th[row] tmapc[lear] tr[ewind] u[ndo] unl ve[rsion] vim[grep] vs[plit] win[size] wp[revious] wv[iminfo] xmenu xunmenu
 syn keyword vimCommand contained       abo[veleft] arge[dit] bN[ext] bf[irst] br[ewind] bufdo c[hange] cat[ch] cdo cg[etfile] checkt[ime] cmapc[lear] colo[rscheme] cope[n] cscope debugg[reedy] deletl dep diffpu[t] dl ds[earch] echoe[rr] en[dif] ex filetype fix[del] for gui helpg[rep] ia in ju[mps] keepp[atterns] laddb[uffer] lbo[ttom] ld[o] lfir[st] lh[elpgrep] lmapc[lear] loadkeymap lpf[ile] luafile mak[e] mk[exrc] mz[scheme] nbs[tart] noh[lsearch] o[pen] ownsyntax pe[rl] pp[op] profd[el] pta[g] ptp[revious] py3 python3 q[uit] red[o] res[ize] rightb[elow] rundo sIg sN[ext] sbN[ext] sbm[odified] scI scp se[t] sfir[st] sgi sh[ell] sign sir sme snoreme spe[llgood] spellw[rong] sre[wind] srp startr[eplace] sunme sy t  tabc[lose] tabl[ast] tabp[revious] tcld[o] tj[ump] tn[ext] try una[bbreviate] unlo[ckvar] verb[ose] vimgrepa[dd] wN[ext] winc[md] wq x[it] xnoreme xwininfo
 syn keyword vimCommand contained       al[l] argg[lobal] b[uffer] bl[ast] brea[k] buffers cabc[lear] cb[uffer] ce[nter] cgetb[uffer] chi[story] cn[ext] com cp[revious] cstag delc[ommand] deletp di[splay] diffs[plit] dli[st] dsp[lit] echom[sg] endf[unction] exi[t] filt[er] fo[ld] fu[nction] gvim helpt[ags] iabc[lear] intro k  lN[ext] laddf[ile] lc[d] le[ft] lg[etfile] lhi[story] lne[xt] loc[kmarks] lr[ewind] lv[imgrep] marks mks[ession] mzf[ile] new nor ol[dfiles] p[rint] ped[it] pre[serve] promptf[ind] ptf[irst] ptr[ewind] py3do pythonx qa[ll] redi[r] ret[ab] ru[ntime] rv[iminfo] sIl sa[rgument] sb[uffer] sbn[ext] sce scr[iptnames] setf[iletype] sg sgl si sil[ent] sl[eep] smenu snoremenu spelld[ump] spr[evious] srg st[op] stj[ump] sunmenu syn tN[ext] tabd[o] tabm[ove] tabr[ewind] tclf[ile] tl[ast] tno[remap] ts[elect] undoj[oin] uns[ilent] vert[ical] viu[sage] w[rite] windo wqa[ll] xa[ll] xnoremenu y[ank]
-syn keyword vimCommand contained       ar[gs] argl[ocal] ba[ll] bm[odified] breaka[dd] bun[load] cad[dbuffer] cbo[ttom] cex[pr] cgete[xpr] cl[ist] cnew[er] comc[lear] cpf[ile] cuna[bbrev] delel delf[unction] dif[fupdate] difft[his] do e[dit] echon endfo[r] exu[sage] fin[d] foldc[lose] g  h[elp] hi if is[earch] kee[pmarks] lNf[ile] lan[guage] lch[dir] lefta[bove] lgetb[uffer] ll lnew[er] lockv[ar] ls lvimgrepa[dd] mat[ch] mksp[ell] 
+syn keyword vimCommand contained       ar[gs] argl[ocal] ba[ll] bm[odified] breaka[dd] bun[load] cad[dbuffer] cbo[ttom] cex[pr] cgete[xpr] cl[ist] cnew[er] comc[lear] cpf[ile] cuna[bbrev] delel delf[unction] dif[fupdate] difft[his] do e[dit] echon endfo[r] exu[sage] fin[d] foldc[lose] g  h[elp] hi if is[earch] kee[pmarks] lNf[ile] lan[guage] lch[dir] lefta[bove] lgetb[uffer] ll lnew[er] lockv[ar] ls lvimgrepa[dd] mat[ch] mksp[ell]
 syn match   vimCommand contained       "\<z[-+^.=]\=\>"
-syn keyword vimStdPlugin contained     DiffOrig Man N[ext] P[rint] S  TOhtml XMLent XMLns 
+syn keyword vimStdPlugin contained     DiffOrig Man N[ext] P[rint] S  TOhtml XMLent XMLns
 
 " vimOptions are caught only when contained in a vimSet {{{2
 syn keyword vimOption contained        acd ambw arshape background ballooneval bg bomb bs cb ch cinoptions cms commentstring copyindent cscopepathcomp csprg cursorbind delcombine digraph eadirection emo equalprg expandtab fdls fex fileignorecase fml foldlevel formatexpr gcr go guifontset helpheight history hlsearch imactivatekey imi imstyle indentkeys isf isprint km laststatus lisp loadplugins lz mat maxmempattern mh mmp more mouses mzq number opendevice paragraphs penc pi previewheight printmbcharset pvw rdt renderoptions rl ru sbo scrollbind secure shcf shelltemp shortmess showtabline sj smd spell splitbelow ssl stl sw sxe tabpagemax tags tbs termguicolors tf title tms ts ttybuiltin tx undolevels vbs viewdir vop wd wic wildmode winheight wm wrapscan
@@ -36,21 +36,21 @@ syn keyword vimOption contained     al ar autoread backupcopy bdlay binary breakinde
 syn keyword vimOption contained        aleph arab autowrite backupdir belloff bk bri bufhidden cdpath cindent cm colorcolumn completeopt cpoptions cscopetag csto debug dictionary display ef endofline esckeys fdc fdt fileencoding fixeol foldcolumn foldminlines fp gfn gtl guipty hi hkp ignorecase imcmdline imsf incsearch infercase isk keymap langmenu linebreak lm lsp makeef maxfuncdepth menc mls modelines mousehide mp nf oft pa patchmode pfn popt printexpr pt pyxversion regexpengine ri rop rulerformat scl scs sessionoptions shellquote shiftround showfulltag sidescrolloff smartindent sol spellsuggest sr stal sua swf syntax tagcase tbi term textauto tildeop tk top ttimeoutlen ttyscroll ul ur verbosefile viminfofile wb wh wildignore window winwidth wop writedelay
 syn keyword vimOption contained        allowrevins arabic autowriteall backupext beval bkc briopt buflisted cedit cink cmdheight columns concealcursor cpt cscopetagorder csverb deco diff dy efm eol et fde fen fileencodings fk foldenable foldnestmax fs gfs gtt guitablabel hid hl im imd imst inde insertmode iskeyword keymodel langnoremap lines lmap luadll makeencoding maxmapdepth menuitems mm modifiable mousem mps nrformats ofu packpath path ph pp printfont pumheight qe relativenumber rightleft rs runtimepath scr sect sft shellredir shiftwidth showmatch signcolumn smarttab sp spf srr startofline suffixes switchbuf ta taglength tbidi termbidi textmode timeout tl tpm ttm ttytype undodir ut vfile virtualedit wc whichwrap wildignorecase winfixheight wiv wrap ws
 syn keyword vimOption contained        altkeymap arabicshape aw backupskip bex bl brk buftype cf cinkeys cmdwinheight com conceallevel crb cscopeverbose cuc def diffexpr ea ei ep eventignore fdi fenc fileformat fkmap foldexpr foldopen fsync gfw guicursor guitabtooltip hidden hlg imactivatefunc imdisable imstatusfunc indentexpr is isp keywordprg langremap linespace lnr lw makeprg maxmem mfd mmd modified mousemodel msm nu omnifunc para pdev pheader preserveindent printheader pvh quoteescape remap rightleftcmd rtp sb scroll sections sh shellslash shm showmode siso smc spc spl ss statusline suffixesadd sws tabline tagrelative tbis termencoding textwidth timeoutlen tm tr tty tw undofile vb vi visualbell wcm wi wildmenu winfixwidth wiw wrapmargin ww
-syn keyword vimOption contained        ambiwidth ari awa balloondelay bexpr bo browsedir casemap cfu cino cmp comments confirm cryptmethod cspc cul define diffopt ead ek equalalways ex fdl fencs fileformats flp foldignore foldtext ft ghr guifont helpfile highlight hls 
+syn keyword vimOption contained        ambiwidth ari awa balloondelay bexpr bo browsedir casemap cfu cino cmp comments confirm cryptmethod cspc cul define diffopt ead ek equalalways ex fdl fencs fileformats flp foldignore foldtext ft ghr guifont helpfile highlight hls
 
 " vimOptions: These are the turn-off setting variants {{{2
 syn keyword vimOption contained        noacd noallowrevins noantialias noarabic noarshape noautoread noaw noballooneval nobinary nobomb nobuflisted nocin noconfirm nocrb nocscopeverbose nocsverb nocursorbind nodeco nodiff noeb noek noendofline noerrorbells noex nofen nofixendofline nofkmap nofsync noguipty nohk nohkp noic noim noimd noinf nois nolangnoremap nolazyredraw nolinebreak nolist noloadplugins nolrm noma nomagic noml nomodeline nomodified nomousef nomousehide nonumber noopendevice nopi nopreviewwindow nopvw norelativenumber norestorescreen nori norl noro noru nosb noscb noscs nosft noshelltemp noshortname noshowfulltag noshowmode nosm nosmartindent nosmd nosol nosplitbelow nospr nossl nostartofline noswapfile nota notagrelative notbi notbs noterse notextmode notgst notimeout noto notr nottybuiltin notx noundofile novisualbell nowarn noweirdinvert nowfw nowildignorecase nowinfixheight nowiv nowrap nowrite nowritebackup
 syn keyword vimOption contained        noai noaltkeymap noar noarabicshape noautochdir noautowrite noawa nobeval nobk nobreakindent nocf nocindent nocopyindent nocscoperelative nocsre nocuc nocursorcolumn nodelcombine nodigraph noed noemo noeol noesckeys noexpandtab nofic nofixeol nofoldenable nogd nohid nohkmap nohls noicon noimc noimdisable noinfercase nojoinspaces nolangremap nolbr nolisp nolnr nolpl nolz nomacatsui nomh nomod nomodifiable nomore nomousefocus nonu noodev nopaste nopreserveindent noprompt noreadonly noremap norevins norightleft nornu nors noruler nosc noscrollbind nosecure noshellslash noshiftround noshowcmd noshowmatch nosi nosmartcase nosmarttab nosn nospell nosplitright nosr nosta nostmp noswf notagbsearch notagstack notbidi notermbidi notextauto notf notildeop notitle notop nottimeout nottyfast noudf novb nowa nowb nowfh nowic nowildmenu nowinfixwidth nowmnu nowrapscan nowriteany nows
-syn keyword vimOption contained        noakm noanti noarab noari noautoindent noautowriteall nobackup nobin nobl nobri noci nocompatible nocp nocscopetag nocst nocul nocursorline nodg noea noedcompatible noemoji noequalalways noet noexrc nofileignorecase nofk nofs nogdefault nohidden nohkmapp nohlsearch noignorecase noimcmdline noincsearch noinsertmode nojs 
+syn keyword vimOption contained        noakm noanti noarab noari noautoindent noautowriteall nobackup nobin nobl nobri noci nocompatible nocp nocscopetag nocst nocul nocursorline nodg noea noedcompatible noemoji noequalalways noet noexrc nofileignorecase nofk nofs nogdefault nohidden nohkmapp nohlsearch noignorecase noimcmdline noincsearch noinsertmode nojs
 
 " vimOptions: These are the invertible variants {{{2
 syn keyword vimOption contained        invacd invallowrevins invantialias invarabic invarshape invautoread invaw invballooneval invbinary invbomb invbuflisted invcin invconfirm invcrb invcscopeverbose invcsverb invcursorbind invdeco invdiff inveb invek invendofline inverrorbells invex invfen invfixendofline invfkmap invfsync invguipty invhk invhkp invic invim invimd invinf invis invlangnoremap invlazyredraw invlinebreak invlist invloadplugins invlrm invma invmagic invml invmodeline invmodified invmousef invmousehide invnumber invopendevice invpi invpreviewwindow invpvw invrelativenumber invrestorescreen invri invrl invro invru invsb invscb invscs invsft invshelltemp invshortname invshowfulltag invshowmode invsm invsmartindent invsmd invsol invsplitbelow invspr invssl invstartofline invswapfile invta invtagrelative invtbi invtbs invterse invtextmode invtgst invtimeout invto invtr invttybuiltin invtx invundofile invvisualbell invwarn invweirdinvert invwfw invwildignorecase invwinfixheight invwiv invwrap invwrite invwritebackup
 syn keyword vimOption contained        invai invaltkeymap invar invarabicshape invautochdir invautowrite invawa invbeval invbk invbreakindent invcf invcindent invcopyindent invcscoperelative invcsre invcuc invcursorcolumn invdelcombine invdigraph inved invemo inveol invesckeys invexpandtab invfic invfixeol invfoldenable invgd invhid invhkmap invhls invicon invimc invimdisable invinfercase invjoinspaces invlangremap invlbr invlisp invlnr invlpl invlz invmacatsui invmh invmod invmodifiable invmore invmousefocus invnu invodev invpaste invpreserveindent invprompt invreadonly invremap invrevins invrightleft invrnu invrs invruler invsc invscrollbind invsecure invshellslash invshiftround invshowcmd invshowmatch invsi invsmartcase invsmarttab invsn invspell invsplitright invsr invsta invstmp invswf invtagbsearch invtagstack invtbidi invtermbidi invtextauto invtf invtildeop invtitle invtop invttimeout invttyfast invudf invvb invwa invwb invwfh invwic invwildmenu invwinfixwidth invwmnu invwrapscan invwriteany invws
-syn keyword vimOption contained        invakm invanti invarab invari invautoindent invautowriteall invbackup invbin invbl invbri invci invcompatible invcp invcscopetag invcst invcul invcursorline invdg invea invedcompatible invemoji invequalalways invet invexrc invfileignorecase invfk invfs invgdefault invhidden invhkmapp invhlsearch invignorecase invimcmdline invincsearch invinsertmode invjs 
+syn keyword vimOption contained        invakm invanti invarab invari invautoindent invautowriteall invbackup invbin invbl invbri invci invcompatible invcp invcscopetag invcst invcul invcursorline invdg invea invedcompatible invemoji invequalalways invet invexrc invfileignorecase invfk invfs invgdefault invhidden invhkmapp invhlsearch invignorecase invimcmdline invincsearch invinsertmode invjs
 
 " termcap codes (which can also be set) {{{2
 syn keyword vimOption contained        t_8b t_AB t_al t_bc t_BE t_ce t_cl t_Co t_Cs t_CV t_db t_DL t_EI t_F2 t_F4 t_F6 t_F8 t_fs t_IE t_k1 t_k2 t_K3 t_K4 t_K5 t_K6 t_K7 t_k8 t_K8 t_k9 t_K9 t_KA t_kb t_kB t_KB t_KC t_kd t_kD t_KD t_ke t_KE t_KF t_KG t_kh t_KH t_kI t_KI t_KJ t_KK t_kl t_KL t_kN t_kP t_kr t_ks t_ku t_le t_mb t_md t_me t_mr t_ms t_nd t_op t_PE t_PS t_RB t_RC t_RF t_RI t_RS t_RV t_Sb t_SC t_se t_Sf t_SH t_SI t_so t_sr t_SR t_te t_Te t_ti t_ts t_Ts t_u7 t_ue t_us t_ut t_vb t_ve t_vi t_vs t_VS t_WP t_WS t_xn t_xs t_ZH t_ZR
-syn keyword vimOption contained        t_8f t_AF t_AL t_BD t_cd t_Ce t_cm t_cs t_CS t_da t_dl t_EC t_F1 t_F3 t_F5 t_F7 t_F9 t_GP t_IS t_K1 t_k3 t_k4 t_k5 t_k6 t_k7 
+syn keyword vimOption contained        t_8f t_AF t_AL t_BD t_cd t_Ce t_cm t_cs t_CS t_da t_dl t_EC t_F1 t_F3 t_F5 t_F7 t_F9 t_GP t_IS t_K1 t_k3 t_k4 t_k5 t_k6 t_k7
 syn match   vimOption contained        "t_%1"
 syn match   vimOption contained        "t_#2"
 syn match   vimOption contained        "t_#4"
@@ -62,17 +62,17 @@ syn match   vimOption contained     "t_k;"
 
 " unsupported settings: some were supported by vi but don't do anything in vim {{{2
 " others have been dropped along with msdos support
-syn keyword vimErrSetting contained    bioskey biosk conskey consk autoprint beautify flash graphic hardtabs mesg novice open op optimize redraw slow slowopen sourceany w300 w1200 w9600 hardtabs ht nobioskey nobiosk noconskey noconsk noautoprint nobeautify noflash nographic nohardtabs nomesg nonovice noopen noop nooptimize noredraw noslow noslowopen nosourceany now300 now1200 now9600 w1200 w300 w9600 
+syn keyword vimErrSetting contained    bioskey biosk conskey consk autoprint beautify flash graphic hardtabs mesg novice open op optimize redraw slow slowopen sourceany w300 w1200 w9600 hardtabs ht nobioskey nobiosk noconskey noconsk noautoprint nobeautify noflash nographic nohardtabs nomesg nonovice noopen noop nooptimize noredraw noslow noslowopen nosourceany now300 now1200 now9600 w1200 w300 w9600
 
 " AutoCmd Events {{{2
 syn case ignore
-syn keyword vimAutoEvent contained     BufAdd BufCreate BufDelete BufEnter BufFilePost BufFilePre BufHidden BufLeave BufNew BufNewFile BufRead BufReadCmd BufReadPost BufReadPre BufUnload BufWinEnter BufWinLeave BufWipeout BufWrite BufWriteCmd BufWritePost BufWritePre CmdlineEnter CmdlineLeave CmdUndefined CmdwinEnter CmdwinLeave ColorScheme CompleteDone CursorHold CursorHoldI CursorMoved CursorMovedI EncodingChanged FileAppendCmd FileAppendPost FileAppendPre FileChangedRO FileChangedShell FileChangedShellPost FileEncoding FileReadCmd FileReadPost FileReadPre FileType FileWriteCmd FileWritePost FileWritePre FilterReadPost FilterReadPre FilterWritePost FilterWritePre FocusGained FocusLost FuncUndefined GUIEnter GUIFailed InsertChange InsertCharPre InsertEnter InsertLeave MenuPopup OptionSet QuickFixCmdPost QuickFixCmdPre QuitPre RemoteReply SessionLoadPost ShellCmdPost ShellFilterPost SourceCmd SourcePre SpellFileMissing StdinReadPost StdinReadPre SwapExists Syntax TabClosed TabEnter TabLeave TabNew TermChanged TermResponse TextChanged TextChangedI TextChangedP User VimEnter VimLeave VimLeavePre VimResized WinEnter WinLeave WinNew 
+syn keyword vimAutoEvent contained     BufAdd BufCreate BufDelete BufEnter BufFilePost BufFilePre BufHidden BufLeave BufNew BufNewFile BufRead BufReadCmd BufReadPost BufReadPre BufUnload BufWinEnter BufWinLeave BufWipeout BufWrite BufWriteCmd BufWritePost BufWritePre CmdlineEnter CmdlineLeave CmdUndefined CmdwinEnter CmdwinLeave ColorScheme CompleteDone CursorHold CursorHoldI CursorMoved CursorMovedI EncodingChanged FileAppendCmd FileAppendPost FileAppendPre FileChangedRO FileChangedShell FileChangedShellPost FileEncoding FileReadCmd FileReadPost FileReadPre FileType FileWriteCmd FileWritePost FileWritePre FilterReadPost FilterReadPre FilterWritePost FilterWritePre FocusGained FocusLost FuncUndefined GUIEnter GUIFailed InsertChange InsertCharPre InsertEnter InsertLeave MenuPopup OptionSet QuickFixCmdPost QuickFixCmdPre QuitPre RemoteReply SessionLoadPost ShellCmdPost ShellFilterPost SourceCmd SourcePre SpellFileMissing StdinReadPost StdinReadPre SwapExists Syntax TabClosed TabEnter TabLeave TabNew TermChanged TermResponse TextChanged TextChangedI User VimEnter VimLeave VimLeavePre VimResized WinEnter WinLeave WinNew
 
 " Highlight commonly used Groupnames {{{2
-syn keyword vimGroup contained Comment Constant String Character Number Boolean Float Identifier Function Statement Conditional Repeat Label Operator Keyword Exception PreProc Include Define Macro PreCondit Type StorageClass Structure Typedef Special SpecialChar Tag Delimiter SpecialComment Debug Underlined Ignore Error Todo 
+syn keyword vimGroup contained Comment Constant String Character Number Boolean Float Identifier Function Statement Conditional Repeat Label Operator Keyword Exception PreProc Include Define Macro PreCondit Type StorageClass Structure Typedef Special SpecialChar Tag Delimiter SpecialComment Debug Underlined Ignore Error Todo
 
 " Default highlighting groups {{{2
-syn keyword vimHLGroup contained       ColorColumn Cursor CursorColumn CursorIM CursorLine CursorLineNr DiffAdd DiffChange DiffDelete DiffText Directory EndOfBuffer ErrorMsg FoldColumn Folded IncSearch LineNr MatchParen Menu ModeMsg MoreMsg NonText Normal Pmenu PmenuSbar PmenuSel PmenuThumb Question QuickFixLine Scrollbar Search SignColumn SpecialKey SpellBad SpellCap SpellLocal SpellRare StatusLine StatusLineNC TabLine TabLineFill TabLineSel Title Tooltip VertSplit Visual VisualNOS WarningMsg WildMenu 
+syn keyword vimHLGroup contained       ColorColumn Cursor CursorColumn CursorIM CursorLine CursorLineNr DiffAdd DiffChange DiffDelete DiffText Directory EndOfBuffer ErrorMsg FoldColumn Folded IncSearch LineNr MatchParen Menu ModeMsg MoreMsg NonText Normal Pmenu PmenuSbar PmenuSel PmenuThumb Question QuickFixLine Scrollbar Search SignColumn SpecialKey SpellBad SpellCap SpellLocal SpellRare StatusLine StatusLineNC TabLine TabLineFill TabLineSel Title Tooltip VertSplit Visual VisualNOS WarningMsg WildMenu
 syn match vimHLGroup contained "Conceal"
 syn case match
 
@@ -80,52 +80,52 @@ syn case match
 syn keyword vimFuncName contained      abs append argv assert_fails assert_notequal atan browsedir bufname byte2line ceil ch_close ch_getbufnr ch_logfile ch_sendexpr cindent complete_add cos cursor diff_filler eval exepath extend filter floor foldclosed foldtextresult garbagecollect getbufvar getcmdline getcompletion getfperm getline getpos gettabinfo getwinposx glob2regpat haslocaldir histget hostname input inputsave isdirectory job_getchannel job_status js_encode len line2byte log10 mapcheck matcharg matchstr mkdir nr2char pow py3eval readfile remote_expr remote_send repeat screenattr search searchpos setbufvar setline setqflist setwinvar simplify soundfold sqrt strcharpart strftime string strridx submatch synID synstack tabpagebuflist tagfiles tanh term_getattr term_getline term_getstatus term_gettty term_sendkeys term_wait test_feedinput test_null_channel test_null_list test_override timer_pause timer_stopall tr undofile values wildmenumode win_findbuf winheight winline winrestview wordcount
 syn keyword vimFuncName contained      acos argc asin assert_false assert_notmatch atan2 bufexists bufnr byteidx changenr ch_close_in ch_getjob ch_open ch_sendraw clearmatches complete_check cosh deepcopy diff_hlID eventhandler exists feedkeys finddir fmod foldclosedend foreground get getchar getcmdpos getcurpos getfsize getloclist getqflist gettabvar getwinposy globpath hasmapto histnr iconv inputdialog inputsecret islocked job_info job_stop json_decode libcall lispindent luaeval match matchdelete matchstrpos mode or prevnonblank pyeval reltime remote_foreground remote_startserver resolve screenchar searchdecl server2client setcharsearch setloclist setreg sha256 sin spellbadword str2float strchars strgetchar strlen strtrans substitute synIDattr system tabpagenr taglist tempname term_getcursor term_getscrolled term_gettitle term_list term_setsize test_alloc_fail test_garbagecollect_now test_null_dict test_null_partial test_settime timer_start tolower trunc undotree virtcol winbufnr win_getid win_id2tabwin winnr winsaveview writefile
 syn keyword vimFuncName contained      add argidx assert_equal assert_inrange assert_report balloon_show buflisted bufwinid byteidxcomp char2nr ch_evalexpr ch_info ch_read ch_setoptions col confirm count delete empty executable exp filereadable findfile fnameescape foldlevel funcref getbufinfo getcharmod getcmdtype getcwd getftime getmatches getreg gettabwinvar getwinvar has histadd hlexists indent inputlist insert isnan job_setoptions join json_encode libcallnr localtime map matchadd matchend max mzeval pathshorten printf pyxeval reltimefloat remote_peek remove reverse screencol searchpair serverlist setcmdpos setmatches settabvar shellescape sinh spellsuggest str2nr strdisplaywidth stridx strpart strwidth synconcealed synIDtrans systemlist tabpagewinnr tan term_getaltscreen term_getjob term_getsize term_getttty term_scrape term_start test_autochdir test_ignore_error test_null_job test_null_string timer_info timer_stop toupper type uniq visualmode wincol win_gotoid win_id2win winrestcmd winwidth xor
-syn keyword vimFuncName contained      and arglistid assert_exception assert_match assert_true browse bufloaded bufwinnr call ch_canread ch_evalraw ch_log ch_readraw ch_status complete copy cscope_connection did_filetype escape execute expand filewritable float2nr fnamemodify foldtext function getbufline getcharsearch getcmdwintype getfontname getftype getpid getregtype getwininfo glob has_key histdel hlID index inputrestore invert items job_start js_decode keys line log maparg matchaddpos matchlist min nextnonblank perleval pumvisible range reltimestr remote_read rename round screenrow searchpairpos setbufline setfperm setpos settabwinvar shiftwidth sort split 
+syn keyword vimFuncName contained      and arglistid assert_exception assert_match assert_true browse bufloaded bufwinnr call ch_canread ch_evalraw ch_log ch_readraw ch_status complete copy cscope_connection did_filetype escape execute expand filewritable float2nr fnamemodify foldtext function getbufline getcharsearch getcmdwintype getfontname getftype getpid getregtype getwininfo glob has_key histdel hlID index inputrestore invert items job_start js_decode keys line log maparg matchaddpos matchlist min nextnonblank perleval pumvisible range reltimestr remote_read rename round screenrow searchpairpos setbufline setfperm setpos settabwinvar shiftwidth sort split
 
 "--- syntax here and above generated by mkvimvim ---
 " Special Vim Highlighting (not automatic) {{{1
 
 " Set up folding commands
 if exists("g:vimsyn_folding") && g:vimsyn_folding =~# '[aflmpPrt]'
- if g:vimsyn_folding =~# 'a' 
-  com! -nargs=* VimFolda <args> fold 
- else 
-  com! -nargs=* VimFolda <args> 
+ if g:vimsyn_folding =~# 'a'
+  com! -nargs=* VimFolda <args> fold
+ else
+  com! -nargs=* VimFolda <args>
  endif
- if g:vimsyn_folding =~# 'f' 
-  com! -nargs=* VimFoldf <args> fold 
- else 
-  com! -nargs=* VimFoldf <args> 
+ if g:vimsyn_folding =~# 'f'
+  com! -nargs=* VimFoldf <args> fold
+ else
+  com! -nargs=* VimFoldf <args>
  endif
- if g:vimsyn_folding =~# 'l' 
-  com! -nargs=* VimFoldl <args> fold 
- else 
-  com! -nargs=* VimFoldl <args> 
+ if g:vimsyn_folding =~# 'l'
+  com! -nargs=* VimFoldl <args> fold
+ else
+  com! -nargs=* VimFoldl <args>
  endif
- if g:vimsyn_folding =~# 'm' 
-  com! -nargs=* VimFoldm <args> fold 
- else 
-  com! -nargs=* VimFoldm <args> 
+ if g:vimsyn_folding =~# 'm'
+  com! -nargs=* VimFoldm <args> fold
+ else
+  com! -nargs=* VimFoldm <args>
  endif
- if g:vimsyn_folding =~# 'p' 
-  com! -nargs=* VimFoldp <args> fold 
- else 
-  com! -nargs=* VimFoldp <args> 
+ if g:vimsyn_folding =~# 'p'
+  com! -nargs=* VimFoldp <args> fold
+ else
+  com! -nargs=* VimFoldp <args>
  endif
- if g:vimsyn_folding =~# 'P' 
-  com! -nargs=* VimFoldP <args> fold 
- else 
-  com! -nargs=* VimFoldP <args> 
+ if g:vimsyn_folding =~# 'P'
+  com! -nargs=* VimFoldP <args> fold
+ else
+  com! -nargs=* VimFoldP <args>
  endif
- if g:vimsyn_folding =~# 'r' 
-  com! -nargs=* VimFoldr <args> fold 
- else 
-  com! -nargs=* VimFoldr <args> 
+ if g:vimsyn_folding =~# 'r'
+  com! -nargs=* VimFoldr <args> fold
+ else
+  com! -nargs=* VimFoldr <args>
  endif
- if g:vimsyn_folding =~# 't' 
-  com! -nargs=* VimFoldt <args> fold 
- else 
-  com! -nargs=* VimFoldt <args> 
+ if g:vimsyn_folding =~# 't'
+  com! -nargs=* VimFoldt <args> fold
+ else
+  com! -nargs=* VimFoldt <args>
  endif
 else
  com! -nargs=* VimFolda        <args>
@@ -164,7 +164,7 @@ endif
 syn match vimNumber    "\<\d\+\%(\.\d\+\%([eE][+-]\=\d\+\)\=\)\=" skipwhite nextgroup=vimGlobal,vimSubst,vimCommand
 syn match vimNumber    "-\d\+\%(\.\d\+\%([eE][+-]\=\d\+\)\=\)\="  skipwhite nextgroup=vimGlobal,vimSubst,vimCommand
 syn match vimNumber    "\<0[xX]\x\+"
-syn match vimNumber    "\%(^\|[^a-zA-Z]\)\zs#\x\{6}"
+syn match vimNumber    "\%(^\|\A\)\zs#\x\{6}"
 
 " All vimCommands are contained by vimIsCommands. {{{2
 syn match vimCmdSep    "[:|]\+"        skipwhite nextgroup=vimAddress,vimAutoCmd,vimIsCommand,vimExtCmd,vimFilter,vimLet,vimMap,vimMark,vimSet,vimSyntax,vimUserCmd
@@ -214,7 +214,7 @@ syn keyword vimAugroupKey contained aug[roup]
 " Operators: {{{2
 " =========
 syn cluster    vimOperGroup    contains=vimEnvvar,vimFunc,vimFuncVar,vimOper,vimOperParen,vimNumber,vimString,vimRegister,vimContinue
-syn match      vimOper "\(==\|!=\|>=\|<=\|=\~\|!\~\|>\|<\|=\)[?#]\{0,2}"       skipwhite nextgroup=vimString,vimSpecFile
+syn match      vimOper "\%#=1\(==\|!=\|>=\|<=\|=\~\|!\~\|>\|<\|=\)[?#]\{0,2}"  skipwhite nextgroup=vimString,vimSpecFile
 syn match      vimOper "\(\<is\>\|\<isnot\>\)[?#]\{0,2}"               skipwhite nextgroup=vimString,vimSpecFile
 syn match      vimOper "||\|&&\|[-+.]"                 skipwhite nextgroup=vimString,vimSpecFile
 syn region     vimOperParen    matchgroup=vimParenSep  start="(" end=")" contains=@vimOperGroup
@@ -321,7 +321,7 @@ syn region  vimSubstPat     contained       matchgroup=vimSubstDelim start="\z([^a-zA-Z
 syn region     vimSubstRep4    contained       matchgroup=vimSubstDelim start="\z(.\)" skip="\\\\\|\\\z1" end="\z1" matchgroup=vimNotation end="<[cC][rR]>" contains=@vimSubstRepList  nextgroup=vimSubstFlagErr       oneline
 syn region     vimCollection   contained transparent   start="\\\@<!\[" skip="\\\[" end="\]"   contains=vimCollClass
 syn match      vimCollClassErr contained       "\[:.\{-\}:\]"
-syn match      vimCollClass    contained transparent   "\[:\(alnum\|alpha\|blank\|cntrl\|digit\|graph\|lower\|print\|punct\|space\|upper\|xdigit\|return\|tab\|escape\|backspace\):\]"
+syn match      vimCollClass    contained transparent   "\%#=1\[:\(alnum\|alpha\|blank\|cntrl\|digit\|graph\|lower\|print\|punct\|space\|upper\|xdigit\|return\|tab\|escape\|backspace\):\]"
 syn match      vimSubstSubstr  contained       "\\z\=\d"
 syn match      vimSubstTwoBS   contained       "\\\\"
 syn match      vimSubstFlagErr contained       "[^< \t\r|]\+" contains=vimSubstFlags
@@ -394,7 +394,7 @@ syn keyword vimMap          mapc[lear] smapc[lear]
 syn keyword    vimUnmap                cu[nmap] iu[nmap] lu[nmap] nun[map] ou[nmap] sunm[ap] unm[ap] unm[ap] vu[nmap] xu[nmap] skipwhite nextgroup=vimMapBang,vimMapMod,vimMapLhs
 syn match      vimMapLhs       contained       "\S\+"                  contains=vimNotation,vimCtrlChar skipwhite nextgroup=vimMapRhs
 syn match      vimMapBang      contained       "!"                     skipwhite nextgroup=vimMapMod,vimMapLhs
-syn match      vimMapMod       contained       "\c<\(buffer\|expr\|\(local\)\=leader\|nowait\|plug\|script\|sid\|unique\|silent\)\+>" contains=vimMapModKey,vimMapModErr skipwhite nextgroup=vimMapMod,vimMapLhs
+syn match      vimMapMod       contained       "\%#=1\c<\(buffer\|expr\|\(local\)\=leader\|nowait\|plug\|script\|sid\|unique\|silent\)\+>" contains=vimMapModKey,vimMapModErr skipwhite nextgroup=vimMapMod,vimMapLhs
 syn match      vimMapRhs       contained       ".*" contains=vimNotation,vimCtrlChar   skipnl nextgroup=vimMapRhsExtend
 syn match      vimMapRhsExtend contained       "^\s*\\.*$"                     contains=vimContinue
 syn case ignore
@@ -416,27 +416,27 @@ syn match vimMenuBang     "!"     contained skipwhite nextgroup=@vimMenuList
 " Angle-Bracket Notation (tnx to Michael Geddes) {{{2
 " ======================
 syn case ignore
-syn match      vimNotation     "\(\\\|<lt>\)\=<\([scamd]-\)\{0,4}x\=\(f\d\{1,2}\|[^ \t:]\|cr\|lf\|linefeed\|return\|k\=del\%[ete]\|bs\|backspace\|tab\|esc\|right\|left\|help\|undo\|insert\|ins\|k\=home\|k\=end\|kplus\|kminus\|kdivide\|kmultiply\|kenter\|kpoint\|space\|k\=\(page\)\=\(\|down\|up\|k\d\>\)\)>" contains=vimBracket
-syn match      vimNotation     "\(\\\|<lt>\)\=<\([scam2-4]-\)\{0,4}\(right\|left\|middle\)\(mouse\)\=\(drag\|release\)\=>"     contains=vimBracket
-syn match      vimNotation     "\(\\\|<lt>\)\=<\(bslash\|plug\|sid\|space\|bar\|nop\|nul\|lt\)>"               contains=vimBracket
-syn match      vimNotation     '\(\\\|<lt>\)\=<C-R>[0-9a-z"%#:.\-=]'he=e-1                     contains=vimBracket
-syn match      vimNotation     '\(\\\|<lt>\)\=<\%(q-\)\=\(line[12]\|count\|bang\|reg\|args\|mods\|f-args\|f-mods\|lt\)>'       contains=vimBracket
-syn match      vimNotation     "\(\\\|<lt>\)\=<\([cas]file\|abuf\|amatch\|cword\|cWORD\|client\)>"             contains=vimBracket
+syn match      vimNotation     "\%#=1\(\\\|<lt>\)\=<\([scamd]-\)\{0,4}x\=\(f\d\{1,2}\|[^ \t:]\|cr\|lf\|linefeed\|return\|k\=del\%[ete]\|bs\|backspace\|tab\|esc\|right\|left\|help\|undo\|insert\|ins\|k\=home\|k\=end\|kplus\|kminus\|kdivide\|kmultiply\|kenter\|kpoint\|space\|k\=\(page\)\=\(\|down\|up\|k\d\>\)\)>" contains=vimBracket
+syn match      vimNotation     "\%#=1\(\\\|<lt>\)\=<\([scam2-4]-\)\{0,4}\(right\|left\|middle\)\(mouse\)\=\(drag\|release\)\=>"        contains=vimBracket
+syn match      vimNotation     "\%#=1\(\\\|<lt>\)\=<\(bslash\|plug\|sid\|space\|bar\|nop\|nul\|lt\)>"                  contains=vimBracket
+syn match      vimNotation     '\(\\\|<lt>\)\=<C-R>[0-9a-z"%#:.\-=]'he=e-1                             contains=vimBracket
+syn match      vimNotation     '\%#=1\(\\\|<lt>\)\=<\%(q-\)\=\(line[12]\|count\|bang\|reg\|args\|mods\|f-args\|f-mods\|lt\)>'  contains=vimBracket
+syn match      vimNotation     "\%#=1\(\\\|<lt>\)\=<\([cas]file\|abuf\|amatch\|cword\|cWORD\|client\)>"                contains=vimBracket
 syn match      vimBracket contained    "[\\<>]"
 syn case match
 
 " User Function Highlighting {{{2
 " (following Gautam Iyer's suggestion)
 " ==========================
-syn match vimFunc              "\%(\%([sSgGbBwWtTlL]:\|<[sS][iI][dD]>\)\=\%([a-zA-Z0-9_]\+\.\)*\I[a-zA-Z0-9_.]*\)\ze\s*("              contains=vimFuncName,vimUserFunc,vimExecute
-syn match vimUserFunc contained        "\%(\%([sSgGbBwWtTlL]:\|<[sS][iI][dD]>\)\=\%([a-zA-Z0-9_]\+\.\)*\I[a-zA-Z0-9_.]*\)\|\<\u[a-zA-Z0-9.]*\>\|\<if\>"        contains=vimNotation
+syn match vimFunc              "\%(\%([sSgGbBwWtTlL]:\|<[sS][iI][dD]>\)\=\%(\w\+\.\)*\I[a-zA-Z0-9_.]*\)\ze\s*("                contains=vimFuncName,vimUserFunc,vimExecute
+syn match vimUserFunc contained        "\%(\%([sSgGbBwWtTlL]:\|<[sS][iI][dD]>\)\=\%(\w\+\.\)*\I[a-zA-Z0-9_.]*\)\|\<\u[a-zA-Z0-9.]*\>\|\<if\>"  contains=vimNotation
 syn match vimNotFunc   "\<if\>\|\<el\%[seif]\>\|\<return\>\|\<while\>"
 
 " Errors And Warnings: {{{2
 " ====================
 if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_novimfunctionerror")
  syn match     vimFunctionError        "\s\zs[a-z0-9]\i\{-}\ze\s*("                    contained contains=vimFuncKey,vimFuncBlank
-" syn match    vimFunctionError        "\s\zs\%(<[sS][iI][dD]>\|[sSgGbBwWtTlL]:\)[0-9]\i\{-}\ze\s*("   contained contains=vimFuncKey,vimFuncBlank
+" syn match    vimFunctionError        "\s\zs\%(<[sS][iI][dD]>\|[sSgGbBwWtTlL]:\)\d\i\{-}\ze\s*("      contained contains=vimFuncKey,vimFuncBlank
  syn match     vimElseIfErr    "\<else\s\+if\>"
  syn match     vimBufnrWarn    /\<bufnr\s*(\s*["']\.['"]\s*)/
 endif
@@ -493,14 +493,14 @@ syn cluster vimFuncBodyList add=vimSynType
 syn cluster    vimSynKeyGroup  contains=vimSynNextgroup,vimSynKeyOpt,vimSynKeyContainedin
 syn keyword    vimSynType      contained       keyword skipwhite nextgroup=vimSynKeyRegion
 syn region     vimSynKeyRegion contained oneline keepend       matchgroup=vimGroupName start="\h\w*" skip="\\\\\|\\|" matchgroup=vimSep end="|\|$" contains=@vimSynKeyGroup
-syn match      vimSynKeyOpt    contained       "\<\(conceal\|contained\|transparent\|skipempty\|skipwhite\|skipnl\)\>"
+syn match      vimSynKeyOpt    contained       "\%#=1\<\(conceal\|contained\|transparent\|skipempty\|skipwhite\|skipnl\)\>"
 syn cluster vimFuncBodyList add=vimSynType
 
 " Syntax: match {{{2
 syn cluster    vimSynMtchGroup contains=vimMtchComment,vimSynContains,vimSynError,vimSynMtchOpt,vimSynNextgroup,vimSynRegPat,vimNotation
 syn keyword    vimSynType      contained       match   skipwhite nextgroup=vimSynMatchRegion
 syn region     vimSynMatchRegion       contained keepend       matchgroup=vimGroupName start="\h\w*" matchgroup=vimSep end="|\|$" contains=@vimSynMtchGroup
-syn match      vimSynMtchOpt   contained       "\<\(conceal\|transparent\|contained\|excludenl\|keepend\|skipempty\|skipwhite\|display\|extend\|skipnl\|fold\)\>"
+syn match      vimSynMtchOpt   contained       "\%#=1\<\(conceal\|transparent\|contained\|excludenl\|keepend\|skipempty\|skipwhite\|display\|extend\|skipnl\|fold\)\>"
 if has("conceal")
  syn match     vimSynMtchOpt   contained       "\<cchar="      nextgroup=vimSynMtchCchar
  syn match     vimSynMtchCchar contained       "\S"
@@ -515,12 +515,12 @@ syn cluster       vimSynRegPatGroup       contains=vimPatSep,vimNotPatSep,vimSynPatRange,vim
 syn cluster    vimSynRegGroup  contains=vimSynContains,vimSynNextgroup,vimSynRegOpt,vimSynReg,vimSynMtchGrp
 syn keyword    vimSynType      contained       region  skipwhite nextgroup=vimSynRegion
 syn region     vimSynRegion    contained keepend       matchgroup=vimGroupName start="\h\w*" skip="\\\\\|\\|" end="|\|$" contains=@vimSynRegGroup
-syn match      vimSynRegOpt    contained       "\<\(conceal\(ends\)\=\|transparent\|contained\|excludenl\|skipempty\|skipwhite\|display\|keepend\|oneline\|extend\|skipnl\|fold\)\>"
+syn match      vimSynRegOpt    contained       "\%#=1\<\(conceal\(ends\)\=\|transparent\|contained\|excludenl\|skipempty\|skipwhite\|display\|keepend\|oneline\|extend\|skipnl\|fold\)\>"
 syn match      vimSynReg       contained       "\(start\|skip\|end\)="he=e-1   nextgroup=vimSynRegPat
 syn match      vimSynMtchGrp   contained       "matchgroup="   nextgroup=vimGroup,vimHLGroup
 syn region     vimSynRegPat    contained extend        start="\z([-`~!@#$%^&*_=+;:'",./?]\)"  skip="\\\\\|\\\z1"  end="\z1"  contains=@vimSynRegPatGroup skipwhite nextgroup=vimSynPatMod,vimSynReg
-syn match      vimSynPatMod    contained       "\(hs\|ms\|me\|hs\|he\|rs\|re\)=[se]\([-+]\d\+\)\="
-syn match      vimSynPatMod    contained       "\(hs\|ms\|me\|hs\|he\|rs\|re\)=[se]\([-+]\d\+\)\=," nextgroup=vimSynPatMod
+syn match      vimSynPatMod    contained       "\%#=1\(hs\|ms\|me\|hs\|he\|rs\|re\)=[se]\([-+]\d\+\)\="
+syn match      vimSynPatMod    contained       "\%#=1\(hs\|ms\|me\|hs\|he\|rs\|re\)=[se]\([-+]\d\+\)\=," nextgroup=vimSynPatMod
 syn match      vimSynPatMod    contained       "lc=\d\+"
 syn match      vimSynPatMod    contained       "lc=\d\+," nextgroup=vimSynPatMod
 syn region     vimSynPatRange  contained       start="\["      skip="\\\\\|\\]"   end="]"
@@ -553,7 +553,7 @@ syn match   vimIsCommand    "<Bar>\s*\a\+"  transparent contains=vimCommand,vimNotatio
 " ============
 syn cluster    vimHighlightCluster             contains=vimHiLink,vimHiClear,vimHiKeyList,vimComment
 if !exists("g:vimsyn_noerror") && !exists("g:vimsyn_novimhictermerror")
- syn match     vimHiCtermError contained       "[^0-9]\i*"
+ syn match     vimHiCtermError contained       "\D\i*"
 endif
 syn match      vimHighlight    "\<hi\%[ghlight]\>"     skipwhite nextgroup=vimHiBang,@vimHighlightCluster
 syn match      vimHiBang       contained       "!"     skipwhite nextgroup=@vimHighlightCluster
@@ -645,6 +645,7 @@ if !filereadable(s:luapath)
 endif
 if (g:vimsyn_embed =~# 'l' && has("lua")) && filereadable(s:luapath)
  unlet! b:current_syntax
+ syn cluster vimFuncBodyList   add=vimLuaRegion
  exe "syn include @vimLuaScript ".s:luapath
  VimFoldl syn region vimLuaRegion matchgroup=vimScriptDelim start=+lua\s*<<\s*\z(.*\)$+ end=+^\z1$+    contains=@vimLuaScript
  VimFoldl syn region vimLuaRegion matchgroup=vimScriptDelim start=+lua\s*<<\s*$+ end=+\.$+             contains=@vimLuaScript
@@ -667,6 +668,7 @@ if !filereadable(s:perlpath)
 endif
 if (g:vimsyn_embed =~# 'p' && has("perl")) && filereadable(s:perlpath)
  unlet! b:current_syntax
+ syn cluster vimFuncBodyList   add=vimPerlRegion
  exe "syn include @vimPerlScript ".s:perlpath
  VimFoldp syn region vimPerlRegion  matchgroup=vimScriptDelim start=+pe\%[rl]\s*<<\s*\z(.*\)$+ end=+^\z1$+     contains=@vimPerlScript
  VimFoldp syn region vimPerlRegion     matchgroup=vimScriptDelim start=+pe\%[rl]\s*<<\s*$+ end=+\.$+   contains=@vimPerlScript
@@ -688,6 +690,7 @@ if !filereadable(s:rubypath)
  endfor
 endif
 if (g:vimsyn_embed =~# 'r' && has("ruby")) && filereadable(s:rubypath)
+ syn cluster vimFuncBodyList   add=vimRubyRegion
  unlet! b:current_syntax
  exe "syn include @vimRubyScript ".s:rubypath
  VimFoldr syn region vimRubyRegion matchgroup=vimScriptDelim start=+rub[y]\s*<<\s*\z(.*\)$+ end=+^\z1$+        contains=@vimRubyScript
@@ -709,12 +712,13 @@ if !filereadable(s:pythonpath)
   endif
  endfor
 endif
-if g:vimsyn_embed =~# 'P' && (has("python") || has("python3")) && filereadable(s:pythonpath)
+if g:vimsyn_embed =~# 'P' && has("pythonx") && filereadable(s:pythonpath)
  unlet! b:current_syntax
+ syn cluster vimFuncBodyList   add=vimPythonRegion
  exe "syn include @vimPythonScript ".s:pythonpath
  VimFoldP syn region vimPythonRegion matchgroup=vimScriptDelim start=+py\%[thon]3\=\s*<<\s*\z(.*\)$+ end=+^\z1$+       contains=@vimPythonScript
  VimFoldP syn region vimPythonRegion matchgroup=vimScriptDelim start=+py\%[thon]3\=\s*<<\s*$+ end=+\.$+                contains=@vimPythonScript
- VimFoldP syn region vimPythonRegion matchgroup=vimScriptDelim start=+Py\%[thon]2or3\s*<<\s*\z(.*\)$+ end=+^\z1$+              contains=@vimPythonScript
+ VimFoldP syn region vimPythonRegion matchgroup=vimScriptDelim start=+Py\%[thon]2or3\s*<<\s*\z(.*\)$+ end=+^\z1$+      contains=@vimPythonScript
  VimFoldP syn region vimPythonRegion matchgroup=vimScriptDelim start=+Py\%[thon]2or3\=\s*<<\s*$+ end=+\.$+             contains=@vimPythonScript
  syn cluster vimFuncBodyList   add=vimPythonRegion
 else
@@ -742,6 +746,7 @@ if s:trytcl
  endif
  if (g:vimsyn_embed =~# 't' && has("tcl")) && filereadable(s:tclpath)
   unlet! b:current_syntax
+  syn cluster vimFuncBodyList  add=vimTclRegion
   exe "syn include @vimTclScript ".s:tclpath
   VimFoldt syn region vimTclRegion matchgroup=vimScriptDelim start=+tc[l]\=\s*<<\s*\z(.*\)$+ end=+^\z1$+       contains=@vimTclScript
   VimFoldt syn region vimTclRegion matchgroup=vimScriptDelim start=+tc[l]\=\s*<<\s*$+ end=+\.$+        contains=@vimTclScript
@@ -770,6 +775,7 @@ endif
 if (g:vimsyn_embed =~# 'm' && has("mzscheme")) && filereadable(s:mzschemepath)
  unlet! b:current_syntax
  let s:iskKeep= &isk
+ syn cluster vimFuncBodyList   add=vimMzSchemeRegion
  exe "syn include @vimMzSchemeScript ".s:mzschemepath
  let &isk= s:iskKeep
  unlet s:iskKeep
index 48dcdc7476d2e4e5db5f55c21133b1a600a86e01..79238fdb27e11dd12a33892ea76092eda03e33f3 100755 (executable)
@@ -3,11 +3,12 @@
 # shtags: create a tags file for perl scripts
 #
 # Author:      Stephen Riehm
-# Last Changed:        96/11/27 19:46:06
-#
-# "@(#) shtags 1.1 by S. Riehm"
+# Updated by: David Woodfall <dave@dawoodfall.net>
+# Last Changed:        2018/04/02
 #
 
+use Getopt::Std;
+
 # obvious... :-)
 sub usage
     {
@@ -30,7 +31,7 @@ sub version
     #
     # Version information
     #
-    @id = split( ', ', 'scripts/bin/shtags, /usr/local/, LOCAL_SCRIPTS, 1.1, 96/11/27, 19:46:06' );
+    @id = split( ', ', 'scripts/bin/shtags, /usr/local/, LOCAL_SCRIPTS, 1.2, 18/04/02, 07:37' );
     $id[0] =~ s,.*/,,;
     print <<_EOVERS;
 $id[0]:                $id[3]
@@ -45,12 +46,11 @@ _EOVERS
 # initialisations
 #
 ($program = $0) =~ s,.*/,,;
-require 'getopts.pl';
 
 #
 # parse command line
 #
-&Getopts( "t:s:vVwx" ) || &usage();
+getopts( "t:s:vVwx" ) || &usage();
 $tags_file = $opt_t || 'tags';
 $explicit = $opt_x;
 $variable_tags = $opt_v;