MDCat is like cat, but it pretty-prints Markdown text.

Wanna support Remilia? Buy me a coffee on Ko-Fi, or support me through Liberapay.

Buy Me a Coffee at ko-fi.com Donate using Liberapay

How do I get set up?

You will need Fossil installed to clone this repo and the dependency. You will also need Crystal (since it's written in Crystal) and Shards v0.17.1 or later (usually this comes with Crystal). If you have an earlier version of Shards, you will need to to build the latest version manually.

$ fossil clone https://chiselapp.com/user/MistressRemilia/repository/mdcat/
$ cd mdcat
$ shards build --release -p

You can then use ./bin/mdcat --help to see usage information.

Configuration File

An optional configuration file can be located in one of these three locations (in order of precedence):

  1. $XDG_CONFIG_HOME/mdcat/mdcat.ini
  2. $HOME/.config/mdcat/mdcat.ini
  3. /etc/mdcat.ini

The configuration file uses a plain INI format. Unknown keys are ignored. Here is a sample configuration file with all the valid keys, as well as the defaults:

blockQuote = BrightBlack
thematicBreak = BrightBlack
codeBlockColor = BrightGreen
htmlColor = BrightBlack
linkColor = Cyan
inlineCodeColor = Yellow

h1 = Green
h2 = Magenta
h3 = Cyan
h4 = Red
h5 = Blue
h6 = Default

Current Limitations

These are some known limitations for MDCat:


Style info

I use a somewhat non-standard style for my code.

How do I contribute?

  1. Go to https://chiselapp.com/user/MistressRemilia/repository/mdcat/ and clone the Fossil repository.
  2. Create a new branch for your feature.
  3. Push locally to the new branch.
  4. Create a bundle with Fossil that contains your changes.
  5. Get in contact with me.


Links and Licenses

mdcat is under the GNU Affero General Public License version 3.