Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

mdp - A command-line based markdown presentation tool.


How to get started:

mdp needs the ncursesw headers to compile. So make sure you have them installed:

  • on Raspbian (Raspberry Pi) you need libncurses5-dev and libncursesw5-dev

Now download and install mdp:

$ git clone
$ cd mdp
$ make
$ make install
$ mdp
  • On Arch Linux, you can use the existing package.
  • on Cygwin you can use the existing package from the setup program.
  • On Debian, you can use the existing DEB package, or run apt-get install mdp.
  • On FreeBSD, you can use the port misc/mdp.
  • On MacOS, use either the Homebrew Formula by running brew install mdp or install with MacPorts with sudo port install mdp.
  • On Slackware, grab the SlackBuild here: (, or run sbopkg -i mdp.
  • On Ubuntu, you can use the existing DEB package, or run apt-get install mdp.

Most terminals support 256 colors only if the TERM variable is set correctly. To enjoy mdp's color fading feature:

$ export TERM=xterm-256color

How to use it:

Horizontal rulers are used as slide separator.

Supports basic markdown formating:

  • line wide markup

    • headlines
    • code
    • quotes
    • unordered list
  • in-line markup

    • bold text
    • underlined text
    • code

Supports headers prefixed by @ symbol.

  • first two header lines are displayed as title and author in top and bottom bar

Review for more details.


  • h, j, k, l, Arrow keys, Space, Enter, Backspace, Page Up, Page Down - next/previous slide
  • Home, g - go to first slide
  • End, G - go to last slide
  • 1-9 - go to slide n
  • r - reload input file
  • q - exit

How to debug it:

To make a debug version of mdp, just type:

$ make DEBUG=1