Skip to content
/ nvims Public

Safely experiment with multiple Neovim configurations.

License

Notifications You must be signed in to change notification settings

Traap/nvims

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nvims

Safely experiment with multiple Neovim configurations.

Nvims screenshot

Nvim Operational modes

nvims installs or removes a Neovim configuration.

Requirements

Install nvims

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Traap/nvims/master/install.sh)"

Uninstall nvims

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Traap/nvims/master/uninstall.sh)"

OSX additional instructions

See issue #8 for Bash and OSX discussion.

brew install bash
echo /usr/local/bin/bash | sudo tee -a /etc/shells
sed -i '1 s/^.*$/\#\!\/usr\/local\/bin\/env bash/' /usr/local/bin/nvims

Install a Neovim configuration.

nvims

Remove a Neovim configuration.

nvims -d

Keybindings

Keybind Action
ctrl-c Cancel.
ctrl-p Previous selection
ctrl-n Next selection
enter Selecte highlighted item

Neovim configurations supported.

# alias      | Github repository       | default or branch name
readonly neovim_distros=(
  "astro      | AstroNvim/AstroNvim     | default"
  "asyncedd   | asyncedd/dots.nvim      | default"
  "barebones  | Traap/barebones         | default"
  "baretmux   | Traap/barebones         | tmux"
  "cam        | ChristianChiarulli/nvim | default"
  "CyberNvim  | pgosar/CyberNvim        | default"
  "default    | none                    | none"
  "exos       | exosyphon/nvim          | none"
  "kickstart  | nvim-lua/kickstart.nvim | default"
  "launch     | LunarVim/Launch.nvim    | default"
  "LazyVim    | LazyVim/starter         | default"
  "lervag     | lervag/dotnvim          | default"
  "NormalNvim | NormalNvim/NormalNvim   | default"
  "nvchad     | NvChad/NvChad           | default"
  "nvconf     | TechnicalDC/NvConf      | default"
  "OVIwrite   | MiragianCycle/OVIWrite  | default"
  "prime      | Traap/init.lua          | default"
  "pwnvim     | pwnwriter/pwnvim        | default"
  "traap      | Traap/nvim              | default"
  "vapour     | Traap/VapourNvim        | default"
  "void       | nvoid-lua/nvoid         | default"
  "xray       | Traap/nvim              | v0.9.5-lazyvim"
  "zero       | Traap/lazy.zero         | default"
  "zulu       | Traap/nvim              | v0.6.8-packer"
)

Note: see neovim_distros file for latest configuration packages supported.

Suggested bash login change

if [[   -f "$HOME/.config/nvims/nvim_appnames" ]]; then
	source "$HOME/.config/nvims/nvim_appnames"
fi

So, you want to add your Neovim configuration so others can use it?

  1. Make a pull-request that updates neovim_distro with your GitHub URL and Branch.
  2. Your Neovim configuration MUST bootstrap itself.
  3. I'll test it on either Arch or Ubuntu.
  4. With 1, 2, and 3 passing. I'll merge your pull-request.

Update notification

  1. nvims appends to ~/.config/nvims/nvim_appnames
  2. nvims does not remove entries from ~/.config/nvims/nvim_appnames when nvims -d option is used.
  3. A future update will reconcile ~/.config/nvims/nvim_appnames with neovim_distros actually installed.

About

Safely experiment with multiple Neovim configurations.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages