web-dev-qa-db-fra.com

Couleurs dans les pages de l'homme

Quand je regarde une page d'homme dans ma "console" (pas un xterm) Je vois une certaine coloration, mais je ne comprends pas cela dans mon xterm 's (par exemple, konsole ) Y a-t-il quelque chose que je peux activer cela? J'espère une solution assez simple?

66
xenoterracide

Vous devez utiliser le termcap(5) Fonction. La page Man de certains unes indique que cet outil est obsolète et d'utiliser terminfo , mais il est toujours disponible sur Autres (et terminfo est plus compliqué).

Plus important encore, less utilise termcap.


Définition de couleurs pour less

Je fais ce qui suit pour que less et man (qui utilise less) aura de la couleur:

$ cat ~/.LESS_TERMCAP 
export LESS_TERMCAP_mb=$(tput bold; tput setaf 2) # green
export LESS_TERMCAP_md=$(tput bold; tput setaf 6) # cyan
export LESS_TERMCAP_me=$(tput sgr0)
export LESS_TERMCAP_so=$(tput bold; tput setaf 3; tput setab 4) # yellow on blue
export LESS_TERMCAP_se=$(tput rmso; tput sgr0)
export LESS_TERMCAP_us=$(tput smul; tput bold; tput setaf 7) # white
export LESS_TERMCAP_ue=$(tput rmul; tput sgr0)
export LESS_TERMCAP_mr=$(tput rev)
export LESS_TERMCAP_mh=$(tput dim)
export LESS_TERMCAP_ZN=$(tput ssubm)
export LESS_TERMCAP_ZV=$(tput rsubm)
export LESS_TERMCAP_ZO=$(tput ssupm)
export LESS_TERMCAP_ZW=$(tput rsupm)
export GROFF_NO_SGR=1         # For Konsole and Gnome-terminal

Et puis dans mon ~/.bashrc, Je fais ça:

# Get color support for 'less'
export LESS="--RAW-CONTROL-CHARS"

# Use colors for less, man, etc.
[[ -f ~/.LESS_TERMCAP ]] && . ~/.LESS_TERMCAP

Remarque: Voir Documentation sur LESS_TERMCAP_* variables ? pour la façon dont cela fonctionne.

Le résultat final

ss of man page

81
Stefan Lasiewski

Vous pouvez résoudre ce problème en utilisant un pager différent, par exemple most. man _ utilisera réellement le programme spécifié dans la variable d'environnement PAGER. Du Man (1) Page Man:

Manpager, pager

Si $ Manpager ou $ Pager est défini ($ Manpager est utilisé de préférence), sa valeur est utilisée comme nom du programme utilisé pour afficher la page manuelle. Par défaut, PAGER -S est utilisé.

La valeur peut être un simple nom de commande ou une commande avec des arguments et peut utiliser la citation de shell (backslashes, citations simples ou citations doubles).

Il peut ne pas utiliser de tuyaux pour connecter plusieurs commandes; Si vous en avez besoin, utilisez un script wrapper, qui peut prendre le fichier à afficher sous forme d'argument ou d'entrée standard.

Si most est installé sur votre système, essayez-le, avant de lancer man:

export PAGER=most
15
cannedprimates

La valeur par défaut souligne mal mes yeux. Cette configuration améliore considérablement ma lecture de page man:

Coloured man page example

