{"id":13577752,"url":"https://github.com/Titor8115/mandown","last_synced_at":"2025-04-05T15:31:23.956Z","repository":{"id":39776154,"uuid":"254224917","full_name":"Titor8115/mandown","owner":"Titor8115","description":"man-page inspired Markdown viewer","archived":false,"fork":false,"pushed_at":"2025-04-01T18:37:47.000Z","size":523,"stargazers_count":249,"open_issues_count":13,"forks_count":13,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-04-01T19:38:27.446Z","etag":null,"topics":["c","cli","command-line","console","linux","man","man-page","markdown","ncurses","ncurses-ui","terminal","tui"],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Titor8115.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-04-08T23:39:04.000Z","updated_at":"2025-04-01T18:27:21.000Z","dependencies_parsed_at":"2025-04-01T19:31:38.640Z","dependency_job_id":"610f7785-72dc-480f-a27c-fcc0cc254e87","html_url":"https://github.com/Titor8115/mandown","commit_stats":{"total_commits":96,"total_committers":8,"mean_commits":12.0,"dds":0.09375,"last_synced_commit":"3a244798128543869263af5120d68ff092c7688d"},"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Titor8115%2Fmandown","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Titor8115%2Fmandown/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Titor8115%2Fmandown/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Titor8115%2Fmandown/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Titor8115","download_url":"https://codeload.github.com/Titor8115/mandown/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246705330,"owners_count":20820710,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","cli","command-line","console","linux","man","man-page","markdown","ncurses","ncurses-ui","terminal","tui"],"created_at":"2024-08-01T15:01:24.057Z","updated_at":"2025-04-05T15:31:23.941Z","avatar_url":"https://github.com/Titor8115.png","language":"C","funding_links":[],"categories":["C"],"sub_categories":[],"readme":"# mandown - mdn\n\nA man-page inspired Markdown pager written in C.\n\n**Name change:** executable's name changed to `mdn`\n\n## What is it\n\nNeed to lookup things from README? Or from manual page? Or perhaps just want to install something cool...\n\n## Update\n\n- User Customization\n  - Added control schemes: mdn, vim, less(default since mdn isn't complete)\n  - Config file location: `~/.config/mdn/mdnrc`\n\n## Sample\n\n![screenshot](./screenshot.png)\n\n## Library dependency\n\nMandown requires `libncurses(w)`, `libxml2` and `libconfig` as compile-time dependencies.\n\nMake sure you have them installed before compiling.\n\n### Debian\n\n```shell\n$ apt-get install libncursesw5-dev\n$ apt-get install libxml2-dev\n$ apt-get install libconfig-dev\n```\n\n## Installation\n\nCurrent version is still being developed for some HTML tags. However, it should work on most Markdown documents.\n\n### Homebrew\n```shell\n$ brew install mandown\n```\n\nThe installed binary `mdn` would be at `/usr/local/bin/`\n\n### Local\n```shell\n$ git clone https://github.com/Titor8115/mandown.git\n$ cd mandown\n$ make install\n```\n\nTo remove the binary, you can run the commands below, or remove manually.\n\n```shell\n$ cd mandown\n$ make uninstall\n```\n\nIf you just want to compile and test it.\n\n```shell\n$ cd mandown\n$ make\n```\n\nFeel free to create an issue.\n\n## Usage\n\nCheck out the new sample\n\n```shell\n$ mdn sample.md\n```\n\nMouse scrolling is supported! (if your terminal emulator allows)\n\nMove Up: \u003ckbd\u003eUp\u003c/kbd\u003e, \u003ckbd\u003ek\u003c/kbd\u003e\n\nMove Down: \u003ckbd\u003eDown\u003c/kbd\u003e, \u003ckbd\u003ej\u003c/kbd\u003e\n\nPage Up: \u003ckbd\u003eSpace\u003c/kbd\u003e,  \u003ckbd\u003ePgUp\u003c/kbd\u003e, \u003ckbd\u003eb\u003c/kbd\u003e\n\nPage Down:  \u003ckbd\u003eBksp\u003c/kbd\u003e,  \u003ckbd\u003ePgDn\u003c/kbd\u003e, \u003ckbd\u003ef\u003c/kbd\u003e\n\nShow href in hyperlink: \u003ckbd\u003eTab + Enter\u003c/kbd\u003e, or double click \u003ckbd\u003emouse 1\u003c/kbd\u003e\n\nExit: \u003ckbd\u003eq\u003c/kbd\u003e\n\nTo read detailed usage, run `mdn -h`\n\n## Embedding\n\nMandown can also be embedded in your own applications. To render a Markdown document in a C string:\n\n```c\n#include \"mandown.h\"\n\nchar *str =\"# Heading\\n\\nThis is some **BOLD** *italic* ***EMPHASIZED*** text.\";\nrender_str(str, \"md\", \"Test Title\", NULL);\n```\n\nTo render a Markdown document file:\n\n```c\n#include \"mandown.h\"\n\nFILE *fp = fopen(\"README.md\", \"r\");\nrender_file(fp, \"md\", \"Test file\", NULL);\n```\n\nStatic and shared libraries are available. Make sure you have installed the dependencies listed in **Library dependency** below, then assuming you installed Mandown under `/usr/local`:\n\n```shell\n# static build\ngcc -o myprog -I/usr/local/include myprog.c /usr/local/lib/mandown.a -lncurses -lxml2 -lconfig\n```\n\n```shell\n# shared build\ngcc -o myprog -I/usr/local/include myprog.c -L/usr/local/lib -lmandown -lncurses -lxml2 -lconfig\n```\ntests\n\n## Todo\n\n- [x] Line fold/wrap on white space\n- [x] Optimized resizing\n- [x] Makefile makeover\n- [ ] Add more config options\n- [ ] Table and contents rendering\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTitor8115%2Fmandown","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FTitor8115%2Fmandown","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTitor8115%2Fmandown/lists"}