Created
January 14, 2026 11:46
-
-
Save sergebulaev/9be1b840e16501ab5f033cc57142f5de to your computer and use it in GitHub Desktop.
Tmux config by Sergey Bulaev (bulaev.ai) | Telegram: https://t.me/sergiobulaev
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # ============================================================================ | |
| # Конфиг tmux от Сергея Булаева (bulaev.ai) | |
| # Телеграм канал на русском: https://t.me/sergiobulaev | |
| # ============================================================================ | |
| # | |
| # УСТАНОВКА: | |
| # 1. Установить tmux: sudo apt install tmux (Ubuntu) / brew install tmux (Mac) | |
| # 2. Установить TPM (менеджер плагинов): | |
| # git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm | |
| # 3. Скопировать этот файл в ~/.tmux.conf | |
| # 4. Запустить tmux и нажать: Prefix + I (установит плагины) | |
| # | |
| # ПЕРЕЗАГРУЗКА КОНФИГА: | |
| # - Вне tmux: tmux source ~/.tmux.conf | |
| # - Внутри: Prefix + R (от плагина sensible) | |
| # | |
| # ОБНОВЛЕНИЕ ВНУТРИ СУЩЕСТВУЮЩИХ СЕССИЙ: | |
| # - Prefix + R перезагрузит конфиг в текущей сессии | |
| # - Новые окна/панели получат новые настройки автоматически | |
| # - Для полного обновления: закрыть tmux и открыть заново | |
| # - Или: tmux kill-server && tmux (убьёт все сессии!) | |
| # | |
| # ПОЛЕЗНЫЕ КОМАНДЫ: | |
| # Prefix = Ctrl+b (по умолчанию) | |
| # Prefix + I — установить плагины | |
| # Prefix + U — обновить плагины | |
| # Prefix + R — перезагрузить конфиг | |
| # Prefix + Ctrl+s — сохранить сессию (resurrect) | |
| # Prefix + Ctrl+r — восстановить сессию (resurrect) | |
| # | |
| # ============================================================================ | |
| # --- ПЛАГИНЫ --- | |
| set -g @plugin 'tmux-plugins/tpm' # TPM — менеджер плагинов tmux | |
| set -g @plugin 'tmux-plugins/tmux-resurrect' # Сохранение/восстановление сессий после перезагрузки | |
| set -g @plugin 'tmux-plugins/tmux-continuum' # Автосохранение сессий каждые 15 минут | |
| set -g @plugin 'tmux-plugins/tmux-sensible' # Разумные дефолты (escape-time 0, history 50000 и др.) | |
| set -g @plugin 'tmux-plugins/tmux-yank' # Копирование в системный буфер обмена | |
| set -g @plugin 'christoomey/vim-tmux-navigator' # Навигация Ctrl+hjkl между vim и tmux панелями | |
| set -g @plugin 'dreamsofcode-io/catppuccin-tmux' # Красивая тема Catppuccin | |
| # --- НАСТРОЙКИ CONTINUUM --- | |
| set -g @continuum-restore 'on' # Автовосстановление последней сессии при запуске tmux | |
| set -g @continuum-boot 'on' # Автозапуск tmux при загрузке системы | |
| # --- ТЕРМИНАЛ И МЫШЬ --- | |
| set-option -sa terminal-overrides ",xterm*:Tc" # Включить True Color (16 миллионов цветов) | |
| set -g mouse on # Включить мышь: скролл, клик по панелям, ресайз | |
| # --- РАЗДЕЛЕНИЕ ОКОН (СПЛИТЫ) --- | |
| bind '"' split-window -v -c "#{pane_current_path}" # \" → разделить по горизонтали (сохраняя путь) | |
| bind % split-window -h -c "#{pane_current_path}" # % → разделить по вертикали (сохраняя путь) | |
| bind | split-window -h -c "#{pane_current_path}" # | → разделить по вертикали (альтернатива) | |
| bind - split-window -v -c "#{pane_current_path}" # - → разделить по горизонтали (альтернатива) | |
| # --- РЕЖИМ КОПИРОВАНИЯ (VI-STYLE) --- | |
| set -g mode-keys vi # Использовать Vi-клавиши в режиме копирования | |
| bind-key -T copy-mode-vi v send-keys -X begin-selection # v → начать выделение текста | |
| bind -T copy-mode MouseDragEnd1Pane send-keys -X copy-selection-no-clear # Мышь копирует без сброса выделения | |
| bind -n M-Space copy-mode # Alt+Space → войти в режим копирования (без префикса) | |
| # --- НУМЕРАЦИЯ ОКОН И ПАНЕЛЕЙ --- | |
| set -g base-index 1 # Окна нумеруются с 1 (не с 0) | |
| set -g pane-base-index 1 # Панели нумеруются с 1 | |
| set -g renumber-windows on # Перенумеровать окна при закрытии (1,2,3 вместо 1,3,5) | |
| # --- СТАТУС-БАР --- | |
| set -g status-left "[#{session_name}] " # Показывать имя сессии слева в статус-баре | |
| # --- ЗАГРУЗКА TPM --- | |
| run '~/.tmux/plugins/tpm/tpm' # Запустить TPM (должен быть в конце файла) | |
| # --- ПЕРЕОПРЕДЕЛЕНИЕ ПОСЛЕ TPM --- | |
| set -g history-limit 5000 # Ограничить скроллбэк 5000 строками (sensible ставит 50000) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment