✨ feat(vscode): 代码阅读侧栏给目录、文件记注释

This commit is contained in:
cruldra committed 2026-09-25 19:21:03 +08:00
1 parent beabffdf2c
commit 05c4bec56b
14 files changed
+703 -23

No files matched your search

+7 -2
View File
@@ -6,6 +6,8 @@ import { showPreview, showSource } from './editor/switchEditor'
import { FileTreeProvider } from './explorer/fileTree'
import { createPythonAdapter } from './languages/python'
import { createTypeScriptAdapter } from './languages/typescript'
import { registerNoteCommands } from './notes/commands'
import { FileNotes } from './notes/fileNotes'
import { CodeReaderRegistry } from './registry'
import { bundledWasmDir, TreeSitterRuntime } from './runtime'
import { pythonZhTranslator } from './translators/pythonZh'
@@ -37,16 +39,19 @@ async function openFile(uri: Uri, registry: CodeReaderRegistry): Promise<void> {
}
/**
* 接入代码阅读:注册表、侧栏文件树、预览编辑器、编辑器右上角的「预览 / 编辑」切换。
* 接入代码阅读:注册表、侧栏文件树和文件注释、预览编辑器、编辑器右上角的「预览 / 编辑」切换。
* 内置的语言插件和翻译插件与其他扩展一样通过返回的 API 注册。
*/
export function registerCodeReader(context: ExtensionContext): CodeReaderApi {
const registry = new CodeReaderRegistry(context.globalState)
const runtime = new TreeSitterRuntime(bundledWasmDir())
const previews = new PreviewEditorProvider(context.extensionUri, registry, runtime)
const files = new FileTreeProvider(OPEN_COMMAND)
const notes = new FileNotes()
const files = new FileTreeProvider(OPEN_COMMAND, notes)
context.subscriptions.push(
notes,
registerNoteCommands(notes),
registry.onDidChange(() => {
void commands.executeCommand('setContext', LANGUAGE_IDS_CONTEXT, registry.languageIds())
previews.refresh()