db4*_*48x 10
你并不是完全疯了.
python-mode可以集成eldoc-mode显示你正在调用的函数的arg规范.只是M-x eldoc-mode当你在一个python文件中打开它,它应该开始工作.它与一个较差的python缓冲区进行对话,直接检查函数,因此它应该始终准确无误.您可以在emacs启动文件中自动为所有新python-mode缓冲区(add-hook 'python-mode-hook '(lambda () (eldoc-mode 1)) t)启用它.现在,在这一点上,我不得不说我不做任何常规的python编程,而且当我尝试它时,它现在不起作用.我花了几分钟在源代码中探索,一切似乎都已到位,但它在下级进程中运行的代码只是返回一个空字符串.也许这只是我的设置,或者我正在阅读错误的源文件; 很难说.
Emacs提供了几种不同类型的扩展/自动完成功能.默认情况下,您可以dabbrev-expand通过点击访问M-/.这是一种相当简单的完成形式; 它只是适用于你碰巧编辑的任何旧文件.更复杂的是hippie-expand,但即便如此也没有做任何特定于python的事情.文档说它可以与hippie-expand完全完成集成,但这可能是一个谎言; 我无法弄清楚它是如何工作的.稍微探讨了几个相关的解决方案,所有这些似乎都依赖于此pymacs.如果我要做很多python编程并且还没有设置相当复杂的emacs,我可能会首先安装emacs-for-python.它看起来是一个非常完整的设置,甚至声称有实时警告/错误检测.
本着帮助他人自助的精神,我想指出我是如何得到这些信息的.我的第一步是打开一个文件python-mode.我实际上没有任何python代码可用,所以我只是去了我的暂存缓冲区并使它成为一个python缓冲区(M-x python-mode).然后我就这个奇怪的新模式(C-h m)寻求帮助,看看它能做些什么.它的作者慷慨放什么样的模式可以做一个简要总结,其中提到eldoc-mode,i菜单,outline-mode,hippie-expand,rlcompleter,缩写表和一堆其他的东西.从那里我开始查看源代码.例如,为了与eldoc-mode集成,它定义了一个被调用的函数,python-eldoc-function并将其提供给eldoc模块以便在python缓冲区中使用.阅读该代码向我展示了它如何与劣质缓冲区等进行交互.
我希望其中一些有所帮助.