www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - DLS : an attempt at a language server

reply Laurent =?UTF-8?B?VHLDqWd1aWVy?= <laurent.treguier.sink gmail.com> writes:
Hello, D community!

I've been looking at D for a while now, but never got to really 
use it. And now that Microsoft initiated the Language Server 
Protocol, I thought about trying to make a language server using 
DCD, DFMT and D-Scanner.
It only supports formatting with DFMT and basic autocompletion 
with DCD (for now). I've successfully got it working with both 
VSCode [1] and Atom [2], maybe I'll try to make extensions for 
some other editors as well.

Also now that I've actually tried the language, I have to say I 
really like it :)

[1]: 
https://marketplace.visualstudio.com/items?itemName=LaurentTreguier.vscode-dls
[2]: https://atom.io/packages/ide-dlang
Mar 27 2018
next sibling parent reply Anton Pastukhov <pastuhov85 gmail.com> writes:
On Tuesday, 27 March 2018 at 18:08:14 UTC, Laurent Tréguier wrote:
 Hello, D community!

 I've been looking at D for a while now, but never got to really 
 use it. And now that Microsoft initiated the Language Server 
 Protocol, I thought about trying to make a language server 
 using DCD, DFMT and D-Scanner.
 It only supports formatting with DFMT and basic autocompletion 
 with DCD (for now). I've successfully got it working with both 
 VSCode [1] and Atom [2], maybe I'll try to make extensions for 
 some other editors as well.

 Also now that I've actually tried the language, I have to say I 
 really like it :)

 [1]: 
 https://marketplace.visualstudio.com/items?itemName=LaurentTreguier.vscode-dls
 [2]: https://atom.io/packages/ide-dlang
Ahem... https://github.com/Pure-D/serve-d
Mar 27 2018
next sibling parent Laurent =?UTF-8?B?VHLDqWd1aWVy?= <laurent.treguier.sink gmail.com> writes:
On Tuesday, 27 March 2018 at 18:32:40 UTC, Anton Pastukhov wrote:
 Ahem... https://github.com/Pure-D/serve-d
I know, but I still wanted to have a bit of fun anyway
Mar 27 2018
prev sibling parent Greatsam4sure <greatsamsure gmail.com> writes:
On Tuesday, 27 March 2018 at 18:32:40 UTC, Anton Pastukhov wrote:
 On Tuesday, 27 March 2018 at 18:08:14 UTC, Laurent Tréguier 
 wrote:
 Hello, D community!

 I've been looking at D for a while now, but never got to 
 really use it. And now that Microsoft initiated the Language 
 Server Protocol, I thought about trying to make a language 
 server using DCD, DFMT and D-Scanner.
 It only supports formatting with DFMT and basic autocompletion 
 with DCD (for now). I've successfully got it working with both 
 VSCode [1] and Atom [2], maybe I'll try to make extensions for 
 some other editors as well.

 Also now that I've actually tried the language, I have to say 
 I really like it :)

 [1]: 
 https://marketplace.visualstudio.com/items?itemName=LaurentTreguier.vscode-dls
 [2]: https://atom.io/packages/ide-dlang
Ahem... https://github.com/Pure-D/serve-d
Do you test this, in Windows. Because I could get dcd,workspace-d etc to work on Windows.
Mar 29 2018
prev sibling next sibling parent reply WebFreak001 <d.forum webfreak.org> writes:
On Tuesday, 27 March 2018 at 18:08:14 UTC, Laurent Tréguier wrote:
 Hello, D community!

 I've been looking at D for a while now, but never got to really 
 use it. And now that Microsoft initiated the Language Server 
 Protocol, I thought about trying to make a language server 
 using DCD, DFMT and D-Scanner.
 It only supports formatting with DFMT and basic autocompletion 
 with DCD (for now). I've successfully got it working with both 
 VSCode [1] and Atom [2], maybe I'll try to make extensions for 
 some other editors as well.

 Also now that I've actually tried the language, I have to say I 
 really like it :)

 [1]: 
 https://marketplace.visualstudio.com/items?itemName=LaurentTreguier.vscode-dls
 [2]: https://atom.io/packages/ide-dlang
neat, I am also planning on including dcd inside my language server, did everything just work or did you have issues with threading and messaging etc and what were your experiences on it? I see that you have an auto updater, I might as well steal that functionality for me :p Can you list what else makes your language server special? Have you maybe also considered contributing on workspace-d/serve-d? ;)
Mar 27 2018
parent Laurent =?UTF-8?B?VHLDqWd1aWVy?= <laurent.treguier.sink gmail.com> writes:
On Tuesday, 27 March 2018 at 21:08:20 UTC, WebFreak001 wrote:
 neat, I am also planning on including dcd inside my language 
 server, did everything just work or did you have issues with 
 threading and messaging etc and what were your experiences on 
 it?
I'm not doing anything threaded except for special cases like updating. But otherwise DCD seems to just work, I haven't had any problems with it.
 I see that you have an auto updater, I might as well steal that 
 functionality for me :p
Well, I stole your fix of using `stdout.rawWrite` instead of `stdout.write` to make it work on Windows :p
 Can you list what else makes your language server special? Have 
 you maybe also considered contributing on workspace-d/serve-d? 
 ;)
Nothing makes it really special for now, the major differences compared to serve-d is that I'm using DCD as a library, and the update system. Regarding contributing to workspace-d or serve-d, I have something else in mind now : you work on code-d while I have worked on dlang-vscode, so I named my Atom package ide-dlang because for naming consistency the package named ide-d should be the one using serve-d and workspace-d. As I'm now familiar with Atom packages again, and if you implement auto-updating, making ide-d might become quite easy :)
Mar 28 2018
prev sibling parent reply Aedt <adnansignsup gmail.com> writes:
On Tuesday, 27 March 2018 at 18:08:14 UTC, Laurent Tréguier wrote:
 Hello, D community!

 I've been looking at D for a while now, but never got to really 
 use it. And now that Microsoft initiated the Language Server 
 Protocol, I thought about trying to make a language server 
 using DCD, DFMT and D-Scanner.
 It only supports formatting with DFMT and basic autocompletion 
 with DCD (for now). I've successfully got it working with both 
 VSCode [1] and Atom [2], maybe I'll try to make extensions for 
 some other editors as well.

 Also now that I've actually tried the language, I have to say I 
 really like it :)

 [1]: 
 https://marketplace.visualstudio.com/items?itemName=LaurentTreguier.vscode-dls
 [2]: https://atom.io/packages/ide-dlang
I really can't thank you enough for `ide`dlang`. Thank you very much for your atom package. I hope you include Dscanner in near future.
Mar 28 2018
parent Laurent =?UTF-8?B?VHLDqWd1aWVy?= <laurent.treguier.sink gmail.com> writes:
On Wednesday, 28 March 2018 at 12:18:31 UTC, Aedt wrote:
 I really can't thank you enough for `ide`dlang`. Thank you very 
 much for your atom package. I hope you include Dscanner in near 
 future.
D-Scanner linting should be on the way once a new stable version is released (I'm going to test its release candidate in the next days)
Mar 28 2018