Я хотел бы иметь возможность прокручивать вверх / вниз на заданную панель с той же привязкой клавиш, что и xterm, т.е. SHIFT + Page Up / Down.
Например, если окно tmux разделено на 2 вертикальные панели, я мог бы прокручивать одну из двух с помощью клавиатуры, а другая не прокручивать.
Является ли это возможным ?
Вот мой tmux.conf:
set -g status off
set -g prefix C-o
unbind C-b
bind C-o send-prefix
# settings -------------------------------------------------------------
setw -g utf8 on
setw -g xterm-keys on
set -g default-terminal "screen-256color"
set-option -g set-titles on
set-option -g set-titles-string '[#S:#I #H] #W'
# auto-set window title
setw -g automatic-rename
setw -g aggressive-resize on
# vim keybinds
set-option -g status-keys vi
set-window-option -g mode-keys vi
# scroll inside the current pane
#bind-key k page-up
#bind-key l page-down
# mouse
set -g mode-mouse on
setw -g mouse-select-window on
setw -g mouse-select-pane on
# scrollback buffer n lines
set -g history-limit 100000
# fixes shift-pageup/shift-pagedown
set -g terminal-overrides 'xterm*:smcup@:rmcup@'
set -g visual-activity on
# faster key repetition
set -s escape-time 0
# activity alert
setw -g monitor-activity on
set -g visual-activity on
# alt+directions navigates through panes
bind-key -n M-left select-pane -L
bind-key -n M-right select-pane -R
bind-key -n M-up select-pane -U
bind-key -n M-down select-pane -D
источник
bind -n Pageup copy-mode -u
я могу нажать PgUp, чтобы перейти в режим копирования и прокрутить вверх, я не могу использовать PgUp для прокрутки вверх.Да, я знаю, что этот вопрос старый, но он не так уж далек в результатах Google, и я потратил много времени, чтобы выяснить, как это сделать, просто потому, что в результатах Google почти нет ответа, только вопросы.
AFAIK прокручивает только одну панель в режиме копирования. Для перехода в режим копирования можно использовать ,
prefix-[
а затем прокручивать с помощьюC-up
иC-down
или вы можете установить свои собственные сочетания клавиш (в конфигурационном файле) , который в Emacs-режиме выглядит следующим образом :Это установит комбинации клавиш Shift+ PageUpи Shift+ PageDownдля прокрутки на половину страницы вверх соответственно вниз в режиме копирования . Когда вы используете vi-mode, вам нужно изменить его на что-то вроде этого:
Теперь, если вы хотите войти в режим копирования «автоматически» и не хотите использовать его,
prefix-[
вы можете добавить следующую строку в ваш файл конфигурации:Это откроет режим копирования и прокрутит (полную) страницу вверх при нажатии Shift+ PageUpв режиме редактирования (режим по умолчанию). Чтобы открыть только режим копирования без прокрутки страницы, просто опустите
-u
. И если вы хотите , чтобы просмотреть полную страницу вверх / вниз или просто линия , которую Вы можете использовать ключевые словаpage-up
,scroll-up
или использовать одну из командчтобы увидеть полный список вариантов использования и привязок клавиш по умолчанию.
источник
tmux
запущена ли у меня версия или нет, но-t
параметр не распознается (однако, -T работает) Возможная опечатка?-n
, так как это ярлык для-T root
Вот решение, которое должно работать только с вашей мышечной памятью, позволяя вам использовать Shift+ PageUpиShift +, PageDownкак в обычном терминале.
Если вы используете Vim, вам нужно условно включить эту привязку, иначе она будет портиться, когда вы используете PageUp, и т. Д. В vim внутри tmux.
(Благодаря решению @ mjwhitta, которое это уточняет)
источник
bind -n Pageup if-shell "$is_vim" "send-keys Pageup" "copy-mode -u; send-keys Pageup"
было необходимо, чтобы Pageup продолжил прокрутку вверх на нескольких нажатиях.