Advertisement
Guest User

Untitled

a guest
Jan 24th, 2017
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VIM 6.00 KB | None | 0 0
  1. set nocompatible
  2. set clipboard+=unnamedplus
  3.  
  4. function! DoRemote(arg)
  5.   UpdateRemotePlugins
  6. endfunction
  7.  
  8. let g:acp_enableStartup = 0
  9.  
  10. call plug#begin()
  11. Plug 'Shougo/deoplete.nvim'
  12. Plug 'zchee/deoplete-go', { 'do': 'make'}
  13. Plug 'zchee/deoplete-clang'
  14. Plug 'artur-shaik/vim-javacomplete2'
  15. Plug 'fatih/vim-go'
  16. Plug 'scrooloose/nerdtree'
  17. Plug 'majutsushi/tagbar'
  18. Plug 'jiangmiao/auto-pairs'
  19. Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
  20. Plug 'easymotion/vim-easymotion'
  21. Plug 'Shougo/echodoc.vim'
  22. Plug 'fatih/molokai'
  23. Plug 'SirVer/ultisnips'
  24. Plug 'godoctor/godoctor.vim'
  25. call plug#end()
  26.  
  27. filetype plugin indent on
  28.  
  29. set completeopt+=noinsert,menuone,longest
  30. set completeopt-=preview
  31.  
  32. autocmd FileType java setlocal omnifunc=javacomplete#Complete
  33.  
  34. let g:UltiSnipsExpandTrigger="<Tab>"
  35. let g:UltiSnipsJumpForwardTrigger="<Tab>"
  36. let g:UltiSnipsJumpBackwardTrigger="<c-Tab>"
  37.  
  38. let g:deoplete#enable_at_startup = 1
  39. let g:deoplete#ignore_sources = {}
  40. let g:deoplete#ignore_sources._ = ['buffer', 'member', 'file', 'neosnippet']
  41. let g:deoplete#max_menu_width = 0
  42. " deoplete-clang opions
  43. let g:deoplete#sources#clang#libclang_path = "/usr/lib/libclang.so"
  44. let g:deoplete#sources#clang#clang_header ="/usr/include/clang/"
  45. let g:deoplete#sources#clang#sort_algo = "priority"
  46.  
  47. "disabled due to issue in deoplete-go
  48. let g:deoplete#sources#go#sort_class = ['package', 'func', 'type', 'var', 'const']
  49.  
  50. " Use partial fuzzy matches like YouCompleteMe
  51. call deoplete#custom#set('_', 'matchers', ['matcher_full_fuzzy'])
  52. call deoplete#custom#set('_', 'converters', ['converter_auto_paren'])
  53.  
  54. let g:deoplete#sources#go#align_class = 1
  55. let g:deoplete#sources#go#package_dot = 1
  56. let g:deoplete#sources#go#pointer = 1
  57.  
  58. set number
  59. "syntax enable
  60. colorscheme kalisi
  61. set background=dark
  62. hi Normal ctermbg=NONE
  63. let g:rehash256 = 1
  64. "let g:molokai_original = 1
  65. "colorscheme molokai
  66.  
  67. nmap <silent> <A-Up> :wincmd k<CR>
  68. nmap <silent> <A-Down> :wincmd j<CR>
  69. nmap <silent> <A-Left> :wincmd h<CR>
  70. nmap <silent> <A-Right> :wincmd l<CR>
  71.  
  72. " size of a hard tabstop
  73. set tabstop=4
  74.  
  75. " size of an "indent"
  76. set shiftwidth=4
  77.  
  78. " a combination of spaces and tabs are used to simulate tab stops at a width
  79. " other than the (hard)tabstop
  80. set softtabstop=4
  81.  
  82. map <PageUp> <C-U>
  83. map <PageDown> <C-D>
  84. imap <PageUp> <C-O><C-U>
  85. imap <PageDown> <C-O><C-D>
  86. imap <C-Tab> <C-x><C-o>
  87. set nostartofline
  88.  
  89. "------------------------------------------------------------------------------
  90. " NERDTree
  91. "------------------------------------------------------------------------------
  92.  
  93. " General properties
  94. let NERDTreeDirArrows=1
  95. let NERDTreeMinimalUI=1
  96. let NERDTreeIgnore=['\.o$', '\.pyc$', '\.php\~$']
  97. let NERDTreeWinSize = 35
  98.  
  99. " Make sure that when NT root is changed, Vim's pwd is also updated
  100. let NERDTreeChDirMode = 2
  101. let NERDTreeShowLineNumbers = 1
  102. let NERDTreeAutoCenter = 1
  103. let NERDTreeCascadeOpenSingleChildDir=0
  104.  
  105. " Locate file in hierarchy quickly
  106. map <leader>T :NERDTreeFind<cr>
  107.  
  108. " Toogle on/off
  109. nmap <leader>o :NERDTreeToggle<cr>
  110. let NERDTreeShowHidden=0
  111.  
  112. nmap <F8> :TagbarToggle<CR>
  113. let g:tagbar_type_go = {  
  114.     \ 'ctagstype' : 'go',
  115.     \ 'kinds'     : [
  116.         \ 'p:package',
  117.         \ 'i:imports',
  118.         \ 'c:constants',
  119.         \ 'v:variables',
  120.         \ 't:types',
  121.         \ 'n:interfaces',
  122.         \ 'w:fields',
  123.         \ 'e:embedded',
  124.         \ 'm:methods',
  125.         \ 'r:constructor',
  126.         \ 'f:functions'
  127.     \ ],
  128.     \ 'sro' : '.',
  129.     \ 'kind2scope' : {
  130.         \ 't' : 'ctype',
  131.         \ 'n' : 'ntype'
  132.     \ },
  133.     \ 'scope2kind' : {
  134.         \ 'ctype' : 't',
  135.         \ 'ntype' : 'n'
  136.     \ },
  137.     \ 'ctagsbin'  : 'gotags',
  138.     \ 'ctagsargs' : '-sort -silent'
  139. \ }
  140. let g:tagbar_autoclose = 0
  141. let g:tagbar_sort = 0
  142.  
  143.  
  144. "------------------------------------------------------------------------------
  145. " Vim-go
  146. "------------------------------------------------------------------------------
  147. let g:go_fmt_fail_silently = 1
  148. "let g:go_fmt_command = "gofmt" "Explicited the formater plugin (gofmt, goimports, goreturn...)
  149.  
  150. " Show a list of interfaces which is implemented by the type under your cursor
  151. au FileType go nmap <Leader>s <Plug>(go-implements)
  152.  
  153. " Show type info for the word under your cursor
  154. au FileType go nmap <Leader>I <Plug>(go-info)
  155.  
  156. " Open the relevant Godoc for the word under the cursor
  157. au FileType go nmap <Leader>gd <Plug>(go-doc)
  158. au FileType go nmap <Leader>gv <Plug>(go-doc-vertical)
  159.  
  160. " Open the Godoc in browser
  161. au FileType go nmap <Leader>gb <Plug>(go-doc-browser)
  162.  
  163. " Run/build/test/coverage/definiton
  164. au FileType go nmap <leader>r :update <CR> <Plug>(go-run)
  165. au FileType go nmap <leader>b :update <CR> <Plug>(go-build)
  166. au FileType go nmap <leader>i :update <CR> <Plug>(go-install)
  167. au FileType go nmap <leader>t :update <CR> <Plug>(go-test)
  168. au FileType go nmap <leader>m :update <CR> <Plug>(go-generate)
  169. au FileType go nmap <leader>c <Plug>(go-coverage)
  170. au FileType go nmap <leader>d <Plug>(go-def-tab)
  171.  
  172. nmap <leader>T :tabnew term://$SHELL <CR>
  173. nmap <leader>q :q <CR>
  174. inoremap <C-l> <c-l>:update<cr>
  175. nmap <C-l> :update<cr>
  176.  
  177. set completeopt+=noinsert
  178. let g:go_highlight_functions = 1
  179. let g:go_highlight_methods = 1
  180. let g:go_highlight_structs = 1
  181. let g:go_highlight_interfaces = 1
  182. let g:go_highlight_operators = 1
  183. let g:go_highlight_extra_types = 1
  184. let g:go_highlight_build_constraints = 1
  185. let g:go_highlight_types = 1
  186. let g:go_highlight_fields = 1
  187. let g:go_fmt_command = "goimports"
  188. let g:go_term_enabled = 0
  189. let g:go_auto_type_info = 1
  190. set updatetime=50
  191. let g:go_auto_sameids = 0
  192. let g:go_snippet_case_type = "camelcase"
  193.  
  194.  
  195. "This unsets the "last search pattern" register by hitting return
  196. nnoremap <CR> :noh<CR><CR>
  197. nnoremap <C-Left> :tabprevious<CR>
  198. nnoremap <C-Right> :tabnext<CR>
  199. nnoremap <C-w> :q<CR>
  200. tnoremap <Esc> <C-\><C-n>
  201.  
  202. vmap r "_dP
  203.  
  204. set ignorecase
  205. autocmd VimEnter * NERDTree
  206. set showtabline=2
  207.  
  208. "Map Enter to accept highlighted item from autocomplete
  209. :inoremap <expr> <CR> pumvisible() ? "\<C-y>" : "\<C-g>u\<CR>"
  210. set complete-=i
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement