【问题标题】:Indentation in Emacs suddenly stopped working, how do I fix it?Emacs 中的缩进突然停止工作,我该如何解决?
【发布时间】:2014-06-20 18:09:42
【问题描述】:

我已经在这个源文件上工作了一段时间,并且缩进它很好,现在突然我不能以任何方式缩进行(制表符、M-x 缩进区域等)。重新启动 Emacs 并不能修复它,关闭并重新打开文件也不能修复它,而且问题似乎与这个特定文件有关。

如果重要的话,它是一个 cpp 文件。是的,我在 C++ 模式下工作。是的,句法缩进已开启。

【问题讨论】:

  • 文件在语法上是否有效?可能由于“放错位置”或类似内容而导致缩进出错?字体锁定模式是否正确为文件着色?
  • 我很确定您只是用完了缩进信用!您可以通过向 emacs-devel 提交补丁来购买更多积分。

标签: emacs indentation auto-indent


【解决方案1】:

查看您编辑的文件的最后一部分。很可能 Emacs 实际上是缩进的,但是您的源代码是这样的,在您尝试缩进的位置缩进是没有效果的。

IOW,请查看您尝试缩进的位置之前的代码。寻找可能使该职位实际上看起来是顶级的语法问题。我的猜测是语法问题导致缩进失败。

您还可以使用C-x n n 将缓冲区缩小到缓冲区的特定部分,以查看缩进在哪些地方可以达到您的预期,而在哪些地方没有。这将帮助您找到任何可能造成干扰的语法问题。

【讨论】:

  • 所以,这行得通。但是 Emacs 遇到的“问题”是我的一个变量名……它以前很喜欢它。我重命名了有问题的变量,缩进又开始工作了。伟大的。但我之前使用的名字并没有失效。
  • 如果你认为 Emacs 的行为有问题(例如,写你的变量名),那么考虑提交一个错误报告:M-x report-emacs-bug
猜你喜欢
  • 2023-01-17
  • 1970-01-01
  • 2019-10-31
  • 1970-01-01
  • 2020-07-16
  • 2022-10-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多