<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div>On 11.05.2010, at 10:09, Ricardo Moran wrote:</div><blockquote type="cite">Hi guys, I uploaded to the inbox the changes I made to the translation framework. After loading that, you can use the following code to split the text domains using the package criteria and export a template:<div><br></div>


<div>=================</div><div><div>domains := Dictionary new.</div><div><br></div><div>"Count tile phrases"</div><div>GetTextExporter2 new appendVocabularies: domains.</div><div><br></div><div>"Count tile phrases"</div>


<div>GetTextExporter2 new&nbsp;</div><div><span style="white-space:pre">                </span>appendStringReceivers: #translated into: domains;</div><div><span style="white-space:pre">                </span>appendStringReceivers: #translatedNoop into: domains.</div>


<div><br></div><div>phrases := Set new.</div><div>domains do: [:domain | domain do: [:translations | translations do: [:each | phrases add: each]]].</div><div><br></div><div>packages := Set new.</div><div>phrases do: [:each| | package |</div>


<div>package := PackageOrganizer default packageOfMethod: each ifNone: [].</div><div>package notNil ifTrue: [packages add: package]].</div><div><br></div><div>TextDomainManager initialize.</div><div>packages collect: [:each | each name] thenDo: [: packageName | TextDomainManager registerPackage: packageName domain: packageName].</div>


<div><br></div><div>GetTextExporter2 exportTemplate.</div><div>==================</div><div><br></div><div>I plan to upload this script to the update stream using the config map (as Bert suggested) but since I don't know how to do it yet I'm simply sending it to you for now. Please tell me if what I'm doing is correct.</div>

<div><br></div><div>Thanks in advance,</div><div>Richo&nbsp;</div>
</div>
</blockquote></div><div><br></div><div>I'll try it later.</div><div><br></div><div>But this does not belong in the update stream. It does not need to be run in everyone's image. Only a developer who wants to produce the templates needs to run it.&nbsp;</div><div><br></div><div>IMHO this belongs into the class initialize method of TextDomainManager. And since modified initializers are run by Monticello when loading the package, there is no need for a changeset at all :)</div><div><br></div><div>Btw, do we even need the&nbsp;TextDomainManager anymore? If package names and translation domains are synonyms, why have yet another registry? Wouldn't PackageOrganizer be enough? At the very least it could be hugely simplified. Same for&nbsp;TextDomainInfo, it basically duplicates PackageInfo.</div><br><div>
<span class="Apple-style-span" style="border-collapse: separate; border-spacing: 0px 0px; color: rgb(0, 0, 0); font-family: Lucida Grande; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: auto; -khtml-text-decorations-in-effect: none; text-indent: 0px; -apple-text-size-adjust: auto; text-transform: none; orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; "><div style="font-family: Helvetica; "><span class="Apple-style-span" style="font-family: Helvetica; ">- Bert -</span></div></span></div><br></body></html>