Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

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: about 7 hours ago
JSON representation

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

Awesome Lists containing this project

README

        

glrnvim

[![All Contributors](https://img.shields.io/badge/all_contributors-10-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
Stanislav Lapata

💻
Ye Yan
Ye Yan

💻
Lasse Wolter
Lasse Wolter

📖
David de Rosier
David de Rosier

📦
Jan Damm
Jan Damm

💻
Chinmay Dalal
Chinmay Dalal

💻
Matteo Bigoi
Matteo Bigoi

💻


LollipopFt
LollipopFt

💻
robacarp
robacarp

📖
Xing Guo
Xing Guo

💻

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