Як в Emacs переформатувати відредагований абзац, щоб перерви рядків були правильно вставлені?


17

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

Відповіді:


28

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

Щоб встановити стовпчик, на якому розбиваються рядки тексту, використовуйте set-fill-columnкоманду. Помістіть курсор у стовпець, на якому потрібно закінчити рядок, і введіть, control-u control-x fі цей стовпець стане стовпцем заповнення для поточного буфера. Використовуйте fill-paragraphдля поповнення абзацу новою колоною заповнення.


1
Що я вставлю .emacs, щоб типово було таким, що fill-paragraphвсі рядки заповнюються до 79-го стовпця?
qazwsx

6
(setq за замовчуванням заповнити стовпчик 79)
Кайл Джонс

Чи існує протилежне fill-paragraph, що переформатує абзац, щоб бути всі в одному рядку?
jameshfisher

1
Про , я знайшов це: unfill-paragraph. Спасибі.
jameshfisher
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.