Socket
Socket
Sign inDemoInstall

generator-code

Package Overview
Dependencies
6
Maintainers
7
Versions
194
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    generator-code

Yeoman generator for Visual Studio Code extensions.


Version published
Weekly downloads
3.3K
increased by1.94%
Maintainers
7
Install size
19.4 MB
Created
Weekly downloads
 

Readme

Source

Yo Code - Extension and Customization Generator

npm Package NPM Downloads Build Status License: MIT

We have written a Yeoman generator to help get you started. We plan to add templates for most extension/customization types into this.

Install the Generator

Install Yeoman and the VS Code Extension generator:

npm install -g yo generator-code

Run Yo Code

The Yeoman generator will walk you through the steps required to create your customization or extension prompting for the required information.

To launch the generator simply type:

yo code

The command generator

Generator Output

These templates will:

  • Create a base folder structure
  • Template out a rough package.json
  • Import any assets required for your extension e.g. tmBundles or the VS Code Library
  • For Extensions: Set-up launch.json for running your extension and attaching to a process

Command line

Usage:
  yo code [<destination>] [options]

Argument (optional):
  The destination to create the extension in, absolute or relative to the current working
  directory. Use '.' for the current folder.
  If not provided, defaults to a folder in the current working directory with the extension
  display name.

Options:
  -h,   --help                  # Print the generator's options and usage
  -i,   --insiders              # Show the insiders options for the generator
  -q,   --quick                 # Quick mode, skip all optional prompts and use defaults
  -o,   --open                  # Open the generated extension in Visual Studio Code
  -O,   --openInInsiders        # Open the generated extension in Visual Studio Code Insiders
  -t,   --extensionType         # ts, js, colortheme, language, snippets, keymap...
        --extensionId           # Id of the extension
        --extensionDescription  # Description of the extension
        --pkgManager            # 'npm', 'yarn' or 'pnpm'
        --webpack               # Bundle the extension with webpack
        --gitInit               # Initialize a git repo

Example usages:
  yo code                       # Create an extension in a folder with the extension's name.
  yo code . -O                  # Create an extension in current folder and open with code-insiders
  yo code Hello -t=ts -q        # Create an TypeScript extension in './Hello', skip prompts, use defaults.
  yo code --insiders            # Show the insiders options for the generator

Run Generator using Docker

If you don't want to install nodejs or any node packages, use this method to containerize the generator.

Go into your project directory.

cd <project directory>

Build the docker image from the docker file.

docker build -t vscode-generator-code .

Create a docker container with volumes.

docker run -it -v $(pwd):/usr/src/app vscode-generator-code

Local development

After making necessary changes, run npm link before running yo code to test the local version.

You can learn more about Yeoman generator development on its documentation website.

History

  • 1.0.0: Generates a VS Code extension for TypeScript 2.0.3
  • 0.10.x: Generates a VS Code extension for TypeScript 1.8.10

License

MIT

Keywords

FAQs

Last updated on 26 Apr 2024

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc