vimwiki_markdown 0.5.1 → 0.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.travis.yml +5 -3
- data/A.png +0 -0
- data/B.png +0 -0
- data/README.md +14 -2
- data/changelog.md +18 -1
- data/example_files/default.tpl +39 -0
- data/lib/vimwiki_markdown/options.rb +2 -1
- data/lib/vimwiki_markdown/version.rb +1 -1
- data/lib/vimwiki_markdown/vimwiki_link.rb +6 -1
- data/lib/vimwiki_markdown/vimwiki_toc_filter.rb +32 -0
- data/lib/vimwiki_markdown/wiki_body.rb +16 -3
- data/spec/lib/vimwiki_markdown/options_spec.rb +5 -0
- data/spec/lib/vimwiki_markdown/vimwiki_link_spec.rb +11 -0
- data/spec/lib/vimwiki_markdown/wiki_body_spec.rb +30 -0
- data/spec/spec_helper.rb +22 -0
- data/vimwiki_markdown.gemspec +3 -3
- metadata +17 -15
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: df82303f4e7c42a37b10f251dc47ff99f7f8bdb47213320647ec9e287b18e349
|
|
4
|
+
data.tar.gz: 87779ad8e73e817a491a4b02d5dfdee31c0486c6c53a71a3f7777f8eea039326
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: ae0332624f846dd12436ea09f2c01b57a1f3828161304cd422dbbb5525fadacdf3c3681675901478ee92a06566cff7fdbb946e7dee68e64fbe053cf67a055cdf
|
|
7
|
+
data.tar.gz: 39d46583937bcea223d642b8432ea555de284d8e4e0f623ab38681f39cd66fce12982cdcb526591aaccf547bdf88c9f2fefc11e0d19910fe986fb59f9e5ba456
|
data/.travis.yml
CHANGED
data/A.png
ADDED
|
Binary file
|
data/B.png
ADDED
|
Binary file
|
data/README.md
CHANGED
|
@@ -6,6 +6,15 @@ to be converted to HTML.
|
|
|
6
6
|
|
|
7
7
|
It is currently a work in progress (but working for me ;)
|
|
8
8
|
|
|
9
|
+
## Example
|
|
10
|
+
It turns this:
|
|
11
|
+
|
|
12
|
+

|
|
13
|
+
|
|
14
|
+
into
|
|
15
|
+
|
|
16
|
+

