blob: 6f5e1efb34d65918bfe2e4150ec1f183a00d0708 [file] [log] [blame]
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Xtext - Xtext 2.9 Beta</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description"
content="The website of Eclipse Xtext, an open-source framework for development of programming languages and domain-specific languages">
<meta name="author" content="Sven Efftinge">
<meta name="author" content="Miro Spoenemann">
<!-- styles -->
<!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<!-- Le fav and touch icons -->
<link rel="shortcut icon" href="/Xtext/images/favicon.png">
<link href="/Xtext/css/bootstrap.css" rel="stylesheet" type='text/css'>
<link href="/Xtext/css/bootstrap-responsive.css" rel="stylesheet" type='text/css'>
<link href="/Xtext/css/shield-responsive.css" rel="stylesheet" type='text/css'>
<link href='/Xtext/css/fonts.css' rel='stylesheet' type='text/css'>
<link href="/Xtext/css/prettyPhoto.css" rel="stylesheet" media="screen" type='text/css'>
<link href="/Xtext/css/prettify.css" type="text/css" rel="stylesheet"/>
<link href="/Xtext/css/style.css" rel="stylesheet" type='text/css'>
<!--[if lt IE 9]>
<link href="/css/iebugs.css" rel="stylesheet" type='text/css'>
<![endif]-->
</head>
<body>
<!-- Google Tag Manager -->
<noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-TGDS5S"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-TGDS5S');</script>
<!-- End Google Tag Manager -->
<header class="site-header">
<!-- Navbar -->
<div class="navbar navbar-fixed-top"
style="border-bottom: 1px solid #000;">
<div class="navbar-inner">
<div class="container">
<a class="btn btn-navbar" data-toggle="collapse"
data-target=".nav-collapse"> <span class="icon-bar"></span> <span
class="icon-bar"></span> <span class="icon-bar"></span>
</a> <a class="brand" href="/Xtext/index.html"></a>
<div class="nav-collapse collapse" style="height: 0px;">
<ul class="nav">
<li ><a href="/Xtext/news.html">News</a></li>
<li ><a href="/Xtext/download.html">Download</a></li>
<li ><a href="/Xtext/documentation/index.html">Documentation</a></li>
<li ><a href="/Xtext/community.html">Community</a></li>
<li ><a href="http://xtend-lang.org">Xtend</a></li>
<li ><a href="http://www.eclipse.org">Eclipse.org</a></li>
</ul>
<div class="btn-group pull-right">
<div class="g-plusone" data-href="http://www.xtext.org"></div>
</div>
</div>
<!--/.nav-collapse -->
</div>
</div>
</div>
<!-- Navbar End -->
</header>
<div class="page-content">
<div class="wrapper">
<div id="page">
<div class="inner">
<br/><br/>
<div id="maincontainer" class="container">
<div class="span8 offset1">
<h1>Xtext 2.9 Beta</h1>
<h4>May 22, 2015</h4>
<br/>
<p>The main theme of our ongoing work in Xtext &amp; Xtend 2.9 is to reach out to other tools and platforms. After seven years of development, Xtext has become the defacto framework for implementing programming languages and external domain specific languages and IDE support for Eclipse. A couple of months ago we announced that we have now started to extract the IDE-related infrastructure from Eclipse, such that it can be used in other scenarios as well.</p>
<p>Today we want to give early adopters a chance to test the current status quo and provide feedback (you always could do that, since everything we do is open-source). The “2.9 Beta” we are putting out today is a frozen state of the head, that was tested just a bit and has known issues. So it’s not an actual release and you should not use it in production! Still it comes with some new stuff, that might be interesting:</p>
<h2 id="intellij-idea-support">IntelliJ IDEA Support</h2>
<p>With 2.9 you will be able to produce a feature rich plug-in not only for Eclipse but also for IntellIj IDEA from the same language description. The beta already allows for creating an IDEA plug-in project that provides an editor, with syntax coloring, content assist and even some rename refactoring works. Also we have been working on an incremental standalone compiler, that is used by IDEA, and automatically runs the code generators for the changed and affected files.</p>
<p>The IDEA integration hasn’t been so easy, because IDEA is already a rich platform and it’s a bit challenging to map IDEA’s concepts with ours in performant ways. So there is still some work ahead of us, especially in the case of Xbase and Xtend, where a seamless integration with the Java IDE is our goal. We are simply not there yet and especially the integration with Java is still in a very early and bad stage. If you have Xtext DSLs that don’t use Xbase, there is a lot that works already quite well.</p>
<p>Stefan has written up more infos about the IntellIJ IDEA part <a href="http://oehme.github.io/2015/05/22/xtext-intellij-beta.html">here</a>.<br />
## Web/Orion Support</p>
<p>The other part we wanted to share and get feedback on, is the early state of our web support. Same story: <b>don’t use it in production</b>! The Xtext project wizard can create a web project, that provides you with an example html webpage, that contains an orion editor and a java-based server backend, that talks to that editor. Syntax Coloring is done entirely in the browser, while validation and content assist are provided by the server. The server side really just projects tool support on that widget and doesn’t need any other integration with your web application, just use the orion editor as a feature rich text widget.</p>
<p>The client-server communication already uses an optimized communication protocol based on text-deltas and it features a cancelation policy that will avoid any unnecessary processes. Even with large documents response time is very good.</p>
<p>Please tell us, what you would like to do with this. Bug reports and feature requests go here : <a href="https://bugs.eclipse.org/bugs/enter_bug.cgi?product=TMF&amp;component=Xtext">bugs.eclipse.org</a></p>
<h2 id="other-themes-in-29">Other Themes In 2.9</h2>
<p>Besides the web and IDEA support, we are working on making it even simpler to build Xtext projects. One goal for instance is to allow for xtext projects without any Eclipse dependency, such that you can just use the runtime and build and deploy it with Maven or Gradle. In addition we will again spend much time on improving the overall performance and bugfixes of course.</p>
<h2 id="more-updates-soon">More updates soon</h2>
<p>The 2.9 release is planned for autumn 2015 and shall come with production ready support for IDEA and Web. Until then we will likely have more beta releases, depending on demand and progress.</p>
<h2 id="download-links">Download Links</h2>
<p>Here are the download links for the beta:</p>
<p>Updatesite : http://download.eclipse.org/modeling/tmf/xtext/updates/composite/milestones/</p>
<p>Ready to use eclipse distributions:<br />
- <a href="http://www.eclipse.org/modeling/download.php?file=/modeling/tmf/xtext/downloads/distros/eclipse-dsl-beta-luna-SR2-win32-x86_64.zip&amp;r=2">eclipse-dsl-beta-luna-SR2-win32-x86_64.zip</a><br />
- <a href="http://www.eclipse.org/modeling/download.php?file=/modeling/tmf/xtext/downloads/distros/eclipse-dsl-beta-luna-SR2-macosx-cocoa-x86_64.tar.gz&amp;r=2">eclipse-dsl-beta-luna-SR2-macosx-cocoa-x86_64.tar.gz</a><br />
- <a href="http://www.eclipse.org/modeling/download.php?file=/modeling/tmf/xtext/downloads/distros/eclipse-dsl-beta-luna-SR2-linux-gtk-x86_64.tar.gz&amp;r=2">eclipse-dsl-beta-luna-SR2-linux-gtk-x86_64.tar.gz</a><br />
- <a href="http://www.eclipse.org/modeling/download.php?file=/modeling/tmf/xtext/downloads/distros/eclipse-dsl-beta-luna-SR2-win32.zip&amp;r=2">eclipse-dsl-beta-luna-SR2-win32.zip</a><br />
- <a href="http://www.eclipse.org/modeling/download.php?file=/modeling/tmf/xtext/downloads/distros/eclipse-dsl-beta-luna-SR2-linux-gtk.tar.gz&amp;r=2">eclipse-dsl-beta-luna-SR2-linux-gtk.tar.gz</a></p>
<p>IDEA Repository : http://download.eclipse.org/modeling/tmf/xtext/idea/2.9.0.beta2/updatePlugins.xml</p>
</div>
</div>
</div>
</div>
</div>
</div>
<footer class="site-footer">
<div id="extra">
<div class="inner">
<div class="container">
<div class="row">
<div class="span6">
<h3 class="footer-links-header">Quick Links</h3>
<ul class="footer-links clearfix">
<li><a href="http://www.eclipse.org/legal/privacy.php">Privacy Policy</a></li>
<li><a href="http://www.eclipse.org/legal/termsofuse.php">Terms of Use</a></li>
<li><a href="http://www.eclipse.org/legal/copyright.php">Copyright Agent</a></li>
<li><a href="http://www.eclipse.org/legal/">Legal</a></li>
</ul>
<ul class="footer-links clearfix">
<li><a href="http://www.eclipse.org">Eclipse Home</a></li>
<li><a href="http://marketplace.eclipse.org/">Market Place</a></li>
<li><a href="http://live.eclipse.org/">Eclipse Live</a></li>
<li><a href="http://www.planeteclipse.org/">Eclipse Planet</a></li>
</ul>
</div>
<div class="span6">
<h3 class="footer-links-header"><a href="https://twitter.com/xtext" style="color: white;">@Xtext</a> on Twitter</h3>
<a class="twitter-timeline" href="https://twitter.com/xtext" data-widget-id="346625441290928128"
data-chrome="noheader nofooter transparent"
data-theme="dark">Tweets by @xtext</a>
<script>
!function(d,s,id) {
var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';
if(!d.getElementById(id)) {
js=d.createElement(s);
js.id=id;
js.src=p+"://platform.twitter.com/widgets.js";
fjs.parentNode.insertBefore(js,fjs);
}
}(document,"script","twitter-wjs");
</script>
</div>
</div>
</div>
</div>
</div>
<a href="#" class="scrollup fadeOutRight animated" style="display: none;">ScrollUp</a>
<!-- Le javascript
================================================== -->
<!-- Placed at the end of the document so the pages load faster -->
<script src="/Xtext/js/jquery-1.7.1.min.js"></script>
<script src="/Xtext/js/bootstrap.min.js"></script>
<script src="/Xtext/js/jquery.easing.1.3.js" type="text/javascript"></script>
<script src="/Xtext/js/jquery.prettyPhoto.js" type="text/javascript"></script>
<script src="/Xtext/js/twitter.js" type="text/javascript"></script>
<script src="/Xtext/js/prettify.js" type="text/javascript"></script>
<script src="/Xtext/js/lang-xtend.js" type="text/javascript"></script>
<script src="/Xtext/js/lang-common.js" type="text/javascript"></script>
<script src="/Xtext/js/custom.js" type="text/javascript"></script>
<script src="https://apis.google.com/js/platform.js" async defer></script>
<!--script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push([ '_setAccount', 'UA-2429174-3' ]);
_gaq.push([ '_trackPageview' ]);
(function() {
var ga = document.createElement('script');
ga.type = 'text/javascript';
ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl'
: 'http://www')
+ '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ga, s);
})();
</script-->
</footer>
</body>
</html>