So, two full weeks have now passed since starting my new job at Google. It’s a very interesting experience, and culturally worlds apart from my previous employer, Linuxcare. It will take me a while to get used to working in an environment where the intellectual property is considered essential business leverage and not an abomination, where all company information is treated as privileged and confidential, and where inventions are patented, not released for incremental improvement. I guess this explains why my best efforts to find any of my new colleagues on Advogato turn up blank.
Right now, I feel rather useless in my job. I’m a sysadmin with very little clue how each piece of the infrastructural puzzle fits together to make the whole. I already have business cards and a cell phone, but am not yet self-sufficient in my work. These things take time. No doubt I will one day yearn for my erstwhile empty plate and lack of responsibility.
So, what else is going on?
Well, Sarah and I are moving to Palo Alto this coming Thursday. That will place me within healthy biking distance of work (Sarah will be a lot further away, since she still works in San Francisco) and give us a much roomier apartment with lots of daylight, a swimming pool, etc. I won’t be sad to leave the dinginess of our current apartment behind. We’ll be getting a lot more for our hard-earned cash in Palo Alto.
The day after that, Sarah and I fly to England for two weeks of holiday fun in London, Cornwall and the Isles of Scilly. I can’t wait.
hacker seems to have come up with exactly the same basic CVS completion routine for bash that I wrote and that is included in the source distribution of bash 2.05, as well as on the Linuxcare BBC.
Incidentally, bash 2.05 improves the completion facility significantly with the addition of the -o parameter to complete. So, if you need CVS completion in bash 2.05, use this instead:
_cvs() { local cur prev COMPREPLY=() cur=${COMP_WORDS[COMP_CWORD]} prev=${COMP_WORDS[COMP_CWORD-1]} if [ $COMP_CWORD -eq 1 ] || [[ "$prev" == -* ]]; then COMPREPLY=( $( compgen -W 'add admin \ checkout commit diff \ export history import log \ rdiff release remove rtag \ status tag update' $cur )) fi return 0 } complete -F _cvs -o default cvs |
This is as basic as it gets, since there’s no attention paid to any switches, but it does cover a great many cases of basic CVS operation. If someone could extend this to cover all of the cases, as I have done for rpm, that would be great.
Since joining Google, I’ve added p4 (Perforce) completion and intend to extend my iptables and tcpdump completion routines when time allows.
Anyway, I need to get packing, or we won’t be ready for our move on Thursday.