所以我有Emacs 24.3,它带来了一个非常新的python.el文件,提供了一个Python模式进行编辑.
但我一直在读书,有一个python-mode.el在快速启动,并比较其跳出,我认为前者是下4000线,而后者则是这两个文件差不多20000这表明后者更丰富的功能.
我找不到关于它们的任何在线功能比较,文档或至少有关每个功能的列表.是的,有语法高亮和嵌入式解释器,但是在shell缓冲区中完成,在源文件缓冲区中完成,autoindent,reindent等等.
那么这些模式的重要特征是什么?(或者你推荐的任何其他用于Emacs的Python模式.)请提供详细的答案.
tkf*_*tkf 22
我曾经是python-mode.el用户,但一年前就退出了,因为我觉得它的开发方式并不是很好.这是我当时的笔记列表.但我需要警告你,从那时起已经过去了将近一年,所以情况可能会改变.
我喜欢python-mode.el的一件事是它带有自动测试装置(虽然我从来没有运行它).python.el还没有测试集.但我知道python.el的作者现在正在编写它.
虽然python.el是紧凑的,但并不意味着你的功能很差.它更像是保持核心小,让其他人通过提供简洁的API来扩展它.python.el的同一作者编写了python-django.el来扩展django项目的python.el.我为Python编写了一个名为Jedi.el的自动完成插件和一个名为EIN的高级IPython插件.他们都比python-mode.el更好地支持python.el(好吧,那是因为我不使用python-mode.el).
我首先从python-mode.el中遗漏了一些东西,但是很快就修复了python.el(当然,这可能意味着我没有在python-mode.el中使用这么多功能).
如何在shell缓冲区中完成,在源文件缓冲区中完成,autoindent,reindent等.
在shell缓冲区中完成:它在python.el和python-mode.el中都有效.但有时如果你的Emacs版本和python(-mode).el版本组合不好,它就不起作用.所以python.el可能以这种方式更安全.但如果你想要更好的解决方案,请使用EIN :)
在源文件缓冲区中完成:只需使用Jedi.el :)
autoindent/reindent:我不知道哪一个在性能方面更好.但是,返回的keybind彼此不同.在python-mode.el中,如果输入RET,则会获得autoindent.在python.el中,RET不会给你缩进,你应该使用Cj代替.实际上,换行符和缩进的Cj是Emacs中的普遍行为.所以如果你用其他语言编程,python.el会更好.
去年大量参与开发python-mode.el,我的评论可能有偏见:建议继续使用python.el为Emacs初学者.其作者也值得赞扬一些有用的方法.
python-mode.el旨在提高编辑效率.它使得通过python2和python3或IPython shell并行运行或执行变得容易.
它减少了提供定制命令所需的击键次数.它使编辑更快,通过语音,宏驱动输入等帮助编程.
支持目前python.el中未知的Python语言功能:
py-up,py-down - 移动嵌套块
避免使用拼写错误提取表单,例如:
py-backward-clause
py-copy-clause
py-down-clause
Run Code Online (Sandbox Code Playgroud)
...
测试不同版本时无需自定义:
py-execute-clause-python2
py-execute-clause-python3
py-execute-clause-ipython
Run Code Online (Sandbox Code Playgroud)
...
py-expression,py-minor-expressionpy-execute-line了更多的活动区域要获得概述,请查看菜单.目录"doc"列出命令.
随着代码质量的提高:比较两种模式的方法可能是检查http://debbugs.gnu.org/中列出的错误.例如,参见bug#15510,#16875; 或http://lists.gnu.org/archive/html/help-gnu-emacs/2014-04/msg00250.html
已经在"粗略的提交粒度"评论:虽然tkf基本上正在寻找较小的部分,但有时条件会让我离开规则.相当多的部分不是手工编写的,而是由位于"devel"目录中的程序编写的.他们创建在开发分支frist中使用的文件 - 即components-python-mode.当开始一个新功能时,选择的路径是否富有成效往往并不明显.在一百个即将提交之后,它仍然可能变得不可能或不那么值得推荐.而不是发布所有曲折,用于在这些情况下将实验分支保留数天,并在测试通过时检入.
BTW假设tkf不是指编译错误 - 它会立即查找 - 而是编译器警告.不幸的是,Emacs混合了关于支持的样式首选项的警告和真实错误.
| 归档时间: |
|
| 查看次数: |
9643 次 |
| 最近记录: |