This is amazing work.

For the sake of new user documentation, I have a question: From scratch, for me to get from zero to VS Code Community edition to "I have everything I need to work on Firefox", what is the consensus around the components or options I need to pick to get myself close to an ideal VS setup? I haven't revisited this on a clean machine in a long time, and this seems like as good a time as any to update that information.

I think the answer is, Python, Node, C/C++ desktop and mobile... have I missed any, and are there other workload options that would help on first setup?

- mhoye

------ Original Message ------
From: "Andrew Halberstadt" <a...@mozilla.com>
To: "Andi-Bogdan Postelnicu" <a...@mozilla.com>
Cc: "dev-platform" <dev-platform@lists.mozilla.org>
Sent: 2020-09-10 12:29:48 PM
Subject: Re: Visual Studio Code integration with `clangd` for C/C++ development

This is great, thanks Andi!

Are there any plans to introduce a `mach lint` integration as well? Or is
that what is already being used for "inline parsing errors with limited
auto-fix hints"?


On Thu, Sep 10, 2020 at 12:20 PM Andi-Bogdan Postelnicu <a...@mozilla.com>
wrote:

 TLDR: VSCode users can type `./mach ide vscode` in order to get code
 completion, reference navigation, refactoring, reformatting, etc.

 Hello all,

 VSCode <https://github.com/microsoft/vscode> is a multi-platform
 open-source programming editor developed by Microsoft and volunteers. It is
 partly built using source-code components but also uses proprietary
 Microsoft code. It has support for many programming languages using
 extensions.
 In the past we had a minimal
 <https://searchfox.org/mozilla-central/source/.vscode> configuration setup
 in the tree that reflected the basic extensions
 <https://searchfox.org/mozilla-central/source/.vscode/extensions.json>
 that
 should be used and also some tasks
 <https://searchfox.org/mozilla-central/source/.vscode/tasks.json> that can
 be triggered from the editor.

 Now, we significantly improved that!

 Starting with Bug 1656740
 <https://bugzilla.mozilla.org/show_bug.cgi?id=1656740>, we’ve added
 comprehensive support for C/C++with the help of the `clangd` extension for
 Firefox development. Leveraging the `clang` toolchain compiler we now have
 support in the IDE for:

    1.

    Syntax highlighting;
    2.

    IntelliSense with comprehensive code completion and suggestion;



    1.

    Go-to definition and Go-to declaration;
    2.

    Find all references
    3.

    Open type hierarchy;
    4.

    Rename symbol, all usages of the symbol will be renamed, including
    declaration, definition and references;
    5.

    Code formatting, based on `clang-format` that respects our coding
    standard using the `.clang-format` and `.clang-format-ignore` files.
 Format
    can be performed on an entire file or on a code selection;
    6.

    Inline parsing errors with limited auto-fix hints;


    1.

    Basic static-code analysis using `clang-tidy` and our list of enabled
    checkers. (This is still in progress not all checkers are supported by
    `clangd`);


 This new eco-system for code development is supported on all platforms that
 we officially support.

 In order to have this setup, download and install `VSCode` and run the
 following command:

 ./mach ide vscode

 Please file any issues that you might encounter using this setup please as
 blocking bugs to Bug 1662709
 <https://bugzilla.mozilla.org/show_bug.cgi?id=1662709>.

 I would also like to address many thanks to Jonathan Watt and Botond Ballo,
 without their active support this would not have been made possible.

 Many thanks,

 Andi, on behalf of the team
 _______________________________________________
 dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to