为什么我的软标签显示为硬标签?

时间:2017-09-13 17:14:55

标签: linux visual-studio-code tabs vscode-settings

我正在编辑VSCode(版本1.16.0)中的文件,这些文件最初是在Emacs中创建的,其中indent-tabs-mode设置为STANDARD。这不是由我设定的,而是继承的,据我所知,空间被插入。每个缩进都是3个空格,并且使用TAB键来实现缩进。这就是您在Emacs中看到的内容,或者您​​是否从命令提示符中获取/捕获文件。像这样:

data a;
   set b;
   x = 3;
run;

我们最近已从Solaris环境迁移到Linux(Redhat 6),由于多种原因,我应该停止使用Emacs来支持VSCode。我在VSCode中设置"editor.detectIndentation": false,选项卡插入空格,空格数设置为3。

但是,当我在VSCode中打开这些文件时,缩进会显示为

data a;
        set b;
   x = 3;
run;

因此,我开始了一个重新缩进所有内容的过程,因此他们会在VSCode世界中看起来正确。在这种特定情况下,这将在版本控制中创建一堆空白差异噪声这一事实无关紧要。进步要求我们继续前进,并在这方面遇到一些短期的痛苦。

因此,我删除了所有缩进并使用上面列出的选项卡设置重新缩进,并且在VSCode中看起来都很好。一切都排好了。每个缩进我有3个空格。回到我上面的第一个例子。

但是,如果我现在更多地/删除代码,看起来好像使用了硬标签,所以它看起来很糟糕(就像我的第二个例子)。我们通过这种方式进行了大量的快速代码检查,因此它是一种非常不理想的效果。为什么会这样?

我在网上看到的一切都集中在VSCode如何处理软/硬标签或该功能的问题上。从本质上讲,人们会问如何将设置设置为我上面设置的内容。我没有看到任何人遇到我的问题 - 即我相信我的VSCode设置正确,它在VSCode中看起来很好和正确,但是当执行简单的更多/ cat时,看起来像是插入了硬标签而不是空格。 (作为旁注,如果我在此之后打开Emacs中的文件,它看起来也像是使用了硬标签)

0 个答案:

没有答案