Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/refractalize/nvimvm
A Neovim version manager
https://github.com/refractalize/nvimvm
neovim neovim-version-manager
Last synced: about 1 month ago
JSON representation
A Neovim version manager
- Host: GitHub
- URL: https://github.com/refractalize/nvimvm
- Owner: refractalize
- Created: 2024-01-21T14:57:32.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2024-01-22T08:10:28.000Z (11 months ago)
- Last Synced: 2024-10-13T07:06:48.284Z (2 months ago)
- Topics: neovim, neovim-version-manager
- Language: Shell
- Homepage:
- Size: 2.93 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# nvimvm - a Neovim version manager
```console
> nvimvm
Usage: nvimvmCommands:
versions
List available versions
installed
List installed versions
install
Install a version (but don't use it)
use
Use a version
path
Print the path to a version
remove
Remove a version
```## Install
### Zsh
This repo contains a zsh plugin which most zsh package managers will pick up:
```
antigen bundle refractalize/nvimvm
``````
zgen load refractalize/nvimvm
```Or otherwise download this repo and `source $REPO/nvimvm.plugin.zsh`
### Others
```sh
REPO=... # somewhere to put nvimvm
git clone https://github.com/refractalize/nvimvm.git $REPO
PATH=$HOME/.local/share/nvimvm/bin:$REPO/bin:$PATH
```## Features
### Enumerate all available neovim versions
```console
> nvimvm versions
nightly (nightly-3f188bc533bc22f1d13dce33ab5d63973c3ff22a, 2024-01-21T14:47:59Z)
v0.9.5
stable (stable-8744ee8783a8597f9fce4a573ae05aca2f412120, 2023-12-30T13:31:44Z)
v0.9.4
v0.9.2
v0.9.1
v0.9.0
v0.8.3
v0.8.2
v0.8.1
v0.8.0
v0.7.2
```### Use a version
Use a parcicular version of neovim for all shells. This will download it if not already downloaded.
```console
> nvimvm use v0.9.5
Downloading v0.9.5
######################################################################### 100.0%
Using v0.9.5
> nvim --version
NVIM v0.9.5
Build type: Release
LuaJIT 2.1.1692716794system vimrc file: "$VIM/sysinit.vim"
fall-back for $VIM: "/usr/local/share/nvim"Run :checkhealth for more info
```**NOTE** that `zsh` will cache the paths of executables, so you may need to run `rehash` to ensure it finds the new `nvim` instance. See https://zsh.sourceforge.io/Guide/zshguide03.html
### Install tagged versions
Install and use tagged versions like `nightly` and `stable`.
```console
> nvimvm install nightly
Downloading nightly-3f188bc533bc22f1d13dce33ab5d63973c3ff22a
######################################################################### 100.0%
> nvimvm use nightly
Using nightly-3f188bc533bc22f1d13dce33ab5d63973c3ff22a
```### Tracks git SHA of tagged versions
`nvimvm` tracks the git SHA of tagged versions such as `nighly` or `stable`, allowing you for specify exactly which version you want to use.
```console
> nvimvm installed
* nightly-2fce95ec439a1121271798cf00fc8ec9878813fa (2024-01-17T05:14:37Z)
nightly-3f188bc533bc22f1d13dce33ab5d63973c3ff22a (2024-01-21T14:47:59Z)
nightly-d65c6a0bafada059e87a11a4bcd129afc16d2e5d (2023-12-13T05:14:36Z)
stable-8744ee8783a8597f9fce4a573ae05aca2f412120 (2023-12-30T13:31:44Z)
stable-d772f697a281ce9c58bf933997b87c7f27428a60 (2023-10-09T20:51:23Z)
v0.9.4
system
> nvimvm use nightly-3f188bc533bc22f1d13dce33ab5d63973c3ff22a
Using nightly-3f188bc533bc22f1d13dce33ab5d63973c3ff22a
```### Support for [direnv](https://direnv.net/)
You can use [direnv](https://direnv.net/) to specify which version of neovim should be used in a particular directory:
```
# .envrc
# We want to use nvim v9.5.0 in this directory
PATH_add $(nvimvm path v9.5.0)
```### Use the system version
Use whatever the system version is, not managed by `nvimvm`.
```
> nvimvm use system
Using system
```