diff --git a/README.md b/README.md index bc4362a..fafe112 100644 --- a/README.md +++ b/README.md @@ -43,3 +43,19 @@ Interpreter języka Musique. Możliwy do wykorzystywania jako: └── src Główny katalog z kodem źródłowym └── tests Katalog z testami jednostkowymi ``` + +## Kolorowanie składni + +### Vim / Neovim + +Skopiuj plik [etc/editor/musique.vim](etc/editor/musique.vim) do folderu `syntax` wewnątrz twojej konfiguracji Vima (Neovima). Np: + +```console +$ cp etc/editor/musique.vim ~/.config/nvim/syntax/ +``` + +Następnie musisz dodać ustawienie typu pliku na podstawie rozszerzenia wewnątrz twojej konfiguracji: + +```vim +au BufRead,BufNewFile *.mq set filetype=musique +``` diff --git a/etc/editor/musique.vim b/etc/editor/musique.vim new file mode 100644 index 0000000..2ec0c63 --- /dev/null +++ b/etc/editor/musique.vim @@ -0,0 +1,30 @@ +" Vim syntax file +" Language: Musique +" Maintainer: Robert Bendun +" Latest Change: 2022-05-22 +" Filenames: *.mq + +if exists("b:current_syntax") + finish +endif + +syn keyword musiqueVariableDeclaration var +syn keyword musiqueOperators * + - / < <= == >= > != + +syn match musiqueInteger display "[0-9][0-9_]*" + +syn keyword musiqueConstant true false nil + +syn match musiqueComment "--.*$" +syn match musiqueComment "#!.*$" + +syn region musiqueBlock matchgroup=musiqueParen start="\[" skip="|.\{-}|" matchgroup=musiqueParen end="\]" fold transparent + +let b:current_syntax = "musique" + +hi def link musiqueVariableDeclaration Define +hi def link musiqueParen Delimiter +hi def link musiqueOperators Operator +hi def link musiqueComment Comment +hi def link musiqueInteger Number +hi def link musiqueConstant Constant