Ajoutez les éléments suivants dans votre `~ .bstrucc ':

# Have less display colours
# from: https://wiki.archlinux.org/index.php/Color_output_in_console#man
export LESS_TERMCAP_mb=$'\e[1;31m'     # begin bold
export LESS_TERMCAP_md=$'\e[1;33m'     # begin blink
export LESS_TERMCAP_so=$'\e[01;44;37m' # begin reverse video
export LESS_TERMCAP_us=$'\e[01;37m'    # begin underline
export LESS_TERMCAP_me=$'\e[0m'        # reset bold/blink
export LESS_TERMCAP_se=$'\e[0m'        # reset reverse video
export LESS_TERMCAP_ue=$'\e[0m'        # reset underline
export GROFF_NO_SGR=1                  # for konsole and gnome-terminal

Pour la victoire, combiner avec export MANPAGER='less -s -M +Gg'(source) Pour afficher votre pourcentage dans le document.

11
Tom Hale

Si vous utilisez Oh mon ZSH , vous pouvez ajouter colored-man-pages au tableau plugins dans votre .zshrc déposer.

5
tremby

Save 'Sauvegarder "le plus" de manière persistante

Terminal ouvert (Ctrl+Alt+T)

  1. Installez le "plus".

    Sudo apt-get install most
    
  2. modifier .Casherrc, Type:

    nano ~/.bashrc
    
  3. Ajoutez ces lignes:

    # color man-pages persistently
    export PAGER='most'
    
  4. Sauvegarder

    (Ctrl+O) -> Enter -> (Ctrl+X)

  5. Rafraîchir

    source ~/.bashrc
    
  6. Test

    man ln
    

Cela fonctionne également dans Xterm.

3
Denis Griffin

Pris de - http://nion.modproBe.de/blog/archives/569-Colored-Manpages.html

Extrait:

$ mkdir ~/.terminfo/ && cd ~/.terminfo

Maintenant, obtenez la description terminfo (enregistrer les points suivants comme la plupart des.txt):

# Reconstructed via infocmp from file: /usr/share/terminfo/x/xterm-pcolor
mostlike|manpages with color looking like most, 
    am, hs, km, mir, msgr, xenl, 
    cols#80, it#8, lines#24, wsl#40, 
    acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~, 
    bel=^G, bold=\E[1m\E[31m, clear=\E[H\E[2J, cr=^M, 
    csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H, 
    cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C, 
    cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, 
    dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM, dl1=\E[M, 
    dsl=\E]0;\007, ed=\E[J, el=\E[K, enacs=\E)0, fsl=^G, 
    home=\E[H, ht=^I, hts=\EH, il=\E[%p1%dL, il1=\E[L, ind=^J, 
    is2=\E7\E[r\E[m\E[?7h\E[?1;3;4;6l\E[4l\E8\E>, kbs=^H, 
    kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, 
    kdch1=\E[3~, kf1=\E[11~, kf10=\E[21~, kf11=\E[23~, 
    kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, kf15=\E[28~, 
    kf16=\E[29~, kf17=\E[31~, kf18=\E[32~, kf19=\E[33~, 
    kf2=\E[12~, kf20=\E[34~, kf3=\E[13~, kf4=\E[14~, 
    kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~, 
    kfnd=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~, 
    kslt=\E[4~, rc=\E8, rev=\E[7m\E[34m, ri=\EM, rmacs=^O, 
    rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=\E[?1l\E>, 
    rmso=\E[m, rmul=\E[m, 
    rs2=\E7\E[r\E8\E[m\E[?7h\E[?1;3;4;6l\E[4l\E>, sc=\E7, 
    sgr0=\E[m, smacs=^N, smcup=\E7\E[?47h, smir=\E[4h, 
    smkx=\E[?1h\E=, smso=\E[1;30m\E[47m, smul=\E[32m, 
    tbc=\E[3g, tsl=\E]0;, u6=\E[%i%d;%dR, u7=\E[6n, 
    u8=\E[?1;2c, u9=\E[c, 

Maintenant, compilez-le en utilisant tic (le compilateur d'entrée Terminfo-description):

$ tic mostlike.txt

(Vous voudrez peut-être supprimer le mostlike.txt Fichier après la compilation.)

Et puis simplement définir un alias dans le *rc Fichier de votre shell préféré.

$ alias man="TERMINFO=~/.terminfo/ LESS=C TERM=mostlike PAGER=less man"

Si vous souhaitez modifier le fichier TerminFo, utilisez infocmp mostlike Pour obtenir le contenu plus tard.

1
dirtybit

Prendre Réponse de DirdyBit , je voulais modifier la couleur des résultats de recherche en surbrillance. Ceci s'appelle "Mode Standout", voici un exemple de fichier "xterm-jaune.ti":

xterm-yellow|yellow standout mode,
# exit standout mode
  rmso=\e[m,
# begin standout mode
  smso=\e[5;30;43m,
# similar terminal
  use=xterm,

Compilez et installez le fichier:

tic xterm-yellow.ti

Ajouter une ligne à "~/.profile" ou similaire:

TERM=xterm-yellow
1
Steven Penny