如何解决将 shell 命令添加到 vscode 命令面板中
我的设备上安装了 pandoc。我想添加 pandoc 导出命令,以便我可以通过在 vscode 命令面板中一键编译该命令来创建 PDF 文件(无需一遍又一遍地键入那个长命令)。除了创建自己的扩展程序之外,还有其他简单的方法吗?
解决方法
创建一个 custom task in VS Code 来执行您的 pandoc 命令。 然后使用命令面板 (Tasks: Run Task) 执行它或 create a keyboard binding 执行任务。
转换当前在编辑器中打开的文件的任务如下所示:
{
"label": "Pandoc: Convert current file","type": "shell","command": "pandoc '${file}' ...","problemMatcher": []
}
根据需要调整 "pandoc '${file}' ..."
命令。
您也可以引用其他variables predefined by VS Code。
,在命令面板中,搜索 structure(list(Group = c(1L,1L,2L,2L),Indicator = c(1L,0L,0L),IndicatorPercent = c(NA,1,0.5,0.67,0.75,NA,0.25)),class = "data.frame",row.names = c(NA,-10L))
- 有一些类似的,所以特地选择了这个。然后,在它将打开的文件 - Preferences: Open Keyboard Shortcuts (JSON)
- 中,添加以下键绑定。将有一个外部 keybindings.json
将所有键绑定包围在一起。
然后,使用您选择的任何键绑定,这里 alt+b 并且焦点在终端中,它应该打印出该命令。您需要按 Return/Enter 来实际运行命令。
[]
使用您的 {
"key": "alt+b",// whatever keybinding you wish
"command": "workbench.action.terminal.sendSequence","args": {
"text": "pandoc '${file}' --pdf-engine=xelatex -o example13.pdf"
},"when": "terminalFocus && !terminalTextSelected"
}
命令。 pandoc
是当前文件。
如果您想触发它,无论终端是否具有焦点,您都不需要 ${file}
子句 - 因此,如果您使用唯一的 "whwn"
,您可以将其注释掉。此外,如果您希望它在打印到终端后无需点击 "key"
即可运行,只需在末尾添加一个 Enter
(这是一个 Return),例如这个:
\u000D
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。