为什么我们在IDE中使用固定宽度字体?

为什么我们在IDE中使用固定宽度字体?,ide,fonts,text-editor,Ide,Fonts,Text Editor,可能重复: 几乎所有的编码人员(和代码编辑器)都使用固定宽度的字体。这是为什么?可能是因为它使代码更容易扫描-您有“块”代码,即文本垂直排列的频率远远高于普通散文。如果字体的宽度不是固定的,那么它就不会在视觉上对齐。试试非固定宽度的字体。打字错误/丢失的字母可以看得更清楚,因为它有助于代码布局,并且更容易发现错误,因为对于给定数量的字符,行的长度是一致的 这也是历史性的,因为我们曾经使用具有固定宽度字体的终端。在您喜爱的编辑器中打开一些代码。。。我假定默认情况下,您的文本编辑器将设置固定宽度的

可能重复:


几乎所有的编码人员(和代码编辑器)都使用固定宽度的字体。这是为什么?

可能是因为它使代码更容易扫描-您有“块”代码,即文本垂直排列的频率远远高于普通散文。如果字体的宽度不是固定的,那么它就不会在视觉上对齐。

试试非固定宽度的字体。

打字错误/丢失的字母可以看得更清楚,因为它有助于代码布局,并且更容易发现错误,因为对于给定数量的字符,行的长度是一致的


这也是历史性的,因为我们曾经使用具有固定宽度字体的终端。

在您喜爱的编辑器中打开一些代码。。。我假定默认情况下,您的文本编辑器将设置固定宽度的字体

现在将字体更改为Comic Sans。。。。。说够了


严肃地说,固定宽度更容易阅读。

主要用于大纲。然而,这也是一种习惯。我来自旧学校的IDE,那时他们还在MS-DOS中

此外,像微软这样的公司也制作了字体,使其“更容易”编码。在Visual Studio中编写代码时,我自己更喜欢控制台字体


天哪,克里斯。

这是一个选择的问题。我个人更喜欢使用非常优雅的Comic Sans或Purisa字体进行编程。

它大大提高了可读性,尤其是标点符号,标点符号在代码中起着非常重要的作用,可变宽度字体通常会“挤压”到最小的空间。

我想补充一些小理由,主要与代码的视觉流程有关:

  • 您可以对齐变量分配(或不对齐)
  • 一个典型的例子是对齐表声明,使其看起来像代码中的表

    var sn        = [ 8349824, 3094230,       1]; // first table line
    var longname1 = [     421,    1324, 5382920]; // second table line
    // Try and do something as readable in variable width font!
    
  • 您可以商定具有一致效果的线宽限制

  • 无论您是在web上的
    块中阅读代码,还是在远程终端上的基本文本编辑器中阅读代码,或者在具有抗锯齿字体的图形IDE中阅读代码,您都会立即识别代码
  • 导航代码时更容易预测的行为-当我向上或向下移动时,我已经确切地知道光标将在哪里结束

简言之,固定宽度字体允许对源代码外观和可读性进行更细粒度的控制,与任何给定字体的可用性无关。

问。

我知道我玩游戏迟到了一周,但我不能相信没有提到像FORTRAN这样的编程语言基本上需要固定宽度字体。注释字符必须放在第1列,行继续字符放在第6列,这甚至没有提到穿孔卡片固有的固定宽度字体效果。有人提到了终端上的固定宽度字体,但编程甚至早于此。

@Janusz。我正在做这个。谢谢你的提醒。也许这个问题应该成为一个社区维基问题——似乎没有一个明确的答案可以被接受,更像是一个每个人都可以表达自己观点的地方。我认为这是非常明显的,如果你尝试在一段时间内不使用固定宽度字体进行编码,你就会明白。这似乎是一个几乎完全相同的地方,没有理由解释为什么选项卡不能同样有效地对齐文本。除非你有前导文本,例如
函数(->Param1\n->->->Param2)
。下一行需要一个标签还是三个?取决于字体宽度和制表符大小。您还可以执行类似于
const int thing1.=..1\n const int otherthing2.=..2
等操作@detly:我想补充一点,在文本编辑器中,这种考虑比在高级IDE中更重要。仍然是+1,因为每次您使用字符串编写SQL/HTML/其他代码时,IDE通常都帮不上忙。为什么会接受这种情况?(谢谢你的链接,非常棒的东西)。@Jouke它被接受了,因为我相信这是最好的答案。糟糕的是,这个链接(目前)只针对俱乐部会员。@Joukevandermas我觉得它很合乎逻辑,因为对我来说,使用单间距字体的唯一借口是当你想在代码中包含ASCII艺术时。在我看来,所有其他的论点都太弱了,而且大多是指[坏]习惯。但是这个链接不起作用:(…或者一些花哨的装饰或哥特式字体,你的资料看起来会更令人愉快…而且更大气;)我已经在Verdana编写代码多年了,我不打算再回到固定宽度的漫画Sans?优雅的我遗漏了什么吗?这个选择不是在固定宽度和漫画式的字体之间,这是一个错误的二分法。