On 03/12/2016 06:22 PM, Gary Johnson wrote:
On 2016-03-11, Yang Luo wrote:
I'm a vim newbie.
for example this code block:
///////////////////////////////////////////////////
wire [3:0] w_buff_length;//0--15
always @(posedge clk or negedge rst_n)
if (!rst_n) begin
for(i=0; i< w_buff_length; i=i+1)s_data_buff[i] <= #1 {BIT_WIDTH{1'd0}};
end
else begin
s_data_buff[0] <= #1 i_data;
for(i=0; i< w_buff_length-1;i=i+1)s_data_buff[i+1] <= #1 s_data_buff[i];
end
/////////////////////////////////////////////////
I want to replace w_buff_length with BUFF_LENGTH. I know hit *,
and do :%s//BUFF_LENGTH/g can get it? Is there another way do not
into command mode?
What I usually do in such cases, using your example, is:
1. Move cursor over w_buff_length
2. Hit *
3. Type cwBUFF_LENGTH
and hit Esc
4. Hit n
to find the next match
5. Hit .
to repeat the cw command
6. Repeat from step #4 until done
I usually keep my right index finger on the 'n' and my right ring
finger on the '.' and just alternate those two keys, sometimes
skipping the '.' if I don't want to change that particular match.
Regards,
Gary
You could also use this mapping (taken from vim tip 464):
:nnoremap <Leader>s :%s/\<<C-r><C-w>\>//g<Left><Left>
I know I use it all the time.
--
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.