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,