diff --git a/src/Markdeep/LePage.extension.st b/src/Markdeep/LePage.extension.st index 16352fb..23ad9ce 100644 --- a/src/Markdeep/LePage.extension.st +++ b/src/Markdeep/LePage.extension.st @@ -1,5 +1,34 @@ Extension { #name : #LePage } +{ #category : #'*Markdeep' } +LePage >> asMarkdeep [ + | bodyStream markdeep | + bodyStream := '' writeStream. + self preorderTraversal do: [:snippet | + bodyStream nextPutAll: snippet asMarkdeep + ]. + markdeep := Markdeep new + title: self title; + body: bodyStream contents; + navTop: self navTop. + self metadata keysAndValuesDo: [:k :v | + k = 'lang' + ifTrue: [ + markdeep head + add: ''; + yourself. + ] + ifFalse: [ + markdeep head + add: ''; + yourself. + ] + ]. + self metadata at: 'authors' ifPresent: [:author | markdeep metadata at: 'authors' put: author ]. + self metadata at: 'version' ifPresent: [:version | markdeep metadata at: 'version' put: version ]. + ^ markdeep. +] + { #category : #'*Markdeep' } LePage >> asMarkdeepFile [ | folder |