github coteditor/CotEditor 7.2.0-beta

pre-releaseone hour ago

system requirements: macOS 26 and later

New Features

  • Support editing remote files with rmate over SSH port forwarding, enabled in Integration settings.
  • Add an option in General settings to automatically save a copy of settings to iCloud for manual import on other Macs.
  • Support customizing keyboard shortcuts for text editing commands, such as moving the insertion point and deleting text, in Shortcuts settings.

Improvements

  • Move the Donation settings pane to a separate window accessible from the CotEditor menu.
  • Add the Integration settings pane for managing integration with external tools.
  • Move settings import and export from the File menu to the General settings pane.
  • Redesign the Shortcuts settings pane.
  • Allow restoring the default shortcuts for individual commands in the Shortcuts settings pane using the context menu or the Delete key.
  • Support undo in the Shortcuts settings pane.
  • Improve word navigation with Control-Option-F and Control-Option-B to treat periods, commas, and colons as word delimiters, consistent with Option-Left Arrow and Option-Right Arrow.
  • Change the Shift-Option-Down Arrow shortcut to extend the selection to the end of the line without including the line ending, consistent with Option-Down Arrow.
  • Change the Delete key to delete a closing bracket or quotation mark together with the opening one only when it was automatically inserted.
  • Change the numbering to avoid name conflicts in the file browser and settings to match Finder, such as using “Foo 2” if “Foo 1” already exists.
  • Change regular expressions in folder search to match ^ and $ at the beginning and end of each line, consistent with the default of the Find window.
  • Optimize regular-expression-based syntax highlighting in large documents.
  • Optimize Replace All when using regular expressions or the “Match only whole words” find option.
  • Optimize the hanging indentation calculation.
  • Improve overall stability and performance.
  • Update tree-sitter-markdown to 0.5.4.
  • Update tree-sitter-scala to 0.26.13.
  • Update tree-sitter-sql to 0.3.13.
  • [trivial] Improve find results to include as much of a long match as possible in the line excerpt.
  • [trivial] Change File Drop snippets to keep the <<<FILECONTENT>>> variable as is when the file content cannot be read, consistent with the image size variables.
  • [dev] Update the build environment to Xcode 27.2.

