如何在可视代码中配置uncrustify?

时间:2017-01-08 03:13:17

标签: configuration uncrustify

我已经在我的linux机器上安装了uncrustify并安装了Visual Code中的扩展程序。我已按如下方式配置了settings.json:

"uncrustify.executablePath": "/usr/bin/uncrustify",
"uncrustify.configPath": "/media/rinaldi/Excess/Dropbox/Projects/uncrusify-cpp.cfg"

并在keybiddings.json中添加了一行:

{ "key": "ctrl+f6",               "command": "uncrustify"}

当我点击" ctrl + f6"它说,即使通过终端访问/usr/bin/uncrustify,我也找不到unrustiftif命令。我得到了非完整的二进制文件。

2 个答案:

答案 0 :(得分:1)

我将在这里解释几个不同的概念。

格式化器:

VS Code具有“格式化程序”扩展的概念,可以格式化您的代码。 VS Code提供了几种触发此格式化的方法,您可以使用某些设置,例如"editor.formatOnSave": true""editor.formatOnType": true,或直接使用editor.action.formatDocument命令,它会询问安装的任何格式扩展名该文件格式化。

命令:

在上面的键绑定中,“command”部分不引用shell命令/ .exe命令,它引用vscode命令。这些可以在editor.action.formatDocument命令之类的命令中构建,也可以是扩展所贡献的命令。如果您想查看扩展程序所贡献的命令,可以查看package.json。 Uncrustify贡献命令here。如您所见,它们都与配置有关,并且没有一个命令被称为“uncrustify”。这就是为什么VS Code说它无法找到uncrustify命令,它根本就不存在。

那么你如何让它发挥作用呢?

ctrl + f6 的命令更改为editor.action.formatDocument。如果您这样做,如上所述,VS Code将要求您的Uncrustify扩展程序为您格式化文档。

答案 1 :(得分:0)

文件→首选项→键盘快捷键→格式化文档(editor.action.formatDocument)。 用 Ctrl + F6 覆盖它。