Emacs “如何使描述功能”;C-h f“;默认情况下不区分大小写
在搜索一个我记得部分名称的函数时,我使用C-h f调用Emacs “如何使描述功能”;C-h f“;默认情况下不区分大小写,emacs,case-insensitive,Emacs,Case Insensitive,在搜索一个我记得部分名称的函数时,我使用C-h f调用描述函数,输入*函数名称的一部分,然后点击TAB。但是我现在意识到这个搜索不是不区分大小写的 例如: C-h finfoTAB 列出所有以info开头的函数,但不包括那些以info开头的函数,而 C-h fInfoTAB 列出所有以Info开头的函数,但不包括那些以Info开头的函数 另一个例子: C-h f*nfc选项卡 给我*nfc[不匹配],而 C-h f*NFC选项卡 给我ucs标准化HFS NFC区域 如何使用我的init.el文件
描述函数
,输入*函数名称的一部分
,然后点击TAB。但是我现在意识到这个搜索不是不区分大小写的
例如:
C-h finfo
TAB
列出所有以info
开头的函数,但不包括那些以info
开头的函数,而
C-h fInfo
TAB
列出所有以Info
开头的函数,但不包括那些以Info
开头的函数
另一个例子:
C-h f*nfc
选项卡
给我*nfc[不匹配]
,而
C-h f*NFC
选项卡
给我ucs标准化HFS NFC区域
如何使用我的
init.el
文件中的一些配置,使description函数默认不区分大小写?(setq completion ignore case t)
应该做你想做的事,这里有一个自定义函数,我用它来代替描述函数
。
它使用ido完成
(defvar函数缓存为零)
;;;###自动加载
(取消刷新函数缓存()
(互动)
(setq函数缓存为零)
(地图原子(λ)(符号)
(何时(fboundp符号)
(推送(符号名称符号)函数缓存)
(setq functions cache(sort functions cache#'string在命令的交互式规范中向t
添加一个completion ignore case
的绑定。其优点是(a)它只影响描述函数(C-h f
)和(b)您可以轻松地将其打开/关闭(与任何Emacs建议一样)
(定义描述功能(忽略案例激活前)
“使其不区分大小写。”
(互动
(let)((完成忽略情况t);
(defadvice describe-function (before ignore-case activate)
"Make it case-insensitive."
(interactive
(let ((completion-ignore-case t) ; <============= ADDED BINDING
(fn (function-called-at-point))
(enable-recursive-minibuffers t)
val)
(setq val (completing-read
(if fn
(format "Describe function (default %s): " fn)
"Describe function: ")
obarray 'fboundp t nil nil (and fn (symbol-name fn))))
(list (if (equal val "") fn (intern val))))))