Markdown 预览¶
简介¶
Markdown 语言使其广泛用于编写技术文档的特性之一是其可转换性。代码可以转换为多种格式(HTML、PDF、纯文本等)进行显示,因此可以在多种场景中使用内容。
具体来说,为 Rocky Linux 编写的文档使用一个python应用程序转换为HTML
。该应用程序将用markdown编写的文档转换为静态 HTML 页面。
问题在于,在为 Rocky Linux 编写文档时,需要验证其转换为HTML
代码后的正确显示。
为了将此功能集成到您的编辑器中,本页面将说明为此目的提供的两个插件,toppair/peek.nvim 和 markdown-preview.nvim。这两个插件都支持github 风格,可以选择用于预览的浏览器,以及与编辑器同步滚动。
Peek.nvim¶
Peek 使用 Deno,这是一个 JavaScript、TypeScript 和 WebAssembly 运行时,具有默认的安全设置。
要在编辑器配置中安装语言服务器,使用mason.nvim插件,该插件提供:MasonInstall
命令,该命令可以自动包含和配置Deno。
:MasonInstall deno
警告
必须在继续安装插件之前安装语言服务器。否则安装将失败,并且需要从plugins/init.lua中删除代码,通过打开Lazy
并键入X来执行配置清理以删除插件,然后重复安装过程。
要安装插件,需要编辑文件plugins/init.lua,并添加以下代码块
{
"toppair/peek.nvim",
build = "deno task --quiet build:fast",
keys = {
{
"<leader>op",
function()
local peek = require("peek")
if peek.is_open() then
peek.close()
else
peek.open()
end
end,
desc = "Peek (Markdown Preview)",
},
},
opts = { theme = "dark", app = "browser" },
},
保存文件后,可以通过:Lazy
命令打开插件管理器界面来执行安装。插件管理器会自动识别它,并允许您通过键入I来安装它。
但是,要获得完整的功能,必须关闭 NvChad (nvim) 然后重新打开它。这是为了让编辑器能够将Peek中的那些内容加载到配置中。
其配置已经包含了激活它的命令<leader>op
,在键盘上它对应于Space + o 接着是 p。
您还有字符串
opts = { theme = "dark", app = "browser" },
它允许您为预览的亮色或暗色主题以及用于显示的方法传递选项。
在此配置中,选择了“浏览器”方法,它会在系统的默认浏览器中打开要查看的文件,但该插件允许通过“webview”方法仅使用Deno通过webview_deno组件来预览文件。
Markdown-preview.nvim¶
Markdown-preview.nvim 是一个用node.js
(JavaScript) 编写的插件。它在 NvChad 上的安装不需要任何依赖项,因为开发人员提供了一个预编译版本,该版本在编辑器中完美运行。
要安装此版本,需要将以下代码块添加到您的plugins/init.lua中
{
"iamcco/markdown-preview.nvim",
cmd = {"MarkdownPreview", "MarkdownPreviewStop"},
lazy = false,
build = function() vim.fn["mkdp#util#install"]() end,
init = function()
vim.g.mkdp_theme = 'dark'
end
},
与之前的插件一样,需要关闭编辑器并重新打开它,以让 NvChad 有机会加载新的配置。同样,您也可以向插件传递一些自定义选项,这些选项在项目的专用部分中进行了描述。
但是,必须修改选项以适合lazy.nvim
的配置,特别是此示例中配置的选项
vim.g.mkdp_theme = "dark"
它对应于项目网站上描述的选项
let g:mkdp_theme = 'dark'
如您所见,要设置选项,需要修改其初始部分以使其可解释。举另一个例子,让我们以允许您选择用于预览的浏览器的选项为例,该选项指定如下
let g:mkdp_browser = '/usr/bin/chromium-browser'
要使其在 NvChad 中正确解释,需要将其修改为将let g:
替换为vim.g.
。
vim.g.mkdp_browser = "/usr/bin/chromium-browser"
这样,下次打开 NvChad 时,将使用chromium-browser
,而与系统的默认浏览器无关。
配置还提供了:MarkdownPreview
和 :MarkdownPreviewStop
命令,分别用于打开和关闭预览。为了更快速地访问这些命令,您可以按照以下步骤将它们映射到 mapping.lua 文件中:
-- mapping for Markdown Preview
map("n", "<leader>mp", "<CMD> MarkdownPreview<CR>", { desc = "Open Preview" })
map("n", "<leader>mc", "<CMD> MarkdownPreviewStop<CR>", { desc = "Close Preview" })
这将允许您通过输入 Enter + m 然后 p 来打开 Markdown 预览,并通过组合 Enter + m 然后 c 来关闭它。
注意
该插件还提供了 :MarkdownPreviewToggle
命令,但截至本文撰写之时,它似乎无法正常工作。如果您尝试调用它,它不会更改预览主题,而是会打开一个包含相同预览的新浏览器标签页。
结论和最终想法¶
对您正在编写的內容进行预览非常有用,无论对于刚接触此编辑器的新手还是对 Markdown 语言有更深入了解的用户而言都是如此。预览使您能够评估代码转换为 Markdown 后产生的影响,以及其中包含的任何错误。
选择使用哪个插件完全取决于个人喜好,我们鼓励您尝试两种插件,以评估哪种插件最适合您。
使用其中一个插件可以让您为 Rocky Linux 的文档贡献符合所用代码的文档,从而减轻文档审阅者的工作量。
作者:Franco Colussi
贡献者:Steven Spencer,Ganna Zhyrnova