<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Sep 23, 2013 at 12:25 PM, Makarius <span dir="ltr"><<a href="mailto:makarius@sketis.net" target="_blank">makarius@sketis.net</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
The layers 2+3 offer extensive means of customization.<br>

To come back to the above example, one does, of course, not set<br>
StyleRanges on the SWT widget oneself. One registers with the<br>
JFace TextViewer's syntax highlighting mechanism and produces<br>
them on demand -- for instance from the semantic markup offered<br>
by Isabelle/Scala.<br>
</blockquote>
<br></div>
Again: Why not make this practical, and tell Andrius Velykis about it? He has already Isabelle/Eclipse that is more than just a proof of concept or a small demo, so it deserves to catch up with the quality standards of Isabelle/jEdit.</blockquote>

</div><div class="gmail_extra"><br></div>I am aware of the syntax highlighting capabilities in Eclipse. In Isabelle/Eclipse I am interfacing the APIs and frameworks provided by Eclipse in the majority of cases. In other cases, such as tokenisation, the Isabelle/Scala libraries are used just like in Isabelle/jEdit (rather than writing custom rules for Eclipse tokenisers). This is currently implemented so that a wrapper is provided on top of the Isabelle/Scala tokeniser that adheres to Eclipse's interfaces.</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">I have to admit that the quality standards are a bit behind in comparison to Isabelle/jEdit. However, this is mostly the lack of time spent on adding specific features rather than having implementation troubles. I am aware of the `rise` field in StyleRange to render sub-/superscript, it's just that I haven't gone around to doing the whole control-symbols support yet. There is an open issue that tracks this though (<a href="https://github.com/andriusvelykis/isabelle-eclipse/issues/8">https://github.com/andriusvelykis/isabelle-eclipse/issues/8</a>)! I do hope to achieve parity with Isabelle/jEdit once I am finished with writing up my PhD thesis, which is hopefully soon enough :)</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">Isabelle/Eclipse is not there because Eclipse is better or something. I am not aiming at platform wars - Isabelle/Eclipse has been born out of the fact that I like Eclipse and I wanted to build tools on top of Eclipse and Isabelle. I do hope that people who also like Eclipse can contribute or build upon Isabelle/Eclipse so that the project would grow. Furthermore, I think that having different UIs on top of Isabelle/Scala can help with better APIs and more general implementation there.</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">I would also agree with Holger: writing UIs should be encouraged for formal tools. The popularity of Eclipse as platform for different IDEs does help with implementing Isabelle/Eclipse. There are a number of editors to use as a reference for own implementations. Even if Scala is your language of choice, there is the Scala IDE code to look for implementation hints (<a href="https://github.com/scala-ide/scala-ide).Furthermore">https://github.com/scala-ide/scala-ide).Furthermore</a>, Eclipse tools such as Plug-in Spy helps with finding classes that implement features of the IDE. For example, I can click on a button within my Eclipse and see what is the class that provides implementation for this button.</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">In the end, I am still playing catch-up with Isabelle/jEdit as well as all the goodies in Eclipse (the JDT editor has some nifty features to copy from). So props to Makarius for developing a nice PIDE and I hope Isabelle/Eclipse will be as nice in the near future :)</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">Best regards,</div><div class="gmail_extra">Andrius</div><div class="gmail_extra"><br></div><div class="gmail_extra"><br></div>
<div class="gmail_extra"><br><br></div></div>