Как я могу запретить Vim присоединяться к линиям, когда я использую gqG?
У меня плохая привычка писать строки кода, которые слишком длинны, поэтому я наконец-то дошел до установки "colorcolumn=101" и textwidth=100 в моем.vimrc.
Я хотел бы иметь возможность задним числом применять эти ограничения ширины строки к файлам, которые я уже написал, и я обнаружил, что запуск в верхней части файла и нажатие gqG в некотором роде помогает. Он будет правильно разделять слишком длинные строки, НО он также объединяет строки, если они умещаются в пределах 100 символов.
Так что если сначала у меня было:
import java.io.File;
import java.io.IOException;
import java.util.Map;
Это превратилось бы в:
import java.io.File; import java.io.IOException; import java.util.Map;
Я действительно не хочу, чтобы поведение присоединения к линии все же.
2 ответа
Кроме того, вы можете использовать внешнюю программу для форматирования вашего кода. Я бы предложил astyle (http://astyle.sourceforge.net/, а также в репозитории Ubuntu) в сочетании с плагином vim vim-autoformat (https://github.com/Chiel92/vim-autoformat).
Последний интегрирует первый в vim, так что astyle форматирует ваш код, когда вы нажимаете gqG
,
Чтобы просто разбить длинные строки, вы можете сделать это для каждой строки индивидуально с gqq
, Объедините это с условным выполнением только в строках длиннее 100 (:help /\%v
) с :global
, как это:
:%global/\%>100v/normal! gqq
Обратите внимание, что это может привести к синтаксическим ошибкам, например, при разрыве строк после // ...
комментировать лидер.