diff options
author | Gaetan Lepage <gaetan@glepage.com> | 2023-05-10 22:01:55 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2023-05-10 22:01:55 +0100 |
commit | 4ce1bda869e4ec0152d7dcbe1e491ceac5341d5e (patch) | |
tree | 349509e1ca04cb29840c2aa33b519a856567a7a4 /runtime/autoload | |
parent | 411da64e77ef9d8edd1a5aa80fa5b9a4b159c93d (diff) |
patch 9.0.1539: typst filetype is not recognizedv9.0.1539
Problem: Typst filetype is not recognized.
Solution: Distinguish between sql and typst. (Gaetan Lepage, closes #12363)
Diffstat (limited to 'runtime/autoload')
-rw-r--r-- | runtime/autoload/dist/ft.vim | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/runtime/autoload/dist/ft.vim b/runtime/autoload/dist/ft.vim index 3d9d60a75b..7ac053eb2f 100644 --- a/runtime/autoload/dist/ft.vim +++ b/runtime/autoload/dist/ft.vim @@ -470,7 +470,7 @@ enddef # Returns true if file content looks like LambdaProlog module def IsLProlog(): bool - # skip apparent comments and blank lines, what looks like + # skip apparent comments and blank lines, what looks like # LambdaProlog comment may be RAPID header var l: number = nextnonblank(1) while l > 0 && l < line('$') && getline(l) =~ '^\s*%' # LambdaProlog comment @@ -1106,6 +1106,31 @@ export def FTlsl() endif enddef +export def FTtyp() + if exists("g:filetype_typ") + exe "setf " .. g:filetype_typ + return + endif + + # Look for SQL type definition syntax + for line in getline(1, 200) + # SQL type files may define the casing + if line =~ '^CASE\s\==\s\=\(SAME\|LOWER\|UPPER\|OPPOSITE\)$' + setf sql + return + endif + + # SQL type files may define some types as follows + if line =~ '^TYPE\s.*$' + setf sql + return + endif + endfor + + # Otherwise, affect the typst filetype + setf typst +enddef + # Set the filetype of a *.v file to Verilog, V or Cog based on the first 200 # lines. export def FTv() |