Isso fará o truque:
man -k background|sed "s/ - \(.*\)/ - \o033[33m\o033[0m/"
Você pode fazer uma função:
mank () { man -k $1|sed "s/ - \(.*\)/ - \o033[33m\o033[0m/"; }
Então você poderia fazer:
mank background
e os comandos estariam na sua cor padrão e as descrições seriam amarelas. O "33" após o colchete significa amarelo. Você pode substituir outro número por outra cor. Um local para obter uma lista de cores e seus códigos é man 5 dir_colors
.
E, claro, você precisa usar less -R
(ou definir $ LESS para incluí-lo) para ver as cores em less
.
Aqui está uma versão mais portátil que usa tput
:
mank() { local yellow=$(tput setaf 3) default=$(tput op); /usr/bin/man -k $1|sed "s/ - \(.*\)/ - ${yellow}${default}/"; }
Veja man tput
e man 5 terminfo
(na seção "Tratamento de cores") para mais informações, incluindo uma lista de números de cores que setaf
entende.