Browse Source

将 library 全部 blade 硬编码字符串替换为多语言调用

14 个 blade 文件约 130 处硬编码中英文替换为 __('library.xxx'),新建 library.php 语言文件(6 语言 × 119 keys)。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
visuddhinanda 3 days ago
parent
commit
7f9202b088

+ 134 - 0
api-v13/resources/lang/en/library.php

@@ -0,0 +1,134 @@
+<?php
+
+return [
+    // index.blade.php
+    'portal_title' => 'WikiPāli · Pali Library',
+    'portal_hero_title' => 'WikiPāli Pali Library',
+    'portal_hero_subtitle' => 'Explore the Tipiṭaka · Gateway to Wisdom',
+    'search_placeholder_home' => 'Search suttas, terms, collections…',
+    'section_tipitaka' => 'Tipiṭaka',
+    'enter_tipitaka' => 'Enter Tipiṭaka',
+    'more' => 'More',
+    'section_recent' => 'Recent Translations',
+    'updating_badge' => 'Updating',
+    'view_all' => 'View All',
+    'badge_new' => 'New',
+    'badge_updated' => 'Updated',
+
+    // search.blade.php
+    'search_results_title' => 'Search Results',
+    'search_title' => 'Search',
+    'search_placeholder' => 'Search entries, Pali, Sanskrit…',
+    'searching' => 'Search',
+    'results_found_prefix' => ', found',
+    'results_found_suffix' => 'results',
+    'page_prefix' => '(page',
+    'page_suffix' => ')',
+    'no_results' => ', no results found',
+    'try_other_keywords' => 'Please try other keywords',
+    'filter_by' => 'Filter by ',
+    'filter' => '',
+    'all' => 'All',
+    'did_you_mean' => 'Did you mean',
+    'browse_categories' => 'Browse Categories',
+
+    // download.blade.php
+    'download' => 'Download',
+    'offline_packets' => 'APP Offline Data Packets',
+    'packet_count_suffix' => 'packets',
+    'no_packets' => 'No Packets',
+    'no_packets_desc' => 'No offline data packets available.',
+    'col_name' => 'Packet Name',
+    'col_size' => 'File Size',
+    'col_min_version' => 'Min Version',
+    'created_at' => 'Created At',
+    'col_links' => 'Download Links',
+    'no_links' => 'No links',
+    'min_version_prefix' => 'Min version ',
+
+    // wiki blade files
+    'wiki_encyclopedia' => 'Buddhist Encyclopedia',
+    'wiki_subtitle' => 'Explore the Dharma · Gateway to Awakening',
+    'wiki_search_placeholder' => 'Search terms, scriptures, figures...',
+    'hot' => 'Hot: ',
+    'wiki_language_divider' => 'Read the Buddhist Encyclopedia in your language',
+    'articles' => 'articles',
+    'today_updates' => 'Updated today',
+    'contributors_suffix' => 'contributors',
+    'today_entry' => 'Today\'s Entry',
+    'read_full_entry' => 'Read full entry →',
+    'featured_entries' => 'Featured Entries',
+    'statistics' => 'Statistics',
+    'total_entries' => 'Total entries',
+    'this_month' => 'This month',
+    'contributors' => 'Contributors',
+    'quality_level' => 'Quality Level',
+    'other_versions' => 'Other Versions',
+    'toc' => 'Table of Contents',
+    'entry_info' => 'Entry Info',
+    'category' => 'Category',
+    'quality' => 'Quality',
+    'recent_updates' => 'Recent Updates',
+
+    // anthology
+    'site_name' => 'Pali Library',
+    'home' => 'Home',
+    'anthology' => 'Anthology',
+    'anthology_subtitle' => 'Commentaries · Meditation Guides · Dhamma Discussions',
+    'no_anthology' => 'No Anthologies',
+    'search_anthology' => 'Search anthologies…',
+    'author' => 'Author',
+    'anthology_count_suffix' => 'anthologies',
+    'last_updated' => 'Last Updated',
+    'chapter_count' => 'Chapters',
+    'chapters' => 'chapters',
+    'read_online' => 'Read Online',
+    'open_in_editor' => 'Open in Editor',
+    'about_anthology' => 'About This Anthology',
+    'anthology_info' => 'Anthology Info',
+    'language' => 'Language',
+    'created' => 'Created',
+    'updated' => 'Updated',
+    'related_anthology' => 'Related Anthologies',
+    'articles_suffix' => 'articles',
+
+    // tipitaka & reader
+    'tipitaka' => 'Tipiṭaka',
+    'categories' => 'Categories',
+    'search_tipitaka' => 'Search Tipiṭaka texts and translations',
+    'type' => 'Type',
+    'clear_filters' => 'Clear Filters',
+    'total_prefix' => 'Total',
+    'book_unit' => 'books',
+    'sort' => 'Sort',
+    'weekly_picks' => 'Weekly Picks',
+    'active_authors' => 'Active Authors',
+    'publisher' => 'Publisher',
+    'pali' => 'Pāli',
+    'book_info' => 'Book Info',
+    'editor' => 'Editor',
+    'settings' => 'Settings',
+    'versions' => 'Versions',
+    'logout' => 'Logout',
+    'select_version' => 'Select Version',
+    'no_content' => 'No content',
+    'prev_article' => 'Previous',
+    'next_article' => 'Next',
+    'tags' => 'Tags',
+    'reading_settings' => 'Reading Settings',
+    'show_original' => 'Show Original',
+    'toggle_original' => 'Toggle original text display',
+    'ui_language' => 'UI Language',
+    'auto' => 'Auto',
+    'lang_zh_hans' => 'Simplified Chinese',
+    'lang_en' => 'English',
+    'pali_script' => 'Pāli Script',
+    'script_roman' => 'Roman',
+    'script_myanmar' => 'Myanmar',
+    'script_thai' => 'Thai',
+    'commentary_version' => 'Commentary Version',
+    'none' => 'None',
+    'cancel' => 'Cancel',
+    'confirm' => 'OK',
+    'no_toc' => 'This book has no table of contents',
+];

+ 134 - 0
api-v13/resources/lang/my/library.php

@@ -0,0 +1,134 @@
+<?php
+
+return [
+    // index.blade.php
+    'portal_title' => 'WikiPāli · ပါဠိစာကြည့်တိုက်',
+    'portal_hero_title' => 'WikiPāli ပါဠိစာကြည့်တိုက်',
+    'portal_hero_subtitle' => 'တိပိဋကကို လေ့လာပါ · ပညာသို့ ဝင်ပေါက်',
+    'search_placeholder_home' => 'သုတ္တာများ၊ အသုံးအနှုန်းများ၊ စုစည်းမှုများ ရှာဖွေပါ…',
+    'section_tipitaka' => 'တိပိဋက',
+    'enter_tipitaka' => 'တိပိဋကသို့ ဝင်ရောက်ပါ',
+    'more' => 'ပိုမိုကြည့်ရှုပါ',
+    'section_recent' => 'မကြာသေးမီ ဘာသာပြန်မှုများ',
+    'updating_badge' => 'အပ်ဒိတ်လုပ်နေသည်',
+    'view_all' => 'အားလုံးကြည့်ရှုပါ',
+    'badge_new' => 'အသစ်',
+    'badge_updated' => 'အပ်ဒိတ်လုပ်ပြီး',
+
+    // search.blade.php
+    'search_results_title' => 'ရှာဖွေရလဒ်များ',
+    'search_title' => 'ရှာဖွေပါ',
+    'search_placeholder' => 'ဝင်ခွင့်များ၊ ပါဠိ၊ သင်္သကြိတ် ရှာဖွေပါ…',
+    'searching' => 'ရှာဖွေပါ',
+    'results_found_prefix' => '၊ တွေ့ရှိသည်',
+    'results_found_suffix' => 'ရလဒ်များ',
+    'page_prefix' => '(စာမျက်နှာ',
+    'page_suffix' => ')',
+    'no_results' => '၊ ရလဒ်မတွေ့ပါ',
+    'try_other_keywords' => 'အခြားသော့ချက်စကားများ စမ်းကြည့်ပါ',
+    'filter_by' => 'စစ်ထုတ် ',
+    'filter' => '',
+    'all' => 'အားလုံး',
+    'did_you_mean' => 'ဆိုလိုသည်မှာ',
+    'browse_categories' => 'အမျိုးအစားများ ကြည့်ရှုပါ',
+
+    // download.blade.php
+    'download' => 'ဒေါင်းလုဒ်',
+    'offline_packets' => 'APP အော့ဖ်လိုင်း ဒေတာပက်ကတ်များ',
+    'packet_count_suffix' => 'ပက်ကတ်များ',
+    'no_packets' => 'ပက်ကတ်မရှိ',
+    'no_packets_desc' => 'အော့ဖ်လိုင်းဒေတာ ပက်ကတ်များ မရှိပါ။',
+    'col_name' => 'ပက်ကတ်အမည်',
+    'col_size' => 'ဖိုင်အရွယ်အစား',
+    'col_min_version' => 'အနိမ့်ဆုံးဗားရှင်း',
+    'created_at' => 'ဖန်တီးသည့်နေ့',
+    'col_links' => 'ဒေါင်းလုဒ်လင့်ခ်များ',
+    'no_links' => 'လင့်ခ်မရှိ',
+    'min_version_prefix' => 'အနိမ့်ဆုံးဗားရှင်း ',
+
+    // wiki blade files
+    'wiki_encyclopedia' => 'ဗုဒ္ဓဘာသာ စွယ်စုံကျမ်း',
+    'wiki_subtitle' => 'တရားတော်ကို လေ့လာပါ · နိဗ္ဗာန်သို့ ဝင်ပေါက်',
+    'wiki_search_placeholder' => 'အသုံးအနှုန်းများ၊ ကျမ်းစာများ၊ ပုဂ္ဂိုလ်များ ရှာဖွေပါ...',
+    'hot' => 'လူကြိုက်များ: ',
+    'wiki_language_divider' => 'သင့်ဘာသာစကားဖြင့် ဗုဒ္ဓဘာသာ စွယ်စုံကျမ်းကို ဖတ်ရှုပါ',
+    'articles' => 'ဆောင်းပါးများ',
+    'today_updates' => 'ယနေ့ အပ်ဒိတ်လုပ်ပြီး',
+    'contributors_suffix' => 'ပံ့ပိုးသူများ',
+    'today_entry' => 'ယနေ့ ဝင်ခွင့်',
+    'read_full_entry' => 'အပြည့်အစုံ ဖတ်ရှုပါ →',
+    'featured_entries' => 'ထူးချွန်သော ဝင်ခွင့်များ',
+    'statistics' => 'စာရင်းဇယားများ',
+    'total_entries' => 'စုစုပေါင်း ဝင်ခွင့်များ',
+    'this_month' => 'ဤလ',
+    'contributors' => 'ပံ့ပိုးသူများ',
+    'quality_level' => 'အရည်အသွေးအဆင့်',
+    'other_versions' => 'အခြားဗားရှင်းများ',
+    'toc' => 'မာတိကာ',
+    'entry_info' => 'ဝင်ခွင့်သတင်းအချက်အလက်',
+    'category' => 'အမျိုးအစား',
+    'quality' => 'အရည်အသွေး',
+    'recent_updates' => 'မကြာသေးမီ အပ်ဒိတ်များ',
+
+    // anthology
+    'site_name' => 'ပါဠိစာကြည့်တိုက်',
+    'home' => 'ပင်မစာမျက်နှာ',
+    'anthology' => 'လက်ရွေးစင်စာစုများ',
+    'anthology_subtitle' => 'အနက်ဖြာကျမ်းများ · တရားထိုင်လမ်းညွှန်များ · ဓမ္မဆွေးနွေးချက်များ',
+    'no_anthology' => 'လက်ရွေးစင်စာစုမရှိ',
+    'search_anthology' => 'လက်ရွေးစင်စာစုများ ရှာဖွေပါ…',
+    'author' => 'စာရေးဆရာ',
+    'anthology_count_suffix' => 'လက်ရွေးစင်စာစုများ',
+    'last_updated' => 'နောက်ဆုံးအပ်ဒိတ်',
+    'chapter_count' => 'အခန်းများ',
+    'chapters' => 'အခန်းများ',
+    'read_online' => 'အွန်လိုင်းဖတ်ရှုပါ',
+    'open_in_editor' => 'တည်းဖြတ်သူတွင် ဖွင့်ပါ',
+    'about_anthology' => 'ဤလက်ရွေးစင်စာစုအကြောင်း',
+    'anthology_info' => 'လက်ရွေးစင်စာစု သတင်းအချက်အလက်',
+    'language' => 'ဘာသာစကား',
+    'created' => 'ဖန်တီးသည်',
+    'updated' => 'အပ်ဒိတ်လုပ်သည်',
+    'related_anthology' => 'ဆက်စပ်သော လက်ရွေးစင်စာစုများ',
+    'articles_suffix' => 'ဆောင်းပါးများ',
+
+    // tipitaka & reader
+    'tipitaka' => 'တိပိဋက',
+    'categories' => 'အမျိုးအစားများ',
+    'search_tipitaka' => 'တိပိဋကစာသားများနှင့် ဘာသာပြန်မှုများ ရှာဖွေပါ',
+    'type' => 'အမျိုးအစား',
+    'clear_filters' => 'စစ်ထုတ်မှုများ ရှင်းလင်းပါ',
+    'total_prefix' => 'စုစုပေါင်း',
+    'book_unit' => 'စာအုပ်များ',
+    'sort' => 'စီစဉ်ပါ',
+    'weekly_picks' => 'အပတ်စဉ်ရွေးချယ်မှုများ',
+    'active_authors' => 'တက်ကြွသော စာရေးဆရာများ',
+    'publisher' => 'ထုတ်ဝေသူ',
+    'pali' => 'ပါဠိ',
+    'book_info' => 'စာအုပ်သတင်းအချက်အလက်',
+    'editor' => 'တည်းဖြတ်သူ',
+    'settings' => 'ဆက်တင်များ',
+    'versions' => 'ဗားရှင်းများ',
+    'logout' => 'ထွက်ရောက်ပါ',
+    'select_version' => 'ဗားရှင်းရွေးချယ်ပါ',
+    'no_content' => 'အကြောင်းအရာမရှိ',
+    'prev_article' => 'ယခင်',
+    'next_article' => 'နောက်',
+    'tags' => 'တက်ဂ်များ',
+    'reading_settings' => 'ဖတ်ရှုမှု ဆက်တင်များ',
+    'show_original' => 'မူရင်းပြသပါ',
+    'toggle_original' => 'မူရင်းစာသားပြသမှု ပြောင်းလဲပါ',
+    'ui_language' => 'အင်တာဖေ့စ် ဘာသာစကား',
+    'auto' => 'အလိုအလျောက်',
+    'lang_zh_hans' => 'တရုတ်ဘာသာ (ရိုးရှင်း)',
+    'lang_en' => 'အင်္ဂလိပ်',
+    'pali_script' => 'ပါဠိစာလုံး',
+    'script_roman' => 'ရောမ',
+    'script_myanmar' => 'မြန်မာ',
+    'script_thai' => 'ထိုင်း',
+    'commentary_version' => 'အနက်ဖြာဗားရှင်း',
+    'none' => 'မရှိ',
+    'cancel' => 'မလုပ်တော့',
+    'confirm' => 'အတည်ပြုပါ',
+    'no_toc' => 'ဤစာအုပ်တွင် မာတိကာမရှိပါ',
+];

