0

When I less /some/file.ext, I get syntax highlighting by /usr/bin/lesspipe. Unfortunately, the colors are annoying and have poor visibility on my distro, by default - it's Devuan 3.0.

My question: How can I view, edit or replace/choose the color scheme used by lesspipe?

Bonus points if you can tell me how to make it follow my vim's color scheme.

edit:

It seems the color is done by the source-highlight library.

0
1

It looks like you need to define it in code2color. The documentation here lists the background.

Syntax highlighting of source code is possible through an included script code2color which is derived from Peter Palfraders code2html script or an external program (pygmentize). The script code2color is written in perl and has colorizing support for the languages ada, asm, awk, c, c++, groff, html, xml, java, javascript, lisp, m4, make, pascal, patch, perl, povray, python, ruby, shellscript and sql.

Syntax highlighting and other methods of colorizing the output are only activated if the environment variable LESS is existing and contains the option -R or -r or less is called with one of these options. This guarantees, that instead of literal escape sequences colors are displayed. The detection of the -r/-R presence at runtime is rather dependent on the operating system and may not work in all cases.

The script lesspipe.sh needs a lot of helper programs that may or may not be installed on your computer. Therefore you should download the tarball lesspipe.tar.gz and use configure to customize lesspipe.sh for the local computer. A preconfigured lesspipe.sh for Linux is provided as an example only. There syntax highlighting is switched on. The code2color script does the colorization, but can be replaced by an external program (pygmentize)

To get support for newer file types an additional magic file (for use in the file command, e.g. in ~/.magic) might have to be created. In that case the environment variable MAGIC has to be set and has to contain both the system magic file and your personal one. Example: MAGIC='/usr/share/file/magic:/Users/myaccount/.magic' export MAGIC

2
  • It doesn't look like code2color is installed on my system. – einpoklum Mar 12 '20 at 20:41
  • I found Wolfgang Friebel's GitHub here github.com/wofr06/lesspipe. You could use that to download code2color. – DDay Mar 16 '20 at 17:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.