HiWord.AI – Free Smart English Vocabulary Flashcards

HiWord.AI 是免费的智能英语词汇学习应用,基于 SM-2 间隔重复算法,科学安排复习时间。

词库覆盖

热门查询

KET 入门:baby · ball · child · house

PET 中级:photo · shop · drive · friend

日常口语:guitar · chair · door · lamp

商务英语:account · budget · profit · email

雅思学术:mentor · protein · refugee · equality

加密金融:blockchain · wallet · staking · airdrop

核心特色

学习指南 | HiWord vs Duolingo vs Anki 评测 | 百词斩 vs HiWord vs 扇贝评测

Best app to learn English vocabulary | Vocabulary in context | Know but can't use? | Daily vocabulary routine | Speak with words you know

{{dpResumeBanner.hint}}
🦊
{{ celebrationState.grade }}
{{ celebrationState.score }}%
{{LANG==='zh' ? '正在分析对话...' : 'Analyzing conversation...'}}
{{ celebrationState.meta }}
{{ celebrationState.msg }}
{{ LANG==='zh' ? '点击跳过' : 'Tap to skip' }}
📡 {{LANG==='zh' ? '离线模式 — 学习/练习/词典正常可用' : 'Offline — Learn/Practice/Dict available'}}
⚠️ {{LANG==='zh' ? '网络较慢,部分功能可能延迟' : 'Slow network — some features may be delayed'}}
HiWordAI {{ui.brandSlogan}}
{{activeTopicLabel}}
{{pracScorePct}}%
{{pracScoreEmoji}}
🎉
{{ui.practiceDoneTitle}}
{{pracScorePct >= 80 ? ui.pracDoneTipGreat : pracScorePct >= 50 ? ui.pracDoneTipGood : ui.pracDoneTipKeepGo}}
✓ {{practiceScore}} {{ui.pracPillCorrect}} ✗ {{practiceQueue.length - practiceScore}} {{ui.pracPillWrong}} +{{practiceMasteryUps}} {{LANG==='zh' ? '词升级' : 'upgraded'}} {{ui.pracSrsNote}}
{{ui.practiceWrongTitle}} {{practiceWrongWords.length}}
{{w.word}} {{w.pos}} /{{dictCache[w.word].ipa}}/
{{w.zh}}
"{{dictCache[w.word].example}}"
{{ui.pracReadingCtaLabel}}
🎯
{{LANG === 'zh' ? '本轮翻卡完成' : 'Round complete'}}
{{LANG === 'zh' ? '回今日页继续路径,或刷新今日计划' : 'Back to Today to continue, or refresh today\'s plan'}}
🎉
{{ui.doneTitle}}
{{dailyStreak >= 3 ? '🔥 ' + dailyStreak + (LANG==='zh' ? ' 天连续学习,太棒了!' : '-day streak, keep it up!') : ui.doneSubtitle}}
{{sessionTotal}}
{{LANG==='zh'?'翻卡':'Cards'}}
{{sessionAccuracyPct}}%
{{LANG==='zh'?'准确率':'Accuracy'}}
{{todayLearnedCount}}
{{LANG==='zh'?'新词':'New'}}
{{graduatedTodayList.length}}
{{LANG==='zh'?'升级':'Level up'}}
{{ui.learnPreviewFoxHello}}
{{ui.learnPreviewEyebrow}}

{{ui.learnPreviewTitleA || ui.learnPreviewTitle}} {{ui.learnPreviewTitleB}}

{{ui.learnPreviewSubtitle(queue.length, learnPreviewEstMin)}}

{{listLearnItems.length}}
{{w.word}} {{posZh(w.pos)}} {{w.zh}} {{w.ipa}}
🔁 {{listReviewItems.length}}
{{w.word}} {{posZh(w.pos)}} {{w.zh}} {{w.ipa}}
🦊 {{foxFeedback.msg}}
{{toast.msg}}
{{ui.dictTitle}}
{{dictSelectedWord.word}} → {{dictSelectedWord.baseForm}} {{posAbbr(dictSelectedWord.pos || (dictCache[dictSelectedWord.word]||{}).pos)}}
{{dictSelectedWord.inflections.s}} {{dictSelectedWord.inflections.past}} {{dictSelectedWord.inflections.pp}} {{dictSelectedWord.inflections.ing}} {{dictSelectedWord.inflections.plural}} {{dictSelectedWord.inflections.comparative}} {{dictSelectedWord.inflections.superlative}}
{{ui.dictAiSourced}}
{{dictDetailSrsInfo.label}} · {{dictDetailSrsInfo.nextReview}}
{{dictSelectedWord.zh || dictSelectedWord.zhDefinition || (dictCache[dictSelectedWord.word]||{}).zhDefinition}}
{{sense.pos}}
{{di+1}}
{{def.definition}}
「{{dictExampleTranslations[def.example]}}」
{{s}}
{{dictSelectedWord.zh || (dictCache[dictSelectedWord.word]||{}).zhDefinition || ''}}
{{dictSelectedWord.definition || (dictCache[dictSelectedWord.word]||{}).definition}}
「{{dictExampleTranslations[dictSelectedWord.ex]}}」
「{{dictExampleTranslations[dictSelectedWord.ex2]}}」
{{LANG==='zh'?'例句:':'Examples:'}}
「{{dictExampleTranslations[ex]}}」
{{ui.dictCommonPhrases}}
{{p.phrase}}
{{p.zh}}
{{p.en}}
{{LANG==='zh'?'近义词:':'Synonyms:'}}
{{s}}
{{LANG==='zh'?'反义词:':'Antonyms:'}}
{{a}}
{{LANG==='zh'?'词根分析中…':'Analyzing root…'}}
🌱 {{LANG==='zh'?'词根':'Root'}} -{{dictSelectedWord.root}}- "{{dictSelectedWord.rootMeaning}}" · {{dictSelectedWord.rootOrigin}}
{{LANG==='zh'?'同词根:':'Family:'}} {{rw}}
{{t.icon}} {{t.name}}
📡
{{LANG==='zh' ? '口语练习需要网络连接。恢复网络后自动可用。' : 'Speaking practice requires network. Will resume when connected.'}}
{{LANG==='zh' ? '离线时可以使用「学习」和「练习」模式复习已学词汇' : 'Use Learn & Practice tabs to review words offline'}}
{{ui.shadowNoSR}}
🎯 {{LANG==='zh' ? '今日跟读' : "Today's Shadow"}}
{{LANG==='zh' ? '练习今天学的词' : 'Practice words from today'}}
{{w.word || w.wordId || w}} +{{(dpPendingShadowStep.words || []).length - 6}}
{{LANG==='zh' ? '自由练习' : 'Free Practice'}}
{{ui.shadowDimNoSmart}} {{ui.shadowDimNoMatch}}
{{LANG==='zh'?'链接':'Link'}} {{LANG==='zh'?'照片':'Photo'}} {{LANG==='zh'?'阅读':'Reading'}} {{LANG==='zh'?'主题':'Topic'}} {{LANG==='zh'?'粘贴':'Paste'}}
{{shadowImportPreview.title}}
{{ui.shadowPreviewSentenceCount.replace('{n}', shadowImportPreview.sentences.length)}} · {{ui.shadowPreviewPracticedTimes.replace('{n}', shadowImportPreview.practiceCount)}}
  1. {{idx + 1}}
    {{s.en}}
    {{s.zh}}
    {{LANG==='zh'?'最高':'Best'}} {{getImportSentenceProgress(idx).bestScore}}
{{ui.shadowImportEmpty}}
{{LANG==='zh'?'试试:':'Try: '}}
{{LANG==='zh'?'链接':'Link'}} {{LANG==='zh'?'照片':'Photo'}} {{LANG==='zh'?'阅读':'Reading'}} {{LANG==='zh'?'主题':'Topic'}} {{LANG==='zh'?'粘贴':'Paste'}}
{{entry.title}}
{{ui.shadowPreviewSentenceCount.replace('{n}', (entry.sentences || []).length)}} · {{ui.shadowPreviewPracticedTimes.replace('{n}', entry.practiceCount)}} {{entry.date}}
{{shadowManualSelected.length}}/20 {{ui.shadowManualSelected}} {{ui.shadowManualMaxReached}}
{{w.word}} +{{shadowSourceCounts[shadowSource]-6}}
{{ui.shadowNoWords}}
{{LANG==='zh' ? '更多来源' : 'More Sources'}}
🔥{{shadowStreak}}{{LANG==='zh' ? '天' : 'd'}} {{shadowTodayLog.length}}{{LANG==='zh'?'词':'w'}} +{{shadowTodayPassed * 3}}XP 📥{{shadowTodayImports.count}}{{LANG==='zh'?'句':'s'}} ⚠{{shadowWeakPhonemes.join(' ')}}
{{LANG==='zh'?'10 词 + 例句':'10 words + sentences'}} · {{LANG==='zh'?'约 10 分钟':'~10 min'}}
{{shadowImportPreview.sentences.length}} {{LANG==='zh'?'句':'sentences'}}
\uD83D\uDD07 {{LANG==='zh' ? '\u9759\u97F3\u62FC\u5199' : 'Silent Spelling'}}
{{(shadowSilentWords[shadowSilentIndex]||{}).word}}
{{(dictCache[(shadowSilentWords[shadowSilentIndex]||{}).word]||{}).ipa||(shadowSilentWords[shadowSilentIndex]||{}).ipa||''}}
{{(shadowSilentWords[shadowSilentIndex]||{}).zh}}
{{(shadowSilentWords[shadowSilentIndex]||{}).ex||''}}
{{shadowSilentIndex + 1}} / {{shadowSilentWords.length}}
{{LANG==='zh' ? (shadowSource==='smart' ? '智能推荐' : shadowSource==='due' ? '重点攻克' : shadowSource==='favorites' ? '我的收藏' : '全部词库') : (shadowSource==='smart' ? 'Smart Pick' : shadowSource==='due' ? 'Need Work' : shadowSource==='favorites' ? 'Favorites' : 'All Words')}}
{{shadowQueue[shadowIndex].type === 'word' ? (LANG==='zh'?'单词':'Word') : (LANG==='zh'?'句子':'Sentence')}}
{{shadowCountdown}}
{{LANG==='zh' ? '准备好就点这里说' : 'Tap to start speaking'}}
{{shadowDisplayScore}}
{{shadowResult.score >= 85 ? ui.shadowScoreExcellent : shadowResult.score >= 70 ? ui.shadowScoreGood : shadowResult.score >= 50 ? ui.shadowScoreFair : ui.shadowScorePoor}}
{{shadowResult.error}}
👅 {{LANG==='zh'?'注意:':'Remember:'}}
  1. {{step}}
