All Projects → ksoichiro → Gitlab I18n Patch

ksoichiro / Gitlab I18n Patch

Licence: mit
Unofficial Japanese translation for GitLab Community Edition.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Gitlab I18n Patch

Frenchkiss.js
The blazing fast lightweight internationalization (i18n) module for javascript
Stars: ✭ 776 (+691.84%)
Mutual labels:  translation, i18n
Webfactoryicutranslationbundle
Enables ICU message formatting for translations in Symfony applications.
Stars: ✭ 27 (-72.45%)
Mutual labels:  translation, i18n
Django Rosetta
Rosetta is a Django application that eases the translation process of your Django projects
Stars: ✭ 806 (+722.45%)
Mutual labels:  translation, i18n
I18next
i18next: learn once - translate everywhere
Stars: ✭ 5,971 (+5992.86%)
Mutual labels:  translation, i18n
Gettext Go
🆎 GNU gettext for Go (Imported By Kubernetes)
Stars: ✭ 66 (-32.65%)
Mutual labels:  translation, i18n
Translation
The Translation component provides tools to internationalize your application.
Stars: ✭ 6,196 (+6222.45%)
Mutual labels:  translation, i18n
Satakieli
Satakieli is a i18n library that provides identical API for ClojureScript and Clojure programmers. Localized messages can be written using ICU MessageFormat syntax.
Stars: ✭ 24 (-75.51%)
Mutual labels:  translation, i18n
Angular Translate
Translating your AngularJS 1.x apps
Stars: ✭ 4,414 (+4404.08%)
Mutual labels:  translation, i18n
React Intl Hooks
React hooks for internationalization without the hassle ⚛️🌍
Stars: ✭ 64 (-34.69%)
Mutual labels:  translation, i18n
Atom I18n
:atom: One Atom i18n Package for Any Locale 🌏 🌎 🌍
Stars: ✭ 56 (-42.86%)
Mutual labels:  translation, i18n
Mobility
Pluggable Ruby translation framework
Stars: ✭ 644 (+557.14%)
Mutual labels:  translation, i18n
Transloco
🚀 😍 The internationalization (i18n) library for Angular
Stars: ✭ 1,185 (+1109.18%)
Mutual labels:  translation, i18n
Fluent.js
JavaScript implementation of Project Fluent
Stars: ✭ 622 (+534.69%)
Mutual labels:  translation, i18n
React I18next
Internationalization for react done right. Using the i18next i18n ecosystem.
Stars: ✭ 6,942 (+6983.67%)
Mutual labels:  translation, i18n
Gettext
PHP library to collect and manipulate gettext (.po, .mo, .php, .json, etc)
Stars: ✭ 578 (+489.8%)
Mutual labels:  translation, i18n
Translatedjs
Internationalization and localization for JavaScript and Node.js
Stars: ✭ 17 (-82.65%)
Mutual labels:  translation, i18n
Ember Intl
Localization library for any Ember Application or Addon
Stars: ✭ 412 (+320.41%)
Mutual labels:  translation, i18n
Laravel Translation Loader
Store your translations in the database or other sources
Stars: ✭ 446 (+355.1%)
Mutual labels:  translation, i18n
Parrot
Self-hosted Localization Management Platform built with Go and Angular
Stars: ✭ 967 (+886.73%)
Mutual labels:  translation, i18n
Elm I18n
Localization for Elm apps as a pre-build phase with import and export between elm code and CSV/PO
Stars: ✭ 68 (-30.61%)
Mutual labels:  translation, i18n

gitlab-i18n-patch

Build Status

GitLab Community Editionを勝手に日本語化していくプロジェクトです。

GitLab は i18n に対応しないとのことですが、
社内で使う場合等で英語であるために導入の抵抗があるケースのために作っています。

このパッチを適用することによって生じたいかなる問題についても責任は負いかねます。
各自の判断でご利用ください。

注意: GitLab v9.2 より公式に国際化がサポートされ、v9.4 より日本語も選択できるようになっています。このパッチを適用される前に、公式の日本語の利用についてもご検討ください。

対応バージョン

patches ディレクトリ内に GitLab のバージョンごとにパッチを格納しています。
バージョンが少しでも異なると適用できませんので、完全に一致するバージョンを選んでください。
v8.3.0 以降のパッチは i18n-patch を利用して生成しています。
ご希望のバージョンが登録されていない場合は、ご自身で生成することができます。

