如何更改~/.vimrc
以使我的代码中的注释变为斜体?
在我的~/.vimrc
文件中,我有:
highlight Comment ctermfg=blue
使评论变为蓝色。我需要做些什么来使它们变成斜体?
答案 0 :(得分:30)
首先,您应该检查您的终端是否能够以斜体显示文本。在您的终端类型中(-e
标志确保解释转义码)
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
这些是我们之前在终端中使用的转义码,请注意^[
不是文字字符但代表转义字符,您可以使用 CTRL 插入插入模式 - V 后跟 ESC (见:help i_CTRL-V
)
现在重新打开我们在foo.html
之前创建的文件,您应该看到foo
以斜体显示;如果你不这样做,我就无法帮助你了。否则你差不多完成了;还有最后一步。
加入~/.vimrc
档案
highlight Comment cterm=italic
加载任何colorscheme后。
答案 1 :(得分:26)
highlight Comment cterm=italic gui=italic
您需要一个带斜体的字体和一个能够显示斜体的终端。此外,如果您使用的颜色方案不是默认颜色,则上面的行应该在您的~/.vimrc
中加载颜色方案之后,以便颜色方案不会覆盖它。
cterm
使其在终端中运行,gui
适用于图形Vim客户端。
答案 2 :(得分:16)
在我的情况下,我必须将其放在我的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
前者为我工作,而后者没有。
答案 3 :(得分:9)
用于GUI环境,例如gvim,一个简单的
highlight Comment gui=italic
做到了。
答案 4 :(得分:3)
highlight Comment font=Bitstream_Vera_Sans_Mono_Oblique:h14
其中h14是字体大小。此字体应具有与普通字体相同的单元格大小,因此请勿使用完全不同的字体。
答案 5 :(得分:0)
因为我使用的是 Solarized colorscheme,所以我必须按照 Solarized #120 中的建议编辑 .vim/colors/solarized.vim
以将第 137-157 行替换为以下内容:
if has("gui_running") || ( has("unix") && system("tput sitm") == "\033[3m" )
let s:terminal_italic=1
else
let s:terminal_italic=0
endif
这是另外按照 this Gist 中的说明并将这两行添加到我的 .vimrc
中,使用 Ctrl-v Esc 进入^[
:
set t_ZH=^[[3m
set t_ZR=^[[23m
(感谢 Gabriele Lana 提供将这些行添加到我的 .vimrc
中的提示。)