Text Editing

neovim-gtk – GTK4 graphical frontend for Neovim

neovim-gtk is a graphical user interface for Neovim, providing a desktop editing environment built around the GTK toolkit. It allows users to retain Neovim’s modal editing, configuration, and extensibility while working within a conventional graphical application.

This development branch began as a fork of daa84’s neovim-gtk project. It introduces substantial improvements to the rendering architecture, including a transition to GTK4, smoother window resizing, and changes to how graphical updates are processed.

The application integrates Neovim with familiar desktop controls while preserving access to the underlying editor’s commands and functionality. Configuration is handled through Neovim’s settings and GUI-specific commands.

This is free and open source software.

Key Features

  • GTK4 interface with a snapshot-based rendering system replacing the original Cairo renderer.
  • Supports font ligatures and configurable OpenType font features.
  • Customizable editor fonts using the guifont setting in ginit.vim.
  • Smooth window resizing with incremental updates to the editor’s grid representation.
  • Graphical completion popup menu with support for scrolling through available suggestions and displaying additional information.
  • External tabline and command-line interfaces can be enabled or disabled through GUI options.
  • Project View provides access to previously opened files and bookmarked directories.
  • Native GTK clipboard integration for copying and pasting text.
  • Graphical plugin manager supporting a subset of vim-plug configuration options.
  • Configurable cursor blinking, window decorations, transparency, and dark theme preferences.
  • GUI-specific Neovim commands for managing the sidebar, project view, and application appearance.
  • Asynchronous processing of UI requests and coalesced redraw notifications help maintain interface responsiveness.
  • Cross-platform support – runs on Linux, macOS, and Windows.

Website: github.com/Lyude/neovim-gtk
Support:
Developer: Lyude Paul and contributors
License: GNU General Public License v3.0

neovim-gtk in action

neovim-gtk is written in Rust. Learn Rust with our recommended free books and free tutorials.


Related Software

Neovim GUIsLanguage
Neovim-qtNeovim client library and GUI using Qt5C++
GoNeovimForked from Gonvim. Uses Qt bindingGo
FVimUses the Avalonia XAML-based UI frameworkF#
NeovideNo nonsense clientRust
GNvimRich GUI without any web bloatRust
NVUIModern frontendC++
glrnvimGPU-accelerated Neovim GUIRust
NyaoVimWeb-enhanced extensible Neovim frontend TypeScript
neovim-gtkUses gtk-rs bindingsRust
NeorayUses GLFW and OpenGL bindingsGo
EnvimElectron-based frontend for NeovimTypeScript

Read our verdict in the software roundup.


Best Free and Open Source Software LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.

We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more.

Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion.

Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted