emacs vim 与 c++ 代码的兼容性

emacs vim 与 c++ 代码的兼容性

我使用 emacs 进行 c++ 编码,在我的项目中,许多人使用 gvim 进行相同的编码。我的问题是,当我在 emacs 中打开他们的 .h 或 .cc 文件时,它的格式变得非常糟糕,这可能是由于制表符设置或类似原因。
我想要的是,我应该将什么放入我的 .emacs 文件中,以便当我在 emacs 中看到它时,它会以良好的常规方式格式化代码,但不会破坏我的 Vim 朋友。
这是否可能,或者我是否需要告诉 Vim 人员也更改他们的配置文件中的某些内容。我们可能会尝试强制执行一些规律性,并可能强制执行合理的配置文件功能。
谢谢

答案1

如果这是标签的问题,您需要在选项 > 自定义 emacs 菜单中设置标签宽度变量,您将可以选择使该更改永久生效。

答案2

要真正解决您的问题,您需要决定在项目中是否使用制表符或空格。

您还应该决定一个制表符的宽度。

精彩的 VimCast关于该主题。

答案3

一些 Emacs 黑客曾经写道:

我认为解决技术问题的最佳方法是强制 ASCII #9 TAB 字符永远不出现在磁盘文件中:在将行写入磁盘之前,对编辑器进行编程以将 TAB 扩展为适当的空格数。通过将技术问题与宗教问题分开,这大大简化了问题。

在我的 vim 配置中,我set et, ts=2, sw=2。如果我使用 Emacs,我会做同样的事情。当与其他人合作一个项目时,需要商定或强制执行标准化设置。

答案4

大多数代码编辑器都有单独的制表符宽度和代码缩进宽度概念。

项目需要就缩进大小达成一致,并且:TAB 在所有编辑器中具有相同的大小(通常为 8 个空格,这是电传打字机和其他机械终端上 TAB 的机械实现);或者缩进从不包含 TABS,而只包含空格。

相关内容