`man`に小文字を区別するマッチングを強制することはできますか?


10

manページを検索すると、大文字と小文字が区別されますが、大文字のみが検索されます。たとえば、xと一致xしますがX、とXのみ一致しxます。これはman-dbman のバージョンであり、デフォルトでfedora派生システムで使用され、他の人でも利用できます。 man manデフォルトのポケットベルはであると言いますless -s$LESS環境で定義されていません、私$PAGERはただですless、そして私はより少ないためのエイリアスを持っていません。

これは、自分で呼び出しlessたときの動作ではありません。

とにかく使用時にx小文字を小文字だけに一致させることはありますか?xman


1
デフォルトは、厳密な大文字と小文字の区別です。あなたが述べたものはあなたのLESS環境変数が含んでいるように聞こえます-i
manatwork 14

1
どのバージョンがlessありますか?のエイリアスセットはありlessますか?LESSまたはLESSOPEN環境変数が設定されていますか?デフォルトでは、一致のみをless検索し、次の検索はx行いxませんX
bsd 2014

このQはもうありませんでしたか?私はハウケがそれを尋ねたと思う、私はそれを探すつもりです...(slmはコメントで5分の期限が切れる前に戻ってきます...)これは重複ではありませんが、あなたが求めているように見えますか?unix.stackexchange.com/questions/116395/…–
slm

@slm、これも私の最初の反応でしたが、質問の所有がその質問に参加したので、彼はそれについて知っていると思います。
manatwork 14

@manatwork echo $LESS=なし。大文字と小文字を区別しないことに注意してください。ただし、大文字と小文字を区別するWRTの大文字のみを適用します。@bdowning alias | grep less=なし。manただし、(mandb、btw)を介してのみ適用されることに注意してください。私はこれについてどこかで前に読んだことと思います...
goldilocks 14

回答:


3

男はレッサーを呼んでいます。男性レベルでの唯一のコントロールは、Lessを呼び出すオプションを選択することです。

Lessの検索の大文字と小文字の区別は、2つのオプションによって制御されます。

  • 場合に-I有効であり、その後の検索は、大文字と小文字を区別しないである:のいずれかaまたはA両方を一致させるために使用することができるaA
  • Ifは-i有効であるが、いない-I場合、検索では大文字と小文字が区別されますが、パターンが何の大文字が含まれていない場合に限ります。

-ILessのデフォルトオプションを作成すると、manページでも、すべての検索で大文字と小文字が区別されなくなります。

Man-dbは、LESS環境変数を介してページャーに追加のオプションを渡します。これは、Lessがコマンドラインオプションと同じように解釈します。設定はコンパイル時にハードコードされ、で始まり-iます。(値は"-ix8RmPm%s$PM%s$"Man-db 2.6.2の時点で、P…$部分はプロンプト文字列です。)

manページの検索で大文字と小文字を区別したくない場合、または常に大文字と小文字を区別しない場合は、man-db自体でこれを構成する方法はありません。Man-dbが存在する場合はその内容を現在の値の前に付加するのでmanLESS環境変数を操作するエイリアスまたはラッパースクリプトを作成できます。

alias man='LESS="$LESS -I" man'

この-iオプションをオフにして、マニュアルページでデフォルトで常に大文字と小文字を区別して検索するには、次のようにします。

alias man='LESS="$LESS -+i" man'

環境変数をLESS設定して別の値をハードコードすることもできMANLESSますが、その場合、値をにman設定LESSするだけでMANLESS、カスタムタイトル行(「マニュアルページfoo(42)」)やその他の機能(特に、-R太字および下線の書式設定のために必ず含めてください)。


1

これがless's -i(コマンドラインスイッチ)の "大文字と小文字を区別しない"モードのしくみです(つまり、大文字でも区別されます)。Gillesが指摘するように、これを使用するとman-dbにコンパイルされます。

GillesがWRTのエイリアス+-iまたはカスタムの設定に回答する方法に加えて、MANLESSmanページが開いたら、厳密な大文字と小文字の一致を切り替えることができます-i(スイッチのオンとオフを切り替えます)。あなたは少し「ケースは検索で重要である」というメッセージと、今表示されますxのみマッチをxしてXのみ一致しますX

Man-db manには-Iスイッチがありますが、これはmanページの検索に適用されます。たとえば、デフォルトでman BASHはbashのマニュアルページが表示されますが、表示されman -I BASHません。


0

「とにかく使用時にx小文字を小文字だけに一致させることはありますか?」xman

ここに一つの方法があります

man -Tascii manpage |less

詳細はわかりませんが、roffマークアップされたテキストが表示されているにもかかわらず、処理がマークアップを実行しており、ポケットベルがマークアップされていないテキストと一致しているようです。
非常に混乱していますが、うまくいけば、nroff第一人者がパイプラインを説明できると思います。


これにより、GUIターミナルで混乱が発生します(ESC[1mタイプシーケンスの完全な)。
goldilocks 14
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.