You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

179 lines
5.1 KiB

8 years ago
8 years ago
8 years ago
7 years ago
8 years ago
8 years ago
8 years ago
7 years ago
7 years ago
8 years ago
8 years ago
7 years ago
7 years ago
7 years ago
8 years ago
7 years ago
7 years ago
7 years ago
7 years ago
8 years ago
8 years ago
7 years ago
8 years ago
8 years ago
8 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
8 years ago
8 years ago
7 years ago
  1. " Install Vim Plug if not installed
  2. if empty(glob('~/.config/nvim/autoload/plug.vim'))
  3. silent !curl -fLo ~/.config/nvim/autoload/plug.vim --create-dirs
  4. \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
  5. autocmd VimEnter * PlugInstall
  6. endif
  7. call plug#begin()
  8. " Plugins
  9. " Plug 'vim-lumiliet/vim-twigsyntastic/syntastic'
  10. Plug 'blueshirts/darcula'
  11. Plug 'ctrlpvim/ctrlp.vim'
  12. Plug 'FelikZ/ctrlp-py-matcher'
  13. Plug 'jeetsukumaran/vim-filebeagle'
  14. Plug 'bling/vim-airline'
  15. Plug 'vim-airline/vim-airline-themes'
  16. Plug 'scrooloose/nerdtree'
  17. Plug 'christoomey/vim-tmux-navigator'
  18. Plug 'editorconfig/editorconfig-vim'
  19. "Plug 'Valloric/YouCompleteMe', { 'do': './install.py' }
  20. Plug 'mhinz/vim-grepper'
  21. Plug 'tomtom/tcomment_vim'
  22. Plug 'lumiliet/vim-twig'
  23. Plug 'roxma/nvim-completion-manager'
  24. " Colorschemes
  25. Plug 'whatyouhide/vim-gotham'
  26. Plug 'flazz/vim-colorschemes'
  27. " Syntax Checking
  28. Plug 'neomake/neomake', { 'on': 'Neomake' }
  29. "HTML & CSS
  30. Plug 'hail2u/vim-css3-syntax'
  31. Plug 'othree/html5.vim'
  32. Plug 'mattn/emmet-vim'
  33. Plug 'Valloric/MatchTagAlways'
  34. Plug 'digitaltoad/vim-jade'
  35. "Javascript
  36. Plug 'pangloss/vim-javascript'
  37. Plug 'jelera/vim-javascript-syntax'
  38. Plug 'leafgarland/typescript-vim'
  39. Plug 'moll/vim-node'
  40. Plug 'samuelsimoes/vim-jsx-utils'
  41. Plug 'mlaursen/vim-react-snippets'
  42. Plug 'alampros/vim-react-keywords'
  43. Plug 'mxw/vim-jsx'
  44. Plug 'posva/vim-vue'
  45. Plug 'SirVer/ultisnips'
  46. Plug 'honza/vim-snippets'
  47. Plug 'ternjs/tern_for_vim', { 'for': ['javascript', 'javascript.jsx'] }
  48. " Plug 'carlitux/deoplete-ternjs', { 'for': ['javascript', 'javascript.jsx'] }
  49. Plug 'othree/jspc.vim', { 'for': ['javascript', 'javascript.jsx'] }
  50. "PHP
  51. Plug 'tanarurkerem/drupal-snippets'
  52. Plug 'jaredly/vim-debug'
  53. Plug 'roxma/nvim-cm-php-language-server', {'do': 'composer install && composer run-script parse-stubs'}
  54. " Python Plugins
  55. " Plug 'zchee/deoplete-jedi'
  56. "Git plugin
  57. Plug 'tpope/vim-fugitive'
  58. " Lua
  59. Plug 'xolox/vim-misc'
  60. Plug 'xolox/vim-lua-ftplugin'
  61. "Markdown
  62. Plug 'godlygeek/tabular'
  63. Plug 'plasticboy/vim-markdown'
  64. let g:vim_markdown_folding_disabled = 1
  65. " Donnie says this is important
  66. function! DoRemote(arg)
  67. UpdateRemotePlugins
  68. endfunction
  69. " Plug 'Shougo/deoplete.nvim', { 'do': function('DoRemote') }
  70. call plug#end()
  71. let g:airline#extensions#tabline#enabled = 1
  72. let g:airline#extensions#neomake#enabled = 0
  73. autocmd! BufWritePost * Neomake
  74. if has("autocmd")
  75. " Drupal *.module and *.install files.
  76. augroup module
  77. autocmd BufRead,BufNewFile *.module set filetype=php
  78. autocmd BufRead,BufNewFile *.install set filetype=php
  79. autocmd BufRead,BufNewFile *.test set filetype=php
  80. autocmd BufRead,BufNewFile *.inc set filetype=php
  81. autocmd BufRead,BufNewFile *.profile set filetype=php
  82. autocmd BufRead,BufNewFile *.view set filetype=php
  83. augroup END
  84. endif
  85. syntax on
  86. colorscheme gotham
  87. set tabstop=2
  88. set expandtab
  89. set shiftwidth=2
  90. set smartcase
  91. set hlsearch
  92. set number
  93. set autoindent
  94. set incsearch
  95. set clipboard+=unnamed
  96. set noswapfile
  97. set t_Co=256
  98. set hidden
  99. set relativenumber
  100. set list listchars=tab:»·,trail,nbsp
  101. set termguicolors
  102. let g:airline_theme="gotham"
  103. "add .p8 as lua for pico-8
  104. au BufNewFile,BufRead *.p8 set filetype=lua
  105. "deoplete stuff
  106. " let g:deoplete#enable_at_startup = 1
  107. " let g:deoplete#enable_ignore_case = 1
  108. " let g:deoplete#enable_smart_case = 1
  109. " let g:deoplete#enable_camel_case = 1
  110. " let g:deoplete#enable_refresh_always = 1
  111. " let g:deoplete#max_abbr_width = 0
  112. " let g:deoplete#max_menu_width = 0
  113. " let g:deoplete#omni#input_patterns = get(g:,'deoplete#omni#input_patterns',{})
  114. " let g:deoplete#omni#input_patterns.java = [
  115. " \'[^. \t0-9]\.\w*',
  116. " \'[^. \t0-9]\->\w*',
  117. " \'[^. \t0-9]\::\w*',
  118. " \]
  119. " let g:deoplete#omni#input_patterns.jsp = ['[^. \t0-9]\.\w*']
  120. " let g:deoplete#omni#input_patterns.php = '\h\w*\|[^. \t]->\%(\h\w*\)\?\|\h\w*::\%(\h\w*\)\?'
  121. " let g:deoplete#ignore_sources = {}
  122. " let g:deoplete#ignore_sources.java = ['omni']
  123. " let g:deoplete#omni#functions = {}
  124. " let g:deoplete#omni#functions.javascript = [
  125. " \ 'tern#Complete',
  126. " \]
  127. " let g:deoplete#omni#input_patterns.javascript = '[^. \t]\.\w*'
  128. " call deoplete#custom#set('javacomplete2', 'mark', '')
  129. " call deoplete#custom#set('_', 'matchers', ['matcher_full_fuzzy'])
  130. "call deoplete#custom#set('omni', 'min_pattern_length', 0)
  131. " inoremap <expr><C-h> deoplete#mappings#smart_close_popup()."\<C-h>"
  132. " inoremap <expr><BS> deoplete#mappings#smart_close_popup()."\<C-h>"
  133. "Nertree Toggle
  134. map <C-n> :NERDTreeToggle<CR>
  135. let NERDTreeShowHidden=1
  136. " enable all Python syntax highlighting features
  137. let python_highlight_all = 1
  138. "Option + Left and Right switch buffers
  139. "execute "set <M-Right>=\e\eC"
  140. "execute "set <M-Left>=\e\eD"
  141. nnoremap <silent> <C-Right> :bnext<CR>
  142. nnoremap <silent> <C-Left> :bprevious<CR>
  143. nnoremap <silent> <C-Del> :bd<CR>
  144. "sort scss alphabetically
  145. nnoremap <C-a> :g#\({\n\)\@<=#.,/\.*[{}]\@=/-1 sort<CR>
  146. ":h i_CTRL-V
  147. "Make TComment work as I expect
  148. noremap <leader>/ :TComment <CR>
  149. vmap <leader>/ :TCommentBlock<CR>
  150. "Syntastic default settings
  151. set statusline+=%#warningmsg#
  152. set statusline+=%{SyntasticStatuslineFlag()}
  153. set statusline+=%*
  154. " let g:syntastic_always_populate_loc_list = 1
  155. " let g:syntastic_auto_loc_list = 1
  156. " let g:syntastic_check_on_open = 1
  157. " let g:syntastic_check_on_wq = 0