summaryrefslogtreecommitdiff
path: root/config/kak/ocaml-snippets.kak
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--config/kak/ocaml-snippets.kak35
1 files changed, 35 insertions, 0 deletions
diff --git a/config/kak/ocaml-snippets.kak b/config/kak/ocaml-snippets.kak
new file mode 100644
index 0000000..0d48bee
--- /dev/null
+++ b/config/kak/ocaml-snippets.kak
@@ -0,0 +1,35 @@
+set buffer snippets %opt{snippets} # keep global snippets (if any)
+set -add buffer snippets 'Import Html libs' 'html-imp' %{ snippets-insert %{let open Dream_html in
+let open HTML in
+ }
+ }
+set -add buffer snippets 'Create form' 'letform-' \
+ %{ phantom-selection-clear ; snippets-insert %{let form ~csrf req =
+ match%lwt Dream.form ~csrf req with
+ | `Ok [ ("${}", ${}); ] ->
+ Lwt_result.return (${})
+ | e -> Lwt_result.fail (`Form e)
+ ${}
+}; phantom-selection-add-selection ; phantom-selection-iterate-next }
+
+set -add buffer snippets 'Create user form (base)' 'form-b' \
+ %{ snippets-insert %{null
+ [ h2 [] [txt "${}"]
+ ; form
+ [ id "${}"; action "/${}"; method_ `POST ]
+ [ csrf_tag req
+ ; br []
+ ]
+ ]
+}; }
+
+set -add buffer snippets 'Create user form (text field)' 'form-tf' \
+ %{ snippets-insert %{; label [ for_ "${}" ] [ txt "${}" ]
+ ; input [ id "${}"; name "${}"; type_ "text" ]
+ ; br []
+}; }
+
+set -add buffer snippets 'Create user form (submit)' 'form-s' \
+ %{ snippets-insert %{; button [type_ "submit"] [ txt "${}" ]
+}; }
+