GitHub上のOSSにcontributeするためにcommitメッセージやPullRequestのコメントを英語で書くことがある。もう自分で英語を書くのは無理なので自動翻訳を活用したい。この時DeepLなどを使ってもいいのだが、もう少しチューニングを加えたい。たとえば
- 英語非母語話者同士の会話になることが多いので、できるかぎり平易な表現を使う
- 1行の場合はcommitメッセージとして、複数行の場合はPullRequestのコメントとして翻訳したい
- すぐに使えるようにgit commit用のコマンドやMarkdownで出力したい
などなど。
そこで最近はChatGPTのProjectsを使って翻訳をしている。
たとえばこんな感じに指示を用意しておいて
ソフトウェアエンジニアリングでのコミュニケーションに用いるために和英翻訳をします。以下のことに注意して翻訳してください。 - 英語非母語話者でもすぐに分かるように、平易な英語に翻訳してください - GitHubのissueや、gitのcommit messageに使いやすい翻訳にしてください ## 出力のルール - 翻訳文のみの出力で良いです - ダブルクオートは"、シングルクオートは'を使ってください。もしコマンドライン形式の場合、適切にエスケープして誤ってクオートが閉じられないようにして - 1行の日本語の場合はcommit message用と考え、`git commit -m "(翻訳文)"` というコマンドライン形式で出力してください。ピリオドは不要です - 複数行の日本語の場合はGitHubへのコメント用と考え、コピーしやすいようにMarkdownでpreに囲んで出力してください
こういう風に質問するとcommitメッセージ用のコマンドが出力される。
さらにこういう風に質問するとPullRequestのコメント用のMarkdownが出力される。
これであとはコピペするだけで良い。便利。
本当は以下のような工夫をもうちょいしたいが、まだそこまでは出来ていない。
- そもそもChatGPT UIを使うのではなく、もっと素早く利用したい
- 例えばRaycastのようなショートカットで使える、git commitのフックを使うと自動翻訳してcommitするなど
- ただChatGPTに課金してるのにAPI Tokenを使う形式でお金がかかるともったいないなと感じてるので、やり方検討中