2024-10-13
注意:我使用的插件管理器是lazy
,lazy集成在~/.config/nvim/lua/plugins.lua里面。
在~/.config/nvim/lua/plugins.lua里面添加如下代码:
{
"iamcco/markdown-preview.nvim",
cmd = { "MarkdownPreview", "MarkdownPreviewStop" },
build = function() vim.fn["mkdp#util#install"]() end,
init = function()
vim.g.mkdp_filetypes = { "markdown" }
end,
ft = { "markdown" },
},
按:wq退出,重新按nvim进入就会自动安装插件。
这个插件的使用方式是:MarkdownPreview和:MarkdownPreviewStop来分别表示预览和预览结束。 我点击了,没有任何反应。
我询问了claude,让我通过:messages
来查看日志。显示Cannot find module 'tslib'
,这是因为缺少了一个node.js的模块。
cd ~/.local/share/nvim/lazy/markdown-preview.nvim/app
npm install tslib
安装完后,你发现还是无法运行。
查看 ~/.local/share/nvim/lazy/markdown-preview.nvim/package.json 文件,手动添加依赖:
"dependencies": {
"tslib": "^2.3.0"
}
这样一来,问题就解决了。
:MarkdownPreview就是预览。
:MarkdownPreviewStop就是预览结束。
claude提示我,还可以进一步让预览自动化,但我还没设置,代码参考:
vim.g.mkdp_auto_start = 0 -- 在打开 markdown 文件时自动打开预览窗口
vim.g.mkdp_auto_close = 1 -- 在离开 markdown 缓冲区时自动关闭预览窗口
vim.g.mkdp_refresh_slow = 0 -- 实时预览
vim.g.mkdp_command_for_global = 0 -- 使命令在全局范围内可用
vim.g.mkdp_open_to_the_world = 0 -- 预览服务器可以被任意计算机访问
vim.g.mkdp_open_ip = '' -- 在网络中预览时使用的 IP 地址
vim.g.mkdp_browser = '' -- 指定预览使用的浏览器
vim.g.mkdp_echo_preview_url = 0 -- 在命令行回显预览页面的 URL
vim.g.mkdp_browserfunc = '' -- 自定义打开预览页面的函数名