mirror of
https://github.com/neovim/neovim.git
synced 2024-12-19 10:45:16 -07:00
vim-patch:9.0.2148: Vim does not detect pacman.log file
Problem: Vim does not detect pacman.log file
Solution: Detect pacmanlogs and add syntax highlighting
pacman.log is a filetype common to Arch Liux and related distributions.
Add some simple syntax highlighting for the pacmanlog filetype.
closes: vim/vim#13618
1e5d66408e
Co-authored-by: Ronan Pigott <ronan@rjp.ie>
This commit is contained in:
parent
3159a2c28f
commit
c9828200ac
@ -1394,6 +1394,7 @@ local filename = {
|
||||
octaverc = 'octave',
|
||||
['octave.conf'] = 'octave',
|
||||
opam = 'opam',
|
||||
['pacman.log'] = 'pacmanlog',
|
||||
['/etc/pam.conf'] = 'pamconf',
|
||||
['pam_env.conf'] = 'pamenv',
|
||||
['.pam_environment'] = 'pamenv',
|
||||
|
41
runtime/syntax/pacmanlog.vim
Normal file
41
runtime/syntax/pacmanlog.vim
Normal file
@ -0,0 +1,41 @@
|
||||
" Vim syntax file
|
||||
" Language: pacman.log
|
||||
" Maintainer: Ronan Pigott <ronan@rjp.ie>
|
||||
" Last Change: 2023 Dec 04
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
syn sync maxlines=1
|
||||
syn region pacmanlogMsg start='\S' end='$' keepend contains=pacmanlogTransaction,pacmanlogALPMMsg
|
||||
syn region pacmanlogTag start='\['hs=s+1 end='\]'he=e-1 keepend nextgroup=pacmanlogMsg
|
||||
syn region pacmanlogTime start='^\['hs=s+1 end='\]'he=e-1 keepend nextgroup=pacmanlogTag
|
||||
|
||||
syn match pacmanlogPackageName '\v[a-z0-9@_+.-]+' contained skipwhite nextgroup=pacmanlogPackageVersion
|
||||
syn match pacmanlogPackageVersion '(.*)' contained
|
||||
|
||||
syn match pacmanlogTransaction 'transaction \v(started|completed)$' contained
|
||||
syn match pacmanlogInstalled '\v(re)?installed' contained nextgroup=pacmanlogPackageName
|
||||
syn match pacmanlogUpgraded 'upgraded' contained nextgroup=pacmanlogPackageName
|
||||
syn match pacmanlogDowngraded 'downgraded' contained nextgroup=pacmanlogPackageName
|
||||
syn match pacmanlogRemoved 'removed' contained nextgroup=pacmanlogPackageName
|
||||
syn match pacmanlogWarning 'warning:.*$' contained
|
||||
|
||||
syn region pacmanlogALPMMsg start='\v(\[ALPM\] )@<=(transaction|(re)?installed|upgraded|downgraded|removed|warning)>' end='$' contained
|
||||
\ contains=pacmanlogTransaction,pacmanlogInstalled,pacmanlogUpgraded,pacmanlogDowngraded,pacmanlogRemoved,pacmanlogWarning,pacmanlogPackageName,pacmanlogPackgeVersion
|
||||
|
||||
hi def link pacmanlogTime String
|
||||
hi def link pacmanlogTag Type
|
||||
|
||||
hi def link pacmanlogTransaction Special
|
||||
hi def link pacmanlogInstalled Identifier
|
||||
hi def link pacmanlogRemoved Repeat
|
||||
hi def link pacmanlogUpgraded pacmanlogInstalled
|
||||
hi def link pacmanlogDowngraded pacmanlogRemoved
|
||||
hi def link pacmanlogWarning WarningMsg
|
||||
|
||||
hi def link pacmanlogPackageName Normal
|
||||
hi def link pacmanlogPackageVersion Comment
|
||||
|
||||
let b:current_syntax = "pacmanlog"
|
@ -471,6 +471,7 @@ func s:GetFilenameChecks() abort
|
||||
\ 'opl': ['file.OPL', 'file.OPl', 'file.OpL', 'file.Opl', 'file.oPL', 'file.oPl', 'file.opL', 'file.opl'],
|
||||
\ 'ora': ['file.ora'],
|
||||
\ 'org': ['file.org', 'file.org_archive'],
|
||||
\ 'pacmanlog': ['pacman.log'],
|
||||
\ 'pamconf': ['/etc/pam.conf', '/etc/pam.d/file', 'any/etc/pam.conf', 'any/etc/pam.d/file'],
|
||||
\ 'pamenv': ['/etc/security/pam_env.conf', '/home/user/.pam_environment', '.pam_environment', 'pam_env.conf'],
|
||||
\ 'papp': ['file.papp', 'file.pxml', 'file.pxsl'],
|
||||
|
Loading…
Reference in New Issue
Block a user