Как изменить ~/.vimrc
, чтобы комментарии в моем коде были выделены курсивом?
В моем файле ~/.vimrc
у меня есть:
highlight Comment ctermfg=blue
что делает комментарии синими. Что мне нужно сделать по-другому, чтобы сделать их курсивом?
Как изменить ~/.vimrc
, чтобы комментарии в моем коде были выделены курсивом?
В моем файле ~/.vimrc
у меня есть:
highlight Comment ctermfg=blue
что делает комментарии синими. Что мне нужно сделать по-другому, чтобы сделать их курсивом?
highlight Comment cterm=italic gui=italic
Вам понадобится шрифт с курсивом и терминалом, способным отображать курсив. Кроме того, если вы используете цветовую схему, отличную от стандартной, строка выше должна появиться после загрузки цветовой схемы в ~/.vimrc
чтобы цветовая схема не перекрывала ее.
cterm
делает его работу в терминале и gui
для графических Vim клиентов.
Прежде всего, вы должны проверить, способен ли ваш терминал отображать текст курсивом. В вашем терминальном типе (-e
флаг позволяет интерпретировать escape-коды)
echo -e "\e[3m foo \e[23m"
Если вы видите foo
, тогда все в порядке, иначе вам нужно будет изменить терминал (Gnome Terminal и Konsole - хороший выбор).
Затем вы должны помочь Vim узнать, какой терминал вы используете, введите ~/.bashrc
:
export TERM="xterm-256color"
Теперь вы можете попробовать и посмотреть, достаточно ли этого, открыть новый файл vim foo.html
со следующим контентом
<i>foo</i>
Вы видите foo
курсивом? Если нет, то вам нужно идти немного дальше, прямо сейчас Vim не знает, что коды выхода для переключения в курсивный режим, вам нужно сказать (это самая сложная часть, мне потребовалось несколько лет, чтобы понять это).
Поместите следующие две строки в ~/.vimrc
set t_ZH=^[[3m
set t_ZR=^[[23m
Это те же коды эвакуации, которые мы использовали ранее в терминале, имейте в виду, что ^[
не являются буквальными символами, но представляют escape-символ, вы можете вставить его в режиме вставки с помощью CTRL - V, за которым следует ESC (см. :help i_CTRL-V
)
Теперь откройте файл, который мы создали до foo.html
, и вы увидите foo
курсивом; если вы этого не сделаете, я больше не могу вам помочь. В противном случае вы почти закончите; есть один последний шаг.
Вставьте файл ~/.vimrc
highlight Comment cterm=italic
после загрузки любой цветовой схемы.
В моем случае мне пришлось поместить это в мой файл vimrc
:
let &t_ZH="\e[3m"
let &t_ZR="\e[23m"
highlight Comment cterm=italic
Обратите внимание, что это не так же, как:
set t_ZH=^[[3m
set t_ZR=^[[23m
highlight Comment cterm=italic
Бывший работал у меня, а второй - нет.
для сред GUI, таких как gvim, простой
highlight Comment gui=italic
делает это.
michaelmichael ответ должен решить его для большинства случаев. Но на всякий случай вам понадобится шрифт в gvim, который не имеет курсив (но наклонный или что-то вместо этого), вы можете попробовать что-то подобное в ~/.gvimrc
highlight Comment font=Bitstream_Vera_Sans_Mono_Oblique:h14
где h14 - размер шрифта. Этот шрифт должен иметь тот же размер ячейки, что и ваш обычный шрифт, поэтому не используйте совсем другой шрифт.