All Projects → Optixal → Neovim Init.vim

Optixal / Neovim Init.vim

🏮 The perfect Neovim configuration for productive people who wants to level up their Vim experience with a clean, minimal-looking aesthetic, as well as a highly extensible, easily customizable set of popular tools and shortcuts to boost productivity. 🏮

Programming Languages

javascript
184084 projects - #8 most used programming language
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Neovim Init.vim

Xcactionbar
"Alfred for Xcode" plugin
Stars: ✭ 1,217 (+176.59%)
Mutual labels:  productivity, plugins, tools
Furo
A clean customizable documentation theme for Sphinx
Stars: ✭ 267 (-39.32%)
Mutual labels:  clean, minimal, customizable
Vim Monokai Tasty
VIM Colour scheme
Stars: ✭ 279 (-36.59%)
Mutual labels:  neovim, vimrc
Spacevim
A community-driven modular vim/neovim distribution - The ultimate vimrc
Stars: ✭ 17,558 (+3890.45%)
Mutual labels:  neovim, vimrc
Autocomplete.js
Simple autocomplete pure vanilla Javascript library.
Stars: ✭ 3,428 (+679.09%)
Mutual labels:  customizable, autocomplete
Incrementproductview
Interesting concept of products incrementation
Stars: ✭ 262 (-40.45%)
Mutual labels:  custom, customizable
Vim Language Server
VImScript language server, LSP for vim script
Stars: ✭ 264 (-40%)
Mutual labels:  neovim, autocomplete
Flow.launcher
Launch apps with greater control, search files effortlessly and extend features with community plugins. Fast and fluid productivity tool of choice that helps your workflow.
Stars: ✭ 288 (-34.55%)
Mutual labels:  productivity, plugins
slimline
Minimal, customizable, fast and elegant ZSH prompt
Stars: ✭ 48 (-89.09%)
Mutual labels:  minimal, customizable
Stup
Daily notes in the terminal 🐧
Stars: ✭ 340 (-22.73%)
Mutual labels:  productivity, tools
Vue Simple Suggest
Feature-rich autocomplete component for Vue.js
Stars: ✭ 324 (-26.36%)
Mutual labels:  customizable, autocomplete
Mydotfiles
All my dot configuration files.
Stars: ✭ 359 (-18.41%)
Mutual labels:  neovim, vimrc
Coc Flutter
flutter support for (Neo)vim
Stars: ✭ 259 (-41.14%)
Mutual labels:  neovim, autocomplete
dotfiles
My arch setup script and dotfiles
Stars: ✭ 37 (-91.59%)
Mutual labels:  vimrc, neovim
vimrc
My neovim config
Stars: ✭ 43 (-90.23%)
Mutual labels:  vimrc, neovim
Androidstudiopluginsnplay
A list of cool/useful Android studio plugins 🔌
Stars: ✭ 296 (-32.73%)
Mutual labels:  plugins, tools
Dotfiles
Configuration for Linux, Nix, i3, Kitty, Fish, Neovim and more
Stars: ✭ 379 (-13.86%)
Mutual labels:  neovim, vimrc
nvim
Blazing fast neovim setup with 120 plugins.
Stars: ✭ 108 (-75.45%)
Mutual labels:  vimrc, neovim
nvimrc
vimrc for neovim written in lua
Stars: ✭ 99 (-77.5%)
Mutual labels:  vimrc, neovim
Fiddler Plus
自定义的Fiddler规则,多环境切换、解决跨域开发、快速调试线上代码必备|高效调试分析利器
Stars: ✭ 325 (-26.14%)
Mutual labels:  tools, configuration

Optixal's Neovim init.vim

Normal usage.

Normal Usage Example

Minimal, focussed sessions with Goyo.

Goyo Minimal Example

Multi-windowed editing with NerdTree and TagBar sidebars.

Multi-Window Example

Installing and Updating

Install

Automated Installation

Run ./install.sh

Manual Installation

#!/bin/bash -e

# Make config directory for Neovim's init.vim
mkdir -p ~/.config/nvim

