Разделить текстовые документы на страницы (в Vim?)
Мне интересно, существует ли способ разбить текстовые документы на страницы в формате, аналогичном документам RFC. Вот пример документа RFC, который разделяет страницы на 56 строк.
Я уже был в состоянии заставить строки разрываться на границах слов на определенной ширине линии, используя set formatoptions+=w
а также set textwidth=72
,
При этом, если не существует решения Vim, существуют ли какие-либо программы или утилиты командной строки, которые могли бы предложить аналогичную функциональность?
2 ответа
Существует инструмент под названием pr, который используется для форматирования файлов перед их печатью, с некоторыми изменениями конфигурации вы можете получить желаемый результат.
Редактировать: После небольшой возни я придумал эту команду, которая разделила мое readme на четыре страницы по 20 строк. Вы могли бы тогда, вероятно, найти и заменить, чтобы получить желаемый формат заголовка.
pr -F -l 20 README.md
Это можно сделать с помощью специальной команды. Вот эскиз:
command! -count=56 Paginate
\ let page = 1 |
\ <count> |
\ while line('.') < line('$') |
\ call append('.', ['-------', 'page ' . page, '=======']) |
\ let page += 1 |
\ .+<count>+3 |
\ endwhile