<AddIn name = "SharpDevelop Core"
author = "Mike Krueger"
copyright = "GPL"
url = "http://www.icsharpcode.net"
description = "NCvs core module"
version = "1.0.0">
<Runtime>
<Import assembly="SharpDevelop.Base.dll"/>
<Import assembly="CSharpParser.dll"/>
</Runtime>
<Extension path = "/SharpDevelop/Workbench/Ambiences">
<Class id = "Net"
class = "ICSharpCode.SharpDevelop.Services.NetAmbience"/>
<Class id = "CSharp"
class = "ICSharpCode.SharpDevelop.Services.CSharpAmbience"/>
<Class id = "VB.NET"
class = "ICSharpCode.SharpDevelop.Services.VBAmbience"/>
</Extension>
其中Extension下的XmlNode节点名称Class就是要与Assembly中的Codon对应的设置节点!!
见英文版的电子书的关于这个问题的说明:
The AbstractCodon class provides the basic functionality, which every codon must have.
We already know that codons are XML-defined objects. The codon responsible for a specific XML node is
determined by the node name. This node name and the codon name, which is given by the
CodonNameAttribute, must be equal. The core locates the codon that has a CodonNameAttribute,
which matches the XML node name. After that a new CodonBuilder is created for these types, which is
handed over to the CodonFactory.
注意,这里明确已经说明了Codon的名称是Xml文件中定义的XmlNode名称!!以前不知道怎么理解的!唉~郁闷!