标签: rope

在Emacs中编辑Python

我看过python-mode和python.el.我正在使用python-mode.el.我也在使用绳索和绳索.我正在寻找关于这些的一些文档,这些文档可以帮助我,或者其他elisp软件包或其他东西.

我目前的问题是我给出的代码具有不一致的缩进大小.对于一些块,它将是两个,对于一些它将是4.我想要清理它,但出于某种原因,当我告诉emacs"修复缩进"时,它只是基本上击中每一行的选项卡,这搞砸了代码.我想要的是保持相同的相对缩进,但标准化为4个空格.有什么能让我轻松做到这一点吗?

我想我可以找到每个坏缩进的实例,阻止它,并用4个空格查询替换2个空格.但这对我的精确度有点过分依赖,注意到应该在哪里完成.此外,它是很多代码.

有人告诉我,自行车修理工会解决这个问题,但现在几年已经没有开发......还有其他任何建议吗?

谢谢.

python emacs ropemacs rope

5
推荐指数
1
解决办法
1233
查看次数

Vim插件,用于自动生成Python导入语句(不使用Rope)

我曾经在这里这里看到过类似的问题,但是它们已经有4年历史了,没有给出符合我要求的答案。

例如,如果我在Python中输入Python代码:

os.path.join('my', 'path')
resp = requests.get('http://example.com')
HttpResponse('success')
Run Code Online (Sandbox Code Playgroud)

假设我在site-packages文件夹中有第三方模块'requests'和'django',那么有没有Vim插件-不使用Rope库-可以自动将相关的import语句添加到Python中文件(无论对于内置和第三方模块,即使用importfrom根据需要),如下所示:

import os
import requests
from django.http import HttpResponse
Run Code Online (Sandbox Code Playgroud)

传统上我会使用古老的Rope软件包,但我一直在用现代替代方法替换Rope函数,以避免.ropeproject文件夹的开销。但是,我还没有找到自动导入的Vim替代品。

python vim rope vim-plugin

5
推荐指数
1
解决办法
1826
查看次数

SGI STL Rope in g ++?

看来我的/usr/include/c++/4.5.1/ext/rope(和ropeimpl.h)中有一个执行绳索.我将它与SGI STL进行了比较,代码似乎与代码库完全相同.

我不知道它的状态或功能与否.我也不知道这是否是超级陈旧的陈旧代码或代码正在进行中

在任何情况下,我都没有找到任何关于如何使用它的参考(如果功能).你知道我错过的东西吗?有可以使用的用法示例吗?

编辑,如果你在这里看到cvs历史,你会看到最后一次活动是4个月前,看起来不是很活跃,但也不会放弃.

c++ stl sgi libstdc++ rope

4
推荐指数
1
解决办法
1893
查看次数

清除使用emacs 24安装pymacs的步骤?

我想在emacs中使用python进行自动完成和重构.

我认为我需要绳索才能做到这一点.要使用emacs执行此操作,我需要ropemacs.Ropmacs依赖于pymacs.

Pymacs很难安装......或者至少说明书对我来说并不清楚.

我需要做两件事吗?安装pymacs,然后安装一个告诉emacs与pymacs交谈的文件?我已经非常轻松地安装了绳索和绳索

pip install rope ropemacs

这是我做的:

pip install -e "git+https://github.com/pinard/Pymacs.git#egg=Pymacs"
Run Code Online (Sandbox Code Playgroud)

根据PIP,这在mac os x mountain lion上安装正常.

但我有一种感觉,我没有完成 - 或者是我?

如何测试pymacs,绳索和绳索是否全部工作?

emacs pymacs rope

4
推荐指数
2
解决办法
4079
查看次数

从模块中捕获所有异常的 Pythonic 方法?

我正在尝试使用 package.json 进行一些重构rope。根据代码的不同,它可能会抛出异常,并且有 10 多个绳索异常。

我不想做

from rope.base.exceptions import *

try:
    # do something
except (AttributeNotFoundError, ModuleDecodeError,
        ..., ..., ..., RefactoringError) as e:
     # do something else
Run Code Online (Sandbox Code Playgroud)

我只想捕捉所有绳子异常,像这样

import rope

try:
    # do something
except rope.base.exceptions.*:
    # do something else
Run Code Online (Sandbox Code Playgroud)

如何捕获特定模块的所有异常?

python exception-handling exception rope

4
推荐指数
1
解决办法
967
查看次数

使用ropemacs在Emacs中使用python.el进行自动完成

如何python.el在Emacs 24中设置自动完成以使用ropemacs ?

我的.emacs文件中有以下内容

; Auto-complete:
; --------------------------
(add-to-list 'load-path "~/.emacs.d/auto-complete/auto-complete-1.3.1")
(require 'auto-complete-config)
(add-to-list 'ac-dictionary-directories "~/.emacs.d/auto-complete/auto-complete-1.3.1/dict")
(ac-config-default)

; Auto-complete rope integration:
; --------------------------
(ac-ropemacs-initialize)
(add-hook 'python-mode-hook
      (lambda ()
    (add-to-list 'ac-sources 'ac-source-ropemacs)))
Run Code Online (Sandbox Code Playgroud)

但这似乎不足以获得Python方法,类成员等的自动完成(在自动完成工具提示上).

例如

my_text = "hello world"
my_text.
Run Code Online (Sandbox Code Playgroud)

没有为String类显示任何可能的自动完成.

使用上面的配置,自动完成本身适用于通用自动完成(以及目录).

python emacs autocomplete ropemacs rope

3
推荐指数
1
解决办法
1230
查看次数

使用绳索从方法签名中删除*args和**kwargs

我正在使用eric4及其绳索插件来重构一些代码.我有很多方法,其签名使用*args**kwargs语法.我想更改这些签名删除此参数.

我尝试过使用Refactoring>Refactoring>Change Method Signature但不会删除*args**kwargs参数.

我想知道这是否是绳索本身的限制,或者它是否是eric的插件不支持此功能.

python refactoring signature variadic-functions rope

1
推荐指数
1
解决办法
1156
查看次数