Skip to content

Commit 0961103

Browse files
committed
Merge branch 'release/3.85.1'
2 parents fcd70b2 + f15c709 commit 0961103

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+1854
-766
lines changed

.github/workflows/release.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ jobs:
99
strategy:
1010
matrix:
1111
include:
12-
- os: macos-13
12+
- os: macos-15
1313
platform: 'mac'
14-
- os: windows-2019
14+
- os: windows-2022
1515
platform: 'win'
1616
- os: ubuntu-22.04
1717
platform: 'linux'
@@ -37,7 +37,7 @@ jobs:
3737
- name: Setup Node.js environment
3838
uses: actions/setup-node@v2.1.2
3939
with:
40-
node-version: 18.x
40+
node-version: 22.x
4141

4242
- name: Install
4343
run: |

.node-version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
v18.20.2
1+
v22.21.1

README.md

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ English | [中文说明](./README_ZH-CN.md) | [Русский](./README_RU.md)
1313
## Highlights
1414

1515
- **Easy to use:** Use *Monaco* kernel, optimize for Markdown editing, and have the same editing experience as VSCode.
16-
- **Powerful:** Support version control; Applets, runnable code blocks, tables, PlantUML, Drawio, macro replacements, etc., can be embedded in the document; support for [OpenAI](https://openai.com) auto completion.
16+
- **Powerful:** Support version control; Applets, runnable code blocks, tables, PlantUML, Drawio, macro replacements, etc., can be embedded in the document; support for AI Copilot.
1717
- **High compatibility:** Data is saved as local Markdown files, and the extension functions are implemented in the original syntax of Markdown as far as possible.
1818
- **Plug-in extension:** Support users to write their own plug-ins to expand the functionality of the editor.
1919
- **Encryption supported:** Use encryption to save private files such as account number, and the password can be set separately for each file.
@@ -63,7 +63,7 @@ For more information on how to use the following functions, please see [characte
6363
- **Macro replacement:** support for embedded JavaScript expressions to dynamically replace document content
6464
- **Image hosting service:** support [PicGo](https://picgo.github.io/PicGo-Doc/) image hosting service
6565
- **OpenAI:** support for [OpenAI](https://openai.com) auto completion
66-
- **Custom plug-ins:** support writing JavaScript plug-ins to expand editor functionality. The plug-in is placed in the `home directory/plugins`. Refer to [plug-in Development Guide](./help/PLUGIN.md)
66+
- **Custom plug-ins:** support writing JavaScript plug-ins to #expand editor functionality. The plug-in is placed in the `home directory/plugins`. Refer to [plug-in Development Guide](./help/PLUGIN.md)
6767

6868
## Screenshots
6969

@@ -76,14 +76,16 @@ For more information on how to use the following functions, please see [characte
7676

7777
## Changelogs
7878

79-
### [v3.82.1](https://github.com/purocean/yn/releases/tag/v3.82.1) 2025-03-30
79+
### [v3.85.1](https://github.com/purocean/yn/releases/tag/v3.85.1) 2025-11-25
8080

81-
[Windows](https://github.com/purocean/yn/releases/download/v3.82.1/Yank-Note-win-x64-3.82.1.exe) | [macOS arm64](https://github.com/purocean/yn/releases/download/v3.82.1/Yank-Note-mac-arm64-3.82.1.dmg) | [macOS x64](https://github.com/purocean/yn/releases/download/v3.82.1/Yank-Note-mac-x64-3.82.1.dmg) | [Linux AppImage](https://github.com/purocean/yn/releases/download/v3.82.1/Yank-Note-linux-x86_64-3.82.1.AppImage) | [Linux deb](https://github.com/purocean/yn/releases/download/v3.82.1/Yank-Note-linux-amd64-3.82.1.deb)
81+
[Windows](https://github.com/purocean/yn/releases/download/v3.85.1/Yank-Note-win-x64-3.85.1.exe) | [macOS arm64](https://github.com/purocean/yn/releases/download/v3.85.1/Yank-Note-mac-arm64-3.85.1.dmg) | [macOS x64](https://github.com/purocean/yn/releases/download/v3.85.1/Yank-Note-mac-x64-3.85.1.dmg) | [Linux AppImage](https://github.com/purocean/yn/releases/download/v3.85.1/Yank-Note-linux-x86_64-3.85.1.AppImage) | [Linux deb](https://github.com/purocean/yn/releases/download/v3.85.1/Yank-Note-linux-amd64-3.85.1.deb)
8282

83-
1. feat: Added font configuration for the preview area
84-
2. feat: Restrict Markdown syntax suggestions in the editor from displaying within code fences
85-
3. fix: Fixed the issue where exported HTML headings were not highlighted correctly in some cases
86-
4. feat(plugin): Added the `ctx.editor.getLineLanguageId` method to retrieve the language ID of a specific line
83+
1. feat: Add an option to automatically insert spaces between Chinese and English in the settings
84+
3. feat: Optimize the settings panel interaction, add a suggested list for image storage directories, and add code highlighting to custom CSS styles
85+
2. feat: Improve the interaction of the quick filter, add character highlighting
86+
4. feat: Upgrade Electron to 38.7.1
87+
5. fix: Fix the incorrect error message location in the settings panel
88+
6. feat(plugin): Add the text highlighting utility `ctx.utils.createTextHighlighter`
8789

8890
[More release notes](https://github.com/purocean/yn/releases)
8991

README_RU.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
## Особенности
1515

1616
- **Простота использования:** Используется ядро *Monaco*, оптимизированное для редактирования в формате Markdown, и возможности редактирования такие же, как у VSCode.
17-
- **Мощный:** Поддержка контроля версий; в документ можно встраивать апплеты, запускаемые блоки кода, таблицы, PlantUML, Drawio, макрозамены и т.д.; поддержка автодополнения [OpenAI](https://openai.com).
17+
- **Мощный:** Поддержка контроля версий; в документ можно встраивать апплеты, запускаемые блоки кода, таблицы, PlantUML, Drawio, макрозамены и т.д.; поддержка автодополнения AI Copilot.
1818
- **Высокая совместимость:** Данные сохраняются в виде локальных файлов Markdown, а функции расширения реализованы в оригинальном синтаксисе Markdown, насколько это возможно.
1919
- **Расширение плагинов:** Поддержка пользователей в написании собственных плагинов для расширения функциональности редактора.
2020
- **Поддержка шифрования:** Используйте шифрование для сохранения приватных файлов, таких как номер счета, а пароль может быть установлен отдельно для каждого файла.

README_ZH-CN.md

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
## 特色
1414

1515
- **使用方便**:使用 Monaco 内核,专为 Markdown 优化,拥有和 VSCode 一样的编辑体验。
16-
- **功能强大**:支持历史版本回溯;可在文档中嵌入小工具、可运行的代码块、表格、PlantUML 图形、Drawio 图形、宏替换等;支持接入 [OpenAI](https://openai.com) 自动补全
16+
- **功能强大**:支持历史版本回溯;可在文档中嵌入小工具、可运行的代码块、表格、PlantUML 图形、Drawio 图形、宏替换等;支持 AI Copilot
1717
- **兼容性强**:数据保存为本地 Markdown 文件;拓展功能尽量用 Markdown 原有的语法实现。
1818
- **插件拓展**:支持用户编写自己的插件来拓展编辑器的功能。
1919
- **支持加密**:用来保存账号等隐私文件,文件可单独设置密码。
@@ -76,14 +76,16 @@
7676

7777
## 更新日志
7878

79-
### [v3.82.1](https://github.com/purocean/yn/releases/tag/v3.82.1) 2025-03-30
79+
### [v3.85.1](https://github.com/purocean/yn/releases/tag/v3.85.1) 2025-11-25
8080

81-
[Windows](https://github.com/purocean/yn/releases/download/v3.82.1/Yank-Note-win-x64-3.82.1.exe) | [macOS arm64](https://github.com/purocean/yn/releases/download/v3.82.1/Yank-Note-mac-arm64-3.82.1.dmg) | [macOS x64](https://github.com/purocean/yn/releases/download/v3.82.1/Yank-Note-mac-x64-3.82.1.dmg) | [Linux AppImage](https://github.com/purocean/yn/releases/download/v3.82.1/Yank-Note-linux-x86_64-3.82.1.AppImage) | [Linux deb](https://github.com/purocean/yn/releases/download/v3.82.1/Yank-Note-linux-amd64-3.82.1.deb)
81+
[Windows](https://github.com/purocean/yn/releases/download/v3.85.1/Yank-Note-win-x64-3.85.1.exe) | [macOS arm64](https://github.com/purocean/yn/releases/download/v3.85.1/Yank-Note-mac-arm64-3.85.1.dmg) | [macOS x64](https://github.com/purocean/yn/releases/download/v3.85.1/Yank-Note-mac-x64-3.85.1.dmg) | [Linux AppImage](https://github.com/purocean/yn/releases/download/v3.85.1/Yank-Note-linux-x86_64-3.85.1.AppImage) | [Linux deb](https://github.com/purocean/yn/releases/download/v3.85.1/Yank-Note-linux-amd64-3.85.1.deb)
8282

83-
1. feat: 新增预览区字体配置
84-
2. feat: 限制编辑器的 Markdown 语法建议在代码围栏中不显示
85-
3. fix: 修复某些情况下导出的 HTML 标题高亮不正确问题
86-
4. feat(plugin): 增加 `ctx.editor.getLineLanguageId` 方法获取某行的语言ID
83+
1. feat: 设置中增加自动在中英文之间添加空格选项
84+
3. feat: 优化设置面板交互,图片存放目录增加建议列表,自定义 CSS 样式 增加代码高亮
85+
2. feat: 快捷筛选器交互,增加字符高亮
86+
4. feat: 升级 Electron 到 38.7.1
87+
5. fix: 修复设置面板错误提示位置不正确问题
88+
6. feat(plugin): 增加 `ctx.utils.createTextHighlighter` 文本高亮工具函数
8789

8890
[更多发布说明](https://github.com/purocean/yn/releases)
8991

help/FEATURES.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ Type '/' in the editor to get prompts
7070
*[W3C]: World Wide Web Consortium
7171
The HTML specification is maintained by the W3C.
7272
+ Wiki Link: Supports using `[[filename#anchor|display text]]` or `[[filename:line,column|display text]]` syntax to link documents, such as [[README#Highlights|Features]] [[README:3,4]]
73+
+ Tags: #Markdown #Help
7374

7475
## Github Alerts
7576

@@ -633,6 +634,7 @@ variable name | type | description
633634
`headingNumber` | `boolean` | whether to enable the page title serial number
634635
`wrapCode` | `boolean` | whether to enable code wrapping
635636
`enableMacro` | `boolean` | whether to enable macro replacement
637+
`tags` | `string[]` | 文档标签
636638
`define` | `Record<string, string>` | Macro definition, string replacing
637639
`defaultPreviewer` | `string` | The default previewer for the document, some extensions may provide a special preview interface. Such as *<a href="javascript: ctx.showExtensionManager('@yank-note/extension-reveal-js')">Reveal.js extension</a>*
638640
`mdOptions` | `Record<string, boolean>` | Markdown-it parse options

help/FEATURES_ZH-CN.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ define:
7171
*[W3C]: World Wide Web Consortium
7272
The HTML specification is maintained by the W3C.
7373
+ Wiki 链接:支持使用 `[[文件名#锚点|显示文本]]``[[文件名:行,列|显示文本]]` 语法来链接文档,如 [[README#Highlights|特色功能]] [[README:3,4]]
74+
+ 标签:#Markdown #使用帮助
7475

7576
## Github Alerts
7677

@@ -631,6 +632,7 @@ Yank Note 接入了 [OpenAI](https://openai.com)、[Google AI](https://ai.google
631632
`wrapCode` | `boolean` | 是否开启代码换行
632633
`enableMacro` | `boolean` | 是否开启宏替换
633634
`define` | `Record<string, string>` | 宏定义,定义文本替换
635+
`tags` | `string[]` | 文档标签
634636
`defaultPreviewer` | `string` | 文档默认的预览器,某些扩展可能提供特殊的预览界面。如 *<a href="javascript: ctx.showExtensionManager('@yank-note/extension-reveal-js')">Reveal.js 扩展</a>*
635637
`mdOptions` | `Record<string, boolean>` | Markdown-it 解析参数
636638
`mdOptions.html` | `boolean` | 开启 HTML 解析

package.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "yank.note",
3-
"version": "3.82.1",
3+
"version": "3.85.1",
44
"description": "Yank Note: A highly extensible Markdown editor, designed for productivity.",
55
"main": "dist/main/app.js",
66
"license": "AGPL-3.0",
@@ -41,12 +41,12 @@
4141
"ip": "^1.1.9",
4242
"jsonrpc-bridge": "^0.0.4",
4343
"jsonwebtoken": "^9.0.0",
44-
"koa": "^2.13.1",
44+
"koa": "^2.16.2",
4545
"koa-body": "^4.2.0",
4646
"lodash": "^4.17.21",
4747
"mime": "^2.5.2",
4848
"mitt": "^2.1.0",
49-
"node-pty": "^1.1.0-beta27",
49+
"node-pty": "^1.1.0-beta39",
5050
"pako": "^2.0.4",
5151
"plantuml-pipe": "^1.4.0",
5252
"qrcode": "^1.5.3",
@@ -57,7 +57,7 @@
5757
"socks": "^2.8.3",
5858
"tar-stream": "^2.2.0",
5959
"transliteration": "^2.2.0",
60-
"undici": "^6.21.1",
60+
"undici": "^6.21.2",
6161
"uuid": "^9.0.0",
6262
"yaml": "^2.2.2",
6363
"yargs": "^15.3.1"
@@ -66,7 +66,7 @@
6666
"@commitlint/cli": "^16.2.4",
6767
"@commitlint/config-conventional": "^16.2.4",
6868
"@electron/notarize": "^2.1.0",
69-
"@electron/rebuild": "^3.7.1",
69+
"@electron/rebuild": "^4.0.1",
7070
"@json-editor/json-editor": "^2.5.4",
7171
"@types/adm-zip": "^0.4.34",
7272
"@types/async-lock": "^1.3.0",
@@ -106,8 +106,8 @@
106106
"crypto-js": "^4.2.0",
107107
"dexie": "^4.0.8",
108108
"dom-to-image": "^2.6.0",
109-
"electron": "33.3.1",
110-
"electron-builder": "^23.6.0",
109+
"electron": "38.7.1",
110+
"electron-builder": "^26.0.12",
111111
"eslint": "^8.57.0",
112112
"eslint-plugin-import": "^2.29.1",
113113
"eslint-plugin-node": "^11.1.0",
@@ -148,7 +148,7 @@
148148
"typescript": "^5.5.4",
149149
"utility-types": "^3.10.0",
150150
"viewerjs": "^1.11.6",
151-
"vite": "^6.0.12",
151+
"vite": "^6.1.6",
152152
"vue": "^3.5.13",
153153
"vue-tsc": "^2.2.0",
154154
"xterm": "^4.18.0",

src/main/app.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ const hideWindow = () => {
106106
if (win) {
107107
win.hide()
108108
win.setSkipTaskbar(true)
109-
isMacos && app.dock.hide()
109+
isMacos && app.dock?.hide()
110110
}
111111
}
112112

@@ -325,7 +325,7 @@ const showWindow = (showInCurrentWindow = true) => {
325325
const show = () => {
326326
if (win) {
327327
// macos need show in dock
328-
isMacos && app.dock.show()
328+
isMacos && app.dock?.show()
329329
win.setSkipTaskbar(false)
330330
win.show()
331331
win.focus()

src/main/server/plantuml.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ async function getCacheData (key: string, gen: () => Promise<any>) {
6666
}
6767

6868
export default async function (data: string): Promise<{ content: any, type: string }> {
69-
const api: string = config.get('plantuml-api', 'local')
69+
const api: string = config.get('plantuml-api', 'local') || 'local'
7070

7171
if (api.startsWith('local')) {
7272
try {
@@ -99,7 +99,7 @@ export default async function (data: string): Promise<{ content: any, type: stri
9999
} else {
100100
const url = api.replace('{data}', plantumlBase64(data))
101101
const dispatcher = await getAction('get-proxy-dispatcher')(url)
102-
let type = api.includes('/svg/') ? 'image/svg+xml' : 'image/png'
102+
let type = api.includes('svg') ? 'image/svg+xml' : 'image/png'
103103

104104
const cacheKey = getCacheKey(api, type, data)
105105
const content = await getCacheData(cacheKey, async () => {

0 commit comments

Comments
 (0)