👅 {{shadowPinnedCoach.coachingTip}}
💡 {{shadowPinnedCoach.l1Tip}}
🎉
{{shadowDoneAccuracy >= 80 ? ui.shadowDoneGreat : shadowDoneAccuracy >= 60 ? ui.shadowDoneGood : ui.shadowDoneOk}}
{{shadowDoneAccuracy}}%
{{shadowPassedCount}} {{ui.shadowPassed}}
{{Object.keys(shadowScores).length - shadowPassedCount}} {{ui.shadowFailed}}
+{{shadowPassedCount * 3}} XP
{{LANG==='zh' ? `今日累计跟读 ${shadowTodayLog.length} 词,获得 ${shadowTodayPassed * 3} XP` : `Today: ${shadowTodayLog.length} words shadowed, ${shadowTodayPassed * 3} XP earned`}}
🚀 {{LANG==='zh'?'最大进步:':'Biggest improvement:'}} {{shadowBestProgress.word}} {{shadowBestProgress.first}} → {{shadowBestProgress.best}} {{shadowBestProgress.gain}}
{{LANG==='zh' ? '本轮明细' : 'Session details'}}
{{item.type === 'sentence' ? item.target : item.word}} {{shadowScores[idx] !== undefined ? shadowScores[idx] : '—'}}
{{microQuizQueueIndex + 1}} / {{microQuizQueue.length}}
{{LANG==='zh' ? '快速确认一下 ↓' : 'Quick check ↓'}}
{{microQuizWord}}
{{LANG==='zh' ? '这个词的意思是?' : 'What does this word mean?'}}
{{LANG==='zh' ? '✅ 答对了!' : '✅ Correct!'}}
{{LANG==='zh' ? '💡 正确答案:' + microQuizCorrect : '💡 Answer: ' + microQuizCorrect}}
🎯 {{LANG==='zh' ? '今日对话' : "Today's Talk"}}
{{LANG==='zh' ? '随便聊,AI 会按场景接话' : 'Open chat — AI plays the scene'}}
{{w.word || w.wordId || w}}
{{LANG==='zh' ? '最近' : 'Recent'}}
{{ui.speakConvo}}
{{ui.talkReadyTitle}}
📍 {{talkRoleCard.scenario}}
🟢 {{LANG==='zh' ? '简单' : 'Easy'}} 🔴 {{LANG==='zh' ? '挑战' : 'Challenge'}} 🟡 {{LANG==='zh' ? '中等' : 'Medium'}}
{{ui.talkAiRoleLabel}}
{{talkRoleCard.aiName}}
{{talkRoleCard.aiRole}}
{{ui.talkUserRoleLabel}}
{{talkRoleCard.userRole}}
🎯 {{LANG==='zh' ? '你的目标' : 'Your Goal'}} {{talkRoleCard.taskGoal}}
{{ui.talkReadyNote}}
{{LANG==='zh' ? '正在生成对话场景…' : 'Setting the scene…'}}
{{LANG==='zh' ? '第' + (talkTurnIndex + 1) + '轮' : 'Turn ' + (talkTurnIndex + 1)}} 🔥{{talkStreak}}
{{msg._zh}}
💡 {{LANG==='zh' ? '可以用' : 'Try using'}}:
{{talkMicError}}
{{ui.talkAutoStop(Math.max(1, Math.ceil((10000-talkSilenceMs)/1000)))}}
{{ui.talkRecordingNote}}
{{LANG==='zh' ? '思考中…' : 'Thinking…'}}
{{LANG==='zh' ? '对方说话中…' : 'Partner speaking…'}}
{{LANG==='zh' ? talkReadyCountdown + ' 秒后自动录音' : 'Auto-record in ' + talkReadyCountdown + 's'}}
 

