mirror of
https://github.com/prdlk/dotfiles.git
synced 2026-11-02 19:32:43 +00:00
chore(config): update terminal, tmux, and starship configurations
This commit is contained in:
1 parent
f2802b3cd8
commit
ce9886c2e7
10 files changed
+236
-50
No files matched your search
+54
-29
@@ -1,6 +1,7 @@
|
||||
# Font Configuration
|
||||
font-size = 13
|
||||
font-family = Victor Mono NF
|
||||
font-size = 11
|
||||
font-family = IoskeleyMonoTerm Nerd Font Mono
|
||||
adjust-cell-height = 15%
|
||||
background-blur = true
|
||||
|
||||
# Window Configuration
|
||||
@@ -24,46 +25,70 @@ confirm-close-surface = false
|
||||
# Disable annoying copied to clipboard
|
||||
app-notifications = no-clipboard-copy,no-config-reload
|
||||
|
||||
# Key bindings for common actions
|
||||
keybind = cmd+c=copy_to_clipboard
|
||||
keybind = cmd+v=paste_from_clipboard
|
||||
keybind = cmd+n=new_window
|
||||
# Ghostty is only a tmux client: tmux owns tabs (windows), splits (panes),
|
||||
# sessions and persistence. `clear` drops every Ghostty default (tabs,
|
||||
# splits, alt+N goto_tab, ctrl+alt+arrow goto_split) so those chords reach
|
||||
# tmux; the ctrl+shift chords below drive tmux through its prefix2
|
||||
# (\x02 = ctrl+b). Keep `clear` above every other keybind line.
|
||||
keybind = clear
|
||||
keybind = ctrl+shift+c=copy_to_clipboard
|
||||
keybind = ctrl+shift+v=paste_from_clipboard
|
||||
keybind = ctrl+plus=increase_font_size:1
|
||||
keybind = ctrl+minus=decrease_font_size:1
|
||||
keybind = ctrl+zero=reset_font_size
|
||||
keybind = ctrl+shift+period=reload_config
|
||||
keybind = shift+enter=text:\n
|
||||
|
||||
# tabs → tmux windows
|
||||
keybind = ctrl+shift+t=text:\x02c
|
||||
keybind = ctrl+shift+w=text:\x02k
|
||||
keybind = ctrl+shift+r=text:\x02r
|
||||
keybind = ctrl+tab=text:\x02n
|
||||
keybind = ctrl+shift+tab=text:\x02p
|
||||
keybind = ctrl+page_down=text:\x02n
|
||||
keybind = ctrl+page_up=text:\x02p
|
||||
keybind = ctrl+shift+arrow_right=text:\x02n
|
||||
keybind = ctrl+shift+arrow_left=text:\x02p
|
||||
keybind = ctrl+shift+k=text:\x02n
|
||||
keybind = ctrl+shift+h=text:\x02p
|
||||
|
||||
# splits → tmux panes
|
||||
keybind = ctrl+shift+l=text:\x02v
|
||||
keybind = ctrl+shift+e=text:\x02h
|
||||
keybind = ctrl+shift+j=text:\x02h
|
||||
keybind = ctrl+shift+x=text:\x02x
|
||||
|
||||
# session picker: tmux-sessionx on prefix o
|
||||
keybind = ctrl+shift+o=text:\x02o
|
||||
keybind = ctrl+shift+enter=text:\x02z
|
||||
keybind = ctrl+shift+z=text:\x02z
|
||||
|
||||
# scrollback, prompt, help
|
||||
keybind = ctrl+shift+f=text:\x02/
|
||||
keybind = ctrl+shift+page_up=text:\x02[
|
||||
keybind = ctrl+shift+p=text:\x02:
|
||||
keybind = ctrl+shift+slash=text:\x02?
|
||||
keybind = ctrl+shift+alt+,=text:\x02q
|
||||
|
||||
# sessions: quitting Ghostty detaches; the session lives on in tmux
|
||||
keybind = ctrl+shift+n=text:\x02C
|
||||
keybind = ctrl+shift+s=text:\x02s
|
||||
keybind = ctrl+shift+q=text:\x02d
|
||||
|
||||
# Tab configuration
|
||||
gtk-titlebar = false
|
||||
|
||||
quit-after-last-window-closed = false
|
||||
quit-after-last-window-closed-delay = 5m
|
||||
# Every window and tab attaches to the tmux session "main", creating it
|
||||
# when missing, so closing Ghostty detaches instead of killing the shells.
|
||||
command = tmux new-session -A -s main
|
||||
# Every window gets its own tmux session (~/.local/bin/ghostty-tmux): it
|
||||
# reclaims the oldest detached session or starts a new one. The first window
|
||||
# after boot starts the tmux server, and tmux-continuum restores the last
|
||||
# saved sessions, so closing Ghostty (or rebooting) never loses the shells.
|
||||
command = shell:$HOME/.local/bin/ghostty-tmux
|
||||
|
||||
# Shell integration
|
||||
shell-integration = detect
|
||||
shell-integration-features = cursor,sudo,title,no-cursor
|
||||
keybind = shift+enter=text:\n
|
||||
|
||||
# Rando stuff
|
||||
gtk-single-instance = true
|
||||
|
||||
|
||||
# ── Herdr sync: Ctrl+Shift chords → prefix (\x02 = ctrl+b) bytes ──
|
||||
# Later keybind lines overwrite earlier/default ones; keep these LAST.
|
||||
# reload_config moves off ctrl+shift+, (taken by Herdr settings below)
|
||||
keybind = ctrl+shift+alt+,=reload_config
|
||||
keybind = ctrl+shift+n=text:\x02%
|
||||
keybind = ctrl+shift+t=text:\x02c
|
||||
keybind = ctrl+tab=text:\x02n
|
||||
keybind = ctrl+shift+tab=text:\x02p
|
||||
keybind = ctrl+shift+f=text:\x02s
|
||||
keybind = ctrl+shift+l=text:\x02.
|
||||
keybind = ctrl+shift+h=text:\x02,
|
||||
keybind = ctrl+shift+j=text:\x02j
|
||||
keybind = ctrl+shift+k=text:\x02k
|
||||
keybind = super+enter=text:\x02N
|
||||
keybind = super+r=text:\x02W
|
||||
keybind = ctrl+shift+r=text:\x02T
|
||||
keybind = ctrl+shift+,=text:\x02S
|
||||
Reference in new issue
Block a user