Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options
 
PerlMonks  

Re: Re: Favorite Text Editor?

by bwana147 (Pilgrim)
on May 23, 2001 at 17:20 UTC ( [id://82543]=note: print w/replies, xml ) Need Help??


in reply to Re: Favorite Text Editor?
in thread Favorite Text Editor?

In the same range, I'm rather fond of the filtering feature of vim (actually, I think it's a feature of all "standard" vi's).

If you prefix the ! with a range (i.e. "%" for the whole buffer, or ".,147" for current line thru line 147, or "'a,'b" for marker a thru marker b, etc.), vi will pipe the given range into the external command that follows the bang, and replace it with the output of the same command.

Very useful for one-liners, IMHO. Example: you're editing an SQL file with zillions of INSERT statements, and want to insert a COMMIT every 500 lines, lest the rollback segments chokes under the load:

:%!perl -ple "print 'COMMIT;' unless $.\%500"

You need to escape the modulo operator, lest vi interpolates into the current buffer name

The down side is that you don't see error messages. Unless maybe you say 2>&1 (haven't tried that yet, though

--bwana147

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://82543]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others having an uproarious good time at the Monastery: (2)
As of 2024-04-26 06:22 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found