aboutsummaryrefslogtreecommitdiff
path: root/dot_vim/ftplugin/latex-suite/envmacros.vim
diff options
context:
space:
mode:
Diffstat (limited to 'dot_vim/ftplugin/latex-suite/envmacros.vim')
-rw-r--r--dot_vim/ftplugin/latex-suite/envmacros.vim1167
1 files changed, 0 insertions, 1167 deletions
diff --git a/dot_vim/ftplugin/latex-suite/envmacros.vim b/dot_vim/ftplugin/latex-suite/envmacros.vim
deleted file mode 100644
index 2f41a27..0000000
--- a/dot_vim/ftplugin/latex-suite/envmacros.vim
+++ /dev/null
@@ -1,1167 +0,0 @@
-"=============================================================================
-" File: envmacros.vim
-" Author: Mikolaj Machowski
-" Created: Tue Apr 23 08:00 PM 2002 PST
-" CVS Header: $Id: envmacros.vim 997 2006-03-20 09:45:45Z srinathava $
-" Description: mappings/menus for environments.
-"=============================================================================
-
-if !g:Tex_EnvironmentMaps && !g:Tex_EnvironmentMenus
- finish
-endif
-
-exe 'so '.expand('<sfile>:p:h').'/wizardfuncs.vim'
-
-nmap <silent> <script> <plug> i
-imap <silent> <script> <C-o><plug> <Nop>
-
-" Define environments for IMAP evaluation " {{{
-let s:figure = "\\begin{figure}[<+htpb+>]\<cr>\\begin{center}\<cr>\\psfig{figure=<+eps file+>}\<cr>\\end{center}\<cr>\\caption{<+caption text+>}\<cr>\\label{fig:<+label+>}\<cr>\\end{figure}<++>"
-let s:figure_graphicx = "\\begin{figure}[<+htpb+>]\<cr>\\begin{center}\<cr>\\includegraphics{<+file+>}\<cr>\\end{center}\<cr>\\caption{<+caption text+>}\<cr>\\label{fig:<+label+>}\<cr>\\end{figure}<++>"
-let s:minipage = "\\begin{minipage}[<+tb+>]{<+width+>}\<cr><++>\<cr>\\end{minipage}<++>"
-let s:picture = "\\begin{picture}(<+width+>, <+height+>)(<+xoff+>,<+yoff+>)\<cr>\\put(<+xoff+>,<+yoff+>){\\framebox(<++>,<++>){<++>}}\<cr>\\end{picture}<++>"
-let s:list = "\\begin{list}{<+label+>}{<+spacing+>}\<cr>\\item <++>\<cr>\\end{list}<++>"
-let s:table = "\\begin{table}\<cr>\\centering\<cr>\\begin{tabular}{<+dimensions+>}\<cr><++>\<cr>\\end{tabular}\<cr>\\caption{<+Caption text+>}\<cr>\\label{tab:<+label+>}\<cr>\\end{table}<++>"
-let s:array = "\\left<++>\<cr>\\begin{array}{<+dimension+>}\<cr><+elements+>\<cr>\\end{array}\<cr>\\right<++>"
-let s:description ="\\begin{description}\<cr>\\item[<+label+>]<++>\<cr>\\end{description}<++>"
-let s:document = "\\documentclass[<+options+>]{<+class+>}\<cr>\<cr>\\begin{document}\<cr><++>\<cr>\\end{document}"
-let s:tabular = "\\begin{tabular}[<+hbtp+>]{<+format+>}\<cr><++>\<cr>\\end{tabular}"
-let s:tabular_star = "\\begin{tabular*}[<+hbtp+>]{<+format+>}\<cr><++>\<cr>\\end{tabular*}"
-let s:frame = "\\begin{frame}{<+title>}\<cr><++>\<cr>\\end{frame}<++>"
-
-" }}}
-" define environments with special behavior in line wise selection. {{{
-if !exists('s:vis_center_left')
- let s:vis_center_left = '\centerline{'
- let s:vis_center_right = '}'
-
- let s:vis_verbatim_left = '\verb\|'
- let s:vis_verbatim_right = '\|'
-
- let s:vis_flushright_left = '{\raggedright '
- let s:vis_flushright_right = '}'
-
- let s:vis_fushleft_left = '{\raggedleft '
- let s:vis_fushleft_right = '}'
-
- let s:vis_lrbox_left = '\sbox{'
- let s:vis_lrbox_right = '}'
-endif
-" }}}
-" Tex_EnvMacros: sets up maps and menus for environments {{{
-" Description:
-function! <SID>Tex_EnvMacros(lhs, submenu, name)
-
- let extra = ''
- if a:submenu =~ 'Lists'
- let extra = '\item '
- endif
-
- let vright = ''
- let vleft = ''
- if exists('s:vis_'.a:name.'_right')
- let vright = s:vis_{a:name}_right
- let vleft = s:vis_{a:name}_left
- endif
- let vrhs = "\<C-\\>\<C-N>:call VEnclose('".vleft."', '".vright."', '\\begin{".a:name."}', '\\end{".a:name."}')\<CR>"
- let location = g:Tex_EnvMenuLocation.a:submenu.a:name.'<tab>'
-
- if a:lhs != ''
-
- let vlhs = g:Tex_Leader2.substitute(tolower(a:lhs), '^.', '', '')
- let location = location.a:lhs.'\ ('.vlhs.')'
-
- if g:Tex_EnvironmentMaps && !exists('s:doneOnce')
- call IMAP(a:lhs, "\<C-r>=Tex_PutEnvironment('".a:name."')\<CR>", 'tex')
- exec 'vnoremap <silent> '.vlhs.' '.vrhs
- endif
-
- endif
-
- if g:Tex_Menus && g:Tex_EnvironmentMenus && has("gui_running")
- exe 'amenu '.location.' <plug><C-r>=Tex_DoEnvironment("'.a:name.'")<CR>'
- exe 'vmenu '.location.' '.vrhs
- endif
-
-endfunction
-
-" }}}
-" Tex_SpecialMacros: macros with special right hand sides {{{
-" Description:
-function! <SID>Tex_SpecialMacros(lhs, submenu, name, irhs, ...)
-
- let wiz = 1
- if a:0 > 0 && a:1 == 0
- let wiz = 0
- endif
-
- let location = g:Tex_EnvMenuLocation.a:submenu.a:name
-
- let vright = ''
- let vleft = ''
- if exists('s:vis_'.a:name.'_right')
- let vright = s:vis_{a:name}_right
- let vleft = s:vis_{a:name}_left
- endif
- let vrhs = "\<C-\\>\<C-N>:call VEnclose('".vleft."', '".vright."', '\\begin{".a:name."}', '\\end{".a:name."}')\<CR>"
-
- if a:lhs != ''
-
- let vlhs = g:Tex_Leader2.substitute(tolower(a:lhs), '^.', '', '')
- let location = location.'<tab>'.a:lhs.'\ ('.vlhs.')'
-
- if g:Tex_EnvironmentMaps && !exists('s:doneOnce')
- call IMAP(a:lhs, a:irhs, 'tex')
- exec 'vnoremap '.vlhs.' '.vrhs
- endif
-
- endif
-
- if g:Tex_Menus && g:Tex_EnvironmentMenus
- if wiz
- exe 'amenu '.location.' <plug><C-r>=Tex_DoEnvironment("'.a:name.'")<CR>'
- else
- exe 'amenu '.location." <plug><C-r>=IMAP_PutTextWithMovement('".a:irhs."')<CR>"
- endif
- exe 'vmenu '.location.' '.vrhs
- endif
-
-endfunction " }}}
-" Tex_SectionMacros: creates section maps and menus {{{
-" Description:
-function! <SID>Tex_SectionMacros(lhs, name)
-
- let vlhs = g:Tex_Leader2.substitute(tolower(a:lhs), '^.', '', '')
- let vrhs = "\<C-\\>\<C-N>:call VEnclose('\\".a:name."{', '}', '', '')<CR>"
-
- if g:Tex_SectionMaps && !exists('s:doneOnce')
- exe 'vnoremap '.vlhs.' '.vrhs
- call IMAP (a:lhs, "\\".a:name.'{<++>}<++>', 'tex')
- endif
-
- if g:Tex_Menus && g:Tex_SectionMenus
- let location = g:Tex_EnvMenuLocation.'Sections.'.a:name.'<tab>'.a:lhs.'\ ('.vlhs.')'
- let advlocation = g:Tex_EnvMenuLocation.'Sections.Advanced.'.a:name
-
- let irhs = "\<C-r>=IMAP_PutTextWithMovement('\\".a:name."{<++>}<++>')\<CR>"
-
- let advirhs = "\<C-r>=Tex_InsSecAdv('".a:name."')\<CR>"
- let advvrhs = "\<C-\\>\<C-N>:call Tex_VisSecAdv('".a:name."')\<CR>"
-
- exe 'amenu '.advlocation.' <plug>'.advirhs
- exe 'vnoremenu '.advlocation." ".advvrhs
-
- exe 'amenu '.location.' <plug>'.irhs
- exe 'vnoremenu '.location." ".vrhs
- endif
-endfunction " }}}
-
-" NewEnvironments {{{
-call s:Tex_SpecialMacros('', '', 'newenvironment', '\newenvironment{<++>}[<++>][<++>]{<++>}{<++>}<++>', 0)
-call s:Tex_SpecialMacros('', '', 'newenvironment*', '\newenvironment*{<++>}[<++>][<++>]{<++>}{<++>}<++>', 0)
-call s:Tex_SpecialMacros('', '', 'renewenvironment', '\renewenvironment{<++>}[<++>][<++>]{<++>}{<++>}<++>', 0)
-call s:Tex_SpecialMacros('', '', 'renewenvironment*', '\renewenvironment*{<++>}[<++>][<++>]{<++>}{<++>}<++>', 0)
-call s:Tex_SpecialMacros('', '', '-sepenv0-', ' :', 0)
-" }}}
-" Environments specific commands {{{
-call s:Tex_SpecialMacros('', 'Env&Commands.&Lists.', '&item', '\item', 0)
-call s:Tex_SpecialMacros('', 'Env&Commands.&Lists.', 'i&tem[]', '\item[<++>]<++>', 0)
-call s:Tex_SpecialMacros('', 'Env&Commands.&Lists.', '&bibitem{}', '\bibitem{<++>}<++>', 0)
-call s:Tex_SpecialMacros('', 'Env&Commands.&Tabbing.', '\\&=', '\=', 0)
-call s:Tex_SpecialMacros('', 'Env&Commands.&Tabbing.', '\\&>', '\>', 0)
-call s:Tex_SpecialMacros('', 'Env&Commands.&Tabbing.', '&\\\\', '\\', 0)
-call s:Tex_SpecialMacros('', 'Env&Commands.&Tabbing.', '\\&+', '\+', 0)
-call s:Tex_SpecialMacros('', 'Env&Commands.&Tabbing.', '\\&-', '\-', 0)
-call s:Tex_SpecialMacros('', 'Env&Commands.&Tabbing.', "\\\'", "\\\'", 0)
-call s:Tex_SpecialMacros('', 'Env&Commands.&Tabbing.', '\\&`', '\`', 0)
-call s:Tex_SpecialMacros('', 'Env&Commands.&Tabbing.', '\\&kill', '\kill', 0)
-call s:Tex_SpecialMacros('', 'Env&Commands.&Tabbing.', '&makron\ \\CHAR=', '\<++>=<++>', 0)
-call s:Tex_SpecialMacros('', 'Env&Commands.&Tabbing.', "&aigu\ \\CHAR\'", "\\<++>\'<++>", 0)
-call s:Tex_SpecialMacros('', 'Env&Commands.&Tabbing.', '&grave\ \\CHAR`', '\<++>`<++>', 0)
-call s:Tex_SpecialMacros('', 'Env&Commands.&Tabbing.', 'p&ushtabs', '\pushtabs', 0)
-call s:Tex_SpecialMacros('', 'Env&Commands.&Tabbing.', 'p&optabs', '\poptabs', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.&Tabular.', '&hline', '\hline', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.&Tabular.', '&cline', '\cline', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.&Tabular.', '&\&', '&', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.&Tabular.', '&\\\\', '\\', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.&Tabular.', '&multicolumn{}{}{}', '\multicolumn{<++>}{<++>}{<++>}<++>', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.Le&tter.', '&makelabels', '\makelabels', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.Le&tter.', '&address', '\address', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.Le&tter.', '&signature', '\signature', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.Le&tter.', '&date', '\date', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.Le&tter.', '-sepenva4-', ' :', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.Le&tter.', '&opening{}', '\opening{<++>}<++>', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.Le&tter.', '&closing{}', '\closing{<++>}<++>', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.Le&tter.', '&ps{}', '\ps{<++>}<++>', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.Le&tter.', 'cc&{}', '\cc{<++>}<++>', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.&Slides.', '&onlyslides{}', '\onlyslides{<++>}<++>', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.&Slides.', '&onlynotes{}', '\onlynotes{<++>}<++>', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.&Slides.', '-sepenva5-', ' :', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.&Slides.', '&invisible', '\invisible', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.&Slides.', '&visible', '\visible', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.&Slides.', '&settime', '\settime', 0)
-call s:Tex_SpecialMacros('', 'EnvCommands.&Slides.', '&addtime', '\addtime', 0)
-call s:Tex_SpecialMacros('', '', '-sepenv0-', ' :', 0)
-" }}}
-" Lists {{{
-call s:Tex_SpecialMacros('ELI', '&Lists.', 'list', s:list)
-call s:Tex_SpecialMacros('EDE', '&Lists.', 'description', s:description)
-call s:Tex_EnvMacros('EEN', '&Lists.', 'enumerate')
-call s:Tex_EnvMacros('EIT', '&Lists.', 'itemize')
-call s:Tex_EnvMacros('ETI', '&Lists.', 'theindex')
-call s:Tex_EnvMacros('ETL', '&Lists.', 'trivlist')
-" }}}
-" Tables {{{
-call s:Tex_SpecialMacros('ETE', '&Tables.', 'table', s:table)
-call s:Tex_EnvMacros('ETG', '&Tables.', 'tabbing')
-call s:Tex_EnvMacros('', '&Tables.', 'table*')
-call s:Tex_EnvMacros('', '&Tables.', 'table2')
-call s:Tex_SpecialMacros('ETR', '&Tables.', 'tabular', s:tabular)
-call s:Tex_SpecialMacros('', '&Tables.', 'tabular*', s:tabular_star)
-" }}}
-" Math {{{
-call s:Tex_EnvMacros('EAR', '&Math.', 'array')
-call s:Tex_EnvMacros('EDM', '&Math.', 'displaymath')
-call s:Tex_EnvMacros('EEA', '&Math.', 'eqnarray')
-call s:Tex_EnvMacros('', '&Math.', 'eqnarray*')
-call s:Tex_EnvMacros('EEQ', '&Math.', 'equation')
-call s:Tex_EnvMacros('EMA', '&Math.', 'math')
-" }}}
-" Structure {{{
-call s:Tex_SpecialMacros('EAR', 'Math.', 'array', s:array)
-call s:Tex_EnvMacros('EAB', '&Structure.', 'abstract')
-call s:Tex_EnvMacros('EAP', '&Structure.', 'appendix')
-call s:Tex_EnvMacros('ECE', '&Structure.', 'center')
-call s:Tex_EnvMacros('EDO', '&Structure.', 'document')
-call s:Tex_EnvMacros('EFC', '&Structure.', 'filecontents')
-call s:Tex_EnvMacros('', '&Structure.', 'filecontents*')
-call s:Tex_EnvMacros('EFL', '&Structure.', 'flushleft')
-call s:Tex_EnvMacros('EFR', '&Structure.', 'flushright')
-call s:Tex_EnvMacros('EQN', '&Structure.', 'quotation')
-call s:Tex_EnvMacros('EQE', '&Structure.', 'quote')
-call s:Tex_EnvMacros('ESB', '&Structure.', 'sloppybar')
-call s:Tex_EnvMacros('ETI', '&Structure.', 'theindex')
-call s:Tex_EnvMacros('ETP', '&Structure.', 'titlepage')
-call s:Tex_EnvMacros('EVM', '&Structure.', 'verbatim')
-call s:Tex_EnvMacros('', '&Structure.', 'verbatim*')
-call s:Tex_EnvMacros('EVE', '&Structure.', 'verse')
-call s:Tex_EnvMacros('ETB', '&Structure.', 'thebibliography')
-call s:Tex_SpecialMacros('', '&Structure.', '-sepstruct0-', ':', 0)
-call s:Tex_EnvMacros('ENO', '&Structure.', 'note')
-call s:Tex_EnvMacros('EOV', '&Structure.', 'overlay')
-call s:Tex_EnvMacros('ESL', '&Structure.', 'slide')
-" }}}
-" Sections {{{
-call s:Tex_SectionMacros('SPA', 'part')
-call s:Tex_SectionMacros('SCH', 'chapter')
-call s:Tex_SectionMacros('SSE', 'section')
-call s:Tex_SectionMacros('SSS', 'subsection')
-call s:Tex_SectionMacros('SS2', 'subsubsection')
-call s:Tex_SectionMacros('SPG', 'paragraph')
-call s:Tex_SectionMacros('SSP', 'subparagraph')
-" }}}
-" Miscellaneous {{{
-call s:Tex_SpecialMacros('', '', '-sepenv1-', ' :', 0)
-call s:Tex_SpecialMacros('EFI', '', 'figure', "\<C-r>=Tex_PutEnvironment('figure')\<CR>")
-call s:Tex_EnvMacros('', '', 'figure*')
-call s:Tex_EnvMacros('ELR', '', 'lrbox')
-call s:Tex_SpecialMacros('EMP', '', 'minipage', s:minipage)
-call s:Tex_SpecialMacros('EPI', '', 'picture', s:picture)
-" }}}
-
-if g:Tex_CatchVisMapErrors
- exe 'vnoremap '.g:Tex_Leader2." :\<C-u>call ExecMap('".g:Tex_Leader2."', 'v')\<CR>"
-endif
-
-" ==============================================================================
-" Specialized functions for various environments
-"
-" All these functions are to be used as:
-"
-" inoremap <lhs> <C-r>=Tex_itemize('enumerate')<CR>
-" nnoremap <lhs> i<C-r>=Tex_itemize('enumerate')<CR>
-"
-" and so on...
-" ==============================================================================
-" Tex_itemize: {{{
-function! Tex_itemize(env)
- return IMAP_PutTextWithMovement('\begin{'.a:env."}\<cr>\\item <++>\<cr>\\end{".a:env."}<++>")
-endfunction
-" }}}
-" Tex_description: {{{
-function! Tex_description(env)
- if g:Tex_UseMenuWizard == 1
- let itlabel = input('(Optional) Item label? ')
- if itlabel != ''
- let itlabel = '['.itlabel.']'
- endif
- return IMAP_PutTextWithMovement("\\begin{description}\<cr>\\item".itlabel." <++>\<cr>\\end{description}<++>")
- else
- return IMAP_PutTextWithMovement(s:description)
- endif
-endfunction
-" }}}
-" Tex_figure: {{{
-function! Tex_figure(env)
- if g:Tex_UseMenuWizard == 1
- let flto = input('Float to (htbp)? ')
- let caption = input('Caption? ')
- let center = input('Center ([y]/n)? ')
- let label = input('Label (for use with \ref)? ')
- " additional to AUC Tex since my pics are usually external files
- let pic = input('Name of Pic-File? ')
- if flto != ''
- let flto = '['.flto."]\<cr>"
- else
- let flto = "\<cr>"
- endif
- if pic != ''
- let pic = '\input{'.pic."}\<cr>"
- else
- let pic = "<++>\<cr>"
- endif
- if caption != ''
- let caption = '\caption{'.caption."}\<cr>"
- endif
- if label != ''
- let label = '\label{fig:'.label."}\<cr>"
- endif
- if center == 'y'
- let centr = '\begin{center}' . "\<cr>"
- let centr = centr . pic
- let centr = centr . caption
- let centr = centr . label
- let centr = centr . '\end{center}' . "\<cr>"
- else
- let centr = pic
- let centr = centr . caption
- let centr = centr . label
- endif
- let figure = '\begin{'.a:env.'}'.flto
- let figure = figure . centr
- let figure = figure . '\end{'.a:env.'}'
- return IMAP_PutTextWithMovement(figure)
- else
- if g:Tex_package_detected =~ '\<graphicx\>'
- return IMAP_PutTextWithMovement(s:figure_graphicx)
- else
- return IMAP_PutTextWithMovement(s:figure)
- endif
- endif
-endfunction
-" }}}
-" Tex_table: {{{
-function! Tex_table(env)
- if g:Tex_UseMenuWizard == 1
- let flto = input('Float to (htbp)? ')
- let caption = input('Caption? ')
- let center = input('Center (y/n)? ')
- let label = input('Label? ')
- if flto != ''
- let flto ='['.flto."]\<cr>"
- else
- let flto = ''
- endif
- let ret='\begin{table}'.flto
- if center == 'y'
- let ret=ret."\\begin{center}\<cr>"
- endif
- let foo = '\begin{tabular}'
- let pos = input('(Optional) Position (t b)? ')
- if pos != ''
- let foo = foo.'['.pos.']'
- else
- let foo = foo."\<cr>"
- endif
- let format = input("Format ( l r c p{width} | @{text} )? ")
- if format == ''
- let format = '<++>'
- endif
- let ret = ret.foo.'{'.format."}\<cr><++>\<cr>\\end{tabular}<++>\<cr>"
- if center == 'y'
- let ret=ret."\\end{center}\<cr>"
- endif
- if caption != ''
- let ret=ret.'\caption{'.caption."}\<cr>"
- endif
- if label != ''
- let ret=ret.'\label{tab:'.label."}\<cr>"
- endif
- let ret=ret.'\end{table}<++>'
- return IMAP_PutTextWithMovement(ret)
- else
- return IMAP_PutTextWithMovement(s:table)
- endif
-endfunction
-" }}}
-" Tex_tabular: {{{
-function! Tex_tabular(env)
- if g:Tex_UseMenuWizard == 1
- let pos = input('(Optional) Position (t b)? ')
- let format = input("Format ( l r c p{width} | @{text} )? ")
- if pos != ''
- let pos = '['.pos.']'
- endif
- if format != ''
- let format = '{'.format.'}'
- endif
- return IMAP_PutTextWithMovement('\begin{'.a:env.'}'.pos.format."\<cr> \<cr>\\end{".a:env.'}<++>')
- else
- return IMAP_PutTextWithMovement('\begin{'.a:env.'}[<+position+>]{<+format+>}'."\<cr><++>\<cr>\\end{".a:env.'}<++>')
- endif
-endfunction
-" }}}
-" Tex_eqnarray: {{{
-function! Tex_eqnarray(env)
- if g:Tex_UseMenuWizard == 1
- if a:env !~ '\*'
- let label = input('Label? ')
- if label != ''
- let arrlabel = '\label{'.label."}\<cr>"
- else
- let arrlabel = ''
- endif
- else
- let arrlabel = ''
- endif
- else
- if a:env !~ '\*'
- let arrlabel = "\\label{<++>}\<cr>"
- else
- let arrlabel = ""
- endif
- endif
- return IMAP_PutTextWithMovement('\begin{'.a:env."}\<cr><++>\<cr>".arrlabel."\\end{".a:env."}<++>")
-endfunction
-" }}}
-" Tex_list: {{{
-function! Tex_list(env)
- if g:Tex_UseMenuWizard == 1
- let label = input('Label (for \item)? ')
- if label != ''
- let label = '{'.label.'}'
- let addcmd = input('Additional commands? ')
- if addcmd != ''
- let label = label . '{'.addcmd.'}'
- endif
- else
- let label = ''
- endif
- return IMAP_PutTextWithMovement('\begin{list}'.label."\<cr>\\item \<cr>\\end{list}<++>")
- else
- return IMAP_PutTextWithMovement(s:list)
- endif
-endfunction
-" }}}
-" Tex_document: {{{
-function! Tex_document(env)
- if g:Tex_UseMenuWizard == 1
- let dstyle = input('Document style? ')
- let opts = input('(Optional) Options? ')
- let foo = '\documentclass'
- if opts == ''
- let foo = foo.'{'.dstyle.'}'
- else
- let foo = foo.'['.opts.']'.'{'.dstyle.'}'
- endif
- return IMAP_PutTextWithMovement(foo."\<cr>\<cr>\\begin{document}\<cr><++>\<cr>\\end{document}")
- else
- return IMAP_PutTextWithMovement(s:document)
- endif
-endfunction
-" }}}
-" Tex_minipage: {{{
-function! Tex_minipage(env)
- if g:Tex_UseMenuWizard == 1
- let foo = '\begin{minipage}'
- let pos = input('(Optional) Position (t b)? ')
- let width = input('Width? ')
- if pos == ''
- let foo = foo.'{'.width.'}'
- else
- let foo = foo.'['.pos.']{'.width.'}'
- endif
- return IMAP_PutTextWithMovement(foo."\<cr><++>\<cr>\\end{minipage}<++>")
- else
- return IMAP_PutTextWithMovement(s:minipage)
- endif
-endfunction
-" }}}
-" Tex_thebibliography: {{{
-function! Tex_thebibliography(env)
- if g:Tex_UseMenuWizard == 1
- " AUC Tex: "Label for BibItem: 99"
- let indent = input('Indent for BibItem? ')
- let foo = '{'.indent.'}'
- let biblabel = input('(Optional) Bibitem label? ')
- let key = input('Add key? ')
- let bar = '\bibitem'
- if biblabel != ''
- let bar = bar.'['.biblabel.']'
- endif
- let bar = bar.'{'.key.'}'
- return IMAP_PutTextWithMovement('\begin{thebibliography}'.foo."\<cr>".bar." \<cr>\\end{thebibliography}<++>\<Up>")
- else
- return IMAP_PutTextWithMovement(
- \ "\\begin{thebibliography}\<CR>".
- \ "\\item[<+biblabel+>]{<+bibkey+>} <++>\<CR>".
- \ "<++>\<CR>".
- \ "\\end{thebibliography}<++>")
- endif
-endfunction
-" }}}
-
-" ==============================================================================
-" Contributions / suggestions from Carl Mueller (auctex.vim)
-" ==============================================================================
-" PromptForEnvironment: prompts for an environment {{{
-" Description:
-function! PromptForEnvironment(ask)
- return Tex_ChooseFromPrompt(
- \ a:ask."\n" .
- \ Tex_CreatePrompt(g:Tex_PromptedEnvironments, 2, ",") .
- \ "\nEnter nae or number of environment :",
- \ g:Tex_PromptedEnvironments, ",")
-endfunction " }}}
-" Tex_DoEnvironment: fast insertion of environments {{{
-" Description:
-" The menus call this function with an argument (the name of the environment
-" to insert). The maps call this without any arguments. In this case, it
-" prompts for an environment to enter if the current line is empty. If
-" called without arguments and there is a word on the current line, then use
-" that as the name of a new environment.
-function! Tex_DoEnvironment(...)
- if a:0 < 1
- let env = matchstr(getline('.'), '^\s*\zs\w*\*\=\ze\s*$')
- " If in current line is more than one word or in visual mode
- " ignore contents of line and prompt for environment
- if env == '' || (exists('s:isvisual') && s:isvisual == 'yes')
- let env = PromptForEnvironment('Choose which environment to insert: ')
- if env != ''
- return Tex_PutEnvironment(env)
- else
- return ''
- endif
- else
- " delete the word on the line into the blackhole register.
- normal! 0"_D
- return Tex_PutEnvironment(env)
- endif
- else
- return Tex_PutEnvironment(a:1)
- endif
-endfunction " }}}
-" Tex_PutEnvironment: calls various specialized functions {{{
-" Description:
-" Based on input argument, it calls various specialized functions.
-function! Tex_PutEnvironment(env)
- if exists("s:isvisual") && s:isvisual == "yes"
- let s:isvisual = 'no'
- if a:env == '\['
- return VEnclose('', '', '\[', '\]')
- elseif a:env == '$$'
- return VEnclose('', '', '$$', '$$')
- endif
- return VEnclose('\begin{'.a:env.'}', '\end{'.a:env.'}', '\begin{'.a:env.'}', '\end{'.a:env.'}')
- else
- " The user can define something like
- " let g:Tex_Env_theorem = "\\begin{theorem}\<CR><++>\<CR>\\end{theorem}"
- " This will effectively over-write the default definition of the
- " theorem environment which uses a \label.
- if exists("b:Tex_Env_{'".a:env."'}")
- return IMAP_PutTextWithMovement(b:Tex_Env_{a:env})
- elseif exists("g:Tex_Env_{'".a:env."'}")
- return IMAP_PutTextWithMovement(g:Tex_Env_{a:env})
- elseif a:env =~ 'equation*\|eqnarray*\|theorem\|lemma\|equation\|eqnarray\|align\*\|align\>\|multline'
- let g:aa = a:env
- return Tex_eqnarray(a:env)
- elseif a:env =~ "enumerate\\|itemize\\|theindex\\|trivlist"
- return Tex_itemize(a:env)
- elseif a:env =~ "table\\|table*"
- return Tex_table(a:env)
- elseif a:env =~ "tabular\\|tabular*\\|array\\|array*"
- return Tex_tabular(a:env)
- elseif exists('*Tex_'.a:env)
- exe 'return Tex_'.a:env.'(a:env)'
- elseif a:env == '$$'
- return IMAP_PutTextWithMovement('$$<++>$$')
- elseif a:env == '\['
- return IMAP_PutTextWithMovement("\\[\<CR><++>\<CR>\\]<++>")
- else
- " Look in supported packages if exists template for environment
- " given in the line
- if exists('g:Tex_package_supported') && g:Tex_package_supported != ''
- let i = 1
- while Tex_Strntok(g:Tex_package_supported, ',', i) != ''
- let checkpack = Tex_Strntok(g:Tex_package_supported, ',', i)
- if g:TeX_package_{checkpack} =~ 'e..:'.a:env
- if a:env =~ '*'
- " Don't allow * to be treated as wildcard
- let aenv = substitute(a:env, '*', '\\*', '')
- else
- let aenv = a:env
- endif
- let envcommand = matchstr(g:TeX_package_{checkpack}, '\zse..:'.aenv.'[^,]\{-}\ze,')
- return Tex_ProcessPackageCommand(envcommand)
- endif
- let i = i + 1
- endwhile
- endif
- " If nothing before us managed to create an environment, then just
- " create a bare-bones environment from the name.
- return IMAP_PutTextWithMovement('\begin{'.a:env."}\<cr><++>\<cr>\\end{".a:env."}<++>")
- endif
-endfunction " }}}
-" Mapping the <F5> key to insert/prompt for an environment/package {{{
-" and <S-F5> to prompt/replace an environment
-"
-" g:Tex_PromptedEnvironments is a variable containing a comma seperated list
-" of environments. This list defines the prompt which latex-suite sets up when
-" the user presses <F5> on an empty line.
-"
-" Leaving this empty is equivalent to disabling the feature.
-if g:Tex_PromptedEnvironments != ''
-
- let b:DoubleDollars = 0
-
- " Provide only <plug>s here. main.vim will create the actual maps.
- inoremap <silent> <Plug>Tex_FastEnvironmentInsert <C-r>=Tex_FastEnvironmentInsert("no")<cr>
- nnoremap <silent> <Plug>Tex_FastEnvironmentInsert i<C-r>=Tex_FastEnvironmentInsert("no")<cr>
- vnoremap <silent> <Plug>Tex_FastEnvironmentInsert <C-\><C-N>:call Tex_FastEnvironmentInsert("yes")<CR>
- inoremap <silent> <Plug>Tex_FastEnvironmentChange <C-O>:call Tex_ChangeEnvironments()<CR>
- nnoremap <silent> <Plug>Tex_FastEnvironmentChange :call Tex_ChangeEnvironments()<CR>
-
- " Tex_FastEnvironmentInsert: maps <F5> to prompt for env and insert it " {{{
- " Description:
- " This function calculates whether we are in the preamble. If we are
- " then inserts a \usepackage line by either reading in a word from the
- " current line or prompting to type in one. If not in the preamble, then
- " inserts a environment template either by reading in a word from the
- " current line or prompting the user to choose one.
- "
- function! Tex_FastEnvironmentInsert(isvisual)
-
- let start_line = line('.')
- let pos = line('.').' | normal! '.virtcol('.').'|'
- let s:isvisual = a:isvisual
-
- " decide if we are in the preamble of the document. If we are then
- " insert a package, otherwise insert an environment.
- "
- if search('\\documentclass', 'bW') && search('\\begin{document}')
-
- " If there is a \documentclass line and a \begin{document} line in
- " the file, then a part of the file is the preamble.
-
- " search for where the document begins.
- let begin_line = search('\\begin{document}')
- " if the document begins after where we are presently, then we are
- " in the preamble.
- if start_line < begin_line
- " return to our original location and insert a package
- " statement.
- exe pos
- return Tex_package_from_line()
- else
- " we are after the preamble. insert an environment.
- exe pos
- return Tex_DoEnvironment()
- endif
-
- elseif search('\\documentclass')
- " if there is only a \documentclass but no \begin{document}, then
- " the entire file is a preamble. Put a package.
-
- exe pos
- return Tex_package_from_line()
-
- else
- " no \documentclass, put an environment.
-
- exe pos
- return Tex_DoEnvironment()
-
- endif
-
- endfunction
-
- " }}}
- " Tex_package_from_line: puts a \usepackage line in the current line. " {{{
- " Description:
- "
- function! Tex_package_from_line()
- " Function Tex_PutPackage is defined in packages.vim
- " Ignores <F5> in Visual mode
- if s:isvisual == "yes"
- return 0
- else
- let l = getline(".")
- let pack = matchstr(l, '^\s*\zs.*')
- normal! 0"_D
- return Tex_pack_one(pack)
- endif
- endfunction
-
- " }}}
- " Tex_ChangeEnvironments: calls Change() to change the environment {{{
- " Description:
- " Finds out which environment the cursor is positioned in and changes
- " that to the chosen new environment. This function knows the changes
- " which need to be made to change one env to another and calls
- " Change() with the info.
- "
- function! Tex_ChangeEnvironments()
-
- let env_line = searchpair('$$\|\\[\|begin{', '', '$$\|\\]\|end{', "bn")
-
- if env_line != 0
- if getline(env_line) !~ 'begin{'
- let env_name = '['
- else
- let env_name = matchstr(getline(env_line), 'begin{\zs.\{-}\ze}')
- endif
- endif
-
- if !exists('env_name')
- echomsg "You are not inside environment"
- return 0
- endif
-
- exe 'echomsg "You are within a '.env_name.' environment."'
- let change_env = PromptForEnvironment('What do you want to change it to? ')
-
- if change_env == 'eqnarray'
- call <SID>Change('eqnarray', 1, '', 1)
- elseif change_env == 'eqnarray*'
- call <SID>Change('eqnarray*', 0, '\\nonumber', 0)
- elseif change_env == 'align'
- call <SID>Change('align', 1, '', 1)
- elseif change_env == 'align*'
- call <SID>Change('align*', 0, '\\nonumber', 0)
- elseif change_env == 'equation*'
- call <SID>Change('equation*', 0, '&\|\\lefteqn{\|\\nonumber\|\\\\', 0)
- elseif change_env == ''
- return 0
- else
- call <SID>Change(change_env, 0, '', '')
- return 0
- endif
-
- endfunction
-
- " }}}
- " Change: changes the current env to the new env {{{
- " Description:
- " This function needs to know the changes which need to be made while
- " going from an old environment to a new one. This info, it gets from
- " Tex_ChangeEnvironments
- "
- " env : name of the new environment.
- " label : if 1, then insert a \label at the end of the environment.
- " otherwise, delete any \label line found.
- " delete : a pattern which is to be deleted from the original environment.
- " for example, going to a eqnarray* environment means we need to
- " delete \label's.
- " putInNonumber : whether we need to put a \nonumber before the end of the
- " environment.
- function! s:Change(env, label, delete, putInNonumber)
-
- let start_line = line('.')
- let start_col = virtcol('.')
-
- if a:env == '['
- if b:DoubleDollars == 0
- let first = '\\['
- let second = '\\]'
- else
- let first = '$$'
- let second = '$$'
- endif
- else
- let first = '\\begin{' . a:env . '}'
- let second = '\\end{' . a:env . '}'
- endif
-
- if b:DoubleDollars == 0
- let bottom = searchpair('\\\[\|\\begin{','','\\\]\|\\end{','')
- s/\\\]\|\\end{.\{-}}/\=second/
- let top = searchpair('\\\[\|\\begin{','','\\\]\|\\end{','b')
- s/\\\[\|\\begin{.\{-}}/\=first/
- else
- let bottom = search('\$\$\|\\end{')
- s/\$\$\|\\end{.\{-}}/\=second/
- let top = search('\$\$\|\\begin{','b')
- s/\$\$\|\\begin{.\{-}}/\=first/
- end
- if a:delete != ''
- exe 'silent '. top . "," . bottom . 's/' . a:delete . '//e'
- endif
-
- if a:putInNonumber == 1
- exe top
- call search('\\end\|\\\\')
- if line('.') != bottom
- exe '.+1,' . bottom . 's/\\\\/\\nonumber\\\\/e'
- exe (bottom-1) . 's/\s*$/ \\nonumber/'
- endif
- endif
-
- if a:label == 1
- exe top
- if search("\\label", "W") > bottom
- exe top
- let local_label = input('Label? ')
- if local_label != ''
- put = '\label{'.local_label.'}'
- endif
- normal $
- endif
- else
- exe 'silent '.top . ',' . bottom . ' g/\\label/delete'
- endif
-
- if exists('local_label') && local_label != ''
- exe start_line + 1.' | normal! '.start_col.'|'
- else
- exe start_line.' | normal! '.start_col.'|'
- endif
- endfunction " }}}
-
-endif
-
-" }}}
-" Map <S-F1> through <S-F4> to insert environments {{{
-if g:Tex_HotKeyMappings != ''
-
- " SetUpHotKeys: maps <F1> through <F4> to insert environments
- " Description:
- function! <SID>SetUpHotKeys()
- let i = 1
- let envname = Tex_Strntok(g:Tex_HotKeyMappings, ',', i)
- while envname != ''
-
- exec 'inoremap <silent> <buffer> <S-F'.i.'> <C-r>=Tex_PutEnvironment("'.envname.'")<CR>'
-
- let i = i + 1
- let envname = Tex_Strntok(g:Tex_HotKeyMappings, ',', i)
-
- endwhile
-
- endfunction
-
-endif
-
-" }}}
-" Tex_SetFastEnvironmentMaps: function for setting up the <F5> and <S-F1>-<S-F4> keys {{{
-" Description: This function is made public so it can be called by the
-" SetTeXOptions() function in main.vim
-function! Tex_SetFastEnvironmentMaps()
- if g:Tex_PromptedEnvironments != ''
- call Tex_MakeMap("<F5>", "<Plug>Tex_FastEnvironmentInsert", 'i', '<silent> <buffer>')
- call Tex_MakeMap("<F5>", "<Plug>Tex_FastEnvironmentInsert", 'n', '<silent> <buffer>')
- call Tex_MakeMap("<F5>", "<Plug>Tex_FastEnvironmentInsert", 'v', '<silent> <buffer>')
- call Tex_MakeMap("<S-F5>", "<Plug>Tex_FastEnvironmentChange", 'i', '<silent> <buffer>')
- call Tex_MakeMap("<S-F5>", "<Plug>Tex_FastEnvironmentChange", 'n', '<silent> <buffer>')
- endif
- if g:Tex_HotKeyMappings != ''
- call s:SetUpHotKeys()
- endif
-endfunction " }}}
-
-" ==============================================================================
-" Contributions / Tex_InsertItem() from Johannes Tanzler
-" ==============================================================================
-" Tex_GetCurrentEnv: gets the current environment in which the cursor lies {{{
-" Description: handles cases such as:
-"
-" \begin{itemize}
-" \item first item
-" \item second item
-" \begin{description}
-" \item first desc
-" \item second
-" % Tex_GetCurrentEnv will return "description" when called from here
-" \end{description}
-" \item third item
-" % Tex_GetCurrentEnv will return "itemize" when called from here
-" \end{itemize}
-" % Tex_GetCurrentEnv will return "" when called from here
-"
-" Author: Alan Schmitt
-function! Tex_GetCurrentEnv()
- let pos = line('.').' | normal! '.virtcol('.').'|'
- let i = 0
- while 1
- let env_line = search('^[^%]*\\\%(begin\|end\){', 'bW')
- if env_line == 0
- " we reached the beginning of the file, so we return the empty string
- exe pos
- return ''
- endif
- if match(getline(env_line), '^[^%]*\\begin{') == -1
- " we found a \\end, so we keep searching
- let i = i + 1
- continue
- else
- " we found a \\begin which has not been \\end'ed. we are done.
- if i == 0
- let env = matchstr(getline(env_line), '\\begin{\zs.\{-}\ze}')
- exe pos
- return env
- else
- " this \\begin closes a \\end, continue searching.
- let i = i - 1
- continue
- endif
- endif
- endwhile
-endfunction
-" }}}
-" Tex_InsertItem: insert \item into a list {{{
-" Description: Find last \begin line, extract env name, return to the start
-" position and insert proper \item, depending on env name.
-" Env names are stored in g: variables it can be used by
-" package files.
-
-TexLet g:Tex_ItemStyle_itemize = '\item '
-TexLet g:Tex_ItemStyle_enumerate = '\item '
-TexLet g:Tex_ItemStyle_theindex = '\item '
-TexLet g:Tex_ItemStyle_thebibliography = '\item[<+biblabel+>]{<+bibkey+>} <++>'
-TexLet g:Tex_ItemStyle_description = '\item[<+label+>] <++>'
-
-function! Tex_InsertItem()
- " Get current enclosing environment
- let env = Tex_GetCurrentEnv()
-
- if exists('g:Tex_ItemStyle_'.env)
- return IMAP_PutTextWithMovement(g:Tex_ItemStyle_{env})
- else
- return ''
- endif
-endfunction
-" }}}
-" Tex_SetItemMaps: sets the \item inserting maps for current buffer {{{
-" Description:
-
-inoremap <script> <silent> <Plug>Tex_InsertItemOnThisLine <Esc>a<C-r>=Tex_InsertItem()<CR>
-inoremap <script> <silent> <Plug>Tex_InsertItemOnNextLine <ESC>o<C-R>=Tex_InsertItem()<CR>
-
-function! Tex_SetItemMaps()
- if !hasmapto("<Plug>Tex_InsertItem", "i")
- imap <buffer> <M-i> <Plug>Tex_InsertItemOnThisLine
- endif
- if !hasmapto("<Plug>Tex_InsertItemOnNextLine", "i")
- imap <buffer> <C-CR> <Plug>Tex_InsertItemOnNextLine
- endif
-endfunction " }}}
-
-" ==============================================================================
-" Implementation of Fast Environment commands for LaTeX commands
-" ==============================================================================
-" Define certain commonly used command definitions {{{
-
-TexLet g:Tex_Com_{'newtheorem'} = '\newtheorem{<+name+>}{<+caption+>}[<+within+>]'
-TexLet g:Tex_Com_{'frac'} = '\frac{<+n+>}{<+d+>}<++>'
-
-" }}}
-" PromptForCommand: prompts for a command {{{
-" Description:
-function! PromptForCommand(ask)
- let common_com_prompt =
- \ Tex_CreatePrompt(g:Tex_PromptedCommands, 2, ',') . "\n" .
- \ "Enter number or command name :"
-
- let inp = input(a:ask."\n".common_com_prompt)
- if inp =~ '^[0-9]\+$'
- let com = Tex_Strntok(g:Tex_PromptedCommands, ',', inp)
- else
- let com = inp
- endif
-
- return com
-endfunction " }}}
-" Tex_DoCommand: fast insertion of commands {{{
-" Description:
-"
-function! Tex_DoCommand(isvisual)
- " If the current line is empty or if a visual selection has been made,
- " prompt for a new environment.
- if getline('.') == '' || a:isvisual == 'yes'
- let com = PromptForCommand('Choose a command to insert: ')
- if com != ''
- return Tex_PutCommand(com, a:isvisual)
- else
- return ''
- endif
- else
- " We want to find out the word under the cursor without issuing
- " any movement commands.
- let presline = getline('.')
- let c = col('.')
-
- let wordbef = matchstr(strpart(presline, 0, c-1), '\k\+\*\?$')
- let wordaft = matchstr(strpart(presline, c-1), '^\k\+\*\?')
-
- let word = wordbef . wordaft
- call Tex_Debug("Tex_DoCommand: wordbef = [".wordbef."], wordaft = [".wordaft."], word = [".word."]", 'env')
-
- " We use \<Del> instead of \<Bs> because \<Bs> does not work
- " unless bs=2
- if word != ''
- return substitute(wordbef, '.', "\<Left>", 'g')
- \ . substitute(word, '.', "\<Del>", 'g')
- \ . Tex_PutCommand(word, a:isvisual)
- else
- let cmd = PromptForCommand('Choose a command to insert: ')
- if cmd != ''
- return Tex_PutCommand(cmd, a:isvisual)
- else
- return ''
- endif
- endif
- endif
-endfunction " }}}
-" Tex_PutCommand: calls various specialized functions {{{
-" Description:
-" Based on input argument, it calls various specialized functions.
-function! Tex_PutCommand(com, isvisual)
- if a:isvisual == "yes"
- if a:com == '$'
- return VEnclose('$', '$', '$', '$')
- elseif a:com == '\\('
- return VEnclose('\\(', '\\)', '\\(', '\\)')
- else
- return VEnclose("\\".a:com.'{', '}', "\\".a:com.'{', '}')
- endif
- else
- if exists('b:Tex_Com_{"'.a:com.'"}')
- return IMAP_PutTextWithMovement(b:Tex_Com_{a:com})
- elseif exists('g:Tex_Com_{"'.a:com.'"}')
- return IMAP_PutTextWithMovement(g:Tex_Com_{a:com})
- elseif a:com == '$'
- return IMAP_PutTextWithMovement('$<++>$')
- else
- return IMAP_PutTextWithMovement("\\".a:com.'{<++>}<++>')
- endif
- endif
-endfunction " }}}
-" Mapping the <F7> key to prompt/insert for command {{{
-" and <S-F7> to prompt/replace command
-"
-" g:Tex_PromptedCommands is a variable containing a comma seperated list
-" of commands.
-"
-" Leaving this empty is equivalent to disabling the feature.
-if g:Tex_PromptedCommands != ''
-
- let b:DoubleDollars = 0
-
- inoremap <silent> <Plug>Tex_FastCommandInsert <C-r>=Tex_DoCommand('no')<cr>
- nnoremap <silent> <Plug>Tex_FastCommandInsert i<C-r>=Tex_DoCommand('no')<cr>
- vnoremap <silent> <Plug>Tex_FastCommandInsert <C-\><C-N>:call Tex_DoCommand('yes')<CR>
-
- inoremap <silent> <Plug>Tex_FastCommandChange <C-O>:call Tex_ChangeCommand('no')<CR>
- nnoremap <silent> <Plug>Tex_FastCommandChange :call Tex_ChangeCommand('no')<CR>
-
- " Tex_ChangeCommand: calls ChangeCommand() to change the environment {{{
- " Description:
- " Finds out which environment the cursor is positioned in and changes
- " that to the chosen new environment. This function knows the changes
- " which need to be made to change one env to another and calls
- " ChangeCommand() with the info.
- "
- function! Tex_ChangeCommand(isvisual)
-
- let pos_com = line('.').' | normal! '.virtcol('.').'|'
-
- let com_line = searchpair('\\\k\{-}{', '', '}', 'b')
-
- if com_line != 0
- normal l
- let com_name = expand('<cword>')
- endif
-
- if !exists('com_name')
- echomsg "You are not inside command"
- exe pos_com
- return 0
- endif
-
- exe 'echomsg "You are within a '.com_name.' command."'
- let change_com = PromptForCommand('Do you want to change it to (number or name)? ')
-
- if change_com == ''
- exe pos_com
- return 0
- else
- call <SID>ChangeCommand(change_com)
- exe pos_com
- return 0
- endif
-
- endfunction
-
- " }}}
- " ChangeCommand: Changes current command according to prompt menu {{{
- " Description:
- "
- function! s:ChangeCommand(newcom)
-
- exe 'normal! ct{'.a:newcom."\<Esc>"
-
- endfunction
- " }}}
-
-endif
-
-" }}}
-" Tex_SetFastCommandMaps: function for setting up the <F7> keys {{{
-" Description: This function is made public so it can be called by the
-" SetTeXOptions() function in main.vim
-function! Tex_SetFastCommandMaps()
- if g:Tex_PromptedCommands != ''
- if !hasmapto('<Plug>Tex_FastCommandInsert', 'i')
- imap <silent> <buffer> <F7> <Plug>Tex_FastCommandInsert
- endif
- if !hasmapto('<Plug>Tex_FastCommandInsert', 'n')
- nmap <silent> <buffer> <F7> <Plug>Tex_FastCommandInsert
- endif
- if !hasmapto('<Plug>Tex_FastCommandChange', 'i')
- imap <silent> <buffer> <S-F7> <Plug>Tex_FastCommandChange
- endif
- if !hasmapto('<Plug>Tex_FastCommandChange', 'n')
- nmap <silent> <buffer> <S-F7> <Plug>Tex_FastCommandChange
- endif
- if !hasmapto('<Plug>Tex_FastCommandInsert', 'v')
- vmap <silent> <buffer> <F7> <Plug>Tex_FastCommandInsert
- endif
- endif
-endfunction " }}}
-
-" SetEnvMacrosOptions: sets mappings for buffers {{{
-" " Description:
-function! <SID>SetEnvMacrosOptions()
- if exists('b:doneTexEnvMaps')
- return
- endif
- let b:doneTexEnvMaps = 1
- if g:Tex_PromptedEnvironments != '' || g:Tex_HotKeyMappings != ''
- call Tex_SetFastEnvironmentMaps()
- endif
- if g:Tex_PromptedCommands != ''
- call Tex_SetFastCommandMaps()
- endif
- call Tex_SetItemMaps()
-endfunction " }}}
-" Catch the Filetype event so we set maps for each buffer {{{
-augroup LatexSuite
- au LatexSuite User LatexSuiteFileType
- \ call Tex_Debug('envmacros.vim: Catching LatexSuiteFileType event', 'env') |
- \ call s:SetEnvMacrosOptions()
-augroup END
-" }}}
-
-" this statement has to be at the end.
-let s:doneOnce = 1
-
-" vim:fdm=marker:nowrap:noet:ff=unix