text_alignment 0.5 → 0.5.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/align_annotations +5 -1
- data/lib/text_alignment/text_alignment.rb +10 -12
- data/lib/text_alignment/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 041aa1d92ea6bb54ca9fd005d0a8684b8c012b0cb55e5ea00d54be357eae646c
|
4
|
+
data.tar.gz: f821ae66f4c64eb7043ec85515694c207510be860568cc86fc47b89c8e504f87
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9bf264a8789a2630e6a820b0a0833854f6b03de802d78ea60b5849e5ee6ceb0119494221fadb2220ad27edb92f44711530ef840c05c044396402e2227f71c004
|
7
|
+
data.tar.gz: c4a95752b186092d2acc48dbdbeedde6ca952da02dcf206c95304f11f6d0c433dd2ad25f50729dceb5610fee438f9ca4df7171db66af7f2904a247ba50105149
|
data/bin/align_annotations
CHANGED
@@ -35,6 +35,10 @@ def align_mdoc(source_annotations, target_annotations)
|
|
35
35
|
source_annotations.each do |annotations|
|
36
36
|
alignment = TextAlignment::TextAlignment.new(annotations[:text], target_annotations[:text])
|
37
37
|
|
38
|
+
puts alignment.alignment_show
|
39
|
+
puts "-----"
|
40
|
+
puts
|
41
|
+
|
38
42
|
# alignment.block_alignments.each do |a|
|
39
43
|
# p {source:a[:source], target:a[:target]}
|
40
44
|
# puts "--"
|
@@ -134,7 +138,7 @@ else
|
|
134
138
|
source_text = source_annotations[:text]
|
135
139
|
|
136
140
|
# puts "[block alignment]"
|
137
|
-
puts alignment.
|
141
|
+
puts alignment.alignment_show
|
138
142
|
# puts "====="
|
139
143
|
# exit
|
140
144
|
|
@@ -23,14 +23,14 @@ class TextAlignment::TextAlignment
|
|
23
23
|
# try exact match
|
24
24
|
block_begin = str2.index(str1)
|
25
25
|
unless block_begin.nil?
|
26
|
-
@block_alignments = [{source:{begin:0, end:str1.length}, target:{begin:block_begin, end:block_begin + str1.length}, delta:block_begin}]
|
26
|
+
@block_alignments = [{source:{begin:0, end:str1.length}, target:{begin:block_begin, end:block_begin + str1.length}, delta:block_begin, alignment: :block}]
|
27
27
|
return @block_alignments
|
28
28
|
end
|
29
29
|
|
30
30
|
# try exact match
|
31
31
|
block_begin = str2.downcase.index(str1.downcase)
|
32
32
|
unless block_begin.nil?
|
33
|
-
@block_alignments = [{source:{begin:0, end:str1.length}, target:{begin:block_begin, end:block_begin + str1.length}, delta:block_begin}]
|
33
|
+
@block_alignments = [{source:{begin:0, end:str1.length}, target:{begin:block_begin, end:block_begin + str1.length}, delta:block_begin, alignment: :block}]
|
34
34
|
return @block_alignments
|
35
35
|
end
|
36
36
|
|
@@ -313,14 +313,11 @@ class TextAlignment::TextAlignment
|
|
313
313
|
"===== common =====\n" +
|
314
314
|
@ostr1[a[:source][:begin] ... a[:source][:end]] + "\n\n"
|
315
315
|
when :empty
|
316
|
-
|
317
|
-
|
318
|
-
|
319
|
-
|
320
|
-
p @ostr2[a[:target][:begin] ... a[:target][:end]]
|
321
|
-
puts
|
316
|
+
"<<<<< string 1\n" +
|
317
|
+
@ostr1[a[:source][:begin] ... a[:source][:end]] + "\n\n" +
|
318
|
+
">>>>> string 2\n" +
|
319
|
+
@ostr2[a[:target][:begin] ... a[:target][:end]] + "\n\n"
|
322
320
|
else
|
323
|
-
puts "***** local mismatch"
|
324
321
|
astr1 = ''
|
325
322
|
astr2 = ''
|
326
323
|
|
@@ -352,11 +349,12 @@ class TextAlignment::TextAlignment
|
|
352
349
|
end
|
353
350
|
end.join('')
|
354
351
|
|
355
|
-
|
356
|
-
|
357
|
-
|
352
|
+
"***** local mismatch\n" +
|
353
|
+
"[#{astr1}]\n" +
|
354
|
+
"[#{astr2}]\n\n"
|
358
355
|
end
|
359
356
|
end
|
357
|
+
show
|
360
358
|
end
|
361
359
|
|
362
360
|
private
|