Linuxは初めてです。私はUbuntu11.04を使用しています。コマンドラインからkateを使用して、「kate&」を使用して(またはアンパサンドを使用せずに)ファイルを開くと、Kateはコンソールにメッセージを表示し始めます。ファイルを保存したり閉じたりすると、継続的に出力されます。それらは私にはデバッグメッセージのように見えます(以下のサンプル)。 Synapticパッケージマネージャーを使用してKateをインストールしました。開発バージョンをアンインストールしてインストールしても、変更はありませんでした。すぐに私のコンソールは雑然とします。これらのメッセージを抑制する方法はありますか?ケイトの設定にも明確なものはありませんでした。
ありがとうございました、
メッセージは次のようになります
kate(13412)/kate-filetree KateFileTreeModel::handleInsert: BEGIN!
kate(13412)/kate-filetree KateFileTreeModel::handleInsert: creating a new root
kate(13412)/kate-filetree ProxyItem::ProxyItem: ProxyItem(0x1796840,0x0,-1,QObject(0x0)
....
kate(13435)/kate-filetree KateFileTreeModel::documentActivated: adding viewHistory ProxyItem(0x1eb7cf0,0x1eb6830,0,KateDocument(0x1d93ea0) , "Untitled" )
kate(13435)/kate-filetree KateFileTreeModel::updateBackgrounds: BEGIN!
kate(13435)/kate-filetree KateFileTreeModel::updateBackgrounds: END!
kate(13435)/kate-filetree KateFileTreeModel::documentActivated: END!
kate(13435)/kate-filetree KateFileTreePluginView::viewChanged: END!
X Error: BadWindow (invalid Window parameter) 3
Major opcode: 20 (X_GetProperty)
Resource id: 0x5601b42
X Error: BadWindow (invalid Window parameter) 3
Major opcode: 20 (X_GetProperty)
Resource id: 0x5601b42
KDEフォーラムのこの投稿では、KDEが何をしているのか、そしてそれを止める方法について説明しています。
http://forum.kde.org/viewtopic.php?f=22&t=93955
デバッグメッセージを無効にしなかったためです。
「kdebugdialog」を開き、「kate」を検索して、すべてのチェックボックスの選択を解除します。これで、ケイトはもうあなたと話をしません。
デバッグメッセージは通常、コンソールで2で示されるファイルハンドルである標準エラーに書き込まれます。このようにアプリケーションを起動することで、出力に影響を与えることなく、標準出力(ファイルハンドル1)にリダイレクトできます。
kate 2>/dev/null
必要に応じて、&
を追加することもできます。
ここでの番号2はファイルハンドル2を表し、>
はシェルのリダイレクト演算子であり、/dev/null
は「ブラックホール」デバイスです。書き込まれたものをすべて消費するため、「消えます」 "(コンソールには表示されません)。
/dev/null
をファイル名に置き換えることで、標準エラー出力をキャプチャできます。その場合、出力はコンソールではなくファイルに送られます。
アプリケーションがデバッグメッセージを標準出力に書き込んでいる場合は、番号2を番号1に置き換えることができます(上記を参照)。この場合、通常のメッセージもリダイレクトされることに注意してください。
標準出力とエラーの両方を同時にリダイレクトできます。これを行う最も簡単な方法は次のとおりです。
kate 2>&1 1>/dev/null
ここで、&1
は、標準エラーをリダイレクトする必要があるファイルハンドル1を示します。 &
の使用は、1という名前のファイルと区別することです。
リダイレクトの詳細については、シェルのマニュアルをお読みください(例: bash )
すべてのデバッグスタイルをオフにすると、コンテキストエラーが発生しました。これは煩わしいことです。それで私は別のトリックに頼りました(アッティラによって部分的に説明されました:
Kate実行可能ファイルを移動し、スクリプトに置き換えます。
cd /usr/bin
Sudo mv kate kate_exec
Sudo touch kate
Sudo chmod 755 kate
Sudo vim kate
In vim(またはこれまでのエディター)はkate(現在はスクリプト)をに変更します
kate_exec $@ 2> /dev/null &
最後に&
は必要ありません。これは私の好みなので、端末に入力し続けることができます。Attilaはそのほとんどを説明し続けます。ここで重要なのは、すべてのパラメーターをkate実行可能$@
に渡し、stderr 2> /dev/null
をリダイレクトすることです。