在 AUCTeX 中重新绑定键,该键需要其他参数

在 AUCTeX 中重新绑定键,该键需要其他参数

在 AucTeX 中有两个有用的命令: C-c C-e用于插入环境和C-u C-c C-e将当前点的环境更改为另一个环境。对我来说,后一个命令非常不方便,所以我想将其重新绑定到更简单的命令,比如说,C-c e我曾尝试以标准方式执行此操作:

    (defun my-tex-mode-hook ()
    (local-set-key ((kbd "C-c e") (kbd "C-u C-c C-e")))
    (add-hook 'TeX-mode-hook 'my-tex-mode-hook)

但该命令C-c e不要求输入参数,即我要选择哪个环境。相反,它总是更改为默认itemize环境。此外,它在每个 emacs 会话中只能运行一次。

可能我的问题更适合 Emacs 社区,那么抱歉。

答案1

将以下代码添加到您的初始化文件中:

(with-eval-after-load "latex"
  (define-key LaTeX-mode-map (kbd "C-c e")
    (lambda ()
      (interactive)
      (LaTeX-environment 1))))

我假设你有 Emacs 24.4 或更新版本,否则此代码将需要稍微更改(with-eval-after-load在该版本中引入)。

相关内容