分享 刚学不久 Ruby 的小成果,分享一个写脑图的 DSL

Mark24 · 2020年07月16日 · 最后由 Mark24 回复于 2020年07月17日 · 1960 次阅读

背景

刚学不久 Ruby 的小成果,分享一个写脑图的 DSL

Gems 上看了一些,DSL 不够简单。直接用 Graphviz 或者用 Ruby 接入的接口,都略显复杂。

借鉴了 PlantUML 对 mindmap 的 DSL 语法。 语法简单,迅速表达。

地址

Github:https://github.com/Mark24Code/mini_mindmap

Gem: https://gems.ruby-china.com/gems/mini_mindmap

DSL

require "mini_mindmap"

name = 'mindmap' # filename

output = {
  format: 'png',
  dir: "#{Dir.home}/mindmap" # output dir
}

# online

dsl = %Q{
  * MiniMindmap
  ** name
  ** DSL
  ** output
  *** dir
  *** format
}

demo = MiniMindmap::Mindmap.new(name,dsl,output)

demo.export # export files to dir

输出

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册