Como exibir páginas man em cores no Linux

Se você deseja realce de cor em suas páginas de manual semelhante ao realce de sintaxe em um editor, há duas maneiras simples de conseguir isso. Vamos mostrar-lhe ambos!

Realce de cor

O realce de cores torna as coisas mais fáceis de ler. Ele pode fazer os detalhes aparecerem, para que você não os perca. A maioria dos editores modernos oferece suporte ao realce de sintaxe, que usa cores para identificar e diferenciar os diferentes elementos de uma linguagem de programação. Palavras, variáveis, strings e números reservados são todos coloridos para facilitar a análise visual de uma página ou função de código.

Ter esse recurso nas páginas man do Linux seria extremamente útil. Apesar de favorecer a brevidade, algumas páginas de manual são grandes, densas e difíceis de passar. Qualquer coisa que facilite visualmente a navegação é uma coisa boa.

Vamos descrever duas maneiras de obter um efeito colorido nas páginas do manual. Um envolve o uso de um pager diferente para exibi-los, enquanto o outro requer a passagem de vários parâmetros para menos em tempo de execução. A maneira mais simples de fazer isso é criar uma função shell.

O mais pager é um visualizador de arquivos, como mais e menos, com manuseio aprimorado de arquivos muito amplos. Ele também colore automaticamente as páginas do manual.

Para instalar a maioria no Ubuntu, use este comando:

sudo apt-get install most

Para instalar a maioria no Fedora, digite:

sudo dnf install most

Para instalar a maioria no Manjaro, você digita:

sudo pacman -Syu most

Para dizer ao Linux para usar mais como o pager padrão, temos que exportar o valor da variável de ambiente PAGER.

Digitamos o seguinte:

export PAGER=“most”

Isso só funciona até você fechar a janela do terminal. Para tornar esta alteração permanente, temos que adicioná-la ao arquivo “.bashrc” (faremos a última linha do arquivo):

gedit .bashrc

Adicionamos a linha, salvamos nossas alterações e fechamos o editor.

Para ativar o conteúdo do arquivo “.bashrc” modificado, fechamos e reabrimos a janela do terminal.

Para manter a janela do terminal aberta, usaremos o comando source, que pode ser reduzido a um ponto (.). Isso fará com que o shell leia o conteúdo do arquivo “.bashrc” modificado.

Digitamos o seguinte:

. .bashrc

Páginas de homem coloridas

Vamos abrir uma página de manual e ver como ela se parece:

man grep

A página de manual é aberta normalmente, mas agora tem texto realçado em cores diferentes.

Role para baixo e você verá como os diferentes elementos da página são coloridos.

Usar mais é muito semelhante a usar menos, mas existem algumas diferenças. Pressione H na maioria para ver uma lista de atalhos de teclado e suas funções.

Usando cores com menos

Se você não quiser instalar outro pager ou precisar aprender novas teclas, há um truque que você pode usar para forçar menos a usar cores. Existem diferentes maneiras de fazer isso, mas abordaremos o método mais rápido e fácil.

Este método usa o Instituto Nacional Americano de Padrões (ANSI) códigos de cores para controlar os efeitos na tela associados a o antigo e quase extinto configurações do termcap.

Eles já foram usados ​​para especificar como os terminais de computador de diferentes marcas e modelos deveriam interpretar os comandos de exibição. Os pacotes de software também tinham suas próprias configurações de termcap, e menos também.

Aqui estão as definições das configurações de menos termcap:

LESS_TERMCAP_md: Iniciar efeito negrito (brilho duplo).
LESS_TERMCAP_me: Parar efeito negrito.
LESS_TERMCAP_us: Iniciar efeito de sublinhado.
LESS_TERMCAP_ue: Parar efeito de sublinhado.
LESS_TERMCAP_so: Iniciar efeito de destaque (semelhante ao texto reverso).
LESS_TERMCAP_se: Interrompe o efeito de destaque (semelhante ao texto reverso).

Novamente, vamos defini-los para controlar as combinações de cores usando o Instituto Nacional Americano de Padrões (ANSI) códigos de cores.

O formato do código de cores é fácil de ler quando você o entende:

O “e” no início identifica a sequência como um código de controle ou sequência de escape.
O “m” no final do comando de sequência indica o final do comando. Também faz com que o código de controle seja acionado.
Os números entre o “[” and “m” dictate which colors will be used. The colors are identified by number. Some numbers represent background colors and some represent foreground (text) colors.

These are the codes we’ll use to start a color sequence, and how to turn them all off:

‘e[01;31m: Black background, red text.
‘e[01;32m: Black background, green text.
‘e[45;93m: Magenta background, bright yellow text.
’‘e[0m’: Turn off all effects.

We’re going to wrap all of this in a shell function we’ll call man. It will set these values for us, and then call the real man program.

If you’ve already got some shell functions defined in another file, you can add this one to that file. Otherwise, copy the following text into the bottom of your “.bashrc” file:

man() {
    LESS_TERMCAP_md=$'e[01;31m' 
    LESS_TERMCAP_me=$'e[0m' 
    LESS_TERMCAP_us=$'e[01;32m' 
    LESS_TERMCAP_ue=$'e[0m' 
    LESS_TERMCAP_so=$'e[45;93m' 
    LESS_TERMCAP_se=$'e[0m' 

    command man "[email protected]" }
gedit .bashrc

Cole a função na parte inferior do seu arquivo “.bashrc”.

Salve suas alterações e feche o editor. Agora, precisamos ler o arquivo “.bashrc” para ativar a função shell, então digitamos:

. .bashrc

Agora, quando iniciarmos uma página de manual, ela será colorida em menos:

man chmod

Corrida

A página man é aberta com realce de cor.

Em retrospecto, amarelo sobre magenta pode não ter sido a melhor ideia. Felizmente, você pode ajustar os códigos de cores ao seu gosto.

Não é apenas bonito

É fácil rolar por uma página de manual longa e perder uma informação importante, como uma opção ou parâmetro, porque ela está perdida em um mar de texto.

Agora, os nomes de parâmetros e opções serão destacados e muito mais fáceis de identificar.