{{LANG==='zh' ? '生成总结...' : 'Generating summary...'}}

{{talkSummaryData.fluencyScore || 0}}
{{(talkSummaryData.fluencyScore || 0) >= 90 ? 'S' : (talkSummaryData.fluencyScore || 0) >= 70 ? 'A' : (talkSummaryData.fluencyScore || 0) >= 50 ? 'B' : 'C'}}
{{ui.talkOverallScore}}
{{talkSessionTakeaway || (talkSummaryData.goodPoints && talkSummaryData.goodPoints.length ? (LANG==='zh' ? talkSummaryData.goodPoints[0].zh : talkSummaryData.goodPoints[0].en) : ui.talkSummaryFallback)}}
{{kp.phrase}}
{{talkSummaryData.fluencyScore || 0}}
{{ui.talkSummaryFluency}}
{{talkSummaryData.responseScore || 0}}
{{ui.talkSummaryResponse}}
{{talkSummaryData.grammarScore || 0}}
{{ui.talkSummaryGrammar}}
✨ {{LANG==='zh' ? '自然使用 → 已升 L4' : 'Used naturally → leveled up'}}
{{ulw.word}}/{{ulw.zh}}
💡 {{ui.talkSummaryKeyPhrases}}
{{kp.phrase}}
{{kp.meaning}}
"{{kp.example}}"
📐 {{ui.talkSummaryGrammarFocus}}
{{LANG==='zh' ? talkSummaryData.grammarFocus.zh : talkSummaryData.grammarFocus.en}}
✅ {{ui.talkSummaryNatural}}
{{LANG==='zh' ? p.zh : p.en}}
📌 {{ui.talkSummaryImproveNext}}
{{LANG==='zh' ? p.zh : p.en}}
📝 {{ui.talkFullReview}}
{{msg.text}}
{{LANG==='zh' ? '\u4F60' : 'You'}} {{msg.text}} ✏️
{{LANG==='zh' ? '\u4F60\u8BF4\u7684' : 'You said'}}
{{talkSummaryData.rewrites.find(r => r.turnIndex === i).original}}
{{LANG==='zh' ? '\u66F4\u5730\u9053' : 'More natural'}}
{{talkSummaryData.rewrites.find(r => r.turnIndex === i).rewrite}}
💡 {{talkSummaryData.rewrites.find(r => r.turnIndex === i).note}}
{{LANG==='zh' ? '\u4E4B\u524D' : 'Before'}}
{{talkRedoResult.original}}
{{LANG==='zh' ? '\u4E4B\u540E' : 'After'}}
{{talkRedoResult.redo}}
HiWordAI
⚡{{todayDailyScore}} 🔥{{dailyStreak}}
{{loggedInUser.charAt(0).toUpperCase()}}
{{currentDeck.icon}}
{{currentDeck.name}} {{currentDeck.levelLabel}}
{{currentDeck.total || allWords.length}} {{LANG==='zh'?'词':'words'}} · {{currentDeck.desc.length > 36 ? currentDeck.desc.substring(0,36)+'…' : currentDeck.desc}}
{{visibleDecks.length + (favoriteWords.length > 0 ? 1 : 0)}} {{LANG==='zh'?'个词库':'decks'}}
{{LANG==='zh'?'收藏':'Favorites'}} {{favoriteWords.length}} {{LANG==='zh'?'词':'words'}}
{{LANG==='zh'?'长按单词卡收藏,汇集到这里统一学习':'Long-press word cards to save here'}}
{{group.title}}
{{d.icon}}
{{d.name}} {{d.levelLabel}}
{{LANG==='zh'?'已学':'Learned'}} {{deckProgress[d.id].learned}}/{{d.total || '?'}} {{d.total || '?'}} {{LANG==='zh'?'词':'words'}} · {{d.desc.length > 24 ? d.desc.substring(0,24)+'…' : d.desc}}
🦊
{{UI.ptNudgeText}}
🦊
{{ foxActionMessage ? foxActionMessage.text : foxMessage }}
{{LANG==='zh' ? '\u8FD8\u5269 ' + dpCTARemainingInfo.remaining + ' \u6B65 \u00B7 \u7EA6 ' + dpCTARemainingInfo.estimatedMin + ' \u5206\u949F' : dpCTARemainingInfo.remaining + ' steps left \u00B7 ~' + dpCTARemainingInfo.estimatedMin + ' min'}}
{{LANG==='zh' ? '今天还想学?' : 'Keep going?'}}
{{dpStepIcon(s.type)}}
{{dpStepName(s.type)}}
{{s.done ? '✓' : dpStepTime(s.type)}}
{{ activeTopicLabel }}
{{LANG==='zh'?'当前等级':'Level'}} {{cefrLabelFor(userStartLevel)}} {{placementLevelName(userStartLevel)}}
🦊
{{dailyAchievementCard.heroLabel}}
🎉
🔥 {{dailyAchievementCard.streak}}{{LANG==='zh' ? '\u5929' : 'd'}} +{{dailyAchievementCard.xpEarned}} XP
{{dailyAchievementCard.celebMsg}}
{{ui.resMasteryUp}}
{{w}} ⬆️
⚡ {{dailyAchievementCard.xpAnimated}} XP
🔥 {{dailyAchievementCard.streak}} {{ui.srDayStreak}}
{{LANG==='zh' ? '\u4ECA\u65E5\u590D\u76D8' : 'Today recap'}}
{{s.icon}} {{s.line}}
{{guide}}
{{dailyAchievementCard.stepsCompleted}}/{{dailyAchievementCard.stepsTotal}} {{LANG==='zh' ? '\u5B8C\u6210' : 'done'}}
{{LANG==='zh' ? '词汇能力' : 'Vocabulary'}}
🌱
{{LANG==='zh' ? '你的词汇旅程从这里开始' : 'Your vocabulary journey starts here'}}
{{LANG==='zh' ? '认识一个词 ≠ 会用一个词' : 'Knowing a word ≠ using a word'}}
{{dailyStreak}}
1
{{streakMessage}}
{{dot.goals}}
{{dot.label}}
{{LANG==='zh' ? '→ ' + streakMilestone.next + ' 天' : '→ ' + streakMilestone.next + ' days'}}
{{totalLearningDays}} {{LANG==='zh' ? '天学习' : 'days'}}
✨🎉✨
🏆
{{ui.milestoneTitle}}
{{currentMilestone}}
{{ui.milestoneWordsLabel}}
🦊 "{{currentMilestone >= 500 ? ui.milestoneFoxGreat : ui.milestoneFoxKeepGoing}}"
💾
Network looks slow
Login may take a moment or fail. Your progress is always saved locally.
{{loginGateContext.icon}}
{{loginGateContext.title}}
{{loginGateContext.desc}}

