2013-05-18 30 views
1

我用zc.buildout构建了一个包含IPython脚本的环境。zc.buildout中的IPython笔记本没有使用鸡蛋路径

我的问题很简单:

  • ,如果我在控制台启动IPython中,一切都OK了,我让我所有的鸡蛋放在sys.path中

  • ,但如果我的IPython推出的笔记本,我只获取默认系统路径。

有没有办法在启动笔记本的时候包括我所有的鸡蛋?

问候,

蒂埃里

回答

1

所以,我想在某个地方的笔记本电脑启动过程分叉,这意味着sys.path中会得到恢复和扩建的技巧也无济于事。

我解决了如下的问题,虽然这是一个有点脏:

  1. 创建一个入口点如下:

    setup(... 
         entry_points = { 
          'console_scripts': ['ipython = <yourpackage>.ipython:main'] 
         }) 
    
  2. 放入/ipython.py如下:

    from IPython.frontend.terminal.ipapp import launch_new_instance 
    import os 
    import sys 
    
    def main(): 
        os.environ['PYTHONPATH']=':'.join(sys.path) 
        sys.exit(launch_new_instance()) 
    

否w,运行bin/ipython notebook会给你你期望的sys.path。