Re: Re: Using Windows Language Portal for IDE string translation
scott-y6qSm6YX8/[email protected]
| Newsgroups | gmane.comp.audio.supercollider.devel |
|---|---|
| Message-ID | <CANmfHJ-WOuETv_8jk0h6XiVZ+q2kE7mcCTzeA7JytMge=JyMCw@mail.gmail.com> |
And, actually, not to sound negative: I think addition support for localized documentation WOULDN'T be super hard - even the most minimal support would be enough to allow people to start submitting translations, which I imagine would be very very valuable. That's work that those of us who can't contribute translations could still help out with. - S On Mon, Apr 2, 2018 at 12:19 PM Scott Carver <scott-y6qSm6YX8/[email protected]> wrote: > I might be useful to have some of SC's spanish language users build a > rough prioritized list of improvements to SC's localization. Translating > the IDE UI seems straightforwardly useful - but spanish language > documentation is a *very* large and open-ended task. Breaking this into > smaller tasks would make it much easier for people to contribute, and make > sure their contributions are hitting the most important things first. For > example, is it better to spend time translating guides, or documentation of > important core classes? Is it important to translate all the help > navigation terminology to spanish (e.g. "Search", "Browse", "Classes"), or > better to simply spend that time on class docs themselves? Would it be > helpful to integrate google translate to the docs somehow, to improve > usability of untranslated things - or would the translations simply be too > bad? We currently have no way of providing localized versions of > documentation - that's a big-ish engineering task in itself... without > that, there's really no use in translating documentation in the first place. > > And, fwiw, I believe the microsoft translation database Brian mentioned > are actual human-generated translations of common terminology like "File" > or whatever. > > - S > > > > On Mon, Apr 2, 2018 at 12:10 AM <[email protected]> wrote: > >> And, forgive me for this comment, a down side of this is that all the >> documentation is in English. There are/were translations of the >> documentations to Spanish but never was a project to >> sistematically/colaborativelly internationalize the docs or a documentation >> team in general, documentations could be improved and it would have to be >> in sync. >> >> Best >> Lucas >> >> >> 2018-04-02 3:57 GMT-03:00 Lucas Samaruga <[email protected]>: >> >>> I don't know about that technology but automatic translations to Spanish >>> was always very bad... I can offer my personal neural networks for Spanish >>> translation just in case. Apart, and I'm not against your idea, maybe doing >>> a call in the users list or github can make people willing to >>> participate aware of this. >>> >>> Best >>> Lucas >>> >>> >>> 2018-03-31 17:27 GMT-03:00 <[email protected]>: >>> >>>> Almost forgot to mention: >>>> >>>> Another nice thing about MS's database is that many of the translations >>>> also include accelerator keys <http://doc.qt.io/qt-5/accelerators.html>, >>>> so, for example, "&Open..." becomes "打开(&O)...". >>>> >>>> Also, looking over what was missed by the automated pass, a good >>>> portion of the remaining strings could be translated using the database as >>>> a reference. Some long phrases like "auto insert matching parenthesis" are >>>> of course a little more difficult. >>>> >>>> -Brian >>>> >>>> On Sat, Mar 31, 2018 at 4:09 PM, brian heim <[email protected]> >>>> wrote: >>>> >>>>> Hey all, >>>>> >>>>> I was looking into ways that we might possibly start to get some basic >>>>> internationalization (i18n) in the IDE with translation files. Right now >>>>> the way it works (in case you're not familiar) is that strings in the C++ >>>>> source that ought to appear in translation are wrapped in a special `tr` >>>>> macro (for example: `tr("File not found")`). At runtime Qt selects from one >>>>> of several translation files depending on the user's local, and uses that >>>>> to swap out translated strings. >>>>> >>>>> We have a ton of strings that are already wrapped in `tr`, but so far >>>>> exactly 0 translations have been entered. Given that we have an >>>>> international audience I think it might be nice to work toward improving >>>>> that! >>>>> >>>>> --- >>>>> >>>>> Right now we have a small guide I wrote that shows how to add >>>>> translations manually with Qt Linguist: >>>>> https://github.com/supercollider/supercollider/wiki/%5BWIP%5D-Developer-info-%28DEVELOPING.md%29#adding-ide-translations >>>>> >>>>> However, it seemed to me that many pieces of the project could be >>>>> easily translated without human volunteer time. A quick search turned up >>>>> the Microsoft Language Portal ( >>>>> https://www.microsoft.com/en-us/language), which lets you download >>>>> huge archives (>1GB) of UI translations MS uses. I wrote a quick script >>>>> that converts these CSV files into a format call QPH (Qt Phrase book) that >>>>> Qt Linguist can use to perform automated translation. I tested it out on >>>>> the Chinese translations from MS and got a pretty nice success rate - of >>>>> the ~500 strings available for translation, this database took care of 220! >>>>> A random sample with Google Translate indicates that the translations are >>>>> accurate. Perhaps someone that is actually fluent in a non-English language >>>>> can try it and provide better feedback. >>>>> >>>>> This is the license on the glossary. I'm not sure if I'm reading it >>>>> correctly, but it sounds like we can use this free of charge as long as we >>>>> include the notice: >>>>> >>>>> --- >>>>> >>>>> PERMISSION NOTICE >>>>> >>>>> The Microsoft “Terms of Use” (available at the www.microsoft.com >>>>> website) govern all glossary terms in this document (“Glossary Terms”). >>>>> The following supplemental terms and conditions also apply. If there is >>>>> any conflict between the Terms of Use and the following terms and >>>>> conditions, the following terms and conditions will take >>>>> Precedence over the Terms of Use. >>>>> >>>>> 1. No part of the Glossary Terms may be reproduced, adapted, >>>>> distributed, or transmitted in any form or by any means, electronic, >>>>> mechanical, or otherwise, including photocopying and entry into an >>>>> information storage and/or retrieval system, for any purpose without the >>>>> prior express consent of Microsoft Corporation. >>>>> >>>>> 2. You may use the Glossary Terms in the development of any >>>>> application software and you may also use the Glossary Terms for personal >>>>> or non-commercial purposes only without the prior written consent of >>>>> Microsoft Corporation, and only if all copies contain this Permission >>>>> Notice and the Microsoft copyright notice in the Terms of Use. >>>>> >>>>> 3. You are not permitted to make any modifications, deletions or >>>>> additions to the Glossary Terms. >>>>> >>>>> 4. Except as expressly set forth above, Microsoft’s publication of the >>>>> Glossary Terms does not grant any rights to use, distribute, or implement >>>>> any technology or intellectual property rights. All rights not expressly >>>>> granted herein are expressly reserved by Microsoft. >>>>> >>>>> --- >>>>> >>>>> I was thinking also of ways we might be able to do this within sclang >>>>> (scsynth?), without having Qt as a dependency. An initial thought was: >>>>> >>>>> 1. We could write our own `sc_tr` macro akin to Qt's macro, and use it >>>>> similarly. >>>>> 2. Write a script to scan source files for this macro and use it to >>>>> construct a `ts` file in exactly the same format Qt uses. Then we can >>>>> leverage Qt Linguist to provide translations! >>>>> 3. Write a simple module that does the same things Qt is doing to >>>>> switch out translation strings at runtime. >>>>> >>>>> This might also be a good place to hook in a "machine-readable" locale! >>>>> >>>>> Sorry for the length of this email, a lot to talk about here. :) >>>>> >>>>> -Brian >>>>> >>>> >>>> >>> >>