diff --git a/.config/nvim/lua/plugins/zen-mode.lua b/.config/nvim/lua/plugins/zen-mode.lua index c676bad..e54d1b6 100644 --- a/.config/nvim/lua/plugins/zen-mode.lua +++ b/.config/nvim/lua/plugins/zen-mode.lua @@ -19,6 +19,10 @@ return { enabled = true, font = '16', }, + wezterm = { + enabled = true, + font = '+4', + }, kitty = { -- INFO: not working in tmux sessions -- unable to get $KITTY_LISTEN_ON to update on attach @@ -27,4 +31,4 @@ return { }, }, }, -} \ No newline at end of file +} diff --git a/.config/tmux/tmux.conf b/.config/tmux/tmux.conf index 413a411..df1926e 100644 --- a/.config/tmux/tmux.conf +++ b/.config/tmux/tmux.conf @@ -11,15 +11,22 @@ set -g update-environment -r setenv -g KITTY_LISTEN_ON $KITTY_LISTEN_ON set -ag update-environment 'KITTY_LISTEN_ON' +# needed for nvim zen-mode +set-option -g allow-passthrough on + set -g escape-time 0 set -g default-terminal "xterm-256color" set -ag terminal-overrides ",xterm-256color:Tc,xterm-kitty:Tc,alacritty:Tc" set -g history-limit 150000 set -g display-time 2500 -set -g status-interval 5 +set -g status-interval 10 set -g focus-events on set -g status-position top +# activity +set -g monitor-activity off +set -g visual-activity off + # Start indexes at 1 instead of 0 set -g base-index 1 set -g pane-base-index 1 @@ -29,8 +36,8 @@ set -g renumber-windows on set -g set-titles on set -g set-titles-string "#I: #W" -setw -g automatic-rename off -set -g allow-rename off +set -g automatic-rename on +set -g allow-rename on # Change prefix from ctrl+b to ctrl+a set -g prefix C-a @@ -52,12 +59,19 @@ bind-key -N "Reload tmux configuration" R source-file ~/.config/tmux/tmux.conf \ # Toggle status bar bind-key -N "Toggle the status bar for current session" S set status +# switch to last session +bind-key BTab switch-client -l + # Pane navigation bind-key -N "Navigate one pane to the left" -n C-h select-pane -L bind-key -N "Navigate one pane down" -n C-j select-pane -D bind-key -N "Navigate one pane up" -n C-k select-pane -U bind-key -N "Navigate one pane to the right" -n C-l select-pane -R +# swap panes +bind-key > swap-pane -D +bind-key < swap-pane -U + # Resize panes bind-key -N "Resize pane left" -r h resize-pane -L 5 bind-key -N "Resize pane down" -r j resize-pane -D 5 @@ -81,18 +95,28 @@ bind-key -N "Create a new window within CWD" c new-window -c "#{pane_current_pat bind-key -N "Move to previous window" -n C-p previous-window bind-key -N "Move to next window" -n C-n next-window +# selection mode +set -g mouse on setw -g mode-keys vi setw -g status-keys vi unbind -T copy-mode-vi Space; unbind -T copy-mode-vi Enter; - -bind-key -N "Begin selection" -T copy-mode-vi 'v' send -X begin-selection -bind-key -N "Copy selection to buffer" -T copy-mode-vi 'y' send -X copy-selection - -set -g mouse on unbind -T copy-mode-vi MouseDragEnd1Pane +bind-key -N "Enter copy mode" -T copy-mode-vi [ copy-mode +bind-key -N "Begin selection" -T copy-mode-vi v send -X begin-selection +bind-key -N "Copy selection to buffer" -T copy-mode-vi y send -X copy-selection +bind-key -N "Copy selection and paste" -T copy-mode-vi Y send -X copy-selection-and-cancel +bind-key -N "Select to start of line" -T copy-mode-vi _ send -X start-of-line +bind-key -N "Select to end of line" -T copy-mode-vi $ send -X end-of-line +bind-key -N "Cancel selection" -T copy-mode-vi Escape send -X cancel + +# paste buffers +bind-key b list-buffers # list buffers +bind-key p paste-buffer -p # paste from buffer +bind-key P choose-buffer # choose a buffer to paste from + ########################## # Plugins ########################## diff --git a/.config/wezterm/wezterm.lua b/.config/wezterm/wezterm.lua index 617f000..438968f 100644 --- a/.config/wezterm/wezterm.lua +++ b/.config/wezterm/wezterm.lua @@ -7,6 +7,30 @@ wezterm.on("gui-startup", function() window:gui_window():maximize() end) +-- required to allow nvim zen-mode to change the font size +wezterm.on("user-var-changed", function(window, pane, name, value) + local overrides = window:get_config_overrides() or {} + if name == "ZEN_MODE" then + local incremental = value:find("+") + local number_value = tonumber(value) + if incremental ~= nil then + while number_value > 0 do + window:perform_action(wezterm.action.IncreaseFontSize, pane) + number_value = number_value - 1 + end + overrides.enable_tab_bar = false + elseif number_value < 0 then + window:perform_action(wezterm.action.ResetFontSize, pane) + overrides.font_size = nil + overrides.enable_tab_bar = true + else + overrides.font_size = number_value + overrides.enable_tab_bar = false + end + end + window:set_config_overrides(overrides) +end) + config = { window_close_confirmation = "NeverPrompt", term = "xterm-256color",