betterterm 2.0.2 → 2.0.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.
package/README.md CHANGED
@@ -5,7 +5,7 @@ Terminal IDE setup: Ghostty + tmux + yazi + carbonyl browser.
5
5
  ## Install
6
6
 
7
7
  ```bash
8
- npx betterterm
8
+ npx betterterm@latest
9
9
  ```
10
10
 
11
11
  ## Requirements
@@ -3,6 +3,11 @@
3
3
  # Launch tmux with betterterm
4
4
  command = ~/.local/bin/betterterm.sh
5
5
 
6
+ # Let Ghostty handle copy/paste natively (no tmux flash)
7
+ clipboard-read = allow
8
+ clipboard-write = allow
9
+ copy-on-select = clipboard
10
+
6
11
  # Cmd shortcuts → tmux (sends Ctrl+B prefix then the key)
7
12
  keybind = cmd+e=text:\x02e
8
13
  keybind = cmd+shift+tab=text:\x02\t
package/configs/tmux.conf CHANGED
@@ -10,6 +10,12 @@ set -ga update-environment "TERM TERM_PROGRAM TERM_PROGRAM_VERSION"
10
10
  # Mouse support (resize panes by dragging borders, click to focus, scroll)
11
11
  set -g mouse on
12
12
 
13
+ # Clipboard: let Ghostty handle copy natively, disable tmux copy-mode on select
14
+ set -g copy-command "pbcopy"
15
+ set -s set-clipboard on
16
+ bind -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "pbcopy"
17
+ bind -T copy-mode MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "pbcopy"
18
+
13
19
  # Start window/pane numbering at 1
14
20
  set -g base-index 1
15
21
  setw -g pane-base-index 1
@@ -52,7 +58,40 @@ bind a setw synchronize-panes
52
58
 
53
59
  # Help menu (Cmd+?)
54
60
  unbind ?
55
- bind ? run-shell "~/.local/bin/help-menu.sh"
61
+ bind ? display-menu -T "#[align=centre,bold] betterterm " -x C -y C \
62
+ "" \
63
+ "#[bold]── Files & Browser ──" "" "" \
64
+ "File Explorer Cmd+E" e "run-shell '~/.local/bin/toggle-yazi.sh'" \
65
+ "Toggle Browser Cmd+Y" b "run-shell '~/.local/bin/toggle-browser.sh'" \
66
+ "Close Browser Cmd+Sh+Y" B "run-shell '~/.local/bin/close-browser.sh'" \
67
+ "Browser URL Bar Cmd+L" l "run-shell '~/.local/bin/browser-nav.sh'" \
68
+ "" \
69
+ "#[bold]── Layout Presets ──" "" "" \
70
+ "Focus 1 pane Cmd+1" 1 "run-shell '~/.local/bin/layout.sh 1'" \
71
+ "Dual 2 panes Cmd+2" 2 "run-shell '~/.local/bin/layout.sh 2'" \
72
+ "Triple 3 panes Cmd+3" 3 "run-shell '~/.local/bin/layout.sh 3'" \
73
+ "Quad 4 panes Cmd+4" 4 "run-shell '~/.local/bin/layout.sh 4'" \
74
+ "" \
75
+ "#[bold]── Panes ──" "" "" \
76
+ "Zoom Toggle Cmd+Z" z "resize-pane -Z" \
77
+ "Broadcast Toggle Cmd+Sh+B" a "setw synchronize-panes" \
78
+ "Swap Up Cmd+Sh+Up" K "swap-pane -U" \
79
+ "Swap Down Cmd+Sh+Down" J "swap-pane -D" \
80
+ "Swap Left Cmd+Sh+Left" H "run-shell '~/.local/bin/swap-pane.sh left'" \
81
+ "Swap Right Cmd+Sh+Right" L "run-shell '~/.local/bin/swap-pane.sh right'" \
82
+ "" \
83
+ "#[bold]── Windows ──" "" "" \
84
+ "New Window Cmd+T" c "new-window" \
85
+ "Next Window Cmd+]" n "next-window" \
86
+ "Previous Window Cmd+[" p "previous-window" \
87
+ "Split Vertical Cmd+\\" "|" "split-window -h -c '#{pane_current_path}'" \
88
+ "Split Horizontal Cmd+-" - "split-window -v -c '#{pane_current_path}'" \
89
+ "" \
90
+ "#[bold]── Sessions ──" "" "" \
91
+ "Save Session Cmd+S" S "run-shell '~/.local/bin/session-save.sh'" \
92
+ "Load Session Cmd+O" O "run-shell '~/.local/bin/session-load.sh'" \
93
+ "" \
94
+ "Reload Config Cmd+R" r "source-file ~/.tmux.conf \\; display 'Config reloaded'"
56
95
 
57
96
  # Pane swap
58
97
  bind K swap-pane -U
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "betterterm",
3
- "version": "2.0.2",
3
+ "version": "2.0.4",
4
4
  "description": "Terminal IDE setup: Ghostty + tmux + yazi + carbonyl browser",
5
5
  "bin": {
6
6
  "betterterm": "bin/cli.js"