Eclipse模板中的条件语句

时间:2009-12-11 19:26:55

标签: python eclipse templates pydev

Eclipse模板可以在编码时自动插入文本和变量。当变量与$ {variable}形式一起使用时,该值将自动插入。

我的问题是你是否可以有条件地为这些模板添加部分。您是否可以使用方法定义模板来填充多个变量并添加它们的本地定义,但前提是它们是否已填写?

def method(${var1}, ${var2}, ${var3}):  
   self.${var1} = ${var1}  
   self.${var2} = ${var2}  
   self.${var3} = ${var3}  

那么,$ {var2}和$ {var3}局部变量只有在方法定义中存在定义时才存在?

这个问题专门用于PyDev的Python开发,但也欢迎其他语言的答案。

2 个答案:

答案 0 :(得分:2)

可以通过Pydev中的Jython脚本在最新的每晚构建中完成(将是1.5.4)。

有关获取此内容的详细信息,请参阅http://pydev.org/download.html

很快,您可以在脚本中定义一个变量,并在Jython中对其进行编程,使其符合您的预期(并且您可以在创建变量后动态更新模板缓存)。

默认情况下会定义一些变量,如:http://github.com/aptana/Pydev/blob/master/plugins/org.python.pydev.jython/jysrc/pytemplate_defaults.py

该模块有关于如何继续的评论(您可以使用该模块作为示例)。

答案 1 :(得分:1)

目前在eclipse编辑器模板中无法实现。

您可以定义自定义VariableResolvers,生成您想要的任何内容。但是,我不认为这会做你想要的。

变量解析器可以返回“”,你必须在解析器中基本拥有整个模板;在其他模板中不可重复使用。

抱歉 - 我认为没有办法做到这一点(虽然我很想拥有这种能力)。

相关问题