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: #15858

Co-authored-by: AvidSeeker <avidseeker7@protonmail.com>
Signed-off-by: Richard Russon <rich@flatcap.org>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/runtime/syntax/neomuttlog.vim b/runtime/syntax/neomuttlog.vim
new file mode 100644
index 0000000..27f7349
--- /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