【问题标题】:EMACS, text seems to be shiftedEMACS,文本似乎被转移了
【发布时间】:2015-12-25 09:56:33
【问题描述】:

使用,

EMACS 24.5.1(编码:UTF-8 (dos/unix))

操作系统:Windows 8

终端:Cygwin 下带有 UTF-8 的 mintty

问题:

  • 我在 EMACS 中打开的任何现有文本文件都不保留其缩进(文本从其原始位置向左或向右移动)。如果我在同一终端会话中在 VIM 中打开相同的文本文件,似乎具有正确的对齐方式。

  • 我在 EMACS 中打开的每个文本文件都会发生这种情况。

  • 我认为问题可能出在编码或 EOL 上。所以我尝试在 EMACS 中更改终端输出的编码(使用 C-x RET r RET | C-x RET t RET),但这没有帮助。

我一直在阅读官方手册,但似乎无法解决这个问题。

有人对我应该如何纠正这个缩进/对齐/EOL 问题有任何建议吗?

提前致谢。

附:我在这里看到了一些类似的 emacs 编码问题,但似乎都没有帮助。

【问题讨论】:

  • 1.说你做了什么。 2. 说出你看到的,以及你期望看到的。 3. 具体。最好提供从emacs -Q 开始的分步配方(无初始化文件)。就目前而言,您的问题尚不清楚,因此有被关闭的风险。
  • @Drew 抱歉,我对 EMACS 完全陌生。根据您的建议,我重新表述了这个问题。
  • 您是否使用制表符进行缩进? (标签被设计成可以以任何用户定义的宽度显示。例如,它们在 Vim 中可能显示为 8 个空格,在 Emacs 中显示为 4 个空格。)
  • @Chris 是的,我正在使用制表符进行缩进,论文是(1 个制表符 = 4 个空格字符)。如果我没记错的话,Emacs 中的默认值是(1 tab = 8 whitespace char)。也许这就是问题所在。谢谢!
  • @Chris 谢谢你确实解决了问题。

标签: encoding emacs utf-8 cygwin


【解决方案1】:

问题在于标签大小,与编码无关。

Emacs 在检测编码方面实际上非常棒。

默认情况下,Emacs 中的制表符大小 = 8 个空格字符。我设置的所有其他编辑器都设置为 4 个空白字符,因此在 Emacs 中打开它们时它们似乎都被移动或丢失了缩进。

我已在我的 .emacs 文件中使用以下配置将其更正为制表符 = 4 个空白字符。

(setq-default indent-tabs-mode nil)
(setq-default tab-width 4)
(setq indent-line-function 'insert-tab)

再次感谢克里斯的解决方案

【讨论】:

    猜你喜欢
    • 2021-10-28
    • 2016-09-30
    • 2012-03-11
    • 1970-01-01
    • 1970-01-01
    • 2017-12-05
    • 2012-03-08
    • 2015-12-11
    • 2014-04-15
    相关资源
    最近更新 更多