NAME

Vi::QuickFix - Support for vim's QuickFix mode

SYNOPSIS

use Vi::QuickFix;

use Vi::QuickFix '/my/errorfile';

use Vi::QuickFix 'silent';

use Vi::QuickFix silent => '/my/errorfile';

DESCRIPTION

When Vi::QuickFix is active, Perl logs errors and warnings to an error file named, by default, errors.err. This file is picked up when vim is called in QuickFix mode as vim -q. Vim starts editing the perl source where the first error occured, at the error location. QuickFix allows you to jump from one error to another, switching files as necessary. Type :help quickfix in vim for a description.

To activate QuickFix support, add

use Vi::QuickFix;

or, specifying an error file

use Vi::QuickFix '/my/errorfile';

early in the main program, before other use statements.

To leave the program file unaltered, Vi::QuickFix can be invoked from the command line as

perl -MVi::QuickFix program
or
perl -MVi::QuickFix=/my/errorfile program

Vi::QuickFix is meant to be used as a development tool, not to remain in a distributed product. When the program ends, a warning is issued that Vi::QuickFix is active. This has the side effect that there is always an entry in the error file which points to the file where Vi::QuickFix was invoked, normally the main program. vi -q will edit this file when other error entries don't point it elsewhere. Use the silent option with Vi::QuickFix to suppress this warning.

It is a fatal error when the error file cannot be opened. If the error file is empty (can only happen with silent), it is removed at the end of the run.

USAGE

The module file .../Vi/QuickFix.pm can also be called as an executable. In that mode, it behaves (roughly) like the cat command, but also moitors the stream and logs Perl warnings and error messages to the error file. The error file can be set through the switches -f or -q. No warning about QuickFix activity is issued in this mode.

Called with -v, it prints the version and exits.

BUGS

no Vi::QuickFix has no effect

AUTHOR

Anno Siegel
CPAN ID: ANNO
siegel@zrz.tu-berlin.de
http://www.tu-berlin.de/~siegel

COPYRIGHT

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

The full text of the license can be found in the LICENSE file included with this module.

SEE ALSO

perl(1), vim(1).