deoplete-clang - deoplete.nvim source for C/C++/Obj-C/Obj-C++ with clang-python3

  •        90

The dark powered asynchronous completion framework for Neovim. It offers a fast, fully asynchronous, nonblocking user interface, customizable sources for each languages, and more. The Next generation of word completion.A Python 3 port of the official clang compiler bindings for Python. The original author is @Anteru, I forked it and follow the latest of llvm clang.



Related Projects

color_coded - A vim plugin for libclang-based highlighting of C, C++, ObjC

  •    C++

color_coded is a vim plugin that provides realtime (fast), tagless code highlighting for C++, C, and Objective C using libclang. First, install all required dependencies.

tmux-complete.vim - Vim plugin for insert mode completion of words in adjacent tmux panes

  •    Vim

You're happily editing your lovely files in Vim, when you notice you need to type a word that you can see in a different Tmux pane right next to Vim. This might be some secret key found in your REPL or the name of a failing test. Usually the interesting text is too short to warrant switching panes and going into Tmux' copy mode, so you end typing it out again.

alchemist.vim - Elixir Integration Into Vim

  •    Elixir

You need to have Erlang(OTP >= 19) and Elixir installed in your machine. You can find more about short keys, commands and configs here.

deoplete.nvim - :stars: Dark powered asynchronous completion framework for neovim/Vim8

  •    Python

Deoplete is the abbreviation of "dark powered neo-completion". It provides an extensible and asynchronous completion framework for neovim/Vim8. deoplete will display completions via complete() by default.

emacs-clang-complete-async - An emacs plugin to complete C and C++ code using libclang

  •    Emacs

emacs-clang-complete-async is an emacs extension to complete C and C++ code, it uses libclang to parse the source code on the fly and provides completion candidates to auto-complete ( This extension is not implemented in pure elisp, it is made up of a client part (auto-complete-clang-async.el, written in elisp) and a server part (clang-complete binary, written in C), they work cooperately in asynchonous client-server fashion.

vim-config - Lean mean (Neo)Vim machine, carefully crafted with :heart: Use with Neovim v0

  •    Vim

Lean mean Neo/vim machine, 30-45ms startup time. Best with Neovim or Vim 8 with +python3 extensions enabled.

EverVim - A Modern, Powerful & Modular Vim Distribution

  •    Vim

EverVim is the ultimate vim distribution that supports NeoVim, Vim, GVim and MacVim. It ships with tons of powerful features through vim plugins, which makes it easy to get started for both newcomers and experienced users. The distribution is completely customizable using a ~/.EverVim.vimrc Vim config files.

irony-mode - A C/C++ minor mode for Emacs powered by libclang

  •    Emacs

irony-mode is an Emacs minor-mode that aims at improving the editing experience for the C, C++ and Objective-C languages. It works by using a combination of an Emacs package and a C++ program (irony-server) exposing libclang. These dependencies will be installed automatically when using the standard installation procedure described below.

cppast - Library to parse and work with the C++ AST

  •    C++

Library interface to the C++ AST — parse source files, synthesize entities, get documentation comments and generate code. If you're writing a tool that needs access to the C++ AST (i.e. documentation generator, reflection library, …), your only option apart from writing your own parser is to use clang. It offers three interfaces for tools, but the only one that really works for standalone applications is libclang. However, libclang has various limitations and does not expose the entire AST.

rtags - A c/c++ client/server indexer for c/c++/objc[++] with integration for Emacs based on clang.

  •    C++

RTags is a client/server application that indexes C/C++ code and keeps a persistent file-based database of references, declarations, definitions, symbolnames etc. There’s also limited support for ObjC/ObjC++. It allows you to find symbols by name (including nested class and namespace scope). Most importantly we give you proper follow-symbol and find-references support. We also have neat little things like rename-symbol, integration with clang’s “fixits” ( We also integrate with flymake using clang’s vastly superior errors and warnings. Since RTags constantly will reindex “dirty” files you get live updates of compiler errors and warnings. Since we already know how to compile your sources we have a way to quickly bring up the preprocessed output of the current source file in a buffer. While existing taggers like gnu global, cscope, etags, ctags etc do a decent job for C they often fall a little bit short for C++. With its incredible lexical complexity, parsing C++ is an incredibly hard task and we make no bones about the fact that the only reason we are able to improve on the current tools is because of clang ( RTags is named RTags in recognition of Roberto Raggi on whose C++ parser we intended to base this project but he assured us clang was the way to go. The name stuck though.

codechecker - CodeChecker is an analyzer tooling, defect database and viewer extension for the Clang Static Analyzer and Clang Tidy

  •    Python

CodeChecker is a static analysis infrastructure built on the LLVM/Clang Static Analyzer toolchain, replacing scan-build in a Linux or macOS (OS X) development environment. In OSX environment the intercept-build tool from scan-build is used to log the compiler invocations.

vim-markdown-composer - An asynchronous markdown preview plugin for Vim and Neovim

  •    Rust

vim-markdown-composer is a plugin that adds asynchronous Markdown preview to Neovim and Vim. By default, vim-markdown-composer uses a blazing-fast CommonMark (and GitHub)-compliant renderer. However, it can be configured to use any external program for rendering, such as pandoc.

vim-clang-format - Vim plugin for clang-format, a formatter for C, C++, Obj-C, Java, JavaScript, TypeScript and ProtoBuf

  •    Vim

This plugin formats your code with specific coding style using clang-format. Copy plugin, doc and autoload directories into your ~/.vim or use :packadd in Vim8. Or please use your favorite plugin manager to install this plugin. I recommend latter.

nvim-typescript - Typescript tooling for Neovim

  •    Javascript

First make sure you have Neovim 0.2.1 or highter. This includes the node-host that is required for this plugin. You will need a global install of the neovim client as well. This will make sure that neovim and node can communicate.

vim-lsp - async language server protocol plugin for vim and neovim

  •    Vim

Async Language Server Protocol plugin for vim8 and neovim. Note: async.vim is required and is used to normalize jobs between vim8 and neovim.

vimr - Project VimR — Refined Neovim experience for macOS

  •    Swift

Project VimR is an attempt to refine the Neovim experience (or just YA Neovim GUI for mac OS). The goal is to build an editor that uses Neovim inside with many of the convenience GUI features similar to those present in modern editors. We mainly use Swift, but also use Objective-C when its C-nature helps. NvimView is VimR's Cocoa Framework which bundles everything, e.g. Neovim's runtime-files, needed to embed Neovim in a Cocoa App. See the wiki for more details.

ClangFormat-Xcode - Xcode plug-in to to use clang-format from in Xcode and consistently format your code with Clang

  •    Objective-C

An Xcode plug-in to format your code using Clang's format tools, by @travisjeffery. With clang-format you can use Clang to format your code to styles such as LLVM, Google, Chromium, Mozilla, WebKit, or your own configuration.

Oni - new kind of editor, powered by Neovim

  •    TypeScript

Oni is a new kind of editor, focused on maximizing productivity - combining modal editing with features you expect in modern editors. Oni is built with neovim, and inspired by VSCode, Atom, LightTable, and Emacs. The vision of Oni is to build an editor that allows you to go from thought to code as easily as possible - bringing together the raw editing power of Vim, the feature capabilities of Atom/VSCode, and a powerful and intuitive extensibility model - wrapped up in a beautiful package. This repository is under active development, and until 1.0 please consider everything unstable.

dein.vim - :zap: Dark powered Vim/Neovim plugin manager

  •    Vim

Dein.vim is a dark powered Vim/Neovim plugin manager. Note: If you use Vim 7.4, please use dein.vim ver.1.5 instead.