English | 日本語
XeFM には充実したログ機能があり、アプリケーションの出力、エラーメッセージ、動作に関する情報を専用のログペインに記録します。ログ機能を使うと、XeFM の動作を見守ったり、問題をトラブルシューティングしたり、アプリケーションが何をしているかを把握したりできます。
ログペインは XeFM の画面の下部に表示され、次のものを表示します。
メッセージは種類ごとに色分けされます。
┌─────────────────────────────────────────────────────────────┐
│ │
│ Main XeFM Interface │
│ (File Browser) │
│ │
├─────────────────────────────────────────────────────────────┤
│ Log Messages: │
│ 14:23:45 [Main] INFO: XeFM started │
│ 14:23:46 [FileOp] INFO: Copying file.txt to backup/ │
│ 14:23:47 [FileOp] INFO: Copy completed successfully │
│ 14:23:48 [STDOUT] Processing complete │
└─────────────────────────────────────────────────────────────┘
ファイル一覧からフォーカスを移さずにログをスクロールするアクションが 4 つあります。どのキーに割り当てられているかは F1 で確認してください。
scroll_log_up / scroll_log_down:1 行ずつscroll_log_page_up / scroll_log_page_down:1 ページずつ。履歴の途中から scroll_log_page_down を使うと、最新のメッセージまで戻っていけますファイル操作をリアルタイムで見守れます。
14:23:45 [FileOp] INFO: Copying file1.txt to backup/
14:23:46 [FileOp] INFO: Copy completed successfully
14:23:46 [FileOp] INFO: Copying file2.txt to backup/
14:23:47 [FileOp] INFO: Copy completed successfully
エラーを見つけて、その内容を理解できます。
14:23:45 [FileOp] INFO: Copying protected.txt to backup/
14:23:46 [FileOp] ERROR: Permission denied
外部プログラムからの出力を確認できます。
14:23:45 [Main] INFO: Running external script
14:23:46 [STDOUT] Processing file 1 of 10
14:23:47 [STDOUT] Processing file 2 of 10
14:23:48 [STDOUT] Processing complete
時間のかかる操作を見守れます。
14:23:45 [Archive] INFO: Extracting archive.zip
14:23:46 [Archive] INFO: Extracted 100 of 500 files
14:23:47 [Archive] INFO: Extracted 200 of 500 files
14:23:48 [Archive] INFO: Extracted 300 of 500 files
14:23:49 [Archive] INFO: Extraction completed
ログペインのサイズは設定で変えられます。
XeFM が保持するログメッセージの数は設定で変えられます。
メッセージには次のいずれかのレベルが付きます。
ログには INFO 以上が表示されます。これを変える設定はありません。
ログペインの内容は、デスクトップアプリでもターミナルでも同じく、2 つの方法でシステムのクリップボードにコピーできます。バグ報告、チャットのメッセージ、メモに貼り付けるのに便利です。
マウスでログの上をドラッグして行を強調表示し(ダブルクリックで単語、トリプルクリックで行を選択します。上端や下端を越えてドラッグすると選択が続きます)、コピーのキー(Ctrl-C。macOS アプリでは、キーマッププリセットによって Command-C にも割り当てられています。キーマッププリセットを参照してください)を押します。ログでテキストが強調表示されているときは、このキーはそのテキストをコピーします。強調表示がないときは、ファイルをファイルクリップボードに入れます。テキストがクリップボードに入ると強調表示は消えます。
このキーは、最後にどのペインをクリックしていたかにかかわらず、ログで強調表示されているものをコピーします。そのため、ログで選択してからファイル一覧に戻っても、コピーできなくなることはありません。何も強調表示されていなければ、何もしません。
Edit ▸ Copy Log Selection はメニューから同じことを行います。何かを選択するまではグレー表示になっています。
Edit ▸ Copy All Logs は、ペインがまだ保持しているすべての行をコピーします。起動時からの行も、スクロールして見えなくなった行も、バッファーの上限(2000 行)まですべてです。コピーした行数はログ自体に表示されます。ログを貼り付けてほしいと頼まれたときは、これを使ってください。
このアクションには既定のキーがありません。キーを割り当てるには、~/.xefm/config.py で copy_log_all をバインドします。
KEY_BINDINGS['copy_log_all'] = ['Ctrl-G']
ファイルにはまったく触れないキーがほしい場合は、copy_log_selection(ログ専用のアクションで、既定ではキーが割り当てられていません)を同じようにバインドします。
行はペインに表示されているとおりにコピーされます。ロガーのメッセージにはタイムスタンプ(HH:MM:SS)、ロガー名、レベルが付き、アプリ自身のステータス行は描画されているとおりのプレーンテキストとしてコピーされます。
14:23:45 [Main ] INFO: Application started
14:23:46 [FileOp] INFO: Loaded directory: /home/user/documents
Copied 3 names to clipboard
14:23:47 [Main ] WARNING: Configuration file not found, using defaults
選択した部分は画面上の配置どおりにコピーされるので、折り返された長い行は折り返し位置で分かれた状態になります。Copy All Logs は折り返さずに行全体をコピーします。
scroll_log_up で 1 行ずつ上にスクロールしますscroll_log_page_up で履歴を 1 ページずつさかのぼりますscroll_log_page_down でまた先に進みます問題: ログペインが表示されません。
解決策: 設定を確認してください。
LOG_PANE_ENABLED = True になっていることを確かめます問題: 新しいメッセージがすぐに流れ去ってしまいます。
解決策:
scroll_log_up で上にスクロールして確認しますscroll_log_page_up でページ単位でさかのぼります問題: ログペインがメッセージであふれてしまいます。
解決策:
MAX_LOG_MESSAGES を増やします(既定値:1000)すべてのメッセージにタイムスタンプが付きます。
14:23:45 [FileOp] INFO: Operation started
14:23:46 [FileOp] INFO: Operation completed
形式:HH:MM:SS(24 時間表記)
メッセージには発生元が表示されます。
複数行の出力はそのまま保たれます。
14:23:45 [STDOUT] Processing file: example.txt
14:23:45 [STDOUT] Size: 1024 bytes
14:23:45 [STDOUT] Modified: 2024-01-15
メッセージは見分けやすいように色分けされます。
XeFM のログ機能を使うと、アプリケーションの動作を隅々まで把握でき、動作の見守り、問題のトラブルシューティング、アプリケーションが何をしているかの理解に役立ちます。色分けされ、スクロールできるログペインのおかげで、操作を追跡し、問題をすばやく見つけるのが簡単になります。
開発者向けのドキュメントは doc/dev/LOGGING_SYSTEM.md を参照してください。