ドキュメント翻訳で学ぶ新しい言語仕様・機能
by
Haruki Tazoe
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
ドキュメント翻訳で学ぶ 新しい言語仕様・機能 2024/12/08 PHP勉強会in広島 vol.2 @jdkfx
Slide 2
Slide 2 text
自己紹介 - 名前 - 田添春樹 / @jdkfx - やっていること - フロントエンドの開発体験向上 - OSS貢献としてドキュメント整備やリファクタリングなど - よく使う技術 ( 使っていた技術 ) - PHP, JavaScript, Vue.js, Svelte … - PHPとは学生時代に出会う - 個人開発や自作フレームワークの制作 - 最近はViteにハマっている
Slide 3
Slide 3 text
アジェンダ 1. はじめに 2. PHP 8.4 で追加された仕様 3. 日本語ドキュメントについて 4. 翻訳に貢献しよう 5. デモ
Slide 4
Slide 4 text
目的 - 新バージョンのキャッチアップ方法について知る - 日本語ドキュメントについて知る - ドキュメント翻訳について知る
Slide 5
Slide 5 text
2024/11/21 PHP 8.4 リリース 🎉
Slide 6
Slide 6 text
追加された仕様・機能🔧
Slide 7
Slide 7 text
- プロパティフック - 非対称可視性 - #[\Deprecated] アトリビュート - BCMath のオブジェクト API - etc. PHP: PHP 8.4 Release Announcement https://www.php.net/releases/8.4/ja.php
Slide 8
Slide 8 text
一例として、DOMNode - DOMNode::compareDocumentPosition() - 2つのノードの位置を比較し 位置関係を定数のビットマスクで返す - 関連する定数 - DOCUMENT_POSITION_* PHP: DOMNode - Manual https://www.php.net/manual/ja/class.domnode.php PHP: DOMNode::compareDocumentPosition - Manual https://www.php.net/manual/ja/domnode.comparedocumentposition.php
Slide 9
Slide 9 text
No content
Slide 10
Slide 10 text
No content
Slide 11
Slide 11 text
int(20) // DOMNode::DOCUMENT_POSITION_CONTAINED_BY | DOMNode::DOCUMENT_POSITION_FOLLOWING もう一方のノードが子孫である int(16) もう一方のノードが後に続く int(4)
Slide 12
Slide 12 text
int(2) // DOMNode::DOCUMENT_POSITION_PRECEDING もう一方のノードが参照ノードより前にある int(2)
Slide 13
Slide 13 text
日本語ドキュメントについて📕
Slide 14
Slide 14 text
No content
Slide 15
Slide 15 text
このマニュアルについて - このマニュアルは、関数リファレンスを中心として、言語リファレンス、 PHP の主な機能、そして、その他の付録から構成されています。 - 多くの我々の活動を支援してくれる人がおり、また、過去にこのプロジェク トを支援してくれた人がいます。 - 本マニュアルの日本語への翻訳は、PHP マニュアル翻訳プロジェクトにて行 われています。 PHP: 序文 - Manual https://www.php.net/manual/ja/preface.php
Slide 16
Slide 16 text
https://x.com/KentarouTakeda/status/1854461443133038899
Slide 17
Slide 17 text
https://x.com/KentarouTakeda/status/1854461446580732175
Slide 18
Slide 18 text
https://x.com/KentarouTakeda/status/1854461446580732175 もしかして貢献チャンスでは...?
Slide 19
Slide 19 text
https://x.com/KentarouTakeda/status/1854461446580732175 翻訳しながら新しい仕様・機能を 勉強できるのでは...?
Slide 20
Slide 20 text
No content
Slide 21
Slide 21 text
No content
Slide 22
Slide 22 text
翻訳に貢献しよう!🤝
Slide 23
Slide 23 text
作業手順 - 翻訳に取り組めそうなプルリクエストを見つける - 環境を構築 - 差分から英文を移植して翻訳 - セルフプレビュー - プルリクエストを作成
Slide 24
Slide 24 text
プルリクエストを見つける - 以下の二つを主に利用 - php/doc-en - https://github.com/php/doc-en - ドキュメントの最新の変更を追いかけることができる - php/doc-ja - PHP 8.4 マニュアル翻訳状況 - https://github.com/php/doc-ja/issues/150 - 熟練度順にタスクがリスト化されているので取り組みやすい
Slide 25
Slide 25 text
環境を構築 - php/doc-ja の README 各種いろいろ読んでください - issue コメントに方法を詳しく書いてくださっている方がいます - https://github.com/php/doc-ja/issues/150#issuecomment-249516 3753 - jdkfx/phpdoc を利用 - https://github.com/jdkfx/phpdoc - Makefile で簡単にセットアップからビルド、HTML 生成まで可能
Slide 26
Slide 26 text
差分から英文を移植して翻訳 - File Changed を見て、対象のファイルを日本語マニュアルで編集 - ファイルのリビジョンを確認 - 作業ファイルのコミットハッシュを確認 - 翻訳中のファイルのコミットハッシュ前後で作業があれば、 それも合わせて作業するかも(内容による)
Slide 27
Slide 27 text
セルフプレビュー - ビルドとHTMLファイルの生成 - make build - make xhtml - ブラウザで確認 - make open
Slide 28
Slide 28 text
プルリクエストの作成 - コミットしてプッシュ - 自身のプルリクエスト内に取り組んだ php/doc-en のプルリクエストを記載 - その他メンテナーに伝えるべき内容を記載
Slide 29
Slide 29 text
デモ✍
Slide 30
Slide 30 text
余談 - ちょっとしたことでも、環境を整えたことで、よかったこと - 予想よりも多くの方から反応をいただけた - 自分と同じ悩みで取り掛かる手を止めてしまった方がいることを知った - 初めてのOSS貢献をされた方がいた
Slide 31
Slide 31 text
壁のない、ゴールまで一直線に登ることができる山 やりたいことを一直線にできるため、 作業を始める前から完了までにストレスがかからない
Slide 32
Slide 32 text
壁があり、ゴールまで一直線に登ることができない山 やりたいことを一直線にできないため、 取り組む作業以外のことに注力しなければならず ストレスがかかってしまうことも...
Slide 33
Slide 33 text
壁を取り除いてあげることでたくさんの人の助けに スムーズに作業が行えるように環境を整えたり サポートしたりすることは大事なこと
Slide 34
Slide 34 text
No content