Ⅰ. 插件描述
Module to Interact with libclang (and clang_indexer DB) from Vim.Ⅱ. 基本信息
|
Ⅲ. 安装方法
使用Vundle管理器安装
在你的.vimrc下添加:Plugin 'luchermitte/vim-clang-is-written-on'
… 然后在Vim中运行以下命令:
:source %
:PluginInstall
对于Vundle版本 < 0.10.2,请用上面的Bundle替换Plugin。
使用NeoBundle管理器安装
在你的.vimrc下添加:NeoBundle 'luchermitte/vim-clang-is-written-on'
… 然后在Vim中运行以下命令:
:source %
:NeoBundleInstall
使用VimPlug管理器安装
在你的.vimrc下添加:Plug 'luchermitte/vim-clang-is-written-on'
… 然后在Vim中运行以下命令:
:source %
:PlugInstall
使用Pathogen管理器安装
在终端中运行以下命令:cd ~/.vim/bundle
git clone https://github.com/luchermitte/vim-clang
Ⅳ. 文档说明
vim-clang
Module to Interact with libclang (and clang_indexer DB) from Vim.
Features:
- Inter-operates with clang_indexer DB
- Displays the references of the C++ symbol under the cursor with <leader>r
- Displays the declaration(s) of the C++ symbol under the cursor with <leader>d
- Displays the Subclasses of the C++ symbol under the cursor with <leader>s
- Encapsulates the updating of clang_indexer DB (which requires a project
configuration compatible with BuildToolsWrappers format)
Installation Requirements:
- Vim 7.3+, compiled with python support
- Python 2.x
- clang_complete
- clang_indexer
- lh-vim-lib,
lh-dev
Note: this module takes advantage of the following modules when they are
installed:
- BuildToolsWrappers
- my fork of Michael Geddes' buffer-menu
With vim-addon-manager, just install vim-clang, and let VAM take care of
installing all the vim dependencies. You'll still have to install Vim, Python,
and clang_indexer by yourself.
Note: this script hasn't been registered yet to VAM addons list.
Options:
- The options from clang_complete apply regarding libclang configuration
([bg]:clang_user_options that defines how to use libclang) located
- g:clang_key_usr, g:clang_key_declarations, g:clang_key_references, and
g:clang_key_subclasses, to override default choices to trigger vim-clang
features.
To do list:
- Interface à la taglist()
- Reimplements features from lh-dev and lh-cpp#analysisLib*.
Disclaimer:
This module is a fork of @exclipy's fork of
clang_complete.
The functions dedicated to the interaction with clang_indexer have been extracted,
and a few more will be added.
Licence:
getReferences() and getCurrentUser() functions are courtesy of exclipy.
Copyright 2013 Luc Hermitte
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. 