返回
Minimal Mistakes:中文统计错误疑云
前端
2023-11-18 14:58:12
在 Jekyll 世界中,Minimal Mistakes 以其简洁优雅的设计脱颖而出,成为众多博客作者和开发者的青睐之选。然而,当您在 GitHub Pages 上部署 Minimal Mistakes 主题时,可能会遇到一个令人沮丧的问题:中文字数统计错误。这段中文在页面上看起来清晰明了,但计数器却只显示为一个字!这究竟是怎么回事呢?
中文统计之谜
要解开这个谜团,我们需要了解 Minimal Mistakes 中计数中文的方式。该主题使用 JavaScript 来统计页面中的字数,但 JavaScript 默认将中文字符视为单个单元。当中文文本被解析时,每个字符都被视为一个独立的字,导致了统计错误。
解决之道
为了解决这个恼人的问题,我们需要对主题的 JavaScript 代码进行一些修改。具体步骤如下:
- 打开 Minimal Mistakes 主题的根目录下的
assets/js/wordcount.js
文件。 - 找到以下代码段:
var words = body.innerText.split(/\s+/g);
- 将其替换为:
var words = body.innerText.match(/[^\s\t\r\n]+/g);
此修改将更改分词规则,使 JavaScript 能够正确地识别中文字符并将其统计为单个字。
巧用 CSS
除了 JavaScript 解决方案,您还可以使用 CSS 来解决此问题。在 Minimal Mistakes 主题的 assets/css/style.scss
文件中添加以下代码:
body {
word-wrap: break-word;
}
此代码将强制浏览器将中文文本按字进行换行,从而解决统计错误。
最佳实践
为了获得最佳效果,建议将 JavaScript 和 CSS 解决方案结合使用。这将确保跨浏览器的兼容性和准确的中文统计。
告别烦恼
通过实施这些简单的修改,您就可以告别 Minimal Mistakes 中的中文统计错误。现在,您可以在 GitHub Pages 上使用这个出色的主题,而无需担心字数统计的烦恼。
参考