• Stars
    star
    154
  • Rank 240,925 (Top 5 %)
  • Language
    Lua
  • Created over 1 year ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Visualize your Markdown as mindmaps with markmap

Markmap.nvim

Visualize your Markdown as mindmaps with markmap

screenshot_2023-05-25_02-51-13_907564300

Motivation

This plugin is based on vim's coc-markmap, which I missed when moving to Neovim. If you wanna know more about mindmap check their website, docs and GitHub repository. This plugin is compatible with Linux, MacOS, Windows, and Android Termux.

Requirements

  • yarn

How to install using lazy.nvim

--  [markdown markmap]
--  https://github.com/Zeioth/markmap.nvim
{
  "Zeioth/markmap.nvim",
  build = "yarn global add markmap-cli",
  cmd = { "MarkmapOpen", "MarkmapSave", "MarkmapWatch", "MarkmapWatchStop" },
  opts = {
    html_output = "/tmp/markmap.html", -- (default) Setting a empty string "" here means: [Current buffer path].html
    hide_toolbar = false, -- (default)
    grace_period = 3600000 -- (default) Stops markmap watch after 60 minutes. Set it to 0 to disable the grace_period.
  },
  config = function(_, opts) require("markmap").setup(opts) end
},

How to use

Markmap.nvim provide the next commands:

Command Description
:MarkmapOpen Open markmap
:MarkmapSave Save markmap without opening it
:MarkmapWatch Open markmap and watch for changes
:MarkmapWatchStop The watch server ends automatically after a grace period, or when closing nvim. But it can also be stopped manually with this command.

Note that all these commands will always generate a .html file in html_output. Take advantage of this if you want to keep the graph.

Troubleshooting

Run :healthcheck markmap. This command will tell you the depencencies you are missing. If the command do not exist, it means you are using an async package manager, so double check the package is beign loaded. These are the most common issues you will find:

  • Run
yarn global add markmap-cli
  • Now try to run
markmap

If the executable is not found, that means you need to add yarn to your PATH. This is normally done in your .profile, bashrc, or zshrc file like this:

# PATH Example
export PATH="$HOME/.local/bin:\
$HOME/.cargo/bin:\
$HOME/.npm-global/bin:\
$HOME/.yarn/bin:\
$HOME/.config/yarn/global/node_modules/.bin:\
$HOME/.local/share/gem/ruby/3.0.0/bin:\
$HOME/.cargo/env:\
/root/.local/share/gem/ruby/3.0.0/bin:\
/usr/local/bin:\
/usr/share/nvm/init-nvm.sh:\
$PATH"

If you prefer using npm over yarn, you can, but double check that you have the user space correctly configured as in some systems this is not enabled by default (see here).

If you are on windows, the process is the same. But the place to set PATH may change from one windows version to another.

🌟 Support the project

If you want to help me, please star this repository to increase the visibility of the project.

Stargazers over time

Roadmap

  • Once nvim releases lua 5.2 and unpack is deprecated, let's use table.unpack instead.

More Repositories

1

compiler.nvim

Neovim compiler for building and running your code without having to configure anything
Lua
470
star
2

garbage-day.nvim

Garbage collector that stops inactive LSP clients to free RAM
Lua
281
star
3

heirline-components.nvim

Distro agnostic components for your Neovim heirline config
Lua
84
star
4

rofi-shortcuts

The ultimate shortcuts cheatsheet
Shell
54
star
5

rofi-zeal

Use rofi to search documentation on Zeal and Man
Shell
47
star
6

termux-docker

Just a script that setups everything for you
Shell
47
star
7

dooku.nvim

Code documentation generator for Neovim
Lua
37
star
8

makeit.nvim

Neovim Makefile plugin
Lua
32
star
9

zeioth-hyprland-config

My personal config - Feel free to get ideas from here
Shell
25
star
10

XFCE-Wacom-Settings

Wacom settings for XFCE
Shell
24
star
11

wofi-calc

A simple calculator for wofi, inspired in rofi-calc
Shell
21
star
12

django-dual-authentication

Allows authentication with either a username or an email address.
Python
18
star
13

django-email-blacklist

Python class to detect Disposable Emails.
Python
17
star
14

none-ls-autoload.nvim

Minimalistic alternative to the plugin mason-null-ls with support for external sources.
Lua
16
star
15

none-ls-external-sources.nvim

All external sources not natively supported by none-ls
Lua
12
star
16

zeioth-lutris

My contributions to Lutris
11
star
17

atom-visual-studio-code-ui

The experience of Visual Studio Code, now in Atom.
Less
11
star
18

distroupdate.nvim

Neovim plugin to update your current distro from its github remote
Lua
9
star
19

fzf-kill

The no-nonsense task killer for your terminal.
Shell
8
star
20

atom-visual-studio-code-light-ui

The real experience of Visual Studio Code, now in Atom.
Less
7
star
21

hyprshotgun

Screenshots the way you like: Local, or online
Shell
6
star
22

latencyflex2-installer

LatencyFlex2 installer easy to hack
Shell
6
star
23

mason-extra-cmds

Provides the command :MasonUpdateAll
Lua
5
star
24

zeioth-zmk

My wireless keyboard drivers
C
3
star
25

vim-doxygen

Doxygen integration for vim
Vim Script
3
star
26

zeioth-qmk

My wired keyboard drivers
C
2
star
27

vim-dooku

(Highly customizable) Documentation generator(s) for VIM
2
star
28

vim-typedoc

Autogenerate and open your typedoc documentation from vim
Vim Script
2
star
29

vim-zeioth-config

One of the best vimconfigs you are gonna find out there. Most likely.
Python
2
star
30

norecaptcha-python3

Python 3 client for Google No CAPTCHA reCAPTCHA services.
Python
2
star
31

new-project.nvim

A neovim plugin to create a new project
2
star
32

idoven-technical-challenge

Challenger: Adrian Lopez
Python
1
star
33

linux-security-notifications

Systemd service that displays important security information as friendly desktop notifications.
1
star
34

package-manager.nvim

A package manager to rule them all.
1
star
35

IDE.nvim

The bastard son of Neovim, Visual Studio and IntelliJ
1
star
36

BrrrOS

The OS that goes like brrr
Python
1
star
37

paco

Aliases to make the most common pacman commands more intuitive.
Shell
1
star
38

basic-programming-principles

Examples for people initiating in coding
Python
1
star