minor vi/vim qstn

Gary Kline kline at thought.org
Thu Sep 26 02:47:11 UTC 2013


Organization: Thought Unlimited.  Public service Unix since 1986.
Of_Interest: With 27 years  of service  to the  Unix  community.

On Thu, Sep 26, 2013 at 03:06:00AM +0200, Polytropon wrote:
> On Wed, 25 Sep 2013 17:21:04 -0700, Gary Kline wrote:
> > Organization: Thought Unlimited.  Public service Unix since 1986.
> > Of_Interest: With 27 years  of service  to the  Unix  community.
> > 
> > On Thu, Sep 26, 2013 at 12:23:27AM +0200, Polytropon wrote:
> > > On Wed, 25 Sep 2013 14:27:41 -0700, Gary Kline wrote:
> > > > 	am I misremembering this feature, or didnt vi have a syntax where
> > > > 	you typed something like:
> > > > 
> > > > 	% vi[#] or % vi [-2]  [or vi [-N]
> > > > 	
> > > > 	to repeat the last or the second from last  command?  with my
> > > > 	shoulder sore bloody sore I need to save every key stroke.  
> > > 
> > > To repeat the last command, "." can be used.
> > > 
> > > The vi editor (and probably vim and gvim) supports
> > > according to "man vi":
> > > 
> > >        [Vi]i[sual][!] [+cmd] [file]
> > >               Vi mode only.  Edit a new file.
> > > 
> > > Is this what you're searching for?
> > 
> > 
> > 	I THOGoHT it was "!", but lookit:
> > 
> > 
> > pts/14 17:11 <tao> [5010] vi sent
> > pts/14 17:11 <tao> [5011] vi!
> > zsh: command not found: vi!
> > pts/14 17:12 <tao> [5012]
> > 
> > .......  this is vi == vim.  
> > 
> > 	AHA:: found it.  it's [bang]<commant>
> > 
> > 
> > pts/14 17:17 <tao> [5016] vi sent
> > pts/14 17:17 <tao> [5017] !v    
> > 
> > 
> > 	I'll tell ya, if vi disappeared , I'd end it all!
> 
> Ah, I see - you've been refering to repeating a _shell_
> command (so the question was regarding the shell, which
> in your case is Z shell).
> 
> You can probably use (like in the C shell) the arrow keys
> to browse the command history. Similarly, you can use the
> "!<number>" command refering to the command number obtained
> by the "history" command. There's a handy alias defined
> globally for the C shell: "h" which means "history 25"
> (lists the last 25 commands), handy in regards of saving
> keystrokes. :-)
> 
> I assume the zsh is also capable of "filtered history":
> For example, you enter "vi s" and use the up and down
> arrow keys to browse all commands that have been entered
> starting with "vi s" (for example "vi sent", "vi stuff"
> and so on). If the system's csh can do this, zsh should
> also provide this useful feature.
> 
> And as your prompt "pts/14 17:12 <tao> [5012]" suggests,
> the command number is being shown. If this information
> is the same as the command number in the history, entering
> "!5010" would execute the 2nd from last command.
> 
> To repeat the last command, whatever it has been, "!!"
> can be used. Again, this works in csh, so I can't predict
> if it will work in zsh too, but I _assume_ it does.
> 
	dunno how you know im using the zsh, but yup.  with the bang stuff
	if you do a 

	% !-3

	you go back three vi cmds.  !-N, N cmds. 

	thankfully there are shortcuts!

	gary

	ps: zsh is sort of a ksh clone; I remember porting the zsh onto
	my 286 in 1989.  got a lot of csh-isms :)


-- 
 Gary Kline  kline at thought.org  http://www.thought.org  Public Service Unix
             Twenty-seven years of service to the Unix community.
                            http://www.thought.org/HOPE




More information about the freebsd-questions mailing list