+ 134 - 0
api-v13/resources/lang/si/library.php

@@ -0,0 +1,134 @@
+<?php
+
+return [
+    // index.blade.php
+    'portal_title' => 'WikiPāli · පාලි පුස්තකාලය',
+    'portal_hero_title' => 'WikiPāli පාලි පුස්තකාලය',
+    'portal_hero_subtitle' => 'තිපිටකය ගවේෂණය කරන්න · ප්‍රඥාවට දොරටුව',
+    'search_placeholder_home' => 'සූත්‍ර, පද, එකතු සොයන්න…',
+    'section_tipitaka' => 'තිපිටකය',
+    'enter_tipitaka' => 'තිපිටකයට ඇතුළු වන්න',
+    'more' => 'තවත්',
+    'section_recent' => 'මෑත පරිවර්තන',
+    'updating_badge' => 'යාවත්කාලීන වෙමින්',
+    'view_all' => 'සියල්ල බලන්න',
+    'badge_new' => 'නව',
+    'badge_updated' => 'යාවත්කාලීන',
+
+    // search.blade.php
+    'search_results_title' => 'සෙවුම් ප්‍රතිඵල',
+    'search_title' => 'සෙවීම',
+    'search_placeholder' => 'ඇතුළත්කිරීම්, පාලි, සංස්කෘත සොයන්න…',
+    'searching' => 'සොයන්න',
+    'results_found_prefix' => ', සොයාගත්',
+    'results_found_suffix' => 'ප්‍රතිඵල',
+    'page_prefix' => '(පිටුව',
+    'page_suffix' => ')',
+    'no_results' => ', ප්‍රතිඵල හමු නොවීය',
+    'try_other_keywords' => 'කරුණාකර වෙනත් යතුරු පද උත්සාහ කරන්න',
+    'filter_by' => 'පෙරීම: ',
+    'filter' => '',
+    'all' => 'සියල්ල',
+    'did_you_mean' => 'ඔබ අදහස් කළේ',
+    'browse_categories' => 'කාණ්ඩ බලන්න',
+
+    // download.blade.php
+    'download' => 'බාගන්න',
+    'offline_packets' => 'APP නොබැඳි දත්ත පැකේජ',
+    'packet_count_suffix' => 'පැකේජ',
+    'no_packets' => 'පැකේජ නොමැත',
+    'no_packets_desc' => 'නොබැඳි දත්ත පැකේජ නොමැත.',
+    'col_name' => 'පැකේජ නාමය',
+    'col_size' => 'ගොනු ප්‍රමාණය',
+    'col_min_version' => 'අවම අනුවාදය',
+    'created_at' => 'නිර්මිත දිනය',
+    'col_links' => 'බාගත කිරීමේ සබැඳි',
+    'no_links' => 'සබැඳි නොමැත',
+    'min_version_prefix' => 'අවම අනුවාදය ',
+
+    // wiki blade files
+    'wiki_encyclopedia' => 'බෞද්ධ විශ්වකෝෂය',
+    'wiki_subtitle' => 'ධර්මය ගවේෂණය කරන්න · අවබෝධයට දොරටුව',
+    'wiki_search_placeholder' => 'පද, ශාස්ත්‍ර, පුද්ගලයන් සොයන්න...',
+    'hot' => 'ජනප්‍රිය: ',
+    'wiki_language_divider' => 'ඔබේ භාෂාවෙන් බෞද්ධ විශ්වකෝෂය කියවන්න',
+    'articles' => 'ලිපි',
+    'today_updates' => 'අද යාවත්කාලීන',
+    'contributors_suffix' => 'දායකයින්',
+    'today_entry' => 'අදේ ඇතුළත්කිරීම',
+    'read_full_entry' => 'සම්පූර්ණ ඇතුළත්කිරීම කියවන්න →',
+    'featured_entries' => 'විශේෂ ඇතුළත්කිරීම්',
+    'statistics' => 'සංඛ්‍යාලේඛන',
+    'total_entries' => 'සම්පූර්ණ ඇතුළත්කිරීම්',
+    'this_month' => 'මෙම මාසය',
+    'contributors' => 'දායකයින්',
+    'quality_level' => 'ගුණාත්මක මට්ටම',
+    'other_versions' => 'අනෙකුත් අනුවාද',
+    'toc' => 'පටුනය',
+    'entry_info' => 'ඇතුළත්කිරීමේ තොරතුරු',
+    'category' => 'කාණ්ඩය',
+    'quality' => 'ගුණාත්මකභාවය',
+    'recent_updates' => 'මෑත යාවත්කාලීනය',
+
+    // anthology
+    'site_name' => 'පාලි පුස්තකාලය',
+    'home' => 'මුල් පිටුව',
+    'anthology' => 'සංග්‍රහය',
+    'anthology_subtitle' => 'අටුවා · භාවනා මාර්ගෝපදේශ · ධර්ම සාකච්ඡා',
+    'no_anthology' => 'සංග්‍රහ නොමැත',
+    'search_anthology' => 'සංග්‍රහ සොයන්න…',
+    'author' => 'කතුවරයා',
+    'anthology_count_suffix' => 'සංග්‍රහ',
+    'last_updated' => 'අවසන් යාවත්කාලීනය',
+    'chapter_count' => 'පරිච්ඡේද',
+    'chapters' => 'පරිච්ඡේද',
+    'read_online' => 'අන්තර්ජාලයෙන් කියවන්න',
+    'open_in_editor' => 'සංස්කාරකයේ විවෘත කරන්න',
+    'about_anthology' => 'මෙම සංග්‍රහය ගැන',
+    'anthology_info' => 'සංග්‍රහ තොරතුරු',
+    'language' => 'භාෂාව',
+    'created' => 'නිර්මිත',
+    'updated' => 'යාවත්කාලීන',
+    'related_anthology' => 'සම්බන්ධිත සංග්‍රහ',
+    'articles_suffix' => 'ලිපි',
+
+    // tipitaka & reader
+    'tipitaka' => 'තිපිටකය',
+    'categories' => 'කාණ්ඩ',
+    'search_tipitaka' => 'තිපිටක පාඨ හා පරිවර්තන සොයන්න',
+    'type' => 'වර්ගය',
+    'clear_filters' => 'පෙරහන් ඉවත් කරන්න',
+    'total_prefix' => 'සම්පූර්ණ',
+    'book_unit' => 'ග්‍රන්ථ',
+    'sort' => 'වර්ග කරන්න',
+    'weekly_picks' => 'සතිපතා තෝරාගත්',
+    'active_authors' => 'ක්‍රියාකාරී කතුවරුන්',
+    'publisher' => 'ප්‍රකාශකයා',
+    'pali' => 'පාළි',
+    'book_info' => 'ග්‍රන්ථ තොරතුරු',
+    'editor' => 'සංස්කාරකය',
+    'settings' => 'සැකසීම්',
+    'versions' => 'අනුවාද',
+    'logout' => 'ඉවත් වන්න',
+    'select_version' => 'අනුවාදය තෝරන්න',
+    'no_content' => 'අන්තර්ගතය නොමැත',
+    'prev_article' => 'පෙර',
+    'next_article' => 'ඊළඟ',
+    'tags' => 'ටැග්',
+    'reading_settings' => 'කියවීමේ සැකසීම්',
+    'show_original' => 'මූලාශ්‍රය පෙන්වන්න',
+    'toggle_original' => 'මූල පාඨ දර්ශනය ටොගල් කරන්න',
+    'ui_language' => 'UI භාෂාව',
+    'auto' => 'ස්වයංක්‍රීය',
+    'lang_zh_hans' => 'සරල චීන',
+    'lang_en' => 'ඉංග්‍රීසි',
+    'pali_script' => 'පාළි අක්ෂර',
+    'script_roman' => 'රෝමානු',
+    'script_myanmar' => 'මියන්මාර්',
+    'script_thai' => 'තායි',
+    'commentary_version' => 'අටුවා අනුවාදය',
+    'none' => 'කිසිවක් නැත',
+    'cancel' => 'අවලංගු කරන්න',
+    'confirm' => 'හරි',
+    'no_toc' => 'මෙම ග්‍රන්ථයට පටුනයක් නොමැත',
+];

