Replace the single "loop" translation with three explicit keys ("loopOff", "loopTrack", "loopQueue") across all language files to support distinct loop modes. Also standardize the settings key from "max-history" to "max_history" and update main.py to read LOG_SETTINGS.get("max_history", 30) for the TimedRotatingFileHandler backupCount. Files changed: langs/*.json, main.py, settings Example.json.
267 lines
12 KiB
JSON
267 lines
12 KiB
JSON
{
|
||
"common": {
|
||
"errors": {
|
||
"unknown": "⚠️ 執行指令時發生錯誤!請稍後再試,或加入我們的 Discord 伺服器取得協助。",
|
||
"missingIntents": "抱歉,無法執行此指令,因為缺少必要的請求 intent:`({0})`。"
|
||
},
|
||
"status": {
|
||
"enabled": "已啟用",
|
||
"disabled": "已停用",
|
||
"live": "直播"
|
||
}
|
||
},
|
||
"player": {
|
||
"errors": {
|
||
"nodeReconnect": "請在節點重新連線後再試!",
|
||
"noPlaySource": "找不到可播放的來源!",
|
||
"noPlayer": "此伺服器上沒有找到播放器。",
|
||
"noTrackPlaying": "目前沒有正在播放的歌曲",
|
||
"noTrackFound": "未找到對應的歌曲,請提供有效連結。"
|
||
},
|
||
"dropdown": {
|
||
"trackSelect": "選擇要跳轉的歌曲 ...",
|
||
"filterSelect": "選擇要套用的音效 ..."
|
||
},
|
||
"buttons": {
|
||
"back": "上一首",
|
||
"pause": "暫停",
|
||
"resume": "繼續",
|
||
"skip": "下一首",
|
||
"leave": "離開",
|
||
"loopOff": "關閉",
|
||
"loopTrack": "音軌",
|
||
"loopQueue": "隊列",
|
||
"volumeUp": "音量+",
|
||
"volumeDown": "音量-",
|
||
"volumeMute": "靜音",
|
||
"volumeUnmute": "取消靜音",
|
||
"autoPlay": "自動播放",
|
||
"shuffle": "隨機播放",
|
||
"forward": "快轉",
|
||
"rewind": "倒轉",
|
||
"lyrics": "歌詞"
|
||
},
|
||
"playback": {
|
||
"nowplayingDesc": "**正在播放:**\n```{0}```",
|
||
"nowplayingField": "接下來:",
|
||
"nowplayingLink": "在 {0} 收聽",
|
||
"playlistLoad": " 🎶 已將播放清單 **{0}** 的 `{1}` 首歌曲加入隊列。",
|
||
"trackLoad": "已新增 **[{0}](<{1}>)** - **{2}** (`{3}`) 並開始播放。\n",
|
||
"trackLoadPos": "已新增 **[{0}](<{1}>)** - **{2}** (`{3}`) 到隊列位置 **{4}**\n"
|
||
},
|
||
"controls": {
|
||
"pause": {
|
||
"error": "播放器已暫停。",
|
||
"vote": "{0} 投票暫停了歌曲。[{1}/{2}]",
|
||
"success": "`{0}` 已暫停播放器。"
|
||
},
|
||
"resume": {
|
||
"error": "播放器未暫停。",
|
||
"vote": "{0} 投票繼續播放。[{1}/{2}]",
|
||
"success": "`{0}` 已繼續播放。"
|
||
},
|
||
"shuffle": {
|
||
"error": "請在隊列中新增更多歌曲後再隨機播放。",
|
||
"vote": "{0} 投票隨機播放隊列。[{1}/{2}]",
|
||
"success": "隊列已隨機排序。"
|
||
},
|
||
"skip": {
|
||
"error": "沒有歌曲可跳過。",
|
||
"vote": "{0} 投票跳過歌曲。[{1}/{2}]",
|
||
"success": "`{0}` 已跳過歌曲。"
|
||
},
|
||
"back": {
|
||
"vote": "{0} 投票播放上一首歌。[{1}/{2}]",
|
||
"success": "`{0}` 已切換到上一首歌曲。"
|
||
},
|
||
"leave": {
|
||
"vote": "{0} 投票停止播放。[{1}/{2}]",
|
||
"success": "`{0}` 已停止播放器。"
|
||
},
|
||
"seek": "已將播放器定位至 **{0}**",
|
||
"repeat": "循環模式已設定為 `{0}`",
|
||
"forward": "已快轉至 **{0}**",
|
||
"rewind": "已倒轉至 **{0}**",
|
||
"replay": "正在重播目前的歌曲。",
|
||
"autoplay": "自動播放模式現在是 **{0}**"
|
||
}
|
||
},
|
||
"voice": {
|
||
"connection": {
|
||
"noChannel": "未偵測到語音頻道,請提供一個或先加入語音頻道。",
|
||
"alreadyConnected": "已連線至語音頻道。",
|
||
"noPermission": "抱歉!我沒有權限加入或在您的語音頻道中發言。",
|
||
"notInChannel": "{0},您必須在 {1} 才能使用語音指令。如果您已在頻道,請重新加入!",
|
||
"connect": "已連線至 {0}"
|
||
},
|
||
"stageChannel": {
|
||
"setAnnounceTemplate": "完成!從現在起,您所在的語音狀態將依照模板命名。幾秒後即可看到更新。"
|
||
}
|
||
},
|
||
"permissions": {
|
||
"noCreatePermission": "抱歉!我沒有權限建立點歌頻道。",
|
||
"missingPosition": "只有 DJ 或管理員能更改位置。",
|
||
"missingMode": "只有 DJ 或管理員能切換循環模式。",
|
||
"missingQueue": "只有 DJ 或管理員能從隊列中移除曲目。",
|
||
"missingAutoPlay": "只有 DJ 或管理員能啟用或停用自動播放!",
|
||
"missingFunction": "只有 DJ 或管理員能使用此功能。",
|
||
"notDj": "您不是 DJ。目前 DJ 是 {0}。",
|
||
"djToSelf": "您不能將 DJ 身分轉移給自己或機器人。",
|
||
"djNotInChannel": "`{0}` 不在語音頻道中。",
|
||
"djSwapped": "您已將 DJ 身分轉移給 `{0}`。"
|
||
},
|
||
"settings": {
|
||
"actions": {
|
||
"languageNotFound": "未找到語言包!請選擇一個現有的語言包。",
|
||
"languageChanged": "已成功切換為 `{0}` 語言包。",
|
||
"prefixSet": "完成!我在伺服器的前綴現在是 `{0}`。試著輸入 `{1}ping` 測試一下吧。",
|
||
"djSet": "已將 DJ 設定為 {0}。",
|
||
"queueModeSet": "已將隊列模式設定為 `{0}`。",
|
||
"mode247": "24/7 模式現在是 `{0}`。",
|
||
"bypassVote": "您擁有 `{0}` 投票系統。",
|
||
"volumeSet": "已將音量設定為 `{0}`%",
|
||
"controllerToggled": "您現在已 `{0}` 音樂控制器。",
|
||
"duplicateTrackToggled": "您已 `{0}` 重複曲目防止功能。",
|
||
"controllerMsgToggled": "您現在已 `{0}` 來自音樂控制器的訊息。",
|
||
"silentMsgToggled": "您已 {0} 靜音訊息。",
|
||
"resetDone": "`{0}` 已重置為伺服器預設值。",
|
||
"resetNotFound": "無效的設定名稱。請使用以下之一: {0}"
|
||
},
|
||
"menu": "伺服器設定 | {0}",
|
||
"basic": {
|
||
"title": "❤️ 基本資訊:",
|
||
"value": "```前綴: {0}\n語言: {1}\n音樂控制器: {2}\nDJ 身分組: @{3}\n投票略過: {4}\n24/7: {5}\n預設音量: {6}%\n播放時長: {7}```"
|
||
},
|
||
"queue": {
|
||
"title": "🔗 隊列資訊:",
|
||
"value": "```隊列模式: {0}\n最大歌曲數: {1}\n重複曲目: {2}```"
|
||
},
|
||
"voice": {
|
||
"title": "🎤 語音狀態資訊:"
|
||
},
|
||
"permissions": {
|
||
"title": "✨ 權限:",
|
||
"value": "```{0} 管理員\n{1} 管理伺服器\n{2} 管理頻道\n{3} 管理訊息```"
|
||
}
|
||
},
|
||
"ping": {
|
||
"title1": "機器人資訊:",
|
||
"title2": "播放器資訊:",
|
||
"field1": "```分片 ID: {0}/{1}\n分片延遲: {2:.3f}s {3}\n區域: {4}```",
|
||
"field2": "```節點: {0} - {1:.3f}s\n播放器數: {2}\n語音區域: {3}```"
|
||
},
|
||
"effects": {
|
||
"added": "已套用 `{0}` 效果。",
|
||
"cleared": "音效已清除!",
|
||
"tagInUse": "該音效已在使用中!請使用 /cleareffect <標籤> 移除。"
|
||
},
|
||
"playlist": {
|
||
"view": {
|
||
"title": "{0} 的所有播放清單",
|
||
"headers": "ID:,時長:,名稱:,曲目數:",
|
||
"footer": "輸入 /playlist play [播放清單] 將其加入隊列。",
|
||
"detailTitle": "播放清單檢視器",
|
||
"detailDesc": "```名稱 | ID: {0} | {1}\n總曲目: {2}\n擁有者: {3}\n類型: {4}\n```",
|
||
"permsValue": "📖 讀取: ✓ ✍🏽 寫入: {0} 🗑️ 移除: {1}",
|
||
"permsValue2": "📖 讀取: {0}",
|
||
"trackList": "曲目列表",
|
||
"footer2": "總持續時間:{0}",
|
||
"playlistSelect": "選擇要查看的播放清單 ..."
|
||
},
|
||
"errors": {
|
||
"notFound": "未找到播放清單 [`{0}`]。輸入 /playlist view 查看所有播放清單。",
|
||
"noAccess": "抱歉!您無法存取此播放清單!",
|
||
"noTrack": "抱歉!播放清單 [`{0}`] 中沒有曲目。",
|
||
"notAllowed": "此指令不支援已連結或共享的播放清單。",
|
||
"nameOverLimit": "抱歉!播放清單名稱不能超過 10 個字元。",
|
||
"sameName": "抱歉!請為播放清單選擇新名稱。",
|
||
"deleteDefault": "不允許刪除預設播放清單。",
|
||
"limitReached": "您最多只能建立 `{0}` 個播放清單!",
|
||
"exists": "播放清單 [`{0}`] 已存在。",
|
||
"invalidUrl": "請輸入有效的公開播放清單連結。",
|
||
"trackLimitReached": "已達到上限!每個播放清單最多只能新增 `{0}` 首歌曲。",
|
||
"playlistLinkNotAllowed": "不允許使用播放清單連結。",
|
||
"streamNotAllowed": "不允許將串流影片加入播放清單。",
|
||
"positionNotFound": "在播放清單 [`{1}`] 中找不到位置 `{0}`!",
|
||
"streaming": "不允許將串流影片加入播放清單!",
|
||
"track": "新增曲目到播放清單時發生問題!",
|
||
"trackLimited": "已達到上限!播放清單最多只能新增 {0} 首歌曲。",
|
||
"trackRepeated": "此曲目已在播放清單中!"
|
||
},
|
||
"actions": {
|
||
"play": "已將播放清單 [`{0}`] 的 `{1}` 首歌曲加入隊列。",
|
||
"removed": "您已刪除播放清單 [`{0}`]。",
|
||
"created": "您已建立 `{0}` 播放清單。輸入 /playlist view 查看詳情。",
|
||
"renamed": "您已將 `{0}` 重新命名為 `{1}`。",
|
||
"trackRemoved": "👋 已從 {1} 的播放清單 [`{2}`] 中移除 **{0}**。",
|
||
"cleared": "您已成功清空播放清單 [`{0}`]。",
|
||
"trackAdded": "❤️ 已將 **{0}** 加入 {1} 的播放清單 [`{2}`]!"
|
||
},
|
||
"sharing": {
|
||
"sendErrorPlayer": "抱歉!您不能邀請自己。",
|
||
"sendErrorBot": "抱歉!您不能邀請機器人。",
|
||
"belongs": "抱歉!此播放清單屬於 <@{0}>。",
|
||
"alreadyShared": "抱歉!此播放清單已與 {0} 分享。",
|
||
"alreadySent": "抱歉!您之前已經邀請過該使用者。",
|
||
"noAccount": "{0} 尚未建立播放清單帳號。",
|
||
"invitationSent": "邀請已發送給 {0}。"
|
||
},
|
||
"inbox": {
|
||
"full": "抱歉!{0} 的收件匣已滿。",
|
||
"noMessages": "您的收件匣中沒有訊息。"
|
||
}
|
||
},
|
||
"search": {
|
||
"noLinkSupport": "搜尋指令不支援連結!",
|
||
"title": "搜尋關鍵字: {0}",
|
||
"desc": "➥ 平台: {0} **{1}**\n➥ 結果數: **{2}**\n\n{3}",
|
||
"wait": "請選擇要加入隊列的歌曲。",
|
||
"success": "歌曲已加入隊列。"
|
||
},
|
||
"voting": {
|
||
"voted": "您已投票!"
|
||
},
|
||
"time": {
|
||
"formatError": "時間格式錯誤。範例: 2:42 或 12:39:31",
|
||
"invalidStartTime": "無效的開始時間,必須在 `00:00` 和 `{0}` 之間",
|
||
"invalidEndTime": "無效的結束時間,必須在 `00:00` 和 `{0}` 之間"
|
||
},
|
||
"lyrics": {
|
||
"notFound": "未找到歌詞。輸入 /lyrics <歌曲名稱> <作者> 查找歌詞。"
|
||
},
|
||
"queue": {
|
||
"management": {
|
||
"title": "即將播放隊列:",
|
||
"cleared": "已清空 `{0}` 中的所有曲目",
|
||
"removed": "已從隊列中移除 `{0}` 首歌曲。",
|
||
"swapped": "`{0}` 與 `{1}` 已交換位置",
|
||
"moved": "已將 `{0}` 移動到 `{1}`"
|
||
},
|
||
"view": {
|
||
"historyTitle": "播放歷史:",
|
||
"title": "音樂隊列",
|
||
"desc": "**正在播放: [點我]({0}) ⮯**\n{1}"
|
||
},
|
||
"errors": {
|
||
"queueFull": "抱歉,隊列已達最大 `{0}` 首歌曲!",
|
||
"outOfList": "請輸入有效的曲目序號!",
|
||
"duplicateTrack": "抱歉,此曲目已在隊列中。"
|
||
}
|
||
},
|
||
"songRequest": {
|
||
"channelCreated": "已建立點歌頻道 ({0})!您可以在該頻道輸入歌曲名稱或連結來點歌,無需使用機器人前綴。"
|
||
},
|
||
"pagination": {
|
||
"prev": "上一頁",
|
||
"next": "下一頁",
|
||
"play": "播放",
|
||
"share": "分享",
|
||
"export": "匯出",
|
||
"delete": "刪除",
|
||
"page": {
|
||
"title": "輸入頁碼",
|
||
"field": "頁碼"
|
||
}
|
||
}
|
||
}
|