sat*_*ish 3 macos vim text-cursor
我在 Mac OS X 上使用 vim。我想将光标更改为闪烁块。我尝试按照此处的说明进行操作 - https://vim.fandom.com/wiki/Change_cursor_shape_in_ Different_modes 。我像这样创建了 ~/.vimrc 文件
localhost$ cat ~/.vimrc
set pastetoggle=<F2>
let &t_SI.="\e[5 q" "SI = INSERT mode
let &t_SR.="\e[4 q" "SR = REPLACE mode
let &t_EI.="\e[1 q" "EI = NORMAL mode (ELSE)
"Cursor settings:
" 1 -> blinking block
" 2 -> solid block
" 3 -> blinking underscore
" 4 -> solid underscore
" 5 -> blinking vertical bar
" 6 -> solid vertical bar
if &term =~ "xterm.*"
let &t_ti = &t_ti . "\e[?2004h"
let &t_te = "\e[?2004l" . &t_te
function! XTermPasteBegin(ret)
set pastetoggle=<Esc>[201~
set paste
return a:ret
endfunction
map <expr> <Esc>[200~ XTermPasteBegin("i")
imap <expr> <Esc>[200~ XTermPasteBegin("")
vmap <expr> <Esc>[200~ XTermPasteBegin("c")
cmap <Esc>[200~ <nop>
cmap <Esc>[201~ <nop>
endif
Run Code Online (Sandbox Code Playgroud)
但是,当我退出并重新启动终端时,使用 vim 打开文件时光标不会闪烁。我还需要做什么来调整我的设置?
我的文件中有以下内容.vimrc。我不记得从哪里得到它,但可能是reddit 上的这个帖子。它可以在 iTerm 和 Terminal 中运行,无论有没有 tmux:
let &t_EI = "\<Esc>[1 q"
let &t_SR = "\<Esc>[3 q"
let &t_SI = "\<Esc>[5 q"
Run Code Online (Sandbox Code Playgroud)
这将在正常模式下为您提供一个闪烁的块,在插入模式下为您提供一个闪烁的垂直条,在替换模式下为您提供一个闪烁的下划线。
您还必须在终端中启用闪烁光标。例如,在 iTerm 中,这是在“首选项”>“配置文件”>“文本”中完成的,您可以在其中启用“闪烁光标”:
| 归档时间: |
|
| 查看次数: |
2170 次 |
| 最近记录: |