mindmap_mfm 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/lib/mindmap_mfm.rb +34 -6
- data.tar.gz.sig +0 -0
- metadata +22 -2
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6f0a51a746d7fdb6a78c7c47a5b63ece78eda9a4
|
4
|
+
data.tar.gz: 75f2ff0b85d66aafad44e4977fb015038f7a7053
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a136db1f82b2063a65f2031976ece3505248dd740d291c54baf13cecde64598f6419582d02989a200f0357922e3582b6b1c3962239a591a84074ece554a79d5c
|
7
|
+
data.tar.gz: c0b2188207f7516c574f0677618b6b8eb0fae05dd798b276077bd03256ca81cf3111e8ceb5eb9f97101f302826b04fed6f10240557c51a5a6c517a88a970a70f
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/lib/mindmap_mfm.rb
CHANGED
@@ -6,6 +6,7 @@
|
|
6
6
|
require 'martile'
|
7
7
|
require 'kramdown'
|
8
8
|
require 'mindmapdoc'
|
9
|
+
require 'html-to-css'
|
9
10
|
|
10
11
|
|
11
12
|
class MindmapMFM
|
@@ -13,11 +14,31 @@ class MindmapMFM
|
|
13
14
|
def initialize(s)
|
14
15
|
|
15
16
|
@rawdoc = build_rawdoc(s)
|
17
|
+
@html = Kramdown::Document.new(@rawdoc).to_html
|
16
18
|
|
19
|
+
end
|
20
|
+
|
21
|
+
# Returns an HTML-to-CSS object
|
22
|
+
#
|
23
|
+
def to_htc()
|
24
|
+
HtmlToCss.new(@html)
|
17
25
|
end
|
18
26
|
|
19
|
-
def to_html()
|
20
|
-
|
27
|
+
def to_html(cssfile: nil)
|
28
|
+
|
29
|
+
html = if cssfile then
|
30
|
+
|
31
|
+
doc = Rexle.new(@html)
|
32
|
+
link = Rexle::Element.new('link')
|
33
|
+
link.attributes.merge!(rel: 'stylesheet', href: cssfile)
|
34
|
+
doc.root.element('head/style').insert_after(link)
|
35
|
+
doc.xml(declaration: 'none')
|
36
|
+
|
37
|
+
else
|
38
|
+
@html
|
39
|
+
end
|
40
|
+
|
41
|
+
"<!DOCTYPE html>\n" + html
|
21
42
|
end
|
22
43
|
|
23
44
|
private
|
@@ -35,7 +56,7 @@ head =<<EOF
|
|
35
56
|
g.node {fill: #311}
|
36
57
|
a {fill: #114; }
|
37
58
|
svg g a:hover {background-color: #3ac; }
|
38
|
-
|
59
|
+
svg + div {float: right; width: 50%; overflow-y: auto; height: 70vh}
|
39
60
|
</style>
|
40
61
|
</head>
|
41
62
|
EOF
|
@@ -44,15 +65,23 @@ EOF
|
|
44
65
|
a = s.split(/(?=__DATA__)/,2)
|
45
66
|
a2 = a.first.split(/(?=!s)/,2)
|
46
67
|
svg = a2[1].lines.first
|
47
|
-
|
68
|
+
txtdoc = a2[1].lines[1..-1].join
|
48
69
|
|
70
|
+
divdoc = if txtdoc[0] != '<' then
|
71
|
+
actual_txtdoc, below_txtdoc = txtdoc.split(/-{10,}/,2)
|
72
|
+
'<div markdown="1">' + actual_txtdoc \
|
73
|
+
+ "</div>\n<div style='clear: both'/>\n" + below_txtdoc
|
74
|
+
else
|
75
|
+
txtdoc
|
76
|
+
end
|
77
|
+
|
49
78
|
html = [
|
50
79
|
"<html>\n",
|
51
80
|
head,
|
52
81
|
"\n <body markdown='1'>\n\n",
|
53
82
|
a2[0],
|
54
83
|
svg,
|
55
|
-
"
|
84
|
+
"\n\n", divdoc, "\n</body>\n</html>\n\n",
|
56
85
|
a.last
|
57
86
|
].join
|
58
87
|
|
@@ -61,4 +90,3 @@ EOF
|
|
61
90
|
end
|
62
91
|
|
63
92
|
end
|
64
|
-
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mindmap_mfm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Robertson
|
@@ -30,7 +30,7 @@ cert_chain:
|
|
30
30
|
psX3wHSCzaVBci2BgFjWgkcfzQhHUZuwhmzOTmIpIiSDkL5n+E0dmvu2ykk4C7WL
|
31
31
|
uQk=
|
32
32
|
-----END CERTIFICATE-----
|
33
|
-
date: 2018-02-
|
33
|
+
date: 2018-02-09 00:00:00.000000000 Z
|
34
34
|
dependencies:
|
35
35
|
- !ruby/object:Gem::Dependency
|
36
36
|
name: martile
|
@@ -92,6 +92,26 @@ dependencies:
|
|
92
92
|
- - ">="
|
93
93
|
- !ruby/object:Gem::Version
|
94
94
|
version: 1.16.2
|
95
|
+
- !ruby/object:Gem::Dependency
|
96
|
+
name: html-to-css
|
97
|
+
requirement: !ruby/object:Gem::Requirement
|
98
|
+
requirements:
|
99
|
+
- - "~>"
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: '0.1'
|
102
|
+
- - ">="
|
103
|
+
- !ruby/object:Gem::Version
|
104
|
+
version: 0.1.8
|
105
|
+
type: :runtime
|
106
|
+
prerelease: false
|
107
|
+
version_requirements: !ruby/object:Gem::Requirement
|
108
|
+
requirements:
|
109
|
+
- - "~>"
|
110
|
+
- !ruby/object:Gem::Version
|
111
|
+
version: '0.1'
|
112
|
+
- - ">="
|
113
|
+
- !ruby/object:Gem::Version
|
114
|
+
version: 0.1.8
|
95
115
|
description:
|
96
116
|
email: james@jamesrobertson.eu
|
97
117
|
executables: []
|
metadata.gz.sig
CHANGED
Binary file
|