From 10777c32f603c187316d2c1cacc665c7f34dd0b7 Mon Sep 17 00:00:00 2001 From: Mirek Kratochvil Date: Tue, 14 Oct 2025 14:07:40 +0200 Subject: actually make the vim syntax work nicely + document it --- vim/werge.vim | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 vim/werge.vim (limited to 'vim/werge.vim') diff --git a/vim/werge.vim b/vim/werge.vim new file mode 100644 index 0000000..0997437 --- /dev/null +++ b/vim/werge.vim @@ -0,0 +1,29 @@ +" Vim syntax file +" Language: werge +" Maintainer: Mirek Kratochvil +" Last Change: Oct 14, 2025 +" Version: 1 +" URL: https://github.com/exaexa/werge + +" quit if a syntax file was already loaded +if exists("b:current_syntax") + finish +endif + +" syntax for the werge files +syntax region wergeHunk start=/<<<<>>>>/ contains=wergeRm,wergeDiffAdd,wergeConflictOrigAdd +syntax region wergeRm start=/<<<<=]\|>\{1,4\}>\@!\|=\{1,4\}=\@!\)*>>>>>/ms=s+5,me=e-5 contained +syntax match wergeConflictOrigAdd /|||||\([^=>]\|=\{1,4\}=\@!\|>\{1,4\}>\@!\)*=====\([^=>]\|=\{1,4\}=\@!\|>\{1,4\}>\@!\)*>>>>>/me=e-5 contained contains=wergeConflictOrig,wergeconflictAdd +syntax region wergeConflictOrig start=/|||||/hs=e+1 end=/=====/he=s-1,me=s-1 contained +syntax region wergeConflictAdd start=/=====/hs=e+1 end=/>>>>>/he=s-1,me=s-1 contained + +" color specification +highlight default link wergeHunk Comment +highlight default link wergeRm Removed +highlight default link wergeDiffAdd Added +highlight default link wergeConflictOrigAdd Comment +highlight default link wergeConflictOrig Changed +highlight default link wergeConflictAdd Added + +let b:current_syntax = "werge" -- cgit v1.2.3