coffreo/js-translation-extractor 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

coffreo/js-translation-extractor

Composer 安装命令:

composer require coffreo/js-translation-extractor

包简介

Extract translation from javascript source code

README 文档

README

By Coffreo

Build Status codecov

Javascript translations extractor for willdurand/js-translation-bundle

This package is a small project existing to store in one place wonderfuls regexps to properly export translations strings & metas from javascript source files.
It can be used standalone, but it's main goal is to be used in :

Installation

Features

  • extracts following strings from javascript files like a pro
trans('MESSAGE', {param: 'foo'}, 'DOMAIN')
//    ^ 1st parameter is translation message
//                               ^ 3rd parameter is translation domain

transChoice('MESSAGE_WITH_PLURALS', 3, {param: 'foo'}, 'DOMAIN')
//          ^ 1st parameter is translation message      
//                                                     ^ 4th parameter is translation domain

// others parameters aren't extracted because they are useless. 

Note that this is the syntax used by js-translation-bundle

  • allow string delimiters to be " or '
  • extracts multi-lines commands

Usage

use Coffreo\JsTranslationExtractor\Extractor\JsTranslationExtractor;
use Coffreo\JsTranslationExtractor\Model\TranslationCollection;

$extractor = new JsTranslationExtractor();
$translationCollection = new TranslationCollection();

$extractor->extract(<<<FILECONTENT
import Translator from 'bazinga-translator';

export default () => Translator.trans('This is awesome', {}, 'foo');
export {
    bad: () => Translator.trans('This is ugly');
};
FILECONTENT
    , $translationCollection);

$first = $translationCollection->first();
$first->getMessage();  // This is awesome
$first->getLine();     // 3
$first->getContext();  // ['domain' => 'foo']

$second = $translationCollection->get(1);
$second->getMessage();  // This is ugly
$second->getLine();     // 5
$second->getContext();  // []

Found a bug

Please fill an issue with informations to reproduce bug.

If your translated strings are not extracted properly, please provide a sample failing string.

Development

  • Clone repository
  • Execute
make [install]   # to init composer after install
make test        # to run test

TODO

  • Find a way to add and extract desc/meaning values

License

This project is licensed under the MIT License - see the LICENSE file for details

coffreo/js-translation-extractor 适用场景与选型建议

coffreo/js-translation-extractor 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 34.24k 次下载、GitHub Stars 达 1, 最近一次更新时间为 2019 年 04 月 23 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 coffreo/js-translation-extractor 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 coffreo/js-translation-extractor 我们能提供哪些服务?
定制开发 / 二次开发

基于 coffreo/js-translation-extractor 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 34.24k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 16
  • 依赖项目数: 2
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 2
  • Forks: 5
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2019-04-23