Espresso 1.0 has officially been released for general consumption, and I’m extremely proud to announce that TEA for Espresso (coded by yours truly) is bundled with the application! Espresso is a text editor aimed firmly (for the moment) at the web editing crowd, and offers code folding, a powerful code navigator, FTP synching, Textmate-style text snippets (with tab stops and all that jazz), and an extensible underbelly for extending the program. It’s pretty sweet.
That said, I have to admit that my feelings about this release are mixed, and I don’t think that most people who live in their text editor (including myself) will be able to switch to Espresso full time just yet. I’m beginning to think that this may just be how text editors work. I was completely underwhelmed by Coda when it first came out, too, but after Coda 1.5 I tried it again and started migrating projects to it, and as of 1.6 I’m using Coda full time. While some people will find Espresso 1.0’s friendly and simple editing just what the doctor ordered, I suspect that its wider appeal will not be truly realized for another few point releases.
None of which, of course, answers the question, “Is Espresso for me?” Obviously, you won’t know until you try it out for yourself, but for those of you who like to have other people do the initial dirty work, here’s what Espresso is, what it is not, and where it’s probably headed in the near future. (Please note that I don’t have any insider info; I have been participating in the betas since slightly before they went public, however, and would like to think that my guesses are fairly educated.)
In many ways, to understand Espresso you first need to understand what it is not.
Espresso is not CSSEdit
Before you so much as think about downloading Espresso, you need to be clear on one thing: Espresso is not CSSEdit. Yes, you can edit CSS files with Espresso, but it does not offer visual CSS editing, and X-ray and the inspector are nowhere to be seen. You can override stylesheets, CSSEdit groups are supported in the code navigator, and the CSS text editing is very similar, but if you are expecting CSSEdit plus the ability to edit HTML you will be sorely disappointed.
I’m going to make a prediction here (and yes, it’s just a prediction; I have no insider knowledge): I think that Espresso will get X-Ray in a point release. I think it will probably get the inspector and the ability to jump straight from the Inspector to a style in the CSS. But I don’t think it will ever get CSSEdit’s visual editors. Why?
Because competing with yourself is stupid.
CSSEdit is the best way to edit CSS (right now, anyway). Espresso is shooting to be the best way to edit code, no matter what the language.
Perhaps someday MacRabbit might want to merge CSSEdit into Espresso and retire their original flagship product, but don’t hold your breath.
All that said, I’m as baffled as the next guy why you can’t right click a CSS file in Espresso and choose “Edit in CSSEdit”.
Espresso is not Coda
Particularly when MacRabbit announced Espresso and showed off screenshots of an integrated FTP editor I think a lot of people assumed that Espresso was setting out to be an all-in-one editor to challenge Coda (albeit much more slimmed-down). “Hooray!” cried the masses. “Perhaps at last we’ll have an all-in-one solution with a decent text editor at its core!”
The masses were a ways off the mark. Coda attempts to give you every tool you’re likely to need to edit code. Espresso tries to give you a fantastic environment for editing web pages with an extensible Sugar architecture to allow you to expand the editor to other languages. Notice how different those two sentences are.
If you love Coda because of the diverse tools that it gives you, you’ll probably be underwhelmed by Espresso. However, if the shortcomings of Coda’s text editor rub you the wrong way and you don’t very often find yourself using SVN, books, the terminal, etc., then Espresso might be a wonderful solution to your needs.
Espresso 1.0 is a foundation
In many ways, Espresso is building off the legacy of Textmate, if you can say that a piece of software that’s still nominally developed and actively used has a legacy. Text snippets with tab stops and mirrored segments directly mimic Textmate’s snippets and the Sugar syntax system is fairly Textmate-y, as well. Where Textmate provides extreme flexibility with a correspondingly steep learning curve, Espresso attempts to provide some of the core aspects of that flexibility but focus on providing users with a more polished, CSSEdit-ish application.
Espresso 1.0 is a foundation, a solid feature-set that shows the core capabilities of the program and through its scope and design may give you a good idea of what directions the application is likely to grow. When I first read MacRabbit’s descriptions of Espresso I immediately began imagining the possibilities, and every time I launch it I find myself imagining possibilities again. It has the potential to grow into an application almost as flexible as Textmate, but easier to extend and with a friendlier interface that also happens to offer the core features needed for web development.
Aside from its potential, Espresso 1.0 is a powerful text editor that’s overly focused on web design with a few rough edges tucked away beneath the overall gleam of its interface. It’s better than most of the web-centric offerings, but may not be quite good enough to lure you away from heavy hitters like Textmate, Coda, or the venerable BBEdit.
If you’re looking for a simple yet powerful web-oriented text editor with a lot of flexibility and promise for growth, I highly recommend giving Espresso a download. As long as you don’t go in expecting CSSEdit, Coda, or something that will turn into a magical unicorn and solve all your problems you should be pretty pleased with what you find, even if, like myself, you’re unlikely to be able to switch to using it full time for your day job until the application is a bit more mature.
That’s nice; what about TEA?
I haven’t been talking about TEA for Espresso much because although I’m ecstatic that it was one of the few Sugars chosen to be included in the application, it frankly wasn’t ready. I still consider it in beta even if Espresso is out, and because I didn’t know that it was going to be bundled in the application until the morning the app was released, some of its better features are broken. Once I’ve got it in a more mature place, I’ll definitely brag about it a bit more and offer some examples of how to use it; for now, please give me a shout in the Espresso forums if you have any feedback, requests, or bug reports.
Very nice explanation of Espresso. I was extremely shocked when I saw that it was released as 1.0. I was expecting a couple more beta versions. I used Espresso full-time now, and have been for the majority of the year. The reason I love it is because of its potential. Sure, it doesn’t have everything that TextMate or Coda have, but it will get there very quickly.
Not to mention it has the nicest interface of any text editor I’ve ever used.
Congrats on getting TEA into Espresso! Sugars like that will be the ones that bridge the gap between Espresso and Textmate and make the transition easier for developers.
Posted 11:43 PM on Mar. 23, 2009 ↑
I’m liking Espresso so far, but like you… I’m baffled as the next guy why you can’t right click a CSS file in Espresso and choose “Edit in CSSEdit”. A bridge between these two apps seems so obvious.
Not familiar with TEA, but looking into it now.
Thanks for the article.
Posted 9:35 AM on Apr. 15, 2009 ↑
I’m a registered user of both Espresso (thanks to MacHeist) and TextMate, and have been evaluating Coda the last week or so — and have TEA for Espresso (the b16 update) and Coda installed. I really appreciate the work you’ve put into TEA for both of them.
Yours isn’t the first review that I’ve seen suggesting that Espresso’s text editor is better than Coda’s, but other than code folding, just what is it that Espresso’s doing that I should be missing in Coda’s editor? Coda has tab snippets — perhaps not as sophisticated as Espresso’s or TextMate’s, but even so, they’re present. Coda is pretty easy to write plug-ins for. And when it comes to the actual mundane task of chewing on text, Coda does auto-insertion of closing tags and brackets/parentheses, balancing between them, “block editing” in a similar fashion to TextMate’s. If these are in Espresso, I haven’t seen ’em yet. If there’s a freakin’ way to just *show invisible characters* in Espresso, I haven’t seen it yet. The stuff I miss from TextMate when I’m working in Coda — most notably the context-sensitive indenting — doesn’t show up in Espresso, whereas some of the stuff I miss from BBEdit that’s not in TextMate — most notably pane-splitting — isn’t there in Espresso. (Both of them at least handle undo better than TextMate’s “one character at a time” weirdness.)
So is it too early to expect some of this stuff? Am I looking for magical ponies? Both Espresso and Coda are visually beautiful apps, something that doesn’t get said about editors too often, but Coda seems to be more than just a pretty face, as it were.
Posted 3:32 PM on Jun. 28, 2009 ↑
For me, Espresso has several big advantages over Coda’s text editing, despite still lacking a few specific features (like block editing and invisibles):
1) Speed. Espresso colorizes things faster and generally moves a lot quicker than Coda for me. It is not uncommon for me to launch a larger file in Coda and have to sit and wait for the coloring to catch up.
2) Tab stops. Coda’s snippets are worthless. Not only can you not see what the shortcuts are without editing the snippet (terrible UI choice), but they have no tab stops. Espresso did the right thing by copying Textmate here; being able to jump between common editable areas in a snippet using tab is really important to me. This is why I’ve poured far more effort into TEA for Espresso than Coda; Coda’s solution will never be as integrated with the editor as it should be until/unless they implement mirrored tab stops.
3) Ease of styling. This has less to do with actual editing of text, but it plays its part. In Coda, if I realize that the color of my CSS properties is actually making it more difficult for me to edit text, I have to change the values in at least four different places. In Espresso, I whip open a CSS file, make and preview changes in real time, and I’m done.
I find that editing in Espresso is very close to editing in Textmate (which is definitely what I want) but with more polish to the UI and some key features like a usable undo. More importantly, Espresso is under active development while Textmate 2 is vaporware, and although not feature complete the developer’s focus on Sugars and getting UI just right make me extremely hopeful for future versions.
Coda has a workflow unmatched by Textmate or Espresso, but extensibility and a fantastic editing experience are not its primary focus.
All that said, your mileage will vary. If you don’t find yourself butting up against Coda’s editing limitations, or find specific features that Coda has which Espresso lacks then by all means use Coda (for me it’s project-wide find and replace; I don’t use block editing all that often). Like Coda before it, Espresso 1.0 is not as appealing as I think Espresso 1.5 or so will be, so you can always revisit your decision down the road (and I’m here to say it is possible to get the best of both worlds; I have been known to manage a project in Coda and use right click->”Edit in Espresso” for actual coding).
Good luck! Choosing a text editor is always tough.
Posted 8:13 AM on Jun. 29, 2009 ↑