Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>Markdown Open WithNew to Visual Studio Code? Get it now.
Markdown Open With

Markdown Open With

ttaatoo

|
2 installs
| (0) | Free
Open your Markdown files with external applications directly from the editor.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Markdown Open With

Open your Markdown files with external applications directly from the editor title bar.

Installation

Install from VSIX (local build)

  1. Clone the repo and build the extension package:
    git clone https://github.com/ttaatoo/markdown-open-with
    cd markdown-open-with
    npm install
    npm run compile
    npm run package
    
  2. In VS Code / Cursor: Extensions → ⋯ (top right) → Install from VSIX… → choose the generated markdown-open-with-0.1.0.vsix.

Or install from the command line:

code --install-extension markdown-open-with-0.1.0.vsix

Install from marketplace

Search for Markdown Open With in the Extensions panel and install, or run:

code --install-extension ttaatoo.markdown-open-with

Features

  • Adds an Open With button to the editor title bar for Markdown files
  • Configure multiple external applications (Typora, Obsidian, MarkText, custom scripts)
  • QuickPick menu for selecting the target application
  • Cross-platform support (macOS, Windows, Linux)

Usage

  1. Open any .md file in VS Code
  2. Click the Open With button (external link icon) in the editor title bar
  3. Select an application from the QuickPick menu

If only one application is configured, it opens directly without showing the menu.

Configuration

Add applications to your settings.json:

{
  "markdownOpenWith.apps": [
    {
      "name": "Typora",
      "command": "/Applications/Typora.app/Contents/MacOS/Typora",
      "args": ["{file}"]
    }
  ]
}

Configuration fields

Field Type Required Description
name string Yes Display name shown in the QuickPick menu
command string Yes Executable path or command name
args string[] No Arguments passed to the command

Placeholders

Placeholder Replaced with
{file} Absolute path of the current Markdown file

If args is omitted, the extension defaults to ["{file}"].

Platform examples

macOS

{
  "markdownOpenWith.apps": [
    {
      "name": "Typora",
      "command": "/Applications/Typora.app/Contents/MacOS/Typora",
      "args": ["{file}"]
    },
    {
      "name": "Obsidian",
      "command": "open",
      "args": ["-a", "Obsidian", "{file}"]
    }
  ]
}

Windows

{
  "markdownOpenWith.apps": [
    {
      "name": "Typora",
      "command": "C:\\Program Files\\Typora\\Typora.exe",
      "args": ["{file}"]
    },
    {
      "name": "MarkText",
      "command": "C:\\Program Files\\MarkText\\MarkText.exe",
      "args": ["{file}"]
    }
  ]
}

Linux

{
  "markdownOpenWith.apps": [
    {
      "name": "Typora",
      "command": "typora",
      "args": ["{file}"]
    },
    {
      "name": "MarkText",
      "command": "marktext",
      "args": ["{file}"]
    }
  ]
}

Security notice

This extension executes user-configured system commands. Only configure trusted applications.

Arguments are passed as an array to child_process.spawn — no shell interpolation occurs.

Development

npm install
npm run compile
npm run test:unit

Press F5 in VS Code to launch the Extension Development Host.

License

MIT

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft