Skip to content

Instantly share code, notes, and snippets.

@redcpp
Last active December 5, 2018 01:10
Show Gist options
  • Save redcpp/bc3c0a73e8f51a7b70fd7e812280ea6a to your computer and use it in GitHub Desktop.
Save redcpp/bc3c0a73e8f51a7b70fd7e812280ea6a to your computer and use it in GitHub Desktop.
vimrc file
" PLUGINS
" curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
" https://hackernoon.com/5-vim-plugins-i-cant-live-without-for-javascript-development-f7e98f98e8d5
call plug#begin('~/.local/share/nvim/plugged')
Plug 'vim-airline/vim-airline'
Plug 'scrooloose/nerdtree'
Plug 'kien/ctrlp.vim'
Plug 'posva/vim-vue'
Plug 'morhetz/gruvbox'
Plug 'w0rp/ale'
Plug 'wesQ3/vim-windowswap'
call plug#end()
" Plugin configuration
" Enable the list of buffer
let g:airline#extensions#tabline#enabled = 1
" Show just the filename
let g:airline#extensions#tabline#fnamemod = ':t'
map <C-n> :NERDTreeToggle<CR>
let g:ctrlp_map = '<c-p>'
let g:ctrlp_cmd = 'CtrlP'
let g:ctrlp_working_path_mode = 'ra'
let g:ctrlp_custom_ignore = 'node_modules\|DS_Store\|git'
let g:gruvbox_contrast_dark = 'hard'
let g:ale_fixers = {
\ '*': ['remove_trailing_lines', 'trim_whitespace'],
\ 'javascript': ['eslint', 'prettier'],
\}
let g:ale_lint_on_text_changed = 'never'
" Main configuration
filetype plugin on
filetype indent on
syntax enable
set autoread
let mapleader = ","
set ruler
set number
set relativenumber
set showcmd
set cursorline
set wildmenu
set lazyredraw
set showmatch
set laststatus=2
set background=dark
set termguicolors
colorscheme gruvbox
set tabstop=8 "Visual spaces per tab
set softtabstop=0 "Number of spaces
set expandtab "Tabs are spaces
set shiftwidth=4
set smarttab
set smartcase
set autoindent
set smartindent
autocmd Filetype vue setlocal tabstop=2
autocmd FileType javascript setlocal ts=2 sts=2 sw=2
" ts = 'number of spaces that <Tab> in file uses'
" sts = 'number of spaces that <Tab> uses while editing'
" sw = 'number of spaces to use for (auto)indent step'
autocmd BufNewFile,BufRead *.eslintrc set syntax=json
set mouse=a
set nowrap
set hidden
set incsearch
set hlsearch
nnoremap <leader><space> :nohlsearch<CR>
nmap <leader>t :set expandtab tabstop=4 shiftwidth=4 softtabstop=4<CR>
nmap <leader>m :set expandtab tabstop=2 shiftwidth=2 softtabstop=2<CR>
nnoremap <C-J> <C-W><C-J>
nnoremap <C-K> <C-W><C-K>
nnoremap <C-L> <C-W><C-L>
nnoremap <C-H> <C-W><C-H>
nnoremap j gj
nnoremap k gk
nnoremap B ^
nnoremap E $
inoremap jk <esc>
set splitbelow
set splitright
map <F5> :<C-U>!g++ -DLOCAL -O2 -std=c++14 -Wall -Wextra -Wno-unused-result -static %:r.cpp<CR>
map <F7> :<C-U>!./a.out < input.txt<CR>
map <F9> :<C-U>!./a.out < %:r.in<CR>
map <C-A> ggVG"+y
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment