Некоторые текстовые редакторы с графическим интерфейсом имеют вертикальную линию, которая служит маркером длины строки (это помогает сохранять строки короче 80 символов в файлах исходного кода).
Возможно ли иметь что-то подобное в vim / gvim? Я знаю о параметре линейки vim, но не очень удобно визуально следить за ним на большом экране.
Изменить: при поиске "colorcolumn", чтобы узнать больше, я обнаружил, что этот вопрос является дубликатом https://stackoverflow.com/questions/235439/vim-80-column-layout-concerns
Ответы:
Просто выполните это
Вы также можете добавить к аргументу аргумент
-
или+
поставить маркер на столько столбцов слева или справа от негоtextwidth
, и он принимает список столбцов через запятую. Я думаю, чтоcolorcolumn
вариант только в Vim 7.3. Видетьисточник
columns=80
,wrap
устанавливаются иcolorcolumn=81,161,241,321,401,481,561,641,721,801
- отображает до 10 перенесенных строк с первой колонкой выделено.Из выступления Дамиана Конвея «Более мгновенно лучше Vim» на OSCON 2013:
Это приводит к тому, что символ выделяется пурпурным цветом (снимок экрана показан
DarkCyan
), когда линия превышает максимум 80 символов.Для gVim: лучше всего переместить эти 2 строки в последнюю часть вашего
.vimrc
файла, чтобы убедиться, что он работает.источник
'\$81v\S'
который соответствует только непробельные символы. Это означает, что выделение не будет отображаться, когда длина строки ровно 80 символов (что меня очень беспокоило). См. Это для получения дополнительной информации stackoverflow.com/questions/12985042/…$
Должно было быть%
. Аналогично, теперь я использую шаблон,\%81v.
так как это гарантирует, что 81-й столбец будет подсвечен для любого символа в 81-м столбце, что, вероятно, то, что вы хотите.Вы можете попробовать это:
или же
(или сокращенный эквивалент)
или как указано выше:
источник
Ниже приведен неуклюжий трюк из Hacking Vim: Поваренная книга, чтобы получить максимальную отдачу от последнего редактора Vim от Kim Schultz.
Он выделяет
ErrorMsg
(обычно ярко-красным) любые строки длиной более 80 символов. Хорошо работает для меня.источник
:call matchadd("ErrorMsg", "\\%>79v.\\+", 10, 4)
достаточно просто позвонить . Но я бы не рекомендовал это больше, так как @garyjohn знал кое-что лучше