On Thu, Apr 8, 2021 at 7:19 AM Eric Bresie <[email protected]> wrote:
> Soooo...if one was to want to implement new Python or other new languages, > it would be possible to implement and leverage one of the implemented > servers like those defined here? > > https://microsoft.github.io/language-server-protocol/implementors/servers/ > And leverage the tm grammars from some place like here https://github.com/Chris2011/netbeans-textmate-files When adding a new language, should this generally be done as a separate plugin or be integrated within the netbeans codebase itself? I guess this could go either way but assume making an external plugin allows more flexibility to management of it, avoids growing the netbeans codebase significantly, but has a little less visibility up front (and not part of “Netbeans” proper) with the need to manage things separately from the netbeans master repository > Eric > > On Mon, Apr 5, 2021 at 8:05 AM Christian Lenz <[email protected]> > wrote: > >> You can see the full list (more are coming soon) of all languages which >> we can have in NetBeans here: >> https://github.com/Chris2011/netbeans-textmate-files >> >> This is just simple basic syntax highlighting for over 50 languages. Well >> known and some not well known. >> >> What is needed here for every language is: >> >> - Semantic syntax highlighting (more than with textmate I think) >> - Formatting (custom implementation or LSP?) >> - Refactoring (renaming, find usages, go to, etc. – LSP needed) >> - Hints/Fixes/Suggestions, etc – LSP needed + custom implementation if >> LSP doesn’t have that much >> - Braces matching, automatic closing of braces (custom implementation?) >> - Code completion – LSP needed >> - Code templates – custom implementation >> - Showing errors of the Syntax or Control flow – LSP needed >> >> So as an alternative to ANTLR which of course is good, we Need those >> stuff for textmate too. Where we can all implement the stuff based on >> textmate files and not only on g and g4 lexer and parser. If possible. >> >> >> Cheers >> >> Chris >> >> Von: John Kostaras >> Gesendet: Freitag, 2. April 2021 16:17 >> An: [email protected] >> Betreff: Re: AW: How to Implement a New Language >> >> Hallo, >> the best 'tutorial' is chapter 11 of Pro Apache NetBeans >> < >> https://www.amazon.com/Pro-Apache-NetBeans-Building-Applications/dp/1484253698 >> > >> book, even though it doesn't use the modern trend of TextMate and LSP, but >> it is based on ANTLR. >> >> This confluence page >> <https://cwiki.apache.org/confluence/display/NETBEANS/Community+plugins> >> provides an overview of the status of language support of Apache Netbeans. >> The situation is really bad, compared to the language support that existed >> back in NetBeans 8.2 for example, or even earlier versions. There are >> many >> old and half-baked plugins for many languages, and I don't know what is >> the >> best way to move ahead in this respect. >> >> Kind regards, >> >> John. >> >> >> >> On Mon, 29 Mar 2021 at 23:02, antonio <[email protected]> wrote: >> >> > Very true. Maintaining an ANTLR grammar over the years is difficult and >> > time consuming (see for instance all the changes to the NetBeans C++ >> > grammar in NetBeans [1]). >> > >> > LSP servers, when mantained by knowledgeable teams, may give better >> > results with less effort. Apple, for instance, decided to move to clangd >> > (from libclang) a few years back ([2]). >> > >> > For simpler languages/DSLs I think Eclipse's XText >> > https://www.eclipse.org/Xtext/ outperforms JetBrain's MPS >> > https://www.jetbrains.com/mps/ (the generated parsers could then be >> > reused in NetBeans). >> > >> > Cheers, >> > Antonio >> > >> > [1] >> > >> > >> https://github.com/emilianbold/netbeans-releases/commits/master/cnd.modelimpl/src/org/netbeans/modules/cnd/modelimpl/parser/cppparser.g >> > >> > [2] >> > https://lists.llvm.org/pipermail/cfe-dev/2018-April/057668.html >> > >> > >> > El 29/3/21 a las 11:39, Christian Lenz escribió: >> > > Hey all, >> > > >> > > for myself I prefer adding new languages with textmate nowadays and >> LSP. >> > It is not possible for some languages to find updated versions of the >> ANTLR >> > Grammar file. For example C#. I dunno how it is for rust but yeah, I >> still >> > prefer Textmate. We Need to figure out how we can create the Tokens >> based >> > on the textmate file instead of ANTLR. I would prefer that. In the end, >> > everythins should be then the same as for ANTLR. >> > > >> > > >> > > Cheers >> > > >> > > Chris >> > > >> > >> > --------------------------------------------------------------------- >> > To unsubscribe, e-mail: [email protected] >> > For additional commands, e-mail: [email protected] >> > >> > For further information about the NetBeans mailing lists, visit: >> > https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists >> > >> > >> > >> > >> >> -- > Eric Bresie > [email protected] > -- Eric Bresie [email protected]
