私が理解したように、人々はそれをless
ポケットベルとして使用し、キーワードを検索するときにイタリック体でless
キーワードを「強調表示する」ために使用します。これは本当に不便でvimのようなものに変えたいのですが、set hlsearch
見つかったパターンの背景が異なります。
実行しようとしましたが、man -P vim systemd
エラー状態1で終了したため停止したようですless
。
私はそこで何の助けも見つけることができませんでした。代わりに、このオプションがすべてのハイライトをオフにするman less
ことがわかりましたが、これはイタリック体よりも悪いです。-G
つまり、マニュアルページで検索の強調表示(背景色の変更)を実装する方法を知っている人はいますか?
ちなみに私はUbuntu 14.10を実行しています。
私はこれに会った質問同じことを聞いているようですが、これがどのように機能するのかわかりません(LESS_TERMCAP_so
)。マニュアルless
ページにはこれに対する言及はありません。 (このソリューションで奇妙な結果を得ました)
答え1
スーパーユーザーで答えを見つけました。https://superuser.com/questions/566082/less-doesnt-highlight-search
これはTERM設定に関連しているようです。たとえば、通常の gnome ターミナル ウィンドウでは通常、あまり強調表示が機能しませんが(白い背景を強調表示)、tmux にあるときはイタリック体が表示されます。私にとって違いは、tmuxではTERMが「screen」に設定され、tmuxでは「xterm-256color」に設定されることです。 tmuxウィンドウで「TERM = xterm-256color」を設定すると、lessの強調表示が背景の強調表示に戻ります。
答え2
言及がLESS_TERMCAP_so
不完全です。これは、termcap so
(優れた)機能をオーバーライドするlessの特殊な環境変数です。この機能を使用するには、se
(標準)機能も提供する必要があります。
これ用語情報(5)マニュアルページには、terminfo(smso / rmso)とtermcap(so / se)の名前に関するこれらの機能がまとめられています。
enter_standout_mode smso so begin standout mode
exit_standout_mode rmso se exit standout mode
その一部について最も明るい部分説明する:
端末に複数の表示属性がある場合は、さまざまな方法でこれらの属性を表すことができます。表示形式を選択する必要があります。目立つモードは、エラーメッセージやその他の人目を引くコンテンツを強調するための見やすい高コントラスト形式を表します。 (選択できる場合は、映像反転と半分明るくても良いし、映像反転のみするのも良いです。)
smso
そしてrmso
、それぞれ。
色を使いたいなら目立つ、対応するLESS_TERMCAP_se
リセット色を提供する必要があります。他の理由で(groffのSGRカラー機能を使用するなど)、マニュアルページでカラーを使用したくない限り、これは比較的簡単です。
コメントに提案された値を想定すると、次のようになります。
export LESS_TERMCAP_so=$'\E[30;43m'
その後、ほとんどの端末を使用してリセットできます
export LESS_TERMCAP_se=$'\E[39;49m'
しかし、その理由はイタリック体GNUの端末記述は、独自screen
の主要/標準機能で、イタリック体の標準エスケープシーケンスを使用します。その一部は端末データベース項目。
答え3
検索後にクリックするとESCu検索ハイライトがオフになり、新しい検索が再びオンになるless
ため、セッションクリックの検索ハイライトは永久にオフになります-G。
LESS='-G'
環境に入れるか、man
次のように実行します。
LESS='-G' man less
less
皮肉なことに、マンページにはこの内容がすべて文書化されています。
また、あなたと同じ環境に以下を置くこともできます.bash_profile
。
export MANPAGER='less -G'
答え4
~のためマルチプレクサ私はTERM
それをtmux-256color。他の利点の中でも、「一般的な」リバースハイライトがあります。少ない。 Fedoraやcygwinなどの最新の機能を使用すると、うまく機能します。
$ cat ~/.tmux.conf
⋮
set-option -g default-terminal tmux-256color
これ呪いしかし、Centosのパッケージには2つのtmux定義(マルチプレクサそしてtmux-256color)。 Fedoraから簡単にインポートできます。少ししわはセントース呪いFedoraのterminfoファイルを直接理解するには古すぎます。
Fedoraから:
$ infocmp tmux256-color >temp.txt
セントースでは:
$ scp fedora-machine:temp.txt .
$ tic temp.txt
それからマルチプレクサ:
$ TERM=tmux-256-color man tmux
結果!
参考としてのみチックコマンドは、コンパイルされた端末記述を個人のterminfoデータベース、つまり
~/.terminfo/t/tmux-256color
(この場合)に配置します。必要に応じて、自由にグローバルデータベースに移動できます。
$ sudo mv ~/.terminfo/t/tmux-256color /usr/share/terminfo/t/