Как связать 'search' и 'search-repeat' с Cf в Emacs? - PullRequest
19 голосов
/ 14 сентября 2011

Как мне переназначить инкрементальный поиск ( Cs ) в Cf в Emacs?

Я пытаюсь сделать (global-set-key (kbd "C-f") 'isearch-forward), но второй Cf не повторяет поиск, и мне нужно использовать Cs .

Затем я попытался (global-set-key (kbd "C-f") 'isearch-repeat-forward), но первый Cf не начал поиск.

И я даже попытался (global-set-key (kbd "C-f C-f") 'isearch-repeat-forward), но это вызывает ошибку.

Я хочу использовать Cf для команд поиска и поиска-повтора, как я могу это сделать??

Спасибо.

Ответы [ 2 ]

17 голосов
/ 14 сентября 2011

(define-key isearch-mode-map "\C-f" 'isearch-repeat-forward)

6 голосов
/ 14 сентября 2011

isearch-repeat-forward определяется в isearch-mode-map

Чтобы решить вашу проблему, сделайте следующее:

(global-set-key (kbd "C-f") 'isearch-forward)

(add-hook 'isearch-mode-hook
 (lambda ()
 (define-key isearch-mode-map (kbd "C-f") 'isearch-repeat-forward)
 )
)

РЕДАКТИРОВАТЬ: на самом деле, вам не нужно добавлять крючок. Принятый ответ Росс Паттерсон верен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...