From fa5ed94852a4fab87ebdf9ebe5ffd4916913a442 Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Thu, 4 Jun 2026 04:12:11 +0800 Subject: [PATCH] vim-patch:9.2.0589: filetype: xinitrc files are not recognized (#40102) Problem: filetype: xinitrc files are not recognized Solution: Detect xinitrc and xserverrc files as sh filetype (Enrico Maria De Angelis) Reference: https://wiki.archlinux.org/title/Xinit#Configuration closes: vim/vim#20419 https://github.com/vim/vim/commit/5b76ddcc5220603b9c062d3e230faad9b0aed0d2 Co-authored-by: Enrico Maria De Angelis --- runtime/lua/vim/filetype.lua | 5 +++++ test/old/testdir/test_filetype.vim | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/runtime/lua/vim/filetype.lua b/runtime/lua/vim/filetype.lua index 92ed432e22..782bd495ad 100644 --- a/runtime/lua/vim/filetype.lua +++ b/runtime/lua/vim/filetype.lua @@ -2165,6 +2165,9 @@ local pattern = { ['/etc/serial%.conf$'] = 'setserial', ['/etc/udev/cdsymlinks%.conf$'] = 'sh', ['/etc/profile$'] = detect.sh, + ['^/etc/X11/xinit/xinitrc$'] = 'sh', + ['^/etc/X11/xinit/xinitrc%.d/'] = 'sh', + ['^/etc/X11/xinit/xserverrc$'] = 'sh', ['/etc/slp%.conf$'] = 'slpconf', ['/etc/slp%.reg$'] = 'slpreg', ['/etc/slp%.spi$'] = 'slpspi', @@ -2528,6 +2531,8 @@ local pattern = { ['/%.icewm/menu$'] = 'icemenu', ['/%.libao$'] = 'libao', ['/%.pinforc$'] = 'pinfo', + ['^${HOME}/%.xinitrc$'] = 'sh', + ['^${HOME}/%.xserverrc$'] = 'sh', ['/%.cargo/credentials$'] = 'toml', ['/%.init/.*%.override$'] = 'upstart', ['/%.kube/kuberc$'] = 'yaml', diff --git a/test/old/testdir/test_filetype.vim b/test/old/testdir/test_filetype.vim index d36e9ef066..76f59789cb 100644 --- a/test/old/testdir/test_filetype.vim +++ b/test/old/testdir/test_filetype.vim @@ -745,7 +745,7 @@ func s:GetFilenameChecks() abort \ '/tmp/bash-fc-3Ozjlw', '/tmp/bash-fc.3Ozjlw', 'PKGBUILD', 'file.bash', '/usr/share/doc/bash-completion/filter.sh', \ '/etc/udev/cdsymlinks.conf', 'any/etc/udev/cdsymlinks.conf', 'file.bats', '.ash_history', 'any/etc/neofetch/config.conf', '.xprofile', \ 'user-dirs.defaults', 'user-dirs.dirs', 'makepkg.conf', '.makepkg.conf', 'file.mdd', 'file.cygport', '.envrc', '.envrc.file', 'file.envrc', 'devscripts.conf', - \ '.devscripts', 'file.lo', 'file.la', 'file.lai'], + \ '.devscripts', 'file.lo', 'file.la', 'file.lai', '/etc/X11/xinit/xinitrc', '/etc/X11/xinit/xserverrc', '~/.xinitrc', '/etc/X11/xinit/xinitrc.d/foobar'], \ 'shaderslang': ['file.slang'], \ 'sieve': ['file.siv', 'file.sieve'], \ 'sil': ['file.sil'],