Sven [email protected] ©1995-2002

Latest change: Sun Mar 03 15:00:00 MET 2002

VIM - Utilities

Info on some really useful scripts, tools, and utilities for VIM.

Got a good program/script/tool/utility for use with VI or VIM? Let me know!

Programs distributed with Vim:

Programs distributed without Vim: Scripts:


VIM - Utilities

The Vim Utilities are programs and scripts which are distributed *with* Vim. So when you get the archive file then you will find these programs with Vim:

Overview: ctags | xxd

ctags [000424,010416,020128]
Description, short: "Exuberant Ctags" creates "tag files" for emacs, vi, and clones - and a lot better than the standard "ctags"! [If you do not know what a tag is then please take a look at the page about vim and tags.]
Description, long: Ctags generates an index (or "tag") file of programming language objects of source code Ctags allows these items to be quickly and easily located by a text editor or other utility.
Ctags supports these languages: Assembler, AWK, ASP, BETA, Bourne/Korn/Zsh Shell, C, C++, COBOL, Eiffel, Fortran, Java, Lisp, Make, Pascal, Perl, PHP, Python, REXX, Ruby, S-Lang, Scheme, Tcl, and Vim.

Alternatively, Ctags can generate a cross reference file which lists, in human readable form, information about the various objects found in a set of C language files.

Tag index files are supported by the vi(1) editor and its derivatives (such as vim, elvis, stevie, and xvi) through the use of the :ta command, and by the emacs editor through the use of the Meta-. command, both of which locate the object associated with a name appearing in a source file and jump to the file and line which defines the name.

Source and binaries for Linux Red Hat, MS-DOS (16-bit and 32-bi DPMI), Win32 (Windows95 and WindowsNT), and OS/2.
Latest release version: ctags-5.2.1 [020125]
Author: Darren Hiebert http://DarrenHiebert.com
http://ctags.sourceforge.net
http://sourceforge.net/projects/ctags/
http://www.appwatch.com/Linux/App/620/data.html

xxd [961007,990915]
Description: Hexadecimal converter (hexdumper).
Size: ~14K
Author: Jürgen Weigert [email protected]
Source: ftp://ftp.uni-erlangen.de:21/pub/utilities/etc/xxd-1.10.tar.gz


VIM - Additional Utilities

The following utilities are *not* distributed with Vim. However, they can be very very helpful. So you *should* have them!

Overview: Programs distributed without Vim:

boxes [990822,990824,020303]
Draw an "box" around some given text.
Description: "boxes" can draw all kinds of boxes around its input text, ranging from a C comment box to complex ASCII art. These boxes may also be removed, even if they have been badly damaged by editing of the text inside. Since boxes may be open on any side, boxes can also be used to create regional comments in any programming language. With the help of an editor macro or mapping, damaged boxes can easily be repaired. New box designs of all sorts can easily be added and shared by appending to a free format configuration file.
Author: Thomas Jensen <[email protected]>
Distribution: http://boxes.thomasjensen.com/
Examples: http://boxes.thomasjensen.com/examples.html
Latest Version: 1.0.1 [000318]
Size: ~75K
Examples can also be found on the boxes home page:
http://home.pages.de/~jensen/boxes/examples.html

cowsay and cowthink [000616,010220]
http://www.nog.net/~tony/warez/cowsay.shtml
Author: Tony Monroe [email protected]
$ cowsay moo! ______ &lt; moo! &gt; ------ \ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||

figlet

global [980713,990726]
"GLOBAL common source code tag system"
http://www.tamacom.com/global/
Description: http://www.tamacom.com/unix/index.html#global
Author: Shigio Yamaguchi [email protected]
Latest version: global-3.44 [980705]

jtags [980630,990621]
Description, short: "JTags" creates "tag files" from Java sources.
Description, long: "JTags" creates "tag files" from Java sources, including classes, interfaces, constant class and interface members, class members, class and interface methods.
Home Page and Distribution:
http://www.fleiner.com/jtags/
Author: Claudio Fleiner [email protected]
Latest version: jtags-0.2 [990614]

makehtml and maketags
These two awk scripts convert the vim documentation (aka helptexts) to HTML, so they can be viewed on WWW.
For more info see the entry on the awk page.

par - paragraph formatter [971208,010317]
Home Page: http://www.cs.berkeley.edu/~amc/Par/
Author: Adam M. Costello http://www.cs.berkeley.edu/~amc/
Latest releases: par-1.51 [000224] and par-1.50 [960211] (only slight difference)
Description: par reformats paragraphs preserving borders on either side. For examples of input and output see the page
http://www.cs.berkeley.edu/~amc/Par/par.doc.txt.gz.
NOTES: Why use par at all when there is the builtin formatting? Well, the builtin formatting cannot right-justify text.
Example: Formatting the current paragraph with "par" is as easy as this: map #p vip!par<cr>

