patch 9.1.0550: filetype: antlr4 files are not recognized
Problem: filetype: antlr4 files are not recognized
Solution: Detect '*.g4' as antlr4 filetype, include a simple antlr4
syntax and filetype plugin (Yinzuo Jiang)
closes: #15191
Signed-off-by: Yinzuo Jiang <jiangyinzuo@foxmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
600a12d08e
commit
4a7a4a3675
2
.github/MAINTAINERS
vendored
2
.github/MAINTAINERS
vendored
@ -107,6 +107,7 @@ runtime/compiler/zsh.vim @dkearns
|
|||||||
runtime/doc/ft_hare.txt @selenebun
|
runtime/doc/ft_hare.txt @selenebun
|
||||||
runtime/doc/ps1.txt @heaths
|
runtime/doc/ps1.txt @heaths
|
||||||
runtime/ftplugin/abaqus.vim @costerwi
|
runtime/ftplugin/abaqus.vim @costerwi
|
||||||
|
runtime/ftplugin/antlr4.vim @jiangyinzuo
|
||||||
runtime/ftplugin/apache.vim @dubgeiser
|
runtime/ftplugin/apache.vim @dubgeiser
|
||||||
runtime/ftplugin/arduino.vim @k-takata
|
runtime/ftplugin/arduino.vim @k-takata
|
||||||
runtime/ftplugin/astro.vim @romainl
|
runtime/ftplugin/astro.vim @romainl
|
||||||
@ -368,6 +369,7 @@ runtime/syntax/shared/hgcommitDiff.vim @vegerot
|
|||||||
runtime/syntax/abaqus.vim @costerwi
|
runtime/syntax/abaqus.vim @costerwi
|
||||||
runtime/syntax/aidl.vim @dpelle
|
runtime/syntax/aidl.vim @dpelle
|
||||||
runtime/syntax/ant.vim @dkearns
|
runtime/syntax/ant.vim @dkearns
|
||||||
|
runtime/syntax/antlr4.vim @jiangyinzuo
|
||||||
runtime/syntax/arduino.vim @johshoff
|
runtime/syntax/arduino.vim @johshoff
|
||||||
runtime/syntax/asciidoc.vim @aerostitch
|
runtime/syntax/asciidoc.vim @aerostitch
|
||||||
runtime/syntax/asm.vim @dkearns
|
runtime/syntax/asm.vim @dkearns
|
||||||
|
|||||||
@ -98,6 +98,13 @@ au BufNewFile,BufRead *.run setf ampl
|
|||||||
" Ant
|
" Ant
|
||||||
au BufNewFile,BufRead build.xml setf ant
|
au BufNewFile,BufRead build.xml setf ant
|
||||||
|
|
||||||
|
" ANTLR / PCCTS
|
||||||
|
"au BufNewFile,BufRead *.g setf antlr
|
||||||
|
au BufNewFile,BufRead *.g setf pccts
|
||||||
|
|
||||||
|
" ANTLR 4
|
||||||
|
au BufNewFile,BufRead *.g4 setf antlr4
|
||||||
|
|
||||||
" Arduino
|
" Arduino
|
||||||
au BufNewFile,BufRead *.ino,*.pde setf arduino
|
au BufNewFile,BufRead *.ino,*.pde setf arduino
|
||||||
|
|
||||||
@ -1814,10 +1821,6 @@ au BufNewFile,BufRead *termcap
|
|||||||
" Prisma
|
" Prisma
|
||||||
au BufRead,BufNewFile *.prisma setf prisma
|
au BufRead,BufNewFile *.prisma setf prisma
|
||||||
|
|
||||||
" PCCTS / ANTLR
|
|
||||||
"au BufNewFile,BufRead *.g setf antlr
|
|
||||||
au BufNewFile,BufRead *.g setf pccts
|
|
||||||
|
|
||||||
" PPWizard
|
" PPWizard
|
||||||
au BufNewFile,BufRead *.it,*.ih setf ppwiz
|
au BufNewFile,BufRead *.it,*.ih setf ppwiz
|
||||||
|
|
||||||
|
|||||||
14
runtime/ftplugin/antlr4.vim
Normal file
14
runtime/ftplugin/antlr4.vim
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
" Vim filetype plugin
|
||||||
|
" Language: ANTLR4, ANother Tool for Language Recognition v4 <www.antlr.org>
|
||||||
|
" Maintainer: Yinzuo Jiang <jiangyinzuo@foxmail.com>
|
||||||
|
" Last Change: 2024 July 09
|
||||||
|
|
||||||
|
if exists('b:did_ftplugin')
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
let b:did_ftplugin = 1
|
||||||
|
|
||||||
|
setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/*,mb:*,ex:*/,://
|
||||||
|
setlocal commentstring=//\ %s
|
||||||
|
|
||||||
|
let b:undo_ftplugin = 'setl com< cms<'
|
||||||
30
runtime/syntax/antlr4.vim
Normal file
30
runtime/syntax/antlr4.vim
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
" Vim syntax file
|
||||||
|
" Language: ANTLR4, ANother Tool for Language Recognition v4 <www.antlr.org>
|
||||||
|
" Maintainer: Yinzuo Jiang <jiangyinzuo@foxmail.com>
|
||||||
|
" Last Change: 2024 July 09
|
||||||
|
|
||||||
|
" quit when a syntax file was already loaded
|
||||||
|
if exists("b:current_syntax")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Keywords. See https://github.com/antlr/antlr4/blob/4.13.1/doc/lexicon.md
|
||||||
|
syn keyword antlr4Include import
|
||||||
|
" https://github.com/antlr/antlr4/blob/4.13.1/doc/options.md
|
||||||
|
" https://github.com/antlr/antlr4/blob/4.13.1/doc/grammars.md
|
||||||
|
syn keyword antlr4Structure fragment lexer parser grammar options channels tokens mode
|
||||||
|
syn keyword antlr4Statement returns locals
|
||||||
|
syn keyword antlr4Exceptions throws catch finally
|
||||||
|
|
||||||
|
" Comments.
|
||||||
|
syn keyword antlr4Todo contained TODO FIXME XXX NOTE
|
||||||
|
syn region antlr4Comment start="//" end="$" contains=antlr4Todo,@Spell
|
||||||
|
syn region antlr4Comment start="/\*" end="\*/" contains=antlr4Todo,@Spell
|
||||||
|
|
||||||
|
hi def link antlr4Include Include
|
||||||
|
hi def link antlr4Structure Structure
|
||||||
|
hi def link antlr4Statement Statement
|
||||||
|
hi def link antlr4Exceptions Structure
|
||||||
|
hi def link antlr4Comment Comment
|
||||||
|
|
||||||
|
let b:current_syntax = "antlr4"
|
||||||
@ -704,6 +704,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
550,
|
||||||
/**/
|
/**/
|
||||||
549,
|
549,
|
||||||
/**/
|
/**/
|
||||||
|
|||||||
Reference in New Issue
Block a user