github charmbracelet/glamour v0.10.0

8 months ago

Actually readable tables

Big tables that included links were always hard to read. Links can be very long, and tables often have limited space to render them. This means that links often took the space of many lines and weren't properly clickable because they were being truncated in practice.

Starting on this release, Glamour will render links and images at the footer of the table, with a reference number so you can easily find the link you're looking for. If you want the old behavior, it is still supported via the new WithInlineTableLinks option.

The New Way

table_with_footer_links_and_images

The Old Way

Wanna render tables with inline links? You still can:

r, err := glamour.NewTermRenderer(glamour.WithInlineTableLinks(true))
if err != nil { /*...*/ }

out, err := r.RenderBytes(in)
if err != nil { /*...*/ }

fmt.Fprintf(os.Stdout, "%s\n", out)

table_with_inline_links_and_images

Prettier GitHub links

We also introduced a change so that GitHub links inside tables that reference issues, discussions or PRs will be shown in its shortened form, similar to how GitHub itself present the links on issue descriptions: owner/repo#123.

table_with_footer_auto_links_short

Extra

Also, we introduced WithTableWrap, so you can disable table text wrapping if really want:

r, err := glamour.NewTermRenderer(glamour.WithTableWrap(false))
if err != nil { ... }

out, err := r.RenderBytes(in)
if err != nil { ... }

fmt.Fprintf(os.Stdout, "%s\n", out)

Changelog

New Features

Bug fixes

Other work


The Charm logo

Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Discord.

Don't miss a new glamour release

NewReleases is sending notifications on new releases.