Orion 0.2 M7 – New and Noteworthy

This week brings another Orion milestone packed with new functionality. For Orion users, there is new support for HTML syntax highlighting, SFTP import/export, copy/paste in the Navigator, and extensive new Git functionality. For extenders and adopters, there are new extension points for contributing syntax highlighting, content assist, and even different file systems. We have even changed the license for the Orion client to facilitate adoption. Read on for details on these and many other changes in the latest build.

The entire community can now give our M7 build a spin on Orion Hub. If you don’t already have an account, you can request one at eclipse.org/orion. If you want to install the Orion server yourself, you can also download it.

HTML syntax highlighting

Orion now supports syntax highlighting of HTML files.

Writeable compare editor

The Orion compare editor now supports editing and saving the content on the left hand side. This can be used for example in the Git Status page to merge individual changes from the Git index into your working copy. You can browse through changes using the Next Difference and Previous Difference commands in the toolbar, and use Copy Current Change From Right to Left to merge individual changes from the remote file into your working copy.

SFTP import and export

You can now import and export content between your Orion workspace and a remote server via the popular SSH File Transfer Protocol. This protocol is used by many web hosting providers as a way to securely update and retrieve hosted web content. The Orion SFTP support is very basic: you can copy an entire directory tree from a remote SFTP server into an Orion workspace, and vice versa. There is no support for selecting individual files for transfer. To initiate an import or export, select the corresponding command in the Actions column of the Navigator page. Enter the connection information for the remote host, and select the desired option for overwriting conflicting content.

While the transfer is running, progress messages will appear in the black bar at the top of the page. Once the transfer is complete, an information message will appear in the same location, indicating whether the transfer succeeded or not. You can continue working with Orion while the transfer is running.

Editor on mobile safari

The Orion editor now works on the mobile version of the Safari web browser. This enables editing in Orion using a mobile device such as iPad.

Support for rename

You can now rename files and folders directly in the Navigator page. Simply click the Rename icon in the Actions column.

Copy/Paste in navigator

You can now copy files and folders in the Navigator using Copy and Paste commands. Select files and folders to copy using the checkbox next to the name, and invoke your browser’s Copy command using the key binding or browser menu. Navigate into the folder you want to copy into, and invoke Paste. Note that the selected files and folders will be copied into the location shown in the breadcrumb at the top of the page, rather than any selected folder on that page.

Simplified plug-in install

A site can now request that a plug-in be installed on a remote Orion server via a hyperlink. For example, a site exposes a link such as http://orionhub.org/add-extension.html#http://example.com/extension.html. When you click that link, you navigate to http://orionhub.org, where you are prompted to confirm that you want to install the plug-in. After confirmation, the plug-in is installed in your Orion profile on orionhub.

New license for Orion client

The Orion client code is now available under the BSD-style Eclipse Distribution License (EDL). This license is more permissive regarding distributed works, making it easier for other web-based projects to consume and incorporate parts or Orion. Contact your local lawyer for more details. The Orion client is also available under the traditional Eclipse Public License (EPL). The Orion server is still available only under the EPL.

Progress service

The Orion server now provides a facility for tracking progress of long running server operations. See the Server API documentation for more details on this API. This service is now used by long running tasks such as cloning Git repositories, and SFTP transfers. When you start such an operation in the client, you will see progress messages appear in the black bar near the orion logo. When the operation completes, a message appears in the same place indicating the result of the operation. This message can be dismissed by clicking on the image next to the message.

Syntax highlighting using textmate grammars

Orion now supports syntax highlighting via textmate grammars. A plug-in can introduce grammars for syntax highlighting additional file types by contributing an instance of the ISyntaxHighlight service. For an example of this, see the HTML syntax highlighting plug-in. Only a subset of the full textmate grammar is currently supported. See the documentation for further details on the currently supported grammar features.

Multiple file clients

You can now install multiple file clients for working with files from multiple domains in a single Orion instance. This enables browsing and editing files hosted by a third party service such as a WebDAV server. When multiple file clients are installed, the root page of the Navigator lists the available file clients.

Extensible content assist

Plug-ins can now contribute content assist implementations for different file types. For example here is a plug-in that contributes a content assist service for JavaScript files:

	var provider = new eclipse.PluginProvider();
		new orion.contentAssist.JavaScriptContentAssistProvider(),
		{name: "JavaScript content assist", pattern: "\\.js$"});

Git log

There is a new Git Log page that allows you to browse the local commit history of a Git repository. In the Navigator page, select Git Log in the Actions column next to any file or folder that is in a Git repository:

From this page you can open the contents of a commit in an editor, compare any two commits, compare any commit with the working tree, or tag a commit. In the toolbar on the far right hand side, there is a command to push any unreleased changes to the associated remote repository, if applicable.

Git repositories

The new Repositories page allows you to create and manage your Git clones. Access this page by clicking Repositories in the top banner of any page.

You can create a new clone on this page by clicking Clone Git Repository in the toolbar:

Once you have a cloned repository, you can link it to a folder in your workspace by clicking the link button in the Actions column:

Git remote

A new Git Remote page allows you to browse the remote commit history of a Git repository. Much like the Git Log page, this page allows viewing and comparing of any commits. Commands on the toolbar allow you to fetch remote changes into your local repository, and merge changes into your working tree.

Cloning GitHub

Orion now supports developing against third party Git repositories such as Git Hub. The Clone wizard on the Repositories page allows you to enter the private key required for pushing changes to the remote repository.

The above features are just the ones that are new since the previous milestone build. Summaries for earlier Orion 0.2 milestone builds:

This entry was posted in New & Noteworthy. Bookmark the permalink.