1 " -------------------------------------------------------
3 " EdTheDev's Minimal .vimrc
5 " Everything belongs in a Vundle plugin.
6 " -------------------------------------------------------
8 " When setting up on a new machine, remember to:
10 " git clone https://github.com/gmarik/Vundle.vim.git
11 " ~/.vim/bundle/Vundle.vim
12 " vim +BundleInstall +qall
14 " Automatically setup Vundle on first run
15 if !isdirectory(expand("~/.vim/bundle/Vundle.vim"))
16 call system("git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle")
19 " Let the leader key be ,
25 " iPad and Android keyboards have no ESC Key
31 set nocompatible " be iMproved, required
33 set omnifunc=syntaxcomplete#Complete
35 filetype off " required
37 set rtp+=~/.vim/bundle/Vundle.vim
44 " let Vundle manage Vundle
46 Plugin 'gmarik/vundle'
48 " Helper scripts for editing ReStructuredText
49 Plugin 'edthedev/text-helper.vim'
51 " EdTheDev's Minion file organizer.
52 Plugin 'edthedev/minion'
53 " let g:minion_map_keys = 0
56 " Syntax helpers for ReStructuredText
57 Plugin 'edthedev/rst-syntax.vim'
59 " EdTheDev's Vim configuration for Python PEP8
60 Plugin 'edthedev/vim-pep8'
61 let g:minion_todo_map_keys = 1
64 " let g:vimroom_ctermbackground = "black"
68 " Plugin 'mjbrownie/Trac.vim'
70 " let g:tracServerList = {}
71 " let g:tracServerList['sdg'] =
72 "" \'http://username:password@trac.nukulele.org/login/xmlrpc'
74 "Plugin 'fmoralesc/vim-pad'
75 " let g:pad_dir='~/Copy/notes'
77 " Pelican.vim Revived!
78 Plugin 'edthedev/pelican.vim'
79 let g:pelican_blog_source = '~/Copy/blog'
80 let g:pelican_blog_html = '~/blog_html'
81 let g:pelican_git_master = 'git@bitbucket.org:edthedev/blog.git'
82 let g:pelican_publish_server = 'uiucedward@hathor.dreamhost.com:~/edward.delaporte.us'
84 " Low contrast color scheme for Gvim - much easier on the eyes.
85 Plugin 'junegunn/seoul256.vim'
87 " Display tag (function/method) outline
88 Plugin 'majutsushi/tagbar'
89 nmap <leader>t :TagbarToggle<Cr>
91 " EdTheDev's Vim configuration for TODO list items.
92 Plugin 'edthedev/vim-todo'
93 let g:vim_todo_keys = 1
95 " Automatic closing of parenthesis
96 " Plugin 'Raimondi/delimitMate'
97 " - Caused syntax color problems for RST?
99 " Browsing files made easier.
100 Plugin 'scrooloose/nerdtree'
101 nmap <leader>r :NERDTreeToggle<CR>
103 " Async dispatch by Tim Pope
104 Plugin 'tpope/vim-dispatch'
106 " Markdown highlighting
107 Plugin 'tpope/vim-markdown'
108 let g:markdown_github_languages = ['sh', 'python']
111 " Bundle 'vim-scripts/confluencewiki.vim'
112 " - Caused syntax color problems for RST?
114 "Plugin 'jceb/vim-orgmode'
115 "let g:org_todo_keywords=['TODO', 'DONE', 'WAITING', 'CANCELED']
116 "let g:org_agenda_files=['~/Google Drive/index.org']
118 " More obvious default behaviors
119 Plugin 'edthedev/wordlike.vim'
121 " Plugin 'xolox/vim-notes'
122 " Add @Tag search support
123 "Bundle 'fmoralesc/vim-pad'
124 " let g:pad_dir='~/Copy/notes'
126 " Distraction free writing.
127 Plugin 'junegunn/goyo.vim'
128 nnoremap <leader>w :Goyo<Cr>
129 " Limelight doesn't work with iterm
130 " Plugin 'junegunn/limelight.vim'
131 " nnoremap <leader>w :Goyo<Cr>:Limelight<Cr>
133 Plugin 'vim-scripts/pylint-mode'
134 let g:PyLintCWindow = 1
135 let g:PyLintSigns = 1
136 let g:PyLintOnWrite = 1
137 " let g:PyLintDissabledMessages = 'C0103,C0111,C0301,W0141,W0142,W0212,W0221,W0223,W0232,W0401,W0613,W0631,E1101,E1120,R0201,R0901,R0903,R0904,R0913'
138 " let g:PyLintDissabledMessages = 'C0103,C0111,C0301,W0141,W0142,W0212,W0221,W0223,W0232,W0401,W0613,W0631,E1101,E1120,R0201,R0901,R0903,R0904,R0913,E1002,E1103'
139 " let g:PyLintDissabledMessages = 'C0103,C0111,C0301,W0141,W0142,W0212,W0221,W0223,W0232,W0401,W0613,W0631,E1002,E1101,E1103,E1120,R0201,R0901,R0903,R0904,R0913'
140 let g:PyLintDissabledMessages = 'C0103,C0111,C0301,C0322,C0323,C0324,W0141,W0142,W0212,W0221,W0223,W0232,W0401,W0613,W0621,W0631,E0102,E0611,E1002,E1101,E1103,E1120,F0401,R0201,R0901,R0903,R0904,R0913'
142 " Help building Arduino source files.
143 Plugin 'edthedev/arduino.vim'
144 " Plugin 'edthedev/vim-arduino-ino'
145 let g:arduino_compile_command = 'ino build --board-model=atmega328'
146 " let g:arduino_compile_command = 'Dispatch ino build --board-model=atmega328'
147 let g:arduino_upload_command = 'ino upload --board-model=atmega328'
149 " Plugin 'tomswartz07/vim-todo'
151 " Run commands from the current line and get their output.
152 Plugin 'edthedev/cmd.vim'
154 Plugin 'itchyny/thumbnail.vim'
157 " Plugin 'farseer90718/vim-taskwarrior'
158 " let g:task_rc_override = 'defaultwidth=999'
159 " Plugin 'farseer90718/vim-taskwarrior'
160 " let g:task_rc_override = 'defaultwidth=0'
161 " let g:task_report_name = 'list'
162 " Read up on it here: https://github.com/farseer90718/vim-taskwarrior
165 " For REST APIs Press QQ in normal mode to open.
166 Plugin 'nicwest/QQ.vim'
168 " Plugin 'scrooloose/syntastic'
170 Plugin 'mihaifm/bufstop'
171 nn <leader>b :Bufstop<CR> " get a visual on the buffers
172 map <leader>a :BufstopModeFast<CR> " a command for quick switching
174 " Sensible defaults for Markdown
175 " Plugin 'plasticboy/vim-markdown'
176 " set nofoldenable "Do not fold everything
178 " Ctrl P on steroids...
179 " Plugin 'Shougo/unite.vim'
181 " Better status line.
182 Plugin 'bling/vim-airline'
184 " Plugin 'vimwiki/vimwiki'
185 " let g:vimwiki_list = [{'path': '~/Box Sync/wiki', 'path_html': '~/cites_wiki_html/'},{'path': '~/Dropbox/wiki', 'path_html': '~/vim_wiki_html/'}]
187 " Emacs style kill-paste ring
188 " Plugin 'vim-scripts/YankRing.vim'
190 " :h yankring-tutorial
193 " Plugin 'maksimr/vim-jsbeautify'
194 "Plugin 'einars/js-beautify'
196 " Plugin 'Delapouite/vim-javascript-syntax'
197 "Plugin 'pangloss/vim-javascript'
200 " Bundle 'othree/html5.vim'
201 "Bundle 'evidens/vim-twig'
202 "Bundle 'tokutake/twig-indent'
203 "Bundle 'groenewege/vim-less'
204 "Bundle 'hail2u/vim-css3-syntax'
208 " Bundle 'dahu/vim-asciidoc'
210 " Syntax Highlighting for AsiiDoc
211 " Poor color choices for dark theme: Plugin 'dagwieers/asciidoc-vim'
212 " Plugin 'traycerb/asciidoc-vim'
214 " Learn me! <cs - change surrounding, ds - delete sur, ys - add surrounding)
215 Plugin 'tpope/vim-surround'
217 " Quick complete of stuff...
218 " Plugin 'SirVer/ultisnips'
220 let g:UltiSnipsExpandTrigger="<tab>"
221 let g:UltiSnipsJumpForwardTrigger="<c-b>"
222 let g:UltiSnipsJumpBackwardTrigger="<c-z>"
224 " Snippets for ultisnips
225 Plugin 'edthedev/vim-snippets'
227 " Default to use strapdown and markdown for blog posts.
228 " UltiSnipsAddFiletypes markdown.strapdown
232 filetype plugin indent on " required for Vundle Bundle
234 " Page down with space key
236 " Shift space is undetectable in many terminals...
240 " If not something else, then asciidoc
241 set filetype=asciidoc
244 " Don't show tabs for HTML files. Do show trailing spaces."
245 au FileType html set nolist
246 au FileType javascript set nolist
248 " Two spaces as tabs in .feature files.
249 au BufRead,BufNewFile *.feature set filetype=yaml
250 au FileType yaml set tabstop=2
251 au FileType yaml set shiftwidth=2
252 au FileType yaml set expandtab
254 " Two spaces for Markdown files.
255 au BufRead,BufNewFile *.md set filetype=markdown
256 au FileType markdown set tabstop=2
257 au FileType markdown set shiftwidth=2
258 " au FileType yaml set expandtab
260 set softtabstop=4 " makes the spaces feel like real tabs
261 " Sensible default for everything else.