¿hay alguna manera de resaltar la sintaxis de un archivo que veo en Less?
en realidad estoy usando este comando para abrir un archivo xml (y a veces una serie de ellos)
less htmleditors/htmleditors_config.xml
o
less [multiple files]
Me gustaría quedarme en Less (para aprender mejor ese programa y usar mi conocimiento de: ny p para la navegación siguiente / anterior)
Pero también quiere algún tipo de resaltado de sintaxis básica, al menos muestre los comentarios de manera diferente. ¿Conoces alguna forma de hacerlo?
syntax-highlighting
less
Jesper Rønn-Jensen
fuente
fuente
less ~/.zshrc
. Error:src-hilite-lesspipe.sh: line 9: source-highlight: command not found
. Ejecuto esto en MacOSX.brew install source-highlight
;export LESSOPEN="| /usr/local/bin/src-hilite-lesspipe.sh %s"
. Tenga en cuenta el cambio de ruta.sudo apt-get install source-highlight
,export LESSOPEN="| /usr/share/source-highlight/src-hilite-lesspipe.sh %s"
,export LESS=' -R '
Lo mejor de ambas respuestas anteriores: puede invocar el editor predeterminado del sistema desde menos presionando v.
fuente
o
Pygmentize viene como parte del resaltador de sintaxis Pygments Python .
fuente
pygmentize
También funciona con lasLESSOPEN
cosas mencionadas en otras respuestas aquí.pygmentize
, necesitas Python y luego puedes instalarlopygmentize
conpip install pygments
.less
a utilizarpygmentize
para su uso resaltado de sintaxis:which pygmentize 2> /dev/null >&2 && export LESSOPEN="| pygmentize -g -f terminal256 %s"
.-g
para que funcione con tuberías (less <(diff -u file1 files)
). Está disponible encommunity/pygmentize
el paquete dearch linux
, y enpython-pygments
paradebian
.pygmentize
, pero me pareció demasiado lenta. Se me ocurrió esta respuesta, que es más rápida y sigue siendo bonita en 256 colores.Creo que deberías usar un editor de texto. Me gusta vim yo mismo. Eso le dará MUCHA potencia al ver archivos y luego, cuando desee editarlos, ya sabrá lo básico.
Estas son algunas de las ventajas de usar un editor de texto (específicamente vim):
Para abrir su archivo en modo de solo lectura, use esto:
Aquí hay una guía básica de navegación:
Aquí hay un enlace para más información:
http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html
Solo para recapitular, si usarás unix vim es bastante fundamental. He oído que aprender vim es como aprender a escribir. Es la siguiente herramienta más útil que puedes aprender para programar.
(Solo para evitar las guerras de los editores, también puede buscar emacs u otro editor, sin embargo, personalmente prefiero vim)
fuente
view
es un alias paravim -R
.Como otros han dicho, puedes usar el poder de vim. Pero lo más importante, puede hacerlo sin aprender a usar vi / vim.
Vim viene con un
less.vim
script que funciona bastante bien como un reemplazo por menos, con resaltado de sintaxis a todo color. Utilizaless
combinaciones de teclas (simplemente presione 'q' para salir).Tenía algunos problemas, así que lo mejoré . Aquí hay una captura de pantalla de mi publicación de blog (archivada el 09/04/2013; lanzamientos originales 503):
fuente
find /usr/share/vim -name 'less.sh'
que está tomado de esta esencia: gist.github.com/chauncey-garrett/9773770vimless
comando (siguiendo la nomenclatura devimdiff
), haga:ln -s $(find /usr/share/vim -name 'less.sh') /usr/local/bin/vimless
También estaba buscando esto y encontré otra solución usando Vim: http://ubuntu-tutorials.com/2008/07/14/use-vim-as-a-syntax-highlighting-pager/
La publicación es bastante antigua, por lo que ahora se envía en las distribuciones más recientes vim 7.2 y el .bashrc leerá: alias vless = 'vim -u /usr/share/vim/vim72/macros/less.vim'
fuente
:help less
Me complace anunciar un nuevo paquete, e2ansi , que proporciona soporte para resaltar la sintaxis para localizadores como
more
yless
.El paquete utiliza la madre de todos los editores de texto, Emacs , para realizar el resaltado de sintaxis real. Como beneficio adicional, también se realizan todas las demás conversiones que normalmente realiza Emacs, como descomprimir archivos.
Ejemplo
El siguiente es el resultado de ver un archivo usando
less
ye2ansi
:Configuración
El paquete proporciona una herramienta de línea de comandos
e2ansi-cat
que inicia Emacs en modo por lotes, abre archivos, la sintaxis los resalta y representa el resultado usando secuencias ANSI.Puede integrar esto
less
configurando las siguientes variables, por ejemplo (la ubicación de su archivo init puede variar):En la configuración anterior,
less
restaura el contenido original de la ventana del terminal, mientras quemore
simplemente genera contenido nuevo después de la solicitud.Nota: Si usa una versión anterior de
less
, es posible que no sea compatible con||
la-
sintaxis o , en cuyo caso es posible que deba usarla simplementeLESSOPEN=|/usr/local/emacs ...
.Utilizando
less
en tuberíasEl carácter "-" en
LESSOPEN
indica que el filtro de entrada también se debe utilizar al canalizar textoless
. En este caso, Emacs solo puede confiar en el texto mismo (y no en un nombre de archivo). Afortunadamente, Emacs proporciona un sistema para esto. Además, el archivo de archivo proporcionadoe2ansi-magic.el
configura tipos de archivo adicionales. Por ejemplo:¿Por qué usar Emacs?
e2ansi
, los colores en el tema se conserva durante la visualización de un archivo enless
. Puede elegir un tema de color adecuado de varias fuentes o diseñar uno propio.less
(menos las limitaciones en el formato de secuencia ANSI y la ventana de terminal).less
aprovechará las características de Emacs que realizan la conversión automática, por ejemplo, descomprimir archivos. De hecho, puede enseñarle a Emacs a realizar cualquier tipo de conversión, como convertir automáticamente un archivo binario a una forma legible por humanos utilizando una herramienta externa./USER@HOST:FILENAME
.Enlaces útiles
e2ansi
se distribuye en Melpa y se puede instalar utilizando el sistema de paquete estándar de Emacse2ansi
está alojado en GitHube2ansi
página en el Wiki de Emacsless
.Notas del sistema operativo
En MS Windows, la consola no admite de forma nativa secuencias ANSI. Afortunadamente, la
less
aplicación es capaz de representarlos. No conozco ninguna distribución binaria contemporánea deless
MS Windows y los archivos de compilación proporcionados son difíciles de usar. Afortunadamente, es fácil de construirless
usando CMake , vea este texto para más detalles.OS X distribuye una versión antigua de
less
. Afortunadamente, es fácil construir una versión moderna directamente desde la fuente.fuente
less
.Si tiene instalado GNU Source-highlight , puede usar el siguiente comando para resaltar la sintaxis de un solo archivo:
fuente
src-hilite-lesspipe.sh
recibir información a través de una tubería también?source-highlight
tiene un.sh
script ubicado en/usr/share/source-highlight/*.sh
. He creado un enlace simbólico con nombrehcat
en/usr/bin
.Muestra la salida resaltada en el terminal (consola) -
hcat
está resaltada cat.Cómo:
fuente
Usando OS X 10.9 (Maverick) esto funcionaría:
sudo nano /etc/launchd.conf
(Agregar a /etc/launchd.conf)
reiniciar
fuente
En mac, simplemente puede escribir
view filename
, hace algo similar como menos.fuente
view filename
solo se iniciavim
de forma predeterminada: asociaciones de teclas ligeramente diferentes aless
(consulte otras respuestas a esta pregunta para obtener más detalles).Después de instalar el resaltado de fuente de GNU (paquete
dev-util/source-highlight
en sabayon / gentoo), configuré esos envs en/etc/bash/bashrc.d/my-less-src-highlight
:No me gustó reemplazarlo
lesspipe
porque tiene otras características. La concatenación no funcionó.fuente
Si desea el mismo resaltado de sintaxis que usa en Vim , pero por alguna razón prefiere usarlo
less
como buscapersonas, puede usar este script: https://github.com/rkitover/vimpagerEl uso básico sería:
o
Puede usar
-c
para pasar comandos adicionales que no están en su.vimrc
(por ejemplo, seleccionar un esquema de colores diferente). El comando completo que uso es:Cuidado: si su Vim le pide que presione Entrar cuando se inicia, no verá el mensaje, ¡pero no pasará nada hasta que presione Entrar! El
cmdheight
truco anterior puede ayudar a mitigar eso.fuente
Encontré
highlight
cuál:source-highlight
)pygmentize
Aquí hay un script que llamo
highlight-less-wrapper
que incluye.bashrc
instrucciones sobre cómo configurarloless
para usarlo automáticamente.fuente
Tenía la misma pregunta y conseguí escuchar, leer todas las respuestas y lo siguiente es lo que finalmente hice para resaltar la sintaxis cada vez que uso
less
omost
:Luego fui y creé un alias para mi
less
ymost
(uso ZSH, pero puedes agregar alias para tu.bashrc
archivo si usas bash):( Para aquellos que podrían quedar atrapados en vim: presione ipara ir al modo de edición, cuando haya terminado, presione Escy :luego xy finalmente Enterpara guardar los cambios )
Y pegue las siguientes líneas para distribuciones basadas en Debian (como Debian, Ubuntu, Mint, etc.):
o para distribuciones RPM (Redhat, Fedora, Centos):
Recuerde cerrar el terminal y abrirlo nuevamente para asegurarse de que se crea el alias.
Ahora puedes disfrutar de los colores:
fuente