PrivateBin / PrivateBin

A minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted/decrypted in the browser using 256 bits AES.
https://privatebin.info/
Other
6.34k stars 785 forks source link

Translation update notifications #201

Closed kyodev closed 3 years ago

kyodev commented 7 years ago

I suggest using this issue to help prevent translators when you change language files. At each change, you post a comment here. All subscribers will know that a job is to be done.

rugk commented 7 years ago

Good idea, so, translators (@Ahuahuachi for ES; @kyodev, @Draky50110, @Hexalyse for FR; @stefanomarty; @idarlund for NO; @Quent-in for OC; @marsjaninzmarsa, @AreYouLoco for PL; @r4sas for RU; \<unknown> for SL - committed by @elrido; @imtms, @4679 for ZH; and all other potential new translators/contributors), please subscribe to this issue to get notified of translation file updates requiring retranslation.

The last translation change was cerca 10 days ago, because of JS refactoring. Some strings were added and some were changed.

So have a look if something needs to be done and please create a PR if so.

kyodev commented 7 years ago

ok, then fr.json is uptadated with my last commit.

r4sas commented 7 years ago

@rugk is it correct, that we must translate strings, which used in I18n._() and I18n::_() function? I now cant find some strings, like Could not create paste: %s - so remove them?

idarlund commented 7 years ago

which branch do you want us to use?

rugk commented 7 years ago

Use the master branch.

As for the strings you're right. If they are not used, you can remove them. However this should usually already been done in the de translation at least.

r4sas commented 7 years ago

By the way, translators, don't forget update %s requires php 5.3.0 or above to work. Sorry. string minimal php version from 5.3.0 to 5.4.0

elrido commented 7 years ago

Hi guys,

Thanks a lot for your initiative! Was out with the flu last week and still recuperating.

@kyodev Don't remove these, please, the refactored JS now concatenates some of these strings.

@r4sas Let's change that message from "%s requires php 5.3.0 or above to work. Sorry." to "%s requires php %s or above to work. Sorry." and inject the minimal version number from a constant of the PrivateBin class.

imtms commented 7 years ago

ok, zh.json for chinese translation is updated with my last commit.I just create a PR for this. #204

Quent-in commented 7 years ago

I'm sorry but what was changed? I don't see anything but "..." changed to "…" https://github.com/PrivateBin/PrivateBin/commits/master/i18n/oc.json What strings were added? Many thanks.

stefanomarty commented 7 years ago

That's the change, the three dots "..." (3 chars) are substituted by precomposed ellipsis "…" (1 char).

https://en.wikipedia.org/wiki/Ellipsis

elrido commented 7 years ago

You would need to compare oc.json vs de.json to find the changed message IDs. Ideally as a policy any changed message ID should be updated by who ever is changing it in all translation files, allowing translators to spot them. I now realize that in @rugk's JS refactoring that wasn't done for all translations as some were added in parallel.

Here is the list of differences I found for oc:

Sorry for the inconvenience this caused, I should have considered that when I merged that branch. :-(

elrido commented 7 years ago

I added a unit test that fails if any message ID in any translation file isn't found in all of the other translation. Found a couple missing translations this way (plus some obsolete ones) and updated the translation files accordingly.

idarlund commented 7 years ago

i have now updated no.json with the changes @elrido found and some more improvements on the norwegian language. PR: https://github.com/PrivateBin/PrivateBin/pull/212 did i get it all, or is there more that needs translation?

Ahuahuachi commented 7 years ago

Sorry for being late to the discussion. I just updated es.json PR: #248 Let me know if I missed any translation string.

Peneheals commented 5 years ago

Since I managed to translate PrivateBin to Hungarian (on the 31st of May, 2018), I see some modifications and new strings. Is it okay for you @rugk if I just write those translated strings in this thread? Or shall I open a new issue and a merge request with the new and corrected translations?

I also see some ellipsis' weren't translated correctly by me (or I missed them, dunno). I mean for example in the"Loading…": "Folyamatban...", there is an ellipsis after "Loading" and there are three separate dots after the Hungarian translation.

I see the below strings are new and missing at the moment so every translator should take care of them!

    "Could not get paste data: %s":
        "Could not get paste data: %s",
    "QR code": "QR code",
    "I love you too, bot…": "I love you too, bot…",
    "This website is using an insecure HTTP connection! Please use it only for testing.":
        "This website is using an insecure HTTP connection! Please use it only for testing.",
    "For more information <a href=\"%s\">see this FAQ entry</a>.":
        "For more information <a href=\"%s\">see this FAQ entry</a>.",
    "Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>.":
        "Your browser may require an HTTPS connection to support the WebCrypto API. Try <a href=\"%s\">switching to HTTPS</a>."
r4sas commented 5 years ago

Is it okay for you @rugk if I just write those translated strings in this thread? Or shall I open a new issue and a merge request with the new and corrected translations?

Better just create PR with changes ;)

there is an ellipsis after "Loading" and there are three separate dots after the Hungarian translation.

Yeah, replace dots with one unicode symbol from original string.

elrido commented 4 years ago

We did forget to add the new messages regarding the send-to-email feature that got introduced last year. Luckily a French translator spotted these and helped us out. German also got taken care. These messages are new: https://github.com/PrivateBin/PrivateBin/blob/1d8b0d61898724335f3da3a895e2a8dff9e28a17/i18n/bg.json#L172-L187

For context on how these are getting displayed, you can try creating or opening a paste on the demo site (or any site that is on 1.3.1 or 1.3.2) and then click the new "Email" button to get the dialog. The final messages are generated into a email draft in your installed email application.

elrido commented 3 years ago

FYI: We now have a web application integrated for translations. One of it's features is that it can notify you about new strings. It's over on https://crowdin.com/project/privatebin if you'd like to give it a try.

idarlund commented 3 years ago

Where's the "%d seconds (2nd plural)" used on https://privatebin.net/ ? Need context to translate it

rugk commented 3 years ago

Without having re-checked it in detail again: It's for translating the time remaining e.g. until the paste expires. Just like all the other time units (minutes, hours etc.) listed there.

BTW: FYI you can also ask for information on Crowdin now.

idarlund commented 3 years ago

Yeah, the seconds/minutes part is not hard. It's the plural part that I need context for to translate.

EDIT: Maybe someone has a screen-shot of a site that this (or similar) sentence is visible?

idarlund commented 3 years ago

When looking at the english one: https://github.com/PrivateBin/PrivateBin/blob/master/i18n/en.json#L31 I see that there's several "purals"; "1st plural", "2nd plural", and so on.. When doing a test post on https://privatebin.net/ I'm getting ie. the text "This document will expire in 4 seconds." There's no mention about what's in the parentheses; "(1st plural)". Is the "(1st plural)" part actually showed to the the users at any point, or is it just an informative text within the translation file? If the later; In Norwegian we only have one plural for all of these; seconds = sekunder, minutes = minutter, etc. There's not an other word for 2nd and 3rd plural.

elrido commented 3 years ago

The way crowdin works, I had to add a "source" file with all the possible list elements. Slovenian already uses 3 plural cases, so I had to add that many. We may have to add even more if newly added languages need it.

Most languages don't need more then one plural case. In those you can just leave anything beyond the first plural untranslated or empty. These additional strings will now be present in the translation files, but ignored in our software, as per the formula in: https://github.com/PrivateBin/PrivateBin/blob/f0fa288c75fcf69786c61f22bccd362a399c98f8/js/privatebin.js#L767-L796

So for Norwegian, please ignore anything beyond the 1st plural (so only singular and the one plural) and don't include the note in brackets in the translation - I added them purely to make it clear why the multiple plurals exist Note to self: Need to probably update this in the translation wiki page.

idarlund commented 3 years ago

Should be 100% now :smile:

Ahuahuachi commented 3 years ago

Spanish 100% now too. Shouldn't this issue be closed now and add to the documentation the instruction to join the project in Crowdin for any future contributor?

elrido commented 3 years ago

I did update the wiki page accordingly https://github.com/PrivateBin/PrivateBin/wiki/Translation

Peneheals commented 3 years ago

@elrido Awesome! It would be advised to link this Wiki page on Crowdin too (maybe on project overview page and on top of every language's translation page if possible). I'm about to finish the missing Hungarian translations today.

And another suggestion: You write in the Wiki: "You can use the webinterface provided at Crowdin."

I think this is not crystal clear. Shall I need to do anything else after my string translations on Crowdin, or is it an automated process to have the new strings merged into the project? Shall I write an e-mail to you or somehow notify the project owners or not? So two more short sentences about the whole Crowdin translation process would be awesome too.

Peneheals commented 3 years ago

Oh, and you should also clarify a bit more the 2nd and 3rd plurals in the Wiki. I think your above comment is more than enough: https://github.com/PrivateBin/PrivateBin/issues/201#issuecomment-703553742