commit f8e9ed37f603b08236ae551fc69690cbdc3add6b parent 682f19fda6821f3a4a4f3e344bd2b45871f675f2 Author: Iqbal Ansari <iqbalansari02@yahoo.com> Date: Sun, 19 May 2019 18:18:14 +0530 Add compatibility wrapper for `provided-mode-derived-p` Diffstat:
M | emojify.el | | | 14 | ++++++++++++-- |
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/emojify.el b/emojify.el @@ -139,6 +139,16 @@ backported here for compatibility with older Emacsen." (apply #'string-join (list strings separator)) (mapconcat 'identity strings separator))) +(defun emojify-provided-mode-derived-p (mode &rest modes) + "Non-nil if MODE is derived from one of MODES. +Uses the `derived-mode-parent' property of the symbol to trace backwards. +If you just want to check `major-mode', use `derived-mode-p'." + (if (fboundp 'provided-mode-derived-p) + (apply #'provided-mode-derived-p mode modes) + (while (and (not (memq mode modes)) + (setq mode (get mode 'derived-mode-parent)))) + mode)) + ;; Debugging helpers @@ -1114,8 +1124,8 @@ should not be a problem 🤞." (or (emojify-org-src-lang-at-point match-beginning) 'org-mode) major-mode))) ;; Display unconditionally in non-prog mode - (or (not (provided-mode-derived-p major-mode-at-point - 'prog-mode 'tuareg--prog-mode 'comint-mode 'smalltalk-mode)) + (or (not (emojify-provided-mode-derived-p major-mode-at-point + 'prog-mode 'tuareg--prog-mode 'comint-mode 'smalltalk-mode)) ;; In prog mode enable respecting `emojify-program-contexts' (emojify-valid-program-context-p emoji match-beginning