neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

commit da3eeb4b32bdf98948096fdf0fe533696d03b3d1
parent 074a6abd55af8b4d2b4a4cc9430a4f3e91e229f7
Author: zeertzjq <zeertzjq@outlook.com>
Date:   Fri,  2 May 2025 21:50:17 +0800

vim-patch:9.1.1360: filetype: GNU Radio companion files are not recognized

Problem:  filetype: GNU Radio companion files are not recognized
Solution: detect *.grc files as xml or yaml filetype depending on the
          first line (zeertzjq).

Ref:
- https://wiki.gnuradio.org/index.php/XML_GRC
- https://wiki.gnuradio.org/index.php/YAML_GRC

closes: vim/vim#17241

https://github.com/vim/vim/commit/af4a5d6e2ae57a44edab48c8b012d2afa743998f

Diffstat:
Mruntime/lua/vim/filetype.lua | 1+
Mtest/old/testdir/test_filetype.vim | 16++++++++++++++++
2 files changed, 17 insertions(+), 0 deletions(-)

diff --git a/runtime/lua/vim/filetype.lua b/runtime/lua/vim/filetype.lua @@ -1390,6 +1390,7 @@ local extension = { yaml = 'yaml', eyaml = 'yaml', mplstyle = 'yaml', + grc = detect_line1('<%?xml', 'xml', 'yaml'), yang = 'yang', yuck = 'yuck', z8a = 'z8a', diff --git a/test/old/testdir/test_filetype.vim b/test/old/testdir/test_filetype.vim @@ -1597,6 +1597,22 @@ func Test_git_file() filetype off endfunc +func Test_grc_file() + filetype on + + call writefile(['<?xml version="1.0"?>', '<block>', '</block>'], 'Xfile.grc') + split Xfile.grc + call assert_equal('xml', &filetype) + bwipe! + + call writefile(['metadata:', ' file_format: 1'], 'Xfile.grc') + split Xfile.grc + call assert_equal('yaml', &filetype) + bwipe! + + filetype off +endfunc + func Test_haredoc_file() filetype on call assert_true(mkdir('foo/bar', 'pR'))