On Mon, 27 May 2019, Tony Mechelynck wrote:
> if only I knew the correct xterm bytecode to
> make the cursor a block, a vertical bar or an underscore.
Hi Tony,
Here's what I use for real xterm, and covering a pretty good span of Vim
releases (including those predating t_SR):
if has('cursorshape') && &term =~ '^xterm'
" Use a bar cursor in Insert mode
let &t_SI = "\<Esc>[6 q"
" Use a block cursor in Normal mode, and restore at Vim exit
let &t_EI = "\<Esc>[2 q"
let &t_te = &t_EI . substitute(&t_te, '\C' . &t_EI, '', 'g')
" Use t_SR for an underline cursor in Replace mode, if available (Vim
" 7.4.687 or newer); otherwise, change the value of t_SI when entering
" Insert or Replace mode, as appropriate.
if exists('&t_SR')
let &t_SR = "\<Esc>[4 q"
else
autocmd vimrc InsertChange,InsertEnter *
\ if v:insertmode == 'r' || v:insertmode == 'v' |
\ let &t_SI = "\<Esc>[4 q" |
\ else |
\ let &t_SI = "\<Esc>[6 q" |
\ endif
endif
endif
Those are the non-blinking variants in xterm. You'll probably need to
adjust that for non-xterm; there's a Vim wiki page[1] that suggests other
sequences for Konsole. Also note the &term test at the beginning.
-Rob
[1] https://vim.fandom.com/wiki/Change_cursor_shape_in_different_modes
--
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vim_use+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/vim_use/alpine.LFD.2.21.1905280029540.2350%40bugs.loonybin.net.
For more options, visit https://groups.google.com/d/optout.
No comments:
Post a Comment