project-compass 3.4.2 → 3.4.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.
Files changed (3) hide show
  1. package/README.md +2 -1
  2. package/package.json +1 -1
  3. package/src/cli.js +11 -3
package/README.md CHANGED
@@ -48,7 +48,8 @@ project-compass [--dir /path/to/workspace] [--studio] [--version]
48
48
  | **Shift+L** | Rerun last command |
49
49
  | **Shift+Q** | Quit app (with confirmation if tasks run) |
50
50
  | ? | Toggle help overlay |
51
- | Ctrl+C | Interrupt running command |
51
+ | Shift+Q | Quit app (with confirmation if tasks run) |
52
+ | **Ctrl+C** | Force quit and kill all background tasks |
52
53
 
53
54
  ## Orbit Task Manager
54
55
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "project-compass",
3
- "version": "3.4.2",
3
+ "version": "3.4.4",
4
4
  "description": "Futuristic project navigator and runner for Node, Python, Rust, and Go",
5
5
  "main": "src/cli.js",
6
6
  "bin": {
package/src/cli.js CHANGED
@@ -455,7 +455,15 @@ function Compass({rootPath, initialView = 'navigator'}) {
455
455
  return;
456
456
  }
457
457
  if (viewMode === 'detail' && normalizedInput && detailShortcutMap.has(normalizedInput)) {
458
- runProjectCommand(detailShortcutMap.get(normalizedInput), selectedProject);
458
+ if (!isNaN(parseInt(normalizedInput))) {
459
+ runProjectCommand(detailShortcutMap.get(normalizedInput), selectedProject);
460
+ return;
461
+ }
462
+ const reserved = ['a', 'p', 'n', 'x', 'e', 'd', 'b', 't', 'q', 'h', 's', 'l', 'c'];
463
+ if (key.shift && !reserved.includes(normalizedInput)) {
464
+ runProjectCommand(detailShortcutMap.get(normalizedInput), selectedProject);
465
+ return;
466
+ }
459
467
  }
460
468
  });
461
469
 
@@ -539,7 +547,7 @@ function Compass({rootPath, initialView = 'navigator'}) {
539
547
  }
540
548
 
541
549
  if (mainView === 'studio') return create(Studio);
542
- if (mainView === 'tasks') return create(TaskManager, {tasks, activeTaskId, setActiveTaskId, renameMode, renameInput, renameCursor, CursorText});
550
+ if (mainView === 'tasks') return create(TaskManager, {tasks, activeTaskId, renameMode, renameInput, renameCursor, CursorText});
543
551
  if (mainView === 'registry') return create(PackageRegistry, {selectedProject, onRunCommand: runProjectCommand, CursorText});
544
552
  if (mainView === 'architect') return create(ProjectArchitect, {onRunCommand: runProjectCommand, CursorText});
545
553
 
@@ -564,7 +572,7 @@ function Compass({rootPath, initialView = 'navigator'}) {
564
572
  create(Box, {flexDirection: 'row', justifyContent: 'space-between'}, create(Text, {bold: true, color: 'yellow'}, `Output: ${activeTask?.name || 'None'}`), create(Text, {dimColor: true}, logOffset ? `Scrolled ${logOffset} lines` : 'Live log view')),
565
573
  create(OutputPanel, {activeTask, logOffset}),
566
574
  create(Box, {marginTop: 1, flexDirection: 'row', justifyContent: 'space-between'}, create(Text, {dimColor: true}, running ? 'Type to feed stdin; Enter: submit.' : 'Run a command or press Shift+T to switch tasks.'), create(Text, {dimColor: true}, `${toggleHint}, Shift+S: Structure Guide`)),
567
- create(Box, {marginTop: 1, flexDirection: 'row', borderStyle: 'round', borderColor: running ? 'green' : 'gray', paddingX: 1}, create(Text, {bold: true, color: 'green'}, running ? ' Stdin buffer ' : ' Input ready '), create(Box, {marginLeft: 1}, create(CursorText, {value: stdinBuffer || (running ? '' : 'Start a command to feed stdin'), cursorIndex: stdinCursor, active: running})))
575
+ create(Box, {marginTop: 1, flexDirection: 'row', borderStyle: 'round', borderColor: running ? 'green' : 'gray', paddingX: 1}, create(Text, {bold: true, color: running ? 'green' : 'white'}, running ? ' Stdin buffer ' : ' Input ready '), create(Box, {marginLeft: 1}, create(CursorText, {value: stdinBuffer || (running ? '' : 'Start a command to feed stdin'), cursorIndex: stdinCursor, active: running})))
568
576
  ),
569
577
  config.showHelpCards && create(Box, {marginTop: 1, flexDirection: 'row', justifyContent: 'space-between', flexWrap: 'wrap'}, [
570
578
  {label: 'Navigation', color: 'magenta', body: ['↑ / ↓ move focus, Enter: details', 'Shift+↑ / ↓ scroll output', 'Shift+H toggle help cards', 'Shift+D detach from task']},