+ 134 - 0
api-v13/resources/lang/th/library.php

@@ -0,0 +1,134 @@
+<?php
+
+return [
+    // index.blade.php
+    'portal_title' => 'WikiPāli · ห้องสมุดบาลี',
+    'portal_hero_title' => 'ห้องสมุดบาลี WikiPāli',
+    'portal_hero_subtitle' => 'สำรวจพระไตรปิฎก · ประตูสู่ปัญญา',
+    'search_placeholder_home' => 'ค้นหาพระสูตร คำศัพท์ หมวดหมู่…',
+    'section_tipitaka' => 'พระไตรปิฎก',
+    'enter_tipitaka' => 'เข้าสู่พระไตรปิฎก',
+    'more' => 'เพิ่มเติม',
+    'section_recent' => 'คำแปลล่าสุด',
+    'updating_badge' => 'กำลังอัปเดต',
+    'view_all' => 'ดูทั้งหมด',
+    'badge_new' => 'ใหม่',
+    'badge_updated' => 'อัปเดตแล้ว',
+
+    // search.blade.php
+    'search_results_title' => 'ผลการค้นหา',
+    'search_title' => 'ค้นหา',
+    'search_placeholder' => 'ค้นหารายการ บาลี สันสกฤต…',
+    'searching' => 'ค้นหา',
+    'results_found_prefix' => ', พบ',
+    'results_found_suffix' => 'ผลลัพธ์',
+    'page_prefix' => '(หน้า',
+    'page_suffix' => ')',
+    'no_results' => ', ไม่พบผลลัพธ์',
+    'try_other_keywords' => 'กรุณาลองคำค้นหาอื่น',
+    'filter_by' => 'กรองตาม ',
+    'filter' => '',
+    'all' => 'ทั้งหมด',
+    'did_you_mean' => 'คุณหมายถึง',
+    'browse_categories' => 'เรียกดูหมวดหมู่',
+
+    // download.blade.php
+    'download' => 'ดาวน์โหลด',
+    'offline_packets' => 'แพ็กเกจข้อมูลออฟไลน์ของแอป',
+    'packet_count_suffix' => 'แพ็กเกจ',
+    'no_packets' => 'ไม่มีแพ็กเกจ',
+    'no_packets_desc' => 'ไม่มีแพ็กเกจข้อมูลออฟไลน์',
+    'col_name' => 'ชื่อแพ็กเกจ',
+    'col_size' => 'ขนาดไฟล์',
+    'col_min_version' => 'เวอร์ชันขั้นต่ำ',
+    'created_at' => 'วันที่สร้าง',
+    'col_links' => 'ลิงก์ดาวน์โหลด',
+    'no_links' => 'ไม่มีลิงก์',
+    'min_version_prefix' => 'เวอร์ชันขั้นต่ำ ',
+
+    // wiki blade files
+    'wiki_encyclopedia' => 'สารานุกรมพุทธศาสนา',
+    'wiki_subtitle' => 'สำรวจธรรมะ · ประตูสู่การตื่นรู้',
+    'wiki_search_placeholder' => 'ค้นหาคำศัพท์ พระคัมภีร์ บุคคล...',
+    'hot' => 'ยอดนิยม: ',
+    'wiki_language_divider' => 'อ่านสารานุกรมพุทธศาสนาในภาษาของคุณ',
+    'articles' => 'บทความ',
+    'today_updates' => 'อัปเดตวันนี้',
+    'contributors_suffix' => 'ผู้มีส่วนร่วม',
+    'today_entry' => 'รายการประจำวันนี้',
+    'read_full_entry' => 'อ่านรายการเต็ม →',
+    'featured_entries' => 'รายการแนะนำ',
+    'statistics' => 'สถิติ',
+    'total_entries' => 'รายการทั้งหมด',
+    'this_month' => 'เดือนนี้',
+    'contributors' => 'ผู้มีส่วนร่วม',
+    'quality_level' => 'ระดับคุณภาพ',
+    'other_versions' => 'เวอร์ชันอื่น',
+    'toc' => 'สารบัญ',
+    'entry_info' => 'ข้อมูลรายการ',
+    'category' => 'หมวดหมู่',
+    'quality' => 'คุณภาพ',
+    'recent_updates' => 'อัปเดตล่าสุด',
+
+    // anthology
+    'site_name' => 'ห้องสมุดบาลี',
+    'home' => 'หน้าหลัก',
+    'anthology' => 'รวมบทความ',
+    'anthology_subtitle' => 'อรรถกถา · คู่มือการปฏิบัติสมาธิ · ธรรมกถา',
+    'no_anthology' => 'ไม่มีรวมบทความ',
+    'search_anthology' => 'ค้นหารวมบทความ…',
+    'author' => 'ผู้แต่ง',
+    'anthology_count_suffix' => 'รวมบทความ',
+    'last_updated' => 'อัปเดตล่าสุด',
+    'chapter_count' => 'บท',
+    'chapters' => 'บท',
+    'read_online' => 'อ่านออนไลน์',
+    'open_in_editor' => 'เปิดในโปรแกรมแก้ไข',
+    'about_anthology' => 'เกี่ยวกับรวมบทความนี้',
+    'anthology_info' => 'ข้อมูลรวมบทความ',
+    'language' => 'ภาษา',
+    'created' => 'วันที่สร้าง',
+    'updated' => 'อัปเดต',
+    'related_anthology' => 'รวมบทความที่เกี่ยวข้อง',
+    'articles_suffix' => 'บทความ',
+
+    // tipitaka & reader
+    'tipitaka' => 'พระไตรปิฎก',
+    'categories' => 'หมวดหมู่',
+    'search_tipitaka' => 'ค้นหาข้อความและคำแปลพระไตรปิฎก',
+    'type' => 'ประเภท',
+    'clear_filters' => 'ล้างตัวกรอง',
+    'total_prefix' => 'ทั้งหมด',
+    'book_unit' => 'เล่ม',
+    'sort' => 'เรียงลำดับ',
+    'weekly_picks' => 'คัดสรรประจำสัปดาห์',
+    'active_authors' => 'ผู้แต่งที่ใช้งานอยู่',
+    'publisher' => 'สำนักพิมพ์',
+    'pali' => 'บาลี',
+    'book_info' => 'ข้อมูลหนังสือ',
+    'editor' => 'บรรณาธิการ',
+    'settings' => 'การตั้งค่า',
+    'versions' => 'เวอร์ชัน',
+    'logout' => 'ออกจากระบบ',
+    'select_version' => 'เลือกเวอร์ชัน',
+    'no_content' => 'ไม่มีเนื้อหา',
+    'prev_article' => 'ก่อนหน้า',
+    'next_article' => 'ถัดไป',
+    'tags' => 'แท็ก',
+    'reading_settings' => 'การตั้งค่าการอ่าน',
+    'show_original' => 'แสดงต้นฉบับ',
+    'toggle_original' => 'สลับการแสดงข้อความต้นฉบับ',
+    'ui_language' => 'ภาษาของอินเทอร์เฟซ',
+    'auto' => 'อัตโนมัติ',
+    'lang_zh_hans' => 'ภาษาจีนตัวย่อ',
+    'lang_en' => 'ภาษาอังกฤษ',
+    'pali_script' => 'อักษรบาลี',
+    'script_roman' => 'โรมัน',
+    'script_myanmar' => 'พม่า',
+    'script_thai' => 'ไทย',
+    'commentary_version' => 'เวอร์ชันอรรถกถา',
+    'none' => 'ไม่มี',
+    'cancel' => 'ยกเลิก',
+    'confirm' => 'ตกลง',
+    'no_toc' => 'หนังสือเล่มนี้ไม่มีสารบัญ',
+];

+ 134 - 0
api-v13/resources/lang/zh-Hans/library.php

@@ -0,0 +1,134 @@
+<?php
+
+return [
+    // index.blade.php
+    'portal_title' => 'WikiPāli · 巴利书库',
+    'portal_hero_title' => 'WikiPāli 巴利书库',
+    'portal_hero_subtitle' => '探索巴利三藏 · 开启智慧之门',
+    'search_placeholder_home' => '搜索经典、词条、文集…',
+    'section_tipitaka' => '巴利三藏',
+    'enter_tipitaka' => '进入三藏',
+    'more' => '更多',
+    'section_recent' => '最新译文',
+    'updating_badge' => '持续更新中',
+    'view_all' => '查看全部',
+    'badge_new' => '新增',
+    'badge_updated' => '更新',
+
+    // search.blade.php
+    'search_results_title' => '的搜索结果',
+    'search_title' => '搜索',
+    'search_placeholder' => '搜索条目、巴利文、梵文…',
+    'searching' => '搜索',
+    'results_found_prefix' => ',共找到',
+    'results_found_suffix' => '条结果',
+    'page_prefix' => '(第',
+    'page_suffix' => '页)',
+    'no_results' => ',未找到相关条目',
+    'try_other_keywords' => '请尝试其他关键词',
+    'filter_by' => '按',
+    'filter' => '筛选',
+    'all' => '全部',
+    'did_you_mean' => '你可能在找',
+    'browse_categories' => '分类浏览',
+
+    // download.blade.php
+    'download' => '下载',
+    'offline_packets' => 'APP 离线数据包',
+    'packet_count_suffix' => '个数据包',
+    'no_packets' => '暂无数据包',
+    'no_packets_desc' => '当前没有可用的离线数据包。',
+    'col_name' => '数据包名称',
+    'col_size' => '文件大小',
+    'col_min_version' => '最低版本',
+    'created_at' => '创建时间',
+    'col_links' => '下载链接',
+    'no_links' => '暂无链接',
+    'min_version_prefix' => '最低版本 ',
+
+    // wiki blade files
+    'wiki_encyclopedia' => '佛教百科',
+    'wiki_subtitle' => '探索佛法智慧 · 开启觉悟之门',
+    'wiki_search_placeholder' => '搜索佛法词条、经典、人物...',
+    'hot' => '热门:',
+    'wiki_language_divider' => '以您的语言阅读佛教百科',
+    'articles' => '词条',
+    'today_updates' => '今日更新',
+    'contributors_suffix' => '位贡献者',
+    'today_entry' => '今日条目',
+    'read_full_entry' => '阅读完整条目 →',
+    'featured_entries' => '精选条目',
+    'statistics' => '统计',
+    'total_entries' => '条目总数',
+    'this_month' => '本月新增',
+    'contributors' => '贡献者',
+    'quality_level' => '质量等级',
+    'other_versions' => '其他版本',
+    'toc' => '目录',
+    'entry_info' => '条目信息',
+    'category' => '分类',
+    'quality' => '质量',
+    'recent_updates' => '最近更新',
+
+    // anthology
+    'site_name' => '巴利书库',
+    'home' => '首页',
+    'anthology' => '文集',
+    'anthology_subtitle' => '经论注疏 · 禅修指引 · 法义探讨',
+    'no_anthology' => '暂无文集',
+    'search_anthology' => '搜索文集…',
+    'author' => '作者',
+    'anthology_count_suffix' => '篇文集',
+    'last_updated' => '最后更新',
+    'chapter_count' => '章节数',
+    'chapters' => '章节',
+    'read_online' => '在线阅读',
+    'open_in_editor' => '在编辑器中打开',
+    'about_anthology' => '关于本文集',
+    'anthology_info' => '文集信息',
+    'language' => '语言',
+    'created' => '创建',
+    'updated' => '更新',
+    'related_anthology' => '相关文集',
+    'articles_suffix' => '篇文章',
+
+    // tipitaka & reader
+    'tipitaka' => '三藏',
+    'categories' => '分类',
+    'search_tipitaka' => '搜索三藏原文译文',
+    'type' => '类型',
+    'clear_filters' => '清除过滤器',
+    'total_prefix' => '共',
+    'book_unit' => '本',
+    'sort' => '排序',
+    'weekly_picks' => '本周推荐',
+    'active_authors' => '活跃译者',
+    'publisher' => '出版',
+    'pali' => '巴利语',
+    'book_info' => '书籍信息',
+    'editor' => '编辑器',
+    'settings' => '设置',
+    'versions' => '版本',
+    'logout' => '退出',
+    'select_version' => '选择版本',
+    'no_content' => '没有内容',
+    'prev_article' => '上一篇',
+    'next_article' => '下一篇',
+    'tags' => '标签',
+    'reading_settings' => '阅读设置',
+    'show_original' => '显示原文',
+    'toggle_original' => '开启/关闭原文显示',
+    'ui_language' => '界面语言',
+    'auto' => '自动',
+    'lang_zh_hans' => '简体中文',
+    'lang_en' => '英文',
+    'pali_script' => '巴利语脚本',
+    'script_roman' => '罗马',
+    'script_myanmar' => '缅文',
+    'script_thai' => '泰文',
+    'commentary_version' => '注疏版本',
+    'none' => '不显示',
+    'cancel' => '取消',
+    'confirm' => '确定',
+    'no_toc' => '此书没有目录',
+];