Fixes

  • Fix an issue where the Select All Find Matches command crashed the app when there were no matches (thanks to Yusuke Terada!).
  • Fix an issue where the app could crash when searching in a folder with a regular expression, such as \n or \s, if files had CRLF line endings.
  • Fix an issue where the document could remain uneditable after canceling Find All, Replace All, or Multiple Replace.
  • Fix several issues with the “Match only whole words” find option, such as not finding text that starts or ends with a symbol, like “#tag”, or text that contains a line ending.
  • Fix an issue where Find All highlights remained in the document after closing the search results.
  • Fix an issue where syntax highlighting could stop partway through a large document if the document was edited before the highlighting finished after opening.
  • Fix issues in tree-sitter-based syntax highlighting where highlights could remain outdated or disappear after editing, such as when entering text with an input method or editing in a string spanning multiple lines.
  • Fix several issues in tree-sitter-based syntax highlighting.
  • Fix several issues with outline item titles in tree-sitter-based syntaxes.
  • Fix an issue where the outline menu in the navigation bar could display an empty or incorrect item when the insertion point was before the first outline item.
  • Fix an issue where the expansion state of folders in the file browser was sometimes not restored from the last session.
  • Fix an issue in the file browser where read-only files in a writable folder could not be renamed and the Move to Trash command was unavailable for them.
  • Fix an issue where shortcuts using function keys, arrow keys, or other navigation keys could not be set in the Shortcuts and Snippets settings panes.
  • Fix an issue where double-clicking a period, comma, or colon selected nothing or the preceding word instead of the character itself.
  • Fix an issue where the Select Enclosing Symbols command did nothing if an unmatched closing symbol, such as > in a comparison, came before the closing symbol of the enclosing pair.
  • Fix an issue where trailing whitespace on the previous line was not automatically trimmed while the insertion point was at the beginning of the next line.
  • Fix an issue where the “Convert Indentation” commands did not convert indentation that mixed spaces and tabs.
  • Fix several issues with indentation that was not a multiple of the indent width or mixed spaces and tabs, such as inserting or deleting an incorrect number of spaces with the Tab or Delete key, or not outdenting to the indent level of the opening symbol when typing a closing symbol, such as “}”.
  • Fix an issue where the Toggle Comment and Uncomment commands could not uncomment block or inline comments when only part of a line was selected.
  • Fix issues in syntaxes where the comment delimiter is valid only at the line start, such as Dockerfile, where the Inline Comment command inserted the delimiter in the middle of a line and comments indented with tabs were not highlighted.
  • Fix several issues with multi-cursor editing, such as moving insertion points incorrectly at the end of wrapped lines or in right-to-left text, inserting text at an incorrect location when typing after extending selections, or turning insertion points into selections when moving lines down.
  • Fix several issues in documents whose line endings are not LF, such as deleting only part of a CRLF line ending during multi-cursor editing, inserting comment delimiters at an incorrect position relative to the indentation, or moving the insertion point to an incorrect location after inserting a snippet with line breaks.
  • Fix an issue where selecting or deleting text by word or to the beginning of a line could affect an incorrect range or make the app unresponsive in bidirectional text.
  • Fix several issues with Sort by Pattern, such as the “In descending order” option reversing the order of lines with the same sort key and moving lines that do not contain the sort key to the top.
  • Fix an issue where File Drop snippets swapped the width and height of rotated images, such as photos taken in portrait orientation.
  • Fix an issue where text was positioned too high in lines with some fonts, such as Raanana.
  • Fix an issue where the AppleScript line range property of the selection could return incorrect lines, such as including the next line when the selection ended with a line ending.
  • Fix an issue where the “Refer to encoding declaration in document” option could garble documents that declared UTF-16 but were not saved in UTF-16.
  • Fix an issue where characters that could not be converted were saved as invalid bytes when saving a document in ASCII.
  • [non-AppStore ver.] Fix an issue where File Drop snippets could make the app unresponsive by downloading dropped web URLs.
  • [trivial] Fix an issue where the app could crash when duplicating an item in the file browser if the system used non-Latin digits.
  • [trivial] Fix an issue where the app could crash or stop responding when saving a document in certain encodings if the text contained combining marks that could not be converted.
  • [trivial] Fix an issue where the app could crash when saving a document if the file’s extended attributes specified an unavailable text encoding.
  • [trivial] Fix an issue where non-ASCII characters were lost without warning when saving a document in Non-lossy ASCII.
  • [trivial] Fix an issue where the app could crash while the Warnings inspector was open if the document contained certain sequences of emoji or decomposed Hangul characters that the current text encoding could not represent.
  • [trivial] Fix an issue where the Warnings inspector displayed an incorrect conversion result for yen signs that the text encoding could not represent.
  • [trivial] Fix an issue where the app could crash when replacing text within selections with a regular expression containing \R if a selection ended in the middle of a CRLF line ending.
  • [trivial] Fix an issue where progress could be displayed incorrectly when searching or replacing text within selections.
  • [trivial] Fix several issues with finding or replacing text that contains combining marks, such as the app crashing or not responding when finding or replacing only combining marks with the “Ignore Case” or “Ignore diacritical marks” find option.
  • [trivial] Fix an issue where Multiple Replace could not find text containing line endings if the document’s line endings were not LF.
  • [trivial] Fix an issue in the Find window where pinch zooming did not synchronize the text size between the find and replace fields.
  • [trivial] Fix an issue where regular-expression syntax highlighting in input fields could break for some patterns.
  • [trivial] Fix issues where regular expression conditions in the file scope of folder search did not match names containing certain characters, such as “é”, “が”, or Hangul, and accepted some invalid patterns, such as those with unbalanced parentheses.
  • [trivial] Fix an issue where automatic indentation could treat part of a word as a keyword, such as “then”, if a non-ASCII letter adjoined it.
  • [trivial] Fix several issues with regular-expression-based syntax highlighting, such as highlighting strings or comments in an incorrect range, or the app crashing with certain syntax definitions.
  • [trivial] Fix an issue where syntax highlighting and the outline were not updated if text entered with an input method, such as for Japanese, replaced the selection and was then deleted or canceled before being confirmed.
  • [trivial] Fix an issue where the selection could move to an incorrect range when commenting out lines with block comment delimiters while only line endings were selected.
  • [trivial] Fix several issues with pressing Control-T, such as doing nothing after an emoji at the end of the document, or swapping selected characters or breaking an emoji during multi-cursor editing.
  • [trivial] Fix an issue where the Delete Duplicates command could cause unexpected behavior if lines contained VT (U+000B) or FF (U+000C).
  • [trivial] Fix an issue where the selection after reversing, shuffling, or sorting lines by pattern did not include an empty line moved to the end.
  • [trivial] Fix an issue in the file browser where moving a symbolic link to a folder to the Trash also closed open documents in that folder.
  • [trivial] Fix several issues with snippets, such as replacing variables incorrectly when the name of a dropped file contained a variable, or indenting the subsequent lines too deeply when inserting a snippet with line breaks within the indentation.
  • [trivial] Fix an issue where Shift-Return could be assigned as a keyboard shortcut.
  • [trivial] Fix an issue where a customized shortcut for a command no longer in the menu could remove the default shortcut of another menu command.

Known Issues

  • The text added in CotEditor 7.2.0 is not yet localized in Czech, Polish, and Portuguese.

Full Changelog: 7.1.3...7.2.0-beta

Don't miss a new CotEditor release

NewReleases is sending notifications on new releases.