Copiar y pegar en linux (Copy & Paste)


Una de las acciones más habituales y utilizadas por cualquier usuario
es el copiar y pegar (copy & paste) desde una aplicación aotra.
En linux es realmente muy sencillo utilizando el ratón.
Lo que no es tan sencillo es copiar y pegar desde la
consola de texto a las X’s y viceversa …

Copiar y Pegar en modo consola

Para copiar utilizaremos el ratón
seleccionando el texto que queramos
(botón principal y sin soltar mover el ratón).
Simplemente por el hecho de estar seleccionado, el texto se habrá copiado al
portapapeles (clipboard).
Truco: Doble-clic selecciona la palabra sobre la
que hayamos pulsado y Triple-clic selecciona la línea
entera sobre la que nos encontremos.

Para pegar pulsamos el botón del medio si tenemos un ratón con 3
botones (o pulsamos los 2 a la vez en caso de tener un ratón con tan solo
2 botones), pegandose el texto en la posición en la que se encuentre
el cursor.

Para poder utilizar esta función necesitamos tener en marcha el demonio
gpm (general purpose mouse) que se encarga de todo lo relacionado con
el ratón en modo consola.
Podemos obtener gpm de:
ftp://arcana.linux.it/pub/gpm(1) |

ftp://ftp.schottelius.org/pub/linux/gpm
(2), aunque no será necesario puesto
que suele venir con todas las distribuciones linux.

Podemos comprobar que esta en funcionamiento con este comando

$ ps aux | grep “gpm”

Nos debe aparecer algo similar a esto (mi ratón, bueno realmente
es un trackball Logitech TrackMan Marble FX, que por cierto funciona
perfectamente en linux, es del tipo ps2 como podeís observar):

root 750 0.0 0.3 1348 448 ?
S 19:31 0:00 /usr/sbin/gpm -t ps2 -m /dev/mouse

Si por el motivo que sea no estuviera en marcha tendría que arrancarlo
(siendo root) con:

# gpm -t ps2 -m /dev/mouse

Copiar y Pegar en las X’s

Copiar y Pegar en modo gráfico es totalmente analogo al
método explicado para la consola.
Pero en este caso el soporte del portapapeles depende
directamente del XFree86(3) y del gestor
de ventanas utilizado y en última instancia de la aplicación en cuestión,
aunque normalmente funciona exactamente igual al modo texto.
Aunque se suele añadir la posibilidad de Copiar con
Control + C y de Pegar con Control + V o con
May. + Insert
.

Esta es la parte de mi XF86Config relativa al ratón:

Section “Pointer”
Protocol “PS/2”
Device “/dev/psaux”
SampleRate 60
BaudRate 1200
EndSection

Si tu ratón sólo tiene 2 teclas, tendras que emular el tercer boton con algo
similar a esto (en el mismo fichero):

Emulate3Buttons
Emulate3Timeout 50

Si tienes un ratón Logitech quizá necesites poner esto:

# ChordMiddle is an option for some 3-button Logitech mice
ChordMiddle

Como podeís observar en consola utilizo el /dev/mouse,
pero en cambio en el modo gráfico utilizo /dev/psaux, no os lleveís a
engaño, porque realmente los 2 son el mismo dispositivo, como podeís ver:

$ l /dev/mouse /dev/psaux
lrwxrwxrwx 1 root root 10 mar 16 17:14 /dev/mouse -> /dev/psaux
crw-rw-r– 1 root root 10, 1 abr 5 00:51 /dev/psaux

Si trabajaís habitualmente con las X’s en linux,
os recomiendo que le pegeís un vistazo a

gclipper
(4), este programa nos permite mantener varias buffers de
textos copiados, de forma que podemos ir pegando el que queramos de todas las
selecciones realizadas anteriormente:
“A multiple buffer clipboard that automatically fetches new selections
and maintains them in a history.”

Copiar y Pegar texto de la consola a las X’s y viceversa

Aunque normalmente, copiar y pegar en modo consola y en modo gráfico suele
funcionar de la misma forma, tal y como he explicado anteriormente, resulta
que no se comparte el mismo portapapeles por lo que si queremos copiar en un
modo, cambiar al otro modo y pegar tendremos que utilizar algun pequeño
truco.

