On Sunday, 15 September 2013 at 12:38:03 UTC, Jacob Carlborg wrote:
I'm thinking about adding support for this to TextMate. But as soon as one adds this to an editor a bunch of new issues appears, which I'm trying to figure out.

* When to start/stop the server. I'm, at least as a start, going to try and implement this as a bundle command and not a plugin. A bundle command basically is a script that is run when a key is pressed


I start and stop the server manually. I know that this should be improved, but there are a few other things that I'd like to focus on first.

* How to deal with import paths? TextMate doesn't have any kind of build configuration. I need to be able to specify, except for the current project, the path to the standard library and possibly paths for other projects. I have an idea how to do this, using custom keys in the project specific settings, but I'm wondering how this is solved in other editors.

Things such as the standard library location can be placed in $XDG_CONFIG_HOME/dcd/dcd.conf or $HOME/.config/dcd/dcd.conf on Linux or BSD, or dcd.conf (in the same directory as the server executable) on Windows. The server reads this on startup and caches all .d and .di files that it finds in the paths in that file.

* How to deal with multiple sessions/projects? Should I have one server running per session/project? Say I have two different projects, both with the symbol "foo.bar". I don't want those to cause conflicts.

Symbols are filtered by the import statements that are contained in the text that you send to dcd-client, so there shouldn't be a conflict. If you have multiple foo backages each with a bar module, then it'll probably break.

Reply via email to