Last active
June 6, 2016 22:32
-
-
Save danmrichards/484ec143daf6e2df679aaf2f3584619d to your computer and use it in GitHub Desktop.
Neovim config
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| " Make Vim more useful | |
| set nocompatible | |
| " Use the OS clipboard by default (on versions compiled with `+clipboard`) | |
| " Set color scheme!¬ | |
| colorscheme Tomorrow-Night | |
| set clipboard=unnamed | |
| " Disable mode | |
| set noshowmode | |
| " Enhance command-line completion | |
| set wildmenu | |
| set wildmode=list:longest,full | |
| " Allow cursor keys in insert mode | |
| set esckeys | |
| " Allow backspace in insert mode | |
| set backspace=indent,eol,start | |
| " Optimize for fast terminal connections | |
| set ttyfast | |
| " Add the g flag to search/replace by default | |
| set gdefault | |
| " Use UTF-8 without BOM | |
| set encoding=utf-8 nobomb | |
| " Change mapleader | |
| let mapleader="," | |
| " Don’t add empty newlines at the end of files | |
| set binary | |
| set noeol | |
| if exists("&undodir") | |
| set undodir=~/.vim/undo | |
| endif | |
| set viminfo+=! " make sure vim history works | |
| map <C-J> <C-W>j<C-W>_ " open and maximize the split below | |
| map <C-K> <C-W>k<C-W>_ " open and maximize the split above | |
| set wmh=0 " reduces splits to a single line | |
| " Enable per-directory .vimrc files and disable unsafe commands in them | |
| set exrc | |
| set secure | |
| " Enable syntax highlighting | |
| syntax on | |
| " Highlight current line | |
| set cursorline | |
| " Make tabs as wide as two spaces | |
| set expandtab | |
| set shiftwidth=2 | |
| set softtabstop=2 | |
| set tabstop=2 | |
| " Enable line numbers | |
| set number | |
| " Highlight searches | |
| set hlsearch | |
| " Ignore case of searches | |
| set ignorecase | |
| " Highlight dynamically as pattern is typed | |
| set incsearch | |
| " Always show status line | |
| set laststatus=2 | |
| " Respect modeline in files | |
| set modeline | |
| set modelines=4 | |
| " Enable mouse in all modes | |
| set mouse=a | |
| " Disable error bells | |
| set noerrorbells | |
| " Don’t reset cursor to start of line when moving around. | |
| set nostartofline | |
| " Show the cursor position | |
| set ruler | |
| " Don’t show the intro message when starting Vim | |
| set shortmess=atI | |
| " Show the filename in the window titlebar | |
| set title | |
| " Show the (partial) command as it’s being typed | |
| set showcmd | |
| " Start scrolling three lines before the horizontal window border | |
| set scrolloff=3 | |
| " Strip trailing whitespace (,ss) | |
| function! StripWhitespace() | |
| let save_cursor = getpos(".") | |
| let old_query = getreg('/') | |
| :%s/\s\+$//e | |
| call setpos('.', save_cursor) | |
| call setreg('/', old_query) | |
| endfunction | |
| noremap <leader>ss :call StripWhitespace()<CR> | |
| " Save a file as root (,W) | |
| noremap <leader>W :w !sudo tee % > /dev/null<CR> | |
| " Automatic commands | |
| if has("autocmd") | |
| " Enable file type detection | |
| filetype on | |
| " Treat .json files as .js | |
| autocmd BufNewFile,BufRead *.json setfiletype json syntax=javascript | |
| endif | |
| " Plugins | |
| call plug#begin('~/.vim/plugged') | |
| Plug 'vim-airline/vim-airline' | |
| Plug 'vim-airline/vim-airline-themes' | |
| Plug 'airblade/vim-gitgutter' | |
| Plug 'https://github.com/tpope/vim-fugitive.git' | |
| Plug 'https://github.com/ctrlpvim/ctrlp.vim.git' | |
| Plug 'https://github.com/scrooloose/nerdtree.git' | |
| Plug 'scrooloose/syntastic' | |
| " Add plugins to &runtimepath | |
| call plug#end() | |
| " Airline config | |
| let g:airline_theme='tomorrow' | |
| let g:airline_powerline_fonts=1 | |
| " NERDTree config | |
| map <silent> <C-n> :NERDTreeToggle<CR> | |
| " Syntastic config | |
| set statusline+=%#warningmsg# | |
| set statusline+=%{SyntasticStatuslineFlag()} | |
| set statusline+=%* | |
| let g:syntastic_loc_list_height=5 | |
| let g:syntastic_always_populate_loc_list=1 | |
| let g:syntastic_auto_loc_list=1 | |
| let g:syntastic_check_on_open=1 | |
| let g:syntastic_check_on_wq=0 | |
| let g:syntastic_php_phpcs_args = " --standard=Drupal --extensions=php,module,inc,install,test,profile,theme" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment