changeset 23685:eb30aed2059f v8.2.2384

patch 8.2.2384: turtle filetype not recognized Commit: https://github.com/vim/vim/commit/5e6a7aa2b26077775906eb8411952dc6259694de Author: Bram Moolenaar <Bram@vim.org> Date: Thu Jan 21 14:45:13 2021 +0100 patch 8.2.2384: turtle filetype not recognized Problem: Turtle filetype not recognized. Solution: Add a rule to detect turtle files. (closes https://github.com/vim/vim/issues/7722)
author Bram Moolenaar <Bram@vim.org>
date Thu, 21 Jan 2021 15:00:05 +0100
parents 6d57492e46b7
children bc2b820a579b
files runtime/filetype.vim src/testdir/test_filetype.vim src/version.c
diffstat 3 files changed, 26 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/filetype.vim
+++ b/runtime/filetype.vim
@@ -1731,8 +1731,13 @@ au BufNewFile,BufRead *.tli			setf tli
 " Telix Salt
 au BufNewFile,BufRead *.slt			setf tsalt
 
-" Tera Term Language
-au BufRead,BufNewFile *.ttl			setf teraterm
+" Tera Term Language or Turtle
+au BufRead,BufNewFile *.ttl
+	\ if getline(1) =~ '^@\?\(prefix\|base\)' |
+	\   setf turtle |
+	\ else |
+	\   setf teraterm |
+	\ endif
 
 " Terminfo
 au BufNewFile,BufRead *.ti			setf terminfo
--- a/src/testdir/test_filetype.vim
+++ b/src/testdir/test_filetype.vim
@@ -733,6 +733,23 @@ func Test_ts_file()
   filetype off
 endfunc
 
+func Test_ttl_file()
+  filetype on
+
+  call writefile(['@base <http://example.org/> .'], 'Xfile.ttl')
+  split Xfile.ttl
+  call assert_equal('turtle', &filetype)
+  bwipe!
+
+  call writefile(['looks like Tera Term Language'], 'Xfile.ttl')
+  split Xfile.ttl
+  call assert_equal('teraterm', &filetype)
+  bwipe!
+
+  call delete('Xfile.ttl')
+  filetype off
+endfunc
+
 func Test_pp_file()
   filetype on
 
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2384,
+/**/
     2383,
 /**/
     2382,