diff options
| author | Craig Jennings <c@cjennings.net> | 2026-05-14 23:40:28 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-05-14 23:40:28 -0500 |
| commit | b27c791cfb2959456fbb86ea30b841b5e7499346 (patch) | |
| tree | 874deb288aaecf1f7f66643a1b95bce77137b72c /tests/test-markdown-config.el | |
| parent | f560a05ef8f3a8cbc3d602a8d6712fe4719e6559 (diff) | |
| download | dotemacs-b27c791cfb2959456fbb86ea30b841b5e7499346.tar.gz dotemacs-b27c791cfb2959456fbb86ea30b841b5e7499346.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.el | 27 |
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 000000000..62d199a85 --- /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 |
