Выпущена новая версия программы nhrt v2.11.0.

Новые возможности

  • Новые параметры для вставки текста перед найденными вхождениями или после них

Загрузка и установка

  • загрузка nhrt
  • содержит бинарные файлы, требуется установка вручную

Вставка текста перед найденными вхождениями или после них

Начиная с этой версии, программа выполняет не только замену, но и вставку текста.

Возможности вставки предназначены для внесения изменений в файлы исходников, например, php файлов WordPress, которые с каждой версией обновляются и требуется повторного внесения ранее сделанных частных изменений.

Внесение изменений, а именно вставку текста в определённое место файла, т.е. с привязкой к существующему фрагменту кода, можно выполнить и в предыдущей версии nhrt, но это требует дополнительных действий – придется вставлять искомый текст в заменяющий текст, а для регулярных выражений использовать форматированный текст (capture groups и formatted text).

Новые параметры позволяют вставлять текст проще, без этих ухищрений.

Новый параметр -insert_before вставляет заданный текст перед найденным текстом, а новый параметр -insert_after вставляет заданный текст после найденного текста.

Следующий пример вставляет строку define( 'AUTOSAVE_INTERVAL' , 3600 ); перед комментарием /* Это всё, дальше не редактируем. Успехов! */ в файле wp-config.php:

nhrt.exe -insert_before -spt:"/* Это всё, дальше не редактируем. Успехов! */" -et:"define( 'AUTOSAVE_INTERVAL' , 3600 );\n\n" wp-config.php

Используя регулярное выражение, можно упростить строку поиска:

nhrt.exe -insert_before -sre:"^.*дальше не редактируем" -et:"define( 'AUTOSAVE_INTERVAL' , 3600 );\n\n" wp-config.php

Этот пример вставляет содержимое файла myfile.txt перед закрывающим тегом в файле footer.php:

nhrt.exe -insert_before -spt:"</body>" -f:myfile.txt footer.php

Используя новые параметры, можно составить командный файл, который будет вставлять фрагмента кода в определённые места файлов. Тогда при обновлении файлов (при выходе новой версии wp) достаточно будет запустить этот bat файл, чтобы повторно вставить дополнения кода.

nhrt v2.11.0

nhrt v2.11.0: 8 комментариев

  • 03.08.2018 в 23:01
    Постоянная ссылка

    А как в начало или конец документа что-то вставить? Типа:
    -ib -sre:"^" -et:"строка\n" File.txt
    -ia -sre:"$" -et:"\nстрока" File.txt
    -ib -sre:"^[\s.]" -et:"строка\n" File.txt
    -ia -sre:"[\s.]$" -et:"\nстрока" File.txt

    Или куда-то единоразово? Т.е. с отключением глобальной отработки? Такого ключа не предусмотрели?

    Ответить
    • 06.08.2018 в 14:49
      Постоянная ссылка

      вставка текста в начало или конец файла запланирована на следующую версию. в последующих версиях будет вставка текста в фиксированное место файла по номеру строки и позиции в строке

      Ответить
      • 14.08.2018 в 12:14
        Постоянная ссылка

        Хорошо.
        Насчёт последующих версий. Номер строки-то, как правило, неизвестен. Нужно именно находить первое вхождение и править. В т. ч. с конца при использовании look-behind шаблона (?<=…).

        Ответить
        • 17.08.2018 в 23:49
          Постоянная ссылка

          Если по номеру вхождения более востребовано, чем по номеру строки, тогда в первую очередь сделаю по номеру вхождения.

          Ответить
          • 20.08.2018 в 18:02
            Постоянная ссылка

            Выбирать номер вхождения — это хорошо. А что насчёт номера с конца?

          • 23.08.2018 в 20:14
            Постоянная ссылка

            будет нумерация и с начала, и с конца.
            можно будет задать, например, замену первого и последнего вхождений. или третьего с начала и второго с конца. и тому подобное.

          • 24.08.2018 в 18:22
            Постоянная ссылка

            Отлично! По номеру строки тоже сделайте. Пусть реже, но иногда востребовано.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *