diff --git a/eclipse/Makefile b/eclipse/Makefile new file mode 100644 index 000000000..2d8bf2318 --- /dev/null +++ b/eclipse/Makefile @@ -0,0 +1,10 @@ +html: + php ~/markdown-convert.php https://raw.github.com/GrammaticalFramework/gf-eclipse-plugin/master/README.md index.html + +local: + echo "\n\n" > index.html + echo "GF Eclipse Plugin\n" >> index.html + echo "\n" >> index.html + echo "\n\n" >> index.html + php ~/markdown-convert.php ~/repositories/gf-eclipse-plugin/README.md index.html --append + echo "\n" >> index.html diff --git a/eclipse/images/eclipse-launchconfig.png b/eclipse/images/eclipse-launchconfig.png index 5c5ea8b1b..214c42b7a 100644 Binary files a/eclipse/images/eclipse-launchconfig.png and b/eclipse/images/eclipse-launchconfig.png differ diff --git a/eclipse/images/eclipse-test-manager.png b/eclipse/images/eclipse-test-manager.png new file mode 100644 index 000000000..0865f370d Binary files /dev/null and b/eclipse/images/eclipse-test-manager.png differ diff --git a/eclipse/images/eclipse-treebank-manager.png b/eclipse/images/eclipse-treebank-manager.png deleted file mode 100644 index 8e19f86dd..000000000 Binary files a/eclipse/images/eclipse-treebank-manager.png and /dev/null differ diff --git a/eclipse/index.html b/eclipse/index.html index 83837dbef..4c8d50625 100644 --- a/eclipse/index.html +++ b/eclipse/index.html @@ -11,26 +11,29 @@

The GF Eclipse Plugin

John J. Camilleri
-Updated: 22 March 2012

+Updated: 4 April 2012

The research leading to these results has received funding from the European Union’s Seventh Framework Programme (FP7/2007-2013) under grant agreement no. FP7-ICT-247914.

-

This documentation is also available at the MOLTO Project Wiki.

-

Introduction

-

The aim behind developing a desktop IDE for GF is to provide more powerful tools than may be possible and/or practical in a web-based environment (the GF Web IDE). In particular, the ability to resolve identifier cross-references and browse external libraries quickly during development time is one of the primary motivations for the project.

+

The aim behind developing a desktop IDE for GF is to provide more powerful tools than may be possible and/or practical in a web-based environment (the GF Web IDE). In particular, the ability to resolve identifier cross-references and browse external libraries quickly during development time is one of the primary motivations for the project.

-

The choice was made to develop this desktop IDE as a plugin for the Eclipse Platform as it emerged as the most popular choice among the GF developer community. Support for the platform is vast and many tools for adapting Eclipse to domain-specific languages already exist. Unlike the zero-click Web IDE approach, using the GF Eclipse plugin (GFEP) will require some manual installation and configuration on the development machine. Thus the GFEP is aimed more at seasoned developers rather than the curious GF newbie.

+

The choice was made to develop this desktop IDE as a plugin for the Eclipse Platform as it emerged as the most popular choice among the GF developer community. Support for the platform is vast and many tools for adapting Eclipse to domain-specific languages already exist. Unlike the zero-click Web IDE approach, using the GF Eclipse plugin requires some manual installation and configuration on the development machine.

-

The starting point for the GFEP is using the Xtext DSL Framework for Eclipse. By converting the GF grammar into the appropriate Extended-BNF form required by the LL(*) ANTLR parser, the framework provides a good starting point for future plugin development, already including a variery of syntax checking tools and some cross-reference resolution support. The specific requirements of the GF language, particularly in the way of its special module hierarchy, mean that significant customisations to this generated base plugin are needed.

+

The GFEP was developed with support from the MOLTO Project.

-

The GFEP is being developed by as part of Work Package 2 of the MOLTO Project.

+

License

+ +

The GF Eclipse Plugin is open-source under the GNU General Public License (GPL).
+The licenses that cover the rest of GF are listed here.
+Note that Xtext and Eclipse are released under the Eclipse Public License (EPL).

Links

Release history

+
04/04/12
+
(1.4.3.x) Improvements to the Test Manager. Added support for arbitrary commands in launch. Made the license information clearer.
+
22/03/12
-
(1.4.2.x) Added wizard for context-free grammars (no syntax support, though). Context-menu option for toggling the GF Nature and Builder together. Treebank tool now parses languages & params, and includes filtering and toggling options.
+
(1.4.2.x) Added wizard for context-free grammars (no syntax support, though). Context-menu option for toggling the GF Nature and Builder together. Test Manager now parses languages & params, and includes filtering and toggling options.
14/03/12
(1.4.1.x) GF source files can now be anywhere in project, not necessarily at top level.
06/03/12
-
(1.4.0.x) Treebank manager view. Updated launch configurations. UI improvements, new icons. Inline contextual documentation. Correct resolution of qualified identifiers. Bug fixes and some refactoring.
+
(1.4.0.x) Test manager view. Updated launch configurations. UI improvements, new icons. Inline contextual documentation. Correct resolution of qualified identifiers. Bug fixes and some refactoring.
07/02/12
(1.3.0.x) Re-written underlying GF grammar.
@@ -100,7 +106,7 @@ Updated: 22 March 2012

System requirements

    -
  1. GF version 3.3.3 or above. The path to GF must be set within the plugin (see below).
  2. +
  3. GF 3.3.3 or above. The path to GF must be set within the plugin (see below).
  4. Eclipse 3.6 or above.
@@ -322,9 +328,9 @@ Each time you save a file (or some other change occurs in your project), the bui

Future versions of this view will contain a full tree of all identifiers available in the current scope.

-

Treebank Manager view

+

Test Manager view

-

This feature works together with the launch configurations to make the process of testing treebanks against your grammars quick and easy. As described in the GF Book (Section 10.5), the general development-test cycle (independent of GFEP) is as follows:

+

This feature works together with the launch configurations to make the process of running regression tests on your grammars quick and easy. As described in the GF Book (Section 10.5), the general development-test cycle (independent of GFEP) is as follows:

  1. Create a file test.trees which contains a bunch of abstract syntax trees, which you want to test
  2. @@ -333,21 +339,21 @@ Each time you save a file (or some other change occurs in your project), the bui
  3. Each time you update your grammar, repeat step 2, then compare your new output against the gold standard using diff or some other comparison tool.
-

The Treebank Manager view follows this same pattern but provides a convenient graphical interface for running your treebanks and also for looking at the output, just using a few clicks:

+

The Test Manager view follows this same pattern but provides a convenient graphical interface for running your test cases and also for looking at the output, just using a few clicks:

-

Treebank Manager view

+

Test Manager view

Note that GFEP assumes the following convention:

-
nouns.trees
-
Treebank file (abstract trees)
+
*.trees or *.sentences
+
Test input files: trees file (for testing linearisation) and sentences file (for testing parsing)
-
nouns.trees.out
-
Output file (generated linearisations)
+
*.trees.out or *.sentences.out
+
Corresponding output files (generated each time a test is run)
-
nouns.trees.gold
-
Gold standard file (manually corrected linearisations)
+
*.trees.gold or *.sentences.gold
+
Corresponding gold standard files (manually corrected from an output file)

Logs