✨ feat(vscode): 代码阅读侧栏跟着当前文件走,目录链接在侧栏树上定位

This commit is contained in:
cruldra committed 2026-10-08 07:17:26 +08:00
1 parent ff713db6e7
commit c841ae678a
10 files changed
+464 -7

No files matched your search

+4 -1
View File
@@ -18,6 +18,7 @@ import { FileTreeProvider } from './explorer/fileTree'
import { registerPathAsk } from './explorer/pathAskPanel'
import { RowDecorator } from './explorer/rowDecorator'
import { TreeFilters } from './explorer/treeFilters'
import { TreeLocator } from './explorer/treeLocator'
import { createBashAdapter } from './languages/bash'
import { createDockerfileAdapter } from './languages/dockerfile'
import { createPythonAdapter } from './languages/python'
@@ -102,11 +103,12 @@ export function registerCodeReader(context: ExtensionContext): CodeReaderApi {
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 locator = new TreeLocator(files, view)
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, entries)
const previews = new PreviewEditorProvider(context.extensionUri, registry, runtime, new BlockFilter(context.workspaceState), resolve, qa, namesIn, (index, key) => indexes.find(index, key), filters, entries, uri => locator.reveal(uri))
context.subscriptions.push(
qa,
@@ -132,6 +134,7 @@ export function registerCodeReader(context: ExtensionContext): CodeReaderApi {
window.registerCustomEditorProvider(PREVIEW_VIEW_TYPE, previews),
files,
view,
locator,
filters,
review,
uncommitted,