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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ed46f17c426f678a6782c0e226710d4508edc484
4
- data.tar.gz: d70e405f4c1f9783cf3a2a8c515837eab7a7d3b9
3
+ metadata.gz: 2a027f55fbfc21baadb0ed5b95eb858ec0ab5cbc
4
+ data.tar.gz: 891369c64cff100d3cfc2f5ed134b3484512ee93
5
5
  SHA512:
6
- metadata.gz: 24999b5c3f94cd6de3fc4dfc773399421829cac09189cbd5ae2599fa8c99ae195dfb8087a892582117b63b41ed46c782d2ecb925ece19de56b7fea98bc5bada9
7
- data.tar.gz: b867a6b26356e16d650257edf0f27d770f19406729728376ed6ac58bdffdd1637c8fac9292c6623e0efe930f9bc2319b857db5707950aa31c6d361792a961273
6
+ metadata.gz: 3ac72b61e9b34fb3777f4b1e41ece613461496d943c7989393b06944f166eff031f3c63e37add9c51080ab300ae52f7aa51d7ef95ef723fa0a5f4776b5e697d2
7
+ data.tar.gz: 70d6e04c3e33d39a10cf6a9ecf9e8c056a7660c1db047ca81735821caabd3398829ca963e67fbba4aca7f6aa74fc333f03bef14a19ee6a31a138782133e1c8ae
@@ -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
- return unless bibtex.field?(:year)
101
-
102
- case bibtex[:year].to_s
103
- when /^\d+$/
104
- parts = [bibtex[:year].to_s]
105
-
106
- if bibtex.field?(:month)
107
- parts.push BibTeX::Entry::MONTHS.find_index(bibtex[:month].to_s.intern)
108
- parts[1] = parts[1] + 1 unless parts[1].nil?
109
-
110
- if bibtex.field?(:day)
111
- parts.push bibtex[:day]
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
- hash['issued'] = { 'literal' => bibtex[:year].to_s }
128
+ # no date present
118
129
  end
119
130
  end
120
131
 
@@ -20,7 +20,7 @@ module BibTeX
20
20
  module Version
21
21
  MAJOR = 4
22
22
  MINOR = 0
23
- PATCH = 0
23
+ PATCH = 1
24
24
  BUILD = nil
25
25
 
26
26
  STRING = [MAJOR, MINOR, PATCH, BUILD].compact.join('.').freeze
@@ -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.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-08 00:00:00.000000000 Z
11
+ date: 2014-07-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: latex-decode