aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Clason <c.clason@uni-graz.at>2023-11-14 17:38:46 +0100
committerChristian Clason <c.clason@uni-graz.at>2023-11-14 21:51:28 +0100
commit9e2248ab586c5e5854da68b5310755ea3557e6c9 (patch)
tree64040670cac57a9c93f85f493ed4caefb07f28e5
parent1a4db51d064e1ef6925e3545f80a13da4b92d4ef (diff)
downloadrneovim-9e2248ab586c5e5854da68b5310755ea3557e6c9.tar.gz
rneovim-9e2248ab586c5e5854da68b5310755ea3557e6c9.tar.bz2
rneovim-9e2248ab586c5e5854da68b5310755ea3557e6c9.zip
vim-patch:9.0.2104: wast filetype should be replaced by wat filetype
Problem: wast filetype should be replaced by wat filetype Solution: start using the official wat filetype name runtime: rename `wast` filetype to `wat` (Wasm text format) The problem is the name of the current filetype wast. When the plugin was initially created, the file extension for Wasm text format was not fixed and .wast was more popular. However, recently .wat became the official file extension for WebAssembly text (WAT) format and .wast is now a file extension for the unofficial WAST format, which is a superset of .wat for the convenience to describe the Wasm specification conformance tests. https://webassembly.js.org/docs/contrib-wat-vs-wast.html However for now, let's keep using the `wat` filetype even for the .wast extension, so that we at least do not lose the filetype settings and syntax highlighting. This can be adjusted later, if it turns out to have a separate need for. closes: vim/vim#13533 https://github.com/vim/vim/commit/bc8f79d36a456054ed29f46585830af6d71f57c8 Co-authored-by: rhysd <lin90162@yahoo.co.jp>
-rw-r--r--runtime/ftplugin/wat.vim (renamed from runtime/ftplugin/wast.vim)2
-rw-r--r--runtime/indent/wat.vim (renamed from runtime/indent/wast.vim)2
-rw-r--r--runtime/lua/vim/filetype.lua2
-rw-r--r--runtime/makemenu.vim2
-rw-r--r--runtime/synmenu.vim2
-rw-r--r--runtime/syntax/wast.vim97
-rw-r--r--runtime/syntax/wat.vim97
-rw-r--r--test/old/testdir/test_filetype.vim3
8 files changed, 103 insertions, 104 deletions
diff --git a/runtime/ftplugin/wast.vim b/runtime/ftplugin/wat.vim
index 0d9e98d37a..35d2d6a322 100644
--- a/runtime/ftplugin/wast.vim
+++ b/runtime/ftplugin/wat.vim
@@ -1,7 +1,7 @@
" Vim filetype plugin file
" Language: WebAssembly
" Maintainer: rhysd <lin90162@yahoo.co.jp>
-" Last Change: Jul 29, 2018
+" Last Change: Nov 14, 2023
" For bugs, patches and license go to https://github.com/rhysd/vim-wasm
if exists("b:did_ftplugin")
diff --git a/runtime/indent/wast.vim b/runtime/indent/wat.vim
index 1be234b6e9..08997f1a98 100644
--- a/runtime/indent/wast.vim
+++ b/runtime/indent/wat.vim
@@ -1,7 +1,7 @@
" Vim indent file
" Language: WebAssembly
" Maintainer: rhysd <lin90162@yahoo.co.jp>
-" Last Change: Jul 29, 2018
+" Last Change: Nov 14, 2023
" For bugs, patches and license go to https://github.com/rhysd/vim-wasm
if exists("b:did_indent")
diff --git a/runtime/lua/vim/filetype.lua b/runtime/lua/vim/filetype.lua
index aae63af132..217f673b5e 100644
--- a/runtime/lua/vim/filetype.lua
+++ b/runtime/lua/vim/filetype.lua
@@ -1074,7 +1074,7 @@ local extension = {
wrl = 'vrml',
vroom = 'vroom',
vue = 'vue',
- wast = 'wast',
+ wast = 'wat',
wat = 'wat',
wdl = 'wdl',
wm = 'webmacro',
diff --git a/runtime/makemenu.vim b/runtime/makemenu.vim
index 8eea49d711..5d288e2f40 100644
--- a/runtime/makemenu.vim
+++ b/runtime/makemenu.vim
@@ -649,7 +649,7 @@ SynMenu UV.VSE\ JCL:vsejcl
SynMenu WXYZ.WEB.CWEB:cweb
SynMenu WXYZ.WEB.WEB:web
SynMenu WXYZ.WEB.WEB\ Changes:change
-SynMenu WXYZ.WebAssembly:wast
+SynMenu WXYZ.WebAssembly:wat
SynMenu WXYZ.Webmacro:webmacro
SynMenu WXYZ.Website\ MetaLanguage:wml
SynMenu WXYZ.wDiff:wdiff
diff --git a/runtime/synmenu.vim b/runtime/synmenu.vim
index fec5cc4b06..43aae6f88b 100644
--- a/runtime/synmenu.vim
+++ b/runtime/synmenu.vim
@@ -623,7 +623,7 @@ an 50.160.330 &Syntax.UV.VSE\ JCL :cal SetSyn("vsejcl")<CR>
an 50.170.100 &Syntax.WXYZ.WEB.CWEB :cal SetSyn("cweb")<CR>
an 50.170.110 &Syntax.WXYZ.WEB.WEB :cal SetSyn("web")<CR>
an 50.170.120 &Syntax.WXYZ.WEB.WEB\ Changes :cal SetSyn("change")<CR>
-an 50.170.130 &Syntax.WXYZ.WebAssembly :cal SetSyn("wast")<CR>
+an 50.170.130 &Syntax.WXYZ.WebAssembly :cal SetSyn("wat")<CR>
an 50.170.140 &Syntax.WXYZ.Webmacro :cal SetSyn("webmacro")<CR>
an 50.170.150 &Syntax.WXYZ.Website\ MetaLanguage :cal SetSyn("wml")<CR>
an 50.170.170 &Syntax.WXYZ.wDiff :cal SetSyn("wdiff")<CR>
diff --git a/runtime/syntax/wast.vim b/runtime/syntax/wast.vim
deleted file mode 100644
index 113d65c5a1..0000000000
--- a/runtime/syntax/wast.vim
+++ /dev/null
@@ -1,97 +0,0 @@
-" Vim syntax file
-" Language: WebAssembly
-" Maintainer: rhysd <lin90162@yahoo.co.jp>
-" Last Change: Aug 7, 2023
-" For bugs, patches and license go to https://github.com/rhysd/vim-wasm
-
-if exists("b:current_syntax")
- finish
-endif
-
-let s:cpo_save = &cpo
-set cpo&vim
-
-syn cluster wastNotTop contains=wastModule,wastInstWithType,wastInstGetSet,wastInstGeneral,wastParamInst,wastControlInst,wastSimdInst,wastString,wastNamedVar,wastUnnamedVar,wastFloat,wastNumber,wastComment,wastList,wastType
-
-" Instructions
-" https://webassembly.github.io/spec/core/text/instructions.html
-" Note: memarg (align=,offset=) can be added to memory instructions
-syn match wastInstWithType "\%((\s*\)\@<=\<\%(i32\|i64\|f32\|f64\|memory\)\.[[:alnum:]_]\+\%(/\%(i32\|i64\|f32\|f64\)\)\=\>\%(\s\+\%(align\|offset\)=\)\=" contained display
-syn match wastInstGeneral "\%((\s*\)\@<=\<[[:alnum:]_]\+\>" contained display
-syn match wastInstGetSet "\%((\s*\)\@<=\<\%(local\|global\)\.\%(get\|set\)\>" contained display
-" https://webassembly.github.io/spec/core/text/instructions.html#control-instructions
-syn match wastControlInst "\%((\s*\)\@<=\<\%(block\|end\|loop\|if\|then\|else\|unreachable\|nop\|br\|br_if\|br_table\|return\|call\|call_indirect\)\>" contained display
-" https://webassembly.github.io/spec/core/text/instructions.html#parametric-instructions
-syn match wastParamInst "\%((\s*\)\@<=\<\%(drop\|select\)\>" contained display
-" SIMD instructions
-" https://webassembly.github.io/simd/core/text/instructions.html#simd-instructions
-syn match wastSimdInst "\<\%(v128\|i8x16\|i16x8\|i32x4\|i64x2\|f32x4\|f64x2)\)\.[[:alnum:]_]\+\%(\s\+\%(i8x16\|i16x8\|i32x4\|i64x2\|f32x4\|f64x2\)\)\=\>" contained display
-
-" Identifiers
-" https://webassembly.github.io/spec/core/text/values.html#text-id
-syn match wastNamedVar "$\+[[:alnum:]!#$%&'∗./:=><?@\\^_`~+-]*" contained contains=wastEscapeUtf8
-syn match wastUnnamedVar "$\+\d\+[[:alnum:]!#$%&'∗./:=><?@\\^_`~+-]\@!" contained display
-" Presuming the source text is itself encoded correctly, strings that do not
-" contain any uses of hexadecimal byte escapes are always valid names.
-" https://webassembly.github.io/spec/core/text/values.html#names
-syn match wastEscapedUtf8 "\\\x\{1,6}" contained containedin=wastNamedVar display
-
-" String literals
-" https://webassembly.github.io/spec/core/text/values.html#strings
-syn region wastString start=+"+ skip=+\\\\\|\\"+ end=+"+ contained contains=wastStringSpecial
-syn match wastStringSpecial "\\\x\x\|\\[tnr'\\\"]\|\\u\x\+" contained containedin=wastString display
-
-" Float literals
-" https://webassembly.github.io/spec/core/text/values.html#floating-point
-syn match wastFloat "\<-\=\d\%(_\=\d\)*\%(\.\d\%(_\=\d\)*\)\=\%([eE][-+]\=\d\%(_\=\d\)*\)\=" display contained
-syn match wastFloat "\<-\=0x\x\%(_\=\x\)*\%(\.\x\%(_\=\x\)*\)\=\%([pP][-+]\=\d\%(_\=\d\)*\)\=" display contained
-syn keyword wastFloat inf nan contained
-syn match wastFloat "nan:0x\x\%(_\=\x\)*" display contained
-
-" Integer literals
-" https://webassembly.github.io/spec/core/text/values.html#integers
-syn match wastNumber "\<-\=\d\%(_\=\d\)*\>" display contained
-syn match wastNumber "\<-\=0x\x\%(_\=\x\)*\>" display contained
-
-" Comments
-" https://webassembly.github.io/spec/core/text/lexical.html#comments
-syn region wastComment start=";;" end="$"
-syn region wastComment start="(;;\@!" end=";)"
-
-syn region wastList matchgroup=wastListDelimiter start="(;\@!" matchgroup=wastListDelimiter end=";\@<!)" contains=@wastNotTop
-
-" Types
-" https://webassembly.github.io/spec/core/text/types.html
-" Note: `mut` was changed to `const`/`var` at Wasm 2.0
-syn keyword wastType i64 i32 f64 f32 param result funcref func externref extern mut v128 const var contained
-syn match wastType "\%((\_s*\)\@<=func\%(\_s*[()]\)\@=" display contained
-
-" Modules
-" https://webassembly.github.io/spec/core/text/modules.html
-syn keyword wastModule module type export import table memory global data elem contained
-syn match wastModule "\%((\_s*\)\@<=func\%(\_s\+\$\)\@=" display contained
-
-syn sync maxlines=100
-
-hi def link wastModule PreProc
-hi def link wastListDelimiter Delimiter
-hi def link wastInstWithType Operator
-hi def link wastInstGetSet Operator
-hi def link wastInstGeneral Operator
-hi def link wastControlInst Statement
-hi def link wastSimdInst Operator
-hi def link wastParamInst Conditional
-hi def link wastString String
-hi def link wastStringSpecial Special
-hi def link wastNamedVar Identifier
-hi def link wastUnnamedVar PreProc
-hi def link wastFloat Float
-hi def link wastNumber Number
-hi def link wastComment Comment
-hi def link wastType Type
-hi def link wastEscapedUtf8 Special
-
-let b:current_syntax = "wast"
-
-let &cpo = s:cpo_save
-unlet s:cpo_save
diff --git a/runtime/syntax/wat.vim b/runtime/syntax/wat.vim
new file mode 100644
index 0000000000..a6b926be98
--- /dev/null
+++ b/runtime/syntax/wat.vim
@@ -0,0 +1,97 @@
+" Vim syntax file
+" Language: WebAssembly
+" Maintainer: rhysd <lin90162@yahoo.co.jp>
+" Last Change: Nov 14, 2023
+" For bugs, patches and license go to https://github.com/rhysd/vim-wasm
+
+if exists("b:current_syntax")
+ finish
+endif
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+syn cluster watNotTop contains=watModule,watInstWithType,watInstGetSet,watInstGeneral,watParamInst,watControlInst,watSimdInst,watString,watNamedVar,watUnnamedVar,watFloat,watNumber,watComment,watList,watType
+
+" Instructions
+" https://webassembly.github.io/spec/core/text/instructions.html
+" Note: memarg (align=,offset=) can be added to memory instructions
+syn match watInstWithType "\%((\s*\)\@<=\<\%(i32\|i64\|f32\|f64\|memory\)\.[[:alnum:]_]\+\%(/\%(i32\|i64\|f32\|f64\)\)\=\>\%(\s\+\%(align\|offset\)=\)\=" contained display
+syn match watInstGeneral "\%((\s*\)\@<=\<[[:alnum:]_]\+\>" contained display
+syn match watInstGetSet "\%((\s*\)\@<=\<\%(local\|global\)\.\%(get\|set\)\>" contained display
+" https://webassembly.github.io/spec/core/text/instructions.html#control-instructions
+syn match watControlInst "\%((\s*\)\@<=\<\%(block\|end\|loop\|if\|then\|else\|unreachable\|nop\|br\|br_if\|br_table\|return\|call\|call_indirect\)\>" contained display
+" https://webassembly.github.io/spec/core/text/instructions.html#parametric-instructions
+syn match watParamInst "\%((\s*\)\@<=\<\%(drop\|select\)\>" contained display
+" SIMD instructions
+" https://webassembly.github.io/simd/core/text/instructions.html#simd-instructions
+syn match watSimdInst "\<\%(v128\|i8x16\|i16x8\|i32x4\|i64x2\|f32x4\|f64x2)\)\.[[:alnum:]_]\+\%(\s\+\%(i8x16\|i16x8\|i32x4\|i64x2\|f32x4\|f64x2\)\)\=\>" contained display
+
+" Identifiers
+" https://webassembly.github.io/spec/core/text/values.html#text-id
+syn match watNamedVar "$\+[[:alnum:]!#$%&'∗./:=><?@\\^_`~+-]*" contained contains=watEscapeUtf8
+syn match watUnnamedVar "$\+\d\+[[:alnum:]!#$%&'∗./:=><?@\\^_`~+-]\@!" contained display
+" Presuming the source text is itself encoded correctly, strings that do not
+" contain any uses of hexadecimal byte escapes are always valid names.
+" https://webassembly.github.io/spec/core/text/values.html#names
+syn match watEscapedUtf8 "\\\x\{1,6}" contained containedin=watNamedVar display
+
+" String literals
+" https://webassembly.github.io/spec/core/text/values.html#strings
+syn region watString start=+"+ skip=+\\\\\|\\"+ end=+"+ contained contains=watStringSpecial
+syn match watStringSpecial "\\\x\x\|\\[tnr'\\\"]\|\\u\x\+" contained containedin=watString display
+
+" Float literals
+" https://webassembly.github.io/spec/core/text/values.html#floating-point
+syn match watFloat "\<-\=\d\%(_\=\d\)*\%(\.\d\%(_\=\d\)*\)\=\%([eE][-+]\=\d\%(_\=\d\)*\)\=" display contained
+syn match watFloat "\<-\=0x\x\%(_\=\x\)*\%(\.\x\%(_\=\x\)*\)\=\%([pP][-+]\=\d\%(_\=\d\)*\)\=" display contained
+syn keyword watFloat inf nan contained
+syn match watFloat "nan:0x\x\%(_\=\x\)*" display contained
+
+" Integer literals
+" https://webassembly.github.io/spec/core/text/values.html#integers
+syn match watNumber "\<-\=\d\%(_\=\d\)*\>" display contained
+syn match watNumber "\<-\=0x\x\%(_\=\x\)*\>" display contained
+
+" Comments
+" https://webassembly.github.io/spec/core/text/lexical.html#comments
+syn region watComment start=";;" end="$"
+syn region watComment start="(;;\@!" end=";)"
+
+syn region watList matchgroup=watListDelimiter start="(;\@!" matchgroup=watListDelimiter end=";\@<!)" contains=@watNotTop
+
+" Types
+" https://webassembly.github.io/spec/core/text/types.html
+" Note: `mut` was changed to `const`/`var` at Wasm 2.0
+syn keyword watType i64 i32 f64 f32 param result funcref func externref extern mut v128 const var contained
+syn match watType "\%((\_s*\)\@<=func\%(\_s*[()]\)\@=" display contained
+
+" Modules
+" https://webassembly.github.io/spec/core/text/modules.html
+syn keyword watModule module type export import table memory global data elem contained
+syn match watModule "\%((\_s*\)\@<=func\%(\_s\+\$\)\@=" display contained
+
+syn sync maxlines=100
+
+hi def link watModule PreProc
+hi def link watListDelimiter Delimiter
+hi def link watInstWithType Operator
+hi def link watInstGetSet Operator
+hi def link watInstGeneral Operator
+hi def link watControlInst Statement
+hi def link watSimdInst Operator
+hi def link watParamInst Conditional
+hi def link watString String
+hi def link watStringSpecial Special
+hi def link watNamedVar Identifier
+hi def link watUnnamedVar PreProc
+hi def link watFloat Float
+hi def link watNumber Number
+hi def link watComment Comment
+hi def link watType Type
+hi def link watEscapedUtf8 Special
+
+let b:current_syntax = "wat"
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/test/old/testdir/test_filetype.vim b/test/old/testdir/test_filetype.vim
index d0361d6a87..b45895d608 100644
--- a/test/old/testdir/test_filetype.vim
+++ b/test/old/testdir/test_filetype.vim
@@ -708,8 +708,7 @@ func s:GetFilenameChecks() abort
\ 'vrml': ['file.wrl'],
\ 'vroom': ['file.vroom'],
\ 'vue': ['file.vue'],
- \ 'wat': ['file.wat'],
- \ 'wast': ['file.wast'],
+ \ 'wat': ['file.wat', 'file.wast'],
\ 'wdl': ['file.wdl'],
\ 'webmacro': ['file.wm'],
\ 'wget': ['.wgetrc', 'wgetrc'],