view runtime/syntax/crontab.vim @ 23043:6616bf17dc94 v8.2.2068

patch 8.2.2068: transparent syntax item uses start/end of containing region Commit: https://github.com/vim/vim/commit/b46f57e87b3706a8c4b97d8e03f7853a7938b061 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Nov 29 14:11:41 2020 +0100 patch 8.2.2068: transparent syntax item uses start/end of containing region Problem: Transparent syntax item uses start/end of containing region. Solution: Do not change the startpos and endpos of a transparent region to that of its containing region. (Adrian Ghizaru, closes #7349, closes #7391)
author Bram Moolenaar <Bram@vim.org>
date Sun, 29 Nov 2020 14:15:05 +0100
parents 46763b01cd9a
children ccfca4f03a2b
line wrap: on
line source

" Vim syntax file
" Language: crontab
" Maintainer: David Necas (Yeti) <yeti@physics.muni.cz>
" Original Maintainer: John Hoelzel johnh51@users.sourceforge.net
" License: This file can be redistribued and/or modified under the same terms
"   as Vim itself.
" Filenames: /tmp/crontab.* used by "crontab -e"
" Last Change: 2015-01-20
"
" crontab line format:
" Minutes   Hours   Days   Months   Days_of_Week   Commands # comments

" quit when a syntax file was already loaded
if exists("b:current_syntax")
	finish
endif

syntax match crontabNick "^\s*@\(reboot\|yearly\|annually\|monthly\|weekly\|daily\|midnight\|hourly\)\>" nextgroup=crontabCmd skipwhite

syntax match crontabVar "^\s*\k\w*\s*="me=e-1

syntax case ignore

syntax match crontabMin "^\s*[-0-9/,.*]\+" nextgroup=crontabHr skipwhite
syntax match crontabHr "\s[-0-9/,.*]\+" nextgroup=crontabDay skipwhite contained
syntax match crontabDay "\s[-0-9/,.*]\+" nextgroup=crontabMnth skipwhite contained

syntax match crontabMnth "\s[-a-z0-9/,.*]\+" nextgroup=crontabDow skipwhite contained
syntax keyword crontabMnth12 contained jan feb mar apr may jun jul aug sep oct nov dec

syntax match crontabDow "\s[-a-z0-9/,.*]\+" nextgroup=crontabCmd skipwhite contained
syntax keyword crontabDow7 contained sun mon tue wed thu fri sat

syntax region crontabCmd start="\S" end="$" skipwhite contained keepend contains=crontabPercent
syntax match crontabCmnt "^\s*#.*" contains=@Spell
syntax match crontabPercent "[^\\]%.*"lc=1 contained

" Define the default highlighting.
" Only when an item doesn't have highlighting yet

hi def link crontabMin		Number
hi def link crontabHr		PreProc
hi def link crontabDay		Type

hi def link crontabMnth		Number
hi def link crontabMnth12		Number
hi def link crontabMnthS		Number
hi def link crontabMnthN		Number

hi def link crontabDow		PreProc
hi def link crontabDow7		PreProc
hi def link crontabDowS		PreProc
hi def link crontabDowN		PreProc

hi def link crontabNick		Special
hi def link crontabVar		Identifier
hi def link crontabPercent		Special

" comment out next line for to suppress unix commands coloring.
hi def link crontabCmd		Statement

hi def link crontabCmnt		Comment


let b:current_syntax = "crontab"

" vim: ts=8