Я хочу иметь как emmet-mode
, так и yasnippet
триггер с тем же ключом C-return : в html-mode
buffer, C-return должен сначала попробовать yas-expand
, а затем emmet-expand-line
, если подходящий фрагмент не найден.
Кажется, что я пропускаю что-то о ключевых словах привязки в use-package
. В настоящее время привязка только emmet-mode
активна в буфере HTML.
(use-package emmet-mode
:defer t
:init
(add-hook 'css-mode-hook 'emmet-mode)
(add-hook 'sgml-mode-hook 'emmet-mode)
:config
(setq-default
emmet-move-cursor-between-quotes t
emmet-preview-default nil)
(unbind-key "C-M-" emmet-mode-keymap)
(unbind-key "C-M-" emmet-mode-keymap))
(use-package yasnippet
:defer t
:bind (:map yas-minor-mode-map ("" . yas-expand))
:init
(add-hook 'js-mode-hook 'yas-minor-mode)
(add-hook 'sgml-mode-hook 'yas-minor-mode)
:config
(setq-default yas-snippet-dirs '("~/.emacs.d/snippets"))
(yas-reload-all)
(unbind-key "TAB" yas-minor-mode-map))
Я закончил использование Хиппи-расширения
, который встроен в Emacs (24+?).
(use-package муравей-режим
:defer t
:init
(add-hook 'css-mode-hook 'муравей-режим)
(add-hook 'sgml-mode-hook 'муравей-режим)
:config
(setq-default emmet-move-cursor-between-quote t)
(unbind-key "" муравей-режим-keymap)
(unbind-key "C-M-" муравей-режим-keymap)
(unbind-key "C-M-" муравей-режим-keymap))
(use-package hippie-exp
:ensure nil
:defer t
:bind ("" . Хиппи-расширения)
:config
(setq-default Хиппи-расширения-try-functions-list
'(yas-hippie-try-expand emmet-expand-line)))
(use-package yasnippet
:defer t
:init
(add-hook 'js-mode-hook 'yas-minor-mode)
(add-hook 'sgml-mode-hook 'yas-minor-mode)
:config
(setq-default yas-snippet-dirs '("~/.emacs.d/snippets"))
(yas-reload-all)
(unbind-key "TAB" yas-minor-mode-map)
(unbind-key "" yas-minor-mode-map))