mindr

an R package which converts markdown files (.md, .Rmd) into mindmaps (brainstorms)

Github星跟踪图

mindr: an R package that converts markdown (.md) or rmarkdown (.Rmd) files to mind maps, and vice versa

CRAN downloads

Introduction

With 'mindr' you can draw a mind map in markdown syntax, or start a markdown document from a mind map!

mindr is an R package which converts markdown (.md) or rmarkdown (.Rmd) files to mind maps (.mm), and vice versa. Mind map files (.mm) can be opened by or imported to common mindmap software such as the desktop software 'FreeMind'and 'XMind', or the online webware 'mindmeister'. Plenty of cross-platform mindmap software suits are available (see the list).

  • If your are a user of markdown or rmarkdown or bookdown or blogdown, mindr can convert your .md or .Rmd files into mind maps easily. Furthermore, you can write a new mind map with markdown syntax and use mindr to convert it into an .mm mind map.
  • If you are a mind map user, you can export your mind map into an .mm file and use mindr to convert it into a markdown file as an outline of your new document or book.

If you don't know what is markdown, here is a demo file.

Quick start

Installation

# stable version:
install.packages("mindr")
# or development version:
devtools::install_github("pzhaonet/mindr")

Convert between mind maps, markdown files, texts and directories

From v.1.2.0, the old individual functions such as md2mm() or mm2md() are to be deprecated. A more powerful, universal function mm() takes the place as the main function of mindr.

library('mindr')
### text -> widget
input <- c("# Chapter 1", "## Section 1.1", "## Section 1.2", "# Chapter 2")
mm(from = input, type = "text", root = "mindr")

### directory -> widget
input <- paste0(.libPaths(), "/mindr")[1]
mm(from = input, type = "dir")
mm(from = input, type = "dir", widget_name = "mindrtest.html")
### directory -> mm
mm(from = input, type = "dir", to = "test.mm")
### directory -> md
mm(from = input, type = "dir", to = "test.md")
### directory -> txt
mm(from = input, type = "dir", to = "test.txt")

### Rmd -> widget
input <- system.file("examples/r/rmd2r.Rmd", package = "mindr")
mm(from = input, type = "file", root = "mindr")
### Rmd -> r
mm(from = input, type = "file", root = "mindr", to = "test.r")
### Rmd -> mm
mm(from = input, type = "file", root = "mindr", to = "test.mm")

### mm -> widget
input <- system.file("examples/mm/bookdownplus.mm", package = "mindr")
mm(from = input, type = "file", root = "mindr")
### mm -> Rmd
mm(from = input, type = "file", root = "mindr", to = "test.Rmd")
### mm -> r
mm(from = input, type = "file", root = "mindr", to = "test.r")

### r -> widget
input <- system.file("examples/r/r2rmd.R", package = "mindr")
mm(from = input, type = "file", root = "mindr")
### r -> Rmd
mm(from = input, type = "file", root = "mindr", to = "test.Rmd")
### r -> mm
mm(from = input, type = "file", root = "mindr", to = "test.mm")

### The outline of the book Learning R
input <- system.file("examples/xuer/xuer.md", package = "mindr")
mm(from = input, type = "file", root = "Learning R", to = "learningr.mm")

Create Interactive Web MindMap with the JavaScript 'markmap' Library

Run:

example(markmap)

then you will see a demo interactive mind map in the viewer of your R session.

More themes can be seen if you run:

example(markmapOption)

To create your own interactive mind map, create a folder named mm in the working directory (getwd()), and drop some .mm files into mm/. Run:

markmap()

Extract the outline from (a) markdown files

Run:

library('mindr')
example(outline)

then you will get a demo outline file outline.md in the working directory (getwd()).

To extract the outline from your own markdown files, create a folder named mm in the working directory (getwd()), and drop some markdown or rmarkdown files into mm/. Run:

outline()

Have fun!

Still being developed. Feel free to give your feedback to me!

Showcase

  • Mindmap of my book Learning R (in Chinese. to be published soon.)

Updates

New updates after 2019-01-25 are not logged here. Please see the commits.

  • 2019-01-25. v1.2.0. universal function mm().
  • 2018-12-16. v1.1.9. Added an option of 'pandoc' to extract headings.
  • 2018-11-10. v1.1.8. Adapted to the roxygen style when conversion between .R scripts and .Rmd documents.
  • 2018-10-26. v1.1.7. Conversion between .R scripts and .Rmd documents.
  • 2018-10-21. v1.1.6. Support LaTeX equations.
  • 2018-10-11. v1.1.5. Improve the support for bookdown projects. Bugs fixed.
  • 2018-09-28. v1.1.2. Display .mm mind maps. Keep hyperlinks. dir2() for creating mindmaps from folder structure.
  • 2018-04-17. v1.1.1. Support tibble dataframes.
  • 2017-07-19. v1.1.0. On CRAN. See CHANGES IN mindr VERSION 1.1.
  • 2017-07-05. v1.0.6. Rmarkmap added. Run example(markmap).
  • 2017-07-03. v1.0.5. Better backup.
  • 2017-06-19. v1.0.4. Released on CRAN!
  • 2017-06-02. v1.0.0. Backup existing files before overwritten. Submitted to CRAN.
  • 2017-05-21. v0.2.0. Rename functions.
  • 2017-05-21. v0.1.0. Bidirectional! Now mind maps can be converted to markdown.
  • 2017-05-20. v0.0.1. Can Save the outline.
  • 2017-05-19. v0.0.0. A very preliminary version.

To do

  • convert md/Rmd/mm into slides.
  • RStudio addin to convert selected text into a mindmap widget.

License

Copyright 2019 Peng Zhao.

Released under the MIT license.

主要指标

概览
名称与所有者pzhaonet/mindr
主编程语言R
编程语言R (语言数: 1)
平台
许可证GNU General Public License v3.0
所有者活动
创建于2017-05-19 20:41:21
推送于2021-11-22 13:47:10
最后一次提交2021-11-22 21:47:02
发布数4
最新版本名称v1.2.3 (发布于 )
第一版名称v1.0 (发布于 )
用户参与
星数572
关注者数24
派生数49
提交数73
已启用问题?
问题数23
打开的问题数3
拉请求数1
打开的拉请求数0
关闭的拉请求数0
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?