myvim /

Filename Size Date modified Message
1.1 KB
4.8 KB
2.2 KB


There will be multiple branches. The first branch will be the basic branch. The basic branch will stay true to vim defaults, adding PEP008 and basic onmicomplete, folding and path-hacking for django settings with few/no remaps. I will branch from here with a more featureful config with nerdtree, supertab and more.

The idea will be that one can check it out and symlink to $VIMRUNTIME and change configs just by checking out a different branch.

Current details of basic

  • Syntax highlighting

  • Indention

    • simple use of the following works:

      if has("autocmd")
        filetype plugin indent on

    I uncommented this from my global /etc/vim/vimrc

  • Folding

    • Just going to use indentation folds from the default .vimrc:

      :help fold
      zM to fold everything
      zR to unfold everything
      za to toggle the current fold
      zA to recursively toggle the current fold
      Everything is unfolded to start.
  • Code completion

    • Going with regular

      still <c-x><c-o> for omnicomplete (may remap to <s-tab>)
      still <c-p> for keyword completion (may remap to <tab>)
    • :help preview

      To see how to do things like close the preview viewport (:pc)

  • Django settings:

    There are two ways that you can get the settings module imported and be able to omnicomplete modules that rely on DJANGO_SETTINGS_MODULE:

    1) You can be in an environment with django and in the CWD, parent or grandparent
    2) You can be inside a virtualenv that contains pinax

supertab branch

The same as above except that code completion is context sensitive and you can get it with <tab>. So, if you are in insert mode and you have:

import django

you can start typing django and complete it with keyword completion:


then you can type . and <tab> again and get omnicompletion:


this will give you a dropdown between conf, core and contrib