Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Neovim
  3. arrow.nvim

arrow.nvim

NOASSERTIONLua

A Neovim plugin for bookmarking files with per-project and per-buffer organization using a single keymap interface.

GitHubGitHub
749 stars42 forks0 contributors

What is arrow.nvim?

Arrow.nvim is a Neovim plugin that allows developers to bookmark files and navigate them quickly using a single keymap. It organizes bookmarks per project or git branch and supports per-buffer bookmarks that track cursor positions. The plugin solves the problem of inefficient file switching in complex coding sessions.

Target Audience

Neovim users, particularly developers working on multi-file projects who need fast navigation between frequently accessed files and buffers.

Value Proposition

Developers choose Arrow.nvim for its streamlined single-keymap interface, per-buffer bookmarking with automatic position persistence, and high customizability compared to alternatives like Harpoon.

Overview

Bookmark your files, separated by project, and quickly navigate through them.

Use Cases

Best For

  • Quickly switching between key files in a large codebase
  • Managing bookmarks across multiple projects or git branches
  • Bookmarking specific locations within a file for reference
  • Integrating bookmark indicators into Neovim statuslines or file trees
  • Customizing bookmark actions with Lua functions
  • Reducing navigation keystrokes with a unified interface

Not Ideal For

  • Teams requiring seamless, out-of-the-box integration with file explorers like NvimTree without manual source code patching
  • Developers needing cross-machine or team-synchronized bookmarks for collaborative coding sessions
  • Users who prefer a GUI-driven or mouse-heavy workflow over keyboard-centric navigation

Pros & Cons

Pros

Single Keymap Interface

All bookmark functions are unified under one keymap, reducing keystrokes and cognitive load as emphasized in the README's philosophy of simplicity.

Auto-Updating Buffer Marks

Per-buffer bookmarks automatically persist and update cursor positions as you edit files, ensuring accurate navigation without manual adjustments.

Smart Filename Display

Shows full paths only for duplicate or generic filenames, keeping the UI clean and intuitive, a feature highlighted in the differences from harpoon.

High Customizability

Supports custom Lua functions for opening files, configurable keymaps, and visual enhancements like statusline helpers for tailored workflows.

Cons

Cumbersome NvimTree Integration

Requires patching NvimTree's source code to display bookmarks, which is error-prone, breaks with updates, and is admitted in the README as needing a 'small patch'.

Session Plugin Incompatibilities

May need extra hooks when used with session plugins like mini.sessions, adding setup complexity and potential for errors, as noted in the working with sessions plugins section.

Limited Ecosystem Support

Lacks built-in integrations with popular plugins like telescope for search, relying on user customization for extended functionality beyond core bookmarking.

Open Source Alternative To

arrow.nvim is an open-source alternative to the following products:

h
harpoon

Harpoon is a Neovim plugin that allows users to quickly navigate between frequently used files by marking them with keybindings for fast access.

Frequently Asked Questions

Quick Stats

Stars749
Forks42
Contributors0
Open Issues32
Last commit7 months ago
CreatedSince 2024

Tags

#productivity#workflow#bookmark#vim#buffer-management#neovim-plugin#editor-enhancement#navigation#keymap

Built With

N
Neovim
L
Lua

Included in

Neovim20.6k
Auto-fetched 16 hours ago

Related Projects

harpoonharpoon

Harpoon is a Neovim plugin designed to solve the repetitive navigation problem in software development. It allows users to mark frequently accessed files and terminals within a project, providing quick keyboard-driven access to reduce context switching and boost productivity. ## Key Features - **Persistent File Marks** — Mark important files per-project with positions that auto-update as you edit. - **Quick Navigation Menu** — Toggle a menu to view, reorder, or jump to marked files instantly. - **Terminal Management** — Create, navigate between, and send commands to multiple persistent terminal sessions. - **Tmux Integration** — Seamlessly control tmux windows and panes directly from Neovim. - **Telescope Extension** — Browse and select marks using the popular Telescope fuzzy finder. - **Customizable Configuration** — Adjust settings like save behavior, excluded filetypes, and menu appearance. ## Philosophy Harpoon emphasizes minimal keystrokes and persistent, project-aware navigation, treating files and terminals as equally important resources in a developer's workflow.

Stars9,163
Forks488
Last commit8 months ago
marks.nvimmarks.nvim

A better user experience for viewing and interacting with Vim marks.

Stars1,178
Forks55
Last commit1 year ago
grapple.nvimgrapple.nvim

Neovim plugin for tagging important files

Stars714
Forks33
Last commit1 year ago
bookmarks.nvimbookmarks.nvim

Persistent bookmarks: hard disk of your thoughts

Stars293
Forks14
Last commit14 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub