Dark Mode

Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

tomasky/bookmarks.nvim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

24 Commits

Repository files navigation

bookmarks.nvim

A Bookmarks Plugin With Global File Store For Neovim Written In Lua.

Features

  • Display different icons according to annotation keywords
  • open bookmarks in a quickfix list
  • search marks with Telescope

Requirements

  • Neovim >= 0.7.0

Installation

With packer.nvim:

use {
'tomasky/bookmarks.nvim',
-- tag = 'release' -- To use the latest release
}

Usage

For basic setup with all default configs using packer.nvim

use {
'tomasky/bookmarks.nvim',
-- after = "telescope.nvim",
event = "VimEnter",
config = function()
require('bookmarks').setup()
end
}

Here is an example with most of the default settings:

require('bookmarks').setup {
-- sign_priority = 8, --set bookmark sign priority to cover other sign
save_file = vim.fn.expand "$HOME/.bookmarks", -- bookmarks save file path
keywords = {
["@t"] = " ", -- mark annotation startswith @t ,signs this icon as `Todo`
["@w"] = " ", -- mark annotation startswith @w ,signs this icon as `Warn`
["@f"] = " ", -- mark annotation startswith @f ,signs this icon as `Fix`
["@n"] = " ", -- mark annotation startswith @n ,signs this icon as `Note`
},
on_attach = function(bufnr)
local bm = require "bookmarks"
local map = vim.keymap.set
map("n","mm",bm.bookmark_toggle) -- add or remove bookmark at current line
map("n","mi",bm.bookmark_ann) -- add or edit mark annotation at current line
map("n","mc",bm.bookmark_clean) -- clean all marks in local buffer
map("n","mn",bm.bookmark_next) -- jump to next mark in local buffer
map("n","mp",bm.bookmark_prev) -- jump to previous mark in local buffer
map("n","ml",bm.bookmark_list) -- show marked file list in quickfix window
map("n","mx",bm.bookmark_clear_all) -- removes all bookmarks
end
}

Telescope

require('telescope').load_extension('bookmarks')

Then use :Telescope bookmarks list or require('telescope').extensions.bookmarks.list()

Credits

About

A Bookmarks Plugin With Global File Store For Neovim Written In Lua.

Topics

Resources

Readme

License

MIT license

Stars

Watchers

Forks

Packages

Contributors

Languages