Eclipse Plugin Development


Added by Scott Hickey, last edited by Ramon Davila on Feb 15, 2008  (view change)

Labels

 
(None)

Overview 

This page is intended to make it easier for those who want to do development on the Eclipse Plugin. It's purpose is define what features should be available in the plugin, what source code modules are implement those features. It would also be good to include links to outside reference material that is directly relevant to the development of this type of plugin.

Eclipse FAQ for implementing support for your own language 

Tracing 

The Groovy plugin uses the built in tracing support to output debugging messages. While doing Eclipse plugin development, you can enable tracing in Eclipse by selecting Run->Debug->Tracing and selecting which plugins you want to see messages for. Use the static method GroovyPlugin.trace("some message") to output debug messages instead of System.out.println (or log4j).

Text Editor Syntax Color Highlighting

Features / Proposed Changes:

  • Highlight GJDK keywords (could  be done in org.codehaus.groovy.eclipse.editor.GroovyTagScanner)
  • Highlight methods (requires accessing Document Model / Groovy AST)
  • Highlight expressions inside of GStrings (requires accessing document model)
  • Enable/Disable these features with a Groovy preferences page

Syntax color highlighting is accomplished in org.codehaus.groovy.eclipse.editor.GroovyPartitionScanner.java and org.codehaus.groovy.eclipse.editor.GroovyTagScanner.java .

Look at the Groovy outliner  org.codehaus.groovy.eclipse.editor.contentoutline.GroovyContentOutline.java  to understand how the Eclipse DOM works and how to access the Abstract Syntax Tree for a Groovy compilation unit.

Debugger

Eclipse.org Article on writing your own debugger 

Features / Proposed Changes:

  • Update the breakpoint code to create Java breakpoints to support using the Java debugger (org.codehaus.groovy.eclipse.actions.ToogleGroovyBreakpointAction)
  •  Enable the variable window to display user friendly values for Groovy reference objects to avoid drilling down to see the actual value

 Builder / Nature

Features / Proposed Changes:

  •  Add preferences page option to enable/disable saving all compiled class files to project build directory after the source files are saved

Preferences Page

Features: 

GroovyEclipse Wish List

GroovyEclipse Wish List

Grails Support

Grails Development Support

Code Completion

Code Completion Proposal 

Specification and Technical Articles

GroovyEclipse Specifications and Technical Articles