GitHub Desktop supports launching your favorite external editor to work with repository files. Editors can be launched from the top-level Repository menu or by right-clicking a repository in the sidebar.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/livrasand/desktop/llms.txt
Use this file to discover all available pages before exploring further.
Requirements
For an editor to be supported by GitHub Desktop, it must satisfy these requirements:Discoverable installation
The editor must be installed in a reliable, discoverable location on the user’s machine.
Supported Editors
Windows
GitHub Desktop supports these editors on Windows:- Atom (Stable, Beta, and Nightly)
- Visual Studio Code (Stable and Insiders)
- VSCodium
- Sublime Text
- Notepad++
- Typora
- SlickEdit
- Brackets
- JetBrains IDEs:
- IntelliJ IDEA
- WebStorm
- PhpStorm
- PyCharm
- RubyMine
- CLion
- GoLand
- RustRover
- Fleet
- DataSpell
- Android Studio
- RStudio
- Aptana Studio
- ColdFusion Builder
- Zed (Stable and Preview)
- Pulsar
- Cursor
- Windsurf
macOS
Supported editors on macOS include:- Atom
- Visual Studio Code (Stable and Insiders)
- VSCodium
- Sublime Text
- BBEdit
- TextMate
- Brackets
- MacVim
- Neovide
- VimR
- Typora
- CodeRunner
- SlickEdit
- Xcode
- Emacs
- Nova
- Lite XL
- JetBrains IDEs (All major IDEs)
- Android Studio
- RStudio
- Aptana Studio
- Eclipse (All IDE variants)
- Pulsar
- Cursor
- Zed
Linux
Linux users can use these editors:- Atom
- Visual Studio Code (Stable and Insiders)
- VSCodium
- Sublime Text
- Typora
- SlickEdit
- Neovim
- Neovide
- Notepadqq
- Mousepad
- GNOME Builder
- Code (elementary OS)
- Lite XL
- Kate
- Emacs
- Pluma
- JetBrains IDEs (All major IDEs)
- Android Studio
- Pulsar
- Zed
How Editor Detection Works
Windows Registry Lookup
On Windows, GitHub Desktop finds editors using registry keys:app/src/lib/editors/win32.ts
Registry keys are checked in multiple locations:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\UninstallHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\UninstallHKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall
macOS Bundle Identifiers
On macOS, editors are located using their bundle identifiers:app/src/lib/editors/darwin.ts
Linux Executable Paths
On Linux, GitHub Desktop searches for executables in common installation paths:app/src/lib/editors/linux.ts
Launching Editors
ThelaunchExternalEditor function handles launching editors across all platforms:
app/src/lib/editors/launch.ts
Launch Process
Editors are spawned as detached processes so they continue running even if GitHub Desktop is closed.
JetBrains Toolbox Support
GitHub Desktop supports editors installed through JetBrains Toolbox:Custom Editor Integration
You can configure custom editors that aren’t in the default list:app/src/lib/editors/launch.ts
Custom Integration Interface
Error Handling
Editor integration includes comprehensive error handling:openPreferences flag prompts users to check their editor settings when an error occurs.
Adding a New Editor
To add support for a new editor, follow these steps:Add editor definition
Add an entry to the appropriate platform-specific file:
- Windows:
app/src/lib/editors/win32.ts - macOS:
app/src/lib/editors/darwin.ts - Linux:
app/src/lib/editors/linux.ts
Provide discovery information
Windows: Registry keys and validation:macOS: Bundle identifier:Linux: Executable paths:
Contributing
Want to add support for your favorite editor? Contributions are welcome! See the editor integration technical docs for detailed instructions.