在关闭vscode编辑器之前是否会触发某个事件?

时间:2019-05-29 10:58:19

标签: visual-studio-code vscode-extensions

关闭编辑器后,我的扩展程序应显示一个消息框。 用户应在关闭编辑器之前进行确认。

我在VSCode API中只能找到的事件是onDidCloseTerminal  和onDidCloseTextDocument用于文本文档。

2 个答案:

答案 0 :(得分:0)

扩展程序可以导出deactivate方法及其activate方法,该方法将在VS Code关闭时被调用

export function activate(context: vscode.ExtensionContext) {
  ...
}

// Called when your extension is deactivated
export function deactivate() {
     ...
}

有关更多详细信息,请参见the extension activation docs

答案 1 :(得分:0)

issue 99694中所述(针对即将到来的2020年10月VSCode 1.51“搜索编辑器:支持重新打开关闭的编辑器”功能):

通过1eac96d,现在支持重新打开已关闭的编辑器(如果它们实现了编辑器输入工厂)。以前,我们只允许重新打开文件。

您可以在这些资源中看到isDisposed()方法,该方法已通过VSCode 1.49推广到commit 17c1929(2020年8月)中的所有通用编辑器。

因此请检查事件onDisposetested here for instance)是否适合您的情况。


请注意,VSCode 1.51(2020年11月)将添加一个新设置window.confirmBeforeClose,用于在关闭或离开工作台之前显示确认对话框。

可能的值为:

  • keyboardOnly (默认):仅当您使用键绑定关闭时才会显示确认(例如 Ctrl + W Cmd + W
  • always :即使您用鼠标手势关闭,也会始终显示确认信息
  • never :确认将永远不会显示

Close Confirmation