CotEditor

⚠️ This is a pre-release version.

Highlights on CotEditor 7.0

Smarter syntax, sharper editing
More accurate highlighting, smarter commenting, and improved editor behavior, all powered by a redesigned syntax engine and definition format.
Powered by tree-sitter, where it matters most
Many major built-in syntaxes now use tree-sitter, a modern structure-based parser that enables deeper and more reliable language awareness.
Outline with depth
Icons make structure easier to scan, and tree-sitter–based syntaxes now support collapsible outlines that reflect hierarchy.

CotEditor 7.0.0-rc.2

release:

Improvements

  • beta: Tweak the user guide.

Fixes

  • beta: Fix an issue where importing legacy YAML syntax definitions from the Format settings could fail.

CotEditor 7.0.0-rc

release:

Compatibility Changes

  • beta: Change the location to save custom syntaxes.

Improvements

  • Improve word selection and related editing actions to treat commas as word delimiters.
  • trivial: Improve stability when handling file change conflicts.
  • beta: Improve syntax highlighting for JavaScript, Ruby, and TypeScript.
  • beta: Update outline extraction algorithms for C, C#, C++, and JavaScript.
  • beta: Update tree-sitter-c-sharp to 0.23.5.
  • beta trivial: Update the document icon for the CotEditor Syntax document.

Fixes

  • Fix issues in the file browser where items could point to the wrong location after being moved or renamed.
  • Fix an issue in the file browser where replacing a file with a folder, or vice versa, could leave the displayed state outdated.
  • Fix an issue in the file browser where newly created or duplicated items could fail to become selected immediately in some folders.
  • Fix an issue where line reordering commands could insert extra blank lines in documents using CRLF line endings.
  • Fix an issue where TSV multiple replace definitions could not import empty replacement strings.
  • trivial: Fix some typos in localizations and user guides.
  • beta: Fix the outline extraction algorithms for Java, Kotlin, PHP, Python, and TypeScript.

CotEditor 7.0.0-beta.3

release:

Improvements

  • Update the inspector’s appearance on macOS Tahoe 26.
  • beta: Update the SVG syntax for syntax highlighting.
  • beta: Update the Python syntax highlighting parsing.

Fixes

  • Fix an issue where AppleScript could return an unclear error when a folder document had no current document.
  • Fix an issue where requesting a zero-length text range via AppleScript could return an unintended character.
  • Fix an issue where some decimal setting values could use the wrong number format and be reset unexpectedly in certain locale configurations.
  • beta: Fix the HTML outline extraction to include headings with nested elements.

CotEditor 7.0.0-beta.2

release:

Improvements

  • non-AppStore ver.: Update Sparkle from 2.9.0 to 2.9.1.
  • beta: Tweak outline item icons.
  • beta: Optimize the outline extraction algorithm.
  • beta: Optimize the regex-based syntax highlighting algorithm.
  • beta: Improve the Python outline to extract class variables.
  • beta: Add missing localizations.
  • beta: Update tree-sitter-rust to 0.24.2.

Fixes

  • Fix an issue where re-importing a TSV file to overwrite an existing multiple replace definition could fail.
  • beta: Fix outline extraction in the LaTeX and Swift syntaxes.

CotEditor 7.0.0-beta

release:

This version contains some specific changes that may require manual migration by users. See Important changes on CotEditor 7.0 for details.

Compatibility Changes

  • Introduce CotEditor Syntax, a new syntax definition format. The legacy YAML-based syntax definition format is now deprecated, and user-created syntaxes are automatically migrated on first launch.

New Features

  • Adopt smarter syntax parsing powered by tree-sitter for multiple built-in syntaxes, improving syntax highlighting and outline extraction in C, C#, C++, CSS, Go, HTML, Java, JavaScript, Kotlin, LaTeX, Lua, Makefile, Markdown (outline extraction only), PHP, Python, Ruby, Rust, Scala, Shell Script, SQL, Swift, and TypeScript.
  • Display symbolic icons next to outline items.
  • Allow collapsing outline items in the Outline inspector for tree-sitter-based and structured document syntaxes.
  • Add the “Wrap Lines” option to the Outline inspector.
  • Make smart indentation aware of the current syntax.
  • Expand comment delimiter settings in syntax definitions, allowing multiple delimiters and related options.
  • Add detailed delimiter settings for strings, characters, and indentation to syntax definitions.
  • Add the Multiline option to highlighting rules in syntax definitions so matches can span multiple lines.
  • Show the current position in search results in the Find field while navigating between matches, for example, “2/5”.
  • Add CurrentLine and ReplaceCurrentLine to the UNIX script input/output keywords for editing the current line in the editor.
  • Add Bulgarian localization (thanks to Miroslav Dragoev!).

Improvements

  • Improve the syntax-highlighting algorithm for legacy regex-based parsing.
  • Update built-in syntaxes.
  • Use the user’s window size setting for the Zoom action, if available.
  • Improve general text-editing performance.
  • Hide line numbers in the window titlebar area when the navigation bar is hidden on macOS Tahoe 26.
  • trivial: Adjust the About CotEditor window.
  • trivial: Rename the Recolor All command to “Reset Syntax Analysis” and move it to the Format menu.
  • trivial: Remove the Restore Defaults button in the syntax editor.
  • trivial: Tweak colors of the default Anura theme.

Fixes

  • Fix incorrect syntax parsing in some built-in syntaxes.
  • Fix an issue where the default file extension in the Save dialog was .txt for syntaxes with a file extension not registered in the system.

Known Issues

  • The text added to CotEditor 7.0.0 are not yet localized to Czech and Polish.

previous release notes