我不确定你有没有遇到过这样的问题,输入一个双引号,它是 前引号 呢,还是 后引号 。也许是字体的缘故,我总得瞪大了眼睛才能分辨的清楚。出于好奇,我上网搜了下,还真有解决办法。最简单的办法就是使用港台的标准,使用直角引号。请看图片:

为什么使用直角引号

关于这个问题,知乎上有讨论,这篇文章 1 做了总结:

直角引号的提倡者主要有如下理由:

其一,与冒号、分号等标点都有用于东亚文字的全角版本不同,弯引号缺少一个中文专用的版本。无论中文西文,弯引号都是同样码位上的同一对字符,其外形完全取决于字体。在中西文混排的场合,弯引号常常因为套用西文字体而显示为半角宽度,与汉字和其他中文标点差异很大,从而对排版效果产生不利影响。

其二,提倡者认为直角引号的形态与方块字更加契合。

其三,直角引号在香港、台湾和日本都是官方规范,这也为将其「进口」到简体中文世界提供了依据。

我个人也觉得,直角引号更容易分辨,也更美观。比如在我的浏览器下的显示如图:

以上是双引号

以上是直角引号

linux 下怎样输入直角引号?

如果你用的是 fcitx 输入法框架,输入直角引号的问题很容易就能解决。 2

  1. 查看 /usr/share/fcitx/data/ 文件夹下, punc-ng.mb-zh_CN 这个文件的内容。这是一个全局配置文件。

  2. 将这个「配置文件」复制到用户目录,即 ~/.config/fcitx/data/ 目录下,进行修改:

1
2
" 「 」
' 『 』

这样,当我们使用中文输入法时,输出的引号就是直角引号了。

由此得到的启发,我们同时还能将任意字符进行修改,比如说:中文输入法下,输入 * 时,得到的是 × 这个字符。对我个人而言, × 这个符号我基本上很少使用,而在使用 「markdonw」 或者 「orgmode」 标记语言时, * 号却是经常使用的。那么,直接在「配置文件」中,将 * × 这一行删除就可以了。

题外话,为什么不直接修改 /usr/share/fcitx/data/ 目录下的全局文件,而要放到用户目录下?这是为了更好的管理个人的 dotfiles ,不妨参考我的另一篇文章:Linux 下,使用 Git 管理 dotfiles(配置文件)

替换所有旧文章中的引号

使用 sed 命令:

1
2
sed -i s/“/「/g `grep -rl “ *`    # 替换前引号
sed -i s/”/」/g `grep -rl ” *`    # 替换后引号

  1. 这是一篇不错的中文标点符号的知识普及。 [return]
  2. Punctuation - Fcitx [return]