DotNetG2P.Korean
1.10.0
dotnet add package DotNetG2P.Korean --version 1.10.0
NuGet\Install-Package DotNetG2P.Korean -Version 1.10.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DotNetG2P.Korean" Version="1.10.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="DotNetG2P.Korean" Version="1.10.0" />
<PackageReference Include="DotNetG2P.Korean" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add DotNetG2P.Korean --version 1.10.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: DotNetG2P.Korean, 1.10.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package DotNetG2P.Korean@1.10.0
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=DotNetG2P.Korean&version=1.10.0
#tool nuget:?package=DotNetG2P.Korean&version=1.10.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
DotNetG2P.Korean
Hangul-first Korean grapheme-to-phoneme conversion for .NET and Unity.
What It Includes
- Rule-based Korean pronunciation conversion for modern Hangul
ToPhonemesandToJamoAPIs- Standard-pronunciation-oriented rule coverage for neutralization, resyllabification, tensification, nasalization, liquidization, and
ㅎ-driven changes - Exact-match exception dictionary for lexical overrides
- Lightweight normalization for whitespace, punctuation, and compatibility Unicode forms
Quick Start
using DotNetG2P.Korean;
using var engine = new KoreanG2PEngine();
string phonemes = engine.ToPhonemes("좋다");
// => "ㅈ ㅗ ㅌ ㅏ"
string jamo = engine.ToJamo("한글");
// => "ㅎㅏㄴ ㄱㅡㄹ"
using var colloquial = new KoreanG2PEngine(
new KoreanG2POptions(uiVariationMode: KoreanUiVariationMode.Colloquial));
string uiVariant = colloquial.Analyze("나의").ToHangulString();
// => "나에"
Options
EnableUnicodeNormalization: apply compatibility Unicode normalization before conversionEnableTextNormalization: collapse repeated whitespace and remove punctuation-oriented noise for Hangul-first inputEnableExceptionDictionary: enable exact lexical pronunciation overridesPreserveNonHangul: keep normalized non-Hangul characters in the intermediate outputUiVariationMode: chooseStandardorColloquialhandling for supported의-variation entries
Benchmarks And Tests
- Benchmark datasets:
g2pk_parity,official_gold,weak_rules - Current seed status:
g2pk_parity:8/8official_gold:21/21weak_rules:14/14
- Current Korean regression status:
179 passed, 1 skipped - Targeted regression command:
dotnet test tests/DotNetG2P.Tests/DotNetG2P.Tests.csproj --filter Korean --no-restore
- Performance guard command:
dotnet test tests/DotNetG2P.Tests/DotNetG2P.Tests.csproj --filter FullyQualifiedName~KoreanPerformanceTests --no-build --no-restore -m:1
- External corpus gate:
DOTNETG2P_KOREAN_EXTERNAL_CORPUS_PATHS=tests/TestData/KoreanG2P/official_gold.tsv DOTNETG2P_KOREAN_EXTERNAL_MIN_CASES=20 DOTNETG2P_KOREAN_EXTERNAL_ACCURACY_THRESHOLD=1.0 dotnet test tests/DotNetG2P.Tests/DotNetG2P.Tests.csproj --filter FullyQualifiedName~KoreanExternalBenchmarkTests --no-build --no-restore -m:1
Thread Safety
KoreanG2PEngine is stateless after construction and can be shared across threads for conversion calls.
Dispose the engine when you are done with it to follow the same lifetime pattern as the other package engines.
Known Limitations
- The package is
Hangul-first. Full Hanja conversion is out of scope for v1. - Context-sensitive number reading and English-to-Hangul expansion are not implemented yet.
- Some compound-boundary pronunciations still rely on exact lexical exceptions instead of a mandatory morph analyzer.
License And Notice
- License: Apache-2.0
- Third-party notice: THIRD-PARTY-NOTICES.md
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.1 is compatible. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETStandard 2.1
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on DotNetG2P.Korean:
| Package | Downloads |
|---|---|
|
DotNetG2P.Multilingual
Multilingual G2P engine combining Japanese, English, Chinese, Korean, Spanish, French, Portuguese, and Swedish grapheme-to-phoneme support with automatic language detection. |
GitHub repositories
This package is not used by any popular GitHub repositories.