在编辑 shell script 或者 markdown 的时候非常想要这样一个功能:
这个灵感来源于 database IDE DataGrip,如图所示,并且支持多个连接、自动选择语句范围、写入到文件等功能。

这是一些我的探索过程以及非完美的解决方案,如果有更好的解决方案可以评论交流。
需要预先启动一个 repl session,只能写入在 repl 中而且暂时不支持我的 zsh 的 ansi 格式。
可以直接在 markdown 中执行一行命令,非常贴近我的需求,但是没有找到文档和设置的地方。
支持整体执行,以及某些语句的单独执行。可以执行到 jetbrain 自己的 terminal 中。

按下快捷键就可以在一个系统 terminal 里面执行任务,可以执行 shell 或者在 markdown 中执行 shell script,将 line/selection 发到终端中。
基本满足我的需求,如果是集成 shell 就好了,还有一个缺点是工作目录需要重新设置。
如果能和 terminus 结合起来那么将绝杀。
update: https://github.com/randy3k/SendCode
又研究了一下,可以结合起来!甚至两个插件是同一个作者做的。这是我的配置:
[
{ "keys": ["alt+`"], "command": "toggle_terminus_panel" },
{ "keys": ["super+t"], "command": "new_file" },
{
"settings": {
"SendCode": {
"prog": "terminus",
"auto_advance" : false,
"r" : {
"bracketed_paste_mode": true
}
}
}
}
]
唯一的问题是,如果之前没有 terminus session,似乎 sendcode 并不能新建一个。
和 sendcode 类似。
有人在 issue 中问为什么不使用 jetbrain 集成的 terminal,回答是没有开放对应的 api。
还在 track,遥遥无期。
https://youtrack.jetbrains.com/issue/IDEA-131964/Execute-Selection-in-Embedded-Terminal