man
やless
などの端末アプリケーションの端末ベルをオフにする方法があるかどうか疑問に思っています。すでにファイル/マニュアルページの上部にいるときに「k」を押して上にスクロールしようとします。通常、ターミナルエミュレータのベルを完全にオフにしますが、人気のあるxset b off
コマンドがセットアップで機能していないようです。Ubuntu16.04からXTermを実行しています(具体的にはWSLで) X11を介してXmingに転送します。したがって、XTermのベルをオフにする方法についてのメモもあれば、それが利用可能であればありがたいです。
set bell-style none
を~/.inputrc
に入れてreadline
のベルをオフにする方法を知っていますが、残念ながら、これは入力(たとえば、複数の利用可能なタブの補完)にのみ役立ち、man/lessページをスクロールする場合には役立ちません。
ベルをオフにするless
への-Q
コマンドライン引数も知っていますが、man
とless
の両方(およびおそらく他のもの)に適用されるより一般的な設定/コマンドがあることを望んでいると思います)。
XTermのベルを完全にオフにできない場合は、少なくともすべての迷惑なベルが表示されるまで、各アプリケーションのベルを1つずつオフにする方法を学習します。
man
は、Ubuntu(および他のほとんどのシステム)ではless
であるデフォルトのポケットベルを使用します。これは変更できますが、変更したことはご存知でしょう。そのため、man
のフォーマットされた出力をページングするインターフェイスはless
のように見えます。 man
がマンページをフォーマットした後、less
を使用してマンページを表示します。 したがって、おそらく必要なのは、less
alwaysを-Q
オプションが渡されたかのように動作させることです。 man
やその他のプログラムで使用されます。
less
が実行されると、コマンドライン引数で渡されたオプションに加えて、使用するオプションについてLESS
環境変数が調べられます。したがって、WSLコマンドプロンプトを開いたときにソースとなるスクリプトの1つにこれを入れることができます。
export LESS=-Q
または、LESS
変数にすでに存在するオプションを保持するこれをお勧めします。通常、その変数は通常はまだ定義されていないため、これは不要ですが、定義されていない場合でも機能します。
export LESS="$LESS -Q"
ほとんどのUbuntuユーザーは、これと他の 環境変数 を 彼らの~/.profile
ファイル に設定したいと思うでしょう。 ( ~/.pam_environment
を使用する方法 一部の人が好む方法もあります 異なる構文を使用します 。)これも私がお勧めするものですシェルWSLが提供するログインシェルは、 最近のビルド(または構成済みの場合)では です。
これを確認するには、WSLコマンドプロンプトウィンドウを開いたときに提供されるシェルでshopt login_Shell
を実行します。ログインシェルではなく、Windowsショートカットに-l
または--login
を追加したくない場合は、それらのexport
コマンドの1つを.bashrc
ではなく.profile
に配置します。
xtermには、ベルを鳴らす代わりに端末をフラッシュする視覚的なベルオプションがあります。オプション-vb
を使用するか、~/.Xdefaults
に設定します
XTerm*visualBell:true
または同じものをxrdb -merge
にエコーします