En mi terminal Mac, la impresión UTF-8 funciona en general, pero lessno funciona correctamente.
Entonces esto funciona correctamente:
$ echo -e '\xe2\x82\xac'
€
pero canalizarlo en menos da algo como esto:
$ echo -e '\xe2\x82\xac' | less
<E2><82><AC>
¿Cómo se puede arreglar esto?
Para diagnósticos:
Estoy usando Mac OS 10.6.8. menos la versión 418, Terminal 2.1.2 (273.1).
La salida de mi localidad es esta:
$ locale
LANG="en_US.UTF-8"
LC_COLLATE="C"
LC_CTYPE="C"
LC_MESSAGES="C"
LC_MONETARY="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_ALL="C"

less -r(mostrar caracteres de control "en bruto")less -rhace lo mismo pero también maneja los emojis correctamente, loexport LESSCHARSET=utf-8que no hace.Si puede ver algunos caracteres Unicode
less, pero no puedelessmostrar los emoji, intente actualizarlessa una versión más reciente. En Mac OS X, pasé de la versión 458 a la 481 y eso solucionó mi problema (por ejemplo,git logahora puede mostrar emoji en los mensajes de confirmación).Si tiene homebrew, puede reemplazar el sistema menos con una versión más reciente ejecutando
brew install homebrew/dupes/less.fuente
brew install lessobtener la actualización.Trabaja para mi con
fuente
Busqué en Google esto y probé las siguientes variables de entorno que funcionaron para mí:
Viendo que encuentro LC_ALL en múltiples respuestas diferentes, creo que esta es la correcta. Pero tal vez no sea la única respuesta correcta, por supuesto, podría haber respuestas más correctas a esta pregunta.
De todos modos, un poco más de google me dio esta descripción para la variable:
fuente: http://pubs.opengroup.org/onlinepubs/007908799/xbd/envvar.html
Me lleva a pensar que esta es la variable del lenguaje para gobernarlos a todos :)
fuente
lessel número de versión.Solo actualízalo
[less][1]Hazlo con cerveza.
fuente