vim在文本输入模式怎么向右移动光标?

2012-05-15 09:06:33 +08:00
 Esay
vim使用插件可以补全括号,但是变量名写完之后总得按箭头很不爽,默认设置中有没有在输入模式向右移动的快捷键?
9539 次点击
所在节点    Vim
21 条回复
ugoa
2012-05-15 09:45:12 +08:00
输入模式下只能用箭头控制光标, 所以我习惯把这些用Emacs下的快捷键来映射:

inoremap <C-e> <END>
inoremap <C-a> <HOME>
inoremap <C-f> <Right>
inoremap <C-b> <Left>
inoremap <M-f> <S-Right>
inoremap <M-b> <S-Left>
inoremap <M-n> <Down>
inoremap <M-p> <Up>

用control组合键来控制输入模式下的光标移动,这样就不用去按箭头,方便多了。
Esay
2012-05-15 10:57:59 +08:00
@ugoa 这样结合很符合mac下输入的习惯啊 十分感谢!
ugoa
2012-05-15 11:15:57 +08:00
@Esay 如果你再把Ctrl键和Cap键的键位互换一下的话,效率会更高的,呵呵,不过这是个人习惯问题。
Esay
2012-07-11 11:24:35 +08:00
@ugoa 不知道为什么 在MacVim下


inoremap <M-f> <S-Right>
inoremap <M-b> <S-Left>
inoremap <M-n> <Down>
inoremap <M-p> <Up>

这四个映射是失效的。

在命令行输入 :imap

ant_sz
2012-07-11 11:28:23 +08:00
@Esay 下meta键很纠结的,貌似是先按一下esc神马的…
ivenvd
2012-07-11 11:29:38 +08:00
有些插件可以直接按 TAB 跳转到括号后面输入。
一般插件则是直接按 )]} 就可以覆盖掉直接写。
另外插入模式可以按 M-L 后移并进入普通模式。
mitnk
2012-07-11 12:27:57 +08:00
我是输入 () 后按ESC,再按i 来编辑的,没有感觉太纠结。
(如果是 {\n}的话,输入后ESC,再按大O进行内容插入)

当括号里内容很少,或已经构思好的情况下, 先 ( 然后输入内容,再输入 ).
mitnk
2012-07-11 12:33:37 +08:00
啊,貌似我看错问题了。。。 - -!

问题是:输入好()里的内容再如何移动到括号右边吗?

我是先ESC再按A的。
用vim基本用不到光标键(除了输入search命令时偶尔用到)
darasion
2012-07-11 12:39:28 +08:00
只有自动缩进就好。

自动补全的功能很可怕,经常引入各种 bug !想都不想的用了一个提示的函数,很多时候看起来像,但不是想要的。找 bug 很麻烦。
9
2012-07-11 13:04:19 +08:00
Esay
2012-07-11 13:22:05 +08:00
@ant_sz 哦 我的meta键好像是option 按下option再按字母都是特殊符号
Esay
2012-07-11 14:14:41 +08:00
@mitnk 都是很有用的技巧,谢谢啦
jerommix
2012-07-27 14:52:52 +08:00
auto.vim
wuhx
2012-07-27 19:50:32 +08:00
这个问题也困扰了我很久,后来换成emacs + evil 模式
然后ctrl+f

玩括号必然是paredit了
lyklykkkkkkk
2012-07-28 04:49:33 +08:00
inoremap <Space><Space> <Right>
Esay
2012-07-28 08:16:13 +08:00
@wuhx 因为最近用xcode多一点 所以也比较习惯用ctrl+f了 看来我应该试试emacs
dingstyle
2012-07-28 13:23:11 +08:00
按照楼主这种情况,应当在插入模式下键去文本,按ESC,然后按A跳到行尾(也就是括号后面),再按i继续插入。
VIM之所以没有很方便的插入模式下移动光标的方法,是因为不鼓励这种方式——按下ESC回到普通模式,便可以很迅速地定位到文本中任何位置,且手不需要离开home区。我相信这不比C-或M-这类组合键效率更低。
NemoAlex
2012-07-28 13:33:05 +08:00
@9 这东西没有 README 么,怎么看啊
yache
2012-07-29 14:40:02 +08:00
收藏了。
phay
2012-07-29 18:43:48 +08:00
是因为对于modal-editing的不适应,才会有这种键绑定需求么?那么可能emacs以及其各种图形简化编辑器可能比较负荷lz需求

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/35972

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX