Copiando e colando com URxvt

21

Estou usando o URxvt 9.20 no debian jessie e estou procurando uma maneira de copiar & colar texto como eu estava acostumado com o terminal gnome ( Ctrl + Inserir para copiar, Shift + Inserir para colar).

Funciona dentro de diferentes consoles de urxvt, não funciona entre, por exemplo, urxvt e iceweasel embora.

Eu tentei de acordo com o manual em archlinux , mas não funciona (mesmo embora eu realmente não queira usar Shift + Ctrl + C / V valeu a pena tentar) .

.Xresources:

! ******************
! urxvt config
! ******************

! Disable Perl extension
! If you do not use the Perl extension features, you can improve the security
! and speed by disabling Perl extensions completely. 
URxvt.perl-ext:
URxvt.perl-ext-common:

! Font spacing
! By default the distance between characters can feel too wide. It's controlled
! by this entry: 
! URxvt.letterSpace: -1

! -- Fonts -- !
URxvt.font:xft:Monospace:pixelsize=13
URxvt.boldfont:xft:Monospace-Bold:pixelsize=13
!URxvt*font:  -xos4-terminus-medium-*-*-*-14-*-*-*-*-*-iso8859-15,xft:terminus:pixelsize:12
!URxvt*boldFont:  -xos4-terminus-bold-*-*-*-14-*-*-*-*-*-iso8859-15,xft:terminus:bold:pixelsize:12
!URxvt*italicFont:  xft:Bitstream Vera Sans Mono:italic:autohint=true:pixelsize=12
!URxvt*boldItalicFont:  xft:Bitstream Vera Sans Mono:bold:italic:autohint=true:pixelsize=12

! Disable scrollbar
!URxvt*scrollBar: false

! Scrollbar style - rxvt (default), plain (most compact), next, or xterm
URxvt.scrollstyle: plain

! Background color
!URxvt*background: black
URxvt*background: #1B1B1B

! Font color
!URxvt*foreground: white
URxvt*foreground: #00FF00

! Other colors
URxvt*color0: black
!URxvt*color1: red3
URxvt*color1: #CD0000
URxvt*color2: green3
!URxvt*color3: yellow3
URxvt*color3: #C4A000
URxvt*color4: blue2
!URxvt*color4: #3465A4
URxvt*color5: magenta3
URxvt*color6: cyan3
URxvt*color7: gray90
URxvt*color8: grey50
URxvt*color9: red
URxvt*color10: green
URxvt*color11: yellow
!URxvt*color12: blue
URxvt*color12: #3465A4
URxvt*color13: magenta
URxvt*color14: cyan
URxvt*color15: white
! ******************
! /urxvt config
! ******************
    
por Thomas John 26.06.2015 / 10:55

4 respostas

12

Infelizmente, o sistema de janelas X tem vários mecanismos diferentes de copiar e colar .

O Rxvt, como a maioria dos aplicativos antigos do X, usa a seleção principal. Geralmente, quando você seleciona algo com o mouse, ele é copiado automaticamente para a seleção principal e, quando você clica com o botão do meio para colar, cola a seleção principal.

Ctrl + C e Ctrl + V (ou outras combinações de teclas) em aplicações que usam kits de ferramentas GUI modernas , como o Gnome-terminal e o Firefox, copie / cole da área de transferência.

Existem ferramentas para facilitar o trabalho com as seleções. Em particular, se você quer apenas ter uma única seleção que é copiada para selecionar com o mouse ou pressionar Ctrl + C , você pode executar autocutsel (inicie a partir do seu .xinitrc ou dos programas de inicialização do seu ambiente de trabalho), que detecta quando algo é copiado para uma das seleções e o copia automaticamente para o outro.

    
por 27.06.2015 / 15:37
13

Para colar texto, em urxvt / rxvt-unicode, você pode usar middle button para colar a seleção PRIMARY e Alt/Meta + middle button para colar CLIPBOARD.

Para copiar, basta marcar o texto no terminal e copiá-lo para a seleção PRIMARY. Algum trabalho é necessário para copiar para a seleção CLIPBOARD embora. Combinei as informações da página do Archlinux que você vinculou a scripts incluídos no rxvt-unicode-9.19 e acabei com um script como este: link . Ele permite usar Ctrl-Insert ou Ctrl-Shift-c para copiar o texto atualmente selecionado para CLIPBOARD.

Espero que isso ajude.

Para o registro, eu também não corro um ambiente de desktop; usando o Sawfish como gerenciador de janelas.

Dica : você pode monitorar a área de transferência em um terminal usando o programa "xclip":

while :; do echo -ne '3[31;1mCLIPBOARD: ' ; xclip -o -sel c ; echo ; echo -ne '3[32;1mPRIMARY:   ' ; xclip -o -sel p ; echo ; echo -e '3[m--------' ; sleep 1 ; done

ou usando o programa "xsel":

while :; do echo -ne '3[31;1mCLIPBOARD: ' ; xsel -b -o ; echo ; echo -ne '3[32;1mPRIMARY:   ' ; xclip -p -o ; echo ; echo -e '3[m--------' ; sleep 1 ; done
    
por 06.10.2015 / 14:16
11

Você pode fazer uma cópia urxvt para Primária e Área de Transferência com a extensão perl seleção-para-área de transferência. Isso os mantém em sincronia, então você apenas copia uma vez no urxvt e deve funcionar nos aplicativos que usam.

URxvt.perl-ext-common: selection-to-clipboard
    
por 07.04.2016 / 13:28
10

Existem mecanismos internos para copiar / colar de / para PRIMARY (é usado quando o usuário seleciona alguns dados) e CLIPBOARD (é usado quando o usuário seleciona alguns dados e solicita explicitamente que ele seja "copiado" "para a área de transferência, como invocando" Copiar "no menu" Editar "de um aplicativo). Mais sobre diferentes pranchetas em X .

Para CLIPBOARD buffer, é CTRL+META+C (que é CTRL+ALT+C para o teclado padrão do PC) para copiar e CTRL+META+V ( CTRL+ALT+V ) para colar.

Cotação de urxvt man :

THE SELECTION: SELECTING AND PASTING TEXT

The behaviour of text selection and insertion/pasting mechanism is similar to xterm(1).

Selecionando :

Left click at the beginning of the region, drag to the end of the region and release; Right click to extend the marked region; Left double-click to select a word; Left triple-click to select the entire logical line (which can span multiple screen lines), unless modified by resource tripleclickwords.

Starting a selection while pressing the Meta key (or Meta+Ctrl keys) (Compile: frills) will create a rectangular selection instead of a normal one. In this mode, every selected row becomes its own line in the selection, and trailing whitespace is visually underlined and removed from the selection.

Colar :

Pressing and releasing the Middle mouse button in an urxvt window causes the value of the PRIMARY selection (or CLIPBOARD with the Meta modifier) to be inserted as if it had been typed on the keyboard.

Pressing Shift-Insert causes the value of the PRIMARY selection to be inserted too.

rxvt-unicode also provides the bindings Ctrl-Meta-c and to interact with the CLIPBOARD selection. The first binding causes the value of the internal selection to be copied to the CLIPBOARD selection, while the second binding causes the value of the CLIPBOARD selection to be inserted.

    
por 21.02.2017 / 13:11