Вибір тексту в режимі копіювання Tmux


73

Я запускаю Tmux у режимі Vi. Vi-подібна навігація в режимі копіювання працює чудово. Однак я не можу вибрати жоден текст. Ні v, ні V не переходять у режим вибору тексту, подібного до Vi.

Що я пропускаю?

До речі, чи можна відображати номери рядків у режимі копіювання?

PS: Я запускаю Tmux на Mac OS із оболонкою Z

Відповіді:


90

Коротка відповідь: пробіл починає вибір і вводить копії.

Для подальшої довідки я отримав це зі сторінки tmux man:

       Function                vi             emacs
       Back to indentation     ^              M-m
       Clear selection         Escape         C-g
       Copy selection          Enter          M-w
       Cursor down             j              Down
       Cursor left             h              Left
       Cursor right            l              Right
       Cursor to bottom line   L
       Cursor to middle line   M              M-r
       Cursor to top line      H              M-R
       Cursor up               k              Up
       Delete entire line      d              C-u
       Delete to end of line   D              C-k
       End of line             $              C-e
       Goto line               :              g
       Half page down          C-d            M-Down
       Half page up            C-u            M-Up
       Next page               C-f            Page down
       Next word               w              M-f
       Paste buffer            p              C-y
       Previous page           C-b            Page up
       Previous word           b              M-b
       Quit mode               q              Escape
       Scroll down             C-Down or J    C-Down
       Scroll up               C-Up or K      C-Up
       Search again            n              n
       Search backward         ?              C-r
       Search forward          /              C-s
       Start of line           0              C-a
       Start selection         Space          C-Space
       Transpose chars                        C-t

Оновлення: tmux list-keysКоманда також перелічить всі наявні у вас прив’язки клавіш.


70

Ви використовуєте пробіл для початку вибору та вводите для кінця.

копія:

  • Ctrlb[
  • Space
  • Enter

вставити:

  • Ctrlb]

1
Це має бути відповіддю. Це можна вдосконалити, пояснивши вхід / вихід режиму копіювання.
mcsilvio

2
Чудова, коротка відповідь. Лише зауваження колегам vi [m] neophytes: Якщо ви використовуєте модальний редактор або командний рядок, вам потрібно переконатися, що ви перебуваєте в режимі вставки, перш ніж намагатися вставити за допомогою aformenposed Ctrl+b+]. Зрозуміло в ретроспективі, але кілька разів відправляло мене туди-сюди, поки я не вбрався.
JM Janzen

Я думаю, що форматування та стислість стануть приголомшливою заміною для розділу "коротка відповідь" у моїй відповіді. Чи є спосіб комбінувати відповіді, які надають кредит там, де належить кредит?
bluehavana

хм ... далі роздумуючи, я думаю, дві відповіді є більш підходящими, просто хотілося б, щоб це було як-небудь вище складки.
bluehavana

23

Ви також можете налаштувати свій файл .tmux.conf, додавши:

# Use v to trigger selection    
bind-key -T copy-mode-vi v send-keys -X begin-selection

# Use y to yank current selection
bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel

що дозволить «v» і «y» перейти у візуальний режим і скопіювати, як у vim.

( Джерело )


1
Я отримую "команду не знайдено: bind-key" у tmux 1.9a
Олів'є

На жаль, я помістив її у свій .zshrc випадково, nvm :)
Олів'є

7
Цей матеріал змінився в нових версіях Tmux. Заразbind-key -T copy-mode-vi ...
Стівен Лу

21

Вища (2.4+) tmux змінила спосіб прив'язки для початку вибору. Щоб створити прив'язку для того, що ОП просить використовувати -Tклавіші використання та відправки -X:

# Use v to trigger selection    
bind-key -T copy-mode-vi v send-keys -X begin-selection

# Use y to yank current selection
bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel

Мій режим копіювання tmux просто перестав працювати повністю, і я не міг його розробити, це виправлено.
GTF

tmuxоновлення ламають мої конфігурації частіше, ніж я хотів би ... :-(
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件

2

Я вважаю, що вхід у режим vi легко є моїм вузьким місцем, для якого я використовую наступне:

setw -g mode-keys vi
set-window-option -g mode-keys vi  
unbind [
bind-key -n F2 copy-mode
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.