Re: Request for estimation cost/price of creation KDevelop plugin for D language
Igor Kushnir <[email protected]> Sun, 4 Apr 2021 12:47:42 +0300
| Newsgroups | gmane.comp.kde.devel.kdevelop |
|---|---|
| Message-ID | <[email protected]> |
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