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