O que são chaves válidas para o tmux?

15

Eu estava tentando aprender a usar o bind-key [-cnr] [-t key-table] key command [arguments] better, mas estava tendo alguns problemas para descobrir o que são "chaves " válidas para o comando bind-key .

Eu também tentei man tmux e Google, mas não encontrei nada útil.

  • Como posso descobrir qual é a sintaxe das chaves válidas?
  • Existe um comando de ajuda ou uma página man para isso?
  • Talvez eu não saiba o termo técnico para essas chaves válidas. Existe um termo para essas chaves para que eu possa fazer uma pesquisa no Google melhor?

Por exemplo, eu estava tentando descobrir o que o seguinte remapeamento de comandos significava:

bind-key -n M-S-Left resize-pane -L 2
bind-key -n M-S-Right resize-pane -R 2
bind-key -n M-S-Up resize-pane -U 2
bind-key -n M-S-Down resize-pane -D 4

O -n foi fácil de encontrar na página man (não precisa de prefixo). Mas não consigo descobrir o que significa M-S-Left key.

Eu estou supondo que o mapeamento é alterado e a seta para a esquerda mais o que for que M significa para o comando resize-pane -L 2 .

  • Como descubro o que M significa?
  • E se eu quisesse controlar + qualquer tecla que eu quisesse. É controle = C ?
  • Como posso descobrir isso sem apenas tentar usar teclas aleatórias no meu teclado até que algo funcione?
  • Além disso, como eu confirmo, descubro se não estou mapeando-o para um conjunto de chaves que já é usado?
  • Existe algo como "mostrar todos os aliases" ou algo assim?
  • Como complemento à pergunta, essas chaves válidas são as mesmas para vim ?

O problema é que vim parece ter um script diferente para sua própria linguagem, já que às vezes é necessário e muito mais.

    
por Pinocchio 30.06.2014 / 20:08

2 respostas

20

Chaves disponíveis

Veja man tmux , procure / por KEY BINDINGS :

tmux allows a command to be bound to most keys, with or without a prefix key.

When specifying keys, most represent themselves (for example ‘A’ to ‘Z’). Ctrl keys may be prefixed with ‘C-’ or ‘^’, and Alt (meta) with ‘M-’.

In addition, the following special key names are accepted:

Up, Down, Left, Right, BSpace, BTab, DC (Delete), End, Enter, Escape, F1 to F20, Home, IC (Insert), NPage/PageDown/PgDn, PPage/PageUp/PgUp, Space, and Tab. Note that to bind the ‘"’ or ‘'’ keys, quotation marks are necessary [...]

M-S-Left deve ser Alt + Shift + Esquerda por exemplo.

Listar todas as teclas de atalho

Para listar todas as combinações de teclas, simplesmente pressione Ctrl - b então ? enquanto em uma sessão tmux .

Isso também está documentado em man tmux na seção EXAMPLES :

Typing ‘C-b ?’ lists the current key bindings in the current window; up and down may be used to navigate the list or ‘q’ to exit from it.

Você também pode listar todas as vinculações de teclas por meio de tmux list-keys . Se você quiser verificar as chaves já configuradas, você pode grep para verificar, se já estiver definido.

Pesquisa

Para encontrar mais informações por meio do Google, pesquise nomes de seção em man tmux - basta digitar tmux default key bindings , por exemplo :). Mas geralmente man tmux é suficiente.

Este site é uma documentação muito boa sobre tmux e aparece, se você procurar pela string no Google.

Wiki do Arch também é sempre bom.

    
por 30.06.2014 / 20:18
5

Esta é a lista completa de nomes de chaves 'extendidas' disponíveis no tmux 2.2 ( extraído do fonte ):

    /* Function keys. */
F1
F2
F3
F4
F5
F6
F7
F8
F9
F10
F11
F12
IC
DC
Home
End
NPage
PageDown
PgDn
PPage
PageUp
PgUp
Tab
BTab
Space
BSpace
Enter
Escape
    /* Arrow keys. */
Up
Down
Left
Right
    /* Numeric keypad. */
KP/
KP*
KP-
KP7
KP8
KP9
KP+
KP4
KP5
KP6
KP1
KP2
KP3
KPEnter
KP0
KP.
    /* Mouse keys. */
MouseDown1Pane
MouseDown1Status
MouseDown1Border
MouseDown2Pane
MouseDown2Status
MouseDown2Border
MouseDown3Pane
MouseDown3Status
MouseDown3Border
MouseUp1Pane
MouseUp1Status
MouseUp1Border
MouseUp2Pane
MouseUp2Status
MouseUp2Border
MouseUp3Pane
MouseUp3Status
MouseUp3Border
MouseDrag1Pane
MouseDrag1Status
MouseDrag1Border
MouseDrag2Pane
MouseDrag2Status
MouseDrag2Border
MouseDrag3Pane
MouseDrag3Status
MouseDrag3Border
MouseDragEnd1Pane
MouseDragEnd1Status
MouseDragEnd1Border
MouseDragEnd2Pane
MouseDragEnd2Status
MouseDragEnd2Border
MouseDragEnd3Pane
MouseDragEnd3Status
MouseDragEnd3Border
WheelUpPane
WheelUpStatus
WheelUpBorder
WheelDownPane
WheelDownStatus
WheelDownBorder

Eles podem ser usados além dos caracteres imprimíveis ASCII definidos e combinados com os prefixos M- , C- e S- .

    
por 19.04.2016 / 03:00