Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Reamd7/notion-zh_CN
notion 中文化
https://github.com/Reamd7/notion-zh_CN
Last synced: 6 days ago
JSON representation
notion 中文化
- Host: GitHub
- URL: https://github.com/Reamd7/notion-zh_CN
- Owner: Reamd7
- Created: 2021-08-12T14:41:52.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-04-26T13:52:47.000Z (6 months ago)
- Last Synced: 2024-04-26T14:57:53.832Z (6 months ago)
- Language: JavaScript
- Size: 118 MB
- Stars: 7,186
- Watchers: 39
- Forks: 1,086
- Open Issues: 73
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-hacking-lists - Reamd7/notion-zh_CN - notion 中文化 (JavaScript)
- StarryDivineSky - Reamd7/notion-zh_CN
README
# Window / Mac 版本已经更新3.1.0,请使用更新版本
# notion-zh_CN 是什么?
notion-zh_CN 是对notion的汉化脚本。
## 功能
- 支持 网页端 ( 油猴脚本 ) + 桌面端 ( win / mac ) + 安卓端 汉化脚本
- (很久没有维护)提供cloudflare worker 版本代理 notion.so 域名
这是一个**平台无关**(IOS 上的safari也能直接使用)的汉化方式,只要你自己部署cloudflare worker,就可以使用。附带cf代理**加速**的能力。
> 其实这里应该可以做域名映射到notion.so的访问的。(从而实现全平台汉化)# 为什么要做这个项目?
Notion 已经有了中文语料,让用户能够提前使用中文语料
# 如何使用?
## 网页端
1. ### 安装油猴插件
此处提供搜索到知乎的一篇教程:https://zhuanlan.zhihu.com/p/128453110
2. ### 安装油猴脚本
打开链接:https://greasyfork.org/zh-CN/scripts/430116-notion-%E5%AE%8C%E5%85%A8%E4%B8%AD%E6%96%87%E5%8C%96-%E5%9F%BA%E4%BA%8E%E9%9F%A9%E8%AF%AD%E7%89%88%E6%9C%AC-%E4%BD%BF%E7%94%A8%E8%85%BE%E8%AE%AFapi%E6%9C%BA%E7%BF%BB 。然后点击安装。
3. ### 体验汉化效果
https://www.notion.so## 桌面端
notion 客户端迎来了巨大更新,文件结构发生完全不一致的变化(没有了可以注入的preload.js了)
**有问题发issue,最好是贴录屏,gif 能直接贴在issue**
### 预处理版本
[https://github.com/Reamd7/notion-zh_CN/releases/tag/3.0.0](https://github.com/Reamd7/notion-zh_CN/releases/tag/3.1.0)
- `app.win.zip`
- `app.mac.zip`都已经有了app文件夹
打开 `Notion安装目录/resources`
解压 `预处理压缩包` 到 `Notion安装目录/resources` 下
删除 `app.asar` 或 重命名为其他名字### **(修改原理):** windows / mac
打开 `Notion安装目录/resources`
解压 `app.asar` 到相同目录的 `app` 文件夹下
找到 `.webpack/main/index.js`
1. 搜索 `localeHtml`
看到一个 `localeHtml[r]`
将 `r` 替换为 `zh-CN` / `zh-TW`目的是直接使用缓存资源文件中 zh-CN 的 html
2. 搜索 requestReturnedAsIndexV2
看到 const e = l.default.join(i, u.path); 是文件的绝对路径
在下方直接注入以下代码, 目的是修改 renderer 中 localStorage 的 locale 缓存值
```js
if (u.path.endsWith('.html')) {
const fs = require('fs');
const htmlContent = fs.readFileSync(e, 'utf-8')
if (!htmlContent.includes(`{"id":"KeyValueStore2:preferredLocale","value":"zh-CN","timestamp":Date.now(),"important":true}`)) {
(() => {
fs.writeFileSync(e, htmlContent.replace("