O comando na variável LESSOPEN após o pipe inicial é executado pelo shell indicado pela variável de ambiente SHELL e deve produzir o conteúdo desejado em sua saída padrão.
Você pode passar a saída de lesspipe como entrada para outro comando que lê da entrada padrão e grava na saída padrão. No entanto, para que source-highlight leia sua entrada padrão, é necessário que ele saiba qual idioma destacar, portanto, source-highlight não funciona dessa maneira.
Quando lesspipe não reconhece um formato de arquivo, ele não imprime nada, o que menos interpreta como uma indicação para ler o arquivo original. Se você tiver ifne de Moreutils de Joey Hess , você pode usá-lo para detectar este caso e tente source-highlight . Você precisará salvar o nome do arquivo original em uma variável para poder usá-lo duas vezes.
LESSOPEN='|file=%s; /usr/bin/lesspipe "$file" | /usr/bin/ifne -n /usr/bin/source-highlight -i "$file" -o STDOUT 2>/dev/null'
Você precisará incluir -r ou -R em $LESS ou digitar -r ou -R depois de iniciar less para que menos cores sejam renderizadas.