view runtime/syntax/dictdconf.vim @ 34067:dbe616160092 v9.1.0003

patch 9.1.0003: Cannot build against Ruby 33 dynamically Commit: https://github.com/vim/vim/commit/443657b32becb2318ae40e30a849bbe5cc1a153c Author: Isao Sato <svardew@gmail.com> Date: Wed Jan 3 19:31:05 2024 +0100 patch 9.1.0003: Cannot build against Ruby 33 dynamically Problem: Cannot build against Ruby 33 dynamically Solution: Ruby 33 removed transient heap, so do not use rb_ary_transient anymore, NoMethodError format changed, so update test for expected error message (Isao Sato) - ruby-3.3 removed transient heap for ruby/dyn when +ruby/dyn with ruby-3.3 do command :ruby, E448 occur. ruby-3.3 has no transient heap anymore, so disable rb_ary_transient etc. $ LC_ALL=C VIMRUNTIME=runtime ./src/vim -u NONE -c 'ruby puts RUBY_VERSION' "=> Error detected while processing command line: "=> E448: Could not load library function rb_ary_detransient "=> E266: Sorry, this command is disabled, the Ruby library could not be loaded. - ruby-3.3 changed NoMethodError format: $ rvm 3.2.2, 3.3.0-rc1 do ruby -e 'begin; nil.name; rescue => e; puts "%s : %s"%[RUBY_VERSION, e.message]; end ' => 3.2.2 : undefined method `name' for nil:NilClass => 3.3.0 : undefined method `name' for nil so loose pattern in Test_ruby_Vim_buffer_get() closes: #13741 Signed-off-by: Isao Sato <svardew@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Wed, 03 Jan 2024 20:00:04 +0100
parents 1218c5353e2b
children
line wrap: on
line source

" Vim syntax file
" Language:             dictd(8) 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 dictdconfTodo        contained TODO FIXME XXX NOTE

syn region  dictdconfComment    display oneline start='#' end='$'
                                \ contains=dictdconfTodo,dictdconfSpecialC,
                                \ @Spell

syn keyword dictdconfSpecialC   LASTLINE

syn match   dictdconfBegin      display '^'
                                \ nextgroup=dictdconfKeyword,dictdconfComment
                                \ skipwhite

syn keyword dictdconfKeyword    contained access
                                \ nextgroup=dictdconfAccessG skipwhite

syn region  dictdconfAccessG    contained transparent
                                \ matchgroup=dictdconfDelimiter start='{'
                                \ matchgroup=dictdconfDelimiter end='}'
                                \ contains=dictdconfAccess,dictdconfComment

syn keyword dictdconfAccess     contained allow deny authonly user
                                \ nextgroup=dictdconfString skipwhite

syn keyword dictdconfKeyword    contained database
                                \ nextgroup=dictdconfDatabase skipwhite

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

syn region  dictdconfSpecG      contained transparent
                                \ matchgroup=dictdconfDelimiter start='{'
                                \ matchgroup=dictdconfDelimiter end='}'
                                \ contains=dictdconfSpec,dictdconfAccess,
                                \ dictdconfComment

syn keyword dictdconfSpec       contained data index index_suffix index_word
                                \ filter prefilter postfilter name info
                                \ disable_strat
                                \ nextgroup=dictdconfString skipwhite

syn keyword dictdconfSpec       contained invisible

syn keyword dictdconfKeyword    contained database_virtual
                                \ nextgroup=dictdconfVDatabase skipwhite

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

syn region  dictdconfVSpecG     contained transparent
                                \ matchgroup=dictdconfDelimiter start='{'
                                \ matchgroup=dictdconfDelimiter end='}'
                                \ contains=dictdconfVSpec,dictdconfAccess,
                                \ dictdconfComment

syn keyword dictdconfVSpec      contained name info database_list disable_strat
                                \ nextgroup=dictdconfString skipwhite

syn keyword dictdconfVSpec      contained invisible

syn keyword dictdconfKeyword    contained database_plugin
                                \ nextgroup=dictdconfPDatabase skipwhite

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

syn region  dictdconfPSpecG     contained transparent
                                \ matchgroup=dictdconfDelimiter start='{'
                                \ matchgroup=dictdconfDelimiter end='}'
                                \ contains=dictdconfPSpec,dictdconfAccess,
                                \ dictdconfComment

syn keyword dictdconfPSpec      contained name info plugin data disable_strat
                                \ nextgroup=dictdconfString skipwhite

syn keyword dictdconfPSpec      contained invisible

syn keyword dictdconfKeyword    contained database_exit

syn keyword dictdconfKeyword    contained site
                                \ nextgroup=dictdconfString skipwhite

syn keyword dictdconfKeyword    contained user
                                \ nextgroup=dictdconfUsername skipwhite

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

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

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

hi def link dictdconfTodo       Todo
hi def link dictdconfComment    Comment
hi def link dictdconfSpecialC   Special
hi def link dictdconfKeyword    Keyword
hi def link dictdconfIdentifier Identifier
hi def link dictdconfAccess     dictdconfIdentifier
hi def link dictdconfDatabase   dictdconfString
hi def link dictdconfSpec       dictdconfIdentifier
hi def link dictdconfVDatabase  dictdconfDatabase
hi def link dictdconfVSpec      dictdconfSpec
hi def link dictdconfPDatabase  dictdconfDatabase
hi def link dictdconfPSpec      dictdconfSpec
hi def link dictdconfUsername   dictdconfString
hi def link dictdconfSecret     Special
hi def link dictdconfString     String
hi def link dictdconfDelimiter  Delimiter

let b:current_syntax = "dictdconf"

let &cpo = s:cpo_save
unlet s:cpo_save