From f83f59c05ab2aa0e93ecaaf96f2e0fed74f47adf Mon Sep 17 00:00:00 2001 From: Eveldee Date: Fri, 16 May 2025 11:27:16 +0200 Subject: [PATCH] Add translator to poyo --- PoyoLang.Dictionary.Generation/Program.cs | 12 +- PoyoLang.Test/PoyoLang.Test.csproj | 2 +- PoyoLang.Test/Program.cs | 61 +--- ...PoyoLang.Translator.SourceGenerator.csproj | 29 +- .../PoyoLangTranslatorGenerator.cs | 54 ++- .../Properties/launchSettings.json | 9 + .../PoyoLang.Translator.csproj | 5 +- PoyoLang.Translator/PoyoLangTranslator.cs | 20 +- PoyoLang.Translator/dictionary.json | 322 ------------------ PoyoLang.Translator/dictionary.txt | 320 +++++++++++++++++ 10 files changed, 424 insertions(+), 410 deletions(-) create mode 100644 PoyoLang.Translator.SourceGenerator/Properties/launchSettings.json delete mode 100644 PoyoLang.Translator/dictionary.json create mode 100644 PoyoLang.Translator/dictionary.txt diff --git a/PoyoLang.Dictionary.Generation/Program.cs b/PoyoLang.Dictionary.Generation/Program.cs index d016052..f739cfe 100644 --- a/PoyoLang.Dictionary.Generation/Program.cs +++ b/PoyoLang.Dictionary.Generation/Program.cs @@ -121,4 +121,14 @@ foreach (var letter in Alphabet.BaseAlphabet) await File.WriteAllTextAsync("dictionary.json", JsonSerializer.Serialize(dictionary, jsonOptions)); -Console.WriteLine($"Dictionary written to {Path.Combine(Environment.CurrentDirectory, "dictionary.json")}"); \ No newline at end of file +Console.WriteLine($"Dictionary written to {Path.Combine(Environment.CurrentDirectory, "dictionary.json")}"); + +// Also write in simple custom format for source generator +await using var customOutput = File.CreateText("dictionary.txt"); + +foreach (var pair in dictionary) +{ + await customOutput.WriteLineAsync($"{pair.Key}={pair.Value}"); +} + +Console.WriteLine($"Custom dictionary written to {Path.Combine(Environment.CurrentDirectory, "dictionary.txt")}"); \ No newline at end of file diff --git a/PoyoLang.Test/PoyoLang.Test.csproj b/PoyoLang.Test/PoyoLang.Test.csproj index 491aa7e..f70f504 100644 --- a/PoyoLang.Test/PoyoLang.Test.csproj +++ b/PoyoLang.Test/PoyoLang.Test.csproj @@ -8,7 +8,7 @@ - + diff --git a/PoyoLang.Test/Program.cs b/PoyoLang.Test/Program.cs index e8cd52a..ae0248e 100644 --- a/PoyoLang.Test/Program.cs +++ b/PoyoLang.Test/Program.cs @@ -1,63 +1,14 @@ // See https://aka.ms/new-console-template for more information using System.Text; -using PoyoLang.Dictionary; +using PoyoLang.Translator; -var dictionary = new Dictionary(); +Console.OutputEncoding = Encoding.UTF8; -var text = "Lorem ipsum dolor sit amet"; +var text = "Immutable abstract representation of a span of text. For example, in an error diagnostic that reports a location, it could come from a parsed string, text from a tool editor buffer, etc."; -var output = new StringBuilder(text.Length); -var span = text.AsSpan(); - -NextLetter(ref span, output); - -Console.Write(output.ToString()); - -void NextLetter(ref ReadOnlySpan text, StringBuilder output) -{ - - if (text.Length > 0) - { - var isCaps = char.IsUpper(text[0]); - - switch (text[0]) - { - case 'a' or 'A': - - if (text.Length > 1) - { - switch (text[1]) - { - case 'm': - - text = text[2..]; - - output.Append(isCaps ? "Payo" : "payo"); - - return; - } - } - - text = text[1..]; - - output.Append(isCaps ? "Piyo" : "piyo"); - - return; - - case 'b' or 'B': - - text = text[1..]; - - output.Append(isCaps ? "Pïyo" : "pïyo"); - - return; - } - - text = text[1..]; - - output.Append(text[0]); - } -} +var translator = new PoyoLangTranslator(); +var translated = translator.TranslateToPoyo(text); +Console.WriteLine(translated); \ No newline at end of file diff --git a/PoyoLang.Translator.SourceGenerator/PoyoLang.Translator.SourceGenerator.csproj b/PoyoLang.Translator.SourceGenerator/PoyoLang.Translator.SourceGenerator.csproj index 13920ca..dd4a102 100644 --- a/PoyoLang.Translator.SourceGenerator/PoyoLang.Translator.SourceGenerator.csproj +++ b/PoyoLang.Translator.SourceGenerator/PoyoLang.Translator.SourceGenerator.csproj @@ -4,28 +4,23 @@ netstandard2.0 enable enable - default + latest - false - true true + true + true - - all - runtime; build; native; contentfiles; analyzers; buildtransitive - - - - all - runtime; build; native; contentfiles; analyzers; buildtransitive - - - + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + - - + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + - diff --git a/PoyoLang.Translator.SourceGenerator/PoyoLangTranslatorGenerator.cs b/PoyoLang.Translator.SourceGenerator/PoyoLangTranslatorGenerator.cs index 096774f..3cb76dd 100644 --- a/PoyoLang.Translator.SourceGenerator/PoyoLangTranslatorGenerator.cs +++ b/PoyoLang.Translator.SourceGenerator/PoyoLangTranslatorGenerator.cs @@ -1,6 +1,6 @@ using System.Text; -using System.Text.Json; using Microsoft.CodeAnalysis; +using Microsoft.CodeAnalysis.Text; namespace PoyoLang.Translator.SourceGenerator; @@ -15,12 +15,12 @@ public class PoyoLangTranslatorGenerator : IIncrementalGenerator // There will be only one of those but incremental generators work as pipelines var dictionaries = texts - .Where(static text => text.Path.EndsWith("dictionary.json")) + .Where(static text => text.Path.EndsWith("dictionary.txt")) .Select(static (text, _) => text.GetText()); var parsedDictionaries = dictionaries .Select(static (dictionary, _) => - JsonSerializer.Deserialize>(dictionary!.ToString()) + ReadCustomDictionary(dictionary!) ); var formattedDictionaries = parsedDictionaries @@ -39,6 +39,28 @@ public class PoyoLangTranslatorGenerator : IIncrementalGenerator }); } + private static Dictionary ReadCustomDictionary(SourceText text) + { + var dictionary = new Dictionary(); + + foreach (var line in text.ToString().Split('\n')) + { + var span = line.TrimEnd('\r').AsSpan(); + + // Reached end of file + if (span.Length < 1) + { + break; + } + + var splitIndex = span.IndexOf('='); + + dictionary[span[..splitIndex].ToString()] = span[(splitIndex + 1)..].ToString(); + } + + return dictionary; + } + private static List BuildPrefixTree(Dictionary dictionary) { var rootNodes = new List(); @@ -93,6 +115,7 @@ public class PoyoLangTranslatorGenerator : IIncrementalGenerator namespace PoyoLang.Translator; + """ ); @@ -108,8 +131,9 @@ public class PoyoLangTranslatorGenerator : IIncrementalGenerator // Next letter method definition source.Append( """ - public void NextLetter(ref ReadOnlySpan text, StringBuilder output) + private void NextLetter(ref ReadOnlySpan text, StringBuilder output) { + """ ); @@ -120,9 +144,10 @@ public class PoyoLangTranslatorGenerator : IIncrementalGenerator { return; } - + var isCaps = char.IsUpper(text[0]); - + + """ ); @@ -131,11 +156,13 @@ public class PoyoLangTranslatorGenerator : IIncrementalGenerator // Next letter method end source.Append( """ + // Punctuation/Unknown characters case - text = text[1..]; - output.Append(text[0]); + + text = text[1..]; } + """ ); @@ -158,6 +185,8 @@ public class PoyoLangTranslatorGenerator : IIncrementalGenerator $$""" {{indent}}switch (text[{{depth}}]) {{indent}}{ + + """ ); @@ -170,7 +199,8 @@ public class PoyoLangTranslatorGenerator : IIncrementalGenerator source.Append( $$""" {{indent}} case '{{node.Letter}}' or '{{char.ToUpper(node.Letter)}}': - {{indent}} + + """ ); @@ -181,6 +211,7 @@ public class PoyoLangTranslatorGenerator : IIncrementalGenerator $$""" {{indent}} if (text.Length > {{depth + 1}}) {{indent}} { + """ ); @@ -190,6 +221,7 @@ public class PoyoLangTranslatorGenerator : IIncrementalGenerator source.Append( $$""" {{indent}} } + """ ); } @@ -203,6 +235,8 @@ public class PoyoLangTranslatorGenerator : IIncrementalGenerator {{indent}} output.Append(isCaps ? "{{targetUpper}}" : "{{targetLower}}"); {{indent}} {{indent}} return; + + """ ); } @@ -210,8 +244,8 @@ public class PoyoLangTranslatorGenerator : IIncrementalGenerator // Switch-case end source.Append( $$""" - {{indent}}} + """ ); } diff --git a/PoyoLang.Translator.SourceGenerator/Properties/launchSettings.json b/PoyoLang.Translator.SourceGenerator/Properties/launchSettings.json new file mode 100644 index 0000000..dd4f924 --- /dev/null +++ b/PoyoLang.Translator.SourceGenerator/Properties/launchSettings.json @@ -0,0 +1,9 @@ +{ + "$schema": "http://json.schemastore.org/launchsettings.json", + "profiles": { + "PoyoLang.Translator.SourceGenerator": { + "commandName": "DebugRoslynComponent", + "targetProject": "../PoyoLang.Test/PoyoLang.Test.csproj" + } + } +} diff --git a/PoyoLang.Translator/PoyoLang.Translator.csproj b/PoyoLang.Translator/PoyoLang.Translator.csproj index c7c030c..ccc59e6 100644 --- a/PoyoLang.Translator/PoyoLang.Translator.csproj +++ b/PoyoLang.Translator/PoyoLang.Translator.csproj @@ -7,12 +7,11 @@ - + - - + diff --git a/PoyoLang.Translator/PoyoLangTranslator.cs b/PoyoLang.Translator/PoyoLangTranslator.cs index 61fc82e..5704944 100644 --- a/PoyoLang.Translator/PoyoLangTranslator.cs +++ b/PoyoLang.Translator/PoyoLangTranslator.cs @@ -1,6 +1,24 @@ +using System.Text; + namespace PoyoLang.Translator; public partial class PoyoLangTranslator { - + public string TranslateToPoyo(ReadOnlySpan text) + { + var output = new StringBuilder(text.Length); + + while (text.Length > 0) + { + NextLetter(ref text, output); + + // Add space if not reached the end + if (text.Length > 0) + { + output.Append(' '); + } + } + + return output.ToString(); + } } \ No newline at end of file diff --git a/PoyoLang.Translator/dictionary.json b/PoyoLang.Translator/dictionary.json deleted file mode 100644 index 9bc8a12..0000000 --- a/PoyoLang.Translator/dictionary.json +++ /dev/null @@ -1,322 +0,0 @@ -{ - "poyo": " ", - "poy\u00F3": "e", - "poy\u00F2": "t", - "poy\u00F4": "a", - "poy\u00F6": "o", - "poy\u00F5": "i", - "poy\u014D": "n", - "poy\u01D2": "e ", - "p\u00F3yo": "r", - "p\u00F3y\u00F3": "h", - "p\u00F3y\u00F2": "s", - "p\u00F3y\u00F4": "l", - "p\u00F3y\u00F6": "d", - "p\u00F3y\u00F5": "c", - "p\u00F3y\u014D": "th", - "p\u00F3y\u01D2": "u", - "p\u00F2yo": "t ", - "p\u00F2y\u00F3": "he", - "p\u00F2y\u00F2": "m", - "p\u00F2y\u00F4": "b", - "p\u00F2y\u00F6": "f", - "p\u00F2y\u00F5": "y", - "p\u00F2y\u014D": "p", - "p\u00F2y\u01D2": "the", - "p\u00F4yo": "n ", - "p\u00F4y\u00F3": "w", - "p\u00F4y\u00F2": "g", - "p\u00F4y\u00F4": "he ", - "p\u00F4y\u00F6": "in", - "p\u00F4y\u00F5": "y ", - "p\u00F4y\u014D": "d ", - "p\u00F4y\u01D2": "r ", - "p\u00F6yo": "an", - "p\u00F6y\u00F3": "er", - "p\u00F6y\u00F2": "the ", - "p\u00F6y\u00F4": "be", - "p\u00F6y\u00F6": "at", - "p\u00F6y\u00F5": "re", - "p\u00F6y\u014D": "v", - "p\u00F6y\u01D2": "on", - "p\u00F5yo": "o ", - "p\u00F5y\u00F3": "nd", - "p\u00F5y\u00F2": "or", - "p\u00F5y\u00F4": "be ", - "p\u00F5y\u00F6": "ha", - "p\u00F5y\u00F5": "en", - "p\u00F5y\u014D": "to", - "p\u00F5y\u01D2": "ve", - "p\u014Dyo": "ou", - "p\u014Dy\u00F3": "nd ", - "p\u014Dy\u00F2": "it", - "p\u014Dy\u00F4": "st", - "p\u014Dy\u00F6": "l ", - "p\u014Dy\u00F5": "k", - "p\u014Dy\u014D": "te", - "p\u014Dy\u01D2": "al", - "p\u01D2yo": "ti", - "p\u01D2y\u00F3": "f ", - "p\u01D2y\u00F2": "and", - "p\u01D2y\u00F4": "s ", - "p\u01D2y\u00F6": "er ", - "p\u01D2y\u00F5": "nt", - "p\u01D2y\u014D": "and ", - "p\u01D2y\u01D2": "of", - "payo": "ar", - "pay\u00F3": "a ", - "pay\u00F2": "se", - "pay\u00F4": "to ", - "pay\u00F6": "ea", - "pay\u00F5": "hi", - "pay\u014D": "of ", - "pay\u01D2": "me", - "p\u00E1yo": "le", - "p\u00E1y\u00F3": "on ", - "p\u00E1y\u00F2": "h ", - "p\u00E1y\u00F4": "co", - "p\u00E1y\u00F6": "is", - "p\u00E1y\u00F5": "in ", - "p\u00E1y\u014D": "at ", - "p\u00E1y\u01D2": "ro", - "p\u00E0yo": "ll", - "p\u00E0y\u00F3": "ve ", - "p\u00E0y\u00F2": "de", - "p\u00E0y\u00F4": "es", - "p\u00E0y\u00F6": "ng", - "p\u00E0y\u00F5": "io", - "p\u00E0y\u014D": "om", - "p\u00E0y\u01D2": "ne", - "p\u00E2yo": "ic", - "p\u00E2y\u00F3": "li", - "p\u00E2y\u00F2": "ri", - "p\u00E2y\u00F4": "ra", - "p\u00E2y\u00F6": "as", - "p\u00E2y\u00F5": "ce", - "p\u00E2y\u014D": "g ", - "p\u00E2y\u01D2": "ho", - "p\u00E4yo": "ion", - "p\u00E4y\u00F3": "ca", - "p\u00E4y\u00F2": "or ", - "p\u00E4y\u00F4": "ta", - "p\u00E4y\u00F6": "ut", - "p\u00E4y\u00F5": "el", - "p\u00E4y\u014D": "ch", - "p\u00E4y\u01D2": "m ", - "p\u00E3yo": "hat", - "p\u00E3y\u00F3": "ma", - "p\u00E3y\u00F2": "hat ", - "p\u00E3y\u00F4": "ur", - "p\u00E3y\u00F6": "k ", - "p\u00E3y\u00F5": "ng ", - "p\u00E3y\u014D": "fo", - "p\u00E3y\u01D2": "re ", - "p\u0101yo": "no", - "p\u0101y\u00F3": "si", - "p\u0101y\u00F2": "her", - "p\u0101y\u00F4": "av", - "p\u0101y\u00F6": "nt ", - "p\u0101y\u00F5": "tha", - "p\u0101y\u014D": "ion ", - "p\u0101y\u01D2": "il", - "p\u01CEyo": "ent", - "p\u01CEy\u00F3": "et", - "p\u01CEy\u00F2": "la", - "p\u01CEy\u00F4": "us", - "p\u01CEy\u00F6": "ac", - "p\u01CEy\u00F5": "ly", - "p\u01CEy\u014D": "ing", - "p\u01CEy\u01D2": "wh", - "piyo": "ow", - "piy\u00F3": "ave", - "piy\u00F2": "pe", - "piy\u00F4": "ec", - "piy\u00F6": "ly ", - "piy\u00F5": "ot", - "piy\u014D": "tio", - "piy\u01D2": "ll ", - "p\u00EDyo": "tion", - "p\u00EDy\u00F3": "wi", - "p\u00EDy\u00F2": "ave ", - "p\u00EDy\u00F4": "se ", - "p\u00EDy\u00F6": "al ", - "p\u00EDy\u00F5": "ing ", - "p\u00EDy\u014D": "ge", - "p\u00EDy\u01D2": "it ", - "p\u00ECyo": "so", - "p\u00ECy\u00F3": "that", - "p\u00ECy\u00F2": "that ", - "p\u00ECy\u00F4": "for", - "p\u00ECy\u00F6": "ay", - "p\u00ECy\u00F5": "st ", - "p\u00ECy\u014D": "lo", - "p\u00ECy\u01D2": "pr", - "p\u00EEyo": "ee", - "p\u00EEy\u00F3": "hav", - "p\u00EEy\u00F2": "have", - "p\u00EEy\u00F4": "have ", - "p\u00EEy\u00F6": "tr", - "p\u00EEy\u00F5": "sh", - "p\u00EEy\u014D": "le ", - "p\u00EEy\u01D2": "w ", - "p\u00EFyo": "mo", - "p\u00EFy\u00F3": "an ", - "p\u00EFy\u00F2": "tion ", - "p\u00EFy\u00F4": "ut ", - "p\u00EFy\u00F6": "un", - "p\u00EFy\u00F5": "ce ", - "p\u00EFy\u014D": "ct", - "p\u00EFy\u01D2": "ay ", - "p\u0129yo": "me ", - "p\u0129y\u00F3": "di", - "p\u0129y\u00F2": "ss", - "p\u0129y\u00F4": "ed", - "p\u0129y\u00F6": "i ", - "p\u0129y\u00F5": "we", - "p\u0129y\u014D": "ol", - "p\u0129y\u01D2": "yo", - "p\u012Byo": "ul", - "p\u012By\u00F3": "rt", - "p\u012By\u00F2": "te ", - "p\u012By\u00F4": "em", - "p\u012By\u00F6": "th ", - "p\u012By\u00F5": "ter", - "p\u012By\u014D": "do", - "p\u012By\u01D2": "ke", - "p\u01D0yo": "po", - "p\u01D0y\u00F3": "ir", - "p\u01D0y\u00F2": "thi", - "p\u01D0y\u00F4": "nc", - "p\u01D0y\u00F6": "you", - "p\u01D0y\u00F5": "his", - "p\u01D0y\u014D": "im", - "p\u01D0y\u01D2": "is ", - "puyo": "oo", - "puy\u00F3": "all", - "puy\u00F2": "ent ", - "puy\u00F4": "ig", - "puy\u00F6": "pa", - "puy\u00F5": "ate", - "puy\u014D": "p ", - "puy\u01D2": "ati", - "p\u00FAyo": "ld", - "p\u00FAy\u00F3": "fi", - "p\u00FAy\u00F2": "his ", - "p\u00FAy\u00F4": "en ", - "p\u00FAy\u00F6": "ver", - "p\u00FAy\u00F5": "na", - "p\u00FAy\u014D": "mi", - "p\u00FAy\u01D2": "ry", - "p\u00F9yo": "ai", - "p\u00F9y\u00F3": "pl", - "p\u00F9y\u00F2": "ow ", - "p\u00F9y\u00F4": "gh", - "p\u00F9y\u00F6": "wo", - "p\u00F9y\u00F5": "sa", - "p\u00F9y\u014D": "ad", - "p\u00F9y\u01D2": "her ", - "p\u00FByo": "ld ", - "p\u00FBy\u00F3": "ev", - "p\u00FBy\u00F2": "su", - "p\u00FBy\u00F4": "os", - "p\u00FBy\u00F6": "iv", - "p\u00FBy\u00F5": "for ", - "p\u00FBy\u014D": "ther", - "p\u00FBy\u01D2": "wa", - "p\u00FCyo": "ni", - "p\u00FCy\u00F3": "ry ", - "p\u00FCy\u00F2": "ith", - "p\u00FCy\u00F4": "am", - "p\u00FCy\u00F6": "bo", - "p\u00FCy\u00F5": "u ", - "p\u00FCy\u014D": "ch ", - "p\u00FCy\u01D2": "ab", - "p\u0169yo": "ou ", - "p\u0169y\u00F3": "you ", - "p\u0169y\u00F2": "op", - "p\u0169y\u00F4": "id", - "p\u0169y\u00F6": "wit", - "p\u0169y\u00F5": "ne ", - "p\u0169y\u014D": "bu", - "p\u0169y\u01D2": "with", - "p\u016Byo": "fe", - "p\u016By\u00F3": "tu", - "p\u016By\u00F2": "bl", - "p\u016By\u00F4": "ere", - "p\u016By\u00F6": "atio", - "p\u016By\u00F5": "x", - "p\u016By\u014D": "ed ", - "p\u016By\u01D2": "ation", - "p\u01D4yo": "ome", - "p\u01D4y\u00F3": "out", - "p\u01D4y\u00F2": "con", - "p\u01D4y\u00F4": "ke ", - "p\u01D4y\u00F6": "ns", - "p\u01D4y\u00F5": "rea", - "p\u01D4y\u014D": "eve", - "p\u01D4y\u01D2": "ci", - "peyo": "ie", - "pey\u00F3": "com", - "pey\u00F2": "ar ", - "pey\u00F4": "et ", - "pey\u00F6": "ith ", - "pey\u00F5": "vi", - "pey\u014D": "ty", - "pey\u01D2": "with ", - "p\u00E9yo": "ear", - "p\u00E9y\u00F3": "fr", - "p\u00E9y\u00F2": "if", - "p\u00E9y\u00F4": "ag", - "p\u00E9y\u00F6": "res", - "p\u00E9y\u00F5": "ate ", - "p\u00E9y\u014D": "do ", - "p\u00E9y\u01D2": "mp", - "p\u00E8yo": "ey", - "p\u00E8y\u00F3": "ive", - "p\u00E8y\u00F2": "ia", - "p\u00E8y\u00F4": "pro", - "p\u00E8y\u00F6": "ba", - "p\u00E8y\u00F5": "ov", - "p\u00E8y\u014D": "nce", - "p\u00E8y\u01D2": "as ", - "p\u00EAyo": "ck", - "p\u00EAy\u00F3": "sta", - "p\u00EAy\u00F2": "sp", - "p\u00EAy\u00F4": "ty ", - "p\u00EAy\u00F6": "gr", - "p\u00EAy\u00F5": "ter ", - "p\u00EAy\u014D": "ation ", - "p\u00EAy\u01D2": "hin", - "p\u00EByo": "ess", - "p\u00EBy\u00F3": "ak", - "p\u00EBy\u00F2": "ge ", - "p\u00EBy\u00F4": "ill", - "p\u00EBy\u00F6": "go", - "p\u00EBy\u00F5": "out ", - "p\u00EBy\u014D": "our", - "p\u00EBy\u01D2": "ot ", - "p\u1EBDyo": "ey ", - "p\u1EBDy\u00F3": "fa", - "p\u1EBDy\u00F2": "ss ", - "p\u1EBDy\u00F4": "igh", - "p\u1EBDy\u00F6": "not", - "p\u1EBDy\u00F5": "int", - "p\u1EBDy\u014D": "ex", - "p\u1EBDy\u01D2": "j", - "p\u0113yo": "om ", - "p\u0113y\u00F3": "one", - "p\u0113y\u00F2": "ap", - "p\u0113y\u00F4": "men", - "p\u0113y\u00F6": "all ", - "p\u0113y\u00F5": "od", - "p\u0113y\u014D": "here", - "p\u0113y\u01D2": "est", - "p\u011Byo": "up", - "p\u011By\u00F3": "ive ", - "p\u011By\u00F2": "rs", - "p\u011By\u00F4": "ere ", - "p\u011By\u00F6": "ove", - "p\u011By\u00F5": "nce ", - "p\u011By\u014D": "ide", - "p\u011By\u01D2": "uc" -} \ No newline at end of file diff --git a/PoyoLang.Translator/dictionary.txt b/PoyoLang.Translator/dictionary.txt new file mode 100644 index 0000000..6b37a9e --- /dev/null +++ b/PoyoLang.Translator/dictionary.txt @@ -0,0 +1,320 @@ +poyo= +poyó=e +poyò=t +poyô=a +poyö=o +poyõ=i +poyō=n +poyǒ=e +póyo=r +póyó=h +póyò=s +póyô=l +póyö=d +póyõ=c +póyō=th +póyǒ=u +pòyo=t +pòyó=he +pòyò=m +pòyô=b +pòyö=f +pòyõ=y +pòyō=p +pòyǒ=the +pôyo=n +pôyó=w +pôyò=g +pôyô=he +pôyö=in +pôyõ=y +pôyō=d +pôyǒ=r +pöyo=an +pöyó=er +pöyò=the +pöyô=be +pöyö=at +pöyõ=re +pöyō=v +pöyǒ=on +põyo=o +põyó=nd +põyò=or +põyô=be +põyö=ha +põyõ=en +põyō=to +põyǒ=ve +pōyo=ou +pōyó=nd +pōyò=it +pōyô=st +pōyö=l +pōyõ=k +pōyō=te +pōyǒ=al +pǒyo=ti +pǒyó=f +pǒyò=and +pǒyô=s +pǒyö=er +pǒyõ=nt +pǒyō=and +pǒyǒ=of +payo=ar +payó=a +payò=se +payô=to +payö=ea +payõ=hi +payō=of +payǒ=me +páyo=le +páyó=on +páyò=h +páyô=co +páyö=is +páyõ=in +páyō=at +páyǒ=ro +pàyo=ll +pàyó=ve +pàyò=de +pàyô=es +pàyö=ng +pàyõ=io +pàyō=om +pàyǒ=ne +pâyo=ic +pâyó=li +pâyò=ri +pâyô=ra +pâyö=as +pâyõ=ce +pâyō=g +pâyǒ=ho +päyo=ion +päyó=ca +päyò=or +päyô=ta +päyö=ut +päyõ=el +päyō=ch +päyǒ=m +pãyo=hat +pãyó=ma +pãyò=hat +pãyô=ur +pãyö=k +pãyõ=ng +pãyō=fo +pãyǒ=re +pāyo=no +pāyó=si +pāyò=her +pāyô=av +pāyö=nt +pāyõ=tha +pāyō=ion +pāyǒ=il +pǎyo=ent +pǎyó=et +pǎyò=la +pǎyô=us +pǎyö=ac +pǎyõ=ly +pǎyō=ing +pǎyǒ=wh +piyo=ow +piyó=ave +piyò=pe +piyô=ec +piyö=ly +piyõ=ot +piyō=tio +piyǒ=ll +píyo=tion +píyó=wi +píyò=ave +píyô=se +píyö=al +píyõ=ing +píyō=ge +píyǒ=it +pìyo=so +pìyó=that +pìyò=that +pìyô=for +pìyö=ay +pìyõ=st +pìyō=lo +pìyǒ=pr +pîyo=ee +pîyó=hav +pîyò=have +pîyô=have +pîyö=tr +pîyõ=sh +pîyō=le +pîyǒ=w +pïyo=mo +pïyó=an +pïyò=tion +pïyô=ut +pïyö=un +pïyõ=ce +pïyō=ct +pïyǒ=ay +pĩyo=me +pĩyó=di +pĩyò=ss +pĩyô=ed +pĩyö=i +pĩyõ=we +pĩyō=ol +pĩyǒ=yo +pīyo=ul +pīyó=rt +pīyò=te +pīyô=em +pīyö=th +pīyõ=ter +pīyō=do +pīyǒ=ke +pǐyo=po +pǐyó=ir +pǐyò=thi +pǐyô=nc +pǐyö=you +pǐyõ=his +pǐyō=im +pǐyǒ=is +puyo=oo +puyó=all +puyò=ent +puyô=ig +puyö=pa +puyõ=ate +puyō=p +puyǒ=ati +púyo=ld +púyó=fi +púyò=his +púyô=en +púyö=ver +púyõ=na +púyō=mi +púyǒ=ry +pùyo=ai +pùyó=pl +pùyò=ow +pùyô=gh +pùyö=wo +pùyõ=sa +pùyō=ad +pùyǒ=her +pûyo=ld +pûyó=ev +pûyò=su +pûyô=os +pûyö=iv +pûyõ=for +pûyō=ther +pûyǒ=wa +püyo=ni +püyó=ry +püyò=ith +püyô=am +püyö=bo +püyõ=u +püyō=ch +püyǒ=ab +pũyo=ou +pũyó=you +pũyò=op +pũyô=id +pũyö=wit +pũyõ=ne +pũyō=bu +pũyǒ=with +pūyo=fe +pūyó=tu +pūyò=bl +pūyô=ere +pūyö=atio +pūyõ=x +pūyō=ed +pūyǒ=ation +pǔyo=ome +pǔyó=out +pǔyò=con +pǔyô=ke +pǔyö=ns +pǔyõ=rea +pǔyō=eve +pǔyǒ=ci +peyo=ie +peyó=com +peyò=ar +peyô=et +peyö=ith +peyõ=vi +peyō=ty +peyǒ=with +péyo=ear +péyó=fr +péyò=if +péyô=ag +péyö=res +péyõ=ate +péyō=do +péyǒ=mp +pèyo=ey +pèyó=ive +pèyò=ia +pèyô=pro +pèyö=ba +pèyõ=ov +pèyō=nce +pèyǒ=as +pêyo=ck +pêyó=sta +pêyò=sp +pêyô=ty +pêyö=gr +pêyõ=ter +pêyō=ation +pêyǒ=hin +pëyo=ess +pëyó=ak +pëyò=ge +pëyô=ill +pëyö=go +pëyõ=out +pëyō=our +pëyǒ=ot +pẽyo=ey +pẽyó=fa +pẽyò=ss +pẽyô=igh +pẽyö=not +pẽyõ=int +pẽyō=ex +pẽyǒ=j +pēyo=om +pēyó=one +pēyò=ap +pēyô=men +pēyö=all +pēyõ=od +pēyō=here +pēyǒ=est +pěyo=up +pěyó=ive +pěyò=rs +pěyô=ere +pěyö=ove +pěyõ=nce +pěyō=ide +pěyǒ=uc