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