✨ feat(vscode): 代码阅读标出项目写明的入口文件和入口函数

This commit is contained in:
cruldra committed 2026-10-08 07:17:25 +08:00
1 parent 78d5748b81
commit 718bbb7f6c
19 files changed
+761 -83

No files matched your search

+6 -2
View File
@@ -12,9 +12,11 @@ import { NEXT_OCCURRENCE, PREVIOUS_OCCURRENCE } from './editor/occurrenceNavigat
import { PATH_PREVIEW_SCHEME } from './editor/pathPreview'
import { PREVIEW_VIEW_TYPE, PreviewEditorProvider } from './editor/previewEditor'
import { showPreview, showSource } from './editor/switchEditor'
import { WorkspaceEntries } from './entries/workspaceEntries'
import { registerCopyCommands } from './explorer/copyCommands'
import { FileTreeProvider } from './explorer/fileTree'
import { registerPathAsk } from './explorer/pathAskPanel'
import { RowDecorator } from './explorer/rowDecorator'
import { TreeFilters } from './explorer/treeFilters'
import { createBashAdapter } from './languages/bash'
import { createDockerfileAdapter } from './languages/dockerfile'
@@ -97,17 +99,19 @@ export function registerCodeReader(context: ExtensionContext): CodeReaderApi {
return adapter ? indexedNames((index, key) => indexes.find(index, key), adapter, name) : []
}
const notes = new FileNotes()
const files = new FileTreeProvider(OPEN_COMMAND, notes)
const entries = new WorkspaceEntries()
const files = new FileTreeProvider(OPEN_COMMAND, new RowDecorator(notes, entries))
const view = window.createTreeView(FILES_VIEW, { treeDataProvider: files, showCollapseAll: true })
const filters = new TreeFilters(files, view, context.workspaceState)
const review = new ReviewMode(context, FILES_VIEW, view, files, filters)
const uncommitted = new UncommittedMode(context, FILES_VIEW, view, files, filters)
// 侧栏开着的筛选定预览对比什么:未提交的更改对比上一次提交,审查工单对比 PR 的目标分支
const previews = new PreviewEditorProvider(context.extensionUri, registry, runtime, new BlockFilter(context.workspaceState), resolve, qa, namesIn, (index, key) => indexes.find(index, key), filters)
const previews = new PreviewEditorProvider(context.extensionUri, registry, runtime, new BlockFilter(context.workspaceState), resolve, qa, namesIn, (index, key) => indexes.find(index, key), filters, entries)
context.subscriptions.push(
qa,
notes,
entries,
indexes,
registerNoteCommands(notes),
registerCopyCommands(),