Creation Review

Type
Creation
State
Successful
End Date of the Review Period

Reviews run for a minimum of one week. The outcome of the review is decided on this date. This is the last day to make comments or ask questions about this review.

Proposal

Eclipse ShellWax

Wednesday, April 24, 2019 - 09:49 by Alexander Kurtakov
This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process) and is written to declare its intent and scope. We solicit additional participation and input from the community. Please login and add your feedback in the comments section.
Parent Project
Proposal State
Created
Background

Editing shell script files is an operation every developer does every now and then. As such having a good and rich editor inside your IDE is crucial for development.

With the advent of LSP (language server protocol) creating a good editor using existing language server and relying on existing infrastructure provided by LSP4E, TM4E and related projects is now way easier and provides reacher UX compared to handling all the language specifics in the Eclipse plugin.

Finding that the existing DLTK subproject for shell editor is too expensive to maintain this one is intended to be the natural replacement for it coming from same developers.

Scope

The goal of Eclipse ShellWax is to provide a rich editor for shell script files using existing language server for the purpose. Goal of the project is to be thin wrapper around language server and shell interpreters as provided by the operating system.

Description

Eclipse ShellWax will provide editor for *.sh files with:

  • outline
  • autocomplete
  • error markers
  • hover help
  • and other common editor functions.

Executing shell scripts from inside the IDE and seeing output in Eclipse console will be supported too.

Why Here?

The Eclipse Foundation has a strong history and community around building vendor-agnostic developer tools. Eclipse IDE is still the leading IDE and close relation with rest of the ecosystem makes it a natural fit.

Future Work

Although the project is supposed to be thin wrapper there will be a lot of work to:

* Stabilize running and integrating with different operating systems and their shells

* Support for future changes in Eclipse IDE stach

* Support for future changes in used language server

Project Scheduling

Initial contribution: May 2019

Stable release: Sep 2019

Initial Contribution

The initial contribution will come from the ShellWax project (https://github.com/akurtakov/shellwax). This includes all the major functionality listed above.

Source Repository Type