mirror of
				https://github.com/kastdeur/dotfiles.git
				synced 2025-10-31 03:06:35 +01:00 
			
		
		
		
	Added vim plugin + autoindent\n use vi if vim is typed and not available
This commit is contained in:
		
							parent
							
								
									ef8bf8ac54
								
							
						
					
					
						commit
						061f80b9b9
					
				
					 144 changed files with 30057 additions and 0 deletions
				
			
		|  | @ -20,6 +20,8 @@ alias l='ls -CF' | |||
| # Use vim if possible instead of vi | ||||
| if [[ $(command -v vim) ]]; then | ||||
| 	alias vi='vim' | ||||
| else | ||||
| 	alias vim='vi' | ||||
| fi | ||||
| 
 | ||||
| # Reload bashrc | ||||
|  |  | |||
							
								
								
									
										40
									
								
								vim/vim-latex/.gitignore
									
										
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										40
									
								
								vim/vim-latex/.gitignore
									
										
									
									
										vendored
									
									
										Executable file
									
								
							|  | @ -0,0 +1,40 @@ | |||
| ## To see if new rules exclude any existing files, run | ||||
| ## | ||||
| ##   git ls-files -i --exclude-standard | ||||
| ## | ||||
| ## after modifying this file. | ||||
| 
 | ||||
| ## Generated by the build process | ||||
| 
 | ||||
| ## Editor backup and swap files | ||||
| *~ | ||||
| .\#* | ||||
| \#**\# | ||||
| .*.sw[op] | ||||
| .sw[op] | ||||
| 
 | ||||
| ## Generated by Mac filesystem | ||||
| .DS_Store | ||||
| 
 | ||||
| ## For rejects | ||||
| *.orig | ||||
| *.rej | ||||
| *.ancestor | ||||
| *.current | ||||
| *.patched | ||||
| 
 | ||||
| ## Generated by StGit | ||||
| patches-* | ||||
| .stgit-*.txt | ||||
| 
 | ||||
| ## Documentation building | ||||
| doc/db2vim/domutils.pyc | ||||
| doc/db2vim/textutils.pyc | ||||
| doc/latex-suite/ | ||||
| doc/latex-suite.html | ||||
| doc/latex-suite-quickstart/ | ||||
| doc/latex-suite-quickstart.html | ||||
| 
 | ||||
| ## Pathogen (to make it easier to use vim-latex-git) | ||||
| doc/tags | ||||
| *.pyc | ||||
							
								
								
									
										29
									
								
								vim/vim-latex/Makefile
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										29
									
								
								vim/vim-latex/Makefile
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,29 @@ | |||
| PREFIX=/usr/local | ||||
| VIMDIR=$(PREFIX)/share/vim | ||||
| BINDIR=$(PREFIX)/bin | ||||
| 
 | ||||
| VERSION=1.8.23 | ||||
| DATE=$(shell date +%Y%m%d) | ||||
| COMMIT_COUNT=$(shell git log --oneline | wc -l) | ||||
| ABBREV_HASH=$(shell git log --oneline | head -n 1 | cut -d\  -f 1) | ||||
| 
 | ||||
| SNAPSHOTNAME=vim-latex-$(VERSION)-$(DATE).$(COMMIT_COUNT)-git$(ABBREV_HASH) | ||||
| 
 | ||||
| snapshot: | ||||
| 	git archive --prefix '$(SNAPSHOTNAME)/' HEAD | gzip > '$(SNAPSHOTNAME).tar.gz' | ||||
| 
 | ||||
| install: | ||||
| 	install -d '$(DESTDIR)$(VIMDIR)/doc' | ||||
| 	install -m 0644 doc/*.txt '$(DESTDIR)$(VIMDIR)/doc' | ||||
| 
 | ||||
| 	install -d '$(DESTDIR)$(VIMDIR)' | ||||
| 	cp -R compiler ftplugin indent plugin '$(DESTDIR)$(VIMDIR)' | ||||
| 	chmod 0755 '$(DESTDIR)$(VIMDIR)/ftplugin/latex-suite/outline.py' | ||||
| 
 | ||||
| 	install -d '$(DESTDIR)$(BINDIR)' | ||||
| 	install latextags ltags '$(DESTDIR)$(BINDIR)' | ||||
| 
 | ||||
| upload: snapshot | ||||
| 	scp '$(SNAPSHOTNAME).tar.gz' frs.sourceforge.net:/home/frs/project/v/vi/vim-latex/snapshots | ||||
| 
 | ||||
| .PHONY: install upload | ||||
							
								
								
									
										133
									
								
								vim/vim-latex/Makefile.in
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										133
									
								
								vim/vim-latex/Makefile.in
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,133 @@ | |||
| CVSUSER = srinathava | ||||
| SSHCMD = ssh1 | ||||
| DIR1 = $(PWD) | ||||
| 
 | ||||
| .PHONY: latexs clean release updoc uphtdocs ltt changelog install stallin sync | ||||
| 
 | ||||
| # The main target. This creates a latex suite archive (zip and tar.gz
 | ||||
| # format) ensuring that all the files in the archive are in unix format so
 | ||||
| # unix people can use it too...
 | ||||
| latexs: | ||||
| 	# plugins: | ||||
| 	zip -q latexSuite.zip plugin/imaps.vim | ||||
| 	zip -q latexSuite.zip plugin/SyntaxFolds.vim | ||||
| 	zip -q latexSuite.zip plugin/libList.vim | ||||
| 	zip -q latexSuite.zip plugin/remoteOpen.vim | ||||
| 	zip -q latexSuite.zip plugin/filebrowser.vim | ||||
| 	# ftplugins | ||||
| 	zip -q latexSuite.zip ftplugin/tex_latexSuite.vim | ||||
| 	zip -q latexSuite.zip ftplugin/bib_latexSuite.vim | ||||
| 	zip -q latexSuite.zip ftplugin/tex/*.vim | ||||
| 	# files in the latex-suite directory | ||||
| 	zip -q -R latexSuite.zip `find ftplugin/latex-suite -name '*'` | ||||
| 	# documentation | ||||
| 	zip -q latexSuite.zip doc/latex*.txt | ||||
| 	zip -q latexSuite.zip doc/imaps*.txt | ||||
| 	# indentation | ||||
| 	zip -q latexSuite.zip indent/tex.vim | ||||
| 	# compiler | ||||
| 	zip -q latexSuite.zip compiler/tex.vim | ||||
| 	# external tools | ||||
| 	zip -q latexSuite.zip ltags | ||||
| 
 | ||||
| 	# Now to make a tar.gz file from the .zip file. | ||||
| 	rm -rf $(TMP)/latexSuite0793 | ||||
| 	mkdir -p $(TMP)/latexSuite0793 | ||||
| 	cp latexSuite.zip $(TMP)/latexSuite0793/ | ||||
| 	( \
 | ||||
| 		cd $(TMP)/latexSuite0793/ ; \
 | ||||
| 		unzip -q -o latexSuite.zip ; \
 | ||||
| 		\rm latexSuite.zip ; \
 | ||||
| 		tar czf latexSuite.tar.gz * ; \
 | ||||
| 		\mv latexSuite.tar.gz $(DIR1)/ ; \
 | ||||
| 	) | ||||
| 	mv latexSuite.zip latexSuite`date +%Y%m%d`.zip ; \
 | ||||
| 	mv latexSuite.tar.gz latexSuite`date +%Y%m%d`.tar.gz ; \
 | ||||
| 
 | ||||
| # target for removing archive files.
 | ||||
| clean: | ||||
| 	rm -f latexSuite200* | ||||
| 
 | ||||
| # make a local install directory.
 | ||||
| ltt: | ||||
| 	rm -rf /tmp/ltt/vimfiles/ftplugin | ||||
| 	cp -f latexSuite.zip /tmp/ltt/vimfiles/ | ||||
| 	cd /tmp/ltt/vimfiles; unzip latexSuite.zip | ||||
| 
 | ||||
| # This target is related to a script I have on my sf.net account. That
 | ||||
| # script looks like:
 | ||||
| #
 | ||||
| # #!/bin/bash
 | ||||
| # cd ~/testing/vimfiles; \
 | ||||
| # cvs -q update; \
 | ||||
| # make clean; \
 | ||||
| # make; \
 | ||||
| # cp latexsuite.* ~/htdocs/download/
 | ||||
| #
 | ||||
| # Doing a release via sf.net has a couple of advantages:
 | ||||
| # - I do not have to bother with CRLF pain anymore because the copy on
 | ||||
| #   sf.net will always have unix style EOLs.
 | ||||
| # - The process is much faster because I only need to communicate a command
 | ||||
| #   from my computer to sf.net. The rest is done locally on the sf.net
 | ||||
| #   server.
 | ||||
| release: | ||||
| 	$(SSHCMD) $(CVSUSER)@vim-latex.sf.net /home/groups/v/vi/vim-latex/bin/upload | ||||
| 
 | ||||
| updoc: | ||||
| 	$(SSHCMD) $(CVSUSER)@vim-latex.sf.net /home/groups/v/vi/vim-latex/bin/updoc | ||||
| 
 | ||||
| # This is another target akin to the release: target. This target updates
 | ||||
| # the htdocs directory of the latex-suite project to the latest CVS
 | ||||
| # version.
 | ||||
| # This is again related to the uphtdocs script on my sf.net account which
 | ||||
| # looks like:
 | ||||
| # #!/bin/sh
 | ||||
| #
 | ||||
| # # update the htdocs directory
 | ||||
| # cd /home/groups/v/vi/vim-latex/htdocs; cvs -q update
 | ||||
| # # update the packages directory
 | ||||
| # cd /home/groups/v/vi/vim-latex/htdocs/packages; cvs -q update
 | ||||
| uphtdocs: | ||||
| 	$(SSHCMD) $(CVSUSER)@vim-latex.sf.net /home/groups/v/vi/vim-latex/bin/uphtdocs | ||||
| 
 | ||||
| # Automatically generate the Changelog file using the cvs2cl utility
 | ||||
| #
 | ||||
| # Arguments:
 | ||||
| # -S			add a seperating line between filename and log
 | ||||
| #  --no-wrap	Do not attempt to format the Changelog comments
 | ||||
| #  -f			file to write the Changelog to.
 | ||||
| changelog: | ||||
| 	cvs2cl -S --no-wrap -f ftplugin/latex-suite/ChangeLog | ||||
| 
 | ||||
| # rsync is like cp (copy) on steroids.  Here are some useful options:
 | ||||
| # -C	auto ignore like CVS
 | ||||
| # -r	recurse into directories
 | ||||
| # -t	preserve times
 | ||||
| # -u	update (do not overwrite newer files)
 | ||||
| # -W	whole files, no incremental checks (default for local usage)
 | ||||
| # --existing	only update files that already exist
 | ||||
| # --exclude	exclude files matching the pattern
 | ||||
| # -n	dry run (for testing)
 | ||||
| 
 | ||||
| # Usage:  after "cvs update", do
 | ||||
| #   make install [VIMFILES=path/to/vimfiles]
 | ||||
| # Before "cvs commit", do
 | ||||
| #   make stallin [VIMFILES=path/to/vimfiles]
 | ||||
| # If you have made changes in both directories, and want to keep the most
 | ||||
| # recent versions, do
 | ||||
| #   make sync [VIMFILES=path/to/vimfiles]
 | ||||
| # Note:  defining VIMFILES when you invoke make overrides the value below.
 | ||||
| # Warning:  install and stallin do not check modification times!
 | ||||
| 
 | ||||
| VIMFILES=${HOME}/.vim | ||||
| EXCLUDE="--exclude='*~' --exclude='*.swp' --exclude='makefile'" | ||||
| 
 | ||||
| install: | ||||
| 	rsync -CrtW ${EXCLUDE} . ${VIMFILES} | ||||
| 
 | ||||
| # stallin = reverse install
 | ||||
| # If you can think of a better name for this target, be my guest!
 | ||||
| stallin: | ||||
| 	rsync -CrtW --existing ${VIMFILES}/ . | ||||
| 
 | ||||
| sync: install stallin | ||||
							
								
								
									
										298
									
								
								vim/vim-latex/compiler/tex.vim
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										298
									
								
								vim/vim-latex/compiler/tex.vim
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,298 @@ | |||
| "            File: tex.vim | ||||
| "            Type: compiler plugin for LaTeX | ||||
| " Original Author: Artem Chuprina <ran@ran.pp.ru> | ||||
| "   Customization: Srinath Avadhanula <srinath@fastmail.fm> | ||||
| " Description:  {{{ | ||||
| "   This file sets the 'makeprg' and 'errorformat' options for the LaTeX | ||||
| "   compiler. It is customizable to optionally ignore certain warnings and | ||||
| "   provides the ability to set a dynamic 'ignore-warning' level. | ||||
| " | ||||
| "   By default it is set up in a 'non-verbose', 'ignore-common-warnings' mode, | ||||
| "   which means that irrelevant lines from the compilers output will be | ||||
| "   ignored and also some very common warnings are ignored. | ||||
| "    | ||||
| "   Depending on the 'ignore-level', the following kinds of messages are | ||||
| "   ignored. An ignore level of 3 for instance means that messages 1-3 will be | ||||
| "   ignored. By default, the ignore level is set to 4.  | ||||
| " | ||||
| "   1. LaTeX Warning: Specifier 'h' changed to 't'.  | ||||
| "      This errors occurs when TeX is not able to correctly place a floating | ||||
| "      object at a specified location, because of which it defaulted to the | ||||
| "      top of the page. | ||||
| "   2. LaTeX Warning: Underfull box ... | ||||
| "   3. LaTeX Warning: Overfull box ... | ||||
| "      both these warnings (very common) are due to \hbox settings not being | ||||
| "      satisfied nicely. | ||||
| "   4. LaTeX Warning: You have requested ...,  | ||||
| "      This warning occurs in slitex when using the xypic package. | ||||
| "   5. Missing number error: | ||||
| "      Usually, when the name of an included eps file is spelled incorrectly, | ||||
| "      then the \bb-error message is accompanied by a bunch of "missing | ||||
| "      number, treated as zero" error messages. This level ignores these | ||||
| "      warnings. | ||||
| "      NOTE: number 5 is actually a latex error, not a warning! | ||||
| " | ||||
| "   Use  | ||||
| "       TCLevel <level> | ||||
| "   where level is a number to set the ignore level dynamically. | ||||
| " | ||||
| "   When TCLevel is called with the unquoted string strict | ||||
| "      TClevel strict | ||||
| "    then the 'efm' switches to a 'verbose', 'no-lines-ignored' mode which is | ||||
| "    useful when you want to make final checks of your document and want to be | ||||
| "    careful not to let things slip by. | ||||
| "  | ||||
| " TIP: MikTeX has a bug where it sometimes erroneously splits a line number | ||||
| "      into multiple lines. i.e, if the warning is on line 1234. the compiler | ||||
| "      output is: | ||||
| "      LaTeX Warning: ... on input line 123 | ||||
| "      4. | ||||
| "      In this case, vim will wrongly interpret the line-number as 123 instead | ||||
| "      of 1234. If you have cygwin, a simple remedy around this is to first | ||||
| "      copy the file vimlatex (provided) into your $PATH, make sure its | ||||
| "      executable and then set the variable g:tex_flavor to vimlatex in your | ||||
| "      ~/.vimrc (i.e putting let "g:tex_flavor = 'vimlatex'" in your .vimrc). | ||||
| "      This problem occurs rarely enough that its not a botheration for most | ||||
| "      people. | ||||
| " | ||||
| " TODO: | ||||
| "   1. menu items for dynamically selecting a ignore warning level. | ||||
| " }}} | ||||
| 
 | ||||
| " avoid reinclusion for the same buffer. keep it buffer local so it can be | ||||
| " externally reset in case of emergency re-sourcing. | ||||
| if exists('b:doneTexCompiler') && !exists('b:forceRedoTexCompiler') | ||||
| 	finish | ||||
| endif | ||||
| let b:doneTexCompiler = 1 | ||||
| 
 | ||||
| " ============================================================================== | ||||
| " Customization of 'efm':  {{{ | ||||
| " This section contains the customization variables which the user can set. | ||||
| " g:Tex_IgnoredWarnings: This variable contains a ¡ seperated list of | ||||
| " patterns which will be ignored in the TeX compiler's output. Use this | ||||
| " carefully, otherwise you might end up losing valuable information. | ||||
| if !exists('g:Tex_IgnoredWarnings') | ||||
| 	let g:Tex_IgnoredWarnings = | ||||
| 		\'Underfull'."\n". | ||||
| 		\'Overfull'."\n". | ||||
| 		\'specifier changed to'."\n". | ||||
| 		\'You have requested'."\n". | ||||
| 		\'Missing number, treated as zero.'."\n". | ||||
| 		\'There were undefined references'."\n". | ||||
| 		\'Citation %.%# undefined' | ||||
| endif | ||||
| " This is the number of warnings in the g:Tex_IgnoredWarnings string which | ||||
| " will be ignored. | ||||
| if !exists('g:Tex_IgnoreLevel') | ||||
| 	let g:Tex_IgnoreLevel = 7 | ||||
| endif | ||||
| " There will be lots of stuff in a typical compiler output which will | ||||
| " completely fall through the 'efm' parsing. This options sets whether or not | ||||
| " you will be shown those lines. | ||||
| if !exists('g:Tex_IgnoreUnmatched') | ||||
| 	let g:Tex_IgnoreUnmatched = 1 | ||||
| endif | ||||
| " With all this customization, there is a slight risk that you might be | ||||
| " ignoring valid warnings or errors. Therefore before getting the final copy | ||||
| " of your work, you might want to reset the 'efm' with this variable set to 1. | ||||
| " With that value, all the lines from the compiler are shown irrespective of | ||||
| " whether they match the error or warning patterns. | ||||
| " NOTE: An easier way of resetting the 'efm' to show everything is to do | ||||
| "       TCLevel strict | ||||
| if !exists('g:Tex_ShowallLines') | ||||
| 	let g:Tex_ShowallLines = 0 | ||||
| endif | ||||
| 
 | ||||
| " }}} | ||||
| " ============================================================================== | ||||
| " Customization of 'makeprg': {{{ | ||||
| 
 | ||||
| " There are several alternate ways in which 'makeprg' is set up.  | ||||
| " | ||||
| " Case 1 | ||||
| " ------ | ||||
| " The first is when this file is a part of latex-suite. In this case, a | ||||
| " variable called g:Tex_DefaultTargetFormat exists, which gives the default | ||||
| " format .tex files should be compiled into. In this case, we use the TTarget | ||||
| " command provided by latex-suite. | ||||
| " | ||||
| " Case 2 | ||||
| " ------ | ||||
| " The user is using this file without latex-suite AND he wants to directly | ||||
| " specify the complete 'makeprg'. Then he should set the g:Tex_CompileRule_dvi | ||||
| " variable. This is a string which should be directly be able to be cast into | ||||
| " &makeprg. An example of one such string is: | ||||
| " | ||||
| " 	g:Tex_CompileRule_dvi = 'pdflatex \\nonstopmode \\input\{$*\}' | ||||
| " | ||||
| " NOTE: You will need to escape back-slashes, {'s etc yourself if you are | ||||
| "       using this file independently of latex-suite. | ||||
| " TODO: Should we also have a check for backslash escaping here based on | ||||
| "       platform? | ||||
| " | ||||
| " Case 3 | ||||
| " ------ | ||||
| " The use is using this file without latex-suite and he doesnt want any | ||||
| " customization. In this case, this file makes some intelligent guesses based | ||||
| " on the platform. If he doesn't want to specify the complete 'makeprg' but | ||||
| " only the name of the compiler program (for example 'pdflatex' or 'latex'), | ||||
| " then he sets b:tex_flavor or g:tex_flavor.  | ||||
| 
 | ||||
| if exists('g:Tex_DefaultTargetFormat') | ||||
| 	exec 'TTarget '.g:Tex_DefaultTargetFormat | ||||
| elseif exists('g:Tex_CompileRule_dvi') | ||||
| 	let &l:makeprg = g:Tex_CompileRule_dvi | ||||
| else | ||||
| 	" If buffer-local variable 'tex_flavor' exists, it defines TeX flavor, | ||||
| 	" otherwize the same for global variable with same name, else it will be LaTeX | ||||
| 	if exists("b:tex_flavor") | ||||
| 		let current_compiler = b:tex_flavor | ||||
| 	elseif exists("g:tex_flavor") | ||||
| 		let current_compiler = g:tex_flavor | ||||
| 	else | ||||
| 		let current_compiler = "latex" | ||||
| 	end | ||||
| 	if has('win32') | ||||
| 		let escChars = '' | ||||
| 	else | ||||
| 		let escChars = '{}\' | ||||
| 	endif | ||||
| 	" Furthermore, if 'win32' is detected, then we want to set the arguments up so | ||||
| 	" that miktex can handle it. | ||||
| 	if has('win32') | ||||
| 		let options = '--src-specials' | ||||
| 	else | ||||
| 		let options = '' | ||||
| 	endif | ||||
| 	let &l:makeprg = current_compiler . ' ' . options . | ||||
| 				\ escape(' \nonstopmode \input{$*}', escChars) | ||||
| endif | ||||
| 
 | ||||
| " }}} | ||||
| " ============================================================================== | ||||
| " Functions for setting up a customized 'efm' {{{ | ||||
| 
 | ||||
| " IgnoreWarnings: parses g:Tex_IgnoredWarnings for message customization {{{ | ||||
| " Description:  | ||||
| function! <SID>IgnoreWarnings() | ||||
| 	let i = 1 | ||||
| 	while s:Strntok(g:Tex_IgnoredWarnings, "\n", i) != '' && | ||||
| 				\ i <= g:Tex_IgnoreLevel | ||||
| 		let warningPat = s:Strntok(g:Tex_IgnoredWarnings, "\n", i) | ||||
| 		let warningPat = escape(substitute(warningPat, '[\,]', '%\\\\&', 'g'), ' ') | ||||
| 		exe 'setlocal efm+=%-G%.%#'.warningPat.'%.%#' | ||||
| 		let i = i + 1 | ||||
| 	endwhile | ||||
| endfunction  | ||||
| 
 | ||||
| " }}} | ||||
| " SetLatexEfm: sets the 'efm' for the latex compiler {{{ | ||||
| " Description:  | ||||
| function! <SID>SetLatexEfm() | ||||
| 
 | ||||
| 	let pm = ( g:Tex_ShowallLines == 1 ? '+' : '-' ) | ||||
| 
 | ||||
| 	setlocal efm= | ||||
| 	" remove default error formats that cause issues with revtex, where they | ||||
| 	" match version messages | ||||
| 	" Reference: http://bugs.debian.org/582100 | ||||
| 	setlocal efm-=%f:%l:%m | ||||
| 	setlocal efm-=%f:%l:%c:%m | ||||
| 
 | ||||
| 	if !g:Tex_ShowallLines | ||||
| 		call s:IgnoreWarnings() | ||||
| 	endif | ||||
| 
 | ||||
| 	setlocal efm+=%E!\ LaTeX\ %trror:\ %m | ||||
| 	setlocal efm+=%E!\ %m | ||||
| 	setlocal efm+=%E%f:%l:\ %m | ||||
| 
 | ||||
| 	setlocal efm+=%+WLaTeX\ %.%#Warning:\ %.%#line\ %l%.%# | ||||
| 	setlocal efm+=%+W%.%#\ at\ lines\ %l--%*\\d | ||||
| 	setlocal efm+=%+WLaTeX\ %.%#Warning:\ %m | ||||
| 
 | ||||
| 	exec 'setlocal efm+=%'.pm.'Cl.%l\ %m' | ||||
| 	exec 'setlocal efm+=%'.pm.'Cl.%l\ ' | ||||
| 	exec 'setlocal efm+=%'.pm.'C\ \ %m' | ||||
| 	exec 'setlocal efm+=%'.pm.'C%.%#-%.%#' | ||||
| 	exec 'setlocal efm+=%'.pm.'C%.%#[]%.%#' | ||||
| 	exec 'setlocal efm+=%'.pm.'C[]%.%#' | ||||
| 	exec 'setlocal efm+=%'.pm.'C%.%#%[{}\\]%.%#' | ||||
| 	exec 'setlocal efm+=%'.pm.'C<%.%#>%m' | ||||
| 	exec 'setlocal efm+=%'.pm.'C\ \ %m' | ||||
| 	exec 'setlocal efm+=%'.pm.'GSee\ the\ LaTeX%m' | ||||
| 	exec 'setlocal efm+=%'.pm.'GType\ \ H\ <return>%m' | ||||
| 	exec 'setlocal efm+=%'.pm.'G\ ...%.%#' | ||||
| 	exec 'setlocal efm+=%'.pm.'G%.%#\ (C)\ %.%#' | ||||
| 	exec 'setlocal efm+=%'.pm.'G(see\ the\ transcript%.%#)' | ||||
| 	exec 'setlocal efm+=%'.pm.'G\\s%#' | ||||
| 	exec 'setlocal efm+=%'.pm.'O(%*[^()])%r' | ||||
| 	exec 'setlocal efm+=%'.pm.'P(%f%r' | ||||
| 	exec 'setlocal efm+=%'.pm.'P\ %\\=(%f%r' | ||||
| 	exec 'setlocal efm+=%'.pm.'P%*[^()](%f%r' | ||||
| 	exec 'setlocal efm+=%'.pm.'P(%f%*[^()]' | ||||
| 	exec 'setlocal efm+=%'.pm.'P[%\\d%[^()]%#(%f%r' | ||||
| 	if g:Tex_IgnoreUnmatched && !g:Tex_ShowallLines | ||||
| 		setlocal efm+=%-P%*[^()] | ||||
| 	endif | ||||
| 	exec 'setlocal efm+=%'.pm.'Q)%r' | ||||
| 	exec 'setlocal efm+=%'.pm.'Q%*[^()])%r' | ||||
| 	exec 'setlocal efm+=%'.pm.'Q[%\\d%*[^()])%r' | ||||
| 	if g:Tex_IgnoreUnmatched && !g:Tex_ShowallLines | ||||
| 		setlocal efm+=%-Q%*[^()] | ||||
| 	endif | ||||
| 	if g:Tex_IgnoreUnmatched && !g:Tex_ShowallLines | ||||
| 		setlocal efm+=%-G%.%# | ||||
| 	endif | ||||
| 
 | ||||
| endfunction  | ||||
| 
 | ||||
| " }}} | ||||
| " Strntok: extract the n^th token from a list {{{ | ||||
| " example: Strntok('1,23,3', ',', 2) = 23 | ||||
| fun! <SID>Strntok(s, tok, n) | ||||
| 	return matchstr( a:s.a:tok[0], '\v(\zs([^'.a:tok.']*)\ze['.a:tok.']){'.a:n.'}') | ||||
| endfun | ||||
| 
 | ||||
| " }}} | ||||
| " SetTexCompilerLevel: sets the "level" for the latex compiler {{{ | ||||
| function! <SID>SetTexCompilerLevel(...) | ||||
| 	if a:0 > 0 | ||||
| 		let level = a:1 | ||||
| 	else | ||||
| 		call Tex_ResetIncrementNumber(0) | ||||
| 		echo substitute(g:Tex_IgnoredWarnings,  | ||||
| 			\ '^\|\n\zs\S', '\=Tex_IncrementNumber(1)." ".submatch(0)', 'g') | ||||
| 		let level = input("\nChoose an ignore level: ") | ||||
| 		if level == '' | ||||
| 			return | ||||
| 		endif | ||||
| 	endif | ||||
| 	if level == 'strict' | ||||
| 		let g:Tex_ShowallLines = 1 | ||||
| 	elseif level =~ '^\d\+$' | ||||
| 		let g:Tex_ShowallLines = 0 | ||||
| 		let g:Tex_IgnoreLevel = level | ||||
| 	else | ||||
| 		echoerr "SetTexCompilerLevel: Unkwown option [".level."]" | ||||
| 	end | ||||
| 	call s:SetLatexEfm() | ||||
| endfunction  | ||||
| 
 | ||||
| com! -nargs=? TCLevel :call <SID>SetTexCompilerLevel(<f-args>) | ||||
| " }}} | ||||
| 
 | ||||
| " }}} | ||||
| " ============================================================================== | ||||
| 
 | ||||
| call s:SetLatexEfm() | ||||
| 
 | ||||
| if !exists('*Tex_Debug') | ||||
| 	function! Tex_Debug(...) | ||||
| 	endfunction | ||||
| endif | ||||
| 
 | ||||
| call Tex_Debug("compiler/tex.vim: sourcing this file", "comp") | ||||
| 
 | ||||
| " vim:fdm=marker:ff=unix:noet:ts=4:sw=4 | ||||
							
								
								
									
										62
									
								
								vim/vim-latex/doc/Makefile
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										62
									
								
								vim/vim-latex/doc/Makefile
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,62 @@ | |||
| projects = latex-suite latex-suite-quickstart | ||||
| htmlfiles = $(addsuffix .html, $(projects)) | ||||
| txtfiles = $(addsuffix .txt, $(projects)) | ||||
| cssfiles = $(addsuffix .css, $(projects)) | ||||
| all = $(projects) $(htmlfiles) $(cssfiles) $(txtfiles)  | ||||
| 
 | ||||
| 
 | ||||
| xsltproc=xsltproc | ||||
| db2vim=db2vim/db2vim | ||||
| 
 | ||||
| # Use for debugging:
 | ||||
| #xsltproc=strace -e trace=file xsltproc --nonet --load-trace 
 | ||||
| # export XML_DEBUG_CATALOG = 1
 | ||||
| 
 | ||||
| # Specify local catalog to not use system installed dtd/xsl files
 | ||||
| # export XML_CATALOG_FILES=catalog.xml
 | ||||
| 
 | ||||
| # User configuration of this Makefile goes into Makefile.local
 | ||||
| # E.g. to use a catalog file installed by the user.
 | ||||
| -include Makefile.local | ||||
| 
 | ||||
| # Default Target is to create all documentation files
 | ||||
| all: $(all) | ||||
| 
 | ||||
| # create multi page html (chunk xhtml)
 | ||||
| $(projects): %: %.xml latex-suite-chunk.xsl latex-suite-common.xsl | ||||
| 	$(xsltproc) -o $@/ latex-suite-chunk.xsl $< | ||||
| 
 | ||||
| # create single html files
 | ||||
| $(htmlfiles): %.html: %.xml latex-suite.xsl latex-suite-common.xsl | ||||
| 	$(xsltproc) -o $@ latex-suite.xsl $< | ||||
| 
 | ||||
| # create vim flat files
 | ||||
| latex-suite.txt: %.txt: %.xml | ||||
| 	$(db2vim) --prefix=ls_ $< > $@ | ||||
| 
 | ||||
| latex-suite-quickstart.txt: %.txt: %.xml | ||||
| 	$(db2vim) --prefix=lq_ $< > $@ | ||||
| 
 | ||||
| # validate xml
 | ||||
| validate: | ||||
| 	for file in *.xml; do \
 | ||||
| 		xmllint --valid --noout $$file; \
 | ||||
| 	done | ||||
| 
 | ||||
| clean: | ||||
| 	rm -f $(htmlfiles) | ||||
| 	rm -rf $(projects) | ||||
| 
 | ||||
| # $(txtfiles) are currently in revision control, therefore they are not
 | ||||
| # removed in the clean target
 | ||||
| mr-proper: clean | ||||
| 	rm -f $(txtfiles) | ||||
| 
 | ||||
| upload: $(all) | ||||
| # vim-latex-web is configured in ~/.ssh/config
 | ||||
| #Host vim-latex-web
 | ||||
| #    Hostname  web.sourceforge.net
 | ||||
| #    User SOURCEFORGE_USERNAME,vim-latex
 | ||||
| 	rsync --perms --chmod g+w,o-w --delete -lrtvz  $(all) vim-latex-web:/home/groups/v/vi/vim-latex/htdocs/documentation/ | ||||
| 
 | ||||
| # vim:nowrap
 | ||||
							
								
								
									
										29
									
								
								vim/vim-latex/doc/Makefile.in
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										29
									
								
								vim/vim-latex/doc/Makefile.in
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,29 @@ | |||
| # Manual files
 | ||||
| ls-flat: | ||||
| 	java com.icl.saxon.StyleSheet latex-suite.xml latex-suite.xsl > latex-suite.html | ||||
| 
 | ||||
| ls-chunk: | ||||
| 	( \
 | ||||
| 		cd latex-suite && \
 | ||||
| 		java com.icl.saxon.StyleSheet ../latex-suite.xml ../latex-suite-chunk.xsl \
 | ||||
| 	) | ||||
| 
 | ||||
| ls-txt: | ||||
| 	db2vim --prefix=ls_ latex-suite.xml > latex-suite.txt | ||||
| 
 | ||||
| # Quickstart files
 | ||||
| lsq-flat: | ||||
| 	java com.icl.saxon.StyleSheet latex-suite-quickstart.xml latex-suite.xsl > latex-suite-quickstart.html | ||||
| 
 | ||||
| lsq-chunk: | ||||
| 	( \
 | ||||
| 		cd latex-suite-quickstart && \
 | ||||
| 		java com.icl.saxon.StyleSheet ../latex-suite-quickstart.xml ../latex-suite-chunk.xsl \
 | ||||
| 	) | ||||
| 
 | ||||
| lsq-txt: | ||||
| 	db2vim --prefix=lq_ latex-suite-quickstart.xml > latex-suite-quickstart.txt | ||||
| 
 | ||||
| cvsci: | ||||
| 	cvs ci latex-suite.xml latex-suite.txt | ||||
| # vim:nowrap
 | ||||
							
								
								
									
										110
									
								
								vim/vim-latex/doc/README
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										110
									
								
								vim/vim-latex/doc/README
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,110 @@ | |||
| !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | ||||
| This file is outdated, please look at README.new for updated information | ||||
| !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | ||||
| 
 | ||||
| ==================================== | ||||
| Generating Latex-Suite documentation | ||||
| ==================================== | ||||
| 
 | ||||
| In order to generate the html files and vim-help files from the XML source, | ||||
| you will need to do follow the following steps. The steps are complex only | ||||
| for a windows machine. On most (modern) linux machines, the various | ||||
| utilities are already installed and all you need to do is some | ||||
| soft-linking. | ||||
| 
 | ||||
| 1. Download the Docbook XSL stylesheets from | ||||
| 
 | ||||
|         http://sourceforge.net/project/showfiles.php?group_id=21935 | ||||
|      | ||||
|    I downloaded docbook-xsl-1.61.2.tar.gz.  Unpack this archive under the | ||||
|    present directory. You should see something like:: | ||||
| 
 | ||||
|         ./docbook-xsl-1.XX.X/ | ||||
| 
 | ||||
|    Rename this to:: | ||||
| 
 | ||||
|         ./docbook-xsl | ||||
| 
 | ||||
|    Alternatively, if you are on a modern unix system, the docbook-xsl | ||||
|    stylesheets should already be installed on your system. Soft-linking | ||||
|    will thus work more simply. On a typical Debian box, just do:: | ||||
|     | ||||
|         ln -s  /usr/share/sgml/docbook/stylesheet/xsl/nwalsh docbook-xsl | ||||
| 
 | ||||
|    The docbook-xsl stylesheets can be installed via the docbook-xsl | ||||
|    package on Debian. (Just use apt-get). | ||||
| 
 | ||||
| 2. Download the Docbook DTD from | ||||
| 
 | ||||
|         http://www.oasis-open.org/docbook/xml/4.2/docbook-xml-4.2.zip | ||||
|          | ||||
|    Extract this into a subdirectory ``docbook-xml/`` under the present | ||||
|    directory. You should see something like:: | ||||
| 
 | ||||
|         ./docbook-xml/ | ||||
| 
 | ||||
|    with a file ``docbookx.dtd`` located there. | ||||
| 
 | ||||
|    **CAUTION**:  | ||||
|         The archive above does not create a top level directory but | ||||
|         unzips directly into the present directory. Therefore, make sure to | ||||
|         run the unzip by first creating ``./docbook-xml/``, copying the zip | ||||
|         file there and then unzipping. | ||||
| 
 | ||||
|    Alternatively, if you are on a modern unix system, the docbook-xml DTD | ||||
|    will already be installed. Softlinking will thus work. On a typical | ||||
|    Debian box, you could do:: | ||||
| 
 | ||||
|         ln -s /usr/share/sgml/docbook/dtd/xml/4.2 docbook-xml | ||||
| 
 | ||||
|    On debian, you need the docbook-xml package on Debian. (Just use | ||||
|    apt-get). | ||||
| 
 | ||||
| 3. Download saxon.jar from | ||||
| 
 | ||||
|         http://vim-latex.sourceforge.net/documentation/saxon.jar | ||||
| 
 | ||||
|    This is the bare .jar file without any of the other things which saxon | ||||
|    comes with.  Add the ``saxon.jar`` file to your ``$CLASSPATH`` setting. | ||||
| 
 | ||||
|    **NOTE:**  | ||||
|         The ``$CLASSPATH`` setting should point to the ``saxon.jar`` file, | ||||
|         not the directory where it resides. | ||||
| 
 | ||||
|    Again, on a unix system, you might not need to download this. For debian | ||||
|    systems, the saxon.jar file resides in:: | ||||
| 
 | ||||
|         /usr/share/java/saxon.jar | ||||
| 
 | ||||
|    You can point your ``$CLASSPATH`` to that file. | ||||
| 
 | ||||
| 4. Download db2vim (created by me :)) via anonymous cvs:: | ||||
| 
 | ||||
|         mkdir -p ~/bin/db2vim | ||||
|         cvs -d :pserver:anonymous@cvs.vim-latex.sf.net:/cvsroot/vim-latex \ | ||||
|             co -d ~/bin/db2vim db2vim | ||||
| 
 | ||||
|    Add the ``~/bin/db2vim/`` directory thus created to your ``$PATH`` | ||||
|    setting. | ||||
| 
 | ||||
| 5. Create a new directory ``latex-suite/`` under the present directory for | ||||
|    the chunked html files to reside in. You should see something like:: | ||||
| 
 | ||||
|         ./latex-suite/ | ||||
| 
 | ||||
| 6. Copy ``Makefile.in`` to ``Makefile`` or ``makefile`` and perform any | ||||
|    necessary customizations. For example, if you are using Activestate | ||||
|    python under windows, you will need to change the ls-txt: target as:: | ||||
| 
 | ||||
|         python e:/srinath/testing/db2vim/db2vim latex-suite.xml > latex-suite.txt | ||||
| 
 | ||||
| 
 | ||||
| Thats it! You are ready. Now you can do:: | ||||
| 
 | ||||
|     make ls-chunk | ||||
|     make ls-flat | ||||
|     make ls-txt | ||||
| 
 | ||||
| to create the 3 formats. | ||||
| 
 | ||||
| Author: Srinath Avadhanula <srinath@fastmail.fm> | ||||
							
								
								
									
										17
									
								
								vim/vim-latex/doc/README.new
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										17
									
								
								vim/vim-latex/doc/README.new
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,17 @@ | |||
| ==================================== | ||||
| Generating Latex-Suite documentation | ||||
| ==================================== | ||||
| 
 | ||||
| You need: | ||||
| - xsltproc | ||||
| - Docbook XSL stylesheets (*) | ||||
| - Docbook DTD (*) | ||||
| 
 | ||||
| (*) These files will be downloaded every time you create the documentation, | ||||
| unless you install or download them. | ||||
| 
 | ||||
| On Fedora, you can run as root: | ||||
| 
 | ||||
| yum install libxslt docbook-style-xsl docbook-dtds | ||||
| 
 | ||||
| to install the required packages. | ||||
							
								
								
									
										12
									
								
								vim/vim-latex/doc/catalog.xml
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										12
									
								
								vim/vim-latex/doc/catalog.xml
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,12 @@ | |||
| <?xml version="1.0"?> | ||||
| <!DOCTYPE catalog | ||||
|    PUBLIC "-//OASIS/DTD Entity Resolution XML Catalog V1.0//EN" | ||||
|    "http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd"> | ||||
| <catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog"> | ||||
|      <rewriteSystem  | ||||
|         systemIdStartString="http://docbook.sourceforge.net/release/xsl/current"  | ||||
|         rewritePrefix="docbook-xsl/"/> | ||||
|      <rewriteURI | ||||
|         uriStartString="http://docbook.sourceforge.net/release/xsl/current/" | ||||
|         rewritePrefix="docbook-xsl/" /> | ||||
| </catalog> | ||||
							
								
								
									
										761
									
								
								vim/vim-latex/doc/db2vim/db2vim
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										761
									
								
								vim/vim-latex/doc/db2vim/db2vim
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,761 @@ | |||
| #!/usr/bin/python | ||||
| r""" | ||||
| db2vim [options] file.xml | ||||
| 
 | ||||
| SHORT OPTIONS | ||||
| 
 | ||||
| -d  Prints some debugging information on stderr. | ||||
| 
 | ||||
| -s  If given, the db2vim operates in a 'stict' conversion mode, i.e, any | ||||
|     element which does not have a handler defined for them it be | ||||
|     completeley ignored including all its children. Otherwise, db2vim will | ||||
|     recurse into an unknown tag and process any of its children it | ||||
|     recognizes. Since db2vim always recognizes text nodes, not using this | ||||
|     option has the effect that all text will be printed out, even if | ||||
|     somewhat incorrectly. | ||||
| 
 | ||||
| LONG OPTIONS | ||||
| 
 | ||||
| --prefix=<prefix>  | ||||
|     This is a string like "ls_" which will be prepended to the section | ||||
|     numbers. Default to 'ls_' if unsupplied. | ||||
| """ | ||||
| 
 | ||||
| 
 | ||||
| import xml.dom.minidom | ||||
| import getopt | ||||
| import string | ||||
| import re | ||||
| import sys | ||||
| 
 | ||||
| # Okay. so I import *. Shoot me. | ||||
| from textutils import * | ||||
| from domutils import * | ||||
| 
 | ||||
| # define a bunch of constants for formatting. | ||||
| TEXT_WIDTH = 80 | ||||
| BLOCK_QUOTE = 4 | ||||
| COL_SPACE = 2 | ||||
| 
 | ||||
| # a bunch of globals used in creating the Table of contents. | ||||
| # | ||||
| # TOC_HASH['section 1.1 label'] = 'ls_1_1' | ||||
| # | ||||
| # LEVEL_HASH['section 1.1 label'] = 1  | ||||
| #       (top level article has level 0) | ||||
| # | ||||
| # TITLE_HASH['section 1.1 label'] = 'Title of section 1.1' | ||||
| # | ||||
| # FILENAME = the name of the file being processed with the last extension | ||||
| #            changed to .txt | ||||
| # | ||||
| # TOC_PREFIX = 'ls_' (the prefix used to create the section labels). | ||||
| TOC_HASH = {} | ||||
| LEVEL_HASH = {} | ||||
| TITLE_HASH = {} | ||||
| FILENAME = '' | ||||
| TOC_PREFIX = '' | ||||
| 
 | ||||
| ANCHOR_HASH = {} | ||||
| URL_HASH = {} | ||||
| 
 | ||||
| # STDERR for printing debugging info. | ||||
| DEBUG = 0 | ||||
| STDERR = sys.stderr | ||||
| STRICT = 0 | ||||
| NUM_ANCHORS = {0:1} | ||||
| 
 | ||||
| ################################################################################ | ||||
| # Miscellaneous utility functions | ||||
| ################################################################################ | ||||
| # encodeTo52(num) {{{ | ||||
| def encodeTo52(num): | ||||
|     ret = '' | ||||
| 
 | ||||
|     if num < 26: | ||||
|         return unichr(ord('a') + num) | ||||
|     elif num < 52: | ||||
|         return unichr(ord('A') + num - 26) | ||||
|     else: | ||||
|         return encodeTo52(int(num/52)) + encodeTo52(num % 52) | ||||
| # }}} | ||||
| # makeTocHash(rootElement) {{{ | ||||
| def makeTocHash(rootElement, width, prefix='', level=0): | ||||
|     retText = "" | ||||
|     sectionsTable = [] | ||||
|     lastLabelUsed = 0 | ||||
| 
 | ||||
|     for section in rootElement.getChildrenByTagName('section'): | ||||
|         title = section.getChildrenByTagName('title')[0] | ||||
|         titleText = handleElement(title, width) | ||||
|         lastLabelUsed += 1 | ||||
|         thisLabel = TOC_PREFIX + prefix + str(lastLabelUsed) | ||||
| 
 | ||||
|         sectionid = section.getAttribute('id') | ||||
|         if not sectionid: | ||||
|             section.setAttribute('id', thisLabel) | ||||
|             sectionid = thisLabel | ||||
| 
 | ||||
|         NUM_ANCHORS[0] += 1 | ||||
|         ANCHOR_HASH[sectionid] = TOC_PREFIX + 'a_' + encodeTo52(NUM_ANCHORS[0] + 52) | ||||
| 
 | ||||
|         TOC_HASH[sectionid] = thisLabel | ||||
|         LEVEL_HASH[sectionid] = level | ||||
|         TITLE_HASH[sectionid] = titleText | ||||
| 
 | ||||
|         if section.getChildrenByTagName('section'): | ||||
|             childText = makeTocHash(section, width - 5, | ||||
|                 prefix = prefix+str(lastLabelUsed) + '_', | ||||
|                 level = level + 1) | ||||
| 
 | ||||
| # }}} | ||||
| # makeAnchorHash(rootElement) {{{ | ||||
| def makeAnchorHash(rootElement): | ||||
|     anchors = rootElement.getElementsByTagName('anchor') + rootElement.getElementsByTagName('note') | ||||
|     numAnchors = 0 | ||||
|     for anchor in anchors: | ||||
|         if not anchor.getAttribute('id'): | ||||
|             continue | ||||
| 
 | ||||
|         NUM_ANCHORS[0] += 1 | ||||
|         if ANCHOR_HASH.has_key(anchor.getAttribute('id')) or TOC_HASH.has_key(anchor.getAttribute('id')): | ||||
|             print >> STDERR, "Warning: anchor [%s] multiply defined" % anchor.getAttribute('id') | ||||
| 
 | ||||
|         ANCHOR_HASH[anchor.getAttribute('id')] = TOC_PREFIX + 'a_' + encodeTo52(NUM_ANCHORS[0] + 52) | ||||
|      | ||||
| # }}} | ||||
| # makeURLHash(rootElement) {{{ | ||||
| def makeURLHash(rootElement): | ||||
|     urls = rootElement.getElementsByTagName('ulink') | ||||
|     numURLs = 0 | ||||
|     for url in urls: | ||||
|         if not url.getAttribute('url') or URL_HASH.has_key(url.getAttribute('url')): | ||||
|             continue | ||||
|         numURLs += 1 | ||||
|         URL_HASH[url.getAttribute('url')] = TOC_PREFIX + 'u_' + str(numURLs) | ||||
| 
 | ||||
| # }}} | ||||
| # makeTOC(node, width, prefix='', level=0, maxleve=1): {{{ | ||||
| def makeTOC(node, width, maxlevel=1): | ||||
|     retText = "" | ||||
|     sectionsTable = [] | ||||
|     lastLabelUsed = 0 | ||||
| 
 | ||||
|     for section in node.getChildrenByTagName('section'): | ||||
| 
 | ||||
|         sectionid = section.getAttribute('id') | ||||
|         thisLabel = TOC_HASH.get(sectionid, '') | ||||
|         titleText = TITLE_HASH.get(sectionid, '') | ||||
|         level = LEVEL_HASH.get(sectionid, 10) | ||||
| 
 | ||||
|         if level <= maxlevel: | ||||
|             retText += '|' + thisLabel + '| ' +  titleText + '\n' | ||||
| 
 | ||||
|         if level < maxlevel and section.getChildrenByTagName('section'): | ||||
|             childText = makeTOC(section, width-5) | ||||
|             retText += VertCatString("    ", 4, childText) + '\n' | ||||
| 
 | ||||
|         retText = re.sub(r'\s+$', r'\n', retText) | ||||
| 
 | ||||
|     return retText | ||||
| # }}} | ||||
| 
 | ||||
| ################################################################################ | ||||
| # Generalized function for handling dom elements. | ||||
| ################################################################################ | ||||
| # IsInlineTag(self): {{{ | ||||
| def IsInlineTag(self): | ||||
|     if self.nodeType == self.TEXT_NODE: | ||||
|         return 1 | ||||
|     elif inlineTags.get(self.tagName, 0): | ||||
|         return 1 | ||||
|     else: | ||||
|         return 0 | ||||
| 
 | ||||
| 
 | ||||
| # }}} | ||||
| # getChildrenByTagName(self, name): {{{ | ||||
| # Description: extension to the xml.dom.minidom.Element class. | ||||
| #              returns all direct descendants of this Element. | ||||
| def getChildrenByTagName(self, name): | ||||
|     nodeList = [] | ||||
| 
 | ||||
|     child = self.firstChild | ||||
|     while not child is None: | ||||
|         if child.nodeType == child.ELEMENT_NODE and child.nodeName == name: | ||||
|             nodeList.append(child) | ||||
| 
 | ||||
|         child = child.nextSibling | ||||
| 
 | ||||
|     return nodeList | ||||
| 
 | ||||
| xml.dom.minidom.Element.getChildrenByTagName = getChildrenByTagName | ||||
| 
 | ||||
| 
 | ||||
| # }}} | ||||
| # handleElement(rootElement, width=TEXT_WIDTH): {{{ | ||||
| def handleElement(rootElement, width=TEXT_WIDTH): | ||||
|     """ | ||||
|     handleElement(rootElement, width=TEXT_WIDTH): | ||||
| 
 | ||||
|     Generalized function to handle an Element node in a DOM tree. | ||||
|     """ | ||||
| 
 | ||||
|     retText = "" | ||||
|     child = rootElement.firstChild | ||||
|     while not child is None: | ||||
| 
 | ||||
|         printerr('node type = %d' % child.nodeType) | ||||
|         if child.nodeType == child.ELEMENT_NODE: | ||||
|             printerr('processing [%s]' % child.tagName) | ||||
| 
 | ||||
|         isinline = IsInlineTag(child) | ||||
| 
 | ||||
|         # if the child is an Element and if a handler exists, then call it. | ||||
|         if not isinline \ | ||||
|         and child.nodeType == child.ELEMENT_NODE \ | ||||
|         and handlerMaps.has_key(child.tagName): | ||||
|             # offset the child text by the current indentation value | ||||
|             printerr('making recursive call to known child.') | ||||
|             retText += handlerMaps[child.tagName](child, width) | ||||
|             child = child.nextSibling | ||||
| 
 | ||||
|         elif not isinline \ | ||||
|         and child.nodeType == child.PROCESSING_INSTRUCTION_NODE \ | ||||
|         and child.target == 'vimhelp': | ||||
| 
 | ||||
|             if handlerMaps.has_key(child.data): | ||||
|                 retText += handlerMaps[child.data](child, width) | ||||
| 
 | ||||
|             child = child.nextSibling | ||||
| 
 | ||||
|         # if its a text node or an inline element node, collect consecutive | ||||
|         # text nodes into a single paragraph and indent it. | ||||
|         elif isinline: | ||||
| 
 | ||||
|             text = "" | ||||
|             while not child is None and IsInlineTag(child): | ||||
|                 if child.nodeType == child.TEXT_NODE: | ||||
|                     text += child.data | ||||
|                 elif child.nodeType == child.ELEMENT_NODE: | ||||
|                     if handlerMaps.has_key(child.tagName): | ||||
|                         text += handlerMaps[child.tagName](child, width) | ||||
|                     else: | ||||
|                         text += GetText(child.childNodes) | ||||
|                 child = child.nextSibling | ||||
| 
 | ||||
|             retText += IndentParagraphs(text, width) | ||||
| 
 | ||||
|         # If we cannot understand _anything_ about the element, then just | ||||
|         # handle its children hoping we have something to gather from | ||||
|         # there. | ||||
|         elif not STRICT: | ||||
|             printerr('making recursive call for unkown child') | ||||
|             retText += handleElement(child, width) | ||||
|             child = child.nextSibling | ||||
| 
 | ||||
|         else: | ||||
|             child = child.nextSibling | ||||
| 
 | ||||
|     return retText | ||||
| 
 | ||||
| # }}} | ||||
| 
 | ||||
| ################################################################################ | ||||
| # Functions for handling various xml tags | ||||
| ################################################################################ | ||||
| # handleArticleInfo(articleinfo, width): {{{ | ||||
| def handleArticleInfo(articleinfo, width): | ||||
| 
 | ||||
|     makeTocHash(articleinfo.parentNode, width) | ||||
|     makeAnchorHash(articleinfo.parentNode) | ||||
|     makeURLHash(articleinfo.parentNode) | ||||
| 
 | ||||
|     title = articleinfo.getChildrenByTagName('title') | ||||
|     if title is None: | ||||
|         print("Article should have a title!") | ||||
|         sys.exit(1) | ||||
| 
 | ||||
|     name = GetText(title[0].childNodes) | ||||
|     authors = articleinfo.getChildrenByTagName('author') | ||||
| 
 | ||||
|     authorText = '' | ||||
|     for author in authors: | ||||
|         firstname = '' | ||||
|         surname = '' | ||||
|         if author.getElementsByTagName('firstname'): | ||||
|             firstname = GetTextFromElementNode(author, 'firstname')[0] | ||||
|         if author.getChildrenByTagName('surname'): | ||||
|             surname = GetTextFromElementNode(author, 'surname')[0] | ||||
|         if author.getElementsByTagName('email'): | ||||
|             email = GetTextFromElementNode(author, 'email')[0] | ||||
|         authorText = authorText + firstname + ' ' + surname + ' <' + email + '>\n' | ||||
|          | ||||
| 
 | ||||
|     abstractText = '' | ||||
|     abstract = articleinfo.getChildrenByTagName('abstract') | ||||
|     if abstract is not None: | ||||
|         abstractText = '\n\n' + CenterText('Abstract\n========', width) | ||||
|         abstractText += handleElement(abstract[0], width) + '\n' | ||||
| 
 | ||||
| 
 | ||||
|     retText = CenterText(name + '\n*' + FILENAME + '*\n' + authorText, width) | ||||
|     retText += abstractText | ||||
| 
 | ||||
|     toc = makeTOC(articleinfo.parentNode, width) | ||||
| 
 | ||||
|     foldwarn = r''' | ||||
| ================================================================================ | ||||
| Viewing this file | ||||
| 
 | ||||
| This file can be viewed with all the sections and subsections folded to ease | ||||
| navigation. By default, vim does not fold help documents. To create the folds, | ||||
| press za now. The folds are created via a foldexpr which can be seen in the | ||||
| last section of this file. | ||||
| 
 | ||||
| See |usr_28.txt| for an introduction to folding and |fold-commands| for key | ||||
| sequences and commands to work with folds. | ||||
| ''' | ||||
| 
 | ||||
|     return retText + '\n' + RightJustify('*' + FILENAME + '-toc*', width) + '\n' + toc + foldwarn | ||||
| 
 | ||||
| # }}} | ||||
| # handleOption(option, width): {{{ | ||||
| def handleOption(option, width): | ||||
|     retText = "" | ||||
|     names = GetTextFromElementNode(option, "name") | ||||
| 
 | ||||
|     for name in names: | ||||
|         retText += string.rjust("*"+name+"*", width) + "\n" | ||||
| 
 | ||||
|     nameTexts = "" | ||||
|     maxNameLen = -1 | ||||
|     for name in names: | ||||
|         maxNameLen = max(maxNameLen, len(name + "    ")) | ||||
|         nameTexts += name + "    \n" | ||||
| 
 | ||||
|     desc = option.getChildrenByTagName("desc")[0] | ||||
|     descText = handleElement(desc, width=width-maxNameLen) | ||||
| 
 | ||||
|     retText += VertCatString(nameTexts + "    ", None, descText) | ||||
| 
 | ||||
|     return retText + "\n" | ||||
| 
 | ||||
| # }}} | ||||
| # handleOptionDefault(default, width): {{{ | ||||
| def handleOptionDefault(default, width): | ||||
|     type = string.join(GetTextFromElementNode(default, "type"), "\n") | ||||
|     extra = string.join(GetTextFromElementNode(default, "extra"), "\n") | ||||
|     return type + "\t(" + extra + ")" | ||||
| 
 | ||||
| # }}} | ||||
| # handleTableRoot(root, width): {{{ | ||||
| def handleTableRoot(root, width): | ||||
|     tgroup = root.getChildrenByTagName('tgroup')[0] | ||||
|     if tgroup is None: | ||||
|         return '' | ||||
| 
 | ||||
|     rows = [] | ||||
|     numHeadRows = 0 | ||||
|     if tgroup.getChildrenByTagName('thead'): | ||||
|         thead = tgroup.getChildrenByTagName('thead')[0] | ||||
|         rows = thead.getChildrenByTagName('row') | ||||
|         numHeadRows = len(rows) | ||||
| 
 | ||||
|     tbody = tgroup.getChildrenByTagName('tbody')[0] | ||||
|     rows += tbody.getChildrenByTagName('row') | ||||
| 
 | ||||
|     widths, text = calculateColumnWidthsDoublePass(rows, width) | ||||
| 
 | ||||
|     headText = text[0:numHeadRows] | ||||
|     bodyText = text[numHeadRows:] | ||||
| 
 | ||||
|     headTable = FormatTable(headText, ROW_SPACE = 1, COL_SPACE = | ||||
|                     COL_SPACE, justify = 0, widths = widths) | ||||
|     if headTable: | ||||
|         headTable = re.sub(r'\n|$', '\g<0>~', headTable) | ||||
|     bodyTable = FormatTable(bodyText, ROW_SPACE = 1, COL_SPACE = | ||||
|                     COL_SPACE, justify = 0, widths = widths) | ||||
| 
 | ||||
|     return headTable + '\n'+ re.sub(r'\n+$', '', bodyTable) + '\n\n' | ||||
| 
 | ||||
| # calculateColumnWidths(rows, width): {{{ | ||||
| def calculateColumnWidths(rows, alloc_widths): | ||||
|     widths = {} | ||||
|     text = [] | ||||
|     for row in rows: | ||||
|         cols = row.getChildrenByTagName("entry") | ||||
|         if len(alloc_widths) == 1: | ||||
|             alloc_widths *= len(cols) | ||||
| 
 | ||||
|         colwidths = [] | ||||
|         rowtext = [] | ||||
|         for col, width in zip(cols, alloc_widths): | ||||
|             coltext = handleElement(col, width) | ||||
| 
 | ||||
|             rowtext.append(coltext) | ||||
|             # This is the 'width' of the current cell including the | ||||
|             # whitespace padding. | ||||
|             colwidths.append(max(map(len, coltext.split("\n"))) \ | ||||
|                                 + COL_SPACE) | ||||
| 
 | ||||
|         text.append(rowtext) | ||||
| 
 | ||||
|         # update the widths of the columns by finding the maximum | ||||
|         # width of all cells in this column. | ||||
|         for i in range(len(colwidths)): | ||||
|             widths[i] = max(colwidths[i], widths.get(i, -1)) | ||||
| 
 | ||||
|     return widths, text | ||||
| 
 | ||||
| # }}} | ||||
| # calculateColumnWidthsDoublePass(rows, width): {{{ | ||||
| def calculateColumnWidthsDoublePass(rows, width): | ||||
|     maxwidths, text = calculateColumnWidths(rows, [width]) | ||||
|     if reduce(lambda x, y: x+y, maxwidths.values()) <= width: | ||||
|         return maxwidths, text | ||||
| 
 | ||||
|     # now find out how many columns exceed the maximum permitted width. | ||||
|     # nlarge: number of columns which are too wide. | ||||
|     # remainingWidth: width which these large columns can share. | ||||
|     nlarge = 0 | ||||
|     remainingWidth = width | ||||
|     for colwidth in maxwidths.values(): | ||||
|         if colwidth > width/len(maxwidths): | ||||
|             nlarge += 1 | ||||
|         else: | ||||
|             remainingWidth += -colwidth | ||||
| 
 | ||||
|     # newmaxwidth: width which each of the large columns is allowed. | ||||
|     newmaxwidth = remainingWidth/max(nlarge, 1) | ||||
| 
 | ||||
|     newcolwidths = [] | ||||
|     for colwidth in maxwidths.values(): | ||||
|         newcolwidths += [min(colwidth, newmaxwidth)] | ||||
| 
 | ||||
|     # make another run and this time ask each cell to restrict itself to | ||||
|     # newmaxwidth as calculated above. | ||||
|     newmaxwidth, newtext = calculateColumnWidths(rows, newcolwidths) | ||||
| 
 | ||||
|     return newmaxwidth, newtext | ||||
| 
 | ||||
| # }}} | ||||
| # }}} | ||||
| # handleCode(code, width): {{{ | ||||
| def handleCode(code, width): | ||||
|     retText =  GetText(code.childNodes) | ||||
|     return " &codebegin;\n" + VertCatString("    ", 4, retText) + "&codeend;" | ||||
| 
 | ||||
| 
 | ||||
| # }}} | ||||
| # handleList(list, width, marker=0): {{{ | ||||
| def handleList(list, width, marker=0): | ||||
|     if list.tagName == 'simplelist': | ||||
|         child = 'member' | ||||
|         decoration = '' | ||||
|     elif list.tagName == 'orderedlist': | ||||
|         child = 'listitem' | ||||
|     else: | ||||
|         child = 'member' | ||||
|         decoration = '- ' | ||||
| 
 | ||||
|     retText = "" | ||||
|     items = list.getChildrenByTagName(child) | ||||
|     i = 1 | ||||
| 
 | ||||
|     for item in items: | ||||
|         if list.tagName == 'orderedlist': | ||||
|             decoration = str(i) + '. ' | ||||
|             i = i + 1 | ||||
|         itemText = handleElement(item, width - len(decoration)) | ||||
|         itemText = VertCatString(decoration, None, itemText) | ||||
| 
 | ||||
|         retText += '\n' + re.sub(r'\s+$', '', itemText) + "\n" | ||||
| 
 | ||||
|     return retText | ||||
| 
 | ||||
| # }}} | ||||
| # handleNote(note, width): {{{ | ||||
| def handleNote(note, width): | ||||
|     title = None | ||||
|     if note.getChildrenByTagName('title'): | ||||
|         title = note.getChildrenByTagName('title')[0] | ||||
|         name = GetText(title.childNodes) | ||||
|         note.removeChild(title) | ||||
| 
 | ||||
|     noteid = '' | ||||
|     if note.getAttribute('id'): | ||||
|         noteTagText = '*' + note.getAttribute('id') + '* ' | ||||
|         noteTagText += '*' + ANCHOR_HASH[note.getAttribute('id')] + '*' | ||||
|         noteTagText = IndentParagraphs(noteTagText, width/2) | ||||
|         noteid = RightJustify(noteTagText, width) + '\n' | ||||
| 
 | ||||
|     noteText = handleElement(note, width-len("NOTE: ")) | ||||
|     if title is not None: | ||||
|         noteText = name + '\n' +('-' * len(name)) + '\n' + noteText | ||||
| 
 | ||||
|     noteText = noteid + VertCatString("NOTE: ", None, noteText) | ||||
| 
 | ||||
|     return noteText + "\n" | ||||
| 
 | ||||
| # }}} | ||||
| # handleParagraph(paragraph, width): {{{ | ||||
| def handleParagraph(paragraph, width): | ||||
|     partext = handleElement(paragraph, width) | ||||
| 
 | ||||
|     partext = re.sub(r'\n+$', '', partext) | ||||
|     partext = re.sub(r'^\n+', '', partext) | ||||
| 
 | ||||
|     return partext + "\n\n" | ||||
| 
 | ||||
| # }}} | ||||
| # handleFormalParagraph(paragraph, width): {{{ | ||||
| def handleFormalParagraph(formalparagraph, width): | ||||
|     title = None | ||||
|     if formalparagraph.getChildrenByTagName('title'): | ||||
|         title = formalparagraph.getChildrenByTagName('title')[0] | ||||
|         name = GetText(title.childNodes) | ||||
|         formalparagraph.removeChild(title) | ||||
| 
 | ||||
|     partext = handleElement(formalparagraph, width) | ||||
| 
 | ||||
|     partext = re.sub(r'\n+$', '', partext) | ||||
|     partext = re.sub(r'^\n+', '', partext) | ||||
|     if title is not None: | ||||
|         partext = name + '\n' + ('-' * len(name)) + '\n' + partext | ||||
| 
 | ||||
|     return partext + "\n\n" | ||||
| 
 | ||||
| # }}} | ||||
| # handleBlockQuote(block, width): {{{ | ||||
| def handleBlockQuote(block, width): | ||||
|     text = handleElement(block, width - BLOCK_QUOTE) | ||||
|     text = VertCatString(" "*BLOCK_QUOTE,  \ | ||||
|                          BLOCK_QUOTE, text) | ||||
| 
 | ||||
|     return text + "\n" | ||||
| 
 | ||||
| # }}} | ||||
| # handleLink(link, width): {{{ | ||||
| def handleLink(link, width): | ||||
|     linkend = link.getAttribute('linkend') | ||||
|     if not ANCHOR_HASH.has_key(linkend): | ||||
|         print >> STDERR, "Warning: Link ID [%s] not found in TOC" % linkend | ||||
|     text = handleElement(link, width) | ||||
|     anchorpt = ANCHOR_HASH.get(linkend) | ||||
|     if not anchorpt: | ||||
|         anchorpt = '' | ||||
| 
 | ||||
|     return text + ' [|' + anchorpt + '|]' | ||||
| 
 | ||||
| # }}} | ||||
| # handleAnchor(anchor, width): {{{ | ||||
| def handleAnchor(anchor, width): | ||||
|     anchorText = '*'+anchor.getAttribute('id')+'* ' | ||||
|     anchorText += '*'+ANCHOR_HASH[anchor.getAttribute('id')]+'*' | ||||
|     return RightJustify(anchorText, width) \ | ||||
|         + "\n" | ||||
| 
 | ||||
| # }}} | ||||
| # handleSection(section, width): {{{ | ||||
| def handleSection(section, width): | ||||
|     title = section.getChildrenByTagName('title')[0] | ||||
|     name = handleElement(title, width) | ||||
| 
 | ||||
|     sectionid = section.getAttribute('id') | ||||
|     tagsformatted = '' | ||||
|     if TOC_HASH.has_key(sectionid): | ||||
|         tagsformatted = '*%s* ' % TOC_HASH[sectionid] | ||||
| 
 | ||||
|     if ANCHOR_HASH.has_key(sectionid): | ||||
|         tagsformatted += '*%s* ' % ANCHOR_HASH[sectionid] | ||||
| 
 | ||||
|     if sectionid and TOC_HASH.has_key(sectionid) and sectionid != TOC_HASH[sectionid]: | ||||
|         tagsformatted += '*%s*' % sectionid | ||||
| 
 | ||||
|     # try to indent to a width of 20 | ||||
|     tagsformatted = RightJustify(IndentParagraphs(tagsformatted, 30), 0) | ||||
|     tagswidth = TextWidth(tagsformatted) | ||||
| 
 | ||||
|     # width(name) + nspaces + width(tags) = 80 | ||||
|     if len(tagsformatted) > 2: | ||||
|         header = VertCatString(name, 80-tagswidth, tagsformatted) | ||||
|     else: | ||||
|         header = name | ||||
| 
 | ||||
|     section.removeChild(title) | ||||
|     text = handleElement(section, width) | ||||
| 
 | ||||
|     thislevel = LEVEL_HASH.get(sectionid, -1) | ||||
|     if thislevel == 0: | ||||
|         delim = '=' | ||||
|         newlines = '\n\n' | ||||
|     elif thislevel == 1: | ||||
|         delim = '-' | ||||
|         newlines = '\n' | ||||
|     else: | ||||
|         delim = '' | ||||
|         newlines = '\n' | ||||
| 
 | ||||
|     thisTOC = '' | ||||
|     if thislevel <= 1: | ||||
|         thisTOC = makeTOC(section, width, maxlevel=1) | ||||
| 
 | ||||
|     return "\n" + (delim * TEXT_WIDTH) + \ | ||||
|         "\n" + header + newlines + thisTOC + newlines + re.sub(r'\n+$', '', text) + "\n" | ||||
| 
 | ||||
| # }}} | ||||
| # handleUlink(ulink, width) {{{ | ||||
| def handleUlink(ulink, width): | ||||
|     url = ulink.getAttribute('url') | ||||
|     text = handleElement(ulink) | ||||
|     # URL_HASH is created at the very beginning | ||||
|     if url: | ||||
|         return text + ' |%s|' % URL_HASH[url] | ||||
|     else: | ||||
|         print >> STDERR, "Warning: url attribute empty for [%s]" % text | ||||
|         return text | ||||
| 
 | ||||
| # }}} | ||||
| # handleIndexTerm(indexterm, width)  {{{ | ||||
| def handleIndexTerm(indexterm, width) : | ||||
|     return '' | ||||
| # }}} | ||||
| # handleEmphasis(emphasis, width) {{{ | ||||
| def handleEmphasis(emphasis, width): | ||||
|     return '_' + GetText(emphasis.childNodes) + '_' | ||||
| # }}} | ||||
| 
 | ||||
| ################################################################################ | ||||
| # A dictionary for mapping xml tags to functions. | ||||
| ################################################################################ | ||||
| # {{{ | ||||
| handlerMaps = { | ||||
|     'articleinfo': handleArticleInfo, | ||||
|     'table': handleTableRoot, | ||||
|     'informaltable': handleTableRoot, | ||||
|     'code': handleCode, | ||||
|     'programlisting': handleCode, | ||||
|     'list': handleList, | ||||
|     'simplelist': handleList, | ||||
|     'orderedlist': handleList, | ||||
|     'para': handleParagraph, | ||||
|     'formalpara': handleFormalParagraph, | ||||
|     'note': handleNote, | ||||
|     'link': handleLink, | ||||
|     'anchor': handleAnchor, | ||||
|     'section': handleSection, | ||||
|     'blockquote': handleBlockQuote, | ||||
|     'ulink': handleUlink, | ||||
|     'emphasis': handleEmphasis, | ||||
|     'indexterm': handleIndexTerm | ||||
| } | ||||
| inlineTags = {'tag':1, 'literal':1, 'link':1,  | ||||
|     'ulink':1, 'citetitle':1, 'indexterm':1, | ||||
|     'emphasis':1, 'filename':1 } | ||||
| # }}} | ||||
| 
 | ||||
| # helper functions for usage() and printerr() {{{ | ||||
| def usage(): | ||||
|     print __doc__ | ||||
| 
 | ||||
| def printerr(statement): | ||||
|     if DEBUG: | ||||
|         print >> STDERR, statement | ||||
| 
 | ||||
| # }}} | ||||
| # replaceComment(matchobj) {{{ | ||||
| def replaceComment(matchobj): | ||||
|     initspace = matchobj.group(1) | ||||
|     firstsent = matchobj.group(2) | ||||
|     code = matchobj.group(3) | ||||
| 
 | ||||
|     if len(initspace) > 0: | ||||
|         if initspace[0] == '<': | ||||
|             lastspace = initspace | ||||
|         else: | ||||
|             lastspace = '<' + initspace[:-1] | ||||
|     else: | ||||
| 	lastspace = initspace | ||||
| 
 | ||||
|     return '\n' + initspace + firstsent + ' >\n' + code + '\n' + lastspace | ||||
|      | ||||
| # }}} | ||||
| # main function {{{ | ||||
| if __name__ == "__main__": | ||||
|     option = {} | ||||
|     try: | ||||
|         opts, args = getopt.getopt(sys.argv[1:], 'ds', ['prefix=', 'help']) | ||||
|         for oa, ov in opts: | ||||
|             option[oa] = ov | ||||
| 
 | ||||
|     except getopt.GetoptError: | ||||
|         print >> STDERR, "Usage error: db2vim --help for usage" | ||||
|         sys.exit(1) | ||||
| 
 | ||||
|     if option.has_key('--help'): | ||||
|         usage(); | ||||
|         sys.exit(0); | ||||
| 
 | ||||
|     TOC_PREFIX = option.get('--prefix', 'ls_') | ||||
|     DEBUG = option.has_key('-d') | ||||
| 
 | ||||
|     if len(args) != 1: | ||||
|         print >> STDERR, "Usage error: db2vim --help for usage" | ||||
|         sys.exit(1) | ||||
| 
 | ||||
|     fileName = args[0] | ||||
|     FILENAME = re.sub(r'\.\w+$', r'.txt', fileName) | ||||
| 
 | ||||
|     try: | ||||
|         fp = open(fileName) | ||||
|     except: | ||||
|         print "Error opening xml file" | ||||
| 
 | ||||
|     dom = xml.dom.minidom.parse(fp)  | ||||
| 
 | ||||
|     modeline = r''' | ||||
| ================================================================================ | ||||
| About this file | ||||
| 
 | ||||
| This file was created automatically from its XML variant using db2vim. db2vim is | ||||
| a python script which understands a very limited subset of the Docbook XML 4.2 | ||||
| DTD and outputs a plain text file in vim help format. | ||||
| 
 | ||||
| db2vim can be obtained via anonymous CVS from sourceforge.net. Use | ||||
| 
 | ||||
| cvs -d:pserver:anonymous@cvs.vim-latex.sf.net:/cvsroot/vim-latex co db2vim | ||||
| 
 | ||||
| Or you can visit the web-interface to sourceforge CVS at: | ||||
| http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/vim-latex/db2vim/ | ||||
| 
 | ||||
| The following modelines should nicely fold up this help manual. | ||||
| 
 | ||||
| vim:ft=help:fdm=expr:nowrap | ||||
| vim:foldexpr=getline(v\:lnum-1)=~'-\\{80}'?'>2'\:getline(v\:lnum-1)=~'=\\{80}'?'>1'\:getline(v\:lnum)=~'=\\{80}'?'0'\:getline(v\:lnum)=~'-\\{80}'?'1'\:'=' | ||||
| vim:foldtext=substitute(v\:folddashes.substitute(getline(v\:foldstart),'\\s*\\*.*',"",""),'^--','\ \ \ \ \ \ ','') | ||||
| ================================================================================''' | ||||
| 
 | ||||
|     STRICT = option.has_key('-s') | ||||
| 
 | ||||
|     pattern = re.compile(r'\n([< ]*)([^\n]+)&codebegin;\n(.*?)&codeend;', re.DOTALL) | ||||
| 
 | ||||
|     processedDoc = handleElement(dom.documentElement) | ||||
|     while re.search('&codebegin;', processedDoc): | ||||
|         processedDoc = re.sub(pattern, replaceComment, processedDoc) | ||||
| 
 | ||||
|     urlsection = r""" | ||||
| ================================================================================ | ||||
| URLs used in this file | ||||
| 
 | ||||
| """ | ||||
|     labels = zip(URL_HASH.values(), URL_HASH.keys()) | ||||
|     labels.sort() | ||||
|     for label, url in labels: | ||||
|         urlsection += '*%s* : %s\n' % (label, url) | ||||
| 
 | ||||
|     processedDoc = processedDoc + urlsection + modeline | ||||
|     print processedDoc.encode('iso-8859-1') | ||||
| 
 | ||||
| # }}} | ||||
| # vim:et:sts=4:fdm=marker | ||||
							
								
								
									
										25
									
								
								vim/vim-latex/doc/db2vim/domutils.py
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										25
									
								
								vim/vim-latex/doc/db2vim/domutils.py
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,25 @@ | |||
| def GetTextFromElementNode(element, childNamePattern): | ||||
| 	children = element.getElementsByTagName(childNamePattern) | ||||
| 	texts = [] | ||||
| 	for child in children: | ||||
| 		texts.append(GetText(child.childNodes)) | ||||
| 
 | ||||
| 	return texts | ||||
| 
 | ||||
| def GetText(nodelist): | ||||
|     rc = "" | ||||
|     for node in nodelist: | ||||
|         if node.nodeType == node.TEXT_NODE: | ||||
|             rc = rc + node.data | ||||
|     return rc | ||||
| 
 | ||||
| def GetTextFromElement(element): | ||||
| 	text = "" | ||||
| 	child = element.firstChild | ||||
| 	while not child.nextSibling is None: | ||||
| 		child = child.nextSibling | ||||
| 		print child | ||||
| 		if child.nodeType == child.TEXT_NODE: | ||||
| 			text = text + child.data | ||||
| 
 | ||||
| 	return text | ||||
							
								
								
									
										224
									
								
								vim/vim-latex/doc/db2vim/textutils.py
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										224
									
								
								vim/vim-latex/doc/db2vim/textutils.py
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,224 @@ | |||
| #!/usr/bin/env python | ||||
| """Contains functions to do word-wrapping on text paragraphs.""" | ||||
| 
 | ||||
| import string | ||||
| import re, random | ||||
| import operator | ||||
| 
 | ||||
| # JustifyLine(line, width): {{{ | ||||
| def JustifyLine(line, width): | ||||
|     """Stretch a line to width by filling in spaces at word gaps. | ||||
| 
 | ||||
|     The gaps are picked randomly one-after-another, before it starts | ||||
|     over again. | ||||
| 
 | ||||
|     Author: Christopher Arndt <chris.arndt@web.de | ||||
|     """ | ||||
|     i = [] | ||||
|     while 1: | ||||
|         # line not long enough already? | ||||
|         if len(' '.join(line)) < width: | ||||
|             if not i: | ||||
|                 # index list is exhausted | ||||
|                 # get list if indices excluding last word | ||||
|                 i = range(max(1, len(line)-1)) | ||||
|                 # and shuffle it | ||||
|                 random.shuffle(i) | ||||
|             # append space to a random word and remove its index | ||||
|             line[i.pop(0)] += ' ' | ||||
|         else: | ||||
|             # line has reached specified width or wider | ||||
|             return ' '.join(line) | ||||
| 
 | ||||
| 
 | ||||
| # }}} | ||||
| # FillParagraphs(text, width=80, justify=0): {{{ | ||||
| def FillParagraphs(text, width=80, justify=0): | ||||
|     """Split a text into paragraphs and wrap them to width linelength. | ||||
| 
 | ||||
|     Optionally justify the paragraphs (i.e. stretch lines to fill width). | ||||
| 
 | ||||
|     Inter-word space is reduced to one space character and paragraphs are | ||||
|     always separated by two newlines. Indention is currently also lost. | ||||
| 
 | ||||
|     Author: Christopher Arndt <chris.arndt@web.de | ||||
|     """ | ||||
|     # split taxt into paragraphs at occurences of two or more newlines | ||||
|     paragraphs = re.split(r'\n\n+', text) | ||||
|     for i in range(len(paragraphs)): | ||||
|         # split paragraphs into a list of words | ||||
|         words = paragraphs[i].strip().split() | ||||
|         line = []; new_par = [] | ||||
|         while 1: | ||||
|            if words: | ||||
|                if len(' '.join(line + [words[0]])) > width and line: | ||||
|                    # the line is already long enough -> add it to paragraph | ||||
|                    if justify: | ||||
|                        # stretch line to fill width | ||||
|                        new_par.append(JustifyLine(line, width)) | ||||
|                    else: | ||||
|                        new_par.append(' '.join(line)) | ||||
|                    line = [] | ||||
|                else: | ||||
|                    # append next word | ||||
|                    line.append(words.pop(0)) | ||||
|            else: | ||||
|                # last line in paragraph | ||||
|                new_par.append(' '.join(line)) | ||||
|                line = [] | ||||
|                break | ||||
|         # replace paragraph with formatted version | ||||
|         paragraphs[i] = '\n'.join(new_par) | ||||
|     # return paragraphs separated by two newlines | ||||
|     return '\n\n'.join(paragraphs) | ||||
| 
 | ||||
| # }}} | ||||
| # IndentParagraphs(text, width=80, indent=0, justify=0): {{{ | ||||
| def IndentParagraphs(text, width=80, indent=0, justify=0): | ||||
|     """Indent a paragraph, i.e: | ||||
|         . left (and optionally right) justify text to given width | ||||
|         . add an extra indent if desired. | ||||
| 
 | ||||
|         This is nothing but a wrapper around FillParagraphs | ||||
|     """ | ||||
|     retText =  re.sub(r"^|\n", "\g<0>" + " "*indent, \ | ||||
|                   FillParagraphs(text, width, justify)) | ||||
|     retText = re.sub(r"\n+$", '', retText) | ||||
|     return retText | ||||
| 
 | ||||
| 
 | ||||
| # }}} | ||||
| # OffsetText(text, indent): {{{ | ||||
| def OffsetText(text, indent): | ||||
|     return re.sub("^|\n", "\g<0>" + " "*indent, text) | ||||
| 
 | ||||
| 
 | ||||
| # }}} | ||||
| # RightJustify(lines, width): {{{ | ||||
| def RightJustify(lines, width): | ||||
|     if width == 0: | ||||
|         width = TextWidth(lines) | ||||
|     text = "" | ||||
|     for line in lines.split("\n"): | ||||
|         text += " "*(width - len(line)) + line + "\n" | ||||
| 
 | ||||
|     text = re.sub('\n$', '', text) | ||||
|     return text | ||||
| 
 | ||||
| # }}} | ||||
| # CenterText(lines, width): {{{ | ||||
| def CenterText(lines, width): | ||||
|     text = '' | ||||
|     for line in lines.split("\n"): | ||||
|         text += " "*(width/2 - len(line)/2) + line + '\n' | ||||
|     return text | ||||
| 
 | ||||
| # }}} | ||||
| # TextWidth(text): {{{ | ||||
| def TextWidth(text): | ||||
|     """ | ||||
|     TextWidth(text) | ||||
| 
 | ||||
|     returns the 'width' of the text, i.e the length of the longest segment | ||||
|     in the text not containing new-lines. | ||||
|     """ | ||||
|     return max(map(len, text.split('\n'))) | ||||
| 
 | ||||
| 
 | ||||
| # }}} | ||||
| # FormatTable(tableText, ROW_SPACE=2, COL_SPACE = 3, \ {{{ | ||||
| #             COL_WIDTH=30, TABLE_WIDTH=80, justify=0): | ||||
| def FormatTable(tableText, ROW_SPACE=2, COL_SPACE = 3, \ | ||||
|                 COL_WIDTH=1000, justify=0, widths=None): | ||||
|     """ | ||||
|     FormatTable(tableText [, ROW_SPACE=2, COL_SPACE = 3, COL_WIDTH=30, justify=0]) | ||||
|         returns string | ||||
| 
 | ||||
|     Given a 2 dimensional array of text as input, produces a plain text | ||||
|     formatted string which resembles the table output. | ||||
| 
 | ||||
|     The optional arguments specify the inter row/column spacing and the | ||||
|     column width. | ||||
|     """ | ||||
| 
 | ||||
|     # first find out the max width of the columns | ||||
|     # maxwidths is a dictionary, but can be accessed exactly like an | ||||
|     # array because the keys are integers. | ||||
| 
 | ||||
|     if widths is None: | ||||
|         widths = {}       | ||||
|         for row in tableText: | ||||
|             cellwidths = map(TextWidth, row) | ||||
|             for i in range(len(cellwidths)): | ||||
|                 # Using: dictionary.get(key, default) | ||||
|                 widths[i] = max(cellwidths[i], widths.get(i, -1)) | ||||
|      | ||||
|     # Truncate each of the maximum lengths to the maximum allowed. | ||||
|     for i in range(0, len(widths)): | ||||
|         widths[i] = min(widths[i], COL_WIDTH) | ||||
| 
 | ||||
|     if justify: | ||||
|         formattedTable = [] | ||||
| 
 | ||||
|         for row in tableText: | ||||
|             formattedTable.append(map(FillParagraphs, row, \ | ||||
|                                           [COL_WIDTH]*len(row))) | ||||
|     else: | ||||
|         formattedTable = tableText | ||||
|      | ||||
|     retTableText = "" | ||||
|     for row in formattedTable: | ||||
|         rowtext = row[0] | ||||
|         width = widths[0] | ||||
|         for i in range(1, len(row)): | ||||
|             rowtext = VertCatString(rowtext, width, " "*COL_SPACE) | ||||
|             rowtext = VertCatString(rowtext, width + COL_SPACE, row[i]) | ||||
| 
 | ||||
|             width = width + COL_SPACE + widths[i] | ||||
| 
 | ||||
|         retTableText += string.join(rowtext, "") | ||||
|         retTableText += "\n"*ROW_SPACE | ||||
| 
 | ||||
|     return re.sub(r"\n+$", "", retTableText) | ||||
| 
 | ||||
| 
 | ||||
| # }}} | ||||
| # VertCatString(string1, width1, string2): {{{ | ||||
| def VertCatString(string1, width1, string2): | ||||
|     """ | ||||
|     VertCatString(string1, width1=None, string2) | ||||
|         returns string | ||||
| 
 | ||||
|     Concatenates string1 and string2 vertically. The lines are assumed to | ||||
|     be "\n" seperated. | ||||
| 
 | ||||
|     width1 is the width of the string1 column (It is calculated if left out). | ||||
|     (Width refers to the maximum length of each line of a string) | ||||
| 
 | ||||
|     NOTE: if width1 is specified < actual width, then bad things happen. | ||||
|     """ | ||||
|     lines1 = string1.split("\n") | ||||
|     lines2 = string2.split("\n") | ||||
| 
 | ||||
|     if width1 is None: | ||||
|         width1 = -1 | ||||
|         for line in lines1: | ||||
|             width1 = max(width1, len(line)) | ||||
| 
 | ||||
|     retlines = [] | ||||
|     for i in range(0, max(len(lines1),  len(lines2))): | ||||
|         if i >= len(lines1): | ||||
|             lines1.append(" "*width1) | ||||
|          | ||||
|         lines1[i] = lines1[i] + " "*(width1 - len(lines1[i])) | ||||
| 
 | ||||
|         if i >= len(lines2): | ||||
|             lines2.append("") | ||||
|          | ||||
|         retlines.append(lines1[i] + lines2[i]) | ||||
| 
 | ||||
|     return string.join(retlines, "\n") | ||||
| 
 | ||||
| # }}} | ||||
| 
 | ||||
| # vim:et:sts=4:fdm=marker | ||||
							
								
								
									
										116
									
								
								vim/vim-latex/doc/imaps.txt
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										116
									
								
								vim/vim-latex/doc/imaps.txt
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,116 @@ | |||
|                       IMAP -- A fluid replacement for :imap | ||||
|                                    *imaps.txt* | ||||
|                  Srinath Avadhanula <srinath AT fastmail DOT fm> | ||||
|                                          | ||||
| 
 | ||||
| 
 | ||||
|                                     Abstract | ||||
|                                     ======== | ||||
| This plugin provides a function IMAP() which emulates vims |:imap| function. The | ||||
| motivation for providing this plugin is that |:imap| suffers from problems | ||||
| which get increasingly annoying with a large number of mappings. | ||||
| 
 | ||||
| Consider an example. If you do > | ||||
|     imap lhs something | ||||
| 
 | ||||
| 
 | ||||
| then a mapping is set up. However, there will be the following problems: | ||||
| 1. The 'ttimeout' option will generally limit how easily you can type the lhs. | ||||
|    if you type the left hand side too slowly, then the mapping will not be | ||||
|    activated. | ||||
| 
 | ||||
| 2. If you mistype one of the letters of the lhs, then the mapping is deactivated | ||||
|    as soon as you backspace to correct the mistake. | ||||
| 
 | ||||
| 3. The characters in lhs are shown on top of each other. This is fairly | ||||
|    distracting. This becomes a real annoyance when a lot of characters initiate | ||||
|    mappings. | ||||
| 
 | ||||
| This script provides a function IMAP() which does not suffer from these | ||||
| problems. | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|                                                                  *imaps.txt-toc* | ||||
| |im_1| Using IMAP | ||||
| 
 | ||||
| ================================================================================ | ||||
| Viewing this file | ||||
| 
 | ||||
| This file can be viewed with all the sections and subsections folded to ease | ||||
| navigation. By default, vim does not fold help documents. To create the folds, | ||||
| press za now. The folds are created via a foldexpr which can be seen in the | ||||
| last section of this file. | ||||
| 
 | ||||
| See |usr_28.txt| for an introduction to folding and |fold-commands| for key | ||||
| sequences and commands to work with folds. | ||||
| 
 | ||||
| ================================================================================ | ||||
| Using IMAP                                                  *im_1* *imaps-usage* | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| Each call to IMAP is made using the syntax: > | ||||
|     call IMAP (lhs, rhs, ft [, phs, phe]) | ||||
| 
 | ||||
| 
 | ||||
| This is equivalent to having <lhs> map to <rhs> for all files of type <ft>. | ||||
| 
 | ||||
| Some characters in the <rhs> have special meaning which help in cursor placement | ||||
| as described in |imaps-placeholders|. The optional arguments define these | ||||
| special characters. | ||||
| 
 | ||||
| Example One: > | ||||
|     call IMAP ("bit`", "\\begin{itemize}\<cr>\\item <++>\<cr>\\end{itemize}<++>", "tex") | ||||
| 
 | ||||
| 
 | ||||
| This effectively sets up the map for "bit`" whenever you edit a latex file. When | ||||
| you type in this sequence of letters, the following text is inserted: > | ||||
|     \begin{itemize} | ||||
|         \item * | ||||
|     \end{itemize}<++> | ||||
|         | ||||
| where * shows the cursor position. The cursor position after inserting the text | ||||
| is decided by the position of the first "place-holder". Place holders are | ||||
| special characters which decide cursor placement and movement. In the example | ||||
| above, the place holder characters are <+ and +>. After you have typed in the | ||||
| item, press <C-j> and you will be taken to the next set of <++>'s. Therefore by | ||||
| placing the <++> characters appropriately, you can minimize the use of movement | ||||
| keys. | ||||
| 
 | ||||
| Set g:Imap_UsePlaceHolders to 0 to disable placeholders altogether. | ||||
| 
 | ||||
| Set g:Imap_PlaceHolderStart and g:Imap_PlaceHolderEnd to something else if you | ||||
| want different place holder characters. Also, b:Imap_PlaceHolderStart and | ||||
| b:Imap_PlaceHolderEnd override the values of g:Imap_PlaceHolderStart and | ||||
| g:Imap_PlaceHolderEnd respectively. This is useful for setting buffer specific | ||||
| place holders. | ||||
| 
 | ||||
| Example Two: You can use the <C-r> command to insert dynamic elements such as | ||||
| dates. > | ||||
|     call IMAP ('date`', "\<c-r>=strftime('%b %d %Y')\<cr>", '') | ||||
|         | ||||
| 
 | ||||
| 
 | ||||
| With this mapping, typing date` will insert the present date into the file. | ||||
| 
 | ||||
| ================================================================================ | ||||
| About this file | ||||
| 
 | ||||
| This file was created automatically from its XML variant using db2vim. db2vim is | ||||
| a python script which understands a very limited subset of the Docbook XML 4.2 | ||||
| DTD and outputs a plain text file in vim help format. | ||||
| 
 | ||||
| db2vim can be obtained via anonymous CVS from sourceforge.net. Use | ||||
| 
 | ||||
| cvs -d:pserver:anonymous@cvs.vim-latex.sf.net:/cvsroot/vim-latex co db2vim | ||||
| 
 | ||||
| Or you can visit the web-interface to sourceforge CVS at: | ||||
| http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/vim-latex/db2vim/ | ||||
| 
 | ||||
| The following modelines should nicely fold up this help manual. | ||||
| 
 | ||||
| vim:ft=help:fdm=expr:nowrap | ||||
| vim:foldexpr=getline(v\:lnum-1)=~'-\\{80}'?'>2'\:getline(v\:lnum-1)=~'=\\{80}'?'>1'\:getline(v\:lnum)=~'=\\{80}'?'0'\:getline(v\:lnum)=~'-\\{80}'?'1'\:'=' | ||||
| vim:foldtext=substitute(v\:folddashes.substitute(getline(v\:foldstart),'\\s*\\*.*',"",""),'^--','--\ \ \ \ ','') | ||||
| ================================================================================ | ||||
							
								
								
									
										52
									
								
								vim/vim-latex/doc/latex-suite-chunk.xsl
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										52
									
								
								vim/vim-latex/doc/latex-suite-chunk.xsl
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,52 @@ | |||
| <?xml version="1.0"?> | ||||
| <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" | ||||
|   version="1.0" | ||||
|   xmlns="http://www.w3.org/TR/xhtml1/transitional" | ||||
|   exclude-result-prefixes="#default"> | ||||
| 
 | ||||
|   <!-- $Id: latex-suite-chunk.xsl 1036 2008-05-31 16:10:30Z tmaas $ --> | ||||
| 
 | ||||
|   <xsl:import href="http://docbook.sourceforge.net/release/xsl/current/xhtml/chunk.xsl"/> | ||||
| 
 | ||||
|   <!-- import common customizations --> | ||||
|   <xsl:import href="latex-suite-common.xsl"/> | ||||
| 
 | ||||
|   <!-- insert customization here --> | ||||
| 
 | ||||
|   <xsl:param name="default.encoding" select="'ISO-8859-1'"/> | ||||
| 
 | ||||
|   <xsl:param name="use.id.as.filename" select="'1'"/> | ||||
|   <xsl:param name="section.autolabel"  select="1"/> | ||||
|   <xsl:param name="html.stylesheet"    select="'../latex-suite.css'"/> | ||||
| 
 | ||||
|   <!-- Chunk the first top-level section? --> | ||||
|   <xsl:param name="chunk.first.sections" select="1"/> | ||||
|   <!-- Depth to which sections should be chunked  --> | ||||
|   <xsl:param name="chunk.section.depth" select="2"/> | ||||
| 
 | ||||
|   <!-- How deep should recursive sections appear in the TOC? --> | ||||
|   <xsl:param name="toc.section.depth">2</xsl:param> | ||||
|   <!-- Control depth of TOC generation in sections --> | ||||
|   <xsl:param name="generate.section.toc.level" select="3"/> | ||||
| 
 | ||||
|   <xsl:param name="chunker.output.method" select="'html'"/> | ||||
| 
 | ||||
|   <xsl:param name="chunker.output.doctype-public"  | ||||
|     select="'-//W3C//DTD HTML 4.01 Transitional//EN'"/> | ||||
|   <xsl:param name="chunker.output.doctype-system"  | ||||
|     select="'http://www.w3.org/TR/html4/loose.dtd'"/> | ||||
| 
 | ||||
|   <!-- this enables generation of TOC in appendix --> | ||||
|   <xsl:param name="generate.toc"> | ||||
| appendix  toc | ||||
| article/appendix  toc | ||||
| article   toc | ||||
| sect1     toc | ||||
| sect2     toc | ||||
| sect3     toc | ||||
| sect4     toc | ||||
| sect5     toc | ||||
| section   toc | ||||
|   </xsl:param> | ||||
| 
 | ||||
| </xsl:stylesheet> | ||||
							
								
								
									
										62
									
								
								vim/vim-latex/doc/latex-suite-common.xsl
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										62
									
								
								vim/vim-latex/doc/latex-suite-common.xsl
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,62 @@ | |||
| <?xml version="1.0"?> | ||||
| <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" | ||||
|   version="1.0" | ||||
|   xmlns="http://www.w3.org/TR/xhtml1/transitional" | ||||
|   exclude-result-prefixes="#default"> | ||||
| 
 | ||||
|   <!-- Common customizations for all stylesheets --> | ||||
| 
 | ||||
|   <!-- this omits the trailing '.' in numbered sections --> | ||||
|   <xsl:param name="autotoc.label.separator" select="' '"/> | ||||
|   <xsl:param name="local.l10n.xml" select="document('')"/> | ||||
| 
 | ||||
|   <l:i18n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0"> | ||||
|     <l:l10n language="en"> | ||||
|       <l:context name="title-numbered"> | ||||
|         <l:template name="section" text="%n %t"/> | ||||
|       </l:context> | ||||
|     </l:l10n> | ||||
|   </l:i18n> | ||||
| 
 | ||||
|   <!-- override template for revhistory table --> | ||||
|   <xsl:template match="revhistory" mode="titlepage.mode"> | ||||
|     <xsl:variable name="numcols"> | ||||
|       <xsl:choose> | ||||
|         <xsl:when test="//authorinitials">3</xsl:when> | ||||
|         <xsl:otherwise>2</xsl:otherwise> | ||||
|       </xsl:choose> | ||||
|     </xsl:variable> | ||||
| 
 | ||||
|     <div xmlns="http://www.w3.org/1999/xhtml" class="{name(.)}"> | ||||
|       <table border="2" cellspacing="4" width="100%" summary="Revision history"> | ||||
|         <tr> | ||||
|           <th align="left" valign="top" colspan="{$numcols}"> | ||||
|             <b> | ||||
|               <xsl:call-template name="gentext"> | ||||
|                 <xsl:with-param name="key" select="'RevHistory'"/> | ||||
|               </xsl:call-template> | ||||
|             </b> | ||||
|           </th> | ||||
|         </tr> | ||||
|         <xsl:apply-templates mode="titlepage.mode"> | ||||
|           <xsl:with-param name="numcols" select="$numcols"/> | ||||
|         </xsl:apply-templates> | ||||
|       </table> | ||||
|     </div> | ||||
|   </xsl:template> | ||||
| 
 | ||||
|   <!-- | ||||
|   <xsl:template name="user.header.content"> | ||||
|     <div id="customheader"> | ||||
|     <span class="logo">TeX Refs</span> | ||||
|     </div>                              | ||||
|   </xsl:template> | ||||
|    | ||||
|   <xsl:template name="user.footer.content"> | ||||
|     <div id="customfooter">                 | ||||
|       Copyright © 2002 P. Karp, M. Wiedmann | ||||
|     </div>                              | ||||
|   </xsl:template> | ||||
|   --> | ||||
| 
 | ||||
| </xsl:stylesheet> | ||||
							
								
								
									
										182
									
								
								vim/vim-latex/doc/latex-suite-quickstart.css
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										182
									
								
								vim/vim-latex/doc/latex-suite-quickstart.css
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,182 @@ | |||
| /*  | ||||
|  * Authors: Srinath Avadhanula and Mikolaj Machowski | ||||
|  * This style file borrows some elements from main.css, the style file used | ||||
|  * in cream.sf.net | ||||
|  * | ||||
|  * */ | ||||
| P {  | ||||
| 	font-size : 12pt ; | ||||
| 	font-family : helvetica, arial, verdana, sans-serif ; | ||||
| 	vertical-align : top; | ||||
| } | ||||
| DT {  | ||||
| 	font-size : 11pt ; | ||||
| 	font-family : helvetica, arial, verdana, sans-serif ; | ||||
| 	vertical-align : top; | ||||
| } | ||||
| LI {  | ||||
| 	font-size : 12pt ; | ||||
| 	font-family : helvetica, arial, verdana, sans-serif ; | ||||
| 	vertical-align : top; | ||||
| } | ||||
| 
 | ||||
| DIV.header {  | ||||
| 	margin : 0.5cm ; | ||||
| 	width : 800px ; | ||||
| 	height : 100  | ||||
| } | ||||
| .note { | ||||
| } | ||||
| 
 | ||||
| TD {  | ||||
| 	font-size : 11pt ; | ||||
| 	font-family : helvetica, arial, verdana, sans-serif ; | ||||
| 	vertical-align : top; | ||||
| } | ||||
| TD.menu {  | ||||
| 	text-align : center ; | ||||
| 	font-family : verdana, helvetica, sans-serif  | ||||
| } | ||||
| TD.footright {  | ||||
| 	text-align : right ; | ||||
| 	font-size : 10pt ; | ||||
| 	font-family : verdana, helvetica, sans-serif  | ||||
| } | ||||
| TD.leftpanel {  | ||||
| 	font-size: 14px ; | ||||
| 	font-family: verdana, helvetica, sans-serif ; | ||||
| 	vertical-align: top ; | ||||
| 	width: 150px; | ||||
| 	padding: 15px; | ||||
| 	background-color: #88aaaa; | ||||
| } | ||||
| TD.mainpanel {  | ||||
| 	font-size : 12pt ; | ||||
| 	font-family : helvetica, arial, verdana, sans-serif ; | ||||
| 	vertical-align : top; | ||||
| 	padding: 15px; | ||||
| } | ||||
| TD.footpanel {  | ||||
| 	font-size: 12px ; | ||||
| 	font-family: verdana, helvetica, sans-serif ; | ||||
| 	vertical-align: top ; | ||||
| 	text-align: right; | ||||
| 	padding: 5px; | ||||
| 	background-color: #88aaaa; | ||||
| } | ||||
| .navigation { | ||||
| 	vertical-align: top; | ||||
| 	width: 150px; | ||||
| 	padding: 15px; | ||||
| 	background-color: #445555; | ||||
| 	color: #fffcfc; | ||||
| }  | ||||
| .navheader { | ||||
| 	margin-top: -0.5em; | ||||
| 	margin-bottom: 0.5em; | ||||
| 	text-align: right; | ||||
| 	color: #446644; | ||||
| 	font-size: 14px; | ||||
|     font-weight: bold; | ||||
| } | ||||
| 
 | ||||
| SPAN.menu { | ||||
| 	text-align : center ; | ||||
| 	font-size : 12pt ; | ||||
| 	font-family : verdana, helvetica, sans-serif  | ||||
| } | ||||
| 
 | ||||
| DIV.merit { | ||||
| 	margin : 0.5cm ; | ||||
| 	width : 800px  | ||||
| } | ||||
| 
 | ||||
| TABLE.meritum { | ||||
| 	margin : 0.5cm ; | ||||
| 	border : 0  | ||||
| } | ||||
| .foot { | ||||
| 	margin : 0.5cm ; | ||||
| 	width : 800px  | ||||
| } | ||||
| .head {  | ||||
| 	margin : 0.5cm ;  | ||||
| } | ||||
| 
 | ||||
| CODE { | ||||
| 	font-family: "Andale Mono", "Courier New", "Courier", monospace; | ||||
| 	background-color: #eef0f3; | ||||
| 	white-space: nowrap; | ||||
| } | ||||
| 
 | ||||
| .singlesmall { | ||||
| 	font-size: 14px; | ||||
| } | ||||
| 
 | ||||
| .doublesmall { | ||||
| 	font-size: 12px; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| DIV.footer { | ||||
| 	margin : 0.5cm ; | ||||
| 	width : 800px  | ||||
| } | ||||
| .qa { | ||||
| 	margin : 0.5cm ; | ||||
| 	font-size : 16px; | ||||
| 	font-weight : bold; | ||||
| } | ||||
| .ans { | ||||
| 	margin : 0.5cm ; | ||||
| 	font-weight : normal; | ||||
| } | ||||
| 
 | ||||
| H2.hline { | ||||
| 	text-align : center ; | ||||
| 	font-family : verdana, helvetica, sans-serif  | ||||
| } | ||||
| 
 | ||||
| A.extlinks { | ||||
| 	font-size : 11pt ; | ||||
| 	font-family : verdana, helvetica, sans-serif ; | ||||
| 	font-weight : bold  | ||||
| } | ||||
| 
 | ||||
| TT { | ||||
| 	font-family: courier,sans-serif;  | ||||
| 	font-size: 11pt;  | ||||
| } | ||||
| PRE.programlisting { | ||||
| 	font-family: courier,sans-serif;  | ||||
| 	font-size: 10pt;  | ||||
| 	background-color:#eef0f3; | ||||
|     border-color: #000000; | ||||
|     border-width: 1px; | ||||
|     border-style: solid; | ||||
| } | ||||
| SPAN.conflict { | ||||
| 	font-size : small ; | ||||
| 	font-family: courier,sans-serif;  | ||||
| 	color : #DD4444; | ||||
| } | ||||
| HR.navig { | ||||
| 	color: #446644; | ||||
| 	height: 1px; | ||||
| 	margin-top: 1em; | ||||
| 	border-top: 0px;	/* Mozilla work-around to eliminate "groove" */ | ||||
| } | ||||
| A.question { | ||||
| 	color: #000000; | ||||
| 	height: 1px; | ||||
| 	margin-top: 1em; | ||||
| 	border-top: 0px;	/* Mozilla work-around to eliminate "groove" */ | ||||
| } | ||||
| A.question:hover { | ||||
| 	color: #000000; | ||||
| 	background-color: #eef0f3; | ||||
| 	height: 1px; | ||||
| 	margin-top: 1em; | ||||
| 	border-top: 0px;	/* Mozilla work-around to eliminate "groove" */ | ||||
| } | ||||
| 
 | ||||
							
								
								
									
										448
									
								
								vim/vim-latex/doc/latex-suite-quickstart.txt
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										448
									
								
								vim/vim-latex/doc/latex-suite-quickstart.txt
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,448 @@ | |||
|                    A (very) quick introduction to Latex-Suite | ||||
|                           *latex-suite-quickstart.txt* | ||||
|                  Srinath Avadhanula <srinath AT fastmail DOT fm> | ||||
|                                          | ||||
| 
 | ||||
| 
 | ||||
|                                     Abstract | ||||
|                                     ======== | ||||
| Latex-Suite is a comprehensive set of scripts to aid in editing, compiling and | ||||
| viewing LaTeX documents. A thorough explanation of the full capabilities of | ||||
| Latex-Suite is described in the user manual. This guide on the other hand, | ||||
| provides a quick 30-45 minute running start to some of the more commonly used | ||||
| functionalities of Latex-Suite. | ||||
| 
 | ||||
|                                                 *latex-suite-quickstart.txt-toc* | ||||
| |lq_1| Using this tutorial | ||||
| |lq_2| Inserting a template | ||||
| |lq_3| Inserting a package | ||||
| |lq_4| Inserting an Environment | ||||
| |lq_5| A few keyboard shortcuts | ||||
| |lq_6| Folding in Latex-Suite | ||||
| |lq_7| Inserting a Reference | ||||
| |lq_8| Compiling a document | ||||
|     |lq_8_1| Debugging LaTeX source files | ||||
| |lq_9| Viewing DVI files | ||||
|     |lq_9_1| Performing forward searches | ||||
|     |lq_9_2| Performing inverse searches | ||||
| |lq_10| Conclusions | ||||
| 
 | ||||
| ================================================================================ | ||||
| Viewing this file | ||||
| 
 | ||||
| This file can be viewed with all the sections and subsections folded to ease | ||||
| navigation. By default, vim does not fold help documents. To create the folds, | ||||
| press za now. The folds are created via a foldexpr which can be seen in the | ||||
| last section of this file. | ||||
| 
 | ||||
| See |usr_28.txt| for an introduction to folding and |fold-commands| for key | ||||
| sequences and commands to work with folds. | ||||
| 
 | ||||
| ================================================================================ | ||||
| Using this tutorial                                             *lq_1* *lq_a_bc* | ||||
|                                                             *lsq-using-tutorial* | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| This tutorial assumes that you have vim version 6.1+ installed on your machine. | ||||
| To check, open vim and type  > | ||||
|     :ver | ||||
| You will see the version in the first line of the output. Get the latest vim | ||||
| version from http://vim.sf.net |lq_u_1|. | ||||
| 
 | ||||
| Assuming you have Vim 6.1+ already up and running, follow the instructions here | ||||
| |lq_u_2| to set up Latex-Suite. Remember to make sure your 'grepprg' setting of | ||||
| Vim works. | ||||
| 
 | ||||
| Good, now you are all set to start the tutorial. Since this tutorial aims to | ||||
| explain the newbie-friendly version of Latex-Suite, it needs some GUI | ||||
| functionality. Therefore, at least for this tutorial, open the gui version of | ||||
| vim. (On MS windows, this is the default). Open up this help file in either the | ||||
| same gvim session in a split window or in a different session and follow the | ||||
| (friendly) instructions. | ||||
| 
 | ||||
| ================================================================================ | ||||
| Inserting a template                                            *lq_2* *lq_a_bd* | ||||
|                                                         *lsq-inserting-template* | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| Start up gvim and begin editing a new file.  > | ||||
|     e newfile.tex | ||||
| If the installation went well, you should see a new set of menus appear. Goto | ||||
| Tex-Suite > Templates. You will see a number of templates to choose from. For | ||||
| now, choose to insert a template for an article. You should get the following in | ||||
| the main vim window (after possibly a hit-enter prompt).  > | ||||
|      | ||||
|           1 %        File: sample.tex | ||||
|           2 %     Created: Sun Jun 22 04:00 PM 2003 P | ||||
|           3 % Last Change: Sun Jun 22 04:00 PM 2003 P | ||||
|           4 % | ||||
|           5 \documentclass[a4paper]{article} | ||||
|           6 \begin{document} | ||||
|           7  | ||||
|           8 \end{document} | ||||
|           9  | ||||
|          10 ~ | ||||
|          11 ~ | ||||
|          12 ~ | ||||
|          13 ~ | ||||
|     -- INSERT --                                     7,1           All | ||||
|      | ||||
| 
 | ||||
| 
 | ||||
| The cursor is left on line 7 (just after the \begin{document} line) from where | ||||
| you can start typing straight away. Trying to lessen movement is a recurring | ||||
| theme in Latex-Suite. | ||||
| 
 | ||||
| ================================================================================ | ||||
| Inserting a package                                             *lq_3* *lq_a_be* | ||||
|                                                      *lsq-lsq-inserting-package* | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| Assume that we are writing a mathematical paper and we want to use the popular | ||||
| amsmath package. We will use some functionality which Latex-Suite provides | ||||
| specifically for including LaTeX packages, providing options etc. Navigate to | ||||
| before the \begin{document} line (The portion of the document before the | ||||
| \begin{document} is called the _preamble_ in LaTeX). On an empty line in the | ||||
| preamble, type the single word amsmath and then press <F5> in normal mode. The | ||||
| line will change to  > | ||||
|     \usepackage[]{amsmath}<++> | ||||
| with the cursor positioned conveniently between the []'s. For now, do not worry | ||||
| about the trailing <++> at the end of this line. Assume we want to provide the | ||||
| sumlimits options to amsmath. You can either type in this option manually, or | ||||
| choose from a menu of package options which Latex-Suite automatically creates | ||||
| when you insert a package using <F5>. With the cursor still placed between the | ||||
| [], goto TeX-Suite > Packages > amsmath Options. Choose the sumlimits option. | ||||
| The package line should get converted to:  > | ||||
|     \usepackage[sumlimits,]{amsmath}<++> | ||||
| 
 | ||||
| 
 | ||||
| with the cursor before ]. Press <C-j> in insert mode. You will see the cursor | ||||
| jump to the end of the package line and the trailing <++> will disappear. What | ||||
| just happened?! You had your first taste of _Placeholders_. Read more about them | ||||
| (later) here |lq_u_3|. In short, pressing <C-j> in insert mode takes you to the | ||||
| next <++> in the text. | ||||
| 
 | ||||
| ================================================================================ | ||||
| Inserting an Environment                                        *lq_4* *lq_a_bf* | ||||
|                                                         *lsq-insert-environment* | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| Now let us type in a simple formula in LaTeX. Move back to the body of the | ||||
| document (The portion of the document between \begin{document} and | ||||
| \end{document} is called the body). Type in a few simple sentences and then on | ||||
| an empty line, type the single word eqnarray. Escape to normal mode and press | ||||
| <F5>. (Remember: <F5> is very useful!) This time, the line will change to:  > | ||||
|     \begin{eqnarray} | ||||
|         \label{}<++> | ||||
|     \end{eqnarray}<++> | ||||
| <with the cursor between the {}. Enter a label. We will use eqn:euler. After | ||||
| typing in eqn:euler, press <C-j>. This will take you outside the curly-braces. | ||||
| Another time you used a Placeholder! | ||||
| 
 | ||||
| ================================================================================ | ||||
| A few keyboard shortcuts                                        *lq_5* *lq_a_bg* | ||||
|                                                         *lsq-keyboard-shortcuts* | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| Now to type in the famous Euler formula. Our aim is to type  > | ||||
|     e^{j\pi} + 1 &=& 0 | ||||
| Instead of typing this blindly, let us use a few shortcuts to reduce movement. | ||||
| Start out by typing e^. Now instead of typing {, type another ^. You will see | ||||
| the e^^ change instantly to e^{}<++> with the cursor between {}'s. (The ^^ | ||||
| changed to ^{}<++>.) Continue with the following sequence of letters: j`p. This | ||||
| will change instantly to j\pi. (The `p changed to \pi.) Having typed in all we | ||||
| need to type between the {}'s, press <C-j>. You will pop back out of the | ||||
| curly-braces. Continue typing the rest of the formula. You can use == as a | ||||
| shortcut for &=&. Latex-Suite provides a large number of such shortcuts which | ||||
| should making typing much more fun and fast if you get acquainted with them. A | ||||
| list is provided here |lq_u_4|. Definitely spend some time getting a feel for | ||||
| them. Most of them are pretty intuitive like `/ for \frac{}{}, `8 for \infty | ||||
| etc. | ||||
| 
 | ||||
| In order to understand the next section better, it will be helpful to have one | ||||
| more \label. Lets use the handy <F5> key to insert another equation. This time | ||||
| something simple like the following will do:  > | ||||
|     \begin{eqnarray} | ||||
|       \label{eqn:simple} | ||||
|       1 + 1 = 2 | ||||
|     \end{eqnarray} | ||||
| 
 | ||||
| 
 | ||||
| ================================================================================ | ||||
| Folding in Latex-Suite                            *lq_6* *lq_a_bh* *lsq-folding* | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| Okay, we have typed enough. At this stage, hopefully, your file is looking | ||||
| something like this:  > | ||||
|      | ||||
|           1 %        File: sample.tex | ||||
|           2 %     Created: Sun Jun 22 04:00 PM 2003 P | ||||
|           3 % Last Change: Mon Dec 15 07:00 PM 2003  | ||||
|           4 % | ||||
|           5 \documentclass[a4paper]{article} | ||||
|           6  | ||||
|           7 \usepackage[sumlimits,]{amsmath} | ||||
|           8  | ||||
|           9 \begin{document} | ||||
|          10 \begin{eqnarray} | ||||
|          11 	\label{eqn:euler} | ||||
|          12 	e^{j\pi} + 1 &=& 0 | ||||
|          13 \end{eqnarray} | ||||
|          14 This is the famous euler equation. I | ||||
|          15 will type another equation, just as | ||||
|          16 true: | ||||
|          17 \begin{eqnarray} | ||||
|          18 	\label{eqn:simple} | ||||
|          19 	1 + 1 &=& 2 | ||||
|          20 \end{eqnarray} | ||||
|          21 This is my contribution to mathematics. | ||||
|          22 \end{document} | ||||
|      | ||||
| In normal mode, press \rf. This will fold up the entire file and you should see | ||||
| the file looking as below:  > | ||||
|      | ||||
|           1 %        File: sample.tex | ||||
|           2 %     Created: Sun Jun 22 04:00 PM 2003 P | ||||
|           3 % Last Change: Mon Dec 15 07:00 PM 2003  | ||||
|           4 % | ||||
|           5 +--  4 lines: Preamble:   \documentclass[a4paper]{article} ----- | ||||
|           9 \begin{document} | ||||
|          10 +--  4 lines: eqnarray (eqn:euler) \label{eqn:euler} ----------- | ||||
|          14 This is the famous euler equation. I | ||||
|          15 will type another equation, just as | ||||
|          16 true: | ||||
|          10 +--  4 lines: eqnarray (eqn:simple) \label{eqn:simple} --------- | ||||
|          21 This is my contribution to mathematics. | ||||
|          22 \end{document} | ||||
|      | ||||
| What has happened is that Latex-Suite folded away blocks of LaTeX code into | ||||
| folded regions. You can open and close folds by using the command za in normal | ||||
| mode. | ||||
| 
 | ||||
| ================================================================================ | ||||
| Inserting a Reference                                           *lq_7* *lq_a_bi* | ||||
|                                                        *lsq-inserting-reference* | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| A necessary part of LaTeX editing is referencing equations, figures, | ||||
| bibliographic entries etc. This is done with the \ref and the \cite commands. | ||||
| Latex-Suite provides an easy way to do this. Somewhere in the body of the | ||||
| document, type in the following sentence  > | ||||
|     This is a reference to (\ref{}). | ||||
| With the cursor between the {} press <F9> in insert mode. Your vim session will | ||||
| sprout two new windows and it should look like below:  > | ||||
|      | ||||
|           9 \begin{document} | ||||
|          10 +--  4 lines: eqnarray (eqn:euler) :  \label{eqn:euler}----------------------- | ||||
|          14 This is the famous euler equation. I | ||||
|          15 will type another equation, just as | ||||
|          16 true: | ||||
|          17 +--  4 lines: eqnarray (eqn:simple) :  \label{eqn:simple}--------------------- | ||||
|          21 This is my contribution to mathematics. | ||||
|          22 This is a reference to (\ref{}<++>)<++> | ||||
|          23 \end{document} | ||||
|     ~ | ||||
|     ~ | ||||
|     ~ | ||||
|     test.tex [+]                                                        22,29          Bot | ||||
|     test.tex|11| \label{eqn:euler} | ||||
|     test.tex|18| \label{eqn:simple} | ||||
|     ~ | ||||
|     ~ | ||||
|     ~ | ||||
|     [Error List]                                                        1,1            All | ||||
|           7 \usepackage[sumlimits,]{amsmath} | ||||
|           8 | ||||
|           9 \begin{document} | ||||
|          10 \begin{eqnarray} | ||||
|          11     \label{eqn:euler} | ||||
|          12     e^{j\pi} + 1 &=& 0 | ||||
|          13 \end{eqnarray} | ||||
|          14 This is the famous euler equation. I | ||||
|          15 will type another equation, just as | ||||
|          16 true: | ||||
|     test.tex [Preview][+]                                               11,2-5         46% | ||||
|      | ||||
| 
 | ||||
| 
 | ||||
| The cursor will relocate to the middle window which shows all \labels found in | ||||
| all the .tex file in the current directory. You can scroll up and down in the | ||||
| middle window till you reach the reference you want to insert. Notice how when | ||||
| you scroll in the middle window, the bottom "Preview" window scrolls | ||||
| automatically to show you the location of the current selection. This helps you | ||||
| identify the reference with greater ease because often times, \labels are not | ||||
| descriptive enough or there might be too many of them. To insert the reference, | ||||
| just position the cursor on the relevant line in the middle window and press | ||||
| <enter>. The line which you were editing will change to:  > | ||||
|     This is a reference to (\ref{eqn:euler}) | ||||
| <and the bottom windows close automatically. | ||||
| 
 | ||||
| The <F9> key also works for inserting \cite commands to reference bibliographic | ||||
| entries, inserting file names for the \inputgraphics command and just plain | ||||
| searching for words. Click here |lq_u_5| for more information. | ||||
| 
 | ||||
| ================================================================================ | ||||
| Compiling a document                                            *lq_8* *lq_a_bj* | ||||
|                                                                  *lsq-compiling* | ||||
| 
 | ||||
| |lq_8_1| Debugging LaTeX source files | ||||
| 
 | ||||
| 
 | ||||
| Great! We have just created a small latex file. The next step is to make the | ||||
| latex compiler create a .dvi file from it. Compiling via latex-suite is simple. | ||||
| Goto normal mode and press \ll (replace \ with whatever mapleader setting you | ||||
| have). This will call the latex compiler. If all goes well, then the focus | ||||
| should return to the vim window. | ||||
| 
 | ||||
| Nothing happend? Ouch! You might need to do some additional settings as | ||||
| described here. |lq_u_6| | ||||
| 
 | ||||
| 
 | ||||
| -------------------------------------------------------------------------------- | ||||
| Debugging LaTeX source files                                  *lq_8_1* *lq_a_bk* | ||||
|                                                                  *lsq-debugging* | ||||
| 
 | ||||
| To illustrate the debugging procedure, let's create a few mistakes in the file. | ||||
| Insert the following ``mistakes'' in the file:  > | ||||
|     This is a $\mistake$. | ||||
|     And this is $\another$ | ||||
| Now press \ll again. This time you will notice that after compilation finishes, | ||||
| the cursor automatically lands on $\mistake$. In addition, 2 new windows will | ||||
| appear as shown here: | ||||
| 
 | ||||
| The middle window is an _Error List_ window showing you the errors which the | ||||
| latex compiler found. Th bottom window is a _Log Preview_ window, which shows | ||||
| you the context of the error made by displaying the relevant portion of the .log | ||||
| file created during the latex compilation procedure. Jump to the _Error List_ | ||||
| window and try scrolling around in it using either the j, k keys or the arrow | ||||
| keys. You will notice that the _Log Preview_ window scrolls automatically to | ||||
| retain the context of the error you are currently located on. If you press | ||||
| <enter> on any line, you will see the cursor jump to the location of the error. | ||||
| Latex-Suite tries to guess the column location as best as it can so you can | ||||
| continue typing straight away. | ||||
| Having got a taste for compiling, proceed by deleting the erroneous lines and | ||||
| re-compiling. | ||||
| 
 | ||||
| The Latex-Suite compiler is capable of much more including selectively filtering | ||||
| out common errors which you might want to ignore for the moment, compiling parts | ||||
| of a document, setting levels of verbosity in the compiler output etc. See here | ||||
| |lq_u_7| for more. | ||||
| 
 | ||||
| ================================================================================ | ||||
| Viewing DVI files                                               *lq_9* *lq_a_bl* | ||||
|                                                                *lsq-viewing-dvi* | ||||
| 
 | ||||
| |lq_9_1| Performing forward searches | ||||
| |lq_9_2| Performing inverse searches | ||||
| 
 | ||||
| 
 | ||||
| Now that you have compiled your first latex source, its time to view it. Again, | ||||
| this should be pretty simple. Press \lv in normal mode. Depending on your | ||||
| platform, a DVI viewer program should open up and display the dvi file generated | ||||
| in compilation step previously. | ||||
| 
 | ||||
| Nothing happend? Ouch! You might need to do some additional settings as | ||||
| described here. |lq_u_8| | ||||
| 
 | ||||
| 
 | ||||
| -------------------------------------------------------------------------------- | ||||
| Performing forward searches                                   *lq_9_1* *lq_a_bm* | ||||
|                                                    *lsq-quick-forward-searching* | ||||
| 
 | ||||
| If you are using a modern DVI viewer, then it is possible to do what is called | ||||
| forward and inverse searching. However, you will need to customize the standard | ||||
| Latex-Suite distribution in order to utilize this functionality. Type in the | ||||
| following on the command line:  > | ||||
|     :let g:Tex_CompileRule_dvi = 'latex -src-specials -interaction=nonstopmode $*' | ||||
|     :TCTarget dvi | ||||
| 
 | ||||
| 
 | ||||
| Now recompile the latex file by pressing \ll. This time, instead of pressing \lv | ||||
| to view the file, press \ls from within the tex file. If the DVI viewer supports | ||||
| forward searching (most of them do), then the viewer will actually display the | ||||
| portion of the DVI file corresponding to the location where you were editing the | ||||
| tex file. | ||||
| 
 | ||||
| NOTE: The reason Latex-Suite does not have this setting by default is that on | ||||
|       some systems this causes unpredictable results in the DVI output. If you | ||||
|       find the DVI output satisfactory, then you can insert the first of the 2 | ||||
|       lines above into your $VIM/ftplugin/tex.vim file. $VIM is ~/vimfiles for | ||||
|       windows and ~/.vim for *nix machines. | ||||
|        | ||||
|        | ||||
| 
 | ||||
| -------------------------------------------------------------------------------- | ||||
| Performing inverse searches                                   *lq_9_2* *lq_a_bn* | ||||
|                                                    *lsq-quick-inverse-searching* | ||||
| 
 | ||||
| Most DVI viewers also support inverse searching, whereby you can make the DVI | ||||
| viewer ask vim to display the tex source corresponding to the DVI file being | ||||
| shown. This is extremely helpful while proofreading large documents. | ||||
| 
 | ||||
| Simply double-click anywhere in the viewer window. If the viewer supports it, | ||||
| then it will attempt to open an editor window at the location corresponding to | ||||
| where you double-clicked. On *nix platforms, Latex-Suite attempts to start the | ||||
| viewer program in such a way that it already knows to use vim to open the tex | ||||
| source. Thus you should see a vim window open up showing the tex file. However, | ||||
| if there is an error, or some other program is used, you will need to tell the | ||||
| viewer program to use gvim as the editor. On windows platforms, if you use the | ||||
| commonly available yap viewer (available as part of the miktex distribution), | ||||
| then this option can be set from View > Options > Inverse Search. In the Command | ||||
| line: window, write  > | ||||
|     "C:\Program Files\vim\vim61\gvim" -c ":RemoteOpen +%l %f" | ||||
| (Customize the path according to where you have installed gvim). If you double | ||||
| click in the view pane now, you will see gvim start up and take you to the | ||||
| relevant portion of the tex file. | ||||
| 
 | ||||
| ================================================================================ | ||||
| Conclusions                                                    *lq_10* *lq_a_bo* | ||||
|                                                                *lsq-conclusions* | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| Thats all folks! By now, you should know enough of the basic functions of | ||||
| latex-suite. Ofcourse, latex-suite is capable of much, much more such as | ||||
| compiling files multiple times to resolve changed labels, compiling | ||||
| dependencies, handling user packages and more. To get a feel for that, you will | ||||
| need to take a look at the Latex-Suite user manual. |lq_u_9| | ||||
| 
 | ||||
| ================================================================================ | ||||
| URLs used in this file | ||||
| 
 | ||||
| *lq_u_1* : http://vim.sf.net | ||||
| *lq_u_2* : http://vim-latex.sourceforge.net/index.php?subject=download&title=Download | ||||
| *lq_u_3* : http://vim-latex.sourceforge.net/documentation/latex-suite/latex-macros.html | ||||
| *lq_u_4* : http://vim-latex.sourceforge.net/documentation/latex-suite/auc-tex-mappings.html | ||||
| *lq_u_5* : http://vim-latex.sourceforge.net/documentation/latex-suite/latex-completion.html | ||||
| *lq_u_6* : http://vim-latex.sourceforge.net/index.php?subject=faq&title=FAQ#faq-2 | ||||
| *lq_u_7* : http://vim-latex.sourceforge.net/documentation/latex-suite/latex-compiling.html | ||||
| *lq_u_8* : http://vim-latex.sourceforge.net/index.php?subject=faq&title=FAQ#faq-3 | ||||
| *lq_u_9* : http://vim-latex.sourceforge.net/index.php?subject=manual&title=Manual#user-manual | ||||
| 
 | ||||
| ================================================================================ | ||||
| About this file | ||||
| 
 | ||||
| This file was created automatically from its XML variant using db2vim. db2vim is | ||||
| a python script which understands a very limited subset of the Docbook XML 4.2 | ||||
| DTD and outputs a plain text file in vim help format. | ||||
| 
 | ||||
| db2vim can be obtained via anonymous CVS from sourceforge.net. Use | ||||
| 
 | ||||
| cvs -d:pserver:anonymous@cvs.vim-latex.sf.net:/cvsroot/vim-latex co db2vim | ||||
| 
 | ||||
| Or you can visit the web-interface to sourceforge CVS at: | ||||
| http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/vim-latex/db2vim/ | ||||
| 
 | ||||
| The following modelines should nicely fold up this help manual. | ||||
| 
 | ||||
| vim:ft=help:fdm=expr:nowrap | ||||
| vim:foldexpr=getline(v\:lnum-1)=~'-\\{80}'?'>2'\:getline(v\:lnum-1)=~'=\\{80}'?'>1'\:getline(v\:lnum)=~'=\\{80}'?'0'\:getline(v\:lnum)=~'-\\{80}'?'1'\:'=' | ||||
| vim:foldtext=substitute(v\:folddashes.substitute(getline(v\:foldstart),'\\s*\\*.*',"",""),'^--','\ \ \ \ \ \ ','') | ||||
| ================================================================================ | ||||
							
								
								
									
										471
									
								
								vim/vim-latex/doc/latex-suite-quickstart.xml
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										471
									
								
								vim/vim-latex/doc/latex-suite-quickstart.xml
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,471 @@ | |||
| <?xml version='1.0' encoding='ISO-8859-1'?> | ||||
| 
 | ||||
| <!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" | ||||
|     "docbook-xml/docbookx.dtd"  | ||||
| [<!ENTITY dummy      "dummy"> | ||||
| <!ENTITY date       "$Date$"> | ||||
| <!ENTITY ls         "Latex-Suite"> | ||||
| <!ENTITY latex      "LaTeX"> | ||||
| <!ENTITY vim        "Vim"> | ||||
| <!ENTITY ph         "<++>"> | ||||
| ]> | ||||
| <article lang="en"> | ||||
|  <articleinfo id="lsq-articleinfo"> | ||||
| 
 | ||||
|   <title id="lsq-articleinfo-title">A (very) quick introduction to Latex-Suite</title> | ||||
| 
 | ||||
|   <author> | ||||
|    <firstname>Srinath</firstname> | ||||
|    <surname>Avadhanula</surname> | ||||
|    <affiliation> | ||||
|     <address><email>srinath AT fastmail DOT fm</email></address> | ||||
|    </affiliation> | ||||
|   </author> | ||||
| 
 | ||||
|   <abstract> | ||||
|    &ls; is a comprehensive set of scripts to aid in editing, compiling and | ||||
|    viewing &latex; documents. A thorough explanation of the full | ||||
|    capabilities of &ls; is described in the user manual. This guide on the | ||||
|    other hand, provides a quick 30-45 minute running start to some of the | ||||
|    more commonly used functionalities of &ls;. | ||||
|   </abstract> | ||||
| 
 | ||||
|   <date>&date;</date> | ||||
| 
 | ||||
|  </articleinfo> | ||||
|  <section id="lsq-using-tutorial"> | ||||
|   <title id="using-tutorial">Using this tutorial</title> | ||||
|   <para> | ||||
|    This tutorial assumes that you have vim version 6.1+ installed on your | ||||
|    machine. To check, open vim and type | ||||
|    <programlisting>:ver</programlisting> | ||||
|    You will see the version in the first line of the output. Get the latest | ||||
|    vim version from <ulink url="http://vim.sf.net">http://vim.sf.net</ulink>. | ||||
|   </para> | ||||
|   <para> | ||||
|    Assuming you have Vim 6.1+ already up and running, follow the | ||||
|    instructions <ulink | ||||
|     url="http://vim-latex.sourceforge.net/index.php?subject=download&title=Download">here</ulink> | ||||
|    to set up Latex-Suite. Remember to make sure your | ||||
|    <literal>'grepprg'</literal> setting of &vim; works. | ||||
|   </para> | ||||
|   <para> | ||||
|    Good, now you are all set to start the tutorial. Since this tutorial | ||||
|    aims to explain the newbie-friendly version of &ls;, it needs some GUI | ||||
|    functionality. Therefore, at least for this tutorial, open the gui | ||||
|    version of vim. (On MS windows, this is the default). Open up this help | ||||
|    file in either the same gvim session in a split window or in a different | ||||
|    session and follow the (friendly) instructions. | ||||
|   </para> | ||||
|  </section> | ||||
|  <section id="lsq-inserting-template"> | ||||
|   <title id="inserting-template-title">Inserting a template</title> | ||||
|   <para> | ||||
|    Start up gvim and begin editing a new file. | ||||
|    <programlisting>e newfile.tex</programlisting> | ||||
|    If the installation went well, you should see a new set of | ||||
|    menus appear. Goto <literal>Tex-Suite > Templates</literal>. You will see | ||||
|    a number of templates to choose from. For now, choose to insert a | ||||
|    template for an article. You should get the following in the main | ||||
|    vim window (after possibly a hit-enter prompt). | ||||
|    <programlisting> | ||||
|       1 %        File: sample.tex | ||||
|       2 %     Created: Sun Jun 22 04:00 PM 2003 P | ||||
|       3 % Last Change: Sun Jun 22 04:00 PM 2003 P | ||||
|       4 % | ||||
|       5 \documentclass[a4paper]{article} | ||||
|       6 \begin{document} | ||||
|       7  | ||||
|       8 \end{document} | ||||
|       9  | ||||
|      10 ~ | ||||
|      11 ~ | ||||
|      12 ~ | ||||
|      13 ~ | ||||
| -- INSERT --                                     7,1           All | ||||
| </programlisting> | ||||
|   </para> | ||||
|   <imageobject> | ||||
|    <imagedata fileref="" format="png"></imagedata> | ||||
|   </imageobject> | ||||
|   <para> | ||||
|    The cursor is left on line 7 (just after the | ||||
|    <literal>\begin{document}</literal> line) from where you can start | ||||
|    typing straight away. Trying to lessen movement is a recurring theme in | ||||
|    Latex-Suite. | ||||
|   </para> | ||||
|  </section> | ||||
|  <section id="lsq-lsq-inserting-package"> | ||||
|   <title>Inserting a package</title> | ||||
|   <para> | ||||
|    Assume that we are writing a mathematical paper and we want to use the | ||||
|    popular amsmath package. We will use some functionality which | ||||
|    Latex-Suite provides specifically for including LaTeX packages, | ||||
|    providing options etc. Navigate to before the | ||||
|    <literal>\begin{document}</literal> line (The portion of the document | ||||
|    before the <literal>\begin{document}</literal> is called the | ||||
|    <emphasis>preamble</emphasis> in LaTeX). On an empty line in the | ||||
|    preamble, type the single word <literal>amsmath</literal> and then press | ||||
|    <literal><F5></literal> in normal mode. The line will change to | ||||
|    <programlisting>\usepackage[]{amsmath}&ph;</programlisting> | ||||
|    with the cursor positioned conveniently between the | ||||
|    <literal>[]</literal>'s. For now, do not worry about the trailing | ||||
|    <literal>&ph;</literal> at the end of this line. Assume we want to | ||||
|    provide the <literal>sumlimits</literal> options to amsmath. You can | ||||
|    either type in this option manually, or choose from a menu of package | ||||
|    options which Latex-Suite automatically creates when you insert a | ||||
|    package using <literal><F5></literal>.  With the cursor still | ||||
|    placed between the <literal>[]</literal>, goto <literal>TeX-Suite > | ||||
|     Packages > amsmath Options</literal>. Choose the | ||||
|    <literal>sumlimits</literal> option. The package line should get | ||||
|    converted to: | ||||
|    <programlisting>\usepackage[sumlimits,]{amsmath}&ph;</programlisting> | ||||
|   </para> | ||||
|   <para> | ||||
|    with the cursor before <literal>]</literal>. Press | ||||
|    <literal><C-j></literal> in insert mode. You will see the cursor | ||||
|    jump to the end of the package line and the trailing | ||||
|    <literal>&ph;</literal> will disappear. What just happened?! You had | ||||
|    your first taste of <emphasis>Placeholders</emphasis>. Read more about | ||||
|    them (later) <ulink | ||||
|     url="http://vim-latex.sourceforge.net/documentation/latex-suite/latex-macros.html">here</ulink>. | ||||
|    In short, pressing <literal><C-j></literal> in insert mode takes | ||||
|    you to the next <literal>&ph;</literal> in the text. | ||||
|   </para> | ||||
|  </section> | ||||
|  <section id="lsq-insert-environment"> | ||||
|   <title>Inserting an Environment</title> | ||||
|   <para> | ||||
|    Now let us type in a simple formula in LaTeX. Move back to the body of | ||||
|    the document (The portion of the document between | ||||
|    <literal>\begin{document}</literal> and | ||||
|    <literal>\end{document}</literal> is called the body). Type in a few | ||||
|    simple sentences and then on an empty line, type the single word | ||||
|    <literal>eqnarray</literal>. Escape to normal mode and press | ||||
|    <literal><F5></literal>. (Remember: | ||||
|    <literal><F5></literal> is very useful!) This time, the line will | ||||
|    change to: | ||||
|   <programlisting>\begin{eqnarray} | ||||
|     \label{}&ph; | ||||
| \end{eqnarray}&ph;</programlisting> | ||||
|    with the cursor between the <literal>{}</literal>. Enter a label. We | ||||
|    will use <literal>eqn:euler</literal>. After typing in | ||||
|    <literal>eqn:euler</literal>, press <literal><C-j></literal>. This | ||||
|    will take you outside the curly-braces.  Another time you used a | ||||
|    Placeholder! | ||||
|   </para> | ||||
|  </section> | ||||
|  <section id="lsq-keyboard-shortcuts"> | ||||
|   <title>A few keyboard shortcuts</title>  | ||||
|   <para> | ||||
|    Now to type in the famous Euler formula. Our aim is to type | ||||
|    <programlisting>e^{j\pi} + 1 &=& 0</programlisting> Instead | ||||
|    of typing this blindly, let us use a few shortcuts to reduce | ||||
|    movement.  Start out by typing <literal>e^</literal>. Now instead of | ||||
|    typing <literal>{</literal>, type another <literal>^</literal>. You | ||||
|    will see the <literal>e^^</literal> change instantly to | ||||
|    <literal>e^{}&ph;</literal> with the cursor between | ||||
|    <literal>{}</literal>'s. (The <literal>^^</literal> changed to | ||||
|    <literal>^{}&ph;</literal>.) Continue with the following sequence of | ||||
|    letters: <literal>j`p</literal>. This will change instantly to | ||||
|    <literal>j\pi</literal>. (The <literal>`p</literal> changed to | ||||
|    <literal>\pi</literal>.) Having typed in all we need to type between | ||||
|    the <literal>{}</literal>'s, press <literal><C-j></literal>. | ||||
|    You will pop back out of the curly-braces. Continue typing the rest | ||||
|    of the formula. You can use <literal>==</literal> as a shortcut for | ||||
|    <literal>&=&</literal>. Latex-Suite provides a large number | ||||
|    of such shortcuts which should making typing much more fun and fast | ||||
|    if you get acquainted with them. A list is provided <ulink | ||||
|     url="http://vim-latex.sourceforge.net/documentation/latex-suite/auc-tex-mappings.html">here</ulink>. Definitely spend some time getting a feel for | ||||
|    them. Most of them are pretty intuitive like <literal>`/</literal> | ||||
|    for <literal>\frac{}{}</literal>, <literal>`8</literal> for | ||||
|    <literal>\infty</literal> etc. | ||||
|   </para> | ||||
|   <para> | ||||
|    In order to understand the next section better, it will be helpful | ||||
|    to have one more <literal>\label</literal>. Lets use the handy | ||||
|    <literal><F5></literal> | ||||
|    key to insert another equation. This time something simple like the | ||||
|    following will do: | ||||
|    <programlisting>\begin{eqnarray} | ||||
|   \label{eqn:simple} | ||||
|   1 + 1 = 2 | ||||
| \end{eqnarray}</programlisting> | ||||
|   </para> | ||||
|  </section> | ||||
|  <section id="lsq-folding"> | ||||
|   <title>Folding in &ls;</title> | ||||
|   <para> | ||||
|    Okay, we have typed enough. At this stage, hopefully, your file is | ||||
|    looking something like this: | ||||
| <programlisting> | ||||
|       1 %        File: sample.tex | ||||
|       2 %     Created: Sun Jun 22 04:00 PM 2003 P | ||||
|       3 % Last Change: Mon Dec 15 07:00 PM 2003  | ||||
|       4 % | ||||
|       5 \documentclass[a4paper]{article} | ||||
|       6  | ||||
|       7 \usepackage[sumlimits,]{amsmath} | ||||
|       8  | ||||
|       9 \begin{document} | ||||
|      10 \begin{eqnarray} | ||||
|      11 	\label{eqn:euler} | ||||
|      12 	e^{j\pi} + 1 &=& 0 | ||||
|      13 \end{eqnarray} | ||||
|      14 This is the famous euler equation. I | ||||
|      15 will type another equation, just as | ||||
|      16 true: | ||||
|      17 \begin{eqnarray} | ||||
|      18 	\label{eqn:simple} | ||||
|      19 	1 + 1 &=& 2 | ||||
|      20 \end{eqnarray} | ||||
|      21 This is my contribution to mathematics. | ||||
|      22 \end{document} | ||||
| </programlisting> | ||||
|     In normal mode, press <literal>\rf</literal>. This will fold up the | ||||
|     entire file and you should see the file looking as below: | ||||
| <programlisting> | ||||
|       1 %        File: sample.tex | ||||
|       2 %     Created: Sun Jun 22 04:00 PM 2003 P | ||||
|       3 % Last Change: Mon Dec 15 07:00 PM 2003  | ||||
|       4 % | ||||
|       5 +--  4 lines: Preamble:   \documentclass[a4paper]{article} ----- | ||||
|       9 \begin{document} | ||||
|      10 +--  4 lines: eqnarray (eqn:euler) \label{eqn:euler} ----------- | ||||
|      14 This is the famous euler equation. I | ||||
|      15 will type another equation, just as | ||||
|      16 true: | ||||
|      10 +--  4 lines: eqnarray (eqn:simple) \label{eqn:simple} --------- | ||||
|      21 This is my contribution to mathematics. | ||||
|      22 \end{document} | ||||
| </programlisting> | ||||
|     What has happened is that &ls; folded away blocks of &latex; code into | ||||
|     folded regions. You can open and close folds by using the command | ||||
|     <literal>za</literal> in normal mode. | ||||
|   </para> | ||||
|  </section> | ||||
|  <section id="lsq-inserting-reference"> | ||||
|   <title>Inserting a Reference</title> | ||||
|   <para> | ||||
|    A necessary part of LaTeX editing is referencing equations, figures, | ||||
|    bibliographic entries etc. This is done with the | ||||
|    <literal>\ref</literal> and the <literal>\cite</literal> commands. | ||||
|    Latex-Suite provides an easy way to do this. Somewhere in the body of | ||||
|    the document, type in the following sentence | ||||
|    <programlisting>This is a reference to (\ref{}).</programlisting> | ||||
|    With the cursor between the <literal>{}</literal> press | ||||
|    <literal><F9></literal> in insert mode. Your vim session will | ||||
|    sprout two new windows and it should look like below: | ||||
| <programlisting> | ||||
|       9 \begin{document} | ||||
|      10 +--  4 lines: eqnarray (eqn:euler) :  \label{eqn:euler}----------------------- | ||||
|      14 This is the famous euler equation. I | ||||
|      15 will type another equation, just as | ||||
|      16 true: | ||||
|      17 +--  4 lines: eqnarray (eqn:simple) :  \label{eqn:simple}--------------------- | ||||
|      21 This is my contribution to mathematics. | ||||
|      22 This is a reference to (\ref{}<++>)<++> | ||||
|      23 \end{document} | ||||
| ~ | ||||
| ~ | ||||
| ~ | ||||
| test.tex [+]                                                        22,29          Bot | ||||
| test.tex|11| \label{eqn:euler} | ||||
| test.tex|18| \label{eqn:simple} | ||||
| ~ | ||||
| ~ | ||||
| ~ | ||||
| [Error List]                                                        1,1            All | ||||
|       7 \usepackage[sumlimits,]{amsmath} | ||||
|       8 | ||||
|       9 \begin{document} | ||||
|      10 \begin{eqnarray} | ||||
|      11     \label{eqn:euler} | ||||
|      12     e^{j\pi} + 1 &=& 0 | ||||
|      13 \end{eqnarray} | ||||
|      14 This is the famous euler equation. I | ||||
|      15 will type another equation, just as | ||||
|      16 true: | ||||
| test.tex [Preview][+]                                               11,2-5         46% | ||||
| </programlisting> | ||||
|   </para> | ||||
|   <imageobject> | ||||
|    <imagedata fileref="" format=""></imagedata> | ||||
|   </imageobject> | ||||
|   <para> | ||||
|    The cursor will relocate to the middle window which shows all | ||||
|    <literal>\label</literal>s found in all the <literal>.tex</literal> file | ||||
|    in the current directory.  | ||||
|    You can scroll up and down in the middle window till you reach the | ||||
|    reference you want to insert. Notice how when you scroll in the | ||||
|    middle window, the bottom "Preview" window scrolls automatically to | ||||
|    show you the location of the current selection. This helps you | ||||
|    identify the reference with greater ease because often times, | ||||
|    <literal>\labels</literal> are not descriptive enough or there might be too | ||||
|    many of them. To insert the reference, just position the cursor on | ||||
|    the relevant line in the middle window and press | ||||
|    <literal><enter></literal>. The line which you were editing will change | ||||
|    to: | ||||
|    <programlisting>This is a reference to (\ref{eqn:euler})</programlisting> | ||||
|    and the bottom windows close automatically. | ||||
|   </para> | ||||
|   <para> | ||||
|    The <literal><F9></literal> key also works for inserting | ||||
|    <literal>\cite</literal> commands to reference bibliographic entries, | ||||
|    inserting file names for the <literal>\inputgraphics</literal> command | ||||
|    and just plain searching for words. Click <ulink | ||||
|     url="http://vim-latex.sourceforge.net/documentation/latex-suite/latex-completion.html">here</ulink> | ||||
|    for more information. | ||||
|   </para> | ||||
|  </section> | ||||
|  <section id="lsq-compiling"> | ||||
|   <title>Compiling a document</title> | ||||
|   <para> | ||||
|    Great! We have just created a small latex file. The next step is to | ||||
|    make the latex compiler create a .dvi file from it. Compiling via | ||||
|    latex-suite is simple. Goto normal mode and press <literal>\ll</literal> | ||||
|    (replace <literal>\</literal> with whatever <literal>mapleader</literal> setting you | ||||
|    have). This will call the latex compiler. If all goes well, then | ||||
|    the focus should return to the vim window.  | ||||
|   </para> | ||||
|   <para> | ||||
|    Nothing happend? Ouch! You might need to do some additional settings as | ||||
|    described <ulink | ||||
|     url="http://vim-latex.sourceforge.net/index.php?subject=faq&title=FAQ#faq-2">here.</ulink> | ||||
|   </para> | ||||
|   <section id="lsq-debugging"> | ||||
|    <title>Debugging LaTeX source files</title> | ||||
|    <para> | ||||
|     To illustrate the debugging procedure, let's create a few mistakes | ||||
|     in the file. Insert the following ``mistakes'' in the file: | ||||
|     <programlisting>This is a $\mistake$. | ||||
| And this is $\another$</programlisting> | ||||
|     Now press <literal>\ll</literal> again. This time you will notice that | ||||
|     after compilation finishes, the cursor automatically lands on | ||||
|     <literal>$\mistake$</literal>. In addition, 2 new windows will appear | ||||
|     as shown here: | ||||
|    </para> | ||||
|    <imageobject> | ||||
|     <imagedata fileref="" format=""></imagedata> | ||||
|    </imageobject> | ||||
|    <para> | ||||
|     The middle window is an <emphasis>Error List</emphasis> window | ||||
|     showing you the errors which the latex compiler found. The bottom | ||||
|     window is a <emphasis>Log Preview</emphasis> window, which shows you | ||||
|     the context of the error made by displaying the relevant portion of | ||||
|     the <literal>.log</literal> file created during the latex | ||||
|     compilation procedure. Jump to the <emphasis>Error List</emphasis> | ||||
|     window and try scrolling around in it using either the <literal>j, | ||||
|      k</literal> keys or the arrow keys. You will notice that the | ||||
|     <emphasis>Log Preview</emphasis> window scrolls automatically to | ||||
|     retain the context of the error you are currently located on. If you | ||||
|     press <literal><enter></literal> on any line, you will see the | ||||
|     cursor jump to the location of the error. Latex-Suite tries to guess | ||||
|     the column location as best as it can so you can continue typing | ||||
|     straight away. | ||||
|    </para> | ||||
|   </section> | ||||
|   <para> | ||||
|    Having got a taste for compiling, proceed by deleting the erroneous | ||||
|    lines and re-compiling. | ||||
|   </para> | ||||
|   <para> | ||||
|    The Latex-Suite compiler is capable of much more including | ||||
|    selectively filtering out common errors which you might want to | ||||
|    ignore for the moment, compiling parts of a document, setting | ||||
|    levels of verbosity in the compiler output etc. See <ulink | ||||
|     url="http://vim-latex.sourceforge.net/documentation/latex-suite/latex-compiling.html">here</ulink> | ||||
|    for more. | ||||
|   </para> | ||||
|  </section> | ||||
|  <section id="lsq-viewing-dvi"> | ||||
|   <title>Viewing DVI files</title> | ||||
|   <para> | ||||
|    Now that you have compiled your first latex source, its time to | ||||
|    view it. Again, this should be pretty simple. Press | ||||
|    <literal>\lv</literal> in normal mode. Depending on your platform, a DVI | ||||
|    viewer program should open up and display the dvi file generated in | ||||
|    compilation step previously. | ||||
|   </para> | ||||
|   <para> | ||||
|    Nothing happend? Ouch! You might need to do some additional settings as | ||||
|    described <ulink | ||||
|     url="http://vim-latex.sourceforge.net/index.php?subject=faq&title=FAQ#faq-3">here.</ulink> | ||||
|   </para> | ||||
|   <section id="lsq-quick-forward-searching"> | ||||
|    <title>Performing forward searches</title> | ||||
|    <para> | ||||
|     If you are using a modern DVI viewer, then it is possible to do what | ||||
|     is called forward and inverse searching. However, you will need to | ||||
|     customize the standard Latex-Suite distribution in order to utilize | ||||
|     this functionality. Type in the following on the command line: | ||||
| 
 | ||||
|     <programlisting>:let g:Tex_CompileRule_dvi = 'latex -src-specials -interaction=nonstopmode $*' | ||||
| :TCTarget dvi</programlisting> | ||||
| 
 | ||||
|     Now recompile the latex file by pressing <literal>\ll</literal>. | ||||
|     This time, instead of pressing <literal>\lv</literal> to view the | ||||
|     file, press <literal>\ls</literal> from within the tex file. If the | ||||
|     DVI viewer supports forward searching (most of them do), then the | ||||
|     viewer will actually display the portion of the DVI file | ||||
|     corresponding to the location where you were editing the tex file. | ||||
|    </para> | ||||
|    <note> | ||||
|     <para> | ||||
|      The reason Latex-Suite does not have this setting by default is | ||||
|      that on some systems this causes unpredictable results in the DVI | ||||
|      output. If you find the DVI output satisfactory, then you can | ||||
|      insert the first of the 2 lines above into your | ||||
|      <literal>$VIM/ftplugin/tex.vim</literal> file. | ||||
|      <literal>$VIM</literal> is <literal>~/vimfiles</literal> for | ||||
|      windows and <literal>~/.vim</literal> for *nix machines. | ||||
|     </para> | ||||
|    </note> | ||||
|   </section> | ||||
|   <section id="lsq-quick-inverse-searching"> | ||||
|    <title>Performing inverse searches</title> | ||||
|    <para> | ||||
|     Most DVI viewers also support inverse searching, whereby you can | ||||
|     make the DVI viewer ask vim to display the tex source corresponding | ||||
|     to the DVI file being shown. This is extremely helpful while | ||||
|     proofreading large documents. | ||||
|    </para> | ||||
| 
 | ||||
|    <para> | ||||
|     Simply double-click anywhere in the viewer window. If the viewer | ||||
|     supports it, then it will attempt to open an editor window at the | ||||
|     location corresponding to where you double-clicked. On *nix | ||||
|     platforms, Latex-Suite attempts to start the viewer program in such | ||||
|     a way that it already knows to use vim to open the tex source. Thus | ||||
|     you should see a vim window open up showing the tex file. However, | ||||
|     if there is an error, or some other program is used, you will need | ||||
|     to tell the viewer program to use gvim as the editor.  On windows | ||||
|     platforms, if you use the commonly available <literal>yap</literal> | ||||
|     viewer (available as part of the miktex distribution), then this | ||||
|     option can be set from <literal>View > Options > Inverse | ||||
|      Search</literal>. In the <literal>Command line:</literal> window, | ||||
|     write | ||||
|     <programlisting>"C:\Program Files\vim\vim61\gvim" -c ":RemoteOpen +%l %f"</programlisting> | ||||
|     (Customize the path according to where you have installed gvim). | ||||
|     If you double click in the view pane now, you will see gvim start | ||||
|     up and take you to the relevant portion of the tex file. | ||||
|    </para> | ||||
|   </section> | ||||
|  </section> | ||||
|  <section id="lsq-conclusions"> | ||||
|   <title>Conclusions</title> | ||||
|   <para> | ||||
|    Thats all folks! By now, you should know enough of the basic functions | ||||
|    of latex-suite. Ofcourse, latex-suite is capable of much, much more such | ||||
|    as compiling files multiple times to resolve changed labels, compiling | ||||
|    dependencies, handling user packages and more. To get a feel for that, | ||||
|    you will need to take a look at the <ulink | ||||
|     url="http://vim-latex.sourceforge.net/index.php?subject=manual&title=Manual#user-manual">&ls; | ||||
|     user manual.</ulink> | ||||
|   </para> | ||||
|  </section> | ||||
| </article> | ||||
| 
 | ||||
| <!-- | ||||
| vim: et:sw=1:ts=1 | ||||
| --> | ||||
							
								
								
									
										182
									
								
								vim/vim-latex/doc/latex-suite.css
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										182
									
								
								vim/vim-latex/doc/latex-suite.css
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,182 @@ | |||
| /*  | ||||
|  * Authors: Srinath Avadhanula and Mikolaj Machowski | ||||
|  * This style file borrows some elements from main.css, the style file used | ||||
|  * in cream.sf.net | ||||
|  * | ||||
|  * */ | ||||
| P {  | ||||
| 	font-size : 12pt ; | ||||
| 	font-family : helvetica, arial, verdana, sans-serif ; | ||||
| 	vertical-align : top; | ||||
| } | ||||
| DT {  | ||||
| 	font-size : 11pt ; | ||||
| 	font-family : helvetica, arial, verdana, sans-serif ; | ||||
| 	vertical-align : top; | ||||
| } | ||||
| LI {  | ||||
| 	font-size : 12pt ; | ||||
| 	font-family : helvetica, arial, verdana, sans-serif ; | ||||
| 	vertical-align : top; | ||||
| } | ||||
| 
 | ||||
| DIV.header {  | ||||
| 	margin : 0.5cm ; | ||||
| 	width : 800px ; | ||||
| 	height : 100  | ||||
| } | ||||
| .note { | ||||
| } | ||||
| 
 | ||||
| TD {  | ||||
| 	font-size : 11pt ; | ||||
| 	font-family : helvetica, arial, verdana, sans-serif ; | ||||
| 	vertical-align : top; | ||||
| } | ||||
| TD.menu {  | ||||
| 	text-align : center ; | ||||
| 	font-family : verdana, helvetica, sans-serif  | ||||
| } | ||||
| TD.footright {  | ||||
| 	text-align : right ; | ||||
| 	font-size : 10pt ; | ||||
| 	font-family : verdana, helvetica, sans-serif  | ||||
| } | ||||
| TD.leftpanel {  | ||||
| 	font-size: 14px ; | ||||
| 	font-family: verdana, helvetica, sans-serif ; | ||||
| 	vertical-align: top ; | ||||
| 	width: 150px; | ||||
| 	padding: 15px; | ||||
| 	background-color: #88aaaa; | ||||
| } | ||||
| TD.mainpanel {  | ||||
| 	font-size : 12pt ; | ||||
| 	font-family : helvetica, arial, verdana, sans-serif ; | ||||
| 	vertical-align : top; | ||||
| 	padding: 15px; | ||||
| } | ||||
| TD.footpanel {  | ||||
| 	font-size: 12px ; | ||||
| 	font-family: verdana, helvetica, sans-serif ; | ||||
| 	vertical-align: top ; | ||||
| 	text-align: right; | ||||
| 	padding: 5px; | ||||
| 	background-color: #88aaaa; | ||||
| } | ||||
| .navigation { | ||||
| 	vertical-align: top; | ||||
| 	width: 150px; | ||||
| 	padding: 15px; | ||||
| 	background-color: #445555; | ||||
| 	color: #fffcfc; | ||||
| }  | ||||
| .navheader { | ||||
| 	margin-top: -0.5em; | ||||
| 	margin-bottom: 0.5em; | ||||
| 	text-align: right; | ||||
| 	color: #446644; | ||||
| 	font-size: 14px; | ||||
|     font-weight: bold; | ||||
| } | ||||
| 
 | ||||
| SPAN.menu { | ||||
| 	text-align : center ; | ||||
| 	font-size : 12pt ; | ||||
| 	font-family : verdana, helvetica, sans-serif  | ||||
| } | ||||
| 
 | ||||
| DIV.merit { | ||||
| 	margin : 0.5cm ; | ||||
| 	width : 800px  | ||||
| } | ||||
| 
 | ||||
| TABLE.meritum { | ||||
| 	margin : 0.5cm ; | ||||
| 	border : 0  | ||||
| } | ||||
| .foot { | ||||
| 	margin : 0.5cm ; | ||||
| 	width : 800px  | ||||
| } | ||||
| .head {  | ||||
| 	margin : 0.5cm ;  | ||||
| } | ||||
| 
 | ||||
| CODE { | ||||
| 	font-family: "Andale Mono", "Courier New", "Courier", monospace; | ||||
| 	background-color: #eef0f3; | ||||
| 	white-space: nowrap; | ||||
| } | ||||
| 
 | ||||
| .singlesmall { | ||||
| 	font-size: 14px; | ||||
| } | ||||
| 
 | ||||
| .doublesmall { | ||||
| 	font-size: 12px; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| DIV.footer { | ||||
| 	margin : 0.5cm ; | ||||
| 	width : 800px  | ||||
| } | ||||
| .qa { | ||||
| 	margin : 0.5cm ; | ||||
| 	font-size : 16px; | ||||
| 	font-weight : bold; | ||||
| } | ||||
| .ans { | ||||
| 	margin : 0.5cm ; | ||||
| 	font-weight : normal; | ||||
| } | ||||
| 
 | ||||
| H2.hline { | ||||
| 	text-align : center ; | ||||
| 	font-family : verdana, helvetica, sans-serif  | ||||
| } | ||||
| 
 | ||||
| A.extlinks { | ||||
| 	font-size : 11pt ; | ||||
| 	font-family : verdana, helvetica, sans-serif ; | ||||
| 	font-weight : bold  | ||||
| } | ||||
| 
 | ||||
| TT { | ||||
| 	font-family: courier,sans-serif;  | ||||
| 	font-size: 11pt;  | ||||
| } | ||||
| PRE.programlisting { | ||||
| 	font-family: courier,sans-serif;  | ||||
| 	font-size: 10pt;  | ||||
| 	background-color:#eef0f3; | ||||
|     border-color: #000000; | ||||
|     border-width: 1px; | ||||
|     border-style: solid; | ||||
| } | ||||
| SPAN.conflict { | ||||
| 	font-size : small ; | ||||
| 	font-family: courier,sans-serif;  | ||||
| 	color : #DD4444; | ||||
| } | ||||
| HR.navig { | ||||
| 	color: #446644; | ||||
| 	height: 1px; | ||||
| 	margin-top: 1em; | ||||
| 	border-top: 0px;	/* Mozilla work-around to eliminate "groove" */ | ||||
| } | ||||
| A.question { | ||||
| 	color: #000000; | ||||
| 	height: 1px; | ||||
| 	margin-top: 1em; | ||||
| 	border-top: 0px;	/* Mozilla work-around to eliminate "groove" */ | ||||
| } | ||||
| A.question:hover { | ||||
| 	color: #000000; | ||||
| 	background-color: #eef0f3; | ||||
| 	height: 1px; | ||||
| 	margin-top: 1em; | ||||
| 	border-top: 0px;	/* Mozilla work-around to eliminate "groove" */ | ||||
| } | ||||
| 
 | ||||
							
								
								
									
										3462
									
								
								vim/vim-latex/doc/latex-suite.txt
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										3462
									
								
								vim/vim-latex/doc/latex-suite.txt
									
										
									
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										4666
									
								
								vim/vim-latex/doc/latex-suite.xml
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										4666
									
								
								vim/vim-latex/doc/latex-suite.xml
									
										
									
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										22
									
								
								vim/vim-latex/doc/latex-suite.xsl
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										22
									
								
								vim/vim-latex/doc/latex-suite.xsl
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,22 @@ | |||
| <?xml version="1.0"?> | ||||
| <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" | ||||
|   version="1.0" | ||||
|   xmlns="http://www.w3.org/TR/xhtml1/transitional" | ||||
|   exclude-result-prefixes="#default"> | ||||
| 
 | ||||
|   <xsl:import href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"/> | ||||
| 
 | ||||
|   <!-- import common customizations --> | ||||
|   <xsl:import href="latex-suite-common.xsl"/> | ||||
| 
 | ||||
|   <xsl:output method="html" | ||||
|     encoding="ISO-8859-1" | ||||
|     indent="no"/> | ||||
| 
 | ||||
|   <!-- insert customization here --> | ||||
| 
 | ||||
|   <xsl:param name="section.autolabel" select="1"/> | ||||
|   <xsl:param name="html.stylesheet" select="'latex-suite.css'"/> | ||||
| 
 | ||||
| 
 | ||||
| </xsl:stylesheet> | ||||
							
								
								
									
										2430
									
								
								vim/vim-latex/doc/latexhelp.txt
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										2430
									
								
								vim/vim-latex/doc/latexhelp.txt
									
										
									
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										15
									
								
								vim/vim-latex/ftplugin/bib_latexSuite.vim
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										15
									
								
								vim/vim-latex/ftplugin/bib_latexSuite.vim
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,15 @@ | |||
| " File: bib_latexSuite.vim | ||||
| " Author: Srinath Avadhanula | ||||
| " License: Vim Charityware License | ||||
| " Description: | ||||
| " 	This file sources the bibtex.vim file distributed as part of latex-suite. | ||||
| " 	That file sets up 3 maps BBB, BAS, and BBA which are easy wasy to type in | ||||
| " 	bibliographic entries. | ||||
| " | ||||
| 
 | ||||
| " source main.vim because we need a few functions from it. | ||||
| runtime ftplugin/latex-suite/main.vim | ||||
| " Disable smart-quotes because we need to enter real quotes in bib files. | ||||
| runtime ftplugin/latex-suite/bibtex.vim | ||||
| 
 | ||||
| " vim:fdm=marker:ff=unix:noet:ts=4:sw=4:nowrap | ||||
							
								
								
									
										265
									
								
								vim/vim-latex/ftplugin/latex-suite/bibtex.vim
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										265
									
								
								vim/vim-latex/ftplugin/latex-suite/bibtex.vim
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,265 @@ | |||
| "============================================================================= | ||||
| " 	       File: bibtex.vim | ||||
| "      Function: BibT | ||||
| "        Author: Alan G Isaac <aisaac@american.edu> | ||||
| "                modified by Srinath Avadhanula for latex-suite. | ||||
| "       License: Vim Charityware license. | ||||
| "============================================================================= | ||||
| 
 | ||||
| " Fields: | ||||
| " Define what field type each letter denotes {{{ | ||||
| "  | ||||
| let s:w_standsfor = 'address' | ||||
| let s:a_standsfor = 'author' | ||||
| let s:b_standsfor = 'booktitle' | ||||
| let s:c_standsfor = 'chapter' | ||||
| let s:d_standsfor = 'edition' | ||||
| let s:e_standsfor = 'editor' | ||||
| let s:h_standsfor = 'howpublished' | ||||
| let s:i_standsfor = 'institution' | ||||
| let s:k_standsfor = 'isbn' | ||||
| let s:j_standsfor = 'journal' | ||||
| let s:m_standsfor = 'month' | ||||
| let s:n_standsfor = 'number' | ||||
| let s:o_standsfor = 'organization' | ||||
| let s:p_standsfor = 'pages' | ||||
| let s:q_standsfor = 'publisher' | ||||
| let s:r_standsfor = 'school' | ||||
| let s:s_standsfor = 'series' | ||||
| let s:t_standsfor = 'title' | ||||
| let s:u_standsfor = 'type' | ||||
| let s:v_standsfor = 'volume' | ||||
| let s:y_standsfor = 'year' | ||||
| let s:z_standsfor = 'note' | ||||
| 
 | ||||
| " }}} | ||||
| " Define the fields required for the various entry types {{{ | ||||
| "  | ||||
| " s:{type}_required defines the required fields | ||||
| " s:{type}_optional1 defines common optional fields | ||||
| " s:{type}_optional2 defines uncommmon optional fields | ||||
| " s:{type}_retval defines the first line of the formatted bib entry. | ||||
| " | ||||
| let s:key='<+key+>' | ||||
| 
 | ||||
| let s:{'article'}_required="atjy" | ||||
| let s:{'article'}_optional1="vnpm" | ||||
| let s:{'article'}_optional2="z" " z is note | ||||
| let s:{'article'}_retval = '@ARTICLE{' . s:key . ','."\n" | ||||
| 
 | ||||
| let s:{'book'}_required="aetqy" " requires author *or* editor | ||||
| let s:{'book'}_optional1="wd" | ||||
| let s:{'book'}_optional2="vnsmz" " w is address, d is edition | ||||
| let s:{'book'}_extras="k" " isbn | ||||
| let s:{'book'}_retval = '@BOOK{' . s:key . ','."\n" | ||||
| 
 | ||||
| let s:{'booklet'}_required="t" | ||||
| let s:{'booklet'}_optional1="ahy" | ||||
| let s:{'booklet'}_optional2="wmz" " w is address | ||||
| let s:{'booklet'}_retval = '@BOOKLET{' . s:key . ','."\n" | ||||
| 
 | ||||
| let s:{'inbook'}_required="aetcpqy" | ||||
| let s:{'inbook'}_optional1="w" " w is address | ||||
| let s:{'inbook'}_optional2="vnsudmz" " d is edition | ||||
| let s:{'inbook'}_extras="k" " isbn | ||||
| let s:{'inbook'}_retval = '@INBOOK{' . s:key . ','."\n" | ||||
| 
 | ||||
| let s:{'incollection'}_required="atbqy" " b is booktitle | ||||
| let s:{'incollection'}_optional1="cpw" " w is address, c is chapter | ||||
| let s:{'incollection'}_optional2="evnsudmz" " d is edition | ||||
| let s:{'incollection'}_extras="k" " isbn | ||||
| let s:{'incollection'}_retval = '@INCOLLECTION{' . s:key . ','."\n" | ||||
| 
 | ||||
| let s:{'inproceedings'}_required="atby" " b is booktitle | ||||
| let s:{'inproceedings'}_optional1="epwoq" " w is address, q is publisher | ||||
| let s:{'inproceedings'}_optional2="vnsmz" | ||||
| let s:{'inproceedings'}_extras="k" " isbn | ||||
| let s:{'inproceedings'}_retval = '@INPROCEEDINGS{' . s:key . ','."\n" | ||||
| 
 | ||||
| let s:{'conference'}_required="atby" " b is booktitle | ||||
| let s:{'conference'}_optional1="epwoq" " w is address, q is publisher | ||||
| let s:{'conference'}_optional2="vnsmz" | ||||
| let s:{'conference'}_extras="k" " isbn | ||||
| let s:{'conference'}_retval = '@CONFERENCE{' . s:key . ','."\n" | ||||
| 
 | ||||
| let s:{'manual'}_required="t" | ||||
| let s:{'manual'}_optional1="ow" | ||||
| let s:{'manual'}_optional2="admyz" " w is address | ||||
| let s:{'manual'}_retval = '@MANUAL{' . s:key . ','."\n" | ||||
| 
 | ||||
| let s:{'msthesis'}_required="atry" " r is school | ||||
| let s:{'msthesis'}_optional1="w" " w is address | ||||
| let s:{'msthesis'}_optional2="umz" " u is type, w is address | ||||
| let s:{'msthesis'}_retval = '@MASTERSTHESIS{' . s:key . ','."\n" | ||||
| 
 | ||||
| let s:{'misc'}_required="" | ||||
| let s:{'misc'}_optional1="ath" | ||||
| let s:{'misc'}_optional2="myz" | ||||
| let s:{'misc'}_retval = '@MISC{' . s:key . ','."\n" | ||||
| 
 | ||||
| let s:{'phdthesis'}_required="atry" " r is school | ||||
| let s:{'phdthesis'}_optional1="w" " w is address | ||||
| let s:{'phdthesis'}_optional2="umz" " u is type | ||||
| let s:{'phdthesis'}_retval = '@PHDTHESIS{' . s:key . ','."\n" | ||||
| 
 | ||||
| let s:{'proceedings'}_required="ty" | ||||
| let s:{'proceedings'}_optional1="ewo" " w is address | ||||
| let s:{'proceedings'}_optional2="vnsmqz" " q is publisher | ||||
| let s:{'proceedings'}_retval = '@PROCEEDINGS{' . s:key . ','."\n" | ||||
| 
 | ||||
| let s:{'techreport'}_required="atiy" | ||||
| let s:{'techreport'}_optional1="unw" " u is type, w is address | ||||
| let s:{'techreport'}_optional2="mz" | ||||
| let s:{'techreport'}_retval = '@TECHREPORT{' . s:key . ','."\n" | ||||
| 
 | ||||
| let s:{'unpublished'}_required="atz" | ||||
| let s:{'unpublished'}_optional1="y" | ||||
| let s:{'unpublished'}_optional2="m" | ||||
| let s:{'unpublished'}_retval = '@UNPUBLISHED{' . s:key . ','."\n" | ||||
| 
 | ||||
| " }}} | ||||
| 
 | ||||
| if exists('s:done') | ||||
| 	finish | ||||
| endif | ||||
| let s:done = 1 | ||||
| 
 | ||||
| call IMAP ('BBB', "\<C-r>=BibT('', '', 0)\<CR>", 'bib') | ||||
| call IMAP ('BBL', "\<C-r>=BibT('', 'o', 0)\<CR>", 'bib') | ||||
| call IMAP ('BBH', "\<C-r>=BibT('', 'O', 0)\<CR>", 'bib') | ||||
| call IMAP ('BBX', "\<C-r>=BibT('', 'Ox', 0)\<CR>", 'bib') | ||||
| 
 | ||||
| " BibT: function to generate a formatted bibtex entry {{{ | ||||
| " three sample usages: | ||||
| "   :call BibT()                    will request type choice | ||||
| "   :call BibT("article")           preferred, provides most common fields | ||||
| "   :call BibT("article","ox")      more optional fields (o) and extras (x) | ||||
| " | ||||
| " Input Arguments: | ||||
| " type: is one of the types listed above. (this should be a complete name, not | ||||
| "       the acronym). | ||||
| " options: a string containing 0 or more of the letters 'oOx' | ||||
| "          where | ||||
| "          o: include a bib entry with first set of options | ||||
| "          O: include a bib entry with extended options | ||||
| "          x: incude bib entry with extra options | ||||
| " prompt: whether the fields are asked to be filled on the command prompt or | ||||
| "         whether place-holders are used. when prompt == 1, then comman line | ||||
| "         questions are used. | ||||
| " | ||||
| " Returns: | ||||
| " a string containing a formatted bib entry | ||||
| function BibT(type, options, prompt) | ||||
| 	if a:type != '' | ||||
| 		let choosetype = a:type | ||||
| 	else | ||||
| 		let types =  | ||||
| 			\ 'article'."\n". | ||||
| 			\ 'booklet'."\n". | ||||
| 			\ 'book'."\n". | ||||
| 			\ 'conference'."\n". | ||||
| 			\ 'inbook'."\n". | ||||
| 			\ 'incollection'."\n". | ||||
| 			\ 'inproceedings'."\n". | ||||
| 			\ 'manual'."\n". | ||||
| 			\ 'msthesis'."\n". | ||||
| 			\ 'misc'."\n". | ||||
| 			\ 'phdthesis'."\n". | ||||
| 			\ 'proceedings'."\n". | ||||
| 			\ 'techreport'."\n". | ||||
| 			\ 'unpublished' | ||||
| 		let choosetype = Tex_ChooseFromPrompt( | ||||
| 					\ "Choose the type of bibliographic entry: \n" .  | ||||
| 					\ Tex_CreatePrompt(types, 3, "\n") . | ||||
| 					\ "\nEnter number or filename :",  | ||||
| 					\ types, "\n") | ||||
| 		if choosetype == '' | ||||
| 			let choosetype = 'article' | ||||
| 		endif | ||||
| 		if types !~ '^\|\n'.choosetype.'$\|\n' | ||||
| 			echomsg 'Please choose only one of the given types' | ||||
| 			return | ||||
| 		endif | ||||
| 	endif | ||||
| 	if a:options != '' | ||||
| 		let options = a:options | ||||
| 	else | ||||
| 		let options = "" | ||||
| 	endif | ||||
| 
 | ||||
| 	let fields = '' | ||||
| 	let extras="" | ||||
| 	let retval = "" | ||||
| 
 | ||||
| 	" define fields | ||||
| 	let fields = s:{choosetype}_required | ||||
| 	if options =~ 'o' && exists('s:'.choosetype.'_optional1') | ||||
| 		let fields = fields . s:{choosetype}_optional1 | ||||
| 	endif | ||||
| 	if options =~ "O" && exists('s:'.choosetype.'_optional2') | ||||
| 		if options !~ 'o'&& exists('s:'.choosetype.'_optional1')  | ||||
| 			let fields = fields . s:{choosetype}_optional1 | ||||
| 		endif | ||||
| 		let fields = fields . s:{choosetype}_optional2 | ||||
| 	endif | ||||
| 	if options =~ "x" && exists('s:'.choosetype.'_extras') | ||||
| 		let fields = fields . extras | ||||
| 	endif | ||||
| 	if exists('g:Bib_'.choosetype.'_options') | ||||
| 		let fields = fields . g:Bib_{choosetype}_options | ||||
| 	endif | ||||
| 
 | ||||
| 	let retval = s:{choosetype}_retval | ||||
| 	 | ||||
| 	let i = 0 | ||||
| 	while i < strlen(fields) | ||||
| 		let field = strpart(fields, i, 1) | ||||
| 
 | ||||
| 		if exists('s:'.field.'_standsfor') | ||||
| 			let field_name = s:{field}_standsfor | ||||
| 			let retval = retval.field_name." = {<++>},\n" | ||||
| 		endif | ||||
| 
 | ||||
| 		let i = i + 1 | ||||
| 	endwhile | ||||
| 	 | ||||
| 	" If the user wants even more fine-tuning... | ||||
| 	if Tex_GetVarValue('Bib_'.choosetype.'_extrafields') != '' | ||||
| 
 | ||||
| 		let extrafields = Tex_GetVarValue('Bib_'.choosetype.'_extrafields') | ||||
| 		 | ||||
| 		let i = 1 | ||||
| 		while 1 | ||||
| 			let field_name = Tex_Strntok(extrafields, "\n", i) | ||||
| 			if field_name == '' | ||||
| 				break | ||||
| 			endif | ||||
| 
 | ||||
| 			let retval = retval.field_name." = {<++>},\n" | ||||
| 
 | ||||
| 			let i = i + 1 | ||||
| 		endwhile | ||||
| 
 | ||||
| 	endif | ||||
| 
 | ||||
| 	let retval = retval.'otherinfo = {<++>}'."\n" | ||||
| 	let retval = retval."}<++>"."\n" | ||||
| 
 | ||||
| 	return IMAP_PutTextWithMovement(retval) | ||||
| endfunction | ||||
| 
 | ||||
| " }}} | ||||
| function! s:Input(prompt, ask) " {{{ | ||||
| 	if a:ask == 1 | ||||
| 		let retval = input(a:prompt) | ||||
| 		if retval == '' | ||||
| 			return "<++>" | ||||
| 		endif | ||||
| 	else | ||||
| 		return "<++>" | ||||
| 	endif | ||||
| endfunction  | ||||
| 
 | ||||
| " }}} | ||||
| 
 | ||||
| " vim:fdm=marker:ff=unix:noet:ts=4:sw=4 | ||||
							
								
								
									
										221
									
								
								vim/vim-latex/ftplugin/latex-suite/bibtools.py
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										221
									
								
								vim/vim-latex/ftplugin/latex-suite/bibtools.py
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,221 @@ | |||
| # Author: Srinath Avadhanula | ||||
| # This file is distributed as part of the vim-latex project | ||||
| # http://vim-latex.sf.net | ||||
| 
 | ||||
| import re | ||||
| 
 | ||||
| class Bibliography(dict): | ||||
|     def __init__(self, txt, macros={}): | ||||
|         """ | ||||
|         txt: | ||||
|             a string which represents the entire bibtex entry. A typical | ||||
|             entry is of the form: | ||||
|                 @ARTICLE{ellington:84:part3, | ||||
|                   author = {Ellington, C P}, | ||||
|                   title = {The Aerodynamics of Hovering Insect Flight. III. Kinematics}, | ||||
|                   journal = {Philosophical Transactions of the Royal Society of London. Series B, Biological Sciences}, | ||||
|                   year = {1984}, | ||||
|                   volume = {305}, | ||||
|                   pages = {41-78}, | ||||
|                   number = {1122}, | ||||
|                   owner = {Srinath}, | ||||
|                   pdf = {C:\srinath\research\papers\Ellington-3-Kinematics.pdf}, | ||||
|                   timestamp = {2006.01.02}, | ||||
|                 } | ||||
|         """ | ||||
|          | ||||
|         if macros: | ||||
|             for k, v in macros.iteritems(): | ||||
|                 txt = txt.replace(k, '{'+v+'}') | ||||
|          | ||||
|         m = re.match(r'\s*@(\w+){\s*((\S+),)?(.*)}\s*', txt, re.MULTILINE | re.DOTALL) | ||||
|         if not m: | ||||
|             return None | ||||
| 
 | ||||
|         self['bibtype'] = m.group(1).capitalize() | ||||
|         self['key'] = m.group(3) | ||||
|         self['body'] = m.group(4) | ||||
| 
 | ||||
|         body = self['body'] | ||||
|         self['bodytext'] = '' | ||||
|         while 1: | ||||
|             m = re.search(r'(\S+?)\s*=\s*(.)', body) | ||||
|             if not m: | ||||
|                 break | ||||
| 
 | ||||
|             field = m.group(1) | ||||
| 
 | ||||
|             body = body[(m.start(2)+1):] | ||||
|             if m.group(2) == '{': | ||||
|                 # search for the next closing brace. This is not simply a | ||||
|                 # matter of searching for the next closing brace since | ||||
|                 # braces can be nested. The following code basically goes | ||||
|                 # to the next } which has not already been closed by a | ||||
|                 # following {. | ||||
|                 mniter = re.finditer(r'{|}', body) | ||||
| 
 | ||||
|                 count = 1 | ||||
|                 while 1: | ||||
|                     try: | ||||
|                         mn = mniter.next() | ||||
|                     except StopIteration: | ||||
|                         return None | ||||
| 
 | ||||
|                     if mn.group(0) == '{': | ||||
|                         count += 1 | ||||
|                     else: | ||||
|                         count -= 1 | ||||
| 
 | ||||
|                     if count == 0: | ||||
|                         value = body[:(mn.start(0))] | ||||
|                         break | ||||
| 
 | ||||
|             elif m.group(2) == '"': | ||||
|                 # search for the next unquoted double-quote. To be more | ||||
|                 # precise, a double quote which is preceded by an even | ||||
|                 # number of double quotes. | ||||
|                 mn = re.search(r'(?!\\)(\\\\)*"', body) | ||||
|                 if not mn: | ||||
|                     return None | ||||
| 
 | ||||
|                 value = body[:(mn.start(0))] | ||||
| 
 | ||||
|             else: | ||||
|                 # $ always matches. So we do not need to do any | ||||
|                 # error-checking. | ||||
|                 mn = re.search(r',|$', body) | ||||
|                 value = m.group(2) + body[:(mn.start(0))].rstrip() | ||||
| 
 | ||||
|             self[field.lower()] = re.sub(r'\s+', ' ', value) | ||||
|             body = body[(mn.start(0)+1):] | ||||
| 
 | ||||
|             self['bodytext'] += ('  %s: %s\n' % (field, value)) | ||||
|             if self['bibtype'].lower() == 'string': | ||||
|                 self['macro'] = {field: value} | ||||
| 
 | ||||
|         self['bodytext'] = self['bodytext'].rstrip() | ||||
|          | ||||
| 
 | ||||
|     def __getitem__(self, key): | ||||
|         try: | ||||
|             return dict.__getitem__(self, key) | ||||
|         except KeyError: | ||||
|             return '' | ||||
|          | ||||
|     def __str__(self): | ||||
|         if self['bibtype'].lower() == 'string': | ||||
|             return 'String: %(macro)s' % self | ||||
| 
 | ||||
|         elif self['bibtype'].lower() == 'article': | ||||
|             return ('Article [%(key)s]\n' + | ||||
|                     'TI "%(title)s"\n' + | ||||
|                     'AU %(author)s\n' + | ||||
|                     'IN In %(journal)s, %(year)s') % self | ||||
| 
 | ||||
|         elif self['bibtype'].lower() == 'conference': | ||||
|             return ('Conference [%(key)s]\n' + | ||||
|                     'TI "%(title)s"\n' + | ||||
|                     'AU %(author)s\n' + | ||||
|                     'IN In %(booktitle)s, %(year)s') % self | ||||
| 
 | ||||
|         elif self['bibtype'].lower() == 'mastersthesis': | ||||
|             return ('Masters [%(key)s]\n' +  | ||||
|                     'TI "%(title)s"\n' +  | ||||
|                     'AU %(author)s\n' +  | ||||
|                     'IN In %(school)s, %(year)s') % self | ||||
| 
 | ||||
|         elif self['bibtype'].lower() == 'phdthesis': | ||||
|             return ('PhD [%(key)s]\n' +  | ||||
|                     'TI "%(title)s"\n' +  | ||||
|                     'AU %(author)s\n' +  | ||||
|                     'IN In %(school)s, %(year)s') % self | ||||
| 
 | ||||
|         elif self['bibtype'].lower() == 'book': | ||||
|             return ('Book [%(key)s]\n' + | ||||
|                     'TI "%(title)s"\n' +  | ||||
|                     'AU %(author)s\n' +  | ||||
|                     'IN %(publisher)s, %(year)s') % self | ||||
| 
 | ||||
|         else: | ||||
|             s = '%(bibtype)s [%(key)s]\n' % self | ||||
|             if self['title']: | ||||
|                 s += 'TI "%(title)s"\n' % self | ||||
|             if self['author']: | ||||
|                 s += 'AU %(author)s\n' % self | ||||
|             for k, v in self.iteritems(): | ||||
|                 if k not in ['title', 'author', 'bibtype', 'key', 'id', 'file', 'body', 'bodytext']: | ||||
|                     s += 'MI %s: %s\n' % (k, v) | ||||
| 
 | ||||
|             return s.rstrip() | ||||
| 
 | ||||
|     def satisfies(self, filters): | ||||
|         for field, regexp in filters: | ||||
|             if not re.search(regexp, self[field], re.I): | ||||
|                 return False | ||||
| 
 | ||||
|         return True | ||||
| 
 | ||||
| class BibFile: | ||||
| 
 | ||||
|     def __init__(self, filelist=''): | ||||
|         self.bibentries = [] | ||||
|         self.filters = [] | ||||
|         self.macros = {} | ||||
|         self.sortfields = [] | ||||
|         if filelist: | ||||
|             for f in filelist.splitlines(): | ||||
|                 self.addfile(f) | ||||
| 
 | ||||
|     def addfile(self, file): | ||||
|         fields = open(file).read().split('@') | ||||
|         for f in fields: | ||||
|             if not (f and re.match('string', f, re.I)): | ||||
|                 continue | ||||
| 
 | ||||
|             b = Bibliography('@' + f) | ||||
|             self.macros.update(b['macro']) | ||||
| 
 | ||||
|         for f in fields: | ||||
|             if not f or re.match('string', f, re.I): | ||||
|                 continue | ||||
| 
 | ||||
|             b = Bibliography('@' + f, self.macros) | ||||
|             if b: | ||||
|                 b['file'] = file | ||||
|                 b['id'] = len(self.bibentries) | ||||
|                 self.bibentries += [b] | ||||
| 
 | ||||
| 
 | ||||
|     def addfilter(self, filterspec): | ||||
|         self.filters += [filterspec.split()] | ||||
| 
 | ||||
|     def rmfilters(self): | ||||
|         self.filters = [] | ||||
| 
 | ||||
|     def __str__(self): | ||||
|         s = '' | ||||
|         for b in self.bibentries: | ||||
|             if b['key'] and b.satisfies(self.filters): | ||||
|                 s += '%s\n\n' % b | ||||
|         return s | ||||
| 
 | ||||
|     def addsortfield(self, field): | ||||
|         self.sortfields += [field] | ||||
| 
 | ||||
|     def rmsortfields(self): | ||||
|         self.sortfields = [] | ||||
| 
 | ||||
|     def sort(self): | ||||
|         def cmpfun(b1, b2): | ||||
|             for f in self.sortfields: | ||||
|                 c = cmp(b1[f], b2[f]) | ||||
|                 if c: | ||||
|                     return c | ||||
|             return 0 | ||||
|         self.bibentries.sort(cmp=cmpfun) | ||||
| 
 | ||||
| if __name__ == "__main__": | ||||
|     import sys | ||||
| 
 | ||||
|     bf = BibFile(sys.argv[1]) | ||||
|     print bf | ||||
							
								
								
									
										144
									
								
								vim/vim-latex/ftplugin/latex-suite/brackets.vim
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										144
									
								
								vim/vim-latex/ftplugin/latex-suite/brackets.vim
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,144 @@ | |||
| " ============================================================================== | ||||
| " History: This was originally part of auctex.vim by Carl Mueller. | ||||
| "          Srinath Avadhanula incorporated it into latex-suite with | ||||
| "          significant modifications. | ||||
| "          Parts of this file may be copyrighted by others as noted. | ||||
| " Description: | ||||
| " 	This ftplugin provides the following maps: | ||||
| " . <M-b> encloses the previous character in \mathbf{} | ||||
| " . <M-c> is polymorphic as follows: | ||||
| "     Insert mode: | ||||
| "     1. If the previous character is a letter or number, then capitalize it and | ||||
| "        enclose it in \mathcal{} | ||||
| "     2. otherwise insert \cite{} | ||||
| "     Visual Mode: | ||||
| "     1. Enclose selection in \mathcal{} | ||||
| " . <M-l> is also polymorphic as follows: | ||||
| "     If the character before typing <M-l> is one of '([{|<q', then do the | ||||
| "     following: | ||||
| "       1. (<M-l>       \left(\right | ||||
| "               similarly for [, | | ||||
| "          {<M-l>       \left\{\right\} | ||||
| "       2. <<M-l>       \langle\rangle | ||||
| "       3. q<M-l>       \lefteqn{} | ||||
| "     otherwise insert  \label{} | ||||
| " . <M-i> inserts \item commands at the current cursor location depending on | ||||
| "       the surrounding environment. For example, inside itemize, it will | ||||
| "       insert a simple \item, but within a description, it will insert | ||||
| "       \item[<+label+>] etc. | ||||
| "  | ||||
| " These functions make it extremeley easy to do all the \left \right stuff in | ||||
| " latex. | ||||
| " ==============================================================================  | ||||
| 
 | ||||
| " Avoid reinclusion. | ||||
| if exists('b:did_brackets') | ||||
| 	finish | ||||
| endif | ||||
| let b:did_brackets = 1 | ||||
| 
 | ||||
| " define the funtions only once. | ||||
| if exists('*Tex_MathBF') | ||||
| 	finish | ||||
| endif | ||||
| 
 | ||||
| " Tex_MathBF: encloses te previous letter/number in \mathbf{} {{{ | ||||
| " Description:  | ||||
| function! Tex_MathBF() | ||||
| 	return "\<Left>\\mathbf{\<Right>}" | ||||
| endfunction " }}} | ||||
| " Tex_MathCal: enclose the previous letter/number in \mathcal {{{ | ||||
| " Description: | ||||
| " 	if the last character is not a letter/number, then insert \cite{} | ||||
| function! Tex_MathCal() | ||||
| 	let line = getline(line(".")) | ||||
| 	let char = line[col(".")-2] | ||||
| 
 | ||||
| 	if char =~ '[a-zA-Z0-9]' | ||||
| 		return "\<BS>".'\mathcal{'.toupper(char).'}' | ||||
| 	else | ||||
| 		return IMAP_PutTextWithMovement('\cite{<++>}<++>') | ||||
| 	endif | ||||
| endfunction | ||||
| " }}} | ||||
| " Tex_LeftRight: maps <M-l> in insert mode. {{{ | ||||
| " Description: | ||||
| " This is a polymorphic function, which maps the behaviour of <M-l> in the | ||||
| " following way: | ||||
| " If the character before typing <M-l> is one of '([{|<q', then do the | ||||
| " following: | ||||
| " 	1. (<M-l>		\left(<++>\right<++> | ||||
| " 	    	similarly for [, | | ||||
| " 	   {<M-l>		\left\{<++>\right\}<++> | ||||
| " 	2. <<M-l>		\langle<++>\rangle<++> | ||||
| " 	3. q<M-l>		\lefteqn{<++>}<++> | ||||
| " otherwise insert  \label{<++>}<++> | ||||
| function! Tex_LeftRight() | ||||
| 	let line = getline(line(".")) | ||||
| 	let char = line[col(".")-2] | ||||
| 	let previous = line[col(".")-3] | ||||
| 
 | ||||
| 	let matchedbrackets = '()[]{}||' | ||||
| 	if char =~ '(\|\[\|{\||' | ||||
| 		let add = '' | ||||
| 		if char =~ '{' | ||||
| 			let add = "\\" | ||||
| 		endif | ||||
| 		let rhs = matchstr(matchedbrackets, char.'\zs.\ze') | ||||
| 		return "\<BS>".IMAP_PutTextWithMovement('\left'.add.char.'<++>\right'.add.rhs.'<++>') | ||||
| 	elseif char == '<' | ||||
| 		return "\<BS>".IMAP_PutTextWithMovement('\langle <++>\rangle<++>') | ||||
| 	elseif char == 'q' | ||||
| 		return "\<BS>".IMAP_PutTextWithMovement('\lefteqn{<++>}<++>') | ||||
| 	else | ||||
| 		return IMAP_PutTextWithMovement('\label{<++>}<++>') | ||||
| 	endif | ||||
| endfunction " }}} | ||||
| " Tex_PutLeftRight: maps <M-l> in normal mode {{{ | ||||
| " Description: | ||||
| " Put \left...\right in front of the matched brackets. | ||||
| function! Tex_PutLeftRight() | ||||
| 	let previous = getline(line("."))[col(".") - 2] | ||||
| 	let char = getline(line("."))[col(".") - 1] | ||||
| 	if previous == '\' | ||||
| 		if char == '{' | ||||
| 			exe "normal ileft\\\<Esc>l%iright\\\<Esc>l%" | ||||
| 		elseif char == '}' | ||||
| 			exe "normal iright\\\<Esc>l%ileft\\\<Esc>l%" | ||||
| 		endif | ||||
| 	elseif char =~ '\[\|(' | ||||
| 		exe "normal i\\left\<Esc>l%i\\right\<Esc>l%" | ||||
| 	elseif char =~ '\]\|)' | ||||
| 		exe "normal i\\right\<Esc>l%i\\left\<Esc>l%" | ||||
| 	endif | ||||
| endfunction " }}} | ||||
| 
 | ||||
| " Provide <plug>'d mapping for easy user customization. {{{ | ||||
| inoremap <silent> <Plug>Tex_MathBF      <C-r>=Tex_MathBF()<CR> | ||||
| inoremap <silent> <Plug>Tex_MathCal     <C-r>=Tex_MathCal()<CR> | ||||
| inoremap <silent> <Plug>Tex_LeftRight   <C-r>=Tex_LeftRight()<CR> | ||||
| vnoremap <silent> <Plug>Tex_MathBF		<C-C>`>a}<Esc>`<i\mathbf{<Esc> | ||||
| vnoremap <silent> <Plug>Tex_MathCal		<C-C>`>a}<Esc>`<i\mathcal{<Esc> | ||||
| nnoremap <silent> <Plug>Tex_LeftRight	:call Tex_PutLeftRight()<CR> | ||||
| 
 | ||||
| " }}} | ||||
| " Tex_SetBracketingMaps: create mappings for the current buffer {{{ | ||||
| function! <SID>Tex_SetBracketingMaps() | ||||
| 
 | ||||
| 	call Tex_MakeMap('<M-b>', '<Plug>Tex_MathBF', 'i', '<buffer> <silent>') | ||||
| 	call Tex_MakeMap('<M-c>', '<Plug>Tex_MathCal', 'i', '<buffer> <silent>') | ||||
| 	call Tex_MakeMap('<M-l>', '<Plug>Tex_LeftRight', 'i', '<buffer> <silent>') | ||||
| 	call Tex_MakeMap('<M-b>', '<Plug>Tex_MathBF', 'v', '<buffer> <silent>') | ||||
| 	call Tex_MakeMap('<M-c>', '<Plug>Tex_MathCal', 'v', '<buffer> <silent>') | ||||
| 	call Tex_MakeMap('<M-l>', '<Plug>Tex_LeftRight', 'n', '<buffer> <silent>') | ||||
| 
 | ||||
| endfunction | ||||
| " }}} | ||||
| 
 | ||||
| augroup LatexSuite | ||||
| 	au LatexSuite User LatexSuiteFileType  | ||||
| 		\ call Tex_Debug('brackets.vim: Catching LatexSuiteFileType event', 'brak') |  | ||||
| 		\ call <SID>Tex_SetBracketingMaps() | ||||
| augroup END | ||||
| 
 | ||||
| " vim:fdm=marker | ||||
							
								
								
									
										874
									
								
								vim/vim-latex/ftplugin/latex-suite/compiler.vim
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										874
									
								
								vim/vim-latex/ftplugin/latex-suite/compiler.vim
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,874 @@ | |||
| "============================================================================= | ||||
| "        File: compiler.vim | ||||
| "      Author: Srinath Avadhanula | ||||
| "     Created: Tue Apr 23 05:00 PM 2002 PST | ||||
| " | ||||
| "  Description: functions for compiling/viewing/searching latex documents | ||||
| "============================================================================= | ||||
| 
 | ||||
| " Tex_SetTeXCompilerTarget: sets the 'target' for the next call to Tex_RunLaTeX() {{{ | ||||
| function! Tex_SetTeXCompilerTarget(type, target) | ||||
| 	call Tex_Debug("+Tex_SetTeXCompilerTarget: setting target to [".a:target."] for ".a:type."r", "comp") | ||||
| 
 | ||||
| 	if a:target == '' | ||||
| 		let target = Tex_GetVarValue('Tex_DefaultTargetFormat') | ||||
| 		let target = input('Enter the target format for '.a:type.'r: ', target) | ||||
| 	else | ||||
| 		let target = a:target | ||||
| 	endif | ||||
| 	if target == '' | ||||
| 		let target = 'dvi' | ||||
| 	endif | ||||
| 
 | ||||
| 	let targetRule = Tex_GetVarValue('Tex_'.a:type.'Rule_'.target) | ||||
| 
 | ||||
| 	if targetRule != '' | ||||
| 		if a:type == 'Compile' | ||||
| 			let &l:makeprg = escape(targetRule, Tex_GetVarValue('Tex_EscapeChars')) | ||||
| 		elseif a:type == 'View' | ||||
| 			let s:viewer = targetRule | ||||
| 		endif | ||||
| 		let s:target = target | ||||
| 
 | ||||
| 	elseif Tex_GetVarValue('Tex_'.a:type.'RuleComplete_'.target) != '' | ||||
| 		let s:target = target | ||||
| 
 | ||||
| 	elseif a:type == 'View' && has('macunix') | ||||
| 		" On the mac, we can have empty view rules, so do not complain when | ||||
| 		" both Tex_ViewRule_target and Tex_ViewRuleComplete_target are | ||||
| 		" empty. On other platforms, we will complain... see below. | ||||
| 		let s:target = target | ||||
| 
 | ||||
| 	else | ||||
| 		let s:origdir = fnameescape(getcwd()) | ||||
| 		exe 'cd '.fnameescape(expand('%:p:h')) | ||||
| 		if !Tex_GetVarValue('Tex_UseMakefile') || (glob('makefile*') == '' && glob('Makefile*') == '') | ||||
| 			if has('gui_running') | ||||
| 				call confirm( | ||||
| 					\'No '.a:type.' rule defined for target '.target."\n". | ||||
| 					\'Please specify a rule in $VIMRUNTIME/ftplugin/tex/texrc'."\n". | ||||
| 					\'     :help Tex_'.a:type.'Rule_format'."\n". | ||||
| 					\'for more information', | ||||
| 					\"&ok", 1, 'Warning') | ||||
| 			else | ||||
| 				call input( | ||||
| 					\'No '.a:type.' rule defined for target '.target."\n". | ||||
| 					\'Please specify a rule in $VIMRUNTIME/ftplugin/tex/texrc'."\n". | ||||
| 					\'     :help Tex_'.a:type.'Rule_format'."\n". | ||||
| 					\'for more information' | ||||
| 					\) | ||||
| 			endif | ||||
| 		else | ||||
| 			echomsg 'Assuming target is for makefile' | ||||
| 			let s:target = target | ||||
| 		endif | ||||
| 		exe 'cd '.s:origdir | ||||
| 	endif | ||||
| endfunction | ||||
| 
 | ||||
| function! SetTeXTarget(...) | ||||
| 	if a:0 < 1 | ||||
| 		let target = Tex_GetVarValue('Tex_DefaultTargetFormat') | ||||
| 		let target = input('Enter the target format for compiler and viewer: ', target) | ||||
| 	else | ||||
| 		let target = a:1 | ||||
| 	endif | ||||
| 	if target == '' | ||||
| 		let target = 'dvi' | ||||
| 	endif | ||||
| 
 | ||||
| 	call Tex_SetTeXCompilerTarget('Compile', target) | ||||
| 	call Tex_SetTeXCompilerTarget('View', target) | ||||
| endfunction | ||||
| 
 | ||||
| com! -nargs=1 TCTarget :call Tex_SetTeXCompilerTarget('Compile', <f-args>) | ||||
| com! -nargs=1 TVTarget :call Tex_SetTeXCompilerTarget('View', <f-args>) | ||||
| com! -nargs=? TTarget :call SetTeXTarget(<f-args>) | ||||
| 
 | ||||
| " }}} | ||||
| " Tex_CompileLatex: compiles the present file. {{{ | ||||
| " Description: | ||||
| function! Tex_CompileLatex() | ||||
| 	if &ft != 'tex' | ||||
| 		echo "calling Tex_RunLaTeX from a non-tex file" | ||||
| 		return | ||||
| 	end | ||||
| 
 | ||||
| 	" close any preview windows left open. | ||||
| 	pclose! | ||||
| 
 | ||||
| 	let s:origdir = fnameescape(getcwd()) | ||||
| 
 | ||||
| 	" Find the main file corresponding to this file. Always cd to the | ||||
| 	" directory containing the file to avoid problems with the directory | ||||
| 	" containing spaces. | ||||
| 	" Latex on linux seems to be unable to handle file names with spaces at | ||||
| 	" all! Therefore for the moment, do not attempt to handle spaces in the | ||||
| 	" file name. | ||||
| 	if exists('b:fragmentFile') | ||||
| 		let mainfname = expand('%:p:t') | ||||
| 		call Tex_CD(expand('%:p:h')) | ||||
| 	else | ||||
| 		let mainfname = Tex_GetMainFileName(':p:t') | ||||
| 		call Tex_CD(Tex_GetMainFileName(':p:h')) | ||||
| 	end | ||||
| 
 | ||||
| 	call Tex_Debug('Tex_CompileLatex: getting mainfname = ['.mainfname.'] from Tex_GetMainFileName', 'comp') | ||||
| 
 | ||||
| 	" if a makefile exists and the user wants to use it, then use that | ||||
| 	" irrespective of whether *.latexmain exists or not. mainfname is still | ||||
| 	" extracted from *.latexmain (if possible) log file name depends on the | ||||
| 	" main file which will be compiled. | ||||
| 	if Tex_GetVarValue('Tex_UseMakefile') && (glob('makefile') != '' || glob('Makefile') != '') | ||||
| 		let _makeprg = &l:makeprg | ||||
| 		call Tex_Debug("Tex_CompileLatex: using the makefile in the current directory", "comp") | ||||
| 		let &l:makeprg = 'make $*' | ||||
| 		if exists('s:target') | ||||
| 			call Tex_Debug('Tex_CompileLatex: execing [make! '.s:target.']', 'comp') | ||||
| 			exec 'make! '.s:target | ||||
| 		else | ||||
| 			call Tex_Debug('Tex_CompileLatex: execing [make!]', 'comp') | ||||
| 			exec 'make!' | ||||
| 		endif | ||||
| 		let &l:makeprg = _makeprg | ||||
| 	else | ||||
| 		" If &makeprg has something like "$*.ps", it means that it wants the | ||||
| 		" file-name without the extension... Therefore remove it. | ||||
| 		if &makeprg =~ '\$\*\.\w\+' | ||||
| 			let mainfname = fnamemodify(mainfname, ':r') | ||||
| 		endif | ||||
| 		call Tex_Debug('Tex_CompileLatex: execing [make! '.mainfname.']', 'comp') | ||||
| 		exec 'make! '.mainfname | ||||
| 	endif | ||||
| 	redraw! | ||||
| 
 | ||||
| 	exe 'cd '.s:origdir | ||||
| endfunction " }}} | ||||
| " Tex_RunLaTeX: compilation function {{{ | ||||
| " this function runs the latex command on the currently open file. often times | ||||
| " the file being currently edited is only a fragment being \input'ed into some | ||||
| " master tex file. in this case, make a file called mainfile.latexmain in the | ||||
| " directory containig the file. in other words, if the current file is | ||||
| " ~/thesis/chapter.tex | ||||
| " so that doing "latex chapter.tex" doesnt make sense, then make a file called | ||||
| " main.tex.latexmain | ||||
| " in the ~/thesis directory. this will then run "latex main.tex" when | ||||
| " Tex_RunLaTeX() is called. | ||||
| function! Tex_RunLaTeX() | ||||
| 	call Tex_Debug('+Tex_RunLaTeX, b:fragmentFile = '.exists('b:fragmentFile'), 'comp') | ||||
| 
 | ||||
| 	let dir = expand("%:p:h").'/' | ||||
| 	let s:origdir = fnameescape(getcwd()) | ||||
| 	call Tex_CD(expand("%:p:h")) | ||||
| 
 | ||||
| 	let initTarget = s:target | ||||
| 
 | ||||
| 	" first get the dependency chain of this format. | ||||
| 	call Tex_Debug("Tex_RunLaTeX: compiling to target [".s:target."]", "comp") | ||||
| 
 | ||||
| 	if Tex_GetVarValue('Tex_FormatDependency_'.s:target) != '' | ||||
| 		let dependency = Tex_GetVarValue('Tex_FormatDependency_'.s:target) | ||||
| 		if dependency !~ ','.s:target.'$' | ||||
| 			let dependency = dependency.','.s:target | ||||
| 		endif | ||||
| 	else | ||||
| 		let dependency = s:target | ||||
| 	endif | ||||
| 
 | ||||
| 	call Tex_Debug('Tex_RunLaTeX: getting dependency chain = ['.dependency.']', 'comp') | ||||
| 
 | ||||
| 	" now compile to the final target format via each dependency. | ||||
| 	let i = 1 | ||||
| 	while Tex_Strntok(dependency, ',', i) != '' | ||||
| 		let s:target = Tex_Strntok(dependency, ',', i) | ||||
| 
 | ||||
| 		call Tex_SetTeXCompilerTarget('Compile', s:target) | ||||
| 		call Tex_Debug('Tex_RunLaTeX: setting target to '.s:target, 'comp') | ||||
| 
 | ||||
| 		if Tex_GetVarValue('Tex_MultipleCompileFormats') =~ '\<'.s:target.'\>' | ||||
| 			call Tex_Debug("Tex_RunLaTeX: compiling file multiple times via Tex_CompileMultipleTimes", "comp") | ||||
| 			call Tex_CompileMultipleTimes() | ||||
| 		else | ||||
| 			call Tex_Debug("Tex_RunLaTeX: compiling file once via Tex_CompileLatex", "comp") | ||||
| 			call Tex_CompileLatex() | ||||
| 		endif | ||||
| 
 | ||||
| 		let errlist = Tex_GetErrorList() | ||||
| 		call Tex_Debug("Tex_RunLaTeX: errlist = [".errlist."]", "comp") | ||||
| 
 | ||||
| 		" If there are any errors, then break from the rest of the steps | ||||
| 		if errlist =~  '\v(error|warning)' | ||||
| 			call Tex_Debug('Tex_RunLaTeX: There were errors in compiling, breaking chain...', 'comp') | ||||
| 			break | ||||
| 		endif | ||||
| 
 | ||||
| 		let i = i + 1 | ||||
| 	endwhile | ||||
| 
 | ||||
| 	let s:target = initTarget | ||||
| 	let s:origwinnum = winnr() | ||||
| 	call Tex_SetupErrorWindow() | ||||
| 
 | ||||
| 	exe 'cd '.s:origdir | ||||
| 	call Tex_Debug("-Tex_RunLaTeX", "comp") | ||||
| endfunction | ||||
| 
 | ||||
| " }}} | ||||
| " Tex_ViewLaTeX: opens viewer {{{ | ||||
| " Description: opens the DVI viewer for the file being currently edited. | ||||
| " Again, if the current file is a \input in a master file, see text above | ||||
| " Tex_RunLaTeX() to see how to set this information. | ||||
| function! Tex_ViewLaTeX() | ||||
| 	if &ft != 'tex' | ||||
| 		echo "calling Tex_ViewLaTeX from a non-tex file" | ||||
| 		return | ||||
| 	end | ||||
| 
 | ||||
| 	let s:origdir = fnameescape(getcwd()) | ||||
| 
 | ||||
| 	" If b:fragmentFile is set, it means this file was compiled as a fragment | ||||
| 	" using Tex_PartCompile, which means that we want to ignore any | ||||
| 	" *.latexmain or makefile's. | ||||
| 	if !exists('b:fragmentFile') | ||||
| 		" cd to the location of the file to avoid having to deal with spaces | ||||
| 		" in the directory name. | ||||
| 		let mainfname = Tex_GetMainFileName(':p:t:r') | ||||
| 		call Tex_CD(Tex_GetMainFileName(':p:h')) | ||||
| 	else | ||||
| 		let mainfname = expand("%:p:t:r") | ||||
| 		call Tex_CD(expand("%:p:h")) | ||||
| 	endif | ||||
| 
 | ||||
| 	if Tex_GetVarValue('Tex_ViewRuleComplete_'.s:target) != '' | ||||
| 
 | ||||
| 		let execString = Tex_GetVarValue('Tex_ViewRuleComplete_'.s:target) | ||||
| 		let execString = substitute(execString, '{v:servername}', v:servername, 'g') | ||||
| 
 | ||||
| 	elseif has('win32') | ||||
| 		" unfortunately, yap does not allow the specification of an external | ||||
| 		" editor from the command line. that would have really helped ensure | ||||
| 		" that this particular vim and yap are connected. | ||||
| 		let execString = 'start '.s:viewer.' "$*.'.s:target.'"' | ||||
| 
 | ||||
| 	elseif (has('macunix') && Tex_GetVarValue('Tex_TreatMacViewerAsUNIX') != 1) | ||||
| 
 | ||||
| 		if strlen(s:viewer) | ||||
| 			let appOpt = '-a ' | ||||
| 		else | ||||
| 			let appOpt = '' | ||||
| 		endif | ||||
| 		let execString = 'open '.appOpt.s:viewer.' $*.'.s:target | ||||
| 
 | ||||
| 	else | ||||
| 		" taken from Dimitri Antoniou's tip on vim.sf.net (tip #225). | ||||
| 		" slight change to actually use the current servername instead of | ||||
| 		" hardcoding it as xdvi. | ||||
| 		" Using an option for specifying the editor in the command line | ||||
| 		" because that seems to not work on older bash'es. | ||||
| 		if s:target == 'dvi' | ||||
| 
 | ||||
| 			if Tex_GetVarValue('Tex_UseEditorSettingInDVIViewer') == 1 && | ||||
| 						\ v:servername != '' && | ||||
| 						\ s:viewer =~ '^ *xdvik\?\( \|$\)' | ||||
| 
 | ||||
| 				let execString = s:viewer.' -editor "gvim --servername '.v:servername. | ||||
| 							\ ' --remote-silent +\%l \%f" $*.dvi' | ||||
| 
 | ||||
| 			elseif Tex_GetVarValue('Tex_UseEditorSettingInDVIViewer') == 1 && | ||||
| 						\ s:viewer =~ '^ *kdvi\( \|$\)' | ||||
| 
 | ||||
| 				let execString = s:viewer.' --unique $*.dvi' | ||||
| 
 | ||||
| 			else | ||||
| 
 | ||||
| 				let execString = s:viewer.' $*.dvi' | ||||
| 
 | ||||
| 			endif | ||||
| 
 | ||||
| 		else | ||||
| 
 | ||||
| 			let execString = s:viewer.' $*.'.s:target | ||||
| 
 | ||||
| 		endif | ||||
| 
 | ||||
| 		if( Tex_GetVarValue('Tex_ExecuteUNIXViewerInForeground') != 1 ) | ||||
| 			let execString = execString.' &' | ||||
| 		endif | ||||
| 
 | ||||
| 	end | ||||
| 
 | ||||
| 	let execString = substitute(execString, '\V$*', mainfname, 'g') | ||||
| 	call Tex_Debug("Tex_ViewLaTeX: execString = ".execString, "comp") | ||||
| 
 | ||||
| 	exec 'silent! !'.execString | ||||
| 
 | ||||
| 	if !has('gui_running') | ||||
| 		redraw! | ||||
| 	endif | ||||
| 
 | ||||
| 	exe 'cd '.s:origdir | ||||
| endfunction | ||||
| 
 | ||||
| " }}} | ||||
| " Tex_ForwardSearchLaTeX: searches for current location in dvi file. {{{ | ||||
| " Description: if the DVI viewer is compatible, then take the viewer to that | ||||
| "              position in the dvi file. see docs for Tex_RunLaTeX() to set a | ||||
| "              master file if this is an \input'ed file. | ||||
| " Tip: With YAP on Windows, it is possible to do forward and inverse searches | ||||
| "      on DVI files. to do forward search, you'll have to compile the file | ||||
| "      with the --src-specials option. then set the following as the command | ||||
| "      line in the 'view/options/inverse search' dialog box: | ||||
| "           gvim --servername LATEX --remote-silent +%l "%f" | ||||
| "      For inverse search, if you are reading this, then just pressing \ls | ||||
| "      will work. | ||||
| function! Tex_ForwardSearchLaTeX() | ||||
| 	if &ft != 'tex' | ||||
| 		echo "calling Tex_ForwardSeachLaTeX from a non-tex file" | ||||
| 		return | ||||
| 	end | ||||
| 
 | ||||
| 	if Tex_GetVarValue('Tex_ViewRule_'.s:target) == '' | ||||
| 		return | ||||
| 	endif | ||||
| 	let viewer = Tex_GetVarValue('Tex_ViewRule_'.s:target) | ||||
| 
 | ||||
| 	let s:origdir = fnameescape(getcwd()) | ||||
| 
 | ||||
| 	let mainfname = Tex_GetMainFileName(':t') | ||||
| 	let mainfnameRoot = fnamemodify(Tex_GetMainFileName(), ':t:r') | ||||
| 	let mainfnameFull = Tex_GetMainFileName(':p:r') | ||||
| 	" cd to the location of the file to avoid problems with directory name | ||||
| 	" containing spaces. | ||||
| 	call Tex_CD(Tex_GetMainFileName(':p:h')) | ||||
| 
 | ||||
| 	" inverse search tips taken from Dimitri Antoniou's tip and Benji Fisher's | ||||
| 	" tips on vim.sf.net (vim.sf.net tip #225) | ||||
| 	if (has('win32') && (viewer =~? '^ *yap\( \|$\)')) | ||||
| 
 | ||||
| 		let execString = 'silent! !start '. viewer.' -s '.line('.').expand('%').' '.mainfnameRoot | ||||
| 
 | ||||
| 
 | ||||
| 	elseif (has('macunix') && (viewer =~ '^ *\(Skim\|PDFView\|TeXniscope\)\( \|$\)')) | ||||
| 		" We're on a Mac using a traditional Mac viewer | ||||
| 
 | ||||
| 		if viewer =~ '^ *Skim' | ||||
| 
 | ||||
| 				let execString = 'silent! !/Applications/Skim.app/Contents/SharedSupport/displayline '. | ||||
| 					\ line('.').' "'.mainfnameFull.'.'.s:target.'" "'.expand("%:p").'"' | ||||
| 
 | ||||
| 		elseif viewer =~ '^ *PDFView' | ||||
| 
 | ||||
| 				let execString = 'silent! !/Applications/PDFView.app/Contents/MacOS/gotoline.sh '. | ||||
| 					\ line('.').' "'.mainfnameFull.'.'.s:target.'" "'.expand("%:p").'"' | ||||
| 
 | ||||
| 		elseif viewer =~ '^ *TeXniscope' | ||||
| 
 | ||||
| 				let execString = 'silent! !/Applications/TeXniscope.app/Contents/Resources/forward-search.sh '. | ||||
| 					\ line('.').' "'.expand("%:p").'" "'.mainfnameFull.'.'.s:target.'"' | ||||
| 
 | ||||
| 		endif | ||||
| 
 | ||||
| 	else | ||||
| 		" We're either UNIX or Mac and using a UNIX-type viewer | ||||
| 
 | ||||
| 		" Check for the special DVI viewers first | ||||
| 		if viewer =~ '^ *\(xdvi\|xdvik\|kdvi\|okular\)\( \|$\)' | ||||
| 
 | ||||
| 			if Tex_GetVarValue('Tex_UseEditorSettingInDVIViewer') == 1 && | ||||
| 						\ exists('v:servername') && | ||||
| 						\ viewer =~ '^ *xdvik\?\( \|$\)' | ||||
| 
 | ||||
| 				let execString = 'silent! !'.viewer.' -name xdvi -sourceposition "'.line('.').' '.expand("%").'"'. | ||||
| 							\ ' -editor "gvim --servername '.v:servername.' --remote-silent +\%l \%f" '. | ||||
| 							\ mainfnameRoot.'.dvi' | ||||
| 
 | ||||
| 			elseif viewer =~ '^ *kdvi' | ||||
| 
 | ||||
| 				let execString = 'silent! !'.viewer.' --unique file:'.mainfnameRoot.'.dvi\#src:'.line('.').expand("%") | ||||
| 
 | ||||
| 			elseif viewer =~ '^ *xdvik\?\( \|$\)' | ||||
| 
 | ||||
| 				let execString = 'silent! !'.viewer.' -name xdvi -sourceposition "'.line('.').' '.expand("%").'" '.mainfnameRoot.'.dvi' | ||||
| 
 | ||||
| 			elseif viewer =~ '^ *okular' | ||||
| 
 | ||||
| 				let execString = 'silent! !'.viewer.' --unique '.mainfnameRoot.'.'.s:target.'\#src:'.line('.').expand("%:p") | ||||
| 
 | ||||
| 			endif | ||||
| 
 | ||||
| 		else | ||||
| 			" We must be using a generic UNIX viewer | ||||
| 			" syntax is: viewer TARGET_FILE LINE_NUMBER SOURCE_FILE | ||||
| 
 | ||||
| 			let execString = 'silent! !'.viewer.' "'.mainfnameRoot.'.'.s:target.'" '.line('.').' "'.expand('%').'"' | ||||
| 
 | ||||
| 		endif | ||||
| 
 | ||||
| 		" See if we should add &. On Mac (at least in MacVim), it seems | ||||
| 		" like this should NOT be added... | ||||
| 		if( Tex_GetVarValue('Tex_ExecuteUNIXViewerInForeground') != 1 ) | ||||
| 			let execString = execString.' &' | ||||
| 		endif | ||||
| 
 | ||||
| 	endif | ||||
| 
 | ||||
| 	call Tex_Debug("Tex_ForwardSearchLaTeX: execString = ".execString, "comp") | ||||
| 	execute execString | ||||
| 	if !has('gui_running') | ||||
| 		redraw! | ||||
| 	endif | ||||
| 
 | ||||
| 	exe 'cd '.s:origdir | ||||
| endfunction | ||||
| 
 | ||||
| " }}} | ||||
| 
 | ||||
| " ============================================================================== | ||||
| " Functions for compiling parts of a file. | ||||
| " ============================================================================== | ||||
| " Tex_PartCompile: compiles selected fragment {{{ | ||||
| " Description: creates a temporary file from the selected fragment of text | ||||
| "       prepending the preamble and \end{document} and then asks Tex_RunLaTeX() to | ||||
| "       compile it. | ||||
| function! Tex_PartCompile() range | ||||
| 	call Tex_Debug('+Tex_PartCompile', 'comp') | ||||
| 
 | ||||
| 	" Get a temporary file in the same directory as the file from which | ||||
| 	" fragment is being extracted. This is to enable the use of relative path | ||||
| 	" names in the fragment. | ||||
| 	let tmpfile = Tex_GetTempName(expand('%:p:h')) | ||||
| 
 | ||||
| 	" Remember all the temp files and for each temp file created, remember | ||||
| 	" where the temp file came from. | ||||
| 	let s:Tex_NumTempFiles = (exists('s:Tex_NumTempFiles') ? s:Tex_NumTempFiles + 1 : 1) | ||||
| 	let s:Tex_TempFiles = (exists('s:Tex_TempFiles') ? s:Tex_TempFiles : '') | ||||
| 		\ . tmpfile."\n" | ||||
| 	let s:Tex_TempFile_{s:Tex_NumTempFiles} = tmpfile | ||||
| 	" TODO: For a function Tex_RestoreFragment which restores a temp file to | ||||
| 	"       its original location. | ||||
| 	let s:Tex_TempFileOrig_{s:Tex_NumTempFiles} = expand('%:p') | ||||
| 	let s:Tex_TempFileRange_{s:Tex_NumTempFiles} = a:firstline.','.a:lastline | ||||
| 
 | ||||
| 	" Set up an autocmd to clean up the temp files when Vim exits. | ||||
| 	if Tex_GetVarValue('Tex_RemoveTempFiles') | ||||
| 		augroup RemoveTmpFiles | ||||
| 			au! | ||||
| 			au VimLeave * :call Tex_RemoveTempFiles() | ||||
| 		augroup END | ||||
| 	endif | ||||
| 
 | ||||
| 	" If mainfile exists open it in tiny window and extract preamble there, | ||||
| 	" otherwise do it from current file | ||||
| 	let mainfile = Tex_GetMainFileName(":p") | ||||
| 	exe 'bot 1 split '.escape(mainfile, ' ') | ||||
| 	exe '1,/\s*\\begin{document}/w '.tmpfile | ||||
| 	wincmd q | ||||
| 
 | ||||
| 	exe a:firstline.','.a:lastline."w! >> ".tmpfile | ||||
| 
 | ||||
| 	" edit the temporary file | ||||
| 	exec 'drop '.tmpfile | ||||
| 
 | ||||
| 	" append the \end{document} line. | ||||
| 	$ put ='\end{document}' | ||||
| 	w | ||||
| 
 | ||||
| 	" set this as a fragment file. | ||||
| 	let b:fragmentFile = 1 | ||||
| 
 | ||||
| 	silent! call Tex_RunLaTeX() | ||||
| endfunction " }}} | ||||
| " Tex_RemoveTempFiles: cleans up temporary files created during part compilation {{{ | ||||
| " Description: During part compilation, temporary files containing the | ||||
| "              visually selected text are created. These files need to be | ||||
| "              removed when Vim exits to avoid "file leakage". | ||||
| function! Tex_RemoveTempFiles() | ||||
| 	if !exists('s:Tex_NumTempFiles') || !Tex_GetVarValue('Tex_RemoveTempFiles') | ||||
| 		return | ||||
| 	endif | ||||
| 	let i = 1 | ||||
| 	while i <= s:Tex_NumTempFiles | ||||
| 		let tmpfile = s:Tex_TempFile_{i} | ||||
| 		" Remove the tmp file and all other associated files such as the | ||||
| 		" .log files etc. | ||||
| 		call Tex_DeleteFile(fnamemodify(tmpfile, ':p:r').'.*') | ||||
| 		let i = i + 1 | ||||
| 	endwhile | ||||
| endfunction " }}} | ||||
| 
 | ||||
| " ============================================================================== | ||||
| " Compiling a file multiple times to resolve references/citations etc. | ||||
| " ============================================================================== | ||||
| " Tex_CompileMultipleTimes: The main function {{{ | ||||
| " Description: compiles a file multiple times to get cross-references right. | ||||
| function! Tex_CompileMultipleTimes() | ||||
| 	" Just extract the root without any extension because we want to construct | ||||
| 	" the log file names etc from it. | ||||
| 	let s:origdir = fnameescape(getcwd()) | ||||
| 	let mainFileName_root = Tex_GetMainFileName(':p:t:r') | ||||
| 	call Tex_CD(Tex_GetMainFileName(':p:h')) | ||||
| 
 | ||||
| 	" First ignore undefined references and the | ||||
| 	" "rerun to get cross-references right" message from | ||||
| 	" the compiler output. | ||||
| 	let origlevel = Tex_GetVarValue('Tex_IgnoreLevel') | ||||
| 	let origpats = Tex_GetVarValue('Tex_IgnoredWarnings') | ||||
| 
 | ||||
| 	let g:Tex_IgnoredWarnings = g:Tex_IgnoredWarnings."\n" | ||||
| 		\ . 'Reference %.%# undefined'."\n" | ||||
| 		\ . 'Rerun to get cross-references right' | ||||
| 	TCLevel 1000 | ||||
| 
 | ||||
| 	let idxFileName = mainFileName_root.'.idx' | ||||
| 	let auxFileName = mainFileName_root.'.aux' | ||||
| 
 | ||||
| 	let runCount = 0 | ||||
| 	let needToRerun = 1 | ||||
| 	while needToRerun == 1 && runCount < 5 | ||||
| 		" assume we need to run only once. | ||||
| 		let needToRerun = 0 | ||||
| 
 | ||||
| 		let idxlinesBefore = Tex_CatFile(idxFileName) | ||||
| 		let auxlinesBefore = Tex_GetAuxFile(auxFileName) | ||||
| 
 | ||||
| 		" first run latex. | ||||
| 		echomsg "latex run number : ".(runCount+1) | ||||
| 		call Tex_Debug("Tex_CompileMultipleTimes: latex run number : ".(runCount+1), "comp") | ||||
| 		silent! call Tex_CompileLatex() | ||||
| 
 | ||||
| 		" If there are errors in any latex compilation step, immediately | ||||
| 		" return. For now, do not bother with warnings because those might go | ||||
| 		" away after compiling again or after bibtex is run etc. | ||||
| 		let errlist = Tex_GetErrorList() | ||||
| 		call Tex_Debug("Tex_CompileMultipleTimes: errors = [".errlist."]", "comp") | ||||
| 
 | ||||
| 		if errlist =~ 'error' | ||||
| 			let g:Tex_IgnoredWarnings = origpats | ||||
| 			exec 'TCLevel '.origlevel | ||||
| 
 | ||||
| 			return | ||||
| 		endif | ||||
| 
 | ||||
| 		let idxlinesAfter = Tex_CatFile(idxFileName) | ||||
| 
 | ||||
| 		" If .idx file changed, then run makeindex to generate the new .ind | ||||
| 		" file and remember to rerun latex. | ||||
| 		if runCount == 0 && glob(idxFileName) != '' && idxlinesBefore != idxlinesAfter | ||||
| 			echomsg "Running makeindex..." | ||||
| 			let temp_mp = &mp | let &mp = Tex_GetVarValue('Tex_MakeIndexFlavor') | ||||
| 			exec 'silent! make '.mainFileName_root | ||||
| 			let &mp = temp_mp | ||||
| 
 | ||||
| 			let needToRerun = 1 | ||||
| 		endif | ||||
| 
 | ||||
| 		" The first time we see if we need to run bibtex and if the .bbl file | ||||
| 		" changes, we will rerun latex. | ||||
| 		if runCount == 0 && Tex_IsPresentInFile('\\bibdata', mainFileName_root.'.aux') | ||||
| 			let bibFileName = mainFileName_root.'.bbl' | ||||
| 
 | ||||
| 			let biblinesBefore = Tex_CatFile(bibFileName) | ||||
| 
 | ||||
| 			echomsg "Running '".Tex_GetVarValue('Tex_BibtexFlavor')."' ..." | ||||
| 			let temp_mp = &mp | let &mp = Tex_GetVarValue('Tex_BibtexFlavor') | ||||
| 			exec 'silent! make '.mainFileName_root | ||||
| 			let &mp = temp_mp | ||||
| 
 | ||||
| 			let biblinesAfter = Tex_CatFile(bibFileName) | ||||
| 
 | ||||
| 			" If the .bbl file changed after running bibtex, we need to | ||||
| 			" latex again. | ||||
| 			if biblinesAfter != biblinesBefore | ||||
| 				echomsg 'Need to rerun because bibliography file changed...' | ||||
| 				call Tex_Debug('Tex_CompileMultipleTimes: Need to rerun because bibliography file changed...', 'comp') | ||||
| 				let needToRerun = 1 | ||||
| 			endif | ||||
| 		endif | ||||
| 
 | ||||
| 		" check if latex asks us to rerun | ||||
| 		let auxlinesAfter = Tex_GetAuxFile(auxFileName) | ||||
| 		if auxlinesAfter != auxlinesBefore | ||||
| 			echomsg "Need to rerun because the AUX file changed..." | ||||
| 			call Tex_Debug("Tex_CompileMultipleTimes: Need to rerun to get cross-references right...", 'comp') | ||||
| 			let needToRerun = 1 | ||||
| 		endif | ||||
| 
 | ||||
| 		let runCount = runCount + 1 | ||||
| 	endwhile | ||||
| 
 | ||||
| 	redraw! | ||||
| 	call Tex_Debug("Tex_CompileMultipleTimes: Ran latex ".runCount." time(s)", "comp") | ||||
| 	echomsg "Ran latex ".runCount." time(s)" | ||||
| 
 | ||||
| 	let g:Tex_IgnoredWarnings = origpats | ||||
| 	exec 'TCLevel '.origlevel | ||||
| 	" After all compiler calls are done, reparse the .log file for | ||||
| 	" errors/warnings to handle the situation where the clist might have been | ||||
| 	" emptied because of bibtex/makeindex being run as the last step. | ||||
| 	exec 'silent! cfile '.mainFileName_root.'.log' | ||||
| 
 | ||||
| 	exe 'cd '.s:origdir | ||||
| endfunction " }}} | ||||
| " Tex_GetAuxFile: get the contents of the AUX file {{{ | ||||
| " Description: get the contents of the AUX file recursively including any | ||||
| " @\input'ted AUX files. | ||||
| function! Tex_GetAuxFile(auxFile) | ||||
| 	if !filereadable(a:auxFile) | ||||
| 		return '' | ||||
| 	endif | ||||
| 
 | ||||
| 	let auxContents = Tex_CatFile(a:auxFile) | ||||
| 	let pattern = '@\input{\(.\{-}\)}' | ||||
| 
 | ||||
| 	let auxContents = substitute(auxContents, pattern, '\=Tex_GetAuxFile(submatch(1))', 'g') | ||||
| 
 | ||||
| 	return auxContents | ||||
| endfunction " }}} | ||||
| 
 | ||||
| " ============================================================================== | ||||
| " Helper functions for | ||||
| " . viewing the log file in preview mode. | ||||
| " . syncing the display between the quickfix window and preview window | ||||
| " . going to the correct line _and column_ number from from the quick fix | ||||
| "   window. | ||||
| " ============================================================================== | ||||
| " Tex_SetupErrorWindow: sets up the cwindow and preview of the .log file {{{ | ||||
| " Description: | ||||
| function! Tex_SetupErrorWindow() | ||||
| 	let mainfname = Tex_GetMainFileName() | ||||
| 
 | ||||
| 	let winnum = winnr() | ||||
| 
 | ||||
| 	" close the quickfix window before trying to open it again, otherwise | ||||
| 	" whether or not we end up in the quickfix window after the :cwindow | ||||
| 	" command is not fixed. | ||||
| 	cclose | ||||
| 	cwindow | ||||
| 	" create log file name from mainfname | ||||
| 	let mfnlog = fnamemodify(mainfname, ":t:r").'.log' | ||||
| 	call Tex_Debug('Tex_SetupErrorWindow: mfnlog = '.mfnlog, 'comp') | ||||
| 	" if we moved to a different window, then it means we had some errors. | ||||
| 	if winnum != winnr() | ||||
| 		if Tex_GetVarValue('Tex_ShowErrorContext') | ||||
| 			call Tex_UpdatePreviewWindow(mfnlog) | ||||
| 			exe 'nnoremap <buffer> <silent> j j:call Tex_UpdatePreviewWindow("'.mfnlog.'")<CR>' | ||||
| 			exe 'nnoremap <buffer> <silent> k k:call Tex_UpdatePreviewWindow("'.mfnlog.'")<CR>' | ||||
| 			exe 'nnoremap <buffer> <silent> <up> <up>:call Tex_UpdatePreviewWindow("'.mfnlog.'")<CR>' | ||||
| 			exe 'nnoremap <buffer> <silent> <down> <down>:call Tex_UpdatePreviewWindow("'.mfnlog.'")<CR>' | ||||
| 		endif | ||||
| 		exe 'nnoremap <buffer> <silent> <enter> :call Tex_GotoErrorLocation("'.mfnlog.'")<CR>' | ||||
| 
 | ||||
| 		setlocal nowrap | ||||
| 
 | ||||
| 		" resize the window to just fit in with the number of lines. | ||||
| 		exec ( line('$') < 4 ? line('$') : 4 ).' wincmd _' | ||||
|         if Tex_GetVarValue('Tex_GotoError') == 1 | ||||
| 	        call Tex_GotoErrorLocation(mfnlog) | ||||
|         else | ||||
| 			exec s:origwinnum.' wincmd w' | ||||
|         endif | ||||
| 	endif | ||||
| 
 | ||||
| endfunction " }}} | ||||
| " Tex_PositionPreviewWindow: positions the preview window correctly. {{{ | ||||
| " Description: | ||||
| "   The purpose of this function is to count the number of times an error | ||||
| "   occurs on the same line. or in other words, if the current line is | ||||
| "   something like |10 error|, then we want to count the number of | ||||
| "   lines in the quickfix window before this line which also contain lines | ||||
| "   like |10 error|. | ||||
| " | ||||
| function! Tex_PositionPreviewWindow(filename) | ||||
| 
 | ||||
| 	if getline('.') !~ '|\d\+ \(error\|warning\)|' | ||||
| 		if !search('|\d\+ \(error\|warning\)|') | ||||
| 			call Tex_Debug("not finding error pattern anywhere in quickfix window :".bufname(bufnr('%')), | ||||
| 						\ 'comp') | ||||
| 			pclose! | ||||
| 			return | ||||
| 		endif | ||||
| 	endif | ||||
| 
 | ||||
| 	" extract the error pattern (something like 'file.tex|10 error|') on the | ||||
| 	" current line. | ||||
| 	let errpat = matchstr(getline('.'), '^\f*|\d\+ \(error\|warning\)|\ze') | ||||
| 	let errfile = matchstr(getline('.'), '^\f*\ze|\d\+ \(error\|warning\)|') | ||||
| 	" extract the line number from the error pattern. | ||||
| 	let linenum = matchstr(getline('.'), '|\zs\d\+\ze \(error\|warning\)|') | ||||
| 
 | ||||
| 	" if we are on an error, then count the number of lines before this in the | ||||
| 	" quickfix window with an error on the same line. | ||||
| 	if errpat =~ 'error|$' | ||||
| 		" our location in the quick fix window. | ||||
| 		let errline = line('.') | ||||
| 
 | ||||
| 		" goto the beginning of the quickfix window and begin counting the lines | ||||
| 		" which show an error on the same line. | ||||
| 		0 | ||||
| 		let numrep = 0 | ||||
| 		while 1 | ||||
| 			" if we are on the same kind of error line, then means we have another | ||||
| 			" line containing the same error pattern. | ||||
| 			if getline('.') =~ errpat | ||||
| 				let numrep = numrep + 1 | ||||
| 				normal! 0 | ||||
| 			endif | ||||
| 			" if we have reached the original location in the quick fix window, | ||||
| 			" then break. | ||||
| 			if line('.') == errline | ||||
| 				break | ||||
| 			else | ||||
| 				" otherwise, search for the next line which contains the same | ||||
| 				" error pattern again. goto the end of the current line so we | ||||
| 				" dont count this line again. | ||||
| 				normal! $ | ||||
| 				call search(errpat, 'W') | ||||
| 			endif | ||||
| 		endwhile | ||||
| 	else | ||||
| 		let numrep = 1 | ||||
| 	endif | ||||
| 
 | ||||
| 	if getline('.') =~ '|\d\+ warning|' | ||||
| 		let searchpat = escape(matchstr(getline('.'), '|\d\+ warning|\s*\zs.*'), '\ ') | ||||
| 	else | ||||
| 		let searchpat = 'l\.'.linenum | ||||
| 	endif | ||||
| 
 | ||||
| 	" We first need to be in the scope of the correct file in the .log file. | ||||
| 	" This is important for example, when a.tex and b.tex both have errors on | ||||
| 	" line 9 of the file and we want to go to the error of b.tex. Merely | ||||
| 	" searching forward from the beginning of the log file for l.9 will always | ||||
| 	" land us on the error in a.tex. | ||||
| 	if errfile != '' | ||||
| 		exec 'silent! bot pedit +/(\\(\\f\\|\\[\\|\]\\|\\s\\)*'.errfile.'/ '.a:filename | ||||
| 	else | ||||
| 		exec 'bot pedit +0 '.a:filename | ||||
| 	endif | ||||
| 	" Goto the preview window | ||||
| 	" TODO: This is not robust enough. Check that a wincmd j actually takes | ||||
| 	" us to the preview window. | ||||
| 	wincmd j | ||||
| 	" now search forward from this position in the preview window for the | ||||
| 	" numrep^th error of the current line in the quickfix window. | ||||
| 	while numrep > 0 | ||||
| 		call search(searchpat, 'W') | ||||
| 		let numrep = numrep - 1 | ||||
| 	endwhile | ||||
| 	normal! z. | ||||
| 
 | ||||
| endfunction " }}} | ||||
| " Tex_UpdatePreviewWindow: updates the view of the log file {{{ | ||||
| " Description: | ||||
| "       This function should be called when focus is in a quickfix window. | ||||
| "       It opens the log file in a preview window and makes it display that | ||||
| "       part of the log file which corresponds to the error which the user is | ||||
| "       currently on in the quickfix window. Control returns to the quickfix | ||||
| "       window when the function returns. | ||||
| " | ||||
| function! Tex_UpdatePreviewWindow(filename) | ||||
| 	call Tex_PositionPreviewWindow(a:filename) | ||||
| 
 | ||||
| 	if &previewwindow | ||||
| 		6 wincmd _ | ||||
| 		wincmd p | ||||
| 	endif | ||||
| endfunction " }}} | ||||
| " Tex_GotoErrorLocation: goes to the correct location of error in the tex file {{{ | ||||
| " Description: | ||||
| "   This function should be called when focus is in a quickfix window. This | ||||
| "   function will first open the preview window of the log file (if it is not | ||||
| "   already open), position the display of the preview to coincide with the | ||||
| "   current error under the cursor and then take the user to the file in | ||||
| "   which this error has occured. | ||||
| " | ||||
| "   The position is both the correct line number and the column number. | ||||
| function! Tex_GotoErrorLocation(filename) | ||||
| 
 | ||||
| 	" first use vim's functionality to take us to the location of the error | ||||
| 	" accurate to the line (not column). This lets us go to the correct file | ||||
| 	" without applying any logic. | ||||
| 	exec "normal! \<enter>" | ||||
| 	" If the log file is not found, then going to the correct line number is | ||||
| 	" all we can do. | ||||
| 	if glob(a:filename) == '' | ||||
| 		return | ||||
| 	endif | ||||
| 
 | ||||
| 	let winnum = winnr() | ||||
| 	" then come back to the quickfix window | ||||
| 	wincmd w | ||||
| 
 | ||||
| 	" find out where in the file we had the error. | ||||
| 	let linenum = matchstr(getline('.'), '|\zs\d\+\ze \(warning\|error\)|') | ||||
| 	call Tex_PositionPreviewWindow(a:filename) | ||||
| 
 | ||||
| 	if getline('.') =~ 'l.\d\+' | ||||
| 
 | ||||
| 		let brokenline = matchstr(getline('.'), 'l.'.linenum.' \zs.*\ze') | ||||
| 		" If the line is of the form | ||||
| 		"   l.10 ...and then there was some error | ||||
| 		" it means (most probably) that only part of the erroneous line is | ||||
| 		" shown. In this case, finding the length of the broken line is not | ||||
| 		" correct.  Instead goto the beginning of the line and search forward | ||||
| 		" for the part which is displayed and then go to its end. | ||||
| 		if brokenline =~ '^\M...' | ||||
| 			let partline = matchstr(brokenline, '^\M...\m\zs.*') | ||||
| 			let normcmd = "0/\\V".escape(partline, "\\")."/e+1\<CR>" | ||||
| 		else | ||||
| 			let column = strlen(brokenline) + 1 | ||||
| 			let normcmd = column.'|' | ||||
| 		endif | ||||
| 
 | ||||
| 	elseif getline('.') =~ 'LaTeX Warning: \(Citation\|Reference\) `.*' | ||||
| 
 | ||||
| 		let ref = matchstr(getline('.'), "LaTeX Warning: \\(Citation\\|Reference\\) `\\zs[^']\\+\\ze'") | ||||
| 		let normcmd = '0/'.ref."\<CR>" | ||||
| 
 | ||||
| 	else | ||||
| 
 | ||||
| 		let normcmd = '0' | ||||
| 
 | ||||
| 	endif | ||||
| 
 | ||||
| 	" go back to the window where we came from. | ||||
| 	exec winnum.' wincmd w' | ||||
| 	exec 'silent! '.linenum.' | normal! '.normcmd | ||||
| 
 | ||||
| 	if !Tex_GetVarValue('Tex_ShowErrorContext') | ||||
| 		pclose! | ||||
| 	endif | ||||
| endfunction " }}} | ||||
| " Tex_SetCompilerMaps: sets maps for compiling/viewing/searching {{{ | ||||
| " Description: | ||||
| function! <SID>Tex_SetCompilerMaps() | ||||
| 	if exists('b:Tex_doneCompilerMaps') | ||||
| 		return | ||||
| 	endif | ||||
| 	let s:ml = '<Leader>' | ||||
| 
 | ||||
| 	nnoremap <buffer> <Plug>Tex_Compile :call Tex_RunLaTeX()<cr> | ||||
| 	vnoremap <buffer> <Plug>Tex_Compile :call Tex_PartCompile()<cr> | ||||
| 	nnoremap <buffer> <Plug>Tex_View :call Tex_ViewLaTeX()<cr> | ||||
| 	nnoremap <buffer> <Plug>Tex_ForwardSearch :call Tex_ForwardSearchLaTeX()<cr> | ||||
| 
 | ||||
| 	call Tex_MakeMap(s:ml."ll", "<Plug>Tex_Compile", 'n', '<buffer>') | ||||
| 	call Tex_MakeMap(s:ml."ll", "<Plug>Tex_Compile", 'v', '<buffer>') | ||||
| 	call Tex_MakeMap(s:ml."lv", "<Plug>Tex_View", 'n', '<buffer>') | ||||
| 	call Tex_MakeMap(s:ml."ls", "<Plug>Tex_ForwardSearch", 'n', '<buffer>') | ||||
| endfunction | ||||
| " }}} | ||||
| 
 | ||||
| augroup LatexSuite | ||||
| 	au LatexSuite User LatexSuiteFileType | ||||
| 		\ call Tex_Debug('compiler.vim: Catching LatexSuiteFileType event', 'comp') | | ||||
| 		\ call <SID>Tex_SetCompilerMaps() | ||||
| augroup END | ||||
| 
 | ||||
| command! -nargs=0 -range=% TPartCompile :<line1>, <line2> silent! call Tex_PartCompile() | ||||
| " Setting b:fragmentFile = 1 makes Tex_CompileLatex consider the present file | ||||
| " the _main_ file irrespective of the presence of a .latexmain file. | ||||
| command! -nargs=0 TCompileThis let b:fragmentFile = 1 | ||||
| command! -nargs=0 TCompileMainFile let b:fragmentFile = 0 | ||||
| 
 | ||||
| " vim:fdm=marker:ff=unix:noet:ts=4:sw=4 | ||||
							
								
								
									
										255
									
								
								vim/vim-latex/ftplugin/latex-suite/custommacros.vim
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										255
									
								
								vim/vim-latex/ftplugin/latex-suite/custommacros.vim
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,255 @@ | |||
| "============================================================================= | ||||
| " 	     File: custommacros.vim | ||||
| "      Author: Mikolaj Machowski | ||||
| " 	  Version: 1.0  | ||||
| "     Created: Tue Apr 23 05:00 PM 2002 PST | ||||
| "  | ||||
| "  Description: functions for processing custom macros in the | ||||
| "               latex-suite/macros directory | ||||
| "============================================================================= | ||||
| 
 | ||||
| let s:path = expand('<sfile>:p:h') | ||||
| 
 | ||||
| " Set path to macros dir dependent on OS {{{ | ||||
| if has("unix") || has("macunix") | ||||
| 	let s:macrodirpath = $HOME."/.vim/ftplugin/latex-suite/macros/" | ||||
| elseif has("win32") | ||||
| 	if exists("$HOME") | ||||
| 		let s:macrodirpath = $HOME."/vimfiles/ftplugin/latex-suite/macros/" | ||||
| 	else | ||||
| 		let s:macrodirpath = $VIM."/vimfiles/ftplugin/latex-suite/macros/" | ||||
| 	endif | ||||
| endif | ||||
| 
 | ||||
| " }}} | ||||
| " SetCustomMacrosMenu: sets up the menu for Macros {{{ | ||||
| function! <SID>SetCustomMacrosMenu() | ||||
| 	let flist = Tex_FindInRtp('', 'macros') | ||||
| 	exe 'amenu '.g:Tex_MacrosMenuLocation.'&New :call <SID>NewMacro("FFFromMMMenu")<CR>' | ||||
| 	exe 'amenu '.g:Tex_MacrosMenuLocation.'&Redraw :call RedrawMacro()<CR>' | ||||
| 
 | ||||
| 	let i = 1 | ||||
| 	while 1 | ||||
| 		let fname = Tex_Strntok(flist, ',', i) | ||||
| 		if fname == '' | ||||
| 			break | ||||
| 		endif | ||||
| 		exe "amenu ".g:Tex_MacrosMenuLocation."&Delete.&".i.":<tab>".fname." :call <SID>DeleteMacro('".fname."')<CR>" | ||||
| 		exe "amenu ".g:Tex_MacrosMenuLocation."&Edit.&".i.":<tab>".fname."   :call <SID>EditMacro('".fname."')<CR>" | ||||
| 		exe "imenu ".g:Tex_MacrosMenuLocation."&".i.":<tab>".fname." <C-r>=<SID>ReadMacro('".fname."')<CR>" | ||||
| 		exe "nmenu ".g:Tex_MacrosMenuLocation."&".i.":<tab>".fname." i<C-r>=<SID>ReadMacro('".fname."')<CR>" | ||||
| 		let i = i + 1 | ||||
| 	endwhile | ||||
| endfunction  | ||||
| 
 | ||||
| if g:Tex_Menus | ||||
| 	call <SID>SetCustomMacrosMenu() | ||||
| endif | ||||
| 
 | ||||
| " }}} | ||||
| " NewMacro: opens new file in macros directory {{{ | ||||
| function! <SID>NewMacro(...) | ||||
| 	" Allow for calling :TMacroNew without argument or from menu and prompt | ||||
| 	" for name. | ||||
| 	if a:0 > 0 | ||||
| 		let newmacroname = a:1 | ||||
| 	else | ||||
| 		let newmacroname = input("Name of new macro: ") | ||||
| 		if newmacroname == '' | ||||
| 			return | ||||
| 		endif | ||||
| 	endif | ||||
| 
 | ||||
| 	if newmacroname == "FFFromMMMenu" | ||||
| 		" Check if NewMacro was called from menu and prompt for insert macro | ||||
| 		" name | ||||
| 		let newmacroname = input("Name of new macro: ") | ||||
| 		if newmacroname == '' | ||||
| 			return | ||||
| 		endif | ||||
| 	elseif Tex_FindInRtp(newmacroname, 'macros') != '' | ||||
| 		" If macro with this name already exists, prompt for another name. | ||||
| 		exe "echomsg 'Macro ".newmacroname." already exists. Try another name.'" | ||||
| 		let newmacroname = input("Name of new macro: ") | ||||
| 		if newmacroname == '' | ||||
| 			return | ||||
| 		endif | ||||
| 	endif | ||||
| 	exec 'split '.Tex_EscapeSpaces(s:macrodirpath.newmacroname) | ||||
| 	setlocal filetype=tex | ||||
| endfunction | ||||
| 
 | ||||
| " }}} | ||||
| " RedrawMacro: refreshes macro menu {{{ | ||||
| function! RedrawMacro() | ||||
| 	aunmenu TeX-Suite.Macros | ||||
| 	call <SID>SetCustomMacrosMenu() | ||||
| endfunction | ||||
| 
 | ||||
| " }}} | ||||
| " ChooseMacro: choose a macro file {{{ | ||||
| " " Description:  | ||||
| function! s:ChooseMacro(ask) | ||||
| 	let filelist = Tex_FindInRtp('', 'macros') | ||||
| 	let filename = Tex_ChooseFromPrompt( | ||||
| 				\ a:ask."\n" .  | ||||
| 				\ Tex_CreatePrompt(filelist, 2, ',') . | ||||
| 				\ "\nEnter number or filename :", | ||||
| 				\ filelist, ',') | ||||
| endfunction  | ||||
| 
 | ||||
| " }}} | ||||
| " DeleteMacro: deletes macro file {{{ | ||||
| function! <SID>DeleteMacro(...) | ||||
| 	if a:0 > 0 | ||||
| 		let filename = a:1 | ||||
| 	else | ||||
| 		let filename = s:ChooseMacro('Choose a macro file for deletion :') | ||||
| 	endif | ||||
| 
 | ||||
| 	if !filereadable(s:macrodirpath.filename) | ||||
| 	" When file is not in local directory decline to remove it. | ||||
| 		call confirm('This file is not in your local directory: '.filename."\n". | ||||
| 					\ 'It will not be deleted.' , '&OK', 1) | ||||
| 
 | ||||
| 	else | ||||
| 		let ch = confirm('Really delete '.filename.' ?', "&Yes\n&No", 2) | ||||
| 		if ch == 1 | ||||
| 			call delete(s:macrodirpath.filename) | ||||
| 		endif | ||||
| 		call RedrawMacro() | ||||
| 	endif | ||||
| endfunction | ||||
| 
 | ||||
| " }}} | ||||
| " EditMacro: edits macro file {{{ | ||||
| function! <SID>EditMacro(...) | ||||
| 	if a:0 > 0 | ||||
| 		let filename = a:1 | ||||
| 	else | ||||
| 		let filename = s:ChooseMacro('Choose a macro file for insertion:') | ||||
| 	endif | ||||
| 
 | ||||
| 	if filereadable(s:macrodirpath.filename) | ||||
| 		" If file exists in local directory open it.  | ||||
| 		exec 'split '.Tex_EscapeSpaces(s:macrodirpath.filename) | ||||
| 	else | ||||
| 		" But if file doesn't exist in local dir it probably is in user | ||||
| 		" restricted area. Instead opening try to copy it to local dir. | ||||
| 		" Pity VimL doesn't have mkdir() function :) | ||||
| 		let ch = confirm("You are trying to edit file which is probably read-only.\n". | ||||
| 					\ "It will be copied to your local LaTeX-Suite macros directory\n". | ||||
| 					\ "and you will be operating on local copy with suffix -local.\n". | ||||
| 					\ "It will succeed only if ftplugin/latex-suite/macros dir exists.\n". | ||||
| 					\ "Do you agree?", "&Yes\n&No", 1) | ||||
| 		if ch == 1 | ||||
| 			" But there is possibility we already created local modification. | ||||
| 			" Check it and offer opening this file. | ||||
| 			if filereadable(s:macrodirpath.filename.'-local') | ||||
| 				let ch = confirm('Local version of '.filename." already exists.\n". | ||||
| 					\ 'Do you want to open it or overwrite with original version?', | ||||
| 					\ "&Open\nOver&write\n&Cancel", 1) | ||||
| 				if ch == 1 | ||||
| 					exec 'split '.Tex_EscapeSpaces(s:macrodirpath.filename.'-local') | ||||
| 				elseif ch == 2 | ||||
| 					new | ||||
| 					exe '0read '.Tex_FindInRtp(filename, 'macros') | ||||
| 					" This is possible macro was edited before, wipe it out. | ||||
| 					if bufexists(s:macrodirpath.filename.'-local') | ||||
| 						exe 'bwipe '.s:macrodirpath.filename.'-local' | ||||
| 					endif | ||||
| 					exe 'write! '.s:macrodirpath.filename.'-local' | ||||
| 				else | ||||
| 					return | ||||
| 				endif | ||||
| 			else | ||||
| 			" If file doesn't exist, open new file, read in system macro and | ||||
| 			" save it in local macro dir with suffix -local | ||||
| 				new | ||||
| 				exe '0read '.Tex_FindInRtp(filename, 'macros') | ||||
| 				exe 'write '.s:macrodirpath.filename.'-local' | ||||
| 			endif | ||||
| 		endif | ||||
| 		 | ||||
| 	endif | ||||
| 	setlocal filetype=tex | ||||
| endfunction | ||||
| 
 | ||||
| " }}} | ||||
| " ReadMacro: reads in a macro from a macro file.  {{{ | ||||
| "            allowing for placement via placeholders. | ||||
| function! <SID>ReadMacro(...) | ||||
| 
 | ||||
| 	if a:0 > 0 | ||||
| 		let filename = a:1 | ||||
| 	else | ||||
| 		let filelist = Tex_FindInRtp('', 'macros') | ||||
| 		let filename =  | ||||
| 					\ Tex_ChooseFromPrompt("Choose a macro file:\n" .  | ||||
| 					\ Tex_CreatePrompt(filelist, 2, ',') .  | ||||
| 					\ "\nEnter number or name of file :",  | ||||
| 					\ filelist, ',') | ||||
| 	endif | ||||
| 
 | ||||
| 	let fname = Tex_FindInRtp(filename, 'macros', ':p') | ||||
| 
 | ||||
| 	let markerString = '<---- Latex Suite End Macro ---->' | ||||
| 	let _a = @a | ||||
| 	silent! call append(line('.'), markerString) | ||||
| 	silent! exec "read ".fname | ||||
| 	silent! exec "normal! V/^".markerString."$/-1\<CR>\"ax" | ||||
| 	" This is kind of tricky: At this stage, we are one line after the one we | ||||
| 	" started from with the marker text on it. We need to | ||||
| 	" 1. remove the marker and the line. | ||||
| 	" 2. get focus to the previous line. | ||||
| 	" 3. not remove anything from the previous line. | ||||
| 	silent! exec "normal! $v0k$\"_x" | ||||
| 
 | ||||
| 	call Tex_CleanSearchHistory() | ||||
| 
 | ||||
| 	let @a = substitute(@a, '['."\n\r\t ".']*$', '', '') | ||||
| 	let textWithMovement = IMAP_PutTextWithMovement(@a) | ||||
| 	let @a = _a | ||||
| 
 | ||||
| 	return textWithMovement | ||||
| 
 | ||||
| endfunction | ||||
| 
 | ||||
| " }}} | ||||
| " commands for macros {{{ | ||||
| com! -nargs=? TMacroNew :call <SID>NewMacro(<f-args>) | ||||
| 
 | ||||
| " This macros had to have 2 versions: | ||||
| if v:version >= 602  | ||||
| 	com! -complete=custom,Tex_CompleteMacroName -nargs=? TMacro | ||||
| 				\ :let s:retVal = <SID>ReadMacro(<f-args>) <bar> normal! i<C-r>=s:retVal<CR> | ||||
| 	com! -complete=custom,Tex_CompleteMacroName -nargs=? TMacroEdit | ||||
| 				\ :call <SID>EditMacro(<f-args>) | ||||
| 	com! -complete=custom,Tex_CompleteMacroName -nargs=? TMacroDelete | ||||
| 				\ :call <SID>DeleteMacro(<f-args>) | ||||
| 
 | ||||
| 	" Tex_CompleteMacroName: for completing names in TMacro... commands {{{ | ||||
| 	"	Description: get list of macro names with Tex_FindInRtp(), remove full path | ||||
| 	"	and return list of names separated with newlines. | ||||
| 	" | ||||
| 	function! Tex_CompleteMacroName(A,P,L) | ||||
| 		" Get name of macros from all runtimepath directories | ||||
| 		let macronames = Tex_FindInRtp('', 'macros') | ||||
| 		" Separate names with \n not , | ||||
| 		let macronames = substitute(macronames,',','\n','g') | ||||
| 		return macronames | ||||
| 	endfunction | ||||
| 
 | ||||
| 	" }}} | ||||
| 
 | ||||
| else | ||||
| 	com! -nargs=? TMacro | ||||
| 		\	:let s:retVal = <SID>ReadMacro(<f-args>) <bar> normal! i<C-r>=s:retVal<CR> | ||||
| 	com! -nargs=? TMacroEdit   :call <SID>EditMacro(<f-args>) | ||||
| 	com! -nargs=? TMacroDelete :call <SID>DeleteMacro(<f-args>) | ||||
| 
 | ||||
| endif | ||||
| 
 | ||||
| " }}} | ||||
| 
 | ||||
| " vim:fdm=marker:ff=unix:noet:ts=4:sw=4 | ||||
							
								
								
									
										124
									
								
								vim/vim-latex/ftplugin/latex-suite/diacritics.vim
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										124
									
								
								vim/vim-latex/ftplugin/latex-suite/diacritics.vim
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,124 @@ | |||
| "============================================================================= | ||||
| " 	     File: diacritics.vim | ||||
| "      Author: Lubomir Host | ||||
| "     Created: Tue Apr 23 07:00 PM 2002 PST | ||||
| "  | ||||
| "  Description: shortcuts for all diacritics.  | ||||
| "============================================================================= | ||||
| 
 | ||||
| if !g:Tex_Diacritics | ||||
| 	finish | ||||
| endif | ||||
| 
 | ||||
| " \'{a} {{{ | ||||
| call IMAP ('=a', "\\\'{a}", 'tex') | ||||
| call IMAP ('=b', "\\'{b}", 'tex') | ||||
| call IMAP ('=c', "\\'{c}", 'tex') | ||||
| call IMAP ('=d', "\\'{d}", 'tex') | ||||
| call IMAP ('=e', "\\'{e}", 'tex') | ||||
| call IMAP ('=f', "\\'{f}", 'tex') | ||||
| call IMAP ('=g', "\\'{g}", 'tex') | ||||
| call IMAP ('=h', "\\'{h}", 'tex') | ||||
| call IMAP ('=i', "\\'{\i}", 'tex') | ||||
| call IMAP ('=j', "\\'{j}", 'tex') | ||||
| call IMAP ('=k', "\\'{k}", 'tex') | ||||
| call IMAP ('=l', "\\'{l}", 'tex') | ||||
| call IMAP ('=m', "\\'{m}", 'tex') | ||||
| call IMAP ('=n', "\\'{n}", 'tex') | ||||
| call IMAP ('=o', "\\'{o}", 'tex') | ||||
| call IMAP ('=p', "\\'{p}", 'tex') | ||||
| call IMAP ('=q', "\\'{q}", 'tex') | ||||
| call IMAP ('=r', "\\'{r}", 'tex') | ||||
| call IMAP ('=s', "\\'{s}", 'tex') | ||||
| call IMAP ('=t', "\\'{t}", 'tex') | ||||
| call IMAP ('=u', "\\'{u}", 'tex') | ||||
| call IMAP ('=v', "\\'{v}", 'tex') | ||||
| call IMAP ('=w', "\\'{w}", 'tex') | ||||
| call IMAP ('=x', "\\'{x}", 'tex') | ||||
| call IMAP ('=y', "\\'{y}", 'tex') | ||||
| call IMAP ('=z', "\\'{z}", 'tex') | ||||
| call IMAP ('=A', "\\'{A}", 'tex') | ||||
| call IMAP ('=B', "\\'{B}", 'tex') | ||||
| call IMAP ('=C', "\\'{C}", 'tex') | ||||
| call IMAP ('=D', "\\'{D}", 'tex') | ||||
| call IMAP ('=E', "\\'{E}", 'tex') | ||||
| call IMAP ('=F', "\\'{F}", 'tex') | ||||
| call IMAP ('=G', "\\'{G}", 'tex') | ||||
| call IMAP ('=H', "\\'{H}", 'tex') | ||||
| call IMAP ('=I', "\\'{\I}", 'tex') | ||||
| call IMAP ('=J', "\\'{J}", 'tex') | ||||
| call IMAP ('=K', "\\'{K}", 'tex') | ||||
| call IMAP ('=L', "\\'{L}", 'tex') | ||||
| call IMAP ('=M', "\\'{M}", 'tex') | ||||
| call IMAP ('=N', "\\'{N}", 'tex') | ||||
| call IMAP ('=O', "\\'{O}", 'tex') | ||||
| call IMAP ('=P', "\\'{P}", 'tex') | ||||
| call IMAP ('=Q', "\\'{Q}", 'tex') | ||||
| call IMAP ('=R', "\\'{R}", 'tex') | ||||
| call IMAP ('=S', "\\'{S}", 'tex') | ||||
| call IMAP ('=T', "\\'{T}", 'tex') | ||||
| call IMAP ('=U', "\\'{U}", 'tex') | ||||
| call IMAP ('=V', "\\'{V}", 'tex') | ||||
| call IMAP ('=W', "\\'{W}", 'tex') | ||||
| call IMAP ('=X', "\\'{X}", 'tex') | ||||
| call IMAP ('=Y', "\\'{Y}", 'tex') | ||||
| call IMAP ('=Z', "\\'{Z}", 'tex') | ||||
| " }}} | ||||
| " \v{a} {{{ | ||||
| call IMAP ('+a', "\\v{a}", 'tex') | ||||
| call IMAP ('+b', "\\v{b}", 'tex') | ||||
| call IMAP ('+c', "\\v{c}", 'tex') | ||||
| call IMAP ('+d', "\\v{d}", 'tex') | ||||
| call IMAP ('+e', "\\v{e}", 'tex') | ||||
| call IMAP ('+f', "\\v{f}", 'tex') | ||||
| call IMAP ('+g', "\\v{g}", 'tex') | ||||
| call IMAP ('+h', "\\v{h}", 'tex') | ||||
| call IMAP ('+i', "\\v{\i}", 'tex') | ||||
| call IMAP ('+j', "\\v{j}", 'tex') | ||||
| call IMAP ('+k', "\\v{k}", 'tex') | ||||
| call IMAP ('+l', "\\q l", 'tex') | ||||
| call IMAP ('+m', "\\v{m}", 'tex') | ||||
| call IMAP ('+n', "\\v{n}", 'tex') | ||||
| call IMAP ('+o', "\\v{o}", 'tex') | ||||
| call IMAP ('+p', "\\v{p}", 'tex') | ||||
| call IMAP ('+q', "\\v{q}", 'tex') | ||||
| call IMAP ('+r', "\\v{r}", 'tex') | ||||
| call IMAP ('+s', "\\v{s}", 'tex') | ||||
| call IMAP ('+t', "\\q t", 'tex') | ||||
| call IMAP ('+u', "\\v{u}", 'tex') | ||||
| call IMAP ('+v', "\\v{v}", 'tex') | ||||
| call IMAP ('+w', "\\v{w}", 'tex') | ||||
| call IMAP ('+x', "\\v{x}", 'tex') | ||||
| call IMAP ('+y', "\\v{y}", 'tex') | ||||
| call IMAP ('+z', "\\v{z}", 'tex') | ||||
| call IMAP ('+A', "\\v{A}", 'tex') | ||||
| call IMAP ('+B', "\\v{B}", 'tex') | ||||
| call IMAP ('+C', "\\v{C}", 'tex') | ||||
| call IMAP ('+D', "\\v{D}", 'tex') | ||||
| call IMAP ('+E', "\\v{E}", 'tex') | ||||
| call IMAP ('+F', "\\v{F}", 'tex') | ||||
| call IMAP ('+G', "\\v{G}", 'tex') | ||||
| call IMAP ('+H', "\\v{H}", 'tex') | ||||
| call IMAP ('+I', "\\v{\I}", 'tex') | ||||
| call IMAP ('+J', "\\v{J}", 'tex') | ||||
| call IMAP ('+K', "\\v{K}", 'tex') | ||||
| call IMAP ('+L', "\\v{L}", 'tex') | ||||
| call IMAP ('+M', "\\v{M}", 'tex') | ||||
| call IMAP ('+N', "\\v{N}", 'tex') | ||||
| call IMAP ('+O', "\\v{O}", 'tex') | ||||
| call IMAP ('+P', "\\v{P}", 'tex') | ||||
| call IMAP ('+Q', "\\v{Q}", 'tex') | ||||
| call IMAP ('+R', "\\v{R}", 'tex') | ||||
| call IMAP ('+S', "\\v{S}", 'tex') | ||||
| call IMAP ('+T', "\\v{T}", 'tex') | ||||
| call IMAP ('+U', "\\v{U}", 'tex') | ||||
| call IMAP ('+V', "\\v{V}", 'tex') | ||||
| call IMAP ('+W', "\\v{W}", 'tex') | ||||
| call IMAP ('+X', "\\v{X}", 'tex') | ||||
| call IMAP ('+Y', "\\v{Y}", 'tex') | ||||
| call IMAP ('+Z', "\\v{Z}", 'tex') | ||||
| " }}} | ||||
| call IMAP ('+}', "\\\"{a}", 'tex') | ||||
| call IMAP ('+:', "\\^{o}", 'tex') | ||||
| 
 | ||||
| " vim:fdm=marker:ff=unix:noet:ts=4:sw=4 | ||||
							
								
								
									
										289
									
								
								vim/vim-latex/ftplugin/latex-suite/dictionaries/SIunits
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										289
									
								
								vim/vim-latex/ftplugin/latex-suite/dictionaries/SIunits
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,289 @@ | |||
| addprefix | ||||
| addunit | ||||
| ampere | ||||
| amperemetresecond | ||||
| amperepermetre | ||||
| amperepermetrenp | ||||
| amperepersquaremetre | ||||
| amperepersquaremetrenp | ||||
| angstrom | ||||
| arad | ||||
| arcminute | ||||
| arcsecond | ||||
| are | ||||
| atomicmass | ||||
| atto | ||||
| attod | ||||
| barn | ||||
| bbar | ||||
| becquerel | ||||
| becquerelbase | ||||
| bel | ||||
| candela | ||||
| candelapersquaremetre | ||||
| candelapersquaremetrenp | ||||
| celsius | ||||
| Celsius | ||||
| celsiusbase | ||||
| centi | ||||
| centid | ||||
| coulomb | ||||
| coulombbase | ||||
| coulombpercubicmetre | ||||
| coulombpercubicmetrenp | ||||
| coulombperkilogram | ||||
| coulombperkilogramnp | ||||
| coulombpermol | ||||
| coulombpermolnp | ||||
| coulombpersquaremetre | ||||
| coulombpersquaremetrenp | ||||
| cubed | ||||
| cubic | ||||
| cubicmetre | ||||
| cubicmetreperkilogram | ||||
| cubicmetrepersecond | ||||
| curie | ||||
| dday | ||||
| deca | ||||
| decad | ||||
| deci | ||||
| decid | ||||
| degree | ||||
| degreecelsius | ||||
| deka | ||||
| dekad | ||||
| derbecquerel | ||||
| dercelsius | ||||
| dercoulomb | ||||
| derfarad | ||||
| dergray | ||||
| derhenry | ||||
| derhertz | ||||
| derjoule | ||||
| derkatal | ||||
| derlumen | ||||
| derlux | ||||
| dernewton | ||||
| derohm | ||||
| derpascal | ||||
| derradian | ||||
| dersiemens | ||||
| dersievert | ||||
| dersteradian | ||||
| dertesla | ||||
| dervolt | ||||
| derwatt | ||||
| derweber | ||||
| electronvolt | ||||
| exa | ||||
| exad | ||||
| farad | ||||
| faradbase | ||||
| faradpermetre | ||||
| faradpermetrenp | ||||
| femto | ||||
| femtod | ||||
| fourth | ||||
| gal | ||||
| giga | ||||
| gigad | ||||
| gram | ||||
| graybase | ||||
| graypersecond | ||||
| graypersecondnp | ||||
| hectare | ||||
| hecto | ||||
| hectod | ||||
| henry | ||||
| henrybase | ||||
| henrypermetre | ||||
| henrypermetrenp | ||||
| hertz | ||||
| hertzbase | ||||
| hour | ||||
| joule | ||||
| joulebase | ||||
| joulepercubicmetre | ||||
| joulepercubicmetrenp | ||||
| jouleperkelvin | ||||
| jouleperkelvinnp | ||||
| jouleperkilogram | ||||
| jouleperkilogramkelvin | ||||
| jouleperkilogramkelvinnp | ||||
| jouleperkilogramnp | ||||
| joulepermole | ||||
| joulepermolekelvin | ||||
| joulepermolekelvinnp | ||||
| joulepermolenp | ||||
| joulepersquaremetre | ||||
| joulepersquaremetrenp | ||||
| joulepertesla | ||||
| jouleperteslanp | ||||
| katal | ||||
| katalbase | ||||
| katalpercubicmetre | ||||
| katalpercubicmetrenp | ||||
| kelvin | ||||
| kilo | ||||
| kilod | ||||
| kilogram | ||||
| kilogrammetrepersecond | ||||
| kilogrammetrepersecondnp | ||||
| kilogrammetrepersquaresecond | ||||
| kilogrammetrepersquaresecondnp | ||||
| kilogrampercubicmetre | ||||
| kilogrampercubicmetrecoulomb | ||||
| kilogrampercubicmetrecoulombnp | ||||
| kilogrampercubicmetrenp | ||||
| kilogramperkilomole | ||||
| kilogramperkilomolenp | ||||
| kilogrampermetre | ||||
| kilogrampermetrenp | ||||
| kilogrampersecond | ||||
| kilogrampersecondcubicmetre | ||||
| kilogrampersecondcubicmetrenp | ||||
| kilogrampersecondnp | ||||
| kilogrampersquaremetre | ||||
| kilogrampersquaremetrenp | ||||
| kilogrampersquaremetresecond | ||||
| kilogrampersquaremetresecondnp | ||||
| kilogramsquaremetre | ||||
| kilogramsquaremetrenp | ||||
| kilogramsquaremetrepersecond | ||||
| kilogramsquaremetrepersecondnp | ||||
| kilowatthour | ||||
| liter | ||||
| litre | ||||
| lumen | ||||
| lumenbase | ||||
| lux | ||||
| luxbase | ||||
| mega | ||||
| megad | ||||
| meter | ||||
| metre | ||||
| metrepersecond | ||||
| metrepersecondnp | ||||
| metrepersquaresecond | ||||
| metrepersquaresecondnp | ||||
| micro | ||||
| microd | ||||
| milli | ||||
| millid | ||||
| minute | ||||
| mole | ||||
| molepercubicmetre | ||||
| molepercubicmetrenp | ||||
| nano | ||||
| nanod | ||||
| neper | ||||
| newton | ||||
| newtonbase | ||||
| newtonmetre | ||||
| newtonpercubicmetre | ||||
| newtonpercubicmetrenp | ||||
| newtonperkilogram | ||||
| newtonperkilogramnp | ||||
| newtonpermetre | ||||
| newtonpermetrenp | ||||
| newtonpersquaremetre | ||||
| newtonpersquaremetrenp | ||||
| NoAMS | ||||
| no@qsk | ||||
| ohm | ||||
| ohmbase | ||||
| ohmmetre | ||||
| one | ||||
| paminute | ||||
| pascal | ||||
| pascalbase | ||||
| pascalsecond | ||||
| pasecond | ||||
| per | ||||
| period@active | ||||
| persquaremetresecond | ||||
| persquaremetresecondnp | ||||
| peta | ||||
| petad | ||||
| pico | ||||
| picod | ||||
| power | ||||
| @qsk | ||||
| quantityskip | ||||
| rad | ||||
| radian | ||||
| radianbase | ||||
| radianpersecond | ||||
| radianpersecondnp | ||||
| radianpersquaresecond | ||||
| radianpersquaresecondnp | ||||
| reciprocal | ||||
| rem | ||||
| roentgen | ||||
| rp | ||||
| rpcubed | ||||
| rpcubic | ||||
| rpcubicmetreperkilogram | ||||
| rpcubicmetrepersecond | ||||
| rperminute | ||||
| rpersecond | ||||
| rpfourth | ||||
| rpsquare | ||||
| rpsquared | ||||
| rpsquaremetreperkilogram | ||||
| second | ||||
| siemens | ||||
| siemensbase | ||||
| sievert | ||||
| sievertbase | ||||
| square | ||||
| squared | ||||
| squaremetre | ||||
| squaremetrepercubicmetre | ||||
| squaremetrepercubicmetrenp | ||||
| squaremetrepercubicsecond | ||||
| squaremetrepercubicsecondnp | ||||
| squaremetreperkilogram | ||||
| squaremetrepernewtonsecond | ||||
| squaremetrepernewtonsecondnp | ||||
| squaremetrepersecond | ||||
| squaremetrepersecondnp | ||||
| squaremetrepersquaresecond | ||||
| squaremetrepersquaresecondnp | ||||
| steradian | ||||
| steradianbase | ||||
| tera | ||||
| terad | ||||
| tesla | ||||
| teslabase | ||||
| ton | ||||
| tonne | ||||
| unit | ||||
| unitskip | ||||
| usk | ||||
| volt | ||||
| voltbase | ||||
| voltpermetre | ||||
| voltpermetrenp | ||||
| watt | ||||
| wattbase | ||||
| wattpercubicmetre | ||||
| wattpercubicmetrenp | ||||
| wattperkilogram | ||||
| wattperkilogramnp | ||||
| wattpermetrekelvin | ||||
| wattpermetrekelvinnp | ||||
| wattpersquaremetre | ||||
| wattpersquaremetrenp | ||||
| wattpersquaremetresteradian | ||||
| wattpersquaremetresteradiannp | ||||
| weber | ||||
| weberbase | ||||
| yocto | ||||
| yoctod | ||||
| yotta | ||||
| yottad | ||||
| zepto | ||||
| zeptod | ||||
| zetta | ||||
| zettad | ||||
							
								
								
									
										677
									
								
								vim/vim-latex/ftplugin/latex-suite/dictionaries/dictionary
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										677
									
								
								vim/vim-latex/ftplugin/latex-suite/dictionaries/dictionary
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,677 @@ | |||
| abbrv | ||||
| abovedisplayshortskip | ||||
| abovedisplayskip | ||||
| abstract | ||||
| abstract | ||||
| abstractname | ||||
| acute | ||||
| addcontentsline | ||||
| address | ||||
| addtime | ||||
| addtocontents | ||||
| addtocounter | ||||
| addtolength | ||||
| addvspace | ||||
| align | ||||
| alph | ||||
| Alph | ||||
| alpha | ||||
| amsmath | ||||
| amsthm | ||||
| and | ||||
| appendix | ||||
| appendixname | ||||
| arabic | ||||
| array | ||||
| arraycolsep | ||||
| arrayrulewidth | ||||
| arraystretch | ||||
| article | ||||
| author | ||||
| a4paper | ||||
| a5paper | ||||
| backmatter | ||||
| bar | ||||
| bar | ||||
| baselineskip | ||||
| baselinestretch | ||||
| batchmode | ||||
| begin | ||||
| belowdisplayshortskip | ||||
| belowdisplayskip | ||||
| bezier | ||||
| bf | ||||
| bfseries | ||||
| bibindent | ||||
| bibitem | ||||
| bibliography | ||||
| bibliographystyle | ||||
| bibname | ||||
| big | ||||
| Big | ||||
| Bigg | ||||
| bigg | ||||
| Biggl | ||||
| biggl | ||||
| Biggm | ||||
| biggm | ||||
| Biggr | ||||
| biggr | ||||
| Bigl | ||||
| bigl | ||||
| bigm | ||||
| Bigm | ||||
| bigr | ||||
| Bigr | ||||
| bigskip | ||||
| bigskipamount | ||||
| binom | ||||
| blg | ||||
| boldmath | ||||
| boldsymbol | ||||
| book | ||||
| botfigrule | ||||
| bottmofraction | ||||
| bottomnumber | ||||
| boxedminipage | ||||
| bp | ||||
| breve | ||||
| b5paper | ||||
| calc | ||||
| calc | ||||
| caption | ||||
| caption2 | ||||
| capt-of | ||||
| cases | ||||
| cc | ||||
| ccaption | ||||
| ccname | ||||
| cdotscenter | ||||
| centering | ||||
| cercle | ||||
| cfrac | ||||
| changebar | ||||
| chapter | ||||
| chapterbib | ||||
| chaptername | ||||
| check | ||||
| cite | ||||
| cleardoublepage | ||||
| clearpage | ||||
| cline | ||||
| clock | ||||
| closing | ||||
| cm | ||||
| COLON | ||||
| columnsep | ||||
| columnseprule | ||||
| columnwidth | ||||
| contentsline | ||||
| contentsname | ||||
| copyright | ||||
| dag | ||||
| dashbox | ||||
| date | ||||
| dbinom | ||||
| dblfigure | ||||
| dblfloatpage | ||||
| dblfloatsep | ||||
| dbltextfloatsep | ||||
| dbltopfraction | ||||
| dbltopnumber | ||||
| dcolumn | ||||
| dd | ||||
| ddag | ||||
| ddot | ||||
| ddots | ||||
| DeclareMathOperator | ||||
| depth | ||||
| description | ||||
| dfrac | ||||
| displaylimits | ||||
| displaymath | ||||
| displaystyle | ||||
| document | ||||
| documentclass | ||||
| dot | ||||
| dotfill | ||||
| doublerulesep | ||||
| downbracefill | ||||
| draft | ||||
| dropping | ||||
| dywiz | ||||
| em | ||||
| emph | ||||
| empty | ||||
| encl | ||||
| enclname | ||||
| end | ||||
| endfloat | ||||
| enlargethispage | ||||
| enskip | ||||
| enspace | ||||
| ensuremath | ||||
| enumerate | ||||
| enumi | ||||
| enumii | ||||
| enumiii | ||||
| enumiv | ||||
| eqnarray | ||||
| equation | ||||
| errorstopmode | ||||
| eucal | ||||
| eufrak | ||||
| evensidemargin | ||||
| everyship | ||||
| ex | ||||
| executivepaper | ||||
| expdlist | ||||
| extracolsep | ||||
| extramark | ||||
| fancybox | ||||
| fancyhdr | ||||
| fbox | ||||
| fboxrule | ||||
| fboxsep | ||||
| figure | ||||
| figurename | ||||
| file | ||||
| filecontents | ||||
| final | ||||
| flafter | ||||
| fleqn | ||||
| floatflt | ||||
| floatpagefraction | ||||
| floatsep | ||||
| flushbottom | ||||
| flushleft | ||||
| flushright | ||||
| fnpara | ||||
| fnsymbol | ||||
| fn2end | ||||
| fontenc | ||||
| footheight | ||||
| footmisc | ||||
| footnote | ||||
| footnotemark | ||||
| footnoterule | ||||
| footnotesep | ||||
| footnotesize | ||||
| footnotetext | ||||
| footnpag | ||||
| footskip | ||||
| frac | ||||
| frame | ||||
| framebox | ||||
| frenchspacing | ||||
| frontmatter | ||||
| ftnright | ||||
| fussy | ||||
| gather | ||||
| genfrac | ||||
| geometry | ||||
| glossary | ||||
| glossaryentry | ||||
| graphicx | ||||
| graphpaper | ||||
| grave | ||||
| hat | ||||
| hbox | ||||
| headheihgt | ||||
| headings | ||||
| headsep | ||||
| height | ||||
| helvet | ||||
| hfill | ||||
| hhline | ||||
| hline | ||||
| hrulefill | ||||
| hspace | ||||
| huge | ||||
| Huge | ||||
| HUGE | ||||
| hyperref | ||||
| hyphenation | ||||
| ifthen | ||||
| in | ||||
| include | ||||
| includeonly | ||||
| indent | ||||
| indentfirst | ||||
| index | ||||
| indexentry | ||||
| indexname | ||||
| indexspace | ||||
| input | ||||
| inputenc | ||||
| intertext | ||||
| intextsep | ||||
| invisible | ||||
| it | ||||
| item | ||||
| itemindent | ||||
| itemize | ||||
| itemsep | ||||
| itshape | ||||
| jot | ||||
| kill | ||||
| label | ||||
| labelenumi | ||||
| labelenumii | ||||
| labelenumiii | ||||
| labelenumiv | ||||
| labelitemi | ||||
| labelitemii | ||||
| labelitemiii | ||||
| labelitemiv | ||||
| labelsep | ||||
| labelwidth | ||||
| landscape | ||||
| large | ||||
| LARGE | ||||
| Large | ||||
| LaTeX | ||||
| LaTeXe | ||||
| latexsym | ||||
| ldots | ||||
| left | ||||
| leftarrowfill | ||||
| lefteqn | ||||
| leftmargin | ||||
| leftmargini | ||||
| leftmarginii | ||||
| leftmarginiii | ||||
| leftmarginiv | ||||
| leftmarginv | ||||
| leftmarginvi | ||||
| leftmark | ||||
| legalpaper | ||||
| leq | ||||
| leqno | ||||
| letter | ||||
| letterpaper | ||||
| letterspace | ||||
| lhead | ||||
| limits | ||||
| line | ||||
| linebreak | ||||
| linethickness | ||||
| linewidth | ||||
| list | ||||
| listfigurename | ||||
| listfiles | ||||
| listoffigures | ||||
| listoftables | ||||
| listparindent | ||||
| location | ||||
| longtable | ||||
| lq | ||||
| lrbox | ||||
| lscape | ||||
| mainmatter | ||||
| makeatletter | ||||
| makeatother | ||||
| makebox | ||||
| makeglossary | ||||
| makeidx | ||||
| makeindex | ||||
| makelabel | ||||
| maketitle | ||||
| manyfoot | ||||
| marginpar | ||||
| marginparpush | ||||
| marginparsep | ||||
| marginparwidth | ||||
| markboth | ||||
| markleft | ||||
| markright | ||||
| math | ||||
| mathbb | ||||
| mathbf | ||||
| mathbin | ||||
| mathcal | ||||
| mathclose | ||||
| mathfrak | ||||
| mathindent | ||||
| mathit | ||||
| mathnormal | ||||
| mathop | ||||
| mathopen | ||||
| mathord | ||||
| mathpunct | ||||
| mathrel | ||||
| mathrm | ||||
| mathscr | ||||
| mathsf | ||||
| mathstrut | ||||
| mathtt | ||||
| mathversion | ||||
| mbox | ||||
| mdseries | ||||
| medmuskip | ||||
| medskip | ||||
| medskipamount | ||||
| minipage | ||||
| minitoc | ||||
| minus | ||||
| mkern | ||||
| mm | ||||
| moreverbatim | ||||
| mpfootnote | ||||
| mu | ||||
| multicol | ||||
| multicolumn | ||||
| multilanguage | ||||
| multiput | ||||
| multirow | ||||
| myheadings | ||||
| nabla | ||||
| name | ||||
| NeedsTeXFormat | ||||
| newcommand | ||||
| newcounter | ||||
| newenvironment | ||||
| newfont | ||||
| newlength | ||||
| newline | ||||
| newpage | ||||
| newsavebox | ||||
| newtheorem | ||||
| nocite | ||||
| nofiles | ||||
| noindent | ||||
| nolimits | ||||
| nolinebreak | ||||
| nomathsymbols | ||||
| nonfrenchspacing | ||||
| nonumber | ||||
| nopagebreak | ||||
| normalfont | ||||
| normalsize | ||||
| not | ||||
| notag | ||||
| note | ||||
| notitlepage | ||||
| nu | ||||
| numberline | ||||
| numline | ||||
| numprint | ||||
| oddsidemargin | ||||
| oldstyle | ||||
| onecolumn | ||||
| oneside | ||||
| onlynotes | ||||
| onlyslides | ||||
| openany | ||||
| openbib | ||||
| opening | ||||
| openright | ||||
| operatorname | ||||
| oval | ||||
| overbrace | ||||
| overlay | ||||
| overleftarrow | ||||
| overline | ||||
| overrightarrow | ||||
| page | ||||
| pagebreak | ||||
| pagenumbering | ||||
| pageref | ||||
| pagestyle | ||||
| paperheight | ||||
| paperwidth | ||||
| par | ||||
| paragraph | ||||
| parbox | ||||
| parbox | ||||
| parindent | ||||
| parsep | ||||
| parskip | ||||
| part | ||||
| partial | ||||
| partname | ||||
| partopsep | ||||
| pauza | ||||
| pc | ||||
| phi | ||||
| pi | ||||
| picture | ||||
| plain | ||||
| PLdateending | ||||
| plmath | ||||
| PLSlash | ||||
| plus | ||||
| pmb | ||||
| pmod | ||||
| polski | ||||
| polski | ||||
| poptabs | ||||
| pounds | ||||
| ppauza | ||||
| prefixing | ||||
| printindex | ||||
| protect | ||||
| providecommand | ||||
| ps | ||||
| pt | ||||
| pushtabs | ||||
| put | ||||
| qbezier | ||||
| qbeziermax | ||||
| qquad | ||||
| quad | ||||
| quotation | ||||
| quote | ||||
| raggedbottom | ||||
| raggedleft | ||||
| raggedright | ||||
| ragged2e | ||||
| raisebox | ||||
| ratio | ||||
| real | ||||
| ref | ||||
| refname | ||||
| refstepcounter | ||||
| relsize | ||||
| renewcommand | ||||
| renewenvironment | ||||
| report | ||||
| reversemarginpar | ||||
| rhead | ||||
| right | ||||
| rightarrowfill | ||||
| rightmargin | ||||
| rightmark | ||||
| rm | ||||
| rmfamily | ||||
| roman | ||||
| Roman | ||||
| rotate | ||||
| rotating | ||||
| rq | ||||
| rule | ||||
| samepage | ||||
| savebox | ||||
| sb | ||||
| sbox | ||||
| sc | ||||
| scriptscriptstyle | ||||
| scriptsize | ||||
| scriptstyle | ||||
| scrollmode | ||||
| scshape | ||||
| secnumdepth | ||||
| section | ||||
| sectionmark | ||||
| see | ||||
| seename | ||||
| selectfont | ||||
| selectlanguage | ||||
| setcounter | ||||
| setlength | ||||
| settime | ||||
| settodepth | ||||
| settoheight | ||||
| settowidth | ||||
| sf | ||||
| sffamily | ||||
| shadethm | ||||
| shadow | ||||
| shapepar | ||||
| shortstack | ||||
| showlabels | ||||
| sidecap | ||||
| signature | ||||
| sin | ||||
| sl | ||||
| slide | ||||
| slides | ||||
| sloppy | ||||
| sloppybar | ||||
| slshape | ||||
| small | ||||
| smallskip | ||||
| smallskipamount | ||||
| soul | ||||
| sp | ||||
| space | ||||
| sqrt | ||||
| ss | ||||
| SS | ||||
| stackrel | ||||
| startbreaks | ||||
| stepcounter | ||||
| stop | ||||
| stopbreaks | ||||
| stretch | ||||
| strut | ||||
| subfigure | ||||
| subfigure | ||||
| subitem | ||||
| subparagraph | ||||
| subsection | ||||
| subsubitem | ||||
| subsubsection | ||||
| sum | ||||
| supressfloats | ||||
| symbol | ||||
| symbol | ||||
| tabbing | ||||
| tabcolsep | ||||
| table | ||||
| tablename | ||||
| tableofcontents | ||||
| tabular | ||||
| tabularx | ||||
| tag | ||||
| tan | ||||
| tbinom | ||||
| telephone | ||||
| TeX | ||||
| textbf | ||||
| textbullet | ||||
| textcircled | ||||
| textcompwordmark | ||||
| textemdash | ||||
| textendash | ||||
| textexclamdown | ||||
| textfloatsep | ||||
| textfraction | ||||
| textheight | ||||
| textit | ||||
| textmd | ||||
| textnormal | ||||
| textperiodcenter | ||||
| textquestiondown | ||||
| textquotedblleft | ||||
| textquotedblright | ||||
| textquoteleft | ||||
| textquoteright | ||||
| textrm | ||||
| textsc | ||||
| textsf | ||||
| textsl | ||||
| textstyle | ||||
| textsuperscript | ||||
| texttt | ||||
| textup | ||||
| textvisiblespace | ||||
| textwidth | ||||
| tfrac | ||||
| thanks | ||||
| the | ||||
| thebibliography | ||||
| theindex | ||||
| theorem | ||||
| thepage | ||||
| thesection | ||||
| theta | ||||
| thicklines | ||||
| thickmuskip | ||||
| thinlines | ||||
| thispagestyle | ||||
| tilde | ||||
| time | ||||
| times | ||||
| tiny | ||||
| title | ||||
| titlepage | ||||
| tocdepth | ||||
| today | ||||
| topfigrule | ||||
| topfraction | ||||
| topmargin | ||||
| topmargin | ||||
| topmargin | ||||
| topsep | ||||
| topskip | ||||
| topskip | ||||
| totalheight | ||||
| totalnumber | ||||
| trivlist | ||||
| tt | ||||
| ttfamily | ||||
| twocolumn | ||||
| twocolumn | ||||
| twoside | ||||
| typein | ||||
| typein | ||||
| typeout | ||||
| typeout | ||||
| ulem | ||||
| ulem | ||||
| unboldmath | ||||
| underbrace | ||||
| underline | ||||
| unsort | ||||
| unsrt | ||||
| upbracefill | ||||
| upshape | ||||
| upshape | ||||
| usebox | ||||
| usebox | ||||
| usecounter | ||||
| usefont | ||||
| usepackage | ||||
| value | ||||
| vbox | ||||
| vdots | ||||
| vec | ||||
| vector | ||||
| verb | ||||
| verb | ||||
| verbatim | ||||
| verse | ||||
| vfill | ||||
| visible | ||||
| vline | ||||
| vmargin | ||||
| voffset | ||||
| vspace | ||||
| widehat | ||||
| widetilde | ||||
| width | ||||
| wrapfig | ||||
| xleftarrow | ||||
| xrightarrow | ||||
| threeparttable | ||||
							
								
								
									
										330
									
								
								vim/vim-latex/ftplugin/latex-suite/elementmacros.vim
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										330
									
								
								vim/vim-latex/ftplugin/latex-suite/elementmacros.vim
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,330 @@ | |||
| "============================================================================= | ||||
| " 	     File: elementmacros.vim | ||||
| "      Author: Mikolaj Machowski | ||||
| "     Created: Tue Apr 23 06:00 PM 2002 PST | ||||
| "  | ||||
| "  Description: macros for dimensions/fonts/counters. | ||||
| "               and various common commands such ref/label/footnote. | ||||
| "============================================================================= | ||||
| 
 | ||||
| nmap <silent> <script> <plug> i | ||||
| imap <silent> <script> <C-o><plug> <Nop> | ||||
| 
 | ||||
| if exists('s:lastElementsLocation') && g:Tex_ElementsMenuLocation == s:lastElementsLocation | ||||
| 	finish | ||||
| endif | ||||
| 
 | ||||
| if exists('s:lastElementsLocation') | ||||
| 	exe 'aunmenu '.s:lastElementsLocation.'Font.' | ||||
| 	exe 'aunmenu '.s:lastElementsLocation.'Dimension.' | ||||
| 	exe 'aunmenu '.s:lastElementsLocation.'Counters.' | ||||
| 	exe 'aunmenu '.s:lastElementsLocation.'Various.' | ||||
| endif | ||||
| 
 | ||||
| let s:lastElementsLocation = g:Tex_ElementsMenuLocation | ||||
| 
 | ||||
| let s:fontMenuLoc       = g:Tex_ElementsMenuLocation.'Font.' | ||||
| let s:dimensionMenuLoc  = g:Tex_ElementsMenuLocation.'Dimension.' | ||||
| let s:counterMenuLoc    = g:Tex_ElementsMenuLocation.'Counters.' | ||||
| let s:variousMenuLoc    = g:Tex_ElementsMenuLocation.'Various.' | ||||
| 
 | ||||
| " ============================================================================== | ||||
| " Set up the functions the first time. | ||||
| " ==============================================================================  | ||||
| if !exists('s:definedFuncs') " {{{ | ||||
| 	let s:definedFuncs = 1 | ||||
| 
 | ||||
| 	" Tex_RemoveElementMenus: remove the elements menu {{{ | ||||
| 	function! Tex_RemoveElementMenus() | ||||
| 		exe 'silent! aunmenu '.s:lastElementsLocation.'Font.' | ||||
| 		exe 'silent! aunmenu '.s:lastElementsLocation.'Dimension.' | ||||
| 		exe 'silent! aunmenu '.s:lastElementsLocation.'Counters.' | ||||
| 		exe 'silent! aunmenu '.s:lastElementsLocation.'Various.' | ||||
| 	endfunction " }}} | ||||
| 	" Tex_FontFamily: sets up font menus {{{ | ||||
| 	function! <SID>Tex_FontFamily(font,fam) | ||||
| 		let vislhs = matchstr(tolower(a:font), '^.\zs.*') | ||||
| 
 | ||||
| 		" avoid redoing imaps and vmaps for every reconfiguration of menus. | ||||
| 		if !exists('s:doneOnce') && g:Tex_FontMaps | ||||
| 			exe "vnoremap <silent> ".g:Tex_Leader.vislhs. | ||||
| 				\" \<C-\\>\<C-N>:call VEnclose('\\text".vislhs."{', '}', '{\\".vislhs.a:fam." ', '}')<CR>" | ||||
| 			exe 'call IMAP ("'.a:font.'", "\\text'.vislhs.'{<++>}<++>", "tex")' | ||||
| 		endif | ||||
| 
 | ||||
| 		" menu entry. | ||||
| 		if g:Tex_Menus && g:Tex_FontMenus | ||||
| 			let location = s:fontMenuLoc.substitute(a:fam, '^.', '\u&', '').'.'.vislhs.a:fam.'<tab>'.a:font.'\ ('.g:Tex_Leader.vislhs.')' | ||||
| 			exe "amenu ".location. | ||||
| 				\" <plug><C-r>=IMAP_PutTextWithMovement('\\text".vislhs."{<++>}<++>')<CR>" | ||||
| 			exe "vmenu ".location. | ||||
| 				\" \<C-\\>\<C-N>:call VEnclose('\\text".vislhs."{', '}', '{\\".vislhs.a:fam." ', '}')<CR>" | ||||
| 		endif | ||||
| 
 | ||||
| 	endfunction " }}} | ||||
| 	" Tex_FontDiacritics: sets up menus for diacritics. {{{ | ||||
| 	function! <SID>Tex_FontDiacritics(name, rhs) | ||||
| 		let location = s:fontMenuLoc.'&Diacritics.'.a:name.'<tab>' | ||||
| 		exe 'amenu '.location. | ||||
| 			\" <plug><C-r>=IMAP_PutTextWithMovement('\\".a:rhs."{<++>}<++>')<CR>" | ||||
| 		exe 'vmenu '.location. | ||||
| 			\" \<C-\\>\<C-n>:call VEnclose('\\".a:rhs."{', '}', '', '')<CR>"  | ||||
| 	endfunction " }}} | ||||
| 	" Tex_FontSize: sets up size fonts {{{ | ||||
| 	function! <SID>Tex_FontSize(name) | ||||
| 		let location = s:fontMenuLoc.'&Size.'.a:name.'<tab>' | ||||
| 		exe 'amenu '.location." <plug>\\".a:name | ||||
| 		exe 'vunmenu '.location | ||||
| 	endfunction " }}} | ||||
| 	" Tex_Fontfont: sets up the 'font' part of font menus {{{ | ||||
| 	function! <SID>Tex_Fontfont(desc, lhs) | ||||
| 		let location = s:fontMenuLoc.'&font.'.a:desc.'<tab>' | ||||
| 		exe "amenu ".location."  <plug><C-r>=IMAP_PutTextWithMovement('".a:lhs."')<CR>" | ||||
| 		exe "vunmenu ".location | ||||
| 	endfunction " }}} | ||||
| 	" Tex_DimMenus: set up dimension menus {{{ | ||||
| 	function! <SID>Tex_DimMenus(submenu, rhs) | ||||
| 		let location = s:dimensionMenuLoc.a:submenu.'.'.a:rhs.'<tab>' | ||||
| 		exe "amenu ".location." <plug>\\".a:rhs | ||||
| 		exe "vunmenu ".location | ||||
| 	endfunction " }}} | ||||
| 	" Tex_CounterMenus: set up counters menus {{{ | ||||
| 	function! <SID>Tex_CounterMenus(submenu, rhs) | ||||
| 		let location = s:counterMenuLoc.a:submenu.'.'.a:rhs.'<tab>' | ||||
| 		exe "amenu ".location." <plug>\\".a:rhs | ||||
| 		exe "vunmenu ".location | ||||
| 	endfunction " }}} | ||||
| 	" Tex_VariousMenus: set up various menus {{{ | ||||
| 	function! <SID>Tex_VariousMenus(desc, lhs) | ||||
| 		let location = s:variousMenuLoc.a:desc.'<tab>' | ||||
| 		exe "amenu ".location." <plug><C-r>=IMAP_PutTextWithMovement('".a:lhs."')<CR>" | ||||
| 		exe "vunmenu ".location | ||||
| 	endfunction " }}} | ||||
| 
 | ||||
| endif | ||||
| " }}} | ||||
| 
 | ||||
| " ============================================================================== | ||||
| " Fonts | ||||
| " ==============================================================================  | ||||
| " series/family/shape {{{ | ||||
| call <SID>Tex_FontFamily("FBF","series") | ||||
| call <SID>Tex_FontFamily("FMD","series") | ||||
| 
 | ||||
| call <SID>Tex_FontFamily("FTT","family") | ||||
| call <SID>Tex_FontFamily("FSF","family") | ||||
| call <SID>Tex_FontFamily("FRM","family") | ||||
| 
 | ||||
| call <SID>Tex_FontFamily("FUP","shape") | ||||
| call <SID>Tex_FontFamily("FSL","shape") | ||||
| call <SID>Tex_FontFamily("FSC","shape") | ||||
| call <SID>Tex_FontFamily("FIT","shape") | ||||
| 
 | ||||
| " the \emph is special. | ||||
| if g:Tex_FontMaps | exe "vnoremap <silent> ".g:Tex_Leader."em \<C-\\>\<C-N>:call VEnclose('\\emph{', '}', '{\\em', '\\/}')<CR>" | endif | ||||
| if g:Tex_FontMaps | exe 'call IMAP ("FEM", "\\emph{<++>}<++>", "tex")' | endif | ||||
| 
 | ||||
| " }}} | ||||
| if g:Tex_Menus && g:Tex_FontMenus | ||||
| 	" {{{ diacritics | ||||
| 	call <SID>Tex_FontDiacritics('Acute',        '"') | ||||
| 	call <SID>Tex_FontDiacritics('Breve',        'u') | ||||
| 	call <SID>Tex_FontDiacritics('Circle',       'r') | ||||
| 	call <SID>Tex_FontDiacritics('Circumflex',   '^') | ||||
| 	call <SID>Tex_FontDiacritics('Umlaut',       '"') | ||||
| 	call <SID>Tex_FontDiacritics('HUmlaut',      'H') | ||||
| 	call <SID>Tex_FontDiacritics('Dot\ over',    '.') | ||||
| 	call <SID>Tex_FontDiacritics('Grave',        '`') | ||||
| 	call <SID>Tex_FontDiacritics('Hacek',        'v') | ||||
| 	call <SID>Tex_FontDiacritics('Makron',       '=') | ||||
| 	call <SID>Tex_FontDiacritics('Tilde',        '~') | ||||
| 	call <SID>Tex_FontDiacritics('Underline',    'b') | ||||
| 	call <SID>Tex_FontDiacritics('Cedille',      'c') | ||||
| 	call <SID>Tex_FontDiacritics('Dot\ under',   ' ') | ||||
| 	call <SID>Tex_FontDiacritics('Ligature',     't') | ||||
| 	" }}} | ||||
| 	" {{{ Si&ze. | ||||
| 	call <SID>Tex_FontSize('tiny') | ||||
| 	call <SID>Tex_FontSize('scriptsize') | ||||
| 	call <SID>Tex_FontSize('footnotesize') | ||||
| 	call <SID>Tex_FontSize('small') | ||||
| 	call <SID>Tex_FontSize('normalsize') | ||||
| 	call <SID>Tex_FontSize('large') | ||||
| 	call <SID>Tex_FontSize('Large') | ||||
| 	call <SID>Tex_FontSize('LARGE') | ||||
| 	call <SID>Tex_FontSize('huge') | ||||
| 	call <SID>Tex_FontSize('Huge') | ||||
| 	" }}} | ||||
| 	" {{{ &font. | ||||
| 	call s:Tex_Fontfont('fontencoding{}',               '\fontencoding{<++>}<++>') | ||||
| 	call s:Tex_Fontfont('fontfamily{qtm}',              '\fontfamily{<++>}<++>') | ||||
| 	call s:Tex_Fontfont('fontseries{m\ b\ bx\ sb\ c}',  '\fontseries{<++>}<++>') | ||||
| 	call s:Tex_Fontfont('fontshape{n\ it\ sl\ sc\ ui}', '\fontshape{<++>}<++>') | ||||
| 	call s:Tex_Fontfont('fontsize{}{}',                 '\fontsize{<++>}{<++>}<++>') | ||||
| 	call s:Tex_Fontfont('selectfont',                   '\selectfont ') | ||||
| 	" }}} | ||||
| endif | ||||
| 
 | ||||
| " ============================================================================== | ||||
| " Dimensions | ||||
| " ==============================================================================  | ||||
| if g:Tex_Menus | ||||
| 	" {{{ Static1 | ||||
| 	call <SID>Tex_DimMenus('Static1', 'arraycolsep') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'arrayrulewidth') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'bibindent') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'columnsep') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'columnseprule') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'columnwidth') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'doublerulesep') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'evensidemargin') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'fboxrule') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'fboxsep') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'footheight') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'footnotesep') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'footskip') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'headheight') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'headsep') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'itemindent') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'labelsep') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'labelwidth') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'leftmargin') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'leftmargini') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'leftmarginii') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'leftmarginiii') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'leftmarginiv') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'leftmarginv') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'leftmarginvi') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'linewidth') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'listparindent') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'marginparpush') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'marginparsep') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'marginparwidth') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'mathindent') | ||||
| 	call <SID>Tex_DimMenus('Static1', 'oddsidemargin') | ||||
| 	" }}} | ||||
| 	" {{{ Static2 | ||||
| 	call <SID>Tex_DimMenus('Static2', 'paperheight') | ||||
| 	call <SID>Tex_DimMenus('Static2', 'paperwidth') | ||||
| 	call <SID>Tex_DimMenus('Static2', 'parindent') | ||||
| 	call <SID>Tex_DimMenus('Static2', 'rightmargin') | ||||
| 	call <SID>Tex_DimMenus('Static2', 'tabbingsep') | ||||
| 	call <SID>Tex_DimMenus('Static2', 'tabcolsep') | ||||
| 	call <SID>Tex_DimMenus('Static2', 'textheight') | ||||
| 	call <SID>Tex_DimMenus('Static2', 'textwidth') | ||||
| 	call <SID>Tex_DimMenus('Static2', 'topmargin') | ||||
| 	call <SID>Tex_DimMenus('Static2', 'unitlength') | ||||
| 	" }}} | ||||
| 	" {{{ Dynamic | ||||
| 	call <SID>Tex_DimMenus('Dynamic', 'abovedisplayshortskip') | ||||
| 	call <SID>Tex_DimMenus('Dynamic', 'abovedisplayskip') | ||||
| 	call <SID>Tex_DimMenus('Dynamic', 'baselineskip') | ||||
| 	call <SID>Tex_DimMenus('Dynamic', 'belowdisplayshortskip') | ||||
| 	call <SID>Tex_DimMenus('Dynamic', 'belowdisplayskip') | ||||
| 	call <SID>Tex_DimMenus('Dynamic', 'dblfloatsep') | ||||
| 	call <SID>Tex_DimMenus('Dynamic', 'dbltextfloatsep') | ||||
| 	call <SID>Tex_DimMenus('Dynamic', 'floatsep') | ||||
| 	call <SID>Tex_DimMenus('Dynamic', 'intextsep') | ||||
| 	call <SID>Tex_DimMenus('Dynamic', 'itemsep') | ||||
| 	call <SID>Tex_DimMenus('Dynamic', 'parsep') | ||||
| 	call <SID>Tex_DimMenus('Dynamic', 'parskip') | ||||
| 	call <SID>Tex_DimMenus('Dynamic', 'partopsep') | ||||
| 	call <SID>Tex_DimMenus('Dynamic', 'textfloatsep') | ||||
| 	call <SID>Tex_DimMenus('Dynamic', 'topsep') | ||||
| 	call <SID>Tex_DimMenus('Dynamic', 'topskip') | ||||
| 	" }}} | ||||
| 	" {{{ Change | ||||
| 	call <SID>Tex_DimMenus('Change', 'setlength') | ||||
| 	call <SID>Tex_DimMenus('Change', 'addtolength') | ||||
| 	call <SID>Tex_DimMenus('Change', 'settoheight') | ||||
| 	call <SID>Tex_DimMenus('Change', 'settowidth') | ||||
| 	call <SID>Tex_DimMenus('Change', 'settolength') | ||||
| 	" }}} | ||||
| endif | ||||
| 
 | ||||
| " ============================================================================== | ||||
| " Counters | ||||
| " ==============================================================================  | ||||
| if g:Tex_Menus | ||||
| 	" Counters {{{ | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'bottomnumber') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'chapter') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'dbltopnumber') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'enumi') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'enumii') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'enumiii') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'enumiv') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'equation') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'figure') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'footnote') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'mpfootnote') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'page') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'paragraph') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'part') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'secnumdepth') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'section') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'subparagraph') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'subsection') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'subsubsection') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'table') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'tocdepth') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'topnumber') | ||||
| 	call <SID>Tex_CounterMenus('Counters', 'totalnumber') | ||||
| 	" }}} | ||||
| 	" theCounters {{{ | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'thebottomnumber') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'thechapter') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'thedbltopnumber') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'theenumi') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'theenumii') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'theenumiii') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'theenumiv') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'theequation') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'thefigure') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'thefootnote') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'thempfootnote') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'thepage') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'theparagraph') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'thepart') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'thesecnumdepth') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'thesection') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'thesubparagraph') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'thesubsection') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'thesubsubsection') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'thetable') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'thetocdepth') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'thetopnumber') | ||||
| 	call <SID>Tex_CounterMenus('theCounters', 'thetotalnumber') | ||||
| 	" }}} | ||||
| 	" Type {{{ | ||||
| 	call <SID>Tex_CounterMenus('Type', 'alph') | ||||
| 	call <SID>Tex_CounterMenus('Type', 'Alph') | ||||
| 	call <SID>Tex_CounterMenus('Type', 'arabic') | ||||
| 	call <SID>Tex_CounterMenus('Type', 'roman') | ||||
| 	call <SID>Tex_CounterMenus('Type', 'Roman') | ||||
| 	" }}} | ||||
| endif | ||||
| 
 | ||||
| " ============================================================================== | ||||
| " Various | ||||
| " ==============================================================================  | ||||
| if g:Tex_Menus | ||||
| 	" Various {{{ | ||||
| 	call <SID>Tex_VariousMenus('ref{}'         , '\ref{<++>}<++>') | ||||
| 	call <SID>Tex_VariousMenus('pageref{}'     , '\pageref{<++>}<++>') | ||||
| 	call <SID>Tex_VariousMenus('label{}'       , '\label{<++>}<++>') | ||||
| 	call <SID>Tex_VariousMenus('footnote{}'    , '\footnote{<++>}<++>') | ||||
| 	call <SID>Tex_VariousMenus('footnotemark{}', '\footnotemark{<++>}<++>') | ||||
| 	call <SID>Tex_VariousMenus('footnotemark{}', '\footnotetext{<++>}<++>') | ||||
| 	call <SID>Tex_VariousMenus('cite{}'        , '\cite{<++>}<++>') | ||||
| 	call <SID>Tex_VariousMenus('nocite{}'      , '\nocite{<++>}<++>') | ||||
| 	" }}} | ||||
| endif | ||||
| 
 | ||||
| if g:Tex_CatchVisMapErrors | ||||
| 	exe "vnoremap ".g:Tex_Leader."   :\<C-u>call ExecMap('".g:Tex_Leader."', 'v')\<CR>" | ||||
| endif | ||||
| " this is for avoiding reinclusion of imaps from next time on. | ||||
| let s:doneOnce = 1 | ||||
| 
 | ||||
| " vim:fdm=marker:ff=unix:noet:ts=4:sw=4 | ||||
							
								
								
									
										1166
									
								
								vim/vim-latex/ftplugin/latex-suite/envmacros.vim
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										1166
									
								
								vim/vim-latex/ftplugin/latex-suite/envmacros.vim
									
										
									
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										400
									
								
								vim/vim-latex/ftplugin/latex-suite/folding.vim
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										400
									
								
								vim/vim-latex/ftplugin/latex-suite/folding.vim
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,400 @@ | |||
| "============================================================================= | ||||
| " 	     File: folding.vim | ||||
| "      Author: Srinath Avadhanula | ||||
| "      		   modifications/additions by Zhang Linbo | ||||
| "     Created: Tue Apr 23 05:00 PM 2002 PST | ||||
| "  | ||||
| "  Description: functions to interact with Syntaxfolds.vim | ||||
| "============================================================================= | ||||
| 
 | ||||
| nnoremap <unique> <Plug>Tex_RefreshFolds :call MakeTexFolds(1)<cr> | ||||
| 
 | ||||
| augroup LatexSuite | ||||
| 	au LatexSuite User LatexSuiteFileType  | ||||
| 		\ call Tex_Debug('folding.vim: catching LatexSuiteFileType', 'fold') |  | ||||
| 		\ call Tex_SetFoldOptions() | ||||
| augroup END | ||||
| 
 | ||||
| " Tex_SetFoldOptions: sets maps for every buffer {{{ | ||||
| " Description:  | ||||
| function! Tex_SetFoldOptions() | ||||
| 	if exists('b:doneSetFoldOptions') | ||||
| 		return | ||||
| 	endif | ||||
| 	let b:doneSetFoldOptions = 1 | ||||
| 
 | ||||
| 	setlocal foldtext=TexFoldTextFunction() | ||||
| 
 | ||||
| 	if g:Tex_Folding && g:Tex_AutoFolding | ||||
| 		call MakeTexFolds(0) | ||||
| 	endif | ||||
| 
 | ||||
| 	let s:ml = '<Leader>' | ||||
| 
 | ||||
| 	call Tex_MakeMap(s:ml."rf", "<Plug>Tex_RefreshFolds", 'n', '<silent> <buffer>') | ||||
| 
 | ||||
| endfunction " }}} | ||||
| " Tex_FoldSections: creates section folds {{{ | ||||
| " Author: Zhang Linbo | ||||
| " Description: | ||||
| " 	This function takes a comma seperated list of "sections" and creates fold | ||||
| " 	definitions for them. The first item is supposed to be the "shallowest" field | ||||
| " 	and the last is the "deepest". See g:Tex_FoldedSections for the default | ||||
| " 	definition of the lst input argument. | ||||
| " | ||||
| " 	**works recursively** | ||||
| function! Tex_FoldSections(lst, endpat) | ||||
| 	let i = match(a:lst, ',') | ||||
| 	if i > 0 | ||||
| 		let s = strpart(a:lst, 0, i) | ||||
| 	else | ||||
| 		let s = a:lst | ||||
| 	endif | ||||
| 	if s =~ '%%fakesection' | ||||
| 		let s = '^\s*' . s | ||||
| 	else | ||||
| 		let pattern = '' | ||||
| 		let prefix = '' | ||||
| 		for label in split(s, "|") | ||||
| 			let pattern .= prefix . '^\s*\\' . label . '\W\|^\s*%%fake' . label | ||||
| 			let prefix = '\W\|' | ||||
| 		endfor | ||||
| 		let s = pattern | ||||
| 	endif | ||||
| 	let endpat = s . '\|' . a:endpat | ||||
| 	if i > 0 | ||||
| 		call Tex_FoldSections(strpart(a:lst,i+1), endpat) | ||||
| 	endif | ||||
| 	let endpat = '^\s*\\appendix\W\|' . endpat | ||||
| 	call AddSyntaxFoldItem(s, endpat, 0, -1) | ||||
| endfunction | ||||
| " }}} | ||||
| " MakeTexFolds: function to create fold items for latex. {{{ | ||||
| " | ||||
| " used in conjunction with MakeSyntaxFolds(). | ||||
| " see ../plugin/syntaxFolds.vim for documentation | ||||
| function! MakeTexFolds(force) | ||||
| 	if exists('g:Tex_Folding') && !g:Tex_Folding | ||||
| 		return | ||||
| 	endif | ||||
| 	if &ft != 'tex' | ||||
| 		return | ||||
| 	end | ||||
| 
 | ||||
| 	" Setup folded items lists g:Tex_Foldedxxxx | ||||
| 	" 	1. Use default value if g:Tex_Foldedxxxxxx is not defined | ||||
| 	" 	2. prepend default value to g:Tex_Foldedxxxxxx if it starts with ',' | ||||
| 	" 	3. append default value to g:Tex_Foldedxxxxxx if it ends with ',' | ||||
| 
 | ||||
| 	" Folding items which are not caught in any of the standard commands, | ||||
| 	" environments or sections. | ||||
| 	let s = 'item,slide,preamble,<<<' | ||||
| 	if !exists('g:Tex_FoldedMisc') | ||||
| 		let g:Tex_FoldedMisc = s | ||||
| 	elseif g:Tex_FoldedMisc[0] == ',' | ||||
| 		let g:Tex_FoldedMisc = s . g:Tex_FoldedMisc | ||||
| 	elseif g:Tex_FoldedMisc =~ ',$' | ||||
| 		let g:Tex_FoldedMisc = g:Tex_FoldedMisc . s | ||||
| 	endif | ||||
| 
 | ||||
| 	" By default do not fold any commands. It looks like trying to fold | ||||
| 	" commands is a difficult problem since commands can be arbitrarily nested | ||||
| 	" and the end patterns are not unique unlike the case of environments. | ||||
| 	" For this to work well, we need a regexp which will match a line only if | ||||
| 	" a command begins on that line but does not end on that line. This | ||||
| 	" requires a regexp which will match unbalanced curly braces and that is | ||||
| 	" apparently not doable with regexps. | ||||
| 	let s = '' | ||||
|     if !exists('g:Tex_FoldedCommands') | ||||
| 		let g:Tex_FoldedCommands = s | ||||
| 	elseif g:Tex_FoldedCommands[0] == ',' | ||||
| 		let g:Tex_FoldedCommands = s . g:Tex_FoldedCommands | ||||
| 	elseif g:Tex_FoldedCommands =~ ',$' | ||||
| 		let g:Tex_FoldedCommands = g:Tex_FoldedCommands . s | ||||
| 	endif | ||||
| 
 | ||||
| 	let s = 'verbatim,comment,eq,gather,align,figure,table,thebibliography,' | ||||
| 			\. 'keywords,abstract,titlepage' | ||||
|     if !exists('g:Tex_FoldedEnvironments') | ||||
| 		let g:Tex_FoldedEnvironments = s | ||||
| 	elseif g:Tex_FoldedEnvironments[0] == ',' | ||||
| 		let g:Tex_FoldedEnvironments = s . g:Tex_FoldedEnvironments | ||||
| 	elseif g:Tex_FoldedEnvironments =~ ',$' | ||||
| 		let g:Tex_FoldedEnvironments = g:Tex_FoldedEnvironments . s | ||||
| 	endif | ||||
| 	 | ||||
|     if !exists('g:Tex_FoldedSections') | ||||
| 		let g:Tex_FoldedSections = 'part,chapter,section,' | ||||
| 								\. 'subsection,subsubsection,paragraph' | ||||
| 	endif | ||||
| 
 | ||||
| 	" the order in which these calls are made decides the nestedness. in | ||||
| 	" latex, a table environment will always be embedded in either an item or | ||||
| 	" a section etc. not the other way around. so we first fold up all the | ||||
| 	" tables. and then proceed with the other regions. | ||||
| 
 | ||||
| 	let b:numFoldItems = 0 | ||||
| 
 | ||||
| 	" ======================================================================== | ||||
| 	" How to add new folding items {{{ | ||||
| 	" ======================================================================== | ||||
| 	" | ||||
| 	" Each of the following function calls defines a syntax fold region. Each | ||||
| 	" definition consists of a call to the AddSyntaxFoldItem() function. | ||||
| 	"  | ||||
| 	" The order in which the folds are defined is important. Juggling the | ||||
| 	" order of the function calls will create havoc with folding. The | ||||
| 	" "deepest" folding item needs to be called first. For example, if | ||||
| 	" the \begin{table} environment is a subset (or lies within) the \section | ||||
| 	" environment, then add the definition for the \table first. | ||||
| 	" | ||||
| 	" The AddSyntaxFoldItem() function takes either 4 or 6 arguments. When it | ||||
| 	" is called with 4 arguments, it is equivalent to calling it with 6 | ||||
| 	" arguments with the last two left blank (i.e as empty strings) | ||||
| 	" | ||||
| 	" The explanation for each argument is as follows: | ||||
| 	"    startpat: a line matching this pattern defines the beginning of a fold. | ||||
| 	"    endpat  : a line matching this pattern defines the end of a fold. | ||||
| 	"    startoff: this is the offset from the starting line at which folding will | ||||
| 	"              actually start | ||||
| 	"    endoff  : like startoff, but gives the offset of the actual fold end from | ||||
| 	"              the line satisfying endpat. | ||||
| 	"              startoff and endoff are necessary when the folding region does | ||||
| 	"              not have a specific end pattern corresponding to a start | ||||
| 	"              pattern. for example in latex, | ||||
| 	"              \begin{section} | ||||
| 	"              defines the beginning of a section, but its not necessary to | ||||
| 	"              have a corresponding | ||||
| 	"              \end{section} | ||||
| 	"              the section is assumed to end 1 line _before_ another section | ||||
| 	"              starts. | ||||
| 	"    startskip: a pattern which defines the beginning of a "skipped" region. | ||||
| 	" | ||||
| 	"               For example, suppose we define a \itemize fold as follows: | ||||
| 	"               startpat =  '^\s*\\item', | ||||
| 	"               endpat = '^\s*\\item\|^\s*\\end{\(enumerate\|itemize\|description\)}', | ||||
| 	"               startoff = 0, | ||||
| 	"               endoff = -1 | ||||
| 	" | ||||
| 	"               This defines a fold which starts with a line beginning with an | ||||
| 	"               \item and ending one line before a line beginning with an | ||||
| 	"               \item or \end{enumerate} etc. | ||||
| 	" | ||||
| 	"               Then, as long as \item's are not nested things are fine. | ||||
| 	"               However, once items begin to nest, the fold started by one | ||||
| 	"               \item can end because of an \item in an \itemize | ||||
| 	"               environment within this \item. i.e, the following can happen: | ||||
| 	" | ||||
| 	"               \begin{itemize} | ||||
| 	"               \item Some text <------- fold will start here | ||||
| 	"                     This item will contain a nested item | ||||
| 	"                     \begin{itemize} <----- fold will end here because next line contains \item... | ||||
| 	"                     \item Hello | ||||
| 	"                     \end{itemize} <----- ... instead of here. | ||||
| 	"               \item Next item of the parent itemize | ||||
| 	"               \end{itemize} | ||||
| 	" | ||||
| 	"               Therefore, in order to completely define a folding item which | ||||
| 	"               allows nesting, we need to also define a "skip" pattern. | ||||
| 	"               startskip and end skip do that. | ||||
| 	"               Leave '' when there is no nesting. | ||||
| 	"    endskip: the pattern which defines the end of the "skip" pattern for | ||||
| 	"             nested folds. | ||||
| 	" | ||||
| 	"    Example:  | ||||
| 	"    1. A syntax fold region for a latex section is | ||||
| 	"           startpat = "\\section{" | ||||
| 	"           endpat   = "\\section{" | ||||
| 	"           startoff = 0 | ||||
| 	"           endoff   = -1 | ||||
| 	"           startskip = '' | ||||
| 	"           endskip = '' | ||||
| 	"    Note that the start and end patterns are thus the same and endoff has a | ||||
| 	"    negative value to capture the effect of a section ending one line before | ||||
| 	"    the next starts. | ||||
| 	"    2. A syntax fold region for the \itemize environment is: | ||||
| 	"           startpat = '^\s*\\item', | ||||
| 	"           endpat = '^\s*\\item\|^\s*\\end{\(enumerate\|itemize\|description\)}', | ||||
| 	"           startoff = 0, | ||||
| 	"           endoff = -1, | ||||
| 	"           startskip = '^\s*\\begin{\(enumerate\|itemize\|description\)}', | ||||
| 	"           endskip = '^\s*\\end{\(enumerate\|itemize\|description\)}' | ||||
| 	"     Note the use of startskip and endskip to allow nesting. | ||||
| 	" | ||||
| 	" | ||||
| 	" }}} | ||||
| 	" ======================================================================== | ||||
| 	 | ||||
| 	" {{{ comment lines | ||||
| 	if g:Tex_FoldedMisc =~ '\<comments\>' | ||||
| 		call AddSyntaxFoldItem ( | ||||
| 			\ '^%\([^%]\|[^f]\|[^a]\|[^k]\|[^e]\)', | ||||
| 			\ '^[^%]', | ||||
| 			\ 0, | ||||
| 			\ -1  | ||||
| 			\ ) | ||||
| 	endif | ||||
| 	" }}} | ||||
| 
 | ||||
| 	" {{{ items | ||||
| 	if g:Tex_FoldedMisc =~ '\<item\>' | ||||
| 		call AddSyntaxFoldItem ( | ||||
| 			\ '^\s*\\item', | ||||
| 			\ '^\s*\\item\|^\s*\\end{\(enumerate\|itemize\|description\)}', | ||||
| 			\ 0, | ||||
| 			\ -1, | ||||
| 			\ '^\s*\\begin{\(enumerate\|itemize\|description\)}', | ||||
| 			\ '^\s*\\end{\(enumerate\|itemize\|description\)}' | ||||
| 			\ ) | ||||
| 	endif | ||||
| 	" }}} | ||||
| 
 | ||||
| 	" {{{ title | ||||
| 	if g:Tex_FoldedMisc =~ '\<title\>' | ||||
| 		call AddSyntaxFoldItem ( | ||||
| 			\ '^\s*\\title\W', | ||||
| 			\ '^\s*\\maketitle', | ||||
| 			\ 0, | ||||
| 			\ 0 | ||||
| 			\ ) | ||||
| 	endif | ||||
| 	" }}} | ||||
|   | ||||
| 	" Commands and Environments {{{ | ||||
| 	" Fold the commands and environments in 2 passes. | ||||
| 	let pass = 0 | ||||
| 	while pass < 2 | ||||
| 		if pass == 0 | ||||
| 			let lst = g:Tex_FoldedCommands | ||||
| 		else | ||||
| 			let lst = g:Tex_FoldedEnvironments | ||||
| 		endif | ||||
| 		while lst != '' | ||||
| 			let i = match(lst, ',') | ||||
| 			if i > 0 | ||||
| 				let s = strpart(lst, 0, i) | ||||
| 				let lst = strpart(lst, i+1) | ||||
| 			else | ||||
| 				let s = lst | ||||
| 				let lst = '' | ||||
| 			endif | ||||
| 			if s != '' | ||||
| 				if pass == 0 | ||||
| 					" NOTE: This pattern ensures that a command which is | ||||
| 					" terminated on the same line will not start a fold. | ||||
| 					" However, it will also refuse to fold certain commands | ||||
| 					" which have not terminated. eg: | ||||
| 					" 	\commandname{something \bf{text} and  | ||||
| 					" will _not_ start a fold. | ||||
| 					" In other words, the pattern is safe, but not exact. | ||||
| 					call AddSyntaxFoldItem('^\s*\\'.s.'{[^{}]*$','^[^}]*}',0,0) | ||||
| 				else | ||||
| 					call AddSyntaxFoldItem('^\s*\\begin{'.s,'\(^\|\s\)\s*\\end{'.s,0,0) | ||||
| 				endif | ||||
| 			endif | ||||
| 		endwhile | ||||
| 		let pass = pass + 1 | ||||
| 	endwhile | ||||
| 	" }}} | ||||
| 
 | ||||
| 	" Sections {{{ | ||||
| 	if g:Tex_FoldedSections != ''  | ||||
| 		call Tex_FoldSections(g:Tex_FoldedSections, | ||||
| 			\ '^\s*\\frontmatter\|^\s*\\mainmatter\|^\s*\\backmatter\|' | ||||
| 			\. '^\s*\\begin{thebibliography\|>>>\|^\s*\\endinput\|' | ||||
| 			\. '^\s*\\begin{slide\|^\s*\\end{document') | ||||
| 	endif | ||||
| 	" }}}  | ||||
| 	 | ||||
| 	" {{{ slide | ||||
| 	if g:Tex_FoldedMisc =~ '\<slide\>' | ||||
| 		call AddSyntaxFoldItem ( | ||||
| 			\ '^\s*\\begin{slide', | ||||
| 			\ '^\s*\\appendix\W\|^\s*\\chapter\W\|^\s*\\end{slide\|^\s*\\end{document', | ||||
| 			\ 0, | ||||
| 			\ 0 | ||||
| 			\ ) | ||||
| 	endif | ||||
| 	" }}} | ||||
| 
 | ||||
| 	" {{{ preamble | ||||
| 	if g:Tex_FoldedMisc =~ '\<preamble\>' | ||||
| 		call AddSyntaxFoldItem ( | ||||
| 			\ '^\s*\\document\(class\|style\).*{', | ||||
| 			\ '^\s*\\begin{document}', | ||||
| 			\ 0, | ||||
| 			\ -1  | ||||
| 			\ ) | ||||
| 	endif | ||||
| 	" }}} | ||||
| 
 | ||||
| 	" Manually folded regions {{{ | ||||
| 	if g:Tex_FoldedMisc =~ '\(^\|,\)<<<\(,\|$\)' | ||||
| 		call AddSyntaxFoldItem ( | ||||
| 			\ '<<<', | ||||
| 			\ '>>>', | ||||
| 			\ 0, | ||||
| 			\ 0 | ||||
| 			\ ) | ||||
| 	endif | ||||
| 	" }}} | ||||
| 	 | ||||
| 	call MakeSyntaxFolds(a:force) | ||||
| 	normal! zv | ||||
| endfunction | ||||
| 
 | ||||
| " }}} | ||||
| " TexFoldTextFunction: create fold text for folds {{{ | ||||
| function! TexFoldTextFunction() | ||||
| 	let leadingSpace = matchstr('                                       ', ' \{,'.indent(v:foldstart).'}') | ||||
| 	if getline(v:foldstart) =~ '^\s*\\begin{' | ||||
| 		let header = matchstr(getline(v:foldstart), | ||||
| 							\ '^\s*\\begin{\zs\([:alpha:]*\)[^}]*\ze}') | ||||
| 		let caption = '' | ||||
| 		let label = '' | ||||
| 		let i = v:foldstart | ||||
| 		while i <= v:foldend | ||||
| 			if getline(i) =~ '\\caption' | ||||
| 				" distinguish between | ||||
| 				" \caption{fulldesc} - fulldesc will be displayed | ||||
| 				" \caption[shortdesc]{fulldesc} - shortdesc will be displayed | ||||
| 				if getline(i) =~ '\\caption\[' | ||||
| 					let caption = matchstr(getline(i), '\\caption\[\zs[^\]]*') | ||||
| 					let caption = substitute(caption, '\zs\]{.*}[^}]*$', '', '') | ||||
| 				else | ||||
| 					let caption = matchstr(getline(i), '\\caption{\zs.*') | ||||
| 					let caption = substitute(caption, '\zs}[^}]*$', '', '') | ||||
| 				end | ||||
| 			elseif getline(i) =~ '\\label' | ||||
| 				let label = matchstr(getline(i), '\\label{\zs.*') | ||||
| 				" :FIXME: this does not work when \label contains a | ||||
| 				" newline or a }-character | ||||
| 				let label = substitute(label, '\([^}]*\)}.*$', '\1', '') | ||||
| 			end | ||||
| 
 | ||||
| 			let i = i + 1 | ||||
| 		endwhile | ||||
| 
 | ||||
| 		let ftxto = foldtext() | ||||
| 		" if no caption found, then use the second line. | ||||
| 		if caption == '' | ||||
| 			let caption = getline(v:foldstart + 1) | ||||
| 		end | ||||
| 
 | ||||
| 		let retText = matchstr(ftxto, '^[^:]*').': '.header. | ||||
| 						\ ' ('.label.'): '.caption | ||||
| 		return leadingSpace.retText | ||||
| 
 | ||||
| 	elseif getline(v:foldstart) =~ '^%' && getline(v:foldstart) !~ '^%%fake' | ||||
| 		let ftxto = foldtext() | ||||
| 		return leadingSpace.substitute(ftxto, ':', ': % ', '') | ||||
| 	elseif getline(v:foldstart) =~ '^\s*\\document\(class\|style\).*{' | ||||
| 		let ftxto = leadingSpace.foldtext() | ||||
| 		return substitute(ftxto, ':', ': Preamble: ', '') | ||||
| 	else | ||||
| 		return leadingSpace.foldtext() | ||||
| 	end | ||||
| endfunction | ||||
| " }}} | ||||
| 
 | ||||
| " vim:fdm=marker:ff=unix:noet:ts=4:sw=4 | ||||
							
								
								
									
										11
									
								
								vim/vim-latex/ftplugin/latex-suite/macros/example
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										11
									
								
								vim/vim-latex/ftplugin/latex-suite/macros/example
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,11 @@ | |||
| % my long complicated macro. This is an example of how to set up a | ||||
| % tex-macro for latex-suite. simply type in the lines as you would in | ||||
| % latex. Place holders are allowed. | ||||
| % NOTE: if you have filetype indentation turned on, then do not do | ||||
| %       formatting here. the indentation will follow automatically... | ||||
| \begin{mycomplicatedenvironment} | ||||
| \mycommand1{<++>} | ||||
| \mycommand2{<+hint2+>} | ||||
| \mycommand3{<++>} | ||||
| \mycommand4{<++>} | ||||
| \end{mycomplicatedenvironment}<++> | ||||
							
								
								
									
										1042
									
								
								vim/vim-latex/ftplugin/latex-suite/main.vim
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										1042
									
								
								vim/vim-latex/ftplugin/latex-suite/main.vim
									
										
									
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										729
									
								
								vim/vim-latex/ftplugin/latex-suite/mathmacros-utf.vim
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										729
									
								
								vim/vim-latex/ftplugin/latex-suite/mathmacros-utf.vim
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,729 @@ | |||
| "============================================================================= | ||||
| " 	     File: mathmacros.vim | ||||
| "      Author: Mikolaj Machowski | ||||
| "     Created: Tue Apr 23 06:00 PM 2002 PST | ||||
| "  | ||||
| "  Description: macros for everything mathematical in latex. | ||||
| "============================================================================= | ||||
| 
 | ||||
| if !(has('gui_running') && g:Tex_MathMenus && g:Tex_Menus) | ||||
| 	finish | ||||
| endif | ||||
| 
 | ||||
| let s:MathMenuName = g:Tex_MenuPrefix.'Ma&th.' | ||||
| 
 | ||||
| function! Tex_MathMenuRemove() | ||||
| 	exe 'silent! aunmenu '.s:MathMenuName | ||||
| endfunction | ||||
| 
 | ||||
| let s:pA = 'amenu <silent> 85 '.s:MathMenuName | ||||
| 
 | ||||
| " brackets and dollars {{{ | ||||
| exe s:pA.'\\&[\ \\]                 <plug><C-r>=IMAP_PutTextWithMovement("\\[<++>\\]<++>")<cr>' | ||||
| exe s:pA.'\\&(\ \\)                 <plug><C-r>=IMAP_PutTextWithMovement("\\(<++>\\)<++>")<cr>' | ||||
| exe s:pA.'&$\ $                     <plug>$$' | ||||
| exe s:pA.'-sepmath1- :' | ||||
| " }}} | ||||
| " MATH arrows {{{ | ||||
| let s:pA1 = s:pA."&Arrows." | ||||
| exe s:pA1.'Leftarrow<Tab>⇐           <plug>\Leftarrow ' | ||||
| exe s:pA1.'leftarrow<Tab>←           <plug>\leftarrow' | ||||
| exe s:pA1.'longleftarrow<Tab>←       <plug>\longleftarrow ' | ||||
| exe s:pA1.'Longleftarrow<Tab>⇐       <plug>\Longleftarrow ' | ||||
| exe s:pA1.'rightarrow<Tab>→          <plug>\rightarrow ' | ||||
| exe s:pA1.'longrightarrow<Tab>→      <plug>\longrightarrow ' | ||||
| exe s:pA1.'Rightarrow<Tab>⇒          <plug>\Rightarrow ' | ||||
| exe s:pA1.'Longrightarrow<Tab>⇒      <plug>\Longrightarrow ' | ||||
| exe s:pA1.'leftrightarrow<Tab>⇆      <plug>\leftrightarrow ' | ||||
| exe s:pA1.'longleftrightarrow<Tab>↔  <plug>\longleftrightarrow ' | ||||
| exe s:pA1.'Leftrightarrow<Tab>⇔      <plug>\Leftrightarrow ' | ||||
| exe s:pA1.'Longleftrightarrow<Tab>⇔  <plug>\Longleftrightarrow ' | ||||
| exe s:pA1.'uparrow<Tab>↑             <plug>\uparrow ' | ||||
| exe s:pA1.'Uparrow<Tab>⇑             <plug>\Uparrow ' | ||||
| exe s:pA1.'downarrow<Tab>↓           <plug>\downarrow ' | ||||
| exe s:pA1.'Downarrow<Tab>⇓           <plug>\Downarrow ' | ||||
| exe s:pA1.'updownarrow<Tab>↕         <plug>\updownarrow ' | ||||
| exe s:pA1.'Updownarrow<Tab>⇕         <plug>\Updownarrow ' | ||||
| exe s:pA1.'nearrow<Tab>↗             <plug>\nearrow ' | ||||
| exe s:pA1.'searrow<Tab>↘             <plug>\searrow ' | ||||
| exe s:pA1.'swarrow<Tab>↙             <plug>\swarrow ' | ||||
| exe s:pA1.'nwarrow<Tab>↖             <plug>\nwarrow ' | ||||
| exe s:pA1.'mapsto<Tab>↦              <plug>\mapsto ' | ||||
| exe s:pA1.'leadsto<Tab>↝             <plug>\leadsto ' | ||||
| exe s:pA1.'longmapsto<Tab>⇖          <plug>\longmapsto ' | ||||
| exe s:pA1.'hookleftarrow<Tab>↩       <plug>\hookleftarrow ' | ||||
| exe s:pA1.'hookrightarrow<Tab>↪      <plug>\hookrightarrow ' | ||||
| exe s:pA1.'leftharpoonup<Tab>↼       <plug>\leftharpoonup ' | ||||
| exe s:pA1.'leftharpoondown<Tab>↽     <plug>\leftharpoondown ' | ||||
| exe s:pA1.'rightharpoonup<Tab>⇀      <plug>\rightharpoonup ' | ||||
| exe s:pA1.'rightharpoondown<Tab>⇁    <plug>\rightharpoondown ' | ||||
| exe s:pA1.'rightleftharpoons<Tab>⇌   <plug>\rightleftharpoons ' | ||||
| exe s:pA1.'overleftarrow<Tab>        <plug>\overleftarrow ' | ||||
| exe s:pA1.'overrightarrow<Tab>       <plug>\overrightarrow ' | ||||
| exe s:pA1.'overleftrightarrow<Tab>   <plug>\overleftrightarrow ' | ||||
| exe s:pA1.'underleftarrow<Tab>       <plug>\underleftarrow ' | ||||
| exe s:pA1.'underrightarrow<Tab>      <plug>\underrightarrow ' | ||||
| exe s:pA1.'underleftrightarrow<Tab>  <plug>\underleftrightarrow ' | ||||
| exe s:pA1.'xleftarrow<Tab>           <plug>\xleftarrow ' | ||||
| exe s:pA1.'xrightarrow<Tab>          <plug>\xrightarrow ' | ||||
| " }}} | ||||
| " MATH Arrows2 {{{ | ||||
| let s:pA1a = s:pA."Arrows2." | ||||
| exe s:pA1a.'dashleftarrow<Tab>⇠       <plug>\dashleftarrow ' | ||||
| exe s:pA1a.'leftleftarrows<Tab>⇇      <plug>\leftleftarrows ' | ||||
| exe s:pA1a.'leftrightarrows<Tab>⇆     <plug>\leftrightarrows ' | ||||
| exe s:pA1a.'Lleftarrow<Tab>⇚          <plug>\Lleftarrow ' | ||||
| exe s:pA1a.'twoheadleftarrow<Tab>↞    <plug>\twoheadleftarrow ' | ||||
| exe s:pA1a.'leftarrowtail<Tab>↢       <plug>\leftarrowtail ' | ||||
| exe s:pA1a.'leftrightharpoons<Tab>⇋   <plug>\leftrightharpoons ' | ||||
| exe s:pA1a.'Lsh<Tab>↰                 <plug>\Lsh ' | ||||
| exe s:pA1a.'looparrowleft<Tab>↫       <plug>\looparrowleft ' | ||||
| exe s:pA1a.'curvearrowleft<Tab>↶      <plug>\curvearrowleft ' | ||||
| exe s:pA1a.'circlearrowleft<Tab>↺     <plug>\circlearrowleft ' | ||||
| exe s:pA1a.'dashrightarrow<Tab>⇢      <plug>\dashrightarrow ' | ||||
| exe s:pA1a.'rightrightarrows<Tab>⇉    <plug>\rightrightarrows ' | ||||
| exe s:pA1a.'rightleftarrows<Tab>⇄     <plug>\rightleftarrows ' | ||||
| exe s:pA1a.'Rrightarrow<Tab>⇛         <plug>\Rrightarrow ' | ||||
| exe s:pA1a.'twoheadrightarrow<Tab>↠   <plug>\twoheadrightarrow ' | ||||
| exe s:pA1a.'rightarrowtail<Tab>↣      <plug>\rightarrowtail ' | ||||
| exe s:pA1a.'rightleftharpoons<Tab>⇌   <plug>\rightleftharpoons ' | ||||
| exe s:pA1a.'Rsh<Tab>↱                 <plug>\Rsh ' | ||||
| exe s:pA1a.'looparrowright<Tab>↬      <plug>\looparrowright ' | ||||
| exe s:pA1a.'curvearrowright<Tab>↷     <plug>\curvearrowright ' | ||||
| exe s:pA1a.'circlearrowright<Tab>↻    <plug>\circlearrowright ' | ||||
| exe s:pA1a.'multimap<Tab>⊸            <plug>\multimap ' | ||||
| exe s:pA1a.'upuparrows<Tab>⇈          <plug>\upuparrows ' | ||||
| exe s:pA1a.'downdownarrows<Tab>⇊      <plug>\downdownarrows ' | ||||
| exe s:pA1a.'upharpoonleft<Tab>↿       <plug>\upharpoonleft ' | ||||
| exe s:pA1a.'upharpoonright<Tab>↾      <plug>\upharpoonright ' | ||||
| exe s:pA1a.'downharpoonleft<Tab>⇃     <plug>\downharpoonleft ' | ||||
| exe s:pA1a.'downharpoonright<Tab>⇂    <plug>\downharpoonright ' | ||||
| exe s:pA1a.'rightsquigarrow<Tab>⇝     <plug>\rightsquigarrow ' | ||||
| exe s:pA1a.'leftrightsquigarrow<Tab>↭ <plug>\leftrightsquigarrow ' | ||||
| " }}} | ||||
| " MATH nArrows {{{ | ||||
| let s:pA1b = s:pA."&nArrows." | ||||
| exe s:pA1b.'nleftarrow<Tab>↚          <plug>\nleftarrow ' | ||||
| exe s:pA1b.'nLeftarrow<Tab>⇍          <plug>\nLeftarrow ' | ||||
| exe s:pA1b.'nleftrightarrow<Tab>↮     <plug>\nleftrightarrow ' | ||||
| exe s:pA1b.'nLeftrightarrow<Tab>⇎     <plug>\nleftrightarrow ' | ||||
| exe s:pA1b.'nrightarrow<Tab>↛         <plug>\nrightarrow ' | ||||
| exe s:pA1b.'nRightarrow<Tab>⇏         <plug>\nRightarrow ' | ||||
| " }}} | ||||
| " MATH Fonts {{{ | ||||
| let s:pA2a = s:pA."&MathFonts." | ||||
| exe s:pA2a.'mathbf{}                <plug><C-r>=IMAP_PutTextWithMovement("\\mathbf{<++>}<++>")<cr>' | ||||
| exe s:pA2a.'mathrm{}                <plug><C-r>=IMAP_PutTextWithMovement("\\mathrm{<++>}<++>")<cr>' | ||||
| exe s:pA2a.'mathsf{}                <plug><C-r>=IMAP_PutTextWithMovement("\\mathsf{<++>}<++>")<cr>' | ||||
| exe s:pA2a.'mathtt{}                <plug><C-r>=IMAP_PutTextWithMovement("\\mathtt{<++>}<++>")<cr>' | ||||
| exe s:pA2a.'mathit{}                <plug><C-r>=IMAP_PutTextWithMovement("\\mathit{<++>}<++>")<cr>' | ||||
| exe s:pA2a.'mathfrak{}              <plug><C-r>=IMAP_PutTextWithMovement("\\mathfrak{<++>}<++>")<cr>' | ||||
| exe s:pA2a.'mathcal{}               <plug><C-r>=IMAP_PutTextWithMovement("\\mathcal{<++>}<++>")<cr>' | ||||
| exe s:pA2a.'mathscr{}               <plug><C-r>=IMAP_PutTextWithMovement("\\mathscr{<++>}<++>")<cr>' | ||||
| exe s:pA2a.'mathbb{}                <plug><C-r>=IMAP_PutTextWithMovement("\\mathbb{<++>}<++>")<cr>' | ||||
| " }}} | ||||
| " Greek Letters small {{{ | ||||
| let s:pA2 = s:pA."&Greek.&Small." | ||||
| exe s:pA2.'alpha<Tab>`a\ \ α       <plug>\alpha ' | ||||
| exe s:pA2.'beta<Tab>`b\ \ β        <plug>\beta ' | ||||
| exe s:pA2.'gamma<Tab>`g\ \ γ       <plug>\gamma ' | ||||
| exe s:pA2.'delta<Tab>`d\ \ δ       <plug>\delta ' | ||||
| exe s:pA2.'epsilon<Tab>∊           <plug>\epsilon ' | ||||
| exe s:pA2.'varepsilon<Tab>`e\ \ ε  <plug>\varepsilon ' | ||||
| exe s:pA2.'zeta<Tab>`z\ \ ζ        <plug>\zeta ' | ||||
| exe s:pA2.'eta<Tab>`h\ \ η         <plug>\eta ' | ||||
| exe s:pA2.'theta<Tab>`q\ \ θ       <plug>\theta ' | ||||
| exe s:pA2.'vartheta<Tab>ϑ          <plug>\vartheta ' | ||||
| exe s:pA2.'iota<Tab>`i\ \ ι        <plug>\iota ' | ||||
| exe s:pA2.'kappa<Tab>`k\ \ κ       <plug>\kappa ' | ||||
| exe s:pA2.'lambda<Tab>`l\ \ λ      <plug>\lambda ' | ||||
| exe s:pA2.'mu<Tab>`m\ \ μ          <plug>\mu ' | ||||
| exe s:pA2.'nu<Tab>`n\ \ ν          <plug>\nu ' | ||||
| exe s:pA2.'xi<Tab>`x\ \ ξ          <plug>\xi ' | ||||
| exe s:pA2.'pi<Tab>`p\ \ π          <plug>\pi ' | ||||
| exe s:pA2.'varpi<Tab>ϖ             <plug>\varpi ' | ||||
| exe s:pA2.'rho<Tab>`r\ \ ρ         <plug>\rho ' | ||||
| exe s:pA2.'varrho<Tab>ϱ            <plug>\varrho ' | ||||
| exe s:pA2.'sigma<Tab>`s\ \ σ       <plug>\sigma ' | ||||
| exe s:pA2.'varsigma<Tab>`v\ \ ς    <plug>\varsigma ' | ||||
| exe s:pA2.'tau<Tab>`t\ \ τ         <plug>\tau ' | ||||
| exe s:pA2.'upsilon<Tab>`u\ \ υ     <plug>\upsilon ' | ||||
| exe s:pA2.'phi<Tab>φ               <plug>\phi ' | ||||
| exe s:pA2.'varphi<Tab>`f\ \ ϕ      <plug>\varphi ' | ||||
| exe s:pA2.'chi<Tab>`c\ \ χ         <plug>\chi ' | ||||
| exe s:pA2.'psi<Tab>`y\ \ ψ         <plug>\psi ' | ||||
| exe s:pA2.'omega<Tab>`w\ \ ω       <plug>\omega ' | ||||
| " }}} | ||||
| " Greek Letters big {{{ | ||||
| let s:pA3 = s:pA.'&Greek.&Big.'  | ||||
| exe s:pA3.'Alpha<Tab>`A\ \ A        <plug>\Alpha ' | ||||
| exe s:pA3.'Beta<Tab>`B\ \ B         <plug>\Beta ' | ||||
| exe s:pA3.'Gamma<Tab>`G\ \ Γ        <plug>\Gamma ' | ||||
| exe s:pA3.'Delta<Tab>`D\ \ Δ        <plug>\Delta ' | ||||
| exe s:pA3.'Epsilon<Tab>`E\ \ E      <plug>\Epsilon ' | ||||
| exe s:pA3.'Zeta<Tab>`Z\ \ Z         <plug>\mathrm{Z} ' | ||||
| exe s:pA3.'Eta<Tab>`H\ \ H          <plug>\Eta ' | ||||
| exe s:pA3.'Theta<Tab>Θ              <plug>\Theta ' | ||||
| exe s:pA3.'Iota<Tab>I               <plug>\mathrm{I} ' | ||||
| exe s:pA3.'Kappa<Tab>`K\ \ K        <plug>\Kappa ' | ||||
| exe s:pA3.'Lambda<Tab>`L\ \ Λ       <plug>\Lambda ' | ||||
| exe s:pA3.'Mu<Tab>`M\ \ M           <plug>\Mu ' | ||||
| exe s:pA3.'Nu<Tab>`N\ \ N           <plug>\Nu ' | ||||
| exe s:pA3.'Xi<Tab>`X\ \ Ξ           <plug>\Xi ' | ||||
| exe s:pA3.'Pi<Tab>`P\ \ Π           <plug>\Pi ' | ||||
| exe s:pA3.'Rho<Tab>`R\ \ P          <plug>\Rho ' | ||||
| exe s:pA3.'Sigma<Tab>`S\ \ Σ        <plug>\Sigma ' | ||||
| exe s:pA3.'Tau<Tab>`T\ \ T          <plug>\Tau ' | ||||
| exe s:pA3.'Upsilon<Tab>`U\ \ Y      <plug>\Upsilon ' | ||||
| exe s:pA3.'Phi<Tab>Φ                <plug>\Phi ' | ||||
| exe s:pA3.'Chi<Tab>`C\ \ X          <plug>\Chi ' | ||||
| exe s:pA3.'Psi<Tab>`Y\ \ Ψ          <plug>\Psi ' | ||||
| exe s:pA3.'Omega<Tab>`W\ \ Ω        <plug>\Omega ' | ||||
| " }}} | ||||
| " BinaryRel1 {{{ | ||||
| let s:pA4 = s:pA."&BinaryRel1."   | ||||
| exe s:pA4.'ll<Tab>≪                    <plug>\ll ' | ||||
| exe s:pA4.'lll<Tab>⋘                   <plug>\lll ' | ||||
| exe s:pA4.'leqslant<Tab>≤              <plug>\leqslant ' | ||||
| exe s:pA4.'leq<Tab>≤                   <plug>\leq ' | ||||
| exe s:pA4.'leqq<Tab>≦                  <plug>\leqq ' | ||||
| exe s:pA4.'eqslantless<Tab>⋜            <plug>\eqslantless ' | ||||
| exe s:pA4.'lessdot<Tab>⋖               <plug>\lessdot ' | ||||
| exe s:pA4.'prec<Tab>≺                  <plug>\prec ' | ||||
| exe s:pA4.'preceq<Tab>≼                <plug>\preceq ' | ||||
| exe s:pA4.'preccurlyeq<Tab>≼           <plug>\preccurlyeq ' | ||||
| exe s:pA4.'curlyeqprec<Tab>⋞           <plug>\curlyeqprec ' | ||||
| exe s:pA4.'lesssim<Tab>≲                 <plug>\lesssim ' | ||||
| exe s:pA4.'lessapprox<Tab>             <plug>\lessapprox ' | ||||
| exe s:pA4.'precsim<Tab>≾               <plug>\precsim ' | ||||
| exe s:pA4.'precapprox<Tab>             <plug>\precapprox ' | ||||
| exe s:pA4.'in<Tab>∈                    <plug>\in ' | ||||
| exe s:pA4.'subset<Tab>`(\ \ ⊂          <plug>\subset ' | ||||
| exe s:pA4.'Subset<Tab>`)\ \ ⋐          <plug>\Subset ' | ||||
| exe s:pA4.'subseteq<Tab>⊆              <plug>\subseteq ' | ||||
| exe s:pA4.'subseteqq<Tab>              <plug>\subseteqq ' | ||||
| exe s:pA4.'sqsubset<Tab>⊏              <plug>\sqsubset ' | ||||
| exe s:pA4.'sqsubseteq<Tab>⊑            <plug>\sqsubseteq ' | ||||
| exe s:pA4.'smile<Tab>⌣                 <plug>\smile ' | ||||
| exe s:pA4.'smallsmile<Tab>⌣             <plug>\smallsmile ' | ||||
| exe s:pA4.'parallel<Tab>∥              <plug>\parallel ' | ||||
| exe s:pA4.'shortparallel<Tab>∥         <plug>\shortparallel ' | ||||
| exe s:pA4.'dashv<Tab>⊣                 <plug>\dashv ' | ||||
| exe s:pA4.'vdash<Tab>⊢                 <plug>\vdash ' | ||||
| exe s:pA4.'vDash<Tab>⊨                 <plug>\vDash ' | ||||
| exe s:pA4.'models<Tab>⊨                <plug>\models ' | ||||
| exe s:pA4.'therefore<Tab>∴             <plug>\therefore ' | ||||
| exe s:pA4.'backepsilon<Tab>∍           <plug>\backepsilon ' | ||||
| " }}} | ||||
| " nBinaryRel1 {{{  | ||||
| let s:pA4a = s:pA."&nBinaryRel1."   | ||||
| exe s:pA4a.'nless<Tab>≮                  <plug>\nless ' | ||||
| exe s:pA4a.'nleqslant<Tab>≰              <plug>\nleqslant ' | ||||
| exe s:pA4a.'nleq<Tab>                   <plug>\nleq ' | ||||
| exe s:pA4a.'lneq<Tab>                   <plug>\lneq ' | ||||
| exe s:pA4a.'nleqq<Tab>                  <plug>\nleqq ' | ||||
| exe s:pA4a.'lneqq<Tab>≨                  <plug>\lneqq ' | ||||
| exe s:pA4a.'lvertneqq<Tab>              <plug>\lvertneqq ' | ||||
| exe s:pA4a.'nprec<Tab>⊀                  <plug>\nprec ' | ||||
| exe s:pA4a.'npreceq<Tab>⋠                <plug>\npreceq ' | ||||
| exe s:pA4a.'precneqq<Tab>               <plug>\precneqq ' | ||||
| exe s:pA4a.'lnsim<Tab>⋦                  <plug>\lnsim ' | ||||
| exe s:pA4a.'lnapprox<Tab>               <plug>\lnapprox ' | ||||
| exe s:pA4a.'precnsim<Tab>⋨               <plug>\precnsim ' | ||||
| exe s:pA4a.'precnapprox<Tab>            <plug>\precnapprox ' | ||||
| exe s:pA4a.'notin<Tab>∉                  <plug>\notin ' | ||||
| exe s:pA4a.'nsubseteq<Tab>⊈              <plug>\nsubseteq ' | ||||
| exe s:pA4a.'varsubsetneq<Tab>           <plug>\varsubsetneq ' | ||||
| exe s:pA4a.'subsetneq<Tab>⊊              <plug>\subsetneq ' | ||||
| exe s:pA4a.'nsubseteqq<Tab>             <plug>\nsubseteqq ' | ||||
| exe s:pA4a.'varsubsetneqq<Tab>          <plug>\varsubsetneqq ' | ||||
| exe s:pA4a.'subsetneqq<Tab>⊈             <plug>\subsetneqq ' | ||||
| exe s:pA4a.'nparallel<Tab>∦              <plug>\nparallel ' | ||||
| exe s:pA4a.'nshortparallel<Tab>         <plug>\nshortparallel ' | ||||
| exe s:pA4a.'nvdash<Tab>⊬                 <plug>\nvdash ' | ||||
| exe s:pA4a.'nvDash<Tab>⊭                 <plug>\nvDash ' | ||||
| " }}} | ||||
| " BinaryRel2 {{{  | ||||
| let s:pA5 = s:pA."&BinaryRel2."   | ||||
| exe s:pA5.'gg<Tab>≫                      <plug>\gg ' | ||||
| exe s:pA5.'ggg<Tab>⋙                     <plug>\ggg ' | ||||
| exe s:pA5.'gggtr<Tab>⋙                    <plug>\gggtr ' | ||||
| exe s:pA5.'geqslant<Tab>                 <plug>\geqslant ' | ||||
| exe s:pA5.'geq<Tab>≥                     <plug>\geq ' | ||||
| exe s:pA5.'geqq<Tab>≧                    <plug>\geqq ' | ||||
| exe s:pA5.'eqslantgtr<Tab>               <plug>\eqslantgtr ' | ||||
| exe s:pA5.'gtrdot<Tab>⋗                  <plug>\gtrdot ' | ||||
| exe s:pA5.'succ<Tab>≻                    <plug>\succ ' | ||||
| exe s:pA5.'succeq<Tab>≽                  <plug>\succeq ' | ||||
| exe s:pA5.'succcurlyeq<Tab>≽             <plug>\succcurlyeq ' | ||||
| exe s:pA5.'curlyeqsucc<Tab>⋟             <plug>\curlyeqsucc ' | ||||
| exe s:pA5.'gtrsim<Tab>≳                  <plug>\gtrsim ' | ||||
| exe s:pA5.'gtrapprox<Tab>                <plug>\gtrapprox ' | ||||
| exe s:pA5.'succsim<Tab>≿                 <plug>\succsim ' | ||||
| exe s:pA5.'succapprox<Tab>               <plug>\succapprox ' | ||||
| exe s:pA5.'ni<Tab>∋                      <plug>\ni ' | ||||
| exe s:pA5.'owns<Tab>                     <plug>\owns ' | ||||
| exe s:pA5.'supset<Tab>⊃                  <plug>\supset ' | ||||
| exe s:pA5.'Supset<Tab>⋑                  <plug>\Supset ' | ||||
| exe s:pA5.'supseteq<Tab>⊇                <plug>\supseteq ' | ||||
| exe s:pA5.'supseteqq<Tab>                <plug>\supseteqq ' | ||||
| exe s:pA5.'sqsupset<Tab>⊐                <plug>\sqsupset ' | ||||
| exe s:pA5.'sqsupseteq<Tab>⊒              <plug>\sqsupseteq ' | ||||
| exe s:pA5.'frown<Tab>⌢                   <plug>\frown ' | ||||
| exe s:pA5.'smallfrown<Tab>⌢              <plug>\smallfrown ' | ||||
| exe s:pA5.'mid<Tab>∣                     <plug>\mid ' | ||||
| exe s:pA5.'shortmid<Tab>                 <plug>\shortmid ' | ||||
| exe s:pA5.'between<Tab>≬                 <plug>\between ' | ||||
| exe s:pA5.'Vdash<Tab>⊩                   <plug>\Vdash ' | ||||
| exe s:pA5.'bowtie<Tab>⋈                  <plug>\bowtie ' | ||||
| exe s:pA5.'Join<Tab>⋈                    <plug>\Join ' | ||||
| exe s:pA5.'pitchfork<Tab>⋔               <plug>\pitchfork ' | ||||
| " }}} | ||||
| " {{{ nBinaryRel2 | ||||
| let s:pA5a = s:pA."n&BinaryRel2."  "TODO: dorobiæ logarytmy | ||||
| exe s:pA5a.'ngtr<Tab>≯                   <plug>\ngtr ' | ||||
| exe s:pA5a.'ngeqslant<Tab>≱              <plug>\ngeqslant ' | ||||
| exe s:pA5a.'ngeq<Tab>                   <plug>\ngeq ' | ||||
| exe s:pA5a.'gneq<Tab>                   <plug>\gneq ' | ||||
| exe s:pA5a.'ngeqq<Tab>                  <plug>\ngeqq ' | ||||
| exe s:pA5a.'gneqq<Tab>≩                  <plug>\gneqq ' | ||||
| exe s:pA5a.'nsucc<Tab>⊁                  <plug>\nsucc ' | ||||
| exe s:pA5a.'nsucceq<Tab>⋡                <plug>\nsucceq ' | ||||
| exe s:pA5a.'succneqq<Tab>                <plug>\succneqq ' | ||||
| exe s:pA5a.'gnsim<Tab>⋧                  <plug>\gnsim ' | ||||
| exe s:pA5a.'gnapprox<Tab>               <plug>\gnapprox ' | ||||
| exe s:pA5a.'succnsim<Tab>⋩               <plug>\succnsim ' | ||||
| exe s:pA5a.'succnapprox<Tab>            <plug>\succnapprox ' | ||||
| exe s:pA5a.'nsupseteq<Tab>⊉              <plug>\nsupseteq ' | ||||
| exe s:pA5a.'varsupsetneq<Tab>           <plug>\varsupsetneq ' | ||||
| exe s:pA5a.'supsetneq<Tab>⊋              <plug>\supsetneq ' | ||||
| exe s:pA5a.'nsupseteqq<Tab>             <plug>\nsupseteqq ' | ||||
| exe s:pA5a.'varsupsetneqq<Tab>          <plug>\varsupsetneqq ' | ||||
| exe s:pA5a.'supsetneqq<Tab>             <plug>\supsetneqq ' | ||||
| exe s:pA5a.'nmid<Tab>∤                   <plug>\nmid ' | ||||
| exe s:pA5a.'nshortmid<Tab>              <plug>\nshortmid ' | ||||
| exe s:pA5a.'nVdash<Tab>⊮                 <plug>\nVdash ' | ||||
| " }}} | ||||
| " {{{ BinaryRel3 | ||||
| let s:pA6 = s:pA."&BinaryRel3."   | ||||
| exe s:pA6.'doteq<Tab>≐                   <plug>\doteq ' | ||||
| exe s:pA6.'circeq<Tab>≗                  <plug>\circeq ' | ||||
| exe s:pA6.'eqcirc<Tab>≖                  <plug>\eqcirc ' | ||||
| exe s:pA6.'risingdotseq<Tab>≓            <plug>\risingdotseq ' | ||||
| exe s:pA6.'doteqdot<Tab>≑                <plug>\doteqdot ' | ||||
| exe s:pA6.'Doteq<Tab>≑                   <plug>\Doteq ' | ||||
| exe s:pA6.'fallingdotseq<Tab>≒           <plug>\fallingdotseq ' | ||||
| exe s:pA6.'triangleq<Tab>≜               <plug>\triangleq ' | ||||
| exe s:pA6.'bumpeq<Tab>≏                  <plug>\bumpeq ' | ||||
| exe s:pA6.'Bumpeq<Tab>≎                  <plug>\Bumpeq ' | ||||
| exe s:pA6.'equiv<Tab>`=\ \ ≡             <plug>\equiv ' | ||||
| exe s:pA6.'sim<Tab>∼                     <plug>\sim ' | ||||
| exe s:pA6.'thicksim<Tab>∼                <plug>\thicksim ' | ||||
| exe s:pA6.'backsim<Tab>∽                 <plug>\backsim ' | ||||
| exe s:pA6.'simeq<Tab>≃                   <plug>\simeq ' | ||||
| exe s:pA6.'backsimeq<Tab>⋍               <plug>\backsimeq ' | ||||
| exe s:pA6.'cong<Tab>≅                    <plug>\cong ' | ||||
| exe s:pA6.'approx<tab>=~\ \ ≈            <plug>\approx ' | ||||
| exe s:pA6.'thickapprox<Tab>≈             <plug>\thickapprox ' | ||||
| exe s:pA6.'approxeq<Tab>≊                <plug>\approxeq ' | ||||
| exe s:pA6.'blacktriangleleft<Tab>◀       <plug>\blacktriangleleft ' | ||||
| exe s:pA6.'vartriangleleft<Tab>⊲         <plug>\vartriangleleft ' | ||||
| exe s:pA6.'trianglelefteq<Tab>⊴          <plug>\trianglelefteq ' | ||||
| exe s:pA6.'blacktriangleright<Tab>▶      <plug>\blacktriangleright ' | ||||
| exe s:pA6.'vartriangleright<Tab>⊳        <plug>\vartriangleright ' | ||||
| exe s:pA6.'trianglerighteq<Tab>⊵         <plug>\trianglerighteq ' | ||||
| exe s:pA6.'perp<Tab>⊥                    <plug>\perp ' | ||||
| exe s:pA6.'asymp<Tab>≍                   <plug>\asymp ' | ||||
| exe s:pA6.'Vvdash<Tab>⊪                  <plug>\Vvdash ' | ||||
| exe s:pA6.'propto<Tab>∝                  <plug>\propto ' | ||||
| exe s:pA6.'varpropto<Tab>∝               <plug>\varpropto ' | ||||
| exe s:pA6.'because<Tab>∵                 <plug>\because ' | ||||
| " }}} | ||||
| " {{{ nBinaryRel3 | ||||
| let s:pA6a = s:pA."&nBinaryRel3." | ||||
| exe s:pA6a.'neq<Tab>≠                    <plug>\neq ' | ||||
| exe s:pA6a.'nsim<Tab>≁                   <plug>\nsim ' | ||||
| exe s:pA6a.'ncong<Tab>≆                  <plug>\ncong ' | ||||
| exe s:pA6a.'ntriangleleft<Tab>⋪          <plug>\ntriangleleft ' | ||||
| exe s:pA6a.'ntrianglelefteq<Tab>⋬        <plug>\ntrianglelefteq ' | ||||
| exe s:pA6a.'ntriangleright<Tab>⋫         <plug>\ntriangleright ' | ||||
| exe s:pA6a.'ntrianglerighteq<Tab>⋭       <plug>\ntrianglerighteq ' | ||||
| " }}} | ||||
| " {{{ BinaryRel4 | ||||
| let s:pA7 = s:pA."&BinaryRel4."   | ||||
| exe s:pA7.'lessgtr<Tab>≶                 <plug>\lessgtr ' | ||||
| exe s:pA7.'gtrless<Tab>≷                 <plug>\gtrless ' | ||||
| exe s:pA7.'lesseqgtr<Tab>⋚               <plug>\lesseqgtr ' | ||||
| exe s:pA7.'gtreqless<Tab>⋛               <plug>\gtreqless ' | ||||
| exe s:pA7.'lesseqqgtr<Tab>              <plug>\lesseqqgtr ' | ||||
| exe s:pA7.'gtreqqless<Tab>              <plug>\gtreqqless ' | ||||
| " }}} | ||||
| " {{{ BigOp | ||||
| let s:pA8a = s:pA."&BigOp." | ||||
| exe s:pA8a.'limits<Tab>                 <plug>\limits' | ||||
| exe s:pA8a.'nolimits<Tab>               <plug>\nolimits' | ||||
| exe s:pA8a.'displaylimits<Tab>          <plug>\displaylimits' | ||||
| exe s:pA8a.'-seplimits- :' | ||||
| exe s:pA8a.'bigcap<Tab>`-\ \ ⋂           <plug>\bigcap' | ||||
| exe s:pA8a.'bigcup<Tab>`+\ \ ⋃        <plug>\bigcup' | ||||
| exe s:pA8a.'bigodot<Tab>⊙                <plug>\bigodot' | ||||
| exe s:pA8a.'bigoplus<Tab>⊕               <plug>\bigoplus' | ||||
| exe s:pA8a.'bigotimes<Tab>⊗              <plug>\bigotimes' | ||||
| exe s:pA8a.'bigsqcup<Tab>⊔               <plug>\bigsqcup' | ||||
| exe s:pA8a.'biguplus<Tab>⊎               <plug>\biguplus' | ||||
| exe s:pA8a.'bigvee<Tab>⋁                 <plug>\bigvee' | ||||
| exe s:pA8a.'bigwedge<Tab>⋀               <plug>\bigwedge' | ||||
| exe s:pA8a.'coprod<Tab>∐                 <plug>\coprod' | ||||
| exe s:pA8a.'int<Tab>∫                    <plug>\int' | ||||
| exe s:pA8a.'iint<Tab>∬                   <plug>\int' | ||||
| exe s:pA8a.'iiint<Tab>∭                  <plug>\int' | ||||
| exe s:pA8a.'oint<Tab>∮                   <plug>\oint' | ||||
| exe s:pA8a.'prod<Tab>∏                   <plug>\prod' | ||||
| exe s:pA8a.'sum<Tab>∑                    <plug>\sum' | ||||
| " }}} | ||||
| " {{{ BinaryOp | ||||
| let s:pA8 = s:pA."&BinaryOp." | ||||
| exe s:pA8.'pm<Tab>±                      <plug>\pm ' | ||||
| exe s:pA8.'mp<Tab>∓                      <plug>\mp ' | ||||
| exe s:pA8.'dotplus<Tab>∔                 <plug>\dotplus ' | ||||
| exe s:pA8.'cdot<Tab>`.\ \ ⋅              <plug>\cdot ' | ||||
| exe s:pA8.'centerdot<Tab>⋅               <plug>\centerdot ' | ||||
| exe s:pA8.'times<Tab>`*\ \ ×             <plug>\times ' | ||||
| exe s:pA8.'ltimes<Tab>⋉                  <plug>\ltimes ' | ||||
| exe s:pA8.'rtimes<Tab>⋊                  <plug>\rtimes ' | ||||
| exe s:pA8.'leftthreetimes<Tab>⋋          <plug>\leftthreetimes ' | ||||
| exe s:pA8.'rightthreetimes<Tab>⋌         <plug>\rightthreetimes ' | ||||
| exe s:pA8.'div<Tab>÷                     <plug>\div ' | ||||
| exe s:pA8.'divideontimes<Tab>⋇           <plug>\divideontimes ' | ||||
| exe s:pA8.'bmod<Tab>                     <plug>\bmod ' | ||||
| exe s:pA8.'ast<Tab>∗                     <plug>\ast ' | ||||
| exe s:pA8.'star<Tab>⋆                    <plug>\star ' | ||||
| exe s:pA8.'setminus<Tab>`\\\ \ ∖         <plug>\setminus ' | ||||
| exe s:pA8.'smallsetminus<Tab>∖           <plug>\smallsetminus ' | ||||
| exe s:pA8.'diamond<Tab>⋄                 <plug>\diamond ' | ||||
| exe s:pA8.'wr<Tab>≀                      <plug>\wr ' | ||||
| exe s:pA8.'intercal<Tab>⊺                <plug>\intercal ' | ||||
| exe s:pA8.'circ<Tab>`@\ \ ∘              <plug>\circ ' | ||||
| exe s:pA8.'bigcirc<Tab>○                 <plug>\bigcirc ' | ||||
| exe s:pA8.'bullet<Tab>∙                  <plug>\bullet ' | ||||
| exe s:pA8.'cap<Tab>∩                     <plug>\cap ' | ||||
| exe s:pA8.'Cap<Tab>⋒                     <plug>\Cap ' | ||||
| exe s:pA8.'cup<Tab>∪                     <plug>\cup ' | ||||
| exe s:pA8.'Cup<Tab>⋓                     <plug>\Cup ' | ||||
| exe s:pA8.'sqcap<Tab>⊓                   <plug>\sqcap ' | ||||
| exe s:pA8.'sqcup<Tab>⊔                   <plug>\sqcup' | ||||
| exe s:pA8.'amalg<Tab>                    <plug>\amalg ' | ||||
| exe s:pA8.'uplus<Tab>⊎                   <plug>\uplus ' | ||||
| exe s:pA8.'triangleleft<Tab>◁            <plug>\triangleleft ' | ||||
| exe s:pA8.'triangleright<Tab>▷           <plug>\triangleright ' | ||||
| exe s:pA8.'bigtriangleup<Tab>△           <plug>\bigtriangleup ' | ||||
| exe s:pA8.'bigtriangledown<Tab>▽         <plug>\bigtriangledown ' | ||||
| exe s:pA8.'vee<Tab>∨                     <plug>\vee ' | ||||
| exe s:pA8.'veebar<Tab>⊻                  <plug>\veebar ' | ||||
| exe s:pA8.'curlyvee<Tab>⋎                <plug>\curlyvee ' | ||||
| exe s:pA8.'wedge<Tab>`&\ \ ∧             <plug>\wedge ' | ||||
| exe s:pA8.'barwedge<Tab>⊼                <plug>\barwedge ' | ||||
| exe s:pA8.'doublebarwedge<Tab>⌆          <plug>\doublebarwedge ' | ||||
| exe s:pA8.'curlywedge<Tab>⋏              <plug>\curlywedge ' | ||||
| exe s:pA8.'oplus<Tab>⊕                   <plug>\oplus ' | ||||
| exe s:pA8.'ominus<Tab>⊖                  <plug>\ominus ' | ||||
| exe s:pA8.'otimes<Tab>⊗                  <plug>\otimes ' | ||||
| exe s:pA8.'oslash<Tab>⊘                  <plug>\oslash ' | ||||
| exe s:pA8.'boxplus<Tab>⊞                 <plug>\boxplus ' | ||||
| exe s:pA8.'boxminus<Tab>⊟                <plug>\boxminus ' | ||||
| exe s:pA8.'boxtimes<Tab>⊠                <plug>\boxtimes ' | ||||
| exe s:pA8.'boxdot<Tab>⊡                  <plug>\boxdot ' | ||||
| exe s:pA8.'odot<Tab>⊙                    <plug>\odot ' | ||||
| exe s:pA8.'circledast<Tab>⊛              <plug>\circledast ' | ||||
| exe s:pA8.'circleddash<Tab>⊝             <plug>\circleddash ' | ||||
| exe s:pA8.'circledcirc<Tab>⊚             <plug>\circledcirc ' | ||||
| exe s:pA8.'dagger<Tab>†                  <plug>\dagger ' | ||||
| exe s:pA8.'ddagger<Tab>‡                 <plug>\ddagger ' | ||||
| exe s:pA8.'lhd<Tab>⊲                     <plug>\lhd ' | ||||
| exe s:pA8.'unlhd<Tab>⊴                   <plug>\unlhd ' | ||||
| exe s:pA8.'rhd<Tab>⊳                     <plug>\rhd ' | ||||
| exe s:pA8.'unrhd<Tab>⊵                   <plug>\unrhd ' | ||||
| " }}} | ||||
| " {{{ Other1 | ||||
| let s:pA9 = s:pA."&Other1." | ||||
| exe s:pA9.'hat<Tab>â                   <plug>\hat ' | ||||
| exe s:pA9.'check<Tab>ǎ                 <plug>\check ' | ||||
| exe s:pA9.'grave<Tab>à                 <plug>\grave ' | ||||
| exe s:pA9.'acute<Tab>á                 <plug>\acute ' | ||||
| exe s:pA9.'dot<Tab>ȧ                   <plug>\dot ' | ||||
| exe s:pA9.'ddot<Tab>ä                  <plug>\ddot ' | ||||
| exe s:pA9.'tilde<Tab>`,\ \ ã           <plug>\tilde ' | ||||
| exe s:pA9.'breve<Tab>ă                 <plug>\breve ' | ||||
| exe s:pA9.'bar<Tab>ā                   <plug>\bar ' | ||||
| exe s:pA9.'vec<Tab>a⃗                   <plug>\vec ' | ||||
| exe s:pA9.'aleph<Tab>א                 <plug>\aleph ' | ||||
| exe s:pA9.'hbar<Tab>ℏ                  <plug>\hbar ' | ||||
| exe s:pA9.'imath<Tab>                  <plug>\imath ' | ||||
| exe s:pA9.'jmath<Tab>                  <plug>\jmath ' | ||||
| exe s:pA9.'ell<Tab>ℓ                   <plug>\ell ' | ||||
| exe s:pA9.'wp<Tab>℘                    <plug>\wp ' | ||||
| exe s:pA9.'Re<Tab>ℜ                    <plug>\Re ' | ||||
| exe s:pA9.'Im<Tab>ℑ                    <plug>\Im ' | ||||
| exe s:pA9.'partial<Tab>∂               <plug>\partial ' | ||||
| exe s:pA9.'infty<Tab>`8\ \ ∞           <plug>\infty ' | ||||
| exe s:pA9.'prime<Tab>′                 <plug>\prime ' | ||||
| exe s:pA9.'emptyset<Tab>∅              <plug>\emptyset ' | ||||
| exe s:pA9.'nabla<Tab>∇                 <plug>\nabla ' | ||||
| exe s:pA9.'surd<Tab>√                  <plug>\surd ' | ||||
| exe s:pA9.'top<Tab>⊤                   <plug>\top ' | ||||
| exe s:pA9.'bot<Tab>⊥                   <plug>\bot ' | ||||
| exe s:pA9.'angle<Tab>∠                 <plug>\angle ' | ||||
| exe s:pA9.'triangle<Tab>△              <plug>\triangle ' | ||||
| exe s:pA9.'backslash<Tab>\\            <plug>\backslash ' | ||||
| exe s:pA9.'forall<Tab>∀                <plug>\forall ' | ||||
| exe s:pA9.'exists<Tab>∃                <plug>\exists ' | ||||
| exe s:pA9.'neg<Tab>¬                   <plug>\neg ' | ||||
| exe s:pA9.'flat<Tab>♭                  <plug>\flat ' | ||||
| exe s:pA9.'natural<Tab>♮               <plug>\natural ' | ||||
| exe s:pA9.'sharp<Tab>♯                 <plug>\sharp ' | ||||
| exe s:pA9.'clubsuit<Tab>♣              <plug>\clubsuit ' | ||||
| exe s:pA9.'diamondsuit<Tab>♢           <plug>\diamondsuit ' | ||||
| exe s:pA9.'heartsuit<Tab>♡             <plug>\heartsuit ' | ||||
| exe s:pA9.'spadesuit<Tab>♠             <plug>\spadesuit ' | ||||
| exe s:pA9.'S<Tab>§                     <plug>\S ' | ||||
| exe s:pA9.'P<Tab>¶                     <plug>\P' | ||||
| " }}} | ||||
| " {{{ MathCreating | ||||
| let s:pA10 = s:pA."&MathCreating." | ||||
| exe s:pA10.'not<Tab>                    <plug>\not' | ||||
| exe s:pA10.'mkern<Tab>                  <plug>\mkern' | ||||
| exe s:pA10.'mathbin<Tab>                <plug>\mathbin' | ||||
| exe s:pA10.'mathrel<Tab>                <plug>\mathrel' | ||||
| exe s:pA10.'stackrel<Tab>               <plug>\stackrel' | ||||
| exe s:pA10.'mathord<Tab>                <plug>\mathord' | ||||
| " }}} | ||||
| " {{{ Styles | ||||
| let s:pA11 = s:pA."&Styles." | ||||
| exe s:pA11.'displaystyle<Tab>           <plug>\displaystyle' | ||||
| exe s:pA11.'textstyle<Tab>              <plug>\textstyle' | ||||
| exe s:pA11.'scritpstyle<Tab>            <plug>\scritpstyle' | ||||
| exe s:pA11.'scriptscriptstyle<Tab>      <plug>\scriptscriptstyle' | ||||
| " }}} | ||||
| " {{{ MathDiacritics | ||||
| let s:pA12 = s:pA."&MathDiacritics." | ||||
| exe s:pA12.'acute{}<Tab>á            <plug><C-r>=IMAP_PutTextWithMovement("\\acute{<++>}<++>")<cr>' | ||||
| exe s:pA12.'bar{}<Tab>`_\ \ ā        <plug><C-r>=IMAP_PutTextWithMovement("\\bar{<++>}<++>")<cr>' | ||||
| exe s:pA12.'breve{}<Tab>ă            <plug><C-r>=IMAP_PutTextWithMovement("\\breve{<++>}<++>")<cr>' | ||||
| exe s:pA12.'check{}<Tab>ǎ            <plug><C-r>=IMAP_PutTextWithMovement("\\check{<++>}<++>")<cr>' | ||||
| exe s:pA12.'ddot{}<Tab>`:\ \ ä       <plug><C-r>=IMAP_PutTextWithMovement("\\ddot{<++>}<++>")<cr>' | ||||
| exe s:pA12.'dot{}<Tab>`;\ \ ȧ        <plug><C-r>=IMAP_PutTextWithMovement("\\dot{<++>}<++>")<cr>' | ||||
| exe s:pA12.'grave{}<Tab>à            <plug><C-r>=IMAP_PutTextWithMovement("\\grave{<++>}<++>")<cr>' | ||||
| exe s:pA12.'hat{}<Tab>`^\ \ â        <plug><C-r>=IMAP_PutTextWithMovement("\\hat{<++>}<++>")<cr>' | ||||
| exe s:pA12.'tilde{}<tab>`~\ \ ã      <plug><C-r>=IMAP_PutTextWithMovement("\\tilde{<++>}<++>")<cr>' | ||||
| exe s:pA12.'vec{}<Tab>a⃗              <plug><C-r>=IMAP_PutTextWithMovement("\\vec{<++>}<++>")<cr>' | ||||
| exe s:pA12.'widehat{}<Tab>           <plug><C-r>=IMAP_PutTextWithMovement("\\widehat{<++>}<++>")<cr>' | ||||
| exe s:pA12.'widetilde{}<Tab>         <plug><C-r>=IMAP_PutTextWithMovement("\\widetilde{<++>}<++>")<cr>' | ||||
| exe s:pA12.'imath<Tab>               <plug><C-r>=IMAP_PutTextWithMovement("\\imath")<cr>' | ||||
| exe s:pA12.'jmath<Tab>               <plug><C-r>=IMAP_PutTextWithMovement("\\jmath")<cr>' | ||||
| " }}} | ||||
| " {{{ OverlineAndCo | ||||
| let s:pA13 = s:pA."&OverlineAndCo." | ||||
| exe s:pA13.'overline{}              <plug><C-r>=IMAP_PutTextWithMovement("\\overline{}")<cr>' | ||||
| exe s:pA13.'underline{}             <plug><C-r>=IMAP_PutTextWithMovement("\\underline{}")<cr>' | ||||
| exe s:pA13.'overrightarrow{}        <plug><C-r>=IMAP_PutTextWithMovement("\\overrightarrow{}")<cr>' | ||||
| exe s:pA13.'overleftarrow{}         <plug><C-r>=IMAP_PutTextWithMovement("\\overleftarrow{}")<cr>' | ||||
| exe s:pA13.'overbrace{}             <plug><C-r>=IMAP_PutTextWithMovement("\\overbrace{}")<cr>' | ||||
| exe s:pA13.'underbrace{}            <plug><C-r>=IMAP_PutTextWithMovement("\\underbrace{}")<cr>' | ||||
| " }}} | ||||
| " {{{ Symbols1 | ||||
| let s:pA14a = s:pA."&Symbols1." | ||||
| exe s:pA14a.'forall<Tab>∀               <plug>\forall ' | ||||
| exe s:pA14a.'exists<Tab>∃               <plug>\exists ' | ||||
| exe s:pA14a.'nexists<Tab>∄              <plug>\nexists ' | ||||
| exe s:pA14a.'neg<Tab>¬                  <plug>\neg ' | ||||
| exe s:pA14a.'top<Tab>⊤                  <plug>\top ' | ||||
| exe s:pA14a.'bot<Tab>⊥                  <plug>\bot ' | ||||
| exe s:pA14a.'emptyset<Tab>∅             <plug>\emptyset ' | ||||
| exe s:pA14a.'varnothing<Tab>⌀           <plug>\varnothing ' | ||||
| exe s:pA14a.'infty<Tab>∞                <plug>\infty ' | ||||
| exe s:pA14a.'aleph<Tab>א                <plug>\aleph ' | ||||
| exe s:pA14a.'beth<Tab>ב                 <plug>\beth ' | ||||
| exe s:pA14a.'gimel<Tab>ג                <plug>\gimel ' | ||||
| exe s:pA14a.'daleth<Tab>ד               <plug>\daleth ' | ||||
| exe s:pA14a.'hbar<Tab>                  <plug>\hbar ' | ||||
| exe s:pA14a.'hslash<Tab>ℏ               <plug>\hslash ' | ||||
| exe s:pA14a.'diagup<Tab>⁄               <plug>\diagup ' | ||||
| exe s:pA14a.'vert<Tab>\|                <plug>\vert ' | ||||
| exe s:pA14a.'Vert<Tab>∥                 <plug>\Vert ' | ||||
| exe s:pA14a.'backslash<Tab>\\           <plug>\backslash ' | ||||
| exe s:pA14a.'diagdown<Tab>              <plug>\diagdown ' | ||||
| exe s:pA14a.'Bbbk<Tab>ᵕ                  <plug>\Bbbk ' | ||||
| exe s:pA14a.'P<Tab>¶                    <plug>\P ' | ||||
| exe s:pA14a.'S<Tab>§                    <plug>\S ' | ||||
| " }}} | ||||
| " {{{ Symbols2 | ||||
| let s:pA14b = s:pA."&Symbols2." | ||||
| exe s:pA14b.'#                      <plug>\# ' | ||||
| exe s:pA14b.'%                      <plug>\% ' | ||||
| exe s:pA14b.'_<Tab>                 <plug>\_ ' | ||||
| exe s:pA14b.'$                      <plug>\$ ' | ||||
| exe s:pA14b.'&                      <plug>\& ' | ||||
| exe s:pA14b.'imath<Tab>             <plug>\imath ' | ||||
| exe s:pA14b.'jmath<Tab>             <plug>\jmath ' | ||||
| exe s:pA14b.'ell<Tab>ℓ              <plug>\ell ' | ||||
| exe s:pA14b.'wp<Tab>℘               <plug>\wp ' | ||||
| exe s:pA14b.'Re<Tab>ℜ               <plug>\Re ' | ||||
| exe s:pA14b.'Im<Tab>ℑ               <plug>\Im ' | ||||
| exe s:pA14b.'prime<Tab>′            <plug>\prime ' | ||||
| exe s:pA14b.'backprime<Tab>‵        <plug>\backprime ' | ||||
| exe s:pA14b.'nabla<Tab>∇            <plug>\nabla ' | ||||
| exe s:pA14b.'surd<Tab>√             <plug>\surd ' | ||||
| exe s:pA14b.'flat<Tab>♭             <plug>\flat ' | ||||
| exe s:pA14b.'sharp<Tab>♯            <plug>\sharp ' | ||||
| exe s:pA14b.'natural<Tab>♮          <plug>\natural ' | ||||
| exe s:pA14b.'eth<Tab>ð              <plug>\eth ' | ||||
| exe s:pA14b.'bigstar<Tab>★          <plug>\bigstar ' | ||||
| exe s:pA14b.'circledS<Tab>Ⓢ         <plug>\circledS ' | ||||
| exe s:pA14b.'Finv<Tab>Ⅎ             <plug>\Finv ' | ||||
| exe s:pA14b.'dag<Tab>†              <plug>\dag ' | ||||
| exe s:pA14b.'ddag<Tab>‡             <plug>\ddag ' | ||||
| " }}} | ||||
| " {{{ Symbols3 | ||||
| let s:pA14c = s:pA."&Symbols3." | ||||
| exe s:pA14c.'angle<Tab>∠                 <plug>\angle ' | ||||
| exe s:pA14c.'measuredangle<Tab>∡         <plug>\measuredangle ' | ||||
| exe s:pA14c.'sphericalangle<Tab>∢        <plug>\sphericalangle ' | ||||
| exe s:pA14c.'spadesuit<Tab>♠             <plug>\spadesuit ' | ||||
| exe s:pA14c.'heartsuit<Tab>♡             <plug>\heartsuit ' | ||||
| exe s:pA14c.'diamondsuit<Tab>♢           <plug>\diamondsuit ' | ||||
| exe s:pA14c.'clubsuit<Tab>♣              <plug>\clubsuit ' | ||||
| exe s:pA14c.'lozenge<Tab>◊               <plug>\lozenge ' | ||||
| exe s:pA14c.'blacklozenge<Tab>◆          <plug>\blacklozenge ' | ||||
| exe s:pA14c.'Diamond<Tab>◇               <plug>\Diamond ' | ||||
| exe s:pA14c.'triangle<Tab>△              <plug>\triangle ' | ||||
| exe s:pA14c.'vartriangle<Tab>△           <plug>\vartriangle ' | ||||
| exe s:pA14c.'blacktriangle<Tab>▲         <plug>\blacktriangle ' | ||||
| exe s:pA14c.'triangledown<Tab>▽          <plug>\triangledown ' | ||||
| exe s:pA14c.'blacktriangledown<Tab>▼     <plug>\blacktriangledown ' | ||||
| exe s:pA14c.'Box<Tab>□                   <plug>\Box ' | ||||
| exe s:pA14c.'square<Tab>□                <plug>\square ' | ||||
| exe s:pA14c.'blacksquare<Tab>■           <plug>\blacksquare ' | ||||
| exe s:pA14c.'complement<Tab>∁            <plug>\complement ' | ||||
| exe s:pA14c.'mho<Tab>℧                   <plug>\mho ' | ||||
| exe s:pA14c.'Game<Tab>⅁                  <plug>\Game ' | ||||
| exe s:pA14c.'partial<Tab>`6\ \ ∂         <plug>\partial ' | ||||
| exe s:pA14c.'smallint<Tab>∫              <plug>\smallint ' | ||||
| " }}} | ||||
| " {{{ Logic | ||||
| let s:pA15 = s:pA."&Logic." | ||||
| exe s:pA15.'lnot<Tab>¬                   <plug>\lnot ' | ||||
| exe s:pA15.'lor<Tab>∨                    <plug>\lor ' | ||||
| exe s:pA15.'land<Tab>∧                   <plug>\land ' | ||||
| " }}} | ||||
| " {{{ Limits1 | ||||
| let s:pA16 = s:pA."&Limits1." | ||||
| exe s:pA16.'left<Tab>(                  <plug>\left' | ||||
| exe s:pA16.'right<Tab>)                 <plug>\right' | ||||
| exe s:pA16.'-sepbigl- :' | ||||
| exe s:pA16.'bigl<Tab>                   <plug>\bigl' | ||||
| exe s:pA16.'Bigl<Tab>                   <plug>\Bigl' | ||||
| exe s:pA16.'biggl<Tab>                  <plug>\biggl' | ||||
| exe s:pA16.'Biggl<Tab>                  <plug>\Biggl' | ||||
| exe s:pA16.'-sepbigr- :' | ||||
| exe s:pA16.'bigr<Tab>                   <plug>\bigr' | ||||
| exe s:pA16.'Bigr<Tab>                   <plug>\Bigr' | ||||
| exe s:pA16.'biggr<Tab>                  <plug>\biggr' | ||||
| exe s:pA16.'Biggr<Tab>                  <plug>\Biggr' | ||||
| exe s:pA16.'-sepbig- :' | ||||
| exe s:pA16.'big<Tab>                    <plug>\big' | ||||
| exe s:pA16.'bigm<Tab>                   <plug>\bigm' | ||||
| exe s:pA16.'-sepfloor- :' | ||||
| exe s:pA16.'lfloor<Tab>⌊                 <plug>\lfloor ' | ||||
| exe s:pA16.'lceil<Tab>⌈                  <plug>\lceil ' | ||||
| exe s:pA16.'rfloor<Tab>⌋                 <plug>\rfloor ' | ||||
| exe s:pA16.'rceil<Tab>⌉                  <plug>\rceil ' | ||||
| exe s:pA16.'-sepangle- :' | ||||
| exe s:pA16.'langle<Tab>〈                 <plug>\langle ' | ||||
| exe s:pA16.'rangle<Tab>〉                 <plug>\rangle ' | ||||
| " }}} | ||||
| " {{{ Limits2 | ||||
| let s:pA16a = s:pA."&Limits2." | ||||
| exe s:pA16a.'ulcorner<Tab>⌜            <plug>\ulcorner ' | ||||
| exe s:pA16a.'urcorner<Tab>⌝            <plug>\urcorner ' | ||||
| exe s:pA16a.'llcorner<Tab>⌞            <plug>\llcorner ' | ||||
| exe s:pA16a.'rlcorner<Tab>⌟            <plug>\rlcorner ' | ||||
| exe s:pA16a.'-sepcorner- :' | ||||
| exe s:pA16a.'vert<Tab>\|               <plug>\vert ' | ||||
| exe s:pA16a.'Vert<Tab>∥                <plug>\Vert ' | ||||
| exe s:pA16a.'lvert<Tab>                <plug>\lvert ' | ||||
| exe s:pA16a.'lVert<Tab>                <plug>\lVert ' | ||||
| exe s:pA16a.'rvert<Tab>                <plug>\rvert ' | ||||
| exe s:pA16a.'rVert<Tab>                <plug>\rVert ' | ||||
| exe s:pA16a.'uparrow<Tab>↑             <plug>\uparrow ' | ||||
| exe s:pA16a.'Uparrow<Tab>⇑             <plug>\Uparrow ' | ||||
| exe s:pA16a.'downarrow<Tab>↓           <plug>\downarrow ' | ||||
| exe s:pA16a.'Downarrow<Tab>⇓           <plug>\Downarrow ' | ||||
| exe s:pA16a.'updownarrow<Tab>↕         <plug>\updownarrow ' | ||||
| exe s:pA16a.'Updownarrow<Tab>⇕         <plug>\Updownarrow ' | ||||
| exe s:pA16a.'lgroup<Tab>               <plug>\lgroup ' | ||||
| exe s:pA16a.'rgroup<Tab>               <plug>\rgroup ' | ||||
| exe s:pA16a.'lmoustache<Tab>∫          <plug>\lmoustache ' | ||||
| exe s:pA16a.'rmoustache<Tab>           <plug>\rmoustache ' | ||||
| exe s:pA16a.'arrowvert<Tab>            <plug>\arrowvert ' | ||||
| exe s:pA16a.'Arrowvert<Tab>            <plug>\Arrowvert ' | ||||
| exe s:pA16a.'bracevert<Tab>            <plug>\bracevert ' | ||||
| " }}} | ||||
| " {{{ Log-likes | ||||
| let s:pA17 = s:pA."Lo&g-likes." | ||||
| exe s:pA17.'arccos<Tab>                 <plug>\arccos ' | ||||
| exe s:pA17.'arcsin<Tab>                 <plug>\arcsin ' | ||||
| exe s:pA17.'arctan<Tab>                 <plug>\arctan ' | ||||
| exe s:pA17.'arg<Tab>                    <plug>\arg ' | ||||
| exe s:pA17.'cos<Tab>                    <plug>\cos ' | ||||
| exe s:pA17.'cosh<Tab>                   <plug>\cosh ' | ||||
| exe s:pA17.'cot<Tab>                    <plug>\cot ' | ||||
| exe s:pA17.'coth<Tab>                   <plug>\coth ' | ||||
| exe s:pA17.'csc<Tab>                    <plug>\csc ' | ||||
| exe s:pA17.'deg<Tab>                    <plug>\deg ' | ||||
| exe s:pA17.'det<Tab>                    <plug>\det ' | ||||
| exe s:pA17.'dim<Tab>                    <plug>\dim ' | ||||
| exe s:pA17.'exp<Tab>                    <plug>\exp ' | ||||
| exe s:pA17.'gcd<Tab>                    <plug>\gcd ' | ||||
| exe s:pA17.'hom<Tab>                    <plug>\hom ' | ||||
| exe s:pA17.'inf<Tab>                    <plug>\inf ' | ||||
| exe s:pA17.'injlim<Tab>                 <plug>\injlim ' | ||||
| exe s:pA17.'ker<Tab>                    <plug>\ker ' | ||||
| exe s:pA17.'lg<Tab>                     <plug>\lg ' | ||||
| exe s:pA17.'lim<Tab>                    <plug>\lim ' | ||||
| exe s:pA17.'liminf<Tab>                 <plug>\liminf ' | ||||
| exe s:pA17.'limsup<Tab>                 <plug>\limsup ' | ||||
| exe s:pA17.'ln<Tab>                     <plug>\ln ' | ||||
| exe s:pA17.'log<Tab>                    <plug>\log ' | ||||
| exe s:pA17.'max<Tab>                    <plug>\max ' | ||||
| exe s:pA17.'min<Tab>                    <plug>\min ' | ||||
| exe s:pA17.'Pr<Tab>                     <plug>\Pr ' | ||||
| exe s:pA17.'projlim<Tab>                <plug>\projlim ' | ||||
| exe s:pA17.'sec<Tab>                    <plug>\sec ' | ||||
| exe s:pA17.'sin<Tab>                    <plug>\sin ' | ||||
| exe s:pA17.'sinh<Tab>                   <plug>\sinh ' | ||||
| exe s:pA17.'sup<Tab>                    <plug>\sup ' | ||||
| exe s:pA17.'tan<Tab>                    <plug>\tan ' | ||||
| exe s:pA17.'tanh<Tab>                   <plug>\tanh ' | ||||
| exe s:pA17.'varlimsup<Tab>              <plug>\varlimsup ' | ||||
| exe s:pA17.'varliminf<Tab>              <plug>\varliminf ' | ||||
| exe s:pA17.'varinjlim<Tab>              <plug>\varinjlim ' | ||||
| exe s:pA17.'varprojlim<Tab>             <plug>\varprojlim ' | ||||
| " }}} | ||||
| " {{{ MathSpacing | ||||
| let s:pA18 = s:pA."MathSpacing." | ||||
| exe s:pA18.',                       <plug>\, ' | ||||
| exe s:pA18.':                       <plug>\: ' | ||||
| exe s:pA18.';                       <plug>\; ' | ||||
| exe s:pA18.'[space]                 <plug>\  ' | ||||
| exe s:pA18.'quad<Tab>               <plug>\quad ' | ||||
| exe s:pA18.'qquad<Tab>              <plug>\qquad ' | ||||
| exe s:pA18.'!                       <plug>\! ' | ||||
| exe s:pA18.'thinspace<Tab>          <plug>\thinspace ' | ||||
| exe s:pA18.'medspace<Tab>           <plug>\medspace ' | ||||
| exe s:pA18.'thickspace<Tab>         <plug>\thickspace ' | ||||
| exe s:pA18.'negthinspace<Tab>       <plug>\negthinspace ' | ||||
| exe s:pA18.'negmedspace<Tab>        <plug>\negmedspace ' | ||||
| exe s:pA18.'negthickspace<Tab>      <plug>\negthickspace ' | ||||
| " 1}}} | ||||
| 
 | ||||
| " vim:fdm=marker:ff=unix:noet:ts=4:sw=4:fenc=utf-8 | ||||
							
								
								
									
										730
									
								
								vim/vim-latex/ftplugin/latex-suite/mathmacros.vim
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										730
									
								
								vim/vim-latex/ftplugin/latex-suite/mathmacros.vim
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,730 @@ | |||
| "============================================================================= | ||||
| " 	     File: mathmacros.vim | ||||
| "      Author: Mikolaj Machowski | ||||
| "     Created: Tue Apr 23 06:00 PM 2002 PST | ||||
| "  | ||||
| "  Description: macros for everything mathematical in latex. | ||||
| "============================================================================= | ||||
| 
 | ||||
| if !(has('gui_running') && g:Tex_MathMenus && g:Tex_Menus) | ||||
| 	finish | ||||
| endif | ||||
| 
 | ||||
| let s:MathMenuName = g:Tex_MenuPrefix.'&Math.' | ||||
| 
 | ||||
| function! Tex_MathMenuRemove() | ||||
| 	exe 'silent! aunmenu '.s:MathMenuName | ||||
| endfunction | ||||
| 
 | ||||
| let s:pA = 'amenu <silent> '.g:Tex_NextMenuLocation.' '.s:MathMenuName | ||||
| let g:Tex_NextMenuLocation = g:Tex_NextMenuLocation + 1 | ||||
| 
 | ||||
| " brackets and dollars {{{ | ||||
| exe s:pA.'\\&[\ \\]                 <plug><C-r>=IMAP_PutTextWithMovement("\\[<++>\\]<++>")<cr>' | ||||
| exe s:pA.'\\&(\ \\)                 <plug><C-r>=IMAP_PutTextWithMovement("\\(<++>\\)<++>")<cr>' | ||||
| exe s:pA.'&$\ $                     <plug>$$' | ||||
| exe s:pA.'-sepmath1- :' | ||||
| " }}} | ||||
| " MATH arrows {{{ | ||||
| let s:pA1 = s:pA."&Arrows." | ||||
| exe s:pA1.'Leftarrow                <plug>\leftarrow ' | ||||
| exe s:pA1.'leftarrow                <plug>\leftarrow' | ||||
| exe s:pA1.'longleftarrow            <plug>\longleftarrow ' | ||||
| exe s:pA1.'Leftarrow                <plug>\Leftarrow ' | ||||
| exe s:pA1.'Longleftarrow            <plug>\Longleftarrow ' | ||||
| exe s:pA1.'rightarrow               <plug>\rightarrow ' | ||||
| exe s:pA1.'longrightarrow           <plug>\longrightarrow ' | ||||
| exe s:pA1.'Rightarrow               <plug>\Rightarrow ' | ||||
| exe s:pA1.'Longrightarrow           <plug>\Longrightarrow ' | ||||
| exe s:pA1.'leftrightarrow           <plug>\leftrightarrow ' | ||||
| exe s:pA1.'longleftrightarrow       <plug>\longleftrightarrow ' | ||||
| exe s:pA1.'Leftrightarrow           <plug>\Leftrightarrow ' | ||||
| exe s:pA1.'Longleftrightarrow       <plug>\Longleftrightarrow ' | ||||
| exe s:pA1.'uparrow                  <plug>\uparrow ' | ||||
| exe s:pA1.'Uparrow                  <plug>\Uparrow ' | ||||
| exe s:pA1.'downarrow                <plug>\downarrow ' | ||||
| exe s:pA1.'Downarrow                <plug>\Downarrow ' | ||||
| exe s:pA1.'updownarrow              <plug>\updownarrow ' | ||||
| exe s:pA1.'Updownarrow              <plug>\Updownarrow ' | ||||
| exe s:pA1.'nearrow                  <plug>\nearrow ' | ||||
| exe s:pA1.'searrow                  <plug>\searrow ' | ||||
| exe s:pA1.'swarrow                  <plug>\swarrow ' | ||||
| exe s:pA1.'nwarrow                  <plug>\nwarrow ' | ||||
| exe s:pA1.'mapsto                   <plug>\mapsto ' | ||||
| exe s:pA1.'leadsto                  <plug>\leadsto ' | ||||
| exe s:pA1.'longmapsto               <plug>\longmapsto ' | ||||
| exe s:pA1.'hookleftarrow            <plug>\hookleftarrow ' | ||||
| exe s:pA1.'hookrightarrow           <plug>\hookrightarrow ' | ||||
| exe s:pA1.'leftharpoonup            <plug>\leftharpoonup ' | ||||
| exe s:pA1.'leftharpoondown          <plug>\leftharpoondown ' | ||||
| exe s:pA1.'rightharpoonup           <plug>\rightharpoonup ' | ||||
| exe s:pA1.'rightharpoondown         <plug>\rightharpoondown ' | ||||
| exe s:pA1.'rightleftharpoons        <plug>\rightleftharpoons ' | ||||
| exe s:pA1.'overleftarrow            <plug>\overleftarrow ' | ||||
| exe s:pA1.'overrightarrow           <plug>\overrightarrow ' | ||||
| exe s:pA1.'overleftrightarrow       <plug>\overleftrightarrow ' | ||||
| exe s:pA1.'underleftarrow           <plug>\underleftarrow ' | ||||
| exe s:pA1.'underrightarrow          <plug>\underrightarrow ' | ||||
| exe s:pA1.'underleftrightarrow      <plug>\underleftrightarrow ' | ||||
| exe s:pA1.'xleftarrow               <plug>\xleftarrow ' | ||||
| exe s:pA1.'xrightarrow              <plug>\xrightarrow ' | ||||
| " }}} | ||||
| 
 | ||||
| 
 | ||||
| " MATH nArrows {{{ | ||||
| let s:pA1a = s:pA."&nArrows." | ||||
| exe s:pA1a.'nleftarrow              <plug>\nleftarrow ' | ||||
| exe s:pA1a.'nLeftarrow              <plug>\nLeftarrow ' | ||||
| exe s:pA1a.'nleftrightarrow         <plug>\nleftrightarrow ' | ||||
| exe s:pA1a.'nrightarrow             <plug>\nrightarrow ' | ||||
| exe s:pA1a.'nRightarrow             <plug>\nRightarrow ' | ||||
| " }}} | ||||
| " MATH Arrows2 {{{ | ||||
| let s:pA1a = s:pA."Arrows2." | ||||
| exe s:pA1a.'dashleftarrow               <plug>\dashleftarrow ' | ||||
| exe s:pA1a.'leftleftarrows              <plug>\leftleftarrows ' | ||||
| exe s:pA1a.'leftrightarrows             <plug>\leftrightarrows ' | ||||
| exe s:pA1a.'Lleftarrow                  <plug>\Lleftarrow ' | ||||
| exe s:pA1a.'twoheadleftarrow            <plug>\twoheadleftarrow ' | ||||
| exe s:pA1a.'leftarrowtail               <plug>\leftarrowtail ' | ||||
| exe s:pA1a.'leftrightharpoons           <plug>\leftrightharpoons ' | ||||
| exe s:pA1a.'Lsh                         <plug>\Lsh ' | ||||
| exe s:pA1a.'looparrowleft               <plug>\looparrowleft ' | ||||
| exe s:pA1a.'curvearrowleft              <plug>\curvearrowleft ' | ||||
| exe s:pA1a.'circlearrowleft             <plug>\circlearrowleft ' | ||||
| exe s:pA1a.'dashrightarrow              <plug>\dashrightarrow ' | ||||
| exe s:pA1a.'rightrightarrows            <plug>\rightrightarrows ' | ||||
| exe s:pA1a.'rightleftarrows             <plug>\rightleftarrows ' | ||||
| exe s:pA1a.'Rrightarrow                 <plug>\Rrightarrow ' | ||||
| exe s:pA1a.'twoheadrightarrow           <plug>\twoheadrightarrow ' | ||||
| exe s:pA1a.'rightarrowtail              <plug>\rightarrowtail ' | ||||
| exe s:pA1a.'rightleftharpoons           <plug>\rightleftharpoons ' | ||||
| exe s:pA1a.'Rsh                         <plug>\Rsh ' | ||||
| exe s:pA1a.'looparrowright              <plug>\looparrowright ' | ||||
| exe s:pA1a.'curvearrowright             <plug>\curvearrowright ' | ||||
| exe s:pA1a.'circlearrowright            <plug>\circlearrowright ' | ||||
| exe s:pA1a.'multimap                    <plug>\multimap ' | ||||
| exe s:pA1a.'upuparrows                  <plug>\upuparrows ' | ||||
| exe s:pA1a.'downdownarrows              <plug>\downdownarrows ' | ||||
| exe s:pA1a.'upharpoonleft               <plug>\upharpoonleft ' | ||||
| exe s:pA1a.'upharpoonright              <plug>\upharpoonright ' | ||||
| exe s:pA1a.'downharpoonleft             <plug>\downharpoonleft ' | ||||
| exe s:pA1a.'downharpoonright            <plug>\downharpoonright ' | ||||
| exe s:pA1a.'rightsquigarrow             <plug>\rightsquigarrow ' | ||||
| exe s:pA1a.'leftrightsquigarrow         <plug>\leftrightsquigarrow ' | ||||
| " }}} | ||||
| " MATH Fonts {{{ | ||||
| let s:pA2a = s:pA."&MathFonts." | ||||
| exe s:pA2a.'mathbf{}                <plug><C-r>=IMAP_PutTextWithMovement("\\mathbf{<++>}<++>")<cr>' | ||||
| exe s:pA2a.'mathrm{}                <plug><C-r>=IMAP_PutTextWithMovement("\\mathrm{<++>}<++>")<cr>' | ||||
| exe s:pA2a.'mathsf{}                <plug><C-r>=IMAP_PutTextWithMovement("\\mathsf{<++>}<++>")<cr>' | ||||
| exe s:pA2a.'mathtt{}                <plug><C-r>=IMAP_PutTextWithMovement("\\mathtt{<++>}<++>")<cr>' | ||||
| exe s:pA2a.'mathit{}                <plug><C-r>=IMAP_PutTextWithMovement("\\mathit{<++>}<++>")<cr>' | ||||
| exe s:pA2a.'mathfrak{}              <plug><C-r>=IMAP_PutTextWithMovement("\\mathfrak{<++>}<++>")<cr>' | ||||
| exe s:pA2a.'mathcal{}               <plug><C-r>=IMAP_PutTextWithMovement("\\mathcal{<++>}<++>")<cr>' | ||||
| exe s:pA2a.'mathscr{}               <plug><C-r>=IMAP_PutTextWithMovement("\\mathscr{<++>}<++>")<cr>' | ||||
| exe s:pA2a.'mathbb{}                <plug><C-r>=IMAP_PutTextWithMovement("\\mathbb{<++>}<++>")<cr>' | ||||
| " }}} | ||||
| " Greek Letters small {{{ | ||||
| let s:pA2 = s:pA."&Greek.&Small." | ||||
| exe s:pA2.'alpha<Tab>`a             <plug>\alpha ' | ||||
| exe s:pA2.'beta<Tab>`b              <plug>\beta ' | ||||
| exe s:pA2.'gamma<Tab>`g             <plug>\gamma ' | ||||
| exe s:pA2.'delta<Tab>`d             <plug>\delta ' | ||||
| exe s:pA2.'epsilon                  <plug>\epsilon ' | ||||
| exe s:pA2.'varepsilon<Tab>`e        <plug>\varepsilon ' | ||||
| exe s:pA2.'zeta<Tab>`z              <plug>\zeta ' | ||||
| exe s:pA2.'eta<Tab>`h               <plug>\eta ' | ||||
| exe s:pA2.'theta<Tab>`q             <plug>\theta ' | ||||
| exe s:pA2.'vartheta                 <plug>\vartheta ' | ||||
| exe s:pA2.'iota<Tab>`i              <plug>\iota ' | ||||
| exe s:pA2.'kappa<Tab>`k             <plug>\kappa ' | ||||
| exe s:pA2.'lambda<Tab>`l            <plug>\lambda ' | ||||
| exe s:pA2.'mu<Tab>`m                <plug>\mu ' | ||||
| exe s:pA2.'nu<Tab>`n                <plug>\nu ' | ||||
| exe s:pA2.'xi<Tab>`x                <plug>\xi ' | ||||
| exe s:pA2.'pi<Tab>`p                <plug>\pi ' | ||||
| exe s:pA2.'varpi                    <plug>\varpi ' | ||||
| exe s:pA2.'rho<Tab>`r               <plug>\rho ' | ||||
| exe s:pA2.'varrho                   <plug>\varrho ' | ||||
| exe s:pA2.'sigma<Tab>`s             <plug>\sigma ' | ||||
| exe s:pA2.'varsigma<Tab>`v          <plug>\varsigma ' | ||||
| exe s:pA2.'tau<Tab>`t               <plug>\tau ' | ||||
| exe s:pA2.'upsilon<Tab>`u           <plug>\upsilon ' | ||||
| exe s:pA2.'phi                      <plug>\phi ' | ||||
| exe s:pA2.'varphi<Tab>`f            <plug>\varphi ' | ||||
| exe s:pA2.'chi<Tab>`c               <plug>\chi ' | ||||
| exe s:pA2.'psi<Tab>`y               <plug>\psi ' | ||||
| exe s:pA2.'omega<Tab>`w             <plug>\omega ' | ||||
| " }}} | ||||
| " Greek Letters big {{{ | ||||
| let s:pA3 = s:pA.'&Greek.&Big.'  | ||||
| exe s:pA3.'Alpha<Tab>`A             <plug>\Alpha ' | ||||
| exe s:pA3.'Beta<Tab>`B              <plug>\Beta ' | ||||
| exe s:pA3.'Gamma<Tab>`G             <plug>\Gamma ' | ||||
| exe s:pA3.'Delta<Tab>`D             <plug>\Delta ' | ||||
| exe s:pA3.'Epsilon<Tab>`E           <plug>\Epsilon ' | ||||
| exe s:pA3.'Zeta<Tab>`Z              <plug>\mathrm{Z} ' | ||||
| exe s:pA3.'Eta<Tab>`H               <plug>\Eta ' | ||||
| exe s:pA3.'Theta                    <plug>\Theta ' | ||||
| exe s:pA3.'Iota                     <plug>\mathrm{I} ' | ||||
| exe s:pA3.'Kappa<Tab>`K             <plug>\Kappa ' | ||||
| exe s:pA3.'Lambda<Tab>`L            <plug>\Lambda ' | ||||
| exe s:pA3.'Mu<Tab>`M                <plug>\Mu ' | ||||
| exe s:pA3.'Nu<Tab>`N                <plug>\Nu ' | ||||
| exe s:pA3.'Xi<Tab>`X                <plug>\Xi ' | ||||
| exe s:pA3.'Pi<Tab>`P                <plug>\Pi ' | ||||
| exe s:pA3.'Rho<Tab>`R               <plug>\Rho ' | ||||
| exe s:pA3.'Sigma<Tab>`S             <plug>\Sigma ' | ||||
| exe s:pA3.'Tau<Tab>`T               <plug>\Tau ' | ||||
| exe s:pA3.'Upsilon<Tab>`U           <plug>\Upsilon ' | ||||
| exe s:pA3.'Phi                      <plug>\Phi ' | ||||
| exe s:pA3.'Chi<Tab>`C               <plug>\Chi ' | ||||
| exe s:pA3.'Psi<Tab>`Y               <plug>\Psi ' | ||||
| exe s:pA3.'Omega<Tab>`W             <plug>\Omega ' | ||||
| " }}} | ||||
| " BinaryRel1 {{{ | ||||
| let s:pA4 = s:pA."&BinaryRel1."   | ||||
| exe s:pA4.'ll                       <plug>\ll ' | ||||
| exe s:pA4.'lll                      <plug>\lll ' | ||||
| exe s:pA4.'leqslant                 <plug>\leqslant ' | ||||
| exe s:pA4.'leq                      <plug>\leq ' | ||||
| exe s:pA4.'leqq                     <plug>\leqq ' | ||||
| exe s:pA4.'eqslantless              <plug>\eqslantless ' | ||||
| exe s:pA4.'lessdot                  <plug>\lessdot ' | ||||
| exe s:pA4.'prec                     <plug>\prec ' | ||||
| exe s:pA4.'preceq                   <plug>\preceq ' | ||||
| exe s:pA4.'preccurlyeq              <plug>\preccurlyeq ' | ||||
| exe s:pA4.'curlyeqprec              <plug>\curlyeqprec ' | ||||
| exe s:pA4.'lesssim                   <plug>\lesssim ' | ||||
| exe s:pA4.'lessapprox               <plug>\lessapprox ' | ||||
| exe s:pA4.'precsim                  <plug>\precsim ' | ||||
| exe s:pA4.'precapprox               <plug>\precapprox ' | ||||
| exe s:pA4.'in                       <plug>\in ' | ||||
| exe s:pA4.'subset<Tab>`(            <plug>\subset ' | ||||
| exe s:pA4.'Subset<Tab>`)            <plug>\Subset ' | ||||
| exe s:pA4.'subseteq                 <plug>\subseteq ' | ||||
| exe s:pA4.'subseteqq                <plug>\subseteqq ' | ||||
| exe s:pA4.'sqsubset                 <plug>\sqsubset ' | ||||
| exe s:pA4.'sqsubseteq               <plug>\sqsubseteq ' | ||||
| exe s:pA4.'smile                    <plug>\smile ' | ||||
| exe s:pA4.'smallsmile               <plug>\smallsmile ' | ||||
| exe s:pA4.'parallel                 <plug>\parallel ' | ||||
| exe s:pA4.'shortparallel            <plug>\shortparallel ' | ||||
| exe s:pA4.'dashv                    <plug>\dashv ' | ||||
| exe s:pA4.'vdash                    <plug>\vdash ' | ||||
| exe s:pA4.'vDash                    <plug>\vDash ' | ||||
| exe s:pA4.'models                   <plug>\models ' | ||||
| exe s:pA4.'therefore                <plug>\therefore ' | ||||
| exe s:pA4.'backepsilon              <plug>\backepsilon ' | ||||
| " }}} | ||||
| " nBinaryRel1 {{{  | ||||
| let s:pA4a = s:pA."&nBinaryRel1."   | ||||
| exe s:pA4a.'nless                   <plug>\nless ' | ||||
| exe s:pA4a.'nleqslant               <plug>\nleqslant ' | ||||
| exe s:pA4a.'nleq                    <plug>\nleq ' | ||||
| exe s:pA4a.'lneq                    <plug>\lneq ' | ||||
| exe s:pA4a.'nleqq                   <plug>\nleqq ' | ||||
| exe s:pA4a.'lneqq                   <plug>\lneqq ' | ||||
| exe s:pA4a.'lvertneqq               <plug>\lvertneqq ' | ||||
| exe s:pA4a.'nprec                   <plug>\nprec ' | ||||
| exe s:pA4a.'npreceq                 <plug>\npreceq ' | ||||
| exe s:pA4a.'precneqq                <plug>\precneqq ' | ||||
| exe s:pA4a.'lnsim                   <plug>\lnsim ' | ||||
| exe s:pA4a.'lnapprox                <plug>\lnapprox ' | ||||
| exe s:pA4a.'precnsim                <plug>\precnsim ' | ||||
| exe s:pA4a.'precnapprox             <plug>\precnapprox ' | ||||
| exe s:pA4a.'notin                   <plug>\notin ' | ||||
| exe s:pA4a.'nsubseteq               <plug>\nsubseteq ' | ||||
| exe s:pA4a.'varsubsetneq            <plug>\varsubsetneq ' | ||||
| exe s:pA4a.'subsetneq               <plug>\subsetneq ' | ||||
| exe s:pA4a.'nsubseteqq              <plug>\nsubseteqq ' | ||||
| exe s:pA4a.'varsubsetneqq           <plug>\varsubsetneqq ' | ||||
| exe s:pA4a.'subsetneqq              <plug>\subsetneqq ' | ||||
| exe s:pA4a.'nparallel               <plug>\nparallel ' | ||||
| exe s:pA4a.'nshortparallel          <plug>\nshortparallel ' | ||||
| exe s:pA4a.'nvdash                  <plug>\nvdash ' | ||||
| exe s:pA4a.'nvDash                  <plug>\nvDash ' | ||||
| " }}} | ||||
| " BinaryRel2 {{{  | ||||
| let s:pA5 = s:pA."&BinaryRel2."   | ||||
| exe s:pA5.'gg                       <plug>\gg ' | ||||
| exe s:pA5.'ggg                      <plug>\ggg ' | ||||
| exe s:pA5.'gggtr                    <plug>\gggtr ' | ||||
| exe s:pA5.'geqslant                 <plug>\geqslant ' | ||||
| exe s:pA5.'geq                      <plug>\geq ' | ||||
| exe s:pA5.'geqq                     <plug>\geqq ' | ||||
| exe s:pA5.'eqslantgtr               <plug>\eqslantgtr ' | ||||
| exe s:pA5.'gtrdot                   <plug>\gtrdot ' | ||||
| exe s:pA5.'succ                     <plug>\succ ' | ||||
| exe s:pA5.'succeq                   <plug>\succeq ' | ||||
| exe s:pA5.'succcurlyeq              <plug>\succcurlyeq ' | ||||
| exe s:pA5.'curlyeqsucc              <plug>\curlyeqsucc ' | ||||
| exe s:pA5.'gtrsim                   <plug>\gtrsim ' | ||||
| exe s:pA5.'gtrapprox                <plug>\gtrapprox ' | ||||
| exe s:pA5.'succsim                  <plug>\succsim ' | ||||
| exe s:pA5.'succapprox               <plug>\succapprox ' | ||||
| exe s:pA5.'ni                       <plug>\ni ' | ||||
| exe s:pA5.'owns                     <plug>\owns ' | ||||
| exe s:pA5.'supset                   <plug>\supset ' | ||||
| exe s:pA5.'Supset                   <plug>\Supset ' | ||||
| exe s:pA5.'supseteq                 <plug>\supseteq ' | ||||
| exe s:pA5.'supseteqq                <plug>\supseteqq ' | ||||
| exe s:pA5.'sqsupset                 <plug>\sqsupset ' | ||||
| exe s:pA5.'sqsupseteq               <plug>\sqsupseteq ' | ||||
| exe s:pA5.'frown                    <plug>\frown ' | ||||
| exe s:pA5.'smallfrown               <plug>\smallfrown ' | ||||
| exe s:pA5.'mid                      <plug>\mid ' | ||||
| exe s:pA5.'shortmid                 <plug>\shortmid ' | ||||
| exe s:pA5.'between                  <plug>\between ' | ||||
| exe s:pA5.'Vdash                    <plug>\Vdash ' | ||||
| exe s:pA5.'bowtie                   <plug>\bowtie ' | ||||
| exe s:pA5.'Join                     <plug>\Join ' | ||||
| exe s:pA5.'pitchfork                <plug>\pitchfork ' | ||||
| " }}} | ||||
| " {{{ nBinaryRel2 | ||||
| let s:pA5a = s:pA."n&BinaryRel2."  "TODO: dorobiæ logarytmy | ||||
| exe s:pA5a.'ngtr                    <plug>\ngtr ' | ||||
| exe s:pA5a.'ngeqslant               <plug>\ngeqslant ' | ||||
| exe s:pA5a.'ngeq                    <plug>\ngeq ' | ||||
| exe s:pA5a.'gneq                    <plug>\gneq ' | ||||
| exe s:pA5a.'ngeqq                   <plug>\ngeqq ' | ||||
| exe s:pA5a.'gneqq                   <plug>\gneqq ' | ||||
| exe s:pA5a.'nsucc                   <plug>\nsucc ' | ||||
| exe s:pA5a.'nsucceq                 <plug>\nsucceq ' | ||||
| exe s:pA5a.'succneqq                <plug>\succneqq ' | ||||
| exe s:pA5a.'gnsim                   <plug>\gnsim ' | ||||
| exe s:pA5a.'gnapprox                <plug>\gnapprox ' | ||||
| exe s:pA5a.'succnsim                <plug>\succnsim ' | ||||
| exe s:pA5a.'succnapprox             <plug>\succnapprox ' | ||||
| exe s:pA5a.'nsupseteq               <plug>\nsupseteq ' | ||||
| exe s:pA5a.'varsupsetneq            <plug>\varsupsetneq ' | ||||
| exe s:pA5a.'supsetneq               <plug>\supsetneq ' | ||||
| exe s:pA5a.'nsupseteqq              <plug>\nsupseteqq ' | ||||
| exe s:pA5a.'varsupsetneqq           <plug>\varsupsetneqq ' | ||||
| exe s:pA5a.'supsetneqq              <plug>\supsetneqq ' | ||||
| exe s:pA5a.'nmid                    <plug>\nmid ' | ||||
| exe s:pA5a.'nshortmid               <plug>\nshortmid ' | ||||
| exe s:pA5a.'nVdash                  <plug>\nVdash ' | ||||
| " }}} | ||||
| " {{{ BinaryRel3 | ||||
| let s:pA6 = s:pA."&BinaryRel3."   | ||||
| exe s:pA6.'doteq                    <plug>\doteq ' | ||||
| exe s:pA6.'circeq                   <plug>\circeq ' | ||||
| exe s:pA6.'eqcirc                   <plug>\eqcirc ' | ||||
| exe s:pA6.'risingdotseq             <plug>\risingdotseq ' | ||||
| exe s:pA6.'doteqdot                 <plug>\doteqdot ' | ||||
| exe s:pA6.'Doteq                    <plug>\Doteq ' | ||||
| exe s:pA6.'fallingdotseq            <plug>\fallingdotseq ' | ||||
| exe s:pA6.'triangleq                <plug>\triangleq ' | ||||
| exe s:pA6.'bumpeq                   <plug>\bumpeq ' | ||||
| exe s:pA6.'Bumpeq                   <plug>\Bumpeq ' | ||||
| exe s:pA6.'equiv<Tab>`=             <plug>\equiv ' | ||||
| exe s:pA6.'sim                      <plug>\sim ' | ||||
| exe s:pA6.'thicksim                 <plug>\thicksim ' | ||||
| exe s:pA6.'backsim                  <plug>\backsim ' | ||||
| exe s:pA6.'simeq                    <plug>\simeq ' | ||||
| exe s:pA6.'backsimeq                <plug>\backsimeq ' | ||||
| exe s:pA6.'cong                     <plug>\cong ' | ||||
| exe s:pA6.'approx<tab>=~            <plug>\approx ' | ||||
| exe s:pA6.'thickapprox              <plug>\thickapprox ' | ||||
| exe s:pA6.'approxeq                 <plug>\approxeq ' | ||||
| exe s:pA6.'blacktriangleleft        <plug>\blacktriangleleft ' | ||||
| exe s:pA6.'vartriangleleft          <plug>\vartriangleleft ' | ||||
| exe s:pA6.'trianglelefteq           <plug>\trianglelefteq ' | ||||
| exe s:pA6.'blacktriangleright       <plug>\blacktriangleright ' | ||||
| exe s:pA6.'vartriangleright         <plug>\vartriangleright ' | ||||
| exe s:pA6.'trianglerighteq          <plug>\trianglerighteq ' | ||||
| exe s:pA6.'perp                     <plug>\perp ' | ||||
| exe s:pA6.'asymp                    <plug>\asymp ' | ||||
| exe s:pA6.'Vvdash                   <plug>\Vvdash ' | ||||
| exe s:pA6.'propto                   <plug>\propto ' | ||||
| exe s:pA6.'varpropto                <plug>\varpropto ' | ||||
| exe s:pA6.'because                  <plug>\because ' | ||||
| " }}} | ||||
| " {{{ nBinaryRel3 | ||||
| let s:pA6a = s:pA."&nBinaryRel3." | ||||
| exe s:pA6a.'neq                     <plug>\neq ' | ||||
| exe s:pA6a.'nsim                    <plug>\nsim ' | ||||
| exe s:pA6a.'ncong                   <plug>\ncong ' | ||||
| exe s:pA6a.'ntriangleleft           <plug>\ntriangleleft ' | ||||
| exe s:pA6a.'ntrianglelefteq         <plug>\ntrianglelefteq ' | ||||
| exe s:pA6a.'ntriangleright          <plug>\ntriangleright ' | ||||
| exe s:pA6a.'ntrianglerighteq        <plug>\ntrianglerighteq ' | ||||
| " }}} | ||||
| " {{{ BinaryRel4 | ||||
| let s:pA7 = s:pA."&BinaryRel4."   | ||||
| exe s:pA7.'lessgtr                  <plug>\lessgtr ' | ||||
| exe s:pA7.'gtrless                  <plug>\gtrless ' | ||||
| exe s:pA7.'lesseqgtr                <plug>\lesseqgtr ' | ||||
| exe s:pA7.'gtreqless                <plug>\gtreqless ' | ||||
| exe s:pA7.'lesseqqgtr               <plug>\lesseqqgtr ' | ||||
| exe s:pA7.'gtreqqless               <plug>\gtreqqless ' | ||||
| " }}} | ||||
| " {{{ BigOp | ||||
| let s:pA8a = s:pA."&BigOp." | ||||
| exe s:pA8a.'limits                  <plug>\limits' | ||||
| exe s:pA8a.'nolimits                <plug>\nolimits' | ||||
| exe s:pA8a.'displaylimits           <plug>\displaylimits' | ||||
| exe s:pA8a.'-seplimits- :' | ||||
| exe s:pA8a.'bigcap<Tab>`-           <plug>\bigcap' | ||||
| exe s:pA8a.'bigcup<Tab>`+           <plug>\bigcup' | ||||
| exe s:pA8a.'bigodot                 <plug>\bigodot' | ||||
| exe s:pA8a.'bigoplus                <plug>\bigoplus' | ||||
| exe s:pA8a.'bigotimes               <plug>\bigotimes' | ||||
| exe s:pA8a.'bigsqcup                <plug>\bigsqcup' | ||||
| exe s:pA8a.'biguplus                <plug>\biguplus' | ||||
| exe s:pA8a.'bigvee                  <plug>\bigvee' | ||||
| exe s:pA8a.'bigwedge                <plug>\bigwedge' | ||||
| exe s:pA8a.'coprod                  <plug>\coprod' | ||||
| exe s:pA8a.'int                     <plug>\int' | ||||
| exe s:pA8a.'oint                    <plug>\oint' | ||||
| exe s:pA8a.'prod                    <plug>\prod' | ||||
| exe s:pA8a.'sum                     <plug>\sum' | ||||
| " }}} | ||||
| " {{{ BinaryOp | ||||
| let s:pA8 = s:pA."&BinaryOp." | ||||
| exe s:pA8.'pm                       <plug>\pm ' | ||||
| exe s:pA8.'mp                       <plug>\mp ' | ||||
| exe s:pA8.'dotplus                  <plug>\dotplus ' | ||||
| exe s:pA8.'cdot<Tab>`.              <plug>\cdot ' | ||||
| exe s:pA8.'centerdot                <plug>\centerdot ' | ||||
| exe s:pA8.'times<Tab>`*             <plug>\times ' | ||||
| exe s:pA8.'ltimes                   <plug>\ltimes ' | ||||
| exe s:pA8.'rtimes                   <plug>\rtimes ' | ||||
| exe s:pA8.'leftthreetimes           <plug>\leftthreetimes ' | ||||
| exe s:pA8.'rightthreetimes          <plug>\rightthreetimes ' | ||||
| exe s:pA8.'div                      <plug>\div ' | ||||
| exe s:pA8.'divideontimes            <plug>\divideontimes ' | ||||
| exe s:pA8.'bmod                     <plug>\bmod ' | ||||
| exe s:pA8.'ast                      <plug>\ast ' | ||||
| exe s:pA8.'star                     <plug>\star ' | ||||
| exe s:pA8.'setminus<Tab>`\\         <plug>\setminus ' | ||||
| exe s:pA8.'smallsetminus            <plug>\smallsetminus ' | ||||
| exe s:pA8.'diamond                  <plug>\diamond ' | ||||
| exe s:pA8.'wr                       <plug>\wr ' | ||||
| exe s:pA8.'intercal                 <plug>\intercal ' | ||||
| exe s:pA8.'circ<Tab>`@              <plug>\circ ' | ||||
| exe s:pA8.'bigcirc                  <plug>\bigcirc ' | ||||
| exe s:pA8.'bullet                   <plug>\bullet ' | ||||
| exe s:pA8.'cap                      <plug>\cap ' | ||||
| exe s:pA8.'Cap                      <plug>\Cap ' | ||||
| exe s:pA8.'cup                      <plug>\cup ' | ||||
| exe s:pA8.'Cup                      <plug>\Cup ' | ||||
| exe s:pA8.'sqcap                    <plug>\sqcap ' | ||||
| exe s:pA8.'sqcup                    <plug>\sqcup' | ||||
| exe s:pA8.'amalg                    <plug>\amalg ' | ||||
| exe s:pA8.'uplus                    <plug>\uplus ' | ||||
| exe s:pA8.'triangleleft             <plug>\triangleleft ' | ||||
| exe s:pA8.'triangleright            <plug>\triangleright ' | ||||
| exe s:pA8.'bigtriangleup            <plug>\bigtriangleup ' | ||||
| exe s:pA8.'bigtriangledown          <plug>\bigtriangledown ' | ||||
| exe s:pA8.'vee                      <plug>\vee ' | ||||
| exe s:pA8.'veebar                   <plug>\veebar ' | ||||
| exe s:pA8.'curlyvee                 <plug>\curlyvee ' | ||||
| exe s:pA8.'wedge<Tab>`&             <plug>\wedge ' | ||||
| exe s:pA8.'barwedge                 <plug>\barwedge ' | ||||
| exe s:pA8.'doublebarwedge           <plug>\doublebarwedge ' | ||||
| exe s:pA8.'curlywedge               <plug>\curlywedge ' | ||||
| exe s:pA8.'oplus                    <plug>\oplus ' | ||||
| exe s:pA8.'ominus                   <plug>\ominus ' | ||||
| exe s:pA8.'otimes                   <plug>\otimes ' | ||||
| exe s:pA8.'oslash                   <plug>\oslash ' | ||||
| exe s:pA8.'boxplus                  <plug>\boxplus ' | ||||
| exe s:pA8.'boxminus                 <plug>\boxminus ' | ||||
| exe s:pA8.'boxtimes                 <plug>\boxtimes ' | ||||
| exe s:pA8.'boxdot                   <plug>\boxdot ' | ||||
| exe s:pA8.'odot                     <plug>\odot ' | ||||
| exe s:pA8.'circledast               <plug>\circledast ' | ||||
| exe s:pA8.'circleddash              <plug>\circleddash ' | ||||
| exe s:pA8.'circledcirc              <plug>\circledcirc ' | ||||
| exe s:pA8.'dagger                   <plug>\dagger ' | ||||
| exe s:pA8.'ddagger                  <plug>\ddagger ' | ||||
| exe s:pA8.'lhd                      <plug>\lhd ' | ||||
| exe s:pA8.'unlhd                    <plug>\unlhd ' | ||||
| exe s:pA8.'rhd                      <plug>\rhd ' | ||||
| exe s:pA8.'unrhd                    <plug>\unrhd ' | ||||
| " }}} | ||||
| " {{{ Other1 | ||||
| let s:pA9 = s:pA."&Other1." | ||||
| exe s:pA9.'hat                      <plug>\hat ' | ||||
| exe s:pA9.'check                    <plug>\check ' | ||||
| exe s:pA9.'grave                    <plug>\grave ' | ||||
| exe s:pA9.'acute                    <plug>\acute ' | ||||
| exe s:pA9.'dot                      <plug>\dot ' | ||||
| exe s:pA9.'ddot                     <plug>\ddot ' | ||||
| exe s:pA9.'tilde<Tab>`,             <plug>\tilde ' | ||||
| exe s:pA9.'breve                    <plug>\breve ' | ||||
| exe s:pA9.'bar                      <plug>\bar ' | ||||
| exe s:pA9.'vec                      <plug>\vec ' | ||||
| exe s:pA9.'aleph                    <plug>\aleph ' | ||||
| exe s:pA9.'hbar                     <plug>\hbar ' | ||||
| exe s:pA9.'imath                    <plug>\imath ' | ||||
| exe s:pA9.'jmath                    <plug>\jmath ' | ||||
| exe s:pA9.'ell                      <plug>\ell ' | ||||
| exe s:pA9.'wp                       <plug>\wp ' | ||||
| exe s:pA9.'Re                       <plug>\Re ' | ||||
| exe s:pA9.'Im                       <plug>\Im ' | ||||
| exe s:pA9.'partial                  <plug>\partial ' | ||||
| exe s:pA9.'infty<Tab>`8             <plug>\infty ' | ||||
| exe s:pA9.'prime                    <plug>\prime ' | ||||
| exe s:pA9.'emptyset                 <plug>\emptyset ' | ||||
| exe s:pA9.'nabla                    <plug>\nabla ' | ||||
| exe s:pA9.'surd                     <plug>\surd ' | ||||
| exe s:pA9.'top                      <plug>\top ' | ||||
| exe s:pA9.'bot                      <plug>\bot ' | ||||
| exe s:pA9.'angle                    <plug>\angle ' | ||||
| exe s:pA9.'triangle                 <plug>\triangle ' | ||||
| exe s:pA9.'backslash                <plug>\backslash ' | ||||
| exe s:pA9.'forall                   <plug>\forall ' | ||||
| exe s:pA9.'exists                   <plug>\exists ' | ||||
| exe s:pA9.'neg                      <plug>\neg ' | ||||
| exe s:pA9.'flat                     <plug>\flat ' | ||||
| exe s:pA9.'natural                  <plug>\natural ' | ||||
| exe s:pA9.'sharp                    <plug>\sharp ' | ||||
| exe s:pA9.'clubsuit                 <plug>\clubsuit ' | ||||
| exe s:pA9.'diamondsuit              <plug>\diamondsuit ' | ||||
| exe s:pA9.'heartsuit                <plug>\heartsuit ' | ||||
| exe s:pA9.'spadesuit                <plug>\spadesuit ' | ||||
| exe s:pA9.'S                        <plug>\S ' | ||||
| exe s:pA9.'P                        <plug>\P' | ||||
| " }}} | ||||
| " {{{ MathCreating | ||||
| let s:pA10 = s:pA."&MathCreating." | ||||
| exe s:pA10.'not                     <plug>\not' | ||||
| exe s:pA10.'mkern                   <plug>\mkern' | ||||
| exe s:pA10.'mathbin                 <plug>\mathbin' | ||||
| exe s:pA10.'mathrel                 <plug>\mathrel' | ||||
| exe s:pA10.'stackrel                <plug>\stackrel' | ||||
| exe s:pA10.'mathord                 <plug>\mathord' | ||||
| " }}} | ||||
| " {{{ Styles | ||||
| let s:pA11 = s:pA."&Styles." | ||||
| exe s:pA11.'displaystyle            <plug>\displaystyle' | ||||
| exe s:pA11.'textstyle               <plug>\textstyle' | ||||
| exe s:pA11.'scritpstyle             <plug>\scritpstyle' | ||||
| exe s:pA11.'scriptscriptstyle       <plug>\scriptscriptstyle' | ||||
| " }}} | ||||
| " {{{ MathDiacritics | ||||
| let s:pA12 = s:pA."&MathDiacritics." | ||||
| exe s:pA12.'acute{}                 <plug><C-r>=IMAP_PutTextWithMovement("\\acute{<++>}<++>")<cr>' | ||||
| exe s:pA12.'bar{}<Tab>`_            <plug><C-r>=IMAP_PutTextWithMovement("\\bar{<++>}<++>")<cr>' | ||||
| exe s:pA12.'breve{}                 <plug><C-r>=IMAP_PutTextWithMovement("\\breve{<++>}<++>")<cr>' | ||||
| exe s:pA12.'check{}                 <plug><C-r>=IMAP_PutTextWithMovement("\\check{<++>}<++>")<cr>' | ||||
| exe s:pA12.'ddot{}<Tab>`:           <plug><C-r>=IMAP_PutTextWithMovement("\\ddot{<++>}<++>")<cr>' | ||||
| exe s:pA12.'dot{}<Tab>`;            <plug><C-r>=IMAP_PutTextWithMovement("\\dot{<++>}<++>")<cr>' | ||||
| exe s:pA12.'grave{}                 <plug><C-r>=IMAP_PutTextWithMovement("\\grave{<++>}<++>")<cr>' | ||||
| exe s:pA12.'hat{}<Tab>`^            <plug><C-r>=IMAP_PutTextWithMovement("\\hat{<++>}<++>")<cr>' | ||||
| exe s:pA12.'tilde{}<tab>`~          <plug><C-r>=IMAP_PutTextWithMovement("\\tilde{<++>}<++>")<cr>' | ||||
| exe s:pA12.'vec{}                   <plug><C-r>=IMAP_PutTextWithMovement("\\vec{<++>}<++>")<cr>' | ||||
| exe s:pA12.'widehat{}               <plug><C-r>=IMAP_PutTextWithMovement("\\widehat{<++>}<++>")<cr>' | ||||
| exe s:pA12.'widetilde{}             <plug><C-r>=IMAP_PutTextWithMovement("\\widetilde{<++>}<++>")<cr>' | ||||
| exe s:pA12.'imath                   <plug><C-r>=IMAP_PutTextWithMovement("\\imath")<cr>' | ||||
| exe s:pA12.'jmath                   <plug><C-r>=IMAP_PutTextWithMovement("\\jmath")<cr>' | ||||
| " }}} | ||||
| " {{{ OverlineAndCo | ||||
| let s:pA13 = s:pA."&OverlineAndCo." | ||||
| exe s:pA13.'overline{}              <plug><C-r>=IMAP_PutTextWithMovement("\\overline{}")<cr>' | ||||
| exe s:pA13.'underline{}             <plug><C-r>=IMAP_PutTextWithMovement("\\underline{}")<cr>' | ||||
| exe s:pA13.'overrightarrow{}        <plug><C-r>=IMAP_PutTextWithMovement("\\overrightarrow{}")<cr>' | ||||
| exe s:pA13.'overleftarrow{}         <plug><C-r>=IMAP_PutTextWithMovement("\\overleftarrow{}")<cr>' | ||||
| exe s:pA13.'overbrace{}             <plug><C-r>=IMAP_PutTextWithMovement("\\overbrace{}")<cr>' | ||||
| exe s:pA13.'underbrace{}            <plug><C-r>=IMAP_PutTextWithMovement("\\underbrace{}")<cr>' | ||||
| " }}} | ||||
| " {{{ Symbols1 | ||||
| let s:pA14a = s:pA."&Symbols1." | ||||
| exe s:pA14a.'forall                 <plug>\forall ' | ||||
| exe s:pA14a.'exists                 <plug>\exists ' | ||||
| exe s:pA14a.'nexists                <plug>\nexists ' | ||||
| exe s:pA14a.'neg                    <plug>\neg ' | ||||
| exe s:pA14a.'top                    <plug>\top ' | ||||
| exe s:pA14a.'bot                    <plug>\bot ' | ||||
| exe s:pA14a.'emptyset               <plug>\emptyset ' | ||||
| exe s:pA14a.'varnothing             <plug>\varnothing ' | ||||
| exe s:pA14a.'infty                  <plug>\infty ' | ||||
| exe s:pA14a.'aleph                  <plug>\aleph ' | ||||
| exe s:pA14a.'beth                   <plug>\beth ' | ||||
| exe s:pA14a.'gimel                  <plug>\gimel ' | ||||
| exe s:pA14a.'daleth                 <plug>\daleth ' | ||||
| exe s:pA14a.'hbar                   <plug>\hbar ' | ||||
| exe s:pA14a.'hslash                 <plug>\hslash ' | ||||
| exe s:pA14a.'diagup                 <plug>\diagup ' | ||||
| exe s:pA14a.'vert                   <plug>\vert ' | ||||
| exe s:pA14a.'Vert                   <plug>\Vert ' | ||||
| exe s:pA14a.'backslash              <plug>\backslash ' | ||||
| exe s:pA14a.'diagdown               <plug>\diagdown ' | ||||
| exe s:pA14a.'Bbbk                   <plug>\Bbbk ' | ||||
| exe s:pA14a.'P                      <plug>\P ' | ||||
| exe s:pA14a.'S                      <plug>\S ' | ||||
| " }}} | ||||
| " {{{ Symbols2 | ||||
| let s:pA14b = s:pA."&Symbols2." | ||||
| exe s:pA14b.'#                      <plug>\# ' | ||||
| exe s:pA14b.'%                      <plug>\% ' | ||||
| exe s:pA14b.'_                      <plug>\_ ' | ||||
| exe s:pA14b.'$                      <plug>\$ ' | ||||
| exe s:pA14b.'&                      <plug>\& ' | ||||
| exe s:pA14b.'imath                  <plug>\imath ' | ||||
| exe s:pA14b.'jmath                  <plug>\jmath ' | ||||
| exe s:pA14b.'ell                    <plug>\ell ' | ||||
| exe s:pA14b.'wp                     <plug>\wp ' | ||||
| exe s:pA14b.'Re                     <plug>\Re ' | ||||
| exe s:pA14b.'Im                     <plug>\Im ' | ||||
| exe s:pA14b.'prime                  <plug>\prime ' | ||||
| exe s:pA14b.'backprime              <plug>\backprime ' | ||||
| exe s:pA14b.'nabla                  <plug>\nabla ' | ||||
| exe s:pA14b.'surd                   <plug>\surd ' | ||||
| exe s:pA14b.'flat                   <plug>\flat ' | ||||
| exe s:pA14b.'sharp                  <plug>\sharp ' | ||||
| exe s:pA14b.'natural                <plug>\natural ' | ||||
| exe s:pA14b.'eth                    <plug>\eth ' | ||||
| exe s:pA14b.'bigstar                <plug>\bigstar ' | ||||
| exe s:pA14b.'circledS               <plug>\circledS ' | ||||
| exe s:pA14b.'Finv                   <plug>\Finv ' | ||||
| exe s:pA14b.'dag                    <plug>\dag ' | ||||
| exe s:pA14b.'ddag                   <plug>\ddag ' | ||||
| " }}} | ||||
| " {{{ Symbols3 | ||||
| let s:pA14c = s:pA."&Symbols3." | ||||
| exe s:pA14c.'angle                  <plug>\angle ' | ||||
| exe s:pA14c.'measuredangle          <plug>\measuredangle ' | ||||
| exe s:pA14c.'sphericalangle         <plug>\sphericalangle ' | ||||
| exe s:pA14c.'spadesuit              <plug>\spadesuit ' | ||||
| exe s:pA14c.'heartsuit              <plug>\heartsuit ' | ||||
| exe s:pA14c.'diamondsuit            <plug>\diamondsuit ' | ||||
| exe s:pA14c.'clubsuit               <plug>\clubsuit ' | ||||
| exe s:pA14c.'lozenge                <plug>\lozenge ' | ||||
| exe s:pA14c.'blacklozenge           <plug>\blacklozenge ' | ||||
| exe s:pA14c.'Diamond                <plug>\Diamond ' | ||||
| exe s:pA14c.'triangle               <plug>\triangle ' | ||||
| exe s:pA14c.'vartriangle            <plug>\vartriangle ' | ||||
| exe s:pA14c.'blacktriangle          <plug>\blacktriangle ' | ||||
| exe s:pA14c.'triangledown           <plug>\triangledown ' | ||||
| exe s:pA14c.'blacktriangledown      <plug>\blacktriangledown ' | ||||
| exe s:pA14c.'Box                    <plug>\Box ' | ||||
| exe s:pA14c.'square                 <plug>\square ' | ||||
| exe s:pA14c.'blacksquare            <plug>\blacksquare ' | ||||
| exe s:pA14c.'complement             <plug>\complement ' | ||||
| exe s:pA14c.'mho                    <plug>\mho ' | ||||
| exe s:pA14c.'Game                   <plug>\Game ' | ||||
| exe s:pA14c.'partial<Tab>`6         <plug>\partial ' | ||||
| exe s:pA14c.'smallint               <plug>\smallint ' | ||||
| " }}} | ||||
| " {{{ Logic | ||||
| let s:pA15 = s:pA."&Logic." | ||||
| exe s:pA15.'lnot                    <plug>\lnot ' | ||||
| exe s:pA15.'lor                     <plug>\lor ' | ||||
| exe s:pA15.'land                    <plug>\land ' | ||||
| " }}} | ||||
| " {{{ Limits1 | ||||
| let s:pA16 = s:pA."&Limits1." | ||||
| exe s:pA16.'left                    <plug>\left' | ||||
| exe s:pA16.'right                   <plug>\right' | ||||
| exe s:pA16.'-sepbigl- :' | ||||
| exe s:pA16.'bigl                    <plug>\bigl' | ||||
| exe s:pA16.'Bigl                    <plug>\Bigl' | ||||
| exe s:pA16.'biggl                   <plug>\biggl' | ||||
| exe s:pA16.'Biggl                   <plug>\Biggl' | ||||
| exe s:pA16.'-sepbigr- :' | ||||
| exe s:pA16.'bigr                    <plug>\bigr' | ||||
| exe s:pA16.'Bigr                    <plug>\Bigr' | ||||
| exe s:pA16.'biggr                   <plug>\biggr' | ||||
| exe s:pA16.'Biggr                   <plug>\Biggr' | ||||
| exe s:pA16.'-sepbig- :' | ||||
| exe s:pA16.'big                     <plug>\big' | ||||
| exe s:pA16.'bigm                    <plug>\bigm' | ||||
| exe s:pA16.'-sepfloor- :' | ||||
| exe s:pA16.'lfloor                  <plug>\lfloor ' | ||||
| exe s:pA16.'lceil                   <plug>\lceil ' | ||||
| exe s:pA16.'rfloor                  <plug>\rfloor ' | ||||
| exe s:pA16.'rceil                   <plug>\rceil ' | ||||
| exe s:pA16.'-sepangle- :' | ||||
| exe s:pA16.'langle                  <plug>\langle ' | ||||
| exe s:pA16.'rangle                  <plug>\rangle ' | ||||
| " }}} | ||||
| " {{{ Limits2 | ||||
| let s:pA16a = s:pA."&Limits2." | ||||
| exe s:pA16a.'ulcorner               <plug>\ulcorner ' | ||||
| exe s:pA16a.'urcorner               <plug>\urcorner ' | ||||
| exe s:pA16a.'llcorner               <plug>\llcorner ' | ||||
| exe s:pA16a.'rlcorner               <plug>\rlcorner ' | ||||
| exe s:pA16a.'-sepcorner- :' | ||||
| exe s:pA16a.'vert                   <plug>\vert ' | ||||
| exe s:pA16a.'Vert                   <plug>\Vert ' | ||||
| exe s:pA16a.'lvert                  <plug>\lvert ' | ||||
| exe s:pA16a.'lVert                  <plug>\lVert ' | ||||
| exe s:pA16a.'rvert                  <plug>\rvert ' | ||||
| exe s:pA16a.'rVert                  <plug>\rVert ' | ||||
| exe s:pA16a.'uparrow                <plug>\uparrow ' | ||||
| exe s:pA16a.'Uparrow                <plug>\Uparrow ' | ||||
| exe s:pA16a.'downarrow              <plug>\downarrow ' | ||||
| exe s:pA16a.'Downarrow              <plug>\Downarrow ' | ||||
| exe s:pA16a.'updownarrow            <plug>\updownarrow ' | ||||
| exe s:pA16a.'Updownarrow            <plug>\Updownarrow ' | ||||
| exe s:pA16a.'lgroup                 <plug>\lgroup ' | ||||
| exe s:pA16a.'rgroup                 <plug>\rgroup ' | ||||
| exe s:pA16a.'lmoustache             <plug>\lmoustache ' | ||||
| exe s:pA16a.'rmoustache             <plug>\rmoustache ' | ||||
| exe s:pA16a.'arrowvert              <plug>\arrowvert ' | ||||
| exe s:pA16a.'Arrowvert              <plug>\Arrowvert ' | ||||
| exe s:pA16a.'bracevert              <plug>\bracevert ' | ||||
| " }}} | ||||
| " {{{ Log-likes | ||||
| let s:pA17 = s:pA."Lo&g-likes." | ||||
| exe s:pA17.'arccos                  <plug>\arccos ' | ||||
| exe s:pA17.'arcsin                  <plug>\arcsin ' | ||||
| exe s:pA17.'arctan                  <plug>\arctan ' | ||||
| exe s:pA17.'arg                     <plug>\arg ' | ||||
| exe s:pA17.'cos                     <plug>\cos ' | ||||
| exe s:pA17.'cosh                    <plug>\cosh ' | ||||
| exe s:pA17.'cot                     <plug>\cot ' | ||||
| exe s:pA17.'coth                    <plug>\coth ' | ||||
| exe s:pA17.'csc                     <plug>\csc ' | ||||
| exe s:pA17.'deg                     <plug>\deg ' | ||||
| exe s:pA17.'det                     <plug>\det ' | ||||
| exe s:pA17.'dim                     <plug>\dim ' | ||||
| exe s:pA17.'exp                     <plug>\exp ' | ||||
| exe s:pA17.'gcd                     <plug>\gcd ' | ||||
| exe s:pA17.'hom                     <plug>\hom ' | ||||
| exe s:pA17.'inf                     <plug>\inf ' | ||||
| exe s:pA17.'injlim                  <plug>\injlim ' | ||||
| exe s:pA17.'ker                     <plug>\ker ' | ||||
| exe s:pA17.'lg                      <plug>\lg ' | ||||
| exe s:pA17.'lim                     <plug>\lim ' | ||||
| exe s:pA17.'liminf                  <plug>\liminf ' | ||||
| exe s:pA17.'limsup                  <plug>\limsup ' | ||||
| exe s:pA17.'ln                      <plug>\ln ' | ||||
| exe s:pA17.'log                     <plug>\log ' | ||||
| exe s:pA17.'max                     <plug>\max ' | ||||
| exe s:pA17.'min                     <plug>\min ' | ||||
| exe s:pA17.'Pr                      <plug>\Pr ' | ||||
| exe s:pA17.'projlim                 <plug>\projlim ' | ||||
| exe s:pA17.'sec                     <plug>\sec ' | ||||
| exe s:pA17.'sin                     <plug>\sin ' | ||||
| exe s:pA17.'sinh                    <plug>\sinh ' | ||||
| exe s:pA17.'sup                     <plug>\sup ' | ||||
| exe s:pA17.'tan                     <plug>\tan ' | ||||
| exe s:pA17.'tanh                    <plug>\tanh ' | ||||
| exe s:pA17.'varlimsup               <plug>\varlimsup ' | ||||
| exe s:pA17.'varliminf               <plug>\varliminf ' | ||||
| exe s:pA17.'varinjlim               <plug>\varinjlim ' | ||||
| exe s:pA17.'varprojlim              <plug>\varprojlim ' | ||||
| " }}} | ||||
| " {{{ MathSpacing | ||||
| let s:pA18 = s:pA."MathSpacing." | ||||
| exe s:pA18.',                       <plug>\, ' | ||||
| exe s:pA18.':                       <plug>\: ' | ||||
| exe s:pA18.';                       <plug>\; ' | ||||
| exe s:pA18.'[space]                 <plug>\  ' | ||||
| exe s:pA18.'quad                    <plug>\quad ' | ||||
| exe s:pA18.'qquad                   <plug>\qquad ' | ||||
| exe s:pA18.'!                       <plug>\! ' | ||||
| exe s:pA18.'thinspace               <plug>\thinspace ' | ||||
| exe s:pA18.'medspace                <plug>\medspace ' | ||||
| exe s:pA18.'thickspace              <plug>\thickspace ' | ||||
| exe s:pA18.'negthinspace            <plug>\negthinspace ' | ||||
| exe s:pA18.'negmedspace             <plug>\negmedspace ' | ||||
| exe s:pA18.'negthickspace           <plug>\negthickspace ' | ||||
| " 1}}} | ||||
| 
 | ||||
| " vim:fdm=marker:ff=unix:noet:ts=4:sw=4 | ||||
							
								
								
									
										16
									
								
								vim/vim-latex/ftplugin/latex-suite/multicompile.vim
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										16
									
								
								vim/vim-latex/ftplugin/latex-suite/multicompile.vim
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,16 @@ | |||
| " ============================================================================ | ||||
| " 	     File: multicompile.vim | ||||
| "      Author: Srinath Avadhanula | ||||
| "     Created: Sat Jul 05 03:00 PM 2003  | ||||
| " Description: compile a .tex file multiple times to get cross references | ||||
| "              right. | ||||
| "     License: Vim Charityware License | ||||
| "              Part of vim-latexSuite: http://vim-latex.sourceforge.net | ||||
| " ============================================================================ | ||||
| 
 | ||||
| " The contents of this file have been moved to compiler.vim, the file which | ||||
| " contains all functions relevant to compiling and viewing. | ||||
| " This file is kept empty on purpose so that it will over-write previous | ||||
| " versions of multicompile.vim, therby preventing conflicts. | ||||
| 
 | ||||
| " vim:fdm=marker:nowrap:noet:ff=unix:ts=4:sw=4 | ||||
							
								
								
									
										194
									
								
								vim/vim-latex/ftplugin/latex-suite/outline.py
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										194
									
								
								vim/vim-latex/ftplugin/latex-suite/outline.py
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,194 @@ | |||
| #!/usr/bin/python | ||||
| 
 | ||||
| # Part of Latex-Suite | ||||
| # | ||||
| # Copyright: Srinath Avadhanula | ||||
| # Description: | ||||
| #   This file implements a simple outline creation for latex documents. | ||||
| 
 | ||||
| import re | ||||
| import os | ||||
| import sys | ||||
| import StringIO | ||||
| 
 | ||||
| # getFileContents {{{ | ||||
| def getFileContents(fname): | ||||
|     if type(fname) is not str: | ||||
|         fname = fname.group(3) | ||||
| 
 | ||||
|     # If neither the file or file.tex exists, then we just give up. | ||||
|     if not os.path.isfile(fname): | ||||
|         if os.path.isfile(fname + '.tex'): | ||||
|             fname += '.tex' | ||||
|         else: | ||||
|             return '' | ||||
| 
 | ||||
|     try: | ||||
|         # This longish thing is to make sure that all files are converted into | ||||
|         # \n seperated lines. | ||||
|         contents = '\n'.join(open(fname).read().splitlines()) | ||||
|     except IOError: | ||||
|         return '' | ||||
| 
 | ||||
|     # TODO what are all the ways in which a tex file can include another? | ||||
|     pat = re.compile(r'^\\(@?)(include|input){(.*?)}', re.M) | ||||
|     contents = re.sub(pat, getFileContents, contents) | ||||
| 
 | ||||
|     return ('%%==== FILENAME: %s' % fname) + '\n' + contents | ||||
| 
 | ||||
| # }}} | ||||
| # stripComments {{{ | ||||
| def stripComments(contents): | ||||
|     # remove all comments except those of the form | ||||
|     # %%==== FILENAME: <filename.tex> | ||||
|     # BUG: This comment right after a new paragraph is not recognized: foo\\%comment | ||||
|     uncomm = [re.sub('(?<!\\\\)%(?!==== FILENAME: ).*', '', line) for line in contents.splitlines()] | ||||
|     # also remove all only-whitespace lines. | ||||
|     nonempty = [line for line in uncomm if line.strip()] | ||||
| 
 | ||||
|     return nonempty | ||||
| # }}} | ||||
| # addFileNameAndNumber {{{ | ||||
| def addFileNameAndNumber(lines): | ||||
|     filename = '' | ||||
|     retval = '' | ||||
|     for line in lines: | ||||
|         if re.match('%==== FILENAME: ', line): | ||||
|             filename = line.split('%==== FILENAME: ')[1] | ||||
|         else: | ||||
|             retval += '<%s>%s\n' % (filename, line) | ||||
| 
 | ||||
|     return retval | ||||
| # }}} | ||||
| # getSectionLabels_Root {{{ | ||||
| def getSectionLabels_Root(lineinfo, section_prefix, label_prefix): | ||||
|     prev_txt = '' | ||||
|     inside_env = 0 | ||||
|     prev_env = '' | ||||
|     outstr = StringIO.StringIO('') | ||||
|     pres_depth = len(section_prefix) | ||||
| 
 | ||||
|     #print '+getSectionLabels_Root: lineinfo = [%s]' % lineinfo | ||||
|     for line in lineinfo.splitlines(): | ||||
|         if not line: | ||||
|             continue | ||||
| 
 | ||||
|         # throw away leading white-space | ||||
|         m = re.search('<(.*?)>(.*)', line) | ||||
| 
 | ||||
|         fname = m.group(1) | ||||
|         line = m.group(2).lstrip() | ||||
| 
 | ||||
|         # we found a label! | ||||
|         m = re.search(r'\\label{(%s.*?)}' % label_prefix, line) | ||||
|         if m: | ||||
|             # add the current line (except the \label command) to the text | ||||
|             # which will be displayed below this label | ||||
|             prev_txt += re.search(r'(^.*?)\\label{', line).group(1) | ||||
| 
 | ||||
|             # for the figure environment however, just display the caption. | ||||
|             # instead of everything since the \begin command. | ||||
|             if prev_env == 'figure': | ||||
|                 cm = re.search(r'\caption(\[.*?\]\s*)?{(.*?)}', prev_txt) | ||||
|                 if cm: | ||||
|                     prev_txt = cm.group(2) | ||||
| 
 | ||||
|             # print a nice formatted text entry like so | ||||
|             # | ||||
|             # >        eqn:label | ||||
|             # :          e^{i\pi} + 1 = 0 | ||||
|             # | ||||
|             # Use the current "section depth" for the leading indentation. | ||||
|             print >>outstr, '>%s%s\t\t<%s>' % (' '*(2*pres_depth+2), | ||||
|                     m.group(1), fname) | ||||
|             print >>outstr, ':%s%s' % (' '*(2*pres_depth+4), prev_txt) | ||||
|             prev_txt = '' | ||||
| 
 | ||||
|         # If we just encoutered the start or end of an environment or a | ||||
|         # label, then do not remember this line.  | ||||
|         # NOTE: This assumes that there is no equation text on the same | ||||
|         # line as the \begin or \end command. The text on the same line as | ||||
|         # the \label was already handled. | ||||
|         if re.search(r'\\begin{(equation|eqnarray|align|figure)', line): | ||||
|             prev_txt = '' | ||||
|             prev_env = re.search(r'\\begin{(.*?)}', line).group(1) | ||||
|             inside_env = 1 | ||||
| 
 | ||||
|         elif re.search(r'\\label', line): | ||||
|             prev_txt = '' | ||||
| 
 | ||||
|         elif re.search(r'\\end{(equation|eqnarray|align|figure)', line): | ||||
|             inside_env = 0 | ||||
|             prev_env = '' | ||||
| 
 | ||||
|         else: | ||||
|             # If we are inside an environment, then the text displayed with | ||||
|             # the label is the complete text within the environment, | ||||
|             # otherwise its just the previous line. | ||||
|             if inside_env: | ||||
|                 prev_txt += line | ||||
|             else: | ||||
|                 prev_txt = line | ||||
| 
 | ||||
|     return outstr.getvalue() | ||||
|      | ||||
| # }}} | ||||
| # getSectionLabels {{{ | ||||
| def getSectionLabels(lineinfo,  | ||||
|         sectypes=['chapter', 'section', 'subsection', 'subsubsection'],  | ||||
|         section_prefix='', label_prefix=''): | ||||
| 
 | ||||
|     if not sectypes: | ||||
|         return getSectionLabels_Root(lineinfo, section_prefix, label_prefix) | ||||
| 
 | ||||
|     ##print 'sectypes[0] = %s, section_prefix = [%s], lineinfo = [%s]' % ( | ||||
|     ##        sectypes[0], section_prefix, lineinfo) | ||||
| 
 | ||||
|     sections = re.split(r'(<.*?>\\%s{.*})' % sectypes[0], lineinfo) | ||||
|      | ||||
|     # there will 1+2n sections, the first containing the "preamble" and the | ||||
|     # others containing the child sections as paris of [section_name, | ||||
|     # section_text] | ||||
| 
 | ||||
|     rettext = getSectionLabels(sections[0], sectypes[1:], section_prefix, label_prefix) | ||||
|   | ||||
|     for i in range(1,len(sections),2): | ||||
|         sec_num = (i+1)/2 | ||||
|         section_name = re.search(r'\\%s{(.*?)}' % sectypes[0], sections[i]).group(1) | ||||
|         section_label_text = getSectionLabels(sections[i] + sections[i+1], sectypes[1:],  | ||||
|                                     section_prefix+('%d.' % sec_num), label_prefix) | ||||
| 
 | ||||
|         if section_label_text: | ||||
|             sec_heading = 2*' '*len(section_prefix) + section_prefix | ||||
|             sec_heading += '%d. %s' % (sec_num, section_name) | ||||
|             sec_heading += '<<<%d\n' % (len(section_prefix)/2+1) | ||||
| 
 | ||||
|             rettext += sec_heading + section_label_text | ||||
| 
 | ||||
|     return rettext | ||||
|      | ||||
| # }}} | ||||
| 
 | ||||
| # main {{{ | ||||
| def main(fname, label_prefix): | ||||
|     [head, tail] = os.path.split(fname) | ||||
|     if head: | ||||
|         os.chdir(head) | ||||
| 
 | ||||
|     contents = getFileContents(fname) | ||||
|     nonempty = stripComments(contents) | ||||
|     lineinfo = addFileNameAndNumber(nonempty) | ||||
| 
 | ||||
|     return getSectionLabels(lineinfo, label_prefix=label_prefix) | ||||
| # }}} | ||||
| 
 | ||||
| if __name__ == "__main__": | ||||
|     if len(sys.argv) > 2: | ||||
|         prefix = sys.argv[2] | ||||
|     else: | ||||
|         prefix = '' | ||||
| 
 | ||||
|     print main(sys.argv[1], prefix) | ||||
| 
 | ||||
| 
 | ||||
| # vim: fdm=marker | ||||
							
								
								
									
										676
									
								
								vim/vim-latex/ftplugin/latex-suite/packages.vim
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										676
									
								
								vim/vim-latex/ftplugin/latex-suite/packages.vim
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,676 @@ | |||
| "============================================================================= | ||||
| " 	     File: packages.vim | ||||
| "      Author: Mikolaj Machowski | ||||
| "     Created: Tue Apr 23 06:00 PM 2002 PST | ||||
| "  | ||||
| "  Description: handling packages from within vim | ||||
| "============================================================================= | ||||
| 
 | ||||
| " avoid reinclusion. | ||||
| if !g:Tex_PackagesMenu || exists('s:doneOnce') | ||||
| 	finish | ||||
| endif | ||||
| let s:doneOnce = 1 | ||||
| 
 | ||||
| let s:path = fnameescape(expand("<sfile>:p:h")) | ||||
| 
 | ||||
| let s:menu_div = 20 | ||||
| 
 | ||||
| com! -nargs=0 TPackageUpdate :silent! call Tex_pack_updateall(1) | ||||
| com! -nargs=0 TPackageUpdateAll :silent! call Tex_pack_updateall(1) | ||||
| 
 | ||||
| " Custom command-line completion of Tcommands is very useful but this feature | ||||
| " is available only in Vim 6.2 and above. Check number of version and choose | ||||
| " proper command and function. | ||||
| if v:version >= 602 | ||||
| 	com! -complete=custom,Tex_CompletePackageName -nargs=* TPackage let s:retVal = Tex_pack_one(<f-args>) <bar> normal! i<C-r>=s:retVal<CR> | ||||
| 
 | ||||
| 	" Tex_CompletePackageName: for completing names in TPackage command {{{ | ||||
| 	"	Description: get list of package names with globpath(), remove full path | ||||
| 	"	and return list of names separated with newlines. | ||||
| 	" | ||||
| 	function! Tex_CompletePackageName(A,P,L) | ||||
| 		" Get name of packages from all runtimepath directories | ||||
| 		let packnames = Tex_FindInRtp('', 'packages') | ||||
| 		let packnames = substitute(packnames, '^,', '', 'e') | ||||
| 		" Separate names with \n not , | ||||
| 		let packnames = substitute(packnames,',','\n','g') | ||||
| 		return packnames | ||||
| 	endfunction | ||||
| 	" }}} | ||||
| 	 | ||||
| else  | ||||
| 	com! -nargs=* TPackage let s:retVal = Tex_pack_one(<f-args>) <bar> normal! i<C-r>=s:retVal<CR> | ||||
| 
 | ||||
| endif | ||||
| 
 | ||||
| imap <silent> <plug> <Nop> | ||||
| nmap <silent> <plug> i | ||||
| 
 | ||||
| let g:Tex_package_supported = '' | ||||
| let g:Tex_package_detected = '' | ||||
| " Remember the defaults because we want g:Tex_PromptedEnvironments to contain | ||||
| " in addition to the default, \newenvironments, and the \newenvironments might | ||||
| " change... | ||||
| let g:Tex_PromptedEnvironmentsDefault = g:Tex_PromptedEnvironments | ||||
| let g:Tex_PromptedCommandsDefault = g:Tex_PromptedCommands | ||||
| 
 | ||||
| 
 | ||||
| " Tex_pack_check: creates the package menu and adds to 'dict' setting. {{{ | ||||
| " | ||||
| function! Tex_pack_check(package) | ||||
| 	" Use Tex_FindInRtp() function to get first name from packages list in all | ||||
| 	" rtp directories conforming with latex-suite directories hierarchy | ||||
| 	" Store names in variables to process functions only once. | ||||
| 	let packname = Tex_FindInRtp(a:package, 'packages') | ||||
| 	if packname != '' | ||||
| 		exe 'runtime! ftplugin/latex-suite/packages/' . a:package | ||||
| 		if has("gui_running") | ||||
| 			call Tex_pack(a:package) | ||||
| 		endif | ||||
| 		if g:Tex_package_supported !~ a:package | ||||
| 			let g:Tex_package_supported = g:Tex_package_supported.','.a:package | ||||
| 		endif | ||||
| 	endif | ||||
| 	" Return full list of dictionaries (separated with ,) for package in &rtp | ||||
| 	call Tex_Debug("Tex_pack_check: searching for ".a:package." in dictionaries/ in &rtp", "pack") | ||||
| 	let dictname = Tex_FindInRtp(a:package, 'dictionaries', ':p') | ||||
| 	if dictname != '' | ||||
| 		exe 'setlocal dict^=' . dictname | ||||
| 		call Tex_Debug('Tex_pack_check: setlocal dict^=' . dictname, 'pack') | ||||
| 		if g:Tex_package_supported !~ a:package | ||||
| 			let g:Tex_package_supported = g:Tex_package_supported.','.a:package | ||||
| 		endif | ||||
| 	endif | ||||
| 	if g:Tex_package_detected !~ '\<'.a:package.'\>' | ||||
| 		let g:Tex_package_detected = g:Tex_package_detected.','.a:package | ||||
| 	endif | ||||
| 	let g:Tex_package_detected = substitute(g:Tex_package_detected, '^,', '', '') | ||||
| 	let g:Tex_package_supported = substitute(g:Tex_package_supported, '^,', '', '') | ||||
| endfunction | ||||
| 
 | ||||
| " }}} | ||||
| " Tex_pack_uncheck: removes package from menu and 'dict' settings. {{{ | ||||
| function! Tex_pack_uncheck(package) | ||||
| 	if has("gui_running") && Tex_FindInRtp(a:package, 'packages') != '' | ||||
| 		exe 'silent! aunmenu '.g:Tex_PackagesMenuLocation.'-sep'.a:package.'-' | ||||
| 		exe 'silent! aunmenu '.g:Tex_PackagesMenuLocation.a:package.'\ Options' | ||||
| 		exe 'silent! aunmenu '.g:Tex_PackagesMenuLocation.a:package.'\ Commands' | ||||
| 	endif | ||||
| 	if Tex_FindInRtp(a:package, 'dictionaries') != '' | ||||
| 		exe 'setlocal dict-='.Tex_FindInRtp(a:package, 'dictionaries') | ||||
| 	endif | ||||
| endfunction | ||||
| 
 | ||||
| " }}} | ||||
| " Tex_pack_updateall: updates the TeX-Packages menu {{{ | ||||
| " Description: | ||||
| " 	This function first calls Tex_pack_all to scan for \usepackage's etc if | ||||
| " 	necessary. After that, it 'supports' and 'unsupports' packages as needed | ||||
| " 	in such a way as to not repeat work. | ||||
| function! Tex_pack_updateall(force) | ||||
| 	call Tex_Debug('+Tex_pack_updateall', 'pack') | ||||
| 
 | ||||
| 	" Find out which file we need to scan. | ||||
| 	let fname = Tex_GetMainFileName(':p') | ||||
| 
 | ||||
| 	" If this is the same as last time, don't repeat. | ||||
| 	if !a:force && exists('s:lastScannedFile') && | ||||
| 				\ s:lastScannedFile == fname | ||||
| 		return | ||||
| 	endif | ||||
| 	" Remember which file we scanned for next time. | ||||
| 	let s:lastScannedFile = fname | ||||
| 
 | ||||
| 	" Remember which packages we detected last time. | ||||
| 	if exists('g:Tex_package_detected') | ||||
| 		let oldpackages = g:Tex_package_detected | ||||
| 	else | ||||
| 		let oldpackages = '' | ||||
| 	endif | ||||
| 
 | ||||
| 	" This sets up a global variable of all detected packages. | ||||
| 	let g:Tex_package_detected = '' | ||||
| 	" reset the environments and commands. | ||||
| 	let g:Tex_PromptedEnvironments = g:Tex_PromptedEnvironmentsDefault | ||||
| 	let g:Tex_PromptedCommands = g:Tex_PromptedCommandsDefault | ||||
| 
 | ||||
| 	if expand('%:p') != fname | ||||
| 		call Tex_Debug(':Tex_pack_updateall: sview '.Tex_EscapeSpaces(fname), 'pack') | ||||
| 		exe 'sview '.Tex_EscapeSpaces(fname) | ||||
| 	else | ||||
| 		call Tex_Debug(':Tex_pack_updateall: split', 'pack') | ||||
| 		split | ||||
| 	endif | ||||
| 		 | ||||
| 	call Tex_ScanForPackages() | ||||
| 	q | ||||
| 
 | ||||
| 	call Tex_Debug(':Tex_pack_updateall: detected ['.g:Tex_package_detected.'] in first run', 'pack') | ||||
| 	 | ||||
| 	" Now for each package find out if this is a custom package and if so, | ||||
| 	" scan that as well. We will use the ':find' command in vim to let vim | ||||
| 	" search through the file paths for us. | ||||
| 	" | ||||
| 	" NOTE: This while loop will also take into account packages included | ||||
| 	"       within packages to any level of recursion as long as | ||||
| 	"       g:Tex_package_detected is always padded with new package names | ||||
| 	"       from the end. | ||||
| 	" | ||||
| 	" First set the &path setting to the user's TEXINPUTS setting. | ||||
| 	let _path = &path | ||||
| 	let _suffixesadd = &suffixesadd | ||||
| 
 | ||||
| 	let &path = '.,'.g:Tex_TEXINPUTS | ||||
| 	let &suffixesadd = '.sty,.tex' | ||||
| 
 | ||||
| 	let scannedPackages = '' | ||||
| 
 | ||||
| 	let i = 1 | ||||
| 	let packname = Tex_Strntok(g:Tex_package_detected, ',', i) | ||||
| 	while packname != '' | ||||
| 
 | ||||
| 		call Tex_Debug(':Tex_pack_updateall: scanning package '.packname, 'pack') | ||||
| 
 | ||||
| 		" Scan this package only if we have not scanned it before in this | ||||
| 		" run. | ||||
| 		if scannedPackages =~ '\<'.packname.'\>' | ||||
| 			let i = i + 1 | ||||
| 
 | ||||
| 			call Tex_Debug(':Tex_pack_updateall: '.packname.' already scanned', 'pack') | ||||
| 			let packname = Tex_Strntok(g:Tex_package_detected, ',', i) | ||||
| 			continue | ||||
| 		endif  | ||||
| 
 | ||||
| 		" Split this window in two. The packages/files being found will open | ||||
| 		" in this new window and we also need not bother with files being | ||||
| 		" modified etc. | ||||
| 		split | ||||
| 
 | ||||
| 		call Tex_Debug(':Tex_pack_updateall: silent! find '.Tex_EscapeSpaces(packname).'.sty', 'pack') | ||||
| 		let thisbufnum = bufnr('%') | ||||
| 		exec 'silent! find '.Tex_EscapeSpaces(packname).'.sty' | ||||
| 		call Tex_Debug(':Tex_pack_updateall: present file = '.bufname('%'), 'pack') | ||||
| 
 | ||||
| 		" If this file was not found, assume that it means its not a | ||||
| 		" custom package and mark it "scanned". | ||||
| 		" A package is not found if we stay in the same buffer as before and | ||||
| 		" its not the one where we want to go. | ||||
| 		if bufnr('%') == thisbufnum && bufnr('%') != bufnr(packname.'.sty') | ||||
| 			let scannedPackages = scannedPackages.','.packname | ||||
| 			q | ||||
| 
 | ||||
| 			call Tex_Debug(':Tex_pack_updateall: '.packname.' not found anywhere', 'pack') | ||||
| 			let i = i + 1 | ||||
| 			let packname = Tex_Strntok(g:Tex_package_detected, ',', i) | ||||
| 			continue | ||||
| 		endif | ||||
| 
 | ||||
| 		" otherwise we are presently editing a custom package, scan it for | ||||
| 		" more \usepackage lines from the first line to the last. | ||||
| 		let packpath = expand('%:p') | ||||
| 		let &complete = &complete.'s'.packpath | ||||
| 
 | ||||
| 		call Tex_Debug(':Tex_pack_updateall: found custom package '.packpath, 'pack') | ||||
| 		call Tex_ScanForPackages(line('$'), line('$')) | ||||
| 		call Tex_Debug(':Tex_pack_updateall: After scanning, g:Tex_package_detected = '.g:Tex_package_detected, 'pack') | ||||
| 
 | ||||
| 		let scannedPackages = scannedPackages.','.packname | ||||
| 		" Do not use bwipe, but that leads to excessive buffer number | ||||
| 		" consumption. Besides, its intuitive for a custom package to remain | ||||
| 		" on the buffer list. | ||||
| 		q | ||||
| 
 | ||||
| 		let i = i + 1 | ||||
| 		let packname = Tex_Strntok(g:Tex_package_detected, ',', i) | ||||
| 	endwhile | ||||
| 
 | ||||
| 	let &path = _path | ||||
| 	let &suffixesadd = _suffixesadd | ||||
| 
 | ||||
| 	" Now only support packages we didn't last time. | ||||
| 	" First remove packages which were used last time but are no longer used. | ||||
| 	let i = 1 | ||||
| 	let oldPackName = Tex_Strntok(oldpackages, ',', i) | ||||
| 	while oldPackName != '' | ||||
| 		if g:Tex_package_detected !~ oldPackName | ||||
| 			call Tex_pack_uncheck(oldPackName) | ||||
| 		endif | ||||
| 		let i = i + 1 | ||||
| 		let oldPackName = Tex_Strntok(oldpackages, ',', i) | ||||
| 	endwhile | ||||
| 
 | ||||
| 	" Then support packages which are used this time but weren't used last | ||||
| 	" time. | ||||
| 	let i = 1 | ||||
| 	let newPackName = Tex_Strntok(g:Tex_package_detected, ',', i) | ||||
| 	while newPackName != '' | ||||
| 		if oldpackages !~ newPackName | ||||
| 			call Tex_pack_one(newPackName) | ||||
| 		endif | ||||
| 		let i = i + 1 | ||||
| 		let newPackName = Tex_Strntok(g:Tex_package_detected, ',', i) | ||||
| 	endwhile | ||||
| 
 | ||||
| 	" Throw an event that we are done scanning packages. Some packages might | ||||
| 	" use this to change behavior based on which options have been used etc. | ||||
| 	call Tex_Debug(":Tex_pack_updateall: throwing LatexSuiteScannedPackages event", "pack") | ||||
| 	silent! do LatexSuite User LatexSuiteScannedPackages | ||||
| 
 | ||||
| 	call Tex_Debug("-Tex_pack_updateall", "pack") | ||||
| endfunction | ||||
| 
 | ||||
| " }}} | ||||
| " Tex_pack_one: supports each package in the argument list.{{{ | ||||
| " Description: | ||||
| "   If no arguments are supplied, then the user is asked to choose from the | ||||
| "   packages found in the packages/ directory | ||||
| function! Tex_pack_one(...) | ||||
| 	if a:0 == 0 || (a:0 > 0 && a:1 == '') | ||||
| 		let packlist = Tex_FindInRtp('', 'packages') | ||||
| 		let packname = Tex_ChooseFromPrompt( | ||||
| 					\ "Choose a package: \n" .  | ||||
| 					\ Tex_CreatePrompt(packlist, '3', ',') . | ||||
| 					\ "\nEnter number or filename :",  | ||||
| 					\ packlist, ',') | ||||
| 		if packname != '' | ||||
| 			return Tex_pack_one(packname) | ||||
| 		else | ||||
| 			return '' | ||||
| 		endif | ||||
| 	else | ||||
| 		" Support the packages supplied. This function can be called with | ||||
| 		" multiple arguments in which case, support each of them in turn. | ||||
| 		let retVal = '' | ||||
| 		let omega = 1 | ||||
| 		while omega <= a:0 | ||||
| 			let packname = a:{omega} | ||||
| 			if Tex_FindInRtp(packname, 'packages') != '' | ||||
| 				call Tex_pack_check(packname) | ||||
| 				if exists('g:TeX_package_option_'.packname) | ||||
| 						\ && g:TeX_package_option_{packname} != '' | ||||
| 					let retVal = retVal.'\usepackage[<++>]{'.packname.'}<++>' | ||||
| 				else | ||||
| 					let retVal = retVal.'\usepackage{'.packname.'}'."\<CR>" | ||||
| 				endif | ||||
| 			else | ||||
| 				let retVal = retVal.'\usepackage{'.packname.'}'."\<CR>" | ||||
| 			endif | ||||
| 			let omega = omega + 1 | ||||
| 		endwhile | ||||
| 		return IMAP_PutTextWithMovement(substitute(retVal, "\<CR>$", '', ''), '<+', '+>') | ||||
| 	endif | ||||
| endfunction | ||||
| " }}} | ||||
| " Tex_ScanForPackages: scans the current file for \usepackage{} lines {{{ | ||||
| "   and if supported, loads the options and commands found in the | ||||
| "   corresponding package file. Also scans for \newenvironment and | ||||
| "   \newcommand lines and adds names to g:Tex_Prompted variables, they can be | ||||
| "   easy available through <F5> and <F7> shortcuts  | ||||
| function! Tex_ScanForPackages(...) | ||||
| 	call Tex_Debug("+Tex_ScanForPackages", "pack") | ||||
| 
 | ||||
| 	let pos = Tex_GetPos() | ||||
| 
 | ||||
| 	" For package files without \begin and \end{document}, we might be told to | ||||
| 	" search from beginning to end. | ||||
| 	if a:0 < 2 | ||||
| 		0 | ||||
| 		let beginline = search('\\begin{document}', 'W') | ||||
| 		let endline = search('\\end{document}', 'W') | ||||
| 		0 | ||||
| 	else | ||||
| 		let beginline = a:1 | ||||
| 		let endline = a:2 | ||||
| 	endif | ||||
| 
 | ||||
| 	call Tex_Debug(":Tex_ScanForPackages: Begining scans in [".bufname('%')."], beginline = ".beginline, "pack") | ||||
| 	 | ||||
| 
 | ||||
| 	" Scan the file. First open up all the folds, because the command | ||||
| 	" /somepattern | ||||
| 	" issued in a closed fold _always_ goes to the first match. | ||||
| 	let erm = v:errmsg | ||||
| 	silent! normal! ggVGzO | ||||
| 	let v:errmsg = erm | ||||
| 
 | ||||
| 	call Tex_Debug(":Tex_ScanForPackages: beginning scan for \\usepackage lines", "pack") | ||||
| 	" The wrap trick enables us to match \usepackage on the first line as | ||||
| 	" well. | ||||
| 	let wrap = 'w' | ||||
| 	while search('^\s*\\usepackage\_.\{-}{\_.\+}', wrap) | ||||
| 		let wrap = 'W' | ||||
| 
 | ||||
| 		if line('.') > beginline  | ||||
| 			break | ||||
| 		endif | ||||
| 
 | ||||
| 		let saveUnnamed = @" | ||||
| 		let saveA = @a | ||||
| 
 | ||||
| 		" If there are options, then find those. | ||||
| 		if getline('.') =~ '\\usepackage\[.\{-}\]' | ||||
| 			let options = matchstr(getline('.'), '\\usepackage\[\zs.\{-}\ze\]') | ||||
| 		elseif getline('.') =~ '\\usepackage\[' | ||||
| 			" Entering here means that the user has split the \usepackage | ||||
| 			" across newlines. Therefore, use yank. | ||||
| 			exec "normal! /{\<CR>\"ayi}" | ||||
| 			let options = @a | ||||
| 		else | ||||
| 			let options = '' | ||||
| 		endif | ||||
| 
 | ||||
| 		" The following statement puts the stuff between the { }'s of a | ||||
| 		" \usepackage{stuff,foo} into @a. Do not use matchstr() and the like | ||||
| 		" because we can have things split across lines and such. | ||||
|        	exec "normal! /{\<CR>\"ay/}\<CR>" | ||||
| 
 | ||||
| 		" now remove all whitespace from @a. We need to remove \n and \r | ||||
| 		" because we can encounter stuff like | ||||
| 		" \usepackage{pack1, | ||||
| 		"             newpackonanotherline} | ||||
| 		let @a = substitute(@a, "[ \t\n\r]", '', 'g') | ||||
| 
 | ||||
| 		" Now we have something like pack1,pack2,pack3 with possibly commas | ||||
| 		" and stuff before the first package and after the last package name. | ||||
| 		" Remove those. | ||||
| 		let @a = substitute(@a, '\(^\W*\|\W*$\)', '', 'g') | ||||
| 
 | ||||
| 		" This gets us a string like 'pack1,pack2,pack3' | ||||
| 		" TODO: This will contain duplicates if the user has duplicates. | ||||
| 		"       Should we bother taking care of this? | ||||
| 		let g:Tex_package_detected = g:Tex_package_detected.','.@a | ||||
| 
 | ||||
| 		" For each package found, form a global variable of the form | ||||
| 		" g:Tex_{packagename}_options  | ||||
| 		" which contains a list of the options. | ||||
| 		let j = 1 | ||||
| 		while Tex_Strntok(@a, ',', j) != '' | ||||
| 			let g:Tex_{Tex_Strntok(@a, ',', j)}_options = options | ||||
| 			let j = j + 1 | ||||
| 		endwhile | ||||
| 
 | ||||
| 		" Finally convert @a into something like '"pack1","pack2"' | ||||
| 		let @a = substitute(@a, '^\|$', '"', 'g') | ||||
| 		let @a = substitute(@a, ',', '","', 'g') | ||||
| 
 | ||||
| 		call Tex_Debug(":Tex_ScanForPackages: found package(s) [".@a."] on line ".line('.'), "pack") | ||||
| 
 | ||||
| 		" restore @a | ||||
| 		let @a = saveA | ||||
| 		let @" = saveUnnamed | ||||
| 	endwhile | ||||
| 	call Tex_Debug(":Tex_ScanForPackages: End scan \\usepackage, detected packages = ".g:Tex_package_detected, "pack") | ||||
| 
 | ||||
| 	" TODO: This needs to be changed. In the future, we might have | ||||
| 	" functionality to remember the fold-state before opening up all the folds | ||||
| 	" and then re-creating them. Use mkview.vim. | ||||
| 	let erm = v:errmsg | ||||
| 	silent! normal! ggVGzC | ||||
| 	let v:errmsg = erm | ||||
| 
 | ||||
| 	" Because creating list of detected packages gives string | ||||
| 	" ',pack1,pack2,pack3' remove leading , | ||||
| 	let g:Tex_package_detected = substitute(g:Tex_package_detected, '^,', '', '') | ||||
| 
 | ||||
| 	call Tex_Debug(":Tex_ScanForPackages: Beginning scan for \\newcommand's", "pack") | ||||
| 	" Scans whole file (up to \end{document}) for \newcommand and adds this | ||||
| 	" commands to g:Tex_PromptedCommands variable, it is easily available | ||||
| 	" through <F7> | ||||
| 	0  | ||||
| 	while search('^\s*\\newcommand\*\?{.\{-}}', 'W') | ||||
| 
 | ||||
| 		if line('.') > endline  | ||||
| 			break | ||||
| 		endif | ||||
| 
 | ||||
| 		let newcommand = matchstr(getline('.'), '\\newcommand\*\?{\\\zs.\{-}\ze}') | ||||
| 		let g:Tex_PromptedCommands = g:Tex_PromptedCommands . ',' . newcommand | ||||
| 
 | ||||
| 	endwhile | ||||
| 
 | ||||
| 	" Scans whole file (up to \end{document}) for \newenvironment and adds this | ||||
| 	" environments to g:Tex_PromptedEnvironments variable, it is easily available | ||||
| 	" through <F5> | ||||
| 	0 | ||||
| 	call Tex_Debug(":Tex_ScanForPackages: Beginning scan for \\newenvironment's", 'pack') | ||||
| 
 | ||||
| 	while search('^\s*\\newenvironment\*\?{.\{-}}', 'W') | ||||
| 		call Tex_Debug('found newenvironment on '.line('.'), 'pack') | ||||
| 
 | ||||
| 		if line('.') > endline  | ||||
| 			break | ||||
| 		endif | ||||
| 
 | ||||
| 		let newenvironment = matchstr(getline('.'), '\\newenvironment\*\?{\zs.\{-}\ze}') | ||||
| 		let g:Tex_PromptedEnvironments = g:Tex_PromptedEnvironments . ',' . newenvironment | ||||
| 
 | ||||
| 	endwhile | ||||
| 
 | ||||
| 	call Tex_SetPos(pos) | ||||
| 	" first make a random search so that we push at least one item onto the | ||||
| 	" search history. Since vim puts only one item in the history per function | ||||
| 	" call, this way we make sure that one and only item is put into the | ||||
| 	" search history. | ||||
| 	normal! /^<CR> | ||||
| 	" now delete it... | ||||
| 	call histdel('/', -1) | ||||
| 
 | ||||
| 	call Tex_Debug("-Tex_ScanForPackages", "pack") | ||||
| endfunction | ||||
|     | ||||
| " }}} | ||||
| " Tex_pack_supp_menu: sets up a menu for package files {{{ | ||||
| "   found in the packages directory groups the packages thus found into groups | ||||
| "   of 20... | ||||
| function! Tex_pack_supp_menu() | ||||
| 	let suplist = Tex_FindInRtp('', 'packages') | ||||
| 
 | ||||
| 	call Tex_MakeSubmenu(suplist, g:Tex_PackagesMenuLocation.'Supported.',  | ||||
| 		\ '<plug><C-r>=Tex_pack_one("', '")<CR>') | ||||
| endfunction  | ||||
| 
 | ||||
| " }}} | ||||
| " Tex_pack: loads the options (and commands) for the given package {{{ | ||||
| function! Tex_pack(pack) | ||||
| 	if exists('g:TeX_package_'.a:pack) | ||||
| 
 | ||||
| 		let optionList = g:TeX_package_option_{a:pack}.',' | ||||
| 		let commandList = g:TeX_package_{a:pack}.',' | ||||
| 
 | ||||
| 		" Don't create separator if in package file are only Vim commands.  | ||||
| 		" Rare but possible. | ||||
| 		if !(commandList == ',' && optionList == ',') | ||||
| 			exec 'amenu '.g:Tex_PackagesMenuLocation.'-sep'.a:pack.'- <Nop>' | ||||
| 		endif | ||||
| 
 | ||||
| 		if optionList != '' | ||||
| 
 | ||||
| 			let mainMenuName = g:Tex_PackagesMenuLocation.a:pack.'\ Options.' | ||||
| 			call s:GroupPackageMenuItems(optionList, mainMenuName,  | ||||
| 				\ '<plug><C-r>=IMAP_PutTextWithMovement("', ',")<CR>') | ||||
| 
 | ||||
| 		endif | ||||
| 
 | ||||
| 		if commandList != '' | ||||
| 
 | ||||
| 			let mainMenuName = g:Tex_PackagesMenuLocation.a:pack.'\ Commands.' | ||||
| 			call s:GroupPackageMenuItems(commandList, mainMenuName,  | ||||
| 				\ '<plug><C-r>=Tex_ProcessPackageCommand("', '")<CR>', | ||||
| 				\ '<SID>FilterPackageMenuLHS') | ||||
| 		endif | ||||
| 	endif | ||||
| endfunction  | ||||
| 
 | ||||
| " }}} | ||||
| 
 | ||||
| " ============================================================================== | ||||
| " Menu Functions | ||||
| " Creating menu items for the all the package files found in the packages/ | ||||
| " directory as well as creating menus for each supported package found in the | ||||
| " preamble. | ||||
| " ==============================================================================  | ||||
| " Tex_MakeSubmenu: makes a submenu given a list of items {{{ | ||||
| " Description:  | ||||
| "   This function takes a comma seperated list of menu items and creates a | ||||
| "   'grouped' menu. i.e, it groups the items into s:menu_div items each and | ||||
| "   puts them in submenus of the given mainMenu. | ||||
| "   Each menu item is linked to the HandlerFunc. | ||||
| "   If an additional argument is supplied, then it is used to filter each of | ||||
| "   the menu items to generate better names for the menu display. | ||||
| " | ||||
| function! Tex_MakeSubmenu(menuList, mainMenuName,  | ||||
| 				\ handlerFuncLHS, handlerFuncRHS, ...) | ||||
| 
 | ||||
| 	let extractFunction = (a:0 > 0 ? a:1 : '' ) | ||||
| 	let menuList = substitute(a:menuList, '[^,]$', ',', '') | ||||
| 
 | ||||
| 	let doneMenuSubmenu = 0 | ||||
| 
 | ||||
| 	while menuList != '' | ||||
| 
 | ||||
| 		" Extract upto s:menu_div menus at once. | ||||
| 		let menuBunch = matchstr(menuList, '\v(.{-},){,'.s:menu_div.'}') | ||||
| 
 | ||||
| 		" The remaining menus go into the list. | ||||
| 		let menuList = strpart(menuList, strlen(menuBunch)) | ||||
| 
 | ||||
| 		let submenu = '' | ||||
| 		" If there is something remaining, then we got s:menu_div items. | ||||
| 		" therefore put these menu items into a submenu. | ||||
| 		if strlen(menuList) || doneMenuSubmenu | ||||
| 			exec 'let firstMenu = '.extractFunction."(matchstr(menuBunch, '\\v^.{-}\\ze,'))" | ||||
| 			exec 'let lastMenu = '.extractFunction."(matchstr(menuBunch, '\\v[^,]{-}\\ze,$'))" | ||||
| 
 | ||||
| 			let submenu = firstMenu.'\ \-\ '.lastMenu.'.' | ||||
| 
 | ||||
| 			let doneMenuSubmenu = 1 | ||||
| 		endif | ||||
| 
 | ||||
| 		" Now for each menu create a menu under the submenu | ||||
| 		let i = 1 | ||||
| 		let menuName = Tex_Strntok(menuBunch, ',', i) | ||||
| 		while menuName != '' | ||||
| 			exec 'let menuItem = '.extractFunction.'(menuName)' | ||||
| 			execute 'amenu '.a:mainMenuName.submenu.menuItem | ||||
| 				\ '       '.a:handlerFuncLHS.menuName.a:handlerFuncRHS | ||||
| 
 | ||||
| 			let i = i + 1 | ||||
| 			let menuName = Tex_Strntok(menuBunch, ',', i) | ||||
| 		endwhile | ||||
| 	endwhile | ||||
| endfunction  | ||||
| 
 | ||||
| " }}} | ||||
| " GroupPackageMenuItems: uses the sbr: to split menus into groups {{{ | ||||
| " Description:  | ||||
| "   This function first splits up the menuList into groups based on the | ||||
| "   special sbr: tag and then calls Tex_MakeSubmenu  | ||||
| "  | ||||
| function! <SID>GroupPackageMenuItems(menuList, menuName,  | ||||
| 					\ handlerFuncLHS, handlerFuncRHS,...) | ||||
| 
 | ||||
| 	if a:0 > 0 | ||||
| 		let extractFunction = a:1 | ||||
| 	else | ||||
| 		let extractFunction = '' | ||||
| 	endif | ||||
| 	let menuList = a:menuList | ||||
| 
 | ||||
| 	while matchstr(menuList, 'sbr:') != '' | ||||
| 		let groupName = matchstr(menuList, '\v^sbr:\zs.{-}\ze,') | ||||
| 		let menuList = strpart(menuList, strlen('sbr:'.groupName.',')) | ||||
| 		if matchstr(menuList, 'sbr:') != '' | ||||
| 			let menuGroup = matchstr(menuList, '\v^.{-},\zesbr:') | ||||
| 		else | ||||
| 			let menuGroup = menuList | ||||
| 		endif | ||||
| 
 | ||||
| 		call Tex_MakeSubmenu(menuGroup, a:menuName.groupName.'.',  | ||||
| 			\ a:handlerFuncLHS, a:handlerFuncRHS, extractFunction) | ||||
| 
 | ||||
| 		let menuList = strpart(menuList, strlen(menuGroup)) | ||||
| 	endwhile | ||||
| 
 | ||||
| 	call Tex_MakeSubmenu(menuList, a:menuName, | ||||
| 		\ a:handlerFuncLHS, a:handlerFuncRHS, extractFunction) | ||||
| 
 | ||||
| endfunction " }}} | ||||
| " Definition of what to do for various package commands {{{ | ||||
| let s:CommandSpec_brs = '\<+replace+><++>' | ||||
| let s:CommandSpec_bra = '\<+replace+>{<++>}<++>' | ||||
| let s:CommandSpec_brd = '\<+replace+>{<++>}{<++>}<++>' | ||||
| 
 | ||||
| let s:CommandSpec_nor = '\<+replace+>' | ||||
| let s:CommandSpec_noo = '\<+replace+>[<++>]' | ||||
| let s:CommandSpec_nob = '\<+replace+>[<++>]{<++>}{<++>}<++>' | ||||
| 
 | ||||
| let s:CommandSpec_env = '\begin{<+replace+>}'."\<CR><++>\<CR>".'\end{<+replace+>}<++>' | ||||
| let s:CommandSpec_ens = '\begin{<+replace+>}<+extra+>'."\<CR><++>\<CR>".'\end{<+replace+>}<++>' | ||||
| let s:CommandSpec_eno = '\begin[<++>]{<+replace+>}'."\<CR><++>\<CR>".'\end{<+replace+>}' | ||||
| 
 | ||||
| let s:CommandSpec_spe = '<+replace+>' | ||||
| let s:CommandSpec_    = '\<+replace+>' | ||||
| 
 | ||||
| let s:MenuLHS_bra = '\\&<+replace+>{}' | ||||
| let s:MenuLHS_brs = '\\&<+replace+>{}' | ||||
| let s:MenuLHS_brd = '\\&<+replace+>{}{}' | ||||
| let s:MenuLHS_env = '&<+replace+>\ (E)' | ||||
| let s:MenuLHS_ens = '&<+replace+>\ (E)' | ||||
| let s:MenuLHS_eno = '&<+replace+>\ (E)' | ||||
| let s:MenuLHS_nor = '\\&<+replace+>' | ||||
| let s:MenuLHS_noo = '\\&<+replace+>[]' | ||||
| let s:MenuLHS_nob = '\\&<+replace+>[]{}{}' | ||||
| let s:MenuLHS_spe = '&<+replace+>' | ||||
| let s:MenuLHS_sep = '-sep<+replace+>-' | ||||
| let s:MenuLHS_    = '\\&<+replace+>' | ||||
| " }}} | ||||
| " Tex_ProcessPackageCommand: processes a command from the package menu {{{ | ||||
| " Description:  | ||||
| function! Tex_ProcessPackageCommand(command) | ||||
| 	if a:command =~ ':' | ||||
| 		let commandType = matchstr(a:command, '^\w\+\ze:') | ||||
| 		let commandName = matchstr(a:command, '^\w\+:\zs[^:]\+\ze:\?') | ||||
| 		let extrapart = strpart(a:command, strlen(commandType.':'.commandName.':')) | ||||
| 	else | ||||
| 		let commandType = '' | ||||
| 		let commandName = a:command | ||||
| 		let extrapart = '' | ||||
| 	endif | ||||
| 
 | ||||
| 	let command = s:CommandSpec_{commandType} | ||||
| 	let command = substitute(command, '<+replace+>', commandName, 'g') | ||||
| 	let command = substitute(command, '<+extra+>', extrapart, 'g') | ||||
| 	return IMAP_PutTextWithMovement(command) | ||||
| endfunction  | ||||
| " }}} | ||||
| " FilterPackageMenuLHS: filters the command description to provide a better menu item {{{ | ||||
| " Description:  | ||||
| function! <SID>FilterPackageMenuLHS(command) | ||||
| 	let commandType = matchstr(a:command, '^\w\+\ze:') | ||||
| 	if commandType != '' | ||||
| 		let commandName = strpart(a:command, strlen(commandType.':')) | ||||
| 	else | ||||
| 		let commandName = a:command | ||||
| 	endif | ||||
| 
 | ||||
| 	return substitute(s:MenuLHS_{commandType}, '<+replace+>', commandName, 'g') | ||||
| endfunction " }}} | ||||
| 
 | ||||
| if g:Tex_Menus | ||||
| 	exe 'amenu '.g:Tex_PackagesMenuLocation.'&UpdatePackage :call Tex_pack(expand("<cword>"))<cr>' | ||||
| 	exe 'amenu '.g:Tex_PackagesMenuLocation.'&UpdateAll :call Tex_pack_updateall(1)<cr>' | ||||
| 
 | ||||
|  	call Tex_pack_supp_menu() | ||||
| endif | ||||
| 
 | ||||
| augroup LatexSuite | ||||
| 	au LatexSuite User LatexSuiteFileType  | ||||
| 		\ call Tex_Debug('packages.vim: Catching LatexSuiteFileType event', 'pack') |  | ||||
| 		\ let s:save_clipboard = &clipboard | | ||||
| 		\ set clipboard= | | ||||
| 		\ call Tex_pack_updateall(0) | | ||||
| 		\ let &clipboard=s:save_clipboard | ||||
| augroup END | ||||
| 
 | ||||
| " vim:fdm=marker:ts=4:sw=4:noet:ff=unix | ||||
							
								
								
									
										315
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/SIunits
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										315
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/SIunits
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,315 @@ | |||
| if exists("SIunits_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let SIunits_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_SIunits =  | ||||
| \'nor:addprefix,'. | ||||
| \'nor:addunit,'. | ||||
| \'nor:ampere,'. | ||||
| \'nor:amperemetresecond,'. | ||||
| \'nor:amperepermetre,'. | ||||
| \'nor:amperepermetrenp,'. | ||||
| \'nor:amperepersquaremetre,'. | ||||
| \'nor:amperepersquaremetrenp,'. | ||||
| \'nor:angstrom,'. | ||||
| \'nor:arad,'. | ||||
| \'nor:arcminute,'. | ||||
| \'nor:arcsecond,'. | ||||
| \'nor:are,'. | ||||
| \'nor:atomicmass,'. | ||||
| \'nor:atto,'. | ||||
| \'nor:attod,'. | ||||
| \'nor:barn,'. | ||||
| \'nor:bbar,'. | ||||
| \'nor:becquerel,'. | ||||
| \'nor:becquerelbase,'. | ||||
| \'nor:bel,'. | ||||
| \'nor:candela,'. | ||||
| \'nor:candelapersquaremetre,'. | ||||
| \'nor:candelapersquaremetrenp,'. | ||||
| \'nor:celsius,'. | ||||
| \'nor:Celsius,'. | ||||
| \'nor:celsiusbase,'. | ||||
| \'nor:centi,'. | ||||
| \'nor:centid,'. | ||||
| \'nor:coulomb,'. | ||||
| \'nor:coulombbase,'. | ||||
| \'nor:coulombpercubicmetre,'. | ||||
| \'nor:coulombpercubicmetrenp,'. | ||||
| \'nor:coulombperkilogram,'. | ||||
| \'nor:coulombperkilogramnp,'. | ||||
| \'nor:coulombpermol,'. | ||||
| \'nor:coulombpermolnp,'. | ||||
| \'nor:coulombpersquaremetre,'. | ||||
| \'nor:coulombpersquaremetrenp,'. | ||||
| \'nor:cubed,'. | ||||
| \'nor:cubic,'. | ||||
| \'nor:cubicmetre,'. | ||||
| \'nor:cubicmetreperkilogram,'. | ||||
| \'nor:cubicmetrepersecond,'. | ||||
| \'nor:curie,'. | ||||
| \'nor:dday,'. | ||||
| \'nor:deca,'. | ||||
| \'nor:decad,'. | ||||
| \'nor:deci,'. | ||||
| \'nor:decid,'. | ||||
| \'nor:degree,'. | ||||
| \'nor:degreecelsius,'. | ||||
| \'nor:deka,'. | ||||
| \'nor:dekad,'. | ||||
| \'nor:derbecquerel,'. | ||||
| \'nor:dercelsius,'. | ||||
| \'nor:dercoulomb,'. | ||||
| \'nor:derfarad,'. | ||||
| \'nor:dergray,'. | ||||
| \'nor:derhenry,'. | ||||
| \'nor:derhertz,'. | ||||
| \'nor:derjoule,'. | ||||
| \'nor:derkatal,'. | ||||
| \'nor:derlumen,'. | ||||
| \'nor:derlux,'. | ||||
| \'nor:dernewton,'. | ||||
| \'nor:derohm,'. | ||||
| \'nor:derpascal,'. | ||||
| \'nor:derradian,'. | ||||
| \'nor:dersiemens,'. | ||||
| \'nor:dersievert,'. | ||||
| \'nor:dersteradian,'. | ||||
| \'nor:dertesla,'. | ||||
| \'nor:dervolt,'. | ||||
| \'nor:derwatt,'. | ||||
| \'nor:derweber,'. | ||||
| \'nor:electronvolt,'. | ||||
| \'nor:exa,'. | ||||
| \'nor:exad,'. | ||||
| \'nor:farad,'. | ||||
| \'nor:faradbase,'. | ||||
| \'nor:faradpermetre,'. | ||||
| \'nor:faradpermetrenp,'. | ||||
| \'nor:femto,'. | ||||
| \'nor:femtod,'. | ||||
| \'nor:fourth,'. | ||||
| \'nor:gal,'. | ||||
| \'nor:giga,'. | ||||
| \'nor:gigad,'. | ||||
| \'nor:gram,'. | ||||
| \'nor:graybase,'. | ||||
| \'nor:graypersecond,'. | ||||
| \'nor:graypersecondnp,'. | ||||
| \'nor:hectare,'. | ||||
| \'nor:hecto,'. | ||||
| \'nor:hectod,'. | ||||
| \'nor:henry,'. | ||||
| \'nor:henrybase,'. | ||||
| \'nor:henrypermetre,'. | ||||
| \'nor:henrypermetrenp,'. | ||||
| \'nor:hertz,'. | ||||
| \'nor:hertzbase,'. | ||||
| \'nor:hour,'. | ||||
| \'nor:joule,'. | ||||
| \'nor:joulebase,'. | ||||
| \'nor:joulepercubicmetre,'. | ||||
| \'nor:joulepercubicmetrenp,'. | ||||
| \'nor:jouleperkelvin,'. | ||||
| \'nor:jouleperkelvinnp,'. | ||||
| \'nor:jouleperkilogram,'. | ||||
| \'nor:jouleperkilogramkelvin,'. | ||||
| \'nor:jouleperkilogramkelvinnp,'. | ||||
| \'nor:jouleperkilogramnp,'. | ||||
| \'nor:joulepermole,'. | ||||
| \'nor:joulepermolekelvin,'. | ||||
| \'nor:joulepermolekelvinnp,'. | ||||
| \'nor:joulepermolenp,'. | ||||
| \'nor:joulepersquaremetre,'. | ||||
| \'nor:joulepersquaremetrenp,'. | ||||
| \'nor:joulepertesla,'. | ||||
| \'nor:jouleperteslanp,'. | ||||
| \'nor:katal,'. | ||||
| \'nor:katalbase,'. | ||||
| \'nor:katalpercubicmetre,'. | ||||
| \'nor:katalpercubicmetrenp,'. | ||||
| \'nor:kelvin,'. | ||||
| \'nor:kilo,'. | ||||
| \'nor:kilod,'. | ||||
| \'nor:kilogram,'. | ||||
| \'nor:kilogrammetrepersecond,'. | ||||
| \'nor:kilogrammetrepersecondnp,'. | ||||
| \'nor:kilogrammetrepersquaresecond,'. | ||||
| \'nor:kilogrammetrepersquaresecondnp,'. | ||||
| \'nor:kilogrampercubicmetre,'. | ||||
| \'nor:kilogrampercubicmetrecoulomb,'. | ||||
| \'nor:kilogrampercubicmetrecoulombnp,'. | ||||
| \'nor:kilogrampercubicmetrenp,'. | ||||
| \'nor:kilogramperkilomole,'. | ||||
| \'nor:kilogramperkilomolenp,'. | ||||
| \'nor:kilogrampermetre,'. | ||||
| \'nor:kilogrampermetrenp,'. | ||||
| \'nor:kilogrampersecond,'. | ||||
| \'nor:kilogrampersecondcubicmetre,'. | ||||
| \'nor:kilogrampersecondcubicmetrenp,'. | ||||
| \'nor:kilogrampersecondnp,'. | ||||
| \'nor:kilogrampersquaremetre,'. | ||||
| \'nor:kilogrampersquaremetrenp,'. | ||||
| \'nor:kilogrampersquaremetresecond,'. | ||||
| \'nor:kilogrampersquaremetresecondnp,'. | ||||
| \'nor:kilogramsquaremetre,'. | ||||
| \'nor:kilogramsquaremetrenp,'. | ||||
| \'nor:kilogramsquaremetrepersecond,'. | ||||
| \'nor:kilogramsquaremetrepersecondnp,'. | ||||
| \'nor:kilowatthour,'. | ||||
| \'nor:liter,'. | ||||
| \'nor:litre,'. | ||||
| \'nor:lumen,'. | ||||
| \'nor:lumenbase,'. | ||||
| \'nor:lux,'. | ||||
| \'nor:luxbase,'. | ||||
| \'nor:mega,'. | ||||
| \'nor:megad,'. | ||||
| \'nor:meter,'. | ||||
| \'nor:metre,'. | ||||
| \'nor:metrepersecond,'. | ||||
| \'nor:metrepersecondnp,'. | ||||
| \'nor:metrepersquaresecond,'. | ||||
| \'nor:metrepersquaresecondnp,'. | ||||
| \'nor:micro,'. | ||||
| \'nor:microd,'. | ||||
| \'nor:milli,'. | ||||
| \'nor:millid,'. | ||||
| \'nor:minute,'. | ||||
| \'nor:mole,'. | ||||
| \'nor:molepercubicmetre,'. | ||||
| \'nor:molepercubicmetrenp,'. | ||||
| \'nor:nano,'. | ||||
| \'nor:nanod,'. | ||||
| \'nor:neper,'. | ||||
| \'nor:newton,'. | ||||
| \'nor:newtonbase,'. | ||||
| \'nor:newtonmetre,'. | ||||
| \'nor:newtonpercubicmetre,'. | ||||
| \'nor:newtonpercubicmetrenp,'. | ||||
| \'nor:newtonperkilogram,'. | ||||
| \'nor:newtonperkilogramnp,'. | ||||
| \'nor:newtonpermetre,'. | ||||
| \'nor:newtonpermetrenp,'. | ||||
| \'nor:newtonpersquaremetre,'. | ||||
| \'nor:newtonpersquaremetrenp,'. | ||||
| \'nor:NoAMS,'. | ||||
| \'nor:no@qsk,'. | ||||
| \'nor:ohm,'. | ||||
| \'nor:ohmbase,'. | ||||
| \'nor:ohmmetre,'. | ||||
| \'nor:one,'. | ||||
| \'nor:paminute,'. | ||||
| \'nor:pascal,'. | ||||
| \'nor:pascalbase,'. | ||||
| \'nor:pascalsecond,'. | ||||
| \'nor:pasecond,'. | ||||
| \'nor:per,'. | ||||
| \'nor:period@active,'. | ||||
| \'nor:persquaremetresecond,'. | ||||
| \'nor:persquaremetresecondnp,'. | ||||
| \'nor:peta,'. | ||||
| \'nor:petad,'. | ||||
| \'nor:pico,'. | ||||
| \'nor:picod,'. | ||||
| \'nor:power,'. | ||||
| \'nor:@qsk,'. | ||||
| \'nor:quantityskip,'. | ||||
| \'nor:rad,'. | ||||
| \'nor:radian,'. | ||||
| \'nor:radianbase,'. | ||||
| \'nor:radianpersecond,'. | ||||
| \'nor:radianpersecondnp,'. | ||||
| \'nor:radianpersquaresecond,'. | ||||
| \'nor:radianpersquaresecondnp,'. | ||||
| \'nor:reciprocal,'. | ||||
| \'nor:rem,'. | ||||
| \'nor:roentgen,'. | ||||
| \'nor:rp,'. | ||||
| \'nor:rpcubed,'. | ||||
| \'nor:rpcubic,'. | ||||
| \'nor:rpcubicmetreperkilogram,'. | ||||
| \'nor:rpcubicmetrepersecond,'. | ||||
| \'nor:rperminute,'. | ||||
| \'nor:rpersecond,'. | ||||
| \'nor:rpfourth,'. | ||||
| \'nor:rpsquare,'. | ||||
| \'nor:rpsquared,'. | ||||
| \'nor:rpsquaremetreperkilogram,'. | ||||
| \'nor:second,'. | ||||
| \'nor:siemens,'. | ||||
| \'nor:siemensbase,'. | ||||
| \'nor:sievert,'. | ||||
| \'nor:sievertbase,'. | ||||
| \'nor:square,'. | ||||
| \'nor:squared,'. | ||||
| \'nor:squaremetre,'. | ||||
| \'nor:squaremetrepercubicmetre,'. | ||||
| \'nor:squaremetrepercubicmetrenp,'. | ||||
| \'nor:squaremetrepercubicsecond,'. | ||||
| \'nor:squaremetrepercubicsecondnp,'. | ||||
| \'nor:squaremetreperkilogram,'. | ||||
| \'nor:squaremetrepernewtonsecond,'. | ||||
| \'nor:squaremetrepernewtonsecondnp,'. | ||||
| \'nor:squaremetrepersecond,'. | ||||
| \'nor:squaremetrepersecondnp,'. | ||||
| \'nor:squaremetrepersquaresecond,'. | ||||
| \'nor:squaremetrepersquaresecondnp,'. | ||||
| \'nor:steradian,'. | ||||
| \'nor:steradianbase,'. | ||||
| \'nor:tera,'. | ||||
| \'nor:terad,'. | ||||
| \'nor:tesla,'. | ||||
| \'nor:teslabase,'. | ||||
| \'nor:ton,'. | ||||
| \'nor:tonne,'. | ||||
| \'nor:unit,'. | ||||
| \'nor:unitskip,'. | ||||
| \'nor:usk,'. | ||||
| \'nor:volt,'. | ||||
| \'nor:voltbase,'. | ||||
| \'nor:voltpermetre,'. | ||||
| \'nor:voltpermetrenp,'. | ||||
| \'nor:watt,'. | ||||
| \'nor:wattbase,'. | ||||
| \'nor:wattpercubicmetre,'. | ||||
| \'nor:wattpercubicmetrenp,'. | ||||
| \'nor:wattperkilogram,'. | ||||
| \'nor:wattperkilogramnp,'. | ||||
| \'nor:wattpermetrekelvin,'. | ||||
| \'nor:wattpermetrekelvinnp,'. | ||||
| \'nor:wattpersquaremetre,'. | ||||
| \'nor:wattpersquaremetrenp,'. | ||||
| \'nor:wattpersquaremetresteradian,'. | ||||
| \'nor:wattpersquaremetresteradiannp,'. | ||||
| \'nor:weber,'. | ||||
| \'nor:weberbase,'. | ||||
| \'nor:yocto,'. | ||||
| \'nor:yoctod,'. | ||||
| \'nor:yotta,'. | ||||
| \'nor:yottad,'. | ||||
| \'nor:zepto,'. | ||||
| \'nor:zeptod,'. | ||||
| \'nor:zetta,'. | ||||
| \'nor:zettad' | ||||
| 
 | ||||
| let g:TeX_package_option_SIunits =  | ||||
| \'amssymb,'. | ||||
| \'binary,'. | ||||
| \'cdot,'. | ||||
| \'derived,'. | ||||
| \'derivedinbase,'. | ||||
| \'Gray,'. | ||||
| \'mediumqspace,'. | ||||
| \'mediumspace,'. | ||||
| \'noams,'. | ||||
| \'pstricks,'. | ||||
| \'squaren,'. | ||||
| \'textstyle,'. | ||||
| \'thickqspace,'. | ||||
| \'thickspace,'. | ||||
| \'thinqspace,'. | ||||
| \'thinspace' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										28
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/accents
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										28
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/accents
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,28 @@ | |||
| if exists("accents_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let accents_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_accents =  | ||||
| \ 'nonscript,' | ||||
| \.'single' | ||||
| 
 | ||||
| let g:TeX_package_accents =  | ||||
| \ 'bra:grave,' | ||||
| \.'bra:acute,' | ||||
| \.'bra:check,' | ||||
| \.'bra:breve,' | ||||
| \.'bra:bar,' | ||||
| \.'bra:ring,' | ||||
| \.'bra:hat,' | ||||
| \.'bra:dot,' | ||||
| \.'bra:tilde,' | ||||
| \.'bra:undertilde,' | ||||
| \.'bra:ddot,' | ||||
| \.'bra:dddot,' | ||||
| \.'bra:ddddot,' | ||||
| \.'bra:vec,' | ||||
| \.'brd:accentset,' | ||||
| \.'brd:underaccent' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/acromake
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/acromake
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,10 @@ | |||
| if exists("acromake_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let acromake_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_acromake = '' | ||||
| 
 | ||||
| let g:TeX_package_acromake = 'brs:acromake{<++>}{<++>}{<++>}' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/afterpage
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/afterpage
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,10 @@ | |||
| if exists("afterpage_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let afterpage_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_afterpage = '' | ||||
| 
 | ||||
| let g:TeX_package_afterpage = 'bra:afterpage' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										12
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/alltt
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										12
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/alltt
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,12 @@ | |||
| if exists("alltt_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let alltt_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_alltt = '' | ||||
| 
 | ||||
| let g:TeX_package_alltt = 'env:alltt' | ||||
| 
 | ||||
| syn region texZone   start="\\begin{alltt}"  end="\\end{alltt}\|%stopzone\>" fold | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										106
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/amsmath
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										106
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/amsmath
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,106 @@ | |||
| if exists("amsmath_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let amsmath_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_amsmath =  | ||||
| \ 'centertags,' | ||||
| \.'tbtags,' | ||||
| \.'sumlimits,' | ||||
| \.'nosumlimits,' | ||||
| \.'intlimits,' | ||||
| \.'nointlimits,' | ||||
| \.'namelimits,' | ||||
| \.'nonamelimits,' | ||||
| \.'leqno,' | ||||
| \.'reqno,' | ||||
| \.'fleqno' | ||||
| 
 | ||||
| let g:TeX_package_amsmath =  | ||||
| \ 'sbr:Environments,' | ||||
| \.'env:equation,' | ||||
| \.'env:equation*,' | ||||
| \.'env:align,' | ||||
| \.'env:align*,' | ||||
| \.'env:gather,' | ||||
| \.'env:gather*,' | ||||
| \.'env:flalign,' | ||||
| \.'env:flalign*,' | ||||
| \.'env:multline,' | ||||
| \.'env:multline*,' | ||||
| \.'ens:alignat:{<+arg1+>}{<+arg2+>},' | ||||
| \.'env:alignat,' | ||||
| \.'ens:alignat*:{<+arg1+>}{<+arg2+>},,' | ||||
| \.'env:alignat*,' | ||||
| \.'env:subequations,' | ||||
| \.'env:subarray,' | ||||
| \.'env:split,' | ||||
| \.'env:cases,' | ||||
| \.'sbr:Matrices,' | ||||
| \.'env:matrix,' | ||||
| \.'env:pmatrix,' | ||||
| \.'env:bmatrix,' | ||||
| \.'env:Bmatrix,' | ||||
| \.'env:vmatrix,' | ||||
| \.'env:Vmatrix,' | ||||
| \.'env:smallmatrix,' | ||||
| \.'bra:hdotsfor,' | ||||
| \.'sbr:Dots,' | ||||
| \.'dotsc,' | ||||
| \.'dotsb,' | ||||
| \.'dotsm,' | ||||
| \.'dotsi,' | ||||
| \.'dotso,' | ||||
| \.'sbr:ItalicGreek,' | ||||
| \.'nor:varGamma,' | ||||
| \.'nor:varDelta,' | ||||
| \.'nor:varTheta,' | ||||
| \.'nor:varLambda,' | ||||
| \.'nor:varXi,' | ||||
| \.'nor:varPi,' | ||||
| \.'nor:varSigma,' | ||||
| \.'nor:varUpsilon,' | ||||
| \.'nor:varPhi,' | ||||
| \.'nor:varPsi,' | ||||
| \.'nor:varOmega,' | ||||
| \.'sbr:Mod,' | ||||
| \.'nor:mod,' | ||||
| \.'nor:bmod,' | ||||
| \.'nor:pmod,' | ||||
| \.'nor:pod,' | ||||
| \.'sbr:CreatingSymbols,' | ||||
| \.'brd:overset,' | ||||
| \.'brd:underset,' | ||||
| \.'brd:sideset,' | ||||
| \.'sbr:Fractions,' | ||||
| \.'brd:frac,' | ||||
| \.'brd:dfrac,' | ||||
| \.'brd:tfrac,' | ||||
| \.'brd:cfrac,' | ||||
| \.'brd:binom,' | ||||
| \.'brd:dbinom,' | ||||
| \.'brd:tbinom,' | ||||
| \.'brs:genfrac{<+ldelim+>}{<+rdelim+>}{<+thick+>}{<+style+>}{<+numer+>}{<+denom+>},' | ||||
| \.'sbr:Commands,' | ||||
| \.'nob:smash,' | ||||
| \.'bra:substack,' | ||||
| \.'bra:tag,' | ||||
| \.'bra:tag*,' | ||||
| \.'nor:notag,' | ||||
| \.'bra:raisetag,' | ||||
| \.'bra:shoveleft,' | ||||
| \.'bra:shoveright,' | ||||
| \.'bra:intertext,' | ||||
| \.'bra:text,' | ||||
| \.'nor:displaybreak,' | ||||
| \.'noo:displaybreak,' | ||||
| \.'noo:allowdisplaybreaks,' | ||||
| \.'nor:nobreakdash,' | ||||
| \.'brs:numberwithin{<+env+>}{<+parent+>},' | ||||
| \.'bra:leftroot,' | ||||
| \.'bra:uproot,' | ||||
| \.'bra:boxed,' | ||||
| \.'brs:DeclareMathSymbol{<++>}{<++>}{<++>}{<++>},' | ||||
| \.'bra:eqref' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										21
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/amsthm
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										21
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/amsthm
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,21 @@ | |||
| if exists("amsthm_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let amsthm_package_file = 1 | ||||
| 
 | ||||
| let TeX_package_option_amsthm = '' | ||||
| 
 | ||||
| let TeX_package_amsthm =  | ||||
| \ 'env:proof,' | ||||
| \.'nor:swapnumbers,' | ||||
| \.'brd:newtheorem,' | ||||
| \.'brd:newtheorem*,' | ||||
| \.'nor:theoremstyle{plain},' | ||||
| \.'nor:theoremstyle{definition},' | ||||
| \.'nor:theoremstyle{remark},' | ||||
| \.'nor:newtheoremstyle,' | ||||
| \.'nor:qedsymbol,' | ||||
| \.'nor:qed,' | ||||
| \.'nor:qedhere' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										12
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/amsxtra
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										12
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/amsxtra
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,12 @@ | |||
| if exists("amsxtra_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let amsxtra_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_amsxtra = '' | ||||
| 
 | ||||
| let g:TeX_package_amsxtra =  | ||||
| \ 'nor:sphat,' | ||||
| \.'nor:sptilde' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/arabic
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/arabic
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,10 @@ | |||
| if exists("arabic_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let arabic_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_arabic = '' | ||||
| 
 | ||||
| let g:TeX_package_arabic = 'bra:arabicnumeral' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										17
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/array
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										17
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/array
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,17 @@ | |||
| if exists("array_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let array_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_array = '' | ||||
| 
 | ||||
| let g:TeX_package_array  =  | ||||
| \ 'brs:newcolumntype{<+type+>}[<+no+>]{<+preamble+>},' | ||||
| \.'arraycolsep,' | ||||
| \.'tabcolsep,' | ||||
| \.'arrayrulewidth,' | ||||
| \.'doublerulesep,' | ||||
| \.'arraystretch,' | ||||
| \.'extrarowheight' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										98
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/babel
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										98
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/babel
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,98 @@ | |||
| if exists("babel_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let babel_package_file = 1 | ||||
| 
 | ||||
| " This package sets some language specific options. | ||||
| " Since it needs to find out which options the user used with the babel | ||||
| " package, it needs to wait till latex-suite is done scanning packages. It | ||||
| " then catches the LatexSuiteScannedPackages event which | ||||
| " Tex_pack_updateall() throws at which time g:Tex_pack_detected and | ||||
| " g:Tex_babel_options contain the necessary information. | ||||
| 
 | ||||
| let g:TeX_package_option_babel =  | ||||
| \ 'afrikaans,' | ||||
| \.'bahasa,' | ||||
| \.'basque,' | ||||
| \.'breton,' | ||||
| \.'bulgarian,' | ||||
| \.'catalan,' | ||||
| \.'croatian,' | ||||
| \.'chech,' | ||||
| \.'danish,' | ||||
| \.'dutch,' | ||||
| \.'english,USenglish,american,UKenglish,british,canadian,' | ||||
| \.'esperanto,' | ||||
| \.'estonian,' | ||||
| \.'finnish,' | ||||
| \.'french,francais,canadien,acadian,' | ||||
| \.'galician,' | ||||
| \.'austrian,german,germanb,ngerman,naustrian,' | ||||
| \.'greek,polutonikogreek,' | ||||
| \.'hebrew,' | ||||
| \.'magyar,hungarian,' | ||||
| \.'icelandic,' | ||||
| \.'irish,' | ||||
| \.'italian,' | ||||
| \.'latin,' | ||||
| \.'lowersorbian,' | ||||
| \.'samin,' | ||||
| \.'norsk,nynorsk,' | ||||
| \.'polish,' | ||||
| \.'portuges,portuguese,brazilian,brazil,' | ||||
| \.'romanian,' | ||||
| \.'russian,' | ||||
| \.'scottish,' | ||||
| \.'spanish,' | ||||
| \.'slovak,' | ||||
| \.'slovene,' | ||||
| \.'swedish,' | ||||
| \.'serbian,' | ||||
| \.'turkish,' | ||||
| \.'ukrainian,' | ||||
| \.'uppersorbian,' | ||||
| \.'welsh' | ||||
| 
 | ||||
| let g:TeX_package_babel =  | ||||
| \ 'bra:selectlanguage,' | ||||
| \.'env:otherlanguage,' | ||||
| \.'env:otherlanguage*,' | ||||
| \.'env:hyphenrules,' | ||||
| \.'brd:foreignlanguage,' | ||||
| \.'spe:iflanguage{<+name+>}{<+true+>}{<+false+>},' | ||||
| \.'languagename,' | ||||
| \.'bra:useshorthands,' | ||||
| \.'brd:defineshorthand,' | ||||
| \.'brd:aliasshorthand,' | ||||
| \.'bra:languageshorthans,' | ||||
| \.'bra:shorthandon,' | ||||
| \.'bra:shorthandoff,' | ||||
| \.'brd:languageattribute' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
| if exists('s:doneOnce') | ||||
|     finish | ||||
| endif | ||||
| let s:doneOnce = 1 | ||||
| 
 | ||||
| augroup LatexSuite | ||||
|     au LatexSuite User LatexSuiteScannedPackages  | ||||
|         \ call Tex_Debug('babel: catching LatexSuiteScannedPackages event') | | ||||
|         \ call s:SetQuotes() | ||||
| augroup END | ||||
| 
 | ||||
| let s:path = expand('<sfile>:p:h') | ||||
| 
 | ||||
| " SetQuotes: sets quotes for various languages {{{ | ||||
| " Description:  | ||||
| function! <SID>SetQuotes() | ||||
|     if g:Tex_package_detected =~ '\<babel\>' | ||||
|         if g:Tex_babel_options =~ '\<german\>' | ||||
|             exec 'so '.s:path.'/german' | ||||
| 		elseif g:Tex_babel_options =~ '\<ngerman\>' | ||||
|             exec 'so '.s:path.'/ngerman' | ||||
|         endif | ||||
|     endif | ||||
| endfunction " }}} | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										27
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/bar
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										27
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/bar
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,27 @@ | |||
| if exists("bar_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let bar_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_bar = '' | ||||
| 
 | ||||
| let g:TeX_package_bar = | ||||
| \ 'env:barenv,' | ||||
| \.'brs:bar{<+height+>}{<+index+>}[<+desc+>],' | ||||
| \.'hlineon,' | ||||
| \.'brs:legend{<+index+>}{<+text+>},' | ||||
| \.'bra:setdepth,' | ||||
| \.'bra:sethspace,' | ||||
| \.'brs:setlinestyle{<+solid-dotted+>},' | ||||
| \.'brs:setnumberpos{<+empty-axis-down-inside-outside-up+>},' | ||||
| \.'bra:setprecision,' | ||||
| \.'bra:setstretch,' | ||||
| \.'bra:setstyle,' | ||||
| \.'bra:setwidth,' | ||||
| \.'brs:setxaxis{<+w1+>}{<+w2+>}{<+step+>},' | ||||
| \.'brs:setyaxis[<+n+>]{<+w1+>}{<+w2+>}{<+step+>},' | ||||
| \.'brs:setxname[<+lrbt+>]{<+etiquette+>},' | ||||
| \.'brs:setyname[<+lrbt+>]{<+etiquette+>},' | ||||
| \.'brs:setxvaluetyp{<+day-month+>}' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										159
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/biblatex
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										159
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/biblatex
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,159 @@ | |||
| " Biblatex package support v 0.1 2010-02-17 | ||||
| " This file has been written by | ||||
| " Andreas Wagner <Andreas dot Wagner at em dot uni-frankfurt dot de> | ||||
| " based on the documentation of | ||||
| " biblatex 0.8e, July 4 2009. | ||||
| " It can be used, modified and distributed according to the vim license. | ||||
| 
 | ||||
| 
 | ||||
| if exists("biblatex_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let biblatex_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_biblatex =  | ||||
| \ 'style=,' | ||||
| \.'citestyle=,' | ||||
| \.'bibstyle=,' | ||||
| \.'natbib=,' | ||||
| \.'sorting=,' | ||||
| \.'sortlos=,' | ||||
| \.'sortcites=,' | ||||
| \.'maxnames=,' | ||||
| \.'minnames=,' | ||||
| \.'maxitems=,' | ||||
| \.'minitems=,' | ||||
| \.'autocite=,' | ||||
| \.'autopunct=,' | ||||
| \.'babel=,' | ||||
| \.'block=,' | ||||
| \.'hyperref=,' | ||||
| \.'backref=,' | ||||
| \.'indexing=,' | ||||
| \.'loadfiles=,' | ||||
| \.'refsection=,' | ||||
| \.'refsegment=,' | ||||
| \.'citereset=,' | ||||
| \.'abbreviate=,' | ||||
| \.'date=,' | ||||
| \.'urldate=,' | ||||
| \.'defernums=,' | ||||
| \.'punctfont=,' | ||||
| \.'arxiv=,' | ||||
| \.'backend=,' | ||||
| \.'mincrossrefs=,' | ||||
| \.'bibencoding=,' | ||||
| \.'useauthor=,' | ||||
| \.'useeditor=,' | ||||
| \.'usetranslator=,' | ||||
| \.'useprefix=,' | ||||
| \.'skipbib=,' | ||||
| \.'skiplos=,' | ||||
| \.'skiplab=,' | ||||
| \.'dataonly=,' | ||||
| \.'pagetracker=,' | ||||
| \.'citetracker=,' | ||||
| \.'ibidtracker=,' | ||||
| \.'idemtracker=,' | ||||
| \.'opcittracker=,' | ||||
| \.'loccittracker=,' | ||||
| \.'firstinits=,' | ||||
| \.'terseinits=,' | ||||
| \.'labelalpha=,' | ||||
| \.'labelnumber=,' | ||||
| \.'labelyear=,' | ||||
| \.'singletitle=,' | ||||
| \.'uniquename=,' | ||||
| \.'openbib' | ||||
| 
 | ||||
| let g:TeX_package_biblatex = | ||||
| \ 'sbr:preamble,' | ||||
| \.'bra:ExecuteBibliographyOptions{<+key=value+>},' | ||||
| \.'bra:Bibliography{<+file+>},' | ||||
| \.'sbr:localization,' | ||||
| \.'brd:DefineBibliographyStrings{<+lang+>}{<+definitions+>},' | ||||
| \.'brd:DefineBibliographyExtras{<+lang+>}{<+code+>},' | ||||
| \.'brd:UndefineBibliographyExtras{<+lang+>}{<+code+>},' | ||||
| \.'brd:DefineHyphenationExceptions{<+lang+>}{<+text+>},' | ||||
| \.'bra:NewBibliographyString{<+key+>},' | ||||
| \.'sbr:main_commands,' | ||||
| \.'brs:cite[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:Cite[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:cite*[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:parencite[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:Parencite[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:parencite*[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:footcite[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:Footcite[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:textcite[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:Textcite[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'bra:supercite{<+key+>},' | ||||
| \.'brs:autocite[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:Autocite[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:autocite*[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:Autocite*[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'sbr:multicites,' | ||||
| \.'brs:cites(<+prenote+>)(<+postnote+>)[<+prenote+>][<+postnote+>]{<+key+>}[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:Cites(<+prenote+>)(<+postnote+>)[<+prenote+>][<+postnote+>]{<+key+>}[<+prenote+>][<+postnote+>]{<+key+>}[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:parencites(<+prenote+>)(<+postnote+>)[<+prenote+>][<+postnote+>]{<+key+>}[<+prenote+>][<+postnote+>]{<+key+>}[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:Parencites(<+prenote+>)(<+postnote+>)[<+prenote+>][<+postnote+>]{<+key+>}[<+prenote+>][<+postnote+>]{<+key+>}[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:footcites(<+prenote+>)(<+postnote+>)[<+prenote+>][<+postnote+>]{<+key+>}[<+prenote+>][<+postnote+>]{<+key+>}[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:Footcites(<+prenote+>)(<+postnote+>)[<+prenote+>][<+postnote+>]{<+key+>}[<+prenote+>][<+postnote+>]{<+key+>}[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:textcites(<+prenote+>)(<+postnote+>)[<+prenote+>][<+postnote+>]{<+key+>}[<+prenote+>][<+postnote+>]{<+key+>}[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:Textcites(<+prenote+>)(<+postnote+>)[<+prenote+>][<+postnote+>]{<+key+>}[<+prenote+>][<+postnote+>]{<+key+>}[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:supercites(<+prenote+>)(<+postnote+>){<+key+>}{<+key+>},' | ||||
| \.'brs:autocites(<+prenote+>)(<+postnote+>)[<+prenote+>][<+postnote+>]{<+key+>}[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:Autocites(<+prenote+>)(<+postnote+>)[<+prenote+>][<+postnote+>]{<+key+>}[<+prenote+>][<+postnote+>]{<+key+>}[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'sbr:text_commands,' | ||||
| \.'brs:citeauthor[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:Citeauthor[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:citetitle[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:citetitle*[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:citeyear[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:citeurl[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'sbr:special_commands,' | ||||
| \.'bra:nocite{<+key+>},' | ||||
| \.'nor:citereset,' | ||||
| \.'nor:citereset*,' | ||||
| \.'nor:mancite,' | ||||
| \.'brs:fullcite[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:footfullcite[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:volcite[<+prenote+>]{<+volume+>}[<+page+>]{<+key+>},' | ||||
| \.'brs:Volcite[<+prenote+>]{<+volume+>}[<+page+>]{<+key+>},' | ||||
| \.'brs:pvolcite[<+prenote+>]{<+volume+>}[<+page+>]{<+key+>},' | ||||
| \.'brs:Pvolcite[<+prenote+>]{<+volume+>}[<+page+>]{<+key+>},' | ||||
| \.'brs:fvolcite[<+prenote+>]{<+volume+>}[<+page+>]{<+key+>},' | ||||
| \.'brs:Fvolcite[<+prenote+>]{<+volume+>}[<+page+>]{<+key+>},' | ||||
| \.'brs:tvolcite[<+prenote+>]{<+volume+>}[<+page+>]{<+key+>},' | ||||
| \.'brs:Tvolcite[<+prenote+>]{<+volume+>}[<+page+>]{<+key+>},' | ||||
| \.'brs:avolcite[<+prenote+>]{<+volume+>}[<+page+>]{<+key+>},' | ||||
| \.'brs:Avolcite[<+prenote+>]{<+volume+>}[<+page+>]{<+key+>},' | ||||
| \.'brs:notecite[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:Notecite[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:pnotecite[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:Pnotecite[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:fnotecite[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:Fnotecite[<+prenote+>][<+postnote+>]{<+key+>},' | ||||
| \.'brs:citename[<+prenote+>][<+postnote+>]{<+key+>}[<+format+>]{<+list+>},' | ||||
| \.'brs:citelist[<+prenote+>][<+postnote+>]{<+key+>}[<+format+>]{<+list+>},' | ||||
| \.'brs:citefield[<+prenote+>][<+postnote+>]{<+key+>}[<+format+>]{<+field+>},' | ||||
| \.'sbr:sorting,' | ||||
| \.'eno:refsection[<+bibfiles+>],' | ||||
| \.'noo:newrefsection[<+bibfiles+>],' | ||||
| \.'eno:refsegment[<+bibfiles+>],' | ||||
| \.'noo:newsegment[<+bibfiles+>],' | ||||
| \.'bra:DeclareBibliographyCategory{<+category+>},' | ||||
| \.'brd:addtocategory{<+category+>}{<+key+>},' | ||||
| \.'brd:defbibheading{<+name+>}{<+code+>},' | ||||
| \.'brd:defbibnote{<+name+>}{<+text+>},' | ||||
| \.'bra:segment,' | ||||
| \.'bra:type,' | ||||
| \.'bra:keyword,' | ||||
| \.'bra:category,' | ||||
| \.'sbr:endmatter,' | ||||
| \.'noo:printbibliography[<+key=value+>],' | ||||
| \.'noo:printshorthands[<+key=value+>],' | ||||
| \.'noo:bibbysection[<+key=value+>],' | ||||
| \.'noo:bibbysegment[<+key=value+>],' | ||||
| \.'noo:bibbycategory[<+key=value+>]' | ||||
| 
 | ||||
							
								
								
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/bm
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/bm
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,10 @@ | |||
| if exists("bm_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let bm_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_bm = '' | ||||
| 
 | ||||
| let g:TeX_package_bm = 'bra:bm' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										12
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/bophook
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										12
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/bophook
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,12 @@ | |||
| if exists("bophook_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let bophook_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_bophook = '' | ||||
| 
 | ||||
| let g:TeX_package_bophook =  | ||||
| \ 'bra:AtBeginPage,' | ||||
| \.'bra:PageLayout' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/boxedminipage
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/boxedminipage
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,10 @@ | |||
| if exists("boxedminipage_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let boxedminipage_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_boxedminipage = '' | ||||
| 
 | ||||
| let g:TeX_package_boxedminipage = 'ens:boxedminipage:[<+pos+>]{<+size+>}' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										43
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/caption2
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										43
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/caption2
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,43 @@ | |||
| if exists("caption2_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let caption2_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_caption2 =  | ||||
| \ 'scriptsize,' | ||||
| \.'footnotesize,' | ||||
| \.'small,' | ||||
| \.'normalsize,' | ||||
| \.'large,' | ||||
| \.'Large,' | ||||
| \.'up,' | ||||
| \.'it,' | ||||
| \.'sl,' | ||||
| \.'sc,' | ||||
| \.'md,' | ||||
| \.'bf,' | ||||
| \.'rm,' | ||||
| \.'sf,' | ||||
| \.'tt,' | ||||
| \.'ruled,' | ||||
| \.'boxed,' | ||||
| \.'centerlast,' | ||||
| \.'anne,' | ||||
| \.'center,' | ||||
| \.'flushleft,' | ||||
| \.'flushright,' | ||||
| \.'oneline,' | ||||
| \.'nooneline,' | ||||
| \.'hang,' | ||||
| \.'isu,' | ||||
| \.'indent,' | ||||
| \.'longtable' | ||||
| 
 | ||||
| let g:TeX_package_caption2 =  | ||||
| \ 'bra:captionsize,' | ||||
| \.'bra:captionfont,' | ||||
| \.'bra:captionlabelfont,' | ||||
| \.'bra:setcaptionmargin,' | ||||
| \.'bra:setcaptionwidth' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										12
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/cases
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										12
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/cases
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,12 @@ | |||
| if exists("cases_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let cases_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_cases = '' | ||||
| 
 | ||||
| let g:TeX_package_cases =  | ||||
| \ 'ens:numcases:{<+label+>},' | ||||
| \.'ens:subnumcases:{<+label+>}' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										20
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/ccaption
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										20
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/ccaption
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,20 @@ | |||
| if exists("ccaption_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let ccaption_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_ccaption = '' | ||||
| 
 | ||||
| let g:TeX_package_ccaption =  | ||||
| \ 'bra:contcaption,' | ||||
| \.'bra:legend,' | ||||
| \.'bra:namedlegend,' | ||||
| \.'abovelegendskip,' | ||||
| \.'belowlegendskip,' | ||||
| \.'brd:newfixedcaption,' | ||||
| \.'brd:renewfixedcaption,' | ||||
| \.'brd:providefixedcaption,' | ||||
| \.'brs:newfloatenv[<+counter+>]{<+name+>}{<+ext+>}{<+etiq+>},' | ||||
| \.'brd:listfloats' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										35
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/changebar
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										35
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/changebar
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,35 @@ | |||
| if exists("changebar_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let changebar_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_changebar = | ||||
| \ 'DVItoLN03,' | ||||
| \.'dvitoln03,' | ||||
| \.'DVItoPS,' | ||||
| \.'dvitops,' | ||||
| \.'DVIps,' | ||||
| \.'dvips,' | ||||
| \.'emTeX,' | ||||
| \.'emtex,' | ||||
| \.'textures,' | ||||
| \.'Textures,' | ||||
| \.'outerbars,' | ||||
| \.'innerbars,' | ||||
| \.'leftbars,' | ||||
| \.'rightbars,' | ||||
| \.'traceon,' | ||||
| \.'traceoff' | ||||
| 
 | ||||
| let g:TeX_package_changebar = | ||||
| \ 'ens:changebar:[<+thickness+>],' | ||||
| \.'noo:cbstart,' | ||||
| \.'cbend,' | ||||
| \.'cbdelete,' | ||||
| \.'changebarwidth,' | ||||
| \.'deletebarwidth,' | ||||
| \.'changebarsep,' | ||||
| \.'spe:changebargrey,' | ||||
| \.'nochangebars' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										24
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/chapterbib
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										24
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/chapterbib
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,24 @@ | |||
| if exists("chapterbib_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let chapterbib_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_chapterbib =  | ||||
| \ 'sectionbib,' | ||||
| \.'rootbib,' | ||||
| \.'gather,' | ||||
| \.'duplicate' | ||||
| 
 | ||||
| let g:TeX_package_chapterbib =  | ||||
| \ 'env:cbunit,' | ||||
| \.'brd:sectionbib,' | ||||
| \.'bra:cbinput,' | ||||
| \.'sep:redefine,' | ||||
| \.'bra:citeform,' | ||||
| \.'bra:citepunct,' | ||||
| \.'bra:citeleft,' | ||||
| \.'bra:citeright,' | ||||
| \.'bra:citemid,' | ||||
| \.'bra:citedash' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										32
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/cite
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										32
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/cite
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,32 @@ | |||
| if exists("cite_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let cite_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_cite =  | ||||
| \ 'verbose,' | ||||
| \.'nospace,' | ||||
| \.'space,' | ||||
| \.'nosort,' | ||||
| \.'sort,' | ||||
| \.'noadjust' | ||||
| 
 | ||||
| let g:TeX_package_cite =  | ||||
| \ 'bra:cite,' | ||||
| \.'bra:citen,' | ||||
| \.'bra:citenum,' | ||||
| \.'bra:citeonline,' | ||||
| \.'bra:nocite,' | ||||
| \.'sep:redefine,' | ||||
| \.'bra:citeform,' | ||||
| \.'bra:citepunct,' | ||||
| \.'bra:citeleft,' | ||||
| \.'bra:citeright,' | ||||
| \.'bra:citemid,' | ||||
| \.'bra:citedash' | ||||
| 
 | ||||
| syn region texRefZone         matchgroup=texStatement start="\\citen\([tp]\*\=\)\={"   keepend end="}\|%stopzone\>"  contains=texComment,texDelimiter | ||||
| syn region texRefZone         matchgroup=texStatement start="\\citenum\([tp]\*\=\)\={"   keepend end="}\|%stopzone\>"  contains=texComment,texDelimiter | ||||
| syn region texRefZone         matchgroup=texStatement start="\\citeonline\([tp]\*\=\)\={"   keepend end="}\|%stopzone\>"  contains=texComment,texDelimiter | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										43
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/color
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										43
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/color
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,43 @@ | |||
| if exists("color_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let color_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_color =  | ||||
| \ 'monochrome,' | ||||
| \.'debugshow,' | ||||
| \.'dvips,' | ||||
| \.'xdvi,' | ||||
| \.'dvipdf,' | ||||
| \.'pdftex,' | ||||
| \.'dvipsone,' | ||||
| \.'dviwindo,' | ||||
| \.'emtex,' | ||||
| \.'dviwin,' | ||||
| \.'oztex,' | ||||
| \.'textures,' | ||||
| \.'pctexps,' | ||||
| \.'pctexwin,' | ||||
| \.'pctexhp,' | ||||
| \.'pctex32,' | ||||
| \.'truetex,' | ||||
| \.'tcidvi,' | ||||
| \.'dvipsnames,' | ||||
| \.'nodvipsnames,' | ||||
| \.'usenames' | ||||
| 
 | ||||
| let g:TeX_package_color =  | ||||
| \ 'brs:definecolor{<++>}{<++>}{<++>},' | ||||
| \.'brs:DefineNamedColor{<++>}{<++>}{<++>}{<++>},' | ||||
| \.'bra:color,' | ||||
| \.'nob:color,' | ||||
| \.'brd:textcolor,' | ||||
| \.'brs:textcolor[<++>]{<++>}{<++>},' | ||||
| \.'brd:colorbox,' | ||||
| \.'brs:colorbox[<++>]{<++>}{<++>},' | ||||
| \.'brs:fcolorbox{<++>}{<++>}{<++>},' | ||||
| \.'brs:fcolorbox[<++>]{<++>}{<++>}{<++>},' | ||||
| \.'brd:pagecolor,' | ||||
| \.'nob:pagecolor' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										12
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/comma
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										12
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/comma
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,12 @@ | |||
| if exists("comma_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let comma_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_comma = '' | ||||
| 
 | ||||
| let g:TeX_package_comma = | ||||
| \ 'bra:commaform,' | ||||
| \.'bra:commaformtoken' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										104
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/csquotes
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										104
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/csquotes
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,104 @@ | |||
| " Csquotes package support v 0.1 2010-02-17 | ||||
| " This file has been written by | ||||
| " Andreas Wagner <Andreas dot Wagner at em dot uni-frankfurt dot de> | ||||
| " based on the documentation of | ||||
| " csquotes 4.4a, July 4 2009 | ||||
| " It can be used, modified and distributed according to the vim license. | ||||
| 
 | ||||
| 
 | ||||
| if exists("csquotes_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let csquotes_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_csquotes =  | ||||
| \ 'strict=,' | ||||
| \.'babel=,' | ||||
| \.'maxlevel=,' | ||||
| \.'style=,' | ||||
| \.'danish=,' | ||||
| \.'english=,' | ||||
| \.'french=,' | ||||
| \.'german=,' | ||||
| \.'italian=,' | ||||
| \.'norwegian=,' | ||||
| \.'portuguese=,' | ||||
| \.'spanish=,' | ||||
| \.'swedish=' | ||||
| 
 | ||||
| let g:TeX_package_csquotes = | ||||
| \ 'sbr:basic,' | ||||
| \.'bra:enquote{<+text+>},' | ||||
| \.'bra:enquote*{<+text+>},' | ||||
| \.'brs:textquote[<+cite+>][<+punct+>]{<+text+>},' | ||||
| \.'brs:textquote*[<+cite+>][<+punct+>]{<+text+>},' | ||||
| \.'brs:blockquote[<+cite+>][<+punct+>]{<+text+>},' | ||||
| \.'sbr:foreign_text,' | ||||
| \.'brd:foreignquote{<+lang+>}{<+text+>},' | ||||
| \.'brd:foreignquote*{<+lang+>}{<+text+>},' | ||||
| \.'brd:hyphenquote{<+lang+>}{<+text+>},' | ||||
| \.'brd:hyphenquote*{<+lang+>}{<+text+>},' | ||||
| \.'brs:foreigntextquote{<+lang+>}[<+cite+>][<+punct+>]{<+text+>},' | ||||
| \.'brs:foreigntextquote*{<+lang+>}[<+cite+>][<+punct+>]{<+text+>},' | ||||
| \.'brs:hyphentextquote{<+lang+>}[<+cite+>][<+punct+>]{<+text+>},' | ||||
| \.'brs:hyphentextquote*{<+lang+>}[<+cite+>][<+punct+>]{<+text+>},' | ||||
| \.'brs:foreignblockquote{<+lang+>}[<+cite+>][<+punct+>]{<+text+>},' | ||||
| \.'brs:hyphenblockquote{<+lang+>}[<+cite+>][<+punct+>]{<+text+>},' | ||||
| \.'sbr:active_quotes,' | ||||
| \.'bra:MakeOuterQuote{<+character+>},' | ||||
| \.'bra:MakeInnerQuote{<+character+>},' | ||||
| \.'brd:MakeAutoQuote{<+opening_character+>}{<+closing_character+>},' | ||||
| \.'brd:MakeAutoQuote*{<+opening_character+>}{<+closing_character+>},' | ||||
| \.'brs:MakeForeignQuote{<+lang+>}{<+opening_character+>}{<+closing_character+>},' | ||||
| \.'brs:MakeForeignQuote*{<+lang+>}{<+opening_character+>}{<+closing_character+>},' | ||||
| \.'brs:MakeHyphenQuote{<+lang+>}{<+opening_character+>}{<+closing_character+>},' | ||||
| \.'brs:MakeHyphenQuote*{<+lang+>}{<+opening_character+>}{<+closing_character+>},' | ||||
| \.'brs:MakeBlockQuote{<+opening_character+>}{<+delimiter+>}{<+closing_character+>},' | ||||
| \.'brs:MakeForeignBlockQuote{<+lang+>}{<+opening_character+>}{<+delimiter+>}{<+closing_character+>},' | ||||
| \.'brs:MakeHyphenBlockQuote{<+lang+>}{<+opening_character+>}{<+delimiter+>}{<+closing_character+>},' | ||||
| \.'nor:EnableQuote,' | ||||
| \.'nor:DisableQuotes,' | ||||
| \.'nor:VerbatimQuotes,' | ||||
| \.'nor:DeleteQuotes,' | ||||
| \.'sbr:automatic_citation,' | ||||
| \.'brs:textcquote[<+prenote+>][<+postnote+>]{<+key+>}[<+punct+>]{<+text+>},' | ||||
| \.'brs:textcquote*[<+prenote+>][<+postnote+>]{<+key+>}[<+punct+>]{<+text+>},' | ||||
| \.'brs:foreigntextcquote{<+lang+>}[<+prenote+>][<+postnote+>]{<+key+>}[<+punct+>]{<+text+>},' | ||||
| \.'brs:foreigntextcquote*{<+lang+>}[<+prenote+>][<+postnote+>]{<+key+>}[<+punct+>]{<+text+>},' | ||||
| \.'brs:hyphentextcquote{<+lang+>}[<+prenote+>][<+postnote+>]{<+key+>}[<+punct+>]{<+text+>},' | ||||
| \.'brs:hyphentextcquote*{<+x+>}[<+prenote+>][<+postnote+>]{<+key+>}[<+punct+>]{<+text+>},' | ||||
| \.'brs:blockcquote[<+prenote+>][<+postnote+>]{<+key+>}[<+punct+>]{<+text+>},' | ||||
| \.'brs:foreignblockcquote{<+lang+>}[<+prenote+>][<+postnote+>]{<+key+>}[<+punct+>]{<+text+>},' | ||||
| \.'brs:hyphenblockcquote{<+lang+>}[<+prenote+>][<+postnote+>]{<+key+>}[<+punct+>]{<+text+>},' | ||||
| \.'sbr:display_quotes,' | ||||
| \.'ens:displayquote:[<+cite+>][<+punct+>],' | ||||
| \.'ens:foreigndisplayquote:{<+lang+>}[<+cite+>][<+punct+>],' | ||||
| \.'ens:hyphendisplayquote:{<+lang+>}[<+cite+>][<+punct+>],' | ||||
| \.'ens:displaycquote:[<+prenote+>][<+postnote+>]{<+key+>}[<+punct+>],' | ||||
| \.'ens:foreigndisplaycquote:{<+lang+>}[<+prenote+>][<+postnote+>]{<+key+>}[<+punct+>],' | ||||
| \.'ens:hyphendisplaycquote:{<+lang+>}[<+prenote+>][<+postnote+>]{<+key+>}[<+punct+>],' | ||||
| \.'sbr:config,' | ||||
| \.'nob:setquotestyle,' | ||||
| \.'nor:setquotestyle*,' | ||||
| \.'brs:DeclareQuoteStyle[<+variant+>]{<+style+>}[<+outer_init+>][<+inner_init+>]{<+opening_outer_mark+>}[<+middle_outer_mark+>]{<+closing_outer_mark+>}[<+kern+>]{<+opening_inner_mark+>}[<+middle_inner_mark+>]{<+closing_inner_mark+>},' | ||||
| \.'brs:DeclareQuoteAlias[<+variant+>]{<+style+>}{<+alias+>},' | ||||
| \.'bra:DeclareQuoteOption{<+style+>},' | ||||
| \.'bra:ExecuteQuoteOptions{<+key=value+>},' | ||||
| \.'brs:DeclarePlainStyle{<+opening_outer_mark+>}{<+closing_outer_mark+>}{<+opening_inner_mark+>}{<+closing_inner_mark+>},' | ||||
| \.'bra:SetBlockThreshold{<+integer+>},' | ||||
| \.'bra:SetBlockEnvironment{<+environment+>},' | ||||
| \.'bra:SetCiteCommand{<+command+>},' | ||||
| \.'sbr:helper_expressions,' | ||||
| \.'brd:ifblockquote,' | ||||
| \.'brd:ifquotepunct,' | ||||
| \.'brd:ifquoteterm,' | ||||
| \.'brd:ifquotecolon,' | ||||
| \.'brd:ifquotecomma,' | ||||
| \.'brd:ifquoteexcmlam,' | ||||
| \.'brd:ifquotequestion,' | ||||
| \.'brd:ifquotesemicolon,' | ||||
| \.'brs:ifstringblank{<+string+>}{<+true+>}{<+false+>}' | ||||
| 
 | ||||
| let g:TeX_SmartQuoteOpen 	= "\\enquote\{" | ||||
| let g:TeX_SmartQuoteClose 	= "\}" | ||||
| 
 | ||||
							
								
								
									
										36
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/deleq
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										36
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/deleq
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,36 @@ | |||
| if exists("deleq_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let deleq_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_deleq = '' | ||||
| 
 | ||||
| let g:TeX_package_deleq =  | ||||
| \.'env:deqn,' | ||||
| \.'env:ddeqn,' | ||||
| \.'env:deqarr,' | ||||
| \.'env:ddeqar,' | ||||
| \.'env:deqrarr,' | ||||
| \.'nor:nydeqno,' | ||||
| \.'nor:heqno,' | ||||
| \.'bra:reqno,' | ||||
| \.'bra:rndeqno,' | ||||
| \.'bra:rdeqno,' | ||||
| \.'nob:eqreqno,' | ||||
| \.'nob:deqreqno,' | ||||
| \.'nob:ddeqreqno,' | ||||
| \.'bra:arrlabel,' | ||||
| \.'nor:where,' | ||||
| \.'bra:remtext,' | ||||
| \.'nor:nydeleqno,' | ||||
| \.'nor:deleqno,' | ||||
| \.'nor:jotbaseline' | ||||
| 
 | ||||
| if !exists("tex_no_math") | ||||
| 	syn region texMathZoneA      start="\\begin\s*{\s*deqn\*\s*}"        end="\\end\s*{\s*deqn\*\s*}"                keepend fold   contains=@texMathZoneGroup | ||||
| 	syn region texMathZoneB      start="\\begin\s*{\s*ddeqn\*\s*}"       end="\\end\s*{\s*ddeqn\*\s*}"              keepend fold   contains=@texMathZoneGroup | ||||
| 	syn region texMathZoneC      start="\\begin\s*{\s*deqarr\s*}"        end="\\end\s*{\s*deqarr\s*}"                keepend fold   contains=@texMathZoneGroup | ||||
| 	syn region texMathZoneD      start="\\begin\s*{\s*ddeqar\s*}"        end="\\end\s*{\s*ddeqar\s*}"                  keepend fold   contains=@texMathZoneGroup | ||||
| 	syn region texMathZoneE      start="\\begin\s*{\s*deqrarr\*\s*}"     end="\\end\s*{\s*deqrarr\*\s*}"             keepend fold   contains=@texMathZoneGroup | ||||
| endif | ||||
| " vim:ft=vim:ff=unix:noet:ts=4: | ||||
							
								
								
									
										29
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/drftcite
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										29
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/drftcite
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,29 @@ | |||
| if exists("drftcite_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let drftcite_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_drftcite =  | ||||
| \ 'verbose,' | ||||
| \.'nospace,' | ||||
| \.'space,' | ||||
| \.'breakcites,' | ||||
| \.'manualsort,' | ||||
| \.'tt,' | ||||
| \.'shownumbers,' | ||||
| \.'nocitecount' | ||||
| 
 | ||||
| let g:TeX_package_drftcite =  | ||||
| \ 'bra:cite,' | ||||
| \.'bra:citen,' | ||||
| \.'sep:redefine,' | ||||
| \.'bra:citeform,' | ||||
| \.'bra:citepunct,' | ||||
| \.'bra:citeleft,' | ||||
| \.'bra:citeright,' | ||||
| \.'bra:citemid,' | ||||
| \.'bra:citedash' | ||||
| 
 | ||||
| syn region texRefZone         matchgroup=texStatement start="\\citen\([tp]\*\=\)\={"   keepend end="}\|%stopzone\>"  contains=texComment,texDelimiter | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										12
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/dropping
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										12
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/dropping
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,12 @@ | |||
| if exists("dropping_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let dropping_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_dropping = '' | ||||
| 
 | ||||
| let g:TeX_package_dropping =  | ||||
| \ 'brs:bigdrop{<+indent+>}{<+big+>}{<+font+>}{<+text+>},' | ||||
| \.'brs:dropping[<+indent+>]{<+big+>}{<+text+>}' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/enumerate
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/enumerate
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,10 @@ | |||
| if exists("enumerate_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let enumerate_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_enumerate = '' | ||||
| 
 | ||||
| let g:TeX_package_enumerate = 'ens:enumerate:[<+prefix+>]' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										19
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/eqlist
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										19
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/eqlist
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,19 @@ | |||
| if exists("eqlist_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let eqlist_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_eqlist = ''  | ||||
| 
 | ||||
| let g:TeX_package_eqlist =  | ||||
| \ 'env:eqlist,' | ||||
| \.'env:eqlist*,' | ||||
| \.'env:Eqlist,' | ||||
| \.'env:Eqlist*,' | ||||
| \.'sep:modificators,' | ||||
| \.'eqlistinit,' | ||||
| \.'eqliststarinit,' | ||||
| \.'eqlistinitpar,' | ||||
| \.'eqlistlabel' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										12
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/eqparbox
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										12
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/eqparbox
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,12 @@ | |||
| if exists("eqparbox_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let eqparbox_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_eqparbox = '' | ||||
| 
 | ||||
| let g:TeX_package_eqparbox =  | ||||
| \ 'brs:eqparbox[<+pos+>][<+height+>][<+inner-pos+>]{<+tag+>}{<+text+>},' | ||||
| \.'bra:eqboxwidth' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/everyshi
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/everyshi
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,10 @@ | |||
| if exists("everyshi_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let everyshi_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_everyshi = '' | ||||
| 
 | ||||
| let g:TeX_package_everyshi = 'bra:EveryShipOut' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										55
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/exmpl
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										55
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/exmpl
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,55 @@ | |||
| if exists("exmpl_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let exmpl_package_file = 1 | ||||
| 
 | ||||
| " Author: Mikolaj Machowski | ||||
| " Date: 10.04.2002 | ||||
| " Example plugin for packages in latexSuite | ||||
| " | ||||
| 
 | ||||
| " This variable creates Options submenu in package menu. Even when no options are | ||||
| " given for this package it HAS to exist in form | ||||
| " let TeX_package_option_exmpl = "" | ||||
| " Options and commands are delimited with comma , | ||||
| 
 | ||||
| let g:TeX_package_option_exmpl = "OpcjaA=,OpcjaB,OpcjaC" | ||||
| 
 | ||||
| " Most command should have some definition before. Package menu system can | ||||
| " recognize type of command and behave in good manner: | ||||
| " env: (environment) creates simple environment template | ||||
| "   \begin{command} | ||||
| "     x          <- cursor here | ||||
| "   \end{command}   | ||||
| "  | ||||
| " bra: (brackets) useful when inserting brackets commands | ||||
| "   \command{x}<<>> <- cursor at x, and placeholders as in other menu entries | ||||
| " | ||||
| " nor: (normal)             nor: and pla: are `highlighted' in menu with `'' | ||||
| "   \command<Space> | ||||
| " | ||||
| " pla: (plain) | ||||
| "   command<Space> | ||||
| "  | ||||
| " spe: (special) | ||||
| "   command   <-literal insertion of command, in future here should go | ||||
| "               commands with special characters | ||||
| "  | ||||
| " sep: (separator) creates separator. Good for aesthetics and usability :) | ||||
| "    | ||||
| " Command can be also given with no prefix:. The result is | ||||
| "   \command   (as in nor: but without <Space>) | ||||
| 
 | ||||
| 
 | ||||
| let g:TeX_package_exmpl = "env:AEnvFirst,env:aEnvSec,env:BThi," | ||||
|                     \ . "sep:a,env:zzzz," | ||||
|                     \ . "bra:aBraFirst,bra:bBraSec,bra:cBraThi," | ||||
|                     \ . "sep:b," | ||||
|                     \ . "nor:aNorPri,nor:bNorSec,nor:cNorTer," | ||||
|                     \ . "sep:c," | ||||
|                     \ . "pla:aPla1,pla:bPla2,pla:cPla3," | ||||
|                     \ . "sep:d," | ||||
|                     \ . "spe:aSpe1,spe:bSpe2,spe:cSpe3," | ||||
|                     \ . "sep:e," | ||||
|                     \ . "aNo1,bNo2,cNo3" | ||||
| " vim:ft=vim | ||||
							
								
								
									
										42
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/fixme
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										42
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/fixme
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,42 @@ | |||
| " Fixme package support v 0.1 2010-02-17 | ||||
| " This file has been written by | ||||
| " Andreas Wagner <Andreas dot Wagner at em dot uni-frankfurt dot de> | ||||
| " based on the documentation of | ||||
| " fixme November 28 2007 | ||||
| " It can be used, modified and distributed according to the vim license. | ||||
| 
 | ||||
| 
 | ||||
| if exists("fixme_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let fixme_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_fixme =  | ||||
| \ 'draft,' | ||||
| \.'final,' | ||||
| \.'silent,' | ||||
| \.'nosilent,' | ||||
| \.'inline,' | ||||
| \.'margin,' | ||||
| \.'marginclue,' | ||||
| \.'footnote,' | ||||
| \.'index,' | ||||
| \.'noinline,' | ||||
| \.'nomargin,' | ||||
| \.'nomarginclue,' | ||||
| \.'nofootnote,' | ||||
| \.'noindex' | ||||
| 
 | ||||
| let g:TeX_package_fixme = | ||||
| \ 'sbr:simple,' | ||||
| \.'nob:fixme[<+layout+>]{<+note+>},' | ||||
| \.'nob:fxnote[<+layout+>]{<+note+>},' | ||||
| \.'nob:fxwarning[<+layout+>]{<+note+>},' | ||||
| \.'nob:fxerror[<+layout+>]{<+note+>},' | ||||
| \.'sbr:environments,' | ||||
| \.'eno:afixme[<+summary+>],' | ||||
| \.'eno:anfxnote[<+summary+>],' | ||||
| \.'eno:anfxwarning[<+summary+>],' | ||||
| \.'eno:anfxerror[<+summary+>],' | ||||
| \.'sbr:other,' | ||||
| \.'nor:listoffixmes' | ||||
							
								
								
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/flafter
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/flafter
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,10 @@ | |||
| if exists("flafter_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let flafter_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_flafter = '' | ||||
| 
 | ||||
| let g:TeX_package_flafter = 'noo:suppressfloats,noo:suppress' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										16
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/float
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										16
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/float
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,16 @@ | |||
| if exists("float_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let float_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_float = '' | ||||
| 
 | ||||
| let g:TeX_package_float =  | ||||
| \ 'bra:floatstyle,' | ||||
| \.'brs:newfloat{<++>}{<++>}{<++>}[<++>],' | ||||
| \.'brd:floatname,' | ||||
| \.'brd:listof,' | ||||
| \.'bra:restylefloat,' | ||||
| \.'brd:floatplacement' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										12
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/floatflt
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										12
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/floatflt
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,12 @@ | |||
| if exists("floatflt_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let floatflt_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_floatflt = 'rflt,lflt,vflt' | ||||
| 
 | ||||
| let g:TeX_package_floatflt = | ||||
| \ 'ens:floatingfigure:[<+loc+>]{<+spec+>},' | ||||
| \.'ens:floatingtable:[<+loc+>]{<+spec+>}' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/fn2end
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/fn2end
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,10 @@ | |||
| if exists("fn2end_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let fn2end_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_fn2end = '' | ||||
| 
 | ||||
| let g:TeX_package_fn2end = 'makeendnotes,theendnotes' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										21
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/footmisc
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										21
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/footmisc
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,21 @@ | |||
| if exists("footmisc_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let footmisc_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_footmisc =  | ||||
| \ 'bottom,' | ||||
| \.'flushmargin,' | ||||
| \.'marginal,' | ||||
| \.'multiple,' | ||||
| \.'norule,' | ||||
| \.'para,' | ||||
| \.'perpage,' | ||||
| \.'splitrule,' | ||||
| \.'stable,' | ||||
| \.'symbol,' | ||||
| \.'symbol+' | ||||
| 
 | ||||
| let g:TeX_package_footmisc = '' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										93
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/geometry
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										93
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/geometry
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,93 @@ | |||
| if exists("geometry_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let geometry_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_geometry =  | ||||
| \ 'sbr:Boolean,' | ||||
| \.'verbose,' | ||||
| \.'landscape,' | ||||
| \.'portrait,' | ||||
| \.'twoside,' | ||||
| \.'includemp,' | ||||
| \.'reversemp,' | ||||
| \.'reversemarginpar,' | ||||
| \.'nohead,' | ||||
| \.'nofoot,' | ||||
| \.'noheadfoot,' | ||||
| \.'dvips,' | ||||
| \.'pdftex,' | ||||
| \.'vtex,' | ||||
| \.'truedimen,' | ||||
| \.'reset,' | ||||
| \.'sbr:BooleanDimensions,' | ||||
| \.'a0paper,' | ||||
| \.'a1paper,' | ||||
| \.'a2paper,' | ||||
| \.'a3paper,' | ||||
| \.'a4paper,' | ||||
| \.'a5paper,' | ||||
| \.'a6paper,' | ||||
| \.'b0paper,' | ||||
| \.'b1paper,' | ||||
| \.'b2paper,' | ||||
| \.'b3paper,' | ||||
| \.'b4paper,' | ||||
| \.'b5paper,' | ||||
| \.'b6paper,' | ||||
| \.'letterpaper,' | ||||
| \.'executivepaper,' | ||||
| \.'legalpaper,' | ||||
| \.'sbr:SingleValueOption,' | ||||
| \.'paper=,' | ||||
| \.'papername=,' | ||||
| \.'paperwidth=,' | ||||
| \.'paperheight=,' | ||||
| \.'width=,' | ||||
| \.'totalwidth=,' | ||||
| \.'height=,' | ||||
| \.'totalheight=,' | ||||
| \.'left=,' | ||||
| \.'lmargin=,' | ||||
| \.'right=,' | ||||
| \.'rmargin=,' | ||||
| \.'top=,' | ||||
| \.'tmargin=,' | ||||
| \.'bottom=,' | ||||
| \.'bmargin=,' | ||||
| \.'hscale=,' | ||||
| \.'vscale=,' | ||||
| \.'textwidth=,' | ||||
| \.'textheight=,' | ||||
| \.'marginparwidth=,' | ||||
| \.'marginpar=,' | ||||
| \.'marginparsep=,' | ||||
| \.'headheight=,' | ||||
| \.'head=,' | ||||
| \.'headsep=,' | ||||
| \.'footskip=,' | ||||
| \.'hoffset=,' | ||||
| \.'voffset=,' | ||||
| \.'twosideshift=,' | ||||
| \.'mag=,' | ||||
| \.'columnsep=,' | ||||
| \.'footnotesep=,' | ||||
| \.'sbr:TwoValueOptions,' | ||||
| \.'papersize={<++>},' | ||||
| \.'total={<++>},' | ||||
| \.'body={<++>},' | ||||
| \.'text={<++>},' | ||||
| \.'scale={<++>},' | ||||
| \.'hmargin={<++>},' | ||||
| \.'vmargin={<++>},' | ||||
| \.'margin={<++>},' | ||||
| \.'offset={<++>},' | ||||
| \.'sbr:ThreeValueOptions,' | ||||
| \.'hdivide={<++>},' | ||||
| \.'vdivide={<++>},' | ||||
| \.'divide={<++>}' | ||||
| 
 | ||||
| let g:TeX_package_geometry =  | ||||
| \ 'bra:geometry' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										12
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/german
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										12
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/german
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,12 @@ | |||
| if exists("german_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let german_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_german = '' | ||||
| let g:TeX_package_option_german = '' | ||||
| " For now just define the smart quotes. | ||||
| let b:Tex_SmartQuoteOpen = '"`' | ||||
| let b:Tex_SmartQuoteClose = "\"'" | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										69
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/graphicx
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										69
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/graphicx
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,69 @@ | |||
| if exists("graphicx_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let graphicx_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_graphicx =  | ||||
| \ 'sbr:Drivers,' | ||||
| \.'xdvi,' | ||||
| \.'dvipdf,' | ||||
| \.'dvipdfm,' | ||||
| \.'pdftex,' | ||||
| \.'dvipsone,' | ||||
| \.'dviwindo,' | ||||
| \.'emtex,' | ||||
| \.'dviwin,' | ||||
| \.'oztex,' | ||||
| \.'textures,' | ||||
| \.'pctexps,' | ||||
| \.'pctexwin,' | ||||
| \.'pctexhp,' | ||||
| \.'pctex32,' | ||||
| \.'truetex,' | ||||
| \.'tcidvi,' | ||||
| \.'vtex,' | ||||
| \.'sbr:Rest,' | ||||
| \.'debugshow,' | ||||
| \.'draft,' | ||||
| \.'final,' | ||||
| \.'hiderotate,' | ||||
| \.'hiresbb,' | ||||
| \.'hidescale,' | ||||
| \.'unknownkeysallowed,' | ||||
| \.'unknownkeyserror' | ||||
| 
 | ||||
| let g:TeX_package_graphicx = | ||||
| \ 'sbr:Includegraphics,' | ||||
| \.'brs:includegraphics[<++>]{<++>},' | ||||
| \.'spe:height=,' | ||||
| \.'spe:width=,' | ||||
| \.'spe:keepaspectratio=,' | ||||
| \.'spe:totalheight=,' | ||||
| \.'spe:angle=,' | ||||
| \.'spe:scale=,' | ||||
| \.'spe:origin=,' | ||||
| \.'spe:clip,' | ||||
| \.'spe:bb=,' | ||||
| \.'spe:viewport=,' | ||||
| \.'spe:trim=,' | ||||
| \.'spe:draft,' | ||||
| \.'spe:hiresbb,' | ||||
| \.'spe:type=,' | ||||
| \.'spe:ext=,' | ||||
| \.'spe:read=,' | ||||
| \.'spe:command=,' | ||||
| \.'sbr:Rotatebox,' | ||||
| \.'brs:rotatebox[<++>]{<++>}{<++>},' | ||||
| \.'spe:origin=,' | ||||
| \.'spe:x=,' | ||||
| \.'spe:y=,' | ||||
| \.'spe:units=,' | ||||
| \.'sbr:Rest,' | ||||
| \.'brs:scalebox{<++>}[<++>]{<++>},' | ||||
| \.'brs:resizebox{<++>}{<++>}{<++>},' | ||||
| \.'brs:resizebox*{<++>}{<++>}{<++>},' | ||||
| \.'bra:DeclareGraphicsExtensions,' | ||||
| \.'brs:DeclareGraphicsRule{<++>}{<++>}{<++>}{<++>},' | ||||
| \.'bra:graphicspath' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/graphpap
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/graphpap
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,10 @@ | |||
| if exists("graphpap_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let graphpap_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_graphpap = '' | ||||
| 
 | ||||
| let g:TeX_package_graphpap = 'brs:graphpaper[<+step+>](<+x1,y1+>)(<+x2,y2+>)' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										18
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/harpoon
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										18
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/harpoon
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,18 @@ | |||
| if exists("harpoon_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let harpoon_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_harpoon = '' | ||||
| 
 | ||||
| let g:TeX_package_harpoon = | ||||
| \ 'bra:overleftharp,' | ||||
| \.'bra:overrightharp,' | ||||
| \.'bra:overleftharpdown,' | ||||
| \.'bra:overrightharpdown,' | ||||
| \.'bra:underleftharp,' | ||||
| \.'bra:underrightharp,' | ||||
| \.'bra:underleftharpdown,' | ||||
| \.'bra:underrightharpdown' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										21
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/hhline
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										21
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/hhline
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,21 @@ | |||
| if exists("hhline_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let hhline_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_hhline = '' | ||||
| 
 | ||||
| let g:TeX_package_hhline = | ||||
| \ 'bra:hhline,' | ||||
| \.'sep:a,' | ||||
| \.'spe:=,' | ||||
| \.'spe:-,' | ||||
| \.'spe:~,' | ||||
| \."spe:\\\|," | ||||
| \.'spe::,' | ||||
| \.'spe:#,' | ||||
| \.'spe:t,' | ||||
| \.'spe:b,' | ||||
| \.'spe:*' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										13
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/histogram
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										13
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/histogram
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,13 @@ | |||
| if exists("histogram_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let histogram_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_histogram = '' | ||||
| 
 | ||||
| let g:TeX_package_histogram =  | ||||
| \ 'histogram,' | ||||
| \.'noverticallines,' | ||||
| \.'verticallines' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										167
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/hyperref
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										167
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/hyperref
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,167 @@ | |||
| if exists("hyperref_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let hyperref_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_hyperref = | ||||
| \ '4=,' | ||||
| \.'a4paper,' | ||||
| \.'a5paper,' | ||||
| \.'anchorcolor=,' | ||||
| \.'b5paper,' | ||||
| \.'backref=,' | ||||
| \.'baseurl={<++>},' | ||||
| \.'bookmarks=,' | ||||
| \.'bookmarksnumbered=,' | ||||
| \.'bookmarksopen=,' | ||||
| \.'bookmarksopenlevel=,' | ||||
| \.'bookmarkstype=,' | ||||
| \.'breaklinks=,' | ||||
| \.'citebordercolor=,' | ||||
| \.'citecolor=,' | ||||
| \.'colorlinks=,' | ||||
| \.'debug=,' | ||||
| \.'draft,' | ||||
| \.'dvipdf,' | ||||
| \.'dvipdfm,' | ||||
| \.'dvips,' | ||||
| \.'dvipsone,' | ||||
| \.'dviwindo,' | ||||
| \.'executivepaper,' | ||||
| \.'extension=,' | ||||
| \.'filebordercolor=,' | ||||
| \.'filecolor=,' | ||||
| \.'frenchlinks=,' | ||||
| \.'hyperfigures=,' | ||||
| \.'hyperindex=,' | ||||
| \.'hypertex,' | ||||
| \.'hypertexnames=,' | ||||
| \.'implicit=,' | ||||
| \.'latex2html,' | ||||
| \.'legalpaper,' | ||||
| \.'letterpaper,' | ||||
| \.'linkbordercolor=,' | ||||
| \.'linkcolor=,' | ||||
| \.'linktocpage=,' | ||||
| \.'menubordercolor=,' | ||||
| \.'menucolor=,' | ||||
| \.'naturalnames,' | ||||
| \.'nesting=,' | ||||
| \.'pageanchor=,' | ||||
| \.'pagebackref=,' | ||||
| \.'pagebordercolor=,' | ||||
| \.'pagecolor=,' | ||||
| \.'pdfauthor={<++>},' | ||||
| \.'pdfborder=,' | ||||
| \.'pdfcenterwindow=,' | ||||
| \.'pdfcreator={<++>},' | ||||
| \.'pdffitwindow,' | ||||
| \.'pdfhighlight=,' | ||||
| \.'pdfkeywords={<++>},' | ||||
| \.'pdfmenubar=,' | ||||
| \.'pdfnewwindow=,' | ||||
| \.'pdfpagelabels=,' | ||||
| \.'pdfpagelayout=,' | ||||
| \.'pdfpagemode=,' | ||||
| \.'pdfpagescrop=,' | ||||
| \.'pdfpagetransition=,' | ||||
| \.'pdfproducer={<++>},' | ||||
| \.'pdfstartpage={<++>},' | ||||
| \.'pdfstartview={<++>},' | ||||
| \.'pdfsubject={<++>},' | ||||
| \.'pdftex,' | ||||
| \.'pdftitle={<++>},' | ||||
| \.'pdftoolbar=,' | ||||
| \.'pdfusetitle=,' | ||||
| \.'pdfview,' | ||||
| \.'pdfwindowui=,' | ||||
| \.'plainpages=,' | ||||
| \.'ps2pdf,' | ||||
| \.'raiselinks=,' | ||||
| \.'runbordercolor,' | ||||
| \.'tex4ht,' | ||||
| \.'textures,' | ||||
| \.'unicode=,' | ||||
| \.'urlbordercolor=,' | ||||
| \.'urlcolor=,' | ||||
| \.'verbose=,' | ||||
| \.'vtex' | ||||
| 
 | ||||
| let g:TeX_package_hyperref =  | ||||
| \ 'sbr:Preamble,' | ||||
| \.'bra:hypersetup,' | ||||
| \.'wwwbrowser,' | ||||
| \.'sbr:Links,' | ||||
| \.'bra:hyperbaseurl,' | ||||
| \.'brs:href{<+URL+>}{<+text+>},' | ||||
| \.'bra:hyperimage,' | ||||
| \.'brs:hyperdef{<+category+>}{<+name+>}{<+text+>},' | ||||
| \.'brs:hyperref{<+URL+>}{<+category+>}{<+name+>}{<+text+>},' | ||||
| \.'brs:hyperlink{<+name+>}{<+text+>},' | ||||
| \.'brs:hypertarget{<+name+>}{<+text+>},' | ||||
| \.'bra:url,' | ||||
| \.'bra:htmladdnormallink,' | ||||
| \.'brs:Acrobatmenu{<+option+>}{<+tekst+>},' | ||||
| \.'brs:pdfbookmark[<++>]{<++>}{<++>},' | ||||
| \.'bra:thispdfpagelabel,' | ||||
| \.'sbr:Forms,' | ||||
| \.'env:Form,' | ||||
| \.'sep:Forms1,' | ||||
| \.'brs:TextField[<+parameters+>]{<+label+>},' | ||||
| \.'brs:CheckBox[<+parameters+>]{<+label+>},' | ||||
| \.'brs:ChoiceMenu[<+parameters+>]{<+label+>}{<+choices+>},' | ||||
| \.'brs:PushButton[<+parameters+>]{<+label+>},' | ||||
| \.'brs:Submit[<+parameters+>]{<+label+>},' | ||||
| \.'brs:Reset[<+parameters+>]{<+label+>},' | ||||
| \.'sep:Forms2,' | ||||
| \.'brs:LayoutTextField{<+label+>}{<+field+>},' | ||||
| \.'brs:LayoutChoiceField{<+label+>}{<+field+>},' | ||||
| \.'brs:LayoutCheckboxField{<+label+>}{<+field+>},' | ||||
| \.'sep:Forms3,' | ||||
| \.'brs:MakeRadioField{<+width+>}{<+height+>},' | ||||
| \.'brs:MakeCheckField{<+width+>}{<+height+>},' | ||||
| \.'brs:MakeTextField{<+width+>}{<+height+>},' | ||||
| \.'brs:MakeChoiceField{<+width+>}{<+height+>},' | ||||
| \.'brs:MakeButtonField{<+text+>},' | ||||
| \.'sbr:Parameters,' | ||||
| \.'spe:accesskey,' | ||||
| \.'spe:align,' | ||||
| \.'spe:backgroundcolor,' | ||||
| \.'spe:bordercolor,' | ||||
| \.'spe:bordersep,' | ||||
| \.'spe:borderwidth,' | ||||
| \.'spe:charsize,' | ||||
| \.'spe:checked,' | ||||
| \.'spe:color,' | ||||
| \.'spe:combo,' | ||||
| \.'spe:default,' | ||||
| \.'spe:disabled,' | ||||
| \.'spe:height,' | ||||
| \.'spe:hidden,' | ||||
| \.'spe:maxlen,' | ||||
| \.'spe:menulength,' | ||||
| \.'spe:multiline,' | ||||
| \.'spe:name,' | ||||
| \.'spe:onblur,' | ||||
| \.'spe:onchange,' | ||||
| \.'spe:onclick,' | ||||
| \.'spe:ondblclick,' | ||||
| \.'spe:onfocus,' | ||||
| \.'spe:onkeydown,' | ||||
| \.'spe:onkeypress,' | ||||
| \.'spe:onkeyup,' | ||||
| \.'spe:onmousedown,' | ||||
| \.'spe:onmousemove,' | ||||
| \.'spe:onmouseout,' | ||||
| \.'spe:onmouseover,' | ||||
| \.'spe:onmouseup,' | ||||
| \.'spe:onselect,' | ||||
| \.'spe:password,' | ||||
| \.'spe:popdown,' | ||||
| \.'spe:radio,' | ||||
| \.'spe:readonly,' | ||||
| \.'spe:tabkey,' | ||||
| \.'spe:value,' | ||||
| \.'spe:width' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										21
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/ifthen
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										21
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/ifthen
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,21 @@ | |||
| if exists("ifthen_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let ifthen_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_ifthen = '' | ||||
| 
 | ||||
| let g:TeX_package_ifthen =  | ||||
| \ 'brs:ifthenelse{<++>}{<++>}{<++>},' | ||||
| \.'brd:equal,' | ||||
| \.'bra:boolean,' | ||||
| \.'bra:lengthtest,' | ||||
| \.'bra:isodd,' | ||||
| \.'brd:whiledo,' | ||||
| \.'bra:newboolean,' | ||||
| \.'brd:setboolean,' | ||||
| \.'nor:and,' | ||||
| \.'nor:or,' | ||||
| \.'nor:not' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										29
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/inputenc
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										29
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/inputenc
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,29 @@ | |||
| if exists("inputenc_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let inputenc_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_inputenc = | ||||
| \ 'ascii,' | ||||
| \.'latin1,' | ||||
| \.'latin2,' | ||||
| \.'latin3,' | ||||
| \.'latin4,' | ||||
| \.'latin5,' | ||||
| \.'latin9,' | ||||
| \.'decmulti,' | ||||
| \.'cp850,' | ||||
| \.'cp852,' | ||||
| \.'cp437,' | ||||
| \.'cp437de,' | ||||
| \.'cp865,' | ||||
| \.'applemac,' | ||||
| \.'next,' | ||||
| \.'ansinew,' | ||||
| \.'cp1250,' | ||||
| \.'cp1252' | ||||
| 
 | ||||
| let g:TeX_package_inputenc =  | ||||
| \ 'bra:inputencoding' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/letterspace
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/letterspace
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,10 @@ | |||
| if exists("letterspace_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let letterspace_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_letterspace = '' | ||||
| 
 | ||||
| let g:TeX_package_letterspace = 'nor:letterspace' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										60
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/lineno
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										60
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/lineno
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,60 @@ | |||
| if exists("lineno_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let lineno_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_lineno =  | ||||
| \ 'left,' | ||||
| \.'right,' | ||||
| \.'switch,' | ||||
| \.'switch*,' | ||||
| \.'pagewise,' | ||||
| \.'running,' | ||||
| \.'modulo,' | ||||
| \.'mathlines,' | ||||
| \.'displaymath,' | ||||
| \.'hyperref' | ||||
| 
 | ||||
| let g:TeX_package_lineno =  | ||||
| \ 'sbr:Environments,' | ||||
| \.'env:linenumbers,' | ||||
| \.'env:linenumbers*,' | ||||
| \.'env:numquote,' | ||||
| \.'env:numquote*,' | ||||
| \.'env:numquotation,' | ||||
| \.'env:numquotation*,' | ||||
| \.'env:bframe,' | ||||
| \.'env:linenomath,' | ||||
| \.'env:linenomath*,' | ||||
| \.'bra:linelabel,' | ||||
| \.'sbr:Commands,' | ||||
| \.'nor:linenumbers,' | ||||
| \.'nor:linenumbers*,' | ||||
| \.'noo:linenumbers,' | ||||
| \.'nor:nolinenumbers,' | ||||
| \.'nor:runninglinenumbers,' | ||||
| \.'nor:runninglinenumbers*,' | ||||
| \.'noo:runninglinenumbers,' | ||||
| \.'nor:pagewiselinenumbers,' | ||||
| \.'nor:resetlinenumber,' | ||||
| \.'noo:resetlinenumber,' | ||||
| \.'nor:setrunninglinenumbers,' | ||||
| \.'nor:setpagewiselinenumbers,' | ||||
| \.'nor:switchlinenumbers,' | ||||
| \.'nor:switchlinenumbers*,' | ||||
| \.'nor:leftlinenumbers,' | ||||
| \.'nor:leftlinenumbers*,' | ||||
| \.'nor:rightlinenumbers,' | ||||
| \.'nor:rightlinenumbers*,' | ||||
| \.'nor:runningpagewiselinenumbers,' | ||||
| \.'nor:realpagewiselinenumbers,' | ||||
| \.'nor:modulolinenumbers,' | ||||
| \.'noo:modulolinenumbers,' | ||||
| \.'nor:linenumberdisplaymath,' | ||||
| \.'nor:nolinenumberdisplaymath,' | ||||
| \.'nor:thelinenumber,' | ||||
| \.'nob:linerefp,' | ||||
| \.'nob:linerefr,' | ||||
| \.'nob:lineref' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										35
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/longtable
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										35
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/longtable
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,35 @@ | |||
| if exists("longtable_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let longtable_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_longtable =  | ||||
| \ 'errorshow,' | ||||
| \.'pausing,' | ||||
| \.'set,' | ||||
| \.'final' | ||||
| 
 | ||||
| let g:TeX_package_longtable = | ||||
| \ 'sbr:Commands,' | ||||
| \.'nor:setlongtables,' | ||||
| \.'bra:LTleft,' | ||||
| \.'bra:LTright,' | ||||
| \.'bra:LTpre,' | ||||
| \.'bra:LTpost,' | ||||
| \.'bra:LTchunksize,' | ||||
| \.'bra:LTcapwidth,' | ||||
| \.'bra:LTcapwidth,' | ||||
| \.'sbr:Longtable,' | ||||
| \.'env:longtable,' | ||||
| \.'sep:lt,' | ||||
| \.'nor:endhead,' | ||||
| \.'nor:endfirsthead,' | ||||
| \.'nor:endfoot,' | ||||
| \.'nor:endlastfoot,' | ||||
| \.'nor:kill,' | ||||
| \.'bra:caption,' | ||||
| \.'nob:caption,' | ||||
| \.'bra:caption*,' | ||||
| \.'nor:newpage' | ||||
| 
 | ||||
| " vim:ft=vim:ts=4:sw=4:noet:ff=unix: | ||||
							
								
								
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/lscape
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/lscape
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,10 @@ | |||
| if exists("lscape_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let lscape_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_lscape = '' | ||||
| 
 | ||||
| let g:TeX_package_lscape = 'env:landscape' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										15
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/manyfoot
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										15
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/manyfoot
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,15 @@ | |||
| if exists("manyfoot_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let manyfoot_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_manyfoot = 'para' | ||||
| 
 | ||||
| let g:TeX_package_manyfoot =  | ||||
| \ 'bra:newfootnote,bra:newfootnote[para],' | ||||
| \.'bra:footnoteA,bra:footnoteB,' | ||||
| \.'bra:FootnoteA,bra:FootnoteB,' | ||||
| \.'bra:Footnotemark,bra:Footnotetext,' | ||||
| \.'SplitNote' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										28
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/moreverb
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										28
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/moreverb
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,28 @@ | |||
| if exists("moreverb_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let moreverb_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_moreverb = '' | ||||
| 
 | ||||
| let g:TeX_package_moreverb =  | ||||
| \ 'ens:verbatimwrite:{<++>},' | ||||
| \.'ens:verbatimtab:[<++>],' | ||||
| \.'ens:listing:[<+step+>]{<+number+>},' | ||||
| \.'ens:listing*:[<+step+>]{<+number+>},' | ||||
| \.'env:boxedverbatim,' | ||||
| \.'bra:verbatimtabsize,' | ||||
| \.'bra:listingoffset,' | ||||
| \.'brs:listinginput[<++>]{<++>}{<++>},' | ||||
| \.'brs:verbatimtabinput[<++>]{<++>}' | ||||
| 
 | ||||
| let g:Tex_completion_explorer = g:Tex_completion_explorer.'verbatimtabinput,' | ||||
| 
 | ||||
| syn region texZone   start="\\begin{verbatimwrite}"  end="\\end{verbatimwrite}\|%stopzone\>" fold | ||||
| syn region texZone   start="\\begin{verbatimtab}"    end="\\end{verbatimtab}\|%stopzone\>" fold | ||||
| syn region texZone   start="\\begin{boxedverbatim}"  end="\\end{boxedverbatim}\|%stopzone\>" fold | ||||
| syn region texZone   start="\\begin{listing}"  end="\\end{listing}\|%stopzone\>" fold | ||||
| syn region texZone   start="\\begin{listing*}"  end="\\end{listing*}\|%stopzone\>" fold | ||||
| 
 | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/multibox
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										10
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/multibox
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,10 @@ | |||
| if exists("multibox_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let multibox_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_multibox = '' | ||||
| 
 | ||||
| let g:TeX_package_multibox = 'multimake,multiframe' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
							
								
								
									
										21
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/multicol
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										21
									
								
								vim/vim-latex/ftplugin/latex-suite/packages/multicol
									
										
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,21 @@ | |||
| if exists("multicol_package_file") | ||||
| 	finish | ||||
| endif | ||||
| let multicol_package_file = 1 | ||||
| 
 | ||||
| let g:TeX_package_option_multicol = '' | ||||
| 
 | ||||
| let g:TeX_package_multicol = | ||||
| \ 'ens:multicols:{<+cols+>}[<+text+>][<+sep+>],' | ||||
| \.'columnbreak,' | ||||
| \.'premulticols,' | ||||
| \.'postmulticols,' | ||||
| \.'multicolsep,' | ||||
| \.'columnsep,' | ||||
| \.'linewidth,' | ||||
| \.'columnseprule,' | ||||
| \.'flushcolumnt,' | ||||
| \.'raggedcolumns,' | ||||
| \.'unbalanced' | ||||
| 
 | ||||
| " vim:ft=vim:ff=unix: | ||||
Some files were not shown because too many files have changed in this diff Show more
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue