aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-08-06Improved automatic source code highlightingAdrian Kummerlaender
* disable indentation in both the page and datasource master stylesheets ** indentation was interfering with correct output of formatted code * simplified call to formatter helper template
2014-08-05Added basic article content embellishmentAdrian Kummerlaender
* i.e. inline code is automatically highlighted using an external syntax highligher
2014-08-04Imported further data from my blogAdrian Kummerlaender
2014-08-04Changed base url and url schemeAdrian Kummerlaender
* base url is now a local webserver for more realistic testing ** i.e. otherwise the atom feed is not served correctly * article, page, tag and stream pages are now generated as "index.html" inside appropriately named directories ** this is needed for pretty urls that actually work
2014-08-04Fixed namespace of atom feed XHTML summaryAdrian Kummerlaender
* all xhtml elements contained a empty xmlns attribute ** this was fixed through a custom "xhtml_copy" mode template
2014-07-28Implemented basic atom feed transformationAdrian Kummerlaender
* atom was choosen in favor of RSS mainly because it is not easily possible to generate the required RSS timestamp in xalan-c (day of the week required) * modified master template accordingly
2014-07-27Removed duplicated xsl output declarationsAdrian Kummerlaender
* the output node is defined in both the master and datasource transformation ** i.e. they do not have to be defined in transformations making use of one of these transformations
2014-07-27Improved article stream title-text templateAdrian Kummerlaender
* returns "Start" for the first page instead of "Page 0" ** this corresponds to the navigation * changed "Start" navigation link in master template * i.e. the index page is named "0", server config will have to be changed accordingly ** thought about generating it as "index" directly ** while this is possible using the XPath evaluation functionality of the target meta attribute the lack of a if-statement in XPath 1.0 would require a very ugly workaround (e.g. the answer to http://stackoverflow.com/questions/971067/is-there-an-if-then-else-statement-in-xpath)
2014-07-27Implemented article stream generationAdrian Kummerlaender
* stream transformation is iterated over the paginated article datasource implemented in 854eab6 * stream template contains navigation generation for traversing the article stream
2014-07-27Implemented paginated meta article datasourceAdrian Kummerlaender
* paginates article datasource into chunks of two articles ** this is needed to generate a normal blog article stream ** includes index and total pages for each page entry * to be resolved against the normal article datasource
2014-07-27Renamed "year" node to "entry" to match other datasourcesAdrian Kummerlaender
2014-07-26Implemented basic archive page templateAdrian Kummerlaender
* displays articles in descending order grouped by year ** based on the article metadata source implemented in adbe381
2014-07-26Implemented articles meta datasource grouped by yearAdrian Kummerlaender
2014-07-26Added separate year node to article datasourceAdrian Kummerlaender
* this is needed for the implementation of a article datasource grouped by year ** this in turn is needed for the archive page template * modified tags meta transformation and article result transformation accordingly
2014-07-26Removed unnecessary namespace declarationsAdrian Kummerlaender
* xalan and/or InputXSLT namespace should only be included when they are actually required
2014-07-26Changed date formatting to ISO / EnglishAdrian Kummerlaender
* dates in lists such as the tag list are displayed in plain ISO formatting ** this way the article titles all start at the same horizontal offset which I find much more visually pleasing * dates on article pages are formatted in the English way instead of in English but formatted as in Germany
2014-07-26Added descending sort by date to article datasourcesAdrian Kummerlaender
2014-07-26Added meta datasourceAdrian Kummerlaender
* merges the content of the "00_content/meta.xml" file with additional data such as the available tags * simplifies providing a basic datasource to every result transformation * modified master, article and tag page template accordingly
2014-07-26Included unaugmented tag datasource into the page footerAdrian Kummerlaender
* the master template generates a list of all available tags into the footer ** this currently requires the unaugmented tags datasource to be included into every template making use of the master template
2014-07-26Added unaugmented tags datasourceAdrian Kummerlaender
* contains tags and their articles but no further article data * the unaugmented tags datasource is merged with article data on the metadata level
2014-07-25Added root variable to datasource templateAdrian Kummerlaender
* this was done to simplifiy support data queries while resolving the main datasource
2014-07-25Changed master template text elements to EnglishAdrian Kummerlaender
2014-07-25Implemented tag overview page generationAdrian Kummerlaender
* added "tags.xsl" meta datasource ** augments tags and their articles extracted from the content tree with article data from the article datasource * added basic tag page template * renamed "pages" directory to "page" as it is more intuitive from a user perspective
2014-07-25Moved result transformations into "99_result"Adrian Kummerlaender
* otherwise it is not easily possible to add additional datasource layers between the content and result generation level * changed meta url appropriately
2014-07-24Implemented basic article tagging facilityAdrian Kummerlaender
* articles are tagged by symlinking them to the appropriate "tag" in the "tags" directory * tags are resolved by the article datasource transformation * added tags for the example articles
2014-07-24Added basic article datasource and output transformationsAdrian Kummerlaender
* articles contain the handle and date in their file name ** i.e. it is split using XPath string functions ** usage of the ISO date format provides automatic ordering * added some articles from my blog as example data
2014-07-23Added recursive traversion of all folders in each levelAdrian Kummerlaender
* enables representing the result folder structure in the source ** e.g. the "page.xsl" transformation is located in "source/pages" and the result is therefore written to "target/pages" ** this enables simplification of target metadata as it is now automatically relative to the level * modified page template accordingly
2014-07-22Restructured generation logic into separate templatesAdrian Kummerlaender
* root template iterates through the levels and calls the "process" template for each stylesheet * the "process" template handles metadata extraction and main datasource resolution ** calls "compile" template for generation preparation * the "compile" template resolves the support datasources, merges the final datasource and resolves the target path using additional helper templates * actual generation of the result is preformed by the "generate" template as before
2014-07-21Based file source transformation on the datasource templateAdrian Kummerlaender
2014-07-21Moved compiler template parameters into variablesAdrian Kummerlaender
* they are overlapping between the different main datasource modes
2014-07-20Split page datasource entry into title and contentAdrian Kummerlaender
* 'h1' node is used as title and any other node as content * modified result page transformation accordingly
2014-07-20Removed unnecessary extension distinction from page datasourceAdrian Kummerlaender
2014-07-20Implemented new "layered" site generation architectureAdrian Kummerlaender
* "source" directory contains layers as subdirectories ** ordered by their name ** e.g. layer 0 is "00_content" and contains the content alongside some metadata * transformations contained within the "source" layers are processed sequentally * transformations define their requirements in a "meta" variable ** the "meta" variable is interpreted by the core transformation "generate.xsl" * requirements are currently datasources and target information ** every transformation may have one datasource of type "main" *** this data source offers e.g. the option to iterate over it ** every transformation may have a arbitrary number of "support" datasources *** e.g. "meta" is a support datasource ** the target node may provide a fixed target path or a Xpath to be evaluated * the result of each transformation is written to the appropriate layer of the "result" directory * this approach to XSLT based static site generation should be quite flexible and offer good expandability ** e.g. adding new datasource options and types
2014-07-19Reactivated basic page generationAdrian Kummerlaender
* page template is called by the pages compiler * modified master transformation to match new meta structure * the context variable needed by the context transformation now has to be defined in every template using the transformation ** this is needed to accomodate different input DOM structures
2014-07-17Implemented basic page compilation facilitiesAdrian Kummerlaender
* templates in 'template/compiler' are automatically generated ** required datasources are extracted and merged automatically ** 'pages.xsl' is currently a dummy compiler * moved context helper templates into context stylesheet * added compiler directory to meta DOM * modified generator and transformer helper templates to enable usage of DOM as input
2014-07-16Added datasource master templateAdrian Kummerlaender
* handles basic output structure * provides XSLT standard template "text()/@*" redefinition to prevent unwanted output of unmatched elements
2014-07-16Restructured to enable automatic datasourcesAdrian Kummerlaender
* i.e. first the content source is mapped * after that every transformation in 'template/datasource/' is called using the content map as input ** the output of the datasource transformations is stored in 'datasource/'
2014-07-15Added "transform_in_context" helper templateAdrian Kummerlaender
* handles inclusion of the meta DOM in the input source of transformations called through that template ** i.e. simplifies transformation chaining
2014-07-14Initial commit of basic generator structureAdrian Kummerlaender
* including example data and current "/home/adrian" layout