Features of Ceylon IDE for IntelliJ

Ceylon IDE for IntelliJ is a full-featured development environment based on IntelliJ IDEA and compatible with Android Studio. It's of central importance to the Ceylon project, and we're continuously improving it.
With the Ceylon language and IDE, you'll be much more productive. Here's a quick list of just some of what you get.

Intelligent proposals

The compiler and IDE work together to find bugs in your code as you're typing and propose solutions.

The editor features quick fixes for errors, and oodles of other contextual intention actions.

Some proposals even feature an interactive linked mode.

All this assistance makes it easier to learn the language, understand error messages, and improve your code.

Contextual completion

We haven't forgotten everyone's favorite feature of an IDE: contextual autocompletion. Completion in Ceylon IDE supports "linked mode" argument proposals, a feature available in other IDEs that's still missing from IntelliJ's Java editor.

Naturally, chain completion is also available.

Completion will even find and propose modules for you, searching the Herd, the Java SDK, and any other module repository you're using in your project!

Refactoring

The IDE features Rename, Inline, Extract Function, Extract Value, and Change Signature refactorings. Rename supports inline "linked mode".

An Extract refactoring lets you select a containing expression, a target scope, in the case of extracting a function, and then allows customization of the extracted function or value name in linked mode.


Change Signature lets you change the signature of a function, renaming, reordering, adding, and removing parameters, or adding and inlining default arguments.

To understand and maintain a large codebase, there's nothing more important than easy navigation between code. Ceylon IDE provides hyperlink-style "go to" navigation to any referenced declaration, package, or module, including Java declarations.

On the other hand, the Navigate > Class and Navigate > Symbol popup dialogs are the quickest ways to get to a named declaration from wherever you are.

The Structure tool window and File Structure popup make it easy to navigate within the current file.

Inheritance hierarchy

The Type Hierarchy and Method Hierarchy let you easily explore inheritance relationships. They even show relationships between Ceylon and Java types.

Implement Formal Members and Refine Inherited Members are a quick way to select and fill in the signature of several supertype members at once.

Searching

With Find Usages you can view references to a Ceylon declaration in the Find tool window. References are categorized by usage type and location.

If you're in a hurry, you can view references in a popup!

Online documentation

Quick Documentation puts the API documentation, dynamically compiled, for any program element right at your pointer. (Quick Definition displays the code.)

When you're in a hurry, Parameter Info and Expression Type tell you immediately what you need to know about the parameters of a function or the type of an expresssion or inferred value.

Incremental error reporting

Unlike IntelliJ's Java editor, Ceylon IDE analyzes impacts of your code edits on other project source files as you're working, and reports problems in the whole project in the Ceylon Problems tool window, without requiring you to explicitly call Make.

Wizards and customization

Naturally, Ceylon IDE offers tools for creating modules and source files, creating and configuring projects and their dependencies, and for customizing the behavior of the IDE.

Of course, there's much more to Ceylon IDE: customizable syntax highlighting, code folding, breadcrumbs, formatting and auto-indentation, Optimize Imports, insert imports on paste, Paste Java as Ceylon, Surround With, Unwrap, Move Statement, Move Element, not to mention running and debugging.

Get Ceylon IDE for IntelliJ from the download site.