see_as_vee 0.5.4 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 02951e75b098b408319f1df164ba76aecec5ce2b
4
- data.tar.gz: 5dcbf08befb11a2e8d37ef08b96aa676700c2396
3
+ metadata.gz: b367366b499401867c3ec9167bac628ca13edab9
4
+ data.tar.gz: 4e67b91a9d20cd0e46e9eb4d1412692811bb2823
5
5
  SHA512:
6
- metadata.gz: 50ef8490f968d9367be631031aa85bbc70001a1d6659f0abe2274afe86db0c1b2417fbbbbe6a7803f7201ff2dc564cc066a9fa6689d5c8a538b4f98deaffede0
7
- data.tar.gz: 17965b7262177c65896c31d066d36dbafe4604bae896055787269faa529e31dab33e39bc92977b3149c6dbacef2677af694f500e8eac28977f03e7c8825c61b7
6
+ metadata.gz: 570410e96332ef41fee45394512e848bacd7bcd0a51cea0034df4dda4522914af24bc33f671c2afbdd3703370bcde22ef57a595957caa149477ddc3d64b52e87
7
+ data.tar.gz: c7b3fce8fe6d98f30363a39b06fd0c35491715aa6e4f2ccf76e7c7282bd100ed46713f3c9eb85519637379c798a06dfec2b8229d865a23d4abd6e80cce31fa41
data/README.md CHANGED
@@ -126,6 +126,10 @@ From the version `0.4.5` we support expanding the column produced by `GROUP_CONC
126
126
 
127
127
  ## Changelog
128
128
 
129
+ ### `0.6.0` allow explicit `UTF-16 LE` with `BOM` to please MS Excel users
130
+
131
+ ### `0.5.4` deal with duplicated and empty headers
132
+
129
133
  ### `0.5.2` accept empty headers
130
134
 
131
135
  ### `0.5.1` _`skip_blank_rows`_
@@ -74,10 +74,22 @@ module SeeAsVee
74
74
  end
75
75
 
76
76
  def produce_csv **params
77
- Tempfile.new(['see_as_vee', '.csv']).tap do |f|
78
- CSV.open(f.path, "wb", params) do |content|
79
- @rows.each { |row| content << row }
80
- end unless @rows.empty?
77
+ return if @rows.empty?
78
+
79
+ for_ms_excel = params.delete(:ms_excel) == true
80
+
81
+ Tempfile.open(['see_as_vee', '.csv']).tap do |f|
82
+ content =
83
+ CSV.generate(params) do |csv|
84
+ @rows.each { |row| csv << row }
85
+ end
86
+ content =
87
+ "\xFF\xFE".force_encoding(Encoding::UTF_16LE) <<
88
+ content.encode(Encoding::UTF_16LE) if for_ms_excel
89
+
90
+ mode = for_ms_excel ? "w:UTF-16LE" : "w:UTF-8"
91
+
92
+ File.open(f.path, mode) { |f| f.write content }
81
93
  end
82
94
  end
83
95
 
@@ -1,3 +1,3 @@
1
1
  module SeeAsVee
2
- VERSION = '0.5.4'.freeze
2
+ VERSION = '0.6.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: see_as_vee
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.4
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aleksei Matiushkin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-07-20 00:00:00.000000000 Z
11
+ date: 2018-08-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: simple_xlsx_reader