推荐一个免费高效英语学习方法,适合不以考试为导向、初级学完正在向高级过渡的佬友

点赞了就是学过了

好东西,感谢分享

Mark好了

mark!!!
毕竟mark了就是学过了

MARK学英语

脑瓜不好使 老是忘记例句是啥。。。总是想翻回去看看。。。
改了个背面模板 可以直接在例句下方加中文 有需要自取

背面模板
<div class="root">
  <header>
    <h2 id="term" class="center">{{word}}</h2>
    <div class="center flex-col">
      <span class="phonetic BrEPhonetic italic hide">{{BrEPhonetic}}</span>
      <span class="phonetic AmEPhonetic italic">{{AmEPhonetic}}</span>
    </div>
  </header>

  <main>
    <div class="center italic label mt-10">{{usage}}</div>
    <div id="eg-box">
      <div id="topic-box"></div>
    </div>
    <div id="def-box">
      <span class="definition">{{definition}}</span>
      <span class="def_cn">{{def_cn}}</span>
    </div>
    <div id="error" class="hide"></div>
  </main>
</div>
<script>
  var examplesJson = `{{examples}}`


  var egBoxEl = document.getElementById("eg-box")
  var errEl = document.getElementById("error")

  var tags = `{{Tags}}`
  var topicBoxEl = document.getElementById("topic-box")

  function addTags(ts) {
    const tags = ts.split(" ")

    var frequencyTag = tags.filter(tag => tag.startsWith("K_"))
    var originalTags = tags.filter(tag => tag.startsWith("E_"))
    var aiTags = tags.filter(tag => !tag.startsWith("K_") && !tag.startsWith("E_") && !tag.startsWith("CEFR_") && !tag.startsWith("POS_") && tag !== "leech")
    var posTags = tags.filter(tag => tag.startsWith("POS_"))

    posTags.forEach(tag => addSpanElements(topicBoxEl, tag.replace("POS_", ""), ["tag", "pos-tag"]))
    frequencyTag.forEach(tag => addSpanElements(topicBoxEl, tag.replace("K_", ""), ["tag", "frequency-tag"]))
    originalTags.forEach(tag => addSpanElements(topicBoxEl, tag.replace("E_", ""), ["tag", "original-tag"]))
    aiTags.forEach(tag => addSpanElements(topicBoxEl, tag, ["tag", "ai-tag"]))
  }


  function parseJson(json) {
    if (json.startsWith('"')) json = json.slice(1)
    if (json.endsWith('"')) json = json.slice(0, -1)
    try {
      return JSON.parse(json)
    } catch (e) {
      console.error(e)
      return undefined
    }
  }

  function addLabel(parent, content) {
    return addSpanElements(parent, content, ["label", "italic"])
  }

  function addUsage(parent, content) {
    return addSpanElements(parent, content, ["usage"])
  }

  function addSpanElements(parent, content, classlist = []) {
    if (!content) return parent;
    const el = document.createElement("span");
    el.innerHTML = content.replace(/\n/g, "<br>");
    el.classList.add(...classlist);
    parent.appendChild(el);
    return el;
	}

	function addContent(parent, content) {
    return addSpanElements(parent, content, ["content"]);
	}

  function makeElement(item) {
    if (!item) return;
    const div = document.createElement("div");
    if (item.labels) addLabel(div, item.labels);
    if (item.usage) addUsage(div, item.usage);
    addContent(div, item.en + "\n" + item.cn); // 保持不变
    return div;
	}

  function addExample() {
    const egName = localStorage.getItem("KEXP2_READ")
    if (!egName) return;
    const exampleData = parseJson(examplesJson) || []
    const picked = exampleData.find(item => item.name === egName)
    const exampleEl = makeElement(picked)
    if (exampleEl) {
      egBoxEl.appendChild(exampleEl)
    }
  }

  try {
    addTags(tags)
    addExample()
  } catch (err) {
    console.log(err);
    errEl.classList.remove('hide')
    errEl.textContent = err;
  }


</script>```

另外催更大佬的音频功能 :pleading_face: 有没有更新计划日期 没有自己弄了(bushi)

1 Like

我来研究一下看看是否适合儿童教育

巧了,双语主要感觉有点影响排版,昨天正好也有人在群里提了个点击切换中英的需求,今天刚加上,明天anki官网就能看到最新版了。

音频这段时间在测试用哪个生成比较好,kokoro还不错,试用了下gpt sovits感觉不太适合数据集语言是日/英的,字节这些大公司的tts倒非常先进,可惜很贵。

牌组是不是失效了, 显示没有

因为今天刚更新一版上去,anki官方规定是会藏一天,所以得明天中午了

可以先进交流群,明天会发更新日志

不太适合,对于初学者来说认知负荷较高