Account

Create your account or login to continue learning across sessions.

or continue with email
{{LANG==='zh'?'账户空间':'Account Space'}}
{{LANG==='zh'?'设置':'Settings'}}
{{LANG==='zh'?'点击登录':'Tap to login'}}
{{LANG==='zh'?'登录后可同步进度、收藏与学习记录':'Sign in to sync progress, favorites, and learning history'}}
{{LANG==='zh'?'偏好':'Preferences'}}
显示模式
{{ui.settingsAutoPlayLabel}}
学习提醒
{{LANG==='zh'?'数据':'Data'}}
导出
导入
{{ui.syncBtn}}
📡 {{LANG==='zh' ? '离线模式 — 可查看已保存文章,新文章需联网生成' : 'Offline — saved articles available, new ones need network'}}

{{LANG==='zh'?'还没有文章,去生成或用插件导入吧':'No articles yet. Generate one or import with the extension.'}}

{{art.title || (LANG==='zh'?'无标题':'Untitled')}}
{{formatArticleDate(art.createdAt)}} {{getDeckLabel(art.deckId)}} {{art.source === 'youtube' ? '🎬 YouTube' : art.source === 'plugin' ? '📌 '+(LANG==='zh'?'导入':'Import') : art.source === 'url' ? '🔗 '+(LANG==='zh'?'网页':'Web') : art.source === 'paste' ? '📋 '+(LANG==='zh'?'粘贴':'Paste') : art.source === 'ocr' ? '📷 '+(LANG==='zh'?'图片':'Image') : '🤖 AI'}}
{{art.text ? art.text.slice(0,80)+'…' : ''}}
{{LANG==='zh' ? ('第 ' + myArticlesPage + ' / ' + myArticlesTotalPages + ' 页') : ('Page ' + myArticlesPage + ' / ' + myArticlesTotalPages)}}
{{LANG==='zh' ? ('共 ' + myArticlesTotal + ' 篇 · 每页 ' + myArticlesPageSize + ' 篇') : (myArticlesTotal + ' articles · ' + myArticlesPageSize + ' per page')}}

