[開源作品] 譯文管理系統

Yusure發表於2018-07-24
Author Sure Yu
E-mail yusureyes@163.com

專案介紹

  這是一個用於管理多語言資源的譯文管理系統,由於使用者分佈於全球各地,公司的 App 需要顯示多語言,Android 和 iOS 有大量的譯文需要管理,手工維護極其麻煩,於是這個系統誕生了,方便 translator 在平臺翻譯,翻譯完成之後,開發者將一鍵匯出程式碼,直接放置在專案中。

  • 注意 translator 需要自己找人翻譯,本系統只是維護譯文資源,並不會自動翻譯。

    公司 App 下載方式:軟體商店搜尋 Yeelight

軟體架構

PHP 7.1+
Mysql 5.6+
框架: Laravel 5.3
後臺系統: iDashboard

安裝教程

  1. git clone 專案至本地目錄
  2. composer install
  3. cp .env.example .env 修改配置資訊
  4. php artisan key:generate 生成 APP_KEY
  5. database/sql 找到 SQL 檔案匯入資料庫
  6. 配置 Apache / Nginx 站點,瀏覽訪問

如果 storage 不可寫,請賦許可權:
chmod -R 777 storage

演示地址

http://translate.demo.yusure.cn
管理員賬號密碼: admin 123456
Translator賬號密碼: translator 123456

使用說明

如何錄入源語言(中文)
  1. 建立應用(可以後期建立):可以將多個 Project 分配到一個應用下,因為專案迭代會出現多個 Project,為方便管理,增加應用管理。
  2. 建立專案:點選 Project List,勾選需要翻譯的語言,右上角新增專案
  3. 回到 Project List,點選 “錄入” 按鈕,一個小鍵盤的圖示,錄入 key(程式用的) 和 源語言(中文)
如何配置待翻譯語言:

修改配置檔案config/languages.php

return [
    /* 英語 */
    'en'    => 'English',
    /* 韓語 */
    'ko'    => 'Korean',
    /* 法語 */
    'fr'    => 'French',
];
原文錄入完成之後,如何邀請 translator 幫忙翻譯:
  1. 首先幫 translator 建立好賬號,併傳送給他。
  2. 點選檢視 Project,在語言管理頁面,點選紅色的小手圖示邀請按鈕,將其賬號勾選提交。

  3. 在邀請的圖示後面是鎖定功能,鎖定之後,translator 不能修改譯文,在 translator 完成翻譯之後,該語言的譯文自動鎖定,如果需要修改,管理員可以隨時解鎖。
  4. 最後面是給 translator 傳送郵件提醒,郵箱是幫 translator 建立賬號時新增的,發信配置在 .env 檔案。
如何配置對照語言:

例如翻譯英文需要參考中文,翻譯法語需要英文作為參考,那麼就需要修改這個配置檔案
config/translator.php

如何匯出譯文:

當譯文都 ready 的時候,需要匯出譯文,匯出譯文有兩種方式:第一種基於語言去匯出,第二種針對整個應用(可以合併多個 Project)可以匯出壓縮包。
目前可以匯出三種格式 Android xml、iOS strings、RN js。

translator 視角
  1. 支援對譯文資源進行評論
  2. 支援標記有問題的譯文資源,方便後續定位。(注意必須要處理掉所有標記才能完成翻譯)

專案截圖

本專案在公司內部執行半年有餘,經過很多細節優化,為 Android、iOS 工程師提供了便利,現在將其開源出來,為開源事業添磚加瓦!
本專案為開源專案,允許把它用於任何地方,不受任何約束,歡迎 star、 fork 專案。

相關文章