Emacs 讲统计:自动关闭大括号

Emacs Speaks Statistics: auto-close curly brackets

我正在使用 Emacs 的非常好的修改版本,由 Vincent Goulet 开发,包含 ess,从 here 下载。

在我的 .emacs 文件中,我这样设置 skeleton-pair 选项

(setq skeleton-pair t)
(global-set-key (kbd "(") 'skeleton-pair-insert-maybe)
(global-set-key (kbd "[") 'skeleton-pair-insert-maybe)
(global-set-key (kbd "{") 'skeleton-pair-insert-maybe)
(global-set-key (kbd "\"") 'skeleton-pair-insert-maybe)
(global-set-key (kbd "\'") 'skeleton-pair-insert-maybe)
(global-set-key (kbd "\`") 'skeleton-pair-insert-maybe)

这适用于除 R 脚本之外的所有类型的文件,其中大括号 {} 的自动关闭不起作用(其余的工作正常)。

过去,当我下载 ess 目录时,将其解压缩并在我的 .emacs 中定义路径 我曾经通过注释以下行来解决这个问题:

(define-key map "{"          'ess-electric-brace)

ess-mode.el 文件中 lisp/。现在我正在使用修改后的分布,我对 /Applications/Emacs.app/Contents/Resources/site-lisp/ess/ess-mode.el 文件做了同样的事情,但它不起作用。

因此,任何人都知道如何使用带有 ess 的修改后的 Emacs 分布自动关闭 R 脚本中的大括号?。

谢谢

尝试将其放入您的 .emacs:

(define-key ess-mode-map (kbd "(") 'skeleton-pair-insert-maybe)
(define-key ess-mode-map (kbd "[") 'skeleton-pair-insert-maybe)
(define-key ess-mode-map (kbd "{") 'skeleton-pair-insert-maybe)
(define-key ess-mode-map (kbd "\"") 'skeleton-pair-insert-maybe)
(define-key ess-mode-map (kbd "\'") 'skeleton-pair-insert-maybe)
(define-key ess-mode-map (kbd "\`") 'skeleton-pair-insert-maybe)

如果出现一些错误,您可能需要在上述语句之前(require 'ess-mode)