объединить строки с помощью текстового редактора (Geany)

объединить строки с помощью текстового редактора (Geany)

У меня есть текстовый файл с несколькими строками, которые я хочу объединить (конкатенировать) в текстовом редакторе. Т.е. не прибегая к инструментам командной строки (особенно в Windows, где они могут быть вообще недоступны).

Я использую Geany и его функцию поиска и замены, но безуспешно: пробовал заменить $ ничем, используя (многострочное) регулярное выражение, и \n ничем, используя escape-последовательности.

Даже многострочное сопоставление, похоже, заменяет только содержимое, оставляя (пустые) строки такими, какие они есть!

Есть ли какой-нибудь простой способ сделать это?

решение1

Спасибо @Prasanna за подтверждение того, что это должно работать с заменой на основе "escape-последовательности". Я понял, что это может быть проблемой с завершением строки, и действительно, замена \n на пробел помещает пробел в начало каждой строки!

Так что, я думаю, это будет зависеть от платформы, но должно работать в соответствии с используемым окончанием строки:

В Windows найдите

\r\n

Замените его ничем (пустой строкой) или пробелом, в зависимости от ваших потребностей.

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

решение2

Я обнаружил, что секрет объединения строк в Geany с помощью поиска и замены регулярных выражений заключается в том, чтобы убедиться, Use multi-line matchingчто включено. Я люблю Geany, поэтому вот последовательность шагов для удаления окончаний строк (здесь показана Windows, измените escape-символы окончания строки по мере необходимости для *nix):

  • Проверьте окончания строк: в меню выберите View >> Show line Endings (например, в Windows это отобразит CRLF (\r\n)).
  • Выделите/выберите линии, которые вы хотите объединить.
  • CTRL-H (Заменить)
  • В Search for:поле введите\r\n
  • В Replace with:поле ничего не вводите
  • Убедитесь, Use regular expressionsчто проверено
  • Убедитесь, Use multi-line matchingчто проверено
  • Щелкните In Selection, чтобы объединить все строки в выделенном фрагменте (разумеется, это можно сделать для всего документа или построчно, по вашему желанию).

Без проверки это не сработает Use multi-line matching, вот в чем секрет.

решение3

На самом деле, в Geany есть команда «Объединить линии», но она как бы скрыта: нужно зайти в «Правка»/«Настройки»/«Сочетания клавиш» Действие: «Формат»/«Объединить линии», и там можно назначить сочетание клавиш; как говорится вОшибка соединения линий #510:

Да, «объединение линий» не находится в меню, это плохо, потому что это затрудняет его обнаружение, и назначение сочетания клавиш не должно приводить к появлению этого пункта в меню.

Но если назначить сочетание клавиш, то у меня оно работает с ccec1fe.

Связанный контент