Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

249
Views
Update user/workspace settings from vs code extension

I am trying to update setting.json from my vs code extension and I want to add below code

 "files.associations": {
        "*.app": "auraComponent"
    }

In other words I want to add below key value pair from extension to the users who are going to install my app

enter image description here

So I tried putting the below code in extension.js but it didn't update the settings.

import { ConfigurationTarget, workspace } from 'vscode';

const configuration = workspace.getConfiguration('files.associations');
configuration.update('.app', 'auraComponent', ConfigurationTarget.Global).then(() => {
    // take action here
});

Could someone please suggest if I am using the right approach to update the user or workspace settings and also if the code inside extension.js would be executed automatically or not.

Update

I have added extension.js and included the js code as mentioned by mark in his answer

and update my package.json as below

"main": "./extension",
"activationEvents": [
    "*"
],

If I run my extension on debug mode then it works fine but not working in real time.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

The below works whether there is a pre-existing files.association setting or not. If there is already one, the new association is added to it (and so may be located somewhere other than the end of the settings file - otherwise a wholly new files.associations setting will be added to the very end of the settings.json file..

const fileConfiguration = vscode.workspace.getConfiguration('files');
const associations = fileConfiguration.get('associations');

associations['*.app'] = "auraComponent";

fileConfiguration.update('associations', associations, vscode.ConfigurationTarget.Global).then(() => {

    // take action here
});

Adapted from https://stackoverflow.com/a/49566662/836330.

As explained there, what you really want to update is the associations object, that is the value to be updated. "*.app": "auraComponent is not a configuration key. files.associations is the key and there is an object {...} which is its value.

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!