view runtime/syntax/bc.vim @ 8287:56dbae4b73c6 v7.4.1436

commit https://github.com/vim/vim/commit/e98991b8cfaf29016d14b8ec437d3dedfc0a5eb7 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Feb 27 19:26:01 2016 +0100 patch 7.4.1436 Problem: Sniff files still referenced in distribution. Solution: Remove sniff files from distribution.
author Christian Brabandt <cb@256bit.org>
date Sat, 27 Feb 2016 19:30:05 +0100
parents 9cb3a75a20b9
children 43efa4f5a8ea
line wrap: on
line source

" Vim syntax file
" Language:	bc - An arbitrary precision calculator language
" Maintainer:	Vladimir Scholtz <vlado@gjh.sk>
" Last change:	2012 Jun 01
" 		(Dominique Pelle added @Spell)
" Available on:	www.gjh.sk/~vlado/bc.vim

" 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

syn case ignore

" Keywords
syn keyword bcKeyword if else while for break continue return limits halt quit
syn keyword bcKeyword define
syn keyword bcKeyword length read sqrt print

" Variable
syn keyword bcType auto

" Constant
syn keyword bcConstant scale ibase obase last
syn keyword bcConstant BC_BASE_MAX BC_DIM_MAX BC_SCALE_MAX BC_STRING_MAX
syn keyword bcConstant BC_ENV_ARGS BC_LINE_LENGTH

" Any other stuff
syn match bcIdentifier		"[a-z_][a-z0-9_]*"

" String
 syn match bcString		"\"[^"]*\"" contains=@Spell

" Number
syn match bcNumber		"[0-9]\+"

" Comment
syn match bcComment		"\#.*" contains=@Spell
syn region bcComment		start="/\*" end="\*/" contains=@Spell

" Parent ()
syn cluster bcAll contains=bcList,bcIdentifier,bcNumber,bcKeyword,bcType,bcConstant,bcString,bcParentError
syn region bcList		matchgroup=Delimiter start="(" skip="|.\{-}|" matchgroup=Delimiter end=")" contains=@bcAll
syn region bcList		matchgroup=Delimiter start="\[" skip="|.\{-}|" matchgroup=Delimiter end="\]" contains=@bcAll
syn match bcParenError			"]"
syn match bcParenError			")"



syn case match

" 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_bc_syntax_inits")
  if version < 508
    let did_bc_syntax_inits = 1
    command -nargs=+ HiLink hi link <args>
  else
    command -nargs=+ HiLink hi def link <args>
  endif

  HiLink bcKeyword		Statement
  HiLink bcType		Type
  HiLink bcConstant		Constant
  HiLink bcNumber		Number
  HiLink bcComment		Comment
  HiLink bcString		String
  HiLink bcSpecialChar		SpecialChar
  HiLink bcParenError		Error

  delcommand HiLink
endif

let b:current_syntax = "bc"
" vim: ts=8