改行コードについて

取り扱える改行コード

複数の改行コードが混在したファイルも取り扱えるようにする
CR00LF00 ( 0d 00 0a 00 ) hint廃止しました。(sakura:1.3.4.1)
CRLF ( 0d 0a )
LFCR ( 0a 0d ) hint廃止しました。(sakura:2.0.0.0)
CR ( 0d )
LF ( 0a )

Unicode/UniocdeBEのみ以下の改行コードを読み書きできます。(sakura:2.1.0.0 以降)
UTF-8/UTF-7/一部コードページでも以下の改行コードで読み書きできます。(sakura:2.2.0.0以降)
また「改行コードNEL,PS,LSを有効にする」オプション(編集タブ)で、改行コードとして利用しないようにすることもできます。(sakura: mocaskr_ver 004以降)
NEL ( 85 )
LS ( 2028 )
PS ( 2029 )

ファイル読み込み時の処理

ファイルを読み込む際は改行単位で行バッファに追加していく。

クリップボードへコピーする処理

矩形選択時
"MSDEVColumnSelect"形式のデータをクリップボードに格納
CF_UNICODETEXT形式のデータをクリップボードに格納
"SAKURAClipW"形式のデータをクリップボードに格納
線形選択時
CF_UNICODETEXT形式のデータをクリップボードに格納 "SAKURAClipW"形式のデータをクリップボードに格納
未選択時
カーソル位置のレイアウト行データを線形選択時の方法でコピーし、 加えて、共通設定のランモード貼付設定が有効になっている場合、 "MSDEVLineSelect"形式と "VisualStudioEditorOperationsLineCutCopyClipboardTag"形式のデータをクリップボードに格納

クリップボードから貼り付ける処理

クリップボードの形式を調べる
"MSDEVColumnSelect"形式がある場合 "MSDEVLineSelect"形式または "VisualStudioEditorOperationsLineCutCopyClipboardTag"形式がある場合 "SAKURAClipW"形式がある場合 CF_UNICODETEXT形式のデータがある場合 CF_OEMTEXT形式のデータがある場合

[Enter] キー入力時の処理

挿入される改行コードの種類はファイル読み込み時に決定する。
[Enter] キー入力時は、その改行コードに変換して格納する。

アンドゥ・リドゥバッファへの改行コード格納形式

前バージョンは改行コードを\rで表現していた。
新バージョンはCRLF等をそのまま格納する。
バッファからの取り出し処理の際、複数種類の改行コードを判別する。

編集画面での記号表記について

1.6.0.0より改行コードの表記が変わりましたので、ご注意ください。 なお、これは以前のバージョンが間違えていたわけではなく、過去の経緯によるものなので仕様変更と理解してください。