{{LANG==='zh'?'广场还没有文章':'No articles in the plaza yet.'}}

{{art.title || (LANG==='zh'?'无标题':'Untitled')}}
{{formatArticleDate(art.createdAt)}} {{getDeckLabel(art.deckId)}} @{{art.username}} {{art.viewCount || 0}} views
{{art.text ? art.text.slice(0,80)+'…' : ''}}
{{LANG==='zh' ? ('第 ' + plazaPage + ' / ' + plazaTotalPages + ' 页') : ('Page ' + plazaPage + ' / ' + plazaTotalPages)}}
{{LANG==='zh' ? ('共 ' + plazaTotal + ' 篇 · 每页 ' + plazaPageSize + ' 篇') : (plazaTotal + ' stories · ' + plazaPageSize + ' per page')}}
{{wordListModal.title}}
{{wordListModal.words.length}}
{{ui.wlEmpty}}
{{w.word}} {{w.pos}} {{w.zh}} {{ui.stages[state[w.word] ? state[w.word].stage : 'new']}}
★ {{ui.favorites}} ({{favoriteWords.length}})
{{ui.noFavorites}}
{{f.word}} {{f.zh || '—'}}
{{LANG==='zh' ? '加载更多' : 'Load more'}}({{favoriteWords.length - favoritesLimit}} {{LANG==='zh' ? '词' : 'words'}})
{{ui.sharePanelTitle}}
{{sharePanel.text}}
{{sharePanel.url}}
📖 {{ui.readingTitle}}
{{ui.readingLoading}} {{LANG==='zh' ? 'AI 正在根据你的词汇生成专属文章...' : 'AI is generating an article based on your vocabulary...'}} "{{_readingQuote.text}}"
— {{_readingQuote.author}}
{{w.word}} +{{readingWordObjs.length - 8}}
⚠️
{{readingError}}
{{ui.readingSentShadowTitle}}

{{shadowQueue[shadowIndex].target}}

{{shadowQueue[shadowIndex].zh}}

{{ui.readingSentShadowHint}}

{{shadowRecording ? ui.readingSentShadowRecording : ui.readingSentShadowReady}}
{{ui.readingSentShadowScoring}}
{{shadowResult.score || 0}} {{ui.readingSentShadowScore}} {{shadowResult.score >= 85 ? ui.shadowScoreExcellent : shadowResult.score >= 70 ? ui.shadowScoreGood : shadowResult.score >= 50 ? ui.shadowScoreFair : ui.shadowScorePoor}}
{{ui.readingSentShadowWordCmp}}
{{cw.word}}

{{ui.readingSentShadowHeard}} {{shadowResult.heard}}

