patch 8.2.2384: turtle filetype not recognized
Problem: Turtle filetype not recognized.
Solution: Add a rule to detect turtle files. (closes #7722)
diff --git a/runtime/filetype.vim b/runtime/filetype.vim
index 4c419ed..c9c9fdf 100644
--- a/runtime/filetype.vim
+++ b/runtime/filetype.vim
@@ -1731,8 +1731,13 @@
" 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
diff --git a/src/testdir/test_filetype.vim b/src/testdir/test_filetype.vim
index b05c152..4e6d433 100644
--- a/src/testdir/test_filetype.vim
+++ b/src/testdir/test_filetype.vim
@@ -733,6 +733,23 @@
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
diff --git a/src/version.c b/src/version.c
index 361ae36..a90c645 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 2384,
+/**/
2383,
/**/
2382,