Skip to content
Switch branches/tags
Go to file
This branch is 455 commits ahead of vim-scripts:master.


Failed to load latest commit information.
Latest commit message
Commit time



This plugin provides:

  • Background compilation using latexmk.
  • Completion for commands, environments, labels, bibtex entries, and inline maths.
  • A simple table of contents improving the navigation of large files.
  • Smart indentation.
  • Highlight matching \begin/\end and \left\right pairs.
  • Motion between \begin/\end and \left\right pairs with the % key.
  • Motion through brackets/braces (with user-defined keys).
  • Environment objects (e.g., select environement with "vie" or "vae").
  • Inline math objects (e.g., select inline math with "vi$" or "va$").
  • Folding of parts (part/chapter/section/etc) and environments.
  • OmniCompletion for bibliography entries respects BibLaTeX's \addbibresource, \addglobalbib and \addsectionbib commands.
  • The table of contents functionality does not depend anymore on the assumption that \@writefile{toc}{\contentsline ...} entries in the *.aux file always occur at the start of some line.
  • Completion of \ref{...} commands was completely rewritten. It is now able to handle \@newlabel{label}{{number}{page}...} entries in the *.aux file even if number or page contain arbitrary nested levels of braces. Labels are additionally held in a cache per *.aux file, which is updated only if the modification time of the file changes.
  • The table of contents now opens files different from the one currently being edited in a new buffer. (I actually think, that this behaviour was implemented already, but I could not get it working.) To make this work, LaTeX-Box is not loaded per buffer but globally.

This plugins aims at being lightweight and simple. For more fully-fledged plugins, see:

  • LaTeX-Suite: vimscript#475
  • AutomaticTexPlugin: vimscript#2945


With gmarik vundle

Add Plugin 'LaTeX-Box-Team/LaTeX-Box' to your ~/.vimrc and run :PluginInstall in a vim buffer. Add ! to the command to update.

With pathogen

Add the LaTeX-Box bundle to your bundle directory, for instance with git clone. This will typically be enough:

cd ~/.vim/bundle
git clone git://

Without a plugin manager

Copy the directories to your .vim/ folder.

Windows users

Users working with (g)vim on Windows must have a Perl environment installed. Such an environment can be downloaded at :

Installation Notes

Make sure filetype plugin on is set in host .vimrc, else LaTeX-Box will not load.

Note that there are configurable global variables that can be put in the .vimrc. These are documented, but as an example, one can have the table of contents open as a horizontal split by utilizing this:

if s:extfname ==? "tex"
  let g:LatexBox_split_type="new"

Mirror information

This is mirrored on

Example Table of Contents



Lightweight Toolbox for LaTeX - New Official repository




No packages published