qtcreator-dlangeditor icon indicating copy to clipboard operation
qtcreator-dlangeditor copied to clipboard

QtCreator plugin for D language support (dlang)

Build Status Build status Bintray

#About The Qt Creator plugin for basic support of D programming language.

The plugin provides some features for comfortable code editing and programming using D language such as code completion, indention, syntax highlighting, etc.

Any help with development, testing and debugging will be highly appreciated.

#Features

  • Indention
  • Syntax highlighting (via QtCreator's Generic Highlighter)
  • Code completion (via DCD or Dasted)
  • Calltips (via DCD or Dasted)
  • Follow symbol (via DCD or Dasted)
  • Documentation hints (via DCD)
  • Outline (via Dasted)
  • Symbol locator (via Dasted)
  • Context help (via .qch file with ID prepender "D/", can be generated by dlang-qch, for example like Phobos reference)

#TODO

  • Class view for project/current document
  • Tooltip with symbol information
  • Highlight selected symbol in current document

#Installation Download precompiled version from Bintray: project page or downloads directory.
If you want to build the plugin from the sources, please see Building section below.

Note: since Travis-CI is used to build binaries for linux and Appveyor -- for windows, build numbers for same revision but different platforms can differ.

Copy the plugin shared library and pluginspec file into local Qt Creator plugin directory:

  • $HOME/.local/share/data/QtProject/qtcreator/plugins/$QTCREATOR_VERSION/ on Linux.
  • %LOCALAPPDATA%\QtProject\qtcreator\plugins$QTCREATOR_VERSION\ for windows.
  • ~/Library/Application Support/QtProject/Qt Creator/plugins/$QTCREATOR_VERSION/ on Mac.

You can also set the plugin directory for Qt Creator using command line argument -pluginpath <dir>.

Run Qt Creator and enable the plugin on Help -> About Plugins page. Restart Qt Creator.

#Building

  1. clone the project.
  2. git submodule update --init
  3. run qmake && make or open dlangeditor.pro in the Qt Creator and build the project from IDE. Most likely (if you are not using Archlinux) you should set QTC_SOURCE and/or QTC_BUILD variables for qmake for QtCreator's sources and libraries correspondingly. It can be done with the following syntax: qmake "QTC_SOURCE=$MY_QTCREATOR_SOURCE_PATH" "QTC_BUILD=$MY_QTCREATOR_LIB_PATH"
  4. if successful, the plugin shared library will appear in local plugin directory:
    • $HOME/.local/share/data/QtProject/qtcreator/plugins/$QTCREATOR_VERSION/ on Linux
    • %LOCALAPPDATA%\QtProject\qtcreator\plugins$QTCREATOR_VERSION\
    • ~/Library/Application Support/QtProject/Qt Creator/plugins/$QTCREATOR_VERSION/ on Mac
  5. on Mac OS X: run fix_mac.sh $PATH_TO_PLUGIN/libDlangEditor.dylib to fix rpath constants (a mess with system Qt libraries and QtCreator's internal Qt libraries).

#Build requirements

  1. Qt >= 5.5.0
  2. Qt Creator >= 3.6.0 (QtC's sources and binaries can be found at the official download page)

#Usage requirements

#Implementation notes Code completion (code model) is supported via DCD (D Completion Daemon by Brian Schott) or Dasted (~fork of DCD that is developing specially for this plugin). Dasted is a recommended code model to use.