動作確認環境

ソフトウェア バージョン等
マシン MacBookPro
OS OS X 10.12
VM VirtualBox 5.1.4
ゲスト OS Ubuntu Precise 64 VirtualBox
GitLab GitLab Omnibus Package
Vagrant Vagrant 1.8.5
Docker 17.03.1-ce
Node.js v7.8.0

適用方法

前提

GitLab Community Edition のパッケージがインストールされているものとします。

基本

patches/[GitLabバージョン]/app_ja.patchがパッチです。
パッチを適用する GitLab のバージョンと完全に一致するものを選びます。
リポジトリをクローンするか、wget、curl などで直接パッチファイルをダウンロードします。
以下は wget で v8.16.6 のパッチを取得する例です。

$ wget https://raw.githubusercontent.com/ksoichiro/gitlab-i18n-patch/master/patches/v8.16.6/app_ja.patch

例えばホームディレクトリにパッチファイルを配置した場合、以下で適用します。

$ cd /opt/gitlab/embedded/service/gitlab-rails
$ patch -p1 < ~/app_ja.patch

なお、このプロジェクトでは過去には GitLab のバージョンごとにブランチを用意して
タグづけ(リリース)していたため、master ブランチ以外のブランチ
v0.24.1 などのリリースが残っていますが、翻訳の作成方法を変更したため、これらは現在運用していません。
master ブランチの最新のコミットを利用してください。

既に稼働させている場合

Javascript ファイルを変更するため、パッチ適用後にプリコンパイルされたファイルを一度削除してプリコンパイルし直してください。

例:

$ cd /opt/gitlab/embedded/service/gitlab-rails
$ rm -rf public/assets
$ export PATH=/opt/gitlab/embedded/bin:$PATH
$ bundle exec rake assets:precompile RAILS_ENV=production

動作確認

Vagrant での動作確認

各バージョンのパッチの動作確認のために、Vagrant で日本語反映版の GitLab を起動できます。

起動

以下のコマンドで、指定のバージョン用の仮想マシン起動、GitLab Omnibus パッケージダウンロード、パッチ適用を行います。
例えば v6.6.4 ならば以下のようにします。

$ vagrant up v664

停止

以下で停止します。

$ vagrant halt

破棄

以下で仮想マシンを破棄します。

$ vagrant destroy

ポート番号

Web のポート番号(80)は、 config/gitlab.yml に定義する base_port の番号を起点として
バージョン番号(v6.6.4 なら 664)を加えた番号にポートフォワードします。
例えば、 base_port: 9000 の状態で vagrant up v664 を実行した場合は
http://localhost:9664 で GitLab にアクセスできます。
v7.10.0 の場合は(番号が飛びますが)7100 + 9000 で 16100 です。

Docker での動作確認

GitLab Community Edition の Docker イメージが公開されているものについては、Docker を使って動作確認できます。
公開されているイメージ(タグ)についてはDocker Hubで確認してください。
9.0.4-ce.0 のように、バージョン-ce.0の形式になっているタグがあれば、
日本語化版をビルドして利用することができます。

dockerコマンドやdocker-composeコマンドを利用して手作業でビルドしていただくことができますが、以下のような部分をバージョンに応じて切り替える手間を省き、手軽に動作確認できるよう Node.js/npm のスクリプトでラッピングしています。

  • ソースイメージのバージョン(Dockerfile の FROM)
  • 適用するパッチのバージョン
  • マウントする各種ディレクトリ

起動

以下を実行します。
最後のバージョンは、必要に応じて読み替えてください。

$ npm run docker up v9.0.4

アクセスできるようになるまでにはしばらく時間がかかります。

停止

以下を実行します。
最後のバージョンは、必要に応じて読み替えてください。

$ npm run docker down v9.0.4

ビルド

以下を実行します。
最後のバージョンは、必要に応じて読み替えてください。

$ npm run docker build v9.0.4

その他の操作

各種ファイルは .docker/バージョン ディレクトリに生成され、ビルドされています。
データやファイルもこのディレクトリに生成されています。
上記以外の操作については、このディレクトリに移動して docker-compose コマンドで行なってください。

ポート番号

Vagrant の場合と同様です。
v9.0.4 を起動した場合は http://localhost:9904 でアクセスできます。

ライセンス

Copyright (c) 2014 Soichiro Kashima
Licensed under the MIT license.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].