"git@gitlab.lis-lab.fr:franck.dary/macaon.git" did not exist on "d438d3c34b1da1736f040556944c53b510eb90d1"
Newer
Older
from gi.repository import GObject, Gtk
import levenstein
class Alignment:
def __init__(self, ref):
self.ref = ref.split()
self.view = Gtk.TextView()
self.view.set_editable(False)
self.view.set_cursor_visible(False)
self.buffer = self.view.get_buffer()
self.buffer.set_text('Section\n' + ref)
self.subst = self.buffer.create_tag("orange_bg", background="orange")
self.ok_word = self.buffer.create_tag("green_bg", background="green")
def get_view(self):
return self.view
def align(self, hyp):
num_errors, num_ref, alignment, score = levenstein.align(self.ref, hyp)
text = self.buffer
text.set_text('Section\n')
levenstein.print_alignment(alignment)
#text.remove_all_tags()
for (ref_word, hyp_word) in alignment:
if ref_word != None:
i = text.get_end_iter()
if hyp_word != None:
if ref_word == hyp_word:
text.insert_with_tags(i, ref_word, self.ok_word)
else:
text.insert_with_tags(i, ref_word, self.subst)
text.insert(text.get_end_iter(), ' ')
else:
text.insert(text.get_end_iter(), ref_word + ' ')