Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 10 additions & 3 deletions plugins/ztools-markdown-notes/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,20 @@
# Changelog
# 更新日志

## 0.1.2 - 2026-09-26

## 0.1.1 - 2026-09-03
- 新增文本高亮,以及高亮颜色和透明度设置。
- 新增代码块语言选择、过滤和一键复制。
- 新增图片右键调整大小、恢复自动大小和删除功能。
- 优化编辑器正文间距,以及代码块和图片的聚焦体验。
- 修复高亮文本边界连续退格可能破坏 Markdown 标记的问题。

## 0.1.1

- 新增 Markdown 导入、Markdown 导出和 HTML 导出。
- 优化编辑器工具栏、更多操作菜单和内容区域布局。
- 修正生产包清单,移除开发服务器入口。

## 0.1.0 - 2026-09-02
## 0.1.0

- 支持真实 Markdown 文件与多工作区管理。
- 支持 Vditor 即时渲染和源码编辑,编辑内容自动保存。
Expand Down
2 changes: 1 addition & 1 deletion plugins/ztools-markdown-notes/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "ztools-markdown-notes",
"private": true,
"version": "0.1.1",
"version": "0.1.2",
"type": "module",
"scripts": {
"dev": "vite",
Expand Down
2 changes: 1 addition & 1 deletion plugins/ztools-markdown-notes/plugin.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "ztools-markdown-notes",
"title": "Markdown 笔记",
"description": "基于真实本地 Markdown 文件的轻量笔记插件",
"version": "0.1.1",
"version": "0.1.2",
"main": "index.html",
"development": {
"main": "http://localhost:5173"
Expand Down
2 changes: 1 addition & 1 deletion plugins/ztools-markdown-notes/public/plugin.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "ztools-markdown-notes",
"title": "Markdown 笔记",
"description": "基于真实本地 Markdown 文件的轻量笔记插件",
"version": "0.1.1",
"version": "0.1.2",
"main": "index.html",
"development": {
"main": "http://localhost:5173"
Expand Down
2 changes: 1 addition & 1 deletion plugins/ztools-markdown-notes/scripts/publish-update.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,7 @@ if (-not $forkChanges) {
Invoke-Git -Repository $forkPath -Arguments @('commit', '-m', "Update plugin Markdown Notes v$version")
Invoke-Git -Repository $forkPath -Arguments @('push', '-u', 'origin', $branch)

$pullRequestUrl = "https://github.com/dufan1032/ZTools-plugins/compare/main...$branch?expand=1"
$pullRequestUrl = "https://github.com/ZToolsCenter/ZTools-plugins/compare/main...dufan1032:${branch}?expand=1"
Write-Host ''
Write-Host 'Release branch pushed. Create the pull request:' -ForegroundColor Green
Write-Host $pullRequestUrl
Expand Down
31 changes: 27 additions & 4 deletions plugins/ztools-markdown-notes/src/App.vue
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import TrashPanel from './components/TrashPanel.vue'
import WorkspaceTree from './components/WorkspaceTree.vue'
import { extractOutline } from './outline'
import { endWorkspaceDrag, getWorkspaceDragPath } from './workspaceDrag'
import { clearNoteDraft, clearNoteDraftPath, defaultEditorSettings, loadEditorMode, loadEditorSettings, loadGlobalNoteSearchEnabled, loadGlobalWorkspaceSearchEnabled, loadHiddenGlobalNotePaths, loadLastWorkspacePath, loadNoteDraft, loadPinnedNotePaths, loadRegisteredWorkspaces, loadTrashRetentionDays, replaceNoteDraftPath, saveEditorMode, saveEditorSettings, saveGlobalNoteSearchEnabled, saveGlobalWorkspaceSearchEnabled, saveHiddenGlobalNotePaths, saveLastWorkspacePath, saveNoteDraft, savePinnedNotePaths, saveRegisteredWorkspaces, saveTrashRetentionDays, type NoteDraft, type RegisteredWorkspace } from './workspaceSession'
import { clearNoteDraft, clearNoteDraftPath, defaultEditorSettings, loadEditorMode, loadEditorSettings, loadGlobalNoteSearchEnabled, loadGlobalWorkspaceSearchEnabled, loadHiddenGlobalNotePaths, loadLastWorkspacePath, loadNoteDraft, loadPinnedNotePaths, loadRegisteredWorkspaces, loadTrashRetentionDays, normalizeHexColor, replaceNoteDraftPath, saveEditorMode, saveEditorSettings, saveGlobalNoteSearchEnabled, saveGlobalWorkspaceSearchEnabled, saveHiddenGlobalNotePaths, saveLastWorkspacePath, saveNoteDraft, savePinnedNotePaths, saveRegisteredWorkspaces, saveTrashRetentionDays, type NoteDraft, type RegisteredWorkspace } from './workspaceSession'

const workspace = ref<WorkspaceScan | null>(null)
const previousWorkspace = ref<WorkspaceScan | null>(null)
Expand Down Expand Up @@ -144,6 +144,8 @@ const editorStyle = computed(() => ({
'--editor-font-size': `${editorSettings.value.fontSize}px`,
'--editor-line-height': String(editorSettings.value.lineHeight),
'--find-highlight-color': editorSettings.value.findHighlightColor,
'--text-highlight-color': editorSettings.value.textHighlightColor,
'--text-highlight-opacity': `${editorSettings.value.textHighlightOpacity}%`,
}))
const pinnedNotes = computed(() => {
const notes = new Map(flattenNoteEntries(workspace.value?.entries ?? []).map((note) => [note.relativePath, note]))
Expand Down Expand Up @@ -428,10 +430,15 @@ function dropIntoRoot(event: DragEvent) {
if (allowed) void moveEntry(sourcePath, '')
}

function showOperationError(message: string) {
function showOperationError(message: string, autoDismiss = false) {
window.clearTimeout(operationTimer)
operationTone.value = 'error'
operationMessage.value = message
if (autoDismiss) {
operationTimer = window.setTimeout(() => {
operationMessage.value = ''
}, 2200)
}
}

function showOperationSuccess(message: string) {
Expand Down Expand Up @@ -477,6 +484,20 @@ function updateEditorSettings() {
saveEditorSettings(editorSettings.value)
}

function updateHighlightColor(setting: 'findHighlightColor' | 'textHighlightColor', event: Event) {
const input = event.target as HTMLInputElement
const color = normalizeHexColor(input.value)
if (!color) return
editorSettings.value[setting] = color
input.value = color
updateEditorSettings()
}

function restoreHighlightColor(setting: 'findHighlightColor' | 'textHighlightColor', event: Event) {
const input = event.target as HTMLInputElement
input.value = editorSettings.value[setting]
}

function resetDefaultSettings() {
editorSettings.value = { ...defaultEditorSettings }
saveEditorSettings(editorSettings.value)
Expand Down Expand Up @@ -2237,10 +2258,12 @@ watch(activeNotePath, () => {
</div>
</section>
<section class="settings-group">
<header class="settings-group-title"><h3>编辑器</h3><small>调整正文显示和当前笔记查找效果。</small></header>
<header class="settings-group-title"><h3>编辑器</h3><small>调整正文显示、文本高亮和当前笔记查找效果。</small></header>
<label>正文字号 <input v-model.number="editorSettings.fontSize" type="range" min="12" max="24" step="1" @input="updateEditorSettings" /><span>{{ editorSettings.fontSize }} px</span></label>
<label>正文行高 <input v-model.number="editorSettings.lineHeight" type="range" min="1.2" max="2.4" step="0.1" @input="updateEditorSettings" /><span>{{ editorSettings.lineHeight.toFixed(1) }}</span></label>
<label>查找匹配颜色 <input v-model="editorSettings.findHighlightColor" type="color" @input="updateEditorSettings" /></label>
<label>文本高亮颜色 <span class="color-setting-control"><input v-model="editorSettings.textHighlightColor" type="color" @input="updateHighlightColor('textHighlightColor', $event)" /><input :value="editorSettings.textHighlightColor" type="text" size="8" maxlength="7" inputmode="text" aria-label="文本高亮颜色,支持十六进制" title="支持 #RRGGBB 或 RRGGBB" @input="updateHighlightColor('textHighlightColor', $event)" @change="restoreHighlightColor('textHighlightColor', $event)" /></span></label>
<label>文本高亮透明度 <input v-model.number="editorSettings.textHighlightOpacity" type="range" min="0" max="100" step="1" @input="updateEditorSettings" /><span>{{ editorSettings.textHighlightOpacity }}%</span></label>
<label>查找匹配颜色 <span class="color-setting-control"><input v-model="editorSettings.findHighlightColor" type="color" @input="updateHighlightColor('findHighlightColor', $event)" /><input :value="editorSettings.findHighlightColor" type="text" size="8" maxlength="7" inputmode="text" aria-label="查找匹配颜色,支持十六进制" title="支持 #RRGGBB 或 RRGGBB" @input="updateHighlightColor('findHighlightColor', $event)" @change="restoreHighlightColor('findHighlightColor', $event)" /></span></label>
</section>
<section class="settings-group">
<header class="settings-group-title"><h3>zTools 集成</h3><small>控制哪些内容可以从 zTools 主搜索中直接打开。</small></header>
Expand Down
Loading
Loading