|
From: | Stefan Monnier |
Subject: | Re: master 79d9f3982f: Add derived-mode test for bug#24176 |
Date: | Mon, 24 Jan 2022 09:53:49 -0500 |
User-agent: | Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) |
> +(ert-deftest test-add-font-lock () > + (define-derived-mode mode-a fundamental-mode "mode-a" > + (font-lock-add-keywords nil `(("a" 0 'font-lock-keyword-face)))) > + (define-derived-mode mode-b mode-a "mode-b" > + (font-lock-add-keywords nil `(("b" 0 'font-lock-builtin-face)))) > + (define-derived-mode mode-c mode-b "mode-c" > + (font-lock-add-keywords nil `(("c" 0 'font-lock-constant-face)))) > + > + (with-temp-buffer > + (mode-c) > + (should (equal font-lock-keywords > + '(t (("c" 0 'font-lock-constant-face) > + ("b" 0 'font-lock-builtin-face) > + ("a" 0 'font-lock-keyword-face)) > + ("c" (0 'font-lock-constant-face)) > + ("b" (0 'font-lock-builtin-face)) > + ("a" (0 'font-lock-keyword-face))))))) An interesting other case is: (defvar mode-a-flk '(("a" 0 'font-lock-keyword-face))) (define-derived-mode mode-a fundamental-mode "mode-a" (setq-local font-lock-defaults '(mode-a-flk))) (define-derived-mode mode-b mode-a "mode-b" (font-lock-add-keywords nil `(("b" 0 'font-lock-builtin-face)))) (defvar mode-c-flk '(("c" 0 'font-lock-keyword-face))) (define-derived-mode mode-c mode-b "mode-c" (setq-local font-lock-defaults '(mode-c-flk))) -- Stefan
[Prev in Thread] | Current Thread | [Next in Thread] |