view runtime/syntax/dictconf.vim @ 25282:9bce044c7643 v8.2.3178

patch 8.2.3178: Vim9: the file name of an :import cannot be an expression Commit: https://github.com/vim/vim/commit/4db572eeb2b42819268e934e76c67163316d873f Author: Bram Moolenaar <Bram@vim.org> Date: Sun Jul 18 18:21:38 2021 +0200 patch 8.2.3178: Vim9: the file name of an :import cannot be an expression Problem: Vim9: the file name of an :import cannot be an expression. Solution: Accept an expression that results in a string. Do not support :import in a function.
author Bram Moolenaar <Bram@vim.org>
date Sun, 18 Jul 2021 18:30:04 +0200
parents 1218c5353e2b
children
line wrap: on
line source

" Vim syntax file
" Language:             dict(1) configuration file
" Previous Maintainer:  Nikolai Weibull <now@bitwi.se>
" Latest Revision:      2006-04-19

if exists("b:current_syntax")
  finish
endif

let s:cpo_save = &cpo
set cpo&vim

syn keyword dictconfTodo        contained TODO FIXME XXX NOTE

syn region  dictconfComment     display oneline start='#' end='$'
                                \ contains=dictconfTodo,@Spell

syn match   dictconfBegin       display '^'
                                \ nextgroup=dictconfKeyword,dictconfComment
                                \ skipwhite

syn keyword dictconfKeyword     contained server
                                \ nextgroup=dictconfServer skipwhite

syn keyword dictconfKeyword     contained pager
                                \ nextgroup=dictconfPager

syn match   dictconfServer      contained display
                                \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
                                \ nextgroup=dictconfServerOptG skipwhite

syn region  dictconfServer      contained display oneline
                                \ start=+"+ skip=+""+ end=+"+
                                \ nextgroup=dictconfServerOptG skipwhite

syn region  dictconfServerOptG  contained transparent
                                \ matchgroup=dictconfServerOptsD start='{'
                                \ matchgroup=dictconfServerOptsD end='}'
                                \ contains=dictconfServerOpts,dictconfComment

syn keyword dictconfServerOpts  contained port
                                \ nextgroup=dictconfNumber skipwhite

syn keyword dictconfServerOpts  contained user
                                \ nextgroup=dictconfUsername skipwhite

syn match   dictconfUsername    contained display
                                \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
                                \ nextgroup=dictconfSecret skipwhite
syn region  dictconfUsername    contained display oneline
                                \ start=+"+ skip=+""+ end=+"+
                                \ nextgroup=dictconfSecret skipwhite

syn match   dictconfSecret      contained display
                                \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
syn region  dictconfSecret      contained display oneline
                                \ start=+"+ skip=+""+ end=+"+

syn match   dictconfNumber      contained '\<\d\+\>'

syn match   dictconfPager       contained display
                                \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
syn region  dictconfPager       contained display oneline
                                \ start=+"+ skip=+""+ end=+"+

hi def link dictconfTodo        Todo
hi def link dictconfComment     Comment
hi def link dictconfKeyword     Keyword
hi def link dictconfServer      String
hi def link dictconfServerOptsD Delimiter
hi def link dictconfServerOpts  Identifier
hi def link dictconfUsername    String
hi def link dictconfSecret      Special
hi def link dictconfNumber      Number
hi def link dictconfPager       String

let b:current_syntax = "dictconf"

let &cpo = s:cpo_save
unlet s:cpo_save