- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在使用 collective.python扩建。
我有以下 .pythonrc
(配置有 export PYTHONSTARTUP=~/.pythonrc
):
import readline
import rlcompleter
readline.parse_and_bind('tab: complete')
当我在 shell 中运行 Python
时,制表符补全起作用了。当我在 Debug模式下运行 Plone
时,它没有。除非,我将 .pythonrc
的内容粘贴到 Plone 调试 Python 提示符中。我在这里缺少什么?
注意:只有当我通过 python bootstrap.py
安装 Plone 时,粘贴我的 .pythonrc 的内容才有效(即使用 collective.python< 引导 Plone 构建
Python)。如果我在 virtualenv
中安装 Plone,则没有任何效果。但至少在那种情况下,缺少的功能对我来说是有意义的(即 virtualenv
中可能缺少使制表符完成工作所需的某些东西。)
最佳答案
实例 Controller 使用两个命令行开关; -i
用于交互模式,-c
加载 Zope 配置并设置 app
变量。 -c
开关用于禁用 PYTHONSTARTUP
环境变量。
您可以修改plone.recipe.zope2instance
包以运行脚本。
在plone.recipe.zope2instance
中,找到plone/recipe/zope2instance/ctl.py
文件,修改do_debug()
方法到:
def do_debug(self, arg):
interactive_startup = ("import os;"
"os.path.exists(os.environ.get('PYTHONSTARTUP', '')) "
"and execfile(os.environ['PYTHONSTARTUP']); del os;"
'import Zope2; app=Zope2.app()')
cmdline = self.get_startup_cmd(self.options.python,
interactive_startup,
pyflags = '-i', )
事实上,我非常喜欢支持 PYTHONSTARTUP
的想法,所以我已经对配方进行了更改,请参阅 rev 536f8fc1c4 !
关于python - 如何让 Plone 读取我的 pythonrc?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13839713/
我是一名优秀的程序员,十分优秀!