Releases: oetiker/mdmost
Release list
mdmost v0.2.0
0.2.0 - 2026-08-18
New
- Code fences carry a language icon for 50 languages instead of 18. Perl, Lua, Swift,
Kotlin, Scala, Haskell, Elixir, Erlang, Clojure, OCaml, Julia, R, Dart, Zig, Nim,
Crystal, Groovy, Prolog, C#, F#, PowerShell, assembly, Vim script, XML, CSV, TeX,
Make, Terraform, GraphQL, Vue and Svelte are now named, along with more spellings of
the languages that were already there. An unnamed language still gets the generic
code icon.
Changed
- The scrollbar track is a column of dots rather than an unbroken line. The thumb moves
in half cells, so its end lands mid-cell on every second scroll step; against a solid
rule the line alternately met the thumb and stood a half cell clear of it, and the
flicker at that join was more visible than the smoothness it came from.
Fixed
-
Bold, italic, struck-through and linked text inside a striped table row keeps the
stripe. Those styles were defined as body text plus a mark, and body text names the
page background, so each run repainted the band it stood on — a page-coloured box
around the letters for exactly as long as the run. Inline code already avoided this;
now no inline style carries a background at all. Bold link text also keeps the link
colour instead of reverting to body ink. -
The release workflow builds its Intel bottle on
macos-15-intel. It asked for
macos-13, which GitHub retired in December 2025, and a retired image does not fail a
job — it leaves it queued for the 24 hours GitHub waits before cancelling it. The
bottle-publishing step waits on the whole matrix, so nothing was published at all:
v0.1.2 shipped with an empty bottle block and no bottles on the release, despite the
arm64 one having built successfully. Intel bottles now cover macOS 15 and later, which
is as far back as the last Intel runner image reaches.
mdmost v0.1.2
0.1.2 - 2026-08-18
New
- Releases now ship Homebrew bottles for macOS. Without one, Homebrew treats the
formula as a source build even though nothing in it is compiled, and refuses to
install on a Mac whose Command Line Tools are older than its macOS. One bottle per
architecture covers later macOS releases too.
Changed
- The Homebrew instructions now include
brew trust --formula oetiker/mdmost/mdmost.
Homebrew 6.0 stopped loading formulae from third-party taps until they are trusted, so
brew install mdmostalone no longer finds the formula.
Fixed
mdmostwith no arguments at a terminal prints its help and exits instead of hanging.
It read standard input whenever no file was named, so baremdmostsat waiting on a
terminal nobody was typing into, which is indistinguishable from a hang.mdmost -
still reads standard input on purpose, andcat x.md | mdmostis unchanged.- The release no longer tags a commit whose
Cargo.tomlandCargo.lockdisagree
about the version, which is what stoppedv0.1.1from reaching crates.io. The
version bump refreshed the lock withcargo update --offline, but that job never
fetches the registry, so the resolve failed on the first dependency it looked up —
and a trailing|| trueswallowed it.cargo publishthen re-resolved, rewrote
Cargo.lockitself, and refused to publish a dirty tree. The lock update now runs
online, is not allowed to fail quietly, and is checked before the commit is made;
cargo publish --lockednames the lock if it is ever stale again.Cargo.lockis
brought up to0.1.1here, so the tree is consistent again.
mdmost v0.1.1
0.1.1 - 2026-08-17
New
Changed
Fixed
mdmost v0.1.0
0.1.0 - 2026-08-16
New
- A full-screen terminal pager for a single Markdown document: styled Unicode
rendering, real table borders with negotiated column widths, syntax-highlighted
code fences, and Mermaid diagrams laid out as box art. - Rendering is a pure function of
(document, width, theme, options), so a resize
reflows everything. - Section numbering, a FIGlet title banner, a contents pane, literal and regex
search, themes, and a configuration file at~/.config/mdmost/config.toml. - Mouse support behind
--mouse: the wheel scrolls, the scrollbar drags, and
contents entries jump. - A selection is a range over the document rather than a rectangle of cells. It hugs
the text, opens and closes mid-line, survives a reflow because it is anchored in
source offsets, and reaches inside a code fence and a table cell. A drag copies the
Markdown source behind it. - Code blocks and tables carry a
[copy]button. A table arrives as tab-separated
values, and as HTML where the clipboard carries flavours; a code block arrives
without its fences. The status bar names which of the four it gave you. - Links react and can be followed. Hovering lights the whole control however many rows
it wrapped across, and the status bar names the host before you commit to it. A
click openshttpandhttpsin your browser; every other scheme is inert. A
#fragmentscrolls to the heading it names, folded through the same slug rule
headings use. - A footnote marker opens the note in a box beside it, scrolled with the cursor keys
without moving the page. - A keyboard cursor reaches every control without a mouse:
fandFwalk the
document's links, buttons and footnote markers, scrolling each into view, and
enterfollows the one it stopped on. - Prebuilt binaries for Linux (static musl, x86_64 and aarch64), macOS (Intel and
Apple silicon) and Windows, with.deband.rpmpackages, a Homebrew tap in this
repository, and publication to crates.io.
Changed
- The documentation is one manual with three faces.
docs/manual.mdis the single
source for every key, option and config field;man/mdmost.1is generated from
it bymake manand is no longer kept in git; the README is a 30-second pitch
that links to the rest. A new terminal-setup section says which Unicode blocks
your font has to cover, and a test keeps that list matching the renderer. - The licence file is named
LICENSErather thanLICENSE-MIT, which is the name
forges, packagers and licence scanners look for. Both packages now install it to
/usr/share/doc/mdmost/LICENSE.