summaryrefslogtreecommitdiff
path: root/Pancake/Rendering.hs
AgeCommit message (Collapse)Author
2018-01-09Leave empty lines around block quotationsdefanor
2018-01-01Update copyright yearsdefanor
2017-12-22Add 'renderInlines', remove 'inlines'defanor
'renderInlines' splits inline elements into lines (on newline) and renders them one-by-one, so that line positions can be tracked. The code is also a bit cleaner this way.
2017-12-22Split inline elements into lines in readInlinesdefanor
2017-12-22Revert "Handle newlines in storeLines"defanor
That wasn't a proper fix, and may lead to additional issues. This reverts commit 14468d50a6b22c67e656cd2b2a5fb4c7dad692b2.
2017-12-22Handle newlines in storeLinesdefanor
Usually there's none, but now it's possible for them to get there with --no-wrap. Perhaps that should be fixed too.
2017-12-22Extend noWrap prevention to listing sub-elementsdefanor
2017-12-22Partially delegate line wrapping to Emacsdefanor
Not for tables or lists, but for regular text lines. Using visual-line-mode for that by default.
2017-12-22Refine documentation annotations and function namesdefanor
2017-12-22Use a list of elements instead of enumerationdefanor
The list is ordered anyway, no need to keep numbers there.
2017-12-22Use enumeration instead of breadcrumbs for position trackingdefanor
Just to simplify it.
2017-12-21Set breadcrumbs for Plain elements' linesdefanor
2017-12-21Use a separate breadcrumb for spacing between blocksdefanor
2017-12-21Store breadcrumbs/positions for definition listsdefanor
2017-12-21Retain position on redisplay, reload, etcdefanor
Based on line numbers that are attached to document blocks, not dependent on window/terminal width. Some bits can still be refined/refactored, but here's the initial support.
2017-12-11Improve code style in a couple of placesdefanor
- `sum lens /= 0` implies `length lens /= 0`, so no need to check the latter after the former. - Don't use `concat` for just two elements.
2017-12-11Handle empty tablesdefanor
Don't try to estimate column widths if it leads to division by zero.
2017-12-01Skip empty table headersdefanor
Pandoc adds them even when they are undefined, no need to add an additional horizontal rule in such a case.
2017-12-01Reduce spacing between blocksdefanor
Insert empty lines conditionally instead of doing that between every pair of blocks. It can be improved further, but looks slightly better than it used to this way.
2017-11-29Use renderBlocks for OrderedListdefanor
2017-11-28Change the way images are rendered and denoteddefanor
Now it is more compact, and that's another step towards image support in the Emacs interface.
2017-11-28Prepend license notices to source filesdefanor
2017-11-26Distinguish image denotations from those for linksdefanor
Some kind of image support can be introduced in the future, and it's not quite correct to present images as links.
2017-11-24Don't skip empty linesdefanor
This is particularly important for code blocks.
2017-11-24Add missing documentation annotationsdefanor
2017-11-24Make div indentation optionaldefanor
2017-11-23Use default pandoc extensionsdefanor
Identifiers get handled better with those. And since they also add divs, rendering of lists of blocks is slightly improved to avoid unnecessary spacing.
2017-11-23Allow user-defined digits and radices for reference numberingdefanor
2017-11-21Try to split lines on spaces during aggressive splittingdefanor
2017-11-21Adjust table column widths more evenlydefanor
2017-11-21Restore ^{} for superscripts and similar text bits in Emacsdefanor
Superscripts and subscripts, as they were rendered, shorten lines in GUI Emacs, breaking tables if those contained subscripts or superscripts. In terminal Emacs, they were just indistinguishable from regular text. And there was a minor hack for these. Mostly undoing that (for strikethrough as well), though leaving slight raising.
2017-11-17Narrow footnotesdefanor
The "note N" strings add to the overall width, so the width of notes themselves should be reduced. It's different in CLI and Emacs, and rather imprecise here, so can still be improved -- but at least overflow is unlikely now.
2017-11-10Handle notesdefanor
2017-11-09Respect table column alignments provided by pandocdefanor
2017-11-08Colorize code inlines and blocksdefanor
2017-11-08Do not underline headingsdefanor
2017-11-08Colorize terms in definition listsdefanor
2017-11-08Adjust spacing between blocksdefanor
2017-11-08Denote headingsdefanor
2017-11-07Let Emacs to render subscripts, superscripts, strikethroughdefanor
That is, add `Styled` constructors for those.
2017-11-06Lint the codedefanor
2017-11-05Introduce denotations, buttonize links in emacsdefanor
Styled elements now can be denoted, so that the emacs interface can buttonize links, while it is still easy to ignore the semantics and just render those elements. The emacs interface is more mouse- and TAB-friendly now.
2017-11-05Split words aggresively when they don't fitdefanor
This is mostly needed for tables.
2017-11-05Fix table cell links and identifiersdefanor
Fix link enumeration, and store the identifiers.
2017-11-05Split into modulesdefanor