Поиск конкретного шаблона в нескольких файлах - PullRequest
1 голос
/ 28 февраля 2012

Я занимаюсь разработкой для Symfony2 на PHP и хотел бы найти все мои ключи перевода в разных видах веток, чтобы легко перечислить их в файле сообщений.

По сути, в моих шаблонах веток переведенный ключ / текст выглядит так:

{{ "my text" | trans }} or {{ "my_key" | trans }} or {{"my_key"|trans}} or {{"my text"|trans}}

Я бы хотел запустить скрипт .sh, в котором можно было бы перечислить все эти ключи / тексты, которые нужно перевести, в мои разные файлы шаблонов.

В другом проекте мне пришлось идентифицировать что-то вроде lang ('MY_KEY'), и команда, которая работала в значительной степени, следующая:

find . -type f -name '*.php' -execdir egrep -o -- "->lang\('[^']*" {} \; | sed -e "s/^.*->lang('//g"

Может быть, с этой же базой, как я могу легко найти мои разные переводы в моих файлах?

Огромное спасибо за вашу помощь!

1 Ответ

1 голос
/ 28 февраля 2012

Я бы предложил что-нибудь под мелодию find . -type f -name '*.php' | xargs egrep -Ho '\{\{[^|]*\|[^}]*\}\}'.Это позволит вам найти вхождения ваших пар ключ / текст в определенные файлы.Получив этот список, вы можете продолжить его обработку, если хотите, например, нормализовать использование и каким-либо образом сопоставить, например, {{ "my text" | trans }} и {{ "my_key" | trans }} вместе как различные варианты использования одного и того же ключа (я не знаю симфонию, поэтому я не понимаюне знаю, действительно ли это эквивалентно или нет и имеет ли смысл такое «свертывание» клавиш).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...