Mac 上 Sublime Text 中的制表符长度不正确

Tab length in Sublime Text on Mac not correct

我买了一台新的 27 英寸 iMac,我做的第一件事就是安装我选择的文本编辑器 Sublime Text。在编写了一些代码之后,我注意到制表符的缩进太宽了。在左下角它说 Tab Size: 4 但实际上一个制表符有 12 个空格那么宽。将设置更改为 Tab Size: 2 时,一个制表符的宽度为 6 个空格。

难道是因为分辨率大(2560 x 1440),Sublime将一个tab的长度乘以3?有人知道如何解决这个问题吗?

编辑:

我用的是Ubuntu Mono字体,字号是16px。当设置选项 Indent Using Spaces 时,一切都按预期工作。这是当前情况的图像 Tab Size: 4

Sublime 在我的 iMac 上运行良好,因此屏幕分辨率不是问题。相反,我会怀疑您使用的是比例字体而不是固定宽度的字体。一个可能的原因是你的新系统上缺少指定的字体——我在 Sublime 中使用了 non-system font,因此需要在新计算机上安装它,然后才能让我觉得一切正常。

使用比例字体,spaces 往往相当小,尤其是与 "large" 字符(如 D、W、e、s 等)相比时,它们占据的比例更大水平量 space(因此得名比例字体)。此外,一个制表符可能会被 Sublime 计算为一定的大小,作为字体像素大小的函数,因此可能与 space 个字符的实际数量无关制表位。我知道在 MS Word 等程序中,制表位设置为一英寸(或厘米、异食癖或其他)的分数,与所使用字体的类型或大小无关。

固定宽度字体简化了所有这些。所有字符(甚至 Unicode 字符)都占据相同的水平宽度。 Sublime 使用标准字符宽度计算制表符的宽度,所以一切都是一致的。

综上所述,如何解决您的问题?确定这是否真的 问题的最简单方法是将 "font_face" 设置设置为 Menlo,这是一种 Apple 设计的固定宽度字体,自从Macintosh 的早期。如果您的代码恢复正常,那就是问题所在。然后,如果你喜欢,你可以搜索你以前使用的任何字体,或者看看上面链接的我最喜欢的字体,或者如果你不太挑剔,就继续使用 Menlo。

祝你好运!