Scala和VS Code集成终端

3
我正在使用带有集成终端的Scala REPL。我在终端上打开Scala REPL,然后使用快捷键发送小段代码片段。
当代码片段需要按字面意义运行时,这种方式可以正常工作。但是有时候当定义是相互递归的时,Scala需要我用命令“scala> :paste”开始代码,然后以ctrl+d结束。
我是否有办法自动将所选文本包装在“:paste”+所选文本+“^d”中?
谢谢, Christian
1个回答

1

${selectedText}变量保存当前选定的文本,而sendSequence支持变量替换,在Open Keyboard Shortcuts (JSON)中尝试添加:

[
    {
      "key": "cmd+shift+T",
      "command": "workbench.action.terminal.sendSequence",
      "args": {
        "text": ":paste\u000D${selectedText}\u000D\u0004"
    }
]

其中\u0004代表Control+D\u000D代表Enter。现在尝试:

  1. 从sbt中启动console
  2. 选择你想要粘贴到console中的源代码
  3. 按下cmd+shift+T

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接