Skip to content

rkruk/neovim-dotfiles

Repository files navigation

My Personal Neovim Dotfiles Configuration



This Vim Dotfile configuration is just a bit simplified and customised to my personal needs copy of amazing [Jeremy Mack](https://github.com/mutewinter) [dot_vim](https://github.com/mutewinter/dot_vim) repo. The only small differences here are: - Rewritten small part of configuration for Linux use only (Gentoo/Funtoo). Thus all files, plugins, configs for Mac Os X platform have been removed. - Configuration is stripped from all unnecessary things (I'm not so much into Ruby programming environment - so here I'm trying to keep it really minimal and just to run some basics).

Installation

Clone this repository:

git clone http:https://github.com/rkruk/neovim-dotfiles.git ~/.vim. cd ~/.vim.

Install it:

Run: scripts/setup.

And enjoy it! :)

Neovim Requirements

Prior to install you must run a few things. Make sure you have Neovim installed:

emerge -av app-editors/neovim

A "live" ebuild can be found in yngwin's developer overlay. For instructions on how to install the Python modules, see :help provider-python.

Plugin Requirements

Here's a list of plugins that require further installation or have dependencies.

  • Jellybeans A colorful, dark color scheme for Vim.

cd .vim && mkdir colors && cd colors && wget http:https://www.vim.org/scripts/download_script.php?src_id=17225

Or you can use Solarized Theme like I do for everything.

  • Fugitive Requires Git (ofc though) to be installed.

    On Funtoo you have git already installed at this point.. On Gentoo just do:

    emerge --ask dev-vcs/git

    and fill your git basic details:

    git config --global user.email "<[email protected]>"

    git config --global user.name "<larry_the_cow>"

    More here.

  • syntastic requires many different binaries installed depending on what filetypes you want it to check. Syntastic itself has rather relaxed requirements: it doesn't have any external dependencies, and it needs a version of Vim compiled with a few common features: autocmd, eval, file_in_path, modify_fname, quickfix, reltime, and user_commands .

    See the FAQ for more information.

  • Ag.vim requires The Silver Searcher to be installed. For Funtoo and Gentoo Linux systems - it is already in the repository:

    emerge -av the_silver_searcher

  • Source Code for Powerline the custom font I'm using for vim-airline.

    Download Source Code files from SourceCodePro Repo and copy them to .fonts directory in your /home directory.

  • CtrlP C Matching Extension requires compilation. More details in its readme.

    First, make sure that Python header files are installed on your system (you should have them on Gentoo/Funtoo already). And get extension files from ctrlp repo Copy it to the: ~/.vim/bundle/ directory.

    Then run the installation script:

    cd ~/.vim/bundle/ctrlp-cmatcher

    ./install.sh

  • underscore-cli for JSON formatting. To have it you must have nodejs and NPM installed.

Gentoo:

cat /etc/portage/package.keywords

=net-libs/nodejs-0.10.10 ~amd64

Funtoo somehow doesn't need that argument to have it working.

Install nodejs:

emerge -av nodejs

then do:

curl https://npmjs.org/install.sh | sh

Finally install underscore-cli with the little help of npm:

npm install -g underscore-cli

Mappings

  • Typing jk insert mode is equivalent to Escape.
  • Pressing enter in normal mode saves the current buffer.

And many more. See mappings.vim and vundle_plugins for more.

Installing Custom Plugins

Create a new .vim file with the same name as the plugin you'd like to install in vundle_plugins/custom. Then add the installation block. For example:

vundle_plugins/custom/vim-move.vim

if exists('g:vundle_installing_plugins')
  Plugin 'matze/vim-move.vim'
  finish
endif

let g:move_key_modifier = 'C'

This example installs vim-move.

Currently Used Here Plugin List:

Plugin List

