PHP8.3のランディングページがありますね。
右上のChange languageに日本語がありませんね。
深い悲しみに包まれたので増やした。
fork
ランディングページの最下段、View Source
ってところからドキュメントのソースに進めます。
そこで右上のFork
ボタンを押せば、自分のスペースにforkされます。
branch
作業用にブランチを切ります。
名前はわりと適当。
Add Japanese translation
実際に動作する必要があるプログラムとかであれば開発環境の整ったローカルまで持ってくるほうがいいかもしれませんが、今回はただのドキュメントなのでオンラインで十分です。
まあ最近は実行環境とかもオンラインで色々できるみたいですがよくわかりません。
GitHubの画面上でおもむろに.
を押すとオンラインエディタが起動します。
あとはランディングページの本体であるreleases/8.3/languages/en.php
をja.php
にコピペし、中身を和訳していくだけです。
またプルダウンに表示する選択肢などの用意も必要になりますが、そのあたりは過去のプルリクを参考に作成しました。
最後にcommitして終了です。
pull request
commitするとプルリクボタンが出てくるので、それを押したら勝手にプルリクが生成されます。
めでたいですね。
と思ったら、自動でテストが2個走って、そのうちひとつが失敗してしまいました。
もちろん文法が正しいことは確認済です。
なんだこれ?
Change eol from CRLF to LF.
どうやらPHPドキュメントの改行コードはLFだそうです。
私はWindowsなので息を吸うが如くCRLFになっており、そのせいでテストがエラーになってしまいました。
$ php-cs-fixer fix --ansi --config=.php-cs-fixer.php
指摘した人は解決策も教えてくれたのですが、そもそもオンラインエディタでどうやってコマンドを打ち込めばいいのかわかりません。
またオンラインエディタ上では、LFで書いたコードをコピペしてもなぜかCRLFになってしまいます。
というかエディタ上では改行コードの区別が一切できません。
ではどうするかというと、エディタの右下あたりで改行コードを選択できるので単にそこから選べばいいです。
逆に言うと、ファイルの一部分だけLFで残りはCRLFみたいなことはできません。
する必要もありませんが。
最後にcommitすると、追加のcommitは自動的にプルリクにも追加され、テストも自動的に更新されます。
べんりですね。
追加のcommitによってエラーがなくなり、今度こそ正しいプルリクエストになりました。
めでたしめでたし。
ちなみにこの改行コードチェック、2年前はなかったので、その後どこかで追加されたみたいです。
merge
もちろん私はPHP本体側の権限を持っていないので、あとは権限を持っている誰かがmergeしてくれるのを待つだけです。
ということで2023/11/26 16:12にmergeされました。
release
調べてないからわかりませんが、おそらくmasterへのmerge=本番リリースです。
今どきならだいたいそんなかんじでしょう。
ということでおそらく2023/11/26 16:12頃に、日本語版ランディングページが公開されました。
めでたしめでたし。
感想
なんでテストにfailしてるんだ?に回答くれたmumumu氏ですが、PHPマニュアル日本語版を一人で維持しているすごい人です。
バス係数は完全に1です。
PHP8.3がリリースされるだいぶ前から早々と日本語訳されていたマイグレーションガイドも、全部一人でやっています。
いやあ一体何者なのでしょうねこの人。