Don't use prog-mode in older Emacs

* yasnippet.el (snippet-mode): Derive from prog-mode only if it's
fbound.
* yasnippet-tests.el (extra-modes-parenthood)
(loading-with-cyclic-parenthood): Fix comment typo.
This commit is contained in:
Noam Postavsky 2018-01-08 08:31:57 -05:00
parent d806b04fc0
commit ad3a4d192d
2 changed files with 21 additions and 10 deletions

View File

@ -1090,7 +1090,7 @@ hello ${1:$(when (stringp yas-text) (funcall func yas-text))} foo${1:$$(concat \
yet-another-c-mode
and-also-this-one
and-that-one
;; prog-mode doesn't exist in emacs 24.3
;; prog-mode doesn't exist in emacs 23.4
,@(if (fboundp 'prog-mode)
'(prog-mode))
emacs-lisp-mode
@ -1117,7 +1117,7 @@ hello ${1:$(when (stringp yas-text) (funcall func yas-text))} foo${1:$$(concat \
c-mode
,major-mode))
(expected-rest `(cc-mode
;; prog-mode doesn't exist in emacs 24.3
;; prog-mode doesn't exist in emacs 23.4
,@(if (fboundp 'prog-mode)
'(prog-mode))
emacs-lisp-mode

View File

@ -951,14 +951,25 @@ Honour `yas-dont-activate-functions', which see."
"The keymap used when `snippet-mode' is active.")
;;;###autoload
(define-derived-mode snippet-mode prog-mode "Snippet"
;;;###autoload(autoload 'snippet-mode "yasnippet" "A mode for editing yasnippets" t nil)
(eval-and-compile
(if (fboundp 'prog-mode)
;; `prog-mode' is new in 24.1.
(define-derived-mode snippet-mode prog-mode "Snippet"
"A mode for editing yasnippets"
(setq font-lock-defaults '(yas--font-lock-keywords))
(set (make-local-variable 'require-final-newline) nil)
(set (make-local-variable 'comment-start) "#")
(set (make-local-variable 'comment-start-skip) "#+[\t ]*")
(add-hook 'after-save-hook #'yas-maybe-load-snippet-buffer nil t))
(define-derived-mode snippet-mode fundamental-mode "Snippet"
"A mode for editing yasnippets"
(setq font-lock-defaults '(yas--font-lock-keywords))
(set (make-local-variable 'require-final-newline) nil)
(set (make-local-variable 'comment-start) "#")
(set (make-local-variable 'comment-start-skip) "#+[\t ]*")
(add-hook 'after-save-hook #'yas-maybe-load-snippet-buffer nil t))))
(defun yas-snippet-mode-buffer-p ()
"Return non-nil if current buffer should be in `snippet-mode'.