aboutsummaryrefslogblamecommitdiff
path: root/vim/after/syntax/sh.vim
blob: 59ff92d73dc7e8fae58ef447d9582c720c76cc40 (plain) (tree)
1
2
3
4
5
6
7
8
9
10









                                                                





                                                        


                                                                              













                            
            






            


           
              






             















               
          



           


             

          
" shDerefSimple in sh.vim is not quite right, so let's fix it up
syntax clear shDerefSimple

" $var, $VAR, $var_new, $_var, $var1 ...
syntax match shDerefSimple '\$\h[a-zA-Z0-9_]*'
" $0, $1, $2 ...
syntax match shDerefSimple '\$\d'
" $-, $#, $* ...
syntax match shDerefSimple '\$[-#*@!?$]'

" Trust me to get my dereferencing right
syntax clear shDerefWordError

" I don't like having 'restart', 'start" etc highlighted
syntax clear bashAdminStatement

" Limit bashStatement only to alphanumeric shell builtins, except for the ones
" that declare variables (declare, typeset, local, export, unset) as they're
" used in shSetList
syntax clear bashStatement
syntax keyword bashStatement
    \ alias
    \ bg
    \ bind
    \ break
    \ builtin
    \ caller
    \ cd
    \ command
    \ compgen
    \ complete
    \ compopt
    \ continue
    \ coproc
    \ dirs
    \ disown
    \ echo
    \ enable
    \ eval
    \ exec
    \ exit
    \ false
    \ fc
    \ fg
    \ function
    \ getopts
    \ hash
    \ help
    \ history
    \ jobs
    \ kill
    \ let
    \ logout
    \ mapfile
    \ popd
    \ printf
    \ pushd
    \ pwd
    \ read
    \ readarray
    \ readonly
    \ return
    \ set
    \ shift
    \ shopt
    \ source
    \ suspend
    \ test
    \ time
    \ times
    \ trap
    \ true
    \ type
    \ ulimit
    \ umask
    \ unalias
    \ wait