我终于做了大跳,让Vim留给了Emacs,我可以说我已经非常高兴了(现在不是速度......但是会赶上来)。 / p>
但是,有一件事我想弄明白......
例如,当我在 C 中编写for循环时,添加一个开括号,这就是我得到的
code1 http://i57.tinypic.com/2re16as.png
然后我按C-j
展开大括号,这就是我结束的地方。
code2 http://i57.tinypic.com/33o776v.png
问题是,我已经习惯了(这就是我的vim的配置方式)
code3 http://i60.tinypic.com/11s2e4o.png
但我无法弄清楚如何做到这一点......我刚刚开始使用emacs和lisp,并且看起来已经被那个小小的东西所淹没了。我已经映射了一个和弦,所以当我按kk
时,我在当前行上方插入一个空行并正确缩进。所以现在,我所做的是RET kk
,但我希望我的返回键能够自行完成。
答案 0 :(得分:3)
悬挂式牙套
要指定要放置自动换行符的大括号类型,请设置样式变量c-hanging-braces-alist
。
,例如,将大括号与for
保持在同一行,并在其后插入换行符
(custom-set-variables
'(c-hanging-braces-alist (quote ((substatement-open . (after))))))
另一种方法可能是使用Yasnippet并定义适当的模板
# -*- mode: snippet -*-
# name: for
# --
for ($1; $2; $3) {
$0
}
现在您可以输入 和标签,Yasnippet会自动插入
for (; ; ) {
}
并等待您插入字段,并在完成后将光标留在大括号之间。