danlei
Well-Known Member
Eine kleine Anleitung für farbige Manpages unter FreeBSD
Alle Angaben beziehen sich auf FreeBSD 6.2, Vim 7 und eine sh-kompatible Shell, lassen sich aber problemlos auf andere Systeme übertragen. # meint Root, $ einen normalen User.
Unter /usr/local/share/vim/vim70/macros findet sich less.sh. Dieses Skript erlaubt es, Vim als Pager zu nutzen. Ich empfehle, sich dieses Skript z.B. als vless nach /usr/local/bin zu kopieren und ausführbar zu machen. (Hat den Vorteil, dass man vless auch in anderen Situationen als Pager mit Syntax-Highlighting nutzen kann)
In /usr/local/share/vim/vim70/scripts.vim muss nun noch eine Regel erstellt werden, sodass vim Manpages als solche erkennt und entsprechendes Highlighting verwendet. Einfach folgenden Code anhängen:
Fast schon geschafft! Jetzt muss dem System nur noch mitgeteilt werden, vless als Pager zu nutzen. Eine Möglichkeit wäre:
Dies hat jedoch den Nachteil, dass alle Programme "col -b | /usr/local/bin/vless" als Pager nutzen. col -b ist nötig um Manpages richtig anzuzeigen, kann jedoch in anderen Situationen zu Problemen führen (z.B. ri).
Deshalb empfehle ich, einfach ein entsprechendes Alias zu nutzen:
Nun noch den Entsprechenden Eintrag in die .zshrc oder was auch immer und schon hat man ein farbiges man!
Zusätzlich kann vless auch, analog zu less, in Pipes genutzt werden!
Alle Angaben beziehen sich auf FreeBSD 6.2, Vim 7 und eine sh-kompatible Shell, lassen sich aber problemlos auf andere Systeme übertragen. # meint Root, $ einen normalen User.
Unter /usr/local/share/vim/vim70/macros findet sich less.sh. Dieses Skript erlaubt es, Vim als Pager zu nutzen. Ich empfehle, sich dieses Skript z.B. als vless nach /usr/local/bin zu kopieren und ausführbar zu machen. (Hat den Vorteil, dass man vless auch in anderen Situationen als Pager mit Syntax-Highlighting nutzen kann)
Code:
# cp /usr/local/share/vim/vim70/macros/less.sh /usr/local/bin/vless
# chmod 0755 /usr/local/bin/vless
In /usr/local/share/vim/vim70/scripts.vim muss nun noch eine Regel erstellt werden, sodass vim Manpages als solche erkennt und entsprechendes Highlighting verwendet. Einfach folgenden Code anhängen:
Code:
" manpages
if did_filetype() " filetype already set..
elseif getline(1) =~ '^\(.\+\)(\d\{1}).\+\1(\d\{1})$'
set filetype=man
endif
Fast schon geschafft! Jetzt muss dem System nur noch mitgeteilt werden, vless als Pager zu nutzen. Eine Möglichkeit wäre:
Code:
$ export PAGER="col -b | /usr/local/bin/vless"
Dies hat jedoch den Nachteil, dass alle Programme "col -b | /usr/local/bin/vless" als Pager nutzen. col -b ist nötig um Manpages richtig anzuzeigen, kann jedoch in anderen Situationen zu Problemen führen (z.B. ri).
Deshalb empfehle ich, einfach ein entsprechendes Alias zu nutzen:
Code:
$ alias man="PAGER='col -b | /usr/local/bin/vless' man"
Nun noch den Entsprechenden Eintrag in die .zshrc oder was auch immer und schon hat man ein farbiges man!
Zusätzlich kann vless auch, analog zu less, in Pipes genutzt werden!
Attachments
Last edited:

