You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jan 10, 2025. It is now read-only.
mdcat requires that the terminal supports strikethrough formatting and inline links.
This includes most modern terminal emulators, such as Windows Terminal, KDE Konsole, or anything based on VTE, GNOME's terminal emulation library.
But mdcat likely won't work well on old terminals that lack these features (e.g. the Linux text console).
You can also build mdcat manually with cargo install mdcat (see below for details).
mdcat can be linked or copied to mdless; if invoked as mdless it automatically uses pagination.
Building
Run cargo build --release.
Building requires libcurl.
Packaging
When packaging mdcat you may wish to include the following additional artifacts:
A symlink or hardlink from mdless to mdcat (see above).
Shell completions for relevant shells, by invoking mdcat --completions after building, e.g.
$ mdcat --completions fish > /usr/share/fish/vendor_completions.d/mdcat.fish
$ mdcat --completions bash > /usr/share/bash-completion/completions/mdcat
$ mdcat --completions zsh > /usr/share/zsh/site-functions/_mdcat
# Same for mdless if you include it
$ mdless --completions fish > /usr/share/fish/vendor_completions.d/mdless.fish
$ mdless --completions bash > /usr/share/bash-completion/completions/mdless
$ mdless --completions zsh > /usr/share/zsh/site-functions/_mdless
A build of the man page mdcat.1.adoc, using AsciiDoctor:
$ asciidoctor -b manpage -a reproducible -o /usr/share/man/man1/mdcat.1 mdcat.1.adoc
$ gzip /usr/share/man/man1/mdcat.1
# If you include a mdless as above, you may also want to support man mdless
$ ln -s mdcat.1.gz /usr/share/man/man1/mdless.1.gz
Troubleshooting
mdcat can output extensive tracing information when asked to.
Run mdcat with $MDCAT_LOG=trace for complete tracing information, or with $MDCAT_LOG=mdcat::render=trace to trace only rendering.
Binaries are subject to the terms of the Mozilla Public
License, v. 2.0, see LICENSE.
Most of the source is subject to the terms of the Mozilla Public
License, v. 2.0, see LICENSE, unless otherwise noted;
some files are subject to the terms of the Apache 2.0 license,
see https://www.apache.org/licenses/LICENSE-2.0