微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在资源管理器中拖放时停止打开文件

如何解决在资源管理器中拖放时停止打开文件

当我将任何文件拖放到 Visual Studio Code 的资源管理器中时,它会自动在编辑器中打开该文件是否有任何设置可以关闭此行为?

通常,我使用大而重的 CSV、JSON 等文件,因此当这些文件打开时,它确实会降低我的计算机速度,也是因为某些扩展程序(例如文本突出显示)会自动尝试解析文本,但直到它意识到完成他的工作内容太多,并显示警告,因为性能问题它不会继续,它已经降低了我的计算机速度。

当然,我可以在这种情况发生之前以足够快的速度关闭文件,但有时问题仍然存在(无论如何应该可以禁用此功能)。

解决方法

我克隆了一个 vscode 的源来寻找解决方案。这是我在源码中发现的,拖拽多个文件时,什么也打不开:

vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.ts

// if we only add one file,just open it directly
if (resourceFileEdits.length === 1) {
  const item = this.explorerService.findClosest(resourceFileEdits[0].newResource!);
  if (item && !item.isDirectory) {
    this.editorService.openEditor({ resource: item.resource,options: { pinned: true } });
  }
}

这段代码放在:

 private async addResources(target: ExplorerItem,resources: URI[],token: CancellationToken): Promise<void> {

并从 handleExternalDrop 函数调用。

private async handleExternalDrop(target: ExplorerItem,originalEvent: DragEvent,token: CancellationToken): Promise<void> {

当然,如果只有一个文件,这不是一个解决方案。

你可能需要创建 4.6k + 1 issue

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。