энергия: показ listchars изменяет экранное обертывание

Я отметил, что, когда я разоблачаю EOL listchars в тексте, разрывы строки являются losen

p.e.

 this is my text of this 
 message

становится после сетлиста.. eol

 this is my text of this mess
 age(EOL CHAR)

Я хотел бы видеть символы EOL, не нарушая обещания в границе окна. Это возможно?

6
задан remio 18 March 2010 в 15:05
поделиться

1 ответ

К сожалению, похоже, что это документированное ограничение Vim. Из документации по linebreak (опция, которая вызывает перенос строки на слово, а не на символ):

Эта опция не используется, когда опция 'wrap' выключена или 'list' включена.

Альтернативное решение: выделить конец строки. Простой одноразовый способ - просто искать их (/$). Кроме того, вы можете использовать подсветку:

:highlight endofline ctermbg=Green
:match endofline /$/

Это придаст вашим EOL'ам зеленый фон. Смотрите :help highlight-args для получения дополнительной информации о том, как можно задать подсветку.

Оригинальный ответ

Это не является проблемой ОП, но иногда может случиться, поэтому я оставлю это здесь, чтобы другие могли найти при поиске.

Из справки по 'list':

Обратите внимание, что режим списка также влияет на форматирование (установленное с помощью 'textwidth' или 'wrapmargin'), если 'cpoptions' включает 'L'. См. 'listchars' для изменения способа отображения вкладок.

Из справки по 'cpoptions':

L Когда установлена опция 'list', 'wrapmargin', 'textwidth', 'softtabstop' и режим виртуальной замены (см. |gR|) считают a как два символа, вместо обычного поведения a .

'cpoptions' - это все о совместимости с vi - вы запускаете vim как vi? Или вы вручную устанавливаете какой-либо из этих флагов? Проверьте вывод echo &cpoptions, убедитесь, что вы запускаете vim, и если он все еще установлен (не знаю, почему), вы можете снять флаг (set cpoptions-=L).

И, конечно, убедитесь, что настройки wrap, wrapmargin, linebreak и textwidth соответствуют вашим требованиям.

2
ответ дан 17 December 2019 в 20:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: