mirror of
https://github.com/vim/vim.git
synced 2025-10-21 08:24:06 -04:00
patch 9.1.0366: filetype: ondir files are not recognized
Problem: filetype: ondir files are not recognized Solution: Detect '.ondirrc' as ondir filetype (Jon Parise) closes: #14604 Signed-off-by: Jon Parise <jon@indelible.org> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
6b13e3d4e4
commit
ea999037a4
@@ -1593,6 +1593,9 @@ au BufNewFile,BufRead *.odin setf odin
|
|||||||
" Omnimark
|
" Omnimark
|
||||||
au BufNewFile,BufRead *.xom,*.xin setf omnimark
|
au BufNewFile,BufRead *.xom,*.xin setf omnimark
|
||||||
|
|
||||||
|
" ondir
|
||||||
|
au BufNewFile,BufRead .ondirrc setf ondir
|
||||||
|
|
||||||
" OPAM
|
" OPAM
|
||||||
au BufNewFile,BufRead opam,*.opam,*.opam.template setf opam
|
au BufNewFile,BufRead opam,*.opam,*.opam.template setf opam
|
||||||
|
|
||||||
|
18
runtime/ftplugin/ondir.vim
Normal file
18
runtime/ftplugin/ondir.vim
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
" Vim filetype plugin file
|
||||||
|
" Language: ondir <https://github.com/alecthomas/ondir>
|
||||||
|
" Maintainer: Jon Parise <jon@indelible.org>
|
||||||
|
|
||||||
|
if exists('b:did_ftplugin')
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
let s:cpo_save = &cpoptions
|
||||||
|
|
||||||
|
setlocal comments=:# commentstring=#\ %s
|
||||||
|
|
||||||
|
let b:undo_ftplugin = 'setl comments< commentstring<'
|
||||||
|
|
||||||
|
let &cpoptions = s:cpo_save
|
||||||
|
unlet s:cpo_save
|
||||||
|
|
||||||
|
" vim: et ts=4 sw=2 sts=2:
|
35
runtime/syntax/ondir.vim
Normal file
35
runtime/syntax/ondir.vim
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
" Vim syntax file
|
||||||
|
" Language: ondir <https://github.com/alecthomas/ondir>
|
||||||
|
" Maintainer: Jon Parise <jon@indelible.org>
|
||||||
|
|
||||||
|
if exists('b:current_syntax')
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
let s:cpo_save = &cpoptions
|
||||||
|
set cpoptions&vim
|
||||||
|
|
||||||
|
syn case match
|
||||||
|
|
||||||
|
syn match ondirComment "#.*" contains=@Spell
|
||||||
|
syn keyword ondirKeyword final contained skipwhite nextgroup=ondirKeyword
|
||||||
|
syn keyword ondirKeyword enter leave contained skipwhite nextgroup=ondirPath
|
||||||
|
syn match ondirPath "[^:]\+" contained display
|
||||||
|
syn match ondirColon ":" contained display
|
||||||
|
|
||||||
|
syn include @ondirShell syntax/sh.vim
|
||||||
|
syn region ondirContent start="^\s\+" end="^\ze\S.*$" keepend contained contains=@ondirShell
|
||||||
|
|
||||||
|
syn region ondirSection start="^\(final\|enter\|leave\)" end="^\ze\S.*$" fold contains=ondirKeyword,ondirPath,ondirColon,ondirContent
|
||||||
|
|
||||||
|
hi def link ondirComment Comment
|
||||||
|
hi def link ondirKeyword Keyword
|
||||||
|
hi def link ondirPath Special
|
||||||
|
hi def link ondirColon Operator
|
||||||
|
|
||||||
|
let b:current_syntax = 'ondir'
|
||||||
|
|
||||||
|
let &cpoptions = s:cpo_save
|
||||||
|
unlet s:cpo_save
|
||||||
|
|
||||||
|
" vim: et ts=4 sw=2 sts=2:
|
@@ -518,6 +518,7 @@ def s:GetFilenameChecks(): dict<list<string>>
|
|||||||
octave: ['octaverc', '.octaverc', 'octave.conf', 'any/.local/share/octave/history'],
|
octave: ['octaverc', '.octaverc', 'octave.conf', 'any/.local/share/octave/history'],
|
||||||
odin: ['file.odin'],
|
odin: ['file.odin'],
|
||||||
omnimark: ['file.xom', 'file.xin'],
|
omnimark: ['file.xom', 'file.xin'],
|
||||||
|
ondir: ['.ondirrc'],
|
||||||
opam: ['opam', 'file.opam', 'file.opam.template'],
|
opam: ['opam', 'file.opam', 'file.opam.template'],
|
||||||
openroad: ['file.or'],
|
openroad: ['file.or'],
|
||||||
openscad: ['file.scad'],
|
openscad: ['file.scad'],
|
||||||
|
@@ -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 */
|
||||||
|
/**/
|
||||||
|
366,
|
||||||
/**/
|
/**/
|
||||||
365,
|
365,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user