我学习Vim for development已经有5个星期左右了,虽然事情已经开始深入,但我有一个令人沮丧的个人问题仍然困扰着我。
我经常用'i‘来提升自己。“k”是向下的,“j”和“l”分别是左和右。
我知道这一切都是因为玩了太多年的电脑游戏,这些游戏都是方向运动。老实说,我不想再和它斗争了,我宁愿做对我来说非常自然的事情。我如何重新映射这些,以便上面的是方向移动,而'h‘是插入?
2个问题:如何将这些设置永久存储在本地设置中,以便在我自己的计算机上进行开发,以及当我在别人的计算机上工作时,如何快速切换这些设置。我的意思是,有没有一组我可以调用的命令,然后当我关闭Vim时它们就会被删除?
发布于 2013-03-04 07:48:50
将其放在一个名为~/.vimrc的文件中
noremap i k
noremap k j
noremap j h
noremap h i如果您在其他人的计算机上使用vim,您可以在提示符处输入相同的四个命令(在每个命令之前键入:,在每个命令之后键入enter ),并且这些设置将仅应用于一个会话。
此外,no是noremap的缩写,因此您可以将整个序列缩短为
:no i k<enter>:no k j<enter>:no j h<enter>:no h i<enter>当你使用别人的电脑时。
发布于 2013-03-04 08:12:43
不做这种映射!它甚至比使用箭头键还要糟糕
首先,我建议你学习vim移动光标的方式。
回到你的问题,重新映射h,j,k,l很简单。然而,做这些映射是没有意义的(你也不应该这样做),它不会让你工作得更快,当你使用vim时,它只会让你发疯。你知道,用vim编辑并不意味着
在正常模式下,只需做moving
你可以在NORMAL模式下使用很多vim魔术(这就是为什么它被称为NORMAL)。使用您的映射,当您想要应用这些映射时,您将真的很头疼。让我们举个例子。假设您已经为您的需求设置了映射。i,j,k and h。我们有一句话:
function foo (String arg)当光标在(和)之间时,您可以输入ci(来更改括号中的内容。但是,您的i意味着k。会发生什么呢?当前行及其上方的行将被删除!!你可能会说,你会记得输入chw, dhw,ch(,dhw...,所以你必须在你的脑海中重新映射这些键。:)
此外,当你想“借用”别人的.vimrc,或者使用一些插件时,你也会遇到问题。
您可以通过上面的简单示例了解这一点。因此,在重新映射这些基本键之前,请三思。
https://stackoverflow.com/questions/15192284
复制相似问题