Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/beeender/glrnvim

glrnvim wraps nvim with your favourite terminal into a standalone, non-fancy but daily-usable neovim GUI.
https://github.com/beeender/glrnvim

neovim neovim-guis opengl

Last synced: 11 days ago
JSON representation

glrnvim wraps nvim with your favourite terminal into a standalone, non-fancy but daily-usable neovim GUI.

Lists

README

        

glrnvim

[![All Contributors](https://img.shields.io/badge/all_contributors-9-orange.svg?style=flat-square)](#contributors-)

[![Build Status](https://travis-ci.com/beeender/glrnvim.svg?branch=master)](https://travis-ci.com/beeender/glrnvim)
=======

A really fast & stable neovim GUI could be accelated by GPU.

See the speed from the screenshot:
![screenshot](screenshot/very_fast.gif)

## About

glrnvim combines Open**GL** (possibly), **R**ust and **N**eo**VIM** together, to make the fastest, simplest neovim GUI.

The above things are not totally lie. The intention of this project was that I couldn't find a standalone neovim GUI fast and stable like the old gvim. All the existing neovim GUIs are either not fast enough (what do you expect from Electron?) or not stable enough. I have been using [neovim-gnome-terminal-wrapper](https://github.com/fmoralesc/neovim-gnome-terminal-wrapper) for a long time and it is much better than any other fancy GUIs. The only thing is, it doesn't support other terminals than gnome-terminal.

glrnvim wraps nvim with your favourite terminal into a standalone, non-fancy but daily-usable neovim GUI.

## Requisites

* [alacritty](https://github.com/jwilm/alacritty)/[kitty](https://github.com/kovidgoyal/kitty)/[rxvt-unicode](http://software.schmorp.de/pkg/rxvt-unicode.html)/[wezterm](https://wezfurlong.org/wezterm/)
* [neovim](https://neovim.io)

## Installation

### Arch Linux

Install `glrnvim` from the AUR.

### Debian/Ubuntu

- Install [cargo-deb](https://github.com/mmstick/cargo-deb).

```
cargo install cargo-deb
```

- Clone the project. Then build and install the `deb` package system-wide by running the following command from the project's root directory.

```
cargo deb --install
```

### MacOS

- Install alacritty

```
brew install alacritty
```

- Clone the project, then build. Create the config dir and modify the default config file (below) to specify alacritty.

## Build

```sh
cargo build
```

## Configuration

Modify [example config](https://github.com/beeender/glrnvim/blob/master/config.yml) and copy it to your `XDG_CONFIG_HOME` directory.

- For Linux: `$HOME/.config/glrnvim/config.yml`
- For MacOS: `$HOME/Library/Preferences/glrnvim/config.yml`
- For Windows: `{FOLDERID_RoamingAppData}` (`C:\Users\Alice\AppData\Roaming\glrnvim\config.yml`)

## Tips

### Set `glrnvim` as the git editor for commit message

```sh
git config --global core.editor "glrnvim --nofork"
```

### Check if it is running in a glrnvim instance in vim srcipt

```viml
if exists('g:glrnvim_gui')
"do something
endif
```

## Known Issues:

_Color scheme doesn't work well with urxvt backend._

glrnvim uses `set termguicolors` to achieve an easy and better color scheme support. However, that requires the terminal to support true colors. Urxvt never has an official release to support it. Although the true color patch has been merged many years ago. If you are using Arch, just install [rxvt-unicode-cvs](https://aur.archlinux.org/packages/rxvt-unicode-cvs) from aur.

## Contributors ✨

Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):



Stanislav Lapata

💻

Ye Yan

💻

Lasse Wolter

📖

David de Rosier

📦

Jan Damm

💻

Chinmay Dalal

💻

Matteo Bigoi

💻



LollipopFt

💻

robacarp

📖

This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!