From 3cabf1b6ba4c1eae08d83b1d15ce130661ed1a0d Mon Sep 17 00:00:00 2001 From: usbharu <64310155+usbharu@users.noreply.github.com> Date: Wed, 1 Mar 2023 16:22:48 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=E7=B5=B5=E6=96=87=E5=AD=97=E4=B8=80?= =?UTF-8?q?=E8=A6=A7=E3=82=92=E5=8F=96=E5=BE=97=E3=81=97=E3=82=84=E3=81=99?= =?UTF-8?q?=E3=81=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- buildSrc/src/main/kotlin/EmojiPlugin.kt | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/buildSrc/src/main/kotlin/EmojiPlugin.kt b/buildSrc/src/main/kotlin/EmojiPlugin.kt index 07c5932..f957342 100644 --- a/buildSrc/src/main/kotlin/EmojiPlugin.kt +++ b/buildSrc/src/main/kotlin/EmojiPlugin.kt @@ -1,15 +1,11 @@ import io.ktor.client.* import io.ktor.client.engine.cio.* -import io.ktor.client.plugins.cache.* -import io.ktor.client.plugins.cache.storage.* import io.ktor.client.request.* import io.ktor.client.statement.* import kotlinx.coroutines.runBlocking import org.gradle.api.Action import org.gradle.api.Plugin import org.gradle.api.Project -import java.nio.file.Files -import java.nio.file.Paths class EmojiPlugin : Plugin { override fun apply(project: Project) { @@ -53,12 +49,12 @@ class EmojiPlugin : Plugin { s.startsWith("#") -> {} else -> { val description = s.substringAfterLast("E").substringAfter(" ") - if (!description.contains("skin tone")) { + val status = s.substringAfter(";").substringBefore("#").trim() + if (!(description.contains("skin tone")&&status.equals("unqualified"))) { val code = s.substringBefore(";").replace(Regex(" +"), " ").trim() val char = s.substringAfter("# ").substringBefore(" ").trim() - val status = s.substringAfter(";").substringBefore("#").trim() enumList.put( description, Emoji( @@ -115,7 +111,7 @@ class EmojiPlugin : Plugin { } val map = emojis.map { - "enum class ${it.key}(val group:String,val subGroup:String,val code:String,val char:String,val description:String){\n" + + "enum class ${it.key}(override val group:String,override val subgroup:String,override val code:String,override val char:String,override val description:String):UnicodeEmoji{\n" + "${ it.value.map { it.value }.joinToString( ",\n" @@ -127,7 +123,19 @@ class EmojiPlugin : Plugin { //language=kotlin val trimIndent = """@Suppress("unused") -class Emojis { +interface UnicodeEmoji { + val group: String + val subgroup: String + val code: String + val char: String + val description: String +} + +object Emojis { +val allEmojis:MutableList = mutableListOf() +init { + ${emojis.keys.map { "allEmojis.addAll($it.values())" }.joinToString("\n")} +} ${joinToString} }""" asFile.writeText(trimIndent)