Показать все фрагменты yasnippet
Какой хороший способ отобразить все фрагменты, доступные для yasnippet, в текущем основном режиме?
5 ответов
Решение
Эта команда показывает фрагменты и ключи
m-x yas/describe-tables
yas/describe-tables
это псевдоним для yas-describe-tables
в yasnippet.el.
(yas/ описать-таблицы и необязательно ВЫБЕРИТЕ)
Эта функция устарела, так как yasnippet 0.8;
использование yas-describe-tables
вместо.
Показать фрагменты для каждой таблицы.
Вы ищете M-x yas/insert-snippet
? В нем будут перечислены все доступные фрагменты, и вы можете выбрать один из них для вставки.
(defvar lawlist-context-menu-map
(let ((map (make-sparse-keymap "Context Menu")))
(define-key map [help-for-help] (cons "Help" 'help-for-help))
(define-key map [seperator-two] '(menu-item "--"))
(define-key map [my-menu] (cons "LAWLIST" (make-sparse-keymap "My Menu")))
(define-key map [my-menu 01] (cons "Next Line" 'next-line))
(define-key map [my-menu 02] (cons "Previous Line" 'previous-line))
(define-key map [seperator-one] '(menu-item "--"))
map) "Keymap for the LAWLIST context menu.")
(defun lawlist-popup-context-menu (event &optional prefix)
"Popup a context menu."
(interactive "@e \nP")
(define-key lawlist-context-menu-map [lawlist-major-mode-menu]
`(menu-item ,(symbol-name major-mode)
,(mouse-menu-major-mode-map) :visible t))
(define-key lawlist-context-menu-map (vector major-mode)
`(menu-item ,(concat "YAS " (symbol-name major-mode))
,(gethash major-mode yas--menu-table)
:visible (yas--show-menu-p ',major-mode)))
(popup-menu lawlist-context-menu-map event prefix))
(global-set-key [mouse-3] 'lawlist-popup-context-menu)
Если вы используете режим компании для автозаполнения, вы также можете позвонитьcompany-yasnippet
чтобы показать все доступные сниппеты в интерфейсе компании.