acat icon indicating copy to clipboard operation
acat copied to clipboard

Contribution help

Open felixg3 opened this issue 2 years ago • 1 comments

I am opening this issue on behalf of my wife Varsha Iyer who is an undergraduate student in Linguistics at the Heinrich Heine University in Düsseldorf, Germany. She recently took an interest in ACAT while researching topics for my bachelor's thesis. She is in conversation with her professor, Dr. Laura Kallmeyer, about writing her thesis about extending ACAT to German. To her knowledge, this has not been done so far.

She would love to find out more about this process and would be very grateful to you for answering her questions.

  • Simple Resx is no longer available – all Dropbox links in the Blogspot for Simple Resx are broken. What do you recommend as an alternative?
  • How much/what kind of programming knowledge is prerequisite to work on a language pack for ACAT?
  • The guide on GitHub instructs to "[u]se a resource editor to translate strings." Are the strings to be translated predefined?
  • What types of source materials do you recommend for creating the word prediction database?
  • Would it be possible to gain some insight into the word prediction database and how it works?
  • How long does it take for the ACAT Language pack to be created once you receive the .RESX file and the link to the source material?
  • Would it be possible to receive assistance with setting up a build environment, given my limited experience with Windows (occupational hazard of a Linux user)?
  • I look forward to your response and wish you good health.

felixg3 avatar Feb 12 '22 22:02 felixg3

Hi @felixg3. I have a limited understanding of ACAT but feel that I can help with these questions.

Simple Resx is no longer available – all Dropbox links in the Blogspot for Simple Resx are broken. What do you recommend as an alternative?

The .resx files are just text files and so can be viewed and edited with any text editor such as nano or vim in Linux and notepad++ or atom in windows.

How much/what kind of programming knowledge is prerequisite to work on a language pack for ACAT?

It depends how much you want to do. As I understand it there are two main parts to the language packs: translating the user interface (UI) and creating the predictive dictionary. These parts aren't really programming. Then there is integrating the pack into ACAT which would require use of Visual Studio to edit ACAT and then git to make a pull request (PR) to submit the changes.

The guide on GitHub instructs to "[u]se a resource editor to translate strings." Are the strings to be translated predefined?

ACATResources.en.resx is the file with all the English phrases. You can compare it to the others such as the French translation ACATResources.fr.resx.

What types of source materials do you recommend for creating the word prediction database?

As stated in the wiki, user generated text (such as emails) is best to predict what the user may want to write in the future. If such materials aren't available, books that have a similar writing pattern and subject matter to what the user would want to write about could be used. As a proof of concept, just a few simple common key phrases would be all that is needed.

Would it be possible to gain some insight into the word prediction database and how it works?

The word prediction is all handled by Presage. It is certainly possible to view the database and see how it changes depending on the source material used to generate it. Presage is open source so it is also possible to analyse and modify its code.

How long does it take for the ACAT Language pack to be created once you receive the .RESX file and the link to the source material?

This is slightly ambiguous. If you're asking how long would it take to compile the resulting ACATPack-German.exe file it will take as long as the computer used would take. I have never compiled ACAT but I would assume no longer than half an hour. If you're asking how long would it take to be able to use the German UI it could be done instantly by simply replacing one of the other languages. If the question is how long would it take for a pull request to be accepted an official build released then it'll take as long as it takes.

Would it be possible to receive assistance with setting up a build environment, given my limited experience with Windows (occupational hazard of a Linux user)?

I don't want to commit to anything but I could possibly help if absolutely necessary. I haven't set up a development environment in quite some time.

I looked at some issues to help me answer these questions and noticed some other users mentioned creating a German translation. I don't know how far they got.

In any case, good luck with both of your studies.

zelmon64 avatar Feb 18 '22 15:02 zelmon64