Need help with vim-marching?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

osyo-manga
125 Stars 5 Forks 108 Commits 5 Opened issues

Description

Async clang code completion.

Services available

!
?

Need anything else?

Contributors list

# 150,387
Common ...
sed
object-...
Ruby
85 commits
# 11,106
github-...
Crystal
Electro...
phantom...
10 commits
# 284,402
Common ...
Vim
plugin-...
Neovim
2 commits
# 238,656
Objecti...
PHP
gcm
Laravel
1 commit
# 78,795
Shell
Zsh
C++
option-...
1 commit

marching.vim

Clang を使用して非同期で C++ のコード補完を行うためのプラグインです。

Document in English is here.

Requirement

Screencapture

test

marching1

marching2

Setting

" clang コマンドの設定
let g:marching_clang_command = "C:/clang.exe"

" オプションを追加する " filetype=cpp に対して設定する場合 let g:marching#clang_command#options = { \ "cpp" : "-std=gnu++1y" }

" インクルードディレクトリのパスを設定 let g:marching_include_paths = [ \ "C:/MinGW/lib/gcc/mingw32/4.6.2/include/c++" \ "C:/cpp/boost" ]

" neocomplete.vim と併用して使用する場合 let g:marching_enable_neocomplete = 1

if !exists('g:neocomplete#force_omni_input_patterns') let g:neocomplete#force_omni_input_patterns = {} endif

let g:neocomplete#force_omni_input_patterns.cpp = \ '[^.[:digit:] \t]%(.|->)\w|\h\w*::\w*'

" 処理のタイミングを制御する " 短いほうがより早く補完ウィンドウが表示される " ただし、marching.vim 以外の処理にも影響するので注意する set updatetime=200

" オムニ補完時に補完ワードを挿入したくない場合 imap (marching_start_omni_complete)

" キャッシュを削除してからオムに補完を行う imap (marching_force_start_omni_complete)

" _数値 から始まる候補を無視する let g:marching#default_config = { \ "ignore_pat" : '^_\D' }

" 非同期ではなくて、同期処理でコード補完を行う場合 " この設定の場合は vimproc.vim に依存しない " let g:marching_backend = "sync_clang_command"

Future

  • C++ 以外の対応
    • Objective-C
  • スニペットの対応
  • neocomplete.vim との連携

License

NYSL

NYSL English

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.