2013-07-09 5 views

ответ

1

Этот фрагмент кода отключает аббревиатуру при входе в минибуфер, а затем снова включает его, когда вы его оставляете.

(defun conditionally-disable-abbrev() 
    "" 
    (if (string-match "smex-" (format "%s" this-command)) 
     (abbrev-mode -1))) 

(add-hook 'minibuffer-setup-hook 'conditionally-disable-abbrev) 
(add-hook 'minibuffer-exit-hook (lambda() (abbrev-mode 1))) 

Добавлено исправление juanleon.

+0

Спасибо! Но я получаю сообщение об ошибке: http://pastebin.com/NkKGqgRs – incandescentman

+1

Мммм, лямбда мешает. Вы можете исправить это, изменив строку 'if' в этой функции на' (if (string-match «smex-» (формат «% s» this-command)). – juanleon

+0

Отлично! И как отключить abbrev- режим для ido-режима? Когда я пытаюсь сохранить файл, например, он все еще расширяет мои аббревиатуры в именах файлов. – incandescentman

 Смежные вопросы

  • Нет связанных вопросов^_^