set -euo pipefail # Файл конфигурации tmux CONFIG_FILE="${HOME}/.tmux.conf" # Создаём резервную копию существующего конфига (с меткой времени) if [ -f "${CONFIG_FILE}" ]; then TIMESTAMP="$(date +'%Y%m%d%H%M%S')" BACKUP_FILE="${CONFIG_FILE}.bak.${TIMESTAMP}" cp -- "${CONFIG_FILE}" "${BACKUP_FILE}" echo "Резервная копия конфигурации создана: ${BACKUP_FILE}" fi # Добавляем (или обновляем) настройки мыши cat >> "${CONFIG_FILE}" <<'EOF' # --- Начало настроек поддержки мыши для tmux --- # Включаем поддержку мыши (прокрутка, выбор окон, ресайз) set -g mouse on # Разрешаем прокрутку колесом мыши в копипейст­режиме bind -T copy-mode-vi WheelUpPane send-keys -X scroll-up bind -T copy-mode-vi WheelDownPane send-keys -X scroll-down # При обычном режиме: колесо мыши включает копипейст­режим + прокрутка bind -n WheelUpPane if-shell -F "#{mouse_any_flag}" "send-keys -M" "copy-mode -e; send-keys -M" bind -n WheelDownPane if-shell -F "#{mouse_any_flag}" "send-keys -M" "send-keys -M" # --- Конец настроек поддержки мыши для tmux --- EOF echo "Настройки поддержки мыши добавлены в ${CONFIG_FILE}." # Перезагружаем конфигурацию в запущенных сессиях tmux if tmux info &>/dev/null; then tmux source-file "${CONFIG_FILE}" echo "Конфигурация tmux перезагружена." else echo "Запущенных сессий tmux не найдено — настройки вступят в силу при следующем запуске tmux." fi