Add tmux and vim configuration files

- Introduced a comprehensive tmux configuration file with custom themes, key bindings, and session management options.
- Added a lightweight vim configuration file utilizing vim-plug for plugin management, including themes, fuzzy finder, file tree, and editing helpers.
This commit is contained in:
Dmitry
2025-12-11 12:03:40 +03:00
commit 89c55ac4ef
14 changed files with 3326 additions and 0 deletions

1886
tmux/.tmux.conf Normal file

File diff suppressed because it is too large Load Diff

682
tmux/.tmux.conf.local Normal file
View File

@@ -0,0 +1,682 @@
# : << 'EOF'
# Oh my tmux!
# 💛🩷💙🖤❤️🤍
# https://github.com/gpakosz/.tmux
# (‑●‑●)> dual licensed under the WTFPL v2 license and the MIT license,
# without any warranty.
# Copyright 2012— Gregory Pakosz (@gpakosz).
# -- bindings ------------------------------------------------------------------
# preserve tmux stock bindings,
# while adding bindings that don't conflict with these stock bindings
# /!\ this disables some of Oh my tmux! bindings described in README.md
# - true
# - false (default)
tmux_conf_preserve_stock_bindings=false
# -- session creation ----------------------------------------------------------
# prompt for session name when creating a new session, possible values are:
# - true
# - false (default)
# - disabled (do not modify new-session bindings)
tmux_conf_new_session_prompt=false
# new session retains current path, possible values are:
# - true
# - false (default)
# - disabled (do not modify new-session bindings)
tmux_conf_new_session_retain_current_path=false
# -- windows & pane creation ---------------------------------------------------
# new window retains current path, possible values are:
# - true
# - false (default)
# - disabled (do not modify new-window bindings)
tmux_conf_new_window_retain_current_path=false
# new window tries to reconnect ssh sessions, possible values are:
# - true
# - false (default)
# - disabled (do not modify new-window bindings)
tmux_conf_new_window_reconnect_ssh=false
# new pane retains current path, possible values are:
# - true (default)
# - false
# - disabled (do not modify split-window bindings)
tmux_conf_new_pane_retain_current_path=true
# new pane tries to reconnect ssh sessions, possible values are:
# - true
# - false (default)
# - disabled (do not modify split-window bindings)
tmux_conf_new_pane_reconnect_ssh=false
# -- display -------------------------------------------------------------------
# RGB 24-bit colour support, possible values are:
# - true
# - false
# - auto (default)
#
# automatic detection relies on the COLORTERM environment variable being defined
# to 'truecolor' or '24bit' or '$ tput colors' answering '16777216'
# see https://github.com/termstandard/colors
tmux_conf_24b_colour=auto
# -- theming -------------------------------------------------------------------
# enable or disable theming:
# - enabled (default)
# - disabled
# when disabled, all tmux_conf_theme_xxx variables are ignored except:
# - tmux_conf_theme_pairing
# - tmux_conf_theme_prefix
# - tmux_conf_theme_mouse
# - tmux_conf_theme_root
# - tmux_conf_theme_synchronized
tmux_conf_theme=enabled
# Nord theme colors
# Polar Night
tmux_conf_theme_colour_1="#2E3440" # nord0 - darkest
tmux_conf_theme_colour_2="#3B4252" # nord1 - dark gray
tmux_conf_theme_colour_3="#4C566A" # nord3 - medium gray
tmux_conf_theme_colour_4="#88C0D0" # nord8 - frost cyan
tmux_conf_theme_colour_5="#EBCB8B" # nord13 - aurora yellow
tmux_conf_theme_colour_6="#2E3440" # nord0 - darkest
tmux_conf_theme_colour_7="#ECEFF4" # nord6 - snow white
tmux_conf_theme_colour_8="#2E3440" # nord0 - darkest
tmux_conf_theme_colour_9="#EBCB8B" # nord13 - aurora yellow
tmux_conf_theme_colour_10="#B48EAD" # nord15 - aurora purple
tmux_conf_theme_colour_11="#A3BE8C" # nord14 - aurora green
tmux_conf_theme_colour_12="#D8DEE9" # nord4 - light snow
tmux_conf_theme_colour_13="#ECEFF4" # nord6 - snow white
tmux_conf_theme_colour_14="#2E3440" # nord0 - darkest
tmux_conf_theme_colour_15="#2E3440" # nord0 - darkest
tmux_conf_theme_colour_16="#BF616A" # nord11 - aurora red
tmux_conf_theme_colour_17="#ECEFF4" # nord6 - snow white
# default theme (ansi)
#tmux_conf_theme_colour_1="colour0"
#tmux_conf_theme_colour_2="colour8"
#tmux_conf_theme_colour_3="colour8"
#tmux_conf_theme_colour_4="colour14"
#tmux_conf_theme_colour_5="colour11"
#tmux_conf_theme_colour_6="colour0"
#tmux_conf_theme_colour_7="colour15"
#tmux_conf_theme_colour_8="colour0"
#tmux_conf_theme_colour_9="colour11"
#tmux_conf_theme_colour_10="colour13"
#tmux_conf_theme_colour_11="colour10"
#tmux_conf_theme_colour_12="colour8"
#tmux_conf_theme_colour_13="colour15"
#tmux_conf_theme_colour_14="colour0"
#tmux_conf_theme_colour_15="colour0"
#tmux_conf_theme_colour_16="colour1"
#tmux_conf_theme_colour_17="colour15"
# window style
tmux_conf_theme_window_fg="default"
tmux_conf_theme_window_bg="default"
# highlight focused pane, possible values are:
# - true
# - false (default)
tmux_conf_theme_highlight_focused_pane=false
# focused pane colours:
tmux_conf_theme_focused_pane_bg="$tmux_conf_theme_colour_2"
# pane border style, possible values are:
# - thin (default)
# - fat
tmux_conf_theme_pane_border_style=thin
# pane borders colours:
tmux_conf_theme_pane_border="$tmux_conf_theme_colour_2"
tmux_conf_theme_pane_active_border="$tmux_conf_theme_colour_4"
%if #{>=:#{version},3.2}
tmux_conf_theme_pane_active_border="#{?pane_in_mode,$tmux_conf_theme_colour_9,#{?synchronize-panes,$tmux_conf_theme_colour_16,$tmux_conf_theme_colour_4}}"
%endif
# pane indicator colours (when you hit <prefix> + q)
tmux_conf_theme_pane_indicator="$tmux_conf_theme_colour_4"
tmux_conf_theme_pane_active_indicator="$tmux_conf_theme_colour_4"
# status line style
tmux_conf_theme_message_fg="$tmux_conf_theme_colour_1"
tmux_conf_theme_message_bg="$tmux_conf_theme_colour_5"
tmux_conf_theme_message_attr="bold"
# status line command style (<prefix> : Escape)
tmux_conf_theme_message_command_fg="$tmux_conf_theme_colour_5"
tmux_conf_theme_message_command_bg="$tmux_conf_theme_colour_1"
tmux_conf_theme_message_command_attr="bold"
# window modes style
tmux_conf_theme_mode_fg="$tmux_conf_theme_colour_1"
tmux_conf_theme_mode_bg="$tmux_conf_theme_colour_5"
tmux_conf_theme_mode_attr="bold"
# status line style
tmux_conf_theme_status_fg="$tmux_conf_theme_colour_3"
tmux_conf_theme_status_bg="$tmux_conf_theme_colour_1"
tmux_conf_theme_status_attr="none"
# terminal title
# - built-in variables are:
# - #{circled_window_index}
# - #{circled_session_name}
# - #{hostname}
# - #{hostname_ssh}
# - #{hostname_full}
# - #{hostname_full_ssh}
# - #{username}
# - #{username_ssh}
tmux_conf_theme_terminal_title="#h ❐ #S ● #I #W"
# window status style
# - built-in variables are:
# - #{circled_window_index}
# - #{circled_session_name}
# - #{hostname}
# - #{hostname_ssh}
# - #{hostname_full}
# - #{hostname_full_ssh}
# - #{username}
# - #{username_ssh}
tmux_conf_theme_window_status_fg="$tmux_conf_theme_colour_3"
tmux_conf_theme_window_status_bg="$tmux_conf_theme_colour_1"
tmux_conf_theme_window_status_attr="none"
tmux_conf_theme_window_status_format="#I #W#{?#{||:#{window_bell_flag},#{window_zoomed_flag}}, ,}#{?window_bell_flag,!,}#{?window_zoomed_flag,Z,}"
#tmux_conf_theme_window_status_format="#{circled_window_index} #W#{?#{||:#{window_bell_flag},#{window_zoomed_flag}}, ,}#{?window_bell_flag,!,}#{?window_zoomed_flag,Z,}"
#tmux_conf_theme_window_status_format="#I #W#{?#{||:#{window_bell_flag},#{window_zoomed_flag}}, ,}#{?window_bell_flag,🔔,}#{?window_zoomed_flag,🔍,}"
# window current status style
# - built-in variables are:
# - #{circled_window_index}
# - #{circled_session_name}
# - #{hostname}
# - #{hostname_ssh}
# - #{hostname_full}
# - #{hostname_full_ssh}
# - #{username}
# - #{username_ssh}
tmux_conf_theme_window_status_current_fg="$tmux_conf_theme_colour_1"
tmux_conf_theme_window_status_current_bg="$tmux_conf_theme_colour_4"
tmux_conf_theme_window_status_current_attr="bold"
tmux_conf_theme_window_status_current_format="#I #W#{?#{||:#{window_bell_flag},#{window_zoomed_flag}}, ,}#{?window_bell_flag,!,}#{?window_zoomed_flag,Z,}"
#tmux_conf_theme_window_status_current_format="#{circled_window_index} #W#{?#{||:#{window_bell_flag},#{window_zoomed_flag}}, ,}#{?window_bell_flag,!,}#{?window_zoomed_flag,Z,}"
#tmux_conf_theme_window_status_current_format="#I #W#{?#{||:#{window_bell_flag},#{window_zoomed_flag}}, ,}#{?window_bell_flag,🔔,}#{?window_zoomed_flag,🔍,}"
# window activity status style
tmux_conf_theme_window_status_activity_fg="default"
tmux_conf_theme_window_status_activity_bg="default"
tmux_conf_theme_window_status_activity_attr="underscore"
# window bell status style
tmux_conf_theme_window_status_bell_fg="$tmux_conf_theme_colour_5"
tmux_conf_theme_window_status_bell_bg="default"
tmux_conf_theme_window_status_bell_attr="blink,bold"
# window last status style
tmux_conf_theme_window_status_last_fg="$tmux_conf_theme_colour_4"
tmux_conf_theme_window_status_last_bg="$tmux_conf_theme_colour_2"
tmux_conf_theme_window_status_last_attr="none"
# status left/right sections separators
tmux_conf_theme_left_separator_main=""
tmux_conf_theme_left_separator_sub="|"
tmux_conf_theme_right_separator_main=""
tmux_conf_theme_right_separator_sub="|"
#tmux_conf_theme_left_separator_main='\uE0B0' # /!\ you don't need to install Powerline
#tmux_conf_theme_left_separator_sub='\uE0B1' # you only need fonts patched with
#tmux_conf_theme_right_separator_main='\uE0B2' # Powerline symbols or the standalone
#tmux_conf_theme_right_separator_sub='\uE0B3' # PowerlineSymbols.otf font, see README.md
# status left/right content:
# - separate main sections with "|"
# - separate subsections with ","
# - built-in variables are:
# - #{battery_bar}
# - #{battery_hbar}
# - #{battery_percentage}
# - #{battery_status}
# - #{battery_vbar}
# - #{circled_session_name}
# - #{hostname_ssh}
# - #{hostname}
# - #{hostname_full}
# - #{hostname_full_ssh}
# - #{loadavg}
# - #{mouse}
# - #{pairing}
# - #{prefix}
# - #{root}
# - #{synchronized}
# - #{uptime_y}
# - #{uptime_d} (modulo 365 when #{uptime_y} is used)
# - #{uptime_h}
# - #{uptime_m}
# - #{uptime_s}
# - #{username}
# - #{username_ssh}
tmux_conf_theme_status_left=" ❐ #S | ↑#{?uptime_y, #{uptime_y}y,}#{?uptime_d, #{uptime_d}d,}#{?uptime_h, #{uptime_h}h,}#{?uptime_m, #{uptime_m}m,} "
#tmux_conf_theme_status_left=" ❐ #S | ↑#{?uptime_y, #{uptime_y}y,}#{?uptime_d, #{uptime_d}d,}#{?uptime_h, #{uptime_h}h,}#{?uptime_m, #{uptime_m}m,} | #{pretty_pane_current_path} "
tmux_conf_theme_status_right=" #{prefix}#{mouse}#{pairing}#{synchronized}#{?battery_status,#{battery_status},}#{?battery_bar, #{battery_bar},}#{?battery_percentage, #{battery_percentage},} , %R , %d %b | #{username}#{root} | #{hostname} "
# status left style
tmux_conf_theme_status_left_fg="$tmux_conf_theme_colour_6,$tmux_conf_theme_colour_7,$tmux_conf_theme_colour_8"
tmux_conf_theme_status_left_bg="$tmux_conf_theme_colour_9,$tmux_conf_theme_colour_10,$tmux_conf_theme_colour_11"
tmux_conf_theme_status_left_attr="bold,none,none"
# status right style
tmux_conf_theme_status_right_fg="$tmux_conf_theme_colour_12,$tmux_conf_theme_colour_13,$tmux_conf_theme_colour_14"
tmux_conf_theme_status_right_bg="$tmux_conf_theme_colour_15,$tmux_conf_theme_colour_16,$tmux_conf_theme_colour_17"
tmux_conf_theme_status_right_attr="none,none,bold"
# pairing indicator
tmux_conf_theme_pairing="⚇" # U+2687
tmux_conf_theme_pairing_fg="none"
tmux_conf_theme_pairing_bg="none"
tmux_conf_theme_pairing_attr="none"
# prefix indicator
tmux_conf_theme_prefix="⌨" # U+2328
tmux_conf_theme_prefix_fg="none"
tmux_conf_theme_prefix_bg="none"
tmux_conf_theme_prefix_attr="none"
# mouse indicator
tmux_conf_theme_mouse="↗" # U+2197
tmux_conf_theme_mouse_fg="none"
tmux_conf_theme_mouse_bg="none"
tmux_conf_theme_mouse_attr="none"
# root indicator
tmux_conf_theme_root="!"
tmux_conf_theme_root_fg="none"
tmux_conf_theme_root_bg="none"
tmux_conf_theme_root_attr="bold,blink"
# synchronized indicator
tmux_conf_theme_synchronized="⚏" # U+268F
tmux_conf_theme_synchronized_fg="none"
tmux_conf_theme_synchronized_bg="none"
tmux_conf_theme_synchronized_attr="none"
# battery bar symbols
tmux_conf_battery_bar_symbol_full="◼"
tmux_conf_battery_bar_symbol_empty="◻"
#tmux_conf_battery_bar_symbol_full="♥"
#tmux_conf_battery_bar_symbol_empty="·"
# battery bar length (in number of symbols), possible values are:
# - auto
# - a number, e.g. 5
tmux_conf_battery_bar_length="auto"
# battery bar palette, possible values are:
# - gradient (default)
# - heat
# - "colour_full_fg,colour_empty_fg,colour_bg"
# - gradient(colour_fg_1,colour_fg_2,...,colour_fg_n)
tmux_conf_battery_bar_palette="gradient"
#tmux_conf_battery_bar_palette="#d70000,#e4e4e4,#000000" # red, white, black
#tmux_conf_battery_bar_palette="gradient(#00afff,#47a2ff,#7c91ff,#ac7afb,#d65be2,#e163df,#eb6cdd,#f475db,#ec9ff1,#eac3fe,#efe2ff,#ffffff)"
# battery hbar palette, possible values are:
# - gradient (default)
# - heat
# - "colour_low,colour_half,colour_full"
# - gradient(colour_fg_1,colour_fg_2,...,colour_fg_n)
tmux_conf_battery_hbar_palette="gradient"
#tmux_conf_battery_hbar_palette="#d70000,#ff5f00,#5fff00" # red, orange, green
#tmux_conf_battery_hbar_palette="gradient(#00afff,#47a2ff,#7c91ff,#ac7afb,#d65be2,#e163df,#eb6cdd,#f475db,#ec9ff1,#eac3fe,#efe2ff,#ffffff)"
# battery vbar palette, possible values are:
# - gradient (default)
# - heat
# - "colour_low,colour_half,colour_full"
# - gradient(colour_fg_1,colour_fg_2,...,colour_fg_n)
tmux_conf_battery_vbar_palette="gradient"
#tmux_conf_battery_vbar_palette="#d70000,#ff5f00,#5fff00" # red, orange, green
#tmux_conf_battery_vbar_palette="gradient(#00afff,#47a2ff,#7c91ff,#ac7afb,#d65be2,#e163df,#eb6cdd,#f475db,#ec9ff1,#eac3fe,#efe2ff,#ffffff)"
# symbols used to indicate whether battery is charging or discharging
tmux_conf_battery_status_charging="↑" # U+2191
tmux_conf_battery_status_discharging="↓" # U+2193
#tmux_conf_battery_status_charging="🔌" # U+1F50C
#tmux_conf_battery_status_discharging="🔋" # U+1F50B
# clock style (when you hit <prefix> + t)
# you may want to use %I:%M %p in place of %R in tmux_conf_theme_status_right
tmux_conf_theme_clock_colour="$tmux_conf_theme_colour_4"
tmux_conf_theme_clock_style="24"
# -- clipboard -----------------------------------------------------------------
# in copy mode, copying selection also copies to the OS clipboard
# - true
# - false (default)
# - disabled
# on Linux, this requires xsel, xclip or wl-copy
tmux_conf_copy_to_os_clipboard=false
# -- urlscan -------------------------------------------------------------------
# options passed to urlscan
tmux_conf_urlscan_options="--compact --dedupe"
# -- user customizations -------------------------------------------------------
# this is the place to override or undo settings
# increase history size
set -g history-limit 50000
# start with mouse mode enabled (для прокрутки тачпадом)
set -g mouse on
# force Vi mode
# really you should export VISUAL or EDITOR environment variable, see manual
#set -g status-keys vi
#set -g mode-keys vi
# replace C-b by C-a instead of using both prefixes
# set -gu prefix2
# unbind C-a
# unbind C-b
# set -g prefix C-a
# bind C-a send-prefix
# if you don't want Oh my tmux! to alter a binding or a setting, use #!important
# bind c new-window -c '#{pane_current_path}' #!important
# display a message after toggling mouse support
bind m run "cut -c3- '#{TMUX_CONF}' | sh -s _toggle_mouse" \; display 'mouse #{?#{mouse},on,off}'
# move status line to top
#set -g status-position top
# -- custom key bindings -------------------------------------------------------
# Alt+стрелки для переключения между окнами (вкладками)
bind -n M-Left previous-window
bind -n M-Right next-window
bind -n M-Up switch-client -p
bind -n M-Down switch-client -n
# Навигация между панелями - поддержка русской раскладки (р/о/л/д = h/j/k/l)
bind -r р select-pane -L # h -> р (влево)
bind -r о select-pane -D # j -> о (вниз)
bind -r л select-pane -U # k -> л (вверх)
bind -r д select-pane -R # l -> д (вправо)
# Изменение размера панелей - поддержка русской раскладки
bind -r Р resize-pane -L 2 # H -> Р
bind -r О resize-pane -D 2 # J -> О
bind -r Л resize-pane -U 2 # K -> Л
bind -r Д resize-pane -R 2 # L -> Д
# Навигация между окнами - русская раскладка
bind -r C-р previous-window # C-h -> C-р
bind -r C-д next-window # C-l -> C-д
# Создание нового окна - русская раскладка
bind с new-window # c -> с
# Поиск сессии - русская раскладка
bind C-а command-prompt -p find-session 'switch-client -t %%' # C-f -> C-а
# Ctrl+Alt+h или Ctrl+Alt+р для показа гайда по горячим клавишам (в новом окне с прокруткой)
bind -n C-M-h new-window -n "TMUX Шпаргалка" "cat << 'EOF' | less -R
╔═══════════════════════════════════════════════════════════════════════════╗
║ TMUX ГОРЯЧИЕ КЛАВИШИ (prefix = Ctrl+b или Ctrl+a) ║
╚═══════════════════════════════════════════════════════════════════════════╝
📋 ОСНОВНЫЕ КОМАНДЫ:
prefix + ? - Показать все горячие клавиши
prefix + : - Командная строка tmux
prefix + r (к) - Перезагрузить конфигурацию
prefix + e (у) - Редактировать ~/.tmux.conf.local
Ctrl+l - Очистить экран и историю
🪟 УПРАВЛЕНИЕ ОКНАМИ (вкладками):
prefix + c (с) - Создать новое окно
prefix + , - Переименовать текущее окно
prefix + & - Закрыть текущее окно
prefix + n (т) - Следующее окно
prefix + p (з) - Предыдущее окно
prefix + Ctrl+h (р) - Предыдущее окно
prefix + Ctrl+l (д) - Следующее окно
prefix + Tab - Последнее активное окно
prefix + 0-9 - Переключиться на окно по номеру
Alt + ←/→ - Переключение между окнами
Alt + ↑/↓ - Переключение между сессиями
🔲 УПРАВЛЕНИЕ ПАНЕЛЯМИ:
prefix + - - Разделить по горизонтали
prefix + _ - Разделить по вертикали
prefix + h/j/k/l (р/о/л/д) - Навигация между панелями (vim-style)
prefix + H/J/K/L (Р/О/Л/Д) - Изменить размер панели
prefix + < - Поменять панели местами (влево)
prefix + > - Поменять панели местами (вправо)
prefix + + - Развернуть панель на весь экран
prefix + x (ч) - Закрыть текущую панель
prefix + ! - Превратить панель в окно
prefix + z (я) - Zoom панели (toggle)
prefix + q (й) - Показать номера панелей
📋 КОПИРОВАНИЕ И ВСТАВКА:
prefix + Enter - Режим копирования
prefix + b (и) - Список буферов
prefix + p (з) - Вставить из буфера
prefix + P (З) - Выбрать буфер для вставки
В режиме копирования:
v (м) - Начать выделение
y (н) - Скопировать выделенное
Escape - Выйти из режима копирования
🔧 СЕССИИ:
prefix + Ctrl+c (с) - Создать новую сессию
prefix + Ctrl+f (а) - Найти сессию
prefix + d (в) - Отключиться от сессии
prefix + D (В) - Выбрать сессию для отключения
prefix + s (ы) - Список сессий
🖱️ ДРУГОЕ:
prefix + m (ь) - Включить/выключить мышь
prefix + t (е) - Показать часы
prefix + U (Г) - Открыть URL (urlscan/urlview)
prefix + F (А) - Facebook PathPicker (если установлен)
Ctrl+Alt+h (р) - Показать этот гайд
💡 Используйте стрелки ↑/↓ или j/k для прокрутки
💡 Нажмите q для выхода
💡 Русская раскладка поддерживается! (в скобках указаны русские буквы)
EOF
"
# Дубликат для русской раскладки Ctrl+Alt+р
bind -n C-M-р new-window -n "TMUX Шпаргалка" "cat << 'EOF' | less -R
╔═══════════════════════════════════════════════════════════════════════════╗
║ TMUX ГОРЯЧИЕ КЛАВИШИ (prefix = Ctrl+b или Ctrl+a) ║
╚═══════════════════════════════════════════════════════════════════════════╝
📋 ОСНОВНЫЕ КОМАНДЫ:
prefix + ? - Показать все горячие клавиши
prefix + : - Командная строка tmux
prefix + r (к) - Перезагрузить конфигурацию
prefix + e (у) - Редактировать ~/.tmux.conf.local
Ctrl+l - Очистить экран и историю
🪟 УПРАВЛЕНИЕ ОКНАМИ (вкладками):
prefix + c (с) - Создать новое окно
prefix + , - Переименовать текущее окно
prefix + & - Закрыть текущее окно
prefix + n (т) - Следующее окно
prefix + p (з) - Предыдущее окно
prefix + Ctrl+h (р) - Предыдущее окно
prefix + Ctrl+l (д) - Следующее окно
prefix + Tab - Последнее активное окно
prefix + 0-9 - Переключиться на окно по номеру
Alt + ←/→ - Переключение между окнами
Alt + ↑/↓ - Переключение между сессиями
🔲 УПРАВЛЕНИЕ ПАНЕЛЯМИ:
prefix + - - Разделить по горизонтали
prefix + _ - Разделить по вертикали
prefix + h/j/k/l (р/о/л/д) - Навигация между панелями (vim-style)
prefix + H/J/K/L (Р/О/Л/Д) - Изменить размер панели
prefix + < - Поменять панели местами (влево)
prefix + > - Поменять панели местами (вправо)
prefix + + - Развернуть панель на весь экран
prefix + x (ч) - Закрыть текущую панель
prefix + ! - Превратить панель в окно
prefix + z (я) - Zoom панели (toggle)
prefix + q (й) - Показать номера панелей
📋 КОПИРОВАНИЕ И ВСТАВКА:
prefix + Enter - Режим копирования
prefix + b (и) - Список буферов
prefix + p (з) - Вставить из буфера
prefix + P (З) - Выбрать буфер для вставки
В режиме копирования:
v (м) - Начать выделение
y (н) - Скопировать выделенное
Escape - Выйти из режима копирования
🔧 СЕССИИ:
prefix + Ctrl+c (с) - Создать новую сессию
prefix + Ctrl+f (а) - Найти сессию
prefix + d (в) - Отключиться от сессии
prefix + D (В) - Выбрать сессию для отключения
prefix + s (ы) - Список сессий
🖱️ ДРУГОЕ:
prefix + m (ь) - Включить/выключить мышь
prefix + t (е) - Показать часы
prefix + U (Г) - Открыть URL (urlscan/urlview)
prefix + F (А) - Facebook PathPicker (если установлен)
Ctrl+Alt+h (р) - Показать этот гайд
💡 Используйте стрелки ↑/↓ или j/k для прокрутки
💡 Нажмите q для выхода
💡 Русская раскладка поддерживается! (в скобках указаны русские буквы)
EOF
"
# -- tpm -----------------------------------------------------------------------
# while I don't use tpm myself, many people requested official support so here
# is a seamless integration that automatically installs plugins in parallel
# whenever a plugin introduces a variable to be used in 'status-left' or
# 'status-right', you can use it in 'tmux_conf_theme_status_left' and
# 'tmux_conf_theme_status_right' variables.
# by default, launching tmux will update tpm and all plugins
# - true (default)
# - false
tmux_conf_update_plugins_on_launch=true
# by default, reloading the configuration will update tpm and all plugins
# - true (default)
# - false
tmux_conf_update_plugins_on_reload=true
# by default, reloading the configuration will uninstall tpm and plugins when no
# plugins are enabled
# - true (default)
# - false
tmux_conf_uninstall_plugins_on_reload=true
# /!\ the tpm bindings differ slightly from upstream:
# - installing plugins: <prefix> + I
# - uninstalling plugins: <prefix> + Alt + u
# - updating plugins: <prefix> + u
# /!\ do not add set -g @plugin 'tmux-plugins/tpm'
# /!\ do not add run '~/.tmux/plugins/tpm/tpm'
# /!\ the 'set -g @tpm_plugins' syntax is not supported
# to enable a plugin, use the 'set -g @plugin' syntax:
# visit https://github.com/tmux-plugins for available plugins
#set -g @plugin 'tmux-plugins/tmux-copycat'
#set -g @plugin 'tmux-plugins/tmux-cpu'
#set -g @plugin 'tmux-plugins/tmux-resurrect'
#set -g @plugin 'tmux-plugins/tmux-continuum'
#set -g @continuum-restore 'on'
# -- custom variables ----------------------------------------------------------
# to define a custom #{foo} variable, define a POSIX shell function between the
# '# EOF' and the '# "$@"' lines. Please note that the opening brace { character
# must be on the same line as the function name otherwise the parse won't detect
# it.
#
# then, use #{foo} in e.g. the 'tmux_conf_theme_status_left' or the
# 'tmux_conf_theme_status_right' variables.
# ------------------------------------------------------------------------------
# # /!\ do not remove the following line
# EOF
#
# # /!\ do not "uncomment" the functions: the leading "# " characters are needed
#
# # usage: #{weather}
# weather() { # see https://github.com/chubin/wttr.in#one-line-output
# curl -f -s -m 2 'wttr.in?format=3' || printf '\n' # /!\ make sure curl is installed
# sleep 900 # sleep for 15 minutes, throttle network requests whatever the value of status-interval
# }
#
# # usage: #{online}
# online() {
# ping -c 1 1.1.1.1 >/dev/null 2>&1 && printf '✔' || printf '✘'
# }
#
# # usage: #{wan_ip_v4}
# wan_ip_v4() {
# curl -f -s -m 2 -4 ifconfig.me
# sleep 300 # sleep for 5 minutes, throttle network requests whatever the value of status-interval
# }
#
# # usage: #{wan_ip_v6}
# wan_ip_v6() {
# curl -f -s -m 2 -6 ifconfig.me
# sleep 300 # sleep for 5 minutes, throttle network requests whatever the value of status-interval
# }
#
# # usage: #{github_stars}, #{github_stars tmux/tmux}, ...
# github_stars() {
# repository=${1##*https://github.com/}
# repository=${repository%% *}
# repository=${repository%%.git}
# url="https://api.github.com/repos/${repository:-gpakosz/.tmux}"
# curl -s "$url" | perl -MJSON::PP=decode_json -CO -0777 -E '$response = decode_json(readline *STDIN); say ($response->{stargazers_count})'
# sleep 300 # sleep for 5 minutes, throttle network requests whatever the value of status-interval
# }
#
# "$@"
# # /!\ do not remove the previous line
# # do not write below this line