В Emacs, как переформатировать отредактированный абзац, чтобы разрывы строк были правильно вставлены заново?

8328
qazwsx

В Emacs у меня есть абзац текста, который уже правильно обернут, скажем, в 79-й столбец каждой строки, затем вы редактируете его, добавляя некоторый текст в некоторые строки, как переформатировать отредактированный абзац, чтобы символы разрыва строки были автоматически удаляются и вставляются в правильные места, так что результирующий абзац снова является разрывом строки в 79-м столбце для каждой строки, или что-то подходящее для текущего режима, скажем python-mode?

13

1 ответ на вопрос

24
Kyle Jones

Вы должны использовать fill-paragraphкоманду, обычно привязанную к meta-q. (Вы можете использовать, ESC qесли ваша клавиатура не имеет мета-клавиши.) Заполнение абзаца имеет смысл только в режимах свободного текста или в комментариях в режимах языка программирования. Языковые режимы программирования обычно устанавливаются вокруг TABклавиши для правильного отступа строк; разрывы строк вставляются вручную.

Чтобы установить столбец, в котором строки текста разбиты, используйте set-fill-columnкоманду. Поместите курсор в столбец, для которого строка должна заканчиваться, и введите, control-u control-x fи этот столбец станет столбцом заполнения для текущего буфера. Используйте fill-paragraphдля повторного заполнения абзаца новым столбцом заполнения.

Что я вставляю в .emacs, чтобы по умолчанию было так, чтобы `fill-абзац` заполнял все строки до 79-го столбца? qazwsx 12 лет назад 1
(setq-default-column-79) Kyle Jones 12 лет назад 6
Есть ли противоположность `fill-абзацу`, который бы переформатировал абзац так, чтобы все было в одной строке? jameshfisher 9 лет назад 0
О, я нашел это: `Unill-абзац`. Благодарю. jameshfisher 9 лет назад 1