Add grml tmux and zsh configs

This commit is contained in:
seb committed 2026-09-19 12:12:56 +02:00
1 parent 8cbb941af6
commit b1060d52eb
6 files changed
+4194 -18

No files matched your search

+97
View File
@@ -0,0 +1,97 @@
# Filename: /etc/tmux
# Purpose: configuration file for tmux
# Authors: grml-team (grml.org), (c) Michael Prokop <mika at grml.org>,
# Sebastian Boehm <sebastian at sometimesfood.org>
# Bernhard Tittelbach <xro at realraum.at>
# Bug-Reports: see http://grml.org/bugs/
# License: This file is licensed under the GPL v2.
################################################################################
### screen-like keybindings
unbind C-b
set -g prefix C-a
bind-key a send-prefix
bind-key C-a last-window
unbind space
bind-key space next-window
bind-key C-space next-window
bind-key K confirm-before kill-pane
bind-key '\' confirm-before kill-session
#bind-key C-h previous-window
### join the last active pane to the currently active window
bind-key j join-pane -s !
### join the marked pane to the currently active window
### ('bind-key m select-pane -m' is default to mark the current pane)
bind-key J join-pane
### Move current window to session named "bg" (and create session if it does not exist)
bind-key B if-shell '! tmux has-session -t bg' {
new-session -d -s bg
move-window -t bg
}
### Reload Config
bind-key R source-file ~/.tmux.conf \; source-file -q ~/.tmux.conf.local \; display-message "~/.tmux.conf[.local] reloaded"
###rebind keys
bind-key h next-layout
bind-key BSpace previous-window
bind-key tab select-pane -t :.+
### useful custom keybindings
bind-key | command-prompt -p "exec:" "split-window -h '%%'"
bind-key - command-prompt -p "exec:" "split-window -v '%%'"
%if #{>=:#{version},3.1}
bind-key -N 'Select the last (previously selected) window' C-a last-window
bind-key -N 'Select the next window' space next-window
bind-key -N 'Select the next window' C-space next-window
bind-key -N 'Kill pane (with confirmation)' K confirm-before kill-pane
bind-key -N 'Kill session (with confirmation)' '\' confirm-before kill-session
bind-key -N 'Join the last active pane to the currently active window' j join-pane -s !
bind-key -N 'Join the marked pane to the currently active window' J join-pane
bind-key -N 'Move current window to session named "bg" (and create session if it does not exist)' B if-shell "! tmux has-session -t bg" "new-session -d -s bg" \; move-window -t bg
bind-key -N 'Reload config' R source-file ~/.tmux.conf \; source-file -q ~/.tmux.conf.local \; display-message '~/.tmux.conf[.local] reloaded'
bind-key -N 'Select the next layout' h next-layout
bind-key -N 'Select the previous window' BSpace previous-window
bind-key -N 'Select next pane' tab select-pane -t :.+
bind-key -N 'Split window horizontally & prompt for command' | command-prompt -p "exec:" "split-window -h '%%'"
bind-key -N 'Split window vertically & prompt for command' - command-prompt -p "exec:" "split-window -v '%%'"
%endif
### misc options
set -s escape-time 0
set -g default-terminal "screen-256color"
set -g display-panes-time 3000
set -g visual-activity on
set -g mode-keys vi
set -g history-limit 10000 # default: 2000
### set status line appearance
set -g status-style fg=white,bg=black
set -g status-left-length 28
### status-left: @hostname:sessionname
#set -g status-left "#[fg=white,bold]@#h#[fg=red]:#S#[fg=white,nobold] | "
### status-left: username@hostname:sessionname
set -g status-left "#[fg=red,bold]#{user}@#[fg=white]#h#[fg=red]:#S#[fg=white,nobold] | "
### status-right: Date and Time
#set -g status-right '#[fg=yellow]%Y-%m-%d %H:%M'
### status-right: IPs and Date and Time
set -g status-right-length 64
if-shell 'command -v hostname && hostname --help | grep -q -- -I' {
set -g status-right "#[fg=green](net: #(hostname -I | sed -e 's/ [^ ]*:.*$//;s/ / | /g;s/ | $//')) #[fg=yellow]%Y-%m-%d %H:%M"
} {
set -g status-right '#[fg=yellow]%Y-%m-%d %H:%M'
}
### status-right: Time
#set -g status-right "#[fg=yellow]%H:%M"
set-window-option -g window-status-style fg=white,bg=black
set-window-option -g window-status-current-style fg=blue,bg=white
### source user-specific local configuration file
source-file -q ~/.tmux.conf.local
File renamed without changes.