VS
{{ui.readingSentShadowTrail}} {{s}}

{{shadowResult.encouragement || shadowResult.advice}}

{{shadowResult.l1Tip}}

{{shadowResult.drillWord}} {{shadowResult.drillExplain}}

{{masteryQuizIndex + 1}}/{{masteryQuizWords.length}} {{LANG==='zh' ? '语境理解' : 'Context Check'}}
{{LANG==='zh' ? '「' + (masteryQuizWords[masteryQuizIndex] && masteryQuizWords[masteryQuizIndex].word) + '」在这里最可能的意思是?' : 'What does "' + (masteryQuizWords[masteryQuizIndex] && masteryQuizWords[masteryQuizIndex].word) + '" most likely mean here?'}}
{{LANG==='zh' ? '答对了!' : 'Correct!'}} {{LANG==='zh' ? '答错了,正确答案:' : 'Wrong, correct answer: '}}{{masteryQuizCorrect}}
{{readingPopup.word}}
{{t.icon}} {{t.name}}
{{posAbbr(readingPopup.pos)}}
{{readingPopup.meaning}}
{{ui.readingImportTitle}}
{{ui.urlImportDesc}}
{{urlImportPhase === 'fetching' ? ui.urlImportPhaseFetch : urlImportPhase === 'fetching_slow' ? ui.urlImportPhaseFetchSlow : urlImportPhase === 'extracting' ? ui.urlImportPhaseExtract : urlImportPhase === 'generating' ? ui.urlImportPhaseGenerate : ui.urlImportPhaseFetch}}
{{urlImportUrl.replace(/^https?:\/\//, '').slice(0, 50)}}
⚠️ {{urlImportError}}
{{ui.pasteImportDesc}}
{{pasteImportText.length}} / 20000
{{ui.pasteImportHintTooShort}}
{{ui.urlImportPhaseGenerate}}
⚠️ {{pasteImportError}}
{{ui.ocrImportDesc}}
{{idx + 1}}
{{ocrImportImages.length}} / 3
{{ocrImportPhase === 'compressing' ? ui.ocrImportPhaseCompress : ocrImportPhase === 'ocr' ? ui.ocrImportPhaseOcr : ocrImportPhase === 'generating' ? ui.urlImportPhaseGenerate : ui.ocrImportPhaseOcr}}
⚠️ {{ocrImportError}}
{{ui.readingImportRecent}}
{{ entry.source === 'paste' ? '📋' : entry.source === 'ocr' ? '📷' : entry.source === 'url' ? '🔗' : '📄' }}
{{entry.title || entry.text.slice(0, 60) + '…'}}
{{formatArticleDate(entry.id)}}
{{ui.shadowImportModalTitle}}
{{ui.shadowImportUrlDesc}}
{{shadowImportUrlError}}
{{ui.shadowImportPasteDesc}}
{{ui.shadowImportSuggestTitle}}
{{shadowImportPasteText.length}} / 20000
{{ui.shadowImportPasteModeZh}} {{ui.shadowImportPasteModeEn}} {{ui.shadowImportPasteModeZh}} {{ui.shadowImportPasteModeEn}}
{{shadowImportPasteError}}
{{ui.shadowImportPhotoDesc}}
{{shadowImportPhotoError}}
{{ui.shadowImportRecent}}
{{entry.title}}
{{(entry.sentences||[]).length}} {{LANG==='zh'?'句':'·'}}
{{ui.materialImportTitle}}
{{ui.urlImportDesc}}
{{materialPasteHint === 'empty' ? ui.materialPasteFromClipboardEmpty : ui.materialPasteFromClipboardDenied}}
{{urlImportError || materialDictError}}
{{ui.shadowImportPasteDesc}} {{ui.pasteImportDesc}}
{{materialPasteHint === 'empty' ? ui.materialPasteFromClipboardEmpty : ui.materialPasteFromClipboardDenied}}
{{pasteImportText.length}} / 20000
{{ui.pasteImportMdHint}}
{{mdImportFileName}}
{{(mdImportText || '').length}} {{LANG==='zh'?'字符':'chars'}} {{formatMdBytes(mdImportSize)}}
{{mdImportError || pasteImportError || materialDictError}}
{{ui.ocrImportDesc}}
{{ocrImportError || materialDictError}}
{{ui.audioImportDesc}}
{{ui.audioImportTip}}
{{ui['audioImportPhase_' + audioImportPhase] || ui.audioImportPhase_transcribing}} ~ {{audioImportEtaSec}}s
{{formatAudioBytes(audioImportUploadBytes)}} / {{formatAudioBytes(audioImportEncodedBytes)}} {{(audioImportUploadPct * 100).toFixed(0)}}%
{{audioImportError}}
{{ui.materialImportHistory}}
{{item.title}}
{{item.origin}}
{{item.count}} {{item.countLabel}}
{{ui.materialImportEmpty}}
HiWord.AI
🦊
{{UI.obWelcomeTitle}}
{{UI.obWelcomeBody}}
🦊
{{UI.ptTitle}}
{{UI.ptDesc}}
{{UI.ptInfo}}
🦊
{{LANG==='zh' ? '正在准备题目…' : 'Preparing questions…'}}
{{ptIdx + 1}} / {{ptQuestions.length}}
{{cefrLabelFor(ptQuestions[ptIdx].level)}}
🦊
{{ ptCorrectCount < 2 ? UI.flZeroCorrectTitle : UI.ptResultTitle }}
{{cefrLabelFor(ptResultLevel)}}
{{placementLevelName(ptResultLevel)}}
{{ ptCorrectCount < 2 ? UI.flZeroCorrectBody : UI.ptResultDesc }}
{{UI.ptSeeDetails}}
{{UI.ptCorrectCount(ptCorrectCount, ptQuestions.length)}}
{{LANG==='zh' ? '识别(选择题)' : 'Recognition'}}
{{ptTypeTotals.choice ? Math.round(ptTypeStats.choice / ptTypeTotals.choice * 100) : 0}}%
{{LANG==='zh' ? '拼写(输入题)' : 'Spelling'}}
{{ptTypeTotals.spelling ? Math.round(ptTypeStats.spelling / ptTypeTotals.spelling * 100) : 0}}%
{{LANG==='zh' ? '判断题' : 'Judgment'}}
{{ptTypeTotals.judgment ? Math.round(ptTypeStats.judgment / ptTypeTotals.judgment * 100) : 0}}%
{{label}}
🦊 {{ptStickerText}}
🦊
{{foxWelcomeMessage}}
{{qs.newCount || 0}}
{{LANG==='zh'?'新词':'New'}}
{{qs.reviewCount || 0}}
{{LANG==='zh'?'复习':'Review'}}
🔥{{dailyStreak}}
{{LANG==='zh'?'连续':'Streak'}}
{{l4Count}}
{{LANG==='zh'?'真正会用':'Truly Using'}}
🎙 {{LANG==='zh'?'Shadow 跟读':'Shadow Practice'}}
{{w.token}}·
{{w.token}}·
{{shadowQuickSentence || shadowQuickWord}}
{{shadowQuickZh}}
{{shadowQuickPlaying ? (LANG==='zh' ? '🔊 播放中…' : '🔊 Playing…') : (LANG==='zh' ? '点击下方按钮开始' : 'Tap below to start')}}
{{LANG==='zh' ? '录音中… 读完后会自动评分' : 'Recording… auto-scoring after you finish.'}}
{{LANG==='zh' ? '正在分析发音…' : 'Analyzing pronunciation…'}}
VS
{{LANG==='zh'?'也可以先听一遍标准读音再跟读':'Listen to the pronunciation first, then try speaking'}}
{{shadowQuickSentence || shadowQuickWord}}
{{LANG==='zh'?'静音检测':'Silence detect'}}
{{LANG==='zh'?'分析发音中…':'Analyzing…'}}
{{shadowQuickScore}}
{{shadowQuickGrade}}
{{shadowQuickAdvice}}
{{ui['dim' + key.charAt(0).toUpperCase() + key.slice(1)]}} {{(shadowQuickDimensions[key] && shadowQuickDimensions[key].score) || 0}}
{{ui.shadowFallbackNotice}}
{{p}}
👄 {{shadowQuickCoach.coachingTip}}
对比练习词:{{shadowQuickCoach.drillTip}}
🦊
{{ LANG === 'zh' ? '够了,休息一下吧' : 'Enough — take a break' }}
{{ LANG === 'zh' ? '休息比硬撑效率高' : 'Rest is more efficient than grinding' }}
HiWord.AI
HiWord.AI
HiWord.AI icon

1
⬆️
2
📲
3