bookmarks.nvim 使用教程
项目介绍
bookmarks.nvim
是一个为 Neovim 设计的书签插件,使用 Lua 编写。它允许用户在代码中添加、管理和快速跳转到书签,支持自定义书签图标和注释,以及通过 Telescope 插件进行书签搜索。
项目快速启动
安装
使用 packer.nvim
进行安装:
use {
'tomasky/bookmarks.nvim',
requires = { 'nvim-telescope/telescope.nvim', 'kyazdani42/nvim-web-devicons' },
config = function()
require('bookmarks').setup()
require('telescope').load_extension('bookmarks')
end
}
配置
在 init.lua
中添加以下配置:
require('bookmarks').setup({
-- 默认配置
sign_priority = 8,
save_file = vim.fn.expand("$HOME/bookmarks"),
keywords = {
["@t"] = "☑️",
["@w"] = "⚠️",
["@f"] = "⛏",
["@n"] = "",
},
on_attach = function(bufnr)
local bm = require("bookmarks")
local map = vim.keymap.set
map("n", "mm", bm.bookmark_toggle)
map("n", "mi", bm.bookmark_ann)
map("n", "mc", bm.bookmark_clean)
map("n", "mn", bm.bookmark_next)
map("n", "mp", bm.bookmark_prev)
map("n", "ml", bm.bookmark_list)
map("n", "mx", bm.bookmark_clear_all)
end
})
应用案例和最佳实践
添加书签
在正常模式下,使用 mm
命令在当前行添加或移除书签。
查看书签列表
使用 :Telescope bookmarks list
命令或 require('telescope').extensions.bookmarks.list()
函数查看所有书签。
跳转书签
使用 mn
和 mp
命令分别跳转到下一个和上一个书签。
清除书签
使用 mx
命令清除所有书签。
典型生态项目
Telescope.nvim
Telescope.nvim
是一个强大的模糊查找器,与 bookmarks.nvim
结合使用,可以快速搜索和跳转到书签。
nvim-web-devicons
nvim-web-devicons
提供了文件图标支持,使得书签列表更加直观和美观。
通过以上步骤,您可以快速上手并充分利用 bookmarks.nvim
插件,提高代码导航和管理的效率。