4 posts tagged “osx”
Current revisions of Eclipse prevent the use of SoyLatte, the OpenJDK port of Java 1.6 for OS X 10.4/10.5. There is an open bug about this, and even better a patch for StandardVMType attached to the bug. I've applied the patch and it does indeed work. There is actually only a single jar used by Eclipse that needs to be built, and most of this can be done within Eclipse itself. The steps for doing this are outlined below.
- Download the Eclipse source. Unzip it.
- From within Eclipse do File | Import... | Existing Projects into Workspace and hit Next. Set your root directory to ${eclipse_src}/plugins/org.eclipse.jdt.launching. Copy the project into the workspace, just to save potential trouble.
- Check out the patch. Copy it to your clipboard.
- To apply the patch go to StandardVMType.java in the Package Explorer, right click, Team | Apply Patch...
- Now to export the plugin, i.e. build the jar needed by Eclipse. Again from within Eclipse: File | Export... | Plug-In Development | Deployable plugs-ins and fragments. Check off the plugin and perhaps change the output directory. Hit finish. You should have the jar with the applied patch in your output directory now.
- Exit Eclipse.
- From your Eclipse home directory (not the source installation, your binary install directory), go to plugins/ and find a file that is named something like org.eclipse.jdt.launching_3.3.1.v20070808_r331.jar. Move this file to a backup directory of your choosing.
- Copy the file generated in step (5) to here.
- Restart Eclipse.
- Go to Eclipse preferences | Java | Installed JREs and try and add SoyLatte as a JRE. If everything worked you should be able to do so without error.
Occasionally when working in Terminal.app I've experienced strange behavior at seemingly random times where my control characters would no longer be interpreted by the shell. For example, take the following:
[1204][macjavadev@Ivan:~] grep -ri asdfasdf
Hitting control-c after running this would not actually send a break; a ^C would instead be echoed to the console. Quitting Terminal.app and reloading it didn't help.
Not sure about the cause, but I at least found a fix: tack. This tool helps you solve problems around terminfo, and playing around with it for a few minutes seems to have fixed my problem.
About a week ago iCal started giving me an error whenever I would try and accept a meeting invite. The error was sporadic, only happening about half the time:
Someone invited you to an event using an email address that isn’t on your “me” card in Address Book. Find your email address in the following list and add it to your card in Address Book.
Unfortunately there were no email addresses "following"; that was the end of the error dialog.
I checked the "to" fields in the .ics file and sure enough my email address was listed. I looked at another .ics file that did work and could find no significant differences between the two. Eventually, in true monkey-banging-on-a-keyboard style, I stumbled upon the fact that I had two different cards in Address Book for myself, both with the same email addresses. I deleted the redundant card and haven't seen the problem since.
I tried SpotlightFS for a while yesterday and was unfortunately not that impressed. It's a nice concept, but still needs work. You are limited to multi-word searches (no booleans) so it's difficult to refine the results such that they are useful. Example:
[1133][jchilders@Ivan:/Volumes/SpotlightFS/cocoa]$ ls
:usr:include:wx-2.5:wx:brush.h
:usr:include:wx-2.5:wx:button.h
:usr:include:wx-2.5:wx:checkbox.h
:usr:include:wx-2.5:wx:checklst.h
:usr:include:wx-2.5:wx:choice.h
:usr:include:wx-2.5:wx:clipbrd.h
....
[snip]
So.. interesting, but not there yet. At least the regular Spotlight window groups your search results by type. As far as I can tell with SpotlightFS there is no way to refine your results beyond simple keywords. Also, you cannot open files directly from within the SpotlightFS directory, which almost defeats the purpose of having it.
This is an interesting experiment, and I'll keep an eye on it, but as it exists right now it's not particularly useful on a day-to-day basis.