These lua configurations were based on the amazing videos of [chris@machine], the source repo is here.
Oficial site: https://github.com/neovim/neovim/wiki/Installing-Neovim
Feel free to install the way you want, I like to use asdf
to install and manage my neovim.
- To install asdf I cloned the repo and source it in my
~/.bash_profile
. The how to guide and many other options are available here - Install asdf-neovim plugin (
asdf plugin add neovim
) - You can list the neovim versions available with
asdf list-all neovim
- And install one specific version or the stable or nightly builds
- My current setup:
-
asdf install neovim 0.7.2
-
asdf global neovim 0.7.2
After that, you can open the neovim typing: nvim
in your prompt.
This setup uses packer.nvim. The list of all plugins are available at plugins.lua. Languages that are supported:
- Clojure
- Dart / Flutter
It's open to contributions. In the future I want to support Elixir, Sql and Ruby. Feel free to open a pull request or maintain your fork.
To use the nvim settings, clone the repo and make an nvim
alias on $HOME/.config
directory.
$ cd ~/.config
$ git clone https://github.com/rogerleite/nvim-setup.git
$ ln -s nvim-setup/ nvim
Before opening nvim, it's important to install some plugin dependencies. (No problem if you opened, it'll show a packer message with plugins install and probably the parinfer-rust failed)
This is important if you use Clojure mode:
In order to use parinfer-rust you need to install rust. Feel free to install the way you want, my suggestion is to use asddf
because is very practical.
- To install asdf I cloned the repo and source it in my
~/.bash_profile
. The how to guide and many other options are available here - Install asdf-rust plugin:
$ asdf plugin add rust
- You can list the rust versions available with:
asdf list-all rust
- Parinfer-rust expects rust >= 1.36
- My current setup:
-
$ RUST_WITHOUT=rust-docs asdf install rust 1.63.0
-
$ asdf global rust 1.63.0
-
$ source ~/.asdf/installs/rust/1.63.0/env
-
$ rustup default 1.63.0
If you have some errors about parinfer when you open Clojure code, you can try to build a new release using:
$ cd ~/.local/share/nvim/site/pack/packer/opt/parinfer-rust
$ cargo build --release
At this point, your nvim should be opening and not showing any error message.
To make the icons work (from nvim-tree and lualine for example), you need a font patched with nerd font. I like to use JetBrainsMono.
Brew (macOS only)
Tap the font cask to make the Jetbrains Mono font available :
$ brew tap homebrew/cask-fonts
Install it using the font-jetbrains-mono cask:
$ brew install --cask font-jetbrains-mono
$ brew install --cask font-jetbrains-mono-nerd-font
Manual instalation for Linux/Mac/Windows https://github.com/ryanoasis/nerd-fonts/blob/master/patched-fonts/JetBrainsMono/font-info.md#manual-installation
Change your terminal font to the one with nerd font patched. If you use iterm2 like me, you can change the font in Preferences -> Profile -> Text.
Telescope suggested dependencies.
You can have an analysis of your Telescope dependencies using: :checkhealth telescope
in nvim.
The non optional dependencies for me are:
- BurntSushi/ripgrep is required for
live_grep
andgrep_string
. Install link. - fd is a simple, fast and user-friendly alternative to
find
. install link.
** macOs users can use brew**
$ brew install ripgrep
$ brew install fd
In the first time you open some Clojure code (in the bottom right shows clojure when detected), you can check your LSP install (inside nvim) with:
:LspInfo
If it shows "0 client(s) attached to this buffer", it means you need to install it.
To install a LSP server (inside nvim):
:LspInstall
It'll show a LSP installer modal with the status and it should works.
TODO
TODO