header

Torsten Curdt’s weblog

Exposé on Enter

Isn’t it sad that there a two keys on the keyboard that hardly ever (well, …never!) are getting used? When was the last time you wrote a mail all in captial letters? What the hell is caps lock for?!? …and more Powerbook specific: why the enter key?? I’ve never ever used it – up until now.

With some help of my local OSX guru I finally figured out a way to assign Exposé’s “all windows” to the enter key. You cannot assign it from the GUI but you can change the OSX default settings directly.

Basically you have to assign the symbolic hotkeys 32 and 34 to your the scan code of your enter key. The tricky thing is: the scan codes may vary for the different keyboards. So for my machine the scan code is 76 and my defaults look like this:


$ defaults read com.apple.symbolichotkeys
{
 AppleSymbolicHotKeys = {
 32 = {enabled = 1; value = {parameters = (-1, 76, 0); type = standard;};};
 33 = {enabled = 0; };
 34 = {enabled = 1; value = {parameters = (-1, 76, 131072); type = standard;};};
 35 = {enabled = 0; };
 36 = {enabled = 1; value = {parameters = ("-1", 111, 0); type = standard;};};
 37 = {enabled = 1; value = {parameters = ("-1", 111, 131072); type = standard;};};
 44 = {enabled = 0; };
 45 = {enabled = 0; };
 46 = {enabled = 0; };
 47 = {enabled = 0; };
 48 = {enabled = 0; };
 49 = {enabled = 0; };
 62 = {enabled = 1; value = {parameters = ("-1", 103, 0); type = standard;};};
 63 = {enabled = 1; value = {parameters = ("-1", 103, 131072); type = standard;};};
 };
}

This little tools comes in handy to find the correct scan code for your machine. Just change the file accordingly and write the settings back with “defaults write”.

Oh! …and if someone can come up with a good use for caps lock – please let me know ;)

Update:
The following seems to work better than using “defaults”:


plutil -convert xml1 -o keys.xml ~/Library/Preferences/com.apple.symbolichotkeys.plist
vi keys.xml
plutil -convert binary1 -o ~/Library/Preferences/com.apple.symbolichotkeys.plist \\
  keys.xml

Google Summer of Code 2006

Google Summer of CodeA few days ago Google confirmed – I will be mentoring two students for this years Google Summer of Code. It will be really interesting to see how they will handle the projects.

Dmitriy will port back changes from the findbugs and aspectj forks of BCEL. In the end we hope to have at least support for JDK 1.5 and two projects that don’t have to maintain their own forks.

Peter will implement the missing compilers in jci (based on the plexus compiler codebase). The plan is to then write a maven jci plugin to obsolete the maven compiler plugin and keep the compiler abstraction in one central place: jci.

GPG keyring problems

To be honest I haven’t touched my gpg for the last few months. Shame on me – I’ve not even signed the keys from last ApacheCon’s key signing event yet. But… not my fault! I came across a nasty bug in gnupg …and frankly speaking the guys over in gnu land were not very helpful at all.

When I was just doing a ‘gpg —fingerprint’ or tried to list the keys I got a few keys and then an error message:

gpg: mpi larger than indicated length (2 bytes)
gpg: keyring_get_keyblock: read error: invalid packet
gpg: keydb_get_keyblock failed: invalid keyring

Obviously my keyring was out of whack …for whatever reason. Obviously it was fixed in 1.4.3 and since the new version is now also available through fink it’s all back working again. Hurray!

Digest problems with subversion 1.3

So lately I’ve upgrade my subversion client on OSX. I’ve installed the latest (=1.3.1) version from metlissian. Suddenly I could not longer commit! …at least to a subversion (1.2.x) repository that uses digest based authentication. I was always getting

Digest: user tcurdt: password mismatch: ...

in the apache error log. Since I also had changed something on the server lately and just did not expect the subversion client to be the problem I’ve ended up spending probably half a hour playing with the apache configuration and passwords. In the end downgrading my client to 1.2.3 solved it. Strange! What’s going on?

Javamail in maven repository

Kohsuke reports the good news …javamail and the activation jar are finally available from a maven repository! Especially great for projects like commons-email.

Update: …and Carlos put them up on ibiblio into the maven2 repository. Now you can just add them to your pom.xml like this


<dependency>
 <groupId>javax.activation</groupId>
 <artifactId>activation</artifactId>
 <version>1.1</version>
</dependency>
<dependency>
 <groupId>javax.mail</groupId>
 <artifactId>mail</artifactId>
 <version>1.4</version>
</dependency>