¿Por qué tldr? xclip genera códigos de escape que parecen una marca de tiempo y ¿cómo eliminarlos?

¿Por qué tldr? xclip genera códigos de escape que parecen una marca de tiempo y ¿cómo eliminarlos?

Problema

Quiero copiar el resultado de tldr al portapapeles y luego pegarlo en el editor de texto.

Ejecuto:tldr pwd | xclip -sel clip

Cuando pego desde el portapapeles, aparece:

pwd
[0mPrint name of current/working directory.More information: https://www.gnu.org/software/coreutils/pwd.

 - [23;22;24;25;32mPrint the current directory:
[23;22;24;25;33m   pwd
[0m
 - [23;22;24;25;32mPrint the current directory, and resolve all symlinks (i.e. show the "physical" path):
[23;22;24;25;33m   pwd -P
[0m[0m

Quiero deshacerme de las marcas de tiempo y también quiero saber por qué sucede esto.

Observación

  • tldr pwd(sin pasar a xclip) no muestra marcas de tiempo
  • man pwd | xclip -sel clipno incluye marcas de tiempo cuando se pega
  • Entonces, solo cuando paso tldr a xclip encuentro que esto sucede
  • Las marcas de tiempo parecen códigos de escape.

Ambiente

  • Nombre de host estático: debian
  • Nombre del icono: computadora-escritorio
  • Chasis: escritorio
  • Sistema operativo: Debian GNU/Linux 10 (destructor)
  • Núcleo: Linux 4.19.0-17-amd64
  • Arquitectura: x86-64

Respuesta1

Esas no son marcas de tiempo. Son códigos de colores.

De acuerdo con laRegistro de cambios v0.91, tldrfusionó una función para deshabilitar los colores en julio de 2021, ya sea configurando una NO_COLORvariable de entorno o usando una nueva --no-coloropción de línea de comandos.

Desafortunadamente, la versión 0.91 de tldresmuchomás reciente que la versión actual de Debian (0.6.4).... así que desinstale el paquete Debian y compílelo/instale usted mismo(*) o envíe un informe de error solicitando que se empaquete la nueva versión. O ambos.

Ésa es la solución a largo plazo. A corto plazo, usar sedalgo para eliminar los códigos de color de la salida (como en la respuesta de @GMaster) es probablemente lo mejor que puede hacer.

(*) Normalmente no sugeriría cambiar de una versión empaquetada de un programa a una versión autocompilada (porque hacerlo probablemente cause problemas de compatibilidad o problemas con la actualización en el futuro), pero sí códigos de colores codificados que pueden No estar discapacitados es una abominación de la interfaz de usuario.

Respuesta2

Esos son códigos de colores generados por tldr. Lamentablemente tldrno tiene ninguna opción para apagar los colores. Pero puedes pasar la tldrsalida sedy deshacerte de los códigos de color. Prueba esto:

tldr pwd | sed $'s,\x1b\\[[0-9;]*[a-zA-Z],,g' | xclip -sel clip

Alternativamente, según el paquete jpa mencionado:

# install colorized-logs package (for ubuntu)
sudo apt install colorized-logs

tldr pwd | ansi2txt | xclip -sel clip

información relacionada