我正在试验叠加层,我试图找出点上的叠加层是否包含以show-paren-match
命名的面孔。
例如,我在*scratch*
缓冲区中获得了以下代码,其中|
是当前光标位置:
(defun foo1 ()
(message (format "%S" (overlays-at (point)))))
(defun foo2 ()
(interactive)
(foo1))
|(global-set-key (kbd "C-c t") 'foo2)
当我输入C-c t
时,我得到正确数量的叠加层,知道我在emacs-24.4中使用smartparens-20150106.757以突出显示匹配的大括号:
(#<overlay from 192 to 228 in *scratch*> #<overlay from 192 to 193 in *scratch*>)
但是,使用以下表达式M-:
或(call-interactively 'foo2)
进行评估((foo2)
)会返回nil
。在此处未示出的其他示例中,它返回减少数量的叠加。使用C-u C-x =
显示所有想要的叠加层。
当通过带有前缀参数的M-x
调用命令时,它既不显示所需的叠加层。
为什么在通过M-x
或使用M-:
的迷你缓冲区进行交互式呼叫时,无法获得正确数量的叠加层?我错过了什么?