Mercurial > vim
view runtime/syntax/pf.vim @ 7687:61354fabf8a2 v7.4.1142
commit https://github.com/vim/vim/commit/b8060fe862f684b591f9ac679eac5b2594d6c5a0
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Jan 19 22:29:28 2016 +0100
patch 7.4.1142
Problem: Cannot define keyword characters for a syntax file.
Solution: Add the ":syn iskeyword" command. (Christian Brabandt)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 19 Jan 2016 22:30:07 +0100 |
parents | 2d1383658bb4 |
children | be72f4201a1d |
line wrap: on
line source
" pf syntax file " Language: OpenBSD packet filter configuration (pf.conf) " Original Author: Camiel Dobbelaar <cd@sentia.nl> " Maintainer: Lauri Tirkkonen <lotheac@iki.fi> " Last Change: 2013 Apr 02 " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded if version < 600 syntax clear elseif exists("b:current_syntax") finish endif setlocal foldmethod=syntax syn sync fromstart syn cluster pfNotLS contains=pfTodo,pfVarAssign syn keyword pfCmd altq anchor antispoof binat nat pass syn keyword pfCmd queue rdr scrub table set syn keyword pfService auth bgp domain finger ftp http https ident syn keyword pfService imap irc isakmp kerberos mail nameserver nfs syn keyword pfService nntp ntp pop3 portmap pptp rpcbind rsync smtp syn keyword pfService snmp snmptrap socks ssh sunrpc syslog telnet syn keyword pfService tftp www syn keyword pfTodo TODO XXX contained syn keyword pfWildAddr all any syn match pfCmd /block\s/ syn match pfComment /#.*$/ contains=pfTodo syn match pfCont /\\$/ syn match pfErrClose /}/ syn match pfIPv4 /\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}/ syn match pfIPv6 /[a-fA-F0-9:]*::[a-fA-F0-9:.]*/ syn match pfIPv6 /[a-fA-F0-9:]\+:[a-fA-F0-9:]\+:[a-fA-F0-9:.]\+/ syn match pfNetmask /\/\d\+/ syn match pfNum /[a-zA-Z0-9_:.]\@<!\d\+[a-zA-Z0-9_:.]\@!/ syn match pfTable /<\s*[a-zA-Z][a-zA-Z0-9_]*\s*>/ syn match pfVar /$[a-zA-Z][a-zA-Z0-9_]*/ syn match pfVarAssign /^\s*[a-zA-Z][a-zA-Z0-9_]*\s*=/me=e-1 syn region pfFold1 start=/^#\{1}>/ end=/^#\{1,3}>/me=s-1 transparent fold syn region pfFold2 start=/^#\{2}>/ end=/^#\{2,3}>/me=s-1 transparent fold syn region pfFold3 start=/^#\{3}>/ end=/^#\{3}>/me=s-1 transparent fold syn region pfList start=/{/ end=/}/ transparent contains=ALLBUT,pfErrClose,@pfNotLS syn region pfString start=/"/ end=/"/ transparent contains=ALLBUT,pfString,@pfNotLS syn region pfString start=/'/ end=/'/ transparent contains=ALLBUT,pfString,@pfNotLS " Define the default highlighting. " For version 5.7 and earlier: only when not done already " For version 5.8 and later: only when an item doesn't have highlighting yet if version >= 508 || !exists("did_c_syn_inits") if version < 508 let did_c_syn_inits = 1 command -nargs=+ HiLink hi link <args> else command -nargs=+ HiLink hi def link <args> endif HiLink pfCmd Statement HiLink pfComment Comment HiLink pfCont Statement HiLink pfErrClose Error HiLink pfIPv4 Type HiLink pfIPv6 Type HiLink pfNetmask Constant HiLink pfNum Constant HiLink pfService Constant HiLink pfTable Identifier HiLink pfTodo Todo HiLink pfVar Identifier HiLink pfVarAssign Identifier HiLink pfWildAddr Type delcommand HiLink endif let b:current_syntax = "pf"