问题标签 [python-mode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
671 浏览

python - Emacs。python shell中的自动完成功能不适用于加载的文件

我是 Emacs 的新手,我正在尝试为 python 开发设置环境。我正在使用 python_mode 6.1.3 和绝地。这是我的整个 .emacs 文件:

它工作正常,但不适合控制台。当我正在编辑缓冲区并想要执行时,我点击 Cc Cc,它会打开一个 python shell(python 或 ipython 我都尝试过)并执行缓冲区。问题是我在执行文件中创建的类和定义对于 shell 模式下的绝地自动完成是不可见的。更重要的是,当 shell 模式启动时,自动完成不会自动打开,我需要通过 jedi:setup 函数来切换它。我想解决 2 个问题: 1. 让 jedi 在 shell 模式启动后立即工作而不调用 jedi:setup 2.(更重要的是)使我执行的文件中的符号自动完成工作 我正在检查不同的选项,使用 python/ ipython,开启jedi ac后手动执行execfile()或%run。他们都失败了。我无法为我在 python shell 中执行的文件获得像样的 ac

0 投票
3 回答
641 浏览

emacs - 在 Emacs python 模式下执行表达式并打印它的值

我使用 Emacs python-mode 和 ipython 作为我的 IDE 来编写 python 代码。Python-mode 提供了一个很好的函数“py-execute-line”来运行一行代码,我已经将它绑定到键“F7”。

所以对于下面的代码:

我可以在 ipython 缓冲区中打印输出。

我想知道是否有更直接的方法可以在没有打印命令的情况下检查“单元格”的值。像将光标移动到变量上,按下某个键,然后将值打印在 ipython 输出缓冲区中。

我试过函数(py-execute-expression-ipython),但没有输出输出......

提前致谢!

0 投票
1 回答
867 浏览

python - 在 python-mode 中更改“将代码发送到解释器”(Cc |)命令

我习惯使用“Cc Cr”命令将代码发送到 R 中的解释器,并使用 Emacs 说统计信息。如何将 python 模式设置为使用“Cc Cr”而不是“Cc |” 评估代码?

谢谢!

0 投票
1 回答
359 浏览

linux - 在VIM中关闭python代码窗口后自动关闭pylint窗口

如何在 VIM 中关闭 python 代码窗口后自动关闭 pylint 窗口?

每次我退出 vim 时,仍然显示 pylint 窗口。

当我退出 python 代码时,我想自动关闭 pylint 警告窗口。

我知道手动执行此操作的方法是:qa!

0 投票
1 回答
63 浏览

python - Emacs:如何使缩写词在 python 注释中起作用?

我正在尝试在 python-mode 中使用 abbrev-mode。缩写在 python 代码中工作正常,但在 python 注释中不起作用。我怎样才能让它们也能在 python 注释中工作?谢谢。

0 投票
2 回答
635 浏览

python - 如何使用 python 模式在 Emacs 中缩进代码?

我正在使用 python-mode.el 运行 Emacs 以在 Python 中进行编码。我希望学习如何使代码区域自动缩进。

以下代码没有很好地缩进。

如果我选择区域并点击M-x indent-region,则完全错误:

理想应该是:

  1. 为什么会M-x indent-region错误地理解代码行之间的缩进关系?是因为我的代码不明确吗?
  2. 那我该怎么办?

谢谢。

0 投票
2 回答
1306 浏览

python - 重置用于记录的python解释器

我是 Python 新手。我正在使用带有 Python 模式的 Vim 来编辑和测试我的代码,并注意到如果我多次运行相同的代码,日志文件只会在第一次运行代码时更新。例如下面是一段名为“testlogging.py”的代码

如果我打开一个新的 gvim 会话并使用 python 模式运行此代码,那么我会得到一个名为“testlogging.log”的文件,其中包含内容

看起来很有希望!但是如果我删除日志文件并再次以 pythong-mode 运行代码,则不会重新创建日志文件。如果此时我在这样的终端中运行代码

然后将再次生成日志文件!

我检查了 Python 文档并在日志记录教程( https://docs.python.org/2.7/howto/logging.html#logging-to-a-file )中注意到了这一行:

一个非常常见的情况是在文件中记录日志事件,接下来让我们看看。请务必在新启动的 Python 解释器中尝试以下操作,不要只从上述会话继续:...

所以我猜这个日志文件只更新一次的问题与我第二次运行代码时保留在同一个解释器中的python模式有关。所以我的问题是:有没有办法解决这个问题,通过摆弄日志模块,在代码中添加一些东西来重置解释器或告诉 Python 模式来重置它?

我也很好奇为什么日志记录模块需要一个新启动的解释器才能工作......

提前感谢您的帮助。

0 投票
1 回答
140 浏览

python - 两个不同的缓冲区,相同的 python shell

我刚开始使用 emacs,并安装了 python-mode.el,以及一些额外的插件(遵循 Jess Hamrick 在Emacs 中作为 python IDE的设置)。

我发现自己有一个棘手的问题。我想编辑不同的缓冲区,但我希望能够将代码从它们发送到我的 python shell。不幸的是,当我尝试使用从文件缓冲区发送代码时C-c |,会为它打开一个新的 python 缓冲区,我不知道如何指示 emacs 将其发送到原始的 python shell 缓冲区。

有什么建议么?

0 投票
1 回答
475 浏览

emacs - 如何配置 emacs 以使用 ipython

我正在使用 ubuntu 14.04、emacs 24.3.1、python 2.7.6、ipython 1.2.1、python-mode 6.1.3。Ipython 在 emacs 中运行良好至少一年了,但是,自两周前以来,我遇到了以下问题。

  1. 使用抄送!要启动默认解释器,ipython 会按我希望的方式显示,但不是拆分框架并显示在另一个窗口中,而是显示在原始代码窗口中。(这是一个小问题)
  2. 使用抄送| 执行一个区域,python解释器启动,代码发送到python解释器而不是ipython解释器

我在 SO 上进行了搜索,但这个问题似乎太新了,无法找到答案。我用谷歌搜索,找到了这个页面https://answers.launchpad.net/python-mode/+question/250905,尝试了其中的方法,仍然没有用......有人可以帮我解决问题吗?非常感谢!

我的 .emacs python 部分看起来像

0 投票
1 回答
307 浏览

vim - vim 启动时的 RopeGenerateAutoimportCache

每次我在 vim 中打开我的 python 项目时,我似乎都必须运行 RopeGenerateAutoimportCache,然后才能使用 RopeAutoImport。如果我在缓存项目模块之前运行 RopeAutoImport,我会收到以下错误:

有没有办法在每次 vim 启动时生成缓存,或者最好保存缓存以在启动时重新读取?