sponsor Vim development Vim logo Vim Book Ad

videm : Vim's IDE Mode

 script karma  Rating 149/47, Downloaded by 9362  Comments, bugs, improvements  Vim wiki

created by
script type
Videm (Vim's IDE Mode) is a C/C++ IDE  based on vim (will become a common IDE framework in future, I think).
It named VimLite in past before I make it to a framework.
Videm is compatible with VimLite about configuration.
But all commands which in VimLite are renamed in videm, please run ':h videm.txt' for more information after installation.

Videm mainly consists of the following modules:
1.Project Manager:
    The project management module is compatible with CodeLite 2.10. It will auto generates makefile for you.
2.Code Completion:
    An enhanced OmniCpp and a VIMCCC plugin.
        OmniCpp - Support the following completion: namespace, structure, class member, using, using namespace, class template, stl, etc.
        VIMCCC - An Omni cpp code completion plugin which based on libclang.
        OmniCxx(Experimental) - A new simple code complete engine for C/C++, currently only support C and simple C++ without template.
3. Symbol Database:
    Cscope and gnu global.
4.Debugger Integration:
    Gdb integration, by pyclewn.

Please read videm.txt help file for more information.
And you also can reference the VimLite project http://www.vim.org/scripts/script.php?script_id=3647
install details

Make sure your vim's version is 7.3.196 or later and compile with this features:
    +netbeans_intg (required by debugger)

Videm depends following software:
    python-lxml (optional)
    libclang (version 3.0, required by VIMCCC)

On ubuntu (10.04), just run:
    sudo apt-get install python python-lxml build-essential gdb cscope global

On Windows, just installs python 2.x (2.6 or later) and pywin32(for pyclewn) from http://sourceforge.net/projects/pywin32/files/pywin32/

And make sure you have these settings in your vimrc file:
    set nocp
    filetype plugin on
    syntax on

Videm Installation (Linux):
1. Download videm-<version>-<build>.tar.bz2 and extract it
2. Put everything which in videm folder to ~/.vim, or put videm to ~/.vim/bundle if you use pathogen

After above steps, you can open videm workspace. Just run
:VidemOpen <workspace-name>.vlworkspace

3. If you wish use VIMCCC, please install libclang 3.0
4. If you wish use OmniCpp or OmniCxx, please install videm-tools

Videm-tools Installation(Linux):
1. Download videm-tools-<version>.tar.bz2 and extract it
2. Open videm workspace
3. Run 'Release' Batch Build (press '.' and select the menu)
4. After step 3, videm generates a videm folder in the root of videm-tools-{version} folder, just run "cp -r videm/* ~/.vim/_videm" or "cp -r videm/* ~/.vim/bundle/videm/_videm" if you use pathogen

1. Download videm-<version>-<build>.tar.bz2 and extract it
2. Put everything which in videm folder to $VIM\vimfiles (for example of mine: C:\Program Files\Vim\vimfiles) or put videm folder to $VIM\vimfiles\bundle if you use pathogen
3. Download win32bin-<version>.zip and extract it and put all files(exes and dlls) into $VIM\vimfiles\_videm\bin or $VIM\vimfiles\bundle\videm\_videm\bin if you use pathogen, and add this folder to the environment variable PATH
4. Install MinGW 4.x. You can download MinGW- in http://code.google.com/p/vimlite/downloads/detail?name=MinGW-
5. Add bin folder path (mine is D:\MinGW-4.4.1\bin) of MinGW to the environment variable PATH
6. Download videm-tools-<version>-win32.zip and extract it and put all folder (bin and lib) into $VIM\vimfiles\_videm\bin or $VIM\vimfiles\bundle\videm\_videm\bin if you use pathogen
7. (Optional) If you wish use code completion engine based on libclang, install libclang 3.0

Migrate From Old Version:
Since videm-1100, the folder placement is changed, so you need do some migration.
1. Just move ~/.videm/* to ~/.vim/_videm/ or ~/.vim/bundle/_videm/ if you use pathogen. On Windows just move $VIM\videm\* to $VIM\vimfiles\_videm\* or $VIM/vimfiles\bundle\_videm\ if you use pathogen.
2. Install the latest videm


NOTE: Macros for OmniCpp need update for glibc 4.7. Add the followings to 'Macros:' of Videm->'OmniCpp Tags Settings...' - 2013-12-11
// glibc 4.7
#define noexcept

    If you like Videm and want to help me to develop, you can give me some coins :-).
    My bitcoin wallet: 1E8iBxZWPh8vqEoGGMDZVBJV2gVF4hySny

rate this script Life Changing Helpful Unfulfilling 
script versions (upload new version)

Click on the package to download.

package script version date Vim version user release notes
videm-1102-build20140213.tar.bz2 1.102 2014-02-13 7.3 fanhe - Fixed a located file issue on old version vim
videm-1101-build20140211.tar.bz2 1.101 2014-02-11 7.3 fanhe - Fixed some open file issues
videm-1100-build20140127.tar.bz2 1.100 2014-01-26 7.3 fanhe - Added a new experimental code complete engine called omnicxx
- Added VPlugInfo command to show the plugin info
- Fixed a gtags updating issue on Windows
- Added asynchronous code complete framework for vimccc and omnicxx

NOTE1: This version change many things, please read above "Migrate From Old Version"
NOTE2: This version require vim 7.3.196 or later because the "InsertCharPre" autocmd
videm-1015-build20131211.tar.bz2 1.015 2013-12-11 7.3 fanhe - Fixed some error in help file videm.txt
- Fixed a omnicpp decode issue
- Fixed a environment variables setting issue
- Fixed a command running issue in vim which run without X
videm-1014-build20131208.tar.bz2 1.014 2013-12-08 7.3 fanhe - Added limited supporting of special working path of workspace, eg contains Chinese

NOTE: The debugger do not support special working path currently.
videm-1013-build20131124.tar.bz2 1.013 2013-11-24 7.3 fanhe - Fiexd a issue that cannot create new file on Windows
- Added some sanity check for adding files and virtual directories
- Fiexd a issue that displaying CWD in adding files dialog
videm-1012-Build20131030.tar.bz2 1.012 2013-10-30 7.3 fanhe - Fixed gtags updating issue on Windows
- Ignore invalid project file when adding an existing project
videm-1011-Build20131022.tar.bz2 1.011 2013-10-22 7.3 fanhe - Fixed a symbol database init issue
- Improved "Workspace Settings"
- Added "g:videm_user_options" global variable for set user options quickly
- Update help file videm.txt about new options
- Fixed some other issues
videm-tools-1.1.0-win32.zip 1.1.0 2013-10-11 7.3 fanhe - videm-tools for windows 32bit
win32bin-1.0.0.zip 1.0.0 2013-10-11 7.3 fanhe - Required programs for windows 32bit.
videm-1010-Build20131011.tar.bz2 1.010 2013-10-11 7.3 fanhe - Supported session, added option '.videm.wsp.AutoSession': 0
- Added option '.videm.symdb.Quickfix': 1
- Added commands VSymbolDatabaseInit and VSymbolDatabaseUpdate
- Added option '.videm.wsp.EnablePopUpMenu': 1
- Added Cut/Paste nodes operations of workspace, press <F1> in workspace buffer for more information
- Supported store file node under project node
- Added separating settings of code complete engine for per config of project
- Added VSearchSymbol* serial commands
videm-1004.tar.xz 1.004 2013-06-10 7.3 fanhe - Changed VLWDbg* commands to VDbg*
- Improved OmniCpp tags database performance.
- Fixed a workspace buffer refresh issue after add a new project.
videm-1003.tar.xz 1.003 2013-06-02 7.3 fanhe - Fixed a VIMCCC auto code completing issue.
- Fixed some other bugs.
- Updated help file.
videm-1002.tar.xz 1.002 2013-05-29 7.3 fanhe - Updated videm.txt help file.
- Fixed a vimccc issue about finding libclang.so.
videm-1001.tar.gz 1.001 2013-05-27 7.3 fanhe First Release
videm-tools-1.1.0.tar.bz2 1.001 2013-05-27 7.3 fanhe Initial upload
ip used for rating:

If you have questions or remarks about this site, visit the vimonline development pages. Please use this site responsibly.
Questions about Vim should go to the maillist. Help Bram help Uganda.