在其他窗口中运行Emacs命令

Bre*_*wey 5 emacs

我正在寻找一种方法将任意Emacs命令的输出(在我的情况下是sql-send-region)发送到另一个窗口.我宁愿在目前的窗口中保持焦点,这将有效地给我一个窗口来编辑查询和一个窗口来查看输出.

Bre*_*wey 3

我能够编写一些 Emacs Lisp 来解决我的问题:

(defun sql-send-region-and-return (start end)
  (interactive "r")
  (let ((oldbuf (buffer-name)))
    (sql-send-region start end)
    (switch-to-buffer oldbuf)))
Run Code Online (Sandbox Code Playgroud)

这会将区域的结果发送到 SQL 缓冲区并返回到当前缓冲区,从而有效地实现既定目标。

感谢 justinhj 给我一些新的线索来解决我的问题。