Как совместить две строки сразу в vim

У меня есть файл, содержащий записи с разделителем в виде вкладок, но в двух строках, я хочу организовать записи в одной строке с вкладками, разделенными значениями, используя совпадение шаблона редактора vim.

Ex.

Abc PQR XYZ NMW XYX PQR LMW PLX PXQ LPN PWF XYQ PLP PMQ LWP 

Я хочу добавить каждую вторую строку записи в первую строку записей. Формат вывода, который я хочу, выглядит следующим образом.

 Abc PQR XYZ NMW XYX PQR LMW PLX PXQ LPN PWF XYQ PLP PMQ LWP 

Я попробовал следующую команду для решения моей проблемы.

 :%s/\n(\w\+.*)/\t\1/cgi 

Это заменяет каждую строку данными вкладкой спереди, кроме первой строки.

Как мы можем решить это с помощью сопоставления шаблонов vim и замены?

3 Solutions collect form web for “Как совместить две строки сразу в vim”

Как насчет

 :%s/\n\s\+/\t/gc 

Это найдет любой символ новой строки, за которым последует пробел, и заменит все его вкладкой, объединив ваши строки.

Если вы знаете, что первая строка всегда начинается с буквы, а вторая строка всегда будет начинаться с вкладки, наиболее вероятный способ сделать это, вероятно, будет использовать :g (выполнить команду ex во всех строках, соответствующих регулярному выражению) и j! (объединение без удаления пробелов). Проверьте help :g и help :j . Объединив их, вы получите

 :%g/^\w/j! 

Вы можете сделать это легко с помощью paste :

 paste -sd'\0\n' file 

В vim :

 :%!paste -sd'\0\n' - 
  • Как я могу потянуть переменную env в отображение ключей VIM?
  • Есть ли синтаксический файл Vim для вывода приложений CLI на основе ANSI?
  • Можно ли добавить ci "(или ci ', ci {и т. Д.) В режим vi в bash?
  • Использование клавиш VI для редактирования команд оболочки в UNIX
  • Как я могу открыть файл в VIM в режиме readonly, если он уже имеет swap-файл?
  • визуальный режим / выделение / выбор текста по uzbl?
  • Есть ли обратный поиск команды в vim?
  • vim - как я могу «изменить слово» с помощью текущего пастообразного буфера
  • Могу ли я заставить Tmux сказать Vim, когда его панель теряет фокус?
  • Vim и унифицированные разности
  • Цвет Vim FoldColumn отличается от Debian / Ubuntu
  • Interesting Posts

    Есть ли команда типа «tee», которая ограничивает размер файла и обрабатывает выходной файл как очередь с фиксированным размером?

    Проблемы с составлением VASP

    Определите, есть ли активный рабочий стол VNC и его номер

    Подсчитайте слова: что будет использовать меньше CPU, wc или perl-скрипт?

    Настройка регионов в сеансе экрана

    Как направить хост-браузер на гостевую виртуальную машину?

    Как открыть VPN-соединение внутри другого VPN-соединения под Linux / Ubuntu

    Проблема с установкой fedora 17 в usb

    Возможно ли сделать загрузку системы, если systemd-networkd не удается?

    Заголовок сценария Init не разрешает зависимость

    Как я могу переименовать файлы устройств для моего устройства чтения карт памяти?

    Существуют ли какие-либо инструменты для тестирования MTD / JFFS2 для ядер Linux 2.4

    Выполнить команду для каждой записи в файле

    Нажмите ссылку для загрузки файла с помощью curl

    Как настроить Linux Mint 18.2 для Captive WiFi Access Point без доступа в Интернет

    Linux и Unix - лучшая ОС в мире.