forked from haydnKing/dotvim
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathvimrc
107 lines (93 loc) · 2.81 KB
/
vimrc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
" vim is not vi
set nocompatible
" load plugins
filetype on
filetype off
runtime bundle/vim-pathogen/autoload/pathogen.vim
call pathogen#infect()
filetype plugin indent on
" tabs and indentation
set tabstop=2
set softtabstop=2
set shiftwidth=2
set expandtab
set autoindent
" behaviour
set backspace=indent,eol,start
set mouse=a
set term=xterm-256color
set modelines=0
"set textwidth=79
set directory=~/.vim/tmp
set cursorline
hi CursorLine term=bold cterm=bold ctermbg=black guibg=Grey60
" enable pasting when in insert mode
set paste
" appearance
set encoding=utf-8
set termencoding=utf-8
set laststatus=2
"set colorcolumn=80
set wildmenu
set wildignore=*.pyc
set title
set showcmd
set showmode
"set visualbell
set nofoldenable
set ruler
" Powerline appearance
let Powerline_symbols = "unicode"
" searching
set hlsearch
set incsearch
set showmatch
set smartcase
set ignorecase
" colors
syntax enable
"set background=dark
"colorscheme solarized
" key bindings
let mapleader = ","
map <silent> <leader><space> ;noh<CR>
map <F5> :mksession! ~/.vim_session <cr> " Quick write session with F5
map <F6> :source ~/.vim_session <cr> " And load session with F6
nnoremap <leader>v V`]
nmap <silent> <leader>d "_d
vmap <silent> <leader>d "_d
nnoremap ' `
nnoremap ` '
" plugin key bindings
"nnoremap <F5> :GundoToggle<CR>
"map <F2> :NERDTreeToggle<CR>
"map <F3> :call FindInNERDTree()<CR>
" Unmap nerdcommenter's comment-invert, map instead change-inside-surroundings
"autocmd VimEnter * nunmap <Leader>ci
"autocmd VimEnter * nmap <script> <silent> <unique> <Leader>ci :ChangeInsideSurrounding<CR>
" filetype specific settings
autocmd FileType make setlocal noexpandtab
autocmd FileType ruby setlocal softtabstop=2 shiftwidth=2
autocmd FileType python set omnifunc=pythoncomplete#Complete
autocmd FileType python setlocal shiftwidth=4 tabstop=4
"autocmd FileType python setlocal textwidth=79
autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS
autocmd FileType html set omnifunc=htmlcomplete#CompleteTags
autocmd FileType css set omnifunc=csscomplete#CompleteCSS
autocmd FileType ruby,eruby set omnifunc=rubycomplete#Complete
autocmd FileType ruby,eruby let g:rubycomplete_buffer_loading = 1
autocmd FileType ruby,eruby let g:rubycomplete_rails = 1
autocmd FileType ruby,eruby let g:rubycomplete_classes_in_global = 1
autocmd BufNewFile,BufRead *.less set filetype=less
autocmd BufNewFile,BufRead Vagrantfile set filetype=ruby
autocmd BufNewFile,BufRead *.json set filetype=javascript
autocmd BufNewFile,BufRead *.json set tw=0
autocmd BufNewFile,BufRead *.ebnf set filetype=ebnf
autocmd BufNewFile,BufRead *.fasta set filetype=fasta
autocmd FileType fasta setlocal wrap!
" supertab
let g:SuperTabDefaultCompletionType = "context"
set completeopt=menuone,longest,preview
highlight Pmenu ctermbg=238 gui=bold
" matchit
"runtime macros/matchit.vim