How to gracefully solve this: new translation during my work in progress
Yesterday I started updating translation for Station playlist website. There are many strings so I left my working copy and unfortunatelly didn't send my work in progress to the server. So currently there is different version on the server. I tryed merge but nowhing happened, I probably have to somewhat specify revision numbers. What partially solved my problem is translate from memory, poedit probably records everithing what was translated and found identical strings. Do you have any idea or recommendations? One mistake what I did that I didn't commit that work in progres.
Hi Ondrej,toggle quoted messageShow quoted text
Yes you are right, unfortunately if one forgets to send working progress, then these sorts of problems will happen.
I will explain the problem, and then the possible solutions.
at revision xx20, your pot file contains:
message 1 (english): "hello world"
message 1 translation: "hello world translated"
message 2 (english): "good bye world"
message 2 translation: "", translator didnt reach this message so it is blank.
now you update to revision xx30 and you get new messages and fuzzy messages.
message 1 (english): "hello, world!" # author decided to modify message to add punctuation.
if you committed your work, po merge will recognise that it is the same message but modified, so your translation will be marked fuzzy, so
that you can check if any modification is needed.
but because po merge is running on the server and of course it does not know anything about your local translation, it will just modify the english.
now when you do svn update, svn will be confused, because the same section of the file has been edited at the same time, and it does not know
what is write and what is wrong. svn also doesn't know the file, or what is valid po file or t2t file etc, so it doesn't know what needs to be
done to fix the problem. It will mark it as conflicted, and the human needs to fix.
The conflict may sometimes introduce conflict markers, to help the human to find the clashes. With this, of course this means that now it is
not a valid po file, t2t file or whatever file, so to resolve the problem the human has to use a plain text editor to fix the problem.
1. If there are not too many messages in the local copy that were not pushed, for example you know you translated only 3 or 4 messages, it is
quicker to delete your local copy of the po file, and svn update to get the server copy and just retranslate those few messages and continue
2. If there were many translated messages but they were not pushed to the server then this is a lot more effort, and needs a lot of care and
attension, and it can be solved in two diffrent ways.
2.A. ignore the server copy of the po file, take the local copy of the po file and manually run po merge with the new message catalogue.
Double check that everything is ok, and then commit this copy to svn.
2.B. If the sinario is not merge pot that committed, but maybe another translator, then each message from both po files have to be compared by
hand, and the correct version chosen.
The resulting file needs to still validate as a correct po file after this process.
2.B. is very time consuming if it is a lot of messages.
In both 2.A. and 2.B, I would say if someone is not confident/experienced with the procedure, it is always best to ask for help, especially
since we do not have any documentation on how to fix this on windows.
Because I have done this several times for translators, I know what to look for, and I might also have access to more tools (on linux) or I
could write some script to help me resolve the problem.
Hope this explains what you experienced.
On Fri 28/02/20,08:55, Ondrej Rosik wrote: