当前位置: 首页 > 面试题库 >

ropmacs的用法教程

弓明亮
2023-03-14
问题内容

有很多站点提供了有关 安装 ropmacs的说明,但是到目前为止,在它 安装 后,我找不到任何有关如何 使用
它的说明。我已经安装了它,或者至少看起来如此,Emacs的顶部菜单栏中有“
Rope”菜单。怎么办?到目前为止,我只能使用“显示文档”(默认为抄送)。尝试使用代码辅助(我认为是自动完成的)只会导致Emacs在迷你缓冲区中询问“绳索项目根文件夹”(那是什么?),然后什么也不显示。

因此,一旦安装了ropmacs,在一些简单的python脚本上执行该操作的步骤是什么?喜欢的东西“如果你在你的Emacs这个脚本,把闪烁的广场 这里
,按下 ,它确实 ”将是一个答案。

(我一直在想是否应该问这个问题,因为似乎没有其他人遇到相同的问题)


问题答案:

好吧,您首先需要选择您的项目根文件夹。很简单,这是项目顶层的文件夹,如果要处理一个文件,则为当前文件夹。选择了根文件夹后,其他选项将起作用,例如代码辅助,显示文档,跳转到其他符号等。

为了充分利用ropmacs,我建议获取autocomplete.el,将其放入〜/ .emacs.d中,然后将其添加到您的.emacs中

(add-to-list 'load-path "~/.emacs.d/")
(add-to-list 'load-path "~/.emacs.d/auto-complete-1.2")
(autoload 'python-mode "python-mode" "Python Mode." t)
(add-to-list 'auto-mode-alist '("\\.py\\'" . python-mode))
(add-to-list 'interpreter-mode-alist '("python" . python-mode))
(require 'python-mode)
(autoload 'pymacs-apply "pymacs")
(autoload 'pymacs-call "pymacs")
(autoload 'pymacs-eval "pymacs" nil t)
(autoload 'pymacs-exec "pymacs" nil t)
(autoload 'pymacs-load "pymacs" nil t)
(pymacs-load "ropemacs" "rope-")
(setq ropemacs-enable-autoimport t)

(require 'auto-complete)
(global-auto-complete-mode t)

假设您在〜/ .emacs.d / auto-
complete-1.2中安装了自动完成功能。完成此操作后,在输入单词或符号的几个字符后,您将自动获得自动完成功能。

您可以修改ROOT / .ropeproject / config.py文件,以将更多目录添加到绳索查找路径,以提供更好的自动完成功能。

编辑:对我来说,最重要的两个功能是查找文档并直接跳转到功能定义。如上所述,这取决于为您的项目正确设置绳索查找路径。

文档 :将光标放在符号(函数名称,类名称等)上,然后执行以下操作:

C-c d

这将显示有关符号的文档字符串。

跳转到定义 :将光标置于符号(函数名称,类名称等)上,然后执行:

C-c g

这将立即打开符号所在的文件,并跳转到定​​义的开头。当文档稀疏并且您想查看实际代码时,这非常有用。另外,在您自己的代码中导航非常好。

查找事件

C-c f

在整个项目中智能搜索光标处的符号。

代码辅助

M-/

只需键入函数,类等的第一个字符,这将显示可能完成的列表。请注意,由于python的性质,它并不总是完整的列表。

重构 :“绳索”->“重构”下有很多选项。这些是为了更好地组织代码。如何使用它们应该大多是不言自明的;通常,选择要重构的代码区域,然后选择命令。

编辑 :作为对下面评论的回应,这正是将其他路径添加到python路径的方法,因此自动完成功能还将查找这些符号。

prefs.add('python_path', '~/path/to/virtualenv/lib/python2.6/site-packages')

这进去 .ropeproject/config.py



 类似资料:
  • 本文向大家介绍JavaScript中pop()方法的使用教程,包括了JavaScript中pop()方法的使用教程的使用技巧和注意事项,需要的朋友参考一下  JavaScript数组pop()方法删除数组中的最后一个元素,并返回该元素。 语法 下面是参数的详细信息:     NA 返回值: 返回从数组中删除的元素。 例子: 这将产生以下结果:

  • 本文向大家介绍JavaScript中Date.toSource()方法的使用教程,包括了JavaScript中Date.toSource()方法的使用教程的使用技巧和注意事项,需要的朋友参考一下  此方法返回表示对象的源代码的字符串。 注:此方法可能不会在类IE的所有浏览器上正常工作。 语法 下面是参数的详细信息:     NA 返回值:     对于内置日期对象,toSource返回字符串str

  • 本文向大家介绍ASP.NET MVC使用Ninject的方法教程,包括了ASP.NET MVC使用Ninject的方法教程的使用技巧和注意事项,需要的朋友参考一下 为什么要使用Ninject? 很多其它类型的IOC容器过于依赖配置文件,老是配置,总感觉有点不爽,而且要使用assembly-qualified名称(也就是类型的全名)来进行定义,稍不注意就会因为打错字而令整个程序崩掉。Ninject是

  • 本文向大家介绍Python的Flask框架中@app.route的用法教程,包括了Python的Flask框架中@app.route的用法教程的使用技巧和注意事项,需要的朋友参考一下 在我上一篇文章,我搭了一个框架,模拟了Flask网站上“@app.route(‘/')”第一条例子的行为。 如果你错过了那篇“这不是魔法”,请点击这里。 在这篇文章中,我们打算稍微调高点难度,为我们的URL加入可变参

  • 本文向大家介绍dotNet中的反射用法入门教程,包括了dotNet中的反射用法入门教程的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了dotNet中的反射用法。分享给大家供大家参考,具体如下: 参考MSDN: ms-help://MS.VSCC.2003/MS.MSDNQTR.2003FEB.2052/cpguide/html/cpcondiscoveringtypeinformation

  • 本文向大家介绍python中的函数用法入门教程,包括了python中的函数用法入门教程的使用技巧和注意事项,需要的朋友参考一下 本文较为详细的讲述了Python程序设计中函数的用法,对于Python程序设计的学习有不错的借鉴价值。具体分析如下: 一、函数的定义: Python中使用def关键字定义函数,函数包括函数名称和参数,不需要定义返回类型,Python能返回任何类型: 二、 文档字符串: 在