#neovim #gtk4 #text-editors #gtk #nvim #bloat

app vhakulinen/gnvim

GUI for neovim, without any web bloat

6 releases

0.3.1 May 7, 2023
0.3.0 May 6, 2023
0.2.0 Nov 29, 2022
0.1.6 Jul 8, 2020
0.1.4 Jun 23, 2019

#79 in GUI

1,777 stars & 22 watchers

200KB
5.5K SLoC

GNvim Logo

GNvim - GTK4 Neovim GUI

Gnvim, opinionated Neovim GUI.

Screenshot of gnvim

For previous gtk3 version, checkout the legacy branch.

Install

NOTE: gnvim requires nvim version 0.9.5 or higher.

Flatpak

If you're using flatpak, you can build a GNvim flatpak locally:

$ # Install flatpak-builder
$ sudo apt install flatpak-builder
$ make install-flatpak-deps # Install required runtime and SDKs
$ make install-flatpak # Build and install the flatpak
$ # Optional: install gnvim runtime files (i.e. for `lua require('gnvim')`)
$ flatpak run com.github.vhakulinen.gnvim.Devel --install-runtime-files

System

Install system wide:

$ # Install cargo (e.g. the rust toolchain)
$ # Install gtk4 and libadwaita dev files, e.g. apt install libgtk-4-dev libadwaita-1-dev (see below)
$ make build
$ sudo make install

More detailed instructions regarding gtk4 requirements, see the gtk-rs book's instructions).

Documentation

See :h gnvim and/or runtime/doc/gnvim.txt.

Development

Gnvim comes with custom rpc client which uses code generation for generating bindings to the Neovim API. This is done by the scripts/generate-bindings.sh script and requires the moreutils package.

Dependencies

~18–27MB
~498K SLoC