Я использую существующий фрагмент в Textmate, чтобы уменьшить количество повторений при создании контроллеров и моделей. Фрагмент отлично работает, но я бы хотел добавить комментарий в конец каждого файла. Например:
/* End of file filename.php */
/* Location: ./system/application/controllers/filename.php */
Первая строка проста:
/* End of file ${TM_FILENAME} */
Вторая часть почти так же проста с переменной TM_FILEPATH:
/* Location: ./${TM_FILEPATH} */
Проблема в том, что я не хочу, чтобы возвращался весь путь к файлу, просто что-нибудь ПОСЛЕ «системы», если она существует, или «приложения», если нет. Например, использование TM_FILEPATH возвращает это:
/* Location: ./path/from/root/system/application/controllers/filename.php */
-or-
/* Location: ./path/from/root/application/controllers/filename.php */
... когда я хочу:
/* Location: ./system/application/controllers/filename.php */
-or-
/* Location: ./application/controllers/filename.php */
Я предполагаю, что это будет какая-то хитрость с регулярными выражениями, но я понятия не имею, как. Любые предложения, пожалуйста?
ОБНОВЛЕНИЕ: Я только что нашел переменную TextMate TM_PROJECT_DIRECTORY, которая содержит информацию, которую я хочу УДАЛИТЬ из TM_FILEPATH, если это облегчает ситуацию.
Итак, тогда как TM_FILEPATH производит это:
/path/from/root/system/application/controllers/filename.php
TM_PROJECT_DIRECTORY производит это:
/path/from/root