From cccb21df3b4c6fe0aaa99743c418aa973aeebad0 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 27 Apr 2024 04:10:59 +0200 Subject: Merging upstream version 2:9.1.0374. Signed-off-by: Daniel Baumann --- runtime/filetype.vim | 243 +++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 207 insertions(+), 36 deletions(-) (limited to 'runtime/filetype.vim') diff --git a/runtime/filetype.vim b/runtime/filetype.vim index d53671a..9d6b4bd 100644 --- a/runtime/filetype.vim +++ b/runtime/filetype.vim @@ -101,6 +101,9 @@ au BufNewFile,BufRead build.xml setf ant " Arduino au BufNewFile,BufRead *.ino,*.pde setf arduino +" Ash of busybox +au BufNewFile,BufRead .ash_history setf sh + " Apache config file au BufNewFile,BufRead .htaccess,*/etc/httpd/*.conf setf apache au BufNewFile,BufRead */etc/apache2/sites-*/*.com setf apache @@ -280,6 +283,9 @@ endif " Busted (Lua unit testing framework - configuration files) au BufNewFile,BufRead .busted setf lua +" Bundle config +au BufNewFile,BufRead */.bundle/config setf yaml + " C or lpc au BufNewFile,BufRead *.c call dist#ft#FTlpc() au BufNewFile,BufRead *.lpc,*.ulpc setf lpc @@ -293,17 +299,24 @@ au BufNewFile,BufRead calendar setf calendar " Cap'n Proto au BufNewFile,BufRead *.capnp setf capnp +" Cgdb config file +au BufNewFile,BufRead cgdbrc setf cgdbrc + " C# au BufNewFile,BufRead *.cs,*.csx setf cs " CSDL au BufNewFile,BufRead *.csdl setf csdl +" Ctags +au BufNewFile,BufRead *.ctags setf conf + " Cabal au BufNewFile,BufRead *.cabal setf cabal -" Cdrdao TOC -au BufNewFile,BufRead *.toc setf cdrtoc +" Cdrdao TOC or LaTeX \tableofcontents files +au BufNewFile,BufRead *.toc + \ if getline(1) =~# '\\contentsline' |setf tex|else|setf cdrtoc|endif " Cdrdao config au BufNewFile,BufRead */etc/cdrdao.conf,*/etc/defaults/cdrdao,*/etc/default/cdrdao,.cdrdao setf cdrdaoconf @@ -317,6 +330,9 @@ au BufRead,BufNewFile *.chai setf chaiscript " Chatito au BufNewFile,BufRead *.chatito setf chatito +" Chktex +au BufRead,BufNewFile .chktexrc setf conf + " Chuck au BufNewFile,BufRead *.ck setf chuck @@ -409,6 +425,9 @@ au BufNewFile,BufRead .clang-format setf yaml " Clang-tidy au BufNewFile,BufRead .clang-tidy setf yaml +" Matplotlib +au BufNewFile,BufRead *.mplstyle,matplotlibrc setf yaml + " Clean au BufNewFile,BufRead *.dcl,*.icl setf clean @@ -418,6 +437,9 @@ au BufNewFile,BufRead *.eni setf cl " Clever or dtd au BufNewFile,BufRead *.ent call dist#ft#FTent() +" Cling +au BufNewFile,BufRead .cling_history setf cpp + " Clipper, FoxPro, ABB RAPID or eviews au BufNewFile,BufRead *.prg\c call dist#ft#FTprg() @@ -427,6 +449,9 @@ au BufNewFile,BufRead *.clj,*.cljs,*.cljx,*.cljc setf clojure " Cmake au BufNewFile,BufRead CMakeLists.txt,*.cmake,*.cmake.in setf cmake +" CmakeCache +autocmd BufRead,BufNewFile CMakeCache.txt setf cmakecache + " Cmusrc au BufNewFile,BufRead */.cmus/{autosave,rc,command-history,*.theme} setf cmusrc au BufNewFile,BufRead */cmus/{rc,*.theme} setf cmusrc @@ -504,6 +529,13 @@ endif au BufNewFile,BufRead *s6*/\(up\|down\|run\|finish\) setf execline au BufNewFile,BufRead s6-* setf execline +" Fontconfig config files +au BufNewFile,BufRead fonts.conf setf xml + +" Libreoffice config files +au BufNewFile,BufRead *.xcu,*.xlb,*.xlc,*.xba setf xml +au BufNewFile,BufRead psprint.conf,sofficerc setf dosini + " Lynx config files au BufNewFile,BufRead lynx.cfg setf lynx @@ -514,6 +546,25 @@ au BufNewFile,BufRead *.lrc setf lyrics au BufNewFile,BufRead *.quake,cm3.cfg setf m3quake au BufNewFile,BufRead m3makefile,m3overrides setf m3build +" XDG mimeapps.list +au BufNewFile,BufRead mimeapps.list setf dosini + +" Many tools written in Python use dosini as their config +" like setuptools, pudb, coverage, pypi, gitlint, oelint-adv, pylint, bpython, mypy +" (must be before *.cfg) +au BufNewFile,BufRead pip.conf,setup.cfg,pudb.cfg,.coveragerc,.pypirc,.gitlint,.oelint.cfg setf dosini +au BufNewFile,BufRead {.,}pylintrc,*/bpython/config,*/mypy/config setf dosini + +" Many tools written in Python use toml as their config, like black +au BufNewFile,BufRead .black setf toml +au BufNewFile,BufRead black + \ if getline(1) =~ 'tool.back' + \| setf toml + \| endif + +" LXQt's programs use dosini as their config +au BufNewFile,BufRead */{lxqt,screengrab}/*.conf setf dosini + " Quake au BufNewFile,BufRead *baseq[2-3]/*.cfg,*id1/*.cfg setf quake au BufNewFile,BufRead *quake[1-3]/*.cfg setf quake @@ -521,6 +572,14 @@ au BufNewFile,BufRead *quake[1-3]/*.cfg setf quake " Quake C au BufNewFile,BufRead *.qc setf c +" LaTeX packages use LaTeX as their configuration, such as: +" ~/.texlive/texmf-config/tex/latex/hyperref/hyperref.cfg +" ~/.texlive/texmf-config/tex/latex/docstrip/docstrip.cfg +au BufNewFile,BufRead */tex/latex/**.cfg setf tex + +" Wakatime config +au BufNewFile,BufRead .wakatime.cfg setf dosini + " Configure files au BufNewFile,BufRead *.cfg\c call dist#ft#FTcfg() @@ -650,7 +709,10 @@ au BufNewFile,BufRead *.dsl au BufNewFile,BufRead *.dtd setf dtd " DTS/DSTI/DTSO (device tree files) -au BufNewFile,BufRead *.dts,*.dtsi,*.dtso,*.its setf dts +au BufNewFile,BufRead *.dts,*.dtsi,*.dtso,*.its,*.keymap setf dts + +" Earthfile +au BufNewFile,BufRead Earthfile setf earthfile " EDIF (*.edf,*.edif,*.edn,*.edo) or edn au BufNewFile,BufRead *.ed\(f\|if\|o\) setf edif @@ -730,6 +792,9 @@ au BufNewFile,BufRead *.fir setf firrtl " Fish shell au BufNewFile,BufRead *.fish setf fish +" Flatpak config +au BufNewFile,BufRead */flatpak/repo/config setf dosini + " FlexWiki - disabled, because it has side effects when a .wiki file " is not actually FlexWiki "au BufNewFile,BufRead *.wiki setf flexwiki @@ -862,7 +927,7 @@ au BufNewFile,BufRead *.gts setf typescript.glimmer au BufNewFile,BufRead *.gjs setf javascript.glimmer " Gnuplot scripts -au BufNewFile,BufRead *.gpi,*.gnuplot setf gnuplot +au BufNewFile,BufRead *.gpi,*.gnuplot,.gnuplot_history setf gnuplot " Go (Google) au BufNewFile,BufRead *.go setf go @@ -913,11 +978,7 @@ au BufNewFile,BufRead *.hs,*.hsc,*.hs-boot,*.hsig setf haskell au BufNewFile,BufRead *.lhs setf lhaskell au BufNewFile,BufRead *.chs setf chaskell au BufNewFile,BufRead cabal.project setf cabalproject -au BufNewFile,BufRead $HOME/.cabal/config setf cabalconfig -if exists('$XDG_CONFIG_HOME') - au BufNewFile,BufRead $XDG_CONFIG_HOME/cabal/config setf cabalconfig -endif -au BufNewFile,BufRead $HOME/.config/cabal/config setf cabalconfig +au BufNewFile,BufRead */{.,}cabal/config setf cabalconfig au BufNewFile,BufRead cabal.config setf cabalconfig au BufNewFile,BufRead *.persistentmodels setf haskellpersistent @@ -938,7 +999,7 @@ au BufNewFile,BufRead *.vc,*.ev,*.sum,*.errsum setf hercules au BufRead,BufNewFile *.heex setf heex " HEX (Intel) -au BufNewFile,BufRead *.hex,*.h32 setf hex +au BufNewFile,BufRead *.hex,*.ihex,*.int,*.ihe,*.ihx,*.mcs,*.h32,*.h80,*.h86,*.a43,*.a90 setf hex " Hjson au BufNewFile,BufRead *.hjson setf hjson @@ -955,6 +1016,9 @@ au BufRead,BufNewFile *.hoon setf hoon " Tilde (must be before HTML) au BufNewFile,BufRead *.t.html setf tilde +" Translate shell +au BufNewFile,BufRead init.trans,*/etc/translate-shell,.trans setf clojure + " HTML (.shtml and .stm for server side) au BufNewFile,BufRead *.html,*.htm,*.shtml,*.stm call dist#ft#FThtml() au BufNewFile,BufRead *.cshtml setf html @@ -1062,6 +1126,7 @@ au BufNewFile,BufRead *.jj,*.jjt setf javacc " JavaScript, ECMAScript, ES module script, CommonJS script au BufNewFile,BufRead *.js,*.jsm,*.javascript,*.es,*.mjs,*.cjs setf javascript +au BufNewFile,BufRead .node_repl_history setf javascript " JavaScript with React au BufNewFile,BufRead *.jsx setf javascriptreact @@ -1095,15 +1160,18 @@ au BufNewFile,BufRead *.json-patch setf json " Geojson is also json au BufNewFile,BufRead *.geojson setf json -" Jupyter Notebook is also json -au BufNewFile,BufRead *.ipynb setf json +" Jupyter Notebook and jupyterlab config is also json +au BufNewFile,BufRead *.ipynb,*.jupyterlab-settings setf json + +" Sublime config +au BufNewFile,BufRead *.sublime-project,*.sublime-settings,*.sublime-workspace setf json " Other files that look like json -au BufNewFile,BufRead .prettierrc,.firebaserc,.stylelintrc setf json +au BufNewFile,BufRead .prettierrc,.firebaserc,.stylelintrc,flake.lock setf json " JSONC (JSON with comments) au BufNewFile,BufRead *.jsonc,.babelrc,.eslintrc,.jsfmtrc setf jsonc -au BufNewFile,BufRead .jshintrc,.hintrc,.swrc,[jt]sconfig*.json setf jsonc +au BufNewFile,BufRead .jshintrc,.jscsrc,.vsconfig,.hintrc,.swrc,[jt]sconfig*.json setf jsonc " JSON au BufNewFile,BufRead *.json,*.jsonp,*.webmanifest setf json @@ -1167,8 +1235,11 @@ au BufNewFile,BufRead *.sig call dist#ft#FTsig() " LDAP LDIF au BufNewFile,BufRead *.ldif setf ldif +" Luadoc, Ldoc (must be before *.ld) +au BufNewFile,BufRead config.ld setf lua + " Ld loader -au BufNewFile,BufRead *.ld setf ld +au BufNewFile,BufRead *.ld,*/ldscripts/* setf ld " Lean au BufNewFile,BufRead *.lean setf lean @@ -1203,9 +1274,9 @@ au BufNewFile,BufRead *.ly,*.ily setf lilypond " Lisp (*.el = ELisp, *.cl = Common Lisp) " *.jl was removed, it's also used for Julia, better skip than guess wrong. if has("fname_case") - au BufNewFile,BufRead *.lsp,*.lisp,*.asd,*.el,*.cl,*.L,.emacs,.sawfishrc setf lisp + au BufNewFile,BufRead *.lsp,*.lisp,*.asd,*.el,*.cl,*.L,.emacs,.sawfishrc,*.stsg,*/supertux2/config setf lisp else - au BufNewFile,BufRead *.lsp,*.lisp,*.asd,*.el,*.cl,.emacs,.sawfishrc setf lisp + au BufNewFile,BufRead *.lsp,*.lisp,*.asd,*.el,*.cl,.emacs,.sawfishrc,*.stsg,*/supertux2/config setf lisp endif " SBCL implementation of Common Lisp @@ -1236,13 +1307,17 @@ au BufNewFile,BufRead */etc/login.defs setf logindefs au BufNewFile,BufRead *.lgt setf logtalk " LOTOS -au BufNewFile,BufRead *.lot,*.lotos setf lotos +au BufNewFile,BufRead *.lotos setf lotos + +" LOTOS or LaTeX \listoftables files +au BufNewFile,BufRead *.lot + \ if getline(1) =~# '\\contentsline' |setf tex|else|setf lotos|endif " Lout (also: *.lt) au BufNewFile,BufRead *.lou,*.lout setf lout -" Lua -au BufNewFile,BufRead *.lua setf lua +" Lua, Texlua +au BufNewFile,BufRead *.lua,*.tlu,.lua_history setf lua " Luau au BufNewFile,BufRead *.luau setf luau @@ -1254,7 +1329,7 @@ au BufNewFile,BufRead .luaurc setf jsonc au BufNewFile,BufRead .luacheckrc setf lua " Luarocks -au BufNewFile,BufRead *.rockspec setf lua +au BufNewFile,BufRead *.rockspec,rock_manifest setf lua " Linden Scripting Language (Second Life) au BufNewFile,BufRead *.lsl call dist#ft#FTlsl() @@ -1265,6 +1340,7 @@ au BufNewFile,BufRead *.lss setf lss " M4 au BufNewFile,BufRead *.m4 \ if expand("") !~? 'html.m4$\|fvwm2rc' | setf m4 | endif +au BufNewFile,BufRead .m4_history setf m4 " MaGic Point au BufNewFile,BufRead *.mgp setf mgp @@ -1300,7 +1376,12 @@ au BufNewFile,BufRead *.mv,*.mpl,*.mws setf maple au BufNewFile,BufRead *.map setf map " Markdown -au BufNewFile,BufRead *.markdown,*.mdown,*.mkd,*.mkdn,*.mdwn,*.md setf markdown +au BufNewFile,BufRead *.markdown,*.mdown,*.mkd,*.mkdn,*.mdwn,*.md + \ if exists("g:filetype_md") | + \ exe "setf " . g:filetype_md | + \ else | + \ setf markdown | + \ endif " Mason au BufNewFile,BufRead *.mason,*.mhtml,*.comp setf mason @@ -1314,6 +1395,9 @@ au BufNewFile,BufRead *.nb setf mma " Maya Extension Language au BufNewFile,BufRead *.mel setf mel +" mbsync +au BufNewFile,BufRead .mbsyncrc setf conf + " Mercurial (hg) commit file au BufNewFile,BufRead hg-editor-*.txt setf hgcommit @@ -1346,6 +1430,9 @@ au BufNewFile,BufRead *.mix,*.mixal setf mix " MMIX or VMS makefile au BufNewFile,BufRead *.mms call dist#ft#FTmms() +" msmtp +au BufNewFile,BufRead .msmtprc setf msmtp + " Symbian meta-makefile definition (MMP) au BufNewFile,BufRead *.mmp setf mmp @@ -1389,7 +1476,7 @@ au BufNewFile,BufRead mrxvtrc,.mrxvtrc setf mrxvtrc au BufNewFile,BufRead *.msql setf msql " Mysql -au BufNewFile,BufRead *.mysql setf mysql +au BufNewFile,BufRead *.mysql,.mysql_history setf mysql " Tcl Shell RC file au BufNewFile,BufRead tclsh.rc setf tcl @@ -1435,6 +1522,9 @@ au BufNewFile,BufRead Neomuttrc setf neomuttrc " Netrc au BufNewFile,BufRead .netrc setf netrc +" Neofetch +au BufNewFile,BufRead */neofetch/config.conf setf sh + " Nginx au BufNewFile,BufRead *.nginx,nginx*.conf,*nginx.conf,*/etc/nginx/*,*/usr/local/nginx/conf/*,*/nginx/*.conf setf nginx @@ -1470,6 +1560,9 @@ au BufNewFile,BufRead *.mm call dist#ft#FTmm() " Not Quite C au BufNewFile,BufRead *.nqc setf nqc +" notmuch +au BufNewFile,BufRead .notmuch-config setf dosini + " NSE - Nmap Script Engine - uses Lua syntax au BufNewFile,BufRead *.nse setf lua @@ -1492,7 +1585,7 @@ au BufNewFile,BufRead *.ml,*.mli,*.mll,*.mly,.ocamlinit,*.mlt,*.mlp,*.mlip,*.mli au BufNewFile,BufRead *.occ setf occam " Octave -au BufNewFile,BufRead octave.conf,.octaverc,octaverc setf octave +au BufNewFile,BufRead octave.conf,.octaverc,octaverc,*/octave/history setf octave " Odin au BufNewFile,BufRead *.odin setf odin @@ -1500,6 +1593,9 @@ au BufNewFile,BufRead *.odin setf odin " Omnimark au BufNewFile,BufRead *.xom,*.xin setf omnimark +" ondir +au BufNewFile,BufRead .ondirrc setf ondir + " OPAM au BufNewFile,BufRead opam,*.opam,*.opam.template setf opam @@ -1525,9 +1621,10 @@ au BufNewFile,BufRead *.org,*.org_archive setf org au BufNewFile,BufRead pf.conf setf pf " ini style config files, using # comments -au BufNewFile,BufRead */etc/pacman.conf,mpv.conf setf confini +au BufNewFile,BufRead pacman.conf,mpv.conf setf confini au BufNewFile,BufRead */.aws/config,*/.aws/credentials setf confini au BufNewFile,BufRead *.nmconnection setf confini +au BufNewFile,BufRead paru.conf setf confini " Pacman hooks au BufNewFile,BufRead *.hook @@ -1535,6 +1632,9 @@ au BufNewFile,BufRead *.hook \ setf confini | \ endif +" Pacman makepkg +au BufNewFile,BufRead {.,}makepkg.conf setf sh + " Pacman log au BufNewFile,BufRead pacman.log setf pacmanlog @@ -1556,8 +1656,16 @@ au BufNewFile,BufRead *.pas setf pascal " Pascal or Puppet manifest au BufNewFile,BufRead *.pp call dist#ft#FTpp() -" Delphi or Lazarus program file -au BufNewFile,BufRead *.dpr,*.lpr setf pascal +" Delphi +au BufNewFile,BufRead *.dpr setf pascal + +" Xilinx labtools project file or Lazarus program file +au BufNewFile,BufRead *.lpr + \ if getline(1) =~# "