标签: python-mode

在emacs 23中将python缩进设置为2个空格?

我在Ubuntu 10.04上使用emacs 23.1.1.我希望使用2空格缩进在Python中编程.emacs看起来有python的默认模式(python.el?).

我把以下内容放在我的.emacs中:

    ;; Only spaces, no tabs
    (setq indent-tabs-mode nil)

    ;; Always end a file with a newline
    (setq require-final-newline nil)

    ;; Don't know which of these might work
    (setq-default tab-width 2)
    (setq-default python-indent 2)
    (setq-default py-indent-offset 2)
Run Code Online (Sandbox Code Playgroud)

当我编辑Python文件时,它使用4空格缩进.当我尝试Ch v python-indent时,它说:

    python-indent's value is 4
    Local in buffer webpage_cache.py; global value is 2

        This variable is safe as a file local variable if its value
        satisfies the predicate `integerp'.

    Documentation:
    Number of columns for a unit of indentation …
Run Code Online (Sandbox Code Playgroud)

emacs python-mode

20
推荐指数
3
解决办法
2万
查看次数

如何在Emacs中打开括号后控制缩进

当我使用emacs python-mode时,如果一行的最后一个字符是一个左括号,它只是从前一行的缩进中缩进下一行.

call_some_function(
    some_very_long_argument_that_I_want_to_put_on_its_own_line)
Run Code Online (Sandbox Code Playgroud)

我喜欢.现在在ecmascript模式(我用于动作脚本3),它总是缩进到前一个括号的级别.

call_some_function(
                   this_is_not_really_saving_me_any_horizontal_space);
Run Code Online (Sandbox Code Playgroud)

在这方面我怎么能像ecthon-mode那样制作ecmascript-mode缩进?

javascript emacs indentation actionscript-3 python-mode

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

如何在Syntastic for Vim中将Python max允许的行长度设置为120?

我正在为Vim 使用python-mode,我更喜欢那里有120个字符行而不是PEP8标准中定义的stark 80.

在python模式下,这很容易.我只是将以下内容添加到〜/ .vimrc中:

" Pylint configuration file
let g:pymode_lint_config = '$HOME/.pylint.rc'
let g:pymode_options_max_line_length=120
Run Code Online (Sandbox Code Playgroud)

这很好用,但是,我还想使用精湛的Syntastic插件来检查各种其他类型的语法(例如,foodcritic的Chef配方).

不幸的是,Syntastic也做了Python linting,因此它现在开始抱怨我的120个字符行.有什么类似的东西,我可以做到这一点,以使它停止抱怨我稍长的线?

python vim pylint python-mode syntastic

17
推荐指数
2
解决办法
2万
查看次数

Vim Python模式折叠

我最近下载了Python模式.当我打开python脚本时,我的功能被折叠了.我可以很容易地展开(当你在函数定义的顶部时,它是一个移动键).但是,我无法弄清楚如何重新折叠功能.

而且,也许最重要的是,:help pymode返回一个错误('E149:对不起,对pymode没有帮助').所以我甚至无法查阅文档.

任何帮助,将不胜感激.

vim python-mode

16
推荐指数
2
解决办法
8706
查看次数

从QuickFix窗口应用自动pep8修复

背景:

我正在使用(梦幻般的)Vim插件python-mode,其中包括pep8 linter.该:PyLint命令运行所有链接并在QuickFix窗口中打开错误.

问题:

现在,让我们假设我只使用pep8 linter,并且我有一个充满错误的QuickFix窗口.我想逐步解决这些错误并应用自动修复(类似于autopep8).autopep8工具很棒,但它会出错.理想情况下,我希望能够监督Vim中的每个修复(应用修复,检查,转到下一个修复).

我目前的方法是在我的Python文件上运行autopep8,对结果进行差异,然后修复任何不良更改:

$ autopep8 --in-place spam.py
$ git difftool spam.py  # check edits in gVim, write to file
$ git commit spam.py -m "Fix bad PEP8 formatting"
Run Code Online (Sandbox Code Playgroud)

然而,这种方法破坏了我的撤消历史,似乎不必要地复杂.有没有更好的办法?

题:

有没有办法自动将pep8修复程序(如果可用)应用于QuickFix窗口中的pep8错误?

python vim pep8 python-mode

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

Syntastic和Python模式在一起?

我在VIM中安装了python-mode.但我也安装了Syntastic.由于两者都进行语法检查,是否会发生冲突?如何关闭Syntastic for Python文件?

谢谢你的帮助

vim python-mode syntastic

11
推荐指数
2
解决办法
3850
查看次数

如何在主模式挂钩中访问目录本地变量?

我已经定义了一个.dir-locals.el文件,其中包含以下内容:

((python-mode . ((cr/virtualenv-name . "saas"))))
Run Code Online (Sandbox Code Playgroud)

在我的.emacs中,我有以下函数来检索此值并提供virtualenv路径:

(defun cr/virtualenv ()
  (cond (cr/virtualenv-name (format "%s/%s" virtualenv-base cr/virtualenv-name))
        ((getenv "EMACS_VIRTUAL_ENV") (getenv "EMACS_VIRTUAL_ENV"))
        (t "~/.emacs.d/python")))
Run Code Online (Sandbox Code Playgroud)

最后,在我的python-mode-hook列表中,我有这个钩子函数:

(add-hook 'python-mode-hook 'cr/python-mode-shell-setup)

(defun cr/python-mode-shell-setup ()
  (message "virtualenv-name is %s" cr/virtualenv-name)
  (let ((python-base (cr/virtualenv)))
    (cond ((and (fboundp 'ipython-shell-hook) (file-executable-p (concat python-base "/bin/ipython")))
           (setq python-python-command (concat python-base "/bin/ipython"))
           (setq py-python-command (concat python-base "/bin/ipython"))
           (setq py-python-command-args '( "-colors" "NoColor")))
          (t
           (setq python-python-command (concat python-base "/bin/python"))
           (setq py-python-command (concat python-base "/bin/python"))
           (setq py-python-command-args nil)))))
Run Code Online (Sandbox Code Playgroud)

当我打开一个新的python文件时,记录的消息cr/python-mode-shell-setup表明它cr/virtualenv-namenil …

python emacs dot-emacs python-mode

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

如何在emacs python-mode中取消注释代码块?

我刚开始在emacs中使用python-mode而且我注意到虽然主模式有一个注释区域((py-comment-region)绑定 (C-c #))的选项,但是没有选项可以取消注释已经注释的代码块.我在python-mode中检查了所有活动的键绑定,但找不到任何相关的键.我错过了什么吗?

我确实想到了一些工作,比如使用(delete-rectangular)(绑定C-x r d)删除注释.另一种方法是绑定(comment-or-uncomment-region)到某个键并开始使用它.

但默认情况下,python-mode本身是否提供了任何选项?

emacs python-mode

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

(Vim)在Python模式下更改缩进设置

我刚刚安装python-mode,它有很多很酷的功能,如"语法检查".

我喜欢为我的python代码添加2个缩进空格,但语法检查警告我它应该是4个空格.

我相信应该有一个变量来设置这个偏好.我已经阅读了pymode的文档,我找不到相关的设置.

(另外,我想更改由pymode设置的shiftwidth设置)

vim python-mode vim-plugin

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

VIM:在python-mode中使用python3解释器

我最近使用教程切换到vim并将其配置为Python编程.之前,我已经确保Vim支持python3使用(VIM --version显示+蟒蛇/ DYN和+ python3/DYN)文章.

但是当从python-mode执行文件时,仍然会选择python2.7解释器.

如何配置vim(或python-mode)在python3解释器上运行文件?

我的操作系统是Ubuntu 14.04 x64.

提前致谢!

python vim python-mode python-3.4 ubuntu-14.04

9
推荐指数
1
解决办法
2万
查看次数