Stars___ Plugin Description
11,177 β˜… YouCompleteMe πŸ“„ A code-completion engine for Vim
7,633 β˜… vim-airline πŸ“„ lean & mean status/tabline for vim that's light as air
7,085 β˜… vim-fugitive πŸ“„ fugitive.vim: a Git wrapper so awesome, it should be illegal
6,526 β˜… nerdtree πŸ“„ A tree explorer plugin for vim.
3,789 β˜… vim-surround πŸ“„ surround.vim: quoting/parenthesizing made simple
3,246 β˜… emmet-vim emmet for vim: http:https://emmet.io/
2,601 β˜… vim-easymotion πŸ“„ Vim motions on speed!
2,470 β˜… ultisnips πŸ“„ UltiSnips - The ultimate snippet solution for Vim. Send pull requests to SirVer/ultisnips!
1,824 β˜… supertab Perform all your vim insert mode completions with Tab
1,714 β˜… vim-javascript Vastly improved Javascript indentation and syntax support in Vim.
1,689 β˜… vim-coffee-script CoffeeScript support for vim
1,530 β˜… vim-indent-guides πŸ“„ A Vim plugin for visually displaying indent levels in code
1,513 β˜… ctrlp.vim πŸ“„ Active fork of kien/ctrlp.vimβ€”Fuzzy file, buffer, mru, tag, etc finder.
1,465 β˜… vim-ruby Vim/Ruby Configuration Files
1,351 β˜… tabular πŸ“„ Vim script for text filtering and alignment
1,324 β˜… vim-startify πŸ“„ The fancy start screen for Vim.
1,271 β˜… vim-tmux-navigator πŸ“„ Seamless navigation between tmux panes and vim splits
1,261 β˜… ag.vim πŸ“„ Vim plugin for the_silver_searcher, 'ag', a replacement for the Perl module / CLI script 'ack'
1,217 β˜… gist-vim πŸ“„ vimscript for gist
1,198 β˜… vim-unimpaired unimpaired.vim: pairs of handy bracket mappings
1,195 β˜… vimux πŸ“„ vim plugin to interact with tmux
1,060 β˜… delimitMate πŸ“„ Vim plugin, provides insert mode auto-completion for quotes, parens, brackets, etc.
939 β˜… jellybeans.vim πŸ“„ A colorful, dark color scheme for Vim.
919 β˜… vim-signify πŸ“„ Show a diff via Vim sign column.
835 β˜… vim-repeat repeat.vim: enable repeating supported plugin maps with "."
786 β˜… vim-abolish abolish.vim: easily search for, substitute, and abbreviate multiple variants of a word
785 β˜… neomake πŸ“„ A plugin for asynchronous :make using Neovim's job-control functionality
686 β˜… html5.vim HTML5 omnicomplete and syntax
672 β˜… tcomment_vim πŸ“„ An extensible & universal comment vim-plugin that also handles embedded filetypes
672 β˜… vim-json A better JSON for Vim: distinct highlighting of keywords vs values, JSON-specific (non-JS) warnings, quote concealing. Pathogen-friendly.
634 β˜… vim-jsx πŸ“„ React JSX syntax highlighting and indenting for vim.
598 β˜… vim-jade Vim Pug (formerly Jade) template engine syntax highlighting and indention
578 β˜… vim-less vim syntax for LESS (dynamic CSS)
562 β˜… vim-session πŸ“„ Extended session management for Vim (:mksession on steroids)
562 β˜… vim-haml Vim runtime files for Haml, Sass, and SCSS
521 β˜… undotree The ultimate undo history visualizer for VIM
518 β˜… vim-eunuch eunuch.vim: helpers for UNIX
517 β˜… vim-endwise endwise.vim: wisely add "end" in ruby, endfunction/endif/more in vim script, etc
515 β˜… vim-textobj-user Vim plugin: Create your own text objects
478 β˜… splitjoin.vim πŸ“„ A vim plugin that simplifies the transition between multiline and single-line code
444 β˜… vim-ruby-refactoring Refactoring tool for Ruby in vim!
428 β˜… nerdtree-git-plugin A plugin of NERDTree showing git status
369 β˜… vim-css3-syntax Add CSS3 syntax support to vim's built-in syntax/css.vim.
365 β˜… swift.vim Vim runtime files for Swift
335 β˜… webapi-vim vim interface to Web API
312 β˜… MatchTagAlways πŸ“„ A Vim plugin that always highlights the enclosing html/xml tags
293 β˜… vim-cucumber Vim Cucumber runtime files
287 β˜… csv.vim A Filetype plugin for csv files
281 β˜… vim-bundler bundler.vim: Lightweight support for Ruby's Bundler
260 β˜… vim-textobj-rubyblock A custom text object for selecting ruby blocks.
248 β˜… vim-stylus Syntax Highlighting for Stylus
242 β˜… switch.vim πŸ“„ A simple Vim plugin to switch segments of text with predefined replacements
239 β˜… vim-markdown Markdown for Vim: a complete environment to create Markdown files with a syntax highlight that don't sucks!
203 β˜… vim-airline-themes A collection of themes for vim-airline
198 β˜… vim-misc Miscellaneous auto-load Vim scripts
187 β˜… vim-numbertoggle Toggles between relative and absolute line numbers automatically
182 β˜… vim-rake rake.vim: it's like rails.vim without the rails
172 β˜… vim-turbux πŸ“„ Turbo Ruby testing with tmux
159 β˜… vim-hardtime πŸ“„ Plugin to help you stop repeating the basic movement keys
142 β˜… open-browser.vim πŸ“„ Open URI with your favorite browser from your most favorite editor
112 β˜… ZoomWin πŸ“„ Zoom in/out of windows (toggle between one window and multi-window)
106 β˜… matchit.zip extended % matching for HTML, LaTeX, and many other languages
105 β˜… ember.vim πŸ“„ Vim plugin for the Emberjs frontend framework
101 β˜… vim-visual-star-search Start a * or # search from a visual block
96 β˜… colorv.vim πŸ“„ A powerful color tool in vim
81 β˜… vim-anzu πŸ“„ Vim search status.
76 β˜… vim-marked Open the current Markdown buffer in Marked.app
76 β˜… vim-handlebars [deprecated] Vim plugin for Handlebars
70 β˜… github-complete.vim Vim input completion for GitHub
60 β˜… L9 Vim-script library
58 β˜… portkey πŸ“„ Navigate files at the speed of Vim.
58 β˜… vim-togglecursor πŸ“„ Toggle the cursor shape in the terminal for Vim.
51 β˜… ListToggle πŸ“„ A vim plugin for toggling the display of the quickfix list and the location-list.
47 β˜… textile.vim Textile for VIM
44 β˜… Join a better :Join command in vim
40 β˜… QFEnter πŸ“„ Open a Quickfix item in a window you choose. (Vim plugin)
20 β˜… scratch.vim Plugin to create and use a scratch Vim buffer
11 β˜… vim-voogle πŸ“„ google for the word under the cursor to a browser because 2013
8 β˜… vim-tomdoc Simple vim plugin that adds TomDoc templates to your code.
7 β˜… indenthtml.vim πŸ“„ alternative html indent script
7 β˜… nginx.vim Syntax highlighting for nginx.conf and related config files.
3 β˜… swap-parameters Swap parameters of a function or a comma separated list with a single command.
3 β˜… GIFL πŸ“„ Add "wrap terms in google I'm feeling lucky url" Γ  la Textmate
2 β˜… taskpaper.vim This package contains a syntax file and a file-type plugin for the simple format used by the TaskPaper application.
1 β˜… tomdoc.vim A simple syntax add-on for vim that highlights your TomDoc comments.
1 β˜… vim-tmux http:https://tmux.svn.sourceforge.net/viewvc/tmux/trunk/examples/tmux.vim?view=log
1 β˜… HelpClose Close all help windows
0 β˜… vim-textobj-reactprop A vim text object for a React prop
0 β˜… vim-autoreadwatch A forked script for vim auto reloading of buffers when changed on disk.

I know.. a lot. But you won't even notice it rushing through all yours amazing files.

And Voila! Done.