view runtime/ftplugin/hog.vim @ 33825:d515e012d713 v9.0.2128

patch 9.0.2128: runtime(swig): add syntax and filetype plugins Commit: https://github.com/vim/vim/commit/2e31065a650015892179e520038bf2083a9519b6 Author: Julien Marrec <julien.marrec@gmail.com> Date: Sat Nov 25 15:30:46 2023 +0100 patch 9.0.2128: runtime(swig): add syntax and filetype plugins Add syntax and filetype plugins for SWIG (Simplified Wrapper Interface Generator) description files. The default syntax for .i files highlights comments in a reverse color scheme which doesn't look well. This syntax builds on vim's c++ syntax by adding highlighting for common swig directives and user defined directives. For an alternative syntax, see vimscript #1247 (which I found after writing this). closes: #13562 Co-authored-by: Mat?j Cepl <mcepl@cepl.eu> Co-authored-by: Julien Marrec <julien.marrec@gmail.com> Signed-off-by: Julien Marrec <julien.marrec@gmail.com> Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Sat, 25 Nov 2023 15:45:06 +0100
parents 3ba0f29ba1d1
children
line wrap: on
line source

" Vim filetype plugin
" Language:     hog (snort.conf)
" Maintainer: . Victor Roemer, <vroemer@badsec.org>.
" Last Change:  Mar 1, 2013

if exists("b:did_ftplugin")
    finish
endif
let b:did_ftplugin = 1

let s:undo_ftplugin = "setl fo< com< cms< def< inc<"

let s:cpo_save = &cpo
set cpo&vim

setlocal formatoptions=croq
setlocal comments=:#
setlocal commentstring=\c#\ %s
setlocal define=\c^\s\{-}var
setlocal include=\c^\s\{-}include

" Move around configurations 
let s:hog_keyword_match = '\c^\s*\<\(preprocessor\\|config\\|output\\|include\\|ipvar\\|portvar\\|var\\|dynamicpreprocessor\\|' . 
                        \ 'dynamicengine\\|dynamicdetection\\|activate\\|alert\\|drop\\|block\\|dynamic\\|log\\|pass\\|reject\\|sdrop\\|sblock\)\>'

exec "nnoremap <buffer><silent> ]] :call search('" . s:hog_keyword_match . "', 'W' )<CR>"
exec "nnoremap <buffer><silent> [[ :call search('" . s:hog_keyword_match . "', 'bW' )<CR>"

if exists("loaded_matchit")
    let b:match_words =
                  \ '^\s*\<\%(preprocessor\|config\|output\|include\|ipvar\|portvar' . 
                  \ '\|var\|dynamicpreprocessor\|dynamicengine\|dynamicdetection' . 
                  \ '\|activate\|alert\|drop\|block\|dynamic\|log\|pass\|reject' . 
                  \ '\|sdrop\|sblock\>\):$,\::\,:;'
    let b:match_skip = 'r:\\.\{-}$\|^\s*#.\{-}$\|^\s*$'
endif

let &cpo = s:cpo_save
unlet s:cpo_save