bibtex-ruby 4.0.0 → 4.0.1
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of bibtex-ruby might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/lib/bibtex/entry.rb +1 -1
- data/lib/bibtex/entry/citeproc_converter.rb +25 -14
- data/lib/bibtex/version.rb +1 -1
- data/test/bibtex/test_entry.rb +17 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2a027f55fbfc21baadb0ed5b95eb858ec0ab5cbc
|
4
|
+
data.tar.gz: 891369c64cff100d3cfc2f5ed134b3484512ee93
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3ac72b61e9b34fb3777f4b1e41ece613461496d943c7989393b06944f166eff031f3c63e37add9c51080ab300ae52f7aa51d7ef95ef723fa0a5f4776b5e697d2
|
7
|
+
data.tar.gz: 70d6e04c3e33d39a10cf6a9ecf9e8c056a7660c1db047ca81735821caabd3398829ca963e67fbba4aca7f6aa74fc333f03bef14a19ee6a31a138782133e1c8ae
|
data/lib/bibtex/entry.rb
CHANGED
@@ -50,7 +50,7 @@ module BibTeX
|
|
50
50
|
|
51
51
|
|
52
52
|
NAME_FIELDS = [:author,:editor,:translator,:director,:producer,:composer].freeze
|
53
|
-
DATE_FIELDS = [:year,:month].freeze
|
53
|
+
DATE_FIELDS = [:year,:month,:day,:date].freeze
|
54
54
|
|
55
55
|
MONTHS = [:jan,:feb,:mar,:apr,:may,:jun,:jul,:aug,:sep,:oct,:nov,:dec].freeze
|
56
56
|
|
@@ -97,24 +97,35 @@ class BibTeX::Entry::CiteProcConverter
|
|
97
97
|
end
|
98
98
|
|
99
99
|
def date
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
100
|
+
case
|
101
|
+
when bibtex.field?(:date)
|
102
|
+
hash['issued'] = {
|
103
|
+
'date-parts' => bibtex.date.to_s.split('/').map { |part|
|
104
|
+
part.split('-').map(&:to_i)
|
105
|
+
}
|
106
|
+
}
|
107
|
+
|
108
|
+
when bibtex.field?(:year)
|
109
|
+
case bibtex[:year].to_s
|
110
|
+
when /^\d+$/
|
111
|
+
parts = [bibtex[:year].to_s]
|
112
|
+
|
113
|
+
if bibtex.field?(:month)
|
114
|
+
parts.push BibTeX::Entry::MONTHS.find_index(bibtex[:month].to_s.intern)
|
115
|
+
parts[1] = parts[1] + 1 unless parts[1].nil?
|
116
|
+
|
117
|
+
if bibtex.field?(:day)
|
118
|
+
parts.push bibtex[:day]
|
119
|
+
end
|
112
120
|
end
|
121
|
+
|
122
|
+
hash['issued'] = { 'date-parts' => [parts.compact.map(&:to_i)] }
|
123
|
+
else
|
124
|
+
hash['issued'] = { 'literal' => bibtex[:year].to_s }
|
113
125
|
end
|
114
126
|
|
115
|
-
hash['issued'] = { 'date-parts' => [parts.compact.map(&:to_i)] }
|
116
127
|
else
|
117
|
-
|
128
|
+
# no date present
|
118
129
|
end
|
119
130
|
end
|
120
131
|
|
data/lib/bibtex/version.rb
CHANGED
data/test/bibtex/test_entry.rb
CHANGED
@@ -326,6 +326,23 @@ module BibTeX
|
|
326
326
|
@entry.update :year => 2005, :month => 5, :day => 31
|
327
327
|
assert_equal [[2005, 5, 31]], @entry.to_citeproc['issued']['date-parts']
|
328
328
|
end
|
329
|
+
|
330
|
+
it 'prefers biblatex syntax' do
|
331
|
+
@entry.date = '2014-07-13'
|
332
|
+
assert_equal [[2014,7,13]], @entry.to_citeproc['issued']['date-parts']
|
333
|
+
end
|
334
|
+
|
335
|
+
it 'supports biblatex date ranges' do
|
336
|
+
@entry.date = '2014-06-12/2014-07-13'
|
337
|
+
|
338
|
+
assert_equal [[2014,6,12],[2014,7,13]],
|
339
|
+
@entry.to_citeproc['issued']['date-parts']
|
340
|
+
end
|
341
|
+
|
342
|
+
it 'supports biblatex partial dates' do
|
343
|
+
@entry.date = '2014-07'
|
344
|
+
assert_equal [[2014,7]], @entry.to_citeproc['issued']['date-parts']
|
345
|
+
end
|
329
346
|
end
|
330
347
|
|
331
348
|
describe 'given a filter object or a filter name' do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bibtex-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.0.
|
4
|
+
version: 4.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sylvester Keil
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-07-
|
11
|
+
date: 2014-07-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: latex-decode
|