It looks like you are trying to re-invent the nice quickfix mode integration for Perl that's built into VIM 6.0. Here's how to get started with it. It's super handy.
- Quickfix Mode Integration Like other great editors, vim
has a built in mechanism to speed up the compile-debug-edit cycle.
Here's the least you need to know to get running with this.
- Tweak your .vimrc file Add these lines to your .vimrc
to get started. The first command tells vim to compile the
current buffer when you type ":make", the second command tells
vim to recognize the error format that Perl returns.
set makeprg=$VIMRUNTIME/tools/efm_perl.pl\ -c\ %\ $*
To make this cycle even faster, also add this line:
That will cause the file to automatically be saved in some
cases, such as when you type ":make".
- Set your Perl Path If you are using some of your own
modules, you need to give vim a hint about where to find them.
There are two straightforward ways to handle this. One is to
set the path in one of the environment variables that Perl will
look in, such as PERL5LIB. The other method is to simply use vim
command ":lcd" to set the Local Current Directory for the perl
file you want to compile to be relevant libary path.
- Compile your Perl from within vim You are now ready
to compile a script from within vim. Simply use ":make" for
this. Vim will run "perl -c yourscript.cgi" and process the
results. It will show you a list of the resulting errors, if
any, and jump to the first error.
- Navigate your errors
You are now in quickfix mode
and have some commands available to quickly address the
remaining errors. Here are the essential commands for this:
":cl" lists all the errors for you again, ":ccN" jumps to
error number 'N', ":cn" jumps to the next error. You can read
the details with ":help quickfix"
Are you posting in the right place? Check out Where do I post X? to know for sure.
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
Want more info? How to link
or How to display code and escape characters
are good places to start.