GithubHelp home page GithubHelp logo

bamarc / qtcreator-dlangeditor Goto Github PK

View Code? Open in Web Editor NEW

This project forked from groterik/qtcreator-dlangeditor

1.0 1.0 0.0 236 KB

QtCreator plugin for D language support (dlang)

License: MIT License

Shell 1.66% Python 1.33% Batchfile 0.47% QMake 2.63% C++ 93.92%

qtcreator-dlangeditor's Introduction

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.

qtcreator-dlangeditor's People

Contributors

groterik avatar bamarc avatar stonemaster avatar

Stargazers

Mikhail Mitkevich avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.