# Install nvim (and its dependencies: pip3, git), Python 3 and ctags (for tagbar)
sudo apt update
sudo apt install neovim python3 python3-pip git curl exuberant-ctags -y

# Install virtualenv to containerize dependencies
python3 -m pip install virtualenv
python3 -m virtualenv -p python3 ~/.config/nvim/env

# Install pip modules for Neovim within the virtual environment created
source ~/.config/nvim/env/bin/activate
pip install neovim==0.2.6 jedi psutil setproctitle yapf
deactivate

# Install vim-plug plugin manager
curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

# (Optional but recommended) Install a nerd font for icons and a beautiful airline bar (https://github.com/ryanoasis/nerd-fonts/tree/master/patched-fonts) (I'll be using Iosevka for Powerline)
curl -fLo ~/.fonts/Iosevka\ Term\ Nerd\ Font\ Complete.ttf --create-dirs https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/Iosevka/Regular/complete/Iosevka%20Term%20Nerd%20Font%20Complete.ttf

# (Optional) Alias vim -> nvim
echo "alias vim='nvim'" >> ~/.bashrc

# Enter Neovim and install plugins using a temporary init.vim, which avoids warnings about missing colorschemes, functions, etc
sed '/call plug#end/q' init.vim > ~/.config/nvim/init.vim
nvim -c ':PlugInstall' -c ':UpdateRemotePlugins' -c ':qall'
rm ~/.config/nvim/init.vim

# Copy init.vim in current working directory to nvim's config location ...
cp init.vim ~/.config/nvim/

Update

Update plugins (super simple)

nvim
:PlugUpdate

(Optional) Clean plugins - Deletes unused plugins

nvim
:PlugClean

(Optional) Check, download and install the latest vim-plug

nvim
:PlugUpgrade

(Optional) Pull my updates if you want my new modifications

git pull
cp init.vim ~/.config/nvim/

Note

For Non-GUI Users

  • Colorschemes may not be rendered
  • Changing fonts may be harder (https://unix.stackexchange.com/a/49823), if you do not intend to do customize your font, you should uncomment the devicons plugin within "init.vim" (" Plug 'ryanoasis/vim-devicons')

Mapped Commands in Normal Mode

Most custom commands expand off my map leader, keeping nvim as vanilla as possible.

  • , - Map leader, nearly all my custom mappings starts with pressing the comma key
  • ,q - Sidebar filetree viewer (NERDTree)
  • ,w - Sidebar classes, functions, variables list (TagBar)
  • \ - Toggle both NERDTree and TagBar
  • ,ee - Change colorscheme (with fzf fuzzy finder)
  • ,ea - Change Airline theme
  • ,e1 - Color mode: Dracula (Dark)
  • ,e2 - Color mode: Seoul256 (Between Dark & Light)
  • ,e3 - Color mode: Forgotten (Light)
  • ,e4 - Color mode: Zazen (Black & White)
  • ,r - Refresh/source ~/.config/nvim/init.vim
  • ,t - Trim all trailing whitespaces
  • ,a - Auto align variables (vim-easy-align), eg. do ,a= while your cursor is on a bunch of variables to align their equal signs
  • ,s - New terminal in horizontal split
  • ,vs - New terminal in vertical split
  • ,d - Automatically generate Python docstrings while cursor is hovering above a function or class
  • ,f - Fuzzy find a file (fzf)
  • ,g - Toggle Goyo mode (Goyo), super clean and minimalistic viewing mode
  • ,h - Toggle rainbow parentheses highlighting
  • ,j - Set filetype to "journal" which makes the syntax highlighting beautiful when working on regular text files and markdown
  • ,k - Toggle coloring of hex colors
  • ,l - Toggle Limelight mode (Limelight), highlight the lines near cursor only
  • ,c<Space> - Toggle comment for current line (Nerd Commenter)
  • <Alt-r> - Toggle RGB color picker
  • <Tab> - Next buffer
  • <Shift-Tab> - Previous buffer

More commmands at https://github.com/Optixal/.vim/blob/master/reference/commands_vim.txt

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].