Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,19 @@
# Changelog

## 0.12.0 — 2026-10-23

### Added
- **`width = "full"` in the config file.** The config file's `width` takes the same keywords as `--width` (`narrow`, `wide`, `full`) as well as a column count. Before, only a number worked.

### Changed
- **Wide terminals use the width you ask for.** In the reader, `-w full` and column counts above 120 were still held to 120 columns. Now `-w N` is honoured up to the width of the document pane, and `-w full` fills the pane with a 2-column margin. With no width set, text still stops at 120 columns, and `--plain` output is unchanged. A config `width` above 120 widens the reader too. Thanks to @narma. (#34)
- **Richer code highlighting in the `terminal` theme.** Only a function's name is coloured now, not the whole call. Parameters, shell flags, JSON and YAML keys, CSS colours and values, Rust macros and diff headers get their own palette colours. Thanks to @feraxhp. (#33)
- **Library API: `Args.width` is now `ink_md::Width`** (`Auto`, `Columns(n)` or `Full`) instead of `Option<u16>`, and `Args` implements `Default`. Build it with `Args { width: Width::Columns(80), ..Default::default() }` so fields added later don't break your code. (#37)

### Fixed
- **Links and inline styles work inside table cells.** Cells were flattened to plain text, so a link in a table (like the docs table in ink's own README) wasn't clickable, the `f` link hints skipped it, and bold, italic, strikethrough and inline code lost their styling. Cells now render inline markup as paragraphs do: links are clickable, show up in `f` and keep their target when wrapped. Emoji shortcodes, footnote references, inline images and inline HTML in a cell render too, instead of being dropped. Cells without markup look the same as before. (#35)
- **The table of contents stays as you left it when you follow a link.** Following a link, or going back and forward, reopened a sidebar you had closed (or closed one you had opened) and laid the text out for the wrong width. (#38)

## 0.11.2 — 2026-10-23

### Security
Expand Down
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "ink-md"
version = "0.11.2"
version = "0.12.0"
edition = "2021"
# Highest rust-version declared by any resolved dependency (quantette, via
# ratatui-image). CI's msrv job builds with exactly this toolchain.
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,7 @@ Thanks to everyone who has sent a pull request:

- [@mariusrueve](https://github.com/mariusrueve) for the Conda and Pixi instructions ([#9](https://github.com/borghei/ink/pull/9)) and the [conda-forge package](https://github.com/conda-forge/ink-md-feedstock) behind them
- [@narma](https://github.com/narma) for honouring `--width full` and wide column counts in the reader ([#34](https://github.com/borghei/ink/pull/34))
- [@feraxhp](https://github.com/feraxhp) for richer code highlighting in the terminal theme ([#33](https://github.com/borghei/ink/pull/33))

## License

Expand Down
2 changes: 1 addition & 1 deletion docs/features.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ Headings, emphasis, strikethrough, links, blockquotes, nested lists, task lists,

A few details worth knowing:

- **Tables** follow their column alignment (`:--`, `:-:`, `--:`), with wide CJK and emoji cells measured correctly.
- **Tables** follow their column alignment (`:--`, `:-:`, `--:`), with wide CJK and emoji cells measured correctly. Links, bold, italic and code work inside cells, and table links are clickable and show up in `f`.
- **`<sup>` and `<sub>`** become real superscript and subscript when every character has a Unicode form: `x<sup>2</sup>` is `x²` and `H<sub>2</sub>O` is `H₂O`. With `--ascii` they read `x^(2)` and `H_(2)O`. Anything else is shown as written.
- **Strikethrough** works with one or two tildes, as on GitHub. Carets and double bars in prose (`2^10`, `a||b`) stay as typed, since `^x^` and `||x||` aren't GitHub markdown.
- **Definition lists** (`Term`, then `: definition`) get a bold term with the definitions indented underneath.
Expand Down
6 changes: 3 additions & 3 deletions docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"name": "ink",
"softwareVersion": "0.11.2",
"softwareVersion": "0.12.0",
"description": "A terminal markdown reader. Renders markdown with syntax highlighting, inline images, mermaid diagrams, math, themes, tabs, search, a table of contents, presentation mode and a bat-style pager. Sanitizes untrusted files and blocks remote image fetches by default. A single Rust binary with no runtime dependencies.",
"applicationCategory": "DeveloperApplication",
"operatingSystem": "macOS, Linux, Windows",
Expand Down Expand Up @@ -685,7 +685,7 @@
<li class="hide-sm"><a href="#features">Features</a></li>
<li class="hide-sm"><a href="#docs">Docs</a></li>
<li class="hide-sm"><a href="https://github.com/borghei/ink/blob/main/CHANGELOG.md">Changelog</a></li>
<li><a class="gh" href="https://github.com/borghei/ink">GitHub <small>v0.11.2</small></a></li>
<li><a class="gh" href="https://github.com/borghei/ink">GitHub <small>v0.12.0</small></a></li>
</ul>
</nav>
</div>
Expand All @@ -696,7 +696,7 @@
<div class="wrap hero-grid">
<div>
<p class="eyebrow">
<a href="https://github.com/borghei/ink/releases/tag/v0.11.0">New in 0.11: the terminal theme</a>
<a href="https://github.com/borghei/ink/releases/tag/v0.12.0">New in 0.12: links in tables, full-width reading</a>
<span>macOS · Linux · Windows</span>
</p>
<h1 id="hero-title">Markdown, properly <em>typeset</em> in your terminal.</h1>
Expand Down
6 changes: 3 additions & 3 deletions docs/install.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,11 @@ Two environment variables change what it does:

| Variable | Effect |
|---|---|
| `INK_VERSION` | Install a specific release, e.g. `v0.11.2`. Default: latest. |
| `INK_VERSION` | Install a specific release, e.g. `v0.12.0`. Default: latest. |
| `INK_INSTALL_DIR` | Install somewhere else, e.g. `$HOME/.local/bin`. |

```bash
curl -fsSL https://raw.githubusercontent.com/borghei/ink/main/install.sh | INK_VERSION=v0.11.2 INK_INSTALL_DIR="$HOME/.local/bin" sh
curl -fsSL https://raw.githubusercontent.com/borghei/ink/main/install.sh | INK_VERSION=v0.12.0 INK_INSTALL_DIR="$HOME/.local/bin" sh
```

## Install script (Windows)
Expand All @@ -39,7 +39,7 @@ curl -fsSL https://raw.githubusercontent.com/borghei/ink/main/install.sh | INK_V
irm https://raw.githubusercontent.com/borghei/ink/main/install.ps1 | iex
```

This installs `ink.exe` (x64 or ARM64) to `%LOCALAPPDATA%\Programs\ink` and adds it to your user `PATH`. Set `$env:INK_VERSION = "v0.11.2"` first to pin a version.
This installs `ink.exe` (x64 or ARM64) to `%LOCALAPPDATA%\Programs\ink` and adds it to your user `PATH`. Set `$env:INK_VERSION = "v0.12.0"` first to pin a version.

## Homebrew

Expand Down
4 changes: 2 additions & 2 deletions docs/llms-full.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ ink is a feature-rich terminal markdown reader built in Rust. It renders markdow
- Bold, italic, strikethrough, inline code
- Links with OSC 8 hyperlink support (Cmd+Click / Ctrl+Click in supported terminals)
- Syntax-highlighted code blocks using syntect (supports all major programming languages)
- Tables with auto-sized columns, word wrapping and column alignment (:--, :-:, --:)
- Tables with auto-sized columns, word wrapping and column alignment (:--, :-:, --:); links, bold, italic and code inside cells
- Blockquotes with nested support and depth-based coloring
- Ordered and unordered lists with nesting
- Task lists with checkbox rendering
Expand Down Expand Up @@ -164,6 +164,6 @@ preset = "emacs" # default | vim | emacs
- Website: https://borghei.github.io/ink/
- Author: Amin Borghei <borghei.mohammadamin@gmail.com>
- Crates.io: https://crates.io/crates/ink-md (install with `cargo install ink-md`, Rust 1.90+)
- Install script (macOS/Linux): `curl -fsSL https://raw.githubusercontent.com/borghei/ink/main/install.sh | sh` (picks the glibc or static musl build; pin with INK_VERSION=v0.11.2, target dir INK_INSTALL_DIR)
- Install script (macOS/Linux): `curl -fsSL https://raw.githubusercontent.com/borghei/ink/main/install.sh | sh` (picks the glibc or static musl build; pin with INK_VERSION=v0.12.0, target dir INK_INSTALL_DIR)
- Install script (Windows): `irm https://raw.githubusercontent.com/borghei/ink/main/install.ps1 | iex` (x64/ARM64, installs to %LOCALAPPDATA%\Programs\ink)
- Prebuilt binaries: Linux amd64/arm64 (glibc 2.35+), static musl Linux amd64/arm64/armv7 (Alpine, older glibc, Raspberry Pi), macOS amd64/arm64, Windows amd64/arm64; .deb/.rpm and tar.gz/zip archives with man page and completions
2 changes: 1 addition & 1 deletion docs/llms.txt
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ ink is a command-line tool that renders markdown files in the terminal with rich
curl -fsSL https://raw.githubusercontent.com/borghei/ink/main/install.sh | sh # macOS / Linux (picks glibc or static musl build)
irm https://raw.githubusercontent.com/borghei/ink/main/install.ps1 | iex # Windows PowerShell (x64 / ARM64)
cargo install ink-md # from source (Rust 1.90+)
INK_VERSION=v0.11.2 sh install.sh # pin a version
INK_VERSION=v0.12.0 sh install.sh # pin a version

Prebuilt: Linux amd64/arm64 (glibc 2.35+), static musl Linux amd64/arm64/armv7 (any distro), macOS amd64/arm64, Windows amd64/arm64; .deb/.rpm and tar.gz/zip archives include the man page and completions. Verify with SHA256SUMS or `gh attestation verify <file> --repo borghei/ink`.

Expand Down
2 changes: 1 addition & 1 deletion install.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
# irm https://raw.githubusercontent.com/borghei/ink/main/install.ps1 | iex
#
# Environment:
# $env:INK_VERSION = "v0.11.2" install a specific release (default: latest)
# $env:INK_VERSION = "v0.12.0" install a specific release (default: latest)
# $env:INK_INSTALL_DIR = "C:\tools" install somewhere else
# (default: %LOCALAPPDATA%\Programs\ink)
#
Expand Down
2 changes: 1 addition & 1 deletion install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
# curl -fsSL https://raw.githubusercontent.com/borghei/ink/main/install.sh | sh
#
# Environment:
# INK_VERSION=v0.11.2 install a specific release (default: latest)
# INK_VERSION=v0.12.0 install a specific release (default: latest)
# INK_INSTALL_DIR="$HOME/.local/bin" install somewhere else (default: /usr/local/bin)
#
# Options:
Expand Down
Loading