Mark Damon Hughes Using JetBrains AppCode aka JetCidr [Parental Advisory: Explicit Lyrics] [about]
Using JetBrains AppCode aka JetCidr
Fri, 2011Dec30 05:36:56 PST
in Mac by kamikaze

After not using Xcode 4 for a week, my head was clear and I was feeling optimistic. When I relaunched Xcode 4 to try to write a little toy app, it was like being held down and gang-raped by angry, horny baboons. I am displeased, Apple. So I decided to have a go at JetBrains AppCode again, the Java-based Objective-C IDE. Sure, it's by ugly Java dorks who make ugly Java apps, but it cannot be worse than being violated by baboons, right?

Download. Very slowly (my ISP or their servers?). The demo videos are in Flash, so I couldn't watch them on my iPad while I waited. Appalling. Who the fuck uses Flash video in the 21st century? I don't even have Flash on my Air anymore.

Set up, open a recently-created Xcode project. Works. Files are auto-sorted (yay), folders first, but language bundles are hidden, so XIB and strings files just seem to float at the top. Whatever, beats the manual file arranging in Xcode.

All the appearance defaults are awful, but fixable in preferences:

  • change color scheme: Solarized Light, change text background to white, caret row (current line) to no background
  • increase font size to Menlo 13
  • turn off code folding
  • turn on soft wraps
  • turn on line numbers
  • turn off that insanely stupid "Allow placement of caret after end of line" thing JetBrains likes which makes me want to stab them in their stupid faces.
  • change code formatter to use tabs, 4 spaces per indent, and put newline between method/function and first curly brace, as the One True Brace Style directs. No, I don't wanna hear about it, fuck you.
  • KeyMap, add Opt-Up to Page Up, etc., add Cmd-Up to Move Caret to Text Start, etc. Ctrl-D to Main Menu/Edit/Delete. Why can't these dumbass Java people get Mac keyboard keys right? I used to be a Java & Linux guy, and I still got them right whenever AWT didn't cock-block me.

Start writing code. Learn that completion key is Ctrl-Space instead of Ctrl-. I'll be using that a LOT. F1 brings up docs, and it works. Hey, already you're doing better than Xcode!

The editor tabs work correctly (though they have the x on the right, instead of the left where Apple puts them). Double-click a file, and it opens in a new tab. A new, UNIQUE tab. Hit Ctrl-Cmd-Up to edit counterpart, and it just magically opens the .h/.m file.

FUCK YEAH, EDITOR TABS THAT WORK.

For this, I already love you and forgive you for a lot of shit, JetBrains.

No code completion for the dealloc method (no, I'm not using ARC today). Add dealloc to "Live Templates", in Objective-C context:


- (void)dealloc
{
	[super dealloc];
}

And to use it, just type dealloc[TAB]. I'd prefer if it was a code completion, but still nice.

The Property List Editor Misadventure

Need to edit a property list? AppCode only thinks it's text. Even if you convince it it's XML, an XML editor for plists is a shit solution. And Xcode 4 doesn't ship with Property List Editor.app!

Sane Option: Buy PlistEdit Pro, $30 to nice developer Brian Webster. But that's blowjob money. Cheap Bastard Option: Dig PLE.app out of Xcode 3.2.6. Problem: I don't have any old Xcodes in my backups, so I would have to install it on Snow Leopard, and my original white MacBook runs too old a version of SL for Xcode, all others have Lion.

MAD SCIENCE TIME!

Igor! Open the Xcode 3.26 dmg, and the hidden "Packages" folder! Use Tim Doug's unpkg! Drop in "DeveloperTools.pkg"! Copy Applications/Utilities/Property List Editor.app to ~/Applications where THOSE MEDDLING FOOLS at Apple won't bother it! Igor! Copy these obsolete libraries from Library/PrivateFrameworks to ~/Library/Frameworks: (NO, IGOR, WE ARE NOT PLAYING GOD! WE ARE GODS!)

  • DevToolsCore.framework
  • DevToolsCParsing.framework
  • DevToolsFoundation.framework
  • DevToolsSupport.framework
  • JavaKit.framework
  • PlistEdit.framework

Throw the switch, Igor! Throw the motherfucking switch! Property List Editor lives! AGAIN! MUAHAHAHAHAHA!

So anywway. In AppCode's preferences, under External Tools, add an item, name it "plistedit", give it a group like "Mac Tools", program: open, parameters: -a "Property List Editor" --args $FilePath$, working directory: $FileDir$

Now I can right-click on a plist file, Mac Tools, plistedit, and BAM, I'm editing plists like an old-timer. Fuck me. Totally would've been easier to just buy PlistEdit Pro. And at some point, this entire edifice of obsolete frameworks that I have constructed will come crashing down.

Back to Work

Opening a XIB file pauses for a long time… then opens Xcode. Well, fine, can't build Rome in a day. Hopefully they'll replace that someday. I miss standalone Interface Builder.

To build and run or debug on a device, you'll have to edit the configuration dropdown, but it found my device, and built and launched the app just fine. Turn on "Stop running session", so it'll kill the old debugger when you start a new one. I haven't really used the debugger yet, but it has GDB and LLDB, so it might be OK.

AppCode supports Lion full-screen. It does mostly play nice like a Mac app, not a Java app.

I was extremely dubious when I first heard of JetCidr (the original name). The first beta was laughable and unusable. But it's now actually… not bad. Maybe better than Xcode as long as you're just editing code. The lack of a property list editor and Interface Builder are crippling, so they need to get on those fast.

AppCode is on sale for $69 until 2012Jan02, then goes back up to $99. I'll have to decide on the 2nd if it's a keeper, but it sucks less than the baboons.

← Previous: Apps Are the New Apps (Software) Next: Hasbro Announces Dungeons & Dragons Fifth Edition (Roleplaying) →
Feedback  | Key: ] =local file, * =off-site link  | Copyright © 2003-2010 by Mark Damon Hughes | Subscribe with RSS 2.0