例如,对于源代码文件,我希望 gedit 在保存时对其进行 lint。
“运行 lint”部分是通过外部工具插件完成的。现在我可以让它在每次保存源代码文件时自动运行吗?
您可以通过运行 lint 的外部工具保存文件。有一个带有以下选项的Save字段: Nothing、Current document和All documents。保存在工具运行之前完成。
这是一个屏幕截图:
我一直在玩这方面的变体——我想要一个键盘快捷键来运行一个工具,该工具将根据文件类型整理 Python、CSS 或 HTML。但是,如果您映射ctrls到一个外部工具,如果文件类型匹配则运行 lint,如果不匹配则不运行,并且无论如何都会在最后保存。像这样的东西:
if [ $GEDIT_CURRENT_DOCUMENT_TYPE = "text/x-python" ]; then
# Run lint
elif [ $GEDIT_CURRENT_DOCUMENT_TYPE = "text/html" ]; then
# Run tidy
elif [ $GEDIT_CURRENT_DOCUMENT_TYPE = "text/css" ]; then
# run csstidy
else
cat -
echo "Type is:" $GEDIT_CURRENT_DOCUMENT_TYPE > /dev/stderr
echo "so I'm not doing a thing." > /dev/stderr
fi
注意。如果您的外部工具设置为在运行时替换您的文档,您需要添加cat -
以将原始工具读回 gedit,这样您就不会只是破坏它。如果您的输出全部进入 Shell 输出窗格,则不需要它。