neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

uci.vim (1235B)


      1 " Vim syntax file
      2 " Language:	OpenWrt Unified Configuration Interface
      3 " Maintainer:	Colin Caine <complaints@cmcaine.co.uk>
      4 " Upstream:	https://github.com/cmcaine/vim-uci
      5 " Last Change:	2021 Sep 19
      6 "
      7 " For more information on uci, see https://openwrt.org/docs/guide-user/base-system/uci
      8 
      9 if exists("b:current_syntax")
     10    finish
     11 endif
     12 
     13 " Fancy zero-width non-capturing look-behind to see what the last word was.
     14 " Would be really nice if there was some less obscure or more efficient way to
     15 " do this.
     16 syntax match uciOptionName '\%(\%(option\|list\)\s\+\)\@<=\S*'
     17 syntax match uciConfigName '\%(\%(package\|config\)\s\+\)\@<=\S*'
     18 syntax keyword uciConfigDec package config nextgroup=uciConfigName skipwhite
     19 syntax keyword uciOptionType option list nextgroup=uciOptionName skipwhite
     20 
     21 " Standard matches.
     22 syntax match uciComment "#.*$"
     23 syntax region uciString start=+"+ end=+"+ skip=+\\"+
     24 syntax region uciString start=+'+ end=+'+ skip=+\\'+
     25 
     26 highlight default link uciConfigName Identifier
     27 highlight default link uciOptionName Constant
     28 highlight default link uciConfigDec Statement
     29 highlight default link uciOptionType Type
     30 highlight default link uciComment Comment
     31 highlight default link uciString Normal
     32 
     33 let b:current_syntax = "uci"