Compare commits

...

4 commits

Author SHA1 Message Date
30adb52d3c
nvim: Add mdx filetype support
Added suport for the mdx filetype. With the mdx.nvim plugin it will be
recognized and applied to `*.mdx` files. The plugin also associates the
markdown parser with it, and adds some queries for mdx features.

Lastly, added mdx to the list of markdown-like languages in our prose
module so plugins like render-markdown also recognize the language and
work with it.
2025-10-10 22:16:25 +02:00
36bd07a7e5
nvim: Enable markdown rendering for vimwiki and djot
The reason render-markdown was not working for either is that it
requires the markdown treesitter active for the respective language.
With this, for the filetypes in question we simply tell the markdown
treesitter to also parse these.

This _might_ be a problem in the future if the djot treesitter (which
also exists and can be enabled by TS in nvim) diverges more or some
other unforeseen change happens. For now, it seems to work fine. Might
not support all the features in djot that diverge from md? I have not
used them extensively enough to notice.
2025-10-10 22:16:25 +02:00
eb6e72c58d
nvim: Add htmx lsp and mdslw markdown formatting
mdslw will format markdown sentence-wise, in addition to 80-col width.
Let's see if it's gonna be useful or super annoying.
2025-10-10 22:16:24 +02:00
ac01db2d6d
aerc: Add scroll and unmark key binds 2025-10-10 22:16:23 +02:00
6 changed files with 18 additions and 2 deletions

View file

@ -1,2 +1,5 @@
-- just copy markdown settings
vim.cmd.runtime({"after/ftplugin/markdown.lua", bang=true})
-- until there's a specific djot TS, use markdown
vim.treesitter.language.register("markdown", "djot")

View file

@ -0,0 +1,2 @@
-- to make render-markdown render it nicely
vim.treesitter.language.register("markdown", "vimwiki")

View file

@ -48,6 +48,7 @@
"mason.nvim": { "branch": "main", "commit": "7f265cd6ae56cecdd0aa50c8c73fc593b0604801" },
"mcphub.nvim": { "branch": "main", "commit": "85a7a659fc82da1429a2241ab61e9ce07b3db374" },
"mdeval.nvim": { "branch": "master", "commit": "0e1b248db174a9659a9ab16eb8c90ff3aec55264" },
"mdx.nvim": { "branch": "main", "commit": "464a74be368dce212cff02f6305845dc7f209ab3" },
"mini.base16": { "branch": "main", "commit": "2eb2d2b889a8c861d1a66ec651bd0edb417d5c7f" },
"mini.files": { "branch": "main", "commit": "49c855977e9f4821d1ed8179ed44fe098b93ea2a" },
"mini.nvim": { "branch": "main", "commit": "94cae4660a8b2d95dbbd56e1fbc6fcfa2716d152" },

View file

@ -72,7 +72,7 @@ local languages = {
dap = { "delve" },
},
graphql = { format = { graphql = { "prettier" } } },
html = { format = { html = { "prettier", "rustywind" } } },
html = { lsp = { htmx = {} }, format = { html = { "prettier", "rustywind" } } },
julia = { lsp = { julials = {} }, ts = { "julia" } },
json = {
lsp = { jsonls = {} },
@ -103,7 +103,7 @@ local languages = {
lsp = { marksman = {} },
ts = { "markdown", "markdown_inline" },
lint = { markdown = { "markdownlint" } },
format = { markdown = { "prettier", "injected" } },
format = { markdown = { "prettier", "mdslw", "injected" } },
},
nim = { lsp = { nim_langserver = {} }, ts = { "nim", "nim_format_string" }, format = { nim = { "nimpretty" } } },
nu = nushell(),

View file

@ -13,6 +13,7 @@ end
local md_like = {
"markdown",
"mdx",
"djot",
"pandoc",
"quarto",
@ -345,6 +346,12 @@ local prose_plugs = {
branch = "dev",
},
{ "let-def/texpresso.vim", ft = { "tex" } },
{
"davidmh/mdx.nvim",
config = true,
dependencies = { "nvim-treesitter/nvim-treesitter" },
event = { "BufEnter *.mdx" }, -- since the plug itself defines mdx ft
},
}
return prose_plugs

View file

@ -50,6 +50,7 @@ gr = :cf Trash<Enter>
v = :mark -t<Enter>
V = :mark -V<Enter>
<Space>v = :unmark -a<Enter>
J = :mark -t<Enter>:next<Enter>
K = :mark -t<Enter>:prev<Enter>
T = :prompt "Mark filter: " :mark<Enter>
@ -118,6 +119,8 @@ N = :prev-result<Enter>
s = :split<Enter>
S = :vsplit<Enter>
<S-Down> = :send-keys JJJ<Enter>
<S-Up> = :send-keys KKK<Enter>
# send mails to taskwarrior
,t = :pipe -s -m mail-totask -c -d -t