acstack 0.50.3 → 0.50.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "acstack",
|
|
3
3
|
"description": "Agentic coding stack where planning grows only as far as needed: a map of decisions, tasks, checks, and handoffs behind a pluggable tracker.",
|
|
4
|
-
"version": "0.50.
|
|
4
|
+
"version": "0.50.4",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "ac8318740"
|
|
7
7
|
},
|
|
@@ -288,11 +288,36 @@ def drop_claimed(t):
|
|
|
288
288
|
return "\n".join(out)
|
|
289
289
|
|
|
290
290
|
|
|
291
|
+
def inspect_available(t):
|
|
292
|
+
# Preserve custom bindings, including sequences beginning with i.
|
|
293
|
+
if "i" in CLAIMED or tomllib is None:
|
|
294
|
+
return False
|
|
295
|
+
try:
|
|
296
|
+
data = tomllib.loads(t)
|
|
297
|
+
except ValueError:
|
|
298
|
+
return False
|
|
299
|
+
for section in ("mgr", "manager"):
|
|
300
|
+
for name in ("prepend_keymap", "keymap", "append_keymap"):
|
|
301
|
+
for binding in data.get(section, {}).get(name, []):
|
|
302
|
+
on = binding.get("on", [])
|
|
303
|
+
if on == "i" or isinstance(on, list) and on[:1] == ["i"]:
|
|
304
|
+
return False
|
|
305
|
+
return True
|
|
306
|
+
|
|
307
|
+
|
|
291
308
|
parts = []
|
|
292
309
|
if not claimed(text):
|
|
293
310
|
# A binding conceded below is one this script never writes, so the user's
|
|
294
311
|
# own must survive. Only strip when the bindings are actually going in.
|
|
312
|
+
inspect = inspect_available(text)
|
|
295
313
|
text = drop_claimed(text)
|
|
314
|
+
if inspect:
|
|
315
|
+
parts.append(
|
|
316
|
+
"[[mgr.prepend_keymap]]\n"
|
|
317
|
+
'on = "i"\n'
|
|
318
|
+
"""run = 'shell --block -- case %h in *.[mM][dD]|*.[mM][aA][rR][kK][dD][oO][wW][nN]) frogmouth -- %h ;; esac'\n"""
|
|
319
|
+
'desc = "Inspect Markdown in Frogmouth"'
|
|
320
|
+
)
|
|
296
321
|
# %h is the hovered file. $0 and $@ are not: yazi runs the template through
|
|
297
322
|
# a shell, where $0 names the shell itself and $@ is empty - both measured,
|
|
298
323
|
# and both would open the browser on nothing at all.
|
package/cli/package.json
CHANGED
|
@@ -74,6 +74,7 @@ Add `shift` to any of these to open it in a full tab instead of a popup.
|
|
|
74
74
|
| Key | Does |
|
|
75
75
|
|---|---|
|
|
76
76
|
| `e` | edit in `$EDITOR` |
|
|
77
|
+
| `i` | inspect Markdown in Frogmouth (install with `pipx install frogmouth`; existing `i` bindings take precedence) |
|
|
77
78
|
| `o` | open by rule, which for markdown is the reader |
|
|
78
79
|
| `b` | open in the browser you are sitting at |
|
|
79
80
|
| `D` | send the file to your laptop over Taildrop |
|
package/package.json
CHANGED
|
@@ -79,6 +79,7 @@ The two files this skill works with:
|
|
|
79
79
|
- **Config**: `~/.config/acstack/terminal-workspace.yaml`, copied from `assets/terminal-workspace/config.example.yaml`
|
|
80
80
|
- **Script**: `assets/terminal-workspace/setup.sh` in this plugin
|
|
81
81
|
|
|
82
|
+
Yazi's `i` opens Markdown in Frogmouth (`pipx install frogmouth`); existing `i` bindings take precedence, and `e` keeps editing in `$EDITOR`.
|
|
82
83
|
The keys, on one page: [docs/terminal-workspace-keys.md](../../docs/terminal-workspace-keys.md).
|
|
83
84
|
|
|
84
85
|
Background and why each piece is there:
|