次のような特定の行についてソースをスキャンしたいと思います。
$obj->setLabel('output this text')->someOtherMethod(etc);
また:
$this->view->title = "I want this text";
もちろんコードはPHPです。Zend フレームワークを使用しています。それは本当に問題ではありません。
私はLinuxを実行しており、パイプを理解しています。私はパイプできると思います:
grep --include=*.php -R 'setLabel(' .
awkなどに。「1つ以上の」文字のそれぞれを、引用符で囲み、コンマで終了する独自の行に出力したいだけです。その時、CSV 翻訳ファイルはそれほど遠くありません。
一度に 1 つのパターンのみを検索することを期待しています。最初に、すべての「ラベル」などを取得します。
注: POedit などについては知っています。静的 UI の翻訳には CSV ファイルを使用しています。私はそれを変えるつもりはありません。「Excel」を使いたいだけのサードパーティが編集できる必要があります(身震い...)
これは私が最終的に使用したものです:
grep -oh --include=*.php -R -E "setLabel\('[^']*'\)" . > labels.txt
次に、不要な「setLabel(」および「)」をテキスト エディターで削除します。しかし、私はよりクリーンなワンライナーに非常に熱心です。あぁ…コードゴルフもある。あの人たちに聞いてみようかな…