我正在使用emacs cperl-mode。当我输入
if(
它为我提供了代码模板:
if(<cursor goes here>){
}
但我想这样做:
if(<cursor goes here>){
<tab, according to the mode>
}
所以在我在'if'中写入条件后,我不需要点击<End>
<Enter>
<tab>
,只需要点击<Down arrow>
。
同样的方法可以用于类似的情况:while,for等等。
答案 0 :(得分:2)
我使用Yasnippet来涵盖这种情况:
YASnippet是Emacs的模板系统。它允许您键入 缩写并自动将其扩展为功能模板。 捆绑的语言模板包括:C,C ++,C#,Perl,Python,Ruby, SQL,LaTeX,HTML,CSS等。片段语法的灵感来源于 TextMate的语法,您甚至可以导入大多数TextMate模板 YASnippet。
你的情况只是 i f tab condition tab 然后阻止。
在cperl-mode
中,您有以下默认模板:
eval,for,fore,if,ife,ifee,sub,除非,while,xfore,xif,xunless,xwhile
和 - 更令人敬畏的是 - 您可以轻松write your own templates或编辑现有的。