Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save bodrick/58edb540e4cec22c4d1e1788421e8b59 to your computer and use it in GitHub Desktop.
Save bodrick/58edb540e4cec22c4d1e1788421e8b59 to your computer and use it in GitHub Desktop.
parse VSCode `.code-profile` for enabled extensions
// run like this:
// node ./parse-vscode-profile.js "$HOME"/Downloads/profile.code-profile
const fs = require("fs")
const file = fs.openSync(process.argv[2], "r")
for (const line of fs.readFileSync(file, "utf8").split("\n")) {
const extensions = JSON.parse(JSON.parse(line).extensions)
const enabledExtensions = extensions.filter((extension) => !extension.disabled)
const disabledExtensions = extensions.filter((extension) => extension.disabled)
const enabledExtensionIds = enabledExtensions.map(
(extension) => extension.identifier.id,
)
const disabledExtensionIds = disabledExtensions.map(
(extension) => extension.identifier.id,
)
console.log("Enabled extensions:")
enabledExtensionIds.forEach((extensionId) => console.log(extensionId))
console.log()
console.log()
console.log("Disabled extensions:")
disabledExtensionIds.forEach((extensionId) => console.log(extensionId))
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment