bibtex-ruby 4.0.0 → 4.0.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.
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
|