Request for estimation cost/price of creation KDevelop plugin for D language
Igor Kushnir
igorkuo at gmail.com
Sun Apr 4 10:47:42 BST 2021
Hi!
Take a look at
https://kate-editor.org/2014/02/20/lumen-a-code-completion-plugin-for-the-d-programming-language.
The screenshots look nice.
https://commits.kde.org/kate/0080f2093e423aca5ed9bda70cb954e31c1f9c65 is
a 1.5 years old commit that removed D and Rust completion plugins in
favor of LSP Client plugin.
Cheers,
Igor
On 4/4/21 12:26 PM, Sven Brauch wrote:
> Hi Energo,
>
> thank you very much for your interest in KDevelop and your trust in
> our community to do such a project.
>
> However, there are several things I think you should consider:
>
> - The D language was never particularly successful. It has been around
> as C++'s touted "successor" for decades, but has at no point in time
> gained significant traction. A much more successful, relatively direct
> competitor to C++ is Rust.
>
> - Maybe you will find someone to develop this for you on this list but
> most people contributing to KDevelop do so in their free time. Unless
> people have considerable personal interest in this feature (which is
> unlikely since, as said, D isn't a language I ever have seen or heard
> anyone use), writing a language plugin isn't something you do after
> work just like that.
>
> Writing a language plugin with completion, highlighting, navigation,
> debugger, launcher, compiler settings, and even some installation help
> and stuff is a project for 6-12 months. It basically requires someone
> to quit their full-time job to do your project instead. That's
> unlikely to happen, even if you offer the required $50-100k cash for
> that.
>
> Pragmatically, a more realistic path is looking into Rust, for which
> both a KDevelop plugin (unmaintained unfortunately) [1] as well as LSP
> support in kate [2] somewhat exist already. Maybe you can gather some
> traction to update/improve those, that would be very cool. I think
> here it is also way more realistic to motivate someone with a few
> euros to spend a few weekends on improvements.
>
> Greetings!
> Sven
>
> ____________
> [1] https://invent.kde.org/unmaintained/kdev-rust
> [2]
> https://kate-editor.org/post/2019-08-07-kate-initial-rust-lsp-support/
>
>
> On 4/4/21 8:15 AM, Energo Koder wrote:
>> Hello!
>> I am keen to learn some thing better/newer language than C++ but
>> still with C++ key advantages. So natural way will be learn (and
>> possible switch) to D lang. But there is one main advantage: AFAIK
>> all IDEs integrations are broken or outdated. So I think why not
>> create D lang plugin to powerful KDevelop?
>>
>> For now I am C++ programmer and Qt is on the list of my
>> specializations. But I have no time to dig in KDevelop plugin system.
>> So I think I can spend some reasonable amount of money in order to
>> bring D lang plugin to the community.
>>
>> So I will ask you (the KDevelop community) what are your expectations
>> about salary for make such plugin.
>>
>> I have list of required features. It is divided to two parts:
>> essential and optional. Please estimate cost for them separately.
>>
>> KDevelop D lang plugin required features:
>> + Respect content and follow changes in dub project file definitions
>> (dub project file must be main project file - other files, eg.
>> specific for KDevelp, must be regenerated after each change to this
>> main project file);
>> + Compilation in outside source code directory (standard in Qt
>> Creator and possibly in other IDEs);
>> + Compiler choice: dmd, gdc, ldc;
>> + Input for optional compiler flags;
>> + Input for optional build environment variables;
>> + Input for optional build steps (before and after compilation);
>> + Compilation mode: release, debug;
>> + Run and stop application in release mode;
>> + Run and stop application in debug mode, and break execution when:
>> + Program reach of breakpoint places;
>> + I decide to hang in debuger current execution place (useful
>> when program hangs in loop)
>> + Investigate local variables in debuger;
>> + Investigate class variables of local objects in debuger;
>>
>> KDevelop D lang plugin optional features:
>> + Syntax highlighting;
>> + Context navigation in code;
>> + Auto diagnosis:
>> + Environment configuration:
>> + All required tools are installed and available in correct
>> versions in the system;
>> + What optional tools are available or not;
>> + Short explanation of consequences above for user (D
>> programmer).
>> + Current project configuration;
>> + All required libs/packages are installed and available in
>> correct versions;
>> + Short explanation of consequences above for user (D
>> programmer).
>>
>> Please consider following requirements of this project:
>>
>> Project standards:
>> + Simple and idiot resistant installation, configuration and auto
>> diagnosis reporting;
>> + Documentation:
>> + Architecture;
>> + Algorithms;
>> + Tricks.
>>
>> Target platforms:
>> + Recent Kubuntu LTS;
>> + Recent Kubuntu.
>>
>> Warranty:
>> + At least 1 year bug fix maintenance service.
>>
>> Implementation hints:
>> There is tool dub which can generate AVS project tree in order to
>> implement context code navigation.
>> The same tool is used for code colloring, but probably KDevelop
>> require something else.
>>
>> Thanks and respect!
>> Energo Koder
More information about the KDevelop-devel
mailing list