tmx_importer 1.2.0 → 1.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/tmx_importer/version.rb +1 -1
- data/lib/tmx_importer.rb +4 -2
- data/spec/test_sample_files/single_quotes.tmx +38 -0
- data/spec/tmx_importer_spec.rb +12 -0
- metadata +3 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7424c506cc51203870a3071cf7a09a90e2aa1af9
|
4
|
+
data.tar.gz: ff7ae48224eb2f8a03bc8d550f23735ea76f003a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 512fb82572a62c8bc7b27fd1ff82ae8152e7bca9581b0e968c2bcdc1b4f4e2b5a89bcc4562241bc5e8fd22daf7ca33213b205f572319f7f416cf63f22b9e41d2
|
7
|
+
data.tar.gz: cc89619e0ee8c0b0ed2c799573c5d64fa8e8fcae9d4e47328b5f0719dedffe6668beadf50006a4f4764b187c462c64dee9888ab0914f174c6e574174295f179a
|
data/lib/tmx_importer/version.rb
CHANGED
data/lib/tmx_importer.rb
CHANGED
@@ -65,11 +65,13 @@ module TmxImporter
|
|
65
65
|
end
|
66
66
|
|
67
67
|
def analyze_line(line)
|
68
|
-
@doc[:source_language] = line.scan(/(?<=srclang=\S)\S+(?=")
|
68
|
+
@doc[:source_language] = line.scan(/(?<=srclang=\S)\S+(?=")/)[0] if line.include?('srclang=') && !line.scan(/(?<=srclang=\S)\S+(?=")/).empty?
|
69
|
+
@doc[:source_language] = line.scan(/(?<=srclang=\S)\S+(?=')/)[0] if line.include?('srclang=') && !line.scan(/(?<=srclang=\S)\S+(?=')/).empty?
|
69
70
|
@doc[:tu][:counter] += line.scan(/<\/tu>/).count
|
70
71
|
@doc[:seg][:counter] += line.scan(/<\/seg>/).count
|
71
72
|
if line.include?('lang')
|
72
|
-
@doc[:seg][:lang] = line.scan(/(?<=[^cn]lang=\S)\S+(?=")
|
73
|
+
@doc[:seg][:lang] = line.scan(/(?<=[^cn]lang=\S)\S+(?=")/)[0] if !line.scan(/(?<=[^cn]lang=\S)\S+(?=")/).empty?
|
74
|
+
@doc[:seg][:lang] = line.scan(/(?<=[^cn]lang=\S)\S+(?=')/)[0] if !line.scan(/(?<=[^cn]lang=\S)\S+(?=')/).empty?
|
73
75
|
@doc[:seg][:lang] = @doc[:seg][:lang] unless @doc[:seg][:lang].nil?
|
74
76
|
write_language_pair
|
75
77
|
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
<?xml version='1.0' encoding='utf-8'?>
|
2
|
+
<tmx version='1.4'>
|
3
|
+
<header creationtool='AwesomeTool' creationtoolversion='2.0' datatype='plaintext' segtype='sentence' o-tmf='AwesomeTool TMX' adminlang='EN-US' srclang='de-DE'></header>
|
4
|
+
<body>
|
5
|
+
<tu tuid='1'>
|
6
|
+
<tuv xml:lang='de-DE'>
|
7
|
+
<seg>überprüfen</seg>
|
8
|
+
</tuv>
|
9
|
+
<tuv xml:lang='en-US'>
|
10
|
+
<seg>check</seg>
|
11
|
+
</tuv>
|
12
|
+
</tu>
|
13
|
+
<tu tuid='2'>
|
14
|
+
<tuv xml:lang='de-DE'>
|
15
|
+
<seg>Rückenlehneneinstellung</seg>
|
16
|
+
</tuv>
|
17
|
+
<tuv xml:lang='en-US'>
|
18
|
+
<seg>Backrest adjustment</seg>
|
19
|
+
</tuv>
|
20
|
+
</tu>
|
21
|
+
<tu tuid='3'>
|
22
|
+
<tuv xml:lang='de-DE'>
|
23
|
+
<seg>Bezüglich</seg>
|
24
|
+
</tuv>
|
25
|
+
<tuv xml:lang='en-US'>
|
26
|
+
<seg>In terms of</seg>
|
27
|
+
</tuv>
|
28
|
+
</tu>
|
29
|
+
<tu tuid='4'>
|
30
|
+
<tuv xml:lang='de-DE'>
|
31
|
+
<seg>Der Staatsschutz prüft, ob es einen Zusammenhang mit einem Anschlag auf eine geplante Flüchtlingsunterkunft in der Nachbarschaft Ende August gibt.</seg>
|
32
|
+
</tuv>
|
33
|
+
<tuv xml:lang='en-US'>
|
34
|
+
<seg>The state protection checks whether there is a connection with an attack on a planned refugee camp in the neighborhood of late August.</seg>
|
35
|
+
</tuv>
|
36
|
+
</tu>
|
37
|
+
</body>
|
38
|
+
</tmx>
|
data/spec/tmx_importer_spec.rb
CHANGED
@@ -74,6 +74,12 @@ describe TmxImporter do
|
|
74
74
|
tmx = TmxImporter::Tmx.new(file_path: file_path)
|
75
75
|
expect(tmx.stats).to eq({:tu_count=>1, :seg_count=>2, :language_pairs=>[["tr", "en"]]})
|
76
76
|
end
|
77
|
+
|
78
|
+
it 'imports a TMX file with single quotes' do
|
79
|
+
file_path = File.expand_path('../tmx_importer/spec/test_sample_files/single_quotes.tmx')
|
80
|
+
tmx = TmxImporter::Tmx.new(file_path: file_path)
|
81
|
+
expect(tmx.stats).to eq({:tu_count=>4, :seg_count=>8, :language_pairs=>[["de-DE", "en-US"]]})
|
82
|
+
end
|
77
83
|
end
|
78
84
|
|
79
85
|
describe '#import' do
|
@@ -130,5 +136,11 @@ describe TmxImporter do
|
|
130
136
|
tmx = TmxImporter::Tmx.new(file_path: file_path)
|
131
137
|
expect(tmx.import[1][1][3]).to eq("en")
|
132
138
|
end
|
139
|
+
|
140
|
+
it 'imports a TMX file with single_quotes' do
|
141
|
+
file_path = File.expand_path('../tmx_importer/spec/test_sample_files/single_quotes.tmx')
|
142
|
+
tmx = TmxImporter::Tmx.new(file_path: file_path)
|
143
|
+
expect(tmx.import[1][2][3]).to eq("de-DE")
|
144
|
+
end
|
133
145
|
end
|
134
146
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tmx_importer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kevin S. Dias
|
@@ -116,6 +116,7 @@ files:
|
|
116
116
|
- spec/test_sample_files/bad_markup(utf-8).tmx
|
117
117
|
- spec/test_sample_files/multiple_language_pairs.tmx
|
118
118
|
- spec/test_sample_files/out_of_order_segments.tmx
|
119
|
+
- spec/test_sample_files/single_quotes.tmx
|
119
120
|
- spec/test_sample_files/srclang_all.tmx
|
120
121
|
- spec/test_sample_files/strange_encoding.tmx
|
121
122
|
- spec/test_sample_files/test_tm(utf-16LE BOM).tmx
|
@@ -154,6 +155,7 @@ test_files:
|
|
154
155
|
- spec/test_sample_files/bad_markup(utf-8).tmx
|
155
156
|
- spec/test_sample_files/multiple_language_pairs.tmx
|
156
157
|
- spec/test_sample_files/out_of_order_segments.tmx
|
158
|
+
- spec/test_sample_files/single_quotes.tmx
|
157
159
|
- spec/test_sample_files/srclang_all.tmx
|
158
160
|
- spec/test_sample_files/strange_encoding.tmx
|
159
161
|
- spec/test_sample_files/test_tm(utf-16LE BOM).tmx
|