Como copiar e colar com uma área de transferência em tmux

Como copiar e colar com uma área de transferência em tmux
O TMUX é um aplicativo multiplexador de terminal de código aberto para gerenciar com eficiência várias janelas de terminal. As pessoas que usaram anteriormente o aplicativo Terminator estão familiarizadas com a noção de gerenciamento de guias no terminal Linux. Com o TMUX, podemos dividir o terminal em vários painéis. Podemos ajustar esses painéis movendo -se, redimensionando e alternando entre eles. Isso ajuda a conter a dor de gerenciar várias janelas e guias do terminal Gnome.

Em geral, quando você fecha uma conexão SSH, as sessões terminais remotas correspondentes também são fechadas. Aí vem o tmux para obter ajuda, pois preserva essas sessões quando a conexão SSH é encerrada.

Depois de instalar o TMUX, você não encontrará nenhum ícone associado a ele. Não aparecerá como um aplicativo separado; Em vez disso, teremos que invocá -lo do próprio Terminal Gnome. Mais tarde veremos como fazer isso.

Observação: Neste 'Howto', usamos o 'Ctrl+B' como o prefixo; Se você configurou algum outro prefixo, substitua o comando pelo seu prefixo.

O que vamos cobrir?

Neste guia, aprenderemos “como copiar e colar trabalho com a área de transferência em tmux”. Vamos usar o Ubuntu 20.04 como sistema base para este guia.

Pré -requisitos

1. TMUX deve ser instalado em seu sistema.

2. Conectividade da Internet e conta de usuário com privilégios 'sudo'.

Começando…

Uma das tarefas mais frequentes que realizamos em um sistema é copiar e colar conteúdo. Estes podem ser copiando comandos para terminais, texto para um arquivo ou trabalho de documentação. No entanto, no caso do TMUX, isso não é tão simples quanto pressionar 'Ctrl+C' e 'Ctrl+V', o que geralmente fazemos em programas normais do tipo editor de texto. No TMUX, as tarefas de cópia e pasta são um pouco diferentes e, em certa medida.

Copiando e colando entre as janelas do TMUX

Vamos primeiro ver como podemos fazer o trabalho de cola de cópia entre os painéis e sessões tmux. Suponha que tenhamos o seguinte texto aleatório em nossa janela de sessão tmux sess_1:

“Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi Vulputate Rhoncus Urna Id Blandit. Donec Rutrum Risus Erat, Vel Porta Augue Molestie Vel. ”

Copiaremos este texto para outro: 1) TMUX Session 2) TMUX Window/ Tmux Pane. As etapas abaixo serão as mesmas para os dois casos acima:

Passo 1. Pressione o 'prefixo' ('Ctrl+B) e depois pressione '['Para entrar no modo de cópia.

Passo 2. Usando as teclas de seta, localize a posição para começar a copiar de. Use o 'Ctrl+Space Bar' para começar a copiar.

etapa 3. Mova -se com as teclas de seta para a posição do texto que você deseja copiar para. Quando você terminar de selecionar o texto, pressione 'Alt+w' ou 'Ctrl+W' Para copiar o texto para um buffer tmux.

Passo 4. Cole o texto em um painel TMUX/janela/sessão usando o prefixo (por padrão, é 'Ctrl+B' ) seguido pela ']' '.

Vamos levar cada um dos casos acima:

1. Copiando para outro painel/janela do TMUX: Aqui, estamos usando dois painéis para a nossa sessão sess_1.

a) Primeiro inserimos o modo de cópia:

b) Selecione o texto para copiar com as teclas de seta e pressione 'Alt+w' ou 'Ctrl+W'.

c) O texto copiado é colado no segundo painel de sess_1:

2. Copiando para outra sessão do TMUX: Agora criamos outra sessão, sess_2.

Já copiamos texto da sessão sess_1. Usando a tecla Prefix (por padrão, é 'Ctrl+B') seguida por ']', o texto copiado é colado na sessão sess_1 para sess_2:

Copiar de tampão TMUX para Linux System Clipboard

É muito fácil copiar o conteúdo da área de transferência do sistema e colar -o em uma sessão de tmux usando a combinação de chave normal 'Ctrl+Shift+V'. No entanto, o procedimento reverso não é tão direto.

O texto que você copia da sessão do TMUX não está diretamente disponível para colar na área de transferência do sistema. É aqui que 'xclip' vem para o resgate. 'Xclip' Integra os buffers TMUX com sua área de transferência Linux. Agora, para copiar da sessão do TMUX para a área de transferência do sistema, siga as etapas abaixo:

Passo 1. Para instalar 'xclip' No Ubuntu, use o comando:

$ sudo apt install xclip

Já o instalamos:

Passo 2. Agora vamos personalizar tmux.conf Adicionando a linha abaixo:

Bind C -C Run "Tmux salvar -buffer -| xclip -i -sel clipboard"
Bind C-V Run "Tmux Set-buffer" $ (xclip -o-Ssel Clipboard) "; tmux pasta-buffer"

O primeira linha faz o 'prefixo' seguido pela 'Ctrl+C' Para capturar o tampão TMUX atual e alimenta essa saída para 'xclip'. Agora podemos colar o texto copiado da TMUX Clipboard usando a área de transferência do sistema:

O segunda linha Configura o 'prefixo' seguido de 'Ctrl+V' para colar o texto da área de transferência do sistema em uma sessão do TMUX, mas, como afirmado anteriormente, é muito fácil copiar e colar da sessão de transferência do sistema para tmux (usando Ctrl+Shift+V). Portanto, você pode não precisar da segunda linha. Se isso não funcionar, você deve adicionar a segunda linha.

Copiando um painel

Também podemos copiar a parte visível de um painel abrindo o prompt de comando tmux com 'Prefixo'+ ':' e entrando no comando 'Pan-pane'. O painel copiado pode ser colado na sessão de foco.

Gerenciamento de buffer

Para visualizar o conteúdo de um buffer de pasta, use o comando abaixo dentro de uma sessão tmux:

$ tmux show-buffer

Da mesma forma, podemos salvar este buffer em um arquivo de texto, como mostrado abaixo:

$ tmux salv-buffer file1.TXT

Trabalhando com vários buffers de pasta

O TMUX cria um novo buffer de pasta para cada nova operação de cópia. A numeração de buffers começa no primeiro buffer, que recebe o número '0'. Para ver todos os buffers, use o comando:

$ tmux buffers de lista

O 'prefixo' seguido pela ']' ' As chaves vão colar o buffer '0'. Para escolher qual buffer para colar, use o comando:

$ tmux escolha-buffer

Conclusão

Neste guia, aprendemos sobre como copiar e colar operações com o TMUX. Uma explicação mais detalhada de várias operações do TMUX pode ser encontrada nas páginas do Tmux Man ou na página do GitHub do TMUX