Forum › Forums › antiX-development › Translations › A new resource present at transifex: »antiX .desktop files«
- This topic has 23 replies, 3 voices, and was last updated Apr 7-2:00 pm by Wallon.
-
AuthorPosts
-
December 8, 2021 at 11:53 pm #72584Member
Robin
::I think Transifex does not replace one translation with another when I use the “Upload file” function in Transifex. Transifex only completes empty strings.
I’m sorry I have to contradict, Wallon. Exactly this is what happens when using this uploading function at Transifex. Let me sketch an example: You download in the morning a file for offline editing. During the day you edit and fill in translations in this file by and by in spare moments, and in the evening you upload your edited file again back to Transifex. Accidentally the same day somebody else has edited strings at transifex online, let’s suppose at high noon already. When uploading your file in the evening, you’ll revert and overwrite all his edits unnoticed, since your entries represent still the state of translation on transifex form the morning when you have downloaded your file originally. There is no way to prevent the fresh edits to get overwritten by your file upload. Exactly this is the problem I referred to when saying: there is a slight chance the automatic translations may conflict with edits somebody else has made in the very period of all the times between I was downloading and reuploading the translations file. There is no difference whether you do this manually or my script does it. But: my script always creates a local backup copy before starting with the translation. So in case we face actually an accident like this he can message me and I will be able to reupload the backup file immediately, given there are more than one or two strings affected. If only few strings are affected the most easy way of handling is he recollects the strings he has edited, and from the lower right corner of transifex editor he chooses “history” tab. There will show up his overwritten edits, ready to get restored per single mouse click. But only he will know, which edits he has done and what to look for. From a certain amount of edits he did in the same time, It might be easier to push my backup to to transifex and let the script run again on this language for the rest of missing entries.
Besides this pitfall the script I run on the resources doesn’t touch any string which is filled in with a translation already. This is guaranteed for .pot/.po/.mo type (gettext) translation. But there is an exception from the default behaviour of transifex we are used to from all these po files, when it comes to the new strings file type for desktop entries: When downloading a file from transifex in a specific language all the entries with no translation should be empty, but this is not true for the new file type, the untranslated ones are all filled in with the original (mostly) English expression instead. So the script has to assume for all strings found in the resource being identically to the respective untranslated source string they still need to get translated. And this means, these entries might get translated automatically even if they actually were meant to stay in original language. By now no way found to prevent this, but in future there might show up a way to distinguish correctly.
Safe from this problem are languages which are 100% translated already, since the script checks the translation status before it starts working on a file. A language reported by transifex with a status of 100% translated already will get skipped completely instead of processing it string by string, so only in this case the “original-strings-present-in-file-if-no-translation-exists-bug” doesn’t have any impact. The people creating this structure obviously haven’t expected some entries could be meant to stay untranslated on purpose and hence these should be distinguishable from the ones still to be translated.
When I export “antiX desktop file”, I have only the french translation. … How do I get the English original and the translation in one file?
Unfortunately there is no way to have it that way. The apple string files don’t provide the original strings in the same file as the translations (only as long they are untranslated you can see the original). It’s different from our .po files we are used to from linux, which are more comfortable by far under this aspect.
But each string in these files has a unique key, and you’ll have to look up this key in the “en@pirate” version of this file to get the original untranslated string.
Taken from your example:"feh|Desktop Entry|GenericName" = "Affichage et manipulation d'images";The string key is
feh|Desktop Entry|GenericNameand using this key you’ll have to look up this very string in the en@pirate string file:
"feh|Desktop Entry|GenericName" = "Image viewer";Proabably I can write a little script showing the untranslated and translated strings side by side, reading them from the two files you’ve downloaded, to make this task a bit easier when working offline, but don’t expect to see this soon…
Robin must have done some exhausting work to build this translation resource.
Fortunately this is something I don’t have to stem manually, the translation script set performs this task automatically and completely unattended on its own. The complete extraction of strings from the .desktop files and building the master translation file .string-type which is uploaded as a resource to transifex is done by this script set. Also the distribution of the strings to the .desktop files afterwards by parsing all the resulting separate .string-type language files one by one and analysing the respecting .desktop file to find the position within where it should be written is done the same way. I can sit happily with a cup of tee, reading a good book, and looking from time to time seeing the poor PC groaning and moaning under his workload 😉 Joke aside, it’s a job of approximately half an hour on a 32 bit single core CPU (time taken from a test run), depending on the number of entries and the number of different .desktop files present for processing. Will see how long it takes to process all entries from transifex when running this merging once all translations are filled in, maybe it’ll run on it overnight. Luckily it is designed to run unattended… The efficiency of the script probably could be improved, but I believe it isn’t worth the effort as long we don’t have to process myriads of entries and files.
Windows is like a submarine. Open a window and serious problems will start.
December 11, 2021 at 6:58 am #72733MemberRobin
::Update: Tried to teach my translation script good manners. Partly successful.
By letting it download the recent state of translation from transifex a second time immediately before uploading the translation result of the recently processed language (which may have taken some hours) the risk of overwriting something is minimised to the utmost extent now. The completed translation file will not get uploaded if strings have been modified meanwhile online, creating an error report instead and saving both versions locally, so I can manually check them for the differences later. Only if somebody would accidentally have translated something online at transifex the very second the script needs for a checksum comparison of the fresh download to the original which it was working on, one or another entry might get still overwritten. This can’t get helped, but I believe we can live with it.By now no way found to distinguish strings reading identically to the string in source language on purpose from those still in need of translation. There exists a “mode” argument which can be set to “only translated” while downloading, but it doesn’t show up with reliable results. When using this argument for downloading from transifex, some strings are left out, some others are left simply empty, but obviously still considered as “translated”. No Idea what they do actually consider as “translated” or whether there is a reasonable structure behind this (at least to me it looks like there is none). So we will still see English expressions getting translated in all non-100%-languages for entries which were “translated” already, but using the original expression as a “translation”. In many of these cases the machine translator will also send back the English string again, so everything is fine. But in some rare cases this produces bloomers. “Claws Mail” e.g. was translated to German as “Klauenpost”, and “Mutt” was translated to “Köter”… Even if the translation is absolutely correctly, I’m not sure we actually want to have these entries translated at all. At best “Klauenpost” is worth to think about, it reminds me of “Eulenpost”, so it might be fine to translate it actually. All in all, for these cases (as for many others) the machine translations are to be improved manually. (Yes, I let run the script on German language also, on purpose, just to learn what these machine translations will look like in a language I really do understand.)
@Wallon: I’ve observed, Script didn’t touch your French and Belgian (fr and fr_BE) translations, as foreseen these were skipped automatically, since 100% translated already. So no need of double checking them now.
Windows is like a submarine. Open a window and serious problems will start.
December 11, 2021 at 5:44 pm #72756Member
marcelocripe
::Fortunately this is something I don’t have to stem manually, the translation script set performs this task automatically and completely unattended on its own.
The work I referred to was about you developing this great program that can do a lot of things automatically and still lets you see the computer “groaning” as it processes everything.
Wallon, I’m using the same idea you suggested, but with a slightly different concept, everything that is “internet browser” will receive the text in quotation marks in front of the name (since it’s the order we use in the sentence in Brazilian Portuguese ), making all internet browsers close together due to the beneficial alphabetical organization of the menus. The ones related to “Persistence” will receive this word which is in quotation marks in front to place them together in the menu. The same I will do with the “Sharing Connection” which will now be the next three options.
I have a question about entry 133 and 134. I couldn’t find what “cpp” is and what it means. If anyone can help me it will be of great help to me.
Robin, some texts need to be corrected, texts that mention SpaceFM, for example, entry 122. I think it’s even better to duplicate the entries to have the texts for both SpaceFM and so correct and improve antiX 19.4 and zzzFM texts and so fix and improve antiX 21.
My greetings.
– – – – –
O trabalho no qual eu havia me referido era sobre você desenvolver este excelente programa que consegue fazer várias atividades automaticamente e ainda permite você visualizar o computador “gemendo” enquanto processa tudo.
Wallon, eu estou utilizando a mesma ideia que você sugeriu, mas com um conceito um pouco diferente, tudo que for “navegador de internet” receberá o texto entre aspas na frente do nome (pois é a ordem que utilizamos na frase em Português do Brasil), fazendo com que todos os navegadores de internet fiquem próximos devido a benéfica organização alfabética dos menus. O que for relacionado a “Persistência” receberá esta palavra que está entre aspas na frente para posicioná-los juntos no menu. O mesmo eu farei com a “Conexão de Compartilhamento” que agora passará a ficar as três opções próximas.
Eu possuo uma dúvida sobre a entrada 133 e 134. Eu não consegui encontrar o que é e o que significa “cpp”. Se alguém puder me ajudar será de grande ajuda para mim.
Robin, alguns textos precisam ser corrigidos, os textos que mencionam SpaceFM, por exemplo, a entrada 122. Eu acho melhor ainda, duplicar as entradas para termos os textos tanto para o SpaceFM e assim corrigir e ainda melhorar o antiX 19.4 e os textos zzzFM e assim corrigir e ainda melhorar o antiX 21.
Meus cumprimentos.
December 12, 2021 at 12:53 am #72781MemberRobin
::I have a question about entry 133 and 134. I couldn’t find what “cpp” is and what it means. If anyone can help me it will be of great help to me.
This is probably C++ , a programming language.
texts that mention SpaceFM, for example, entry 122. I think it’s even better to duplicate the entries to have the texts for both SpaceFM
I don’t see a way to duplicate entries. They depend only on what was found within desktop files present on antiX. I can’t add manually and liberatly some entries in these files, they wouldn’t find a place where to put the additional lines while merging all the translations back into the desktop files afterwards. The antiX 21 files will have precedence over antiX 19 in any case. Otherwise we’d need to split it up between antiX 19 and antiX 21 completely, meaning we’d have two separate translation resources and we would have to redo the translation for all the identical entries of both versions, which can’t be desirable. So I believe we better use “zzzFM”, (or e.g. “zzzFM/spaceFM”).
@marcelocripe : Script has just finished pt_BR automatic entry fill in, as you’ve asked for. It is on transifex already, but I’ll additionally send you per email the processed file, along with the backup of the state before, so you can compare which of the entries you meant to stay untranslated in pt_BR on purpose have changed. You may use “diff” command on console for this.
Windows is like a submarine. Open a window and serious problems will start.
December 12, 2021 at 2:44 am #72783Member
marcelocripe
::Robin, so just thinking about correcting and improving antiX 21, would it be possible for you to correct the texts where they refer to “zzzFM” or “zzz” and it says “SpaceFM” or “Space”?
I can correct it in the translation, where it says “Space” but it should be “zzz”. I don’t know if this action is the right one to do.
– – – – –
Robin, então pensando apenas em corrigir e ainda melhorar o antiX 21, seria possível você corrigir os textos onde se referem ao “zzzFM” ou “zzz” e está escrito “SpaceFM” ou “Space”?
Eu posso corrigir na tradução, onde está escrito “Space” mas deveria ser “zzz”. Eu não sei se esta ação é a mais correta a ser feita.
December 23, 2021 at 8:30 pm #73517Member
marcelocripe
::Hello dears.
First of all I would like to inform you that there are both SpaceFM and zzFM texts in antix-desktop-files.
I compared the entries that exist in the antix-desktop-files (contribs) file with the entries that exist only in the antix-all-desktop-entries (antix-development):
Input 61
Name=Update MenuInput 69
Name=Group ManagementInput 70
Comment=Manage group propertiesInput 87
Name=SSH-ConduitInput 88
Comment=Use remote resources via an ssh encypted connectionInput 90
Name=Personal Menu Help VideoInput 102
Name=Broadcom ManagerInput 103
Comment=Network configuration and troubleshooting– – – – –
Olá caros.
Primeiramente eu gostaria de informar que estão ambos os textos do SpaceFM e do zzFM no antix-desktop-files.
Eu comparei as entradas que existem no arquivo antix-desktop-files (contribs) com as entradas que existem apenas no antix-all-desktop-entries (antix-development):
(As entradas estão no texto em idioma Inglês)
February 5, 2022 at 4:08 pm #76860MemberRobin
::First run of translation completed.
All the .strings files in the 100 languages have been harvested from transifex, and all the strings contained therein have been distributed by the script to the respective .desktop files where they originate from. It had to work more than 3 days non-stop on this redistribution, fortunately unattended. Maybe my script could need a bit of tuning its engine, but I’m not a real programmer, so it works slowly only and I’m happy it attains the goal in the end at least.The translated desktop files ready for use are available for download at antiX-contribs on gitlab, along with all the .strings files containing the strings separated by language (see .strings subfolder in the parent directory). They are a bit bigger of size than the original files due to all the new language strings they contain.
The machine translations are meant to be reviewed by people speaking the respective languages, and understood as a first approach to have the antiX desktop truly multilingual completely.
Note: Even when the sort order of entries within the updated .desktop files is a bit odd now, this shouldn’t prevent them from working correctly. Maybe we’ll find a way to sort them again, but this is cosmetic only.
Additional hint @PPC : This file set doesn’t contain the FT10 .desktop files still, these will be included in the next run/update.
Windows is like a submarine. Open a window and serious problems will start.
February 6, 2022 at 1:22 am #76895Member
marcelocripe
::but I’m not a real programmer
Why it will be that I can’t believe it?
All the .strings files in the 100 languages have been harvested from transifex, and all the strings contained therein have been distributed by the script to the respective .desktop files where they originate from. It had to work more than 3 days non-stop on this redistribution, fortunately unattended.
Yet another fantastic automation program, I imagine it is similar to your other brilliant program for automatic .pot file translation, .po and .mo file creation, automatic file upload to Transifex. This is not for everyone…, in just three days 100 languages were collected where each text was copied to its respective .desktop file, this is a work of genius!
The machine translations are meant to be reviewed by people speaking the respective languages, and understood as a first approach to having the antiX desktop truly multilingual completely.
Even with automatic translations communication will be possible, one day we will have a volunteer translator of each language willing to review the texts and antiX will be at a level of communication perfection that few GNU/Linux distributions have.
I look forward to receiving in antiX updates all the .desktop files with all the revised texts in pt-BR, I hope they will also be used in the next antiX ISOs.
Thank you very much for all your effort, work and commitment.
– – – – –
but I’m not a real programmer
Por que será que eu não consigo acreditar nisso?
All the .strings files in the 100 languages have been harvested from transifex, and all the strings contained therein have been distributed by the script to the respective .desktop files where they originate from. It had to work more than 3 days non-stop on this redistribution, fortunately unattended.
Mais um programa de automatização fantástico, eu imagino que seja semelhante ao seu outro brilhante programa de tradução automática de arquivo .pot, criação de arquivos .po e .mo, envio do arquivo automático para o Transifex. Isso não é para qualquer um…, em apenas três dias 100 idiomas foram coletados onde cada texto foi copiado para o seu respectivo arquivo .desktop, isso é um trabalho de gênio!
The machine translations are meant to be reviewed by people speaking the respective languages, and understood as a first approach to have the antiX desktop truly multilingual completely.
Mesmo com as traduções automáticas a comunicação será possível, um dia teremos um tradutor voluntário de cada idioma disposto a revisar os textos e o antiX estará em um nível de perfeição da comunicação como poucas distribuições GNU/Linux possui.
Eu estou ansioso em poder receber nas atualizações do antiX todos os arquivos .desktop com todos os textos revisados em pt-BR, eu espero que sejam utilizados também nas próximas ISOs do antiX.
Muito obrigado por todo o seu esforço, trabalho e empenho.
April 7, 2023 at 2:00 pm #104279Member
Wallon
::Dear Robin,
It’s me again…
AntiX-contribs project.
In the Transifex “antiX desktop files” file, the word refresh is missing an “r”.
Cordialement,
WallonAttachments:
-
AuthorPosts
- You must be logged in to reply to this topic.
