Estoy ejecutando urxvt en Arch Linux. Puedo seleccionar la salida con el mouse para copiar/pegar. El problema ocurre cuando la salida contiene tabuladores. Todos los tabuladores se seleccionan y copian como espacios. Eso hace que sea muy difícil conservar la estructura de algunos resultados al copiarlos.
¿Hay alguna forma de corregir este comportamiento?
EDITAR:estoy usando zsh si eso tiene algún efecto en el problema.
Respuesta aceptada:
No conozco ningún terminal que lo haga, y solo diré por qué no creo que ningún terminal lo haga:
tab
es uno de los muchos caracteres que, una vez que se muestra, muestra más de un carácter en la pantalla o mueve el cursor. CR (mover al principio de la línea), LF (abajo), retroceso (izquierda) y todas las secuencias de escape que mueven el cursor o cambian los atributos de los caracteres y/o no muestran nada...
urxvt ni siquiera obtiene exactamente lo que genera la aplicación. Cuando una aplicación envía un LF (\n) al lado esclavo del pseudo-terminal, notará que, la mayoría de las veces, no solo mueve el cursor hacia abajo, como normalmente lo hace LF, sino que también lo mueve hacia atrás. al comienzo de la línea. Esto se debe a que el controlador pty traduce "\n" a "\r\n" antes de que esté disponible para leer desde el maestro lado de la terminal por urxvt (puede usar stty para cambiar ese comportamiento).
También tenga en cuenta que la selección no capturará los espacios finales.
La selección X selecciona los caracteres que se muestran, no los que han sido enviados por la(s) aplicación(es) para generar esa visualización (considere que cualquier carácter en cualquier posición dada en la pantalla puede haber sido anulado varias veces por una o más aplicaciones). (s)).
Sin embargo, algunos terminales permiten capturar todos los caracteres que reciben en el lado maestro del pseudo-terminal, y si no lo hacen, puede usar "script" o "screen" para hacerlo. Pero para obtener la salida de una aplicación en la selección X, también puede simplemente hacer:
the-command | xsel