|
|
17
|
+
|
|
9
18
|
## Requirements
|
|
10
19
|
|
|
11
20
|
Ruby installed on your computer & up to date version of vimwiki
|
|
@@ -56,13 +65,16 @@ of the site (e.g. `./` or `../../` etc)
|
|
|
56
65
|
You can also have a `%date%` marker in your template file
|
|
57
66
|
It will get rewritten with todays date in the format 29 March 2019
|
|
58
67
|
|
|
68
|
+
#### Support for tasklists
|
|
69
|
+
Vimwiki has support for complex todo lists which you can [read about in their help.txt](https://github.com/vimwiki/vimwiki/blob/619f04f89861c58e5a6415a4f83847752928252d/doc/vimwiki.txt#L1768). We do support turning them into HTML. This is _slightly different_ from the way that GitHub checklists are rendered, but, the syntax is a subset of GitHub lists so it should be fine. You can read about it in the [issue](https://github.com/patrickdavey/vimwiki_markdown/issues/27), but basically it should work fine. You will want to add `styles` in for the various states that the todo lists can be in. The easiest way is to simply add the `styles` into your template. You can see the styles [in the sample template here](https://github.com/patrickdavey/vimwiki_markdown/blob/293f99e656819b9c5ecc0c831698ce58904eb774/example_files/default.tpl#L7-L45)
|
|
70
|
+
|
|
59
71
|
#### Support for :local and :file links
|
|
60
72
|
|
|
61
73
|
We have partial support for the `:local` and `:file` link types for vimwiki.
|
|
62
74
|
If you are editing `foo.md` (in the root dir of your wiki) and you are linking to `bar.txt` stored in the same directory as `foo.md` you can do:
|
|
63
75
|
|
|
64
|
-
* `[link text](local:bar.txt)` when output to HTML becomes
|
|
65
|
-
* `[link text](file:bar.txt)` when output to HTML becomes
|
|
76
|
+
* `[link text](local:bar.txt)` when output to HTML becomes `<a href="../bar.txt">link text</a>`
|
|
77
|
+
* `[link text](file:bar.txt)` when output to HTML becomes `<a href="/absolute/path/to/file">link text</a>`
|
|
66
78
|
|
|
67
79
|
#### Optional %nohtml
|
|
68
80
|
|
data/changelog.md
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
|
+
## 0.8.1 [March 7 2022]
|
|
2
|
+
Update commonmarker version, fixes security issue!
|
|
3
|
+
|
|
4
|
+
## 0.8.0 [March 7 2022]
|
|
5
|
+
Fixes an issue where VimwikiTOC generated table of contents where there are duplicate heading names did not match the output HTML from the Github pipeline.
|
|
6
|
+
|
|
7
|
+
This means any generated (dupliate) bookmarks are going to be broken though, so, this is backwardly incompatible
|
|
8
|
+
|
|
9
|
+
see https://github.com/patrickdavey/vimwiki_markdown/pull/39
|
|
10
|
+
|
|
11
|
+
## 0.7.0 [July 8 2021]
|
|
12
|
+
Fixes an issue whereby non english filenames were being replaced with empty strings
|
|
13
|
+
see https://github.com/patrickdavey/vimwiki_markdown/pull/35
|
|
14
|
+
|
|
15
|
+
## 0.6.0 [April 26 2020]
|
|
16
|
+
Support for todo lists with enhanced state options. Thanks to @primercuervo
|
|
17
|
+
|
|
1
18
|
## 0.5.0 [April 26 2020]
|
|
2
|
-
Partial support for `local` and `file` links in urls. Thanks to @tfachmann for
|
|
19
|
+
Partial support for `local` and `file` links in urls. Thanks to @tfachmann for the PR
|
|
3
20
|
|
|
4
21
|
## 0.4.4 [June 16 2019]
|
|
5
22
|
Allow fragments if they are for local vimwiki links only
|
data/example_files/default.tpl
CHANGED
|
@@ -4,6 +4,45 @@
|
|
|
4
4
|
<title>%title%</title>
|
|
5
5
|
|
|
6
6
|
%pygments%
|
|
7
|
+
<!--Style for Vimwiki Tasklist-->
|
|
8
|
+
<style>
|
|
9
|
+
.rejected {
|
|
10
|
+
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAMAAAAMCGV4AAAACXBIWXMAAADFAAAAxQEdzbqoAAAAB3RJTUUH4QgEFhAtuWgv9wAAAPZQTFRFmpqam5iYnJaWnJeXnpSUn5OTopCQpoqKpouLp4iIqIiIrYCAt3V1vW1tv2xsmZmZmpeXnpKS/x4e/x8f/yAg/yIi/yQk/yUl/yYm/ygo/ykp/yws/zAw/zIy/zMz/zQ0/zU1/zY2/zw8/0BA/0ZG/0pK/1FR/1JS/1NT/1RU/1VV/1ZW/1dX/1pa/15e/19f/2Zm/2lp/21t/25u/3R0/3p6/4CA/4GB/4SE/4iI/46O/4+P/52d/6am/6ur/66u/7Oz/7S0/7e3/87O/9fX/9zc/93d/+Dg/+vr/+3t/+/v//Dw//Ly//X1//f3//n5//z8////gzaKowAAAA90Uk5T/Pz8/Pz8/Pz8/Pz8/f39ppQKWQAAAAFiS0dEEnu8bAAAAACuSURBVAhbPY9ZF4FQFEZPSKbIMmWep4gMGTKLkIv6/3/GPbfF97b3w17rA0kQOPgvAeHW6uJ6+5h7HqLdwowgOzejXRXBdx6UdSru216xuOMBHHNU0clTzeSUA6EhF8V8kqroluMiU6HKcuf4phGPr1o2q9kYZWwNq1qfRRmTaXpqsyjj17KkWCxKBUBgXWueHIyiAIg18gsse4KHkLF5IKIY10WQgv7fOy4ST34BRiopZ8WLNrgAAAAASUVORK5CYII=);
|
|
11
|
+
background-repeat: no-repeat;
|
|
12
|
+
background-position: 0 .2em;
|
|
13
|
+
padding-left: 5.5em;
|
|
14
|
+
}
|
|
15
|
+
.done0 {
|
|
16
|
+
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAAxQAAAMUBHc26qAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAA7SURBVCiR7dMxEgAgCANBI3yVRzF5KxNbW6wsuH7LQ2YKQK1mkswBVERYF5Os3UV3gwd/jF2SkXy66gAZkxS6BniubAAAAABJRU5ErkJggg==);
|
|
17
|
+
background-repeat: no-repeat;
|
|
18
|
+
background-position: 0 .2em;
|
|
19
|
+
padding-left: 1.5em;
|
|
20
|
+
}
|
|
21
|
+
.done1 {
|
|
22
|
+
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAAxQAAAMUBHc26qAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAABtSURBVCiR1ZO7DYAwDER9BDmTeZQMFXmUbGYpOjrEryA0wOvO8itOslFrJYAug5BMM4BeSkmjsrv3aVTa8p48Xw1JSkSsWVUFwD05IqS1tmYzk5zzae9jnVVVzGyXb8sALjse+euRkEzu/uirFomVIdDGOLjuAAAAAElFTkSuQmCC);
|
|
23
|
+
background-repeat: no-repeat;
|
|
24
|
+
background-position: 0 .15em;
|
|
25
|
+
padding-left: 1.5em;
|
|
26
|
+
}
|
|
27
|
+
.done2 {
|
|
28
|
+
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAAxQAAAMUBHc26qAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAB1SURBVCiRzdO5DcAgDAVQGxjAYgTvxlDIu1FTIRYAp8qlFISkSH7l5kk+ZIwxKiI2mIyqWoeILYRgZ7GINDOLjnmF3VqklKCUMgTee2DmM661Qs55iI3Zm/1u5h9sm4ig9z4ERHTFzLyd4G4+nFlVrYg8+qoF/c0kdpeMsmcAAAAASUVORK5CYII=);
|
|
29
|
+
background-repeat: no-repeat;
|
|
30
|
+
background-position: 0 .15em;
|
|
31
|
+
padding-left: 1.5em;
|
|
32
|
+
}
|
|
33
|
+
.done3 {
|
|
34
|
+
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAAxQAAAMUBHc26qAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAABoSURBVCiR7dOxDcAgDATA/0DtUdiKoZC3YhLkHjkVKF3idJHiztKfvrHZWnOSE8Fx95RJzlprimJVnXktvXeY2S0SEZRSAAAbmxnGGKH2I5T+8VfxPhIReQSuuY3XyYWa3T2p6quvOgGrvSFGlewuUAAAAABJRU5ErkJggg==);
|
|
35
|
+
background-repeat: no-repeat;
|
|
36
|
+
background-position: 0 .15em;
|
|
37
|
+
padding-left: 1.5em;
|
|
38
|
+
}
|
|
39
|
+
.done4 {
|
|
40
|
+
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAQCAYAAAAbBi9cAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAAzgAAAM4BlP6ToAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAIISURBVDiNnZQ9SFtRFMd/773kpTaGJoQk1im4VDpWQcTNODhkFBcVTCNCF0NWyeDiIIiCm82QoIMIUkHUxcFBg1SEQoZszSat6cdTn1qNue92CMbEr9Sey+XC/Z/zu+f8h6ukUil3sVg0+M+4cFxk42/jH2wAqqqKSCSiPQdwcHHAnDHH9s/tN1h8V28ETdP+eU8fT9Nt62ancYdIPvJNtsu87bmjrJlrTDVM4RROJs1JrHPrD4Bar7A6cpc54iKOaTdJXCUI2UMVrQZ0Js7YPN18ECKkYNQcJe/OE/4dZsw7VqNXQMvHy3QZXQypQ6ycrtwDjf8aJ+PNEDSCzLpn7+m2pD8ZKHlKarYhy6XjEoCYGcN95qansQeA3fNdki+SaJZGTMQIOoL3W/Z89rxv+tokubNajlvk/vm+LFpF2XnUKZHI0I+QrI7Dw0OZTqdzUkpsM7mZTyfy5OPGyw1tK7AFSvmB/Ks8w8YwbUYbe6/3QEKv0vugfxWPnMLJun+d/kI/WLdizpNjMbAIKrhMF4OuwadBALqqs+RfInwUvuNi+fBd+wjogfogAFVRmffO02q01mZZ0HHdgXIzdz0QQLPezIQygX6llxNKKgOFARYCC49CqhoHIUTlss/Vx2phlYwjw8j1CAlfAiwQiJpiy7o1VHnsG5FISkoJu7Q/2YmmaV+i0ei7v38L2CBguSi5AAAAAElFTkSuQmCC);
|
|
41
|
+
background-repeat: no-repeat;
|
|
42
|
+
background-position: 0 .15em;
|
|
43
|
+
padding-left: 1.5em;
|
|
44
|
+
}
|
|
45
|
+
</style>
|
|
7
46
|
</head>
|
|
8
47
|
<body id="%title%">
|
|
9
48
|
<h2 id="title">%title%</h2>
|
|
@@ -34,7 +34,12 @@ module VimwikiMarkdown
|
|
|
34
34
|
def rewrite_local_links!
|
|
35
35
|
if vimwiki_markdown_file_exists?
|
|
36
36
|
path = Pathname.new(uri)
|
|
37
|
-
|
|
37
|
+
|
|
38
|
+
link_path = path.basename(markdown_extension).to_s.parameterize
|
|
39
|
+
|
|
40
|
+
link_path = path.basename(markdown_extension).to_s if link_path.match(/^\s*$/)
|
|
41
|
+
|
|
42
|
+
@uri = "#{path.dirname + link_path}.html"
|
|
38
43
|
@fragment = fragment.parameterize.prepend("#") unless fragment.empty?
|
|
39
44
|
elsif /^file:/.match(uri)
|
|
40
45
|
# begins with file: -> force absolute path if file exists
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
class VimwikiTOCFilter < HTML::Pipeline::TableOfContentsFilter
|
|
2
|
+
def call
|
|
3
|
+
result[:toc] = String.new('')
|
|
4
|
+
|
|
5
|
+
headers = Hash.new(1)
|
|
6
|
+
doc.css('h1, h2, h3, h4, h5, h6').each do |node|
|
|
7
|
+
text = node.text
|
|
8
|
+
id = ascii_downcase(text)
|
|
9
|
+
id.gsub!(PUNCTUATION_REGEXP, '') # remove punctuation
|
|
10
|
+
id.tr!(' ', '-') # replace spaces with dash
|
|
11
|
+
|
|
12
|
+
uniq = headers[id] > 1 ? "-#{headers[id]}" : ''
|
|
13
|
+
headers[id] += 1
|
|
14
|
+
if header_content = node.children.first
|
|
15
|
+
result[:toc] << %(<li><a href="##{id}#{uniq}">#{EscapeUtils.escape_html(text)}</a></li>\n)
|
|
16
|
+
header_content.add_previous_sibling(%(<a id="#{id}#{uniq}" class="anchor" href="##{id}#{uniq}" aria-hidden="true">#{anchor_icon}</a>))
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
result[:toc] = %(<ul class="section-nav">\n#{result[:toc]}</ul>) unless result[:toc].empty?
|
|
20
|
+
doc
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
if RUBY_VERSION >= '2.4'
|
|
24
|
+
def ascii_downcase(str)
|
|
25
|
+
str.downcase(:ascii)
|
|
26
|
+
end
|
|
27
|
+
else
|
|
28
|
+
def ascii_downcase(str)
|
|
29
|
+
str.downcase
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -3,6 +3,7 @@ require 'github/markup'
|
|
|
3
3
|
require 'html/pipeline'
|
|
4
4
|
require 'pathname'
|
|
5
5
|
require "vimwiki_markdown/vimwiki_link"
|
|
6
|
+
require "vimwiki_markdown/vimwiki_toc_filter"
|
|
6
7
|
|
|
7
8
|
class VimwikiMarkdown::WikiBody
|
|
8
9
|
|
|
@@ -23,10 +24,11 @@ class VimwikiMarkdown::WikiBody
|
|
|
23
24
|
|
|
24
25
|
pipeline = HTML::Pipeline.new([
|
|
25
26
|
HTML::Pipeline::SyntaxHighlightFilter,
|
|
26
|
-
|
|
27
|
+
VimwikiTOCFilter
|
|
27
28
|
], { scope: "highlight"})
|
|
28
|
-
result = pipeline.call(html)
|
|
29
|
-
result[:output].to_s
|
|
29
|
+
@result = pipeline.call(html)
|
|
30
|
+
@result = @result[:output].to_s
|
|
31
|
+
enrich_li_class!
|
|
30
32
|
end
|
|
31
33
|
|
|
32
34
|
|
|
@@ -74,4 +76,15 @@ class VimwikiMarkdown::WikiBody
|
|
|
74
76
|
CommonMarker.render_html(content, commonmarker_opts, commonmarker_exts)
|
|
75
77
|
}
|
|
76
78
|
end
|
|
79
|
+
|
|
80
|
+
def enrich_li_class!
|
|
81
|
+
syms_hash = { " ]" => 0, ".]" => 1, "o]" => 2, "O]" => 3, "X]" => 4 }
|
|
82
|
+
checkbox = /<li>\s*\[[\s.oOX]\]/
|
|
83
|
+
checkbox_start = /<li>\s*\[/
|
|
84
|
+
@result.gsub!(checkbox) do |m|
|
|
85
|
+
m.sub(checkbox_start, '<li class="done')
|
|
86
|
+
.sub(/[\s.oOX\]]*$/, syms_hash) << '">'
|
|
87
|
+
end
|
|
88
|
+
@result
|
|
89
|
+
end
|
|
77
90
|
end
|
|
@@ -43,6 +43,11 @@ module VimwikiMarkdown
|
|
|
43
43
|
expect(Options.new.output_fullpath).to eq("#{subject.output_dir}name-with-spaces.html")
|
|
44
44
|
end
|
|
45
45
|
|
|
46
|
+
it "must not change filenames if paramteriezed returns an empty string" do
|
|
47
|
+
allow_any_instance_of(Options).to receive(:input_file) { "~/foo/世界.md" }
|
|
48
|
+
expect(Options.new.output_fullpath).to eq("#{subject.output_dir}世界.html")
|
|
49
|
+
end
|
|
50
|
+
|
|
46
51
|
it "must correctly deal with filenames with capitalization issues" do
|
|
47
52
|
allow_any_instance_of(Options).to receive(:input_file) { "~/foo/NAME WITH SPACES.md" }
|
|
48
53
|
expect(Options.new.output_fullpath).to eq("#{subject.output_dir}name-with-spaces.html")
|
|
@@ -68,6 +68,17 @@ module VimwikiMarkdown
|
|
|
68
68
|
expect(link.to_s).to eq("[test](#{existing_file_no_extension}.html#wiki-heading)")
|
|
69
69
|
end
|
|
70
70
|
|
|
71
|
+
context "with chinese or unparamaterizable chars" do
|
|
72
|
+
let(:existing_file) { "世界#{markdown_extension}" }
|
|
73
|
+
|
|
74
|
+
it "must convert same-directory markdown links without paramaterization correctly" do
|
|
75
|
+
markdown_link = "[test](#{existing_file_no_extension})"
|
|
76
|
+
|
|
77
|
+
link = VimwikiLink.new(markdown_link, source_filepath, markdown_extension, root_path, output_dir)
|
|
78
|
+
expect(link.to_s).to eq("[test](#{existing_file_no_extension}.html)")
|
|
79
|
+
end
|
|
80
|
+
end
|
|
81
|
+
|
|
71
82
|
context "subdirectory linked files" do
|
|
72
83
|
let(:existing_file) { "subdirectory/test.md" }
|
|
73
84
|
|
|
@@ -52,6 +52,36 @@ module VimwikiMarkdown
|
|
|
52
52
|
expect(wiki_body.to_s).to match(/<a href="there.html">there<\/a>/)
|
|
53
53
|
end
|
|
54
54
|
|
|
55
|
+
it "must enrich task list unchecked" do
|
|
56
|
+
allow_any_instance_of(VimwikiMarkdown::VimwikiLink).to receive(:vimwiki_markdown_file_exists?).and_return(true)
|
|
57
|
+
allow(wiki_body).to receive(:get_wiki_markdown_contents).and_return("- [ ] This is one line")
|
|
58
|
+
expect(wiki_body.to_s).to match(/<li class="done0"> This is one line<\/li>/)
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
it "must enrich task list checked" do
|
|
62
|
+
allow_any_instance_of(VimwikiMarkdown::VimwikiLink).to receive(:vimwiki_markdown_file_exists?).and_return(true)
|
|
63
|
+
allow(wiki_body).to receive(:get_wiki_markdown_contents).and_return("- [X] This is a checked line")
|
|
64
|
+
expect(wiki_body.to_s).to match(/<li class="done4"> This is a checked line<\/li>/)
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
it "must enrich task list parent 1" do
|
|
68
|
+
allow_any_instance_of(VimwikiMarkdown::VimwikiLink).to receive(:vimwiki_markdown_file_exists?).and_return(true)
|
|
69
|
+
allow(wiki_body).to receive(:get_wiki_markdown_contents).and_return("- [.] This is a parent 1 line")
|
|
70
|
+
expect(wiki_body.to_s).to match(/<li class="done1"> This is a parent 1 line<\/li>/)
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
it "must enrich task list parent 2" do
|
|
74
|
+
allow_any_instance_of(VimwikiMarkdown::VimwikiLink).to receive(:vimwiki_markdown_file_exists?).and_return(true)
|
|
75
|
+
allow(wiki_body).to receive(:get_wiki_markdown_contents).and_return("- [o] This is a parent 2 line")
|
|
76
|
+
expect(wiki_body.to_s).to match(/<li class="done2"> This is a parent 2 line<\/li>/)
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
it "must enrich task list parent 3" do
|
|
80
|
+
allow_any_instance_of(VimwikiMarkdown::VimwikiLink).to receive(:vimwiki_markdown_file_exists?).and_return(true)
|
|
81
|
+
allow(wiki_body).to receive(:get_wiki_markdown_contents).and_return("- [O] This is a parent 3 line")
|
|
82
|
+
expect(wiki_body.to_s).to match(/<li class="done3"> This is a parent 3 line<\/li>/)
|
|
83
|
+
end
|
|
84
|
+
|
|
55
85
|
describe "syntax highlighting" do
|
|
56
86
|
it "must give correct classes" do
|
|
57
87
|
allow(wiki_body).to receive(:get_wiki_markdown_contents)
|
data/spec/spec_helper.rb
CHANGED
|
@@ -107,6 +107,28 @@ def wiki_index_markdown
|
|
|
107
107
|
|
|
108
108
|
> this is a blockquote
|
|
109
109
|
> without a linebreak
|
|
110
|
+
|
|
111
|
+
## Test for checks
|
|
112
|
+
|
|
113
|
+
- [ ] This is one line
|
|
114
|
+
- [X] This is a checked line
|
|
115
|
+
- [ ] This is a parent line 1
|
|
116
|
+
- [ ] This is a child line 1
|
|
117
|
+
- [ ] This is a child line 2
|
|
118
|
+
- [.] This is a parent line 2
|
|
119
|
+
- [X] This is a child line 1
|
|
120
|
+
- [ ] This is a child line 2
|
|
121
|
+
- [ ] This is a child line 3
|
|
122
|
+
- [o] This is a parent line 2
|
|
123
|
+
- [X] This is a child line 1
|
|
124
|
+
- [X] This is a child line 2
|
|
125
|
+
- [ ] This is a child line 3
|
|
126
|
+
- [O] This is a parent line 3
|
|
127
|
+
- [X] This is a child line 1
|
|
128
|
+
- [X] This is a child line 2
|
|
129
|
+
- [X] This is a child line 3
|
|
130
|
+
- [ ] This is a child line 4
|
|
131
|
+
|
|
110
132
|
"
|
|
111
133
|
end
|
|
112
134
|
|
data/vimwiki_markdown.gemspec
CHANGED
|
@@ -18,8 +18,8 @@ Gem::Specification.new do |spec|
|
|
|
18
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
|
19
19
|
spec.require_paths = ["lib"]
|
|
20
20
|
|
|
21
|
-
spec.add_development_dependency "bundler"
|
|
22
|
-
spec.add_development_dependency "rake", "~>
|
|
21
|
+
spec.add_development_dependency "bundler"
|
|
22
|
+
spec.add_development_dependency "rake", "~> 12.3"
|
|
23
23
|
spec.add_development_dependency "rspec", "~> 3.0"
|
|
24
24
|
spec.add_development_dependency "pry", "~> 0.12"
|
|
25
25
|
spec.add_development_dependency "rspec-its", "~> 1.1"
|
|
@@ -29,7 +29,7 @@ Gem::Specification.new do |spec|
|
|
|
29
29
|
|
|
30
30
|
spec.add_runtime_dependency "activesupport", "~> 4.1"
|
|
31
31
|
spec.add_runtime_dependency "github-markup", "~> 3.0"
|
|
32
|
-
spec.add_runtime_dependency "commonmarker", "~> 0.
|
|
32
|
+
spec.add_runtime_dependency "commonmarker", "~> 0.23.4"
|
|
33
33
|
spec.add_runtime_dependency "html-pipeline", "~> 2.0"
|
|
34
34
|
spec.add_runtime_dependency "rouge", "~> 3.3"
|
|
35
35
|
spec.add_runtime_dependency "escape_utils", "~> 1.2"
|
metadata
CHANGED
|
@@ -1,43 +1,43 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: vimwiki_markdown
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.8.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Patrick Davey
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2022-03-07 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
|
16
16
|
requirements:
|
|
17
|
-
- - "
|
|
17
|
+
- - ">="
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '
|
|
19
|
+
version: '0'
|
|
20
20
|
type: :development
|
|
21
21
|
prerelease: false
|
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
23
|
requirements:
|
|
24
|
-
- - "
|
|
24
|
+
- - ">="
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: '
|
|
26
|
+
version: '0'
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
28
|
name: rake
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
30
30
|
requirements:
|
|
31
31
|
- - "~>"
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: '
|
|
33
|
+
version: '12.3'
|
|
34
34
|
type: :development
|
|
35
35
|
prerelease: false
|
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
37
|
requirements:
|
|
38
38
|
- - "~>"
|
|
39
39
|
- !ruby/object:Gem::Version
|
|
40
|
-
version: '
|
|
40
|
+
version: '12.3'
|
|
41
41
|
- !ruby/object:Gem::Dependency
|
|
42
42
|
name: rspec
|
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -156,14 +156,14 @@ dependencies:
|
|
|
156
156
|
requirements:
|
|
157
157
|
- - "~>"
|
|
158
158
|
- !ruby/object:Gem::Version
|
|
159
|
-
version:
|
|
159
|
+
version: 0.23.4
|
|
160
160
|
type: :runtime
|
|
161
161
|
prerelease: false
|
|
162
162
|
version_requirements: !ruby/object:Gem::Requirement
|
|
163
163
|
requirements:
|
|
164
164
|
- - "~>"
|
|
165
165
|
- !ruby/object:Gem::Version
|
|
166
|
-
version:
|
|
166
|
+
version: 0.23.4
|
|
167
167
|
- !ruby/object:Gem::Dependency
|
|
168
168
|
name: html-pipeline
|
|
169
169
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -220,6 +220,8 @@ files:
|
|
|
220
220
|
- ".rspec"
|
|
221
221
|
- ".rubocop.yml"
|
|
222
222
|
- ".travis.yml"
|
|
223
|
+
- A.png
|
|
224
|
+
- B.png
|
|
223
225
|
- Gemfile
|
|
224
226
|
- Guardfile
|
|
225
227
|
- LICENSE.txt
|
|
@@ -234,6 +236,7 @@ files:
|
|
|
234
236
|
- lib/vimwiki_markdown/template.rb
|
|
235
237
|
- lib/vimwiki_markdown/version.rb
|
|
236
238
|
- lib/vimwiki_markdown/vimwiki_link.rb
|
|
239
|
+
- lib/vimwiki_markdown/vimwiki_toc_filter.rb
|
|
237
240
|
- lib/vimwiki_markdown/wiki_body.rb
|
|
238
241
|
- spec/lib/vimwiki_markdown/options_spec.rb
|
|
239
242
|
- spec/lib/vimwiki_markdown/template_spec.rb
|
|
@@ -245,7 +248,7 @@ homepage: https://github.com/patrickdavey/wimwiki_markdown
|
|
|
245
248
|
licenses:
|
|
246
249
|
- MIT
|
|
247
250
|
metadata: {}
|
|
248
|
-
post_install_message:
|
|
251
|
+
post_install_message:
|
|
249
252
|
rdoc_options: []
|
|
250
253
|
require_paths:
|
|
251
254
|
- lib
|
|
@@ -260,9 +263,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
260
263
|
- !ruby/object:Gem::Version
|
|
261
264
|
version: '0'
|
|
262
265
|
requirements: []
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
signing_key:
|
|
266
|
+
rubygems_version: 3.2.3
|
|
267
|
+
signing_key:
|
|
266
268
|
specification_version: 4
|
|
267
269
|
summary: Converts a github flavoured markdown vimwiki file into html.
|
|
268
270
|
test_files:
|