Révision 2799
tmp/org.txm.groovy.core/src/groovy/org/txm/scripts/importer/xtz/XTZPager.groovy (revision 2799) | ||
---|---|---|
51 | 51 |
|
52 | 52 |
if (orderedTextIDs == null) { module.getProject().getTextsID() } |
53 | 53 |
|
54 |
if (!doDefaultEditionStep()) return; |
|
55 |
if (!doFacsEditionStep()) return; |
|
56 |
|
|
57 |
// remove extra XSL editions -> they will be recreated by the doPostEditionXSLStep call |
|
54 |
def xslEditionsToBuild = getXSLEditionsToBuild() |
|
55 |
if (!xslEditionsToBuild.contains("default")) { // avoid building the default edition if an XSL edition will build it |
|
56 |
if (!doDefaultEditionStep()) return; |
|
57 |
} |
|
58 |
|
|
59 |
if (!xslEditionsToBuild.contains("facs")) { // avoid building the facs edition if an XSL edition will build it |
|
60 |
if (!doFacsEditionStep()) return; |
|
61 |
} |
|
62 |
|
|
63 |
// remove extra XSL edition defintions (except default and facs) -> they will be recreated by the doPostEditionXSLStep call |
|
58 | 64 |
for (EditionDefinition eDef : project.getEditionDefinitions()) { |
59 | 65 |
if (eDef.getName() != "facs" && eDef.getName() != "default") { |
60 | 66 |
eDef.delete(); |
... | ... | |
280 | 286 |
println "" |
281 | 287 |
return true; |
282 | 288 |
} |
289 |
|
|
290 |
public List<String> getXSLEditionsToBuild() { |
|
291 |
def names= [] |
|
292 |
File xslDirectory = new File(module.getSourceDirectory(), "xsl/4-edition") |
|
293 |
if (xslDirectory.exists()) { |
|
283 | 294 |
|
295 |
def xslFiles = xslDirectory.listFiles() |
|
296 |
xslFiles = xslFiles.sort() { f -> |
|
297 |
try { |
|
298 |
return Integer.parseInt(f.getName().substring(0, f.getName().indexOf("-"))) |
|
299 |
} catch(Exception e) {} |
|
300 |
return -1; |
|
301 |
} |
|
302 |
def editionsCreated = [:] |
|
303 |
for (File xslFile : xslFiles) { |
|
304 |
if (xslFile.isDirectory() || xslFile.isHidden() || !xslFile.getName().endsWith(".xsl")) continue; |
|
305 |
if (!xslFile.getName().matches("[1-9]{1,3}-.+")) continue; |
|
306 |
|
|
307 |
String xslName = xslFile.getName().substring(2); // remove the "1-", "2-", etc. |
|
308 |
int idx2 = xslName.indexOf(".") |
|
309 |
if (idx2 > 0) xslName = xslName.substring(0, idx2) |
|
310 |
else { |
|
311 |
println "$xslFile is not a '.xsl' file" |
|
312 |
continue; |
|
313 |
} |
|
314 |
int idx3 = xslName.indexOf("-") |
|
315 |
if (idx3 < 0) { |
|
316 |
println "$xslFile file does not follow the '{Number}-{editionName}-{step}.xsl' name pattern" |
|
317 |
continue; |
|
318 |
} |
|
319 |
String pagerStep = xslName.substring(idx3 + 1); |
|
320 |
String editionName = xslName.substring(0, idx3); |
|
321 |
|
|
322 |
int idx = editionName.indexOf(".") |
|
323 |
if (idx > 0) editionName = editionName.substring(0, idx); |
|
324 |
|
|
325 |
names << editionName |
|
326 |
} |
|
327 |
} |
|
328 |
return names; |
|
329 |
} |
|
330 |
|
|
284 | 331 |
/** |
285 | 332 |
* read from $bindir/txm and write the result in $bindir/txm |
286 | 333 |
* |
Formats disponibles : Unified diff