D programmers, what does your development setup look like?
For D programming, I was wondering what sort of setup do people have in terms of code editor, plugins for editor and build system?
Do you have features like autocomplete and refactoring in your environment?
I recently started exploring D and I use VSCode and the code-d plugin with dub or simply dmd -run for small files, but was wondering what more seasoned developers use.
I use VS Code or Sublime Text 3 (just syntax highlighting and command line compilation) but wish there was either a D based official editor (a la DrRacket for Racket or IDLE for Python, which are simple but good enough) and that somebody at JetBrains would adopt and maintain one of the Dlang plugins. I would even be okay with Walter Bright (or anyone in the D community) taking one of his Emacs implementations in D and giving it a GUI with menu options for people who don't know Emacs keybindings and letting the community take over, an officially supported editor would be healthy.
I almost exclusively code with JetBrains IDEs for almost every other language, especially Go. The way GoLand feels handcrafted for Go is phenomenal for me.
I've also used Spacemacs for D but Emacs is always hit or miss for me to setup Spacemacs so I gave up on Emacs, too much overhead, if I have to go beyond the install steps given by Spacemacs to make it work, it's not worth my time period.
For multiple years I have been using dub as build system and vscode with code-d as editor.
Well I'm a bit biased because I made code-d but nonetheless I would say it works really good for day-to-day usage for any experience level and I'm recommending it to everyone I show D for the first time too because it is very friendly for beginners and people who don't want to configure a lot.
DLangIDE* (somehow not listed on dlang's official editor list) is sincerely the best I've used in terms of IDEs, but for most work, there's not much that can beat plain Sublime 3.
* https://github.com/buggins/dlangide
I use VSCode with Laurent Tréguier's Dlang extension[0], which provides support for autocomplete, linting, and formatting code, and dub for building, testing, and managing packages.
The reason for choosing the Dlang plugin over code-d is pretty petty; it's just because I prefer Dlang's syntax highlighting, since it highlights class names in a teal color.
[0]: https://marketplace.visualstudio.com/items?itemName=LaurentT...
I use VS Codium. That is the opensource packaging without Microsofts calling home functionality: https://vscodium.com,
with the Vim and code-d extension.
You also will want to change some shortcuts, so for example you can switch to terminal and back with CTRL+~, in order to run/test your app quickly.
I would also like to have a full fledged IDE like i have for Python with pycharm, but currently nothing is available.
I used plain Sublime, but switched to VSCode with code-d plugin / dcd completion daemon.
Usually works decently unless you tinker with std library / runtime where you are mostly on your own.
I use the code-d plugin with VSCode. Yes, I have autocomplete. I haven't really seen any refactoring options, and I think D isn't a very refactoring friendly language in general, because a lot of the code doesn't exist until compilation time.
For building I use dub. For debugging I use built-in C++ Native support in VSCode.
I use VSCode with the excellent Code-D for my IDE needs and use both dub (mainly for development) and meson (for distros) as build systems for my projects. Dub is nice for development since it supports stuff like unittest coverage out of the box, but meson is kind of a requirement when you want to ship your stuff to distros, has better support for customisation and can do lots of fancy stuff (e.g. configure files)
A text editor with a Makefile and gdb have always worked just fine for me. And that is in fact one of the things that appealed to me when I started using D. These days VSCode and CLion seem to be the tools of choice, so maybe I should give them a try.
The Language Server Protocol (LSP) runs not only on VSCode, btw., but recently, SublimeText3 got support for it via an addon.
I use Visual Studio and the VisualD extension.
I use dlangide with dub for building.
PhPstorm, JIra, bitbucket and xxamp