2022年5月リリースのCotEditor 4.2.0から、改行コードの扱いが変更されました。バージョン4.2.0以前では内部的には改行コードはすべてLF (U+000A)として扱っていましたが、バージョン4.2.0以降は書類ファイルの実際の改行コードをそのまま扱います。そのため、とくに以前のバージョンを使っていたユーザはこの変更を意識し、いくつかの設定で変更が必要になる場合があります。
最新のCotEditorがどう改行を扱うかについて詳しくは、多様な改行コードを扱うを参照してください。
従来のCotEditorは内部的にすべて改行コードをLFで処理していたため、書類の実際の改行コードに関わらず\nを改行を認識する正規表現パターンとして利用できました。CotEditor 4.2.0以降では、\nは改行コードにLFを用いる書類でしか改行に一致しなくなります。従来のように書類に改行コードの如何に関わらず改行に一致させたい場合は\nでなく\Rを用いてください。
\Rは、CotEditorが使用しているICU正規表現エンジンにおいて、改行を表現する文字全般に一致するメタ文字です。U+000A (LF), U+000B, U+000C, U+000D (CR), U+0085, U+2028, U+2029, およびU+000D U+000Aの組み合わせ (CRLF)を改行コードとして認識します。
改行コードとしてLFのみを想定したスクリプト処理や正規表現パターンは、CotEditor 4.2.0以降LF以外の改行コードを持つ書類で意図した挙動をしなくなる可能性があります。これらユーザ設定はユーザ自身が設定を変更する必要があります。
CotEditorで改行が関わるユーザ設定としては、以下の設定項目が該当します:
正規表現を用いない通常の文字列での検索と置換では、検索/置換文字列内に改行が含まれる場合、その改行は検索対象の書類で用いられている改行コードと同一の改行コードであると想定して使用されます。
これは、たとえば、改行コードCRを含む文字列を(正規表現でない)検索文字列として使用して改行コードLFの書類を検索した場合、検索文字列の改行はすべてLFとして使用される、ということです。検索で改行コードを厳密に扱いたい場合は、正規表現を利用してください。
一方、置換においては、置換文字列に含まれる(\nのようなメタ文字での指定も含む)すべての改行コードは書類の改行コードと同一の改行コードに差し替えられます。現状は書類の改行コード以外の改行コードで置換する方法は提供されておらず、これは以前のCotEditorと同じ仕様となります。
検索と置換での改行について詳しくは、改行を検索/置換するを参照してください。