Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

window 配下のファイルを UTF-8 (BOM付) に変更 #284

Merged
merged 1 commit into from
Jul 25, 2018

Conversation

kobake
Copy link
Member

@kobake kobake commented Jul 18, 2018

該当フォルダ内の文字コードをすべて UTF-8 (BOM付) に変換しました。

cd sakura_core/window
nkf --overwrite --oc=UTF-8-BOM *.cpp
nkf --overwrite --oc=UTF-8-BOM *.h

確認方法

WinMerge で変更前と変更後を比較すると、文字コード以外の変更が無いことが確認できます。

関連 Issues

ソースコードのUnicode化 #112

特記事項

これまでの経緯から、マルチバイトを含む文字列リテラルについてもファイルのエンコーディングを変更したところで悪影響が起こらないように感じています。

今回の変更ではマルチバイトを含む文字列リテラルを含むファイルも含めてファイルエンコーディングの変更を行っています。

主に動作影響について対応前後で挙動に変化がないことのご確認をいただけると助かります。

@kobake kobake changed the title windows 配下のファイルを UTF-8 (BOM付) に変更 window 配下のファイルを UTF-8 (BOM付) に変更 Jul 18, 2018
@ds14050
Copy link
Contributor

ds14050 commented Jul 19, 2018

プルリクエスト(#265 #266 #268 #269 #270 #271 #272 #273 #274 #275 #276 #277 #278 #279 #280 #281 #282 #283 #284)の間で行った比較について書きます。

@ds14050
Copy link
Contributor

ds14050 commented Jul 19, 2018

  1. PR ごとに 32ビットDebug版と64ビットDebug版の artifact (zip ファイル) を選んで、1つのフォルダにダウンロードしました。
    Debug バージョンを選んだ理由は、最適化がかからずソースコードの変化を反映しやすい Debug バージョンで実行ファイルに変化が見られなければ、Release バージョンでも変化がないだろうと考えたからです。第2の理由はダウンロードが思いの外大変だったから……。

  2. 同じフォルダに sakura_sha256.batsakura_sha256.rb の2つのファイルを置きました。

  3. 2つのうちのバッチファイルを実行しました。

  4. バッチファイルと同名のフォルダの中に、32ビット/64ビットそれぞれに3種類のファイルが作成されました。
    4-1. ziplist.Win32-Debug.txt / ziplist.x64-Debug-alpha.txt
    4-2. fclist.Win32-Debug.txt / fclist.x64-Debug-alpha.txt
    4-3. fclist2.Win32-Debug.txt / fclist2.x64-Debug-alpha.txt
    4-1 と 4-2 は中間ファイルです。

  5. 4-3 のファイル(fclist2.*.txt)を眺めました。
    3カラム目は fc_arg2 の該当範囲を16進数、10進数、UTF-16LEと見なしたときの文字列として表現したものです。

    明らかな相違点は、コミットハッシュ(短)、コミットハッシュ(長)、PR番号、build番号です。

    その他に16バイトと2バイトの違いがいくつかと、コミットハッシュ(長)に見えるがEXEと直接は関係のない文字列がひとつありますが、内容は不明です。

    サクラエディタで「選択行の昇順ソート」を実行するとEXEファイルの決まった場所だけに違いがあることがよくわかります。

  6. 気になる相違点はないと思います。←疑ってください

@berryzplus
Copy link
Contributor

お疲れ様です。

眺めました

www

すみません、ちょっとウケたので反応してみました。

cd sakura_core/window
nkf --overwrite --oc=UTF-8-BOM *.cpp
nkf --overwrite --oc=UTF-8-BOM *.h
@kobake
Copy link
Member Author

kobake commented Jul 24, 2018

#290 を適用するため rebase しました

@m-tmatma m-tmatma added the refactoring リファクタリング 【ChangeLog除外】 label Jul 24, 2018
@m-tmatma m-tmatma added this to the next release milestone Jul 25, 2018
@m-tmatma
Copy link
Member

CDlgAbout.asm 以外のファイルが以下のビルドで一致しているのを確認しました。
https://ci.appveyor.com/project/sakuraeditor/sakura/build/1.0.456
https://ci.appveyor.com/project/sakuraeditor/sakura/build/1.0.481

@m-tmatma m-tmatma merged commit 95a55e9 into sakura-editor:master Jul 25, 2018
@kobake kobake deleted the window-utf8 branch July 25, 2018 12:29
@ds14050 ds14050 added the refactoring リファクタリング 【ChangeLog除外】 label Sep 18, 2018
HoppingTappy pushed a commit to HoppingTappy/sakura that referenced this pull request Jun 11, 2019
window 配下のファイルを UTF-8 (BOM付) に変更
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
refactoring リファクタリング 【ChangeLog除外】
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants