Commit Graph
59 Commits
Author SHA1 Message Date
Christian Muehlhaeuser bbd7dfecce Initialize paragraph buffer in ParagraphElement 2019-12-02 15:22:30 +01:00
Christian Muehlhaeuser 011c602e64 Render prefix/suffix in current style 2019-12-02 15:20:55 +01:00
Christian Muehlhaeuser e43288b69c Check for style being nil in renderText helper 2019-12-02 15:20:11 +01:00
Christian Muehlhaeuser f27536eeb4 Add cascading style helpers 2019-12-02 15:19:25 +01:00
Christian Muehlhaeuser d6d52829bb Make document indentable 2019-11-30 08:07:40 +01:00
Christian Muehlhaeuser fca5fd91d6 Fix background colors not being applied correctly 2019-11-30 07:04:48 +01:00
Christian Muehlhaeuser 87aaa94b41 Fix IndentWriter indenting after trailing line-breaks 2019-11-30 06:52:07 +01:00
Christian Muehlhaeuser 72e53c38d2 Add IdentWriter 2019-11-30 06:45:33 +01:00
Christian Muehlhaeuser d37d023d5d Support styled indents for block elements 2019-11-30 06:43:13 +01:00
Christian Muehlhaeuser f70d879a63 Bump reflow dependency 2019-11-28 06:12:36 +01:00
Christian Muehlhaeuser e768cd63bf Use io.Writer directly instead of using Fprintf to print strings 2019-11-28 05:48:31 +01:00
Christian Muehlhaeuser f1a62c8b72 Redundant code cleanup 2019-11-28 02:32:11 +01:00
Christian Muehlhaeuser d4d0a3e313 Let users define their own element prefix/suffix in styles 2019-11-28 02:28:54 +01:00
Christian Muehlhaeuser 8ddf4be8b2 Add image_text style, which lets you change the look of an image's name/alt 2019-11-28 02:27:00 +01:00
Christian Muehlhaeuser 59b8ecde6d Render each paragraph individually and reflow text only inside paragraphs 2019-11-28 02:23:29 +01:00
Christian Muehlhaeuser a601b62b90 Move listitem styling to style JSON 2019-11-26 22:42:52 +01:00
Christian Muehlhaeuser 730f9bd2fb Let users define a prefix & suffix for style elements 2019-11-26 22:39:39 +01:00
Christian Muehlhaeuser 425d236a44 Embed default dark style into binary 2019-11-26 21:05:37 +01:00
Christian Muehlhaeuser 8f086bc134 Drop redundant TableData struct 2019-11-26 04:37:30 +01:00
Christian Muehlhaeuser 8fd35dc929 Simplify & cleanup RenderNode 2019-11-26 04:28:35 +01:00
Christian Muehlhaeuser 9eee4b13c3 Table rendering (#40)
Renders markdown tables.
2019-11-26 04:21:22 +01:00
Christian Muehlhaeuser f47f525238 Handle renderer errors 2019-11-26 03:58:33 +01:00
Christian Muehlhaeuser 8f083a1043 Clean up pre/post ambiguity 2019-11-26 03:55:43 +01:00
Christian Muehlhaeuser c0d32b4fcb Abort on rendering error 2019-11-26 03:33:02 +01:00
Christian Muehlhaeuser 24a6306e1a Use a Renderer interface instead of rendering fragments 2019-11-26 03:24:56 +01:00
Christian Muehlhaeuser d438c26548 Correctly render nested lists 2019-11-26 01:20:59 +01:00
Christian Muehlhaeuser 18e173b10d Handle relative URLs in markdown, when a BaseURL is provided 2019-11-26 00:35:11 +01:00
Christian Muehlhaeuser c2af06bed0 Fix word-wrapping in colored output 2019-11-25 10:04:55 +01:00
Christian Muehlhaeuser 4de0a10e9e Disable syntax highlighting when output is no terminal 2019-11-25 07:58:13 +01:00
Christian Muehlhaeuser ef9ee10b74 Unescape sanitized HTML 2019-11-25 07:28:58 +01:00
Christian Muehlhaeuser 66d599db99 HTML-sanitize all text elements 2019-11-25 07:16:22 +01:00
Christian Muehlhaeuser fb7c07f593 Strip HTML tags and render plain-text content only 2019-11-25 06:45:55 +01:00
Christian Muehlhaeuser 4c529d72b9 Word-wrap text at 100 chars per default
The default can be overwritten by the user:

./gold -w 80
2019-11-25 06:44:10 +01:00
Christian Muehlhaeuser 937e525993 Let user pick a syntax color theme in Gold's style config 2019-11-25 06:02:50 +01:00
Christian Muehlhaeuser e6a9122041 Enable code highlighting with chroma 2019-11-25 05:47:14 +01:00
Christian Muehlhaeuser 16c2b7a239 Move style handling to style.go 2019-11-25 05:19:47 +01:00
Christian Muehlhaeuser cc6e73b598 Link to cmd/gold instead of main.go 2019-11-25 05:00:01 +01:00
Christian Muehlhaeuser 450c551f08 Use a plain-text renderer when not printing to Terminal 2019-11-25 04:32:24 +01:00
Christian Muehlhaeuser 6eb2d04812 Handle nested content inside links 2019-11-25 02:40:34 +01:00
Christian Muehlhaeuser d082cb2124 Use ElementStyles to determine rendering style
Since BlackFriday's Nodes are limiting us a bit in rendering
flexibility, I've introduced Gold's own ElementStyles (a bit of
code repetition here, but alas).

Nodes can now be divided into multiple fragments, which means we
are able to display the link's URL and text in different styles.

Updated the dark theme to demo the newly gained flexibility.
2019-11-24 23:33:25 +01:00
Toby Padilla 13d43240dc Move Render and RenderBytes to TermRenderer 2019-11-24 13:35:01 -06:00
Christian Muehlhaeuser f119aef232 Fix new-line before first paragraph 2019-11-24 05:09:07 +01:00
Christian Muehlhaeuser 5191ed1f9c Fix line-break before list items 2019-11-24 04:44:12 +01:00
Christian Muehlhaeuser 9a3c403d78 Fix markdown rendering for first and last paragraphs 2019-11-24 04:20:35 +01:00
Christian Muehlhaeuser 9d157bad5c Fix line-break issues in markdown rendering
Fixes #3.
2019-11-24 04:08:54 +01:00
Christian Muehlhaeuser e6323d45df Fix rendering of list items 2019-11-24 03:51:30 +01:00
Christian Muehlhaeuser 8209d80f27 Add goreleaser config to help automate builds for various platforms
We're currently building the following targets:
- Linux 386/x64/armv6/arm64
- Windows 386/x64
- macOS x64
2019-11-24 02:39:02 +01:00
Christian Muehlhaeuser 9b17f91d28 Use cobra to handle command line parameters 2019-11-22 18:47:42 +01:00
Toby Padilla 995fdcc93f Link to main.go 2019-11-15 12:28:33 -06:00
Toby Padilla c52e92c122 README and LICENSE 2019-11-15 12:27:41 -06:00