Как остановить Ясниппет поле в Emacs 24
Я использую elpy и yasnippet, чтобы emacs стал редактором python.
Затем я использую yasnipprt для создания объекта класса, но обнаружил, что не могу выйти из поля так быстро, как может возвышенный текст, в пределах двойного "возврата". Это означает, что мне нужно переместить курсор в начале строки, используемой табуляции или клавиатуры, один за другим в конце объекта класса, и ввести новый код, затем я могу выйти из поля класса, которое поддерживает yasnippet.
У кого-нибудь было такое же замешательство по поводу выходного поля?
Я нажимаю код init.el ниже, и что является ключом, выходящим из поля yasnippet?
(require 'package)
(add-to-list 'package-archives
'("melpa" . "http://melpa.milkbox.net/packages/") t)
;;;(add-to-list 'package-archives
;;; '("elpy" . "http://jorgenschaefer.github.io/packages/"))
(package-initialize)
(elpy-enable)
(add-to-list 'load-path
"~/.emacs.d/yasnippet")
(require 'yasnippet)
(yas-global-mode 1)
(c-add-style
"python-new"
'((indent-tabs-mode . 4)
(fill-column . 78)
(c-basic-offset . 4)
(c-offsets-alist . ((substatement-open . 0)
(inextern-lang . 0)
(arglist-intro . +)
(knr-argdecl-intro . +)))
(c-hanging-braces-alist . ((brace-list-open)
(brace-list-intro)
(brace-list-close)
(brace-entry-open)
(substatement-open after)
(block-close . c-snug-do-while)))
(c-block-comment-prefix . "* "))
)
;; This is a very crude hook that auto-selects the C style depending on
;; whether it finds a line starting with tab in the first 3000 characters
;; in the file
(defun c-select-style ()
(save-excursion
(if (re-search-forward "^\t" 3000 t)
(c-set-style "python")
(c-set-style "python-new"))))
(add-hook 'c-mode-hook 'c-select-style)
1 ответ
Решение
Я думаю, вы спрашиваете, как прыгать между полями в Ясниппет.
- Для перехода к следующему полю нажмите
TAB
(yas-next-field-or-maybe-expand
) - Чтобы перейти к предыдущему полю, нажмите
S-TAB
(yas-prev-field
) - Чтобы удалить поле и перейти к следующему полю, используйте
C-d
(yas-skip-and-clear-or-delete-next-char
)