From: Bez Hermoso Date: Mon, 20 Apr 2026 14:47:58 +0000 (+0000) Subject: patch 9.2.0371: filetype: ghostty config files are not recognized X-Git-Tag: v9.2.0371^0 X-Git-Url: http://git.ipfire.org/index.cgi?a=commitdiff_plain;h=b30803b231beea13e2efa42fefc04be71a4e9bb5;p=thirdparty%2Fvim.git patch 9.2.0371: filetype: ghostty config files are not recognized Problem: filetype: ghostty config files are not recognized Solution: Detect ghostty configuration files as ghostty filetype, include a simple ghostty filetype plugin (Bez Hermoso) closes: #20002 Co-authored-by: Christian Brabandt Signed-off-by: Bez Hermoso Signed-off-by: Christian Brabandt --- diff --git a/runtime/autoload/dist/ft.vim b/runtime/autoload/dist/ft.vim index f0330c205c..7b7fb2954d 100644 --- a/runtime/autoload/dist/ft.vim +++ b/runtime/autoload/dist/ft.vim @@ -3,7 +3,7 @@ vim9script # Vim functions for file type detection # # Maintainer: The Vim Project -# Last Change: 2026 Apr 15 +# Last Change: 2026 Apr 20 # Former Maintainer: Bram Moolenaar # These functions are moved here from runtime/filetype.vim to make startup @@ -3113,7 +3113,9 @@ const ft_from_ext = { "bp": "bp", # Tiltfile "Tiltfile": "tiltfile", - "tiltfile": "tiltfile" + "tiltfile": "tiltfile", + # Ghostty + "ghostty": "ghostty", } # Key: file name (the final path component, excluding the drive and root) # Value: filetype diff --git a/runtime/filetype.vim b/runtime/filetype.vim index 0c76a60a52..da632acc54 100644 --- a/runtime/filetype.vim +++ b/runtime/filetype.vim @@ -1,7 +1,7 @@ " Vim support file to detect file types " " Maintainer: The Vim Project -" Last Change: 2026 Apr 08 +" Last Change: 2026 Apr 20 " Former Maintainer: Bram Moolenaar " If the filetype can be detected from extension or file name(the final path component), @@ -1617,6 +1617,10 @@ au BufNewFile,BufRead *.txt \| setf text \| endif +" Ghostty configuration +au BufNewFile,BufRead */ghostty/config setf ghostty +au BufNewFile,BufRead */ghostty/themes/* call s:StarSetf('ghostty') +au BufNewFile,BufRead */com.mitchellh.ghostty/config setf ghostty " Generic log file diff --git a/runtime/ftplugin/ghostty.vim b/runtime/ftplugin/ghostty.vim new file mode 100644 index 0000000000..479fd610bd --- /dev/null +++ b/runtime/ftplugin/ghostty.vim @@ -0,0 +1,10 @@ +" Vim filetype plugin file +" Language: ghostty + +" Quit if a ftplugin file was already loaded +if exists("b:did_ftplugin") + finish +endif + +" Use the cfg plugin, it's similar enough. +runtime! ftplugin/cfg.vim diff --git a/src/testdir/test_filetype.vim b/src/testdir/test_filetype.vim index 892cd32388..583dad4d1c 100644 --- a/src/testdir/test_filetype.vim +++ b/src/testdir/test_filetype.vim @@ -327,6 +327,9 @@ def s:GetFilenameChecks(): dict> gedcom: ['file.ged', 'lltxxxxx.txt', '/tmp/lltmp', '/tmp/lltmp-file', 'any/tmp/lltmp', 'any/tmp/lltmp-file'], gel: ['file.gel'], gemtext: ['file.gmi', 'file.gemini'], + ghostty: ['ghostty/config', 'ghostty/keymaps.ghostty', '/.config/ghostty/config', '/.config/ghostty/keymaps.ghostty', + '~/Library/Application Support/com.mitchellh.ghostty/config.ghostty', '~/Library/Application Support/com.mitchellh.ghostty/config', + '~/.config/ghostty/themes/Custom Theme', '/usr/share/ghostty/themes/Builtin Theme'], gift: ['file.gift'], gitattributes: ['file.git/info/attributes', '.gitattributes', '/.config/git/attributes', '/etc/gitattributes', '/usr/local/etc/gitattributes', 'some.git/info/attributes'] + WhenConfigHome('$XDG_CONFIG_HOME/git/attributes'), gitcommit: ['COMMIT_EDITMSG', 'MERGE_MSG', 'TAG_EDITMSG', 'NOTES_EDITMSG', 'EDIT_DESCRIPTION'], diff --git a/src/version.c b/src/version.c index 489ec89dee..4cdbfdc057 100644 --- a/src/version.c +++ b/src/version.c @@ -734,6 +734,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 371, /**/ 370, /**/