in reply to Re: (OT) Wanted: Compact Perl Syntax High-lighting Editor
in thread (OT) Wanted: Compact Perl Syntax High-lighting Editor

I'll go along with this, too, with a similar story. I very briefly used emacs, but couldn't remember the (seemingly) 4 step key commands - control-w control-x, or whatever. I forget, obviously. Thankfully ;)

I did a long tour of plain vanilla vi (my early Linux/FreeBSD days, then a long contract as a Solaris admin), thinking I was Mr. Vi - woo, look at me! setting marks, yanking to named buffers, and my perl background helped a lot with doing 'complicated' find/replace regexen on the vi command line. Never got exposed to vim or its advanced features.

Until a few weeks ago. Boy, have I been missing out. Now I'm browsing the file explorer, stepping through my buffer history, opening vertical and horizontal splits. And I've setup my first kep mappings and macros, naturally containing perl-isms. Including the first one of which I was especially proud, adding a POD entry for the word under my cursor, a few lines above my current line (for ease in creating POD for subroutines).

I got my start down the advanced vim path partly by shoulder surfing an apparent vim wizard at the office, but also right here at the monastery with the help of this single solitary link: .vimrc for perl programmers. That node (and the many helpful replies therein) merely brush the surface. There are other tips (there's a cool tip for a key mapping that filters your source through perltidy contributed by cees), links to additional perlmonks discussions regarding vi/vim, links to offsite tutorials (one of which was written up by TVSET), and a lot of other really good reading material.

You're right, getting around in vi/vim can be a little tricky at first - I know it was a little tough to remember way back when. But these days, I get into the equivalent of notepad/textedit and inadvertantly leave little clues around the file that indeed, I am a vim user.


s**lil*; $*=join'',sort split q**; s;.*;grr; &&s+(.(.)).+$2$1+; $; = qq-$_-;s,.*,ahc,;$,.=chop for split q,,,reverse;print for($,,$;,$*,$/)