package vcaml
OCaml bindings for the Neovim API
Install
Dune Dependency
Authors
Maintainers
Sources
vcaml-v0.16.0.tar.gz
sha256=dd123302c46af7ca6eda8a7806c78236fd217a8c73a2e1cd7da85f1d69ed1ae4
doc/src/vcaml.bindings_test/test_keymap.ml.html
Source file test_keymap.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181
open Core open Async open Vcaml open Vcaml_test_helpers let clear_mappings = [ "mapclear"; "mapclear!"; "vmapclear"; "lmapclear"; "tmapclear" ] |> List.map ~f:Nvim.command |> Api_call.Or_error.all_unit ;; let%expect_test "Test keymaps" = let test ~client mode = let open Deferred.Or_error.Let_syntax in let query = let open Api_call.Or_error.Let_syntax in let%map () = clear_mappings and () = Keymap.set ~lhs:"a" ~rhs:"a" ~mode ~scope:`Global ~description:"Test description" () and () = Keymap.set ~lhs:"b" ~rhs:"a" ~mode ~scope:`Global ~recursive:true ~silent:true () and () = Keymap.set ~lhs:"c" ~rhs:"c" ~mode ~scope:(`Buffer_local Current) ~nowait:true () and global_keymaps = Keymap.get ~scope:`Global ~mode and local_keymaps = Keymap.get ~scope:(`Buffer_local Current) ~mode in global_keymaps @ local_keymaps in let%map keymaps = run_join [%here] client query in print_s [%message "Test" (mode : Keymap.Mode.t) (keymaps : Keymap.t list)] in let%bind () = with_client (fun client -> Deferred.Or_error.List.iter ~how:`Sequential Keymap.Mode.all ~f:(test ~client)) in [%expect {| (Test (mode Normal) (keymaps (((description "Test description") (lhs a) (rhs a) (mode Normal) (scope Global) (expr false) (nowait false) (silent false) (recursive false) (sid -9)) ((lhs b) (rhs a) (mode Normal) (scope Global) (expr false) (nowait false) (silent true) (recursive true) (sid -9)) ((lhs c) (rhs c) (mode Normal) (scope (Buffer_local 1)) (expr false) (nowait true) (silent false) (recursive false) (sid -9))))) (Test (mode Operator_pending) (keymaps (((description "Test description") (lhs a) (rhs a) (mode Operator_pending) (scope Global) (expr false) (nowait false) (silent false) (recursive false) (sid -9)) ((lhs b) (rhs a) (mode Operator_pending) (scope Global) (expr false) (nowait false) (silent true) (recursive true) (sid -9)) ((lhs c) (rhs c) (mode Operator_pending) (scope (Buffer_local 1)) (expr false) (nowait true) (silent false) (recursive false) (sid -9))))) (Test (mode Insert) (keymaps (((description "Test description") (lhs a) (rhs a) (mode Insert) (scope Global) (expr false) (nowait false) (silent false) (recursive false) (sid -9)) ((lhs b) (rhs a) (mode Insert) (scope Global) (expr false) (nowait false) (silent true) (recursive true) (sid -9)) ((lhs c) (rhs c) (mode Insert) (scope (Buffer_local 1)) (expr false) (nowait true) (silent false) (recursive false) (sid -9))))) (Test (mode Cmd_line) (keymaps (((description "Test description") (lhs a) (rhs a) (mode Cmd_line) (scope Global) (expr false) (nowait false) (silent false) (recursive false) (sid -9)) ((lhs b) (rhs a) (mode Cmd_line) (scope Global) (expr false) (nowait false) (silent true) (recursive true) (sid -9)) ((lhs c) (rhs c) (mode Cmd_line) (scope (Buffer_local 1)) (expr false) (nowait true) (silent false) (recursive false) (sid -9))))) (Test (mode Select) (keymaps (((description "Test description") (lhs a) (rhs a) (mode Select) (scope Global) (expr false) (nowait false) (silent false) (recursive false) (sid -9)) ((lhs b) (rhs a) (mode Select) (scope Global) (expr false) (nowait false) (silent true) (recursive true) (sid -9)) ((lhs c) (rhs c) (mode Select) (scope (Buffer_local 1)) (expr false) (nowait true) (silent false) (recursive false) (sid -9))))) (Test (mode Visual) (keymaps (((description "Test description") (lhs a) (rhs a) (mode Visual) (scope Global) (expr false) (nowait false) (silent false) (recursive false) (sid -9)) ((lhs b) (rhs a) (mode Visual) (scope Global) (expr false) (nowait false) (silent true) (recursive true) (sid -9)) ((lhs c) (rhs c) (mode Visual) (scope (Buffer_local 1)) (expr false) (nowait true) (silent false) (recursive false) (sid -9))))) (Test (mode Terminal) (keymaps (((description "Test description") (lhs a) (rhs a) (mode Terminal) (scope Global) (expr false) (nowait false) (silent false) (recursive false) (sid -9)) ((lhs b) (rhs a) (mode Terminal) (scope Global) (expr false) (nowait false) (silent true) (recursive true) (sid -9)) ((lhs c) (rhs c) (mode Terminal) (scope (Buffer_local 1)) (expr false) (nowait true) (silent false) (recursive false) (sid -9))))) (Test (mode Visual_and_select) (keymaps (((description "Test description") (lhs a) (rhs a) (mode Visual_and_select) (scope Global) (expr false) (nowait false) (silent false) (recursive false) (sid -9)) ((lhs b) (rhs a) (mode Visual_and_select) (scope Global) (expr false) (nowait false) (silent true) (recursive true) (sid -9)) ((lhs c) (rhs c) (mode Visual_and_select) (scope (Buffer_local 1)) (expr false) (nowait true) (silent false) (recursive false) (sid -9))))) (Test (mode Normal_and_visual_and_operator_pending) (keymaps (((description "Test description") (lhs a) (rhs a) (mode Normal_and_visual_and_operator_pending) (scope Global) (expr false) (nowait false) (silent false) (recursive false) (sid -9)) ((lhs b) (rhs a) (mode Normal_and_visual_and_operator_pending) (scope Global) (expr false) (nowait false) (silent true) (recursive true) (sid -9)) ((lhs c) (rhs c) (mode Normal_and_visual_and_operator_pending) (scope (Buffer_local 1)) (expr false) (nowait true) (silent false) (recursive false) (sid -9))))) (Test (mode Insert_and_command_line) (keymaps (((description "Test description") (lhs a) (rhs a) (mode Insert_and_command_line) (scope Global) (expr false) (nowait false) (silent false) (recursive false) (sid -9)) ((lhs b) (rhs a) (mode Insert_and_command_line) (scope Global) (expr false) (nowait false) (silent true) (recursive true) (sid -9)) ((lhs c) (rhs c) (mode Insert_and_command_line) (scope (Buffer_local 1)) (expr false) (nowait true) (silent false) (recursive false) (sid -9))))) (Test (mode Language) (keymaps (((description "Test description") (lhs a) (rhs a) (mode Language) (scope Global) (expr false) (nowait false) (silent false) (recursive false) (sid -9)) ((lhs b) (rhs a) (mode Language) (scope Global) (expr false) (nowait false) (silent true) (recursive true) (sid -9)) ((lhs c) (rhs c) (mode Language) (scope (Buffer_local 1)) (expr false) (nowait true) (silent false) (recursive false) (sid -9))))) |}]; return () ;; let%expect_test "Test unsetting keymap in specific mode" = let%bind () = with_client (fun client -> let query = let open Api_call.Or_error.Let_syntax in let%map () = clear_mappings and () = Keymap.set ~lhs:"a" ~rhs:"a" ~mode:Normal_and_visual_and_operator_pending ~scope:`Global () and () = Keymap.unset ~lhs:"a" ~mode:Visual ~scope:`Global and () = Keymap.unset ~lhs:"a" ~mode:Normal ~scope:`Global and remaining_keymaps = Keymap.get ~scope:`Global ~mode:Normal_and_visual_and_operator_pending in remaining_keymaps in let open Deferred.Or_error.Let_syntax in let%map keymaps = run_join [%here] client query in print_s [%message "Remaining keymaps" (keymaps : Keymap.t list)]) in [%expect {| ("Remaining keymaps" (keymaps (((lhs a) (rhs a) (mode Operator_pending) (scope Global) (expr false) (nowait false) (silent false) (recursive false) (sid -9)) ((lhs a) (rhs a) (mode Select) (scope Global) (expr false) (nowait false) (silent false) (recursive false) (sid -9))))) |}]; return () ;;
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>