mirror of
https://github.com/jdhao/nvim-config.git
synced 2025-06-08 14:14:33 +02:00
Update readme
This commit is contained in:
parent
4ea234bad9
commit
424337f9ae
166
README.md
166
README.md
@ -2,14 +2,15 @@
|
||||
|
||||
# Introduction
|
||||
|
||||
This is my Neovim configuration for all the platforms I use. `init.vim` is for
|
||||
terminal Neovim and `ginit.vim` is for GUI client for Neovim (currently I am
|
||||
using [neovim-qt](https://github.com/equalsraf/neovim-qt)) on Windows.
|
||||
This is my Neovim configuration for all the platforms I use (Linux, Windows and
|
||||
MacOS). `init.vim` is the config file for terminal Neovim, and `ginit.vim` is
|
||||
the additional config file for GUI client of Neovim (I am using
|
||||
[neovim-qt](https://github.com/equalsraf/neovim-qt) for now on Windows).
|
||||
|
||||
My configurations are heavily documented to make it as clear as possible. While
|
||||
you can download the whole configuration and replace yours, it is not
|
||||
recommended to do so. Good configurations are personal. Everyone should have
|
||||
his/her own unique configurations. You are encouraged to copy from this
|
||||
his or her unique configuration. You are encouraged to copy from this
|
||||
configuration the part you feel useful and add it to your own configuration.
|
||||
|
||||
## Features ##
|
||||
@ -21,52 +22,7 @@ configuration the part you feel useful and add it to your own configuration.
|
||||
+ Tags navigation via [tagbar](https://github.com/majutsushi/tagbar).
|
||||
+ Fast buffer jump via [vim-sneak](https://github.com/justinmk/vim-sneak).
|
||||
+ Open a file in current project quickly via [fzf](https://github.com/junegunn/fzf.vim).
|
||||
|
||||
# How to Install Neovim
|
||||
|
||||
## Linux
|
||||
|
||||
Follow the official guide and download the appimage from the [release
|
||||
page](https://github.com/neovim/neovim/releases/nightly).
|
||||
|
||||
For some Linux systems, you may not be able to run the appimage. You can
|
||||
directly download the tar ball from
|
||||
[here](https://github.com/neovim/neovim/releases/download/nightly/nvim-linux64.tar.gz)
|
||||
and extract it.
|
||||
|
||||
## Windows
|
||||
|
||||
The easiest way to install Neovim on Windows is via
|
||||
[chocolatey](https://chocolatey.org/install). First, install chocolatey. Then
|
||||
you can install neovim easily with
|
||||
|
||||
```
|
||||
# install latest version of neovim
|
||||
# choco install neovim --pre
|
||||
|
||||
choco install neovim
|
||||
```
|
||||
|
||||
To keep up-to-date with the latest features of Neovim, you may download the
|
||||
latest release from GitHub and extract it.
|
||||
|
||||
## Mac
|
||||
|
||||
It is recommended to install neovim via [Homebrew](https://brew.sh/) on maxOS.
|
||||
Simply run the following command:
|
||||
|
||||
```
|
||||
# if you want to install latest version of neovim
|
||||
# brew install --HEAD neovim
|
||||
|
||||
brew install neovim
|
||||
```
|
||||
|
||||
After Neovim is installed, you may need to add the directory where the neovim
|
||||
executable (`nvim` on Linux and Mac, `nvim.exe` on Windows) resides to your
|
||||
system `PATH`.
|
||||
|
||||
Make sure that you can call `nvim` from the command line after all these setup.
|
||||
+ ......
|
||||
|
||||
# Pre-requisite
|
||||
|
||||
@ -74,11 +30,11 @@ There are a few requirements if you want to use Neovim for efficient editing.
|
||||
|
||||
## Python
|
||||
|
||||
To use auto-completion and other features, you need to install Python3. The
|
||||
easiest way to install Python3 is via
|
||||
To use auto-completion and other features, you need to install Python 3. The
|
||||
easiest way to install Python 3 is via
|
||||
[Anaconda](https://www.anaconda.com/distribution/#download-section).
|
||||
|
||||
## pynvim
|
||||
## Pynvim
|
||||
|
||||
Neovim relies on [pynvim](https://github.com/neovim/pynvim) to communicate with
|
||||
plugins which utilizes its Python binding. Pynvim is required by plugin such as
|
||||
@ -86,7 +42,7 @@ Deoplete.
|
||||
|
||||
## Jedi
|
||||
|
||||
For Python source auto-completion to work, you need to install
|
||||
For Python code auto-completion to work, you need to install
|
||||
[Jedi](https://github.com/davidhalter/jedi):
|
||||
|
||||
```
|
||||
@ -101,7 +57,7 @@ other Git repositories.
|
||||
Since Git is usually pre-installed on Linux and Mac, you do not need to worry
|
||||
if you are on these two platforms. For Windows, install [Git for
|
||||
Windows](https://git-scm.com/download/win) and make sure you can call `git`
|
||||
from command line.
|
||||
from the command line.
|
||||
|
||||
## ctags
|
||||
|
||||
@ -110,10 +66,8 @@ In order to use tags related plugins such as
|
||||
[gutentags](https://github.com/ludovicchabant/vim-gutentags), you need to
|
||||
install a ctags distribution. Universal ctags is preferred.
|
||||
|
||||
To install ctags on Mac, [use
|
||||
Homebrew](https://github.com/universal-ctags/homebrew-universal-ctags). To
|
||||
install it Windows, [use
|
||||
chocolatey](https://chocolatey.org/packages/universal-ctags):
|
||||
To install ctags on Mac, [use Homebrew](https://github.com/universal-ctags/homebrew-universal-ctags).
|
||||
To install it Windows, [use chocolatey](https://chocolatey.org/packages/universal-ctags):
|
||||
|
||||
```
|
||||
choco install universal-ctags
|
||||
@ -121,15 +75,16 @@ choco install universal-ctags
|
||||
|
||||
To install it on Linux, you need to build it yourself. See
|
||||
[here](https://askubuntu.com/questions/796408/installing-and-using-universal-ctags-instead-of-exuberant-ctags/836521#836521).
|
||||
|
||||
Set its PATH properly and make sure you can call `ctags` from command line.
|
||||
|
||||
## Ripgrep
|
||||
|
||||
Ripgrep is fast greping tool available for both Linux, Windows and Mac. It is
|
||||
used by several searching plugins for Vim.
|
||||
Ripgrep is fast grep tool available for both Linux, Windows and Mac. It is used
|
||||
by several searching plugins.
|
||||
|
||||
For Windows and Mac, you can install it via chocolatey and homebrew. For Linux,
|
||||
you can download from the [release
|
||||
you can download from its [release
|
||||
page](https://github.com/BurntSushi/ripgrep/releases) and install it.
|
||||
|
||||
## Linters
|
||||
@ -142,22 +97,22 @@ your programming languages, you may need to install various linters.
|
||||
+ Vim script: [vint](https://github.com/Kuniwak/vint) (You may need to install
|
||||
the pre-release versions because of [this issue](https://github.com/Kuniwak/vint/issues/290)).
|
||||
|
||||
For other linters, please consult the linting plugin documentation. For Neomake
|
||||
(which is the linting plugin I currently use), a list of makers (i.e., linters)
|
||||
for different languages is listed
|
||||
For other linters, please consult the plugin documentation. For Neomake (which
|
||||
is the linting plugin I currently use), a list of makers (i.e., linters) for
|
||||
different languages is listed
|
||||
[here](https://github.com/neomake/neomake/wiki/Makers).
|
||||
|
||||
## Terminal emulators
|
||||
|
||||
Which [terminal emulator](https://en.wikipedia.org/wiki/Terminal_emulator)
|
||||
you are using can also affect the look of Neovim. Since Neovim
|
||||
support true colors, terminals which support true colors are recommended.
|
||||
For a list of terminals which support true colors, see
|
||||
Which [terminal emulator](https://en.wikipedia.org/wiki/Terminal_emulator) you
|
||||
are using greatly affects the appearance and functionalities of Neovim. Since
|
||||
Neovim supports true colors, terminals which support true colors are
|
||||
recommended. For a list of terminals which support true colors, see
|
||||
[here](https://github.com/termstandard/colors).
|
||||
|
||||
For Mac, you can use [iterm2](https://www.iterm2.com/). If you connect to Linux
|
||||
server on Windows, I recommend [wsltty](https://github.com/mintty/wsltty) and
|
||||
[cygwin](https://www.cygwin.com/), both of them use
|
||||
[Cygwin](https://www.cygwin.com/), both of them use
|
||||
[mintty](https://github.com/mintty/mintty) as the terminal emulator.
|
||||
|
||||
## Font
|
||||
@ -165,28 +120,79 @@ server on Windows, I recommend [wsltty](https://github.com/mintty/wsltty) and
|
||||
Since Vim-airline uses several symbols not available in normal font, you need
|
||||
to install [fonts here](https://github.com/powerline/fonts) to make vim-airline
|
||||
look pretty. I am using
|
||||
[Hack](https://github.com/powerline/fonts/tree/master/Hack) and it looks great.
|
||||
[Hack](https://github.com/powerline/fonts/tree/master/Hack), and it looks
|
||||
great.
|
||||
|
||||
# Settings
|
||||
# How to Install Neovim
|
||||
|
||||
There are various ways to install Neovim based on your system.
|
||||
|
||||
## Linux
|
||||
|
||||
Follow the official guide and download the appimage from the [release
|
||||
page](https://github.com/neovim/neovim/releases/nightly).
|
||||
|
||||
For some Linux systems, you may not be able to run the appimage. You can
|
||||
directly download the tar ball from
|
||||
[here](https://github.com/neovim/neovim/releases/download/nightly/nvim-linux64.tar.gz)
|
||||
and extract it to run Neovim.
|
||||
|
||||
## Windows
|
||||
|
||||
The easiest way to install Neovim on Windows is via
|
||||
[chocolatey](https://chocolatey.org/install). First, install chocolatey. Then
|
||||
you can install neovim easily with
|
||||
|
||||
```
|
||||
# install latest version of neovim
|
||||
# choco install neovim --pre
|
||||
|
||||
choco install neovim
|
||||
```
|
||||
|
||||
The Neovim that chocolatey installs may not the latest version. To keep
|
||||
up-to-date with the latest features of Neovim, you may download the latest
|
||||
release from GitHub and manually extract it.
|
||||
|
||||
## Mac
|
||||
|
||||
It is recommended to install neovim via [Homebrew](https://brew.sh/) on MacOS.
|
||||
Simply run the following command:
|
||||
|
||||
```
|
||||
brew install neovim
|
||||
# If you want to install latest version of neovim, use the following command
|
||||
# instead.
|
||||
# brew install --HEAD neovim
|
||||
```
|
||||
|
||||
After installing Neovim, you may need to add the directory where the Neovim
|
||||
executable (`nvim` on Linux and Mac, `nvim.exe` on Windows) resides to your
|
||||
system `PATH`.
|
||||
|
||||
Make sure that you can call `nvim` from the command line after all these setup.
|
||||
|
||||
# Nvim settings
|
||||
|
||||
# How to install this configuration
|
||||
|
||||
On Windows, put it under `$HOME/AppData/Local/nvim`[^1]. On Linux and Mac, put
|
||||
it under `~/.config/nvim`. First, you need to remove all the files under this
|
||||
folder, then use the following command to install this configuration:
|
||||
On Windows, the config is under the directory `$HOME/AppData/Local/nvim`[^1].
|
||||
On Linux and Mac, the directory is `~/.config/nvim`. First, you need to remove
|
||||
all the files under the config directory, then use the following command to
|
||||
install this configuration:
|
||||
|
||||
```
|
||||
git clone https://github.com/jdhao/nvim-config.git .
|
||||
```
|
||||
|
||||
After that, when you first open nvim, all the plugins in this configuration
|
||||
will be installed automatically for you. Since I use quite a lot of plugins
|
||||
(around 60 plugins), it may take a while for the installation process,
|
||||
depending on your network connection.
|
||||
After that, when you first open nvim, all the plugins included in this
|
||||
configuration will be installed automatically for you. Since I use quite a lot
|
||||
of plugins (around 60 plugins), it may take some time for the installation
|
||||
process, depending on your network connection.
|
||||
|
||||
# Trouble shooting
|
||||
|
||||
If you come across a issue, first you can use `:checkhealth` command provided
|
||||
If you come across an issue, you can first use `:checkhealth` command provided
|
||||
by `nvim` to trouble-shoot yourself. Please read carefully the messages
|
||||
provided by health check.
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user