From 553e83e9f94722b422c88adf720120714fc17a27 Mon Sep 17 00:00:00 2001 From: ikma Date: Sat, 18 Jul 2026 15:42:30 -0400 Subject: [PATCH] feat: support Zed review task fields --- .mise/tasks/zed/keymap/bind-snippet | 14 +++ .mise/tasks/zed/keymap/check-snippet | 13 +++ .mise/tasks/zed/tasks/upsert | 137 +++++++++++++++++++++++---- README.md | 48 ++++++---- README.tsx | 28 ++++-- test/zed/keymap.bats | 117 +++++++++++++++++++++++ test/zed/tasks.bats | 123 ++++++++++++++++++++++++ 7 files changed, 437 insertions(+), 43 deletions(-) create mode 100755 .mise/tasks/zed/keymap/bind-snippet create mode 100755 .mise/tasks/zed/keymap/check-snippet diff --git a/.mise/tasks/zed/keymap/bind-snippet b/.mise/tasks/zed/keymap/bind-snippet new file mode 100755 index 0000000..5e095a7 --- /dev/null +++ b/.mise/tasks/zed/keymap/bind-snippet @@ -0,0 +1,14 @@ +#!/usr/bin/env bash +#MISE description="Bind a Zed key to insert an inline snippet" +#MISE dir="{{config_root}}" +#USAGE flag "--keystroke " required=#true help="Zed key binding, for example cmd-k i" +#USAGE flag "--snippet " required=#true help="Inline Zed snippet text" +#USAGE flag "--context " default="Editor" help="Zed keymap context" +#USAGE flag "--force" default=#false help="Replace an existing different binding" +#USAGE example "mise run zed:keymap:bind-snippet --context 'Editor && extension == md' --keystroke 'cmd-k i' --snippet '$0'" header="Bind a Markdown snippet" +set -euo pipefail + +source "$MISE_CONFIG_ROOT/lib/zed/keymap.sh" + +binding_json="$(jq -n --arg snippet "$usage_snippet" '["editor::InsertSnippet", {snippet: $snippet}]')" +zed_keymap_upsert_binding_json "$usage_context" "$usage_keystroke" "$binding_json" "$usage_force" diff --git a/.mise/tasks/zed/keymap/check-snippet b/.mise/tasks/zed/keymap/check-snippet new file mode 100755 index 0000000..dc6c8b9 --- /dev/null +++ b/.mise/tasks/zed/keymap/check-snippet @@ -0,0 +1,13 @@ +#!/usr/bin/env bash +#MISE description="Check whether a Zed snippet key binding can be installed" +#MISE dir="{{config_root}}" +#USAGE flag "--keystroke " required=#true help="Zed key binding, for example cmd-k i" +#USAGE flag "--snippet " required=#true help="Inline Zed snippet text" +#USAGE flag "--context " default="Editor" help="Zed keymap context" +#USAGE example "mise run zed:keymap:check-snippet --context 'Editor && extension == md' --keystroke 'cmd-k i' --snippet '$0'" header="Check a Markdown snippet binding" +set -euo pipefail + +source "$MISE_CONFIG_ROOT/lib/zed/keymap.sh" + +binding_json="$(jq -n --arg snippet "$usage_snippet" '["editor::InsertSnippet", {snippet: $snippet}]')" +zed_keymap_check_binding_json "$usage_context" "$usage_keystroke" "$binding_json" diff --git a/.mise/tasks/zed/tasks/upsert b/.mise/tasks/zed/tasks/upsert index 5d4180b..9ff1d5e 100755 --- a/.mise/tasks/zed/tasks/upsert +++ b/.mise/tasks/zed/tasks/upsert @@ -4,30 +4,131 @@ #USAGE flag "--label