Exemplo n.º 1
0
        public void Translate_ShouldReturnTranslationOrNull(string word, string answer)
        {
            Translator.Translator dictionary = new Translator.Translator("../../../../Translator/dictionary.txt");
            string result = dictionary.Translate(word);

            //Assert
            Assert.AreEqual((answer), result);
        }
        public void SetTextOnScreen(string text)
        {
            subtitleTrigger = SettingsController.GetSubtitleTrigger();
            if ((int)subtitleTrigger == 2)
            {
                if (isFace)
                {
                    if (foreignLang.ToString() != nativeLang.ToString() && translate == 0) //translate -> 0 = ON ,  translate -> 1 = OFF
                    {
                        translator = new Translator.Translator();

                        Action <Translator.Translator.Result> action = (Translator.Translator.Result result) =>
                        {
                            this.text.text = result.translatedText;
                        };
                        StartCoroutine(translator.translate(text, nativeLang, action));
                    }
                    else
                    {
                        this.text.text = text;
                    }
                }
                else
                {
                    this.text.text = "";
                }
            }
            else
            {
                if (foreignLang.ToString() != nativeLang.ToString() && translate == 0) //translate -> 0 = ON ,  translate -> 1 = OFF
                {
                    translator = new Translator.Translator();

                    Action <Translator.Translator.Result> action = (Translator.Translator.Result result) =>
                    {
                        this.text.text = result.translatedText;
                        if ((int)SettingsController.GetSubtitleTrigger() == 0) //Always on
                        {
                            AndroidSpeechRecognizer.StartListening();
                        }
                    };
                    StartCoroutine(translator.translate(text, nativeLang, action));
                }
                else
                {
                    this.text.text = text;
                    if ((int)SettingsController.GetSubtitleTrigger() == 0) //Always on
                    {
                        AndroidSpeechRecognizer.StartListening();
                    }
                }
            }
        }
        /// <summary>
        /// Converts the deck from JAH to TAH format
        /// </summary>
        /// <param name="oldDeck">Card deck in JAH format</param>
        /// <returns>Translated card deck in TAH format</returns>
        public static async Task <Models.CardDeck> ConvertDeckToTAHFormat(Models.API.CardDeck oldDeck)
        {
            Console.Write("Enter API key for Yandex translation service: ", ConsoleColor.Cyan);
            string apiKey = Console.ReadLine();

            Translator.Translator translator = new Translator.Translator(apiKey);

            Console.WriteLine("List of avaiable languages: ", ConsoleColor.Cyan);
            translator.DisplayAvaiableLanguages();

            Console.Write("Enter language code: ", ConsoleColor.Cyan);
            string language = Console.ReadLine();

            Models.CardDeck newDeck = new CardDeck();

            Console.Write("Enter deck name: ");
            newDeck.DeckName = Console.ReadLine();

            int totalTicks = oldDeck.BlackCards.Length;
            var options    = new ProgressBarOptions
            {
                ProgressCharacter   = '#',
                ProgressBarOnBottom = true
            };

            using (var pbar = new ProgressBar(totalTicks, "Converting black cards", options))
            {
                foreach (var card in oldDeck.BlackCards)
                {
                    Models.BlackCard newCard = new Models.BlackCard(card.Text, card.Pick);
                    newCard.TranslatedText = await translator.GetTranslation(newCard.OriginalText, language);

                    newDeck.AddCardToList(newCard);
                    pbar.Tick();
                }
            }
            totalTicks = oldDeck.WhiteCards.Length;
            using (var pbar = new ProgressBar(totalTicks, "Converting white cards", options))
            {
                foreach (var card in oldDeck.WhiteCards)
                {
                    Models.WhiteCard newCard = new Models.WhiteCard(card);
                    newCard.TranslatedText = await translator.GetTranslation(newCard.OriginalText, language);

                    newDeck.AddCardToList(newCard);
                    pbar.Tick();
                }
            }
            Console.WriteLine("Translation finished succesfully!", ConsoleColor.Green);

            return(newDeck);
        }
