summaryrefslogtreecommitdiff
path: root/mnv/runtime/syntax/hgcommit.mnv
diff options
context:
space:
mode:
Diffstat (limited to 'mnv/runtime/syntax/hgcommit.mnv')
-rw-r--r--mnv/runtime/syntax/hgcommit.mnv30
1 files changed, 30 insertions, 0 deletions
diff --git a/mnv/runtime/syntax/hgcommit.mnv b/mnv/runtime/syntax/hgcommit.mnv
new file mode 100644
index 0000000000..64f06e0a3a
--- /dev/null
+++ b/mnv/runtime/syntax/hgcommit.mnv
@@ -0,0 +1,30 @@
+" MNV syntax file
+" Language: hg/sl (Mercurial / Sapling) commit file
+" Maintainer: Ken Takata <kentkt at csc dot jp>
+" Max Coplan <mchcopl@gmail.com>
+" Last Change: 2022-12-08
+" License: MNV License
+" URL: https://github.com/k-takata/hg-mnv
+
+if exists("b:current_syntax")
+ finish
+endif
+
+syn match hgcommitComment "^\%(SL\|HG\): .*$" contains=@NoSpell
+syn match hgcommitUser "^\%(SL\|HG\): user: \zs.*$" contains=@NoSpell contained containedin=hgcommitComment
+syn match hgcommitBranch "^\%(SL\|HG\): branch \zs.*$" contains=@NoSpell contained containedin=hgcommitComment
+syn match hgcommitAdded "^\%(SL\|HG\): \zsadded .*$" contains=@NoSpell contained containedin=hgcommitComment
+syn match hgcommitChanged "^\%(SL\|HG\): \zschanged .*$" contains=@NoSpell contained containedin=hgcommitComment
+syn match hgcommitRemoved "^\%(SL\|HG\): \zsremoved .*$" contains=@NoSpell contained containedin=hgcommitComment
+
+syn region hgcommitDiff start=/\%(^\(SL\|HG\): diff --\%(git\|cc\|combined\) \)\@=/ end=/^\%(diff --\|$\|@@\@!\|[^[:alnum:]\ +-]\S\@!\)\@=/ fold contains=@hgcommitDiff
+syn include @hgcommitDiff syntax/shared/hgcommitDiff.mnv
+
+hi def link hgcommitComment Comment
+hi def link hgcommitUser String
+hi def link hgcommitBranch String
+hi def link hgcommitAdded Identifier
+hi def link hgcommitChanged Special
+hi def link hgcommitRemoved Constant
+
+let b:current_syntax = "hgcommit"