visual-studio-code - 在哪里可以找到 vscode 撤消堆栈文档

标签 visual-studio-code vscode-extensions

我正在尝试开发一个需要访问 vscode 撤消堆栈的 vscode 扩展,但我似乎找不到任何关于此的文档。

最佳答案

我没有看到扩展可以直接访问撤消堆栈的任何方式。撤消堆栈在 editStack.ts 中实现,但未在 API 中公开。

我也没有看到任何 open issues请求此类访问权限。不过我没有搜索已关闭的问题。

一些可能的选择

问题How to see local history changes in Visual Studio Code?讨论了几个扩展,它们通过 self 跟踪提供对旧版本的访问。

调用时 TextEditor.edit ,您可以选择在之前和之后创建撤消停止点。

通过executeCommand ,可以执行 undoredocursorUndo 等命令。

您可以使用 workspace.onDidChangeTextDocument监视文档的更改,以便收集您自己的文档历史记录。但是,您似乎无法判断给定的更改是否也创建了撤消停止,也无法判断更改是否由撤消或重做命令触发。

也就是说,Issue #1431: Support onDidExecuteCommand , 在 this answer 中讨论我的,应该允许监听 undoredo 的调用,但我根本没有玩过它。

关于visual-studio-code - 在哪里可以找到 vscode 撤消堆栈文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57900097/

相关文章:

regex - VSCode 代码段的多重转换

javascript - 如何使用 Visual Studio Code 创建要在本地主机上运行的基本内容?

visual-studio-code - 保存vscode扩展的用户首选项/设置

visual-studio-code - 如何使用扩展包更新 vscode 中的用户 settings.json?

visual-studio-code - 调试和运行扩展时隐藏 'Overwriting extension' 警告

VS 代码的 C++ : Unable to start debugging - Program path is missing or invalid

在我创建提交消息之前,Git 提交中止,我使用 "--wait"

regex - 如何查找和替换特定字符,但前提是它在引号中?

javascript - Vscode Language Client extension - 如何从服务器向客户端发送消息?

javascript - VS 代码扩展 API - 替换文档中的字符串?