Infelizmente, o tmux suporta apenas valores únicos de 8 bits nas suas ligações de teclas.
Se você estivesse usando uma codificação de 8 bits (comprimento fixo) (por exemplo, ISO 8859-1, ISO 8859-15 etc.), a ligação deveria ter funcionado. Se você estiver usando UTF-8, no entanto, seu ù (U + 00F9) é codificado como dois bytes (C3 B9), e tmux rejeita como um nome de chave desconhecido (se uma chave for maior que um único byte (depois de remover seus prefixos modificadores), ele é processado como o nome de uma chave especial, por exemplo, F1
, PageUp
, KP0
, etc.).
No entanto, se você está desesperado, há um truque grosseiro que você pode tentar:
tmux bind-key -r $(printf '3') display 'c3 prefix binding hack' \; \
bind-key -r $(printf '1') split-window -h
Isso abusa da funcionalidade de ligação de “repetição” usando-a para permanecer no “modo de prefixo” enquanto basicamente ignora o primeiro byte da codificação UTF-8 de ù (hex C3 B9, octal 303 271).
O primeiro byte de ù (octal 303) está vinculado a um comando fictício e o segundo byte (octal 271) é ligado ao comando de destino. Isso requer que você não tenha configurado a opção tmux repeat-time
para zero (para desativar a repetição) e tenha um efeito colateral de deixar tmux em seu modo de repetição para repeat-time
milisegundos (o padrão é 500ms) depois de ter digitado Prefixo ù (este efeito colateral só será perceptível se você digitar imediatamente uma tecla de seta (com ou sem Control ou Meta ) após Prefixo ù - as chaves são as únicas ligações padrão que são “repetíveis”).
O exemplo acima usa o comando printf
shell para gerar os bytes necessários, mas isso não funcionará no seu .tmux.conf
. Se você estava rodando o tmux 1.7, você poderia escrevê-lo assim (no seu .tmux.conf
):
bind-key -r 0xC3 display 'c3 prefix binding hack'
bind-key -r 0xB9 split-window -h
No entanto, essa sintaxe de chave hexadecimal não funciona em tmux 1.6. Então, você precisa organizar os bytes brutos diretamente no arquivo (seu editor de texto pode brigar com você sobre isso, e é fácil cometer um erro) ou usar um shell para ajudá-lo:
run-shell "tmux bind-key -r $(printf '\303') display 'c3 prefix binding hack' \; bind-key -r $(printf '\271') split-window -h"
Observação: run-shell
executa seu comando de forma assíncrona, portanto, as ligações podem não estar disponíveis imediatamente após o início da primeira sessão.