patch 9.1.0866: filetype: LLVM IR files are not recognized Commit: https://github.com/vim/vim/commit/bc32bbddcfc2671158a4780838766ed2d1e14fa6 Author: Wu, Zhenyu <wuzhe...@ustc.edu> Date: Thu Nov 14 22:55:36 2024 +0100
patch 9.1.0866: filetype: LLVM IR files are not recognized Problem: filetype: LLVM IR files are not recognized Solution: detect '*.ll' files either as lifelines or llvm filetype (Wu, Zhenyu) closes: #15824 Signed-off-by: Wu, Zhenyu <wuzhe...@ustc.edu> Signed-off-by: Christian Brabandt <c...@256bit.org> diff --git a/runtime/autoload/dist/ft.vim b/runtime/autoload/dist/ft.vim index c8942eb3d..214cf6e3e 100644 --- a/runtime/autoload/dist/ft.vim +++ b/runtime/autoload/dist/ft.vim @@ -169,6 +169,14 @@ export def FTcls() endif enddef +export def FTll() + if getline(1) =~ ';\|\<source_filename\>\|\<target\>' + setf llvm + else + setf lifelines + endif +enddef + export def FTlpc() if exists("g:lpc_syntax_for_c") var lnum = 1 diff --git a/runtime/filetype.vim b/runtime/filetype.vim index 897f356bb..085e4bd1e 100644 --- a/runtime/filetype.vim +++ b/runtime/filetype.vim @@ -1351,7 +1351,7 @@ au BufNewFile,BufRead */etc/sensors.conf,*/etc/sensors3.conf setf sensors au BufNewFile,BufRead lftp.conf,.lftprc,*lftp/rc setf lftp " Lifelines (or Lex for C++!) -au BufNewFile,BufRead *.ll setf lifelines +au BufNewFile,BufRead *.ll call dist#ft#FTll() " Lilo: Linux loader au BufNewFile,BufRead lilo.conf setf lilo diff --git a/runtime/ftplugin/llvm.vim b/runtime/ftplugin/llvm.vim new file mode 100644 index 000000000..148b12f10 --- /dev/null +++ b/runtime/ftplugin/llvm.vim @@ -0,0 +1,12 @@ +" Vim filetype plugin file +" Language: LLVM IR +" Last Change: 2024 Oct 22 +" Maintainer: Wu, Zhenyu <wuzhe...@ustc.edu> + +if exists("b:did_ftplugin") | finish | endif +let b:did_ftplugin = 1 + +setl comments=:; +setl commentstring=;\ %s + +let b:undo_ftplugin = "setl commentstring< comments<" diff --git a/src/testdir/test_filetype.vim b/src/testdir/test_filetype.vim index 8a89905e5..215d750ce 100644 --- a/src/testdir/test_filetype.vim +++ b/src/testdir/test_filetype.vim @@ -2446,6 +2446,24 @@ func Test_inc_file() filetype off endfunc +func Test_ll_file() + filetype on + + " LLVM IR + call writefile(['target triple = "nvptx64-nvidia-cuda"'], 'Xfile.ll', 'D') + split Xfile.ll + call assert_equal('llvm', &filetype) + bwipe! + + " lifelines + call writefile(['proc main() {}'], 'Xfile.ll', 'D') + split Xfile.ll + call assert_equal('lifelines', &filetype) + bwipe! + + filetype off +endfunc + func Test_lsl_file() filetype on diff --git a/src/version.c b/src/version.c index 79b3099a5..7ba9d877e 100644 --- a/src/version.c +++ b/src/version.c @@ -704,6 +704,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 866, /**/ 865, /**/ -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/vim_dev/E1tBhsk-005Kjf-15%40256bit.org.