Files

4.2 KiB

dotenv

Персональный конфиг терминального воркспейса: tmux + (опционально) VS Code.

Содержимое:

  • tmux.conf — конфиг tmux: бинды, мышь, тема, сохранитель сессий.
  • vscode-keybindings.json — переопределение клавиш VS Code, чтобы Alt+стрелки уходили в tmux как навигация по панелям (нужно только если используешь VS Code).

Установка tmux

1. Скопировать конфиг

mkdir -p ~/.config/tmux/plugins
cp tmux.conf ~/.config/tmux/tmux.conf

2. Поставить TPM (менеджер плагинов — единственное ставится вручную)

git clone https://github.com/tmux-plugins/tpm ~/.config/tmux/plugins/tpm

3. Запустить tmux и доустановить плагины

tmux new -s main

Внутри tmux нажми:

Ctrl+b  , затем  I

TPM прочитает строки @plugin '...' из tmux.conf и поставит:

  • egel/tmux-gruvbox — тема оформления;
  • tmux-plugins/tmux-resurrect — сохранение/восстановление сессии (Ctrl+b Ctrl+s / Ctrl+b Ctrl+r);
  • tmux-plugins/tmux-continuum — автосохранение каждые 15 сек и автовосстановление при старте.

Если что-то не подхватилось — перезапусти tmux (или Ctrl+b I ещё раз).

Горячие клавиши tmux (из tmux.conf)

Комбинация Действие
Alt+h / Alt+v сплит панели (вертикаль / горизонталь)
Alt+←↑→↓ переключение панели
Alt+Shift+←↑→↓ resize панели
Alt+1..9 выбор окна
Alt+n новое окно
Alt+c / Alt+q убить панель / окно
Alt+d detach
Alt+x перезагрузить конфиг
в copy-mode: v выделить, y скопировать копирование в буфер

Alt+r (старый reload) и Alt+Enter (новое окно) не используются — их ест терминал/ОС (полноэкранный режим Windows). Поэтому reload = Alt+x, окно = Alt+n.

Мышь включена (set -g mouse on): клик по панели, скролл колесом, resize границей.

Проблема с копированием в буфер

Копирование идёт через команду:

clip.exe || wl-copy || xclip -in -selection clipboard
  • на WSL (Windows) работает clip.exe — текст попадает в Windows-буфер;
  • на чистом Linux понадобится wl-clipboard (wl-copy) или xclip:
    sudo apt install xclip          # или: sudo apt install wl-clipboard
    

(Опционально) VS Code — чтобы работали Alt+стрелки

Без этого в терминале VS Code голые Alt+←→ перехватываются как word-jump и не доходят до tmux. Решение — скопировать vscode-keybindings.json в конфиг VS Code:

Windows: %APPDATA%\Code\User\keybindings.json Linux: ~/.config/Code/User/keybindings.json

cp vscode-keybindings.json "$APPDATA/Code/User/keybindings.json"   # Windows
# или на Linux:
cp vscode-keybindings.json ~/.config/Code/User/keybindings.json

Затем в VS Code: Ctrl+Shift+PReload Window.

Файл дополняет, а не заменяет: если в ключбиндингах уже что-то есть — слей вручную, а не перезаписывай вслепую.

Обновление/правки

Держи tmux.conf в репе и правишь его как код. Перенос на другую машину = git clone этого репо + шаги 1–3 выше.

Сам tmux.conf в репе — актуальный «живой» конфиг с этого компа.