2

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

我的问题是您是否可以有条件地向这些模板添加部分。你能有一个方法定义模板来填充多个变量并添加它们的局部定义,但前提是它们被填充?

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

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

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

4

2 回答 2

2

在最新的夜间构建(将是 1.5.4)中,它可以通过 Pydev 中的 Jython 脚本来完成。

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

很快,您可以在脚本中定义一个变量,并在 Jython 中将其编程为您想要的样子(并且您可以在创建变量后即时更新模板缓存)。

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

该模块对如何进行有注释(您可以使用该模块作为示例)。

于 2010-01-06T22:42:20.767 回答
1

目前在 Eclipse 编辑器模板中是不可能的。

您可以定义自定义 VariableResolver 来生成您想要的任何内容。但是,我认为这不会满足您的要求。

变量解析器可以返回“”,您基本上必须在解析器中拥有整个模板;在其他模板中不能很好地重用。

抱歉 - 我看不出有任何方法可以做到这一点(尽管我很想拥有这种能力)。

于 2009-12-11T21:01:21.410 回答