是否有允许将当前行评估为 bash 命令的编辑器?

Is there an editor that allows to evaluate the current line as a bash command?

我想逐行评估 bash 脚本。我也可能想跳回并再次执行上一行。

How execute bash script line by line? 中所述,可以使用内置调试选项 -x,但这不是很方便,因为您无法了解以前和将来的命令。

为了用 R 编写软件,我使用了 RStudio。编辑器允许通过点击 Ctrl+Enter 将当前行评估为 R-Command。之后结果显示在内置 shell 中,光标跳转到下一个命令。

是否有一个简单的文本编辑器(如 gedit)允许将当前行发送到内置 shell/console(bash、zsh、...)并查看结果shell?

之后的评价

它不是内置于 Emacs 中,但很容易做到。

(defun shell-eval-line (pos)
  "Evaluate the line around position as a shell command.
In interactive mode, use the cursor's position."
  (interactive "d")
  (save-excursion
    (goto-char pos)
    (shell-command (buffer-substring
            (line-beginning-position) (line-end-position))) ))

绑定到您喜欢的密钥(C-c ! 也许吧?)然后开始。

(save-excursion) 外添加一个 (next-line) 使其在完成后前进到下一行,或者围绕它创建一个简单的宏来调用函数并跳转到下一行。

您也可以使用编辑器geany. In their Wiki they have a detailed instruction。简而言之:

  • 安装 geany
  • 打开文件 ~/.config/geany/geany.conf 并设置 send_selection_unsafe=true
  • 重启geany
  • 设置一个键绑定Edit > Preferences > Keybindings(在Format / Send selection to terminal下)

实际上,您不必 select 要发送的代码。到目前为止我找不到如何指示geany之后跳到下一行。