In French, there is sometimes a requirement to add a space before the punctuation. For example,

English: I love you; do you love me?

French: Je t'aime ; m'aimes-tu ?

As MT can only translate what is fed into the translation engine, we need to add rules to deal with such situations. One of the best ways we can deal with this is to add a PTA runtime rule (please see details on a PTA and how to create one -

A PTA is a Post Translation Amendment which changes the translated output after translation to a preferred translation output. To add a space after the punctuation, add this regex code to a PTA (the example below has 3 columns, separated by a tab).

[ ]*\;[ ]*    ;_aomarkblankao_    rci
[ ]*\![ ]*    !_aomarkblankao_    rci
[ ]*\?[ ]*    ?_aomarkblankao_    rci

What this does is say, if there is a ; ! ? then add a space after the code. The aomarkblankao is a Language Studio marker that adds a space. At the end of the row, the rci, is the Regex case sensitive marker.

Different Scenarios:

Adding a space BEFORE the Punctuation

[ ]*\;[ ]*    _aomarkblankao_;    rci

Adding a space AFTER the Punctuation

[ ]*\;[ ]*    ;_aomarkblankao_    rci

Adding a space BEFORE and AFTER the Punctuation

[ ]*\;[ ]*    _aomarkblankao_;_aomarkblankao_    rci

Please find example file attached.