Last active
February 25, 2020 23:49
-
-
Save enwuft/ab1cc44f45d891470de6daab06802734 to your computer and use it in GitHub Desktop.
This file contains 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
" syntax | |
syntax off | |
"***************************************************************************** | |
"" Basic Setup | |
"*****************************************************************************" | |
"" Encoding | |
set encoding=utf-8 | |
set fileencoding=utf-8 | |
set fileencodings=utf-8 | |
set ttyfast | |
set formatoptions=tcqrn1 | |
set expandtab | |
set noshiftround | |
set laststatus=2 | |
set showmode | |
set showcmd | |
"" Fix backspace indent | |
set backspace=indent,eol,start | |
"" Tabs. May be overridden by autocmd rules | |
set tabstop=4 | |
set softtabstop=0 | |
set shiftwidth=4 | |
set expandtab | |
"" Map leader to , | |
let mapleader=',' | |
"" Enable hidden buffers | |
set hidden | |
"" Searching | |
set hlsearch | |
set incsearch | |
set ignorecase | |
set smartcase | |
set fileformats=unix,dos,mac | |
if exists('$SHELL') | |
set shell=$SHELL | |
else | |
set shell=/bin/sh | |
endif | |
" history : how many lines of history VIM has to remember | |
set history=4000 | |
set number | |
set modelines=0 | |
set ruler | |
set updatetime=300 | |
set shortmess+=c | |
set signcolumn=yes | |
set title | |
set titleold="Terminal" | |
set titlestring=%F | |
"***************************************************************************** | |
"" Functions | |
"***************************************************************************** | |
if !exists('*s:setupWrapping') | |
function s:setupWrapping() | |
set wrap | |
set wm=2 | |
set textwidth=79 | |
endfunction | |
endif | |
" ruby | |
let g:rubycomplete_buffer_loading = 1 | |
let g:rubycomplete_classes_in_global = 1 | |
let g:rubycomplete_rails = 1 | |
augroup vimrc-ruby | |
autocmd! | |
autocmd BufNewFile,BufRead *.rb,*.rbw,*.gemspec setlocal filetype=ruby | |
autocmd FileType ruby set tabstop=2|set shiftwidth=2|set expandtab softtabstop=2 | |
augroup END | |
let g:tagbar_type_ruby = { | |
\ 'kinds' : [ | |
\ 'm:modules', | |
\ 'c:classes', | |
\ 'd:describes', | |
\ 'C:contexts', | |
\ 'f:methods', | |
\ 'F:singleton methods' | |
\ ] | |
\ } | |
" rust | |
" Vim racer | |
au FileType rust nmap gd <Plug>(rust-def) | |
au FileType rust nmap gs <Plug>(rust-def-split) | |
au FileType rust nmap gx <Plug>(rust-def-vertical) | |
au FileType rust nmap <leader>gd <Plug>(rust-doc) | |
" typescript | |
let g:yats_host_keyword = 1 | |
" vuejs | |
" vim vue | |
let g:vue_disable_pre_processors=1 | |
" vim vue plugin | |
let g:vim_vue_plugin_load_full_syntax = 1 | |
" Searching | |
nnoremap / /\v | |
vnoremap / /\v | |
set hlsearch | |
set incsearch | |
set ignorecase | |
set smartcase | |
set showmatch | |
map <leader><space> :let @/=''<cr> " clear search | |
set nocompatible " be iMproved, required | |
filetype plugin indent on " required | |
" set the runtime path to include Vundle and initialize | |
set rtp+=~/.vim/bundle/Vundle.vim | |
call vundle#begin() | |
Plugin 'valloric/youcompleteme' | |
Plugin 'VundleVim/Vundle.vim' | |
Plugin 'tpope/vim-fugitive' | |
Plugin 'rstacruz/sparkup', {'rtp': 'vim/'} | |
Plugin 'vim-airline/vim-airline' | |
Plugin 'scrooloose/nerdtree' | |
Plugin 'nsf/gocode', {'rtp': 'vim/'} | |
Plugin 'davidhalter/jedi-vim' | |
Plugin 'raimon49/requirements.txt.vim', {'for': 'requirements'} | |
" ruby | |
Plugin 'tpope/vim-rails' | |
Plugin 'tpope/vim-rake' | |
Plugin 'tpope/vim-projectionist' | |
Plugin 'thoughtbot/vim-rspec' | |
Plugin 'ecomba/vim-ruby-refactoring' | |
" rust | |
" Vim racer | |
Plugin 'racer-rust/vim-racer' | |
Plugin 'rust-lang/rust.vim' | |
Plugin 'airblade/vim-gitgutter' | |
Plugin 'Xuyuanp/nerdtree-git-plugin' | |
Plugin 'ryanoasis/vim-devicons' | |
call vundle#end() " required | |
filetype plugin indent on " required | |
"" NERDTree configuration | |
let g:NERDTreeChDirMode=2 | |
let g:NERDTreeIgnore=['\.rbc$', '\~$', '\.pyc$', '\.db$', '\.sqlite$', '__pycache__'] | |
let g:NERDTreeSortOrder=['^__\.py$', '\/$', '*', '\.swp$', '\.bak$', '\~$'] | |
let g:nerdtree_tabs_focus_on_files=1 | |
let g:NERDTreeMapOpenInTabSilent = '<RightMouse>' | |
let g:NERDTreeWinSize = 30 | |
set wildignore+=*/tmp/*,*.so,*.swp,*.zip,*.pyc,*.db,*.sqlite | |
map <C-n> :NERDTreeToggle<CR> | |
"" Switching windows | |
noremap <C-j> <C-w>j | |
noremap <C-k> <C-w>k | |
noremap <C-l> <C-w>l | |
noremap <C-h> <C-w>h | |
" rust | |
" Vim racer | |
au FileType rust nmap gd <Plug>(rust-def) | |
au FileType rust nmap gs <Plug>(rust-def-split) | |
au FileType rust nmap gx <Plug>(rust-def-vertical) | |
au FileType rust nmap <leader>gd <Plug>(rust-doc) | |
autocmd StdinReadPre * let s:std_in=1 | |
autocmd VimEnter * if argc() == 1 && isdirectory(argv()[0]) && !exists("s:std_in") | exe 'NERDTree' argv()[0] | wincmd p | ene | exe 'cd '.argv()[0] | endif |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment