jekyll-scholar 4.3.6 → 4.4.0
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/features/filter.feature +93 -0
- data/features/step_definitions/jekyll_steps.rb +10 -4
- data/features/step_definitions/scholar_steps.rb +9 -0
- data/lib/jekyll/scholar.rb +2 -0
- data/lib/jekyll/scholar/plugins/markdown_links.rb +14 -0
- data/lib/jekyll/scholar/utilities.rb +1 -0
- data/lib/jekyll/scholar/version.rb +1 -1
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f094338d53949be44b70b8e7f512861a5303130b
|
4
|
+
data.tar.gz: 4d4c0bc29496e9600934daacafd2c26c414173cf
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b72f42658fefc593629b596e1d37ad3409586a41e29add9e25ff0f6b4225073bb0a77fc59672e5675fa3828fced0e9ef2433b29f38517957e8d6739657b9b4da
|
7
|
+
data.tar.gz: e9f2a7f85d9b3a99be571f3be8c83ad76c4177246256c2f3cbeb90b59e9fc45476da8a16b06785b7edeeffdc55ce3c291e804aed9b1151adc2db6fbff132f1ce
|
data/features/filter.feature
CHANGED
@@ -38,6 +38,40 @@ Feature: BibTeX
|
|
38
38
|
And I should see "Programming Ruby" in "_site/scholar.html"
|
39
39
|
And I should not see "The Ruby Programming Language" in "_site/scholar.html"
|
40
40
|
|
41
|
+
@tags @filters
|
42
|
+
Scenario: Jekyll Filters
|
43
|
+
Given I have a scholar configuration with:
|
44
|
+
| key | value |
|
45
|
+
| source | ./_bibliography |
|
46
|
+
| bibliography_template | template |
|
47
|
+
And I have a "_bibliography" directory
|
48
|
+
And I have a file "_bibliography/references.bib":
|
49
|
+
"""
|
50
|
+
@book{ruby:2008-Foo,
|
51
|
+
title = {The Ruby Programming Language},
|
52
|
+
author = {Flanagan, David and Matsumoto, Yukihiro},
|
53
|
+
year = {2008},
|
54
|
+
publisher = {O'Reilly Media}
|
55
|
+
}
|
56
|
+
"""
|
57
|
+
And I have a "_layouts" directory
|
58
|
+
And I have a file "_layouts/template.html":
|
59
|
+
"""
|
60
|
+
---
|
61
|
+
---
|
62
|
+
{{ entry.key | slugify }}
|
63
|
+
"""
|
64
|
+
And I have a page "scholar.html":
|
65
|
+
"""
|
66
|
+
---
|
67
|
+
---
|
68
|
+
{% bibliography %}
|
69
|
+
"""
|
70
|
+
When I run jekyll
|
71
|
+
Then the _site directory should exist
|
72
|
+
And the "_site/scholar.html" file should exist
|
73
|
+
And I should see "ruby-2008-foo" in "_site/scholar.html"
|
74
|
+
|
41
75
|
@tags @max
|
42
76
|
Scenario: Limit number of entries
|
43
77
|
Given I have a scholar configuration with:
|
@@ -71,3 +105,62 @@ Feature: BibTeX
|
|
71
105
|
And the "_site/scholar.html" file should exist
|
72
106
|
And I should not see "Programming Ruby" in "_site/scholar.html"
|
73
107
|
And I should see "The Ruby Programming Language" in "_site/scholar.html"
|
108
|
+
|
109
|
+
@tags @urls
|
110
|
+
Scenario: URLs as text
|
111
|
+
Given I have a scholar configuration with:
|
112
|
+
| key | value |
|
113
|
+
| source | ./_bibliography |
|
114
|
+
And I have a "_bibliography" directory
|
115
|
+
And I have a file "_bibliography/references.bib":
|
116
|
+
"""
|
117
|
+
@book{pickaxe,
|
118
|
+
title = {Programming Ruby 1.9: The Pragmatic Programmer's Guide},
|
119
|
+
author = {Thomas, Dave and Fowler, Chad and Hunt, Andy},
|
120
|
+
year = {2009},
|
121
|
+
edition = 3,
|
122
|
+
publisher = {Pragmatic Bookshelf},
|
123
|
+
url = {https://pragprog.com}
|
124
|
+
}
|
125
|
+
"""
|
126
|
+
And I have a page "scholar.html":
|
127
|
+
"""
|
128
|
+
---
|
129
|
+
---
|
130
|
+
{% bibliography %}
|
131
|
+
"""
|
132
|
+
When I run jekyll
|
133
|
+
Then the _site directory should exist
|
134
|
+
And the "_site/scholar.html" file should exist
|
135
|
+
And I should see "from https://pragprog.com" in "_site/scholar.html"
|
136
|
+
|
137
|
+
@tags @urls
|
138
|
+
Scenario: URLs as Markdown links
|
139
|
+
Given I have a scholar configuration with:
|
140
|
+
| key | value |
|
141
|
+
| source | ./_bibliography |
|
142
|
+
And I have the following BibTeX filters:
|
143
|
+
| latex |
|
144
|
+
| markdown |
|
145
|
+
And I have a "_bibliography" directory
|
146
|
+
And I have a file "_bibliography/references.bib":
|
147
|
+
"""
|
148
|
+
@book{pickaxe,
|
149
|
+
title = {Programming Ruby 1.9: The Pragmatic Programmer's Guide},
|
150
|
+
author = {Thomas, Dave and Fowler, Chad and Hunt, Andy},
|
151
|
+
year = {2009},
|
152
|
+
edition = 3,
|
153
|
+
publisher = {Pragmatic Bookshelf},
|
154
|
+
url = {https://pragprog.com}
|
155
|
+
}
|
156
|
+
"""
|
157
|
+
And I have a page "scholar.html":
|
158
|
+
"""
|
159
|
+
---
|
160
|
+
---
|
161
|
+
{% bibliography %}
|
162
|
+
"""
|
163
|
+
When I run jekyll
|
164
|
+
Then the _site directory should exist
|
165
|
+
And the "_site/scholar.html" file should exist
|
166
|
+
And I should see "from \[https://pragprog.com\]\(https://pragprog.com\)" in "_site/scholar.html"
|
@@ -43,12 +43,18 @@ Then(/^the (.*) directory should exist$/) do |dir|
|
|
43
43
|
assert File.directory?(dir)
|
44
44
|
end
|
45
45
|
|
46
|
-
Then(/^I should see "(.*)" in "(.*)"$/) do |
|
47
|
-
|
46
|
+
Then(/^I should see "(.*)" in "(.*)"$/) do |pattern, file|
|
47
|
+
text = File.open(file).readlines.join
|
48
|
+
|
49
|
+
assert_match Regexp.new(pattern), text,
|
50
|
+
"Pattern /#{pattern}/ not found in: #{text}"
|
48
51
|
end
|
49
52
|
|
50
|
-
Then(/^I should not see "(.*)" in "(.*)"$/) do |
|
51
|
-
|
53
|
+
Then(/^I should not see "(.*)" in "(.*)"$/) do |pattern, file|
|
54
|
+
text = File.open(file).readlines.join
|
55
|
+
|
56
|
+
assert !text.match(Regexp.new(pattern)),
|
57
|
+
"Did not exptect /#{pattern}/ in: #{text}"
|
52
58
|
end
|
53
59
|
|
54
60
|
|
@@ -27,6 +27,15 @@ Given(/^I have the following BibTeX options:$/) do |table|
|
|
27
27
|
end
|
28
28
|
end
|
29
29
|
|
30
|
+
Given(/^I have the following BibTeX filters:$/) do |table|
|
31
|
+
File.open('_config.yml', 'a') do |f|
|
32
|
+
f.write(" bibtex_filters:\n")
|
33
|
+
table.raw.flatten.each do |row|
|
34
|
+
f.write(" - #{row}\n")
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
30
39
|
Then(/^"(.*)" should come before "(.*)" in "(.*)"$/) do |p1, p2, file|
|
31
40
|
data = File.open(file).readlines.join('')
|
32
41
|
|
data/lib/jekyll/scholar.rb
CHANGED
@@ -0,0 +1,14 @@
|
|
1
|
+
# Contriubted by @mfenner
|
2
|
+
# See https://github.com/inukshuk/jekyll-scholar/issues/30
|
3
|
+
|
4
|
+
require 'uri'
|
5
|
+
|
6
|
+
module Jekyll
|
7
|
+
class Scholar
|
8
|
+
class Markdown < BibTeX::Filter
|
9
|
+
def apply(value)
|
10
|
+
value.to_s.gsub(URI.regexp(['http','https','ftp'])) { |c| "[#{$&}](#{$&})" }
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jekyll-scholar
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sylvester Keil
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-06-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jekyll
|
@@ -110,6 +110,7 @@ files:
|
|
110
110
|
- lib/jekyll/scholar/converters/bibtex.rb
|
111
111
|
- lib/jekyll/scholar/defaults.rb
|
112
112
|
- lib/jekyll/scholar/generators/details.rb
|
113
|
+
- lib/jekyll/scholar/plugins/markdown_links.rb
|
113
114
|
- lib/jekyll/scholar/tags/bibliography.rb
|
114
115
|
- lib/jekyll/scholar/tags/bibtex.rb
|
115
116
|
- lib/jekyll/scholar/tags/cite.rb
|
@@ -138,7 +139,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
138
139
|
version: 1.3.6
|
139
140
|
requirements: []
|
140
141
|
rubyforge_project: jekyll-scholar
|
141
|
-
rubygems_version: 2.4.
|
142
|
+
rubygems_version: 2.4.7
|
142
143
|
signing_key:
|
143
144
|
specification_version: 4
|
144
145
|
summary: Jekyll extensions for the academic blogger.
|