go all: 不一致的连字符

oipij1gg  于 7个月前  发布在  Go
关注(0)|答案(6)|浏览(97)

在树中查找//.*[a-zA-Z]-\n(参见CL 53510)可以找到一些在树中不一致地使用连字符的短语示例。其中两个突出的例子是:

  • "floating-point" vs "floating point"
  • "run-time" vs "run time"

虽然优先级较低,但我们应该选择一个并始终保持一致。(同时也可以进行更针对性的grep操作,以查找其他连字符不一致的情况。)

xoefb8l8

xoefb8l81#

我们还应该在如何使用em-dashes方面保持一致:目前我们有两种或三种连字符,有或没有AP风格的空格。
在排版上正确的做法是始终使用u+2014(em dash),在这种情况下,我建议也使用空格:许多编辑器将em-dash视为固定宽度字体中的单宽度字符,因此,没有空格的单个em-dash经常显得太窄。
(但即使我们不使用em-dash,我们也应该在间距方面保持一致。)

dgiusagp

dgiusagp2#

最后,我们是否应该使用排版正确的en dashes(连接符)来代替连字符,用于表示算法(Miller-Rabin)、范围(a-z、0-9、R7-R25)和对比化合物(Child-Sibling顺序)等?
(http://www.thepunctuationguide.com/hyphen-and-dashes.html 是一个关于各种连接符及其用法的很棒参考。)

djp7away

djp7away3#

我们是否应该使用排版正确的en dashes代替连字符?
是的!
一个没有空格的单个em dash经常显得太窄了。
遗憾,但em dashes在使用时不带空格也是正确的。
(即使我们不使用em dash,我们也应该保持间距的一致性。)
好的,请继续。
在en/em dash方面,另一种选择是使用两个或三个连字符,并教godoc将它们组合在一起。但我更愿意一开始就使用rune。
(我刚开始考虑编写一个工具来重新布局注解,使用一些启发式方法在语义换行、合理的行长度、一致的行长度和标点符号之间进行权衡...然后决定匆忙撤退。虽然Go语言成为具有最佳自动注解布局引擎的语言可能会很棒,但这仍然是一个想法。)

v2g6jxz6

v2g6jxz64#

另一个要添加到列表中的是UTF-8编码UTF-8-encoded

ws51t4hk

ws51t4hk5#

@bontibon 我认为对于复合形容词没有固定的规则。
我倾向于将“UTF-8编码”作为谓语形容词,例如“如果文本是UTF-8编码的...”,但将“UTF-8编码”作为普通形容词,例如“对于UTF-8编码的文本...”。然而,在后一种情况下,我几乎总是会寻找一个更不尴尬的句子写法,例如“对于以UTF-8编码的文本...”。

mqxuamgl

mqxuamgl6#

低优先级,但我们应该选择一个并始终使用它。
这并不正确。"运行时间"是一个名词;"run-time"是一个形容词。"运行时初始化发生在运行时。"(这是英语的规则,而不是Go文档的规则。)

相关问题