vscode-ext-localization
github/awesome-copilot
Guidelines for correctly localizing every part of a VS Code extension, from package.json to source strings.
What is vscode-ext-localization?
This skill provides guidelines for localizing VS Code extensions across all three localization surfaces: package.json contributions, walkthrough Markdown content, and source code strings. Use it when adding or updating any user-facing text in a VS Code extension to ensure proper multi-language support.
- Defines the three distinct approaches for localizing VS Code extensions
- Specifies file naming conventions for package.json contribution localization (package.nls.LANGID.json)
- Specifies file naming conventions for localized walkthrough Markdown content
- Specifies the bundle.l10n.LANGID.json approach for localizing source code strings
- Reminds maintainers to update localization files for all supported languages when resources change
How to install vscode-ext-localization
npx skills add https://github.com/github/awesome-copilot --skill vscode-ext-localization- A VS Code extension project with a package.json defining contributions (settings, commands, menus, views, etc.)
- Familiarity with VS Code extension localization concepts (package.nls files, l10n bundles)
How to use vscode-ext-localization
- 1.Identify the resource needing localization: package.json configuration, walkthrough Markdown content, or source code strings/messages
- 2.For package.json items (settings, commands, menus, views, viewsWelcome, walkthrough titles/descriptions), create or update an exclusive package.nls.LANGID.json file for each target language
- 3.For walkthrough content, create or update a language-specific Markdown file (e.g. walkthrough/someStep.pt-br.md) for each target language
- 4.For messages/strings in JS or TS source code, create or update an exclusive bundle.l10n.LANGID.json file for each target language
- 5.Ensure that whenever a new or updated localizable resource is added, corresponding localization files are created or updated for all currently supported languages
Use cases
- Adding package.nls.LANGID.json files when introducing new settings, commands, menus, or views
- Translating walkthrough step content into multiple language-specific Markdown files
- Localizing user-facing messages embedded in extension TypeScript/JavaScript source code
- Auditing an existing VS Code extension to ensure all languages have up-to-date localization files
- VS Code extension developers
- Maintainers adding internationalization/localization support to an extension
- Contributors translating extension UI text into additional languages
vscode-ext-localization FAQ
Contributed configurations defined in package.json (settings, commands, menus, views, viewsWelcome, walkthrough titles/descriptions), walkthrough Markdown content, and messages/strings in extension source code (JS/TS).
An exclusive package.nls.LANGID.json file per language, e.g. package.nls.pt-br.json for Brazilian Portuguese.
Each walkthrough step gets a language-specific Markdown file, e.g. walkthrough/someStep.pt-br.md for Brazilian Portuguese.
Through an exclusive bundle.l10n.LANGID.json file per language, e.g. bundle.l10n.pt-br.json.
The SKILL.md only provides guidelines on file structure and approach for localization; it does not describe automated translation capabilities.
Full instructions (SKILL.md)
Source of truth, from github/awesome-copilot.
name: vscode-ext-localization description: 'Guidelines for proper localization of VS Code extensions, following VS Code extension development guidelines, libraries and good practices'
VS Code extension localization
This skill helps you localize every aspect of VS Code extensions
When to use this skill
Use this skill when you need to:
- Localize new or existing contributed configurations (settings), commands, menus, views or walkthroughs
- Localize new or existing messages or other string resources contained in extension source code that are displayed to the end user
Instructions
VS Code localization is composed by three different approaches, depending on the resource that is being localized. When a new localizable resource is created or updated, the corresponding localization for all currently available languages must be created/updated.
- Configurations like Settings, Commands, Menus, Views, ViewsWelcome, Walkthrough Titles and Descriptions, defined in
package.json-> An exclusivepackage.nls.LANGID.jsonfile, likepackage.nls.pt-br.jsonof Brazilian Portuguese (pt-br) localization - Walkthrough content (defined in its own
Markdownfiles) -> An exclusiveMarkdownfile likewalkthrough/someStep.pt-br.mdfor Brazilian Portuguese localization - Messages and string located in extension source code (JavaScript or TypeScript files)
-> An exclusive
bundle.l10n.pt-br.jsonfor Brazilian Portuguese localization
Related skills
More from github/awesome-copilot and the wider catalog.
git-commit
Execute semantic git commits with conventional message analysis and intelligent staging.
excalidraw-diagram-generator
Generate Excalidraw diagrams from natural language descriptions.
documentation-writer
Create structured technical documentation using the Diátaxis framework for tutorials, how-to guides, references, and explanations.
gh-cli
GitHub CLI comprehensive reference for repositories, issues, PRs, Actions, projects, releases, and all GitHub operations from the command line.
prd
Generate comprehensive Product Requirements Documents with executive summaries, user stories, technical specs, and risk analysis.
refactor
Surgical code refactoring to improve maintainability without changing behavior.