Skip to content

Instantly share code, notes, and snippets.

@reorx
Last active June 29, 2020 15:56
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save reorx/708af73392666d336d86ba69d1ff282d to your computer and use it in GitHub Desktop.
Save reorx/708af73392666d336d86ba69d1ff282d to your computer and use it in GitHub Desktop.

之前一直是全空格写法,即中文与所有非中文之间全部加上空格,但近来感觉到这种写法在有些情况下既低效又不美观,因此想把不同情况列出,对比增加空格与否的优劣得失。

请注意,本文仅为个人看法,旨在探讨不同书写方式的可能性,不对其他规范进行赞成或反对。

以下书写元素将被涉及:

  • 中文字
  • 中文标点
  • 英文字母(代表所有拉丁字母)
  • 半角标点
  • 数字
  • emoji

1、中文字,英文字母

Good:

带着 EVA 贰号机前往 NERV 本部

Bad:

带着EVA贰号机前往NERV本部

这是最常见、最基本的情况,中英文间的空格让排版和阅读变得清晰。

2、中文字,中文标点,英文字母

Good:

根据美国学者特洛特(J.P. Telotte)的说法

根据美国学者“J.P. Telotte”的说法

Bad:

根据美国学者特洛特( J.P. Telotte )的说法

根据美国学者“ J.P. Telotte ”的说法

中文标点与英文字母之间不应该加上空格,标点本身已是间隔的表达,全角也包含了足够的空隙。
本文探讨以中文为书写基调的场景下空格的使用,因此该例子中引号为中文。

3、中文字,数字,英文字母

Good:

2015年9月21日,她转学至第3新东京市立第一中学2年 A 组

Bad:

2015 年 9 月 21 日,她转学至第 3 新东京市立第一中学 2 年 A 组

中文字与数字间不需要空格,数字通常与前后的中文字之间有明确的关联,如例句中的日期、“第3”、”2年“实际上都是一个完整的词,用空格隔开会使其意义疏离。”A 组“其实也是一个词,我认为不使用空格也行,但为了避免多重标准,因此保留了空格。

4、中文字,emoji

Good:

很高兴能见到你!😀

😆太好玩了

Bad:

很高兴能见到你! 😀

😆 太好玩了

由于 emoji 占一个全角字符宽度,因此没必要在其与中文字之间增加空格。
题外话:若 emoji 放在句尾,我认为应该将其放在标点之后,而非之前。

5、英文字母,emoji

Good:

Every cat deserves his own castle 👑🐱

Bad:

Every cat deserves his own castle👑🐱

英文字母与 emoji 之间应有空格。


对比目前 star 数最多的另一标准 sparanoid/chinese-copywriting-guidelines

一致项:

  • 中英文之間

    在 LeanCloud 上,數據存儲是圍繞 AVObject 進行的。

  • 全形標點與其他字符之間

    剛剛買了一部 iPhone,好開心!

  • 使用全形中文標點

    嗨!你知道嘛?今天前台的小妹跟我說「喵」了哎!

  • 數字使用半形字符

    這件蛋糕只賣 1000 元。

  • 遇到完整的英文整句、特殊名詞,其內容使用半形標點

    賈伯斯那句話是怎麼說的?「Stay hungry, stay foolish.」

不一致项:

中文與數字之間

sparanoid:

今天出去買菜花了 5000 元。

reorx:

今天出去買菜花了5000元。

數字與單位之間

sparanoid:

我家的光纖入屋寬頻有 10 Gbps,SSD 一共有 20 TB。 新 MacBook Pro 有 15% 的 CPU 性能提升。

reorx:

我家的光纖入屋寬頻有10Gbps,SSD 一共有20TB。 新 MacBook Pro 有15%的 CPU 性能提升。

@nc7s
Copy link

nc7s commented Jun 29, 2020

关于标点,我认为应当用需用标点处之前文字的标点,例:

在名称上,Edge of Tomorrow, 也就是电影《明日边缘》,
与其原作、日本小说家樱坂洋的轻小说 All You Need Is Kill, 中文译名为《杀戮轮回》风格迥异。

反之:

  • 若全部用中文全角标点

在名称上,Edge of Tomorrow,也就是电影《明日边缘》,
与其原作、日本小说家樱坂洋的轻小说 All You Need Is Kill,中文译名为《杀戮轮回》风格迥异。

  • 若全部用英文标点

在名称上, Edge of Tomorrow, 也就是电影《明日边缘》,
与其原作,日本小说家樱坂洋的轻小说 All You Need Is Kill, 中文译名为《杀戮轮回》风格迥异.

对中文内包含单个英文字母,如前例“A组”,大可不必空格隔开,否则为了一个字母空出两个字母的空白,不大平衡。诸如“GTA5 高达76G的空间需求”则值得商榷。

@reorx
Copy link
Author

reorx commented Jun 29, 2020

我这样对比过,才感觉全部中文全角更适合一点😂

“A组”其实不是单个字母的问题,而是中英文组成一个词的问题,“AA组”也是可能出现的,虽然不大平衡,但为了保持中英文的规则一致,就不想再引入新的规则了。

@nc7s
Copy link

nc7s commented Jun 29, 2020

在英文边上使用中文全角感觉别扭……就和在中文边上使用英文标点一样

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment