aboutsummaryrefslogtreecommitdiff
path: root/runtime/syntax/neomuttlog.vim
diff options
context:
space:
mode:
authorChristian Clason <c.clason@uni-graz.at>2024-10-13 19:43:04 +0200
committerChristian Clason <ch.clason+github@icloud.com>2024-10-14 09:31:24 +0200
commitd04d7bf65de8e77a8ea3aea59506abc328d77cd1 (patch)
treef05f3f55b2d64cde8e5233434236ce140674fb79 /runtime/syntax/neomuttlog.vim
parentb3cb0f6beacb69a4399b2e22ce3464602c6cd1bb (diff)
downloadrneovim-d04d7bf65de8e77a8ea3aea59506abc328d77cd1.tar.gz
rneovim-d04d7bf65de8e77a8ea3aea59506abc328d77cd1.tar.bz2
rneovim-d04d7bf65de8e77a8ea3aea59506abc328d77cd1.zip
vim-patch:9.1.0779: filetype: neomuttlog files are not recognized
Problem: filetype: neomuttlog files are not recognized Solution: detect '*.neomuttdebug' file as neomuttlog filetype, include neomuttlog syntax script (Richard Russon) closes: vim/vim#15858 https://github.com/vim/vim/commit/a2aa921f767da17d4b619f41b7a1210c762c91e2 Co-authored-by: Richard Russon <rich@flatcap.org> Co-authored-by: AvidSeeker <avidseeker7@protonmail.com>
Diffstat (limited to 'runtime/syntax/neomuttlog.vim')
-rw-r--r--runtime/syntax/neomuttlog.vim69
1 files changed, 69 insertions, 0 deletions
diff --git a/runtime/syntax/neomuttlog.vim b/runtime/syntax/neomuttlog.vim
new file mode 100644
index 0000000000..27f73493bd
--- /dev/null
+++ b/runtime/syntax/neomuttlog.vim
@@ -0,0 +1,69 @@
+" Vim syntax file
+" Language: NeoMutt log files
+" Maintainer: Richard Russon <rich@flatcap.org>
+" Last Change: 2024 Oct 12
+
+" quit when a syntax file was already loaded
+if exists("b:current_syntax")
+ finish
+endif
+
+syntax match neolog_date "\v^\[\d\d\d\d-\d\d-\d\d \d\d:\d\d:\d\d\] *" conceal
+syntax match neolog_version "\v<NeoMutt-\d{8}(-\d+-\x+)*(-dirty)*>"
+syntax match neolog_banner "\v^\[\d\d\d\d-\d\d-\d\d \d\d:\d\d:\d\d\] .*" contains=neolog_date,neolog_version
+syntax match neolog_function "\v%26v\i+\(\)"
+
+syntax match neolog_perror_key "\v%22v\<P\> " conceal transparent
+syntax match neolog_error_key "\v%22v\<E\> " conceal transparent
+syntax match neolog_warning_key "\v%22v\<W\> " conceal transparent
+syntax match neolog_message_key "\v%22v\<M\> " conceal transparent
+syntax match neolog_debug1_key "\v%22v\<1\> " conceal transparent
+syntax match neolog_debug2_key "\v%22v\<2\> " conceal transparent
+syntax match neolog_debug3_key "\v%22v\<3\> " conceal transparent
+syntax match neolog_debug4_key "\v%22v\<4\> " conceal transparent
+syntax match neolog_debug5_key "\v%22v\<5\> " conceal transparent
+syntax match neolog_notify_key "\v%22v\<N\> " conceal transparent
+
+syntax match neolog_perror "\v%22v\<P\> .*" contains=neolog_perror_key,neolog_function
+syntax match neolog_error "\v%22v\<E\> .*" contains=neolog_error_key,neolog_function
+syntax match neolog_warning "\v%22v\<W\> .*" contains=neolog_warning_key,neolog_function
+syntax match neolog_message "\v%22v\<M\> .*" contains=neolog_message_key,neolog_function
+syntax match neolog_debug1 "\v%22v\<1\> .*" contains=neolog_debug1_key,neolog_function
+syntax match neolog_debug2 "\v%22v\<2\> .*" contains=neolog_debug2_key,neolog_function
+syntax match neolog_debug3 "\v%22v\<3\> .*" contains=neolog_debug3_key,neolog_function
+syntax match neolog_debug4 "\v%22v\<4\> .*" contains=neolog_debug4_key,neolog_function
+syntax match neolog_debug5 "\v%22v\<5\> .*" contains=neolog_debug5_key,neolog_function
+syntax match neolog_notify "\v%22v\<N\> .*" contains=neolog_notify_key,neolog_function
+
+if !exists('g:neolog_disable_default_colors')
+ highlight neolog_date ctermfg=cyan guifg=#40ffff
+ highlight neolog_banner ctermfg=magenta guifg=#ff00ff
+ highlight neolog_version cterm=reverse gui=reverse
+ highlight neolog_function guibg=#282828
+
+ highlight neolog_perror ctermfg=red guifg=#ff8080
+ highlight neolog_error ctermfg=red guifg=#ff8080
+ highlight neolog_warning ctermfg=yellow guifg=#ffff80
+ highlight neolog_message ctermfg=green guifg=#80ff80
+ highlight neolog_debug1 ctermfg=white guifg=#ffffff
+ highlight neolog_debug2 ctermfg=white guifg=#ffffff
+ highlight neolog_debug3 ctermfg=grey guifg=#c0c0c0
+ highlight neolog_debug4 ctermfg=grey guifg=#c0c0c0
+ highlight neolog_debug5 ctermfg=grey guifg=#c0c0c0
+ highlight neolog_notify ctermfg=grey guifg=#c0c0c0
+endif
+
+highlight link neolog_perror_key neolog_perror
+highlight link neolog_error_key neolog_error
+highlight link neolog_warning_key neolog_warning
+highlight link neolog_message_key neolog_message
+highlight link neolog_debug1_key neolog_debug1
+highlight link neolog_debug2_key neolog_debug2
+highlight link neolog_debug3_key neolog_debug3
+highlight link neolog_debug4_key neolog_debug4
+highlight link neolog_debug5_key neolog_debug5
+highlight link neolog_notify_key neolog_notify
+
+let b:current_syntax = "neomuttlog"
+
+" vim: ts=2 et tw=100 sw=2 sts=0 ft=vim