Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

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

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Neovim
  3. ultimate-autopair.nvim

ultimate-autopair.nvim

MITLua

A highly customizable Neovim autopairing plugin with Tree-sitter support, multiline pairing, and filetype detection.

GitHubGitHub
578 stars8 forks0 contributors

What is ultimate-autopair.nvim?

Ultimate-autopair.nvim is a Neovim plugin that automatically inserts and manages matching character pairs like parentheses, brackets, and quotes during coding. It solves the problem of manual pair management by providing intelligent, context-aware autopairing with support for multiline operations and Tree-sitter-based filtering.

Target Audience

Neovim users, particularly developers who write code in multiple languages and want enhanced, customizable autopairing functionality within their editor.

Value Proposition

Developers choose it for its Tree-sitter integration, multiline support, and high customizability—features often missing in other autopairing plugins, ensuring it works reliably across diverse coding scenarios.

Overview

A treesitter supported autopairing plugin with extensions, and much more

Use Cases

Best For

  • Automatically pairing brackets and quotes in Neovim
  • Writing code with multiline structures like functions or arrays
  • Enhancing coding speed with context-aware autopairing
  • Using Tree-sitter to filter pairs within strings or comments
  • Customizing autopairing rules for specific filetypes
  • Integrating with other Neovim plugins like surround or tabout

Not Ideal For

  • Developers using Neovim versions below 0.9, as it requires modern editor features.
  • Teams needing frequent plugin updates and new features, due to its current maintenance mode.
  • Users who prefer minimal configuration and out-of-the-box solutions, since it emphasizes customizability.
  • Projects where only basic bracket pairing is sufficient without Tree-sitter integration or multiline handling.

Pros & Cons

Pros

Tree-sitter Integration

Uses Tree-sitter for node filtering and filetype detection, ensuring accurate pairing within code structures and avoiding pairs in strings or comments, as highlighted in the README.

Multiline Support

Handles pairing across multiple lines, a feature lacking in many alternatives, which is useful for complex code blocks like function definitions or arrays.

High Customizability

Designed to be ultra customizable with straightforward configuration options, allowing users to tailor autopairing rules to specific workflows and filetypes.

Modern Neovim Compatibility

Built for Neovim 0.9+ with a development branch for updates, ensuring compatibility with the latest editor versions and features.

Cons

Maintenance Mode Limitation

The plugin is in maintenance mode with no new features planned, which may hinder long-term innovation and adaptation to evolving coding needs.

Breaking Changes Between Versions

New versions often introduce breaking changes, as indicated by the recommendation to pin to a specific branch, potentially disrupting user setups during updates.

Tree-sitter Dependency

Advanced features like string filtering require Tree-sitter to be installed and configured, adding an extra layer of setup for full functionality.

Frequently Asked Questions

Quick Stats

Stars578
Forks8
Contributors0
Open Issues22
Last commit6 days ago
CreatedSince 2023

Tags

#treesitter#developer-tools#code-editing#vim#nvim-lua#neovim-plugin#plugin#keyboard-shortcuts#autopair#neovim-lua#nvim-plugin#neovim#lua#neovim-lua-plugin#nvim

Built With

N
Neovim
T
Tree-sitter
L
Lua

Included in

Neovim20.6k
Auto-fetched 17 hours ago

Related Projects

nvim-autopairsnvim-autopairs

autopairs for neovim written in lua

Stars4,066
Forks141
Last commit2 months ago
nvim-treesitter-contextnvim-treesitter-context

Show code context

Stars3,215
Forks236
Last commit2 months ago
zen-mode.nvimzen-mode.nvim

🧘 Distraction-free coding for Neovim

Stars2,149
Forks76
Last commit8 months ago
nvim-ts-autotagnvim-ts-autotag

Use treesitter to auto close and auto rename html tag

Stars2,104
Forks109
Last commit3 months 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