For a while, our customers have asked for the ability to edit text directly while comparing files in Kaleidoscope. We spent quite some time exploring how to implement this feature in a way that feels natural and efficient — but we struggled to find a feasible approach.
If you’ve used different editors like Visual Studio Code, Sublime Text, or Nova from Panic, you know that opinions vary widely on what makes a great editing experience. As a small team, we realized we can’t replicate or replace the full power and polish of those editors within Kaleidoscope itself. Then, a customer gave us a brilliant idea…
The Inspiration: Xcode’s xed Command Line Tool
Xcode, the favorite IDE of many of our users, comes with a handy command line tool called xed. It opens files at specific lines and integrates smoothly with open projects. Inspired by this, we built a workflow where clicking Edit A/B in Kaleidoscope launches your chosen editor (like Xcode) right where you need to be. Save your changes there, and Kaleidoscope updates immediately.
Getting Started
- Open a text comparison in Kaleidoscope.
- Click the new Edit A/B button in the bottom toolbar — or use the commands in the File, Path Bar, or File Shelf menus.
- The file opens in your configured editor, positioned as closely as possible to your current location and selection.
- Edit away. When you save in your editor, Kaleidoscope refreshes the comparison instantly.
Here, we first open a Swift file from an Xcode project in Kaleidoscope, using Kaleidoscope Prism. In Kaleidoscope, we inspect the Git File History of that file. We decide to make a change in the working copy. Clicking the Edit B button opens the file in Xcode, inside the project context. We make changes and save the file in Xcode, which triggers Kaleidoscope to update the comparison.
Important Considerations
- Git Revisions: When comparing Git revisions, only the working copy can be edited. Committed revisions are immutable.
- Temporary Content: Content pasted from the clipboard or other sources needs to be saved to a file before it can be edited from Kaleidoscope. Use File > A/B > Save As… to save the content to a file first.
Supported Editors
Kaleidoscope 6.1 supports editing text comparisons in the following editors. The table below outlines the features supported by each editor.
| App | Tool | Open in Project | Locate Line | Locate Column | Select Text |
|---|---|---|---|---|---|
| BBEdit | bbedit | – | ✔️ | ✔️ | – |
| CotEditor | cot | – | ✔️ | ✔️ | – |
| Cursor | cursor | ✔️ | ✔️ | ✔️ | – |
| Nova | nova | ✔️ | ✔️ | ✔️ | ✔️ |
| SubEthaEdit | see | – | ✔️ | ✔️ | ✔️ |
| Sublime Text | subl | ✔️ | ✔️ | ✔️ | – |
| TextEdit | (built-in) | – | – | – | – |
| VSCode | code | ✔️ | ✔️ | ✔️ | – |
| Xcode | xed | ✔️ | ✔️ | – | – |
| Zed | zed | ✔️ | ✔️ | ✔️ | – |
Prerequisites
To enable editor support in Kaleidoscope, you need to have both the editor app itself and its companion command-line tool installed. Kaleidoscope will then automatically detect and show it as supported in Settings > General:

Hovering a disabled entry provides additional information.
Missing Your Favorite Editor?
If you need support for another app, let us know! If it comes with a command-line integration, there’s a good chance we can add support. Please submit a request with details about the editor and its command-line tool.
Download Kaleidoscope 6.1 Today!
Experience the seamless text editing workflow in Kaleidoscope 6.1. Download now and let us know what you think! We’re always looking for feedback to improve Kaleidoscope.