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

sakura.hhpsakura_core\sakura.hh` を参照するのをやめてコメントをカットした sakura.hh を使うようにする (python 版) #930

Merged
merged 5 commits into from
May 28, 2019

Conversation

m-tmatma
Copy link
Member

PR の目的

sakura.hhpsakura_core\sakura.hh` を参照するのをやめてコメントをカットした sakura.hh を使うようにする

カテゴリ

  • リファクタリング
  • ビルド手順
  • CI関連
    • Appveyor
    • Azure Pipelines

PR の背景

#929 の説明欄に詳説しているが、「 #807: HTML ヘルプの文字コードを UTF-8 BOM 付きに変換する 」
で sakura.hhp のコンパイルに失敗する問題を回避するため

PR のメリット

HTML ヘルプの文字コードを UTF-8 BOM 付きに変換しても CI でビルドできる。

PR のデメリット (トレードオフとかあれば)

HTML Help のビルドに python が必要になる。

PR の影響範囲

HTML Help のビルド

関連チケット

参考資料

@m-tmatma
Copy link
Member Author

メモ

方針がまだ決まってないので、ドキュメントは変更してません。

@berryzplus
Copy link
Contributor

Locale Emulator で HHC.exe を日本語起動できそうなので保留中。

@m-tmatma
Copy link
Member Author

m-tmatma commented May 27, 2019

この PR はこのまま進めてもいい気がします。
理由はこのPR はUTF 8 でのコンパイルエラーを修正しますが
ロケールを修正する対応と矛盾しないからです。

また sakura.hh は UTF8 なので、ロケールを shift jis にしたところで
問題が発生する可能性があるからです。

python を必須にしたくないということであれば #929 に記載した別の言語を使う選択肢もあります

@m-tmatma
Copy link
Member Author

↑ 誤植修正

@berryzplus
Copy link
Contributor

Locale Emulatorの件とは別に考えても良いと思ってます。

「コメントをカットする」=「ASCIIにする」なんですね、要するに。

HHCがsjisしか扱えないとするとutf8も無理なわけで。

コメントだからと残しておくと、また行末記号を取りこぼす怪現象が起きそうな地雷ゾーンになりそうで怖いです:sob:

Pythonの必須化については、既に必須みたいな感じになのでこだわるポイントじゃなさそうに思っています。必須化するならfind-toolに入れたいですが、後追いでいいんじゃまいかと思っとります。

@m-tmatma m-tmatma marked this pull request as ready for review May 27, 2019 12:50
@m-tmatma
Copy link
Member Author

draft pr を解除しました

@m-tmatma
Copy link
Member Author

ドキュメント忘れてた

@m-tmatma
Copy link
Member Author

ドキュメント追加しました。
Azure Pipelines に関しては詳細なドキュメントをいれていないので省略しました。

Copy link
Contributor

@berryzplus berryzplus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

問題ないと思います。

python3にパスを通した状態で build-chm.bat を実行し、
コメントが削られた help/sakura.hh が生成されたのを確認しました。
行末に空白が残っていたのは見なかったことにする感じで 😄


# 引数で指定した文字列から改行コードを取り除く
def clipEndOfLine(line):
return line.rstrip('\r\n')
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

関数名には突っ込まない方針がいいのかな?と思いつつ・・・。

ニュアンス的には trimかstripじゃないのかな、と。

return line.rstrip('\r\n')

def clipCommet(line):
return re.sub(r'//.*', r'', line)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

raw文字列。C++的にも LR"(//.*)" と書けるようになってますね。

for line in fin:
text = clipEndOfLine(line)
text = clipCommet(text)
fout.write(text + "\r\n")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ん?と思いましたが、生成された help/sakura.hh の行末は正しく出力されていました。


if __name__ == '__main__':
if len(sys.argv) < 3:
print ("usage: " + os.path.basename(sys.argv[0]) + " <src file> <dst file>")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

あえて 2系&3系 両対応で書いてある雰囲気を感じました。
個人的には python3 専用でいいような気がしますが。

@m-tmatma m-tmatma added this to the v2.4.0 milestone May 28, 2019
@m-tmatma m-tmatma merged commit c0c4a19 into sakura-editor:master May 28, 2019
m-tmatma added a commit that referenced this pull request Jun 3, 2019
(#930 の不備修正) help\sakura\sakura.hh が存在しない環境で chm をビルドしたときにエラーメッセージが出るのを修正
HoppingTappy pushed a commit to HoppingTappy/sakura that referenced this pull request Jun 11, 2019
…akura-hh

sakura.hhp` で `sakura_core\sakura.hh` を参照するのをやめてコメントをカットした sakura.hh を使うようにする (python 版)
HoppingTappy pushed a commit to HoppingTappy/sakura that referenced this pull request Jun 11, 2019
…ra_hh_in_advance

(sakura-editor#930 の不備修正) help\sakura\sakura.hh が存在しない環境で chm をビルドしたときにエラーメッセージが出るのを修正
@m-tmatma m-tmatma deleted the feature/generate-sakura-hh branch July 5, 2019 21:55
@KENCHjp KENCHjp added CI appveyor など CI 関連 【ChangeLog除外】 refactoring リファクタリング 【ChangeLog除外】 research 実現可能性調査【ChangeLog除外】 labels Jan 7, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI appveyor など CI 関連 【ChangeLog除外】 refactoring リファクタリング 【ChangeLog除外】 research 実現可能性調査【ChangeLog除外】
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants