microsoft / vscode-makefile-tools

MAKE integration in Visual Studio Code
Other
185 stars 55 forks source link

Variable expansion - initial support #457

Closed andreeis closed 1 year ago

andreeis commented 1 year ago

Variable expansion. Will add more explanations and update linux test baselines later. Have to fix merge conflicts first.

gcampbell-msft commented 1 year ago
default: boolean;

We might want to use a name other than default, in some contexts it's a keyword and I worry it's possible to introduce hard to track bugs.


Refers to: src/configuration.ts:100 in ccb3bbc. [](commit_id = ccb3bbcb41b585b6c9f720a6d0a608d86b44a2b5, deletion_comment = False)

gcampbell-msft commented 1 year ago
            "makefile.panel.visibility": {

Maybe this is just ignorance on my part, but I don't understand what this is for / what it does, an explanation here might help me understand some of the changes in configuration.ts


Refers to: package.json:518 in ccb3bbc. [](commit_id = ccb3bbcb41b585b6c9f720a6d0a608d86b44a2b5, deletion_comment = False)

andreeis commented 1 year ago
            "makefile.panel.visibility": {

Maybe this is just ignorance on my part, but I don't understand what this is for / what it does, an explanation here might help me understand some of the changes in configuration.ts

Refers to: package.json:518 in ccb3bbc. [](commit_id = ccb3bbc, deletion_comment = False)

The panel visibility was implemented by the community. See PR https://github.com/microsoft/vscode-makefile-tools/pull/291 and issue https://github.com/microsoft/vscode-makefile-tools/issues/290.

It implements the ability to make various extension features optional and hide them from the UI, starting with debug and run. More features can be added to this visible/hidden toggle functionality when needed.

Regarding type MakefilePanelVisibilityDescription and the default boolean property... Let me think... We could rename it to defaultVisibility or defaultValue.... but I've seen many types with properties called "default", I wonder if you can give an example of issue that can happen? Maybe "default: " as in a switch statement versus a property in an object, or?