Mercurial > vim
view runtime/syntax/cupl.vim @ 34359:0447bf3a88a5 v9.1.0110
patch 9.1.0110: filetype: add 'Config.in' filetype detection
Commit: https://github.com/vim/vim/commit/5f20f050efed3431beaf85739f0113e9ef0abd8e
Author: Brandon Maier <brandon.maier@collins.com>
Date: Wed Feb 14 22:30:06 2024 +0100
patch 9.1.0110: filetype: add 'Config.in' filetype detection
The 'Config.in' file type is for Buildroot configuration files.
Buildroot Config.in files use the same Kconfig backend as the Linux
kernel's Kconfig files.
Buildroot also has other filename variants that follow "Config.in.*",
they are used to distinguish multiple Config.in files in the same
directory.
See https://buildroot.org/downloads/manual/manual.html#_literal_config_in_literal_file
closes: #14038
Signed-off-by: Brandon Maier <brandon.maier@collins.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Wed, 14 Feb 2024 22:45:02 +0100 |
parents | 11b656e74444 |
children |
line wrap: on
line source
" Vim syntax file " Language: CUPL " Maintainer: John Cook <johncook3@gmail.com> " Last Change: 2011 Dec 27 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:cpo_save = &cpo set cpo&vim " this language is oblivious to case. syn case ignore " A bunch of keywords syn keyword cuplHeader name partno date revision rev designer company nextgroup=cuplHeaderContents syn keyword cuplHeader assembly assy location device nextgroup=cuplHeaderContents syn keyword cuplTodo contained TODO XXX FIXME " cuplHeaderContents uses default highlighting except for numbers syn match cuplHeaderContents ".\+;"me=e-1 contains=cuplNumber contained " String constants syn region cuplString start=+'+ end=+'+ syn region cuplString start=+"+ end=+"+ syn keyword cuplStatement append condition syn keyword cuplStatement default else syn keyword cuplStatement field fld format function fuse syn keyword cuplStatement group if jump loc syn keyword cuplStatement macro min node out syn keyword cuplStatement pin pinnode present table syn keyword cuplStatement sequence sequenced sequencejk sequencers sequencet syn keyword cuplFunction log2 log8 log16 log " Valid integer number formats (decimal, binary, octal, hex) syn match cuplNumber "\<[-+]\=[0-9]\+\>" syn match cuplNumber "'d'[0-9]\+\>" syn match cuplNumber "'b'[01x]\+\>" syn match cuplNumber "'o'[0-7x]\+\>" syn match cuplNumber "'h'[0-9a-fx]\+\>" " operators syn match cuplLogicalOperator "[!#&$]" syn match cuplArithmeticOperator "[-+*/%]" syn match cuplArithmeticOperator "\*\*" syn match cuplAssignmentOperator ":\==" syn match cuplEqualityOperator ":" syn match cuplTruthTableOperator "=>" " Signal extensions syn match cuplExtension "\.[as][pr]\>" syn match cuplExtension "\.oe\>" syn match cuplExtension "\.oemux\>" syn match cuplExtension "\.[dlsrjk]\>" syn match cuplExtension "\.ck\>" syn match cuplExtension "\.dq\>" syn match cuplExtension "\.ckmux\>" syn match cuplExtension "\.tec\>" syn match cuplExtension "\.cnt\>" syn match cuplRangeOperator "\.\." contained " match ranges like memadr:[0000..1FFF] " and highlight both the numbers and the .. operator syn match cuplNumberRange "\<\x\+\.\.\x\+\>" contains=cuplRangeOperator " match vectors of type [name3..0] (decimal numbers only) " but assign them no special highlighting except for the .. operator syn match cuplBitVector "\<\a\+\d\+\.\.\d\+\>" contains=cuplRangeOperator " other special characters syn match cuplSpecialChar "[\[\](){},;]" " directives " (define these after cuplOperator so $xxx overrides $) syn match cuplDirective "\$msg" syn match cuplDirective "\$macro" syn match cuplDirective "\$mend" syn match cuplDirective "\$repeat" syn match cuplDirective "\$repend" syn match cuplDirective "\$define" syn match cuplDirective "\$include" " multi-line comments syn region cuplComment start=+/\*+ end=+\*/+ contains=cuplNumber,cuplTodo syn sync minlines=1 " Define the default highlighting. " Only when an item doesn't have highlighting yet " The default highlighting. hi def link cuplHeader cuplStatement hi def link cuplLogicalOperator cuplOperator hi def link cuplRangeOperator cuplOperator hi def link cuplArithmeticOperator cuplOperator hi def link cuplAssignmentOperator cuplOperator hi def link cuplEqualityOperator cuplOperator hi def link cuplTruthTableOperator cuplOperator hi def link cuplOperator cuplStatement hi def link cuplFunction cuplStatement hi def link cuplStatement Statement hi def link cuplNumberRange cuplNumber hi def link cuplNumber cuplString hi def link cuplString String hi def link cuplComment Comment hi def link cuplExtension cuplSpecial hi def link cuplSpecialChar cuplSpecial hi def link cuplSpecial Special hi def link cuplDirective PreProc hi def link cuplTodo Todo let b:current_syntax = "cupl" let &cpo = s:cpo_save unlet s:cpo_save " vim:ts=8