如何有效地关闭由 `slime-describe-symbol` 打开的缓冲区?
How do I efficiently close the buffer opened by `slime-describe-symbol`?
问题:
- 我已经开始了一个 Common Lisp 会话,在其默认的垂直分割中有
*slime-repl sbcl*
。
- 我在一个符号上,比方说
cond
,然后按 slime-describe-symbol
键,在我的例子中是 ,hh
,因为我使用的是 spacemacs。
- 这会在 repl window.
之上打开一个缓冲区 *slime-description*
我现在处于必须的境地:
- 移动到右边的拆分
- 将缓冲区切换为粘液
*slime-repl sbcl*
- return到我原来的缓冲区
每次打开帮助文件时我都必须这样做,这与设计的工作流程相比似乎很奇怪。我希望这可以通过一次击键来实现。
管理此问题的预期方法是什么?
在普通 emacs 中,移动到另一个 window 的键盘快捷键是 'C-x o'(其他 window)。我假设在描述符号时实现自动光标移动的最简单方法是通过修改 slime-describe-symbol 将光标移动到 slime-description[=23 来定义您自己的自定义 elisp 函数=] window 并(重新)绑定键盘快捷键。
在我的机器上:
(defun my-slime-describe-symbol (symbol-name)
"Describe the symbol at point."
(interactive (list (slime-read-symbol-name "Describe symbol: ")))
(when (not symbol-name)
(error "No symbol given"))
(slime-eval-describe `(swank:describe-symbol ,symbol-name))
(switch-to-buffer-other-window "*slime-description*"))
然后根据自己的喜好定义键盘快捷方式:
(define-key slime-mode-map (kbd "C-c C-d d") 'my-slime-describe-symbol)
(define-key slime-mode-map (kbd "C-c C-d C-d") 'my-slime-describe-symbol)
问题:
- 我已经开始了一个 Common Lisp 会话,在其默认的垂直分割中有
*slime-repl sbcl*
。 - 我在一个符号上,比方说
cond
,然后按slime-describe-symbol
键,在我的例子中是,hh
,因为我使用的是 spacemacs。 - 这会在 repl window. 之上打开一个缓冲区
*slime-description*
我现在处于必须的境地:
- 移动到右边的拆分
- 将缓冲区切换为粘液
*slime-repl sbcl*
- return到我原来的缓冲区
每次打开帮助文件时我都必须这样做,这与设计的工作流程相比似乎很奇怪。我希望这可以通过一次击键来实现。
管理此问题的预期方法是什么?
在普通 emacs 中,移动到另一个 window 的键盘快捷键是 'C-x o'(其他 window)。我假设在描述符号时实现自动光标移动的最简单方法是通过修改 slime-describe-symbol 将光标移动到 slime-description[=23 来定义您自己的自定义 elisp 函数=] window 并(重新)绑定键盘快捷键。
在我的机器上:
(defun my-slime-describe-symbol (symbol-name)
"Describe the symbol at point."
(interactive (list (slime-read-symbol-name "Describe symbol: ")))
(when (not symbol-name)
(error "No symbol given"))
(slime-eval-describe `(swank:describe-symbol ,symbol-name))
(switch-to-buffer-other-window "*slime-description*"))
然后根据自己的喜好定义键盘快捷方式:
(define-key slime-mode-map (kbd "C-c C-d d") 'my-slime-describe-symbol)
(define-key slime-mode-map (kbd "C-c C-d C-d") 'my-slime-describe-symbol)