首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Emacs 23使用宽度为4的制表符打破了内置python.el缩进

Emacs 23使用宽度为4的制表符打破了内置python.el缩进
EN

Stack Overflow用户
提问于 2011-02-24 07:59:22
回答 2查看 2K关注 0票数 4

我在Emacs23中使用python.el found here版本已经有几年了,没有任何意外。我决定尝试一下股票python.el,结果遇到了一个奇怪的问题:

使用制表符进行缩进并且制表符宽度为4时,库存python.el将为每个级别缩进两个制表符字符,而不是1个。如果制表符宽度为5,则缩进将为1个制表符加3个空格。因此,当indent-tabs-modet时,无论tab-width设置为什么,indent-for-tab-command似乎总是强制将制表符大小设置为8。

有没有其他选项卡相关的变量,我可以设置来覆盖这个行为?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-02-25 00:52:46

我想在深入研究了Emacs23、python.elthe newest python.el on the block的源代码之后,我已经弄明白了这一点。

给定python-mode缓冲区中的这些设置,在常用python.el中使用制表符和制表符宽度4进行缩进的效果与预期相同

代码语言:javascript
复制
(setq indent-tabs-mode t
      tab-width 4
      python-indent 4)

对于新的python.el,您需要将python-indent更改为python-indent-offset。我在两种模式下都使用了这两种设置,没有问题。

如果有人对这个问题有更好的解决方案,请添加它,我很乐意接受它作为正确的答案。

票数 4
EN

Stack Overflow用户

发布于 2011-02-24 22:21:22

使用标签卡住了吗?检查

在python.el上试用emacs 23?检查

我最近遇到了和你一样的困难...我所了解到的是,我真的很讨厌制表符,而且我发现python的空格意义令人难以置信地讨厌。

你是在你的init中设置tab-width还是使用customize?

我必须确保通过自定义在“编辑基础”部分更改选项卡宽度,以获得"4空格“选项卡以粘贴(与全局/局部作用域有关)。但乐趣并没有到此为止。python.el似乎只想缩进到第一个制表位(现在是第4列),而不管我将缩进-制表符模式或制表符-始终缩进设置为什么。我最终放弃了,重新使用python-mode.el,它有它自己的一组特性,但至少python代码是“正确”缩进的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5098874

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档