Меню сайта
   Главная   
   Обо мне   
   Статьи   
   Дневник   
   Картинки   
   Файлы   
   Форум   
   Гостевая книга   

Категории раздела
Куклы и игрушки [60]
Личное [114]
Музыка [19]
Общее [300]
Японский язык [12]
ZX Spectrum [69]
Субмарины [98]
Настольные игры [34]
Го (碁) [11]
Книги [16]
Япония [26]
Таро [4]
Запертый шкаф [17]
CSA (КША) [15]
GNU/Linux [124]
Ubuntu [103]
Manjaro Linux [36]
Python [3]
Магнитольное [43]
Commodore64 [6]
Игровые приставки [2]


 
Дневник (2021 » Январь » 2 в 10:12)
GNU/Linux Форматирование текста в vim и отдельно

vim
format

Задача — переформатировать текст по заданной ширине внутри vim либо внешней утилитой. Опишу оба метода.


Первый метод - внутренними стредствами. В режиме ввода команд : (нажать двоеточие) ввести:
:set textwidth=30
:set tw=30 #краткая запись
Например пусть будет 30 символов в строке. Теперь необходимо применить изменения ко всему тексту. Для этого в командном режиме (основной режим vim) нажать:
gggqG
где:
ggперейти в начало буфера
gq — переформатировать текст внутри выборки
G — перейти в конец буфера
Собственно gg и G указывают диапазон применения gq

Кроме textwidth ещё есть wrapmargin, но он не всегда сразабывает. Проблема с wrapmargin заключается в том, что он зависит от ширины вашего терминала, тогда как textwidth работает одинаково для всех.

* * *

Второй метод — внешними утилитами fmt или fold. Необходимо их присутствие в системе. Плюс такого метода - можно использовать не только в vim, но и пакетно.
Для применения, в режиме ввода команд (: нажать двоеточие) ввести:
:%! fmt -w 30
или
:%!fold -w 30
И весь текст буфера vim будет сразу переформатирован внешней командой по ширине в соответствии с заданным числом.


Категория: GNU/Linux | Просмотров: 147 | Добавил: harushima | Рейтинг: 0.0/0 |
Всего комментариев: 0.
В целях защиты от спама, добавлять комментарии могут только зарегистрированные пользователи. Если Вы не хотите регистрироваться под своим именем, войдите под логином: anonymous, паролем: anonymous.   ( Регистрация,   Вход).
Авторизация
Анонимный вход:
anonymous / anonymous
Логин:
Пароль:

Календарь
«  Январь 2021  »
ПнВтСрЧтПтСбВс
    123
45678910
11121314151617
18192021222324
25262728293031

Поиск

Облако тэгов
JGSDF игрушки Брюнетки Кладбище сайты Ярость Дракулы Древний Египет девушки кошки Cthulhu Вампиры Kitsune Ужас Аркхема инструмент комиксы Lovecraft готика Submarine submarine rc toy Hosting игротека Ужас Аркхэма book uboat мобильная связь го Edgar Poe swf Mansions of Madness Nightmares персоны Synergy linux-hardware bash youtube Storages Python Мастер-рукожоп Магнитофоны Entropy Grub2 loglevel WiFi Beeline ОПСОСЫ sharp939 Аудиокассеты Windows linuxwork Хочуны ImageMagick топБарыг C64c Commodore

Статистика
Яндекс.Метрика
Онлайн всего: 1
Гостей: 1
Пользователей: 0

Page QR code


Перепечатка материалов сайта без активной ссылки запрещена. Следить за RSS
(c) hermitlair.ucoz.com 2009-2023
Лучший браузер!
Блокировка рекламы