aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-05-14 23:40:28 -0500
committerCraig Jennings <c@cjennings.net>2026-05-14 23:40:28 -0500
commitb5e72eacf791c7ea06648ca4199f263aa380ae5a (patch)
tree7888c4fad03d8bfb7a6609d44b87b3be465de1c4 /tests
parentfe8c4c7c00b7bdd5bc23b479f5605f2806c879a8 (diff)
downloaddotemacs-b5e72eacf791c7ea06648ca4199f263aa380ae5a.tar.gz
dotemacs-b5e72eacf791c7ea06648ca4199f263aa380ae5a.zip
feat(markdown-config): register markdown as an org src-block language
`#+begin_src markdown ... #+end_src' blocks rendered and exported fine but `org-lint' warned on every one of them ("Unknown source block language: 'markdown'"), and `C-c '' inside the block fell back to `fundamental-mode' instead of opening it in `markdown-mode' for editing. Add a `with-eval-after-load 'org' form that pushes `("markdown" . markdown)' onto `org-src-lang-modes'. New ERT test in `tests/test-markdown-config.el' asserts the entry resolves to `markdown' after `(require 'markdown-config)'. Surfaced while clearing `org-lint' on `todo.org' from 55 issues down to 1 -- the last one was this warning on a Linear ticket-body draft that was genuinely markdown. Registering the language is the right fix; relabeling the block as `text' or `example' would lose accuracy.
Diffstat (limited to 'tests')
-rw-r--r--tests/test-markdown-config.el27
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/test-markdown-config.el b/tests/test-markdown-config.el
new file mode 100644
index 00000000..62d199a8
--- /dev/null
+++ b/tests/test-markdown-config.el
@@ -0,0 +1,27 @@
+;;; test-markdown-config.el --- Tests for markdown-config -*- lexical-binding: t; -*-
+
+;;; Commentary:
+;; Covers the org-side wiring in markdown-config.el. The use-package
+;; block for markdown-mode itself is upstream config; the assertion
+;; here is on the local glue that points org at markdown-mode for
+;; `#+begin_src markdown' blocks.
+
+;;; Code:
+
+(require 'ert)
+
+(add-to-list 'load-path (expand-file-name "modules" user-emacs-directory))
+
+;; Require org BEFORE markdown-config so the `with-eval-after-load
+;; 'org' body fires synchronously instead of being deferred.
+(require 'org)
+(require 'markdown-config)
+
+(ert-deftest test-markdown-config-registers-markdown-org-src-lang ()
+ "Normal: `markdown' shows up in `org-src-lang-modes' mapped to
+`markdown' so org-lint stops warning on `#+begin_src markdown' and
+`C-c '' opens those blocks in `markdown-mode'."
+ (should (equal (cdr (assoc "markdown" org-src-lang-modes)) 'markdown)))
+
+(provide 'test-markdown-config)
+;;; test-markdown-config.el ends here