mirror of
https://github.com/vim/vim
synced 2025-03-16 14:57:52 +01:00
76 lines
2.4 KiB
VimL
76 lines
2.4 KiB
VimL
" Vim syntax file
|
|
" Language: RCS file
|
|
" Maintainer: Dmitry Vasiliev <dima@hlabs.spb.ru>
|
|
" URL: http://www.hlabs.spb.ru/vim/rcs.vim
|
|
" Last Change: $Date$
|
|
" Filenames: *,v
|
|
" $Revision$
|
|
"
|
|
" Options:
|
|
" rcs_folding = 1 For folding strings
|
|
|
|
" 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
|
|
|
|
" RCS file must end with a newline.
|
|
syn match rcsEOFError ".\%$" containedin=ALL
|
|
|
|
" Keywords.
|
|
syn keyword rcsKeyword head branch access symbols locks strict
|
|
syn keyword rcsKeyword comment expand date author state branches
|
|
syn keyword rcsKeyword next desc log
|
|
syn keyword rcsKeyword text nextgroup=rcsTextStr skipwhite skipempty
|
|
|
|
" Revision numbers and dates.
|
|
syn match rcsNumber "\<[0-9.]\+\>" display
|
|
|
|
" Strings.
|
|
if exists("rcs_folding") && has("folding")
|
|
" Folded strings.
|
|
syn region rcsString matchgroup=rcsString start="@" end="@" skip="@@" fold contains=rcsSpecial
|
|
syn region rcsTextStr matchgroup=rcsTextStr start="@" end="@" skip="@@" fold contained contains=rcsSpecial,rcsDiffLines
|
|
else
|
|
syn region rcsString matchgroup=rcsString start="@" end="@" skip="@@" contains=rcsSpecial
|
|
syn region rcsTextStr matchgroup=rcsTextStr start="@" end="@" skip="@@" contained contains=rcsSpecial,rcsDiffLines
|
|
endif
|
|
syn match rcsSpecial "@@" contained
|
|
syn match rcsDiffLines "[da]\d\+ \d\+$" contained
|
|
|
|
" Synchronization.
|
|
syn sync clear
|
|
if exists("rcs_folding") && has("folding")
|
|
syn sync fromstart
|
|
else
|
|
" We have incorrect folding if following sync patterns is turned on.
|
|
syn sync match rcsSync grouphere rcsString "[0-9.]\+\(\s\|\n\)\+log\(\s\|\n\)\+@"me=e-1
|
|
syn sync match rcsSync grouphere rcsTextStr "@\(\s\|\n\)\+text\(\s\|\n\)\+@"me=e-1
|
|
endif
|
|
|
|
" 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_rcs_syn_inits")
|
|
if version <= 508
|
|
let did_rcs_syn_inits = 1
|
|
command -nargs=+ HiLink hi link <args>
|
|
else
|
|
command -nargs=+ HiLink hi def link <args>
|
|
endif
|
|
|
|
HiLink rcsKeyword Keyword
|
|
HiLink rcsNumber Identifier
|
|
HiLink rcsString String
|
|
HiLink rcsTextStr String
|
|
HiLink rcsSpecial Special
|
|
HiLink rcsDiffLines Special
|
|
HiLink rcsEOFError Error
|
|
|
|
delcommand HiLink
|
|
endif
|
|
|
|
let b:current_syntax = "rcs"
|