music(player): 变速播放 + AB Loop
deploy articulate / build-and-deploy (push) Failing after 1m42s
deploy cube / build-and-deploy (push) Successful in 2m5s
deploy karaoke / build-and-deploy (push) Failing after 2m2s
deploy simpleasm / build-and-deploy (push) Successful in 2m21s
deploy music / build-and-deploy (push) Successful in 4m2s
deploy werewolf / build-and-deploy (push) Failing after 58s

- 变速:底部 1× 圆形按钮循环切 0.5/0.75/1/1.25/1.5;preservesPitch=true(浏览器 native 保音高);localStorage 持久化全局
- AB Loop:A B 两按钮在当前位置打点,🔁 开关;进度条上绿色高亮 A↔B 区段;timeupdate 触发 ≥B 跳回 A;切歌自动清 A/B
This commit is contained in:
Fam Zheng
2026-05-10 21:40:19 +01:00
parent 5674be1cfd
commit cdbf8308d1
81 changed files with 5899 additions and 0 deletions
+11
View File
@@ -0,0 +1,11 @@
[package]
name = "articulate"
version = "0.1.0"
edition.workspace = true
license.workspace = true
authors.workspace = true
description = "articulate.famzheng.me — 中英猜词派对游戏(一台手机),从 partiverse 移植"
[dependencies]
cube-core = { path = "../../crates/cube-core" }
tokio = { workspace = true }
+6
View File
@@ -0,0 +1,6 @@
# articulate — articulate.famzheng.me
FROM scratch
COPY target/x86_64-unknown-linux-musl/release/articulate /articulate
COPY apps/articulate/frontend/dist /dist
EXPOSE 8080
ENTRYPOINT ["/articulate"]
+13
View File
@@ -0,0 +1,13 @@
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" />
<meta name="theme-color" content="#4CAF50" />
<title>Articulate 猜词</title>
</head>
<body>
<div id="app"></div>
<script type="module" src="/src/main.ts"></script>
</body>
</html>
+22
View File
@@ -0,0 +1,22 @@
{
"name": "articulate",
"private": true,
"version": "0.1.0",
"type": "module",
"scripts": {
"dev": "vite",
"build": "vue-tsc -b && vite build",
"preview": "vite preview",
"test": "vitest"
},
"dependencies": {
"vue": "^3.5.13"
},
"devDependencies": {
"@vitejs/plugin-vue": "^5.2.1",
"typescript": "~5.7.2",
"vite": "^6.0.5",
"vitest": "^2.1.8",
"vue-tsc": "^2.2.0"
}
}
@@ -0,0 +1,262 @@
easy - run - 跑
easy - walk - 走
easy - jump - 跳
easy - sit - 坐
easy - stand - 站
easy - sleep - 睡觉
easy - eat - 吃
easy - drink - 喝
easy - swim - 游泳
easy - fly - 飞
easy - dance - 跳舞
easy - sing - 唱歌
easy - read - 读
easy - write - 写
easy - draw - 画
easy - play - 玩
easy - laugh - 笑
easy - cry - 哭
easy - smile - 微笑
easy - talk - 说话
easy - listen - 听
easy - look - 看
easy - watch - 观看
easy - think - 思考
easy - open - 打开
easy - close - 关闭
easy - push - 推
easy - pull - 拉
easy - throw - 扔
easy - catch - 接
easy - kick - 踢
easy - hit - 打
easy - climb - 爬
easy - fall - 掉落
easy - drive - 开车
easy - ride - 骑
easy - cook - 做饭
easy - wash - 洗
easy - clean - 清洁
easy - cut - 切
easy - break - 打破
easy - fix - 修理
easy - build - 建造
easy - paint - 刷漆
easy - dig - 挖
easy - plant - 种植
easy - water - 浇水
easy - pick - 摘
easy - carry - 携带
easy - lift - 举起
easy - drop - 掉落
easy - pour - 倒
easy - mix - 混合
easy - stir - 搅拌
easy - fold - 折叠
easy - roll - 滚动
easy - slide - 滑动
easy - crawl - 爬行
easy - kneel - 跪
easy - bow - 鞠躬
easy - wave - 挥手
easy - clap - 拍手
easy - point - 指
easy - touch - 触摸
easy - hug - 拥抱
easy - kiss - 亲吻
easy - shake - 摇动
medium - whisper - 低语
medium - shout - 喊叫
medium - scream - 尖叫
medium - yell - 大喊
medium - murmur - 低语
medium - mumble - 咕哝
medium - stutter - 结巴
medium - sneeze - 打喷嚏
medium - cough - 咳嗽
medium - yawn - 打哈欠
medium - hiccup - 打嗝
medium - burp - 打刔
medium - snore - 打鼾
medium - breathe - 呼吸
medium - inhale - 吸气
medium - exhale - 呼气
medium - sigh - 叹气
medium - gasp - 喘气
medium - pant - 喘息
medium - choke - 窒息
medium - swallow - 吞咽
medium - chew - 咀嚼
medium - bite - 咬
medium - lick - 舔
medium - sip - 啜饮
medium - gulp - 大口喝
medium - taste - 品尝
medium - smell - 闻
medium - sniff - 嗅
medium - stare - 凝视
medium - glance - 瞥见
medium - peek - 偷看
medium - blink - 眨眼
medium - wink - 眨眼
medium - squint - 眯眼
medium - frown - 皱眉
medium - grin - 咧嘴笑
medium - giggle - 咯咯笑
medium - chuckle - 轻笑
medium - snicker - 窃笑
medium - sob - 抽泣
medium - weep - 哭泣
medium - wail - 哀号
medium - moan - 呻吟
medium - groan - 呻吟
medium - grunt - 咕哝
medium - howl - 嚎叫
medium - roar - 咆哮
medium - bark - 吠叫
medium - meow - 喵叫
medium - chirp - 啁啾
medium - tweet - 鸟叫
medium - buzz - 嗡嗡叫
medium - hiss - 嘶嘶声
medium - growl - 咆哮
medium - purr - 呼噜声
medium - squeak - 吱吱叫
medium - croak - 呱呱叫
medium - hop - 单脚跳
medium - skip - 蹦跳
medium - leap - 跳跃
medium - bounce - 弹跳
medium - sprint - 冲刺
medium - jog - 慢跑
medium - march - 行军
medium - stroll - 漫步
medium - wander - 闲逛
medium - stride - 大步走
medium - tiptoe - 踮脚走
medium - stumble - 绊倒
medium - trip - 绊倒
medium - slip - 滑倒
medium - tumble - 翻滚
medium - somersault - 翻筋斗
medium - cartwheel - 侧手翻
medium - flip - 翻转
medium - spin - 旋转
medium - twirl - 旋转
medium - rotate - 旋转
medium - revolve - 旋转
medium - swing - 摇摆
medium - sway - 摇摆
medium - wobble - 摇晃
medium - wiggle - 扭动
medium - squirm - 蠕动
medium - wriggle - 扭动
medium - stretch - 伸展
medium - bend - 弯曲
medium - crouch - 蹲下
medium - squat - 蹲
medium - lean - 倾斜
medium - recline - 斜躺
medium - lounge - 懒散地躺
medium - sprawl - 伸开四肢躺
hard - tiptoe - 蹑手蹑脚
hard - trudge - 跋涉
hard - plod - 沉重地走
hard - lumber - 笨重地移动
hard - shuffle - 拖着脚走
hard - limp - 跛行
hard - hobble - 蹒跚
hard - stagger - 摇晃
hard - saunter - 闲逛
hard - meander - 漫步
hard - amble - 缓行
hard - traipse - 闲逛
hard - gallivant - 闲逛
hard - frolic - 嬉戏
hard - gambol - 跳跃
hard - caper - 雀跃
hard - prance - 腾跃
hard - strut - 昂首阔步
hard - swagger - 大摇大摆
hard - slink - 潜行
hard - sneak - 偷偷摸摸
hard - prowl - 潜行
hard - lurk - 潜伏
hard - skulk - 鬼鬼祟祟
hard - creep - 爬行
hard - slither - 滑行
hard - scuttle - 急跑
hard - scurry - 急跑
hard - dart - 飞奔
hard - dash - 猛冲
hard - bolt - 飞奔
hard - flee - 逃跑
hard - escape - 逃脱
hard - evade - 逃避
hard - dodge - 躲避
hard - duck - 躲避
hard - swerve - 突然转向
hard - veer - 转向
hard - pivot - 旋转
hard - whirl - 旋转
hard - gyrate - 旋转
hard - oscillate - 摆动
hard - vibrate - 振动
hard - quiver - 颤抖
hard - tremble - 颤抖
hard - shiver - 发抖
hard - shudder - 战栗
hard - quake - 震动
hard - convulse - 抽搐
hard - spasm - 痉挛
hard - twitch - 抽搐
hard - flinch - 退缩
hard - wince - 畏缩
hard - recoil - 退缩
hard - shrink - 退缩
hard - cower - 畏缩
hard - cringe - 畏缩
hard - grovel - 卑躬屈膝
hard - kneel - 跪下
hard - prostrate - 俯卧
hard - genuflect - 屈膝
hard - curtsy - 屈膝礼
hard - salute - 敬礼
hard - beckon - 招手
hard - gesture - 做手势
hard - motion - 示意
hard - signal - 发信号
hard - indicate - 指示
hard - demonstrate - 演示
hard - exhibit - 展示
hard - display - 展示
hard - showcase - 展示
hard - flaunt - 炫耀
hard - brandish - 挥舞
hard - flourish - 挥舞
hard - wield - 挥舞
hard - manipulate - 操纵
hard - maneuver - 操纵
hard - navigate - 导航
hard - steer - 驾驶
hard - pilot - 驾驶
hard - helm - 掌舵
hard - propel - 推进
hard - thrust - 推进
hard - shove - 猛推
hard - nudge - 轻推
hard - jostle - 推挤
hard - elbow - 用肘推
hard - shoulder - 用肩推
hard - barge - 猛撞
hard - collide - 碰撞
hard - crash - 碰撞
hard - smash - 粉碎
hard - shatter - 粉碎
hard - splinter - 裂成碎片
hard - fracture - 断裂
hard - rupture - 破裂
hard - burst - 爆裂
hard - explode - 爆炸
hard - detonate - 引爆
@@ -0,0 +1,243 @@
easy - cat - 猫
easy - dog - 狗
easy - fish - 鱼
easy - bird - 鸟
easy - pig - 猪
easy - cow - 牛
easy - horse - 马
easy - chicken - 鸡
easy - duck - 鸭子
easy - rabbit - 兔子
easy - mouse - 老鼠
easy - elephant - 大象
easy - lion - 狮子
easy - tiger - 老虎
easy - bear - 熊
easy - monkey - 猴子
easy - panda - 熊猫
easy - sheep - 羊
easy - goat - 山羊
easy - frog - 青蛙
easy - snake - 蛇
easy - turtle - 乌龟
easy - bee - 蜜蜂
easy - butterfly - 蝴蝶
easy - ant - 蚂蚁
easy - spider - 蜘蛛
easy - wolf - 狼
easy - fox - 狐狸
easy - deer - 鹿
easy - giraffe - 长颈鹿
easy - zebra - 斑马
easy - penguin - 企鹅
easy - dolphin - 海豚
easy - whale - 鲸鱼
easy - shark - 鲨鱼
easy - crab - 螃蟹
easy - octopus - 章鱼
easy - starfish - 海星
easy - goldfish - 金鱼
easy - parrot - 鹦鹉
easy - owl - 猫头鹰
easy - eagle - 老鹰
easy - swan - 天鹅
easy - peacock - 孔雀
easy - rooster - 公鸡
easy - turkey - 火鸡
easy - goose - 鹅
easy - camel - 骆驼
easy - kangaroo - 袋鼠
easy - koala - 考拉
easy - squirrel - 松鼠
easy - hedgehog - 刺猬
easy - bat - 蝙蝠
easy - seal - 海豹
easy - otter - 水獭
easy - beaver - 海狸
easy - raccoon - 浣熊
easy - hamster - 仓鼠
easy - guinea pig - 豚鼠
easy - donkey - 驴
easy - mule - 骡子
easy - buffalo - 水牛
easy - ox - 公牛
easy - bull - 公牛
easy - cheetah - 猎豹
easy - leopard - 豹子
easy - jaguar - 美洲豹
easy - hyena - 鬣狗
medium - rhinoceros - 犀牛
medium - hippopotamus - 河马
medium - crocodile - 鳄鱼
medium - alligator - 短吻鳄
medium - lizard - 蜥蜴
medium - iguana - 鬣蜥
medium - chameleon - 变色龙
medium - salamander - 蝾螈
medium - toad - 蟾蜍
medium - jellyfish - 水母
medium - seahorse - 海马
medium - squid - 鱿鱼
medium - lobster - 龙虾
medium - shrimp - 虾
medium - clam - 蛤蜊
medium - oyster - 牡蛎
medium - mussel - 贻贝
medium - snail - 蜗牛
medium - slug - 鼻涕虫
medium - earthworm - 蚯蚓
medium - centipede - 蜈蚣
medium - millipede - 马陆
medium - scorpion - 蝎子
medium - dragonfly - 蜻蜓
medium - grasshopper - 蚱蜢
medium - cricket - 蟋蟀
medium - mantis - 螳螂
medium - ladybug - 瓢虫
medium - firefly - 萤火虫
medium - mosquito - 蚊子
medium - fly - 苍蝇
medium - wasp - 黄蜂
medium - hornet - 大黄蜂
medium - termite - 白蚁
medium - cockroach - 蟑螂
medium - beetle - 甲虫
medium - moth - 飞蛾
medium - caterpillar - 毛毛虫
medium - cocoon - 茧
medium - pupa - 蛹
medium - larva - 幼虫
medium - tadpole - 蝌蚪
medium - flamingo - 火烈鸟
medium - pelican - 鹈鹕
medium - heron - 苍鹭
medium - crane - 鹤
medium - stork - 鹳
medium - seagull - 海鸥
medium - albatross - 信天翁
medium - sparrow - 麻雀
medium - swallow - 燕子
medium - robin - 知更鸟
medium - crow - 乌鸦
medium - raven - 渡鸦
medium - magpie - 喜鹊
medium - woodpecker - 啄木鸟
medium - hummingbird - 蜂鸟
medium - kingfisher - 翠鸟
medium - pigeon - 鸽子
medium - dove - 鸽子
medium - quail - 鹌鹑
medium - pheasant - 野鸡
medium - ostrich - 鸵鸟
medium - emu - 鸸鹋
medium - kiwi - 几维鸟
medium - porcupine - 豪猪
medium - armadillo - 犰狳
medium - anteater - 食蚁兽
medium - sloth - 树懒
medium - lemur - 狐猴
medium - baboon - 狒狒
medium - gorilla - 大猩猩
medium - chimpanzee - 黑猩猩
medium - orangutan - 猩猩
medium - gibbon - 长臂猿
hard - platypus - 鸭嘴兽
hard - echidna - 针鼹
hard - wombat - 袋熊
hard - wallaby - 小袋鼠
hard - tasmanian devil - 袋獾
hard - dingo - 澳洲野犬
hard - meerkat - 狐獴
hard - mongoose - 獴
hard - ferret - 雪貂
hard - weasel - 黄鼠狼
hard - mink - 貂
hard - badger - 獾
hard - wolverine - 狼獾
hard - lynx - 猞猁
hard - bobcat - 短尾猫
hard - ocelot - 豹猫
hard - serval - 薮猫
hard - caracal - 狞猫
hard - puma - 美洲狮
hard - cougar - 美洲狮
hard - panther - 黑豹
hard - snow leopard - 雪豹
hard - clouded leopard - 云豹
hard - okapi - 霍加狓
hard - tapir - 貘
hard - aardvark - 土豚
hard - pangolin - 穿山甲
hard - manatee - 海牛
hard - dugong - 儒艮
hard - walrus - 海象
hard - narwhal - 独角鲸
hard - beluga - 白鲸
hard - orca - 虎鲸
hard - porpoise - 鼠海豚
hard - barracuda - 梭鱼
hard - stingray - 黄貂鱼
hard - manta ray - 蝠鲼
hard - moray eel - 海鳗
hard - pike - 梭子鱼
hard - sturgeon - 鲟鱼
hard - salmon - 三文鱼
hard - trout - 鳟鱼
hard - bass - 鲈鱼
hard - perch - 鲈鱼
hard - carp - 鲤鱼
hard - catfish - 鲶鱼
hard - anchovy - 凤尾鱼
hard - sardine - 沙丁鱼
hard - herring - 鲱鱼
hard - mackerel - 鲭鱼
hard - tuna - 金枪鱼
hard - swordfish - 剑鱼
hard - marlin - 枪鱼
hard - sailfish - 旗鱼
hard - pufferfish - 河豚
hard - angelfish - 神仙鱼
hard - clownfish - 小丑鱼
hard - grouper - 石斑鱼
hard - snapper - 笛鲷
hard - flounder - 比目鱼
hard - halibut - 大比目鱼
hard - sole - 鳎鱼
hard - turbot - 大菱鲆
hard - vulture - 秃鹫
hard - condor - 秃鹰
hard - falcon - 猎鹰
hard - hawk - 鹰
hard - kite - 鸢
hard - buzzard - 秃鹰
hard - osprey - 鱼鹰
hard - kestrel - 茶隼
hard - merlin - 灰背隼
hard - harrier - 鹞
hard - goshawk - 苍鹰
hard - sparrowhawk - 雀鹰
hard - kookaburra - 笑翠鸟
hard - toucan - 巨嘴鸟
hard - hornbill - 犀鸟
hard - hoopoe - 戴胜
hard - cockatoo - 凤头鹦鹉
hard - macaw - 金刚鹦鹉
hard - parakeet - 长尾小鹦鹉
hard - budgerigar - 虎皮鹦鹉
hard - lovebird - 情侣鹦鹉
hard - canary - 金丝雀
hard - finch - 雀
hard - warbler - 莺
hard - thrush - 鸫
hard - nightingale - 夜莺
hard - lark - 云雀
hard - starling - 椋鸟
hard - mynah - 八哥
hard - oriole - 黄鹂
hard - tanager - 唐纳雀
hard - cardinal - 红雀
hard - bluejay - 蓝松鸦
hard - nuthatch - 五子雀
hard - chickadee - 山雀
hard - titmouse - 山雀
@@ -0,0 +1,257 @@
easy - head - 头
easy - face - 脸
easy - eye - 眼睛
easy - nose - 鼻子
easy - mouth - 嘴巴
easy - ear - 耳朵
easy - hair - 头发
easy - neck - 脖子
easy - shoulder - 肩膀
easy - arm - 手臂
easy - hand - 手
easy - finger - 手指
easy - thumb - 大拇指
easy - leg - 腿
easy - knee - 膝盖
easy - foot - 脚
easy - toe - 脚趾
easy - back - 背部
easy - chest - 胸部
easy - stomach - 肚子
easy - belly - 腹部
easy - heart - 心脏
easy - brain - 大脑
easy - bone - 骨头
easy - skin - 皮肤
easy - blood - 血液
easy - tooth - 牙齿
easy - tongue - 舌头
easy - lip - 嘴唇
easy - chin - 下巴
easy - cheek - 脸颊
easy - forehead - 额头
easy - eyebrow - 眉毛
easy - eyelash - 睫毛
easy - eyelid - 眼皮
easy - pupil - 瞳孔
easy - iris - 虹膜
easy - nostril - 鼻孔
easy - jaw - 下巴
easy - gum - 牙龈
easy - throat - 喉咙
easy - voice - 声音
easy - breath - 呼吸
easy - lung - 肺
easy - rib - 肋骨
easy - spine - 脊柱
easy - hip - 臀部
easy - waist - 腰
easy - elbow - 肘
easy - wrist - 手腕
easy - palm - 手掌
easy - fist - 拳头
easy - knuckle - 指关节
easy - nail - 指甲
easy - ankle - 脚踝
easy - heel - 脚后跟
easy - sole - 脚底
easy - muscle - 肌肉
easy - vein - 静脉
easy - artery - 动脉
easy - nerve - 神经
easy - liver - 肝脏
easy - kidney - 肾脏
easy - stomach - 胃
easy - intestine - 肠
easy - bladder - 膀胱
easy - spleen - 脾脏
easy - pancreas - 胰腺
medium - skull - 头骨
medium - temple - 太阳穴
medium - scalp - 头皮
medium - nape - 后颈
medium - collarbone - 锁骨
medium - breastbone - 胸骨
medium - ribcage - 胸腔
medium - abdomen - 腹部
medium - navel - 肚脐
medium - groin - 腹股沟
medium - buttock - 臀部
medium - thigh - 大腿
medium - calf - 小腿
medium - shin - 胫骨
medium - kneecap - 膝盖骨
medium - hamstring - 腿筋
medium - quadriceps - 股四头肌
medium - biceps - 二头肌
medium - triceps - 三头肌
medium - forearm - 前臂
medium - upper arm - 上臂
medium - armpit - 腋窝
medium - shoulder blade - 肩胛骨
medium - backbone - 脊梁骨
medium - tailbone - 尾骨
medium - pelvis - 骨盆
medium - femur - 股骨
medium - tibia - 胫骨
medium - fibula - 腓骨
medium - humerus - 肱骨
medium - radius - 桡骨
medium - ulna - 尺骨
medium - carpal - 腕骨
medium - metacarpal - 掌骨
medium - phalanx - 指骨
medium - tarsal - 跗骨
medium - metatarsal - 跖骨
medium - cartilage - 软骨
medium - ligament - 韧带
medium - tendon - 肌腱
medium - joint - 关节
medium - socket - 关节窝
medium - marrow - 骨髓
medium - membrane - 膜
medium - tissue - 组织
medium - organ - 器官
medium - gland - 腺体
medium - hormone - 荷尔蒙
medium - enzyme - 酶
medium - protein - 蛋白质
medium - cell - 细胞
medium - nucleus - 细胞核
medium - chromosome - 染色体
medium - gene - 基因
medium - DNA - DNA
medium - RNA - RNA
medium - plasma - 血浆
medium - platelet - 血小板
medium - red blood cell - 红细胞
medium - white blood cell - 白细胞
medium - antibody - 抗体
medium - antigen - 抗原
medium - immune system - 免疫系统
medium - lymph - 淋巴
medium - lymph node - 淋巴结
medium - tonsil - 扁桃体
medium - thymus - 胸腺
medium - thyroid - 甲状腺
medium - parathyroid - 甲状旁腺
medium - adrenal gland - 肾上腺
medium - pituitary gland - 垂体
medium - pineal gland - 松果体
medium - hypothalamus - 下丘脑
medium - cerebrum - 大脑
medium - cerebellum - 小脑
medium - brainstem - 脑干
medium - cortex - 皮层
medium - hippocampus - 海马体
medium - amygdala - 杏仁核
medium - thalamus - 丘脑
medium - medulla - 髓质
medium - spinal cord - 脊髓
medium - neuron - 神经元
medium - synapse - 突触
medium - axon - 轴突
medium - dendrite - 树突
medium - myelin - 髓鞘
medium - reflex - 反射
medium - sensation - 感觉
medium - perception - 知觉
hard - cerebral cortex - 大脑皮层
hard - frontal lobe - 额叶
hard - parietal lobe - 顶叶
hard - temporal lobe - 颞叶
hard - occipital lobe - 枕叶
hard - corpus callosum - 胼胝体
hard - basal ganglia - 基底神经节
hard - substantia nigra - 黑质
hard - ventricle - 脑室
hard - meninges - 脑膜
hard - dura mater - 硬脑膜
hard - arachnoid - 蛛网膜
hard - pia mater - 软脑膜
hard - cerebrospinal fluid - 脑脊液
hard - optic nerve - 视神经
hard - auditory nerve - 听神经
hard - olfactory nerve - 嗅神经
hard - vagus nerve - 迷走神经
hard - sciatic nerve - 坐骨神经
hard - ulnar nerve - 尺神经
hard - radial nerve - 桡神经
hard - median nerve - 正中神经
hard - femoral nerve - 股神经
hard - tibial nerve - 胫神经
hard - autonomic nervous system - 自主神经系统
hard - sympathetic - 交感神经
hard - parasympathetic - 副交感神经
hard - somatic - 躯体神经
hard - sensory neuron - 感觉神经元
hard - motor neuron - 运动神经元
hard - interneuron - 中间神经元
hard - ganglion - 神经节
hard - plexus - 神经丛
hard - esophagus - 食道
hard - duodenum - 十二指肠
hard - jejunum - 空肠
hard - ileum - 回肠
hard - colon - 结肠
hard - cecum - 盲肠
hard - appendix - 阑尾
hard - rectum - 直肠
hard - anus - 肛门
hard - bile duct - 胆管
hard - gallbladder - 胆囊
hard - bile - 胆汁
hard - gastric juice - 胃液
hard - saliva - 唾液
hard - salivary gland - 唾液腺
hard - parotid gland - 腮腺
hard - sublingual gland - 舌下腺
hard - submandibular gland - 颌下腺
hard - pharynx - 咽
hard - larynx - 喉
hard - trachea - 气管
hard - bronchus - 支气管
hard - bronchiole - 细支气管
hard - alveolus - 肺泡
hard - diaphragm - 横膈膜
hard - pleura - 胸膜
hard - pericardium - 心包
hard - myocardium - 心肌
hard - endocardium - 内心膜
hard - atrium - 心房
hard - ventricle - 心室
hard - valve - 瓣膜
hard - aorta - 主动脉
hard - vena cava - 腔静脉
hard - pulmonary artery - 肺动脉
hard - pulmonary vein - 肺静脉
hard - coronary artery - 冠状动脉
hard - carotid artery - 颈动脉
hard - jugular vein - 颈静脉
hard - capillary - 毛细血管
hard - endothelium - 内皮
hard - epithelium - 上皮
hard - connective tissue - 结缔组织
hard - adipose tissue - 脂肪组织
hard - mucous membrane - 粘膜
hard - serous membrane - 浆膜
hard - synovial membrane - 滑膜
hard - peritoneum - 腹膜
hard - mesentery - 肠系膜
hard - omentum - 网膜
hard - fascia - 筋膜
hard - aponeurosis - 腱膜
hard - bursa - 滑囊
hard - meniscus - 半月板
hard - intervertebral disc - 椎间盘
hard - vertebra - 椎骨
hard - sacrum - 骶骨
hard - coccyx - 尾骨
hard - sternum - 胸骨
hard - scapula - 肩胛骨
hard - clavicle - 锁骨
hard - patella - 髌骨
hard - mandible - 下颌骨
hard - maxilla - 上颌骨
hard - zygomatic bone - 颧骨
@@ -0,0 +1,316 @@
easy - shirt - 衬衫
easy - pants - 裤子
easy - dress - 连衣裙
easy - skirt - 裙子
easy - shoes - 鞋子
easy - socks - 袜子
easy - hat - 帽子
easy - coat - 外套
easy - jacket - 夹克
easy - sweater - 毛衣
easy - jeans - 牛仔裤
easy - shorts - 短裤
easy - tie - 领带
easy - belt - 腰带
easy - scarf - 围巾
easy - gloves - 手套
easy - boots - 靴子
easy - sandals - 凉鞋
easy - slippers - 拖鞋
easy - sneakers - 运动鞋
easy - underwear - 内衣
easy - bra - 胸罩
easy - pajamas - 睡衣
easy - robe - 浴袍
easy - swimsuit - 泳衣
easy - bikini - 比基尼
easy - uniform - 制服
easy - suit - 西装
easy - tuxedo - 燕尾服
easy - gown - 礼服
easy - blouse - 女式衬衫
easy - t-shirt - T恤
easy - tank top - 背心
easy - vest - 马甲
easy - cardigan - 开襟毛衣
easy - hoodie - 连帽衫
easy - sweatshirt - 运动衫
easy - sweatpants - 运动裤
easy - leggings - 紧身裤
easy - tights - 连裤袜
easy - stockings - 长筒袜
easy - cap - 帽子
easy - beanie - 无檐小便帽
easy - helmet - 头盔
easy - crown - 皇冠
easy - veil - 面纱
easy - mask - 面具
easy - glasses - 眼镜
easy - sunglasses - 太阳镜
easy - watch - 手表
easy - bracelet - 手镯
easy - necklace - 项链
easy - earrings - 耳环
easy - ring - 戒指
easy - brooch - 胸针
easy - pin - 别针
easy - badge - 徽章
easy - button - 纽扣
easy - zipper - 拉链
easy - pocket - 口袋
easy - collar - 衣领
easy - sleeve - 袖子
easy - cuff - 袖口
easy - hem - 下摆
easy - seam - 接缝
easy - lace - 花边
easy - ribbon - 丝带
medium - blazer - 西装外套
medium - trench coat - 风衣
medium - overcoat - 大衣
medium - parka - 派克大衣
medium - poncho - 斗篷
medium - cape - 披肩
medium - shawl - 披肩
medium - stole - 女用披肩
medium - wrap - 围巾
medium - muffler - 围巾
medium - bandana - 头巾
medium - turban - 头巾
medium - beret - 贝雷帽
medium - fedora - 软呢帽
medium - sombrero - 宽边帽
medium - bonnet - 软帽
medium - bowler - 圆顶礼帽
medium - derby - 圆顶礼帽
medium - trilby - 软呢帽
medium - panama - 巴拿马帽
medium - boater - 平顶草帽
medium - cloche - 钟形帽
medium - toque - 无边帽
medium - pillbox - 筒形无边女帽
medium - fascinator - 头饰
medium - tiara - 头冠
medium - diadem - 王冠
medium - circlet - 头环
medium - headband - 发带
medium - hairpin - 发夹
medium - barrette - 发夹
medium - scrunchie - 发圈
medium - wig - 假发
medium - toupee - 男用假发
medium - goggles - 护目镜
medium - monocle - 单片眼镜
medium - lorgnette - 长柄眼镜
medium - pince-nez - 夹鼻眼镜
medium - contact lenses - 隐形眼镜
medium - spectacles - 眼镜
medium - bifocals - 双光眼镜
medium - reading glasses - 老花镜
medium - safety glasses - 安全眼镜
medium - visor - 遮阳帽
medium - eyepatch - 眼罩
medium - blindfold - 眼罩
medium - earmuffs - 耳罩
medium - earphones - 耳机
medium - headphones - 耳机
medium - pendant - 吊坠
medium - locket - 小盒坠
medium - charm - 吊坠
medium - amulet - 护身符
medium - talisman - 护身符
medium - medallion - 大奖章
medium - cameo - 浮雕宝石
medium - choker - 项圈
medium - collar - 项圈
medium - torque - 项圈
medium - chain - 链子
medium - beads - 珠子
medium - pearls - 珍珠
medium - anklet - 脚链
medium - bangle - 手镯
medium - cuff - 袖口
medium - armband - 臂章
medium - wristband - 腕带
medium - friendship bracelet - 友谊手链
medium - cufflinks - 袖扣
medium - tie clip - 领带夹
medium - tie pin - 领带别针
medium - stud - 耳钉
medium - hoop - 圈形耳环
medium - drop earrings - 吊坠耳环
medium - chandelier earrings - 吊灯耳环
medium - nose ring - 鼻环
medium - septum ring - 鼻中隔环
medium - lip ring - 唇环
medium - tongue ring - 舌环
medium - belly ring - 肚脐环
medium - engagement ring - 订婚戒指
medium - wedding ring - 结婚戒指
medium - signet ring - 图章戒指
medium - class ring - 班级戒指
medium - mood ring - 心情戒指
medium - cocktail ring - 鸡尾酒戒指
medium - eternity ring - 永恒戒指
medium - promise ring - 承诺戒指
medium - claddagh ring - 克拉达戒指
medium - cameo ring - 浮雕戒指
medium - corsage - 胸花
medium - boutonniere - 胸花
medium - lapel pin - 翻领别针
medium - safety pin - 安全别针
medium - broach - 胸针
medium - fibula - 别针
medium - clasp - 扣子
medium - buckle - 皮带扣
medium - snap - 按扣
medium - hook and eye - 钩扣
medium - velcro - 魔术贴
medium - drawstring - 束带
medium - elastic - 松紧带
medium - garter - 吊袜带
medium - suspenders - 吊带
medium - braces - 吊带
medium - cummerbund - 腰带
medium - sash - 腰带
medium - girdle - 束腰
medium - corset - 紧身胸衣
medium - bustier - 胸衣
medium - bodice - 紧身上衣
medium - camisole - 吊带背心
medium - chemise - 宽松内衣
medium - slip - 衬裙
medium - petticoat - 衬裙
medium - underskirt - 衬裙
medium - half-slip - 半身衬裙
medium - crinoline - 衬裙
medium - hoop skirt - 箍裙
medium - bustle - 裙撑
medium - pannier - 裙撑
hard - doublet - 紧身上衣
hard - jerkin - 无袖短上衣
hard - tunic - 束腰外衣
hard - surcoat - 外衣
hard - tabard - 无袖外衣
hard - cassock - 长袍
hard - soutane - 长袍
hard - habit - 修道服
hard - cowl - 兜帽
hard - wimple - 头巾
hard - coif - 紧身帽
hard - snood - 发网
hard - mantilla - 披肩
hard - yashmak - 面纱
hard - burqa - 罩袍
hard - niqab - 面纱
hard - hijab - 头巾
hard - chador - 黑袍
hard - abaya - 长袍
hard - kaftan - 长袍
hard - djellaba - 长袍
hard - thobe - 长袍
hard - dishdasha - 长袍
hard - kandura - 长袍
hard - jubba - 长袍
hard - kurta - 长衫
hard - sherwani - 长外套
hard - achkan - 长外套
hard - nehru jacket - 尼赫鲁夹克
hard - bandhgala - 立领外套
hard - jodhpurs - 马裤
hard - breeches - 马裤
hard - knickerbockers - 灯笼裤
hard - plus fours - 高尔夫裤
hard - culottes - 裙裤
hard - palazzo pants - 阔腿裤
hard - capris - 七分裤
hard - pedal pushers - 七分裤
hard - bermuda shorts - 百慕大短裤
hard - cargo shorts - 工装短裤
hard - board shorts - 冲浪短裤
hard - hot pants - 热裤
hard - booty shorts - 超短裤
hard - boy shorts - 平角内裤
hard - briefs - 三角裤
hard - boxers - 平角裤
hard - boxer briefs - 四角裤
hard - thong - 丁字裤
hard - g-string - 丁字裤
hard - bikini briefs - 比基尼内裤
hard - hipsters - 低腰内裤
hard - boyshorts - 平角内裤
hard - granny panties - 高腰内裤
hard - bloomers - 灯笼裤
hard - knickers - 短裤
hard - pantaloons - 灯笼裤
hard - drawers - 内裤
hard - combinations - 连身内衣
hard - long johns - 秋裤
hard - thermal underwear - 保暖内衣
hard - union suit - 连身内衣
hard - bodysuit - 连体衣
hard - leotard - 紧身衣
hard - unitard - 连体紧身衣
hard - catsuit - 连体衣
hard - jumpsuit - 连身裤
hard - romper - 连身衣
hard - playsuit - 连身衣
hard - overalls - 工装裤
hard - dungarees - 工装裤
hard - coveralls - 连身工作服
hard - boilersuit - 连身工作服
hard - smock - 工作服
hard - apron - 围裙
hard - pinafore - 围裙
hard - bib - 围兜
hard - dickey - 假领
hard - jabot - 褶边领饰
hard - ruff - 轮状皱领
hard - gorget - 护喉
hard - rabat - 领饰
hard - stock - 硬领
hard - cravat - 领巾
hard - ascot - 宽领带
hard - bolo tie - 波洛领带
hard - bow tie - 蝴蝶结领带
hard - string tie - 细绳领带
hard - neckerchief - 围巾
hard - kerchief - 方巾
hard - handkerchief - 手帕
hard - pocket square - 口袋巾
hard - bandanna - 大手帕
hard - do-rag - 头巾
hard - babushka - 头巾
hard - headscarf - 头巾
hard - headwrap - 头巾
hard - gele - 头巾
hard - keffiyeh - 头巾
hard - shemagh - 头巾
hard - agal - 头箍
hard - fez - 毡帽
hard - kufi - 无檐帽
hard - taqiyah - 无檐帽
hard - skullcap - 无檐帽
hard - yarmulke - 犹太小帽
hard - kippah - 犹太小帽
hard - zucchetto - 小圆帽
hard - biretta - 方帽
hard - mitre - 主教冠
hard - papal tiara - 教皇冠
hard - pschent - 双冠
hard - uraeus - 圣蛇饰
hard - nemes - 头巾
hard - shendyt - 腰布
hard - kalasiris - 长袍
hard - chiton - 束腰外衣
hard - himation - 外袍
hard - peplos - 束腰外衣
hard - chlamys - 斗篷
hard - toga - 托加袍
hard - stola - 长袍
hard - palla - 披肩
hard - paludamentum - 军用斗篷
hard - sagum - 军用斗篷
hard - lacerna - 斗篷
hard - paenula - 斗篷
@@ -0,0 +1,277 @@
easy - red - 红色
easy - blue - 蓝色
easy - yellow - 黄色
easy - green - 绿色
easy - orange - 橙色
easy - purple - 紫色
easy - pink - 粉色
easy - brown - 棕色
easy - black - 黑色
easy - white - 白色
easy - gray - 灰色
easy - gold - 金色
easy - silver - 银色
easy - beige - 米色
easy - tan - 棕褐色
easy - cream - 奶油色
easy - ivory - 象牙色
easy - navy - 海军蓝
easy - sky blue - 天蓝色
easy - light blue - 浅蓝色
easy - dark blue - 深蓝色
easy - bright blue - 亮蓝色
easy - pale blue - 淡蓝色
easy - light green - 浅绿色
easy - dark green - 深绿色
easy - bright green - 亮绿色
easy - pale green - 淡绿色
easy - lime green - 酸橙绿
easy - mint green - 薄荷绿
easy - olive green - 橄榄绿
easy - forest green - 森林绿
easy - sea green - 海绿色
easy - light red - 浅红色
easy - dark red - 深红色
easy - bright red - 亮红色
easy - pale red - 淡红色
easy - cherry red - 樱桃红
easy - blood red - 血红色
easy - wine red - 酒红色
easy - light yellow - 浅黄色
easy - dark yellow - 深黄色
easy - bright yellow - 亮黄色
easy - pale yellow - 淡黄色
easy - lemon yellow - 柠檬黄
easy - golden yellow - 金黄色
easy - light orange - 浅橙色
easy - dark orange - 深橙色
easy - bright orange - 亮橙色
easy - pale orange - 淡橙色
easy - light purple - 浅紫色
easy - dark purple - 深紫色
easy - bright purple - 亮紫色
easy - pale purple - 淡紫色
easy - light pink - 浅粉色
easy - dark pink - 深粉色
easy - bright pink - 亮粉色
easy - pale pink - 淡粉色
easy - hot pink - 桃红色
easy - baby pink - 婴儿粉
easy - light brown - 浅棕色
easy - dark brown - 深棕色
easy - light gray - 浅灰色
easy - dark gray - 深灰色
easy - charcoal - 炭灰色
easy - slate gray - 石板灰
medium - crimson - 深红色
medium - scarlet - 猩红色
medium - maroon - 栗色
medium - burgundy - 勃艮第酒红
medium - ruby - 红宝石色
medium - rose - 玫瑰色
medium - coral - 珊瑚色
medium - salmon - 鲑鱼色
medium - peach - 桃色
medium - apricot - 杏色
medium - amber - 琥珀色
medium - bronze - 青铜色
medium - copper - 铜色
medium - rust - 铁锈色
medium - terracotta - 赤陶色
medium - sienna - 赭色
medium - umber - 褐色
medium - mahogany - 桃花心木色
medium - chestnut - 栗色
medium - chocolate - 巧克力色
medium - coffee - 咖啡色
medium - caramel - 焦糖色
medium - khaki - 卡其色
medium - sand - 沙色
medium - wheat - 小麦色
medium - buff - 浅黄色
medium - ecru - 本色
medium - taupe - 灰褐色
medium - fawn - 浅黄褐色
medium - sepia - 深褐色
medium - bisque - 淡黄色
medium - vanilla - 香草色
medium - champagne - 香槟色
medium - pearl - 珍珠色
medium - platinum - 铂金色
medium - steel - 钢色
medium - pewter - 锡色
medium - ash - 灰色
medium - smoke - 烟灰色
medium - graphite - 石墨色
medium - jet - 煤黑色
medium - ebony - 乌木色
medium - onyx - 缟玛瑙色
medium - sable - 黑貂色
medium - raven - 乌鸦色
medium - cobalt - 钴蓝色
medium - azure - 天蓝色
medium - cerulean - 蔚蓝色
medium - sapphire - 蓝宝石色
medium - indigo - 靛蓝色
medium - denim - 牛仔蓝
medium - teal - 青色
medium - turquoise - 绿松石色
medium - aqua - 水绿色
medium - cyan - 青色
medium - aquamarine - 海蓝宝石色
medium - emerald - 祖母绿色
medium - jade - 翡翠色
medium - viridian - 铬绿色
medium - chartreuse - 黄绿色
medium - lime - 酸橙色
medium - olive - 橄榄色
medium - moss - 苔藓绿
medium - sage - 鼠尾草绿
medium - mint - 薄荷色
medium - pistachio - 开心果色
medium - avocado - 鳄梨色
medium - pear - 梨色
medium - lavender - 薰衣草色
medium - lilac - 丁香色
medium - violet - 紫罗兰色
medium - amethyst - 紫水晶色
medium - plum - 梅子色
medium - eggplant - 茄子色
medium - mauve - 淡紫色
medium - orchid - 兰花色
medium - magenta - 洋红色
medium - fuchsia - 紫红色
medium - cerise - 樱桃色
medium - raspberry - 覆盆子色
medium - strawberry - 草莓色
medium - watermelon - 西瓜色
medium - blush - 腮红色
medium - rouge - 胭脂色
medium - carnation - 康乃馨色
medium - flamingo - 火烈鸟色
medium - bubblegum - 泡泡糖色
hard - vermilion - 朱红色
hard - carmine - 胭脂红
hard - celadon - 青瓷色
hard - chartreuse - 黄绿色
hard - periwinkle - 长春花色
hard - puce - 紫褐色
hard - saffron - 藏红花色
hard - ochre - 赭石色
hard - gamboge - 藤黄色
hard - aureolin - 金黄色
hard - citrine - 黄水晶色
hard - topaz - 黄玉色
hard - mustard - 芥末色
hard - goldenrod - 一枝黄花色
hard - marigold - 万寿菊色
hard - sunflower - 向日葵色
hard - canary - 金丝雀色
hard - butter - 黄油色
hard - primrose - 樱草色
hard - daffodil - 水仙色
hard - jonquil - 长寿花色
hard - dandelion - 蒲公英色
hard - honey - 蜂蜜色
hard - butterscotch - 奶油糖色
hard - tawny - 黄褐色
hard - ginger - 姜色
hard - cinnamon - 肉桂色
hard - nutmeg - 肉豆蔻色
hard - clove - 丁香色
hard - cayenne - 辣椒色
hard - paprika - 辣椒粉色
hard - brick - 砖红色
hard - cinnabar - 朱砂色
hard - madder - 茜草红
hard - alizarin - 茜素红
hard - cochineal - 胭脂虫红
hard - kermes - 胭脂虫红
hard - tyrian - 泰尔紫
hard - byzantium - 拜占庭紫
hard - heliotrope - 天芥菜紫
hard - wisteria - 紫藤色
hard - periwinkle - 长春花色
hard - cornflower - 矢车菊色
hard - delphinium - 飞燕草色
hard - hyacinth - 风信子色
hard - iris - 鸢尾花色
hard - lupine - 羽扇豆色
hard - bellflower - 风铃草色
hard - bluebell - 蓝铃花色
hard - gentian - 龙胆色
hard - forget-me-not - 勿忘我色
hard - morning glory - 牵牛花色
hard - peacock - 孔雀蓝
hard - prussian - 普鲁士蓝
hard - ultramarine - 群青色
hard - lapis - 青金石色
hard - midnight - 午夜蓝
hard - navy - 海军蓝
hard - oxford - 牛津蓝
hard - royal - 皇家蓝
hard - electric - 电光蓝
hard - dodger - 道奇蓝
hard - powder - 粉蓝色
hard - alice - 爱丽丝蓝
hard - baby - 婴儿蓝
hard - columbia - 哥伦比亚蓝
hard - carolina - 卡罗来纳蓝
hard - maya - 玛雅蓝
hard - egyptian - 埃及蓝
hard - persian - 波斯蓝
hard - steel - 钢蓝色
hard - slate - 石板蓝
hard - cadet - 军校蓝
hard - dusk - 暮色蓝
hard - pewter - 锡蓝色
hard - gunmetal - 炮铜色
hard - battleship - 战舰灰
hard - payne's - 佩恩灰
hard - davy's - 戴维灰
hard - feldgrau - 野战灰
hard - taupe - 灰褐色
hard - greige - 灰米色
hard - mushroom - 蘑菇色
hard - pebble - 鹅卵石色
hard - stone - 石色
hard - cement - 水泥色
hard - concrete - 混凝土色
hard - asphalt - 沥青色
hard - basalt - 玄武岩色
hard - granite - 花岗岩色
hard - marble - 大理石色
hard - limestone - 石灰石色
hard - sandstone - 砂岩色
hard - slate - 板岩色
hard - shale - 页岩色
hard - obsidian - 黑曜石色
hard - flint - 燧石色
hard - quartz - 石英色
hard - alabaster - 雪花石膏色
hard - porcelain - 瓷色
hard - bone - 骨色
hard - chalk - 粉笔色
hard - milk - 牛奶色
hard - linen - 亚麻色
hard - parchment - 羊皮纸色
hard - vellum - 犊皮纸色
hard - papyrus - 纸莎草色
hard - manila - 马尼拉纸色
hard - newsprint - 新闻纸色
hard - cardboard - 纸板色
hard - kraft - 牛皮纸色
hard - burlap - 粗麻布色
hard - hessian - 粗麻布色
hard - jute - 黄麻色
hard - hemp - 大麻色
hard - flax - 亚麻色
hard - cotton - 棉花色
hard - wool - 羊毛色
hard - cashmere - 羊绒色
hard - mohair - 马海毛色
hard - angora - 安哥拉毛色
hard - alpaca - 羊驼毛色
hard - vicuna - 骆马毛色
hard - camel - 驼色
@@ -0,0 +1,307 @@
easy - happy - 快乐
easy - sad - 悲伤
easy - angry - 生气
easy - scared - 害怕
easy - excited - 兴奋
easy - tired - 疲倦
easy - bored - 无聊
easy - surprised - 惊讶
easy - worried - 担心
easy - nervous - 紧张
easy - proud - 骄傲
easy - shy - 害羞
easy - brave - 勇敢
easy - calm - 平静
easy - confused - 困惑
easy - curious - 好奇
easy - disappointed - 失望
easy - embarrassed - 尴尬
easy - frustrated - 沮丧
easy - grateful - 感激
easy - guilty - 内疚
easy - hopeful - 充满希望
easy - jealous - 嫉妒
easy - lonely - 孤独
easy - loved - 被爱
easy - mad - 疯狂
easy - peaceful - 和平
easy - relaxed - 放松
easy - satisfied - 满意
easy - shocked - 震惊
easy - silly - 愚蠢
easy - stressed - 压力大
easy - uncomfortable - 不舒服
easy - upset - 心烦
easy - warm - 温暖
easy - cold - 冷淡
easy - cheerful - 愉快
easy - gloomy - 阴郁
easy - joyful - 欢乐
easy - miserable - 痛苦
easy - pleased - 高兴
easy - unhappy - 不快乐
easy - content - 满足
easy - discontent - 不满
easy - delighted - 高兴
easy - depressed - 沮丧
easy - elated - 兴高采烈
easy - melancholy - 忧郁
easy - enthusiastic - 热情
easy - apathetic - 冷漠
easy - optimistic - 乐观
easy - pessimistic - 悲观
easy - confident - 自信
easy - insecure - 不安全
easy - comfortable - 舒适
easy - anxious - 焦虑
easy - secure - 安全
easy - threatened - 受威胁
easy - safe - 安全
easy - vulnerable - 脆弱
easy - strong - 强大
easy - weak - 虚弱
easy - energetic - 精力充沛
easy - lethargic - 无精打采
easy - alert - 警觉
easy - drowsy - 昏昏欲睡
easy - awake - 清醒
easy - sleepy - 困倦
medium - ecstatic - 狂喜
medium - despondent - 沮丧
medium - furious - 愤怒
medium - terrified - 恐惧
medium - thrilled - 激动
medium - exhausted - 筋疲力尽
medium - indifferent - 漠不关心
medium - astonished - 惊讶
medium - concerned - 关心
medium - tense - 紧张
medium - arrogant - 傲慢
medium - timid - 胆怯
medium - courageous - 勇敢
medium - serene - 宁静
medium - bewildered - 困惑
medium - inquisitive - 好奇
medium - disheartened - 灰心
medium - mortified - 羞愧
medium - exasperated - 恼怒
medium - thankful - 感谢
medium - remorseful - 懊悔
medium - encouraged - 鼓励
medium - envious - 羡慕
medium - isolated - 孤立
medium - cherished - 珍爱
medium - irate - 愤怒
medium - tranquil - 平静
medium - composed - 镇定
medium - fulfilled - 满足
medium - appalled - 震惊
medium - playful - 顽皮
medium - overwhelmed - 不知所措
medium - awkward - 尴尬
medium - agitated - 激动
medium - affectionate - 深情
medium - distant - 疏远
medium - jovial - 愉快
medium - somber - 阴郁
medium - jubilant - 欢腾
medium - wretched - 悲惨
medium - gratified - 满意
medium - displeased - 不悦
medium - contented - 满足
medium - dissatisfied - 不满
medium - overjoyed - 欣喜若狂
medium - dejected - 沮丧
medium - euphoric - 欣快
medium - mournful - 悲哀
medium - passionate - 热情
medium - dispassionate - 冷静
medium - sanguine - 乐观
medium - cynical - 愤世嫉俗
medium - assured - 确信
medium - doubtful - 怀疑
medium - cozy - 舒适
medium - uneasy - 不安
medium - protected - 受保护
medium - endangered - 濒危
medium - sheltered - 庇护
medium - exposed - 暴露
medium - robust - 强健
medium - frail - 虚弱
medium - vigorous - 充满活力
medium - sluggish - 迟钝
medium - attentive - 专注
medium - distracted - 分心
medium - conscious - 有意识
medium - unconscious - 无意识
medium - refreshed - 精神焕发
medium - fatigued - 疲劳
medium - invigorated - 充满活力
medium - drained - 精疲力竭
medium - stimulated - 刺激
medium - numbed - 麻木
medium - animated - 活跃
medium - lifeless - 无生气
medium - spirited - 精神饱满
medium - dispirited - 沮丧
medium - buoyant - 轻快
medium - heavy-hearted - 心情沉重
medium - lighthearted - 轻松愉快
medium - downcast - 沮丧
medium - uplifted - 振奋
medium - dejected - 沮丧
medium - inspired - 受启发
medium - uninspired - 缺乏灵感
medium - motivated - 有动力
medium - unmotivated - 没有动力
medium - determined - 坚定
medium - hesitant - 犹豫
medium - resolute - 坚决
medium - wavering - 动摇
medium - steadfast - 坚定
medium - vacillating - 摇摆不定
medium - decisive - 果断
medium - indecisive - 优柔寡断
medium - bold - 大胆
medium - cautious - 谨慎
medium - daring - 勇敢
medium - wary - 警惕
medium - adventurous - 冒险
medium - conservative - 保守
medium - spontaneous - 自发
medium - calculated - 精心计算
medium - impulsive - 冲动
medium - deliberate - 深思熟虑
medium - reckless - 鲁莽
medium - prudent - 谨慎
medium - carefree - 无忧无虑
medium - burdened - 负担
medium - untroubled - 无忧
medium - troubled - 烦恼
medium - unperturbed - 镇定
medium - perturbed - 不安
medium - undisturbed - 不受干扰
medium - disturbed - 不安
medium - unruffled - 镇定
medium - ruffled - 不安
medium - unflappable - 镇定
medium - flustered - 慌乱
hard - euphoric - 欣快
hard - dysphoric - 烦躁
hard - elated - 兴高采烈
hard - crestfallen - 垂头丧气
hard - incensed - 激怒
hard - petrified - 吓呆
hard - exhilarated - 兴奋
hard - enervated - 衰弱
hard - nonchalant - 漠不关心
hard - flabbergasted - 目瞪口呆
hard - apprehensive - 忧虑
hard - fraught - 焦虑
hard - haughty - 傲慢
hard - diffident - 缺乏自信
hard - valiant - 英勇
hard - placid - 平静
hard - perplexed - 困惑
hard - intrigued - 好奇
hard - crestfallen - 沮丧
hard - abashed - 羞愧
hard - vexed - 恼怒
hard - appreciative - 感激
hard - contrite - 悔恨
hard - buoyed - 振奋
hard - covetous - 贪婪
hard - ostracized - 排斥
hard - adored - 崇拜
hard - livid - 愤怒
hard - equanimous - 平静
hard - poised - 镇定
hard - satiated - 满足
hard - aghast - 惊骇
hard - whimsical - 异想天开
hard - beleaguered - 困扰
hard - sheepish - 羞怯
hard - perturbed - 不安
hard - tender - 温柔
hard - aloof - 冷漠
hard - ebullient - 热情洋溢
hard - lugubrious - 悲哀
hard - rapturous - 狂喜
hard - abject - 悲惨
hard - appeased - 平息
hard - irked - 恼怒
hard - sated - 满足
hard - malcontent - 不满
hard - transported - 狂喜
hard - forlorn - 孤独
hard - rhapsodic - 狂喜
hard - plaintive - 哀伤
hard - fervent - 热情
hard - phlegmatic - 冷静
hard - buoyant - 乐观
hard - sardonic - 讽刺
hard - self-assured - 自信
hard - diffident - 缺乏自信
hard - snug - 舒适
hard - disquieted - 不安
hard - fortified - 加强
hard - imperiled - 危险
hard - ensconced - 安置
hard - vulnerable - 脆弱
hard - stalwart - 坚定
hard - infirm - 虚弱
hard - ebullient - 热情洋溢
hard - torpid - 迟钝
hard - vigilant - 警惕
hard - oblivious - 忘记
hard - lucid - 清醒
hard - stuporous - 昏迷
hard - rejuvenated - 恢复活力
hard - debilitated - 虚弱
hard - galvanized - 激励
hard - enervated - 衰弱
hard - aroused - 唤醒
hard - desensitized - 麻木
hard - vivacious - 活泼
hard - moribund - 垂死
hard - effervescent - 活跃
hard - languid - 无精打采
hard - resilient - 有弹性
hard - disconsolate - 忧郁
hard - blithe - 快乐
hard - doleful - 悲哀
hard - exalted - 高兴
hard - abased - 降低
hard - emboldened - 鼓励
hard - daunted - 气馁
hard - galvanized - 激励
hard - demoralized - 士气低落
hard - tenacious - 坚韧
hard - irresolute - 优柔寡断
hard - unwavering - 坚定
hard - faltering - 犹豫
hard - intrepid - 无畏
hard - timorous - 胆怯
hard - audacious - 大胆
hard - circumspect - 谨慎
hard - venturesome - 冒险
hard - risk-averse - 规避风险
hard - extemporaneous - 即兴
hard - premeditated - 预谋
hard - precipitate - 仓促
hard - judicious - 明智
hard - foolhardy - 鲁莽
hard - sagacious - 睿智
hard - insouciant - 漫不经心
hard - encumbered - 负担
hard - unencumbered - 无负担
hard - vexed - 烦恼
hard - imperturbable - 镇定
hard - agitated - 激动
hard - tranquil - 平静
hard - discomposed - 不安
hard - unperturbed - 镇定
hard - disconcerted - 不安
hard - composed - 镇定
hard - flustered - 慌乱
@@ -0,0 +1,377 @@
easy - rice - 米饭
easy - bread - 面包
easy - water - 水
easy - milk - 牛奶
easy - egg - 鸡蛋
easy - apple - 苹果
easy - banana - 香蕉
easy - orange - 橙子
easy - meat - 肉
easy - fish - 鱼
easy - chicken - 鸡肉
easy - pork - 猪肉
easy - beef - 牛肉
easy - noodles - 面条
easy - soup - 汤
easy - tea - 茶
easy - coffee - 咖啡
easy - juice - 果汁
easy - cake - 蛋糕
easy - candy - 糖果
easy - chocolate - 巧克力
easy - ice cream - 冰淇淋
easy - cookie - 饼干
easy - pizza - 披萨
easy - hamburger - 汉堡
easy - hot dog - 热狗
easy - sandwich - 三明治
easy - salad - 沙拉
easy - potato - 土豆
easy - tomato - 西红柿
easy - carrot - 胡萝卜
easy - cucumber - 黄瓜
easy - onion - 洋葱
easy - garlic - 大蒜
easy - pepper - 辣椒
easy - corn - 玉米
easy - cabbage - 白菜
easy - lettuce - 生菜
easy - spinach - 菠菜
easy - grape - 葡萄
easy - watermelon - 西瓜
easy - strawberry - 草莓
easy - peach - 桃子
easy - pear - 梨
easy - lemon - 柠檬
easy - cherry - 樱桃
easy - pineapple - 菠萝
easy - mango - 芒果
easy - kiwi - 猕猴桃
easy - melon - 甜瓜
easy - sugar - 糖
easy - salt - 盐
easy - oil - 油
easy - butter - 黄油
easy - cheese - 奶酪
easy - yogurt - 酸奶
easy - honey - 蜂蜜
easy - jam - 果酱
easy - sauce - 酱
easy - vinegar - 醋
easy - soy sauce - 酱油
easy - dumpling - 饺子
easy - steamed bun - 馒头
easy - tofu - 豆腐
easy - soybean - 黄豆
easy - peanut - 花生
easy - walnut - 核桃
medium - sushi - 寿司
medium - ramen - 拉面
medium - tempura - 天妇罗
medium - kimchi - 泡菜
medium - curry - 咖喱
medium - pasta - 意大利面
medium - lasagna - 千层面
medium - ravioli - 意大利饺子
medium - risotto - 意大利烩饭
medium - paella - 西班牙海鲜饭
medium - burrito - 墨西哥卷饼
medium - taco - 墨西哥玉米饼
medium - enchilada - 墨西哥卷饼
medium - guacamole - 鳄梨酱
medium - hummus - 鹰嘴豆泥
medium - falafel - 炸豆丸子
medium - kebab - 烤肉串
medium - shawarma - 沙威玛
medium - pho - 越南河粉
medium - pad thai - 泰式炒河粉
medium - satay - 沙爹
medium - dim sum - 点心
medium - wonton - 馄饨
medium - spring roll - 春卷
medium - fried rice - 炒饭
medium - congee - 粥
medium - hot pot - 火锅
medium - barbecue - 烧烤
medium - steak - 牛排
medium - lamb - 羊肉
medium - duck - 鸭肉
medium - bacon - 培根
medium - sausage - 香肠
medium - ham - 火腿
medium - salmon - 三文鱼
medium - tuna - 金枪鱼
medium - shrimp - 虾
medium - crab - 螃蟹
medium - lobster - 龙虾
medium - oyster - 牡蛎
medium - clam - 蛤蜊
medium - squid - 鱿鱼
medium - octopus - 章鱼
medium - seaweed - 海藻
medium - mushroom - 蘑菇
medium - eggplant - 茄子
medium - zucchini - 西葫芦
medium - broccoli - 西兰花
medium - cauliflower - 花菜
medium - asparagus - 芦笋
medium - celery - 芹菜
medium - radish - 萝卜
medium - turnip - 芜菁
medium - pumpkin - 南瓜
medium - squash - 南瓜
medium - bean - 豆子
medium - lentil - 扁豆
medium - chickpea - 鹰嘴豆
medium - almond - 杏仁
medium - cashew - 腰果
medium - pistachio - 开心果
medium - hazelnut - 榛子
medium - chestnut - 栗子
medium - coconut - 椰子
medium - avocado - 鳄梨
medium - papaya - 木瓜
medium - guava - 番石榴
medium - passion fruit - 百香果
medium - dragon fruit - 火龙果
medium - lychee - 荔枝
medium - longan - 龙眼
medium - pomegranate - 石榴
medium - fig - 无花果
medium - date - 椰枣
medium - apricot - 杏
medium - plum - 李子
medium - blueberry - 蓝莓
medium - raspberry - 覆盆子
medium - blackberry - 黑莓
medium - cranberry - 蔓越莓
medium - grapefruit - 葡萄柚
medium - tangerine - 橘子
medium - lime - 青柠
medium - persimmon - 柿子
medium - cantaloupe - 哈密瓜
medium - honeydew - 蜜瓜
medium - flour - 面粉
medium - yeast - 酵母
medium - baking soda - 小苏打
medium - cinnamon - 肉桂
medium - ginger - 姜
medium - turmeric - 姜黄
medium - cumin - 孜然
medium - paprika - 辣椒粉
medium - oregano - 牛至
medium - basil - 罗勒
medium - thyme - 百里香
medium - rosemary - 迷迭香
medium - mint - 薄荷
medium - parsley - 欧芹
medium - cilantro - 香菜
medium - dill - 莳萝
medium - fennel - 茴香
medium - vanilla - 香草
medium - nutmeg - 肉豆蔻
medium - clove - 丁香
medium - cardamom - 豆蔻
medium - saffron - 藏红花
medium - sesame - 芝麻
medium - mayonnaise - 蛋黄酱
medium - ketchup - 番茄酱
medium - mustard - 芥末
medium - wasabi - 芥末
medium - horseradish - 辣根
medium - chili sauce - 辣椒酱
medium - oyster sauce - 蚝油
medium - fish sauce - 鱼露
medium - teriyaki - 照烧酱
medium - miso - 味噌
medium - maple syrup - 枫糖浆
medium - molasses - 糖浆
medium - marmalade - 橘子酱
medium - pesto - 青酱
medium - gravy - 肉汁
medium - broth - 高汤
medium - stock - 高汤
medium - gelatin - 明胶
medium - pectin - 果胶
medium - cornstarch - 玉米淀粉
medium - agar - 琼脂
hard - foie gras - 鹅肝
hard - caviar - 鱼子酱
hard - truffle - 松露
hard - escargot - 蜗牛
hard - prosciutto - 意大利火腿
hard - pancetta - 意大利培根
hard - mortadella - 意大利香肠
hard - chorizo - 西班牙香肠
hard - salami - 萨拉米香肠
hard - pastrami - 熏牛肉
hard - brisket - 牛胸肉
hard - sirloin - 牛腰肉
hard - tenderloin - 里脊
hard - ribeye - 肋眼牛排
hard - filet mignon - 菲力牛排
hard - veal - 小牛肉
hard - venison - 鹿肉
hard - quail - 鹌鹑
hard - pheasant - 野鸡
hard - partridge - 鹧鸪
hard - anchovy - 凤尾鱼
hard - sardine - 沙丁鱼
hard - mackerel - 鲭鱼
hard - herring - 鲱鱼
hard - cod - 鳕鱼
hard - halibut - 大比目鱼
hard - sole - 鳎鱼
hard - flounder - 比目鱼
hard - perch - 鲈鱼
hard - trout - 鳟鱼
hard - pike - 梭子鱼
hard - carp - 鲤鱼
hard - catfish - 鲶鱼
hard - eel - 鳗鱼
hard - conch - 海螺
hard - abalone - 鲍鱼
hard - scallop - 扇贝
hard - mussel - 贻贝
hard - cockle - 鸟蛤
hard - whelk - 峨螺
hard - sea urchin - 海胆
hard - sea cucumber - 海参
hard - jellyfish - 海蜇
hard - artichoke - 洋蓟
hard - arugula - 芝麻菜
hard - endive - 菊苣
hard - radicchio - 红菊苣
hard - bok choy - 白菜
hard - napa cabbage - 大白菜
hard - kohlrabi - 大头菜
hard - kale - 羽衣甘蓝
hard - collard greens - 羽衣甘蓝
hard - chard - 甜菜叶
hard - watercress - 豆瓣菜
hard - leek - 韭葱
hard - shallot - 青葱
hard - scallion - 葱
hard - chive - 细香葱
hard - jicama - 豆薯
hard - taro - 芋头
hard - yam - 山药
hard - parsnip - 欧洲防风草
hard - rutabaga - 芜菁甘蓝
hard - beet - 甜菜
hard - daikon - 白萝卜
hard - okra - 秋葵
hard - bamboo shoot - 竹笋
hard - water chestnut - 荸荠
hard - lotus root - 莲藕
hard - shiitake - 香菇
hard - enoki - 金针菇
hard - oyster mushroom - 平菇
hard - porcini - 牛肝菌
hard - chanterelle - 鸡油菌
hard - morel - 羊肚菌
hard - truffle - 松露菌
hard - rambutan - 红毛丹
hard - durian - 榴莲
hard - mangosteen - 山竹
hard - starfruit - 杨桃
hard - jackfruit - 菠萝蜜
hard - breadfruit - 面包果
hard - kumquat - 金桔
hard - quince - 榅桲
hard - medlar - 欧楂
hard - elderberry - 接骨木果
hard - gooseberry - 醋栗
hard - currant - 黑醋栗
hard - mulberry - 桑葚
hard - acai - 巴西莓
hard - goji berry - 枸杞
hard - tamarind - 罗望子
hard - carob - 角豆
hard - anise - 茴芹
hard - caraway - 香菜籽
hard - coriander - 芫荽
hard - fenugreek - 胡芦巴
hard - marjoram - 墨角兰
hard - sage - 鼠尾草
hard - savory - 香薄荷
hard - tarragon - 龙蒿
hard - chervil - 细叶芹
hard - sorrel - 酢浆草
hard - bay leaf - 月桂叶
hard - lemongrass - 柠檬草
hard - galangal - 高良姜
hard - kaffir lime - 泰国青柠
hard - star anise - 八角
hard - szechuan pepper - 花椒
hard - black pepper - 黑胡椒
hard - white pepper - 白胡椒
hard - cayenne - 卡宴辣椒
hard - chipotle - 墨西哥辣椒
hard - habanero - 哈瓦那辣椒
hard - jalapeño - 墨西哥青椒
hard - poblano - 波布拉诺辣椒
hard - serrano - 塞拉诺辣椒
hard - allspice - 多香果
hard - juniper - 杜松子
hard - sumac - 漆树
hard - asafoetida - 阿魏
hard - mace - 肉豆蔻皮
hard - capers - 酸豆
hard - tahini - 芝麻酱
hard - mirin - 味淋
hard - sake - 清酒
hard - rice vinegar - 米醋
hard - balsamic vinegar - 香醋
hard - sherry vinegar - 雪利酒醋
hard - apple cider vinegar - 苹果醋
hard - tamarind paste - 罗望子酱
hard - hoisin sauce - 海鲜酱
hard - plum sauce - 梅子酱
hard - black bean sauce - 豆豉酱
hard - sambal - 参巴酱
hard - sriracha - 是拉差辣酱
hard - gochujang - 韩国辣酱
hard - harissa - 哈里萨辣酱
hard - chimichurri - 青酱
hard - aioli - 蒜泥蛋黄酱
hard - rouille - 红辣椒蒜泥蛋黄酱
hard - remoulade - 雷莫拉德酱
hard - béarnaise - 贝亚恩酱
hard - hollandaise - 荷兰酱
hard - béchamel - 白酱
hard - velouté - 白汁
hard - espagnole - 西班牙酱
hard - demi-glace - 半釉汁
hard - bordelaise - 波尔多酱
hard - chasseur - 猎人酱
hard - lyonnaise - 里昂酱
hard - provençale - 普罗旺斯酱
hard - normande - 诺曼底酱
hard - mornay - 莫内酱
hard - soubise - 洋葱酱
hard - ravigote - 酸辣酱
hard - gribiche - 法式酸菜酱
hard - chutney - 酸辣酱
hard - relish - 调味酱
hard - piccalilli - 印度泡菜
hard - mostarda - 芥末水果
hard - membrillo - 木瓜酱
hard - compote - 蜜饯
hard - conserve - 果酱
hard - confiture - 果酱
hard - coulis - 果泥
hard - gastrique - 焦糖醋汁
hard - reduction - 浓缩汁
hard - jus - 肉汁
hard - fumet - 鱼汤
hard - court bouillon - 清汤
hard - consommé - 清汤
hard - bisque - 浓汤
hard - chowder - 海鲜浓汤
hard - gumbo - 秋葵浓汤
hard - minestrone - 意大利蔬菜汤
hard - gazpacho - 西班牙冷汤
hard - vichyssoise - 冷韭葱汤
hard - borscht - 罗宋汤
@@ -0,0 +1,263 @@
easy - song - 歌曲
easy - music - 音乐
easy - sing - 唱歌
easy - dance - 跳舞
easy - piano - 钢琴
easy - guitar - 吉他
easy - drum - 鼓
easy - violin - 小提琴
easy - flute - 笛子
easy - trumpet - 小号
easy - singer - 歌手
easy - band - 乐队
easy - concert - 音乐会
easy - stage - 舞台
easy - microphone - 麦克风
easy - speaker - 扬声器
easy - radio - 收音机
easy - CD - 光盘
easy - record - 唱片
easy - album - 专辑
easy - melody - 旋律
easy - rhythm - 节奏
easy - beat - 节拍
easy - tempo - 速度
easy - loud - 大声
easy - quiet - 安静
easy - fast - 快
easy - slow - 慢
easy - high - 高音
easy - low - 低音
easy - note - 音符
easy - scale - 音阶
easy - chord - 和弦
easy - key - 调
easy - sharp - 升号
easy - flat - 降号
easy - major - 大调
easy - minor - 小调
easy - rock - 摇滚
easy - pop - 流行音乐
easy - jazz - 爵士乐
easy - blues - 蓝调
easy - folk - 民谣
easy - country - 乡村音乐
easy - classical - 古典音乐
easy - opera - 歌剧
easy - rap - 说唱
easy - hip hop - 嘻哈
easy - disco - 迪斯科
easy - techno - 电子音乐
easy - metal - 金属乐
easy - punk - 朋克
easy - reggae - 雷鬼
easy - soul - 灵魂乐
easy - funk - 放克
easy - gospel - 福音音乐
easy - ballad - 民谣
easy - anthem - 国歌
easy - hymn - 赞美诗
easy - lullaby - 摇篮曲
easy - march - 进行曲
easy - waltz - 华尔兹
easy - tango - 探戈
easy - salsa - 萨尔萨
easy - samba - 桑巴
easy - rumba - 伦巴
medium - saxophone - 萨克斯风
medium - clarinet - 单簧管
medium - oboe - 双簧管
medium - bassoon - 巴松管
medium - trombone - 长号
medium - tuba - 大号
medium - horn - 圆号
medium - cornet - 短号
medium - bugle - 军号
medium - harmonica - 口琴
medium - accordion - 手风琴
medium - organ - 管风琴
medium - keyboard - 键盘
medium - synthesizer - 合成器
medium - xylophone - 木琴
medium - marimba - 马林巴
medium - vibraphone - 颤音琴
medium - glockenspiel - 钟琴
medium - timpani - 定音鼓
medium - cymbal - 钹
medium - tambourine - 铃鼓
medium - triangle - 三角铁
medium - castanets - 响板
medium - maracas - 沙槌
medium - bongo - 邦戈鼓
medium - conga - 康加鼓
medium - djembe - 非洲鼓
medium - tabla - 塔布拉鼓
medium - sitar - 西塔琴
medium - banjo - 班卓琴
medium - mandolin - 曼陀林
medium - ukulele - 尤克里里
medium - harp - 竖琴
medium - lute - 琵琶
medium - zither - 古筝
medium - dulcimer - 扬琴
medium - bagpipe - 风笛
medium - recorder - 竖笛
medium - piccolo - 短笛
medium - bass - 贝斯
medium - cello - 大提琴
medium - viola - 中提琴
medium - double bass - 低音提琴
medium - fiddle - 小提琴
medium - bow - 琴弓
medium - string - 弦
medium - fret - 品
medium - pick - 拨片
medium - plectrum - 拨片
medium - tuning - 调音
medium - pitch - 音高
medium - octave - 八度
medium - interval - 音程
medium - harmony - 和声
medium - counterpoint - 对位
medium - polyphony - 复调
medium - homophony - 主调
medium - monophony - 单声部
medium - unison - 齐唱
medium - canon - 卡农
medium - fugue - 赋格
medium - sonata - 奏鸣曲
medium - symphony - 交响曲
medium - concerto - 协奏曲
medium - suite - 组曲
medium - overture - 序曲
medium - prelude - 前奏曲
medium - interlude - 间奏曲
medium - postlude - 后奏曲
medium - etude - 练习曲
medium - nocturne - 夜曲
medium - serenade - 小夜曲
medium - rhapsody - 狂想曲
medium - fantasia - 幻想曲
medium - caprice - 随想曲
medium - impromptu - 即兴曲
medium - scherzo - 谐谑曲
medium - minuet - 小步舞曲
medium - mazurka - 玛祖卡
medium - polonaise - 波兰舞曲
medium - gavotte - 加沃特
medium - bourree - 布列舞曲
medium - gigue - 吉格舞曲
medium - sarabande - 萨拉班德
medium - allemande - 阿勒曼德
medium - courante - 库朗特
medium - pavane - 帕凡舞曲
medium - galliard - 加利亚德
medium - tarantella - 塔兰泰拉
medium - bolero - 波莱罗
medium - fandango - 凡丹戈
medium - flamenco - 弗拉明戈
medium - habanera - 哈巴涅拉
medium - bossa nova - 波萨诺瓦
medium - mambo - 曼波
medium - cha-cha - 恰恰
medium - foxtrot - 狐步舞
medium - quickstep - 快步舞
medium - jive - 捷舞
medium - swing - 摇摆舞
hard - contrabassoon - 低音巴松
hard - English horn - 英国管
hard - alto saxophone - 中音萨克斯
hard - tenor saxophone - 高音萨克斯
hard - baritone saxophone - 上低音萨克斯
hard - soprano saxophone - 女高音萨克斯
hard - flugelhorn - 富鲁格号
hard - euphonium - 上低音号
hard - sousaphone - 苏萨号
hard - mellophone - 圆号
hard - Wagner tuba - 瓦格纳大号
hard - serpent - 蛇形号
hard - ophicleide - 奥菲克莱德号
hard - shawm - 肖姆管
hard - crumhorn - 克鲁姆管
hard - rackett - 拉克特管
hard - dulcian - 杜尔西安管
hard - chalumeau - 沙吕莫管
hard - ocarina - 陶笛
hard - panpipes - 排箫
hard - shakuhachi - 尺八
hard - didgeridoo - 迪吉里杜管
hard - alphorn - 阿尔卑斯号
hard - conch - 海螺号
hard - shofar - 羊角号
hard - vuvuzela - 呜呜祖拉
hard - kazoo - 卡祖笛
hard - melodica - 口风琴
hard - concertina - 六角手风琴
hard - bandoneon - 班多钮手风琴
hard - hurdy-gurdy - 绞弦琴
hard - autoharp - 自动竖琴
hard - psaltery - 索尔特里琴
hard - lyre - 里拉琴
hard - koto - 筝
hard - shamisen - 三味线
hard - erhu - 二胡
hard - pipa - 琵琶
hard - guqin - 古琴
hard - guzheng - 古筝
hard - yangqin - 扬琴
hard - sanxian - 三弦
hard - ruan - 阮
hard - liuqin - 柳琴
hard - zhongruan - 中阮
hard - daruan - 大阮
hard - dizi - 笛子
hard - xiao - 箫
hard - sheng - 笙
hard - suona - 唢呐
hard - gong - 锣
hard - chime - 编钟
hard - clapper - 梆子
hard - woodblock - 木鱼
hard - temple block - 木鱼
hard - cowbell - 牛铃
hard - agogo - 阿戈戈铃
hard - cabasa - 卡巴萨
hard - guiro - 刮瓜
hard - vibraslap - 颤音器
hard - flexatone - 弹音器
hard - ratchet - 齿轮
hard - slapstick - 拍板
hard - whip - 鞭子
hard - thundersheet - 雷板
hard - wind machine - 风声器
hard - rain stick - 雨棍
hard - ocean drum - 海浪鼓
hard - lion's roar - 狮吼
hard - cuica - 库伊卡
hard - berimbau - 贝林巴乌
hard - kalimba - 卡林巴
hard - mbira - 姆比拉
hard - balafon - 巴拉风
hard - gamelan - 甘美兰
hard - angklung - 昂格隆
hard - theremin - 特雷门琴
hard - ondes Martenot - 马特诺琴
hard - glass harmonica - 玻璃琴
hard - musical saw - 锯琴
hard - waterphone - 水琴
hard - hang drum - 手碟
hard - steel drum - 钢鼓
hard - handpan - 手碟
hard - cajón - 卡洪鼓
hard - bodhrán - 博德兰鼓
hard - darbuka - 达布卡鼓
hard - doumbek - 杜姆贝克鼓
hard - ashiko - 阿希科鼓
hard - talking drum - 会说话的鼓
hard - udu - 乌杜鼓
hard - frame drum - 框鼓
hard - dhol - 多尔鼓
hard - dholak - 多拉克鼓
hard - mridangam - 姆里丹加姆鼓
hard - pakhawaj - 帕卡瓦吉鼓
@@ -0,0 +1,390 @@
easy - tree - 树
easy - flower - 花
easy - grass - 草
easy - leaf - 叶子
easy - branch - 树枝
easy - root - 根
easy - seed - 种子
easy - fruit - 水果
easy - plant - 植物
easy - bush - 灌木
easy - forest - 森林
easy - mountain - 山
easy - river - 河
easy - lake - 湖
easy - ocean - 海洋
easy - sea - 海
easy - beach - 海滩
easy - wave - 波浪
easy - sand - 沙子
easy - rock - 岩石
easy - stone - 石头
easy - soil - 土壤
easy - mud - 泥
easy - dirt - 泥土
easy - water - 水
easy - rain - 雨
easy - snow - 雪
easy - ice - 冰
easy - cloud - 云
easy - sky - 天空
easy - sun - 太阳
easy - moon - 月亮
easy - star - 星星
easy - wind - 风
easy - storm - 暴风雨
easy - thunder - 雷
easy - lightning - 闪电
easy - rainbow - 彩虹
easy - fog - 雾
easy - mist - 薄雾
easy - dew - 露水
easy - frost - 霜
easy - fire - 火
easy - flame - 火焰
easy - smoke - 烟
easy - ash - 灰烬
easy - coal - 煤
easy - diamond - 钻石
easy - gold - 金
easy - silver - 银
easy - copper - 铜
easy - iron - 铁
easy - metal - 金属
easy - mineral - 矿物
easy - crystal - 水晶
easy - gem - 宝石
easy - pearl - 珍珠
easy - shell - 贝壳
easy - coral - 珊瑚
easy - seaweed - 海藻
easy - moss - 苔藓
easy - fern - 蕨类
easy - bamboo - 竹子
easy - cactus - 仙人掌
easy - palm - 棕榈
easy - pine - 松树
easy - oak - 橡树
easy - maple - 枫树
medium - willow - 柳树
medium - birch - 桦树
medium - cedar - 雪松
medium - cypress - 柏树
medium - elm - 榆树
medium - ash - 白蜡树
medium - beech - 山毛榉
medium - poplar - 杨树
medium - aspen - 白杨
medium - sycamore - 梧桐
medium - chestnut - 栗树
medium - walnut - 核桃树
medium - cherry - 樱桃树
medium - apple - 苹果树
medium - pear - 梨树
medium - plum - 李树
medium - peach - 桃树
medium - apricot - 杏树
medium - magnolia - 木兰
medium - dogwood - 山茱萸
medium - redwood - 红杉
medium - sequoia - 巨杉
medium - eucalyptus - 桉树
medium - acacia - 相思树
medium - mahogany - 桃花心木
medium - teak - 柚木
medium - ebony - 乌木
medium - sandalwood - 檀香木
medium - rosewood - 红木
medium - ivy - 常春藤
medium - vine - 藤蔓
medium - creeper - 爬藤
medium - climber - 攀缘植物
medium - hedge - 树篱
medium - shrub - 灌木
medium - thicket - 灌木丛
medium - undergrowth - 下层植被
medium - canopy - 树冠
medium - foliage - 叶子
medium - blossom - 花朵
medium - bloom - 花
medium - bud - 花蕾
medium - petal - 花瓣
medium - stem - 茎
medium - stalk - 茎秆
medium - thorn - 刺
medium - bark - 树皮
medium - trunk - 树干
medium - sapling - 树苗
medium - seedling - 幼苗
medium - sprout - 新芽
medium - shoot - 嫩枝
medium - twig - 细枝
medium - stump - 树桩
medium - log - 圆木
medium - timber - 木材
medium - lumber - 木材
medium - firewood - 柴火
medium - kindling - 引火柴
medium - charcoal - 木炭
medium - peat - 泥炭
medium - turf - 草皮
medium - sod - 草皮
medium - lawn - 草坪
medium - meadow - 草地
medium - field - 田野
medium - pasture - 牧场
medium - prairie - 草原
medium - savanna - 热带草原
medium - steppe - 草原
medium - tundra - 苔原
medium - taiga - 针叶林
medium - rainforest - 雨林
medium - jungle - 丛林
medium - woodland - 林地
medium - grove - 小树林
medium - copse - 矮树林
medium - thicket - 灌木丛
medium - scrubland - 灌木地
medium - brushwood - 灌木林
medium - wilderness - 荒野
medium - wetland - 湿地
medium - swamp - 沼泽
medium - marsh - 沼泽
medium - bog - 泥沼
medium - fen - 沼泽
medium - moor - 荒野
medium - heath - 荒地
medium - dune - 沙丘
medium - oasis - 绿洲
medium - canyon - 峡谷
medium - gorge - 峡谷
medium - ravine - 峡谷
medium - valley - 山谷
medium - dale - 山谷
medium - glen - 幽谷
medium - hollow - 山谷
medium - basin - 盆地
medium - plain - 平原
medium - plateau - 高原
medium - mesa - 平顶山
medium - butte - 孤山
medium - cliff - 悬崖
medium - precipice - 悬崖
medium - crag - 峭壁
medium - bluff - 断崖
medium - escarpment - 陡坡
medium - slope - 斜坡
medium - hillside - 山坡
medium - foothill - 山麓
medium - ridge - 山脊
medium - crest - 山顶
medium - peak - 山峰
medium - summit - 山顶
medium - pinnacle - 顶峰
medium - volcano - 火山
medium - crater - 火山口
medium - caldera - 火山口
medium - lava - 熔岩
medium - magma - 岩浆
medium - eruption - 喷发
medium - geyser - 间歇泉
medium - hot spring - 温泉
medium - spring - 泉
medium - fountain - 泉水
medium - well - 井
medium - stream - 小溪
medium - brook - 小河
medium - creek - 小溪
medium - rivulet - 小河
medium - tributary - 支流
medium - rapids - 急流
medium - waterfall - 瀑布
medium - cascade - 小瀑布
medium - cataract - 大瀑布
hard - conifer - 针叶树
hard - deciduous - 落叶树
hard - evergreen - 常绿树
hard - broadleaf - 阔叶树
hard - hardwood - 硬木
hard - softwood - 软木
hard - sapwood - 边材
hard - heartwood - 心材
hard - cambium - 形成层
hard - phloem - 韧皮部
hard - xylem - 木质部
hard - chlorophyll - 叶绿素
hard - photosynthesis - 光合作用
hard - transpiration - 蒸腾作用
hard - respiration - 呼吸作用
hard - germination - 发芽
hard - pollination - 授粉
hard - fertilization - 受精
hard - propagation - 繁殖
hard - cultivation - 栽培
hard - horticulture - 园艺
hard - arboriculture - 树木栽培
hard - silviculture - 造林
hard - forestry - 林业
hard - deforestation - 森林砍伐
hard - reforestation - 重新造林
hard - afforestation - 植树造林
hard - conservation - 保护
hard - preservation - 保存
hard - ecosystem - 生态系统
hard - biodiversity - 生物多样性
hard - habitat - 栖息地
hard - biome - 生物群系
hard - estuary - 河口
hard - delta - 三角洲
hard - fjord - 峡湾
hard - sound - 海湾
hard - strait - 海峡
hard - channel - 海峡
hard - archipelago - 群岛
hard - atoll - 环礁
hard - lagoon - 泻湖
hard - reef - 礁石
hard - shoal - 浅滩
hard - sandbar - 沙洲
hard - spit - 沙嘴
hard - headland - 岬
hard - promontory - 海角
hard - peninsula - 半岛
hard - isthmus - 地峡
hard - coast - 海岸
hard - coastline - 海岸线
hard - shoreline - 海岸线
hard - littoral - 沿海地区
hard - tidemark - 潮汐线
hard - high tide - 高潮
hard - low tide - 低潮
hard - neap tide - 小潮
hard - spring tide - 大潮
hard - tidal pool - 潮池
hard - rockpool - 岩池
hard - current - 洋流
hard - undercurrent - 暗流
hard - undertow - 回流
hard - riptide - 离岸流
hard - eddy - 涡流
hard - whirlpool - 漩涡
hard - maelstrom - 大漩涡
hard - vortex - 漩涡
hard - wave crest - 波峰
hard - wave trough - 波谷
hard - breaker - 碎浪
hard - surf - 拍岸浪
hard - swell - 涌浪
hard - ripple - 涟漪
hard - tsunami - 海啸
hard - tidal wave - 潮汐波
hard - storm surge - 风暴潮
hard - monsoon - 季风
hard - typhoon - 台风
hard - hurricane - 飓风
hard - cyclone - 气旋
hard - tornado - 龙卷风
hard - twister - 旋风
hard - whirlwind - 旋风
hard - dust devil - 尘卷风
hard - sandstorm - 沙尘暴
hard - blizzard - 暴风雪
hard - squall - 狂风
hard - gale - 大风
hard - tempest - 暴风雨
hard - deluge - 暴雨
hard - downpour - 倾盆大雨
hard - drizzle - 细雨
hard - shower - 阵雨
hard - precipitation - 降水
hard - hail - 冰雹
hard - sleet - 雨夹雪
hard - snowflake - 雪花
hard - snowfall - 降雪
hard - avalanche - 雪崩
hard - glacier - 冰川
hard - iceberg - 冰山
hard - ice sheet - 冰盖
hard - ice shelf - 冰架
hard - ice floe - 浮冰
hard - pack ice - 浮冰群
hard - permafrost - 永冻层
hard - hoarfrost - 白霜
hard - rime - 雾凇
hard - icicle - 冰柱
hard - stalactite - 钟乳石
hard - stalagmite - 石笋
hard - limestone - 石灰岩
hard - marble - 大理石
hard - granite - 花岗岩
hard - basalt - 玄武岩
hard - obsidian - 黑曜石
hard - pumice - 浮石
hard - sandstone - 砂岩
hard - shale - 页岩
hard - slate - 板岩
hard - quartzite - 石英岩
hard - schist - 片岩
hard - gneiss - 片麻岩
hard - conglomerate - 砾岩
hard - breccia - 角砾岩
hard - sediment - 沉积物
hard - silt - 淤泥
hard - clay - 黏土
hard - loam - 壤土
hard - topsoil - 表层土
hard - subsoil - 底土
hard - bedrock - 基岩
hard - mantle - 地幔
hard - crust - 地壳
hard - core - 地核
hard - tectonic plate - 构造板块
hard - fault line - 断层线
hard - earthquake - 地震
hard - seismic - 地震的
hard - tremor - 震动
hard - aftershock - 余震
hard - epicenter - 震中
hard - magnitude - 震级
hard - richter scale - 里氏震级
hard - landslide - 滑坡
hard - mudslide - 泥石流
hard - rockfall - 落石
hard - erosion - 侵蚀
hard - weathering - 风化
hard - sedimentation - 沉积
hard - deposition - 沉积
hard - alluvium - 冲积层
hard - moraine - 冰碛
hard - scree - 碎石堆
hard - talus - 岩屑堆
hard - boulder - 巨石
hard - pebble - 卵石
hard - gravel - 砾石
hard - cobblestone - 鹅卵石
hard - bedding plane - 层理面
hard - stratum - 地层
hard - outcrop - 露头
hard - vein - 矿脉
hard - ore - 矿石
hard - deposit - 矿床
hard - fossil - 化石
hard - amber - 琥珀
hard - petrification - 石化
hard - mineralization - 矿化
hard - crystallization - 结晶
hard - gemstone - 宝石
hard - emerald - 祖母绿
hard - ruby - 红宝石
hard - sapphire - 蓝宝石
hard - topaz - 黄玉
hard - amethyst - 紫水晶
hard - turquoise - 绿松石
hard - jade - 翡翠
hard - opal - 蛋白石
hard - garnet - 石榴石
hard - quartz - 石英
hard - feldspar - 长石
hard - mica - 云母
hard - graphite - 石墨
@@ -0,0 +1,433 @@
easy - table - 桌子
easy - chair - 椅子
easy - bed - 床
easy - door - 门
easy - window - 窗户
easy - lamp - 灯
easy - book - 书
easy - pen - 笔
easy - pencil - 铅笔
easy - paper - 纸
easy - bag - 包
easy - box - 盒子
easy - cup - 杯子
easy - plate - 盘子
easy - bowl - 碗
easy - spoon - 勺子
easy - fork - 叉子
easy - knife - 刀
easy - bottle - 瓶子
easy - glass - 玻璃杯
easy - phone - 电话
easy - computer - 电脑
easy - TV - 电视
easy - clock - 时钟
easy - watch - 手表
easy - key - 钥匙
easy - lock - 锁
easy - mirror - 镜子
easy - picture - 图片
easy - painting - 画
easy - photo - 照片
easy - camera - 相机
easy - umbrella - 雨伞
easy - towel - 毛巾
easy - soap - 肥皂
easy - toothbrush - 牙刷
easy - comb - 梳子
easy - brush - 刷子
easy - scissors - 剪刀
easy - needle - 针
easy - thread - 线
easy - button - 纽扣
easy - zipper - 拉链
easy - pillow - 枕头
easy - blanket - 毯子
easy - sheet - 床单
easy - curtain - 窗帘
easy - rug - 地毯
easy - mat - 垫子
easy - basket - 篮子
easy - bucket - 桶
easy - broom - 扫帚
easy - mop - 拖把
easy - sponge - 海绵
easy - cloth - 布
easy - rope - 绳子
easy - string - 绳子
easy - wire - 电线
easy - nail - 钉子
easy - screw - 螺丝
easy - hammer - 锤子
easy - wrench - 扳手
easy - screwdriver - 螺丝刀
easy - saw - 锯
easy - drill - 钻
easy - ladder - 梯子
easy - wheel - 轮子
easy - tire - 轮胎
easy - engine - 引擎
medium - sofa - 沙发
medium - couch - 长沙发
medium - armchair - 扶手椅
medium - stool - 凳子
medium - bench - 长凳
medium - desk - 书桌
medium - cabinet - 柜子
medium - shelf - 架子
medium - bookcase - 书架
medium - wardrobe - 衣柜
medium - dresser - 梳妆台
medium - nightstand - 床头柜
medium - mattress - 床垫
medium - headboard - 床头板
medium - footboard - 床尾板
medium - bedframe - 床架
medium - canopy - 床罩
medium - duvet - 羽绒被
medium - comforter - 被子
medium - quilt - 被子
medium - bedspread - 床罩
medium - pillowcase - 枕套
medium - cushion - 靠垫
medium - ottoman - 脚凳
medium - recliner - 躺椅
medium - rocking chair - 摇椅
medium - highchair - 高脚椅
medium - booster seat - 增高座椅
medium - chandelier - 吊灯
medium - pendant - 吊灯
medium - sconce - 壁灯
medium - spotlight - 聚光灯
medium - flashlight - 手电筒
medium - lantern - 灯笼
medium - candle - 蜡烛
medium - candlestick - 烛台
medium - vase - 花瓶
medium - pot - 锅
medium - pan - 平底锅
medium - wok - 炒锅
medium - skillet - 煎锅
medium - kettle - 水壶
medium - teapot - 茶壶
medium - pitcher - 水罐
medium - jug - 壶
medium - carafe - 玻璃水瓶
medium - decanter - 醒酒器
medium - mug - 马克杯
medium - saucer - 茶托
medium - platter - 大盘子
medium - tray - 托盘
medium - cutting board - 砧板
medium - colander - 滤器
medium - strainer - 过滤器
medium - grater - 擦菜板
medium - peeler - 削皮器
medium - whisk - 打蛋器
medium - spatula - 铲子
medium - ladle - 勺子
medium - tongs - 夹子
medium - can opener - 开罐器
medium - corkscrew - 开瓶器
medium - bottle opener - 开瓶器
medium - rolling pin - 擀面杖
medium - measuring cup - 量杯
medium - scale - 秤
medium - timer - 定时器
medium - blender - 搅拌机
medium - mixer - 搅拌器
medium - toaster - 烤面包机
medium - oven - 烤箱
medium - microwave - 微波炉
medium - stove - 炉子
medium - refrigerator - 冰箱
medium - freezer - 冰柜
medium - dishwasher - 洗碗机
medium - sink - 水槽
medium - faucet - 水龙头
medium - drain - 排水管
medium - pipe - 管子
medium - valve - 阀门
medium - hose - 软管
medium - sprinkler - 洒水器
medium - watering can - 喷壶
medium - shovel - 铲子
medium - spade - 铁锹
medium - rake - 耙子
medium - hoe - 锄头
medium - trowel - 泥刀
medium - shears - 大剪刀
medium - clippers - 剪刀
medium - pruner - 修枝剪
medium - axe - 斧头
medium - hatchet - 短柄斧
medium - chisel - 凿子
medium - plane - 刨子
medium - file - 锉刀
medium - sandpaper - 砂纸
medium - pliers - 钳子
medium - clamp - 夹具
medium - vise - 虎钳
medium - crowbar - 撬棍
medium - lever - 杠杆
medium - pulley - 滑轮
medium - jack - 千斤顶
medium - hinge - 铰链
medium - bolt - 螺栓
medium - nut - 螺母
medium - washer - 垫圈
medium - rivet - 铆钉
medium - dowel - 暗榫
medium - peg - 木钉
medium - hook - 钩子
medium - latch - 门闩
medium - knob - 把手
medium - handle - 把手
medium - lever - 杠杆
medium - switch - 开关
medium - socket - 插座
medium - plug - 插头
medium - adapter - 适配器
medium - extension cord - 延长线
medium - battery - 电池
medium - charger - 充电器
medium - remote - 遥控器
medium - antenna - 天线
medium - speaker - 扬声器
medium - headphones - 耳机
medium - earbuds - 耳塞
medium - microphone - 麦克风
medium - keyboard - 键盘
medium - mouse - 鼠标
medium - monitor - 显示器
medium - screen - 屏幕
medium - printer - 打印机
medium - scanner - 扫描仪
medium - router - 路由器
medium - modem - 调制解调器
medium - cable - 电缆
medium - flash drive - 闪存盘
medium - hard drive - 硬盘
medium - disc - 光盘
medium - cartridge - 墨盒
medium - stapler - 订书机
medium - staple - 订书钉
medium - paperclip - 回形针
medium - tape - 胶带
medium - glue - 胶水
medium - ruler - 尺子
medium - protractor - 量角器
medium - compass - 圆规
medium - calculator - 计算器
medium - eraser - 橡皮
medium - sharpener - 削笔刀
medium - marker - 马克笔
medium - highlighter - 荧光笔
medium - crayon - 蜡笔
medium - chalk - 粉笔
medium - easel - 画架
medium - canvas - 画布
medium - palette - 调色板
medium - paintbrush - 画笔
hard - chiffonier - 五斗柜
hard - credenza - 餐具柜
hard - sideboard - 餐具柜
hard - buffet - 餐具柜
hard - hutch - 碗橱
hard - armoire - 大衣柜
hard - chifforobe - 衣橱
hard - tallboy - 高脚柜
hard - lowboy - 矮脚柜
hard - commode - 五斗柜
hard - secretaire - 写字台
hard - davenport - 写字台
hard - escritoire - 写字桌
hard - bureau - 写字台
hard - vanity - 梳妆台
hard - console - 控制台
hard - pedestal - 基座
hard - lectern - 讲台
hard - podium - 讲台
hard - rostrum - 演讲台
hard - dais - 讲台
hard - pulpit - 讲道坛
hard - prie-dieu - 祈祷台
hard - chaise longue - 躺椅
hard - settee - 长椅
hard - loveseat - 双人沙发
hard - divan - 长沙发
hard - futon - 蒲团
hard - daybed - 沙发床
hard - trundle bed - 脚轮床
hard - bunk bed - 双层床
hard - crib - 婴儿床
hard - cradle - 摇篮
hard - bassinet - 摇篮
hard - hammock - 吊床
hard - pallet - 草垫
hard - cot - 帆布床
hard - camp bed - 行军床
hard - folding chair - 折叠椅
hard - deck chair - 躺椅
hard - lawn chair - 草坪椅
hard - director's chair - 导演椅
hard - sling chair - 吊椅
hard - swivel chair - 转椅
hard - ergonomic chair - 人体工学椅
hard - barstool - 酒吧凳
hard - footstool - 脚凳
hard - hassock - 软凳
hard - pouffe - 软垫
hard - beanbag - 豆袋椅
hard - tabouret - 无靠背凳
hard - tuffet - 矮凳
hard - credence - 供桌
hard - refectory table - 长餐桌
hard - trestle table - 支架桌
hard - gateleg table - 折叠桌
hard - drop-leaf table - 折叶桌
hard - pedestal table - 底座桌
hard - console table - 玄关桌
hard - sofa table - 沙发桌
hard - coffee table - 茶几
hard - end table - 边桌
hard - occasional table - 茶几
hard - nesting tables - 套桌
hard - card table - 纸牌桌
hard - drafting table - 绘图桌
hard - easel - 画架
hard - lectern - 讲台
hard - music stand - 乐谱架
hard - coat rack - 衣帽架
hard - hall tree - 衣帽架
hard - umbrella stand - 伞架
hard - magazine rack - 杂志架
hard - shoe rack - 鞋架
hard - wine rack - 酒架
hard - towel rack - 毛巾架
hard - drying rack - 晾衣架
hard - clothes horse - 晾衣架
hard - garment rack - 衣架
hard - coat hanger - 衣架
hard - trouser press - 裤子夹
hard - shoe tree - 鞋楦
hard - hatbox - 帽盒
hard - bandbox - 纸盒
hard - carton - 纸箱
hard - crate - 木箱
hard - chest - 箱子
hard - trunk - 大箱子
hard - footlocker - 脚箱
hard - steamer trunk - 蒸汽箱
hard - hope chest - 嫁妆箱
hard - coffer - 保险箱
hard - strongbox - 保险箱
hard - safe - 保险箱
hard - vault - 保险库
hard - lockbox - 上锁盒
hard - casket - 首饰盒
hard - jewel box - 首饰盒
hard - trinket box - 小饰品盒
hard - snuffbox - 鼻烟盒
hard - pillbox - 药盒
hard - compact - 粉盒
hard - cigarette case - 烟盒
hard - cigar box - 雪茄盒
hard - humidor - 雪茄盒
hard - caddy - 茶叶罐
hard - canister - 罐
hard - jar - 罐子
hard - crock - 瓦罐
hard - urn - 瓮
hard - amphora - 双耳瓶
hard - ewer - 大口水壶
hard - flagon - 大酒壶
hard - tankard - 大酒杯
hard - stein - 啤酒杯
hard - goblet - 高脚杯
hard - chalice - 圣杯
hard - tumbler - 平底杯
hard - beaker - 烧杯
hard - flask - 烧瓶
hard - retort - 曲颈瓶
hard - crucible - 坩埚
hard - mortar - 研钵
hard - pestle - 杵
hard - grindstone - 磨石
hard - whetstone - 磨刀石
hard - hone - 磨石
hard - strop - 磨刀皮带
hard - anvil - 铁砧
hard - bellows - 风箱
hard - forge - 熔炉
hard - cauldron - 大锅
hard - brazier - 火盆
hard - chafing dish - 火锅
hard - tureen - 汤碗
hard - terrine - 陶罐
hard - casserole - 砂锅
hard - Dutch oven - 荷兰烤锅
hard - pressure cooker - 压力锅
hard - double boiler - 双层蒸锅
hard - steamer - 蒸锅
hard - roaster - 烤盘
hard - griddle - 平底锅
hard - saucepan - 炖锅
hard - stockpot - 汤锅
hard - skimmer - 撇油勺
hard - slotted spoon - 漏勺
hard - serving spoon - 上菜勺
hard - soup ladle - 汤勺
hard - gravy boat - 肉汁船
hard - creamer - 奶油罐
hard - sugar bowl - 糖罐
hard - butter dish - 黄油碟
hard - salt cellar - 盐罐
hard - pepper mill - 胡椒研磨器
hard - cruet - 调味瓶
hard - napkin ring - 餐巾环
hard - tablecloth - 桌布
hard - place mat - 餐垫
hard - doily - 装饰垫
hard - antimacassar - 椅套
hard - slipcover - 沙发套
hard - upholstery - 室内装潢
hard - tapestry - 挂毯
hard - drapery - 帷幕
hard - valance - 帷幔
hard - pelmet - 窗帘盒
hard - cornice - 檐口
hard - finial - 顶饰
hard - baluster - 栏杆柱
hard - balustrade - 栏杆
hard - banister - 扶手
hard - newel post - 楼梯柱
hard - spindle - 纺锤
hard - strut - 支柱
hard - brace - 支架
hard - bracket - 托架
hard - corbel - 托臂
hard - lintel - 过梁
hard - transom - 横梁
hard - jamb - 门框
hard - sill - 窗台
hard - mullion - 竖框
hard - muntin - 窗格条
hard - casement - 窗扇
hard - shutter - 百叶窗
hard - louver - 百叶窗
hard - blind - 百叶窗
hard - shade - 遮阳帘
hard - awning - 遮篷
hard - canopy - 天篷
hard - marquee - 大帐篷
hard - pavilion - 凉亭
hard - gazebo - 凉亭
hard - pergola - 藤架
hard - arbor - 凉亭
hard - bower - 凉亭
hard - trellis - 格架
hard - lattice - 格子
hard - espalier - 墙树
hard - topiary - 造型树
@@ -0,0 +1,410 @@
easy - home - 家
easy - school - 学校
easy - park - 公园
easy - hospital - 医院
easy - store - 商店
easy - restaurant - 餐厅
easy - hotel - 酒店
easy - bank - 银行
easy - post office - 邮局
easy - library - 图书馆
easy - museum - 博物馆
easy - zoo - 动物园
easy - beach - 海滩
easy - mountain - 山
easy - river - 河
easy - lake - 湖
easy - forest - 森林
easy - desert - 沙漠
easy - island - 岛屿
easy - city - 城市
easy - town - 城镇
easy - village - 村庄
easy - street - 街道
easy - road - 路
easy - bridge - 桥
easy - building - 建筑
easy - house - 房子
easy - apartment - 公寓
easy - garden - 花园
easy - farm - 农场
easy - factory - 工厂
easy - office - 办公室
easy - classroom - 教室
easy - bedroom - 卧室
easy - kitchen - 厨房
easy - bathroom - 浴室
easy - living room - 客厅
easy - garage - 车库
easy - basement - 地下室
easy - attic - 阁楼
easy - station - 车站
easy - airport - 机场
easy - subway - 地铁
easy - market - 市场
easy - mall - 商场
easy - supermarket - 超市
easy - bakery - 面包店
easy - cafe - 咖啡馆
easy - bar - 酒吧
easy - club - 俱乐部
easy - gym - 健身房
easy - stadium - 体育场
easy - playground - 操场
easy - pool - 游泳池
easy - theater - 剧院
easy - cinema - 电影院
easy - church - 教堂
easy - temple - 寺庙
easy - mosque - 清真寺
easy - palace - 宫殿
easy - castle - 城堡
easy - tower - 塔
easy - wall - 墙
easy - gate - 大门
easy - square - 广场
easy - plaza - 广场
easy - avenue - 大道
easy - alley - 小巷
medium - cathedral - 大教堂
medium - monastery - 修道院
medium - abbey - 修道院
medium - shrine - 神社
medium - pagoda - 宝塔
medium - minaret - 宣礼塔
medium - dome - 圆顶
medium - spire - 尖塔
medium - belfry - 钟楼
medium - steeple - 尖塔
medium - fortress - 堡垒
medium - citadel - 城堡
medium - stronghold - 要塞
medium - rampart - 城墙
medium - moat - 护城河
medium - drawbridge - 吊桥
medium - turret - 塔楼
medium - dungeon - 地牢
medium - keep - 主堡
medium - bailey - 城墙
medium - manor - 庄园
medium - estate - 庄园
medium - villa - 别墅
medium - cottage - 小屋
medium - cabin - 小木屋
medium - bungalow - 平房
medium - mansion - 豪宅
medium - penthouse - 顶层公寓
medium - loft - 阁楼
medium - studio - 单间公寓
medium - condominium - 公寓
medium - dormitory - 宿舍
medium - barracks - 营房
medium - warehouse - 仓库
medium - depot - 仓库
medium - hangar - 机库
medium - shed - 棚屋
medium - barn - 谷仓
medium - stable - 马厩
medium - silo - 筒仓
medium - greenhouse - 温室
medium - conservatory - 温室
medium - nursery - 苗圃
medium - orchard - 果园
medium - vineyard - 葡萄园
medium - plantation - 种植园
medium - ranch - 牧场
medium - pasture - 牧场
medium - meadow - 草地
medium - prairie - 草原
medium - savanna - 热带草原
medium - steppe - 草原
medium - tundra - 苔原
medium - taiga - 针叶林
medium - rainforest - 雨林
medium - jungle - 丛林
medium - swamp - 沼泽
medium - marsh - 沼泽
medium - wetland - 湿地
medium - bog - 泥沼
medium - canyon - 峡谷
medium - gorge - 峡谷
medium - ravine - 峡谷
medium - valley - 山谷
medium - plain - 平原
medium - plateau - 高原
medium - cliff - 悬崖
medium - hill - 小山
medium - peak - 山峰
medium - summit - 山顶
medium - slope - 斜坡
medium - ridge - 山脊
medium - glacier - 冰川
medium - iceberg - 冰山
medium - volcano - 火山
medium - crater - 火山口
medium - geyser - 间歇泉
medium - hot spring - 温泉
medium - waterfall - 瀑布
medium - rapids - 急流
medium - stream - 小溪
medium - creek - 小河
medium - brook - 小溪
medium - pond - 池塘
medium - reservoir - 水库
medium - dam - 大坝
medium - canal - 运河
medium - harbor - 港口
medium - port - 港口
medium - wharf - 码头
medium - pier - 码头
medium - dock - 码头
medium - marina - 游艇码头
medium - bay - 海湾
medium - cove - 海湾
medium - inlet - 入海口
medium - strait - 海峡
medium - channel - 海峡
medium - lagoon - 泻湖
medium - reef - 礁石
medium - peninsula - 半岛
medium - cape - 海角
medium - coast - 海岸
medium - shore - 海岸
medium - seaside - 海边
medium - oceanfront - 海滨
medium - boardwalk - 木板路
medium - promenade - 海滨步道
medium - esplanade - 滨海大道
medium - boulevard - 林荫大道
medium - highway - 公路
medium - expressway - 高速公路
medium - freeway - 高速公路
medium - motorway - 高速公路
medium - turnpike - 收费公路
medium - parkway - 园林公路
medium - causeway - 堤道
medium - viaduct - 高架桥
medium - overpass - 立交桥
medium - underpass - 地下通道
medium - tunnel - 隧道
medium - intersection - 十字路口
medium - crossroads - 十字路口
medium - junction - 交叉口
medium - roundabout - 环岛
medium - cul-de-sac - 死胡同
medium - lane - 车道
medium - pathway - 小路
medium - trail - 小径
medium - footpath - 人行道
medium - sidewalk - 人行道
medium - pavement - 人行道
medium - curb - 路边
medium - gutter - 排水沟
medium - courtyard - 庭院
medium - terrace - 露台
medium - balcony - 阳台
medium - porch - 门廊
medium - veranda - 走廊
medium - patio - 露台
medium - deck - 平台
medium - driveway - 车道
medium - parking lot - 停车场
medium - garage - 车库
medium - carport - 车棚
medium - lobby - 大厅
medium - foyer - 门厅
medium - hallway - 走廊
medium - corridor - 走廊
medium - staircase - 楼梯
medium - elevator - 电梯
medium - escalator - 自动扶梯
medium - rooftop - 屋顶
medium - skylight - 天窗
hard - mausoleum - 陵墓
hard - crypt - 地下墓室
hard - catacomb - 地下墓穴
hard - necropolis - 墓地
hard - cemetery - 墓地
hard - graveyard - 墓地
hard - columbarium - 骨灰堂
hard - cenotaph - 纪念碑
hard - obelisk - 方尖碑
hard - stele - 石碑
hard - monument - 纪念碑
hard - memorial - 纪念馆
hard - pantheon - 万神殿
hard - basilica - 长方形教堂
hard - chapel - 小教堂
hard - sanctuary - 圣所
hard - sacristy - 圣器收藏室
hard - vestry - 法衣室
hard - presbytery - 长老会
hard - rectory - 教区长住宅
hard - vicarage - 牧师住所
hard - cloister - 回廊
hard - refectory - 食堂
hard - scriptorium - 写字间
hard - chapter house - 议事厅
hard - narthex - 前厅
hard - nave - 中殿
hard - aisle - 侧廊
hard - transept - 耳堂
hard - apse - 半圆形后殿
hard - chancel - 圣坛
hard - altar - 祭坛
hard - pulpit - 讲道坛
hard - lectern - 讲经台
hard - baptistery - 洗礼堂
hard - confessional - 告解室
hard - pew - 长椅
hard - choir - 唱诗班席
hard - organ loft - 风琴阁楼
hard - campanile - 钟楼
hard - arcade - 拱廊
hard - colonnade - 柱廊
hard - portico - 门廊
hard - vestibule - 前厅
hard - anteroom - 前厅
hard - antechamber - 前厅
hard - rotunda - 圆形大厅
hard - atrium - 中庭
hard - loggia - 凉廊
hard - piazza - 广场
hard - forum - 广场
hard - agora - 集市
hard - bazaar - 集市
hard - souk - 集市
hard - caravansary - 商队旅馆
hard - khan - 客栈
hard - inn - 客栈
hard - tavern - 酒馆
hard - hostel - 旅舍
hard - boarding house - 寄宿处
hard - lodging - 住所
hard - quarters - 住所
hard - bivouac - 露营地
hard - campsite - 营地
hard - encampment - 营地
hard - outpost - 前哨
hard - garrison - 驻军地
hard - bastion - 堡垒
hard - redoubt - 堡垒
hard - parapet - 胸墙
hard - battlement - 城垛
hard - embrasure - 射击孔
hard - portcullis - 吊闸
hard - barbican - 城堡前哨
hard - gatehouse - 门楼
hard - watchtower - 瞭望塔
hard - beacon - 信标塔
hard - lighthouse - 灯塔
hard - observatory - 天文台
hard - planetarium - 天文馆
hard - aquarium - 水族馆
hard - terrarium - 玻璃容器
hard - aviary - 鸟舍
hard - menagerie - 动物园
hard - vivarium - 动物园
hard - apiary - 养蜂场
hard - fishery - 渔场
hard - hatchery - 孵化场
hard - cannery - 罐头厂
hard - brewery - 啤酒厂
hard - distillery - 酿酒厂
hard - winery - 酒庄
hard - refinery - 炼油厂
hard - foundry - 铸造厂
hard - forge - 锻造厂
hard - mill - 磨坊
hard - kiln - 窑
hard - furnace - 熔炉
hard - smelter - 冶炼厂
hard - quarry - 采石场
hard - mine - 矿山
hard - shaft - 矿井
hard - pit - 矿坑
hard - excavation - 挖掘地
hard - trench - 战壕
hard - bunker - 掩体
hard - pillbox - 碉堡
hard - foxhole - 散兵坑
hard - dugout - 防空洞
hard - shelter - 避难所
hard - refuge - 避难所
hard - sanctuary - 庇护所
hard - haven - 避风港
hard - retreat - 隐居处
hard - hermitage - 隐居地
hard - monastery - 修道院
hard - convent - 女修道院
hard - priory - 小修道院
hard - friary - 修士会
hard - seminary - 神学院
hard - academy - 学院
hard - conservatory - 音乐学院
hard - lyceum - 学园
hard - athenaeum - 文学会馆
hard - polytechnic - 理工学院
hard - institute - 研究所
hard - laboratory - 实验室
hard - workshop - 工作坊
hard - studio - 工作室
hard - atelier - 画室
hard - foundry - 铸造厂
hard - smithy - 铁匠铺
hard - tannery - 制革厂
hard - cooperage - 制桶厂
hard - chandlery - 蜡烛作坊
hard - apothecary - 药房
hard - dispensary - 药房
hard - infirmary - 医务室
hard - sanatorium - 疗养院
hard - asylum - 收容所
hard - hospice - 临终关怀院
hard - almshouse - 救济院
hard - orphanage - 孤儿院
hard - foundling home - 弃婴收容所
hard - penitentiary - 监狱
hard - correctional facility - 惩教所
hard - stockade - 军事监狱
hard - brig - 军舰拘留室
hard - guardhouse - 警卫室
hard - lockup - 拘留所
hard - jailhouse - 监狱
hard - calaboose - 监狱
hard - clink - 监狱
hard - hoosegow - 监狱
hard - slammer - 监狱
hard - pen - 监狱
hard - workhouse - 劳教所
hard - reformatory - 少年管教所
hard - detention center - 拘留中心
hard - halfway house - 中途之家
hard - safehouse - 安全屋
hard - hideout - 藏身处
hard - lair - 巢穴
hard - den - 巢穴
hard - burrow - 洞穴
hard - warren - 兔窝
hard - nest - 巢
hard - rookery - 群居地
hard - colony - 聚居地
hard - settlement - 定居点
hard - hamlet - 小村庄
hard - township - 镇区
hard - borough - 自治市镇
hard - burgh - 自治市
hard - municipality - 自治市
hard - metropolis - 大都市
hard - megalopolis - 特大城市
hard - conurbation - 城市群
hard - agglomeration - 集聚区
hard - suburb - 郊区
hard - outskirts - 郊区
hard - periphery - 边缘地带
hard - hinterland - 腹地
hard - backcountry - 偏远地区
hard - wilderness - 荒野
hard - badlands - 荒地
hard - wasteland - 荒原
@@ -0,0 +1,260 @@
easy - teacher - 教师
easy - doctor - 医生
easy - nurse - 护士
easy - driver - 司机
easy - cook - 厨师
easy - waiter - 服务员
easy - farmer - 农民
easy - worker - 工人
easy - student - 学生
easy - police - 警察
easy - soldier - 士兵
easy - singer - 歌手
easy - dancer - 舞者
easy - actor - 演员
easy - artist - 艺术家
easy - writer - 作家
easy - painter - 画家
easy - musician - 音乐家
easy - pilot - 飞行员
easy - sailor - 水手
easy - fisherman - 渔夫
easy - hunter - 猎人
easy - builder - 建筑工人
easy - cleaner - 清洁工
easy - barber - 理发师
easy - tailor - 裁缝
easy - shoemaker - 鞋匠
easy - baker - 面包师
easy - butcher - 屠夫
easy - gardener - 园丁
easy - postman - 邮递员
easy - fireman - 消防员
easy - dentist - 牙医
easy - vet - 兽医
easy - lawyer - 律师
easy - judge - 法官
easy - banker - 银行家
easy - clerk - 职员
easy - secretary - 秘书
easy - manager - 经理
easy - boss - 老板
easy - engineer - 工程师
easy - scientist - 科学家
easy - professor - 教授
easy - librarian - 图书管理员
easy - photographer - 摄影师
easy - reporter - 记者
easy - editor - 编辑
easy - designer - 设计师
easy - architect - 建筑师
easy - mechanic - 机械师
easy - electrician - 电工
easy - plumber - 水管工
easy - carpenter - 木匠
easy - mason - 泥瓦匠
easy - welder - 焊工
easy - miner - 矿工
easy - sailor - 水手
easy - captain - 船长
easy - guard - 保安
easy - detective - 侦探
easy - spy - 间谍
easy - soldier - 士兵
easy - general - 将军
easy - president - 总统
easy - mayor - 市长
easy - governor - 州长
easy - minister - 部长
medium - surgeon - 外科医生
medium - physician - 内科医生
medium - pediatrician - 儿科医生
medium - psychiatrist - 精神科医生
medium - psychologist - 心理学家
medium - therapist - 治疗师
medium - pharmacist - 药剂师
medium - optician - 验光师
medium - radiologist - 放射科医生
medium - anesthesiologist - 麻醉师
medium - paramedic - 护理人员
medium - midwife - 助产士
medium - nutritionist - 营养师
medium - dietitian - 营养师
medium - chiropractor - 脊椎按摩师
medium - acupuncturist - 针灸师
medium - physiotherapist - 物理治疗师
medium - occupational therapist - 职业治疗师
medium - speech therapist - 言语治疗师
medium - counselor - 顾问
medium - social worker - 社会工作者
medium - prosecutor - 检察官
medium - attorney - 律师
medium - solicitor - 律师
medium - barrister - 出庭律师
medium - notary - 公证人
medium - paralegal - 律师助理
medium - bailiff - 法警
medium - magistrate - 治安法官
medium - accountant - 会计师
medium - auditor - 审计师
medium - bookkeeper - 簿记员
medium - cashier - 收银员
medium - teller - 出纳员
medium - broker - 经纪人
medium - trader - 交易员
medium - investor - 投资者
medium - analyst - 分析师
medium - consultant - 顾问
medium - advisor - 顾问
medium - economist - 经济学家
medium - statistician - 统计学家
medium - actuary - 精算师
medium - underwriter - 承销商
medium - realtor - 房地产经纪人
medium - appraiser - 评估师
medium - surveyor - 测量师
medium - inspector - 检查员
medium - superintendent - 主管
medium - supervisor - 监督员
medium - foreman - 工头
medium - coordinator - 协调员
medium - administrator - 管理员
medium - executive - 高管
medium - director - 董事
medium - CEO - 首席执行官
medium - CFO - 首席财务官
medium - CTO - 首席技术官
medium - entrepreneur - 企业家
medium - proprietor - 业主
medium - franchisee - 特许经营者
medium - retailer - 零售商
medium - wholesaler - 批发商
medium - distributor - 经销商
medium - vendor - 供应商
medium - merchant - 商人
medium - salesman - 销售员
medium - representative - 代表
medium - agent - 代理人
medium - ambassador - 大使
medium - diplomat - 外交官
medium - consul - 领事
medium - attaché - 专员
medium - envoy - 使节
medium - delegate - 代表
medium - legislator - 立法者
medium - senator - 参议员
medium - congressman - 国会议员
medium - councilor - 议员
medium - alderman - 市议员
medium - commissioner - 专员
medium - bureaucrat - 官僚
medium - civil servant - 公务员
medium - clerk - 文员
medium - receptionist - 接待员
medium - typist - 打字员
medium - stenographer - 速记员
medium - transcriptionist - 转录员
hard - oncologist - 肿瘤学家
hard - cardiologist - 心脏病专家
hard - neurologist - 神经科医生
hard - dermatologist - 皮肤科医生
hard - ophthalmologist - 眼科医生
hard - otolaryngologist - 耳鼻喉科医生
hard - urologist - 泌尿科医生
hard - gynecologist - 妇科医生
hard - obstetrician - 产科医生
hard - orthopedist - 骨科医生
hard - rheumatologist - 风湿病专家
hard - endocrinologist - 内分泌学家
hard - gastroenterologist - 胃肠病学家
hard - nephrologist - 肾病学家
hard - pulmonologist - 肺病学家
hard - hematologist - 血液学家
hard - immunologist - 免疫学家
hard - pathologist - 病理学家
hard - epidemiologist - 流行病学家
hard - toxicologist - 毒理学家
hard - forensic scientist - 法医
hard - coroner - 验尸官
hard - mortician - 殡仪师
hard - embalmer - 防腐师
hard - undertaker - 殡葬承办人
hard - sommelier - 侍酒师
hard - barista - 咖啡师
hard - bartender - 调酒师
hard - mixologist - 调酒师
hard - chef - 主厨
hard - pastry chef - 糕点师
hard - sous chef - 副厨师长
hard - line cook - 厨师
hard - prep cook - 备菜厨师
hard - dishwasher - 洗碗工
hard - busboy - 餐厅杂工
hard - maitre d' - 餐厅领班
hard - sommelier - 品酒师
hard - caterer - 承办酒席者
hard - food critic - 美食评论家
hard - choreographer - 编舞家
hard - conductor - 指挥家
hard - composer - 作曲家
hard - lyricist - 作词家
hard - arranger - 编曲家
hard - producer - 制作人
hard - sound engineer - 音响师
hard - roadie - 巡回演出工作人员
hard - stagehand - 舞台工作人员
hard - gaffer - 灯光师
hard - grip - 场务
hard - cinematographer - 摄影师
hard - director of photography - 摄影指导
hard - screenwriter - 编剧
hard - playwright - 剧作家
hard - dramaturg - 戏剧顾问
hard - impresario - 演出经理
hard - curator - 策展人
hard - archivist - 档案管理员
hard - conservator - 文物修复师
hard - restorer - 修复师
hard - taxidermist - 标本剥制师
hard - cartographer - 制图师
hard - geographer - 地理学家
hard - geologist - 地质学家
hard - seismologist - 地震学家
hard - volcanologist - 火山学家
hard - meteorologist - 气象学家
hard - climatologist - 气候学家
hard - oceanographer - 海洋学家
hard - hydrologist - 水文学家
hard - ecologist - 生态学家
hard - botanist - 植物学家
hard - zoologist - 动物学家
hard - entomologist - 昆虫学家
hard - ornithologist - 鸟类学家
hard - ichthyologist - 鱼类学家
hard - herpetologist - 爬行动物学家
hard - mammalogist - 哺乳动物学家
hard - primatologist - 灵长类动物学家
hard - paleontologist - 古生物学家
hard - archaeologist - 考古学家
hard - anthropologist - 人类学家
hard - ethnographer - 民族志学者
hard - sociologist - 社会学家
hard - demographer - 人口学家
hard - criminologist - 犯罪学家
hard - penologist - 刑罚学家
hard - lexicographer - 词典编纂者
hard - philologist - 语言学家
hard - linguist - 语言学家
hard - etymologist - 词源学家
hard - phonetician - 语音学家
hard - semanticist - 语义学家
hard - syntactician - 句法学家
hard - grammarian - 语法学家
hard - rhetorician - 修辞学家
hard - logician - 逻辑学家
hard - epistemologist - 认识论学者
hard - metaphysician - 形而上学家
hard - ethicist - 伦理学家
hard - aesthetician - 美学家
hard - theologian - 神学家
@@ -0,0 +1,315 @@
easy - football - 足球
easy - basketball - 篮球
easy - volleyball - 排球
easy - tennis - 网球
easy - baseball - 棒球
easy - soccer - 足球
easy - running - 跑步
easy - swimming - 游泳
easy - cycling - 骑自行车
easy - skating - 滑冰
easy - skiing - 滑雪
easy - boxing - 拳击
easy - wrestling - 摔跤
easy - golf - 高尔夫
easy - bowling - 保龄球
easy - fishing - 钓鱼
easy - hiking - 徒步
easy - climbing - 攀登
easy - jumping - 跳跃
easy - throwing - 投掷
easy - kicking - 踢
easy - catching - 接球
easy - shooting - 射击
easy - riding - 骑马
easy - racing - 赛跑
easy - jogging - 慢跑
easy - walking - 步行
easy - dancing - 跳舞
easy - yoga - 瑜伽
easy - gymnastics - 体操
easy - diving - 跳水
easy - surfing - 冲浪
easy - sailing - 帆船
easy - rowing - 划船
easy - kayaking - 皮划艇
easy - canoeing - 独木舟
easy - rafting - 漂流
easy - water skiing - 滑水
easy - ice skating - 滑冰
easy - figure skating - 花样滑冰
easy - speed skating - 速滑
easy - hockey - 曲棍球
easy - ice hockey - 冰球
easy - field hockey - 曲棍球
easy - lacrosse - 长曲棍球
easy - cricket - 板球
easy - badminton - 羽毛球
easy - table tennis - 乒乓球
easy - ping pong - 乒乓球
easy - squash - 壁球
easy - racquetball - 壁球
easy - handball - 手球
easy - dodgeball - 躲避球
easy - kickball - 踢球
easy - softball - 垒球
easy - archery - 射箭
easy - darts - 飞镖
easy - billiards - 台球
easy - pool - 台球
easy - snooker - 斯诺克
easy - chess - 国际象棋
easy - checkers - 跳棋
easy - cards - 纸牌
easy - poker - 扑克
easy - mahjong - 麻将
easy - dominos - 多米诺
easy - dice - 骰子
easy - backgammon - 西洋双陆棋
medium - martial arts - 武术
medium - karate - 空手道
medium - judo - 柔道
medium - taekwondo - 跆拳道
medium - kung fu - 功夫
medium - aikido - 合气道
medium - jiu-jitsu - 柔术
medium - kickboxing - 自由搏击
medium - muay thai - 泰拳
medium - capoeira - 卡波耶拉
medium - fencing - 击剑
medium - kendo - 剑道
medium - sumo - 相扑
medium - weightlifting - 举重
medium - powerlifting - 力量举
medium - bodybuilding - 健美
medium - crossfit - 综合体能训练
medium - aerobics - 有氧运动
medium - pilates - 普拉提
medium - zumba - 尊巴
medium - spinning - 动感单车
medium - treadmill - 跑步机
medium - elliptical - 椭圆机
medium - stepper - 踏步机
medium - rowing machine - 划船机
medium - trampoline - 蹦床
medium - parkour - 跑酷
medium - skateboarding - 滑板
medium - rollerblading - 轮滑
medium - scootering - 滑板车
medium - BMX - 小轮车
medium - mountain biking - 山地自行车
medium - road cycling - 公路自行车
medium - track cycling - 场地自行车
medium - triathlon - 铁人三项
medium - decathlon - 十项全能
medium - pentathlon - 五项全能
medium - heptathlon - 七项全能
medium - marathon - 马拉松
medium - half marathon - 半程马拉松
medium - sprint - 短跑
medium - hurdles - 跨栏
medium - relay - 接力赛
medium - long jump - 跳远
medium - high jump - 跳高
medium - triple jump - 三级跳
medium - pole vault - 撑杆跳
medium - shot put - 铅球
medium - discus - 铁饼
medium - javelin - 标枪
medium - hammer throw - 链球
medium - steeplechase - 障碍赛跑
medium - racewalking - 竞走
medium - equestrian - 马术
medium - dressage - 盛装舞步
medium - show jumping - 障碍赛
medium - eventing - 三日赛
medium - polo - 马球
medium - rodeo - 牛仔竞技
medium - bull riding - 骑公牛
medium - barrel racing - 绕桶赛
medium - lasso - 套索
medium - rock climbing - 攀岩
medium - bouldering - 抱石
medium - ice climbing - 攀冰
medium - mountaineering - 登山
medium - rappelling - 绳降
medium - caving - 洞穴探险
medium - spelunking - 洞穴探险
medium - canyoning - 溪降
medium - bungee jumping - 蹦极
medium - skydiving - 跳伞
medium - paragliding - 滑翔伞
medium - hang gliding - 悬挂滑翔
medium - base jumping - 低空跳伞
medium - wingsuit flying - 翼装飞行
medium - hot air ballooning - 热气球
medium - gliding - 滑翔
medium - soaring - 滑翔
medium - scuba diving - 水肺潜水
medium - snorkeling - 浮潜
medium - freediving - 自由潜水
medium - spearfishing - 鱼叉捕鱼
medium - windsurfing - 帆板
medium - kitesurfing - 风筝冲浪
medium - wakeboarding - 尾波滑水
medium - bodyboarding - 趴板冲浪
medium - standup paddleboarding - 站立式桨板
medium - jet skiing - 水上摩托
medium - water polo - 水球
medium - synchronized swimming - 花样游泳
medium - backstroke - 仰泳
medium - breaststroke - 蛙泳
medium - butterfly - 蝶泳
medium - freestyle - 自由泳
medium - medley - 混合泳
medium - relay race - 接力赛
medium - bobsled - 雪橇
medium - luge - 无舵雪橇
medium - skeleton - 钢架雪车
medium - curling - 冰壶
medium - biathlon - 冬季两项
medium - cross-country skiing - 越野滑雪
medium - alpine skiing - 高山滑雪
medium - downhill - 速降滑雪
medium - slalom - 回转滑雪
medium - giant slalom - 大回转
medium - super-G - 超级大回转
medium - ski jumping - 跳台滑雪
medium - freestyle skiing - 自由式滑雪
medium - moguls - 雪上技巧
medium - aerial skiing - 空中技巧
medium - snowboarding - 单板滑雪
medium - halfpipe - 半管
medium - slopestyle - 坡面障碍技巧
medium - snowshoeing - 雪鞋行走
medium - sledding - 雪橇
medium - tobogganing - 平底雪橇
hard - orienteering - 定向越野
hard - rogaining - 长距离定向
hard - geocaching - 寻宝
hard - trail running - 越野跑
hard - ultramarathon - 超级马拉松
hard - skyrunning - 天空跑
hard - fell running - 山地跑
hard - obstacle course racing - 障碍赛跑
hard - adventure racing - 探险赛
hard - rallying - 拉力赛
hard - motocross - 越野摩托
hard - supercross - 室内越野摩托
hard - enduro - 耐力赛
hard - speedway - 摩托车赛
hard - drag racing - 直线竞速
hard - autocross - 场地赛
hard - time trial - 计时赛
hard - criterium - 绕圈赛
hard - velodrome - 赛车场
hard - keirin - 竞轮
hard - omnium - 全能赛
hard - madison - 麦迪逊赛
hard - pursuit - 追逐赛
hard - scratch race - 记分赛
hard - points race - 积分赛
hard - elimination race - 淘汰赛
hard - sprint - 争先赛
hard - team sprint - 团队竞速
hard - kilo - 千米赛
hard - madison - 麦迪逊赛
hard - boardsailing - 帆板
hard - iceboat racing - 冰上帆船
hard - land sailing - 陆上帆船
hard - yacht racing - 游艇赛
hard - regatta - 帆船赛
hard - match racing - 对抗赛
hard - fleet racing - 舰队赛
hard - offshore racing - 近海赛
hard - keel boat - 龙骨船
hard - dinghy - 小艇
hard - catamaran - 双体船
hard - trimaran - 三体船
hard - monohull - 单体船
hard - multihull - 多体船
hard - icebreaker - 破冰船
hard - outrigger - 舷外支架
hard - canoe sprint - 皮划艇激流回旋
hard - canoe slalom - 皮划艇激流回旋
hard - wildwater canoeing - 激流皮划艇
hard - canoe marathon - 皮划艇马拉松
hard - dragon boat - 龙舟
hard - outrigger canoe - 舷外支架独木舟
hard - stand-up paddleboarding - 站立式桨板
hard - waveski - 冲浪艇
hard - sea kayaking - 海上皮划艇
hard - whitewater kayaking - 激流皮划艇
hard - playboating - 花式皮划艇
hard - squirt boating - 喷射式皮划艇
hard - canoeing - 独木舟
hard - rafting - 漂流
hard - hydrospeed - 激流冲浪
hard - bodyboarding - 趴板
hard - riverboarding - 河流冲浪
hard - kneeboarding - 跪板冲浪
hard - barefoot waterskiing - 赤脚滑水
hard - slalom skiing - 滑水回转
hard - trick skiing - 花式滑水
hard - jump skiing - 跳跃滑水
hard - speed skiing - 速度滑雪
hard - telemark - 泰勒马克滑雪
hard - backcountry skiing - 野外滑雪
hard - heli-skiing - 直升机滑雪
hard - cat skiing - 雪地车滑雪
hard - ski mountaineering - 滑雪登山
hard - ski touring - 滑雪旅行
hard - Nordic combined - 北欧两项
hard - ski flying - 滑雪飞行
hard - ski ballet - 滑雪芭蕾
hard - acro skiing - 特技滑雪
hard - ski cross - 滑雪越野
hard - boardercross - 单板滑雪越野
hard - banked slalom - 倾斜回转
hard - parallel giant slalom - 平行大回转
hard - parallel slalom - 平行回转
hard - snowboard cross - 单板滑雪越野
hard - big air - 大跳台
hard - quarterpipe - 四分之一管
hard - superpipe - 超级半管
hard - jibbing - 道具滑雪
hard - rail sliding - 滑轨
hard - box sliding - 滑箱
hard - butter - 转体
hard - cork - 空翻转体
hard - rodeo - 侧空翻
hard - misty - 倒转
hard - flat spin - 平转
hard - bio - 后空翻
hard - cab - 反脚转体
hard - switch - 反脚滑行
hard - fakie - 倒滑
hard - nollie - 前轮翘起
hard - ollie - 豚跳
hard - kickflip - 踢翻
hard - heelflip - 后跟翻
hard - pop shove-it - 跳转
hard - boardslide - 板滑
hard - lipslide - 边滑
hard - noseslide - 前端滑
hard - tailslide - 后端滑
hard - bluntslide - 钝滑
hard - noseblunt - 前端钝滑
hard - 5-0 grind - 后轮滑
hard - 50-50 grind - 双轮滑
hard - nosegrind - 前轮滑
hard - crooked grind - 斜滑
hard - overcrook - 过度斜滑
hard - smith grind - 史密斯滑
hard - feeble grind - 虚弱滑
hard - salad grind - 沙拉滑
hard - willy grind - 威利滑
hard - suski grind - 苏斯基滑
hard - hurricane - 飓风转
hard - frontside - 正面转
hard - backside - 背面转
hard - revert - 反转
hard - half-cab - 半程转
hard - full-cab - 全程转
hard - caballerial - 卡巴列里尔转
@@ -0,0 +1,396 @@
easy - computer - 电脑
easy - phone - 电话
easy - tablet - 平板电脑
easy - laptop - 笔记本电脑
easy - keyboard - 键盘
easy - mouse - 鼠标
easy - screen - 屏幕
easy - monitor - 显示器
easy - printer - 打印机
easy - camera - 相机
easy - TV - 电视
easy - radio - 收音机
easy - speaker - 扬声器
easy - headphones - 耳机
easy - microphone - 麦克风
easy - remote - 遥控器
easy - charger - 充电器
easy - battery - 电池
easy - cable - 电缆
easy - plug - 插头
easy - socket - 插座
easy - switch - 开关
easy - button - 按钮
easy - app - 应用程序
easy - website - 网站
easy - email - 电子邮件
easy - internet - 互联网
easy - wifi - 无线网络
easy - bluetooth - 蓝牙
easy - GPS - 全球定位系统
easy - video - 视频
easy - photo - 照片
easy - music - 音乐
easy - game - 游戏
easy - software - 软件
easy - hardware - 硬件
easy - disk - 磁盘
easy - file - 文件
easy - folder - 文件夹
easy - icon - 图标
easy - cursor - 光标
easy - click - 点击
easy - download - 下载
easy - upload - 上传
easy - save - 保存
easy - delete - 删除
easy - copy - 复制
easy - paste - 粘贴
easy - cut - 剪切
easy - undo - 撤销
easy - redo - 重做
easy - search - 搜索
easy - zoom - 缩放
easy - scroll - 滚动
easy - password - 密码
easy - login - 登录
easy - logout - 登出
easy - profile - 个人资料
easy - settings - 设置
easy - menu - 菜单
easy - window - 窗口
easy - tab - 标签页
easy - link - 链接
easy - message - 消息
easy - notification - 通知
easy - alarm - 闹钟
easy - calculator - 计算器
easy - calendar - 日历
easy - clock - 时钟
easy - timer - 计时器
medium - smartphone - 智能手机
medium - smartwatch - 智能手表
medium - desktop - 台式电脑
medium - server - 服务器
medium - router - 路由器
medium - modem - 调制解调器
medium - hub - 集线器
medium - switch - 交换机
medium - firewall - 防火墙
medium - access point - 接入点
medium - repeater - 中继器
medium - adapter - 适配器
medium - converter - 转换器
medium - splitter - 分配器
medium - amplifier - 放大器
medium - receiver - 接收器
medium - transmitter - 发射器
medium - antenna - 天线
medium - satellite dish - 卫星天线
medium - webcam - 网络摄像头
medium - scanner - 扫描仪
medium - copier - 复印机
medium - fax machine - 传真机
medium - projector - 投影仪
medium - touchscreen - 触摸屏
medium - stylus - 触控笔
medium - trackpad - 触控板
medium - joystick - 操纵杆
medium - gamepad - 游戏手柄
medium - controller - 控制器
medium - console - 游戏机
medium - VR headset - VR头显
medium - drone - 无人机
medium - robot - 机器人
medium - sensor - 传感器
medium - actuator - 执行器
medium - chip - 芯片
medium - processor - 处理器
medium - CPU - 中央处理器
medium - GPU - 图形处理器
medium - RAM - 随机存取存储器
medium - ROM - 只读存储器
medium - motherboard - 主板
medium - circuit board - 电路板
medium - hard drive - 硬盘
medium - SSD - 固态硬盘
medium - flash drive - 闪存盘
medium - memory card - 存储卡
medium - CD - 光盘
medium - DVD - 数字光盘
medium - blu-ray - 蓝光光盘
medium - USB - USB接口
medium - HDMI - HDMI接口
medium - ethernet - 以太网
medium - fiber optic - 光纤
medium - cloud - 云
medium - database - 数据库
medium - server - 服务器
medium - network - 网络
medium - protocol - 协议
medium - encryption - 加密
medium - firewall - 防火墙
medium - antivirus - 杀毒软件
medium - malware - 恶意软件
medium - virus - 病毒
medium - spam - 垃圾邮件
medium - phishing - 网络钓鱼
medium - hacking - 黑客攻击
medium - cybersecurity - 网络安全
medium - backup - 备份
medium - restore - 恢复
medium - update - 更新
medium - upgrade - 升级
medium - patch - 补丁
medium - bug - 漏洞
medium - crash - 崩溃
medium - freeze - 冻结
medium - lag - 延迟
medium - bandwidth - 带宽
medium - latency - 延迟
medium - throughput - 吞吐量
medium - packet - 数据包
medium - ping - 延迟测试
medium - download speed - 下载速度
medium - upload speed - 上传速度
medium - streaming - 流媒体
medium - buffering - 缓冲
medium - compression - 压缩
medium - resolution - 分辨率
medium - pixel - 像素
medium - DPI - 每英寸点数
medium - refresh rate - 刷新率
medium - frame rate - 帧率
medium - aspect ratio - 纵横比
medium - contrast - 对比度
medium - brightness - 亮度
medium - saturation - 饱和度
medium - hue - 色调
medium - RGB - 红绿蓝
medium - CMYK - 青品黄黑
medium - codec - 编解码器
medium - format - 格式
medium - extension - 扩展名
medium - metadata - 元数据
medium - thumbnail - 缩略图
medium - preview - 预览
medium - rendering - 渲染
medium - graphics - 图形
medium - animation - 动画
medium - simulation - 模拟
medium - modeling - 建模
medium - texture - 纹理
medium - shader - 着色器
medium - polygon - 多边形
medium - vector - 矢量
medium - raster - 栅格
medium - bitmap - 位图
medium - interface - 界面
medium - dashboard - 仪表板
medium - toolbar - 工具栏
medium - sidebar - 侧边栏
medium - dropdown - 下拉菜单
medium - checkbox - 复选框
medium - radio button - 单选按钮
medium - slider - 滑块
medium - toggle - 切换
medium - tooltip - 工具提示
medium - popup - 弹窗
medium - modal - 模态框
medium - dialog - 对话框
medium - alert - 警报
medium - banner - 横幅
medium - widget - 小部件
medium - plugin - 插件
medium - extension - 扩展
medium - addon - 附加组件
medium - module - 模块
medium - library - 库
medium - framework - 框架
medium - API - 应用程序接口
medium - SDK - 软件开发工具包
medium - IDE - 集成开发环境
medium - compiler - 编译器
medium - interpreter - 解释器
medium - debugger - 调试器
medium - version control - 版本控制
medium - repository - 仓库
medium - commit - 提交
medium - branch - 分支
medium - merge - 合并
medium - pull request - 拉取请求
medium - code review - 代码审查
medium - testing - 测试
medium - deployment - 部署
medium - DevOps - 开发运维
medium - container - 容器
medium - virtual machine - 虚拟机
medium - hypervisor - 虚拟机监控程序
medium - cloud computing - 云计算
medium - SaaS - 软件即服务
medium - PaaS - 平台即服务
medium - IaaS - 基础设施即服务
hard - microprocessor - 微处理器
hard - microcontroller - 微控制器
hard - FPGA - 现场可编程门阵列
hard - ASIC - 专用集成电路
hard - SoC - 片上系统
hard - ALU - 算术逻辑单元
hard - FPU - 浮点运算单元
hard - cache - 缓存
hard - register - 寄存器
hard - pipeline - 流水线
hard - instruction set - 指令集
hard - architecture - 架构
hard - x86 - x86架构
hard - ARM - ARM架构
hard - RISC - 精简指令集
hard - CISC - 复杂指令集
hard - BIOS - 基本输入输出系统
hard - UEFI - 统一可扩展固件接口
hard - bootloader - 引导加载程序
hard - kernel - 内核
hard - operating system - 操作系统
hard - driver - 驱动程序
hard - firmware - 固件
hard - middleware - 中间件
hard - runtime - 运行时
hard - virtual memory - 虚拟内存
hard - paging - 分页
hard - segmentation - 分段
hard - multithreading - 多线程
hard - multiprocessing - 多处理
hard - parallel computing - 并行计算
hard - distributed computing - 分布式计算
hard - cluster - 集群
hard - load balancing - 负载均衡
hard - failover - 故障转移
hard - redundancy - 冗余
hard - replication - 复制
hard - sharding - 分片
hard - partitioning - 分区
hard - indexing - 索引
hard - caching - 缓存
hard - query - 查询
hard - transaction - 事务
hard - ACID - 原子性一致性隔离性持久性
hard - normalization - 规范化
hard - denormalization - 反规范化
hard - SQL - 结构化查询语言
hard - NoSQL - 非关系型数据库
hard - relational database - 关系型数据库
hard - document database - 文档数据库
hard - key-value store - 键值存储
hard - graph database - 图数据库
hard - time series database - 时序数据库
hard - data warehouse - 数据仓库
hard - data lake - 数据湖
hard - ETL - 提取转换加载
hard - data mining - 数据挖掘
hard - machine learning - 机器学习
hard - deep learning - 深度学习
hard - neural network - 神经网络
hard - convolutional network - 卷积神经网络
hard - recurrent network - 循环神经网络
hard - transformer - 变换器
hard - attention mechanism - 注意力机制
hard - reinforcement learning - 强化学习
hard - supervised learning - 监督学习
hard - unsupervised learning - 无监督学习
hard - semi-supervised learning - 半监督学习
hard - transfer learning - 迁移学习
hard - overfitting - 过拟合
hard - underfitting - 欠拟合
hard - regularization - 正则化
hard - hyperparameter - 超参数
hard - gradient descent - 梯度下降
hard - backpropagation - 反向传播
hard - activation function - 激活函数
hard - loss function - 损失函数
hard - optimizer - 优化器
hard - epoch - 训练轮次
hard - batch - 批次
hard - inference - 推理
hard - training - 训练
hard - validation - 验证
hard - testing - 测试
hard - accuracy - 准确率
hard - precision - 精确率
hard - recall - 召回率
hard - F1 score - F1分数
hard - confusion matrix - 混淆矩阵
hard - ROC curve - ROC曲线
hard - AUC - 曲线下面积
hard - natural language processing - 自然语言处理
hard - computer vision - 计算机视觉
hard - speech recognition - 语音识别
hard - text generation - 文本生成
hard - image classification - 图像分类
hard - object detection - 物体检测
hard - semantic segmentation - 语义分割
hard - instance segmentation - 实例分割
hard - face recognition - 人脸识别
hard - pose estimation - 姿态估计
hard - optical character recognition - 光学字符识别
hard - sentiment analysis - 情感分析
hard - named entity recognition - 命名实体识别
hard - part-of-speech tagging - 词性标注
hard - dependency parsing - 依存句法分析
hard - constituency parsing - 短语结构分析
hard - coreference resolution - 共指消解
hard - word embedding - 词嵌入
hard - tokenization - 分词
hard - lemmatization - 词形还原
hard - stemming - 词干提取
hard - stop words - 停用词
hard - n-gram - n元语法
hard - bag of words - 词袋模型
hard - TF-IDF - 词频-逆文档频率
hard - skip-gram - 跳字模型
hard - CBOW - 连续词袋
hard - seq2seq - 序列到序列
hard - encoder-decoder - 编码器-解码器
hard - LSTM - 长短期记忆网络
hard - GRU - 门控循环单元
hard - BERT - 双向编码器表示
hard - GPT - 生成式预训练
hard - diffusion model - 扩散模型
hard - GAN - 生成对抗网络
hard - VAE - 变分自编码器
hard - autoencoder - 自编码器
hard - residual network - 残差网络
hard - batch normalization - 批归一化
hard - layer normalization - 层归一化
hard - dropout - 随机失活
hard - data augmentation - 数据增强
hard - feature extraction - 特征提取
hard - dimensionality reduction - 降维
hard - principal component analysis - 主成分分析
hard - t-SNE - t分布随机邻域嵌入
hard - clustering - 聚类
hard - k-means - k均值
hard - hierarchical clustering - 层次聚类
hard - DBSCAN - 基于密度的聚类
hard - anomaly detection - 异常检测
hard - outlier detection - 离群值检测
hard - recommendation system - 推荐系统
hard - collaborative filtering - 协同过滤
hard - content-based filtering - 基于内容的过滤
hard - matrix factorization - 矩阵分解
hard - ensemble learning - 集成学习
hard - bagging - 袋装法
hard - boosting - 提升法
hard - random forest - 随机森林
hard - decision tree - 决策树
hard - support vector machine - 支持向量机
hard - naive bayes - 朴素贝叶斯
hard - logistic regression - 逻辑回归
hard - linear regression - 线性回归
hard - polynomial regression - 多项式回归
hard - ridge regression - 岭回归
hard - lasso regression - Lasso回归
hard - cross-validation - 交叉验证
hard - grid search - 网格搜索
hard - random search - 随机搜索
hard - Bayesian optimization - 贝叶斯优化
@@ -0,0 +1,380 @@
easy - car - 汽车
easy - bus - 公共汽车
easy - truck - 卡车
easy - van - 货车
easy - taxi - 出租车
easy - bike - 自行车
easy - motorcycle - 摩托车
easy - scooter - 小型摩托车
easy - train - 火车
easy - subway - 地铁
easy - tram - 有轨电车
easy - boat - 船
easy - ship - 轮船
easy - plane - 飞机
easy - helicopter - 直升机
easy - rocket - 火箭
easy - bicycle - 自行车
easy - tricycle - 三轮车
easy - skateboard - 滑板
easy - rollerblades - 轮滑
easy - sled - 雪橇
easy - sleigh - 雪橇
easy - wagon - 马车
easy - cart - 手推车
easy - carriage - 马车
easy - stroller - 婴儿车
easy - wheelchair - 轮椅
easy - ambulance - 救护车
easy - fire truck - 消防车
easy - police car - 警车
easy - limousine - 豪华轿车
easy - sports car - 跑车
easy - sedan - 轿车
easy - coupe - 双门轿车
easy - convertible - 敞篷车
easy - minivan - 小型货车
easy - SUV - 运动型多用途车
easy - jeep - 吉普车
easy - pickup - 皮卡
easy - trailer - 拖车
easy - camper - 露营车
easy - RV - 房车
easy - motorhome - 房车
easy - tractor - 拖拉机
easy - bulldozer - 推土机
easy - crane - 起重机
easy - excavator - 挖掘机
easy - dump truck - 自卸车
easy - cement mixer - 水泥搅拌车
easy - forklift - 叉车
easy - golf cart - 高尔夫球车
easy - go-kart - 卡丁车
easy - rickshaw - 人力车
easy - canoe - 独木舟
easy - kayak - 皮划艇
easy - rowboat - 划艇
easy - sailboat - 帆船
easy - yacht - 游艇
easy - ferry - 渡轮
easy - cruise ship - 游轮
easy - submarine - 潜艇
easy - jet ski - 水上摩托
easy - surfboard - 冲浪板
easy - glider - 滑翔机
easy - balloon - 气球
easy - blimp - 飞艇
easy - zeppelin - 齐柏林飞艇
medium - hatchback - 掀背车
medium - station wagon - 旅行车
medium - crossover - 跨界车
medium - roadster - 敞篷跑车
medium - hardtop - 硬顶车
medium - fastback - 快背车
medium - notchback - 阶背车
medium - landau - 活顶轿车
medium - brougham - 轿式马车
medium - phaeton - 敞篷车
medium - cabriolet - 敞篷车
medium - targa - 塔尔加车顶
medium - speedster - 快速跑车
medium - grand tourer - 豪华旅行车
medium - muscle car - 肌肉车
medium - hot hatch - 热舱车
medium - dragster - 直线竞速车
medium - funny car - 趣味车
medium - stock car - 改装赛车
medium - rally car - 拉力赛车
medium - race car - 赛车
medium - formula car - 方程式赛车
medium - touring car - 房车赛车
medium - prototype - 原型车
medium - concept car - 概念车
medium - hybrid - 混合动力车
medium - electric car - 电动车
medium - fuel cell - 燃料电池车
medium - diesel - 柴油车
medium - four-wheel drive - 四轮驱动
medium - all-wheel drive - 全轮驱动
medium - front-wheel drive - 前轮驱动
medium - rear-wheel drive - 后轮驱动
medium - manual transmission - 手动变速器
medium - automatic transmission - 自动变速器
medium - stick shift - 手动档
medium - clutch - 离合器
medium - gearbox - 变速箱
medium - engine - 发动机
medium - motor - 马达
medium - turbocharger - 涡轮增压器
medium - supercharger - 机械增压器
medium - carburetor - 化油器
medium - fuel injection - 燃油喷射
medium - radiator - 散热器
medium - alternator - 交流发电机
medium - battery - 电池
medium - starter - 启动器
medium - spark plug - 火花塞
medium - piston - 活塞
medium - crankshaft - 曲轴
medium - camshaft - 凸轮轴
medium - cylinder - 气缸
medium - exhaust pipe - 排气管
medium - muffler - 消音器
medium - catalytic converter - 催化转换器
medium - suspension - 悬挂系统
medium - shock absorber - 减震器
medium - strut - 支柱
medium - spring - 弹簧
medium - axle - 车轴
medium - differential - 差速器
medium - driveshaft - 传动轴
medium - transmission - 变速器
medium - brake - 刹车
medium - disc brake - 盘式制动器
medium - drum brake - 鼓式制动器
medium - brake pad - 刹车片
medium - brake shoe - 刹车蹄
medium - steering wheel - 方向盘
medium - power steering - 动力转向
medium - rack and pinion - 齿轮齿条
medium - tie rod - 拉杆
medium - ball joint - 球头
medium - control arm - 控制臂
medium - stabilizer bar - 稳定杆
medium - sway bar - 防倾杆
medium - bumper - 保险杠
medium - fender - 挡泥板
medium - hood - 引擎盖
medium - trunk - 后备箱
medium - tailgate - 尾门
medium - windshield - 挡风玻璃
medium - sunroof - 天窗
medium - moonroof - 月光顶
medium - side mirror - 后视镜
medium - rearview mirror - 后视镜
medium - headlight - 前大灯
medium - taillight - 尾灯
medium - turn signal - 转向灯
medium - hazard light - 警示灯
medium - fog light - 雾灯
medium - horn - 喇叭
medium - windshield wiper - 雨刷
medium - washer fluid - 洗涤液
medium - air conditioning - 空调
medium - heater - 暖气
medium - defroster - 除霜器
medium - dashboard - 仪表板
medium - speedometer - 速度计
medium - odometer - 里程表
medium - tachometer - 转速表
medium - fuel gauge - 油量表
medium - temperature gauge - 温度计
medium - airbag - 安全气囊
medium - seatbelt - 安全带
medium - child seat - 儿童座椅
medium - armrest - 扶手
medium - cup holder - 杯架
medium - glove compartment - 手套箱
medium - center console - 中控台
medium - parking brake - 手刹
medium - pedal - 踏板
medium - accelerator - 油门
medium - gas pedal - 油门踏板
medium - brake pedal - 刹车踏板
medium - clutch pedal - 离合器踏板
medium - wheel - 轮子
medium - rim - 轮毂
medium - tire - 轮胎
medium - hubcap - 轮毂盖
medium - spare tire - 备胎
medium - lug nut - 螺母
medium - valve stem - 气门嘴
medium - tread - 胎面
medium - sidewall - 胎侧
medium - alignment - 定位
medium - balancing - 平衡
medium - rotation - 轮换
medium - motorcycle - 摩托车
medium - cruiser - 巡航摩托
medium - sportbike - 运动摩托
medium - touring bike - 旅行摩托
medium - chopper - 斩波摩托
medium - bobber - 短尾摩托
medium - cafe racer - 咖啡赛车
medium - scrambler - 攀爬摩托
medium - dual-sport - 双运动摩托
medium - adventure bike - 探险摩托
medium - dirt bike - 越野摩托
medium - motocross - 越野摩托
medium - enduro - 耐力摩托
medium - trial bike - 障碍赛摩托
medium - supermoto - 超级摩托
medium - naked bike - 裸车
medium - standard - 标准摩托
medium - moped - 轻便摩托
medium - scooter - 踏板摩托
medium - vespa - 维斯帕
medium - minibike - 迷你摩托
medium - pocket bike - 袖珍摩托
medium - pit bike - 小轮摩托
medium - quad - 四轮摩托
medium - ATV - 全地形车
medium - UTV - 多功能车
medium - dune buggy - 沙滩车
medium - snowmobile - 雪地摩托
medium - jet ski - 水上摩托
medium - waverunner - 水上摩托
medium - personal watercraft - 私人水上摩托
hard - landaulet - 半敞篷车
hard - limousine - 豪华轿车
hard - stretch limo - 加长豪华轿车
hard - town car - 城市轿车
hard - shooting brake - 猎装车
hard - estate car - 旅行车
hard - woody wagon - 木质旅行车
hard - panel van - 厢式货车
hard - cargo van - 货运厢式车
hard - delivery van - 送货车
hard - box truck - 厢式卡车
hard - flatbed - 平板卡车
hard - semi-truck - 半挂车
hard - tractor-trailer - 牵引拖车
hard - big rig - 大型卡车
hard - articulated lorry - 铰接式卡车
hard - tanker truck - 罐车
hard - refrigerated truck - 冷藏车
hard - mobile crane - 移动起重机
hard - tower crane - 塔式起重机
hard - gantry crane - 门式起重机
hard - overhead crane - 桥式起重机
hard - jib crane - 悬臂起重机
hard - telescopic crane - 伸缩式起重机
hard - crawler crane - 履带起重机
hard - rough terrain crane - 全地形起重机
hard - backhoe - 反铲挖掘机
hard - front loader - 前装载机
hard - wheel loader - 轮式装载机
hard - skid steer - 滑移装载机
hard - bobcat - 山猫装载机
hard - grader - 平地机
hard - road roller - 压路机
hard - steamroller - 蒸汽压路机
hard - compactor - 压实机
hard - paver - 摊铺机
hard - asphalt paver - 沥青摊铺机
hard - milling machine - 铣刨机
hard - trencher - 开沟机
hard - pile driver - 打桩机
hard - drill rig - 钻机
hard - cherry picker - 高空作业车
hard - bucket truck - 斗车
hard - boom lift - 臂式升降机
hard - scissor lift - 剪叉式升降机
hard - aerial work platform - 高空作业平台
hard - tugboat - 拖船
hard - towboat - 拖船
hard - pushboat - 推船
hard - barge - 驳船
hard - lighter - 驳船
hard - freighter - 货船
hard - cargo ship - 货船
hard - container ship - 集装箱船
hard - bulk carrier - 散货船
hard - tanker - 油轮
hard - supertanker - 超级油轮
hard - VLCC - 超大型油轮
hard - ULCC - 超巨型油轮
hard - LNG carrier - 液化天然气船
hard - reefer ship - 冷藏船
hard - ro-ro ship - 滚装船
hard - vehicle carrier - 汽车运输船
hard - livestock carrier - 牲畜运输船
hard - dredger - 挖泥船
hard - hopper dredger - 耙吸挖泥船
hard - cutter suction dredger - 绞吸挖泥船
hard - trailing suction dredger - 拖吸挖泥船
hard - fishing vessel - 渔船
hard - trawler - 拖网渔船
hard - longliner - 延绳钓船
hard - purse seiner - 围网渔船
hard - factory ship - 加工船
hard - whaler - 捕鲸船
hard - icebreaker - 破冰船
hard - research vessel - 科考船
hard - survey vessel - 测量船
hard - cable layer - 电缆铺设船
hard - pipe layer - 管道铺设船
hard - crane vessel - 起重船
hard - floating crane - 浮吊
hard - platform supply vessel - 平台供应船
hard - anchor handling tug - 锚作拖船
hard - fireboat - 消防船
hard - pilot boat - 引水船
hard - patrol boat - 巡逻艇
hard - coast guard cutter - 海岸警卫艇
hard - customs boat - 海关艇
hard - lifeboat - 救生艇
hard - rescue boat - 救援艇
hard - inflatable boat - 充气艇
hard - rigid inflatable boat - 硬式充气艇
hard - pontoon boat - 浮筒船
hard - houseboat - 游艇
hard - narrowboat - 窄船
hard - canal boat - 运河船
hard - river boat - 江船
hard - paddle steamer - 明轮船
hard - sternwheeler - 尾轮船
hard - sidewheeler - 侧轮船
hard - propeller - 螺旋桨
hard - screw - 螺旋桨
hard - thruster - 推进器
hard - bow thruster - 艏侧推器
hard - stern thruster - 艉侧推器
hard - azimuth thruster - 全回转推进器
hard - waterjet - 喷水推进
hard - paddle - 桨
hard - oar - 桨
hard - rudder - 舵
hard - keel - 龙骨
hard - hull - 船体
hard - bow - 船头
hard - stern - 船尾
hard - port - 左舷
hard - starboard - 右舷
hard - deck - 甲板
hard - bridge - 驾驶台
hard - wheelhouse - 驾驶室
hard - helm - 舵
hard - anchor - 锚
hard - mooring - 系泊
hard - hawser - 缆绳
hard - winch - 绞车
hard - capstan - 绞盘
hard - davit - 吊艇架
hard - gangway - 舷梯
hard - companionway - 升降口
hard - hatch - 舱口
hard - hold - 货舱
hard - ballast - 压舱物
hard - bulkhead - 舱壁
hard - berth - 泊位
hard - cabin - 舱室
hard - galley - 厨房
hard - mess - 餐厅
hard - head - 厕所
hard - quarter - 船尾
hard - forecastle - 前甲板
hard - poop deck - 尾楼甲板
hard - flight deck - 飞行甲板
hard - hangar deck - 机库甲板
hard - gun deck - 炮甲板
hard - orlop deck - 最下层甲板
hard - tween deck - 中层甲板
hard - promenade deck - 散步甲板
hard - sun deck - 日光浴甲板
hard - boat deck - 救生艇甲板
hard - weather deck - 露天甲板
hard - upper deck - 上甲板
hard - main deck - 主甲板
hard - lower deck - 下甲板
+22
View File
@@ -0,0 +1,22 @@
{
"compilerOptions": {
"target": "ES2020",
"useDefineForClassFields": true,
"module": "ESNext",
"lib": ["ES2020", "DOM", "DOM.Iterable"],
"skipLibCheck": true,
"moduleResolution": "bundler",
"allowImportingTsExtensions": true,
"resolveJsonModule": true,
"isolatedModules": true,
"moduleDetection": "force",
"noEmit": true,
"jsx": "preserve",
"strict": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"noFallthroughCasesInSwitch": true,
"types": ["vitest/globals"]
},
"include": ["src/**/*.ts", "src/**/*.vue", "vite-env.d.ts"]
}
+1
View File
@@ -0,0 +1 @@
/// <reference types="vite/client" />
+13
View File
@@ -0,0 +1,13 @@
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
export default defineConfig({
plugins: [vue()],
build: {
target: 'es2020',
},
test: {
globals: true,
environment: 'node',
},
})
+82
View File
@@ -0,0 +1,82 @@
apiVersion: v1
kind: Namespace
metadata:
name: cube-articulate
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: articulate
namespace: cube-articulate
labels:
app: articulate
spec:
replicas: 1
selector:
matchLabels:
app: articulate
template:
metadata:
labels:
app: articulate
spec:
imagePullSecrets:
- name: registry-creds
containers:
- name: articulate
image: registry.famzheng.me/mochi/articulate:latest
imagePullPolicy: IfNotPresent
ports:
- containerPort: 8080
name: http
readinessProbe:
httpGet:
path: /healthz
port: http
initialDelaySeconds: 1
periodSeconds: 5
livenessProbe:
httpGet:
path: /healthz
port: http
initialDelaySeconds: 5
periodSeconds: 15
resources:
requests:
cpu: 10m
memory: 16Mi
limits:
cpu: 200m
memory: 64Mi
---
apiVersion: v1
kind: Service
metadata:
name: articulate
namespace: cube-articulate
spec:
selector:
app: articulate
ports:
- name: http
port: 80
targetPort: 8080
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: articulate
namespace: cube-articulate
spec:
ingressClassName: traefik
rules:
- host: articulate.famzheng.me
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: articulate
port:
number: 80
+9
View File
@@ -0,0 +1,9 @@
//! articulate.famzheng.me — 中英猜词派对游戏。纯静态前端,无 API。
#[tokio::main]
async fn main() -> std::io::Result<()> {
cube_core::init_tracing();
let dist = std::env::var("ARTICULATE_DIST_DIR").unwrap_or_else(|_| "/dist".into());
let app = cube_core::base(dist);
cube_core::serve(app, 8080).await
}
+11
View File
@@ -0,0 +1,11 @@
[package]
name = "karaoke"
version = "0.1.0"
edition.workspace = true
license.workspace = true
authors.workspace = true
description = "karaoke.famzheng.me — 卡拉OK 点歌单本地管理(一台手机),从 partiverse 移植"
[dependencies]
cube-core = { path = "../../crates/cube-core" }
tokio = { workspace = true }
+6
View File
@@ -0,0 +1,6 @@
# karaoke — karaoke.famzheng.me
FROM scratch
COPY target/x86_64-unknown-linux-musl/release/karaoke /karaoke
COPY apps/karaoke/frontend/dist /dist
EXPOSE 8080
ENTRYPOINT ["/karaoke"]
+13
View File
@@ -0,0 +1,13 @@
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" />
<meta name="theme-color" content="#1a1a2e" />
<title>Karaoke 点歌单</title>
</head>
<body>
<div id="app"></div>
<script type="module" src="/src/main.ts"></script>
</body>
</html>
+22
View File
@@ -0,0 +1,22 @@
{
"name": "karaoke",
"private": true,
"version": "0.1.0",
"type": "module",
"scripts": {
"dev": "vite",
"build": "vue-tsc -b && vite build",
"preview": "vite preview",
"test": "vitest"
},
"dependencies": {
"vue": "^3.5.13"
},
"devDependencies": {
"@vitejs/plugin-vue": "^5.2.1",
"typescript": "~5.7.2",
"vite": "^6.0.5",
"vitest": "^2.1.8",
"vue-tsc": "^2.2.0"
}
}
+22
View File
@@ -0,0 +1,22 @@
{
"compilerOptions": {
"target": "ES2020",
"useDefineForClassFields": true,
"module": "ESNext",
"lib": ["ES2020", "DOM", "DOM.Iterable"],
"skipLibCheck": true,
"moduleResolution": "bundler",
"allowImportingTsExtensions": true,
"resolveJsonModule": true,
"isolatedModules": true,
"moduleDetection": "force",
"noEmit": true,
"jsx": "preserve",
"strict": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"noFallthroughCasesInSwitch": true,
"types": ["vitest/globals"]
},
"include": ["src/**/*.ts", "src/**/*.vue", "vite-env.d.ts"]
}
+1
View File
@@ -0,0 +1 @@
/// <reference types="vite/client" />
+13
View File
@@ -0,0 +1,13 @@
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
export default defineConfig({
plugins: [vue()],
build: {
target: 'es2020',
},
test: {
globals: true,
environment: 'node',
},
})
+82
View File
@@ -0,0 +1,82 @@
apiVersion: v1
kind: Namespace
metadata:
name: cube-karaoke
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: karaoke
namespace: cube-karaoke
labels:
app: karaoke
spec:
replicas: 1
selector:
matchLabels:
app: karaoke
template:
metadata:
labels:
app: karaoke
spec:
imagePullSecrets:
- name: registry-creds
containers:
- name: karaoke
image: registry.famzheng.me/mochi/karaoke:latest
imagePullPolicy: IfNotPresent
ports:
- containerPort: 8080
name: http
readinessProbe:
httpGet:
path: /healthz
port: http
initialDelaySeconds: 1
periodSeconds: 5
livenessProbe:
httpGet:
path: /healthz
port: http
initialDelaySeconds: 5
periodSeconds: 15
resources:
requests:
cpu: 10m
memory: 16Mi
limits:
cpu: 200m
memory: 64Mi
---
apiVersion: v1
kind: Service
metadata:
name: karaoke
namespace: cube-karaoke
spec:
selector:
app: karaoke
ports:
- name: http
port: 80
targetPort: 8080
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: karaoke
namespace: cube-karaoke
spec:
ingressClassName: traefik
rules:
- host: karaoke.famzheng.me
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: karaoke
port:
number: 80
+9
View File
@@ -0,0 +1,9 @@
//! karaoke.famzheng.me — 卡拉OK 点歌单本地管理。纯静态前端,无 API。
#[tokio::main]
async fn main() -> std::io::Result<()> {
cube_core::init_tracing();
let dist = std::env::var("KARAOKE_DIST_DIR").unwrap_or_else(|_| "/dist".into());
let app = cube_core::base(dist);
cube_core::serve(app, 8080).await
}
@@ -227,9 +227,37 @@
<button @click="next" class="btn-icon" title="下一首"></button>
<span class="time">{{ fmtTime(currentTime) }}</span>
<div class="bar" @click="seekBar">
<div
v-if="loopA != null"
class="loop-mark"
:style="{ left: progressForTime(loopA) + '%' }"
title="A"
>A</div>
<div
v-if="loopB != null"
class="loop-mark"
:style="{ left: progressForTime(loopB) + '%' }"
title="B"
>B</div>
<div
v-if="loopA != null && loopB != null"
class="loop-range"
:style="loopRangeStyle"
></div>
<div class="fill" :style="{ width: progressPct + '%' }"></div>
</div>
<span class="time">{{ fmtTime(duration) }}</span>
<button class="ab-btn" :class="{ on: loopA != null }" title="A 点" @click="setA">A</button>
<button class="ab-btn" :class="{ on: loopB != null }" title="B 点" @click="setB">B</button>
<button
class="ab-btn"
:class="{ on: loopOn }"
:disabled="loopA == null || loopB == null"
title="A↔B 循环"
@click="toggleLoop"
>🔁</button>
<button v-if="loopA != null || loopB != null" class="ab-btn clear" title="清掉 A/B" @click="clearLoop"></button>
<button class="rate-btn" :title="`变速 ${rateLabel}`" @click="cycleRate">{{ rateLabel }}</button>
<button
class="btn-icon vol-icon"
:title="muted ? '取消静音' : '静音'"
@@ -380,6 +408,62 @@ const repeatOne = ref(false)
const volume = ref(parseFloat(localStorage.getItem('music.vol') || '1'))
const muted = ref(localStorage.getItem('music.muted') === '1')
// 变速播放(保留 0.5/0.75/1/1.25/1.5 五档;浏览器 native preserve pitch 在 macOS Safari/Chrome 默认开)
const rateOptions = [0.5, 0.75, 1, 1.25, 1.5]
const playbackRate = ref(parseFloat(localStorage.getItem('music.rate')) || 1)
const rateLabel = computed(() => {
const r = playbackRate.value
return r === 1 ? '1×' : (r % 1 === 0 ? r + '×' : r.toFixed(2).replace(/0$/, '') + '×')
})
function cycleRate() {
const idx = rateOptions.indexOf(playbackRate.value)
const next = rateOptions[(idx + 1) % rateOptions.length]
playbackRate.value = next
localStorage.setItem('music.rate', String(next))
if (audioEl.value) {
audioEl.value.playbackRate = next
audioEl.value.preservesPitch = true
}
}
// AB Loop
const loopA = ref(null)
const loopB = ref(null)
const loopOn = ref(false)
function setA() {
if (!audioEl.value) return
loopA.value = audioEl.value.currentTime
if (loopB.value != null && loopB.value <= loopA.value) loopB.value = null
}
function setB() {
if (!audioEl.value) return
const t = audioEl.value.currentTime
if (loopA.value != null && t > loopA.value) {
loopB.value = t
loopOn.value = true
} else {
// A 没设或 t<=A:忽略
}
}
function toggleLoop() {
if (loopA.value != null && loopB.value != null) loopOn.value = !loopOn.value
}
function clearLoop() {
loopA.value = null
loopB.value = null
loopOn.value = false
}
function progressForTime(t) {
if (!duration.value) return 0
return Math.max(0, Math.min(100, (t / duration.value) * 100))
}
const loopRangeStyle = computed(() => {
if (loopA.value == null || loopB.value == null || !duration.value) return {}
const left = progressForTime(loopA.value)
const right = progressForTime(loopB.value)
return { left: left + '%', width: (right - left) + '%' }
})
const volIcon = computed(() => {
if (muted.value || volume.value === 0) return '🔇'
if (volume.value < 0.34) return '🔈'
@@ -658,6 +742,8 @@ async function promptNewPlaylist() {
async function loadPiece(id) {
selected.value = null
notesDraft.value = ''
// 切歌清 AB Looprate 保留全局)
clearLoop()
stopChordPoll('chord')
chordStates.value = { chord: 'idle' }
chordErrors.value = { chord: '' }
@@ -745,6 +831,11 @@ function seekBar(e) {
function onTimeUpdate(e) {
currentTime.value = e.target.currentTime
// AB Loop:到 B 点跳回 A
if (loopOn.value && loopA.value != null && loopB.value != null
&& currentTime.value >= loopB.value) {
e.target.currentTime = loopA.value
}
if (selectedId.value && lastReportedId !== selectedId.value && currentTime.value >= 10) {
lastReportedId = selectedId.value
recordPlay(selectedId.value).then(d => {
@@ -774,6 +865,8 @@ function onTimeUpdate(e) {
function onLoaded(e) {
duration.value = e.target.duration || 0
applyVolume()
e.target.playbackRate = playbackRate.value
e.target.preservesPitch = true
}
function onEnded() {
@@ -1578,7 +1671,58 @@ onBeforeUnmount(() => {
height: 100%;
background: var(--accent-strong);
border-radius: 2px;
pointer-events: none;
}
.loop-range {
position: absolute;
top: 0;
height: 100%;
background: rgba(74, 222, 128, 0.35);
border-radius: 2px;
pointer-events: none;
}
.loop-mark {
position: absolute;
top: -8px;
transform: translateX(-50%);
font-size: 9px;
color: var(--accent-green);
background: rgba(74, 222, 128, 0.2);
padding: 1px 4px;
border-radius: 3px;
pointer-events: none;
font-weight: 700;
}
.ab-btn {
font-size: 11px;
padding: 4px 8px;
border-radius: 4px;
background: var(--bg-elev);
color: var(--text-mute);
border: 1px solid var(--border);
min-width: 28px;
height: 28px;
}
.ab-btn:hover:not(:disabled) { color: var(--text); }
.ab-btn.on {
background: rgba(74, 222, 128, 0.18);
color: var(--accent-green);
border-color: var(--accent-green);
}
.ab-btn.clear { color: var(--accent-red); border-color: rgba(239,68,68,0.4); }
.rate-btn {
font-size: 12px;
padding: 4px 10px;
border-radius: 14px;
background: var(--bg-elev);
color: var(--text-dim);
border: 1px solid var(--border);
min-width: 44px;
height: 28px;
font-weight: 600;
}
.rate-btn:hover { color: var(--accent); }
.time {
font-size: 12px;
color: var(--text-dim);
+11
View File
@@ -0,0 +1,11 @@
[package]
name = "werewolf"
version = "0.1.0"
edition.workspace = true
license.workspace = true
authors.workspace = true
description = "werewolf.famzheng.me — 狼人杀单机发牌器(一台手机轮流传),从 partiverse 移植"
[dependencies]
cube-core = { path = "../../crates/cube-core" }
tokio = { workspace = true }
+7
View File
@@ -0,0 +1,7 @@
# werewolf — werewolf.famzheng.me
# Build context = repo root,路径都是 apps/werewolf/...
FROM scratch
COPY target/x86_64-unknown-linux-musl/release/werewolf /werewolf
COPY apps/werewolf/frontend/dist /dist
EXPOSE 8080
ENTRYPOINT ["/werewolf"]
+13
View File
@@ -0,0 +1,13 @@
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" />
<meta name="theme-color" content="#1a1a2e" />
<title>狼人杀发牌器</title>
</head>
<body>
<div id="app"></div>
<script type="module" src="/src/main.ts"></script>
</body>
</html>
+22
View File
@@ -0,0 +1,22 @@
{
"name": "werewolf",
"private": true,
"version": "0.1.0",
"type": "module",
"scripts": {
"dev": "vite",
"build": "vue-tsc -b && vite build",
"preview": "vite preview",
"test": "vitest"
},
"dependencies": {
"vue": "^3.5.13"
},
"devDependencies": {
"@vitejs/plugin-vue": "^5.2.1",
"typescript": "~5.7.2",
"vite": "^6.0.5",
"vitest": "^2.1.8",
"vue-tsc": "^2.2.0"
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 648 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 697 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 784 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 716 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 721 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 712 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 638 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 701 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 586 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 676 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 734 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 663 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 728 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 628 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 726 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 700 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 746 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 280 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 717 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 708 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 722 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 675 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 741 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 731 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 714 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 639 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 618 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 689 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 644 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 663 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 657 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 692 KiB

@@ -0,0 +1,102 @@
// 角色分配 + role list 展开。RNG 注入,便于测试。
export type RoleDict = Record<string, number>
export type RoleList = string[]
export type Preferences = Record<number, string[]> // player_id (1-based) -> 偏好角色列表
export interface Rng {
// [0, 1)
next(): number
}
export const defaultRng: Rng = { next: () => Math.random() }
/** 把 {狼人: 2, 村民: 1} 展开成 ['狼人', '狼人', '村民']。已是 list 则原样返回。 */
export function expandRolesToList(roles: RoleDict | RoleList): RoleList {
if (Array.isArray(roles)) return [...roles]
const out: RoleList = []
for (const [role, count] of Object.entries(roles)) {
for (let i = 0; i < count; i++) out.push(role)
}
return out
}
/** 缩回 dict,方便存历史。 */
export function rolesListToDict(roles: RoleList): RoleDict {
const out: RoleDict = {}
for (const r of roles) out[r] = (out[r] || 0) + 1
return out
}
// Fisher-Yates shuffle,用注入的 rng 保证可测。
export function shuffle<T>(arr: T[], rng: Rng = defaultRng): T[] {
const a = [...arr]
for (let i = a.length - 1; i > 0; i--) {
const j = Math.floor(rng.next() * (i + 1))
;[a[i], a[j]] = [a[j], a[i]]
}
return a
}
function weightedPick(weighted: string[], rng: Rng): string {
// weighted 是已经按权重展开的 list,直接随机选
const idx = Math.floor(rng.next() * weighted.length)
return weighted[idx]
}
/**
* 按偏好分配角色。
*
* 算法(从 partiverse python 同步):
* - 先随机化玩家顺序(保证公平 — 谁都可能先选)
* - 维护剩余角色池
* - 对每个玩家:偏好角色 4x 权重,其他 1x,加权随机抽一个
* - 抽完从池里扣除
*
* 返回 listindex 0 = player 1 的角色。
*/
export function assignRolesWithPreferences(
rolesList: RoleList,
preferences: Preferences,
rng: Rng = defaultRng,
): RoleList {
const numPlayers = rolesList.length
if (numPlayers === 0) return []
// 池:role -> 剩余 count
const pool: Record<string, number> = {}
for (const r of rolesList) pool[r] = (pool[r] || 0) + 1
const playerOrder = shuffle(
Array.from({ length: numPlayers }, (_, i) => i + 1),
rng,
)
const assignments: Record<number, string> = {}
for (const playerId of playerOrder) {
const preferred = new Set(preferences[playerId] || [])
const weighted: string[] = []
for (const [role, count] of Object.entries(pool)) {
if (count <= 0) continue
const w = preferred.has(role) ? count * 4 : count
for (let i = 0; i < w; i++) weighted.push(role)
}
if (weighted.length === 0) {
// 不该发生,兜底
assignments[playerId] = rolesList[playerId - 1]
continue
}
const picked = weightedPick(weighted, rng)
assignments[playerId] = picked
pool[picked] -= 1
if (pool[picked] === 0) delete pool[picked]
}
const out: RoleList = []
for (let i = 1; i <= numPlayers; i++) out.push(assignments[i])
return out
}
+46
View File
@@ -0,0 +1,46 @@
// 全部 30 个角色,名字 = public/werewolf/roles/{name}.JPG 的 stem
export const ALL_ROLES = [
'企鹅', '厚皮狼', '大公鸡', '女巫', '守卫', '守夜人', '小女孩', '小绵羊',
'憎恶猎人', '暴狼', '月夜祭司', '机械狼', '村民', '炸弹师', '熊', '爱神',
'狼人', '狼美人', '猎人', '白狼王', '白痴', '盗宝大师', '石像鬼', '禁锢之影',
'织梦人', '老酒鬼', '通灵师', '野孩子', '预言家', '骑士',
] as const
export type RoleName = (typeof ALL_ROLES)[number]
// 默认预设。从 partiverse backend/activities/werewolf.py 同步。
export const DEFAULT_PRESETS: Record<number, Record<string, number>> = {
8: { 狼人: 2, 守卫: 2, 女巫: 1, 猎人: 1, 骑士: 1, 白狼王: 1 },
9: { 狼人: 3, 守卫: 2, 女巫: 1, 猎人: 1, 骑士: 1, 白狼王: 1 },
10: { 狼人: 3, 守卫: 3, 女巫: 1, 猎人: 1, 骑士: 1, 白狼王: 1 },
12: { 狼人: 4, 守卫: 3, 女巫: 1, 猎人: 1, 骑士: 1, 白狼王: 1, 村民: 1 },
}
// preset 里出现过的角色排前面(频次降序,再按名字)
function presetFrequency(): Record<string, number> {
const counts: Record<string, number> = {}
for (const preset of Object.values(DEFAULT_PRESETS)) {
for (const role of Object.keys(preset)) {
counts[role] = (counts[role] || 0) + 1
}
}
return counts
}
export function sortedRoles(): RoleName[] {
const counts = presetFrequency()
return [...ALL_ROLES].sort((a, b) => {
const da = counts[a] || 0
const db = counts[b] || 0
if (da !== db) return db - da
return a.localeCompare(b, 'zh-Hans-CN')
})
}
export function roleImageUrl(role: string): string {
return `/werewolf/roles/${encodeURIComponent(role)}.JPG`
}
export function backImageUrl(): string {
return '/werewolf/back.jpg'
}
+22
View File
@@ -0,0 +1,22 @@
{
"compilerOptions": {
"target": "ES2020",
"useDefineForClassFields": true,
"module": "ESNext",
"lib": ["ES2020", "DOM", "DOM.Iterable"],
"skipLibCheck": true,
"moduleResolution": "bundler",
"allowImportingTsExtensions": true,
"resolveJsonModule": true,
"isolatedModules": true,
"moduleDetection": "force",
"noEmit": true,
"jsx": "preserve",
"strict": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"noFallthroughCasesInSwitch": true,
"types": ["vitest/globals"]
},
"include": ["src/**/*.ts", "src/**/*.vue", "vite-env.d.ts"]
}
+1
View File
@@ -0,0 +1 @@
/// <reference types="vite/client" />
+13
View File
@@ -0,0 +1,13 @@
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
export default defineConfig({
plugins: [vue()],
build: {
target: 'es2020',
},
test: {
globals: true,
environment: 'node',
},
})
+82
View File
@@ -0,0 +1,82 @@
apiVersion: v1
kind: Namespace
metadata:
name: cube-werewolf
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: werewolf
namespace: cube-werewolf
labels:
app: werewolf
spec:
replicas: 1
selector:
matchLabels:
app: werewolf
template:
metadata:
labels:
app: werewolf
spec:
imagePullSecrets:
- name: registry-creds
containers:
- name: werewolf
image: registry.famzheng.me/mochi/werewolf:latest
imagePullPolicy: IfNotPresent
ports:
- containerPort: 8080
name: http
readinessProbe:
httpGet:
path: /healthz
port: http
initialDelaySeconds: 1
periodSeconds: 5
livenessProbe:
httpGet:
path: /healthz
port: http
initialDelaySeconds: 5
periodSeconds: 15
resources:
requests:
cpu: 10m
memory: 16Mi
limits:
cpu: 200m
memory: 64Mi
---
apiVersion: v1
kind: Service
metadata:
name: werewolf
namespace: cube-werewolf
spec:
selector:
app: werewolf
ports:
- name: http
port: 80
targetPort: 8080
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: werewolf
namespace: cube-werewolf
spec:
ingressClassName: traefik
rules:
- host: werewolf.famzheng.me
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: werewolf
port:
number: 80
+9
View File
@@ -0,0 +1,9 @@
//! werewolf.famzheng.me — 狼人杀单机发牌器。纯静态前端,无 API。
#[tokio::main]
async fn main() -> std::io::Result<()> {
cube_core::init_tracing();
let dist = std::env::var("WEREWOLF_DIST_DIR").unwrap_or_else(|_| "/dist".into());
let app = cube_core::base(dist);
cube_core::serve(app, 8080).await
}