Montag, 23. Juli 2007

Big revamp of Chapter 1 ("Frameworks for text editors: JFace Text and Gymnast Runtime") of the project report. With that, a user of the IDE generator is also in a position to *understand* the generated code. Features are classified, code snippets and references to further literature given.

----------------------------------------------------------------------

The features per category are:

a) The Gymnast Runtime extension to the JFace Text framework

  • background parsing and notification of changes to the CST of the document
  • context outline (with nodes implementing navigation back to the text region, and property source)
  • custom problem markers
  • parse-tree view


b) Customizations requiring CST or AST

  • hovers over text fragments
  • hovers over annotations (annotations on the vertical ruler)
  • hyperlinks
  • mark occurrences
  • select in outline
  • show in
  • context menu on the editor surface, for example Go to Declaration
  • views, for example EMF Type Hierarchy
  • content formatting
  • content assist

c) Customizations directly working on the document text

  • document partitioning
  • show range indicator
  • bracket matching (brace, parenthesis, etc.)
  • AutoEdits (for example, SmartBrace: after typing { in the JDT editor, an indented newline and a closing } are added below it). Another example is AutoIndent.
  • Double-click strategy (in JDT, double-clicking an opening brace selects all the text up to the matching closing brace)
  • Automatic Indentation

d) Document-independent customizations

  • templates, including associated Preferences page
  • actions on the toolbar and menu bar, in particular retargetable actions (i.e., those actions whose UI activators are shared between different editors, such as e.g. Content Assist)
  • new file wizard, so that the document does not start empty but in syntactically valid state (thus avoiding spurious parse errors the moment background parsing kicks in)
  • Preferences

----------------------------------------------------------------------

It's incredible the amount of detail hiding in each feature ... an Eclipse-based text editor can really be a machine with lots of moving parts ...

http://www.sts.tu-harburg.de/~mi.garcia/SoC2007/draftreport.pdf

Donnerstag, 5. Juli 2007

cheatsheet

1) Bugzilla for SoC projects

https://bugs.eclipse.org/bugs/show_bug.cgi?id=186907



2) Eclipse Legal Resources

http://www.eclipse.org/legal/



3) Artifacts
  1. a feature that builds and exports fine
  2. update a common site project with its feature,
  3. making sure the site exports fine with its and all other included features

4) cvs at soc.eclipse.org or cvs/svn at sf.net


5) guideline for structuring cvs repo

/cvsroot/soc/org.eclipse.soc.ewi/
plugins/
org.eclipse.soc.ewi
features/
org.eclipse.soc.ewi-feature
org.eclipse.soc.ewi.sdk-feature
tests/
org.eclipse.soc.ewi.test
org.eclipse.soc.ewi.test-feature
doc/
org.eclipse.soc.ewi.doc
org.eclipse.soc.ewi.doc-feature
examples/
org.eclipse.soc.ewi.example
org.eclipse.soc.ewi.example-feature