From c9fb929a035238e0b4c702bf0e68729c433aedc9 Mon Sep 17 00:00:00 2001 From: "martin f. krafft" Date: Mon, 28 Apr 2025 14:19:34 +0200 Subject: [PATCH] inject markdown into mail body --- .config/lazyvim/after/ftplugin/mail.lua | 15 +++++++++++++++ .config/lazyvim/after/queries/mail/injections.scm | 2 ++ .../lazyvim/lua/plugins/markdown-in-mailbody.lua | 8 ++++++++ .gitignore.d/lazyvim | 2 ++ 4 files changed, 27 insertions(+) create mode 100644 .config/lazyvim/after/queries/mail/injections.scm create mode 100644 .config/lazyvim/lua/plugins/markdown-in-mailbody.lua diff --git a/.config/lazyvim/after/ftplugin/mail.lua b/.config/lazyvim/after/ftplugin/mail.lua index afa4c39..36c6ead 100644 --- a/.config/lazyvim/after/ftplugin/mail.lua +++ b/.config/lazyvim/after/ftplugin/mail.lua @@ -1,3 +1,18 @@ +local i, _ = string.find(vim.bo.filetype, "markdown") +if not i then + vim.opt_local.filetype = "mail.markdown" + -- this should trigger a reload of the ftplugin + return +end + +-- There are no diagnostics for mail, but we do not want the +-- Markdown standards imposed on mail header and signature… +vim.diagnostic.enable(false) +vim.b.autoformat = false + +-- disable Treesitter format expression for Mail +vim.opt_local.formatexpr = "" + vim.opt_local.formatoptions:remove("o") vim.opt_local.formatoptions:remove("r") vim.opt_local.formatoptions:remove("l") diff --git a/.config/lazyvim/after/queries/mail/injections.scm b/.config/lazyvim/after/queries/mail/injections.scm new file mode 100644 index 0000000..dd08e00 --- /dev/null +++ b/.config/lazyvim/after/queries/mail/injections.scm @@ -0,0 +1,2 @@ +((body) @injection.content + (#set! injection.language "markdown")) diff --git a/.config/lazyvim/lua/plugins/markdown-in-mailbody.lua b/.config/lazyvim/lua/plugins/markdown-in-mailbody.lua new file mode 100644 index 0000000..1a04d60 --- /dev/null +++ b/.config/lazyvim/lua/plugins/markdown-in-mailbody.lua @@ -0,0 +1,8 @@ +return { + { + "nvim-treesitter/nvim-treesitter", + dependencies = { + "stevenxxiu/tree-sitter-mail", + }, + }, +} diff --git a/.gitignore.d/lazyvim b/.gitignore.d/lazyvim index 345a341..86ec3ac 100644 --- a/.gitignore.d/lazyvim +++ b/.gitignore.d/lazyvim @@ -4,6 +4,7 @@ !/.config/lazyvim/after/ftplugin/markdown.lua !/.config/lazyvim/after/ftplugin/python.lua !/.config/lazyvim/after/ftplugin/tex.vim +!/.config/lazyvim/after/queries/mail/injections.scm !/.config/lazyvim/autocmds.lua !/.config/lazyvim/ftp !/.config/lazyvim/.gitignore @@ -25,6 +26,7 @@ !/.config/lazyvim/lua/plugins/disable-tokyonight.lua !/.config/lazyvim/lua/plugins/disable-treesitter-indenting.lua !/.config/lazyvim/lua/plugins/example.lua +!/.config/lazyvim/lua/plugins/markdown-in-mailbody.lua !/.config/lazyvim/lua/plugins/mini-align.lua !/.config/lazyvim/lua/plugins/vim-table-mode.lua !/.config/lazyvim/options.lua -- 2.39.5