summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAdam Stankiewicz <sheerun@sher.pl>2020-10-24 16:34:21 +0200
committerAdam Stankiewicz <sheerun@sher.pl>2020-10-24 16:34:29 +0200
commit73245289847c4e806e9bc20b7382f2a46eb9337c (patch)
treee2539857fec2ca81c08c3f17073162fb92efb15c
parent0a2f2cc04d39f996d5afcdbc99f5b4190f094bbb (diff)
downloadvim-polyglot-73245289847c4e806e9bc20b7382f2a46eb9337c.tar.gz
vim-polyglot-73245289847c4e806e9bc20b7382f2a46eb9337c.zip
Fix detecting shell filetypes, closes #603
-rw-r--r--after/syntax/c.vim3
-rw-r--r--extras/filetype.vim104
-rwxr-xr-xscripts/build1
-rw-r--r--syntax/qml.vim2
4 files changed, 56 insertions, 54 deletions
diff --git a/after/syntax/c.vim b/after/syntax/c.vim
index 821350c3..80501e19 100644
--- a/after/syntax/c.vim
+++ b/after/syntax/c.vim
@@ -7,7 +7,7 @@ if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cpp-modern') ==
" http://www.vim.org/scripts/script.php?script_id=3064
" Maintainer: bfrg <bfrg@users.noreply.github.com>
" Website: https://github.com/bfrg/vim-cpp-modern
-" Last Change: Oct 22, 2020
+" Last Change: Oct 23, 2020
"
" Extended C syntax highlighting including highlighting of user-defined
" functions.
@@ -63,6 +63,7 @@ hi def link cAnsiName Identifier
if get(g:, 'cpp_simple_highlight', 0)
hi link cStorageClass Statement
hi link cStructure Statement
+ hi link cTypedef Statement
hi link cLabel Statement
endif
diff --git a/extras/filetype.vim b/extras/filetype.vim
index dbc797f8..feb30448 100644
--- a/extras/filetype.vim
+++ b/extras/filetype.vim
@@ -54,7 +54,7 @@ endfunc
au BufNewFile,BufRead $VIMRUNTIME/doc/*.txt setf help
" Abaqus or Trasys
-au BufNewFile,BufRead *.inp call dist#ft#Check_inp()
+au BufNewFile,BufRead *.inp call polyglot#ft#Check_inp()
" 8th (Firth-derivative)
au BufNewFile,BufRead *.8th setf 8th
@@ -160,7 +160,7 @@ au BufNewFile,BufRead */boot/grub/menu.lst,*/boot/grub/grub.conf,*/etc/grub.conf
" Assembly (all kinds)
" *.lst is not pure assembly, it has two extra columns (address, byte codes)
-au BufNewFile,BufRead *.asm,*.[sS],*.[aA],*.mac,*.lst call dist#ft#FTasm()
+au BufNewFile,BufRead *.asm,*.[sS],*.[aA],*.mac,*.lst call polyglot#ft#FTasm()
" Macro (VAX)
au BufNewFile,BufRead *.mar setf vmasm
@@ -190,7 +190,7 @@ au BufNewFile,BufRead *.awk,*.gawk setf awk
au BufNewFile,BufRead *.mch,*.ref,*.imp setf b
" BASIC or Visual Basic
-au BufNewFile,BufRead *.bas call dist#ft#FTVB("basic")
+au BufNewFile,BufRead *.bas call polyglot#ft#FTVB("basic")
" Visual Basic Script (close to Visual Basic) or Visual Basic .NET
au BufNewFile,BufRead *.vb,*.vbs,*.dsm,*.ctl setf vb
@@ -208,7 +208,7 @@ au BufNewFile,BufRead *.cmd
\ if getline(1) =~ '^/\*' | setf rexx | else | setf dosbatch | endif
" Batch file for 4DOS
-au BufNewFile,BufRead *.btm call dist#ft#FTbtm()
+au BufNewFile,BufRead *.btm call polyglot#ft#FTbtm()
" BC calculator
au BufNewFile,BufRead *.bc setf bc
@@ -228,7 +228,7 @@ au BufNewFile,BufRead named*.conf,rndc*.conf,rndc*.key setf named
" BIND zone
au BufNewFile,BufRead named.root setf bindzone
-au BufNewFile,BufRead *.db call dist#ft#BindzoneCheck('')
+au BufNewFile,BufRead *.db call polyglot#ft#BindzoneCheck('')
" Blank
au BufNewFile,BufRead *.bl setf blank
@@ -247,7 +247,7 @@ if has("fname_case")
endif
" C or lpc
-au BufNewFile,BufRead *.c call dist#ft#FTlpc()
+au BufNewFile,BufRead *.c call polyglot#ft#FTlpc()
au BufNewFile,BufRead *.lpc,*.ulpc setf lpc
" Calendar
@@ -302,7 +302,7 @@ endif
" .h files can be C, Ch C++, ObjC or ObjC++.
" Set c_syntax_for_h if you want C, ch_syntax_for_h if you want Ch. ObjC is
" detected automatically.
-au BufNewFile,BufRead *.h call dist#ft#FTheader()
+au BufNewFile,BufRead *.h call polyglot#ft#FTheader()
" Ch (CHscript)
au BufNewFile,BufRead *.chf setf ch
@@ -336,7 +336,7 @@ au BufNewFile,BufRead NEWS
au BufNewFile,BufRead *..ch setf chill
" Changes for WEB and CWEB or CHILL
-au BufNewFile,BufRead *.ch call dist#ft#FTchange()
+au BufNewFile,BufRead *.ch call polyglot#ft#FTchange()
" ChordPro
au BufNewFile,BufRead *.chopro,*.crd,*.cho,*.crdpro,*.chordpro setf chordpro
@@ -348,7 +348,7 @@ au BufNewFile,BufRead *.dcl,*.icl setf clean
au BufNewFile,BufRead *.eni setf cl
" Clever or dtd
-au BufNewFile,BufRead *.ent call dist#ft#FTent()
+au BufNewFile,BufRead *.ent call polyglot#ft#FTent()
" Clipper (or FoxPro; could also be eviews)
au BufNewFile,BufRead *.prg
@@ -403,9 +403,9 @@ au BufNewFile,BufRead *enlightenment/*.cfg setf c
au BufNewFile,BufRead *Eterm/*.cfg setf eterm
" Euphoria 3 or 4
-au BufNewFile,BufRead *.eu,*.ew,*.ex,*.exu,*.exw call dist#ft#EuphoriaCheck()
+au BufNewFile,BufRead *.eu,*.ew,*.ex,*.exu,*.exw call polyglot#ft#EuphoriaCheck()
if has("fname_case")
- au BufNewFile,BufRead *.EU,*.EW,*.EX,*.EXU,*.EXW call dist#ft#EuphoriaCheck()
+ au BufNewFile,BufRead *.EU,*.EW,*.EX,*.EXU,*.EXW call polyglot#ft#EuphoriaCheck()
endif
" Lynx config files
@@ -462,7 +462,7 @@ au BufNewFile,BufRead */etc/dnsmasq.conf setf dnsmasq
au BufNewFile,BufRead *.desc setf desc
" the D language or dtrace
-au BufNewFile,BufRead *.d call dist#ft#DtraceCheck()
+au BufNewFile,BufRead *.d call polyglot#ft#DtraceCheck()
" Desktop files
au BufNewFile,BufRead *.desktop,*.directory setf desktop
@@ -494,7 +494,7 @@ au BufNewFile,BufRead *.rul
\ endif
" DCL (Digital Command Language - vms) or DNS zone file
-au BufNewFile,BufRead *.com call dist#ft#BindzoneCheck('dcl')
+au BufNewFile,BufRead *.com call polyglot#ft#BindzoneCheck('dcl')
" DOT
au BufNewFile,BufRead *.dot,*.gv setf dot
@@ -542,7 +542,7 @@ au BufNewFile,BufRead .editorconfig setf dosini
au BufNewFile,BufRead *.ecd setf ecd
" Eiffel or Specman or Euphoria
-au BufNewFile,BufRead *.e,*.E call dist#ft#FTe()
+au BufNewFile,BufRead *.e,*.E call polyglot#ft#FTe()
" Elinks configuration
au BufNewFile,BufRead elinks.conf setf elinks
@@ -720,7 +720,7 @@ au BufRead,BufNewFile *.hws setf hollywood
au BufNewFile,BufRead *.t.html setf tilde
" HTML (.shtml and .stm for server side)
-au BufNewFile,BufRead *.html,*.htm,*.shtml,*.stm call dist#ft#FThtml()
+au BufNewFile,BufRead *.html,*.htm,*.shtml,*.stm call polyglot#ft#FThtml()
" HTML with Ruby - eRuby
au BufNewFile,BufRead *.erb,*.rhtml setf eruby
@@ -747,7 +747,7 @@ au BufNewFile,BufRead *.htt,*.htb setf httest
au BufNewFile,BufRead *.icn setf icon
" IDL (Interface Description Language)
-au BufNewFile,BufRead *.idl call dist#ft#FTidl()
+au BufNewFile,BufRead *.idl call polyglot#ft#FTidl()
" Microsoft IDL (Interface Description Language) Also *.idl
" MOF = WMI (Windows Management Instrumentation) Managed Object Format
@@ -758,10 +758,10 @@ au BufNewFile,BufRead */.icewm/menu setf icemenu
" Indent profile (must come before IDL *.pro!)
au BufNewFile,BufRead .indent.pro setf indent
-au BufNewFile,BufRead indent.pro call dist#ft#ProtoCheck('indent')
+au BufNewFile,BufRead indent.pro call polyglot#ft#ProtoCheck('indent')
" IDL (Interactive Data Language)
-au BufNewFile,BufRead *.pro call dist#ft#ProtoCheck('idlang')
+au BufNewFile,BufRead *.pro call polyglot#ft#ProtoCheck('idlang')
" Indent RC
au BufNewFile,BufRead indentrc setf indent
@@ -981,7 +981,7 @@ au BufNewFile,BufRead *.markdown,*.mdown,*.mkd,*.mkdn,*.mdwn,*.md setf markdown
au BufNewFile,BufRead *.mason,*.mhtml,*.comp setf mason
" Mathematica, Matlab, Murphi or Objective C
-au BufNewFile,BufRead *.m call dist#ft#FTm()
+au BufNewFile,BufRead *.m call polyglot#ft#FTm()
" Mathematica notebook
au BufNewFile,BufRead *.nb setf mma
@@ -1014,7 +1014,7 @@ au BufNewFile,BufRead *.mgl setf mgl
au BufNewFile,BufRead *.mix,*.mixal setf mix
" MMIX or VMS makefile
-au BufNewFile,BufRead *.mms call dist#ft#FTmms()
+au BufNewFile,BufRead *.mms call polyglot#ft#FTmms()
" Symbian meta-makefile definition (MMP)
au BufNewFile,BufRead *.mmp setf mmp
@@ -1105,10 +1105,10 @@ au BufNewFile,BufRead *.me
\ setf nroff |
\ endif
au BufNewFile,BufRead *.tr,*.nr,*.roff,*.tmac,*.mom setf nroff
-au BufNewFile,BufRead *.[1-9] call dist#ft#FTnroff()
+au BufNewFile,BufRead *.[1-9] call polyglot#ft#FTnroff()
" Nroff or Objective C++
-au BufNewFile,BufRead *.mm call dist#ft#FTmm()
+au BufNewFile,BufRead *.mm call polyglot#ft#FTmm()
" Not Quite C
au BufNewFile,BufRead *.nqc setf nqc
@@ -1175,9 +1175,9 @@ au BufNewFile,BufRead *.pcmk setf pcmk
" Perl
if has("fname_case")
- au BufNewFile,BufRead *.pl,*.PL call dist#ft#FTpl()
+ au BufNewFile,BufRead *.pl,*.PL call polyglot#ft#FTpl()
else
- au BufNewFile,BufRead *.pl call dist#ft#FTpl()
+ au BufNewFile,BufRead *.pl call polyglot#ft#FTpl()
endif
au BufNewFile,BufRead *.plx,*.al,*.psgi setf perl
au BufNewFile,BufRead *.p6,*.pm6,*.pl6 setf perl6
@@ -1253,7 +1253,7 @@ au BufNewFile,BufRead *.pov setf pov
au BufNewFile,BufRead .povrayrc setf povini
" Povray, PHP or assembly
-au BufNewFile,BufRead *.inc call dist#ft#FTinc()
+au BufNewFile,BufRead *.inc call polyglot#ft#FTinc()
" Printcap and Termcap
au BufNewFile,BufRead *printcap
@@ -1282,13 +1282,13 @@ au BufNewFile,BufRead *.action setf privoxy
au BufNewFile,BufRead .procmail,.procmailrc setf procmail
" Progress or CWEB
-au BufNewFile,BufRead *.w call dist#ft#FTprogress_cweb()
+au BufNewFile,BufRead *.w call polyglot#ft#FTprogress_cweb()
" Progress or assembly
-au BufNewFile,BufRead *.i call dist#ft#FTprogress_asm()
+au BufNewFile,BufRead *.i call polyglot#ft#FTprogress_asm()
" Progress or Pascal
-au BufNewFile,BufRead *.p call dist#ft#FTprogress_pascal()
+au BufNewFile,BufRead *.p call polyglot#ft#FTprogress_pascal()
" Software Distributor Product Specification File (POSIX 1387.2-1995)
au BufNewFile,BufRead *.psf setf psf
@@ -1371,7 +1371,7 @@ else
endif
" Rexx, Rebol or R
-au BufNewFile,BufRead *.r,*.R call dist#ft#FTr()
+au BufNewFile,BufRead *.r,*.R call polyglot#ft#FTr()
" Remind
au BufNewFile,BufRead .reminders,*.remind,*.rem setf remind
@@ -1467,7 +1467,7 @@ au BufNewFile,BufRead *.siv,*.sieve setf sieve
au BufNewFile,BufRead sendmail.cf setf sm
" Sendmail .mc files are actually m4. Could also be MS Message text file.
-au BufNewFile,BufRead *.mc call dist#ft#McSetf()
+au BufNewFile,BufRead *.mc call polyglot#ft#McSetf()
" Services
au BufNewFile,BufRead */etc/services setf services
@@ -1508,9 +1508,9 @@ au BufNewFile,BufRead catalog setf catalog
" Shell scripts (sh, ksh, bash, bash2, csh); Allow .profile_foo etc.
" Gentoo ebuilds and Arch Linux PKGBUILDs are actually bash scripts
" NOTE: Patterns ending in a star are further down, these have lower priority.
-au BufNewFile,BufRead .bashrc,bashrc,bash.bashrc,.bash[_-]profile,.bash[_-]logout,.bash[_-]aliases,bash-fc[-.],*.bash,*/{,.}bash[_-]completion{,.d,.sh}{,/*},*.ebuild,*.eclass,PKGBUILD call dist#ft#SetFileTypeSH("bash")
-au BufNewFile,BufRead .kshrc,*.ksh call dist#ft#SetFileTypeSH("ksh")
-au BufNewFile,BufRead */etc/profile,.profile,*.sh,*.env call dist#ft#SetFileTypeSH(getline(1))
+au BufNewFile,BufRead .bashrc,bashrc,bash.bashrc,.bash[_-]profile,.bash[_-]logout,.bash[_-]aliases,bash-fc[-.],*.bash,*/{,.}bash[_-]completion{,.d,.sh}{,/*},*.ebuild,*.eclass,PKGBUILD call polyglot#ft#SetFileTypeSH("bash")
+au BufNewFile,BufRead .kshrc,*.ksh call polyglot#ft#SetFileTypeSH("ksh")
+au BufNewFile,BufRead */etc/profile,.profile,*.sh,*.env call polyglot#ft#SetFileTypeSH(getline(1))
" Shell script (Arch Linux) or PHP file (Drupal)
@@ -1518,15 +1518,15 @@ au BufNewFile,BufRead *.install
\ if getline(1) =~ '<?php' |
\ setf php |
\ else |
- \ call dist#ft#SetFileTypeSH("bash") |
+ \ call polyglot#ft#SetFileTypeSH("bash") |
\ endif
" tcsh scripts (patterns ending in a star further below)
-au BufNewFile,BufRead .tcshrc,*.tcsh,tcsh.tcshrc,tcsh.login call dist#ft#SetFileTypeShell("tcsh")
+au BufNewFile,BufRead .tcshrc,*.tcsh,tcsh.tcshrc,tcsh.login call polyglot#ft#SetFileTypeShell("tcsh")
" csh scripts, but might also be tcsh scripts (on some systems csh is tcsh)
" (patterns ending in a start further below)
-au BufNewFile,BufRead .login,.cshrc,csh.cshrc,csh.login,csh.logout,*.csh,.alias call dist#ft#CSH()
+au BufNewFile,BufRead .login,.cshrc,csh.cshrc,csh.login,csh.logout,*.csh,.alias call polyglot#ft#CSH()
" Z-Shell script (patterns ending in a star further below)
au BufNewFile,BufRead .zprofile,*/etc/zprofile,.zfbfmarks setf zsh
@@ -1597,7 +1597,7 @@ au BufNewFile,BufRead *.mib,*.my setf mib
" Snort Configuration
au BufNewFile,BufRead *.hog,snort.conf,vision.conf setf hog
-au BufNewFile,BufRead *.rules call dist#ft#FTRules()
+au BufNewFile,BufRead *.rules call polyglot#ft#FTRules()
" Spec (Linux RPM)
au BufNewFile,BufRead *.spec setf spec
@@ -1621,7 +1621,7 @@ au BufNewFile,BufRead squid.conf setf squid
au BufNewFile,BufRead *.tyb,*.typ,*.tyc,*.pkb,*.pks setf sql
" SQL
-au BufNewFile,BufRead *.sql call dist#ft#SQL()
+au BufNewFile,BufRead *.sql call polyglot#ft#SQL()
" SQLJ
au BufNewFile,BufRead *.sqlj setf sqlj
@@ -1688,7 +1688,7 @@ au BufNewFile,BufRead *.svg setf svg
" Tads (or Nroff or Perl test file)
au BufNewFile,BufRead *.t
- \ if !dist#ft#FTnroff() && !dist#ft#FTperl() | setf tads | endif
+ \ if !polyglot#ft#FTnroff() && !polyglot#ft#FTperl() | setf tads | endif
" Tags
au BufNewFile,BufRead tags setf tags
@@ -1717,7 +1717,7 @@ au BufNewFile,BufRead *.ti setf terminfo
" TeX
au BufNewFile,BufRead *.latex,*.sty,*.dtx,*.ltx,*.bbl setf tex
-au BufNewFile,BufRead *.tex call dist#ft#FTtex()
+au BufNewFile,BufRead *.tex call polyglot#ft#FTtex()
" ConTeXt
au BufNewFile,BufRead *.mkii,*.mkiv,*.mkvi setf context
@@ -1820,7 +1820,7 @@ au BufRead,BufNewFile *.hw,*.module,*.pkg
\ endif
" Visual Basic (also uses *.bas) or FORM
-au BufNewFile,BufRead *.frm call dist#ft#FTVB("form")
+au BufNewFile,BufRead *.frm call polyglot#ft#FTVB("form")
" SaxBasic is close to Visual Basic
au BufNewFile,BufRead *.sba setf vb
@@ -1916,10 +1916,10 @@ au BufNewFile,BufRead .Xdefaults,.Xpdefaults,.Xresources,xdm-config,*.ad setf xd
" Xmath
au BufNewFile,BufRead *.msc,*.msf setf xmath
au BufNewFile,BufRead *.ms
- \ if !dist#ft#FTnroff() | setf xmath | endif
+ \ if !polyglot#ft#FTnroff() | setf xmath | endif
" XML specific variants: docbk and xbl
-au BufNewFile,BufRead *.xml call dist#ft#FTxml()
+au BufNewFile,BufRead *.xml call polyglot#ft#FTxml()
" XMI (holding UML models) is also XML
au BufNewFile,BufRead *.xmi setf xml
@@ -1966,7 +1966,7 @@ au BufNewFile,BufRead *.xsl,*.xslt setf xslt
au BufNewFile,BufRead *.yy,*.yxx,*.y++ setf yacc
" Yacc or racc
-au BufNewFile,BufRead *.y call dist#ft#FTy()
+au BufNewFile,BufRead *.y call polyglot#ft#FTy()
" Yaml
au BufNewFile,BufRead *.yaml,*.yml setf yaml
@@ -1985,9 +1985,9 @@ au BufNewFile,BufRead *.zut setf zimbutempl
" Zope
" dtml (zope dynamic template markup language), pt (zope page template),
" cpt (zope form controller page template)
-au BufNewFile,BufRead *.dtml,*.pt,*.cpt call dist#ft#FThtml()
+au BufNewFile,BufRead *.dtml,*.pt,*.cpt call polyglot#ft#FThtml()
" zsql (zope sql method)
-au BufNewFile,BufRead *.zsql call dist#ft#SQL()
+au BufNewFile,BufRead *.zsql call polyglot#ft#SQL()
" Z80 assembler asz80
au BufNewFile,BufRead *.z8a setf z8a
@@ -2152,7 +2152,7 @@ au BufNewFile,BufRead *termcap*
" ReDIF
" Only used when the .rdf file was not detected to be XML.
-au BufRead,BufNewFile *.rdf call dist#ft#Redif()
+au BufRead,BufNewFile *.rdf call polyglot#ft#Redif()
" Remind
au BufNewFile,BufRead .reminders* call s:StarSetf('remind')
@@ -2161,15 +2161,15 @@ au BufNewFile,BufRead .reminders* call s:StarSetf('remind')
au BufNewFile,BufRead sgml.catalog* call s:StarSetf('catalog')
" Shell scripts ending in a star
-au BufNewFile,BufRead .bashrc*,.bash[_-]profile*,.bash[_-]logout*,.bash[_-]aliases*,bash-fc[-.]*,,PKGBUILD* call dist#ft#SetFileTypeSH("bash")
-au BufNewFile,BufRead .kshrc* call dist#ft#SetFileTypeSH("ksh")
-au BufNewFile,BufRead .profile* call dist#ft#SetFileTypeSH(getline(1))
+au BufNewFile,BufRead .bashrc*,.bash[_-]profile*,.bash[_-]logout*,.bash[_-]aliases*,bash-fc[-.]*,,PKGBUILD* call polyglot#ft#SetFileTypeSH("bash")
+au BufNewFile,BufRead .kshrc* call polyglot#ft#SetFileTypeSH("ksh")
+au BufNewFile,BufRead .profile* call polyglot#ft#SetFileTypeSH(getline(1))
" tcsh scripts ending in a star
-au BufNewFile,BufRead .tcshrc* call dist#ft#SetFileTypeShell("tcsh")
+au BufNewFile,BufRead .tcshrc* call polyglot#ft#SetFileTypeShell("tcsh")
" csh scripts ending in a star
-au BufNewFile,BufRead .login*,.cshrc* call dist#ft#CSH()
+au BufNewFile,BufRead .login*,.cshrc* call polyglot#ft#CSH()
" VHDL
au BufNewFile,BufRead *.vhdl_[0-9]* call s:StarSetf('vhdl')
diff --git a/scripts/build b/scripts/build
index 15d12333..efae3219 100755
--- a/scripts/build
+++ b/scripts/build
@@ -890,6 +890,7 @@ def generate_fallback
filetype_content.gsub!(/^au BufNewFile,BufRead \*\n.+?runtime!.+?endif/m) {}
filetype_content.gsub!(/^au StdinReadPost \* .+?runtime!.+?endif/m) {}
filetype_content.gsub!(/^au filetypedetect BufNewFile,BufRead,StdinReadPost \*\n.+?endif/m) {}
+ filetype_content.gsub!("dist#ft#", "polyglot#ft#")
File.write('extras/filetype.vim', filetype_content)
File.write('extras/menu.vim', File.read('tmp/vim/vim/runtime/menu.vim'))
diff --git a/syntax/qml.vim b/syntax/qml.vim
index 268c9f8e..15f1d255 100644
--- a/syntax/qml.vim
+++ b/syntax/qml.vim
@@ -54,7 +54,7 @@ syn keyword qmlRepeat while for do in
syn keyword qmlBranch break continue
syn keyword qmlOperator new delete instanceof typeof
syn keyword qmlJsType Array Boolean Date Function Number Object String RegExp
-syn keyword qmlType action alias bool color date double enumeration font int list point real rect size string time url variant vector3d
+syn keyword qmlType action alias bool color date double enumeration font int list point real rect size string time url variant vector2d vector3d vector4d
syn keyword qmlStatement return with
syn keyword qmlBoolean true false
syn keyword qmlNull null undefined