Neovim Documentation

website·Indexed 41 days ago

https://neovim.io/

Documentation for Neovim, including user guides for Vimscript, Lua plugin development, and window management. It also provides technical specifications for the Neovim node-client API, detailing classes such as Neovim, NeovimClient, Buffer, and Window.

Tokens
448.7K
Snippets
2.7K
Records
3.8K
Agent score
71%

What's inside Neovim

  1. Overview of Neovim

    Neovim is a fork of the Vim text editor designed with a focus on extensibility and usability. It is not a complete rewrite but a continuation and extension of Vim, intended for users who want the core functionality of Vim with additional modern enhancements.
  2. Overview of msgpack.vim

    The msgpack.vim plugin provides a set of utility functions designed to be used alongside Neovim's built-in msgpackdump() and msgpackparse() functions to handle MessagePack serialization and deserialization.
  3. Overview of Neovim

    Neovim is a Vim-based text editor specifically engineered for extensibility and usability to encourage the development of new applications and community contributions.
  4. Overview of Neovim Asynchronous IO Channels

    Channels are Neovim's mechanism for communicating with external processes. Each channel is identified by a unique integer ID for the duration of the session. Channels support different protocols, including raw bytes (default), msgpack-rpc for remote calls and events, and PTY channels for terminal emulation.
  5. Overview of Neovim PowerShell (ps1) plugin

    The ps1 plugin provides syntax highlighting, indentation, and filetype detection for Windows PowerShell scripts (.ps1), modules, and XML configuration files.
  6. Overview of Neovim Signs

    Signs are markers (icons or text) displayed in the left-hand column (the gutter) of a window. They are typically used by debuggers for breakpoints or by plugins to mark build errors and version control status. Using signs involves two steps: defining the sign (specifying the appearance and highlighting) and placing the sign (specifying the file and line number).
  7. Overview of Neovim test types

    Neovim categorizes tests into three main types:

    • Unit Tests (test/unit/): Compiled as shared libraries and called via LuaJit FFI.
    • Functional Tests (test/functional/): Integration tests driven by RPC that test the full system. They do not require LuaJit.
    • Legacy Tests (test/old/testdir/): Tests migrated from Vim.
  8. Overview of Hare language support in Neovim

    Neovim provides a built-in filetype plugin for the Hare programming language that includes syntax highlighting and indentation support.
  9. Overview of Neovim

    Neovim is a fork of the Vim text editor, designed as a continuation and extension of Vim with a specific focus on improving extensibility and usability. It is not a complete rewrite, but it provides additional capabilities beyond the original Vim implementation.
  10. Overview of Neovim Remote Plugins

    Remote plugins are coprocesses that extend Neovim using any programming language. They communicate with the main Neovim process via RPC (Remote Procedure Call). Despite running in separate processes, they can call Neovim functions, be called by Neovim, and receive events as if they were running in the main process.
  11. Overview of third-party Neovim GUIs

    Neovim supports any client that implements the ui-protocol. While it includes a built-in Terminal UI (TUI), several third-party GUIs provide additional features or different environments. Popular options include:

    • vscode-neovim: Integrates Neovim into VS Code.
    • Firenvim: Neovim inside a web browser.
    • Neovide: A high-performance GUI.
    • Goneovim: A GUI written in Go.
    • Neovim-Qt: A Qt5-based GUI.
    • VimR: A macOS-specific GUI.
  12. Overview of Neovim standard bundled plugins

    Neovim includes several built-in Lua and Vim plugins. Some are loaded by default, while others must be explicitly loaded using :packadd. Lua plugins are not part of the global vim namespace and must be required or pack-added.