请敎:怎样将搜索状态下的C-h映射到删除键(默认是打开帮助)?

我目前使用以下配置将C-h绑定到backspace,普通输入模式下使用感觉良好:

(global-set-key "\C-h" 'delete-backward-char) ;

但在按C-s输入搜索文本时,按C-h键还是会跳转到帮助。

请问有办法将搜索状态下的C-h也改到删除键吗?

(define-key isearch-mode-map (kbd "C-h") 'isearch-delete-char)
3 个赞

也可以用

(define-key input-decode-map (kbd "C-h") (kbd "DEL"))

C-h全局映射为backspace

2 个赞

谢谢,这个思路也不错。

另外,我想把 isearch-mode 的帮助绑到别的键,怎么配置呢?

因为 isearch-mode 里原来的C-h是个prefix,好像没有直接名称?

可以绑定isearch-help-map

(define-key isearch-mode-map (kbd "M-h") isearch-help-map)

注意这里不加引号,因为绑定的不是命令,而是另一个keymap。prefix key实际上就是这么实现的。

1 个赞

完美解决!学习了