Exemplo n.º 4
0
        private void TranslateAndCreatePyFiles(TranslationInfo translationInfo, string outDir)
        {
            if (_verboseToConsole)
            {
                Console.WriteLine("Translate C# -> Py");
            }

            translationInfo.CurrentAssembly = CompiledAssembly;
            var assemblyTi = translationInfo.GetOrMakeTranslationInfo(CompiledAssembly);
            var ecBaseDir  = Path.Combine(outDir, assemblyTi.RootPath.Replace("/", "\\"));

            Console.WriteLine("Output root {0}", ecBaseDir);

            if (!string.IsNullOrEmpty(assemblyTi.PyPackageSourceUri))
            {
                DownloadAndUnzip(assemblyTi.PyPackageSourceUri, ecBaseDir, assemblyTi.PyPackagePathStrip);
                return; //??? czy return?
            }

            var translationState = new TranslationState(translationInfo);
            var translator       = new Translator.Translator(translationState);

            translator.Translate(Sandbox);

            var libName = assemblyTi.LibraryName;

            if (_verboseToConsole)
            {
                Console.WriteLine("Create Py output files");
            }
            {
                // Tworzenie plików Py
                var emitStyle = new PyEmitStyle();

                translationInfo.CurrentAssembly = CompiledAssembly; // dla pewności
                foreach (var module in translator.Modules /*.Where(i => i.Name.Library == libName && !i.IsEmpty) */)
                {
                    var fileName = module.ModuleName.MakeEmitPath(ecBaseDir, 1);
                    foreach (var modProcessor in translationInfo.ModuleProcessors)
                    {
                        modProcessor.BeforeEmit(module, translationInfo);
                    }
                    var emiter = new PySourceCodeEmiter();
                    module.Emit(emiter, emitStyle, fileName);
                }
            }
        }
Exemplo n.º 5
0
        public void TestMethod1()
        {
            string fromLanguage = "en";
            string toLanguage   = "es";

            string ToTranslate = "A paraplegic Marine dispatched to the moon Pandora on a unique mission becomes torn between following his orders and protecting the world";
            string expected    = "Parapléjico Marina enviado a la luna Pandora en una única misión llega a ser dividido entre siguiendo sus órdenes y protegiendo el mundo";

            Translator.Translator translator = new Translator.Translator();

            translator.fromLanguage = fromLanguage;
            translator.toLanguage   = toLanguage;
            translator.sourceText   = ToTranslate;
            string actual = translator.Translate();

            Assert.AreEqual(expected.ToUpper(), actual.ToUpper(), string.Format("envia:{0} recibe:{1}", ToTranslate, actual));
        }
Exemplo n.º 6
0
        public MainGUI()
        {
            InitializeComponent();

            // Setup the translator settings
            settings                 = new Translator.Settings.TranslatorSettings();
            settings.SyntaxType      = ESyntaxType.Python_Tabs;
            settings.TranslationType = ETranslationType.toPySynCS;

            // Setup the translator
            trans = new EvenMessierTranslator(settings);

            // Setup the logger
            logger = new Translator.Logger.Logger();
            logger.Debug.evtClear     += Logger_evtClear;
            logger.Debug.evtWrite     += Logger_evtWrite;
            logger.Debug.evtWriteLine += Logger_evtWriteLine;
        }
Exemplo n.º 7
0
        public void TestMethod1()
        {
            
           string fromLanguage = "en";
            string toLanguage = "es";

            string ToTranslate = "A paraplegic Marine dispatched to the moon Pandora on a unique mission becomes torn between following his orders and protecting the world";
            string expected = "Parapléjico Marina enviado a la luna Pandora en una única misión llega a ser dividido entre siguiendo sus órdenes y protegiendo el mundo";
            Translator.Translator translator = new Translator.Translator();
            
            translator.fromLanguage=fromLanguage;
            translator.toLanguage=toLanguage;
            translator.sourceText=ToTranslate;
            string actual=translator.Translate();
            
            Assert.AreEqual(expected.ToUpper(),actual.ToUpper(),string.Format("envia:{0} recibe:{1}",ToTranslate,actual));

        }
Exemplo n.º 8
0
 private void Logger_evtClear(Translator.Logger.BaseLogger log, Translator.Translator t, Cache cache)
 {
     richTextBox3.Clear();
 }
Exemplo n.º 9
0
 private void Logger_evtWrite(Translator.Logger.BaseLogger log, Translator.Translator t, Cache cache, string str)
 {
     richTextBox3.AppendText(str);
 }
Exemplo n.º 10
0
 private void Logger_evtWriteLine(Translator.Logger.BaseLogger log, Translator.Translator t, Cache cache, string str)
 {
     richTextBox3.AppendText($"[{log.Name} - {cache.CurrentLine}]: {str}\n");
 }