嗨,我想知道是否可以从集成终端调用VSCode命令。因此,终端基本上是知道VSCode的,它们可以通信(至少从终端=> VSCode)
我的用例:我想让H
和L
移动到终端的左侧/右侧的编辑器选项卡中(我在编辑器选项卡中使用终端)。此外,当我在我的zsh中处于vim正常模式时,我希望发生这种情况。
因此,当我处于正常模式并按下H
时,我希望终端向VSCode发送一个editor.tabNext
(或其他任何命令)。
发布于 2021-07-20 20:00:55
我想我至少找到了一个变通的办法。有一个名为Remote Control
(https://marketplace.visualstudio.com/items?itemName=eliostruyf.vscode-remote-control&ssr=false#review-details)的扩展,我可以使用它向VSCode发送任意命令,所以这似乎是可行的。可能在本地这是不可能的,但也许有人知道一些事情。
EDIT1
下面是我的设置:
if [ ! -z $VSCODE ]; then
_sendcmd() { echo "{ \"command\": \"workbench.action.$1\" }" | websocat ws://localhost:4242 }
# define commands and register them in zsh
editor_left() { _sendcmd previousEditor }; zle -N editor_left;
editor_right() { _sendcmd nextEditor }; zle -N editor_right;
bindkey -a H editor_left
bindkey -a L editor_right
fi
其中$VSCODE
是在VSCode中通过terminal.integrated.env = { "VSCODE": "1" }
定义的。希望这能让你和我一样开心。
https://stackoverflow.com/questions/68460556
复制相似问题