安装这个插件,网页排版变好看了

2019-08-30 08:54:31 +08:00
 leopoldthecuber

最近写了一个用于中文排版格式化的 Chrome 插件:Doctor Jones (琼斯医生),作用是美化你当前正在浏览的网页的中文排版,包括中英文混排。

相关链接:

插件作用

举例来说,如果页面上本来有这样一段文字:

比方说 adobe 的 photoshop 系列,ANSYS、Dassault System、Autodesk 那些 maya 3D Max, 微软的 office 系列、matlab、Mathematica、英伟达的显卡驱动程序、甚至现在用得最广泛的 tensorflow 本 ten.

全都是“面向解决问题的开发”。

经过琼斯医生格式化后,你看到的页面就变成了:

比方说 adobe 的 photoshop 系列,ANSYS、Dassault System、Autodesk 那些 maya 3D Max, 微软的 office 系列、matlab、Mathematica、英伟达的显卡驱动程序、甚至现在用得最广泛的 tensorflow 本 ten.

全都是「面向解决问题的开发」。

更加具体的介绍可以查看这篇专栏,获取插件请点击这里

Under the Hood

Chrome 插件所依赖的核心是之前写的一个方法,它接收一个字符串和一个配置对象,返回格式化后的字符串。这个方法也发布成了一个 npm 包,地址在这里,具体用法如下:

import dj from 'doctor-jones'

dj('2019 年 8 月') // => 2019 年 8 月
dj('2019 年 8 月', { spacing: false }) // => 2019 年 8 月

它的源码在这里,更加具体的介绍可以查看这篇专栏

衍生项目

由以上方法还衍生出了一个 webpack loader (源码),作用是将代码中的文本格式化,直观过程可以查看这个动图

上面三个项目的文档链接在此,也欢迎各位去源码仓库点一波 star。

8582 次点击
所在节点    分享创造
49 条回复
oszlso
2019-08-30 23:28:32 +08:00
建议增加“自动排版”的能力,比如在线用腾讯文档写下的内容,可以一键加空格...
xfcy
2019-08-30 23:41:20 +08:00
可是这样不规范了吧(抱歉有略微的强迫症
我始终觉得中西文之间的空白应该是由样式来控制,而不是加入一个空格,这样改变了原文的内容_(:з」∠)_
compiler
2019-08-31 01:04:26 +08:00
多少对性能有影响吧
jedihy
2019-08-31 06:38:03 +08:00
直角引号应该是 19 世纪末从日本引入的,从未真正被纳入国家文字标准。
HeiXiaoBai
2019-08-31 06:42:10 +08:00
所以在看代码时,字符串“ xxx ”会不会也被替换为直角引号?
leopoldthecuber
2019-08-31 09:32:38 +08:00
@HeiXiaoBai 代码中字符串两边的引号是半角的,不会被替换。
blueset
2019-08-31 17:06:44 +08:00
既然要自动加空格的话,直接加一个  1/4 em  的空格或者  1/6 em  的空格应该也不错。
VENTDOUX
2019-09-04 10:42:39 +08:00
有个 BUG,使用插件后用光标网页选择文字的时候,选择后执行右键会经常少选一个或者直接取消掉,我现在取消掉插件就没有这个问题。
leopoldthecuber
2019-09-04 14:02:57 +08:00
@VENTDOUX 已修复,等待谷歌审核。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/596403

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX