Age | Commit message (Collapse) | Author |
|
* XHTML elements "h2" and "h3" are replaced with "h3" and "h4" respectively
** modified all existing contents accordingly
** this was done to avoid the gap between the primary heading and subheadings in the markdown depiction of the contents
* fleshed out the InputXSLT project page with further information
|
|
* modified master transformation accordingly
* fixed small syntax and grammer error in about page content
** missing dot and missing "and"
|
|
* comment paragraphs were neither separated nor justified
* columns on archive page were incororrectly split inside their content in Chromium
** i.e. added "column-break-inside: avoid" property
|
|
|
|
|
|
* basic legal information is provided in English
** further information is provided in German of a separate page
|
|
* there is no reason for generating absolute links as the resulting pages will be served on their own domain
|
|
|
|
|
|
* Isso improvements
** textarea placeholder font-color
** comment footer font-size
* lines of "pre" elements did not break correctly
* minified all CSS expressions using YUI
|
|
* [isso](http://posativ.org/isso/) is a Disqus like commenting system written in Python
** self-hosted i.e. no privacy implications
** lightweight and provides all the features I require for this blog
* I thought about implementing a commenting system in InputXSLT but sadly I just don't have the time to think of and implement a reasonable XSLT based solution
** maybe a simple REST service for pushing XML from the client into article-dependend comment directories can be implemented in the future
* added basic CSS styling for isso comments simmilar to how they currently look in the old Symphony CMS based blog
|
|
* _obfuscated_ addresses used "punkt" and "ät" instead of "dot" and "at" to symbolize special characters
* cgit link was missing a closing colon
|
|
* documenting the basic functionality and behaviour of the static site generation process
|
|
|
|
|
|
|
|
* it was primarily implemented this way to complement the CSS layout of the page
* after trying different approaches it turned out that plain sorting by digest size gives the best results for the contents of my personal page
|
|
* the bootstrapping transformation is not specific to this project and may be used as a starting point for all kinds of projects making use of InputXSLT
** this is why it was extracted into the separate BuildXSLT repository
* the new "make.xml" _Makefile_ has to be passed as input to "build.xsl"
** e.g. "ixslt --input make.xml --transformation ../BuildXSLT/build.xsl"
* "make.xml" defines the basic transformation chain and its input
|
|
* the summarization is generated as plain text and is the sole output of the make stylesheet
** i.e. the correct XSL output method is text, not xml
|
|
* a recent change to InputXSLT enables transformations passed to FunctionGenerate as DOM-trees to behave exactly as if they where located in the same directory as the calling transformation
|
|
* they are read by FunctionReadFile to and passed to FunctionGenerate as a DOM tree to execute them as if they where located in the parent directory
** this is required so they behave as expected without requiring all paths to be absolute
* this change was implemented to make it clear that "make.xsl" is the main generation stylesheet
** additionally this further separates the framework implementation from the site-specific stylesheets and contents
|
|
* "00_content" directory is now explicitly referenced
* added "source_tree" variable to task processing transformation
** changed datasource meta-tag expressions to reference "source_tree" instead of "$root/source"
|
|
* functionality for formatting markdown using kramdown and embellishing the result with e.g. syntax highlighting is required for all content types
|
|
* as both the "expression" and "full" mode require only a single call to the "compile" helper template they where merged
** this enabled us to completly remove the fallback call to "compile"
* this outer choose statement decides between the "iterate" mode and single call modes
|
|
* "01_files" contained a single "source" transformation which listed the contents of the "00_content" level
** this was unnecessary as the base "list" transformation already lists the contents of all levels
* added new "expression" mode to datasource meta tag processing in the task processing transformation
** this expression modes allows for the evaluation of arbitrary XPath statements
*** e.g. a query to the results of "list.xsl"
* modified base transformation datasource structures to include the level and meta tree
* modified all existing content transformations to query the level-tree instead of the deprecated "source.xml"
** i.e. XPath statements
** the main change is that directories are available as "directory" nodes instead of nodes named by the directory name
* these changes where implemented to simplify the architecture and to increase flexibility
|
|
* modified all transformations requiring the author name accordingly
|
|
* the article "2014-07-11_mapping_arrays_using_tuples_in_cpp11" contained a full link to blog.kummerlaender.eu instead of an relative one
* the page "input_xslt" contained a wrong cgit link
|
|
* transformations contain one or more "datasource" meta nodes
** these nodes define the required datasources
** up until now it was required to define the whole path to the file to be loaded
* the implementation of directory linkage in b942f8e removed the underlying need for providing the source / target prefix
** this commit now updates the generation transformations to match this change
*** this simplifies the datasource definition process for the end-user
*** additionally it makes the target / source directories easier to maintain
* changed cleanage task implementation to remove the whole directory and recreate it from scratch
** otherwise directory linkage and in turn the whole generation failed when the target directory did not exist in the first place
* removed task reordering in the process transformation
** tasks are now processed exactly as they were scheduled
** this was changed so that e.g. the "00_content" directory is linked before the first datasource is required
|
|
* counter value for total and successful tasks moved into named variables
** this improves readability of success summarization logic
|
|
* fixed prettylist CSS to work in both WebKit and Gecko
|
|
* generation errors are returned in the "log" node of the appropriate task node
* "summarize.xsl" transforms the nodes of all failed tasks into a easily readable plain-text version
** the output is specialized on the different task types
|
|
* correct sorting by size requires the "data-type" attribute to be set to "number"
* pages are now first sorted as two halves
** descending / ascending respectively
* the sorted set is then split into actual halves
* the output loop alternates between these halves
* changed test for existance to actual test for existance instead of calculating it by ourselfes
|
|
* random sort order of page-entries on category pages led to unsatisfing results
* the entries are now sorted in an alternating fashion depending on their digest length
* this produces a much more consistent and balanced output
|
|
* "summarize.xsl" processes the result-tree of "process.xsl" and outputs a basic plain-text summary
** the plain-text summary is returned as the sole result of calling "make.xsl"
* this approach should be easily extensible into i.e. a verbose version in the future
* unraveled "make.xsl" structure into separate variables
|
|
* partly copy "task" nodes
** augment with result of performing the task
* executions of single transformations which expand into multiple target files are now grouped into tasks and subtasks
** a total result value is determined
* this change was implemented to aid the implementation of a "generation-digest" view
** such a "view" summarizes the results of task processing and may be configured in e.g. verbosity and error output
|
|
* "plan.xsl" traverses the file-tree provided by "list.xsl" and determines the tasks to be executed
* "process.xsl" executes the tasks planned by "plan.xsl" in a sensible order
* this change was implemented to be able to e.g. schedule the linkage tasks for last
** performing them in tree-order caused problems when the generator tried to create symlinks inside non-existing directories
** additionally this further modularizes the processing chain
|
|
* this was done to be able to implement directory symlinking
* the generation process is now split into three transformations
** the actual work is performed by "list.xsl" and "traverse.xsl" respecitively
** "make.xsl" wraps these two transformations
*** i.e. generation is now launched by executing "ixslt --transformation make.xsl"
* checked background images into VCS
|
|
* e.g. removing the target directory before each regeneration and symlinking CSS files
** this will be extended to include ressource directories and so on
* renamed "formatter.xsl" stylesheet to "helper.xsl" as it now includes various helper templates
* finally checked the main CSS into the VCS
|
|
* recent changes in InputXSLT revamped "external-text-formatter" into a general "external-command" function
* this changes were implemented to enable e.g. symlinking and copying files from the source to the target
|
|
* e.g. linked Github and cgit repositories
|
|
|
|
* while articles can be ordered by e.g. date there is no useful order for the pages in a given category
** this is why the order of pages on category overview pages is now random (in each generation)
|
|
* expanded "02_data/pages.xsl" transformation to include pages in subfolders
* "03_meta/categories.xsl" transformation generates a categorized view of all pages simmilar to the one provided for tags by "03_meta/tags.xsl"
* "99_result/category/category.xsl" transformation generates category overview pages
* added basic project related pages inside the "projects" category
|
|
* wrap text in "xsl:text elements to clean up the output
|
|
* changed archive page markup two enable setting two columns in CSS
|
|
* implemented language selection for automatic syntax highlighting
** language selection requires the language to be used to be passed as a class of the code element
** kramdown enables easy definition of this class attribute
* kramdown offers more functionality such as table and class attribute support
* updated all articles accordingly
|
|
* directly pass the executable including its arguments
** the "highlight.sh" proxy script is no longer required
* this was made possible by a recent commit to InputXSLT
|
|
* the feed should not return all articles ever posted but only e.g. the last five
* disabled indentation to fix source highlighting
|
|
* this should be the last one, as the remaining articles are not really worth preserving
** at least that is my current assessment
* updated contact page with actual content instead of filler text
|
|
* last article on a page has to contain the CSS classes "last" and "article"
** previously the position had to be manually increased by one because of some whitespace-only nodes
** due to the removal of indentation to enable code highlighting this manual increase is not only unneeded but prevented the correct classes from being set
|