+ 134 - 0
api-v13/resources/lang/zh-Hant/library.php

@@ -0,0 +1,134 @@
+<?php
+
+return [
+    // index.blade.php
+    'portal_title' => 'WikiPāli · 巴利文藏經庫',
+    'portal_hero_title' => 'WikiPāli 巴利文藏經庫',
+    'portal_hero_subtitle' => '探索三藏 · 通往智慧之門',
+    'search_placeholder_home' => '搜尋經典、術語、集合…',
+    'section_tipitaka' => '三藏',
+    'enter_tipitaka' => '進入三藏',
+    'more' => '更多',
+    'section_recent' => '最新譯文',
+    'updating_badge' => '更新中',
+    'view_all' => '查看全部',
+    'badge_new' => '新增',
+    'badge_updated' => '已更新',
+
+    // search.blade.php
+    'search_results_title' => '搜尋結果',
+    'search_title' => '搜尋',
+    'search_placeholder' => '搜尋詞條、巴利文、梵文…',
+    'searching' => '搜尋',
+    'results_found_prefix' => ',找到',
+    'results_found_suffix' => '筆結果',
+    'page_prefix' => '(第',
+    'page_suffix' => '頁)',
+    'no_results' => ',未找到相關結果',
+    'try_other_keywords' => '請嘗試其他關鍵字',
+    'filter_by' => '篩選:',
+    'filter' => '',
+    'all' => '全部',
+    'did_you_mean' => '您是否要搜尋',
+    'browse_categories' => '瀏覽分類',
+
+    // download.blade.php
+    'download' => '下載',
+    'offline_packets' => 'APP 離線資料包',
+    'packet_count_suffix' => '個資料包',
+    'no_packets' => '無資料包',
+    'no_packets_desc' => '目前沒有可用的離線資料包。',
+    'col_name' => '資料包名稱',
+    'col_size' => '檔案大小',
+    'col_min_version' => '最低版本',
+    'created_at' => '建立時間',
+    'col_links' => '下載連結',
+    'no_links' => '無連結',
+    'min_version_prefix' => '最低版本 ',
+
+    // wiki blade files
+    'wiki_encyclopedia' => '佛教百科全書',
+    'wiki_subtitle' => '探索佛法 · 通往覺悟之門',
+    'wiki_search_placeholder' => '搜尋術語、經典、人物…',
+    'hot' => '熱門:',
+    'wiki_language_divider' => '以您的語言閱讀佛教百科全書',
+    'articles' => '篇文章',
+    'today_updates' => '今日更新',
+    'contributors_suffix' => '位貢獻者',
+    'today_entry' => '今日詞條',
+    'read_full_entry' => '閱讀完整詞條 →',
+    'featured_entries' => '精選詞條',
+    'statistics' => '統計資料',
+    'total_entries' => '詞條總數',
+    'this_month' => '本月',
+    'contributors' => '貢獻者',
+    'quality_level' => '品質等級',
+    'other_versions' => '其他版本',
+    'toc' => '目錄',
+    'entry_info' => '詞條資訊',
+    'category' => '分類',
+    'quality' => '品質',
+    'recent_updates' => '最近更新',
+
+    // anthology
+    'site_name' => '巴利文藏經庫',
+    'home' => '首頁',
+    'anthology' => '文集',
+    'anthology_subtitle' => '注疏 · 禪修指引 · 佛法論述',
+    'no_anthology' => '無文集',
+    'search_anthology' => '搜尋文集…',
+    'author' => '作者',
+    'anthology_count_suffix' => '部文集',
+    'last_updated' => '最後更新',
+    'chapter_count' => '章節數',
+    'chapters' => '章',
+    'read_online' => '線上閱讀',
+    'open_in_editor' => '在編輯器中開啟',
+    'about_anthology' => '關於此文集',
+    'anthology_info' => '文集資訊',
+    'language' => '語言',
+    'created' => '建立時間',
+    'updated' => '更新時間',
+    'related_anthology' => '相關文集',
+    'articles_suffix' => '篇文章',
+
+    // tipitaka & reader
+    'tipitaka' => '三藏',
+    'categories' => '分類',
+    'search_tipitaka' => '搜尋三藏原文與譯文',
+    'type' => '類型',
+    'clear_filters' => '清除篩選',
+    'total_prefix' => '共',
+    'book_unit' => '部',
+    'sort' => '排序',
+    'weekly_picks' => '本週精選',
+    'active_authors' => '活躍譯者',
+    'publisher' => '出版者',
+    'pali' => '巴利文',
+    'book_info' => '書籍資訊',
+    'editor' => '編輯',
+    'settings' => '設定',
+    'versions' => '版本',
+    'logout' => '登出',
+    'select_version' => '選擇版本',
+    'no_content' => '無內容',
+    'prev_article' => '上一篇',
+    'next_article' => '下一篇',
+    'tags' => '標籤',
+    'reading_settings' => '閱讀設定',
+    'show_original' => '顯示原文',
+    'toggle_original' => '切換原文顯示',
+    'ui_language' => '介面語言',
+    'auto' => '自動',
+    'lang_zh_hans' => '簡體中文',
+    'lang_en' => '英文',
+    'pali_script' => '巴利文字體',
+    'script_roman' => '羅馬字',
+    'script_myanmar' => '緬甸文',
+    'script_thai' => '泰文',
+    'commentary_version' => '注疏版本',
+    'none' => '無',
+    'cancel' => '取消',
+    'confirm' => '確定',
+    'no_toc' => '本書無目錄',
+];

+ 9 - 9
api-v13/resources/views/library/anthology/index.blade.php

@@ -1,7 +1,7 @@
 {{-- resources/views/library/anthology/index.blade.php --}}
 @extends('layouts.library')
 
-@section('title', '文集 · 巴利书库')
+@section('title', __('library.anthology') . ' · ' . __('library.site_name'))
 
 @push('styles')
 @vite('resources/css/modules/anthology.css')
@@ -9,16 +9,16 @@
 
 @section('breadcrumb')
 <li class="breadcrumb-item">
-    <a href="{{ route('library.home') }}">首页</a>
+    <a href="{{ route('library.home') }}">{{ __('library.home') }}</a>
 </li>
-<li class="breadcrumb-item active">文集</li>
+<li class="breadcrumb-item active">{{ __('library.anthology') }}</li>
 @endsection
 
 @section('hero')
 <div class="anthology-page-header">
     <div class="container-xl">
-        <h1>文集 <span class="result-badge">{{ $total }}</span></h1>
-        <p>经论注疏 · 禅修指引 · 法义探讨</p>
+        <h1>{{ __('library.anthology') }} <span class="result-badge">{{ $total }}</span></h1>
+        <p>{{ __('library.anthology_subtitle') }}</p>
     </div>
 </div>
 @endsection
@@ -37,7 +37,7 @@
                     :href="route('library.anthology.show', $item['id'])" />
                 @empty
                 <div class="wiki-card">
-                    <x-ui.empty-state title="暂无文集" />
+                    <x-ui.empty-state :title="__('library.no_anthology')" />
                 </div>
                 @endforelse
 
@@ -55,14 +55,14 @@
                 <div class="sb-card" style="padding: .85rem 1.1rem; margin-bottom: 1.1rem;">
                     <x-ui.search-input
                         :action="route('library.search')"
-                        placeholder="搜索文集…"
+                        :placeholder="__('library.search_anthology')"
                         :hidden-fields="['resource_type' => 'anthology']" />
                 </div>
 
                 {{-- 作者列表 --}}
                 @if(!empty($authors))
                 <div class="sb-card">
-                    <div class="sb-head">作者</div>
+                    <div class="sb-head">{{ __('library.author') }}</div>
                     <ul class="author-ul">
                         @foreach($authors as $author)
                         <li>
@@ -72,7 +72,7 @@
                                     :color="$author['color']"
                                     :initials="$author['initials']"
                                     :name="$author['name']"
-                                    :sub="$author['count'] . ' 篇文集'"
+                                    :sub="$author['count'] . ' ' . __('library.anthology_count_suffix')"
                                     size="md" />
                             </a>
                         </li>

+ 24 - 24
api-v13/resources/views/library/anthology/show.blade.php

@@ -1,7 +1,7 @@
 {{-- resources/views/library/anthology/show.blade.php --}}
 @extends('layouts.library')
 
-@section('title', $anthology['title'] . ' · 巴利书库')
+@section('title', $anthology['title'] . ' · ' . __('library.site_name'))
 
 @push('styles')
 @vite('resources/css/modules/anthology.css')
@@ -9,10 +9,10 @@
 
 @section('breadcrumb')
 <li class="breadcrumb-item">
-    <a href="{{ route('library.home') }}">首页</a>
+    <a href="{{ route('library.home') }}">{{ __('library.home') }}</a>
 </li>
 <li class="breadcrumb-item">
-    <a href="{{ route('library.anthology.index') }}">文集</a>
+    <a href="{{ route('library.anthology.index') }}">{{ __('library.anthology') }}</a>
 </li>
 <li class="breadcrumb-item active">{{ $anthology['title'] }}</li>
 @endsection
@@ -56,25 +56,25 @@
                             :name="$anthology['author']['name']"
                             size="sm" />
                         <div>
-                            <span class="hi-label">作者</span>
+                            <span class="hi-label">{{ __('library.author') }}</span>
                             <span class="hi-value">{{ $anthology['author']['name'] }}</span>
                         </div>
                     </div>
                     <div class="hi-item">
                         <div>
-                            <span class="hi-label">最后更新</span>
+                            <span class="hi-label">{{ __('library.last_updated') }}</span>
                             <span class="hi-value">{{ $anthology['updated_at'] }}</span>
                         </div>
                     </div>
                     <div class="hi-item">
                         <div>
-                            <span class="hi-label">章节数</span>
-                            <span class="hi-value">{{ $anthology['children_number'] }} 章节</span>
+                            <span class="hi-label">{{ __('library.chapter_count') }}</span>
+                            <span class="hi-value">{{ $anthology['children_number'] }} {{ __('library.chapters') }}</span>
                         </div>
                     </div>
                     <div class="hi-item">
                         <div>
