Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "E4/Scripting"

< E4
(Documentation)
(32 intermediate revisions by 7 users not shown)
Line 1: Line 1:
Scripting What?
+
= EASE - Eclipse Advanced Scripting Environment =
  
* Workbench?
+
== What is EASE? ==
* Cheat sheets?
+
  
Use cases
+
EASE integrates script language interpreters directly into your Eclipse application. It allows to automate common tasks, extend the IDE and to create dedicated dialects of a script language. You can write, execute, debug and integrate scripts in a single Eclipse instance.
  
* Quick macro editor?
+
== Features ==
* Short scripts to manipulate the IDE
+
* Scripting builds -- Implementing the workspace build
+
* Replace Core Expressions
+
* As a part of the language-independence story
+
* Simplify the process of writing new refactorings
+
* Lower the barrier to entry for plugin writers
+
* Avoiding class loading
+
* People get to work in their favorite language
+
* Throwaway programming
+
* Enabling Notes developers to script the environment
+
* Being able to bring in developers from other communities
+
* Checkout HEAD, run perf tests, Checkout HEAD-1, run perf tests, etc. until I found the perf regressions
+
  
Questions/comments
+
* JavaScript support
 +
* Jython support
 +
* UI integration
 +
* interactive / scripted mode
 +
* customizable DOMs
  
* Scripting =?= easy
+
== Try it ==
* Eclipse Monkey runs today against the workspace state
+
* Scala is already a first class citizen in the JVM runtime.  We should exploit that.
+
* We also shouldn't let this capability make it impossible to use Rhino, etc...
+
* Is scripting the way we call across language boundaries where the language isn't a native JVM lanaguage?
+
* Important to extend Eclipse community around scripting languages
+
* Why do I need scripts?  Why not just inject real Java into the running workspace?
+
* How do we handle threading?
+
* What if the macro loops forever?  Does it block the UI thread forever?  What is the answer?
+
* Having a DOM model representing/aggregating all model roots is useful for Java, not just for scripting.
+
  
Macros
+
'''Script developers:''' If you want to write scripts in either JavaScript or Jython without writing your own DOMs then the nightly update site is the first place to go:
 +
[http://download.eclipse.org/e4/updates/ease/eclipse-e4-ease-nightly/ http://download.eclipse.org/e4/updates/ease/eclipse-e4-ease-nightly/]
 +
 
 +
'''EASE developers / early adopters:''' Get the sources from our git repository, see [http://git.eclipse.org/c/e4/org.eclipse.e4.scripting.git/ http://git.eclipse.org/c/e4/org.eclipse.e4.scripting.git/]
 +
 
 +
== Documentation ==
 +
 
 +
[[E4/Scripting/Tutorials|Tutorials]]
 +
 
 +
[[E4/Scripting/Metadata|Metadata]]
 +
 
 +
== Status / News ==
 +
 
 +
== Get in touch ==
 +
 
 +
The [https://dev.eclipse.org/mailman/listinfo/eclipse-scripting-dev eclipse-scripting-dev] mailing list is our primary communication channel.
 +
 
 +
== [[E4/Scripting/ESR_Requirements|Requirements]] ==
 +
 
 +
Focused requirements for the Eclipse Scripting revival project
 +
 
 +
== [[E4/Scripting/Use_cases|Use Cases]] ==
 +
 
 +
Very broad collection of scripting cases from the Community
 +
 
 +
== Meetings ==
 +
* [[E4/Scripting/telcon20131002]] - Eclipse Scripting revival - Progress meeting
 +
* [[E4/Scripting/telcon20130925]] - Eclipse Scripting revival - Progress meeting
 +
* [[E4/Scripting/telcon20130916]] - Eclipse Scripting revival - Progress meeting
 +
* [[E4/Scripting/telcon20130911]] - Eclipse Scripting revival - Technical meeting
 +
* [[E4/Scripting/telcon20130904]] - Eclipse Scripting revival - Technical meeting
 +
* [[E4/Scripting/telcon20130820]] - Eclipse Scripting revival - Kickoff
 +
* [[E4/Scripting/bofecon12]] - interested parties, list of tools, and some hands-on thoughts
 +
* [[E4/Scripting/summit08]] - hilevel list of use-cases and thoughts
  
* Today we can write a plugin that catches commands as they go by
 
* But you can't see model state
 
* Workspace context might be an issue here
 
* Do we record macros by screen scraping SWT events?  At the level of Commands?
 
* Use case: Command recording lets you find out what the commands are for writing cheat sheets
 
* Challenge: Screen scraping SWT events has a hard time knowing if background jobs completed.
 
  
 
[[Category:E4|Scripting]]
 
[[Category:E4|Scripting]]

Revision as of 10:32, 13 November 2013

EASE - Eclipse Advanced Scripting Environment

What is EASE?

EASE integrates script language interpreters directly into your Eclipse application. It allows to automate common tasks, extend the IDE and to create dedicated dialects of a script language. You can write, execute, debug and integrate scripts in a single Eclipse instance.

Features

  • JavaScript support
  • Jython support
  • UI integration
  • interactive / scripted mode
  • customizable DOMs

Try it

Script developers: If you want to write scripts in either JavaScript or Jython without writing your own DOMs then the nightly update site is the first place to go: http://download.eclipse.org/e4/updates/ease/eclipse-e4-ease-nightly/

EASE developers / early adopters: Get the sources from our git repository, see http://git.eclipse.org/c/e4/org.eclipse.e4.scripting.git/

Documentation

Tutorials

Metadata

Status / News

Get in touch

The eclipse-scripting-dev mailing list is our primary communication channel.

Requirements

Focused requirements for the Eclipse Scripting revival project

Use Cases

Very broad collection of scripting cases from the Community

Meetings

Copyright © Eclipse Foundation, Inc. All Rights Reserved.