diff --git a/.github/MAINTAINERS b/.github/MAINTAINERS index d73c7f10d7..614dd13e21 100644 --- a/.github/MAINTAINERS +++ b/.github/MAINTAINERS @@ -339,6 +339,7 @@ runtime/ftplugin/thrift.vim @jiangyinzuo runtime/ftplugin/tiasm.vim @Freed-Wu runtime/ftplugin/tidy.vim @dkearns runtime/ftplugin/tmux.vim @ericpruitt +runtime/ftplugin/tolk.vim @redavy runtime/ftplugin/toml.vim @averms runtime/ftplugin/tt2html.vim @petdance runtime/ftplugin/twig.vim @ribru17 @@ -700,6 +701,7 @@ runtime/syntax/thrift.vim @jiangyinzuo runtime/syntax/tiasm.vim @Freed-Wu runtime/syntax/tidy.vim @dkearns runtime/syntax/tmux.vim @ericpruitt +runtime/syntax/tolk.vim @redavy runtime/syntax/toml.vim @averms runtime/syntax/tt2.vim @petdance runtime/syntax/tt2html.vim @petdance diff --git a/runtime/autoload/dist/ft.vim b/runtime/autoload/dist/ft.vim index f7d42d7f99..3b585b61d2 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 May 18 +# Last Change: 2026 May 28 # Former Maintainer: Bram Moolenaar # These functions are moved here from runtime/filetype.vim to make startup @@ -2743,6 +2743,8 @@ const ft_from_ext = { "sieve": "sieve", # TriG "trig": "trig", + # Tolk + "tolk": "tolk", # Zig and Zig Object Notation (ZON) "zig": "zig", "zon": "zig", diff --git a/runtime/ftplugin/tolk.vim b/runtime/ftplugin/tolk.vim new file mode 100644 index 0000000000..f1339b7b6c --- /dev/null +++ b/runtime/ftplugin/tolk.vim @@ -0,0 +1,22 @@ +" Vim filetype plugin file +" Language: Tolk +" Maintainer: redavy +" Upstream: https://github.com/redavy/vim-tolk +" Last Update: 24 May 2026 + +if exists("b:did_ftplugin") + finish +endif +let b:did_ftplugin = 1 + +setlocal commentstring=//\ %s + +if get(g:, 'tolk_recommended_style', get(g:, 'recommended_style', 1)) + setlocal tabstop=2 + setlocal shiftwidth=2 + setlocal expandtab + setlocal softtabstop=2 + setlocal cindent +endif + +let b:undo_ftplugin = "setlocal commentstring< tabstop< shiftwidth< expandtab< softtabstop< cindent<" diff --git a/runtime/syntax/tolk.vim b/runtime/syntax/tolk.vim new file mode 100644 index 0000000000..ce3ffc678f --- /dev/null +++ b/runtime/syntax/tolk.vim @@ -0,0 +1,37 @@ +" Vim syntax file +" Language: Tolk +" Maintainer: redavy +" Upstream: https://github.com/redavy/vim-tolk +" Last Update: 28 May 2026 + +if exists("b:current_syntax") + finish +endif + +" Keywords +syn keyword tolkKeyword do if as fun asm get try var val lazy +syn keyword tolkKeyword else enum true tolk const false throw +syn keyword tolkKeyword redef while catch return assert import +syn keyword tolkKeyword global repeat contract mutate struct +syn keyword tolkKeyword match type null void never + +" Strings +syn region tolkString start=+"+ end=+"+ +syn region tolkString start=+'+ end=+'+ + +" Numbers +syn match tolkNumber "\<[0-9]\+\>" +syn match tolkNumber "\<0[xX][0-9a-fA-F]\+\>" +syn match tolkNumber "\<[0-9]\+\.[0-9]\+\>" + +" Comments +syn match tolkComment "//.*$" +syn region tolkComment start="/\*" end="\*/" + +" Highlights +hi link tolkKeyword Keyword +hi link tolkString String +hi link tolkNumber Number +hi link tolkComment Comment + +let b:current_syntax = "tolk" diff --git a/src/testdir/test_filetype.vim b/src/testdir/test_filetype.vim index 23651f44b4..aefdef1b57 100644 --- a/src/testdir/test_filetype.vim +++ b/src/testdir/test_filetype.vim @@ -904,6 +904,7 @@ def s:GetFilenameChecks(): dict> tla: ['file.tla'], tli: ['file.tli'], tmux: ['tmuxfile.conf', '.tmuxfile.conf', '.tmux-file.conf', '.tmux.conf', 'tmux-file.conf', 'tmux.conf', 'tmux.conf.local'], + tolk: ['file.tolk'], toml: ['file.toml', 'uv.lock', 'Gopkg.lock', 'Pipfile', '/home/user/.cargo/config', '.black', 'any/containers/containers.conf', 'any/containers/containers.conf.d/file.conf', 'any/containers/containers.conf.modules/file.conf', 'any/containers/containers.conf.modules/any/file.conf', diff --git a/src/version.c b/src/version.c index bf1c31fc28..85fa5595ca 100644 --- a/src/version.c +++ b/src/version.c @@ -729,6 +729,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 551, /**/ 550, /**/