aboutsummaryrefslogtreecommitdiff
path: root/source/99_result
AgeCommit message (Collapse)Author
2016-12-20Switch server side math renderer to _KaTeX_Adrian Kummerlaender
_KaTeX_ offers explicit support for server-side rendering instead of the hacky solution using _Mathjax_. Furtermore it ist noticeably faster and produces better output in my test cases.
2016-09-10Link actual source directory in archiveAdrian Kummerlaender
2016-08-31Add _Overview_ like digest start page, remove stream from center stageAdrian Kummerlaender
* stream view is still available from the archive to preserve backwards compatability * reduce layout / styling differences between kummerlaender.eu and this blog
2016-07-08Add explicit font definition for code elementsAdrian Kummerlaender
2016-05-30Link footnotes in article stream to appropriate single article pageAdrian Kummerlaender
Previously multiple footnotes on article stream pages caused conflicts between articles and as such only worked correctly for the first article on each stream page.
2016-05-21Forward math expression type (block/inline) to formatterAdrian Kummerlaender
Add support for header elements with inline math expressions
2016-05-15Implement support for inline math expressionsAdrian Kummerlaender
2016-05-05Change _MathJax_ font urls to ressource serverAdrian Kummerlaender
2016-05-04Implement support of server side math expression renderingAdrian Kummerlaender
Many websites employ the [MathJax](https://www.mathjax.org/) library for dynamically rendering LaTeX math expressions on the client side. I expect to require support for doing just that in the future. But as with syntax highlighting I am of the opinion that this kind of stuff should be performed once during site compilation instead of wasting ressources by forcing each client to do this job for every single page request. Luckily there is a [MathJax-node](https://github.com/mathjax/MathJax-node) module that allows using the _MathJax_ library on the server side. This commit adds support for rendering math expressions written in Markdown respectively LaTeX as follows: `$$1 + 1 \neq 0$$` on the server side. This required the introduction of a new `math_highlighter` helper template in `formatter.xsl` based on the `tex2html` utility provided by _MathJax-node_. This formatter is matched against the (Markdown parser generated) `script` node in `formatter.xsl`'s _embellish_ mode. The HTML rendering of the expression is then embedded in a `p class="math"` node. This explicit labeling allows `master.xsl` to include the `math.css` rules only for pages that actually contain math expressions. Note that the XHTML rendering utility stylesheet `xhtml.xsl` currently adds a XML comment to each `span` node. This is a workaround to prevent _Xalan_ from collapsing "empty" `span` tag pairs into single nodes which otherwise leads to rendering errors as it is not valid HTML and is interpreted as a wrong tree structure by the browser. Note that the CSS rules declared in `math.css` are explicitly not part of the MIT licensed part of this repository but where generated by _MathJax_. As there is currently no _productive_ content making use of math expressions a demo page is available under `page/math_test/`.
2016-02-26Remove explicit font family definitionAdrian Kummerlaender
I am of the opinion that a website has no business messing around with the client's default fonts beyond defining the style and size relative to the default font size.
2015-06-04Fixed full width image stylingAdrian Kummerlaender
2015-03-22Revamped layout to be more minimalistic and readableAdrian Kummerlaender
* removed background image and as such it's fixed pixel width ** i.e. the layout is now completely dependent on the basic font size and scales accordingly * revamped master template and CSS to allow for nodes with varying lengths instead of truncating everything depending on the background width * increased font size of tag and archive pages * increased overall line height to improve readability * improved CSS to e.g. make use of `last-child` instead of adding `last` classes during static site generation * removed _microblog_ entries from archive as I have more or less stopped using _Twitter_
2015-03-11Improved navigation on small screensAdrian Kummerlaender
* extracted navigation and tag list style into `buttonlist` class * navigation is now aligned left and non-overlapping on small screens
2014-12-14Updated CSS to hide unnecessary comment control linksAdrian Kummerlaender
2014-12-09Replaced function-like data resolution with template applicationsAdrian Kummerlaender
* e.g. article and tag support data is now fetched through direct _XPath_ template applications ** this required the introduction of a special `resolve` mode to prevent interaction between support and main content resolution ** in most cases arguments had to be wrapped inside helper constants to enable selection of e.g. article support data via the `@handle` attribute using the current elements `@handle` attribute * analogously to the recent changes in _StaticXSLT_ this commit aims to improve the XSLT code style used in generating this static website
2014-11-16Improved inline `code` stylingAdrian Kummerlaender
2014-10-31Separated tag links using spaces instead of CSS marginsAdrian Kummerlaender
* the former also works when CSS is not supported while the latter leads to unseparated tag links
2014-10-29Removed remnants of layout iteration and cleaned CSSAdrian Kummerlaender
* both the CSS and master template markup contained cruft from the previous blog version and its slightly different layout * removed unnecessary distinction between footer and its _taglist_ as the old footer element is now only a _taglist_ ** promoted previous `last_line` to `footer` as it is the actual footer * unified the different list styles as much as possible ** e.g. introduced new `topline` attribute instead of declaring the title-separator line for each style separately ** removed `taglist` class by declaring its rules directly in the `tags` id ** removed now unnecessary `archivtag` class ** introduced `sparselist` class which enables list such as the one contained the latest microblog entries to have extra padding * merged `list_tags` helper template into primary master template ** this separation was not only unnecessary but decreased the readability as it provided no real encapsulation
2014-10-28Added description meta tag to master templateAdrian Kummerlaender
* eliminated `last_item` list item class by fixing its padding
2014-10-27Added author node for each feed entryAdrian Kummerlaender
2014-09-28Shrunk and compressed about-page header imageAdrian Kummerlaender
* changed page source accordingly
2014-09-28Added alternate feed link and augmented entry linksAdrian Kummerlaender
* added title and type attributes to feed links in ATOM feed * alternate feed link references the actual website * added "rel=\"alternate\"" and title attribute to entry links
2014-09-28Replaced custom ATOM XHTML copy templates with the appropriate helper templateAdrian Kummerlaender
2014-09-12Updated feed transformation to generate valid ATOM 1.0Adrian Kummerlaender
* added base link * added namespace for whole stylesheet intead of in the feed node * added id to entry nodes * added closing slash to feed id url
2014-09-11Fixed links in ATOM feedAdrian Kummerlaender
* URL has to be defined in a "href" attribute instead of as the nodes content
2014-09-11Fixed XHTML namespace generationAdrian Kummerlaender
* all datasources are generated as namespace-less XML * the resulting documents have to define the XHTML namespace ** i.e. the article and page contents have to be copied into the XHTML namespace * implemented XHTML copy helper templates * modified page templates accordingly * defined XHTML namespace in the master template
2014-09-11Removed border from comment form headerAdrian Kummerlaender
2014-09-11Added gap between columns, increased browser compatibilityAdrian Kummerlaender
* gap between columns was needed because the alignment of all paragraphs was changed to justify * increased overall browser compatibility of the column layout ** firefox now keeps elements with the column class together if possible
2014-09-11Expanded formatter embellishment templatesAdrian Kummerlaender
* 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
2014-09-10Added faviconAdrian Kummerlaender
* modified master transformation accordingly * fixed small syntax and grammer error in about page content ** missing dot and missing "and"
2014-09-10Fixed comment paragraph and column stylingAdrian Kummerlaender
* 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
2014-09-10Added footnote CSS stylingAdrian Kummerlaender
2014-09-09Removed unnecessary absolute linksAdrian Kummerlaender
* there is no reason for generating absolute links as the resulting pages will be served on their own domain
2014-09-09Added comment counter to article pageAdrian Kummerlaender
2014-09-08Improved Isso styling and fixed "pre" line-breakAdrian Kummerlaender
* Isso improvements ** textarea placeholder font-color ** comment footer font-size * lines of "pre" elements did not break correctly * minified all CSS expressions using YUI
2014-09-08Added basic isso commenting system integrationAdrian Kummerlaender
* [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
2014-09-07Changed image CSS style to apply also to unlinked imagesAdrian Kummerlaender
2014-09-07Added picture to contact pageAdrian Kummerlaender
2014-09-06Simplified access to datasource in target resolutionAdrian Kummerlaender
2014-09-06Removed unnecessarily complex category sorting logicAdrian Kummerlaender
* 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
2014-09-03Revamped transformation layout to remove need for the "01_files" levelAdrian Kummerlaender
* "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
2014-09-02Moved author name into the meta treeAdrian Kummerlaender
* modified all transformations requiring the author name accordingly
2014-08-29Removed need for prefixing datasource source attributeAdrian Kummerlaender
* 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
2014-08-29Updated contact page and prettylist CSSAdrian Kummerlaender
* fixed prettylist CSS to work in both WebKit and Gecko
2014-08-27Modified category sort logic to fit 7db86c6Adrian Kummerlaender
* 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
2014-08-26Implemented a more balanced category sort logicAdrian Kummerlaender
* 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
2014-08-23Separated task planning and processing into separate transformationsAdrian Kummerlaender
* "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
2014-08-23Revamped source tree traversionAdrian Kummerlaender
* 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
2014-08-18Implemented basic cleaning and linking facilitiesAdrian Kummerlaender
* 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
2014-08-11Added category overview heading and randomized orderAdrian Kummerlaender
* 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)