Compare commits

...

1 Commits

Author SHA1 Message Date
Adam Stankiewicz
7123e97498 Disable native autocommands when appropriate, fixes #533 2020-09-03 05:36:55 +02:00
4 changed files with 273 additions and 45 deletions

View File

@@ -43,7 +43,7 @@ let s:globs = {
\ 'clojure': '{*.clj,*.boot,*.cl2,*.cljc,*.cljs,*.cljs.hl,*.cljscm,*.cljx,*.hic,*.edn,riemann.config,build.boot,profile.boot,}', \ 'clojure': '{*.clj,*.boot,*.cl2,*.cljc,*.cljs,*.cljs.hl,*.cljscm,*.cljx,*.hic,*.edn,riemann.config,build.boot,profile.boot,}',
\ 'cmake': '{*.cmake,*.cmake.in,CMakeLists.txt,}', \ 'cmake': '{*.cmake,*.cmake.in,CMakeLists.txt,}',
\ 'coffee': '{*.coffee,*._coffee,*.cake,*.cjsx,*.iced,*.coffeekup,Cakefile,}', \ 'coffee': '{*.coffee,*._coffee,*.cake,*.cjsx,*.iced,*.coffeekup,Cakefile,}',
\ 'cpp': '{*.cpp,*.c++,*.cc,*.cp,*.cxx,*.h,*.h++,*.hh,*.hpp,*.hxx,*.inc,*.inl,*.ino,*.ipp,*.re,*.tcc,*.tpp,}', \ 'cpp': '{*.cpp,*.c++,*.cc,*.cp,*.cxx,*.h,*.h++,*.hh,*.hpp,*.hxx,*.inc,*.inl,*.ipp,*.tcc,*.tpp,}',
\ 'cql': '{*.cql,}', \ 'cql': '{*.cql,}',
\ 'cryptol': '{*.cry,*.cyl,*.lcry,*.lcyl,}', \ 'cryptol': '{*.cry,*.cyl,*.lcry,*.lcyl,}',
\ 'crystal': '{*.cr,Projectfile,}', \ 'crystal': '{*.cr,Projectfile,}',
@@ -94,7 +94,7 @@ let s:globs = {
\ 'haproxy': '{*.cfg,haproxy.cfg,haproxy*.c*,}', \ 'haproxy': '{*.cfg,haproxy.cfg,haproxy*.c*,}',
\ 'haskell': '{*.hs,*.hs-boot,*.hsc,*.bpk,*.hsig,}', \ 'haskell': '{*.hs,*.hs-boot,*.hsc,*.bpk,*.hsig,}',
\ 'haxe': '{*.hx,*.hxsl,}', \ 'haxe': '{*.hx,*.hxsl,}',
\ 'hcl': '{*.hcl,*.nomad,*.tf,*.tfvars,*.workflow,Appfile,}', \ 'hcl': '{*.hcl,*.nomad,*.workflow,Appfile,}',
\ 'helm': '{,}', \ 'helm': '{,}',
\ 'help': '{,}', \ 'help': '{,}',
\ 'hive': '{*.q,*.hql,*.ql,}', \ 'hive': '{*.q,*.hql,*.ql,}',
@@ -106,7 +106,7 @@ let s:globs = {
\ 'ion': '{*.ion,}', \ 'ion': '{*.ion,}',
\ 'javascript': '{*.js,*._js,*.bones,*.cjs,*.es,*.es6,*.frag,*.gs,*.jake,*.jsb,*.jscad,*.jsfl,*.jsm,*.jss,*.mjs,*.njs,*.pac,*.sjs,*.ssjs,*.xsjs,*.xsjslib,Jakefile,}', \ 'javascript': '{*.js,*._js,*.bones,*.cjs,*.es,*.es6,*.frag,*.gs,*.jake,*.jsb,*.jscad,*.jsfl,*.jsm,*.jss,*.mjs,*.njs,*.pac,*.sjs,*.ssjs,*.xsjs,*.xsjslib,Jakefile,}',
\ 'javascriptreact': '{*.jsx,}', \ 'javascriptreact': '{*.jsx,}',
\ 'jinja.html': '{*.jinja,*.j2,*.jinja2,*.njk,}', \ 'jinja.html': '{*.jinja,*.j2,*.jinja2,}',
\ 'jq': '{*.jq,.jqrc,}', \ 'jq': '{*.jq,.jqrc,}',
\ 'json': '{*.json,*.avsc,*.geojson,*.gltf,*.har,*.ice,*.JSON-tmLanguage,*.jsonl,*.mcmeta,*.tfstate,*.tfstate.backup,*.topojson,*.webapp,*.webmanifest,*.yy,*.yyp,*.jsonp,*.template,.arcconfig,.htmlhintrc,.tern-config,.tern-project,.watchmanconfig,composer.lock,mcmod.info,}', \ 'json': '{*.json,*.avsc,*.geojson,*.gltf,*.har,*.ice,*.JSON-tmLanguage,*.jsonl,*.mcmeta,*.tfstate,*.tfstate.backup,*.topojson,*.webapp,*.webmanifest,*.yy,*.yyp,*.jsonp,*.template,.arcconfig,.htmlhintrc,.tern-config,.tern-project,.watchmanconfig,composer.lock,mcmod.info,}',
\ 'json5': '{*.json5,}', \ 'json5': '{*.json5,}',
@@ -124,7 +124,7 @@ let s:globs = {
\ 'lua': '{*.lua,*.fcgi,*.nse,*.p8,*.pd_lua,*.rbxs,*.rockspec,*.wlua,.luacheckrc,}', \ 'lua': '{*.lua,*.fcgi,*.nse,*.p8,*.pd_lua,*.rbxs,*.rockspec,*.wlua,.luacheckrc,}',
\ 'm4': '{*.m4,*.at,}', \ 'm4': '{*.m4,*.at,}',
\ 'mako': '{*.mako,*.mao,}', \ 'mako': '{*.mako,*.mao,}',
\ 'markdown': '{*.md,*.markdown,*.mdown,*.mdwn,*.mdx,*.mkd,*.mkdn,*.mkdown,*.ronn,*.workbook,contents.lr,}', \ 'markdown': '{*.md,*.markdown,*.mdown,*.mdwn,*.mkd,*.mkdn,*.mkdown,*.ronn,*.workbook,contents.lr,}',
\ 'markdown.mdx': '{*.mdx,}', \ 'markdown.mdx': '{*.mdx,}',
\ 'meson': '{meson.build,meson_options.txt,}', \ 'meson': '{meson.build,meson_options.txt,}',
\ 'mma': '{*.mathematica,*.cdf,*.m,*.ma,*.mt,*.nb,*.nbp,*.wl,*.wlt,*.wls,}', \ 'mma': '{*.mathematica,*.cdf,*.m,*.ma,*.mt,*.nb,*.nbp,*.wl,*.wlt,*.wls,}',
@@ -157,7 +157,7 @@ let s:globs = {
\ 'python': '{*.py,*.cgi,*.fcgi,*.gyp,*.gypi,*.lmi,*.py3,*.pyde,*.pyi,*.pyp,*.pyt,*.pyw,*.rpy,*.smk,*.spec,*.tac,*.wsgi,*.xpy,.gclient,DEPS,SConscript,SConstruct,Snakefile,wscript,}', \ 'python': '{*.py,*.cgi,*.fcgi,*.gyp,*.gypi,*.lmi,*.py3,*.pyde,*.pyi,*.pyp,*.pyt,*.pyw,*.rpy,*.smk,*.spec,*.tac,*.wsgi,*.xpy,.gclient,DEPS,SConscript,SConstruct,Snakefile,wscript,}',
\ 'qmake': '{*.pro,*.pri,}', \ 'qmake': '{*.pro,*.pri,}',
\ 'qml': '{*.qml,*.qbs,}', \ 'qml': '{*.qml,*.qbs,}',
\ 'r': '{*.r,*.rd,*.rsx,*.s,*.S,.Rprofile,expr-dist,}', \ 'r': '{*.r,*.rsx,*.s,*.S,.Rprofile,expr-dist,}',
\ 'racket': '{*.rkt,*.rktd,*.rktl,*.scrbl,}', \ 'racket': '{*.rkt,*.rktd,*.rktl,*.scrbl,}',
\ 'ragel': '{*.rl,}', \ 'ragel': '{*.rl,}',
\ 'raku': '{*.6pl,*.6pm,*.nqp,*.p6,*.p6l,*.p6m,*.pl,*.pl6,*.pm,*.pm6,*.t,*.rakudoc,*.rakutest,*.raku,*.rakumod,*.pod6,*.t6,}', \ 'raku': '{*.6pl,*.6pm,*.nqp,*.p6,*.p6l,*.p6m,*.pl,*.pl6,*.pm,*.pm6,*.t,*.rakudoc,*.rakutest,*.raku,*.rakumod,*.pod6,*.t6,}',
@@ -167,18 +167,18 @@ let s:globs = {
\ 'requirements': '{*.pip,*requirements.{txt,in},*require.{txt,in},constraints.{txt,in},}', \ 'requirements': '{*.pip,*requirements.{txt,in},*require.{txt,in},constraints.{txt,in},}',
\ 'rhelp': '{*.rd,}', \ 'rhelp': '{*.rd,}',
\ 'rst': '{*.rst,*.rest,*.rest.txt,*.rst.txt,}', \ 'rst': '{*.rst,*.rest,*.rest.txt,*.rst.txt,}',
\ 'ruby': '{*.rb,*.builder,*.eye,*.fcgi,*.gemspec,*.god,*.jbuilder,*.mspec,*.pluginspec,*.podspec,*.rabl,*.rake,*.rbi,*.rbuild,*.rbw,*.rbx,*.ru,*.ruby,*.spec,*.thor,*.watchr,*.rxml,*.rjs,*.rant,*.axlsx,*.cap,*.opal,.irbrc,.pryrc,.simplecov,Appraisals,Berksfile,Brewfile,Buildfile,Capfile,Dangerfile,Deliverfile,Fastfile,Gemfile,Gemfile.lock,Guardfile,Jarfile,Mavenfile,Podfile,Puppetfile,Rakefile,Snapfile,Thorfile,Vagrantfile,buildfile,Rantfile,.autotest,Cheffile,KitchenSink,Routefile,.Guardfile,.Brewfile,vagrantfile,[Rr]akefile*,*_spec.rb,}', \ 'ruby': '{*.rb,*.builder,*.eye,*.fcgi,*.gemspec,*.god,*.jbuilder,*.mspec,*.pluginspec,*.podspec,*.rabl,*.rake,*.rbi,*.rbuild,*.rbw,*.rbx,*.ru,*.ruby,*.spec,*.thor,*.watchr,*.rxml,*.rjs,*.rant,*.axlsx,*.cap,*.opal,.irbrc,.pryrc,.simplecov,Appraisals,Berksfile,Buildfile,Capfile,Dangerfile,Deliverfile,Fastfile,Gemfile,Gemfile.lock,Guardfile,Jarfile,Mavenfile,Podfile,Puppetfile,Rakefile,Snapfile,Thorfile,Vagrantfile,buildfile,Rantfile,.autotest,Cheffile,KitchenSink,Routefile,.Guardfile,.Brewfile,vagrantfile,[Rr]akefile*,*_spec.rb,}',
\ 'rust': '{*.rs,*.rs.in,}', \ 'rust': '{*.rs,*.rs.in,}',
\ 'sbt.scala': '{*.sbt,}', \ 'sbt.scala': '{*.sbt,}',
\ 'scala': '{*.scala,*.kojo,*.sbt,*.sc,}', \ 'scala': '{*.scala,*.kojo,*.sc,}',
\ 'scss': '{*.scss,}', \ 'scss': '{*.scss,}',
\ 'sexplib': '{*.sexp,}', \ 'sexplib': '{*.sexp,}',
\ 'sh': '{*.sh,*.bash,*.bats,*.cgi,*.command,*.env,*.fcgi,*.ksh,*.sh.in,*.tmux,*.tool,*.zsh,.bash_aliases,.bash_history,.bash_logout,.bash_profile,.bashrc,.cshrc,.env,.env.example,.flaskenv,.login,.profile,.zlogin,.zlogout,.zprofile,.zshenv,.zshrc,9fs,PKGBUILD,bash_aliases,bash_logout,bash_profile,bashrc,cshrc,gradlew,login,man,profile,zlogin,zlogout,zprofile,zshenv,zshrc,}', \ 'sh': '{*.sh,*.bash,*.bats,*.cgi,*.command,*.env,*.fcgi,*.ksh,*.sh.in,*.tmux,*.tool,.bash_aliases,.bash_history,.bash_logout,.bash_profile,.bashrc,.cshrc,.env,.env.example,.flaskenv,.login,.profile,9fs,PKGBUILD,bash_aliases,bash_logout,bash_profile,bashrc,cshrc,gradlew,login,man,profile,}',
\ 'slim': '{*.slim,}', \ 'slim': '{*.slim,}',
\ 'slime': '{*.slime,}', \ 'slime': '{*.slime,}',
\ 'smt2': '{*.smt2,*.smt,}', \ 'smt2': '{*.smt2,*.smt,}',
\ 'solidity': '{*.sol,}', \ 'solidity': '{*.sol,}',
\ 'sql': '{*.pgsql,*.sql,}', \ 'sql': '{*.pgsql,}',
\ 'stylus': '{*.styl,*.stylus,}', \ 'stylus': '{*.styl,*.stylus,}',
\ 'svelte': '{*.svelte,}', \ 'svelte': '{*.svelte,}',
\ 'svg': '{*.svg,}', \ 'svg': '{*.svg,}',
@@ -204,7 +204,7 @@ let s:globs = {
\ 'vmasm': '{*.mar,}', \ 'vmasm': '{*.mar,}',
\ 'vue': '{*.vue,*.wpy,}', \ 'vue': '{*.vue,*.wpy,}',
\ 'xdc': '{*.xdc,}', \ 'xdc': '{*.xdc,}',
\ 'xml': '{*.xml,*.adml,*.admx,*.ant,*.axml,*.builds,*.ccproj,*.ccxml,*.clixml,*.cproject,*.cscfg,*.csdef,*.csl,*.csproj,*.ct,*.depproj,*.dita,*.ditamap,*.ditaval,*.dll.config,*.dotsettings,*.filters,*.fsproj,*.fxml,*.glade,*.gml,*.gmx,*.grxml,*.gst,*.iml,*.ivy,*.jelly,*.jsproj,*.kml,*.launch,*.mdpolicy,*.mjml,*.mm,*.mod,*.mxml,*.natvis,*.ncl,*.ndproj,*.nproj,*.nuspec,*.odd,*.osm,*.pkgproj,*.pluginspec,*.proj,*.props,*.ps1xml,*.psc1,*.pt,*.rdf,*.resx,*.rss,*.sch,*.scxml,*.sfproj,*.shproj,*.srdf,*.storyboard,*.sublime-snippet,*.targets,*.tml,*.ts,*.tsx,*.ui,*.urdf,*.ux,*.vbproj,*.vcxproj,*.vsixmanifest,*.vssettings,*.vstemplate,*.vxml,*.wixproj,*.workflow,*.wsdl,*.wsf,*.wxi,*.wxl,*.wxs,*.x3d,*.xacro,*.xaml,*.xib,*.xlf,*.xliff,*.xmi,*.xml.dist,*.xproj,*.xsd,*.xspec,*.xul,*.zcml,*.cdxml,.classpath,.cproject,.project,App.config,NuGet.config,Settings.StyleCop,Web.Debug.config,Web.Release.config,Web.config,packages.config,}', \ 'xml': '{*.xml,*.adml,*.admx,*.ant,*.axml,*.builds,*.ccproj,*.ccxml,*.clixml,*.cproject,*.cscfg,*.csdef,*.csl,*.csproj,*.ct,*.depproj,*.dita,*.ditamap,*.ditaval,*.dll.config,*.dotsettings,*.filters,*.fsproj,*.fxml,*.glade,*.gml,*.gmx,*.grxml,*.gst,*.iml,*.ivy,*.jelly,*.jsproj,*.kml,*.launch,*.mdpolicy,*.mjml,*.mm,*.mod,*.mxml,*.natvis,*.ncl,*.ndproj,*.nproj,*.nuspec,*.odd,*.osm,*.pkgproj,*.pluginspec,*.proj,*.props,*.ps1xml,*.psc1,*.pt,*.rdf,*.resx,*.rss,*.sch,*.scxml,*.sfproj,*.shproj,*.srdf,*.storyboard,*.sublime-snippet,*.targets,*.tml,*.ui,*.urdf,*.ux,*.vbproj,*.vcxproj,*.vsixmanifest,*.vssettings,*.vstemplate,*.vxml,*.wixproj,*.workflow,*.wsdl,*.wsf,*.wxi,*.wxl,*.wxs,*.x3d,*.xacro,*.xaml,*.xib,*.xlf,*.xliff,*.xmi,*.xml.dist,*.xproj,*.xsd,*.xspec,*.xul,*.zcml,*.cdxml,.classpath,.cproject,.project,App.config,NuGet.config,Settings.StyleCop,Web.Debug.config,Web.Release.config,Web.config,packages.config,}',
\ 'xml.twig': '{*.xml.twig,}', \ 'xml.twig': '{*.xml.twig,}',
\ 'xsl': '{*.xslt,*.xsl,}', \ 'xsl': '{*.xslt,*.xsl,}',
\ 'yaml': '{*.yml,*.mir,*.reek,*.rviz,*.sublime-syntax,*.syntax,*.yaml,*.yaml-tmlanguage,*.yaml.sed,*.yml.mysql,.clang-format,.clang-tidy,.gemrc,glide.lock,yarn.lock,fish_history,fish_read_history,}', \ 'yaml': '{*.yml,*.mir,*.reek,*.rviz,*.sublime-syntax,*.syntax,*.yaml,*.yaml-tmlanguage,*.yaml.sed,*.yml.mysql,.clang-format,.clang-tidy,.gemrc,glide.lock,yarn.lock,fish_history,fish_read_history,}',

View File

@@ -59,6 +59,230 @@ if !exists('g:python_highlight_all')
call s:SetDefault('g:python_highlight_file_headers_as_comments', 1) call s:SetDefault('g:python_highlight_file_headers_as_comments', 1)
call s:SetDefault('g:python_slow_sync', 1) call s:SetDefault('g:python_slow_sync', 1)
endif endif
if !has_key(s:disabled_packages, '8th')
au! BufRead,BufNewFile *.8th
endif
if !has_key(s:disabled_packages, 'a65')
au! BufRead,BufNewFile *.a65
endif
if !has_key(s:disabled_packages, 'aap')
au! BufRead,BufNewFile *.aap
endif
if !has_key(s:disabled_packages, 'abap')
au! BufRead,BufNewFile *.abap
endif
if !has_key(s:disabled_packages, 'abc')
au! BufRead,BufNewFile *.abc
endif
if !has_key(s:disabled_packages, 'acpiasl')
au! BufRead,BufNewFile *.dsl
endif
if !has_key(s:disabled_packages, 'ada')
au! BufRead,BufNewFile *.ada
endif
if !has_key(s:disabled_packages, 'aidl')
au! BufRead,BufNewFile *.aidl
endif
if !has_key(s:disabled_packages, 'aml')
au! BufRead,BufNewFile *.aml
endif
if !has_key(s:disabled_packages, 'applescript')
au! BufRead,BufNewFile *.applescript
endif
if !has_key(s:disabled_packages, 'art')
au! BufRead,BufNewFile *.art
endif
if !has_key(s:disabled_packages, 'asciidoc')
au! BufRead,BufNewFile *.asciidoc
endif
if !has_key(s:disabled_packages, 'asn')
au! BufRead,BufNewFile *.asn
endif
if !has_key(s:disabled_packages, 'ave')
au! BufRead,BufNewFile *.ave
endif
if !has_key(s:disabled_packages, 'awk')
au! BufRead,BufNewFile *.awk
endif
if !has_key(s:disabled_packages, 'c/c++')
au! BufRead,BufNewFile *.c,*.cpp,*.tpp
endif
if !has_key(s:disabled_packages, 'cmake')
au! BufRead,BufNewFile *.cmake
endif
if !has_key(s:disabled_packages, 'dart')
au! BufRead,BufNewFile *.dart
endif
if !has_key(s:disabled_packages, 'dlang')
au! BufRead,BufNewFile *.sdl
endif
if !has_key(s:disabled_packages, 'dockerfile')
au! BufRead,BufNewFile *.dockerfile
endif
if !has_key(s:disabled_packages, 'elm')
au! BufRead,BufNewFile *.elm
endif
if !has_key(s:disabled_packages, 'git')
au! BufRead,BufNewFile *.gitconfig
endif
if !has_key(s:disabled_packages, 'gnuplot')
au! BufRead,BufNewFile *.gp,*.gnuplot
endif
if !has_key(s:disabled_packages, 'go')
au! BufRead,BufNewFile *.go
endif
if !has_key(s:disabled_packages, 'haml')
au! BufRead,BufNewFile *.haml
endif
if !has_key(s:disabled_packages, 'handlebars')
au! BufRead,BufNewFile *.hb
endif
if !has_key(s:disabled_packages, 'haproxy')
au! BufRead,BufNewFile *.cfg
endif
if !has_key(s:disabled_packages, 'html5')
au! BufRead,BufNewFile *.st,*.xhtml
endif
if !has_key(s:disabled_packages, 'json')
au! BufRead,BufNewFile *.json,*.template
endif
if !has_key(s:disabled_packages, 'less')
au! BufRead,BufNewFile *.less
endif
if !has_key(s:disabled_packages, 'lua')
au! BufRead,BufNewFile *.lua
endif
if !has_key(s:disabled_packages, 'm4')
au! BufRead,BufNewFile *.m4
endif
if !has_key(s:disabled_packages, 'markdown')
au! BufRead,BufNewFile *.markdown
endif
if !has_key(s:disabled_packages, 'opencl')
au! BufRead,BufNewFile *.cl
endif
if !has_key(s:disabled_packages, 'perl')
au! BufRead,BufNewFile *.perl
endif
if !has_key(s:disabled_packages, 'php')
au! BufRead,BufNewFile *.php
endif
if !has_key(s:disabled_packages, 'protobuf')
au! BufRead,BufNewFile *.proto
endif
if !has_key(s:disabled_packages, 'python')
au! BufRead,BufNewFile *.spec
endif
if !has_key(s:disabled_packages, 'r-lang')
au! BufRead,BufNewFile *.r
endif
if !has_key(s:disabled_packages, 'raku')
au! BufRead,BufNewFile *.pod6
endif
if !has_key(s:disabled_packages, 'raml')
au! BufRead,BufNewFile *.raml
endif
if !has_key(s:disabled_packages, 'rst')
au! BufRead,BufNewFile *.rst
endif
if !has_key(s:disabled_packages, 'ruby')
au! BufRead,BufNewFile *.ruby,*.spec
endif
if !has_key(s:disabled_packages, 'scala')
au! BufRead,BufNewFile *.scala
endif
if !has_key(s:disabled_packages, 'sbt')
au! BufRead,BufNewFile *.sbt
endif
if !has_key(s:disabled_packages, 'scss')
au! BufRead,BufNewFile *.scss
endif
if !has_key(s:disabled_packages, 'sh')
au! BufRead,BufNewFile *.sh,*.tmux,*.zsh
endif
if !has_key(s:disabled_packages, 'svg')
au! BufRead,BufNewFile *.svg
endif
if !has_key(s:disabled_packages, 'swift')
au! BufRead,BufNewFile *.swift
endif
if !has_key(s:disabled_packages, 'terraform')
au! BufRead,BufNewFile *.tf
endif
if !has_key(s:disabled_packages, 'twig')
au! BufRead,BufNewFile *.twig
endif
if !has_key(s:disabled_packages, 'vbnet')
au! BufRead,BufNewFile *.vb
endif
if !has_key(s:disabled_packages, 'vue')
au! BufRead,BufNewFile *.vue
endif
if !has_key(s:disabled_packages, 'xml')
au! BufRead,BufNewFile *.xml,*.ant,*.xsd
endif
if !has_key(s:disabled_packages, 'xsl')
au! BufRead,BufNewFile *.xslt
endif
if !has_key(s:disabled_packages, 'yaml')
au! BufRead,BufNewFile *.yaml
endif
if !has_key(s:disabled_packages, '8th') if !has_key(s:disabled_packages, '8th')
au BufNewFile,BufRead *.8th setf 8th au BufNewFile,BufRead *.8th setf 8th
endif endif
@@ -240,11 +464,9 @@ if !has_key(s:disabled_packages, 'c/c++')
au BufNewFile,BufRead *.hxx setf cpp au BufNewFile,BufRead *.hxx setf cpp
au BufNewFile,BufRead *.inc setf cpp au BufNewFile,BufRead *.inc setf cpp
au BufNewFile,BufRead *.inl setf cpp au BufNewFile,BufRead *.inl setf cpp
au BufNewFile,BufRead *.ino setf cpp
au BufNewFile,BufRead *.ipp setf cpp au BufNewFile,BufRead *.ipp setf cpp
au BufNewFile,BufRead *.tcc setf cpp au BufNewFile,BufRead *.tcc setf cpp
au BufNewFile,BufRead *.tpp setf cpp au BufNewFile,BufRead *.tpp setf cpp
au! BufNewFile,BufRead *.re call polyglot#DetectReFiletype()
endif endif
if !has_key(s:disabled_packages, 'caddyfile') if !has_key(s:disabled_packages, 'caddyfile')
@@ -535,8 +757,6 @@ endif
if !has_key(s:disabled_packages, 'hcl') if !has_key(s:disabled_packages, 'hcl')
au BufNewFile,BufRead *.hcl setf hcl au BufNewFile,BufRead *.hcl setf hcl
au BufNewFile,BufRead *.nomad setf hcl au BufNewFile,BufRead *.nomad setf hcl
au BufNewFile,BufRead *.tf setf hcl
au BufNewFile,BufRead *.tfvars setf hcl
au BufNewFile,BufRead *.workflow setf hcl au BufNewFile,BufRead *.workflow setf hcl
au BufNewFile,BufRead Appfile setf hcl au BufNewFile,BufRead Appfile setf hcl
endif endif
@@ -621,7 +841,6 @@ if !has_key(s:disabled_packages, 'jinja')
au BufNewFile,BufRead *.j2 setf jinja.html au BufNewFile,BufRead *.j2 setf jinja.html
au BufNewFile,BufRead *.jinja setf jinja.html au BufNewFile,BufRead *.jinja setf jinja.html
au BufNewFile,BufRead *.jinja2 setf jinja.html au BufNewFile,BufRead *.jinja2 setf jinja.html
au BufNewFile,BufRead *.njk setf jinja.html
endif endif
if !has_key(s:disabled_packages, 'jq') if !has_key(s:disabled_packages, 'jq')
@@ -768,7 +987,6 @@ if !has_key(s:disabled_packages, 'markdown')
au BufNewFile,BufRead *.md setf markdown au BufNewFile,BufRead *.md setf markdown
au BufNewFile,BufRead *.mdown setf markdown au BufNewFile,BufRead *.mdown setf markdown
au BufNewFile,BufRead *.mdwn setf markdown au BufNewFile,BufRead *.mdwn setf markdown
au BufNewFile,BufRead *.mdx setf markdown
au BufNewFile,BufRead *.mkd setf markdown au BufNewFile,BufRead *.mkd setf markdown
au BufNewFile,BufRead *.mkdn setf markdown au BufNewFile,BufRead *.mkdn setf markdown
au BufNewFile,BufRead *.mkdown setf markdown au BufNewFile,BufRead *.mkdown setf markdown
@@ -881,7 +1099,6 @@ endif
if !has_key(s:disabled_packages, 'pgsql') if !has_key(s:disabled_packages, 'pgsql')
au BufNewFile,BufRead *.pgsql let b:sql_type_override='pgsql' | set ft=sql au BufNewFile,BufRead *.pgsql let b:sql_type_override='pgsql' | set ft=sql
au BufNewFile,BufRead *.sql let b:sql_type_override='pgsql' | set ft=sql
endif endif
if !has_key(s:disabled_packages, 'cql') if !has_key(s:disabled_packages, 'cql')
@@ -1002,7 +1219,6 @@ endif
if !has_key(s:disabled_packages, 'r-lang') if !has_key(s:disabled_packages, 'r-lang')
au BufNewFile,BufRead *.S setf r au BufNewFile,BufRead *.S setf r
au BufNewFile,BufRead *.r setf r au BufNewFile,BufRead *.r setf r
au BufNewFile,BufRead *.rd setf r
au BufNewFile,BufRead *.rsx setf r au BufNewFile,BufRead *.rsx setf r
au BufNewFile,BufRead *.s setf r au BufNewFile,BufRead *.s setf r
au BufNewFile,BufRead {.,}Rprofile setf r au BufNewFile,BufRead {.,}Rprofile setf r
@@ -1093,7 +1309,6 @@ if !has_key(s:disabled_packages, 'ruby')
au BufNewFile,BufRead {.,}simplecov setf ruby au BufNewFile,BufRead {.,}simplecov setf ruby
au BufNewFile,BufRead Appraisals setf ruby au BufNewFile,BufRead Appraisals setf ruby
au BufNewFile,BufRead Berksfile setf ruby au BufNewFile,BufRead Berksfile setf ruby
au BufNewFile,BufRead Brewfile setf ruby
au BufNewFile,BufRead Buildfile setf ruby au BufNewFile,BufRead Buildfile setf ruby
au BufNewFile,BufRead Capfile setf ruby au BufNewFile,BufRead Capfile setf ruby
au BufNewFile,BufRead Cheffile setf ruby au BufNewFile,BufRead Cheffile setf ruby
@@ -1140,7 +1355,6 @@ endif
if !has_key(s:disabled_packages, 'scala') if !has_key(s:disabled_packages, 'scala')
au BufNewFile,BufRead *.kojo setf scala au BufNewFile,BufRead *.kojo setf scala
au BufNewFile,BufRead *.sbt setf scala
au BufNewFile,BufRead *.sc setf scala au BufNewFile,BufRead *.sc setf scala
au BufNewFile,BufRead *.scala setf scala au BufNewFile,BufRead *.scala setf scala
endif endif
@@ -1165,7 +1379,6 @@ if !has_key(s:disabled_packages, 'sh')
au BufNewFile,BufRead *.sh.in setf sh au BufNewFile,BufRead *.sh.in setf sh
au BufNewFile,BufRead *.tmux setf sh au BufNewFile,BufRead *.tmux setf sh
au BufNewFile,BufRead *.tool setf sh au BufNewFile,BufRead *.tool setf sh
au BufNewFile,BufRead *.zsh setf sh
au BufNewFile,BufRead {.,}bash_aliases setf sh au BufNewFile,BufRead {.,}bash_aliases setf sh
au BufNewFile,BufRead {.,}bash_history setf sh au BufNewFile,BufRead {.,}bash_history setf sh
au BufNewFile,BufRead {.,}bash_logout setf sh au BufNewFile,BufRead {.,}bash_logout setf sh
@@ -1177,11 +1390,6 @@ if !has_key(s:disabled_packages, 'sh')
au BufNewFile,BufRead {.,}flaskenv setf sh au BufNewFile,BufRead {.,}flaskenv setf sh
au BufNewFile,BufRead {.,}login setf sh au BufNewFile,BufRead {.,}login setf sh
au BufNewFile,BufRead {.,}profile setf sh au BufNewFile,BufRead {.,}profile setf sh
au BufNewFile,BufRead {.,}zlogin setf sh
au BufNewFile,BufRead {.,}zlogout setf sh
au BufNewFile,BufRead {.,}zprofile setf sh
au BufNewFile,BufRead {.,}zshenv setf sh
au BufNewFile,BufRead {.,}zshrc setf sh
au BufNewFile,BufRead 9fs setf sh au BufNewFile,BufRead 9fs setf sh
au BufNewFile,BufRead PKGBUILD setf sh au BufNewFile,BufRead PKGBUILD setf sh
au BufNewFile,BufRead bash_aliases setf sh au BufNewFile,BufRead bash_aliases setf sh
@@ -1193,11 +1401,6 @@ if !has_key(s:disabled_packages, 'sh')
au BufNewFile,BufRead login setf sh au BufNewFile,BufRead login setf sh
au BufNewFile,BufRead man setf sh au BufNewFile,BufRead man setf sh
au BufNewFile,BufRead profile setf sh au BufNewFile,BufRead profile setf sh
au BufNewFile,BufRead zlogin setf sh
au BufNewFile,BufRead zlogout setf sh
au BufNewFile,BufRead zprofile setf sh
au BufNewFile,BufRead zshenv setf sh
au BufNewFile,BufRead zshrc setf sh
au BufNewFile,BufRead *.zsh setf zsh au BufNewFile,BufRead *.zsh setf zsh
au BufNewFile,BufRead {.,}zlogin setf zsh au BufNewFile,BufRead {.,}zlogin setf zsh
au BufNewFile,BufRead {.,}zlogout setf zsh au BufNewFile,BufRead {.,}zlogout setf zsh
@@ -1416,8 +1619,6 @@ if !has_key(s:disabled_packages, 'xml')
au BufNewFile,BufRead *.sublime-snippet setf xml au BufNewFile,BufRead *.sublime-snippet setf xml
au BufNewFile,BufRead *.targets setf xml au BufNewFile,BufRead *.targets setf xml
au BufNewFile,BufRead *.tml setf xml au BufNewFile,BufRead *.tml setf xml
au BufNewFile,BufRead *.ts setf xml
au BufNewFile,BufRead *.tsx setf xml
au BufNewFile,BufRead *.ui setf xml au BufNewFile,BufRead *.ui setf xml
au BufNewFile,BufRead *.urdf setf xml au BufNewFile,BufRead *.urdf setf xml
au BufNewFile,BufRead *.ux setf xml au BufNewFile,BufRead *.ux setf xml

View File

@@ -302,6 +302,8 @@ filetypes:
ignored_extensions: ignored_extensions:
# conflicts with more popular reason, remove after heuristics work # conflicts with more popular reason, remove after heuristics work
- re - re
# implemented by arduino
- ino
--- ---
name: caddyfile name: caddyfile
remote: isobit/vim-caddyfile remote: isobit/vim-caddyfile

View File

@@ -59,17 +59,20 @@ def load_data()
linguist = languages.fetch(filetype["linguist"]) linguist = languages.fetch(filetype["linguist"])
filetype["extensions"] = (linguist["extensions"] || []).map { |e| e[1..-1] } | filetype["extensions"] = ((
filetype.fetch("extra_extensions", []) - (linguist["extensions"] || []).map { |e| e[1..-1] } |
filetype.fetch("ignored_extensions", []).uniq filetype.fetch("extra_extensions", [])
) - filetype.fetch("ignored_extensions", [])).uniq
filetype["filenames"] = (linguist["filenames"] || []) | filetype["filenames"] = ((
filetype.fetch("extra_filenames", []) - (linguist["filenames"] || []) |
filetype.fetch("ignored_filenames", []).uniq filetype.fetch("extra_filenames", [])
) - filetype.fetch("ignored_filenames", [])).uniq
filetype["interpreters"] = (linguist["interpreters"] || []) | filetype["interpreters"] = ((
filetype.fetch("extra_interpreters", []) - (linguist["interpreters"] || []) |
filetype.fetch("ignored_interpreters", []).uniq filetype.fetch("extra_interpreters", [])
) - filetype.fetch("ignored_interpreters", []).uniq)
else else
filetype["extensions"] ||= [] filetype["extensions"] ||= []
filetype["filenames"] ||= [] filetype["filenames"] ||= []
@@ -445,7 +448,29 @@ def generate_ftdetect(packages, heuristics)
ambiguous_extensions = extensions ambiguous_extensions = extensions
.select { |a, b| b.uniq.size > 1 }.keys.sort .select { |a, b| b.uniq.size > 1 }.keys.sort
expected_filetypes = detect_filetypes expected_filetypes = detect_filetypes('tmp/**/ftdetect/*.vim')
native_filetypes = detect_filetypes('tmp/vim/vim/runtime/filetype.vim')
native_extensions = native_filetypes.flat_map { |k, v| v["extensions"] }
for package in packages
name = package.fetch("name")
to_disable = []
for filetype in package["filetypes"]
for extension in filetype["extensions"]
if native_filetypes.has_key?(extension)
to_disable << "*." + extension
end
end
end
if to_disable.size > 0
output << "if !has_key(s:disabled_packages, '#{name}')\n"
output << " au! BufRead,BufNewFile #{to_disable.join(",")}\n"
output << "endif\n\n"
end
end
for package in packages for package in packages
name = package.fetch("name") name = package.fetch("name")
@@ -690,8 +715,8 @@ def expand_all(pattern)
end end
end end
def detect_filetypes def detect_filetypes(glob)
filetypes = Dir['tmp/**/ftdetect/*.vim'].flat_map do |file| filetypes = Dir[glob].flat_map do |file|
contents = File.read(file).gsub(/^\s*au(tocmd)?!?\s*$/, '') contents = File.read(file).gsub(/^\s*au(tocmd)?!?\s*$/, '')
results = contents.scan(/^\s*(?:au!|au|au[^g][^ ]*) +(?:\S+)\s+(\S+)[\s\\]+([^\n]+)/) results = contents.scan(/^\s*(?:au!|au|au[^g][^ ]*) +(?:\S+)\s+(\S+)[\s\\]+([^\n]+)/)
results = results.map do |a, b| results = results.map do |a, b|