Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

launch-ide

Package Overview
Dependencies
Maintainers
0
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

launch-ide

Automatically recognize the editor by running processes and open the specified file in it.

  • 1.0.1
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
2.8K
increased by13.83%
Maintainers
0
Weekly downloads
 
Created
Source

launch-ide · NPM version NPM Downloads MIT-license GITHUB-language

Automatically recognize the editor by running processes and open the specified file in it. It is compatible in Windows, MacOS and Linux.


💡 Why

There are already some tools to open the file in the editor, but launch-ide has the following advantages:

  • Automatically recognize the editor by running processes, you don't need to configure the editor path.
  • Launch the ide by the executable file of the editor, so you don't need to install the command line tools of the editor such as code.
  • Support for more editors such as VSCode, Cursor, Windsurf, WebStorm, etc.
  • Compatible with platforms such as Windows, MacOS, and Linux.
  • Compatible for Chinese characters in the file path.

🛠️ Installation

npm i launch-ide

🚀 Usage

import { launchIDE } from 'launch-ide';

// Open the file in the current editor and position the cursor at line 10 and column 20
launchIDE({ file: '/Users/zh-lx/Desktop/test.ts', line: 10, column: 20 });

// Open the file with more options
launchIDE({ 
  file: '/Users/zh-lx/Desktop/test.ts', // required: the file path to open
  line: 10, // optional: the line number to position the cursor at
  column: 20, // optional: the column number to position the cursor at
  editor: 'code', // optional: specify the editor with IDE encoding name
});

📖 Parameters

interface LaunchIDEParams {
  /**
   * @required
   * @type: string
   * @description: the file path to open
   */
  file: string; 

  /**
   * @optional
   * @type: number
   * @description: the line number to position the cursor at
   */
  line?: number;

  /**
   * @optional
   * @type: number
   * @description: the column number to position the cursor at
   */
  column?: number; 

  /**
   * @optional
   * @type: string
   * @description: specify the editor with IDE encoding name
   */
  editor?: string; 

  /**
   * @optional
   * @type: string
   * @description: when you use the `editor` outside the supported list, you can specify the format of the file to open
   * @default '{file}:{line}:{column}'
   */
  format?: string;

  /**
   * @optional
   * @type: string
   * @description: reuse or open a new window to open the file
   * @default 'auto'
   */
  method?: 'reuse' | 'new' | 'auto';

  /**
   * @optional
   * @type: function
   * @description: callback function when an error occurs
   */
  onError?: (file: string, error: string) => void;
}

🎨 Supported editors

IDEIDE Encoding NameMacOSWindowsLinux
Visual Studio Codecode
Cursorcursor
Windsurfwindsurf
Visual Studio Code - Insiderscode-insiders
VSCodiumcodium
WebStormwebstorm
Atomatom
HBuilderXhbuilder
PhpStormphpstorm
Pycharmpycharm
IntelliJ IDEAidea
Bracketsbrackets
Appcodeappcode
Atom Betaatom-beta
Clionclion
Riderrider
Rubyminerubymine
Emacsemacs
Sublime Textsublime
Notepad++notepad
Vimvim
Zedzed

✍️ Custom editor

There are two ways to specify the editor:

  1. Specify the editor with IDE encoding name in launchIDE.
launchIDE({ 
  file: '/Users/zh-lx/Desktop/test.ts', 
  line: 10,
  column: 20,
  editor: 'cursor' 
});
  1. Specify the editor with IDE encoding name in .env.local file by CODE_EDITOR.
CODE_EDITOR=cursor

If you use the editor outside the supported list, you can specify the editor by its executable file path, please refer to Other Editor.

Keywords

FAQs

Package last updated on 11 Dec 2024

Did you know?

Socket

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
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc