/angular-ja

repository for Japanese localization of angular.io

Primary LanguageHTMLMIT LicenseMIT

angular-ja

CircleCI

このリポジトリはAngularの公式サイト angular.io を日本語に翻訳するためのものです。

現在は https://angular-ja.firebaseapp.com/ でホストされたサイトを確認できます。

コントリビューター

lacolaco
lacolaco

コントリビューション大歓迎!

この翻訳プロジェクトにはみなさんの協力が必要です。 翻訳プロジェクトについての議論は ng-japan slack#translation チャンネルで進行しています。

やってほしいこと

イシューやプルリクエストをいつでもお待ちしています。

ドキュメントの翻訳

翻訳対象のファイルはaio-jaディレクトリ内に管理されています。 まだ日本語化されていない部分についての翻訳にご協力ください

セットアップ

1. リポジトリのクローン

$ git clone git@github.com:angular/angular-ja.git

2. angular/angularリポジトリのダウンロード

このリポジトリではsubmoduleを使って翻訳元リポジトリと統合しています。

$ git submodule sync
$ git submodule update --init

ローカルでのビルド

ビルドが完了すると、 .tmp/aio/dist ディレクトリにドキュメンテーションサイトが出力されます。 好みのツールで開発サーバーを立ててビルドされたサイトを確認できます。

$ ./build.sh

注意

  • ビルド時間がとても長いので、コーヒーを淹れながら待ちます。
  • MacOSにおいて、ビルド処理の途中でOSのファイルディスクリプタを使い切ってしまうことがあります。 その場合は次のように最大数を増やす必要があります。

meteor/meteor#8057 (comment)

$ echo kern.maxfiles=65536 | sudo tee -a /etc/sysctl.conf
$ echo kern.maxfilesperproc=65536 | sudo tee -a /etc/sysctl.conf
$ sudo sysctl -w kern.maxfiles=65536
$ sudo sysctl -w kern.maxfilesperproc=65536
$ ulimit -n 65536

差分ビルドを使った作業

一度ローカルビルドをおこなった後であれば、.tmp/aio ディレクトリの中で直接ファイルを書き換えて差分ビルドによりスムーズに作業できます。 yarn serve-and-syncコマンドの実行中であれば、.tm@/aio内のファイルへの変更があるときに自動でリビルドできます。 ただし.tmpディレクトリ内での作業はGit管理されないので、作業後にaio-jaディレクトリに反映することを忘れないようにしましょう。

$ cd .tmp/aio
$ yarn serve-and-sync # localhost:4200でサーバーが立ち上がります

翻訳作業

現在の翻訳ワークフローは以下のとおりです。

1. 翻訳で置き換えたいファイルを aio-ja ディレクトリにコピーする

aio-ja ディレクトリは origin/aio ディレクトリと同じ階層構造をもっています。 aio-ja ディレクトリの中のファイルはビルド時に origin/aio の中のファイルを上書きします。

2. 翻訳する

コピーしたファイルを翻訳します。かならずしもファイル全体を翻訳してしまう必要はありません。

3. プルリクエストを作成する

angular/angular-jaをフォークしたリポジトリに変更をプッシュし、フォーク元にプルリクエストを提出します。 プルリクエストはレビューされたのち、問題がなければマージされます

aioディレクトリの構成

基本的には contentディレクトリ内のMarkdownファイルに対して翻訳をおこないます。 その他必要に応じて、アプリケーションのソースコードにも手を加えます。

https://github.com/angular/angular/tree/master/aio

origin/aio/
├── README.md
├── content # MarkdownやHTMLなどで書かれたドキュメンテーションのリソースファイル。主にここのファイルを翻訳する
│   ├── examples # サンプルコードのソースコード
│   ├── guide # ガイドドキュメントのリソース
│   ├── images # ドキュメンテーション中の画像
│   ├── marketing # リンク集やイベント情報など、Angular紹介用のリソース
│   ├── navigation.json # サイトの各種ナビゲーションの管理ファイル
│   └── tutorial # チュートリアルのリソース
├── src # angular.ioアプリケーションのソースコード
...