在Emacs中键入“(”时,将M-(默认行为)设为

在Emacs中键入“(”时,将M-(默认行为)设为,emacs,Emacs,当我键入“(”字符,无论它是否是M键组合的一部分,如何在光标后设置M-(键入开头“(”字符?我希望Emacs自动插入结尾“)”。此外,我想将此行为扩展到引号、子引号、方括号和大括号。键入M-(这是一种痛苦,对于其他字符,似乎没有任何可比较的形式。我自己也没有写太多elisp,但这是我从某人那里抄袭的东西。代码进入了你的.emacs (setq skeleton-pair t) (setq skeleton-pair-on-word t) ; apply skeleton trick even i

当我键入“(”字符,无论它是否是M键组合的一部分,如何在光标后设置M-(键入开头“(”字符?我希望Emacs自动插入结尾“)”。此外,我想将此行为扩展到引号、子引号、方括号和大括号。键入M-(这是一种痛苦,对于其他字符,似乎没有任何可比较的形式。

我自己也没有写太多elisp,但这是我从某人那里抄袭的东西。代码进入了你的.emacs

(setq skeleton-pair t)
(setq skeleton-pair-on-word t) ; apply skeleton trick even in front of a word.                                               
(global-set-key "[" 'skeleton-pair-insert-maybe)
(global-set-key "{" 'skeleton-pair-insert-maybe)
(global-set-key "(" 'skeleton-pair-insert-maybe)
(global-set-key "\"" 'skeleton-pair-insert-maybe)

“(”绑定到
自插入命令,而M-”(”是
插入括号
。只需使用
全局设置键
定义键
进行绑定,即可将其反转”(”要
插入括号

请检查它,它可以使括号/大括号/引号按您的意愿保持平衡,并且还提供许多其他功能来帮助s-exp操作。如果您要编写Lisp代码(顾名思义)您可能最终会想使用此库。

谢谢-我不知道word上的骨架对。