# Cross-straits (兩岸詞典) Parser for Kotlin

A parser for the [Cross-straits (兩岸詞典)](https://github.com/g0v/moedict-data-csld) Chinese-to-Chinese dictionary
written
in [Kotlin](https://kotlinlang.org).

## Build

To build the project locally, simply run the following command from the terminal:

```sh
./gradlew build
```

## Installation

_Cross-straits (兩岸詞典) Parser for Kotlin_ is available
from [my self-hosted Gitea instance](https://gitea.marvinelsen.com/marvinelsen/cedict-parser).

First, add the repository to your `build.gradle.kts` file:

```kotlin
repositories {
    maven {
        url = uri("https://gitea.marvinelsen.com/api/packages/marvinelsen/maven")
    }
}
```

Afterwards, add the package dependency to your `build.gradle.kts` file:

```kotlin
dependencies {
    implementation("com.marvinelsen:cross-straits-parser:1.0.0")
}
```

## Usage

```kotlin
fun main() {
    val crossStraitsInputStream = GZIPInputStream(object {}.javaClass.getResourceAsStream("/cross-straits.csv.gz")!!)

    crossStraitsInputStream.use {
        val crossStraitsParser = CrossStraitsParser.instance
        val crossStraitsEntries = crossStraitsParser.parse(crossStraitsInputStream)

        crossStraitsEntries.forEach { entry ->
            println(entry.traditional)
            println(entry.simplified)
            println(entry.pronunciationTaiwan.joinToString(" ") { it.format(TransliterationSystem.PINYIN_WITH_TONE_NUMBERS) })
            println(entry.pronunciationMainland.joinToString(" ") { it.format(TransliterationSystem.PINYIN_WITH_TONE_NUMBERS) })
            println(entry.definitions.first().definition)
            println(entry.definitions.first().examples)
        }
    }
}
```

## License

All source code in this repository is licensed under a [MIT license](LICENSE), unless otherwise noted.

To the following third-party code, data, and files in the repository different licenses apply:

### Cross-straits Dictionary

[Cross-Straits Dictionary](https://github.com/g0v/moedict-data-csld) is licensed under
a [CC BY-NC-ND 4.0](https://creativecommons.org/licenses/by-nc-nd/4.0/).