hua*_*uan 23
尝试密钥序列C-M-u C-M-SPC(即,在保持Control和Meta键,按下u与Space在序列),其执行这些命令backward-up-sexp和mark-sexp.
我犯了一个错误:backward-up-sexp在标准的Emacs中不存在.我写的正是因为lkahtz的评论中提到的问题,backward-up-list当点在双引号之间时,现有的函数不起作用.
(defun backward-up-sexp (arg)
(interactive "p")
(let ((ppss (syntax-ppss)))
(cond ((elt ppss 3)
(goto-char (elt ppss 8))
(backward-up-sexp (1- arg)))
((backward-up-list arg)))))
(global-set-key [remap backward-up-list] 'backward-up-sexp)