-                            <span class="hi-label">创建时间</span>
+                            <span class="hi-label">{{ __('library.created_at') }}</span>
                             <span class="hi-value">{{ $anthology['created_at'] }}</span>
                         </div>
                     </div>
@@ -92,13 +92,13 @@
                         ]) }}"
                         class="btn-read-primary">
                         <i class="ti ti-book-2"></i>
-                        在线阅读
+                        {{ __('library.read_online') }}
                     </a>
                     @endif
                     <a href="{{ config('mint.server.dashboard_base_path') }}/workspace/anthology/{{ $anthology['id'] }}"
                         class="btn-outline-hero">
                         <i class="ti ti-pencil"></i>
-                        在编辑器中打开
+                        {{ __('library.open_in_editor') }}
                     </a>
                 </div>
             </div>
@@ -121,7 +121,7 @@
                 <div class="sec-card">
                     <div class="sec-header">
                         <div class="sec-bar"></div>
-                        <div class="sec-title">关于本文集</div>
+                        <div class="sec-title">{{ __('library.about_anthology') }}</div>
                     </div>
                     <div class="sec-body">
                         @foreach(explode("\n", $anthology['about']) as $para)
@@ -137,8 +137,8 @@
                 <div class="sec-card">
                     <div class="sec-header">
                         <div class="sec-bar"></div>
-                        <div class="sec-title">目录</div>
-                        <div class="sec-count">{{ $anthology['children_number'] }} 章节</div>
+                        <div class="sec-title">{{ __('library.toc') }}</div>
+                        <div class="sec-count">{{ $anthology['children_number'] }} {{ __('library.chapters') }}</div>
                     </div>
                     <ul class="toc-ul">
                         @foreach($anthology['articles'] as $article)
@@ -163,34 +163,34 @@
 
                 {{-- 文集信息 --}}
                 <div class="sb-card">
-                    <div class="sb-head">文集信息</div>
+                    <div class="sb-head">{{ __('library.anthology_info') }}</div>
                     <div class="smeta-row">
-                        <span class="smeta-label">作者</span>
+                        <span class="smeta-label">{{ __('library.author') }}</span>
                         <span class="smeta-value">
                             <a href="#">{{ $anthology['author']['name'] }}</a>
                         </span>
                     </div>
                     @if(!empty($anthology['language']))
                     <div class="smeta-row">
-                        <span class="smeta-label">语言</span>
+                        <span class="smeta-label">{{ __('library.language') }}</span>
                         <span class="smeta-value">{{ $anthology['language'] }}</span>
                     </div>
                     @endif
                     <div class="smeta-row">
-                        <span class="smeta-label">章节</span>
-                        <span class="smeta-value">{{ $anthology['children_number'] }} 章节</span>
+                        <span class="smeta-label">{{ __('library.chapters') }}</span>
+                        <span class="smeta-value">{{ $anthology['children_number'] }} {{ __('library.chapters') }}</span>
                     </div>
                     <div class="smeta-row">
-                        <span class="smeta-label">创建</span>
+                        <span class="smeta-label">{{ __('library.created') }}</span>
                         <span class="smeta-value">{{ $anthology['created_at'] }}</span>
                     </div>
                     <div class="smeta-row">
-                        <span class="smeta-label">更新</span>
+                        <span class="smeta-label">{{ __('library.updated') }}</span>
                         <span class="smeta-value">{{ $anthology['updated_at'] }}</span>
                     </div>
                     @if(!empty($anthology['category']))
                     <div class="smeta-row">
-                        <span class="smeta-label">分类</span>
+                        <span class="smeta-label">{{ __('library.category') }}</span>
                         <span class="smeta-value">{{ $anthology['category'] }}</span>
                     </div>
                     @endif
@@ -198,7 +198,7 @@
 
                 {{-- 作者 --}}
                 <div class="sb-card">
-                    <div class="sb-head">作者</div>
+                    <div class="sb-head">{{ __('library.author') }}</div>
                     <div class="author-block">
                         <x-ui.author-avatar
                             :avatar="$anthology['author']['avatar'] ?? null"
@@ -209,7 +209,7 @@
                             <div class="author-block-name">{{ $anthology['author']['name'] }}</div>
                             <div class="author-block-stats">
                                 @if($anthology['author']['article_count'])
-                                {{ $anthology['author']['article_count'] }} 篇文章
+                                {{ $anthology['author']['article_count'] }} {{ __('library.articles_suffix') }}
                                 @endif
                             </div>
                         </div>
@@ -222,7 +222,7 @@
                 {{-- 相关文集 --}}
                 @if($related->count())
                 <div class="sb-card">
-                    <div class="sb-head">相关文集</div>
+                    <div class="sb-head">{{ __('library.related_anthology') }}</div>
                     <ul class="related-ul">
                         @foreach($related as $rel)
                         <li>

+ 29 - 29
api-v13/resources/views/library/book/read.blade.php

@@ -47,7 +47,7 @@
             <div class="nav-item me-2">
                 <a href="{{ $editor_link }}" target="_blank" class="nav-link">
                     <i class="ti ti-pencil me-1 d-none d-md-inline"></i>
-                    <span class="d-none d-md-inline">编辑器</span>
+                    <span class="d-none d-md-inline">{{ __('library.editor') }}</span>
                     <i class="ti ti-pencil d-md-none"></i>
                 </a>
             </div>
@@ -60,7 +60,7 @@
                     data-bs-toggle="modal"
                     data-bs-target="#settingsModal">
                     <i class="ti ti-settings me-1 d-none d-md-inline"></i>
-                    <span class="d-none d-md-inline">设置</span>
+                    <span class="d-none d-md-inline">{{ __('library.settings') }}</span>
                     <i class="ti ti-settings d-md-none"></i>
                 </a>
             </div>
@@ -72,7 +72,7 @@
                     data-bs-toggle="offcanvas"
                     data-bs-target="#channelDrawer">
                     <i class="ti ti-stack-2 me-1 d-none d-md-inline"></i>
-                    <span class="d-none d-md-inline">版本</span>
+                    <span class="d-none d-md-inline">{{ __('library.versions') }}</span>
                     <i class="ti ti-stack-2 d-md-none"></i>
                 </a>
             </div>
@@ -94,7 +94,7 @@
                     </span>
                 </a>
                 <div class="dropdown-menu dropdown-menu-end">
-                    <a class="dropdown-item" href="{{ route('logout') }}">退出</a>
+                    <a class="dropdown-item" href="{{ route('logout') }}">{{ __('library.logout') }}</a>
                 </div>
             </div>
             @endauth
@@ -107,7 +107,7 @@
 @if(!empty($channels))
 <div class="offcanvas offcanvas-end" tabindex="-1" id="channelDrawer">
     <div class="offcanvas-header">
-        <h5 class="offcanvas-title">选择版本</h5>
+        <h5 class="offcanvas-title">{{ __('library.select_version') }}</h5>
         <button type="button" class="btn-close" data-bs-dismiss="offcanvas"></button>
     </div>
     <div class="offcanvas-body">
@@ -135,7 +135,7 @@
 {{-- TOC Offcanvas(mobile) --}}
 <div class="offcanvas offcanvas-start" tabindex="-1" id="tocDrawer">
     <div class="offcanvas-header">
-        <h5 class="offcanvas-title">目录</h5>
+        <h5 class="offcanvas-title">{{ __('library.toc') }}</h5>
         <button type="button" class="btn-close" data-bs-dismiss="offcanvas"></button>
     </div>
     <div class="offcanvas-body">
@@ -150,7 +150,7 @@
         {{-- TOC 侧边栏(tablet+) --}}
         <div class="toc-sidebar card">
             <div class="card-body">
-                <h5>目录</h5>
+                <h5>{{ __('library.toc') }}</h5>
                 @include('library.book.toc', ['toc' => $book['toc'] ?? []])
             </div>
         </div>
@@ -161,7 +161,7 @@
 
                 <h2>{{ $book['title'] }}</h2>
                 <p>
-                    <strong>作者:</strong>
+                    <strong>{{ __('library.author') }}:</strong>
                     {{ $book['author'] }}
                     @if(isset($book['publisher']))
                     @ <a href="{{ route('blog.index', ['user' => $book['publisher']->username]) }}">
@@ -175,7 +175,7 @@
                     @if(isset($book['content']))
                     {!! $book['content'] !!}
                     @else
-                    <div>没有内容</div>
+                    <div>{{ __('library.no_content') }}</div>
                     @endif
                 </article>
 
@@ -194,7 +194,7 @@
                                         </svg>
                                     </div>
                                     <div class="col">
-                                        <div class="page-item-subtitle">上一篇</div>
+                                        <div class="page-item-subtitle">{{ __('library.prev_article') }}</div>
                                         <div class="page-item-title">{{ $book['pagination']['prev']['title'] }}</div>
                                     </div>
                                 </div>
@@ -208,7 +208,7 @@
                             : route('library.tipitaka.read', ['id' => $book['pagination']['next']['id'], 'channel' => request('channel')]) }}">
                                 <div class="row align-items-center">
                                     <div class="col">
-                                        <div class="page-item-subtitle">下一篇</div>
+                                        <div class="page-item-subtitle">{{ __('library.next_article') }}</div>
                                         <div class="page-item-title">{{ $book['pagination']['next']['title'] }}</div>
                                     </div>
                                     <div class="col-auto">
@@ -234,7 +234,7 @@
             {{-- 下载 --}}
             @if(!empty($book['downloads']))
             <div class="reader-channel-card">
-                <div class="reader-channel-title">下载</div>
+                <div class="reader-channel-title">{{ __('library.download') }}</div>
                 <ul class="list-unstyled mb-0">
                     @foreach ($book['downloads'] as $download)
                     <li>
@@ -250,7 +250,7 @@
             {{-- 标签 --}}
             @if(!empty($book['tags']))
             <div class="reader-channel-card">
-                <div class="reader-channel-title">标签</div>
+                <div class="reader-channel-title">{{ __('library.tags') }}</div>
                 @foreach ($book['tags'] as $tag)
                 <span class="badge me-1">{{ $tag['name'] }}</span>
                 @endforeach
@@ -267,39 +267,39 @@
     <div class="modal-dialog">
         <form id="settingsForm" class="modal-content">
             <div class="modal-header">
-                <h5 class="modal-title">阅读设置</h5>
+                <h5 class="modal-title">{{ __('library.reading_settings') }}</h5>
                 <button type="button" class="btn-close" data-bs-dismiss="modal"></button>
             </div>
             <div class="modal-body">
                 <div class="mb-4">
-                    <label class="form-label">显示原文</label>
+                    <label class="form-label">{{ __('library.show_original') }}</label>
                     <label class="form-check form-switch">
                         <input class="form-check-input" type="checkbox" id="showOrigin">
-                        <span class="form-check-label">开启/关闭原文显示</span>
+                        <span class="form-check-label">{{ __('library.toggle_original') }}</span>
                     </label>
                 </div>
                 <div class="mb-4">
-                    <label class="form-label">界面语言</label>
+                    <label class="form-label">{{ __('library.ui_language') }}</label>
                     <select class="form-select" id="uiLanguage">
-                        <option value="auto">自动</option>
-                        <option value="zh">简体中文</option>
-                        <option value="en">英文</option>
+                        <option value="auto">{{ __('library.auto') }}</option>
+                        <option value="zh">{{ __('library.lang_zh_hans') }}</option>
+                        <option value="en">{{ __('library.lang_en') }}</option>
                     </select>
                 </div>
                 <div class="mb-4">
-                    <label class="form-label">巴利语脚本</label>
+                    <label class="form-label">{{ __('library.pali_script') }}</label>
                     <select class="form-select" id="paliScript">
