diff --git a/1000-hours/.vitepress/config-old.mts b/1000-hours/.vitepress/config-old.mts
index 759fc889..63764275 100644
--- a/1000-hours/.vitepress/config-old.mts
+++ b/1000-hours/.vitepress/config-old.mts
@@ -361,7 +361,7 @@ export default withMermaid(
// {
// text: "1. 基础",
// collapsed: true,
- // link: "/sounds-of-english/01-basics",
+ // link: "/sounds-of-english/0-intro",
// items: [
// {
// text: "1.1. 音素",
diff --git a/1000-hours/.vitepress/config.mts b/1000-hours/.vitepress/config.mts
index 0fa4dfdc..140c74a8 100644
--- a/1000-hours/.vitepress/config.mts
+++ b/1000-hours/.vitepress/config.mts
@@ -147,65 +147,62 @@ export default withMermaid(
collapsed: true,
link: "/sounds-of-american-english/3.2-consonants",
items: [
+
{
- text: "2.2.1. 分类",
- link: "/sounds-of-american-english/2.2.1-categorization",
+ text: "3.2.1. p/b",
+ link: "/sounds-of-american-english/3.2.1-pb",
},
{
- text: "2.2.2. p/b",
- link: "/sounds-of-american-english/2.2.2-pb",
+ text: "3.2.2. t/d",
+ link: "/sounds-of-american-english/3.2.2-td",
},
{
- text: "2.2.3. t/d",
- link: "/sounds-of-american-english/2.2.3-td",
+ text: "3.2.3. k/g",
+ link: "/sounds-of-american-english/3.2.3-kg",
},
{
- text: "2.2.4. k/g",
- link: "/sounds-of-american-english/2.2.4-kg",
+ text: "3.2.4. f/v",
+ link: "/sounds-of-american-english/3.2.4-fv",
},
{
- text: "2.2.5. f/v",
- link: "/sounds-of-american-english/2.2.5-fv",
+ text: "3.2.5. s/z",
+ link: "/sounds-of-american-english/3.2.5-sz",
},
{
- text: "2.2.6. s/z",
- link: "/sounds-of-american-english/2.2.6-sz",
+ text: "3.2.6. θ/ð",
+ link: "/sounds-of-american-english/3.2.6-θð",
},
{
- text: "2.2.7. θ/ð",
- link: "/sounds-of-american-english/2.2.7-θð",
+ text: "3.2.7. ʃ/ʒ",
+ link: "/sounds-of-american-english/3.2.7-ʃʒ",
},
{
- text: "2.2.8. ʃ/ʒ",
- link: "/sounds-of-american-english/2.2.8-ʃʒ",
+ text: "3.2.8. h",
+ link: "/sounds-of-american-english/3.2.8-h",
},
{
- text: "2.2.9. h",
- link: "/sounds-of-american-english/2.2.9-h",
+ text: "3.2.9. tʃ/dʒ",
+ link: "/sounds-of-american-english/3.2.9-tʃdʒ",
},
{
- text: "2.2.10. tʃ/dʒ",
- link: "/sounds-of-american-english/2.2.10-tʃdʒ",
+ text: "3.2.10. tr/dr",
+ link: "/sounds-of-american-english/3.2.10-trdr",
},
{
- text: "2.2.11. tr/dr",
- link: "/sounds-of-american-english/2.2.11-trdr",
+ text: "3.2.11. ts/dz",
+ link: "/sounds-of-american-english/3.2.11-tsdz",
},
{
- text: "2.2.12. ts/dz",
- link: "/sounds-of-american-english/2.2.12-tsdz",
+ text: "3.2.12. m, n, ŋ",
+ link: "/sounds-of-american-english/3.2.12-mnŋ",
},
{
- text: "2.2.13. m, n, ŋ",
- link: "/sounds-of-american-english/2.2.13-mnŋ",
+ text: "3.2.13. l, r",
+ link: "/sounds-of-american-english/3.2.13-lr",
},
{
- text: "2.2.14. l, r",
- link: "/sounds-of-american-english/2.2.14-lr",
- },
- {
- text: "2.2.15. w, j",
- link: "/sounds-of-american-english/2.2.15-wj",
+ text: "3.2.14. w, j",
+ link: "/sounds-of-american-english/3.2.14-wj",
},
]
},
@@ -327,157 +324,6 @@ export default withMermaid(
},
],
},
- // {
- // text: "语音塑造",
- // collapsed: true,
- // items: [
- // {
- // text: "1. 基础",
- // collapsed: true,
- // link: "/sounds-of-english/01-basics",
- // items: [
- // {
- // text: "1.1. 音素",
- // collapsed: true,
- // link: "/sounds-of-english/01-phonemes",
- // items: [
- // {
- // text: "1.1.1. 元音",
- // link: "/sounds-of-english/01-1-vowels",
- // },
- // {
- // text: "1.1.2. 辅音",
- // link: "/sounds-of-english/01-2-consonants",
- // },
- // {
- // text: "1.1.3. 美式语音标注",
- // link: "/sounds-of-english/01-3-us-phonemes",
- // },
- // {
- // text: "1.1.4. 示例",
- // link: "/sounds-of-english/01-4-pangram",
- // },
- // ],
- // },
- // {
- // text: "1.2. 音节",
- // link: "/sounds-of-english/02-syllables",
- // },
- // ],
- // },
- // {
- // text: "2. 详解",
- // collapsed: true,
- // link: "/sounds-of-english/03-details",
- // items: [
- // {
- // text: "2.1. 元音",
- // collapsed: false,
- // link: "/sounds-of-english/03-vowels-overview",
- // items: [
- // {
- // text: "2.1.1. 口腔内气流共鸣位置",
- // link: "/sounds-of-english/04-vowel-positions",
- // },
- // { text: "2.1.2. ʌ/ɑː", link: "/sounds-of-english/05-Ʌ" },
- // { text: "2.1.3. e/æ", link: "/sounds-of-english/06-e" },
- // { text: "2.1.4. ə/əː", link: "/sounds-of-english/07-ə" },
- // { text: "2.1.5. ɪ/iː", link: "/sounds-of-english/08-i" },
- // { text: "2.1.6. ʊ/uː", link: "/sounds-of-english/09-u" },
- // { text: "2.1.7. ɔ/ɔː", link: "/sounds-of-english/10-ɔ" },
- // {
- // text: "2.1.8. aɪ, eɪ, ɔɪ, aʊ, əʊ, eə, ɪə, ʊə",
- // link: "/sounds-of-english/11-aɪ",
- // },
- // ],
- // },
- // {
- // text: "2.2. 辅音",
- // collapsed: false,
- // link: "/sounds-of-english/12-consonants-overview",
- // items: [
- // {
- // text: "2.2.1. p, b, m, n, f, k, g, h",
- // link: "/sounds-of-english/13-pbmnfkgh",
- // },
- // { text: "2.2.2. f, v", link: "/sounds-of-english/14-fv" },
- // {
- // text: "2.2.3. m, n, ŋ",
- // link: "/sounds-of-english/15-mn",
- // },
- // {
- // text: "2.2.4. t, d, s, z; ʃ, tʃ, dʒ",
- // link: "/sounds-of-english/16-tdsz",
- // },
- // { text: "2.2.5. t, d", link: "/sounds-of-english/17-td" },
- // {
- // text: "2.2.6. tr, dr, ts, dz",
- // link: "/sounds-of-english/18-trdr",
- // },
- // {
- // text: "2.2.7. sp, st, str, sk",
- // link: "/sounds-of-english/19-sptk",
- // },
- // { text: "2.2.8. h", link: "/sounds-of-english/20-h" },
- // { text: "2.2.9. θ, ð", link: "/sounds-of-english/21-θð" },
- // { text: "2.2.10. r", link: "/sounds-of-english/22-r" },
- // { text: "2.2.11. l", link: "/sounds-of-english/23-l" },
- // { text: "2.2.12. ʒ", link: "/sounds-of-english/24-ʒ" },
- // {
- // text: "2.2.13. j, w",
- // link: "/sounds-of-english/25-jw",
- // },
- // ],
- // },
- // {
- // text: "2.3. 连读",
- // link: "/sounds-of-english/26-catenation",
- // },
- // {
- // text: "2.4. 音标学习",
- // link: "/sounds-of-english/27-learning-phonetics",
- // },
- // {
- // text: "2.4. 英美口音选择",
- // link: "/sounds-of-english/28-choosing-accent",
- // },
- // ],
- // },
- // {
- // text: "3. 进阶",
- // collapsed: true,
- // link: "/sounds-of-english/29-advanced",
- // items: [
- // {
- // text: "3.1 什么更重要?",
- // link: "/sounds-of-english/30-more-important",
- // },
- // { text: "3.2 停顿", link: "/sounds-of-english/31-pause" },
- // { text: "3.3 高低", link: "/sounds-of-english/32-high-low" },
- // { text: "3.4 起伏", link: "/sounds-of-english/33-up-down" },
- // {
- // text: "3.5 轻重",
- // link: "/sounds-of-english/34-strong-weak",
- // },
- // { text: "3.6 缓急", link: "/sounds-of-english/35-fast-slow" },
- // {
- // text: "3.7 长短",
- // link: "/sounds-of-english/36-long-short",
- // },
- // ],
- // },
- // {
- // text: "4. 收官",
- // collapsed: true,
- // link: "/sounds-of-english/37-round-up",
- // items: [
- // { text: "4.1 流利", link: "/sounds-of-english/38-fluent" },
- // { text: "4.2 情绪", link: "/sounds-of-english/39-emotional" },
- // ],
- // },
- // ],
- // },
-
{
text: "大脑内部",
collapsed: true,
diff --git a/1000-hours/index.md b/1000-hours/index.md
index 105ff0f9..59676dc1 100644
--- a/1000-hours/index.md
+++ b/1000-hours/index.md
@@ -16,7 +16,7 @@ hero:
link: /training-tasks/kick-off
- theme: brand
text: 语音塑造
- link: /sounds-of-american-english/1-basics
+ link: /sounds-of-american-english/0-intro
- theme: brand
text: 大脑内部
link: /in-the-brain/01-inifinite
diff --git a/1000-hours/public/audios/big-stop-us-female.mp3 b/1000-hours/public/audios/big-stop-us-female.mp3
new file mode 100644
index 00000000..a8d96c2b
Binary files /dev/null and b/1000-hours/public/audios/big-stop-us-female.mp3 differ
diff --git a/1000-hours/public/audios/big-stop-us-male.mp3 b/1000-hours/public/audios/big-stop-us-male.mp3
new file mode 100644
index 00000000..cc533876
Binary files /dev/null and b/1000-hours/public/audios/big-stop-us-male.mp3 differ
diff --git a/1000-hours/public/audios/big-us-female.mp3 b/1000-hours/public/audios/big-us-female.mp3
new file mode 100644
index 00000000..d785d8be
Binary files /dev/null and b/1000-hours/public/audios/big-us-female.mp3 differ
diff --git a/1000-hours/public/audios/big-us-male.mp3 b/1000-hours/public/audios/big-us-male.mp3
new file mode 100644
index 00000000..b5e9f261
Binary files /dev/null and b/1000-hours/public/audios/big-us-male.mp3 differ
diff --git a/1000-hours/public/audios/blob-us-female.mp3 b/1000-hours/public/audios/blob-us-female.mp3
new file mode 100644
index 00000000..dfad9073
Binary files /dev/null and b/1000-hours/public/audios/blob-us-female.mp3 differ
diff --git a/1000-hours/public/audios/blob-us-male.mp3 b/1000-hours/public/audios/blob-us-male.mp3
new file mode 100644
index 00000000..da69aafa
Binary files /dev/null and b/1000-hours/public/audios/blob-us-male.mp3 differ
diff --git a/1000-hours/public/audios/but-stop-us-female.mp3 b/1000-hours/public/audios/but-stop-us-female.mp3
new file mode 100644
index 00000000..ff487a17
Binary files /dev/null and b/1000-hours/public/audios/but-stop-us-female.mp3 differ
diff --git a/1000-hours/public/audios/but-stop-us-male.mp3 b/1000-hours/public/audios/but-stop-us-male.mp3
new file mode 100644
index 00000000..a601fe18
Binary files /dev/null and b/1000-hours/public/audios/but-stop-us-male.mp3 differ
diff --git a/1000-hours/public/audios/club-us-female.mp3 b/1000-hours/public/audios/club-us-female.mp3
new file mode 100644
index 00000000..d4331f9c
Binary files /dev/null and b/1000-hours/public/audios/club-us-female.mp3 differ
diff --git a/1000-hours/public/audios/club-us-male.mp3 b/1000-hours/public/audios/club-us-male.mp3
new file mode 100644
index 00000000..4bda2bd9
Binary files /dev/null and b/1000-hours/public/audios/club-us-male.mp3 differ
diff --git a/1000-hours/public/audios/cup-stop-us-female.mp3 b/1000-hours/public/audios/cup-stop-us-female.mp3
new file mode 100644
index 00000000..bbe235b9
Binary files /dev/null and b/1000-hours/public/audios/cup-stop-us-female.mp3 differ
diff --git a/1000-hours/public/audios/cup-stop-us-male.mp3 b/1000-hours/public/audios/cup-stop-us-male.mp3
new file mode 100644
index 00000000..e4cc8c5c
Binary files /dev/null and b/1000-hours/public/audios/cup-stop-us-male.mp3 differ
diff --git a/1000-hours/public/audios/hopper-us-female.mp3 b/1000-hours/public/audios/hopper-us-female.mp3
new file mode 100644
index 00000000..2618f2fb
Binary files /dev/null and b/1000-hours/public/audios/hopper-us-female.mp3 differ
diff --git a/1000-hours/public/audios/hopper-us-male.mp3 b/1000-hours/public/audios/hopper-us-male.mp3
new file mode 100644
index 00000000..52b30851
Binary files /dev/null and b/1000-hours/public/audios/hopper-us-male.mp3 differ
diff --git a/1000-hours/public/audios/math-stop-us-female.mp3 b/1000-hours/public/audios/math-stop-us-female.mp3
new file mode 100644
index 00000000..0b643385
Binary files /dev/null and b/1000-hours/public/audios/math-stop-us-female.mp3 differ
diff --git a/1000-hours/public/audios/math-stop-us-male.mp3 b/1000-hours/public/audios/math-stop-us-male.mp3
new file mode 100644
index 00000000..2c00db7d
Binary files /dev/null and b/1000-hours/public/audios/math-stop-us-male.mp3 differ
diff --git a/1000-hours/public/audios/pat-us-female.mp3 b/1000-hours/public/audios/pat-us-female.mp3
new file mode 100644
index 00000000..af937df3
Binary files /dev/null and b/1000-hours/public/audios/pat-us-female.mp3 differ
diff --git a/1000-hours/public/audios/pat-us-male.mp3 b/1000-hours/public/audios/pat-us-male.mp3
new file mode 100644
index 00000000..9806fdc8
Binary files /dev/null and b/1000-hours/public/audios/pat-us-male.mp3 differ
diff --git a/1000-hours/public/audios/pick-us-female.mp3 b/1000-hours/public/audios/pick-us-female.mp3
new file mode 100644
index 00000000..cefc98b0
Binary files /dev/null and b/1000-hours/public/audios/pick-us-female.mp3 differ
diff --git a/1000-hours/public/audios/pick-us-male.mp3 b/1000-hours/public/audios/pick-us-male.mp3
new file mode 100644
index 00000000..f00b1c55
Binary files /dev/null and b/1000-hours/public/audios/pick-us-male.mp3 differ
diff --git a/1000-hours/public/audios/puppet-us-female.mp3 b/1000-hours/public/audios/puppet-us-female.mp3
new file mode 100644
index 00000000..d7ffb5ac
Binary files /dev/null and b/1000-hours/public/audios/puppet-us-female.mp3 differ
diff --git a/1000-hours/public/audios/puppet-us-male.mp3 b/1000-hours/public/audios/puppet-us-male.mp3
new file mode 100644
index 00000000..e1eb7195
Binary files /dev/null and b/1000-hours/public/audios/puppet-us-male.mp3 differ
diff --git a/1000-hours/public/audios/reasonable-ɤ-us-female.mp3 b/1000-hours/public/audios/reasonable-ɤ-us-female.mp3
new file mode 100644
index 00000000..37939b18
Binary files /dev/null and b/1000-hours/public/audios/reasonable-ɤ-us-female.mp3 differ
diff --git a/1000-hours/public/audios/reasonable-ɤ-us-male.mp3 b/1000-hours/public/audios/reasonable-ɤ-us-male.mp3
new file mode 100644
index 00000000..779a150b
Binary files /dev/null and b/1000-hours/public/audios/reasonable-ɤ-us-male.mp3 differ
diff --git a/1000-hours/public/audios/stop-us-female.mp3 b/1000-hours/public/audios/stop-us-female.mp3
new file mode 100644
index 00000000..a4ed7fbc
Binary files /dev/null and b/1000-hours/public/audios/stop-us-female.mp3 differ
diff --git a/1000-hours/public/audios/stop-us-male.mp3 b/1000-hours/public/audios/stop-us-male.mp3
new file mode 100644
index 00000000..f10e9fec
Binary files /dev/null and b/1000-hours/public/audios/stop-us-male.mp3 differ
diff --git a/1000-hours/public/jupyter-notebooks/edge-tts-valcab-pronounciation.ipynb b/1000-hours/public/jupyter-notebooks/edge-tts-valcab-pronounciation.ipynb
index c55c12c0..c0767eb8 100644
--- a/1000-hours/public/jupyter-notebooks/edge-tts-valcab-pronounciation.ipynb
+++ b/1000-hours/public/jupyter-notebooks/edge-tts-valcab-pronounciation.ipynb
@@ -29,10 +29,21 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 9,
"id": "71d35cd9",
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "['en-US-GuyNeural', 'en-US-AriaNeural']\n",
+ "big\n",
+ "../audios/big-stop-us-male.mp3 created\n",
+ "../audios/big-stop-us-female.mp3 created\n"
+ ]
+ }
+ ],
"source": [
"import edge_tts\n",
"import os\n",
@@ -74,25 +85,7 @@
" print(voices)\n",
"\n",
"words = \"\"\"\n",
- "bed,\n",
- "guess,\n",
- "pet,\n",
- "bread,\n",
- "dead,\n",
- "lead,\n",
- "any,\n",
- "many,\n",
- "says,\n",
- "again,\n",
- "said,\n",
- "friend,\n",
- "apple,\n",
- "cat,\n",
- "glass,\n",
- "calf,\n",
- "half,\n",
- "laugh,\n",
- "draught,\n",
+ "big\n",
"\"\"\"\n",
"\n",
"for word in words.strip().split(','):\n",
@@ -100,7 +93,7 @@
" for i, voice in enumerate(voices):\n",
" w = word.strip().lower()\n",
" if len(w) > 0:\n",
- " filename = f'../audios/{w}-{regions[i]}-{genders[i]}.mp3'\n",
+ " filename = f'../audios/{w}-stop-{regions[i]}-{genders[i]}.mp3'\n",
" await generate_edge_tts_audio(w, filename, voice=voice, verbose=True, overwrite=False, play=True)\n"
]
},
diff --git a/1000-hours/public/jupyter-notebooks/rename.ipynb b/1000-hours/public/jupyter-notebooks/rename.ipynb
new file mode 100644
index 00000000..e3adc879
--- /dev/null
+++ b/1000-hours/public/jupyter-notebooks/rename.ipynb
@@ -0,0 +1,192 @@
+{
+ "cells": [
+ {
+ "cell_type": "code",
+ "execution_count": 8,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import os\n",
+ "\n",
+ "# get all md file name start wtih 3.2.\n",
+ "md_files = [f for f in os.listdir('.') if f.startswith('3.2.') and f.endswith('.md')]\n",
+ "for f in md_files:\n",
+ " # get string between 3.2. and -\n",
+ " order = f.split('3.2.')[1].split('-')[0]\n",
+ " new_name = f'3.2.{str(int(order)-1)}-{f.split(\"-\")[1]}'\n",
+ " # rename file\n",
+ " os.rename(f, new_name)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 18,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ " {\n",
+ " text: \"3.2.1. p/b\",\n",
+ " link: \"/sounds-of-american-english/3.2.1-pb\",\n",
+ " },\n",
+ " {\n",
+ " text: \"3.2.2. t/d\",\n",
+ " link: \"/sounds-of-american-english/3.2.2-td\",\n",
+ " },\n",
+ " {\n",
+ " text: \"3.2.3. k/g\",\n",
+ " link: \"/sounds-of-american-english/3.2.3-kg\",\n",
+ " },\n",
+ " {\n",
+ " text: \"3.2.4. f/v\",\n",
+ " link: \"/sounds-of-american-english/3.2.4-fv\",\n",
+ " },\n",
+ " {\n",
+ " text: \"3.2.5. s/z\",\n",
+ " link: \"/sounds-of-american-english/3.2.5-sz\",\n",
+ " },\n",
+ " {\n",
+ " text: \"3.2.6. θ/ð\",\n",
+ " link: \"/sounds-of-american-english/3.2.6-θð\",\n",
+ " },\n",
+ " {\n",
+ " text: \"3.2.7. ʃ/ʒ\",\n",
+ " link: \"/sounds-of-american-english/3.2.7-ʃʒ\",\n",
+ " },\n",
+ " {\n",
+ " text: \"3.2.8. h\",\n",
+ " link: \"/sounds-of-american-english/3.2.8-h\",\n",
+ " },\n",
+ " {\n",
+ " text: \"3.2.9. tʃ/dʒ\",\n",
+ " link: \"/sounds-of-american-english/3.2.9-tʃdʒ\",\n",
+ " },\n",
+ " {\n",
+ " text: \"3.2.10. tr/dr\",\n",
+ " link: \"/sounds-of-american-english/3.2.10-trdr\",\n",
+ " },\n",
+ " {\n",
+ " text: \"3.2.11. ts/dz\",\n",
+ " link: \"/sounds-of-american-english/3.2.11-tsdz\",\n",
+ " },\n",
+ " {\n",
+ " text: \"3.2.12. m, n, ŋ\",\n",
+ " link: \"/sounds-of-american-english/3.2.12-mnŋ\",\n",
+ " },\n",
+ " {\n",
+ " text: \"3.2.13. l, r\",\n",
+ " link: \"/sounds-of-american-english/3.2.13-lr\",\n",
+ " },\n",
+ " {\n",
+ " text: \"3.2.14. w, j\",\n",
+ " link: \"/sounds-of-american-english/3.2.14-wj\",\n",
+ " },\n",
+ " ]\n",
+ " },\n",
+ "\n"
+ ]
+ }
+ ],
+ "source": [
+ "text = \"\"\"\n",
+ " {\n",
+ " text: \"2.2.2. p/b\",\n",
+ " link: \"/sounds-of-american-english/2.2.2-pb\",\n",
+ " },\n",
+ " {\n",
+ " text: \"2.2.3. t/d\",\n",
+ " link: \"/sounds-of-american-english/2.2.3-td\",\n",
+ " },\n",
+ " {\n",
+ " text: \"2.2.4. k/g\",\n",
+ " link: \"/sounds-of-american-english/2.2.4-kg\",\n",
+ " },\n",
+ " {\n",
+ " text: \"2.2.5. f/v\",\n",
+ " link: \"/sounds-of-american-english/2.2.5-fv\",\n",
+ " },\n",
+ " {\n",
+ " text: \"2.2.6. s/z\",\n",
+ " link: \"/sounds-of-american-english/2.2.6-sz\",\n",
+ " },\n",
+ " {\n",
+ " text: \"2.2.7. θ/ð\",\n",
+ " link: \"/sounds-of-american-english/2.2.7-θð\",\n",
+ " },\n",
+ " {\n",
+ " text: \"2.2.8. ʃ/ʒ\",\n",
+ " link: \"/sounds-of-american-english/2.2.8-ʃʒ\",\n",
+ " },\n",
+ " {\n",
+ " text: \"2.2.9. h\",\n",
+ " link: \"/sounds-of-american-english/2.2.9-h\",\n",
+ " },\n",
+ " {\n",
+ " text: \"2.2.10. tʃ/dʒ\",\n",
+ " link: \"/sounds-of-american-english/2.2.10-tʃdʒ\",\n",
+ " },\n",
+ " {\n",
+ " text: \"2.2.11. tr/dr\",\n",
+ " link: \"/sounds-of-american-english/2.2.11-trdr\",\n",
+ " },\n",
+ " {\n",
+ " text: \"2.2.12. ts/dz\",\n",
+ " link: \"/sounds-of-american-english/2.2.12-tsdz\",\n",
+ " },\n",
+ " {\n",
+ " text: \"2.2.13. m, n, ŋ\",\n",
+ " link: \"/sounds-of-american-english/2.2.13-mnŋ\",\n",
+ " },\n",
+ " {\n",
+ " text: \"2.2.14. l, r\",\n",
+ " link: \"/sounds-of-american-english/2.2.14-lr\",\n",
+ " },\n",
+ " {\n",
+ " text: \"2.2.15. w, j\",\n",
+ " link: \"/sounds-of-american-english/2.2.15-wj\",\n",
+ " },\n",
+ " ]\n",
+ " },\n",
+ "\"\"\"\n",
+ "\n",
+ "lines = text.split('\\n')\n",
+ "for line in lines:\n",
+ " if \"2.2.\" in line:\n",
+ " order = line.split('2.2.')[1].split('.')[0]\n",
+ " if len(order) <= 2:\n",
+ " new_order = str(int(order)-1)\n",
+ " line = line.replace(f'2.2.{order}', f'2.2.{new_order}')\n",
+ " order = line.split('2.2.')[1].split('-')[0]\n",
+ " if len(order) <= 2:\n",
+ " new_order = str(int(order)-1)\n",
+ " line = line.replace(f'2.2.{order}', f'2.2.{new_order}')\n",
+ " line = line.replace('2.2.', '3.2.')\n",
+ " print(line) \n"
+ ]
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "base",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.12.2"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
diff --git a/1000-hours/sounds-of-american-english/0-intro.md b/1000-hours/sounds-of-american-english/0-intro.md
index c50cba6b..e7557679 100644
--- a/1000-hours/sounds-of-american-english/0-intro.md
+++ b/1000-hours/sounds-of-american-english/0-intro.md
@@ -1,6 +1,6 @@
-# 简介
+# 语音塑造
-为了真正掌握**美式英语**的语音 —— 所有语言都一样,都以**语音**为核心和基础 —— 我们必须熟练掌握**音标**,为此我们要做到:
+为了真正掌握**美式英语**的语音 —— 其实所有语言都一样,都以**语音**为核心和基础 —— 我们必须熟练掌握**音标**,为此我们要做到:
> * 看到音标就能说出音素;
> * 听到音素就能写出音标;
diff --git a/1000-hours/sounds-of-american-english/1-phonemes.md b/1000-hours/sounds-of-american-english/1-phonemes.md
index 3196bdff..e4d58548 100644
--- a/1000-hours/sounds-of-american-english/1-phonemes.md
+++ b/1000-hours/sounds-of-american-english/1-phonemes.md
@@ -1,6 +1,8 @@
# 1. 音素与音标
-在自然语音中,不可继续分割的组成部分被称为**音素**(*phonemes*)。英语的音素分为**元音**(*vowels*)和**辅音**(*consonants*)。**音标**(*phonetics*)是用来标记音素的符号系统 —— 每个音素都由一个独特的音标符号标记。
+在自然语音中,不可继续分割的组成部分被称为**音素**(*phonemes*)。
+
+英语的音素分为**元音**(*vowels*)和**辅音**(*consonants*)。**音标**(*phonetics*)是用来标记音素的符号系统 —— 每个音素都由一个独特的音标符号标记。
我们采用的是《剑桥英语发声词典》([Cambridge English Pronouncing Dictionary](https://dictionary.cambridge.org/pronunciation/), i.e. *CEPD*)的音标标注体系。
@@ -11,7 +13,13 @@
> * 短元音 ɒ 用 ɑː 标注
> * t 增加了一个弹舌音版本 t̬
-以下的罗列部分基于[《剑桥英语发声词典》](https://dictionary.cambridge.org/pronunciation/)的官方音标指南,在此基础上做了一些补充并重新排序[^2],并刻意减少了例词的数量。
+> [!Note]
+>
+> 你可能注意到了,同一个基础音素的变体,可能用了不同的写法,比如, ɑ 这个基础音素,短元音用的是 ʌ,长元音不是 ʌː 而是 ɑː,而后组合成双元音的时候用的是 a —— aɪ,aʊ 等等……
+>
+> 这么做的理由在于,当这些音素连在一起的时候,不会被错误组合,不会产生混淆,确保每个音素都有一个独特对应的符号[^2]。
+
+以下的罗列部分基于[《剑桥英语发声词典》](https://dictionary.cambridge.org/pronunciation/)的官方音标指南,在此基础上做了一些补充并重新排序[^3],并刻意减少了例词的数量。
> [!Note]
> 《剑桥英语发声词典》官方音标指南(Pronunciation symbols):
@@ -200,7 +208,7 @@
> [!Note]
>
-> [《剑桥英语发声词典》的官方音标指南](https://dictionary.cambridge.org/help/phonetics.html)里除了 ɚ 和 ɝː 之外,其它元音的美式英语儿化音都没有罗列,比如,
+> [《剑桥英语发声词典》官方音标指南](https://dictionary.cambridge.org/help/phonetics.html)中除了 ɚ 和 ɝː 之外,其它元音的美式英语儿化音都没有罗列,比如,
ɑːr、ɔːr、er、ɪr、ʊr、aɪr、aʊr。
## 1.2. 辅音
@@ -384,7 +392,7 @@
> [!Note]
>
-> [《剑桥英语发声词典》的官方音标指南](https://dictionary.cambridge.org/help/phonetics.html)里没有罗列 tr 和 dr。
+> [《剑桥英语发声词典》官方音标指南](https://dictionary.cambridge.org/help/phonetics.html)中没有罗列 tr 和 dr。
## 1.3. 外来音素
@@ -415,8 +423,10 @@
| ◌̅, ◌́, ◌̌, ◌̀ | 音节声调 |
| ◌̂ | 音高被抬高的音节 |
-[^1]: 现在几乎所有词典都声称自己采用国际音标(IPA),但它们无一例外,都是国际音标的一个 “**自定义子集**”。
-[^2]: 音标的语音文件来自剑桥官方网站;例词的语音文件部分使用 [Microsoft Edge TTS](https://github.com/rany2/edge-tts) 生成,声音角色选择分别是:*en-GB-ThomasNeural*,*en-GB-MaisieNeural*,*en-US-RogerNeural*,和 *en-US-JennyNeural*
+
+[^1]: 教程内音标字体选用的是 *Charis SIL*,https://software.sil.org/charis/
+[^2]: 现在几乎所有词典都声称自己采用国际音标(IPA),但它们无一例外,都是国际音标的一个 “**自定义子集**”。
+[^3]: 音素的语音文件来自剑桥官方网站;例词的语音文件大部分使用 [Microsoft Edge TTS](https://github.com/rany2/edge-tts) 生成,声音角色选择分别是:*en-GB-ThomasNeural*,*en-GB-MaisieNeural*,*en-US-RogerNeural*,和 *en-US-JennyNeural*