This week Dr. Drang wrote about a useful feature in recent versions of OS X’s Terminal.app, which allows you to display a man page in its own special window. This is especially useful when you want to look something up but you are in the middle of typing a long command.
It’s not polite to respond to a good solution to a common problem by claiming to have a better solution, and even less so when the better solution requires you to change your shell. But this is the internet, so here goes.
When I need to look at a man page while writing a command, I use zsh’s
push-line editing command.
This clears the prompt and waits for you to type something else.
After executing this new command, it restores your original prompt.
The nice thing about this is that it is useful beyond just looking at manuals.
Often while typing some command,
I realize I need a quick
cd or even
ls before I’m ready to
You can bind
push-line to a key (I use Ctrl-B) by putting
bindkey '^B' push-line
Even better, you can use
push-line-or-edit to get the same behavior
with one very useful addition. Normally, if you are typing a continuation line
of a multi-line command, you cannot make changes to prior lines.
push-line-or-edit redraws the lines as a single block of text,
which allows you to edit anything you have typed so far.