@@ -, +, @@ simple/double quote Today, translated in French is Aujourd'hui. And so this JS line: var m = _('Today'); become in French: var m = _('Aujourd'hui'); It breaks the whole JS code. With this patch: var m = _('Ajourd\'hui'); --- misc/translator/tmpl_process3.pl | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) --- a/misc/translator/tmpl_process3.pl +++ a/misc/translator/tmpl_process3.pl @@ -117,8 +117,10 @@ sub text_replace (**) { for my $t (@{$s->js_data}) { # FIXME for this whole block if ($t->[0]) { - printf $output "%s%s%s", $t->[2], find_translation $t->[3], - $t->[2]; + my $translation = find_translation $t->[3]; + $translation =~ s/'/\\'/g; + $translation =~ s/"/\\"/g; + printf $output "%s%s%s", $t->[2], $translation, $t->[2]; } else { print $output $t->[1]; } --