無限の猿

勉強したことを書き残してます

pythonを書くためにwindowsにSublime text 2の導入する

主にpythonを書くためのエディタとして今までeclipseを使っていたのですが、sublime textというものが良さそうだったので導入してみました。
個人的に気に入ったのはデザインがシンプルというところ。
まだ問題がありますが、とりあえず動くようになったので記録しておきます。
なんでその設定がいるのかとかは書いていません。

ダウンロード・インストール

こちらの公式サイトから。

 Sublime Text - Download

sublime text 3がβ版で公開されていますが、安定してそうな2の方を利用させて頂きました。
windowsにはポータブル版も提供されています。
インストール自体は簡単なので略。

設定

メニュー > Preferences > Setting - Userから設定ファイルを開き、以下のように書き換えます。
Pythonのパスは要確認。

{
	"cmd":["python","-u","$file"],
	"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
	"selector": "source.python",
	"windows":
	{
		"encoding": "cp932",
		"path": "C:/Python27"
	}
}

パッケージのインストール

Package Controllerのインストール

メニュー > View > Show Consoleからコンソールを呼び出し、

import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print('Please restart Sublime Text to finish installation')

と入力します。

ConvertToUTF8のインストール

メニュー > Preferences > Package ControlからPackage Controllerを呼び出し、"install package"と打ち込んで選択。
するとまた入力欄が出るので、今度は"ConvertToUTF8"と打ち込んで選択。

IMESupportのインストール

同様に"IMESupport"と打ち込んで選択。

ビルドファイルの書き換え

上記の設定でビルドしても[Decode error - output not utf-8]が出る場合には、
メニュー > Preferences > Browse Packagesからエクスプローラを開き、Python.sublime-buildというファイルを以下のように書き換えます。

{
	"cmd": ["C:/Python27/python", "-u", "$file"],
	"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
	"selector": "source.python",
	"encoding": "cp932"
}

問題点

日本語出力ができない

日本語出力が設定を色々いじってみても安定しない。

print 'test'

は問題なく動くが、

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
import codecs

sys.stdout = codecs.getwriter('utf_8')(sys.stdout)
print u'テスト'

は[Decode error - output not cp932]を吐いて止まる。

Consoleで自分でインストールしたパッケージがimportできない

コンソールでimport numpyなどと打ってもImportError: No module named numpyと怒られる。
パスとかの問題な気がするのですが、暫く調べてみてもどうにもならなかったので保留。