Source

cointoss1973.bitbucket.org / thg / html / _sources / debugging.txt

TortoiseHg のデバッグ
=====================

.. module:: debugging
	:synopsis: TortoiseHg のダイアログやシェル拡張をデバッグするためのヒント


ダイアログ
----------

標準エラー出力はプログラムの終了時点でバッファに補足されます。
何らかの深刻なエラーが標準エラー出力で見つかった場合、ユーザがバグを報告できるように
そのすべての内容がバグレポートツールに送信されます。
出力されていないエラーがあるかもしれない場合は環境変数 **THGDEBUG** を設定して
標準エラー出力のバッファリングを無効化してください。

多少 Python の経験があれば: ::

    hgtk --debugger <command>

を使うこともできます。

hgtk によるダイアログ用の別プロセス生成を無効にするには環境変数 **THG_HGTK_SPAWN**
を設定するか、コマンドラインから '--nofork' オプションを使って起動してください。


Windows
~~~~~~~

例えばチェンジログビューアをデバッグする場合、コマンドプロンプト (:command:`cmd.exe`)
を起動してリポジトリに移動し、次のコマンドを実行してください: ::

	set THGDEBUG=1
	hgtk log


Linux または MacOSX
~~~~~~~~~~~~~~~~~~~

例えばチェンジログビューアをデバッグする場合、ターミナルでリポジトリに移動し、
次のコマンドを実行してください: ::

	export THGDEBUG=1
	hgtk log


シェル拡張
----------

デバッグ方法はプラットフォームに依存します。


Windows エクスプローラ
~~~~~~~~~~~~~~~~~~~~~~

http://msdn.microsoft.com/en-us/library/cc144064(VS.85).aspx に
Windows シェル拡張を実行・デバッグするための情報が掲載されています。

SysInternals による :command:`DbgView` ツールはシェル拡張からのデバッッグ情報を
補足することができます。

:command:`ThgTaskbar` アプリケーションの設定ダイアログにはエラーログが表示される
タブがあります。このダイアログを開いた状態でエクスプローラを使ってリポジトリを
閲覧すると各種デバッグメッセージを取得することができます。


Nautilus ファイルマネージャ
~~~~~~~~~~~~~~~~~~~~~~~~~~~

環境変数 DEBUG_THG を設定して、

* 個別のプロセスをテストします: ::

    DEBUG_THG=Ne TMPDIR=/tmp/anydir/ --no-desktop nautilus [path]

* メインインスタンスをテストします: ::

    nautilus -q
    DEBUG_THG=NOe nautilus

* 常にデバッグ状態で起動したい場合は環境変数 DEBUG_THG をセッション開始と共に
  読み込まれる設定ファイル (~/.profile, ~/.xprofile など) に設定してください。

.. NEEDFORTRANSLATION

Upper case characters in DEBUG_THG specify modules.  Only *O* and *N*
for *OverlayCache* and *Nautilus*, respecively, are supported module
names.  Lower case characters imply parts. Only *e* is supported,
implying *error* messages.

Nautilus を再起動は次のどちらかの方法で可能です:

1) すべての Nautilus プロセスを削除する (セッションが自動的に Nautilus を再起動し、標準入出力先は ~/.xsession-errors)

2) コマンドラインから :command:`nautilus -q; nautilus` を実行 (標準入出力先はコンソール)
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.