[Tex/LaTex] How to disable all Vim-LaTeX mappings

vimvim-latex

I like some of the features provided by the Vim-LaTeX suite, but not all of them.

In particular, I dislike all of the mappings like [[ = \left[ \right] and the automatic placeholder stuff with <++>. I am a very fast typist but with that comes more typing mistakes, which I correct almost instantly by pressing backspace. Unfortunately, if something has automatically added a bunch of place-holders or expanded some expression, I then have to move around the document and remove more characters than necessary. For example, if I accidentally press [ twice, instead of only having to delete one character, I have to delete 10.

Having already looked through the documentation, and some of the source, I have managed to disable some of these "features", but not all of them:

In particular:

let g:Tex_SmartKeyBS = 0
let g:Tex_SmartKeyQuote = 0
let g:Tex_SmartKeyDot = 0

(Turn off maps for backspace, double quote and triple dot.)

let g:Imap_UsePlaceHolders = 0

(Turn off <++> placeholder insertion.)

But I can't seem to find a way of turning off the other stuff. Anyone have any suggestions?

Edit: I was able to "disable" some more things by setting:

let g:Tex_Leader = '`tex'
let g:Tex_Leader2 = ',tex'

(Which stops some expansions but still not all. It's not really disabling it but just making it less likely that you're going to type in `texa as opposed to the potentially more common `a, for example.)

PS: Personally, I think it is very poor practice to make an optional package that, when installed, greatly changes the default handling of your system. I don't mind some intelligent source highlighting etc, or some new commands (that don't clobber any old ones), but it seems unhelpful to enable this drastic kind of key remapping by default.

Best Answer

Side note for anyone who ends up here looking for the same thing I am:

To disable specific IMAPs, add trivial IMAP commands to the file ~/.vim/after/ftplugin/tex.vim (you may have to create it if it does not exist). For instance,

" Undo some latex-suite macros
call IMAP('()', '()', 'tex')
call IMAP('{}', '{}', 'tex')
call IMAP('[]', '[]', 'tex')
call IMAP('::', '::', 'tex')
call IMAP('{{', '{{', 'tex')
call IMAP('((', '((', 'tex')
call IMAP('[[', '[[', 'tex')
call IMAP('$$', '$$', 'tex')
Related Question