projmux 0.7.5 → 0.7.6
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.
- package/README-ko.md +3 -1
- package/README.md +3 -1
- package/docs/agent-workflow.md +1 -0
- package/docs/keybindings.md +44 -9
- package/package.json +5 -5
package/README-ko.md
CHANGED
|
@@ -70,7 +70,9 @@ projmux shell
|
|
|
70
70
|
`Alt-1`부터 `Alt-5`까지는 zero-config 보장 기본값이고, `Alt-7`은 추가로
|
|
71
71
|
편집 가능한 built-in 기본값입니다. 전체 key map은
|
|
72
72
|
[Terminal Keybindings](docs/keybindings.md)를 참고하세요. 키가 동작하지 않으면
|
|
73
|
-
|
|
73
|
+
Darwin 배포본의 `projmux shell`에서는 macOS 접근성 권한을 한 번 승인하면
|
|
74
|
+
물리 키 어댑터가 자동으로 동작합니다. 그 밖의 경로에서는 tmux 밖에서
|
|
75
|
+
`projmux setup`을 실행한 뒤, 지원 터미널에서는
|
|
74
76
|
`projmux init [terminal] --apply`를 사용하세요.
|
|
75
77
|
|
|
76
78
|
## 일상 사용
|
package/README.md
CHANGED
|
@@ -79,7 +79,9 @@ Inside the app:
|
|
|
79
79
|
The `Alt-1` through `Alt-5` launch keys are the guaranteed zero-config
|
|
80
80
|
defaults. `Alt-7` is an additional editable built-in default. Add aliases in
|
|
81
81
|
Settings > Keybindings or `~/.config/projmux/keymap.toml`. If a key does not
|
|
82
|
-
fire,
|
|
82
|
+
fire, the Darwin release uses a native physical-key adapter automatically
|
|
83
|
+
inside `projmux shell` after one-time macOS Accessibility approval. On other
|
|
84
|
+
paths, run `projmux setup` outside tmux, then use `projmux init [terminal]
|
|
83
85
|
--apply` for supported terminal delivery fallbacks.
|
|
84
86
|
|
|
85
87
|
## Day-To-Day Use
|
package/docs/agent-workflow.md
CHANGED
|
@@ -39,6 +39,7 @@
|
|
|
39
39
|
- `make test` also covers AI semantic badge renderer aggregation for window-list, sidebar rows, switch window tabs, popup pane summaries, and pane-border topic badges using prompt-required > response-complete > in-progress priority while preserving blank no-state lanes, response-complete live badge consume on attention clear without idling action-required/progress badges, plus Settings > Appearance AI badge style selection for dot/emoji/off pane-border, Alt-1 sidebar window/preview tabs, and tmux window-status compatibility with dot as the persisted/config fallback.
|
|
40
40
|
- `make test` also covers AI semantic badge Phase 3 theme-role hardening: `@projmux_ai_badge_kind` storage values and aggregate priority stay unchanged, `minimal` remains a read-time alias for the `off` badge style, progress/success/action-required badge roles stay distinct, permission/input status badges do not use critical red, and critical notify queue severity does not drive live AI status badge colors or desktop notification urgency.
|
|
41
41
|
- `make test` also covers keybinding surface tier catalog rules, action-centered `keymap.toml` `keys = [...]` multi-alias parsing/writing, quoted internal `Surface:Action` tables, legacy popup action ID aliases, canonical popup toggle names, AI split popup-vs-direct action labels, generated tmux config multi-alias rendering, global/direct conflict detection, surface-scoped native picker command conflict detection, Settings Keybindings list/search/detail surface-aware picker-local labels, compact action-list state copy, flat Keys list/action detail rows, key detail remove/test rows, Add key default press-key flow with Advanced typed entry, collapsed Troubleshooting entry copy, Settings delivery diagnostics that split logical key/raw bytes/tmux received key while distinguishing missing, ambiguous, adapter-needed, and delivered states, safe direct key pool and risky/reserved diagnostic-only copy, Projmux-owned Ghostty/Windows Terminal advanced delivery copy, raw escape/CSI-u/xterm modified/UserKey/UserSequence rejection from primary keymap storage, Labs compatibility redirect to the Keybindings root, capture/add-key flows, unsafe raw capture, reset behavior, stale guide docs guards, and welcome/runtime footer copy that avoids hardcoded launch-key guides.
|
|
42
|
+
- Darwin native-key focused coverage includes portable physical chord parsing for Alt/Option, Control, Control-Option, Shift, letters/digits/navigation/function keys, shared `keymap.toml` custom-action loading (including `M-a`), focused tmux client discovery, canonical `send-keys -K -c` dispatch through the existing root key table, native Settings Add key capture winning over terminal text encoding, and an explicit Linux/Windows/no-CGO shell startup no-op boundary.
|
|
42
43
|
- `make test` covers the default picker key ownership across catalog, generated tmux config, terminal adapters, setup probes, and native popup close hints: `Alt-4` opens AI Resume as a guaranteed launch default, while `Alt-7` opens the AI split picker as its editable default.
|
|
43
44
|
- `make test` also covers welcome revisit policy: legacy welcome state remains readable without suppressing shell entry, Enter continues without storing release skip, `s` stores an update skip for the current latest tag when an update is available, source installs show disabled Upgrade guidance, stale update cache refresh is best-effort, Settings > About > Welcome opens a Settings-native viewer without pending state, and shell prompt display does not schedule a redundant attach popup.
|
|
44
45
|
- `make test` also covers transport-dependent app tmux defaults for pane/window navigation (`M-Left`/`M-Right`/`M-Up`/`M-Down` and `M-S-Left`/`M-S-Right`) while keeping visible default chords, allowing additive safe plain aliases that do not store or remove the transport defaults, and no UserKey/CSI-u generated fallback.
|
package/docs/keybindings.md
CHANGED
|
@@ -13,10 +13,13 @@ supported fallback guidance.
|
|
|
13
13
|
The recommended path when a key does not fire:
|
|
14
14
|
|
|
15
15
|
1. Try the key inside `projmux shell`.
|
|
16
|
-
2.
|
|
17
|
-
|
|
16
|
+
2. On macOS, approve the one-time Accessibility prompt from the native
|
|
17
|
+
`projmux shell` key adapter, then retry the physical key.
|
|
18
|
+
3. Run `projmux setup` outside tmux to see which bytes reach the process.
|
|
19
|
+
4. For supported terminals outside the native macOS app socket, preview
|
|
20
|
+
`projmux init [terminal]`; add `--apply`
|
|
18
21
|
only after reviewing the merge.
|
|
19
|
-
|
|
22
|
+
5. For unsupported terminals, configure plain Meta bytes or add a custom key in
|
|
20
23
|
Settings > Keybindings.
|
|
21
24
|
|
|
22
25
|
Settings saves safe tmux plain chords for actions and automatically applies the
|
|
@@ -56,6 +59,37 @@ separate from `last-pane` and from the existing-session popup.
|
|
|
56
59
|
The tmux prefix remains the upstream default `Ctrl-b`. Inside a running
|
|
57
60
|
session, `Ctrl-b ?` lists the live tmux bindings.
|
|
58
61
|
|
|
62
|
+
### Native macOS delivery
|
|
63
|
+
|
|
64
|
+
Darwin release binaries start a small native key adapter automatically with
|
|
65
|
+
`projmux shell`. It observes physical keys only while a client on that projmux
|
|
66
|
+
tmux socket reports itself focused. Supported `Alt`/Option and Control chords
|
|
67
|
+
from the same merged action catalog are sent back through tmux's client key
|
|
68
|
+
table. For example, a custom `M-a` remains the ordinary cross-platform
|
|
69
|
+
`keymap.toml` value; on macOS the adapter recognizes physical Option-A and
|
|
70
|
+
injects canonical `M-a`, while Linux and Windows keep their existing terminal
|
|
71
|
+
delivery path.
|
|
72
|
+
|
|
73
|
+
This adapter is terminal-independent, so Ghostty and iTerm2 do not need
|
|
74
|
+
separate projmux mappings for the app socket. It does not rewrite terminal
|
|
75
|
+
configuration and it does not translate Option-produced symbols such as `¡`.
|
|
76
|
+
The first launch requires macOS Accessibility permission because consuming a
|
|
77
|
+
physical chord before the terminal converts it requires a CGEvent event tap.
|
|
78
|
+
The broker waits for the one-time approval and enables the event tap
|
|
79
|
+
automatically; the tmux session does not need to be restarted.
|
|
80
|
+
|
|
81
|
+
The portable key vocabulary stays shared across operating systems:
|
|
82
|
+
`M-` (Alt/Option), `C-`, `S-`, letters, top-row digits, arrows/navigation,
|
|
83
|
+
and function keys. Command/Super is intentionally not part of this portable
|
|
84
|
+
tier. Picker-local unmodified commands continue through the picker input path;
|
|
85
|
+
the native adapter owns action-level no-prefix bindings only.
|
|
86
|
+
|
|
87
|
+
Settings > Keybindings > Add key races the native modified-key capture against
|
|
88
|
+
the existing controlling-TTY capture. On Darwin this lets Press a key store a
|
|
89
|
+
new physical Option, Control, Control-Option, or Shift-modified chord before
|
|
90
|
+
the terminal turns it into text; ordinary keys still use the portable TTY
|
|
91
|
+
path. Other operating systems keep the existing TTY capture unchanged.
|
|
92
|
+
|
|
59
93
|
## Discoverable Actions
|
|
60
94
|
|
|
61
95
|
Settings > Keybindings lists the full action catalogue. In particular, sidebar
|
|
@@ -71,12 +105,13 @@ Troubleshooting row with Test key delivery and Advanced... entry points. Key
|
|
|
71
105
|
rows open key detail for Remove key and Test key. Add key opens Press a key by
|
|
72
106
|
default; Enter key name, the safe direct key pool, risky/reserved key copy, and
|
|
73
107
|
raw diagnostics live under Advanced. Advanced delivery is still owned by the
|
|
74
|
-
selected Projmux action
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
108
|
+
selected Projmux action. The native macOS app-socket adapter reads the same
|
|
109
|
+
safe chords directly; supported Ghostty and Windows Terminal mappings for
|
|
110
|
+
other paths are previewed/applied through `projmux init`, not by storing raw
|
|
111
|
+
sequences in the primary keymap. Options covers unbinding the action and
|
|
112
|
+
reset/use-default flows. Diagnostic/probe/init workflows are not first-class
|
|
113
|
+
Settings tabs; use `projmux setup` and, where the native adapter does not
|
|
114
|
+
apply, `projmux init` from the terminal when key delivery needs remediation.
|
|
80
115
|
|
|
81
116
|
Optional direct keys can be added for actions such as:
|
|
82
117
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "projmux",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.6",
|
|
4
4
|
"description": "tmux project session manager",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://github.com/crevissepartners/projmux#readme",
|
|
@@ -28,9 +28,9 @@
|
|
|
28
28
|
"package:npm:pack": "scripts/package-npm.sh --pack"
|
|
29
29
|
},
|
|
30
30
|
"optionalDependencies": {
|
|
31
|
-
"@projmux/linux-x64": "0.7.
|
|
32
|
-
"@projmux/linux-arm64": "0.7.
|
|
33
|
-
"@projmux/darwin-x64": "0.7.
|
|
34
|
-
"@projmux/darwin-arm64": "0.7.
|
|
31
|
+
"@projmux/linux-x64": "0.7.6",
|
|
32
|
+
"@projmux/linux-arm64": "0.7.6",
|
|
33
|
+
"@projmux/darwin-x64": "0.7.6",
|
|
34
|
+
"@projmux/darwin-arm64": "0.7.6"
|
|
35
35
|
}
|
|
36
36
|
}
|