tmux copy-pipe trunca seleção

3

Eu notei a seleção de truncamento do tubo de cópia do tmux (deixando de fora a última parte da seleção).

Por exemplo:

bind-key -T copy-mode-vi y send-keys -X copy-pipe "xclip -in -sel clipboard"

Às vezes, só copia os primeiros 100 bytes no buffer.

Eu não acho que isso seja um problema com xclip , já que isso acontece com xsel também.

Por algum motivo, canalizar em um arquivo, dormir e passar para o xclip funciona.

bind-key -T copy-mode-vi y \
  send-keys -X copy-pipe "cat > /tmp/tmux_clip.txt" \; \
  run "sleep 0.1" \; \
  run -b "xclip -in -sel clipboard /tmp/tmux_clip.txt > /dev/null" \; \
  display "Clipboard Copy"

Este é um problema conhecido? existem maneiras de resolver isso?

    
por ideasman42 17.02.2018 / 08:45

2 respostas

0

Eu comecei a ver o mesmo problema, mas não tenho uma boa explicação do motivo. No entanto, a solução proposta do tmux > = 2.5 no link resolve o problema para mim. Especificamente, faça seu .tmux.conf ter:

bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel 'xclip -in -selection clipboard'

O bit -and-cancel parece ser o que faz. Se eu apenas usar copy-pipe , não funciona.

    
por 20.04.2018 / 22:57
0

Se você tiver a opção set-clipboard definida como on ou external (padrão) e seu suporte do terminal OSC 52, então copy-pipe também enviará os dados copiados para seu tty usando uma sequência de escape xterm para definir o seleção. O tmux envia corretamente todo o texto copiado, mas seu terminal pode ter um buffer de tamanho limitado para receber os dados. Isso é mencionado em tmux # 1119 .

Isso pode funcionar às vezes porque a chamada para xclip é colocada em segundo plano e pode ser concluída após a operação de configuração da área de transferência interna. Além disso, isso pode ter começado a acontecer recentemente se você atualizou seu terminal e implementou o suporte ao OSC 52 (por exemplo, alacritty ).

Suas opções são:

  • Adicione set-option -g set-clipboard off à sua configuração do tmux
  • defina um limite de tamanho de buffer mais alto em seu terminal, se possível (ou registre um problema) e valide copy-pipe inteiramente

palavras-chave: área de transferência do tmux truncada, o tmux não copia todos os caracteres, cópia do tmux truncada

    
por 06.05.2018 / 19:08

Tags