tal - "trailer alignment" [971122,971128,990729,020303]
Description: "tal" aligns the end of lines if they should have common characters at the end of lines. This is very helpful when rearranging the right side of a "comment box",
Size: ~10K
Author: Thomas Jensen <[email protected]>
Distribution: http://www.thomasjensen.com/software/tal/
Latest version: tal-1.9 [990311]
Note: The program "tal" is not yet part of the Vim distribution. Bram probably still does not know about it - but he is so busy right now that I don't want to bother him. Anyway - Thomas is considering a DOS port of this nice utility. Encourage him! I do hope that someone will take the challenge to work in this text formatting utility into Vim builtin "text formatting". Any takers?
Latest change: Now runs on SunOS4! :-)
Let me show you how this works: Edit some text:
	foo bar blah
	blah blah blah
	tralala tralala
Let's assume you want to put a comment box around the lines. Adding the start and end of the comment is easy:
	/**
	* foo bar blah *
	* blah blah blah *
	* tralala tralala *
	******************
Note: The last line shows how big the box should get. Now add some text to the end of the lines you want to put into a box - highlight the lines, press ':', then enter the command :s/$/ */:
	/**
	* foo bar blah *
	* blah blah blah *
	* tralala tralala *
	******************
Now apply "tal" those lines - :'<,'>!tal
	/*                *
	* foo bar blah    *
	* blah blah blah  *
	* tralala tralala *
	***************** *
Now, all you need to do is change the added space to complete the box:
	/******************
	* foo bar blah    *
	* blah blah blah  *
	* tralala tralala *
	******************/
I do hope that this can be added to Vim's internal text formatting.

tblfmt [990729]
Description, short: table formatter
Description, long: Creates a table from comma separated input. Separators can be adjusted. Uses AWK.
Author: James Cribb [email protected]
Example:
	input:
	Stadt Land Fluss
	Berlin Berlin Spree
	Heidelberg Baden-Württemberg Neckar
	Bonn who-cares Rhein
	München Bayern Isar
	output:
	Stadt       Land               Fluss
	Berlin      Berlin             Spree
	Heidelberg  Baden-Württemberg  Neckar
	Bonn        who-cares          Rhein
	München     Bayern             Isar
Source: http://www.zip.com.au/~jamesc/tblfmt (local copy)

vmh [990618]
Description, short: "vmh" - the Vim Mail Handler
Description, long: "vmh" is a mail handler useful to read your email, write email and manage emails all from within Vim.
Home Page and Distribution: http://www.fleiner.com/vmh/
Author: Claudio Fleiner [email protected]
Latest version: vmh-0.2 [990618]

wf (word format) [960818]
Description: "wf" is a small Perl script that reformats text preserving the standard quote prefix "> " (angle and space). You can use it with VIM as a filter. [But then again there is the command 'Q'. :-) ]
Source: wf.pl
Size: less than 2K
Author: Bek Oberin [email protected]

zip [960602]
Compression.
There are several versions for "zip" compression. An interesting one seems to be the one by "Infozip":
ftp://ftp.uu.net/pub/archiving/zip.


Dictionaries

Several people were once looking for dictionaries so they could make better use of spelling checkers or just simple (auto)completion. Here is a site:
  • ftp://ftp.fu-berlin.de/unix/security/dictionaries/

    Quite some dictionaries at that site. Anyone know of a better one?


    Scripts

    vim2html.pl
    vim2html is a perl script that converts vim-5 helpfiles to html.


    Links

    Chip Campbell's Utilities for Vim [000425]
    https://www.vim8.org/user.html#campbell
    http://www.erols.com/astronaut/vim/
    LOTS of utilities! :-)

    Cygwin [..,010615]
    http://sources.redhat.com/cygwin/
    http://cygwin.com/faq/
    "The Cygwin tools are ports of the popular GNU development tools and utilities for Windows. They function by using the Cygwin library which provides a UNIX-like API on top of the Win32 API."

    Unix for Windows by AT&T;
    http://www.research.att.com/sw/tools/uwin/
    These are *not* OpenSource!

    Virtually Unix [..,010619]
    http://virtunix.itribe.net/
    Virtually Un*x is dedicated to helping bring the power of UN*X tools to Windows95. Maintained by Chris [email protected] (The whatsnew page says "last update on June 20th 1997"...)

    Native Win32 ports of some GNU utilities
    http://www.edv.agrar.tu-muenchen.de/~syring/win32/UnxUtils.html
    Native Win32 ports of some GNU utilities

    Unix shell ports for Win32
    tcsh: ftp://ftp.blarg.net/users/amol/tcsh/
    zsh: ftp://ftp.blarg.net/users/amol/zsh/

    terminal programs for win32
    See my page on windows.


    URL:         http://www.math.fu-berlin.de/~guckes/vim/util.html
    URL:         https://www.vim8.org/util.html (mirror)
    Created:     Thu Jan 01 00:00:00 CET 1998
    
    Send feedback on this page to
    Sven Guckes [email protected]