aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ligature_plugins/ocaml.vim31
1 files changed, 31 insertions, 0 deletions
diff --git a/ligature_plugins/ocaml.vim b/ligature_plugins/ocaml.vim
new file mode 100644
index 0000000..14c78e5
--- /dev/null
+++ b/ligature_plugins/ocaml.vim
@@ -0,0 +1,31 @@
1" fork of https://gist.github.com/NicolasT/1043747
2
3" set correct conceal
4setlocal conceallevel=1
5
6" we need the conceal feature (vim ≥ 7.3)
7if exists('g:no_ocaml_conceal') || !has('conceal')
8 finish
9endif
10
11" fun
12syntax keyword ocamlNiceKeyword fun conceal cchar=λ
13
14" ->
15syntax match ocamlArrow /->/ contains=ocamlArrowM,ocamlArrowH
16syntax match ocamlArrowM /-/ contained containedin=ocamlArrow conceal cchar=
17syntax match ocamlArrowH /-\@<=>/ contained containedin=ocamlArrow conceal cchar=→
18
19" <-
20syntax match ocamlArrow /<\ze-/ contains=ocamlArrowM,ocamlArrowH
21syntax match ocamlArrowH /</ contained containedin=ocamlArrow conceal cchar=←
22
23" <>
24syntax match ocamlNiceOperator "<>" conceal cchar=≠
25
26" greek letters
27syntax match ocamlNiceTypes "'a" conceal cchar=α
28syntax match ocamlNiceTypes "'b" conceal cchar=β
29syntax match ocamlNiceTypes "'c" conceal cchar=γ
30syntax match ocamlNiceTypes "'d" conceal cchar=δ
31syntax match ocamlNiceTypes "'e" conceal cchar=ε