Hi again,

So, to clarify:

a) I don't think Rust support is ready yet to be merged with core: it's in alpha state ([1] details some aspects that need work).

b) If we want to add Rust support to NetBeans we have to decide the best way:

b.1) Create a "rust" branch in the main repo, add code there and keep on improving it until things are ready to merge in core.

b.2) Create a repo of ours and let "rust" be an experimental plugin, and keep on improving it there.

b.3) Keep on upgrading in my cloned repo until we're all happy.

We could start by deciding which option in "b)" best suites us. This may apply also to future "NetBeans experiments" that we may want to get involved into.

Cheers,
Antonio

[1]
An assorted list of bugs and features that we could add to Rust:

1. Lexer/Parser bugs

1.1. Lexer/parser are too detailed for an IDE, I think. We may not be interested in lexing the internals of a comment, for instance. We may want to simplify things.

1.2. We should recover nicely from Antlr4 lexer/parser errors. We currently don't. (add arbitrary text to a .rs file and see how it fails)

2. Project/Properties/Licenses

The "Project/Properties/Licenses" (dependency to Ant Projects) dialog opens, let's you choose a license, but then forgets. Licenses are never applied to new files.

3. Project/Properties/Other

We need customizers for Rust projects. Choosing between Debug and Release configurations, for instance.

4. Workspaces

Rust projects with workspaces (such as https://github.com/rust-lang/regex) show the different Rust submodules in the "Sources" node. We may want to handle these as we do with "Maven Submodules".

5. Fonts & Colors

We want to add more fonts-colors to different tokens (macros, etc.)

6. Folding

Folds work for code blocks, but structs is missing.

7. Debugging

Before adding debugging, we need to extract the "gdb" support from the "cnd" branch and add it somewhere in NetBeans. Maybe "ide/gdb*" is a good destination?

8. Semantic HL

We may want to add semantic highlighting to different parts of the Rust code (special coloring for mutable reference variables, for instance).

9. Options dialog

To select the "cargo" path.

10. Fonts and Colors dialog

With a sample .rs file, so people can modify fonts-colors easily.

11. Code completion

Of course. "rust-analyzer" (https://rust-analyzer.github.io/) is a popular LSP server, I think.


On 15/2/23 22:21, Antonio wrote:
Hi,

It's currently integrated in my repo 😄. Whether this goes to core and is released as a plugin is not clear yet, I think. That needs some thought. Releasing it as a plugin has the advantage that it can have a different lifecycle than the core.

On 15/2/23 19:48, John Kostaras wrote:
This is integrated into the core.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@netbeans.apache.org
For additional commands, e-mail: dev-h...@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists



Reply via email to