Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
libclang in Vim
Python VimL Ruby
branch: master
Failed to load latest commit information.
after/ftplugin/cpp Add ftplugin.
autoload Add set_library_file.
doc Fix #4.
plugin Fix SnowdropClearLogs.
snowdrop Add set_library_file.
.gitignore Add .gitignore.
README.md Fix typo.

README.md

snowdrop.vim

snowdrop.vim is libclang wrapper.

Requirement

  • Vim supported
    • +python
  • Clang 3.3 or 3.4
    • libclang dynamic link binary.
    • Windows : libclang.dll
    • Mac : libclang.dylib
    • Other : libclang.so

Supported

  • Goto definition/declaration.
    • :SnowdropGotoDefinition
  • Type of.
    • :SnowdropEchoTypeof
  • Typeof on balloon.
  • Function result type of.
    • :SnowdropEchoResultTypeof
  • Includes
    • :SnowdropEchoIncludes
    • :Unite snowdrop/includes
  • Outline
    • :Unite snowdrop/outline

Install

neobundle.vim

NeoBundle "osyo-manga/vim-snowdrop"

Setting

" set libclang directory path
let g:snowdrop#libclang_directory = "C:/llvm/bin"

" set include directory path.
let g:snowdrop#include_paths = {
\   "cpp" : [
\       "C:/cpp/boost",
\       "C:/cpp/sprout",
\   ]
\}

" set clang command options.
let g:snowdrop#command_options = {
\   "cpp" : "-std=c++1y",
\}

Example

Typeof.

" Type of cursor
:SnowdropEchoTypeof

typeof

Typeof on balloon.

function! s:cpp()
    setlocal balloonexpr=snowdrop#ballonexpr_typeof()
    setlocal ballooneval
endfunction

augroup my-cpp
    autocmd!
    autocmd FileType cpp call s:cpp()
augroup END

balloon

Result typeof.

:SnowdropEchoResultTypeof

resulttypeof

Include files.

:SnowdropEchoIncludes

include

Include files on unite.vim.

:Unite snowdrop/includes

unite-snowdrop_include

Outline on unite.vim.

:Unite snowdrop/outline

unite-snowdrop_outline

Code completion.

Use neocomplete.vim.

" Enable code completion in neocomplete.vim.
let g:neocomplete#sources#snowdrop#enable = 1

" Not skip
let g:neocomplete#skip_auto_completion_time = ""

code_complete

Future

Something went wrong with that request. Please try again.