THIS REPOSITORY IS DEAD - Lumen is part of Kate, it can be found on the kate git repository
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lumen
.gitignore
README.md

README.md

Lumen

THIS REPOSITORY IS DEAD - Lumen is a part of Kate/Kdevelop now and maintained on the official git server

Lumen is a KTextEditor autocompletion plugin for the D programming language, which works e.g. in Kate or KDevelop.

Images

Imports:

Import Completion

Completions:

Variable Completion Function Completion

Calltips:

Calltip

Installation

You need to install DCD, add dcd-client and dcd-server to your $PATH.

Furthermore on some systems you need the development packages of KDE. If you're running Fedora this would be kdelibs-devel and for Debian like systems kdelibs-dev.

Afterwards run the following commands:

git clone git://github.com/Dav1dde/lumen.git
mkdir lumen/build
cd lumen/build
cmake ../lumen
make
make install
kbuildsycoca4

Now you should be able to enable the Plugin in Kate, like this:

Settings -> Configure Kate -> Editor Component/Extensions

in KDevelop:

Settings -> Configure Editor -> Extensions

Include Paths

Either add your include paths to ~/.config/dcd/dcd.conf or create a .lumenconfig file and add the paths to it. Every line represents another include path. For every opened file lumen tries to read a .lumenconfig in every folder up to this file.

E.g. for the file /home/foo/projects/lumen/test/foo.d/, lumen will try to read a .lumenconfig file in these folders:

/home/foo/projects/lumen/test
/home/foo/projects/lumen
/home/foo/projects/
/home/foo/
/home/
/

This is not perfect but works pretty well.

DCD Server

Lumen tries to start a dcd-server on port 9166 (default) if that fails, it simply assumes the server is already running. That means you can have your own dcd-server running, since lumen will only shutdown servers which were started by the plugin on unload.

I personally recommend you to start your own dcd-server instance, since a fresh dcd-server startup, which adds several include paths like Phobos/druntime, takes quite some time. Until the server finished processing all include paths, it doesn't respond to completion requests. A not responding completion server slows down the editor and doesn't show any completion tooltips. My .xinitrc has this entry, to start the dcd-server together with X:

dcd-server >~/.dcd.log 2>&1 &

Also I recommend to add Phobos and druntime to your ~/.config/dcd/dcd.conf. This makes sure you get completions instantly after starting KTextEditor, Kate oder KDevelop.