Existen varias opciones cada cual con sus ventajas e incovenientes, pero por
ahora no conozco ninguna forma totalmente trasparente para copiar y
pegar de consola de texto a las X’s, por lo que yo os
propongo alguna de estas tres opciones:

  • Utilización de un programa auxiliar que nos permita compartir el
    portapapeles.

  • Utilización de un fichero auxiliar de texto.
  • Utilización de xfilesel, un fichero de texto y un par de shell scripts
    muy sencillos.

– Utilización de un programa auxiliar que nos permita compartir el
portapapeles.

Utilizaremos algún programa como
MpCb – Muliplatform Clipboard
(5) (tiene la ventaja que además, permite
compartir el portapapeles entre distintos sistemas operativos y
distintas máquinas, aunque necesita
recompilar el kernel de linux para tener soporte en modo consola) o
ReCaP – Remote Copy and Paste(6)
(versión antigua) y ReCaP(7) (versión nueva), que
es un parche para el gpm.

– Utilización de un fichero auxiliar de texto.

Muy sencillo (aunque algo más lento y laborioso),
se trata simplemente de compartir un fichero de texto que
abriremos cuando estemos en un determinado modo,
pegamos el texto que queramos, luego lo grabamos y cerramos,
cambiamos de modo, abrimos nuevamente el fichero, seleccionamos el texto que
queremos y ya lo pegamos en donde queramos, con el ratón.

Yo suelo utilizar un fichero que he denominado canvi.txt en el
directorio /u
, presenta la ventaja de que quedan registradas en este fichero de
intercambio (/u/canvi.txt) un montón
de direcciones, nombres, URL’s, frases, nombres de archivos,
comandos, etc …
que puede ser interesantes/utiles en un futuro.

– Utilización de xfilesel, un fichero de texto y un par de shell scripts
muy sencillos.

xfilesel(8) es un sencillo programa gráfico que nos permite
copiar el contenido del portapapeles (lo denomina PRIMARY) a un
fichero, o viceversa, es decir volcar el contenido de
un fichero al portapapeles de las X’s.

Entonces lo que suelo hacer es arrancarlo siempre (lo arranco
automaticamente al arrancar el entorno gráfico) con esta opción:

xfilesel -f ~/clipboard

de forma que utilizo el fichero ~/clipboard para el intercambio de
buffer de texto.

Luego tengo definidos 2 mini shell scripts (vore_clipboard y clip):

$ cat vore_clipboard
watch -n 1 cat ~/clipboard

$ cat clip
echo $1 > ~/clipboard

En modo consola siempre ejecuto el comando vore_clipboard en
una determinada terminal, este comando refleja, cada segundo,
el contenido del fichero ~/clipboard

Para copiar texto de las X’s a consola, selecciono el texto, con
xfilesel lo pego en el fichero copy PRIMARY to file, luego
cambio a modo texto, voy a la terminal donde se esta ejecutando
vore_clipboard y selecciono para después pegar el texto.

Para copiar texto de la consola a las X’s, primero lo selecciono, luego lo
meto en el fichero auxiliar ejecutando por ejemplo:

$ clip “Este texto lo llevo a las X’s”

cambio a las X’s y usando xfilesel lo pego al portapapeles (
copy file to PRIMARY) para su
posterior uso donde lo necesite.


$ alias carcoco=”echo Carlos Cortes”

http://bulma.net/todos.phtml?id_autor=132
(9)
Lista de enlaces de este artículo:

  • ftp://arcana.linux.it/pub/gpm
  • ftp://ftp.schottelius.org/pub/linux/gpm
  • http://www.xfree86.org/
  • http://www.thunderstorms.org/gclipper/gclipper-1.1a.tar.gz
  • http://www.idata.sk/~robo/mpcb/
  • http://mix.hive.no/~tommy/ReCaP/
  • http://morten.nextframe.net/recap.html
  • http://www.opennet.ru/xfilesel/
  • http://bulma.net/todos.phtml?id_autor=132
  • Este post ha sido traido de forma automatica desde https://web.archive.org/web/20140625063149/http:/bulma.net/body.phtml?nIdNoticia=1260 por un robot nigromante, si crees que puede mejorarse, por favor, contactanos.


    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

    Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.