When, exactly, did bash become smart enough to handle command
completion for sub-commands? I noticed this today on my Ubuntu
(Dapper) box. I, unintentionally1,
typed hg <tab><tab>. Rather than getting the “Display all 100
possibilities? (y or n)” I expected, I got
add copy hgext/hgk] manifest rawcommit tag
addremove cp history [module recover tags
annotate ct id mv remove tip
bundle diff identify out rename unbundle
cat export import outgoing revert undo
checkout forget in parents rm up
ci grep incoming patch root update
clone heads init paths serve verify
co help locate pull st version
commit hgext/hct] log push status view
pwilliams@pwilliams:~$ hg
Which is the list all the valid sub-commands for hg. And if I do hg
d<tab> it auto-completes the sub-command to hg diff. Same thing
for cvs and apt-get. It seems that bash now support full
auto-completion of sub-commands for most programs2.
That is just cool.
-
I unconsciously double tap the tab key whenever I stop typing because I am addicted to auto-complete and Emacs contextually correct indentation.
-
It does not work for
gem, though.
Post a Comment