在编辑器里面你怎么样从当前的括号跳到括号后边

2013-03-28 16:25:24 +08:00
 aisensiy
举个例子 * 表示当前的光标位置

var abc = function(arg1*)

想到这个状态

var abc = function(arg1)*

你要怎么做?用 键盘右下角的 -> ? 有什么非常好的办法么

求各大编辑器的实现,vim webstorm eclipse sublime text ...
16029 次点击
所在节点    程序员
43 条回复
fanzheng
2013-03-28 20:59:37 +08:00
*表示的是光标的位置么?sublime text里面,当你输到function的时候,snippet会有提示,按tab键就会补全到
var abc = function function_name (argument) {
// body...
}
然后输入function_name,tab键,输入argument,tab键,输入//body.... tab键不能跳出}
aisensiy
2013-03-28 21:43:43 +08:00
@fanzheng 哦 我用 sublime 的时候似乎忽略了这些
Numbcoder
2013-03-28 22:04:33 +08:00
vim 简单
shiift + a,这样顺便还能在后面打个 ;号
mml
2013-03-28 22:42:40 +08:00
vim, INSERT模式中,我一般是ctrl+o,然后a ,
其实也可以用ctrl+[ 回到normal模式,然后xxx
kran
2013-03-28 23:21:51 +08:00
为何不在vim的插入模式多绑几个emacs的快捷键呢
aisensiy
2013-03-28 23:22:29 +08:00
@mml ctrl + [ 依然不够方便啊,还是有点远 如果把 caps lock 绑上 ctrl 估计好些吧
aisensiy
2013-03-28 23:22:48 +08:00
@kran 说的好
mml
2013-03-28 23:38:51 +08:00
@aisensiy 我本来是把 mbp 的 caps 和esc 换了,不过后来想想还是和ctrl换了,因为还是ctrl用的比较多,
觉得 ctrl+o 比较适合这个场景
:help ins-special-special 里面的说明是: CTRL-O execute one command, return to Insert mode
eth2net
2013-03-29 00:23:59 +08:00
vim中insert mode配置emacs键位,c-e跳出
cassyfar
2013-03-29 00:37:15 +08:00
方向键不是最快的方式吗? 只需要按一次键,而且和(),[],""这些符号距离很近
min
2013-03-29 00:52:35 +08:00
C-f?
aisensiy
2013-03-29 09:34:48 +08:00
@mml 嗯 是的 然后问一句你改 caps 是系同级别还是 vim 级别的改?如果是 vim 里面怎么改?
aisensiy
2013-03-29 09:35:49 +08:00
@eth2net vim 粉们会拒绝这么做吧 o_o
fwee
2013-03-29 09:47:44 +08:00
vim的百分号不就是为了干这个的吗..
dingstyle
2013-03-29 10:52:23 +08:00
楼上有几位理解错了吧,楼主应该是说vim下不离开insert模式要怎么跳出括号。其实如果括号后面就是行尾,按Ctrl-e就可以了。另外,内置自动补全括号的编辑器,直接键入')'光标不就跳到括号外面去了么?
aisensiy
2013-03-29 11:46:59 +08:00
@dingstyle 是的 上面也有人提及这个了呢~
mml
2013-03-29 12:33:51 +08:00
@aisensiy 我是系统级的,因为 osx 和linux下都很多快捷键是ctrl,就直接改系统好了,vim里面木改过。
aisensiy
2013-03-29 12:36:37 +08:00
@mml 哦 好吧
hexor
2013-03-29 12:40:47 +08:00
我来搬个砖好了 非原创 貌似上面有位提到了链接里的东西

Sublime Text 2 中的方式 key-bindings User中 加入

{ "keys": ["enter"], "command": "move", "args": {"by": "characters", "forward": true}, "context":
[
{ "key": "following_text", "operator": "regex_contains", "operand": "^[)\\]\\>\\'\\\"\\ %>\\}\\;\\,]", "match_all": true },
{ "key": "preceding_text", "operator": "not_regex_match", "operand": "^.*\\{$", "match_all": true }
]
}


实现的效果就是 Enter可以跳出括号了

另外 如果同时出现了自动补全的状况 请用Tab键 选择候选词
eth2net
2013-03-29 13:17:49 +08:00
@aisensiy 这键位还是可以引入的

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

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

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

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

© 2021 V2EX