diff options
author | Christian Clason <c.clason@uni-graz.at> | 2024-08-02 20:13:17 +0200 |
---|---|---|
committer | Christian Clason <c.clason@uni-graz.at> | 2024-08-03 00:16:22 +0200 |
commit | e7f8349a2eec01dda531d93fecb8df920b042d9f (patch) | |
tree | 2ed402b7cfb695c7045932e7d76f929e687b6809 /runtime/syntax | |
parent | a90b1b7c6fcc0ee558312b34b190ef26667e771f (diff) | |
download | rneovim-e7f8349a2eec01dda531d93fecb8df920b042d9f.tar.gz rneovim-e7f8349a2eec01dda531d93fecb8df920b042d9f.tar.bz2 rneovim-e7f8349a2eec01dda531d93fecb8df920b042d9f.zip |
vim-patch:9.1.0655: filetype: goaccess config file not recognized
Problem: filetype: goaccess config file not recognized
Solution: detect 'goaccess.conf' as goaccess filetype, also
include a basic syntax and ftplugin (Adam Monsen)
Add syntax highlighting for GoAccess configuration file.
GoAccess is a real-time web log analyzer and interactive viewer that
runs in a terminal in *nix systems or through your browser.
GoAccess home page: https://goaccess.io
closes: vim/vim#15414
https://github.com/vim/vim/commit/0aa65b48fbe64e18a767b207802483026baecb5d
Co-authored-by: Adam Monsen <haircut@gmail.com>
Diffstat (limited to 'runtime/syntax')
-rw-r--r-- | runtime/syntax/goaccess.vim | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/runtime/syntax/goaccess.vim b/runtime/syntax/goaccess.vim new file mode 100644 index 0000000000..4ca8f6d921 --- /dev/null +++ b/runtime/syntax/goaccess.vim @@ -0,0 +1,34 @@ +" Vim syntax file +" Language: GoAccess configuration +" Maintainer: Adam Monsen <haircut@gmail.com> +" Last Change: 2024 Aug 1 +" Remark: see https://goaccess.io/man#configuration +" +" The GoAccess configuration file syntax is line-separated settings. Settings +" are space-separated key value pairs. Comments are any line starting with a +" hash mark. +" Example: https://github.com/allinurl/goaccess/blob/master/config/goaccess.conf +" +" This syntax definition supports todo/fixme highlighting in comments, and +" special (Keyword) highlighting if a setting's value is 'true' or 'false'. +" +" TODO: a value is required, so use extreme highlighting (e.g. bright red +" background) if a setting is missing a value. + +if exists("b:current_syntax") + finish +endif + +syn match goaccessSettingName '^[a-z-]\+' nextgroup=goaccessSettingValue +syn match goaccessSettingValue '\s\+.\+$' contains=goaccessKeyword +syn match goaccessComment "^#.*$" contains=goaccessTodo,@Spell +syn keyword goaccessTodo TODO FIXME contained +syn keyword goaccessKeyword true false contained + +hi def link goaccessSettingName Type +hi def link goaccessSettingValue String +hi def link goaccessComment Comment +hi def link goaccessTodo Todo +hi def link goaccessKeyword Keyword + +let b:current_syntax = "goaccess" |