-                        <option value="auto">自动</option>
-                        <option value="roman">罗马</option>
-                        <option value="myanmar">缅文</option>
-                        <option value="thai">泰文</option>
+                        <option value="auto">{{ __('library.auto') }}</option>
+                        <option value="roman">{{ __('library.script_roman') }}</option>
+                        <option value="myanmar">{{ __('library.script_myanmar') }}</option>
+                        <option value="thai">{{ __('library.script_thai') }}</option>
                     </select>
                 </div>
                 @isset($commentaryChannels)
                 <div class="mb-4">
-                    <label class="form-label">注疏版本</label>
+                    <label class="form-label">{{ __('library.commentary_version') }}</label>
                     <select class="form-select" id="commentary">
-                        <option value="none">不显示</option>
+                        <option value="none">{{ __('library.none') }}</option>
                         @foreach($commentaryChannels as $channel)
                         <option value="{{ $channel['id'] }}">{{ $channel['name'] }}</option>
                         @endforeach
@@ -308,8 +308,8 @@
                 @endisset
             </div>
             <div class="modal-footer">
-                <button type="button" class="btn btn-link" data-bs-dismiss="modal">取消</button>
-                <button type="submit" class="btn btn-primary">确定</button>
+                <button type="button" class="btn btn-link" data-bs-dismiss="modal">{{ __('library.cancel') }}</button>
+                <button type="submit" class="btn btn-primary">{{ __('library.confirm') }}</button>
             </div>
         </form>
     </div>

+ 1 - 1
api-v13/resources/views/library/book/toc.blade.php

@@ -24,5 +24,5 @@
     @endforeach
 </ul>
 @else
-<div class="alert alert-warning">此书没有目录</div>
+<div class="alert alert-warning">{{ __('library.no_toc') }}</div>
 @endif

+ 15 - 15
api-v13/resources/views/library/download.blade.php

@@ -8,11 +8,11 @@
         <div class="page-header d-print-none">
             <div class="row align-items-center">
                 <div class="col">
-                    <h2 class="page-title">下载</h2>
-                    <div class="text-muted mt-1">APP 离线数据包</div>
+                    <h2 class="page-title">{{ __('library.download') }}</h2>
+                    <div class="text-muted mt-1">{{ __('library.offline_packets') }}</div>
                 </div>
                 <div class="col-auto ms-auto">
-                    <span class="badge bg-blue-lt fs-6">{{ count($packets) }} 个数据包</span>
+                    <span class="badge bg-blue-lt fs-6">{{ count($packets) }} {{ __('library.packet_count_suffix') }}</span>
                 </div>
             </div>
         </div>
@@ -26,7 +26,7 @@
                         <path d="M5 8v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-10" />
                         <path d="M10 12l2 2l2 -2" />
                     </svg>
-                    离线数据包
+                    {{ __('library.offline_packets') }}
                 </h3>
             </div>
 
@@ -50,8 +50,8 @@
                             <path d="M3 3l18 18" />
                         </svg>
                     </div>
-                    <p class="empty-title">暂无数据包</p>
-                    <p class="empty-subtitle text-muted">当前没有可用的离线数据包。</p>
+                    <p class="empty-title">{{ __('library.no_packets') }}</p>
+                    <p class="empty-subtitle text-muted">{{ __('library.no_packets_desc') }}</p>
                 </div>
             </div>
 
@@ -64,11 +64,11 @@
                 <table class="table table-vcenter card-table table-hover">
                     <thead>
                         <tr>
-                            <th>数据包名称</th>
-                            <th class="text-center" style="width:90px">文件大小</th>
-                            <th class="text-center" style="width:90px">最低版本</th>
-                            <th class="text-center" style="width:160px">创建时间</th>
-                            <th style="min-width:240px">下载链接</th>
+                            <th>{{ __('library.col_name') }}</th>
+                            <th class="text-center" style="width:90px">{{ __('library.col_size') }}</th>
+                            <th class="text-center" style="width:90px">{{ __('library.col_min_version') }}</th>
+                            <th class="text-center" style="width:160px">{{ __('library.created_at') }}</th>
+                            <th style="min-width:240px">{{ __('library.col_links') }}</th>
                         </tr>
                     </thead>
                     <tbody>
@@ -133,12 +133,12 @@
                                             <path d="M7 11l5 5l5 -5" />
                                             <path d="M12 4l0 12" />
                                         </svg>
-                                        {{ $urlItem['hostname'] ?? '下载' }}
+                                        {{ $urlItem['hostname'] ?? __('library.download') }}
                                     </a>
                                     @endforeach
                                 </div>
                                 @else
-                                <span class="text-muted">暂无链接</span>
+                                <span class="text-muted">{{ __('library.no_links') }}</span>
                                 @endif
                             </td>
                         </tr>
@@ -197,7 +197,7 @@
                             </span>
                             @if(!empty($packet['min_app_ver']))
                             <span class="badge bg-lime-lt text-lime">
-                                最低版本 v{{ $packet['min_app_ver'] }}
+                                {{ __('library.min_version_prefix') }}v{{ $packet['min_app_ver'] }}
                             </span>
                             @endif
                         </div>
@@ -215,7 +215,7 @@
                                     <path d="M7 11l5 5l5 -5" />
                                     <path d="M12 4l0 12" />
                                 </svg>
-                                {{ $urlItem['hostname'] ?? '下载' }}
+                                {{ $urlItem['hostname'] ?? __('library.download') }}
                             </a>
                             @endforeach
                         </div>

+ 12 - 12
api-v13/resources/views/library/index.blade.php

@@ -4,7 +4,7 @@
 --}}
 @extends('layouts.library')
 
-@section('title', 'WikiPāli · 巴利书库')
+@section('title', __('library.portal_title'))
 
 @push('styles')
 @vite('resources/css/modules/library-index.css')
@@ -16,12 +16,12 @@
     style="background-image: url('{{ URL::asset('assets/images/hero-2.jpg') }}')">
     <div class="hero-overlay"></div>
     <div class="hero-content">
-        <h1 class="hero-title">WikiPāli 巴利书库</h1>
-        <p class="hero-subtitle">探索巴利三藏 · 开启智慧之门</p>
+        <h1 class="hero-title">{{ __('library.portal_hero_title') }}</h1>
+        <p class="hero-subtitle">{{ __('library.portal_hero_subtitle') }}</p>
         <div class="search-box">
             <x-ui.search-input
                 :action="route('library.search')"
-                placeholder="搜索经典、词条、文集…"
+                :placeholder="__('library.search_placeholder_home')"
                 size="lg" />
         </div>
     </div>
@@ -37,11 +37,11 @@
             <div class="lib-section__header">
                 <h2 class="lib-section__title">
                     <i class="ti ti-books"></i>
-                    巴利三藏
+                    {{ __('library.section_tipitaka') }}
                 </h2>
                 <a href="{{ route('library.tipitaka.index') }}"
                     class="lib-section__more">
-                    进入三藏 <i class="ti ti-arrow-right"></i>
+                    {{ __('library.enter_tipitaka') }} <i class="ti ti-arrow-right"></i>
                 </a>
             </div>
 
@@ -55,7 +55,7 @@
                             </span>
                             <a href="{{ route('library.tipitaka.category', ['id' => $data['category']['id']]) }}"
                                 class="lib-cat-card__more">
-                                更多 <i class="ti ti-arrow-right"></i>
+                                {{ __('library.more') }} <i class="ti ti-arrow-right"></i>
                             </a>
                         </div>
                         <ul class="wiki-cat-list">
@@ -79,15 +79,15 @@
             <div class="lib-section__header">
                 <h2 class="lib-section__title">
                     <i class="ti ti-clock"></i>
-                    最新译文
+                    {{ __('library.section_recent') }}
                     <span class="lib-live-badge">
                         <span class="lib-live-dot"></span>
-                        持续更新中
+                        {{ __('library.updating_badge') }}
                     </span>
                 </h2>
                 <a href="{{ route('library.tipitaka.index') }}"
                     class="lib-section__more">
-                    查看全部 <i class="ti ti-arrow-right"></i>
+                    {{ __('library.view_all') }} <i class="ti ti-arrow-right"></i>
                 </a>
             </div>
 
@@ -117,9 +117,9 @@
                     {{-- 右侧:标签 + 时间 --}}
                     <div class="lib-recent__right">
                         @if($book['is_new'])
-                        <span class="lib-new-badge">新增</span>
+                        <span class="lib-new-badge">{{ __('library.badge_new') }}</span>
                         @else
-                        <span class="lib-update-badge">更新</span>
+                        <span class="lib-update-badge">{{ __('library.badge_updated') }}</span>
                         @endif
                         <span class="lib-recent__time">{{ $book['updated_at'] }}</span>
                     </div>

+ 1 - 1
api-v13/resources/views/library/layouts/app.blade.php

@@ -6,7 +6,7 @@
     <meta charset="utf-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover" />
     <meta http-equiv="X-UA-Compatible" content="ie=edge" />
-    <title>@yield('title', '巴利书库')</title>
+    <title>@yield('title', __('library.site_name'))</title>
     @stack('styles')
 
     @vite(['resources/js/app.js'])

+ 13 - 13
api-v13/resources/views/library/search.blade.php

@@ -7,7 +7,7 @@
 @extends('library.wiki.layouts.app')
 
 
-@section('title', $query ? '"' . $query . '" 的搜索结果 · WikiPāli' : '搜索 · WikiPāli')
+@section('title', $query ? '"' . $query . '" ' . __('library.search_results_title') . ' · WikiPāli' : __('library.search_title') . ' · WikiPāli')
 
 @section('wiki-content')
 
@@ -16,7 +16,7 @@
     <x-ui.search-input
         :action="route('library.search')"
         :value="$query"
-        placeholder="搜索条目、巴利文、梵文…"
+        :placeholder="__('library.search_placeholder')"
         :autofocus="true"
         :hidden-fields="array_filter(['category' => $category !== 'all' ? $category : null])" />
 </div>
@@ -24,14 +24,14 @@
 {{-- 结果摘要 --}}
 <div class="wiki-search-summary">
     @if ($query)
-    搜索 <strong>「{{ $query }}」</strong>
+    {{ __('library.searching') }} <strong>「{{ $query }}」</strong>
     @if ($pagination['total'] > 0)
-    ,共找到 <strong>{{ $pagination['total'] }}</strong> 条结果
+    {{ __('library.results_found_prefix') }} <strong>{{ $pagination['total'] }}</strong> {{ __('library.results_found_suffix') }}
     @if ($pagination['last_page'] > 1)
-    (第 {{ $pagination['current_page'] }} / {{ $pagination['last_page'] }} 页)
+    {{ __('library.page_prefix') }} {{ $pagination['current_page'] }} / {{ $pagination['last_page'] }} {{ __('library.page_suffix') }}
     @endif
     @else
-    ,未找到相关条目
+    {{ __('library.no_results') }}
     @endif
     @endif
 </div>
@@ -61,8 +61,8 @@
 
 <div class="wiki-card">
     <x-ui.empty-state
-        title="未找到相关条目"
-        desc="请尝试其他关键词" />
+        :title="__('library.no_results')"
+        :desc="__('library.try_other_keywords')" />
 </div>
 
 @endif
@@ -75,12 +75,12 @@
 @isset($filters)
 @foreach ($filters as $key=>$filter)
 <div class="wiki-sidebar-section">
-    <div class="wiki-sidebar-title">按{{ $key }}筛选</div>
+    <div class="wiki-sidebar-title">{{ __('library.filter_by') }}{{ $key }}{{ __('library.filter') }}</div>
     <ul class="wiki-cat-list">
         <li>
             <a href="{{ route('library.search', ['q' => $query]) }}"
                 class="{{ $category === 'all' ? 'active' : '' }}">
