我想知道是否可以根据 textmate 中的某些文件名在保存时运行自定义脚本。例如,我想在保存时自动编译 C 程序。
答案1
实际上,使用包中的自定义命令来执行此操作相当容易。
以下是如何创建简单命令:
- 打开捆绑编辑器,找到您想要添加的捆绑包。
- 使用编辑器左下角的按钮创建一个“新命令”。为其命名,并将其范围设置为
source.c
。 - 将操作下拉菜单设置为“键等效”,并设置快捷方式
Cmd + S
。 - 将“保存”下拉菜单更改为“当前文件”。
- 输入命令,并适当设置输入和输出下拉菜单。如果我没记错的话,输入将通过管道传输到 STDIN。
- 重新加载 TextMate 的捆绑包。
就是这样。您现在应该有一个保存文件并运行命令的命令。
您可能可以通过类似方式使用宏来使用 TextMate 命令执行某些操作。
答案2
据我所知,对于所有保存情况(即使用 Command-S、选择文件->保存等),没有办法像您描述的那样执行此操作。
您可能能够创建一个自定义捆绑项来保存文档并执行脚本,并为其分配 Command-S,以便它在您使用该键盘快捷键时运行。
答案3
您可以通过语义类在保存后触发命令callback.document.did-save
。这适用于 TextMate2+