@aiwayds/dsh-tui-pi 2.18.2 → 2.20.0
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.md +12 -43
- package/README.zh-CN.md +11 -42
- package/lib/agents.js +67 -52
- package/lib/agents.js.map +1 -1
- package/lib/ask-user.d.ts +122 -3
- package/lib/ask-user.js +335 -41
- package/lib/ask-user.js.map +1 -1
- package/lib/attachments.js +8 -3
- package/lib/attachments.js.map +1 -1
- package/lib/btw.d.ts +4 -2
- package/lib/btw.js +22 -16
- package/lib/btw.js.map +1 -1
- package/lib/custom-provider.js +34 -28
- package/lib/custom-provider.js.map +1 -1
- package/lib/footer.d.ts +9 -8
- package/lib/footer.js +36 -18
- package/lib/footer.js.map +1 -1
- package/lib/hard-exit.d.ts +36 -0
- package/lib/hard-exit.js +64 -0
- package/lib/hard-exit.js.map +1 -0
- package/lib/history-fork.d.ts +2 -2
- package/lib/history-fork.js +12 -9
- package/lib/history-fork.js.map +1 -1
- package/lib/history-turns.d.ts +4 -2
- package/lib/history-turns.js +7 -3
- package/lib/history-turns.js.map +1 -1
- package/lib/history.js +57 -45
- package/lib/history.js.map +1 -1
- package/lib/hotkeys.js +44 -33
- package/lib/hotkeys.js.map +1 -1
- package/lib/i18n/index.d.ts +54 -0
- package/lib/i18n/index.js +98 -0
- package/lib/i18n/index.js.map +1 -0
- package/lib/i18n/registry.d.ts +65 -0
- package/lib/i18n/registry.js +129 -0
- package/lib/i18n/registry.js.map +1 -0
- package/lib/index.js +219 -109
- package/lib/index.js.map +1 -1
- package/lib/language-ask.d.ts +98 -0
- package/lib/language-ask.js +118 -0
- package/lib/language-ask.js.map +1 -0
- package/lib/live-widgets.js +9 -8
- package/lib/live-widgets.js.map +1 -1
- package/lib/login.js +5 -4
- package/lib/login.js.map +1 -1
- package/lib/messages.d.ts +0 -4
- package/lib/messages.js +14 -15
- package/lib/messages.js.map +1 -1
- package/lib/model-profiles.js +32 -20
- package/lib/model-profiles.js.map +1 -1
- package/lib/panels.js +18 -17
- package/lib/panels.js.map +1 -1
- package/lib/preflight-projcache.js +9 -3
- package/lib/preflight-projcache.js.map +1 -1
- package/lib/preset-dialog.d.ts +3 -3
- package/lib/preset-dialog.js +20 -17
- package/lib/preset-dialog.js.map +1 -1
- package/lib/provider-catalog.d.ts +23 -7
- package/lib/provider-catalog.js +90 -68
- package/lib/provider-catalog.js.map +1 -1
- package/lib/queue-panel.d.ts +2 -2
- package/lib/queue-panel.js +13 -9
- package/lib/queue-panel.js.map +1 -1
- package/lib/repair-dialog.d.ts +4 -4
- package/lib/repair-dialog.js +23 -16
- package/lib/repair-dialog.js.map +1 -1
- package/lib/route-dialog.d.ts +3 -3
- package/lib/route-dialog.js +20 -14
- package/lib/route-dialog.js.map +1 -1
- package/lib/selectors.d.ts +15 -1
- package/lib/selectors.js +57 -23
- package/lib/selectors.js.map +1 -1
- package/lib/sessions.d.ts +47 -14
- package/lib/sessions.js +162 -53
- package/lib/sessions.js.map +1 -1
- package/lib/settings.d.ts +68 -9
- package/lib/settings.js +327 -78
- package/lib/settings.js.map +1 -1
- package/lib/skills-manager.js +27 -21
- package/lib/skills-manager.js.map +1 -1
- package/lib/skills.js +5 -4
- package/lib/skills.js.map +1 -1
- package/lib/startup-info.js +9 -3
- package/lib/startup-info.js.map +1 -1
- package/lib/steer-flow.d.ts +14 -4
- package/lib/steer-flow.js +24 -9
- package/lib/steer-flow.js.map +1 -1
- package/lib/stop-dialog.d.ts +2 -2
- package/lib/stop-dialog.js +16 -12
- package/lib/stop-dialog.js.map +1 -1
- package/lib/subagent-viewer.d.ts +3 -8
- package/lib/subagent-viewer.js +38 -62
- package/lib/subagent-viewer.js.map +1 -1
- package/lib/theme-preview.js +12 -11
- package/lib/theme-preview.js.map +1 -1
- package/lib/theme-settings.d.ts +44 -2
- package/lib/theme-settings.js +97 -54
- package/lib/theme-settings.js.map +1 -1
- package/lib/tui.js +2 -1
- package/lib/tui.js.map +1 -1
- package/locales/en.json +646 -0
- package/locales/ja.json +646 -0
- package/locales/ko.json +646 -0
- package/locales/zh-CN.json +646 -0
- package/package.json +2 -1
- package/skills/dsh-tui-pi-config/SKILL.md +14 -4
package/lib/history.js
CHANGED
|
@@ -59,9 +59,10 @@ import { SessionId } from '@deepseek-ai/dsh-session';
|
|
|
59
59
|
import { Container, getKeybindings, HStack, matchesKey, Markdown, Spacer, Text, VStack, } from '@earendil-works/pi-tui';
|
|
60
60
|
import { groupHistoryTurns, matchesTurnFilter, toolCallSummary, turnPrimaryUserText, turnSeedSlice, } from "./history-turns.js";
|
|
61
61
|
import { stopIcon } from "./icons.js";
|
|
62
|
+
import { t } from "./i18n/index.js";
|
|
62
63
|
import { isCorruptLogError } from "./log-repair.js";
|
|
63
64
|
import { autoColumns, PanelHost, panelThemeFns, TablePanel } from "./panels.js";
|
|
64
|
-
import { headerOf, isResumableSessionHeader, inspectPersistedSession, loadSessionLastUpdates, loadSessionPreviews, normalizePreview, PREVIEW_SESSION_CAP, RESUME_DIR_CAP, resumeRowTitle,
|
|
65
|
+
import { headerOf, isResumableSessionHeader, inspectPersistedSession, loadSessionLastUpdates, loadSessionPreviews, normalizePreview, PREVIEW_SESSION_CAP, RESUME_DIR_CAP, resumeRowTitle, orderSessionsByLastUpdate, } from "./sessions.js";
|
|
65
66
|
import { ansiFg, BOLD, RESET } from "./theme/index.js";
|
|
66
67
|
import { clipToWidth } from "./text.js";
|
|
67
68
|
/** Terminal width at which the browser switches from stacked to side-by-side. */
|
|
@@ -82,8 +83,13 @@ export const MAX_USER_BUBBLE_LINES = 40;
|
|
|
82
83
|
* budget nothing changes.
|
|
83
84
|
*/
|
|
84
85
|
export const MAX_DETAIL_LINES = 4000;
|
|
85
|
-
/**
|
|
86
|
-
|
|
86
|
+
/**
|
|
87
|
+
* List footer hint (the detail pane carries the scroll hints). A function, not
|
|
88
|
+
* a const: a module-top t() would freeze the footer in the startup language.
|
|
89
|
+
*/
|
|
90
|
+
function historyFooter() {
|
|
91
|
+
return t('history.footer');
|
|
92
|
+
}
|
|
87
93
|
/**
|
|
88
94
|
* Content-row budget inside the framed overlay: showOverlay slices the
|
|
89
95
|
* component's lines at maxHeight ('85%' of the terminal — pi-tui floors the
|
|
@@ -123,12 +129,12 @@ export function historyRows(turns, query) {
|
|
|
123
129
|
.map(turn => ({
|
|
124
130
|
turn,
|
|
125
131
|
turnLabel: String(turn.turn),
|
|
126
|
-
preview: normalizePreview(turn.previewText) || '
|
|
132
|
+
preview: normalizePreview(turn.previewText) || t('history.noText'),
|
|
127
133
|
}));
|
|
128
134
|
}
|
|
129
135
|
/** The left-list title for one browsed session. */
|
|
130
136
|
function historyListTitle(sessionId, live) {
|
|
131
|
-
return
|
|
137
|
+
return `${t('history.listTitle', { id: clipToWidth(sessionId, 8) })}${live ? ` ${t('history.liveTag')}` : ''}`;
|
|
132
138
|
}
|
|
133
139
|
/**
|
|
134
140
|
* The user bubble's styled body: `▎ `-prefixed lines (the main transcript's
|
|
@@ -140,19 +146,19 @@ function userBubbleText(text, theme) {
|
|
|
140
146
|
const lines = text.split('\n');
|
|
141
147
|
const body = lines.length <= MAX_USER_BUBBLE_LINES
|
|
142
148
|
? lines
|
|
143
|
-
: [...lines.slice(0, MAX_USER_BUBBLE_LINES),
|
|
149
|
+
: [...lines.slice(0, MAX_USER_BUBBLE_LINES), t('history.moreLines', { count: lines.length - MAX_USER_BUBBLE_LINES })];
|
|
144
150
|
return theme.chat.userMessageText(body.map(line => `▎ ${line}`).join('\n'));
|
|
145
151
|
}
|
|
146
152
|
/** The turn-end status line (the main transcript's renderTurnEnd vocabulary). */
|
|
147
153
|
function turnEndLine(turn, theme) {
|
|
148
154
|
if (turn.endReason === 'error') {
|
|
149
|
-
return ansiFg(theme.palette.danger) + `✘ ${turn.endError ?? '
|
|
155
|
+
return ansiFg(theme.palette.danger) + `✘ ${turn.endError ?? t('history.turnFailed')}` + RESET;
|
|
150
156
|
}
|
|
151
157
|
if (turn.endReason === 'aborted' || turn.endReason === 'interrupted' || turn.interrupted) {
|
|
152
|
-
return ansiFg(theme.palette.fgSubtle) + `${stopIcon()} interrupted` + RESET;
|
|
158
|
+
return ansiFg(theme.palette.fgSubtle) + `${stopIcon()} ${t('history.interrupted')}` + RESET;
|
|
153
159
|
}
|
|
154
160
|
if (turn.endReason === 'max-tokens') {
|
|
155
|
-
return ansiFg(theme.palette.attention) +
|
|
161
|
+
return ansiFg(theme.palette.attention) + `⚠ ${t('history.maxTokens')}` + RESET;
|
|
156
162
|
}
|
|
157
163
|
return undefined;
|
|
158
164
|
}
|
|
@@ -195,11 +201,11 @@ export function buildTurnDetailContainer(turn, theme, sessionId) {
|
|
|
195
201
|
}
|
|
196
202
|
if (truncated > 0) {
|
|
197
203
|
const pointer = sessionId !== undefined ? `/resume ${clipToWidth(sessionId, 8)} ` : '/resume ';
|
|
198
|
-
doc.addChild(new Text(ansiFg(theme.palette.fgSubtle) +
|
|
204
|
+
doc.addChild(new Text(ansiFg(theme.palette.fgSubtle) + t('history.truncated', { count: truncated, pointer }) + RESET, 1, 0));
|
|
199
205
|
doc.addChild(new Spacer(1));
|
|
200
206
|
}
|
|
201
207
|
if (turn.userTexts.length === 0 && turn.assistantTexts.length === 0) {
|
|
202
|
-
doc.addChild(new Text(ansiFg(theme.palette.fgSubtle) + '
|
|
208
|
+
doc.addChild(new Text(ansiFg(theme.palette.fgSubtle) + t('history.emptyTurn') + RESET, 1, 0));
|
|
203
209
|
doc.addChild(new Spacer(1));
|
|
204
210
|
}
|
|
205
211
|
if (turn.toolCallNames.length > 0) {
|
|
@@ -247,10 +253,10 @@ class TurnDetailPane {
|
|
|
247
253
|
/** Static rebuild: swap the content to `turn`'s events and reset to the top. */
|
|
248
254
|
setTurn(turn, live, sessionId) {
|
|
249
255
|
this.scrollTop = 0;
|
|
250
|
-
const source = live ?
|
|
256
|
+
const source = live ? ` · ${t('history.liveSnapshot')}` : '';
|
|
251
257
|
this.headerTitle = turn === undefined
|
|
252
|
-
? '
|
|
253
|
-
:
|
|
258
|
+
? t('history.title')
|
|
259
|
+
: `${t('history.turnTitle', { turn: String(turn.turn) })}${turn.endReason === 'completed' ? '' : ` · ${turn.endReason}`}${turn.interrupted ? ` · ${t('history.interrupted')}` : ''}${source}`;
|
|
254
260
|
this.container = turn === undefined
|
|
255
261
|
? new Container()
|
|
256
262
|
: buildTurnDetailContainer(turn, this.theme, sessionId);
|
|
@@ -294,22 +300,28 @@ class TurnDetailPane {
|
|
|
294
300
|
const maxScroll = Math.max(0, lines.length - this.bodyRows);
|
|
295
301
|
this.scrollTop = Math.max(0, Math.min(this.scrollTop, maxScroll));
|
|
296
302
|
const body = this.lineCount === 0
|
|
297
|
-
? [fns.subtle(clipToWidth('
|
|
303
|
+
? [fns.subtle(clipToWidth(t('history.selectTurn'), width))]
|
|
298
304
|
: lines.slice(this.scrollTop, this.scrollTop + this.bodyRows);
|
|
299
305
|
while (body.length < this.bodyRows)
|
|
300
306
|
body.push('');
|
|
301
307
|
// Focus visuals: the focused pane's title reads accent BOLD, the idle
|
|
302
308
|
// one fades to subtle; the focused footer carries the exit/scroll hints.
|
|
303
|
-
const title = this.headerTitle === '' ? '
|
|
309
|
+
const title = this.headerTitle === '' ? t('history.title') : this.headerTitle;
|
|
304
310
|
const header = this.focused
|
|
305
311
|
? fns.accent(BOLD + clipToWidth(title, width) + RESET)
|
|
306
312
|
: fns.subtle(clipToWidth(title, width));
|
|
307
313
|
const window = this.lineCount > this.bodyRows
|
|
308
|
-
?
|
|
309
|
-
|
|
314
|
+
? t('history.linesRange', {
|
|
315
|
+
start: this.scrollTop + 1,
|
|
316
|
+
end: Math.min(this.lineCount, this.scrollTop + this.bodyRows),
|
|
317
|
+
total: this.lineCount,
|
|
318
|
+
})
|
|
319
|
+
: this.lineCount === 1
|
|
320
|
+
? t('history.lineOne', { count: this.lineCount })
|
|
321
|
+
: t('history.lineMany', { count: this.lineCount });
|
|
310
322
|
const footer = this.focused
|
|
311
|
-
?
|
|
312
|
-
:
|
|
323
|
+
? t('history.detailFooterFocused', { window })
|
|
324
|
+
: t('history.detailFooterIdle', { window });
|
|
313
325
|
return [header, '', ...body, '', fns.subtle(clipToWidth(footer, width))];
|
|
314
326
|
}
|
|
315
327
|
}
|
|
@@ -337,9 +349,9 @@ export function historyLoadErrorMessage(id, error) {
|
|
|
337
349
|
const message = error instanceof Error ? error.message : String(error);
|
|
338
350
|
const short = clipToWidth(id, 8);
|
|
339
351
|
if (isCorruptLogError(message)) {
|
|
340
|
-
return
|
|
352
|
+
return t('history.corruptLog', { id: short });
|
|
341
353
|
}
|
|
342
|
-
return
|
|
354
|
+
return t('history.cannotRead', { id: short, message });
|
|
343
355
|
}
|
|
344
356
|
/**
|
|
345
357
|
* Case-insensitive substring filter over the picker's display vocabulary:
|
|
@@ -368,11 +380,11 @@ export function filterSessionPickRows(rows, query) {
|
|
|
368
380
|
async function buildSessionPickRows(ctx, currentId) {
|
|
369
381
|
const persistence = ctx.get('sessionPersistence');
|
|
370
382
|
if (persistence === undefined) {
|
|
371
|
-
throw new Error('
|
|
383
|
+
throw new Error(t('history.noPersistence'));
|
|
372
384
|
}
|
|
373
385
|
const headers = (await persistence.list()).map(headerOf).filter(isResumableSessionHeader);
|
|
374
386
|
const lastUpdates = await loadSessionLastUpdates();
|
|
375
|
-
const ordered =
|
|
387
|
+
const ordered = orderSessionsByLastUpdate(headers, lastUpdates);
|
|
376
388
|
const { previews, corruptIds } = await loadSessionPreviews(persistence, ordered.slice(0, PREVIEW_SESSION_CAP).map(header => header.id));
|
|
377
389
|
return ordered.map(header => {
|
|
378
390
|
const id = String(header.id);
|
|
@@ -381,7 +393,7 @@ async function buildSessionPickRows(ctx, currentId) {
|
|
|
381
393
|
return {
|
|
382
394
|
id,
|
|
383
395
|
updated: new Date(updated).toLocaleString(),
|
|
384
|
-
dir: header.cwd ?? '
|
|
396
|
+
dir: header.cwd ?? t('history.noCwd'),
|
|
385
397
|
session: id === currentId ? `● ${title}` : title,
|
|
386
398
|
};
|
|
387
399
|
});
|
|
@@ -457,8 +469,8 @@ export class HistoryBrowserPanel {
|
|
|
457
469
|
// needs carrying over.
|
|
458
470
|
const wasFiltering = this.list?.isFiltering() ?? false;
|
|
459
471
|
const columns = autoColumns([
|
|
460
|
-
{ key: 'turnLabel', title: '
|
|
461
|
-
{ key: 'preview', title: '
|
|
472
|
+
{ key: 'turnLabel', title: t('history.col.turn'), cap: 6, align: 'right' },
|
|
473
|
+
{ key: 'preview', title: t('history.col.prompt') },
|
|
462
474
|
], this.rows, (row, key) => (key === 'preview' ? row.preview : row.turnLabel));
|
|
463
475
|
this.listOptions = {
|
|
464
476
|
title,
|
|
@@ -466,14 +478,14 @@ export class HistoryBrowserPanel {
|
|
|
466
478
|
rows: this.rows,
|
|
467
479
|
renderCell: (row, column) => (column.key === 'preview' ? row.preview : row.turnLabel),
|
|
468
480
|
maxVisible: this.listMax,
|
|
469
|
-
footer:
|
|
470
|
-
emptyHint: '
|
|
481
|
+
footer: historyFooter(),
|
|
482
|
+
emptyHint: t('history.empty'),
|
|
471
483
|
// Focus visualization: the focused list shows the ▸ cursor; while the
|
|
472
484
|
// detail pane owns the keyboard the cursor demotes to `›` (the list is
|
|
473
485
|
// still visible, just not keyed).
|
|
474
486
|
marker: selected => selected ? (this.focus === 'detail' ? '› ' : '▸ ') : ' ',
|
|
475
487
|
onSelect: row => this.copyTurn(row.turn),
|
|
476
|
-
onCancel: () => this.finish('
|
|
488
|
+
onCancel: () => this.finish(t('history.closed')),
|
|
477
489
|
shortcuts: {
|
|
478
490
|
c: () => this.copySelected(),
|
|
479
491
|
s: () => { void this.openSessionPicker(); },
|
|
@@ -624,12 +636,12 @@ export class HistoryBrowserPanel {
|
|
|
624
636
|
// not land in the editor — one Enter would submit a notice as a prompt).
|
|
625
637
|
const text = turnPrimaryUserText(turn);
|
|
626
638
|
if (text === undefined || text === '') {
|
|
627
|
-
this.status = '
|
|
639
|
+
this.status = t('history.nothingToCopy');
|
|
628
640
|
this.deps.requestRender();
|
|
629
641
|
return;
|
|
630
642
|
}
|
|
631
643
|
this.deps.copyToEditor(text);
|
|
632
|
-
this.finish('
|
|
644
|
+
this.finish(t('history.copied'));
|
|
633
645
|
}
|
|
634
646
|
copySelected() {
|
|
635
647
|
const row = this.list.selectedRow();
|
|
@@ -686,20 +698,20 @@ export class HistoryBrowserPanel {
|
|
|
686
698
|
buildSessionPickerPanel(rows) {
|
|
687
699
|
let query = '';
|
|
688
700
|
const columns = autoColumns([
|
|
689
|
-
{ key: 'updated', title: '
|
|
701
|
+
{ key: 'updated', title: t('history.col.updated'), cap: 26 },
|
|
690
702
|
// Same cap as the /resume picker's DIR column.
|
|
691
|
-
{ key: 'dir', title: '
|
|
692
|
-
{ key: 'session', title: '
|
|
703
|
+
{ key: 'dir', title: t('history.col.dir'), cap: RESUME_DIR_CAP },
|
|
704
|
+
{ key: 'session', title: t('history.col.session') },
|
|
693
705
|
], rows, (row, key) => row[key]);
|
|
694
706
|
let picker;
|
|
695
707
|
const options = {
|
|
696
|
-
title: '
|
|
708
|
+
title: t('history.pickerTitle'),
|
|
697
709
|
columns,
|
|
698
710
|
rows: [...rows],
|
|
699
711
|
renderCell: (row, column) => row[column.key],
|
|
700
|
-
footer: '
|
|
712
|
+
footer: t('history.pickerFooter'),
|
|
701
713
|
maxVisible: listMaxVisible(),
|
|
702
|
-
emptyHint: '
|
|
714
|
+
emptyHint: t('history.noMatching'),
|
|
703
715
|
onSelect: row => { void this.loadAndShow(row.id); },
|
|
704
716
|
onCancel: () => {
|
|
705
717
|
// Back to the browser: show it, then the host hides the picker. (A
|
|
@@ -745,12 +757,12 @@ export class HistoryBrowserPanel {
|
|
|
745
757
|
if (outcome !== true)
|
|
746
758
|
return;
|
|
747
759
|
await this.deps.forkAtTurn(seed, this.sessionId);
|
|
748
|
-
this.finish(
|
|
760
|
+
this.finish(t('history.forked', { turn: row.turnLabel }));
|
|
749
761
|
}
|
|
750
762
|
catch (error) {
|
|
751
763
|
const message = error instanceof Error ? error.message : String(error);
|
|
752
|
-
this.status =
|
|
753
|
-
this.deps.reportError(
|
|
764
|
+
this.status = t('history.forkFailed', { message });
|
|
765
|
+
this.deps.reportError(t('history.forkAtTurnFailed', { turn: row.turnLabel, message }));
|
|
754
766
|
this.deps.requestRender();
|
|
755
767
|
}
|
|
756
768
|
finally {
|
|
@@ -776,7 +788,7 @@ export class HistoryBrowserPanel {
|
|
|
776
788
|
if (this.closed)
|
|
777
789
|
return;
|
|
778
790
|
if (rows.length === 0) {
|
|
779
|
-
this.status = '
|
|
791
|
+
this.status = t('history.noStored');
|
|
780
792
|
this.deps.requestRender();
|
|
781
793
|
return;
|
|
782
794
|
}
|
|
@@ -803,7 +815,7 @@ export async function openHistoryBrowser(deps, sessionIdArg) {
|
|
|
803
815
|
const target = sessionIdArg ?? deps.getSessionId();
|
|
804
816
|
if (target === undefined || target === '') {
|
|
805
817
|
return {
|
|
806
|
-
text: '
|
|
818
|
+
text: t('history.noActive'),
|
|
807
819
|
error: true,
|
|
808
820
|
};
|
|
809
821
|
}
|
|
@@ -820,14 +832,14 @@ export async function openHistoryBrowser(deps, sessionIdArg) {
|
|
|
820
832
|
// gets the truth: this is a mount failure, not a quiet close. (Promise
|
|
821
833
|
// resolution is idempotent, so a later finish/onFinish is a no-op.)
|
|
822
834
|
deps.restoreFocus();
|
|
823
|
-
resolve({ text: '
|
|
835
|
+
resolve({ text: t('history.openFailed'), error: true });
|
|
824
836
|
});
|
|
825
837
|
const panel = new HistoryBrowserPanel(deps, host, loaded);
|
|
826
838
|
panel.onFinish = text => resolve({ text, error: false });
|
|
827
839
|
const handle = host.open(panel, '90%', '85%');
|
|
828
840
|
if (handle === undefined) {
|
|
829
841
|
// host.open already ran the error path above (focus restored + resolve).
|
|
830
|
-
resolve({ text: '
|
|
842
|
+
resolve({ text: t('history.openFailed'), error: true });
|
|
831
843
|
}
|
|
832
844
|
});
|
|
833
845
|
}
|
package/lib/history.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"history.js","sourceRoot":"","sources":["../src/history.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"history.js","sourceRoot":"","sources":["../src/history.ts"],"names":[],"mappings":"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"}
|
package/lib/hotkeys.js
CHANGED
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
*/
|
|
20
20
|
import { readFileSync, writeFileSync } from 'node:fs';
|
|
21
21
|
import { basename, join } from 'node:path';
|
|
22
|
+
import { t } from "./i18n/index.js";
|
|
22
23
|
import { DEFAULT_KEYBINDINGS } from "./keymap.js";
|
|
23
24
|
import { FieldPanel, PanelHost } from "./panels.js";
|
|
24
25
|
import { EditField } from "./settings.js";
|
|
@@ -31,15 +32,17 @@ export function keybindingsPath(home) {
|
|
|
31
32
|
}
|
|
32
33
|
/** The six app-level bindings the file may remap (order = display order). */
|
|
33
34
|
export const APP_KEY_FIELDS = ['escape', 'ctrlC', 'ctrlD', 'modelPicker', 'subagentViewer', 'queuePanel'];
|
|
34
|
-
/** Action
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
35
|
+
/** Action description for one app key in the `/hotkeys` table. A function, not a module table: the text resolves through `t()` on every call so a language switch re-renders instead of freezing the boot-time language. */
|
|
36
|
+
function keyAction(field) {
|
|
37
|
+
switch (field) {
|
|
38
|
+
case 'escape': return t('hotkeys.action.escape');
|
|
39
|
+
case 'ctrlC': return t('hotkeys.action.ctrlC');
|
|
40
|
+
case 'ctrlD': return t('hotkeys.action.ctrlD');
|
|
41
|
+
case 'modelPicker': return t('hotkeys.action.modelPicker');
|
|
42
|
+
case 'subagentViewer': return t('hotkeys.action.subagentViewer');
|
|
43
|
+
case 'queuePanel': return t('hotkeys.action.queuePanel');
|
|
44
|
+
}
|
|
45
|
+
}
|
|
43
46
|
// ------------------------------------------------------------- validation --
|
|
44
47
|
const MODIFIERS = new Set(['ctrl', 'shift', 'alt', 'super']);
|
|
45
48
|
const NAMED_KEYS = new Set([
|
|
@@ -99,10 +102,10 @@ export function loadKeyBindings(path) {
|
|
|
99
102
|
raw = JSON.parse(text);
|
|
100
103
|
}
|
|
101
104
|
catch (error) {
|
|
102
|
-
return { bindings: {}, warnings: [
|
|
105
|
+
return { bindings: {}, warnings: [t('hotkeys.warn.invalidJson', { label, error: error.message })], exists: true };
|
|
103
106
|
}
|
|
104
107
|
if (raw === null || typeof raw !== 'object' || Array.isArray(raw)) {
|
|
105
|
-
return { bindings: {}, warnings: [
|
|
108
|
+
return { bindings: {}, warnings: [t('hotkeys.warn.notObject', { label })], exists: true };
|
|
106
109
|
}
|
|
107
110
|
const record = raw;
|
|
108
111
|
const bindings = {};
|
|
@@ -112,7 +115,7 @@ export function loadKeyBindings(path) {
|
|
|
112
115
|
if (value === undefined)
|
|
113
116
|
continue;
|
|
114
117
|
if (!isValidKeyId(value)) {
|
|
115
|
-
warnings.push(
|
|
118
|
+
warnings.push(t('hotkeys.warn.invalidKey', { label, field, value: JSON.stringify(value) }));
|
|
116
119
|
}
|
|
117
120
|
else {
|
|
118
121
|
bindings[field] = value;
|
|
@@ -120,7 +123,7 @@ export function loadKeyBindings(path) {
|
|
|
120
123
|
}
|
|
121
124
|
for (const field of Object.keys(record)) {
|
|
122
125
|
if (!APP_KEY_FIELDS.includes(field)) {
|
|
123
|
-
warnings.push(
|
|
126
|
+
warnings.push(t('hotkeys.warn.unknownField', { label, field }));
|
|
124
127
|
}
|
|
125
128
|
}
|
|
126
129
|
return { bindings, warnings, exists: true };
|
|
@@ -141,13 +144,13 @@ export function updateKeyBindingsFile(path, updates) {
|
|
|
141
144
|
fileExisted = true;
|
|
142
145
|
const parsed = JSON.parse(text);
|
|
143
146
|
if (parsed === null || typeof parsed !== 'object' || Array.isArray(parsed)) {
|
|
144
|
-
return
|
|
147
|
+
return t('hotkeys.file.notObject', { label });
|
|
145
148
|
}
|
|
146
149
|
Object.assign(existing, parsed);
|
|
147
150
|
}
|
|
148
151
|
catch (error) {
|
|
149
152
|
if (fileExisted)
|
|
150
|
-
return
|
|
153
|
+
return t('hotkeys.file.parseError', { label, error: error.message });
|
|
151
154
|
// Absent file: start fresh.
|
|
152
155
|
}
|
|
153
156
|
for (const [field, value] of updates) {
|
|
@@ -160,7 +163,7 @@ export function updateKeyBindingsFile(path, updates) {
|
|
|
160
163
|
writeFileSync(path, JSON.stringify(existing, null, 2) + '\n');
|
|
161
164
|
}
|
|
162
165
|
catch (error) {
|
|
163
|
-
return
|
|
166
|
+
return t('hotkeys.file.writeError', { label, error: error.message });
|
|
164
167
|
}
|
|
165
168
|
return undefined;
|
|
166
169
|
}
|
|
@@ -170,7 +173,7 @@ export function parseKeyInput(text) {
|
|
|
170
173
|
if (trimmed === '')
|
|
171
174
|
return { kind: 'unset' };
|
|
172
175
|
if (!isValidKeyId(trimmed)) {
|
|
173
|
-
return { kind: 'error', error:
|
|
176
|
+
return { kind: 'error', error: t('hotkeys.parse.notKeyId') };
|
|
174
177
|
}
|
|
175
178
|
return { kind: 'value', value: trimmed };
|
|
176
179
|
}
|
|
@@ -185,7 +188,7 @@ export function appHotkeyRows(custom) {
|
|
|
185
188
|
return {
|
|
186
189
|
field,
|
|
187
190
|
key: displayKey(override ?? DEFAULT_KEYBINDINGS[field]),
|
|
188
|
-
action:
|
|
191
|
+
action: keyAction(field),
|
|
189
192
|
custom: override !== undefined,
|
|
190
193
|
};
|
|
191
194
|
});
|
|
@@ -204,7 +207,7 @@ export async function openHotkeysManager(tui, theme, options) {
|
|
|
204
207
|
let settle;
|
|
205
208
|
const host = new PanelHost(tui, theme, message => {
|
|
206
209
|
options.restoreFocus();
|
|
207
|
-
settle?.(
|
|
210
|
+
settle?.(t('hotkeys.openFailed', { message }));
|
|
208
211
|
});
|
|
209
212
|
/** Re-read the file after a write and push the change into the running TUI. */
|
|
210
213
|
const applyBindings = () => {
|
|
@@ -220,25 +223,28 @@ export async function openHotkeysManager(tui, theme, options) {
|
|
|
220
223
|
editable: true,
|
|
221
224
|
}));
|
|
222
225
|
const customCount = Object.keys(loaded.bindings).length;
|
|
226
|
+
const customLine = loaded.exists
|
|
227
|
+
? (customCount === 1
|
|
228
|
+
? t('hotkeys.custom.one', { path: options.filePath })
|
|
229
|
+
: t('hotkeys.custom.many', { path: options.filePath, count: customCount }))
|
|
230
|
+
: t('hotkeys.custom.missing', { path: options.filePath });
|
|
223
231
|
const content = [
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
'format: ctrl/shift/alt/super+key · Enter edits · empty input resets to the default',
|
|
228
|
-
'editor: pi-tui defaults — arrows · Ctrl+B/F · Alt+←→ word · Home/End · Ctrl+W/U/K delete · Ctrl+- undo',
|
|
232
|
+
customLine,
|
|
233
|
+
t('hotkeys.formatHint'),
|
|
234
|
+
t('hotkeys.editorHint'),
|
|
229
235
|
...loaded.warnings.map(warning => `! ${warning}`),
|
|
230
236
|
];
|
|
231
237
|
const panel = new FieldPanel(theme, {
|
|
232
|
-
title: ansiFg(theme.palette.accent) + BOLD + '
|
|
238
|
+
title: ansiFg(theme.palette.accent) + BOLD + t('hotkeys.title') + RESET,
|
|
233
239
|
content,
|
|
234
240
|
fields,
|
|
235
241
|
status: () => status,
|
|
236
|
-
footer: '
|
|
242
|
+
footer: t('hotkeys.footer'),
|
|
237
243
|
onEdit: index => edit(fields[index].key),
|
|
238
244
|
onCancel: () => {
|
|
239
245
|
host.close();
|
|
240
246
|
options.restoreFocus();
|
|
241
|
-
resolve(changed ? '
|
|
247
|
+
resolve(changed ? t('hotkeys.updated') : undefined);
|
|
242
248
|
},
|
|
243
249
|
});
|
|
244
250
|
host.open(panel);
|
|
@@ -251,9 +257,14 @@ export async function openHotkeysManager(tui, theme, options) {
|
|
|
251
257
|
const loaded = loadKeyBindings(options.filePath);
|
|
252
258
|
const current = loaded.bindings[field];
|
|
253
259
|
const editor = new EditField(tui, {
|
|
254
|
-
title:
|
|
255
|
-
|
|
256
|
-
|
|
260
|
+
title: current !== undefined
|
|
261
|
+
? t('hotkeys.edit.titleCustom', {
|
|
262
|
+
field,
|
|
263
|
+
defaultValue: displayKey(DEFAULT_KEYBINDINGS[field]),
|
|
264
|
+
custom: displayKey(current),
|
|
265
|
+
})
|
|
266
|
+
: t('hotkeys.edit.title', { field, defaultValue: displayKey(DEFAULT_KEYBINDINGS[field]) }),
|
|
267
|
+
subtitle: t('hotkeys.edit.subtitle'),
|
|
257
268
|
initial: current ?? '',
|
|
258
269
|
parse: parseKeyInput,
|
|
259
270
|
onCommit: async (outcome) => {
|
|
@@ -270,8 +281,8 @@ export async function openHotkeysManager(tui, theme, options) {
|
|
|
270
281
|
changed = true;
|
|
271
282
|
applyBindings();
|
|
272
283
|
status = reset
|
|
273
|
-
?
|
|
274
|
-
:
|
|
284
|
+
? t('hotkeys.status.reset', { field, defaultValue: displayKey(DEFAULT_KEYBINDINGS[field]) })
|
|
285
|
+
: t('hotkeys.status.set', { field, id });
|
|
275
286
|
return undefined;
|
|
276
287
|
}
|
|
277
288
|
if (outcome.kind === 'unset') {
|
|
@@ -283,7 +294,7 @@ export async function openHotkeysManager(tui, theme, options) {
|
|
|
283
294
|
return { error };
|
|
284
295
|
changed = true;
|
|
285
296
|
applyBindings();
|
|
286
|
-
status =
|
|
297
|
+
status = t('hotkeys.status.reset', { field, defaultValue: displayKey(DEFAULT_KEYBINDINGS[field]) });
|
|
287
298
|
return undefined;
|
|
288
299
|
}
|
|
289
300
|
return undefined;
|