Привязать emacs "Cd", чтобы удалить слово

Я пробовал несколько разных способов сделать это, и ни один из них не был успешным. Я хочу переключить функциональность Md и Cd (удалить слово, удалить символ) соответственно при работе в файлах C++.

Может кто-нибудь помочь мне?

2 ответа

Решение
(add-hook 'c-initialization-hook
          (lambda ()
            (define-key c++-mode-map "\C-d" 'kill-word)
            (define-key c++-mode-map "\M-d" 'c-electric-delete-forward)))

Из CC Hooks - CC Mode Manulal:

Переменная: c-initialization-hook

Крюк запускается только один раз за сеанс Emacs, когда инициализируется режим CC. Это хорошее место для изменения привязок клавиш (или добавления новых) в любой из карт клавиш режима CC. Смотрите пример файла.emacs.

(eval-after-load "cc-mode"
  '(progn
     (define-key c++-mode-map (kbd "C-d") 'kill-word)
     (define-key c++-mode-map (kbd "M-d") 'delete-char)))
Другие вопросы по тегам