PyDev interactive console の working directory を自動設定する

PyDev の interactive console を起動したときのデフォルトの作業ディレクトリを変更する方法です。

Mac用です。(startswith の条件を変えれば他環境でも対応できるかと)

Preferences > PyDev > Interactive Console > Initial Commands

import sys, os, itertools
def working_dir():
	def same_chr(*c):
		seen = set(c)
		return seen.pop() if len(seen) == 1 else ''
	path = [p for p in sys.path if p.startswith('/User')]
	return ''.join(''.join(itertools.takewhile(
		lambda c: c != '', itertools.imap(same_chr, *path))).rpartition('/')[:-1])
os.chdir(working_dir())
print('%s\n%s\n%s' % (sys.executable or sys.platform, sys.version, os.getcwd()))


PYTHONPATH が設定されているパスから /User で始まるパスのみを抽出し、抽出された全てのパスで一致する部分を作業ディレクトリとして採用しています。

参考: