Skip to content

Commit

Permalink
for osx
Browse files Browse the repository at this point in the history
  • Loading branch information
yuncliu committed Dec 23, 2015
1 parent 876b6d0 commit 5a4003b
Show file tree
Hide file tree
Showing 3 changed files with 107 additions and 15 deletions.
5 changes: 5 additions & 0 deletions clang_complete
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
-DDEBUG
-I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/c++/4.2.1
-I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include
-I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/net
-I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/netinet
8 changes: 1 addition & 7 deletions install.sh
Original file line number Diff line number Diff line change
@@ -1,14 +1,8 @@
if [ -f ~/.vimrc ]; then
echo "no ~/.vimrc"
else
cp ~/.vim/vimrc ~/.vimrc
fi
cp ~/.vim/clang_complete ~/.clang_complete

if [ -d ~/.vim/bundle/Vundle.vim ]; then
echo "vundle is already installed"
else
git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim
fi
vim +PluginInstall +qall
#clang_complete
#apt-get install libclang-dev
109 changes: 101 additions & 8 deletions vimrc
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,10 @@ Plugin 'jistr/vim-nerdtree-tabs'
Plugin 'vim-scripts/minibufexpl.vim'
Plugin 'vim-scripts/taglist.vim'
Plugin 'vim-scripts/autocomplpop'
Plugin 'omnicppcomplete'
"Plugin 'https://github.com/Rip-Rip/clang_complete.git'
Plugin 'https://github.com/Shougo/neocomplete.vim.git'
Plugin 'https://github.com/Shougo/neosnippet.vim.git'
Plugin 'https://github.com/Shougo/neosnippet-snippets.git'
Plugin 'https://github.com/Rip-Rip/clang_complete.git'
Plugin 'https://github.com/Lokaltog/vim-powerline.git'
Plugin 'supertab'
call vundle#end()
Expand All @@ -33,15 +35,16 @@ filetype plugin on
colorscheme inkpot

"omnicppcomplete
let OmniCpp_SelectFirstItem=2
let OmniCpp_MayCompleteScpe=1
let OmniCpp_NamespaceSearch=1
let OmniCpp_DefaultNamespaces = ["std"]
set completeopt=menu
"let OmniCpp_SelectFirstItem=2
"let OmniCpp_MayCompleteScpe=1
"let OmniCpp_NamespaceSearch=1
"let OmniCpp_DefaultNamespaces = ["std"]
"set completeopt=menu
"set tags+=~/.vim/stdcpp.tags

"clang_complete
"set completeopt=menu
set completeopt=menu
let g:clang_library_path='/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib'
"let g:clang_use_library=1

"Tlist
Expand Down Expand Up @@ -70,3 +73,93 @@ nnoremap <silent> <F3> :NERDTreeTabsToggle<CR>
nnoremap <silent> <F8> <C-W>w
nnoremap <silent> <F12> :Tlist <CR>
"map <F10> :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<CR>
"
"Note: This option must set it in .vimrc(_vimrc). NOT IN .gvimrc(_gvimrc)!
" Disable AutoComplPop.
let g:acp_enableAtStartup = 0
" Use neocomplete.
let g:neocomplete#enable_at_startup = 1
" Use smartcase.
let g:neocomplete#enable_smart_case = 1
" Set minimum syntax keyword length.
let g:neocomplete#sources#syntax#min_keyword_length = 3
let g:neocomplete#lock_buffer_name_pattern = '\*ku\*'

" Define dictionary.
let g:neocomplete#sources#dictionary#dictionaries = {
\ 'default' : '',
\ 'vimshell' : $HOME.'/.vimshell_hist',
\ 'scheme' : $HOME.'/.gosh_completions'
\ }

" Define keyword.
if !exists('g:neocomplete#keyword_patterns')
let g:neocomplete#keyword_patterns = {}
endif
let g:neocomplete#keyword_patterns['default'] = '\h\w*'

" Plugin key-mappings.
inoremap <expr><C-g> neocomplete#undo_completion()
inoremap <expr><C-l> neocomplete#complete_common_string()
" Recommended key-mappings.
" <CR>: close popup and save indent.
inoremap <silent> <CR> <C-r>=<SID>my_cr_function()<CR>
function! s:my_cr_function()
return (pumvisible() ? "\<C-y>" : "" ) . "\<CR>"
" For no inserting <CR> key.
"return pumvisible() ? "\<C-y>" : "\<CR>"
endfunction
" <TAB>: completion.
inoremap <expr><TAB> pumvisible() ? "\<C-n>" : "\<TAB>"
" <C-h>, <BS>: close popup and delete backword char.
inoremap <expr><C-h> neocomplete#smart_close_popup()."\<C-h>"
inoremap <expr><BS> neocomplete#smart_close_popup()."\<C-h>"
" Close popup by <Space>.
"inoremap <expr><Space> pumvisible() ? "\<C-y>" : "\<Space>"

" AutoComplPop like behavior.
"let g:neocomplete#enable_auto_select = 1

" Shell like behavior(not recommended).
"set completeopt+=longest
"let g:neocomplete#enable_auto_select = 1
"let g:neocomplete#disable_auto_complete = 1
"inoremap <expr><TAB> pumvisible() ? "\<Down>" : "\<C-x>\<C-u>"

" Enable omni completion.
autocmd FileType css setlocal omnifunc=csscomplete#CompleteCSS
autocmd FileType html,markdown setlocal omnifunc=htmlcomplete#CompleteTags
autocmd FileType javascript setlocal omnifunc=javascriptcomplete#CompleteJS
autocmd FileType python setlocal omnifunc=pythoncomplete#Complete
autocmd FileType xml setlocal omnifunc=xmlcomplete#CompleteTags

" Enable heavy omni completion.
if !exists('g:neocomplete#sources#omni#input_patterns')
let g:neocomplete#sources#omni#input_patterns = {}
endif
"let g:neocomplete#sources#omni#input_patterns.php = '[^. \t]->\h\w*\|\h\w*::'
"let g:neocomplete#sources#omni#input_patterns.c = '[^.[:digit:] *\t]\%(\.\|->\)'
"let g:neocomplete#sources#omni#input_patterns.cpp = '[^.[:digit:] *\t]\%(\.\|->\)\|\h\w*::'

" For perlomni.vim setting.
" https://github.com/c9s/perlomni.vim
let g:neocomplete#sources#omni#input_patterns.perl = '\h\w*->\h\w*\|\h\w*::'

" Plugin key-mappings.
imap <C-k> <Plug>(neosnippet_expand_or_jump)
smap <C-k> <Plug>(neosnippet_expand_or_jump)
xmap <C-k> <Plug>(neosnippet_expand_target)
" SuperTab like snippets behavior.
"imap <expr><TAB>
" \ pumvisible() ? "\<C-n>" :
" \ neosnippet#expandable_or_jumpable() ?
" \ "\<Plug>(neosnippet_expand_or_jump)" : "\<TAB>"
smap <expr><TAB> neosnippet#expandable_or_jumpable() ?
\ "\<Plug>(neosnippet_expand_or_jump)" : "\<TAB>"
" For conceal markers.
if has('conceal')
set conceallevel=2 concealcursor=niv
endif

0 comments on commit 5a4003b

Please sign in to comment.