Как заменить символ символом новой строки в Emacs?

Я пытаюсь заменить символ - скажем ; - новой строкой с использованием replace-string и/или replace-regexp в Emacs.

Я пробовал следующие команды:

  • M-x replace-string RET ; RET \n

    Это заменит ; двумя символами: \n.

  • M-x replace-regex RET ; RET \n

    Это приводит к следующей ошибке (показано в минибуфере):

    Недопустимое использование `\ 'в тексте замены.

Что случилось с использованием replace-string для этой задачи? Есть ли другой способ сделать это?

Спасибо.

Ответ 1

M-x replace-string RET ; RET C-q C-j.

  • C-q для quoted-insert,

  • C-j - это символ новой строки.

Ура!

Ответ 2

Есть четыре способа найти новую строку в минибуфере.

  • C-o

  • C-q C-j

  • C-q 12 (12 - восьмеричное значение новой строки)

  • C-x o в главное окно, убейте новую строку с помощью C-k, затем C-x o вернитесь к минибуферу, держите ее с помощью C-y

Ответ 3

Не забывайте, что вы всегда можете вырезать и вставлять в минибуфер.

Итак, вы можете просто скопировать символ новой строки (или любую строку) из своего буфера, а затем вытащить его, когда будет предложено заменить текст.

Ответ 4

Более подробно:

Чтобы заменить символ полуколла (;) на новую строку, выполните следующие шаги.

  • найдите курсор в левом верхнем углу буфера, содержащего текст, который вы хотите изменить.
  • Введите m-x replace-string и нажмите RETURN
  • мини-буфер отобразит что-то вроде этого: Заменить строку (по умолчанию ^ → ):
  • Введите символ, который вы хотите заменить. В этом случае,; и нажмите RETURN
  • мини-буфер отобразит что-то вроде этого: строка; с:
  • Теперь выполните C-q C-j
  • Все экземпляры с запятой будут заменены новой строкой (теперь из окна курсора в конец буфера появится)

Немного больше, чем говорится в оригинальном объяснении.

Ответ 5

Переключиться в текстовый режим

M-x text-mode

Выделите блок для отступа

Отступ

C+M \

Переключитесь в любой режим.

Ответ 6

встроенный просто: C-M-S-% (если связывание ключей по-прежнему по умолчанию), чем replace-string ^ J