如何解决HOME和END键在Vim中有问题
| 我在Ubuntu上。我是Vim的初学者。我在/etc/vim/vimrc
中有用于主键和结束键的设置键映射。
它在终端上正常工作,但是当我在Guake终端上编辑文件时,这些映射不起作用。我这次只有这个问题。上次(我的意思是在重新安装Ubuntu之前)在每个终端上都运行良好。
我试过了
set term=xterm
但它仍然无法正常工作。
如果有人帮助我,那将是非常好的。另外,如果有人可以给我有关映射的其他键的附加信息或其他有用的东西,那将非常好。
-
vimrc:
if has(\"syntax\")
syntax on
endif
//这只是我添加的
if filereadable(\"/etc/vim/vimrc.local\")
source /etc/vim/vimrc.local
endif
map <ESC>[8~ <End>
map <ESC>[7~ <Home>
imap <ESC>[8~ <End>
imap <ESC>[7~ <Home>
所有的评论都被评论了
我想补充一点,我不认为这是vimrc文件的问题,因为当我处于插入模式或普通模式时,此配置允许我在终端中使用这些END和HOME键。但不能使用guake。(如果我输入错误,请纠正我。)
仍然希望您现在可以帮助我。
-
解决方法
在vim中,您可以使用$到达当前行的结尾,并使用^到达行的开头。键入时,我发现这些字符比Home和End更舒适。
希望能帮助到你 :)
-戴夫
, 我不知道这是否对您有用,但对我有用:
我注意到TERM设置为“ linux”(请检查“ echo $ TERM”)。
然后有两种解决方法。
第一)
将.bashrc或您的自定义配置文件更改为:
export TERM=\'xterm\'
要么
第二)
将这些行添加到您的.vimrc中:
\" Fix home/end key in all modes
map <esc>OH <home>
cmap <esc>OH <home>
imap <esc>OH <home>
map <esc>OF <end>
cmap <esc>OF <end>
imap <esc>OF <end>
, 我在使用6ѭ时遇到了同样的问题,也许您至少可以通过相同的步骤对其进行更好的调试。
对我而言,一切正常,直到我从gnome终端切换到urxvt
。我按照此链接的说明进行了解决:
https://wiki.archlinux.org/index.php/Home_and_End_keys_not_working
原来,我的.bashrc中有“导出TERM”(然后删除了)。
我还修复了.Xdefaults(URxvt * termName:rxvt-unicode-256color)
和我的.tmux.conf(设置-g default-terminal rxvt-unicode-256color)
您可以按照该archlinux链接中的步骤操作,并告诉我们它是否有效。
我本来将其作为评论,但我没有足够的要点。
另外,这里获得一些投票的答案并不能完全回答问题。
今天我做了更多测试:
我测试了什么:CentOS中的ssh连接;
机器1-无tmux-$ TERM = ansi
机器2-tmux-$ TERM = screen-256color
在这两种情况下,将$ TERM设置为rxvt-256color都可以解决此问题。
(如果您在他们的conf文件中使用tmux / screen设置,则在.bashrc中设置)
在我的机器上尝试过相同的(debian-tmux-urxvt-neovim);而且有效。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。