diff --git a/assets/css/editor/kun-content.scss b/assets/css/editor/kun-content.scss
index 44f50a48..05eed4a2 100644
--- a/assets/css/editor/kun-content.scss
+++ b/assets/css/editor/kun-content.scss
@@ -126,6 +126,7 @@
color: var(--kungalgame-blue-5);
text-decoration: underline;
text-underline-offset: 3px;
+ word-break: break-word;
}
table {
diff --git a/components/galgame/resource/Details.vue b/components/galgame/resource/Details.vue
index c420453e..9dc8e9a3 100644
--- a/components/galgame/resource/Details.vue
+++ b/components/galgame/resource/Details.vue
@@ -101,7 +101,7 @@ const handleRewriteResource = (details: GalgameResourceDetails) => {
-
+
diff --git a/components/kun/Copy.vue b/components/kun/Copy.vue
index d0e78340..6126c125 100644
--- a/components/kun/Copy.vue
+++ b/components/kun/Copy.vue
@@ -6,7 +6,7 @@ withDefaults(defineProps<{ text: string; name?: string }>(), {
- {{ name ? name : text }}
+ {{ decodeIfEncoded(name ? name : text) }}
diff --git a/composables/useKunCopy.ts b/composables/useKunCopy.ts
index 756c6188..09e79d93 100644
--- a/composables/useKunCopy.ts
+++ b/composables/useKunCopy.ts
@@ -1,4 +1,6 @@
-export const useKunCopy = (text: string) => {
+export const useKunCopy = (originText: string) => {
+ const text = decodeIfEncoded(originText)
+
navigator.clipboard
.writeText(text)
.then(() => {
diff --git a/package.json b/package.json
index 52e58a08..e0289311 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "kun-galgame-nuxt3",
- "version": "2.19.10",
+ "version": "2.19.11",
"packageManager": "pnpm@9.12.1",
"private": true,
"scripts": {
diff --git a/utils/decodeIfEncoded.ts b/utils/decodeIfEncoded.ts
new file mode 100644
index 00000000..c32f55f0
--- /dev/null
+++ b/utils/decodeIfEncoded.ts
@@ -0,0 +1,8 @@
+export const decodeIfEncoded = (text: string) => {
+ try {
+ const decoded = decodeURIComponent(text)
+ return decoded !== text ? decoded : text
+ } catch (e) {
+ return text
+ }
+}