Sublime Text Tips 1. sys.argvが存在しない

Sublime Text 2のPython処理系にはsys.argvが存在しません。実際にコンソールで「sys.argv」と入力してみると以下のエラーが表示されます。
(ちなみに、次の記事で説明する通り、コンソールではsysモジュールはインポート済みのため、 import sys を実行する必要はありません。)

>>> sys.argv
Traceback (most recent call last):
  File "", line 1, in 
AttributeError: 'module' object has no attribute 'argv'

このことは、sys.argv を参照するモジュールで問題になります。たとえば、doctestモジュールはsys.argvを参照するため、そのまま使用するとエラーになってしまいます。
とりあえず、doctestを実行する前に、以下の通りにsys.argvに適当に設定しておけば、エラーは回避できます。

import sys
sys.argv = ["sublime_text.exe"]  # 適当に設定

これはあくまでSublime Text 2のPython処理系で実行したときの話です。doctestに限れば普通のテストはシェルから .py を叩いて実行したいはずなので、その場合は関係ありません。
ただし、普通のPython処理系では import sublime のようにしてSublime Text 2のモジュールを利用することはできないため、テストをSublime Text 2上で実行する必要があります。プラグインのテストをdoctestで書きたい場合は、上記の内容に気を付ける必要があります。