Chocolat

Release Notes + Blog


2.0September 2013  (download)

Feature: Snippet editor!

Feature: Indentation guides!

Feature: Select Next/Previous/All Occurrences

Note: New default snippets

Note: New go completions

Bug: Updated CSS completions, including text-shadow

Snippets and more

As promised, we're releasing Chocolat 2.0 today! It's a free update for all users.

Snippet Editor

The biggest new feature is the snippet editor.

Chocolat has a long history of snippet editors. The first one I wrote back when Chocolat was just for Objective-C, was a complete failure. The second one was more ambitious and somehow even more of a failure.

For the third iteration we have adopted a new design. Snippets are stored in a Core Data database and only the user's custom snippets are shown. We make no attempt to show default snippets and they are certainly not editable.

Rather, user snippets override any default snippets with the same tab trigger and language. So if you want to modify a default snippet, all you have to do is create a new snippet to override it.

The snippet editor supports both TextMate (${1:hello world}) and Chocolat (%{1="hello world"}) snippet syntax. Be aware that some features of TextMate (such as mirrors before their tabstops) are not supported by Chocolat.


I have noticed that many of the default snippets are not that great. To this end I have written all new default snippets for C, C++, PHP, JavaScript, Ruby and Python.

These are the languages I know best, but if you'd like to contribute a set for another language, you are welcome to submit a pull request to our repo.

Indentation Guides

This has been one of the most requested features for a long time. Chocolat now has indentation guides (View menu -> Indentation Guides).

A picture is worth a thousand words:

Everything else

You can now press ctrl-F to additionally select the next occurrence of the currently selected text. There is also ctrl-shift-F for the previous occurrence and ctrl-alt-F for all occurrences.

CSS completions have been refreshed with the latest properties. Rather embarrassingly, I added in text-shadow, which hadn't been there before.

There's also new golang completions. (thanks Gabriel Manricks!)

Future

There's a few features that didn't quite make it into 2.0. We're going to fit them into a 2.1 update. If you have any requests, tell us on Twitter!

Aside from that, I'm making a new website for Chocolat! It should be ready in a couple of weeks.