使用SHIFT+箭头选择vim/MacVim中的文本

使用SHIFT+箭头选择vim/MacVim中的文本,vim,macvim,textselection,Vim,Macvim,Textselection,MacVim中一个更好的特性是,可以使用常用的OS命令来复制和粘贴文本,即其中的command+C和command+V 这在你刚刚在另一个编辑器工作过一分钟,而你的大脑还没有准备好建议你的手指如何输入真实的东西的情况下尤其好 然而,有一件事我的大脑需要做一些思考:那就是文本选择模式。在非vi编辑器中,我会使用Shift+Arrow来实现这一点,但在MacVim中尝试这一点是行不通的。但另一方面,在我看来,Shift+Arrow也没有被用于任何其他用途。是否可以重新映射密钥以实现此目的 理想情况下

MacVim中一个更好的特性是,可以使用常用的OS命令来复制和粘贴文本,即其中的command+C和command+V

这在你刚刚在另一个编辑器工作过一分钟,而你的大脑还没有准备好建议你的手指如何输入真实的东西的情况下尤其好

然而,有一件事我的大脑需要做一些思考:那就是文本选择模式。在非vi编辑器中,我会使用Shift+Arrow来实现这一点,但在MacVim中尝试这一点是行不通的。但另一方面,在我看来,Shift+Arrow也没有被用于任何其他用途。是否可以重新映射密钥以实现此目的

理想情况下,编辑器在选择文本后仍将处于插入模式;这将节省一些额外的按键。

来自手册:

Mac OS X上的文本编辑器允许用户 按住shift+movement键可伸展 选择。另外,按 选择时可打印的按键 将当前选择替换为 那个角色。MacVim可以模仿 这种行为是通过提供 键绑定,并通过设置“keymodel” 并将“selectmode”设置为非默认值 值,尽管它不是由启用的 违约为了让MacVim表现得更好 像TextEdit和Vim一样,添加 将以下行添加到~/.vimrc 非.gvimrc文件:


作为对自己的提醒和对他人的简洁提示:

由于SHIFT+箭头选择和鼠标选择现在自动启动选择模式,这意味着使用鼠标或箭头键进行视觉选择显然不那么容易。即使已经处于视觉模式,鼠标选择仍将触发选择模式。因此,每当需要对选择应用命令时,以下方法都会有所帮助

使用鼠标或SHIFT+箭头选择文本 按ESC键取消选择 按gv自动重新选择上一选择并触发视觉模式
编辑:同样可以使用简单的CTRL+g来完成。

这是一个很好的问题,但我建议将其作为程序配置问题移动到超级用户。与此处讨论的emacs问题非常类似:关于meta。您是否希望在选择后处于插入模式,因为您正在替换选择,就像您将按c键清除选择并进入插入模式一样,还是出于其他原因?在我看来,如果你有一个选择,你是在视觉模式,因此不能在插入模式。我想留在插入模式,因为我不想离开插入模式,除非真的有必要。在“普通”文本编辑器中,当您选择文本时,还将保持插入模式。更多的是出于“过渡性”的原因;正如我所说,复制、粘贴,甚至通过命令键保存也可以在插入模式下工作。@dmckee:看看vim配置提示的加载情况,我实际上没有想到SU会解决这个问题。我不介意它被移动;但我想现在已经有人回答了。太好了。谢谢。看起来这正是我一直在寻找的东西。不过,一个小麻烦是,现在我甚至需要在视觉模式下按shift键来使用箭头键。习惯“hjkl”的时间到了……您可以添加set selectmode=以避免默认情况下进入选择模式。使用Ctrl+g在选择和视觉模式之间切换。就我个人而言,我喜欢在大多数时候使用SHIFT+arrow时处于选择模式;但无论如何,Ctrl+g是个好主意。比ESC,g,v简单一点。
if has("gui_macvim")
    let macvim_hig_shift_movement = 1
endif