On Mon, Sep 01, 2003 at 07:25:52PM +0300, Tzafrir Cohen wrote:
> On Mon, Sep 01, 2003 at 11:31:34AM -0400, Subba Rao wrote:
> > 
> > Hello,
> > 
> > I have a large text file where 2 lines (fields) form a record.  Now I want 
> > to merge the 2 lines into one line seperated by a comma.
> > 
> > Line1
> > Line2
> > 
> > The fields should be seperated by a comma.
> > 
> > Line1,Line2
> 
> s/\n/,/
> 
> > 
> > How can I define a keystroke that will,
> >             add a comma at the end of Line1
> >             perform a JOIN of Line1 and Line2
> >             move the cursor to the next record?
> 
> First answer:
> 
> :map <F3> :s/\n/,/
> 

You had good intentions, but it won't. You need also to move to the
next line (both to satisfy the request and to make it comfortable).

> 
> Second answer:
> 
>   :s/\n/,/
> 
> And it will be mapped to . (dot) , as it is the last operation

This won't either. I did not check all vi's in existence, only vim,
and its docs say :
'You can repeat the non-Ex commands with the "." command.'
Which is true.

Whoever wants to see some nice black wizardy with vi macros,
can look at VIM's source, under runtime/macros (you can also find
that in /usr/share/doc/vim/macros on Debian, or somewhere under
/usr/share/vim on RedHat). I especially liked "maze".
-- 
Didi

> 
> -- 
> Tzafrir Cohen                       +---------------------------+
> http://www.technion.ac.il/~tzafrir/ |vim is a mutt's best friend|
> mailto:[EMAIL PROTECTED]       +---------------------------+
> 
> =================================================================
> To unsubscribe, send mail to [EMAIL PROTECTED] with
> the word "unsubscribe" in the message body, e.g., run the command
> echo unsubscribe | mail [EMAIL PROTECTED]

=================================================================
To unsubscribe, send mail to [EMAIL PROTECTED] with
the word "unsubscribe" in the message body, e.g., run the command
echo unsubscribe | mail [EMAIL PROTECTED]

Reply via email to