[gsoc] D Language Server protocol based on the DMD frontend

Jacob Carlborg doob at me.com
Wed Mar 13 19:44:54 UTC 2019


On 2019-03-13 12:13, Seb wrote:

> @community: what language smarts in an editor are the most important to 
> you? What features do you miss in DLS/DCD?

* Stability. DCD crashes quite often for me. Then there's this problem 
[1]. I have a locally patched version, which is required for me to even 
use DCD.

* I would really like to see the accuracy being improved. For example, 
autocompletion with support for UFCS.

* Not sure if this is supported by LSP but incremental compilation and 
reporting compile errors would be really cool.

* I'm not sure how feasible this would be but using Eclipse and Java 
autocompletion works even without any imports. When an autocompletion 
item is selected the IDE will automatically add the correct include.

For a bunch of more ideas, here's a list of supported features of an old 
Eclipse plugin, Descent, for D1 [2]:

* Syntax highlighting.
* Awesome, flexible formatter.
* Folding.
* Automatic closing of strings, brackets, chars and comments.
* Code templates.
* Syntax errors and some semantic errors are shown with a reg squiggle.
* Autocompletion which writes the imports for you.
* Source on hover (shift+hover).
* Go to definition (ctrl+hover).
* Some compile-time function evaluation (ctrl+shift+hover).
* Greying of inactive code.
* Project Explorer.
* Outline view.
* Type Hierarchy view.
* Automatic generation of documentation comments (Params, Author, etc.).
* Spell checking.
* TODO tasks.
* Ddoc view.
* Declaration (source) view.
* Highlighting of all occurrences of the current token under the cursor.
* trace.log viewer
* Compile-time debugging
* Runs and debugs programs within the IDE.

[1] https://github.com/dlang-community/DCD/issues/345
[2] http://www.dsource.org/projects/descent

-- 
/Jacob Carlborg


More information about the Digitalmars-d mailing list