-                全部
+                {{ __('library.all') }}
             </a>
         </li>
 
@@ -101,7 +101,7 @@
 {{-- 近似词条(无结果时显示) --}}
 @if (count($results) === 0 && $query)
 <div class="wiki-sidebar-section">
-    <div class="wiki-sidebar-title">你可能在找</div>
+    <div class="wiki-sidebar-title">{{ __('library.did_you_mean') }}</div>
     <ul class="wiki-related-list">
         <li>
             <a href="{{ route('library.search', ['q' => substr($query, 0, -1), 'lang' => $lang]) }}">
@@ -120,12 +120,12 @@
 
 
 <div class="wiki-sidebar-section">
-    <div class="wiki-sidebar-title">分类浏览</div>
+    <div class="wiki-sidebar-title">{{ __('library.browse_categories') }}</div>
     <ul class="wiki-cat-list">
         <li>
             <a href="{{ route('library.search', ['q' => $query]) }}"
                 class="{{ $category === 'all' ? 'active' : '' }}">
-                全部
+                {{ __('library.all') }}
             </a>
         </li>
         @foreach ($types as $type)

+ 16 - 16
api-v13/resources/views/library/tipitaka/category.blade.php

@@ -4,7 +4,7 @@
 --}}
 @extends('layouts.library')
 
-@section('title', $currentCategory['name'] . ' · 巴利书库')
+@section('title', $currentCategory['name'] . ' · ' . __('library.site_name'))
 
 @push('styles')
 @vite('resources/css/modules/tipitaka.css')
@@ -12,11 +12,11 @@
 
 @section('breadcrumb')
 <li class="breadcrumb-item">
-    <a href="{{ route('library.home') }}">首页</a>
+    <a href="{{ route('library.home') }}">{{ __('library.home') }}</a>
 </li>
 @if($currentCategory['id'])
 <li class="breadcrumb-item">
-    <a href="{{ route('library.tipitaka.index') }}">三藏</a>
+    <a href="{{ route('library.tipitaka.index') }}">{{ __('library.tipitaka') }}</a>
 </li>
 @foreach($breadcrumbs as $breadcrumb)
 @if($loop->last)
@@ -30,7 +30,7 @@
 @endif
 @endforeach
 @else
-<li class="breadcrumb-item active">三藏</li>
+<li class="breadcrumb-item active">{{ __('library.tipitaka') }}</li>
 @endif
 @endsection
 
@@ -45,12 +45,12 @@
 
             {{-- 大分类 --}}
             <div class="wiki-sidebar-section">
-                <div class="wiki-sidebar-title">分类</div>
+                <div class="wiki-sidebar-title">{{ __('library.categories') }}</div>
                 <ul class="wiki-cat-list">
                     <li>
                         <a href="{{ route('library.tipitaka.index') }}"
                             class="{{ !$currentCategory['id'] ? 'active' : '' }}">
-                            全部
+                            {{ __('library.all') }}
                         </a>
                     </li>
                     @foreach($types as $type)
@@ -74,7 +74,7 @@
                 <x-ui.search-input
                     :action="route('library.search')"
                     :value="request('q')"
-                    placeholder="搜索三藏原文译文"
+                    :placeholder="__('library.search_tipitaka')"
                     :hidden-fields="['resource_type' => 'tipitaka']" />
             </div>
 
@@ -85,7 +85,7 @@
 
                 {{-- 类型 --}}
                 <div class="tipitaka-filter-row">
-                    <span class="tipitaka-filter-label">类型</span>
+                    <span class="tipitaka-filter-label">{{ __('library.type') }}</span>
                     <div class="tipitaka-filter-pills">
                         @foreach($filterOptions['types'] as $opt)
                         <a href="{{ request()->fullUrlWithQuery(['type' => $opt['value'], 'page' => null]) }}"
@@ -101,7 +101,7 @@
 
                 {{-- 语言 --}}
                 <div class="tipitaka-filter-row">
-                    <span class="tipitaka-filter-label">语言</span>
+                    <span class="tipitaka-filter-label">{{ __('library.language') }}</span>
                     <div class="tipitaka-filter-pills">
                         @foreach($filterOptions['languages'] as $opt)
                         <a href="{{ request()->fullUrlWithQuery(['lang' => $opt['value'], 'page' => null]) }}"
@@ -117,7 +117,7 @@
 
                 {{-- 作者 --}}
                 <div class="tipitaka-filter-row">
-                    <span class="tipitaka-filter-label">作者</span>
+                    <span class="tipitaka-filter-label">{{ __('library.author') }}</span>
                     <select class="form-select form-select-sm tipitaka-author-select"
                         onchange="window.location=this.value">
                         @foreach($filterOptions['authors'] as $opt)
@@ -139,7 +139,7 @@
                 <div class="tipitaka-filter-clear">
                     <a href="{{ request()->fullUrlWithQuery(['type' => null, 'lang' => null, 'author' => null, 'page' => null]) }}"
                         class="tipitaka-clear-btn">
-                        <i class="ti ti-x"></i> 清除过滤器
+                        <i class="ti ti-x"></i> {{ __('library.clear_filters') }}
                     </a>
                 </div>
                 @endif
@@ -164,10 +164,10 @@
             {{-- 3. 排序 + 结果数 --}}
             <div class="tipitaka-sort-bar">
                 <span class="tipitaka-sort-bar__count">
-                    共 <strong>{{ $totalCount }}</strong> 本
+                    {{ __('library.total_prefix') }} <strong>{{ $totalCount }}</strong> {{ __('library.book_unit') }}
                 </span>
                 <div class="tipitaka-sort-bar__right">
-                    <span class="tipitaka-sort-bar__label">排序</span>
+                    <span class="tipitaka-sort-bar__label">{{ __('library.sort') }}</span>
                     <select class="form-select form-select-sm tipitaka-sort-select"
                         onchange="window.location=this.value">
                         @foreach($sortList as $sort)
@@ -191,7 +191,7 @@
             {{-- 本周推荐 --}}
             @if(!empty($recommended))
             <div class="wiki-sidebar-section">
-                <div class="wiki-sidebar-title">本周推荐</div>
+                <div class="wiki-sidebar-title">{{ __('library.weekly_picks') }}</div>
                 <ul class="wiki-cat-list">
                     @foreach($recommended as $item)
                     <li>
@@ -208,7 +208,7 @@
             {{-- 活跃译者 --}}
             @if(!empty($activeAuthors))
             <div class="wiki-sidebar-section">
-                <div class="wiki-sidebar-title">活跃译者</div>
+                <div class="wiki-sidebar-title">{{ __('library.active_authors') }}</div>
                 <ul class="tipitaka-author-list">
                     @foreach($activeAuthors as $author)
                     <li>
@@ -221,7 +221,7 @@
                                 size="sm" />
                             <div class="tipitaka-author-item__info">
                                 <span class="tipitaka-author-item__name">{{ $author['name'] }}</span>
-                                <span class="tipitaka-author-item__count">{{ $author['count'] }} </span>
+                                <span class="tipitaka-author-item__count">{{ $author['count'] }} {{ __('library.book_unit') }}</span>
                             </div>
                         </a>
                     </li>

+ 6 - 6
api-v13/resources/views/library/tipitaka/index.blade.php

@@ -3,19 +3,19 @@
 --}}
 @extends('layouts.library')
 
-@section('title', '巴利书库')
+@section('title', __('library.site_name'))
 
 @section('hero')
 <section class="hero-section"
          style="background-image: url('{{ URL::asset('assets/images/hero-2.jpg') }}')">
     <div class="hero-overlay"></div>
     <div class="hero-content">
-        <h1 class="hero-title">巴利书库</h1>
-        <p class="hero-subtitle">探索 WikiPāli,开启智慧之门</p>
+        <h1 class="hero-title">{{ __('library.site_name') }}</h1>
+        <p class="hero-subtitle">{{ __('library.portal_hero_subtitle') }}</p>
         <div class="search-box">
             <x-ui.search-input
                 :action="route('library.search')"
-                placeholder="搜索图书、作者或主题…"
+                :placeholder="__('library.search_tipitaka')"
                 size="lg"
             />
         </div>
@@ -37,7 +37,7 @@
                         {{ $data['category']['name'] }}
                         <a href="{{ route('library.tipitaka.category', ['id' => $data['category']['id']]) }}"
                            class="btn btn-sm btn-primary ms-auto" style="float:right; font-size: 0.75rem;">
-                            更多 <i class="ti ti-arrow-right"></i>
+                            {{ __('library.more') }} <i class="ti ti-arrow-right"></i>
                         </a>
                     </div>
                     <ul class="wiki-cat-list">
@@ -57,7 +57,7 @@
         {{-- 最近更新 --}}
         @isset($update)
         <div class="wiki-card mt-4">
-            <div class="wiki-sidebar-title" style="margin-bottom: 1rem;">最近更新</div>
+            <div class="wiki-sidebar-title" style="margin-bottom: 1rem;">{{ __('library.recent_updates') }}</div>
             <x-ui.book-grid :books="$update" />
         </div>
         @endisset

+ 16 - 16
api-v13/resources/views/library/tipitaka/show.blade.php

@@ -1,7 +1,7 @@
 {{-- resources/views/library/tipitaka/show.blade.php --}}
 @extends('layouts.library')
 
-@section('title', $book['title'] . ' · 巴利书库')
+@section('title', $book['title'] . ' · ' . __('library.site_name'))
 
 @push('styles')
 @vite('resources/css/modules/tipitaka.css')
@@ -9,10 +9,10 @@
 
 @section('breadcrumb')
 <li class="breadcrumb-item">
-    <a href="{{ route('library.home') }}">首页</a>
+    <a href="{{ route('library.home') }}">{{ __('library.home') }}</a>
 </li>
 <li class="breadcrumb-item">
-    <a href="{{ route('library.tipitaka.index') }}">三藏</a>
+    <a href="{{ route('library.tipitaka.index') }}">{{ __('library.tipitaka') }}</a>
 </li>
 <li class="breadcrumb-item active">{{ $book['title'] }}</li>
 @endsection
@@ -39,11 +39,11 @@
                     <a href="{{ route('library.tipitaka.read', $book['id']) }}"
                         class="btn btn-primary w-100 mb-2">
                         <i class="ti ti-book-2 me-1"></i>
-                        在线阅读
+                        {{ __('library.read_online') }}
                     </a>
                     <button class="btn btn-outline-secondary w-100">
                         <i class="ti ti-download me-1"></i>
-                        下载
+                        {{ __('library.download') }}
                     </button>
                 </div>
 
@@ -61,12 +61,12 @@
 
                 <table class="wiki-meta-table" style="margin-bottom: 1.25rem;">
                     <tr>
-                        <td>作者</td>
+                        <td>{{ __('library.author') }}</td>
                         <td>{{ $book['author'] }}</td>
                     </tr>
                     @if(isset($book['publisher']))
                     <tr>
-                        <td>出版</td>
+                        <td>{{ __('library.publisher') }}</td>
                         <td>
                             <a href="{{ route('blog.index', ['user' => $book['publisher']->username]) }}"
                                 style="color: var(--tblr-primary); text-decoration: none;">
@@ -76,8 +76,8 @@
                     </tr>
                     @endif
                     <tr>
-                        <td>语言</td>
-                        <td>{{ $book['language'] ?? '巴利语' }}</td>
+                        <td>{{ __('library.language') }}</td>
+                        <td>{{ $book['language'] ?? __('library.pali') }}</td>
                     </tr>
                 </table>
 
@@ -91,7 +91,7 @@
             {{-- 目录 --}}
             @if(isset($book['contents']) && count($book['contents']) > 0)
             <div class="wiki-card">
