I know, “bash and dash” sounds like a sadistic game for frat boys. But it rhymed and was so apropos.
Here’s a quick tip for Dash users. If you want to put Dash’s powerful browsing and search features to use from the command line, a couple quick shell aliases will make life that much more fun.
First an easy script to open any arguments as a search in Dash. (Thanks to kavu for the note about $*
vs. $@
).
# Open argument in Dash
function dash() {
open "dash://$*"
}
With that combination, you can just type dash ruby:FileUtils cp_r
on the command line and have Dash open your Ruby docset, locate the FileUtils class, and search the page for cp_r
. Anything that works in the Dash search field works in a url.
One last quickie… I love being able to open man pages in Dash, search them, bookmark them, and have them float while I try things out in a Terminal window. Assuming you have the man page docset enabled (and your shortcut is man:
), you can make a quick shortcut that will let you do dman sort
and pop open the sort
man page.
function dman() {
open "dash://man:$*"
}
If you were so inclined, you could name it man
and just have it replace the built-in man
command, but that seems drastic. Note that you can start searches immediately from the command line as well: dman find -atime
.
URL schemes are so much fun.