Як змінити стиль виділення у перевірці орфографії Vim?


91

Зараз, коли я роблю :set spellу своєму Vim, я отримую орфографічні помилки, виділені так, ніби це вибраний текст. Мені потрібне MS-Word, як підкреслення орфографічних помилок. Я намагався шукати, :help spellале не міг знайти підказку. Будь-яка допомога вдячна.

Відповіді:


128

Орфографічні помилки виділяються за допомогою SpellBadгрупи виділення. Щоб його підсвічували як завгодно, слід помістити щось на зразок

hi clear SpellBad
hi SpellBad cterm=underline
" Set style for gVim
hi SpellBad gui=undercurl

після останнього рядка, який змінює колірну схему у вашому vimrc (це або set background=(dark|light)або colorscheme {schemename}).

Дивіться також :h hl-SpellBadназви та описи інших груп виділення Spell *.


1
Побий мене! Варто також згадати, що undercurl("підкреслене" підкреслення, подібне до слова ms) є за замовчуванням у gvim, хоча очевидно, що немає ніякого способу зробити "скривисте" підкреслення в терміналі.
Джо Кінгтон,

26
Може бути корисно мати зміна кольору також, наприклад, :hi SpellBad cterm=underline ctermfg=red. Або він підкреслив і жирним шрифтом: :hi SpellBad cterm=underline,bold.
Герберт Сіц,

@yoda Заміна де? Неможливо зробити X-термінал, який підтримує скриплене підкреслення, але я не знаю про цю функцію в жодному з терміналів, якими я користуюся. І я припускаю, що цей термінал або буде підкреслено підкреслено замість звичайного, або не буде підтримуватися vim без ручного виправлення.
ZyX

@ZyX: Не знаю, просто цікавився. Усі мої це ----теж показують , але це просто здавалося логічним, що перехід на скривистий повинен просто передбачати заміну -на ~, але я можу там помилитися.
abcd

1
@yoda: Я не отримую місця, де ----показано? Термінали не використовують символи для підкреслення (хоча ви завжди можете написати свій власний, що буде), вони просто інтерпретують конкретну послідовність екрану, надіслану vim, як «початок підкресленої області», а іншу послідовність як «кінець підкресленої області» (або навіть «очистити все» стилі »). Те, що насправді показано, визначається в коді терміналів, але, мабуть, більшість з них просто передають інформацію про стиль бібліотеці візуалізації шрифтів. Тут ніщо не заважає терміналам підтримувати хитке підкреслення, але бібліотеки шрифтів не використовують символи для підкреслення.
ZyX

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.