OS X copiar colar no Terminal adiciona fdbf bfb9 b083 ao início e final da seleção

5

Para a vida de mim, eu não consigo descobrir isso.

Ao usar um navegador (não importa qual), se eu selecionar texto e, em seguida, colar em Vim ou Neovim ou Nano, vejo caracteres adicionados ao início e ao final da minha seleção.

Por exemplo, seleciono "answer" desta página e, em seguida, cole-o no Terminal que recebo:

??????answer??????

Salvando esses dados colados no arquivo com extensão .bin e abrindo no Vim com este auxiliar de comando automático:

augroup Binary
   au!
   au BufReadPre  *.bin let &bin=1
   au BufReadPost *.bin if &bin | %!xxd
   au BufReadPost *.bin set ft=xxd | endif
   au BufWritePre *.bin if &bin | %!xxd -r
   au BufWritePre *.bin endif
   au BufWritePost *.bin if &bin | %!xxd
   au BufWritePost *.bin set nomod | endif
augroup END

Eu recebo esta saída:

0000000: fdbf bfb9 b083 616e 7377 6572 fdbf bfb9  ......answer....
0000010: b083 0a                                  ...

Então, você pode ver que eu recebo

fdbf bfb9 b083

adicionado ao começo e eu recebo

fdbf bfb9 b083

adicionado ao final.

Alguma idéia sobre o que é isso?

A única mudança importante que me lembro é a atualização do OS X para o Yosemite, então tenho certeza que é potencialmente uma grande atualização.

EDITAR: Eu suspeito que o Terminal seja a fonte do problema. Eu pude usar o iTerm2 sem esse problema.

    
por mrk 25.02.2016 / 16:54

1 resposta

3

Esse erro tem a ver com um recurso conhecido como modo colado entre colchetes [1] . O Neovim não suporta ainda [2] . Você obtém o erro acima se um aplicativo agir como se pudesse suportar esse modo, mas não o suporta.

Em neovim , abra uma janela de terminal. Com 'always' na área de transferência, execute o seguinte:

pbpaste | xxd

Não deve haver erros. Agora execute o seguinte:

cat | xxd

Digite ⌘-v seguido por Ctrl-D .

Você deve esperar para ver os erros. No segundo caso, a entrada está sendo manipulada pelo aplicativo, que envolve a entrada com bytes especiais. Os bytes preenchidos são enviados como stdin.

[1] link

[2] link .

    
por 03.03.2016 / 06:25