我已经看过python mode和python.el。我正在使用python-mode.el。我也用绳子和绳索。我在找一些帮助我的文档,或者另一个elisp包之类的。
我现在的问题是我得到的代码缩进大小不一致。有些街区是2个,有些街区是4个。我想整理一下,但是出于某种原因,当我告诉emacs“fix indentation”时,它基本上只会在每一行上点击tab键,这会导致代码出错。我想要的是保持相同的相对缩进,但是标准化为4个空格。有什么能让我轻易做到这一点吗?
我想我可以找到每个错误缩进的实例,阻塞它,然后查询用4个空格替换2个空格。但这有点过于依赖于我的精确性,注意到应该在哪里做。而且,它有很多代码。
有人告诉我,自行车修理工可以解决这个问题,但那已经过时好几年了…还有其他建议吗?
谢谢。

最佳答案

假设您使用了sven marnach的注释来清理代码库,我猜您只需要让python-mode.el使用您喜欢的缩进样式就可以了?
看看变量py-indent-offsetpy-smart-indentation(也许还有py-continuation-offsetpy-honor-comment-indentation)。以及正常的indent-tabs-mode
您可以自定义它们(m-xcustomize-groupretpythonret),也可以向python-mode-hook添加自定义函数。例如。:

(add-hook 'python-mode-hook 'my-python-mode-hook)
(defun my-python-mode-hook ()
  (setq indent-tabs-mode nil
        py-smart-indentation nil
        py-indent-offset 4))

09-27 16:22
查看更多