mirror of
https://github.com/joaotavora/yasnippet.git
synced 2025-10-13 21:13:04 +00:00
navigation to previous group
This commit is contained in:
parent
4570f1bac2
commit
148bcf4799
22
yasnippet.el
22
yasnippet.el
@ -503,14 +503,22 @@ otherwise, nil returned."
|
||||
(interactive)
|
||||
(let ((overlay (yas/current-overlay-for-navigation)))
|
||||
(if overlay
|
||||
(let ((prev (yas/group-prev
|
||||
(overlay-get overlay 'yas/group))))
|
||||
(if prev
|
||||
(goto-char (overlay-start
|
||||
(yas/navigate-group (overlay-get overlay 'yas/group) nil)
|
||||
(let ((snippet (yas/snippet-of-current-keymap))
|
||||
(done nil))
|
||||
(if snippet
|
||||
(do* ((tabstops (yas/snippet-tabstops snippet) (cdr tabstops))
|
||||
(tabstop (car tabstops) (car tabstops)))
|
||||
((or (null tabstops)
|
||||
done)
|
||||
(unless done (message "Not in a snippet field.")))
|
||||
(when (= (point)
|
||||
(overlay-start
|
||||
(yas/field-overlay
|
||||
(yas/group-primary-field prev))))
|
||||
(yas/exit-snippet (overlay-get overlay 'yas/snippet))))
|
||||
(message "Not in a snippet field."))))
|
||||
(yas/group-primary-field tabstop))))
|
||||
(setq done t)
|
||||
(yas/navigate-group tabstop nil)))
|
||||
(message "Not in a snippet field."))))))
|
||||
|
||||
(defun yas/exit-snippet (snippet)
|
||||
"Goto exit-marker of SNIPPET and delete the snippet."
|
||||
|
Loading…
x
Reference in New Issue
Block a user