-                <div class="wiki-sidebar-title" style="margin-bottom: 1rem;">目录</div>
+                <div class="wiki-sidebar-title" style="margin-bottom: 1rem;">{{ __('library.toc') }}</div>
                 <ul class="wiki-toc-list">
                     @foreach($book['contents'] as $chapter)
                     <li>
@@ -140,15 +140,15 @@
 
             {{-- 书籍元信息 --}}
             <div class="wiki-sidebar-section">
-                <div class="wiki-sidebar-title">书籍信息</div>
+                <div class="wiki-sidebar-title">{{ __('library.book_info') }}</div>
                 <table class="wiki-meta-table">
                     <tr>
-                        <td>语言</td>
-                        <td>{{ $book['language'] ?? '巴利语' }}</td>
+                        <td>{{ __('library.language') }}</td>
+                        <td>{{ $book['language'] ?? __('library.pali') }}</td>
                     </tr>
                     @if(!empty($book['type']))
                     <tr>
-                        <td>类型</td>
+                        <td>{{ __('library.type') }}</td>
                         <td>{{ $book['type'] }}</td>
                     </tr>
                     @endif
@@ -158,13 +158,13 @@
             {{-- 其他版本 --}}
             @if(!empty($otherVersions) && count($otherVersions) > 0)
             <div class="wiki-sidebar-section">
-                <div class="wiki-sidebar-title">其他版本</div>
+                <div class="wiki-sidebar-title">{{ __('library.other_versions') }}</div>
                 <ul class="wiki-related-list">
                     @foreach($otherVersions as $version)
                     <li>
                         <a href="{{ route('library.tipitaka.show', $version['id']) }}">
                             {{ $version['title'] }}
-                            <span class="wiki-related-zh">{{ $version['language'] ?? '巴利语' }}</span>
+                            <span class="wiki-related-zh">{{ $version['language'] ?? __('library.pali') }}</span>
                         </a>
                     </li>
                     @endforeach

+ 9 - 9
api-v13/resources/views/library/wiki/home.blade.php

@@ -5,7 +5,7 @@
 --}}
 @extends('library.wiki.layouts.app')
 
-@section('title', 'WikiPāli · 佛教百科-重构')
+@section('title', 'WikiPāli · ' . __('library.wiki_encyclopedia'))
 
 @section('wiki-content')
 <div class="wiki-home-container">
@@ -19,8 +19,8 @@
 
     {{-- 欢迎标题 --}}
     <div class="wiki-home-title">
-        <h1>佛教百科</h1>
-        <p class="text-muted">探索佛法智慧 · 开启觉悟之门</p>
+        <h1>{{ __('library.wiki_encyclopedia') }}</h1>
+        <p class="text-muted">{{ __('library.wiki_subtitle') }}</p>
     </div>
 
     {{-- 搜索框 --}}
@@ -28,7 +28,7 @@
         <x-ui.search-input
             :action="route('library.search')"
             :value="request('q')"
-            placeholder="搜索佛法词条、经典、人物..."
+            :placeholder="__('library.wiki_search_placeholder')"
             size="lg"
             :hidden-fields="['resource_type' => 'term']" />
     </div>
@@ -36,7 +36,7 @@
     {{-- 热门搜索标签 --}}
     @isset($hotTags)
     <div class="wiki-home-hot-tags">
-        <span class="text-muted me-2">热门:</span>
+        <span class="text-muted me-2">{{ __('library.hot') }}</span>
         @foreach($hotTags as $tag)
         <a href="{{ route('library.search', ['q' => $tag, 'type' => 'wiki']) }}"
             class="wiki-hot-tag">
@@ -49,7 +49,7 @@
     {{-- 语言选择器 --}}
     <div class="wiki-home-languages">
         <div class="wiki-home-divider">
-            <span>以您的语言阅读佛教百科</span>
+            <span>{{ __('library.wiki_language_divider') }}</span>
         </div>
         <div class="wiki-language-tags">
             @foreach($languages as $lang)
@@ -65,12 +65,12 @@
     @isset($stats)
     <div class="wiki-home-stats">
         <span class="text-muted">
-            📚 {{ number_format($stats['total_articles'] ?? 0) }} 词条
+            📚 {{ number_format($stats['total_articles'] ?? 0) }} {{ __('library.articles') }}
             @if(isset($stats['today_updates']))
-            · 🆕 今日更新 {{ $stats['today_updates'] }}
+            · 🆕 {{ __('library.today_updates') }} {{ $stats['today_updates'] }}
             @endif
             @if(isset($stats['contributors']))
-            · 👥 {{ number_format($stats['contributors']) }} 位贡献者
+            · 👥 {{ number_format($stats['contributors']) }} {{ __('library.contributors_suffix') }}
             @endif
         </span>
     </div>

+ 11 - 11
api-v13/resources/views/library/wiki/index.blade.php

@@ -1,7 +1,7 @@
 {{-- resources/views/wiki/index.blade.php --}}
 @extends('library.wiki.layouts.app')
 
-@section('title', 'WikiPāli · 巴利佛典百科')
+@section('title', 'WikiPāli · ' . __('library.wiki_encyclopedia'))
 
 @section('wiki-content')
 {{-- 搜索框组件 --}}
@@ -9,7 +9,7 @@
     <x-ui.search-input
         :action="route('library.search')"
         :value="request('q')"
-        placeholder="搜索佛法词条、经典、人物..."
+        :placeholder="__('library.wiki_search_placeholder')"
         size="lg"
         :hidden-fields="['resource_type' => 'term']" />
 </div>
@@ -18,14 +18,14 @@
 <div class="wiki-today-banner">
     <div class="wiki-today-icon">☸</div>
     <div class="wiki-today-body">
-        <div class="wiki-today-label">今日条目</div>
+        <div class="wiki-today-label">{{ __('library.today_entry') }}</div>
         <div class="wiki-today-title">{{ $today['meaning'] }}({{ $today['word'] }})</div>
         <div class="wiki-today-snippet">
             {!! Str::limit(strip_tags($today['content']), 120) !!}
         </div>
         <a class="wiki-today-link"
             href="{{ route('library.wiki.show', [$today['lang'], $today['word']]) }}">
-            阅读完整条目 →
+            {{ __('library.read_full_entry') }}
         </a>
     </div>
 </div>
@@ -34,7 +34,7 @@
 {{-- 精选条目 --}}
 @if(isset($featured) && is_array($featured) && count($featured)>0)
 <div class="wiki-card">
-    <div class="wiki-sidebar-title" style="margin-bottom: 14px;">精选条目</div>
+    <div class="wiki-sidebar-title" style="margin-bottom: 14px;">{{ __('library.featured_entries') }}</div>
     <div class="wiki-featured-grid">
         @foreach ($featured as $item)
         <a class="wiki-featured-card"
@@ -62,7 +62,7 @@ $catLabel = collect(config('taxonomy'))->firstWhere('id', $category)['label'] ??
         <span class="wiki-subcat-block-title">{{ $catLabel }}</span>
         <a class="wiki-subcat-block-more"
             href="{{ route('library.wiki.index', ['lang' => $lang]) }}?category={{ $category }}">
-            浏览全部
+            {{ __('library.view_all') }}
         </a>
     </div>
 
@@ -80,18 +80,18 @@ $catLabel = collect(config('taxonomy'))->firstWhere('id', $category)['label'] ??
 @section('wiki-sidebar')
 
 <div class="wiki-sidebar-section">
-    <div class="wiki-sidebar-title">统计</div>
+    <div class="wiki-sidebar-title">{{ __('library.statistics') }}</div>
     <table class="wiki-meta-table">
         <tr>
-            <td>条目总数</td>
+            <td>{{ __('library.total_entries') }}</td>
             <td>{{ number_format($stats['total']) }}</td>
         </tr>
         <tr>
-            <td>本月新增</td>
+            <td>{{ __('library.this_month') }}</td>
             <td>{{ $stats['this_month'] }}</td>
         </tr>
         <tr>
-            <td>贡献者</td>
+            <td>{{ __('library.contributors') }}</td>
             <td>{{ $stats['contributors'] }}</td>
         </tr>
     </table>
@@ -101,7 +101,7 @@ $catLabel = collect(config('taxonomy'))->firstWhere('id', $category)['label'] ??
 
 
 <div class="wiki-sidebar-section">
-    <div class="wiki-sidebar-title">质量等级</div>
+    <div class="wiki-sidebar-title">{{ __('library.quality_level') }}</div>
     <ul class="wiki-cat-list" id="qualityFilterList">
         @foreach ($qualities as $q)
         <li>

+ 3 - 3
api-v13/resources/views/library/wiki/layouts/app.blade.php

@@ -24,12 +24,12 @@
 
         @isset($categories)
         <div class="wiki-sidebar-section">
-            <div class="wiki-sidebar-title">分类浏览</div>
+            <div class="wiki-sidebar-title">{{ __('library.browse_categories') }}</div>
             <ul class="wiki-cat-list">
                 <li>
                     <a href="{{ route('library.wiki.index', ['lang' => $lang]) }}"
                         class="{{ (request('category', 'all') === 'all') ? 'active' : '' }}">
-                        全部
+                        {{ __('library.all') }}
                     </a>
                 </li>
                 @foreach ($categories as $cat)
@@ -49,7 +49,7 @@
 
         @isset($recentUpdates)
         <div class="wiki-sidebar-section">
-            <div class="wiki-sidebar-title">最近更新</div>
+            <div class="wiki-sidebar-title">{{ __('library.recent_updates') }}</div>
             <ul class="wiki-cat-list">
                 @foreach ($recentUpdates as $item)
                 <li>

+ 6 - 6
api-v13/resources/views/library/wiki/show.blade.php

@@ -9,7 +9,7 @@
     <x-ui.search-input
         :action="route('library.search')"
         :value="request('q')"
-        placeholder="搜索佛法词条、经典、人物..."
+        :placeholder="__('library.wiki_search_placeholder')"
         size="lg"
         :hidden-fields="['resource_type' => 'term']" />
 </div>
@@ -42,7 +42,7 @@
     {{-- 其他版本 --}}
     @if(isset($entry['other_versions']) && count($entry['other_versions']) > 0)
     <div class="wiki-other-versions">
-        <div class="wiki-sidebar-title" style="margin-bottom: 0.75rem;">其他版本</div>
+        <div class="wiki-sidebar-title" style="margin-bottom: 0.75rem;">{{ __('library.other_versions') }}</div>
         @foreach ($entry['other_versions'] as $version)
         <x-wiki.search-result-card :result="$version" :lang="$lang" />
         @endforeach
@@ -57,7 +57,7 @@
 
 {{-- 目录 --}}
 <div class="wiki-sidebar-section">
-    <div class="wiki-sidebar-title">目录</div>
+    <div class="wiki-sidebar-title">{{ __('library.toc') }}</div>
     <ul class="wiki-toc-list">
         @foreach ($entry['toc'] as $i => $item)
         <li class="toc-level-{{ $item['level'] }}">
@@ -74,14 +74,14 @@
 
 {{-- 条目元信息 --}}
 <div class="wiki-sidebar-section">
-    <div class="wiki-sidebar-title">条目信息</div>
+    <div class="wiki-sidebar-title">{{ __('library.entry_info') }}</div>
     <table class="wiki-meta-table">
         <tr>
-            <td>分类</td>
+            <td>{{ __('library.category') }}</td>
             <td>{{ $entry['category'] }}</td>
         </tr>
         <tr>
-            <td>质量</td>
+            <td>{{ __('library.quality') }}</td>
             <td><x-wiki.quality-badge :quality="$entry['quality']" /></td>
         </tr>
     </table>