blob: 7653f1f6de016d4e91121c19eb5915b4a41bd927 [file] [log] [blame]
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<link rel="stylesheet" href="default_style.css" type="text/css" title="main" media="screen">
<title>
Orion 0.4 M1 News
</title>
</head>
<body>
<h1>
Orion 0.4 M1 - New and Noteworthy
</h1>
<p>
Here are some of the more noteworthy things available in milestone build M1 (December 9,
2011) which is now available for <a href="http://download.eclipse.org/eclipse/downloads/"
target="_top">download</a>.
</p>
<table class="news" border="0" cellpadding="10" cellspacing="0" width="80%">
<tr id="tooling-html-validation">
<td class="title">
HTML syntax validation
</td>
<td class="content">
Orion now provides basic HTML syntax validation. Warnings and errors will display for common
HTML problems such as malformed elements, missing tags, incorrect element nesting, and duplicate
element ids.
<p><img src="images/04m1-html-syntax-validation.png" alt="HTML syntax validation"/></p>
</td>
</tr>
<tr id="tooling-modes-highlighting">
<td class="title">
CodeMirror syntax highlighting
</td>
<td class="content">
An Orion plugin is now available that connects <a href="http://codemirror.net/">CodeMirror</a>
syntax highlighting to the Orion editor. This means Orion now provides syntax highlighting
for all languages that have CodeMirror modes available, including: C/C++, C#, Clojure, CoffeeScript,
Groovy, Pascal, Perl, PHP, Python, Ruby, Scheme, Smalltalk, and many others.
Visit the <a href="http://mamacdon.github.com/orion-codemirror/codeMirrorPlugin.html">
CodeMirror plugin for Orion</a> for a complete list of languages and installation instructions.
<p><img src="images/04m1-code-mirror-highlighting.png" alt="CodeMirror syntax highlighting"/></p>
</td>
</tr>
<tr id="tooling-mixed-mode-highlighting">
<td class="title">
CodeMirror mixed mode syntax highlighting
</td>
<td class="content">
The <a href="http://mamacdon.github.com/orion-codemirror/codeMirrorPlugin.html">CodeMirror plugin for Orion</a>
also supports syntax highlighting of mixed-mode documents. In particular, JavaScript and PHP embedded in
HTML files are now appropriately highlighted.
<p><img src="images/04m1-mixed-mode-highlighting.png" alt="Mixed mode syntax validation"/></p>
</td>
</tr>
<tr id="tooling-modes-html-validation">
<td class="title">
CodeMirror dynamic syntax validation
</td>
<td class="content">
Another advantage of the <a href="http://mamacdon.github.com/orion-codemirror/codeMirrorPlugin.html">CodeMirror plugin for Orion</a> is highlighting
of syntax errors. This has been hooked into the Orion editor's annotation model to underline syntax
errors that occur as you type. For example while editing HTML, there is immediate syntax validation
for missing or malformed elements. In the example below, the mismatched heading element, and missing
&lt;/li&gt; element are highlighted and underlined in red.
<p><img src="images/04m1-html-dynamic-validation.png" alt="Dynamic syntax validation"/></p>
</td>
</tr>
<tr id="tooling-content-types">
<td class="title">
New content type service
</td>
<td class="content">
Orion has introduced a new content type service, <a href="http://wiki.eclipse.org/Orion/Documentation/Developer_Guide/Core_client_services#orion.file.contenttype">
<tt>orion.file.contenttype</tt></a>. This service allows plugins to introduce new content types,
and associate content types with file extensions and MIME types. In addition, some core Orion
services have been augmented to support content types over their previous file extension
matching. For example, editors can now be associated with content types rather than file extensions.
This allows different language tooling to be used for files containing mixed HTML and PHP ("application/x-httpd-php"),
versus plain HTML ("text/html"), even when the file extension is the same in both cases. The remaining
Orion language tooling services will be reworked to support content types in the following milestone.
</td>
</tr>
<tr id="tooling-default-editor">
<td class="title">
Default text editor
</td>
<td class="content">
A new service, <tt>orion.navigate.openWith.default</tt>, allows a plugin to declare the default
editor to use when opening files whose content-type does not match any known type. The built-in
Orion editor now implements this, meaning all text files regardless of extension or content can be opened
in the editor.
</td>
</tr>
<tr id="tooling-html-outliner">
<td class="title">
HTML outliner plugin
</td>
<td class="content">
A new Orion plugin is available that provides a detailed outline when editing HTML files. Simply install
the <a href="http://jarthorn.github.com/html-tools/htmlOutlinePlugin.html">HTML outline plugin</a>, and
then select either <b>Full HTML</b> or <b>Filtered HTML</b> from the drop-down menu in the <b>Outline</b>
pane. We are still working on figuring out what level of detail is useful, so please try it out and send
feedback. Even better, fork the <a href="https://github.com/jarthorn/html-tools">repository</a> and play
around with your own ideas.
<p><img src="images/04m1-html-outline.png" alt="HTML outline"/></p>
</td>
</tr>
<tr id="search-wildcards">
<td class="title">
Wildcard search
</td>
<td class="content">
You can now use simple wildcards in global searches. Use '*' for an arbitrary sequence of characters
and '?' for a single character.
<p><img src="images/04m1-search-wildcard.png" alt="Wildcard search"/></p>
</td>
</tr>
<tr id="search-pagination">
<td class="title">
Pagination of search results
</td>
<td class="content">
Search results are now delivered in pages rather than all at once. Buttons in the toolbar can be used
to navigate to the next or previous page of results.
<p><img src="images/04m1-search-pagination.png" alt="Search pagination"/></p>
</td>
</tr>
<tr id="search-sort">
<td class="title">
Changing sorting in search results
</td>
<td class="content">
Search results are now sorted alphabetically by location, rather than
by search rank. You can now also switch to sorting search results by filename
via the options menu.
<p><img src="images/04m1-search-sort.png" alt="Sorting search results"/></p>
</td>
</tr>
<tr id="search-scope">
<td class="title">
Scope search to a folder
</td>
<td class="content">
You can now perform searches on particular folders rather than across
all your files. On the <b>Navigator</b> page, the search will now be performed
only in the current folder, indicated by the breadcrumb in the top banner.
<p><img src="images/04m1-search-scope-banner.png" alt="Search scoping in banner"/></p>
<p>
From the search results page, you can adjust the search scope up to a parent folder
by clicking that parent folder in the breadcrumb. Click a location in the
<b>Location</b> column to repeat the search only within that single folder.
</p>
<p><img src="images/04m1-search-scope-change.png" alt="Changing search scope"/></p>
</td>
</tr>
<tr id="search-context">
<td class="title">
More contextual information in search
</td>
<td class="content">
To go along with all the new search features this milestone, the search results
page now tells you a lot more about what is going on. You can now see
what terms you were searching for, in what folders, how many results in total,
and what page of results you are currently viewing. Also, when you save a search,
the bookmark gives more information about the search scope and terms.
<p><img src="images/04m1-search-context.png" alt="Contextual information in search bookmark"/></p>
</td>
</tr>
<tr id="ui-improvements">
<td class="title">
User interface improvements
</td>
<td class="content">
The user experience for collecting input has been redesigned in this milestone.
Most input is now collected in lightweight "slideouts" rather than popup dialogs.
Simply type the requested text in the slideout, or press the "..." button to
provide more advanced input. Hit the 'X' button or the Esc key to dismiss the
input.
<p><img src="images/04m1-slideout.png" alt="Slideout for collecting input"/></p>
<p>In addition, the presentation for action buttons within pages has been revamped.
These buttons are now always visible rather than only being shown on hover. This
makes the actions accessible using your keyboard, and makes it possible to use them
on touch interfaces where there is no concept of hover. We will continue to evolve
the presentation in future milestones to ensure Orion is fully accessible, and
to improve user experience on mobile and touch devices.
</p>
</td>
</tr>
<tr id="ui-collapse-banner">
<td class="title">
Hide header and footer
</td>
<td class="content">
You can now collapse the header and footer areas on all pages. This is especially
handy on mobile or small screen devices where vertical space is at a premium. When
you also collapse the <b>Outline</b> slideout, the editor can now fill the entire window.
Collapse and expand the header using the <b>Ctrl+Shift+M</b> key sequence (or <b>Cmd+Shift+M</b> on Mac).
<p><img src="images/04m1-collapse-banner.png" alt="Orion editor with header and footer areas collapsed"/></p>
</td>
</tr>
<tr id="ui-goto-last-edit">
<td class="title">
Go to last edit location
</td>
<td class="content">
A new command, <b>Last Edit Location</b>, will jump the cursor to the location of your last modification in the
editor. This is handy when you quickly want to refer to another part of the file while editing, and then
jump back to where you left off typing. The command is available via <b>Ctrl+Q</b> (or <b>Cmd+Q</b> on Mac).
As always, if you forget the key binding for a command, you can hit <b>Ctrl+Shift+L</b> to see a complete
list of available commands in the editor.
<p><img src="images/04m1-last-edit-location.png" alt="Go to last edit location"/></p>
</td>
</tr>
<tr id="editor-performance">
<td class="title">
Editor performance improvements
</td>
<td class="content">
While the Orion editor is already quite fast and scalable, it was slow and choppy to horizontally scroll
very long lines. Horizontal scroll performance has been significantly improved in this milestone, in particular
on Firefox and Chrome.
</td>
</tr>
<tr id="editor-spaces-tabs">
<td class="title">
Use spaces for tabs
</td>
<td class="content">
The Orion editor now supports using spaces instead of tabs for indentation. This is not currently enabled by
default, but we are working on providing a preference page for customizing this in the future. Clients who are
embedding the Orion editor in their own page can configure this using the <tt>expandTab</tt> option when configuring
the Orion text view widget.
</td>
</tr>
<tr id="editor-async-create">
<td class="title">
Asynchronous editor creation
</td>
<td class="content">
The Orion editor can now be created asynchronously, with callbacks provided when editor initialization is complete.
For clients embedding the Orion editor in their own page, this allows you to initialize the editor in the background
while it is invisible and only display it when fully initialized. See <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=349627">bug 349627</a>
for further details.
</td>
</tr>
<tr id="git-log-pagination">
<td class="title">
Pagination of Git log
</td>
<td class="content">
The <b>Git Log</b> page now shows log information one page at a time rather than all at once. This improves
performance for viewing the history of very large Git repositories. Buttons in the toolbar can be used to
navigate between the log pages.
</td>
</tr>
<tr id="git-apply-patch">
<td class="title">
Git apply patch
</td>
<td class="content">
You can now apply patches to a Git repository in Orion. Go to the <b>Repositories</b> page, and select
<b>Apply Patch</b> from the actions menu.
<p><img src="images/04m1-git-patch.png" alt="Apply patch to Git repository"/></p>
</td>
</tr>
<tr id="git-pull">
<td class="title">
Git Pull command
</td>
<td class="content">
A <b>Git Pull</b> command has been added in the <b>Repositories</b> page. Although this is equivalent
to performing a <b>Fetch</b> followed by a <b>Merge</b>, <b>Pull</b> is a handy shortcut when you know the incoming
changes can be applied safely and cleanly.
<p><img src="images/04m1-git-pull.png" alt="Git pull"/></p>
</td>
</tr>
<tr>
<td colspan="2"></td>
</tr>
</table>
</body>
</html>