Browse, preview, and read IETF RFCs with either Telescope or mini.pick.
Requires Neovim 0.12+, curl (used by vim.net.request()), and at least one
supported picker.
{
"moniquelive/rfc.nvim",
dependencies = {
"nvim-telescope/telescope.nvim",
},
config = function()
require("telescope").load_extension("rfc")
end,
}Use :Telescope rfc or:
require("telescope").extensions.rfc.rfc()Telescope displays previews in its preview window and opens the selected RFC in a floating window.
{
"moniquelive/rfc.nvim",
dependencies = {
"nvim-mini/mini.pick",
},
config = function()
require("mini.pick").setup()
require("rfc").setup({ picker = "mini" })
end,
}Use :Pick rfc or:
require("rfc").picker()Press <Tab> to toggle mini.pick's preview. The selected RFC opens in the
picker's target window, including targets created with its split, vsplit, and
tab actions.
When both picker plugins are installed, select the backend used by the generic Lua entry point:
require("mini.pick").setup()
require("rfc").setup({ picker = "mini" }) -- or "telescope"
require("telescope").load_extension("rfc")The backend-specific commands remain independent:
:Pick rfc
:Telescope rfcWithout an explicit picker setting, require("rfc").picker() automatically
uses the only installed backend. It reports an error when both or neither are
available.
Options passed to the Lua entry point are forwarded to the selected picker:
require("rfc").picker({
-- Telescope options, or mini.pick options when that backend is selected.
})Backend-specific calls also accept their native options:
require("telescope").extensions.rfc.rfc({ layout_strategy = "vertical" })
require("mini.pick").registry.rfc({
window = { config = { border = "double" } },
})