aboutsummaryrefslogtreecommitdiff
path: root/tests/test-markdown-config.el
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
commit05de4899cd848bfe1d80b025c8735cea9e58c642 (patch)
treec3acc6401c750d45f434191b526353c1e65acb49 /tests/test-markdown-config.el
parenta5519bc151700d1a76eba9baebe541c06958e9ce (diff)
downloaddotemacs-05de4899cd848bfe1d80b025c8735cea9e58c642.tar.gz
dotemacs-05de4899cd848bfe1d80b025c8735cea9e58c642.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/test-markdown-config.el')
-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