修改Ubuntu终端中,Vim插入模式下光标实现为竖线状
2017-11-12 20:57
309 查看
原文:Change cursor shape in different modes
不同终端版本修改代码不同。
使用如下命令查看Gnome-Terminal终端的版本:
To change the shape of the cursor in different modes, you can add the following into your vimrc.
将不同版本终端对应的代码添加到vimrc文件中即可。
我的终端版本为3.18***,vimrc文件位于etc/vim/vimrc
Make it executable & put it in /usr/local/bin Next, add this to .vimrc
If you use more than one profile in gnome-terminal, you might have to adapt this to your profiles.
Above snippet disables cursor blinking. If you want cursor blink, just decrement all the 3 numbers above 2,4,6 by one each.
不同终端版本修改代码不同。
使用如下命令查看Gnome-Terminal终端的版本:
aptitude show gnome-terminal
To change the shape of the cursor in different modes, you can add the following into your vimrc.
将不同版本终端对应的代码添加到vimrc文件中即可。
我的终端版本为3.18***,vimrc文件位于etc/vim/vimrc
For the Gnome-Terminal (version 2.26)Edit
This makes your cursor change in all open terminals. Upgrade your terminal and use the version above instead.if has("autocmd") au InsertEnter * silent execute "!gconftool-2 --type string --set /apps/gnome-terminal/profiles/Default/cursor_shape ibeam" au InsertLeave * silent execute "!gconftool-2 --type string --set /apps/gnome-terminal/profiles/Default/cursor_shape block" au VimLeave * silent execute "!gconftool-2 --type string --set /apps/gnome-terminal/profiles/Default/cursor_shape ibeam" endif
For the Gnome-Terminal (version 3.x)Edit
First make a script gnome-terminal-cursor-shape.sh#!/bin/sh DEFAULTPROF=`dconf read /org/gnome/terminal/legacy/profiles:/default` DEFAULTPROF=`echo "$DEFAULTPROF" | sed -e "s/^'/:/" -e "s/'$//"` dconf write /org/gnome/terminal/legacy/profiles:/$DEFAULTPROF/cursor-shape "'$1'"
Make it executable & put it in /usr/local/bin Next, add this to .vimrc
if has("autocmd") au InsertEnter * \ if v:insertmode == 'i' | \ silent execute "!gnome-terminal-cursor-shape.sh ibeam" | \ elseif v:insertmode == 'r' | \ silent execute "!gnome-terminal-cursor-shape.sh underline" | \ endif au InsertLeave * silent execute "!gnome-terminal-cursor-shape.sh block" au VimLeave * silent execute "!gnome-terminal-cursor-shape.sh block" endif
If you use more than one profile in gnome-terminal, you might have to adapt this to your profiles.
For the Gnome-Terminal (version ≥3.16) Edit
This method has the advantage compared to the method above that it influences the given tab only, and not all the tabs that use the given profile. Add the following into .vimrcif has("autocmd") au VimEnter,InsertLeave * silent execute '!echo -ne "\e[2 q"' | redraw! au InsertEnter,InsertChange * \ if v:insertmode == 'i' | \ silent execute '!echo -ne "\e[6 q"' | redraw! | \ elseif v:insertmode == 'r' | \ silent execute '!echo -ne "\e[4 q"' | redraw! | \ end 4000 if au VimLeave * silent execute '!echo -ne "\e[ q"' | redraw! endif
Above snippet disables cursor blinking. If you want cursor blink, just decrement all the 3 numbers above 2,4,6 by one each.
if has("autocmd") au VimEnter,InsertLeave * silent execute '!echo -ne "\e[1 q"' | redraw! au InsertEnter,InsertChange * \ if v:insertmode == 'i' | \ silent execute '!echo -ne "\e[5 q"' | redraw! | \ elseif v:insertmode == 'r' | \ silent execute '!echo -ne "\e[3 q"' | redraw! | \ endif au VimLeave * silent execute '!echo -ne "\e[ q"' | redraw! endif
相关文章推荐
- vim/vi的使用(ubuntu12.04)----->在插入模式下使用方向键移动光标
- Ubuntu & CentOS 禁止终端terminal和vim的光标闪烁
- ubuntu修改terminal终端的主机名的实现方法
- Ubuntu Vim 十六进制模式修改dex文件
- vim中,在插入模式,迅速让光标跳入下一行(生成新一行)
- 将 Ubuntu 终端下默认编辑器修改为 Vim
- ubuntu 10.10 安装google拼音输入法 并实现光标跟随
- Vim保存只读模式下的修改
- Ubuntu 12.04下修改host name 和终端显示
- Ubuntu在恢复模式下无法修改系统文件解决办法
- Ubuntu14.04 下将vim设置为IDE模式
- jQuery实现在光标处插入文本
- Ubuntu下virtualbox nat网络模式下 实现宿主机访问虚拟机
- Ubuntu在恢复模式下无法修改系统文件解决办法
- ubuntu vi编辑器插入模式下方向键与退格问题
- 5.1 vim介绍 5.2 vim颜色显示和移动光标 5.3 vim一般模式下移动光标 5.4 vim一般模式下复制、剪切和粘贴
- vim一般模式下的移动光标的方法
- JS实现在光标位置插入内容
- ARM I.MX51双启动模式实现,Ubuntu 和Wince
- vim 编辑模式下光标移动快捷键