Make Menos realçar padrões de pesquisa em vez de colocá-los em itálico

18

No meu entender, o homem usa less como um pager e, ao pesquisar palavras-chave usando less , "destaca" palavras-chave com itálico. Eu acho isso muito inconveniente, então eu gostaria de mudar isso para algo como set hlsearch do vim, onde o padrão encontrado tem um background diferente.

Eu tentei executar man -P vim systemd , mas desisti com o status de erro 1, então parece que estou com less .

Não foi possível encontrar nada em man less que ajudou (em vez disso, descobri que a opção -G desativará todos os realces juntos, o que é ainda pior do que o itálico).

Dito isto, alguém sabe como conseguir o realce da pesquisa (mudar a cor de fundo) nas páginas man?

FYI eu corro o Ubuntu 14.10

Me deparei com essa pergunta que parece perguntar a mesma coisa, mas estou Não tenho certeza se eu sigo como isso funciona ( LESS_TERMCAP_so ). A página less man não menciona isso. (Obtenho resultados estranhos com esta solução)

    
por sgp667 15.01.2015 / 03:06

3 respostas

12

Encontrou uma resposta no superusuário: link

Parece que tem a ver com a sua configuração TERM. Por exemplo, menos destaque atua normalmente (realce de fundo branco) quando em uma janela normal do terminal gnome, mas quando estou no tmux, o itálico acontece. A diferença para mim é que TERM está sendo configurado para "screen" quando está no tmux, mas "xterm-256color" quando não está. Quando eu defino "TERM = xterm-256color" na janela do tmux, o destaque em menos volta para o realce do plano de fundo.

    
por 29.12.2015 / 16:53
5

A menção de LESS_TERMCAP_so estava incompleta. Essa é a variável de ambiente especial menos usada para substituir o recurso termcap so (standout). Para usar esse recurso, você precisa fornecer também um recurso se (standend).

A página de manual terminfo (5) fornece um resumo desses recursos para o terminfo (smso / rmso) e termcap (so / se) nomes:

   enter_standout_mode           smso       so        begin standout mode
   exit_standout_mode            rmso       se        exit standout mode  

A seção highlighting explica :

If your terminal has one or more kinds of display attributes, these can be represented in a number of different ways. You should choose one display form as standout mode, representing a good, high contrast, easy-on-the-eyes, format for highlighting error messages and other attention getters. (If you have a choice, reverse video plus half-bright is good, or reverse video alone.) The sequences to enter and exit standout mode are given as smso and rmso, respectively.

Se você deseja usar cores para standout , é necessário fornecer um LESS_TERMCAP_se correspondente que redefina cor. Isso é relativamente simples de fazer, desde que você não espere usar cores na página de manual por outros motivos (como usar o recurso de cor SGR do groff).

Assumindo o valor sugerido em um comentário:

export LESS_TERMCAP_so=$'\E[30;43m'

então você pode redefinir isso para a maioria dos terminais usando

export LESS_TERMCAP_se=$'\E[39;49m'

A propósito, o motivo do itálico é que a descrição do terminal para o GNU screen usa a sequência de escape padrão para itálico como seus próprios recursos de destaque / standend. Parte disso é discutida na entrada do banco de dados do terminal .

    
por 23.07.2016 / 03:05
3

Pressione ESC u para desativar o realce da pesquisa em less após uma pesquisa; uma nova pesquisa irá ativá-lo novamente, para permanentemente tornar a busca destacada para um acerto de sessão - G .

Alternativamente, coloque LESS='-G' em seu ambiente ou execute man da seguinte forma:

LESS='-G' man less

Ironicamente, tudo isso está documentado na% man_de% manpage ...

Você também pode colocar o seguinte no ambiente, por exemplo, no seu less :

export MANPAGER='less -G'
    
por 15.01.2015 / 09:10