Code source wiki de Export To Markdown

Version 2.1 par René Vögeli le 2026/03/25 10:30

Masquer les derniers auteurs
René Vögeli 2.1 1 {{groovy}}
René Vögeli 1.1 2 import org.xwiki.environment.*
3 import org.xwiki.model.reference.*
4
5 if (request.confirm == '1') {
6 services.query.xwql("select distinct doc.fullName from Document doc where doc.space like 'Sandbox' or doc.space like 'Sandbox.%'").execute().each() {
7 print "* Converting ${it} to MD..."
8 def itemDoc = xwiki.getDocument(it)
9 def newContent = services.rendering.render(itemDoc.getXDOM(), 'markdown/1.2')
10 def tmpDir = new File(services.component.getInstance(Environment.class).temporaryDirectory, 'md-export')
11 def pathSerializer = services.component.getInstance(EntityReferenceSerializer.TYPE_STRING, 'fspath')
12 def outputFile = new File(tmpDir, pathSerializer.serialize(itemDoc.documentReference))
13 outputFile.parentFile.mkdirs()
14 outputFile << newContent
15 println "Saved in ${outputFile.toString()}"
16 }
17 }
18
19 println "[[Export>>||queryString='confirm=1']]"
René Vögeli 2.1 20 {{/groovy}}