The export bundle is the input to this port, not a sketch: the curriculum, the tutor prompt and the five logic modules are finished and tested. They land here byte-identical and stay that way. diff -r export/data data && diff -r export/lib lib diff -r export/prompt prompt && diff export/validate.mjs validate.mjs data/, lib/, prompt/ and validate.mjs sit at the repo root so validate.mjs runs verbatim with no path edits. All four are excluded from lint and formatting — they are not ours to restyle. Types for lib/ live alongside in types/ rather than as sibling .d.ts files, so the verbatim check stays a plain directory diff. CI runs the curriculum gate first, before anything else can pass: node validate.mjs PASS — 0 blocking, 0 advisory Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
961 lines
28 KiB
JSON
961 lines
28 KiB
JSON
{
|
|
"note": "Reference grammar points. read:1 marks reading-priority items.",
|
|
"points": [
|
|
{
|
|
"id": "g-eun",
|
|
"cat": "조사 Particles",
|
|
"form": "은 / 는",
|
|
"name": "topic marker",
|
|
"why": "Names what the sentence is about, and quietly sets it against something else. 은 after a consonant, 는 after a vowel. A Korean sentence can drop it once the topic is obvious.",
|
|
"ex": [
|
|
[
|
|
"저는 학생이에요.",
|
|
"jeoneun haksaeng-ieyo.",
|
|
"I'm a student."
|
|
],
|
|
[
|
|
"김치는 매워요.",
|
|
"gimchineun maewoyo.",
|
|
"Kimchi — that one's spicy."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-iga",
|
|
"cat": "조사 Particles",
|
|
"form": "이 / 가",
|
|
"name": "subject marker",
|
|
"why": "Marks who or what performs the verb, and introduces information that is new. 이 after a consonant, 가 after a vowel. 저 + 가 becomes 제가.",
|
|
"ex": [
|
|
[
|
|
"친구가 왔어요.",
|
|
"chinguga wasseoyo.",
|
|
"A friend came."
|
|
],
|
|
[
|
|
"시간이 없어요.",
|
|
"sigani eopseoyo.",
|
|
"There's no time."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-eul",
|
|
"cat": "조사 Particles",
|
|
"form": "을 / 를",
|
|
"name": "object marker",
|
|
"why": "Marks the thing the verb acts on. 을 after a consonant, 를 after a vowel. Dropped constantly in speech.",
|
|
"ex": [
|
|
[
|
|
"밥을 먹어요.",
|
|
"babeul meogeoyo.",
|
|
"I'm eating."
|
|
],
|
|
[
|
|
"커피를 마셔요.",
|
|
"keopireul masyeoyo.",
|
|
"I'm drinking coffee."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-e",
|
|
"cat": "조사 Particles",
|
|
"form": "에",
|
|
"name": "at, to, in (destination & time)",
|
|
"why": "Points at a destination, a point in time, or a static location with 있다 / 없다. Never used for where an action takes place — that is 에서.",
|
|
"ex": [
|
|
[
|
|
"학교에 가요.",
|
|
"hakgyoe gayo.",
|
|
"I go to school."
|
|
],
|
|
[
|
|
"세 시에 만나요.",
|
|
"se sie mannayo.",
|
|
"Let's meet at three."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-eseo",
|
|
"cat": "조사 Particles",
|
|
"form": "에서",
|
|
"name": "at, in (action), from",
|
|
"why": "Where something happens, or where it started. Pair it with 에 to feel the split: 집에 있어요 (I'm at home) vs 집에서 일해요 (I work at home).",
|
|
"ex": [
|
|
[
|
|
"카페에서 공부해요.",
|
|
"kapeeseo gongbuhaeyo.",
|
|
"I study at the cafe."
|
|
],
|
|
[
|
|
"독일에서 왔어요.",
|
|
"dogireseo wasseoyo.",
|
|
"I'm from Germany."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-do",
|
|
"cat": "조사 Particles",
|
|
"form": "도",
|
|
"name": "also, too",
|
|
"why": "Replaces 은/는, 이/가 and 을/를 rather than stacking onto them. 저는도 is wrong; 저도 is right.",
|
|
"ex": [
|
|
[
|
|
"저도 가요.",
|
|
"jeodo gayo.",
|
|
"I'm going too."
|
|
],
|
|
[
|
|
"물도 주세요.",
|
|
"muldo juseyo.",
|
|
"Water as well, please."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-man",
|
|
"cat": "조사 Particles",
|
|
"form": "만",
|
|
"name": "only, just",
|
|
"why": "Also replaces the subject and object markers. Attaches after time and counters happily.",
|
|
"ex": [
|
|
[
|
|
"물만 마셔요.",
|
|
"mulman masyeoyo.",
|
|
"I only drink water."
|
|
],
|
|
[
|
|
"십 분만 기다려 주세요.",
|
|
"sip bunman gidaryeo juseyo.",
|
|
"Please wait just ten minutes."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-hago",
|
|
"cat": "조사 Particles",
|
|
"form": "하고 · 와/과 · (이)랑",
|
|
"name": "and, with",
|
|
"why": "Three ways to join two nouns. 와 after a vowel, 과 after a consonant — the written pair. 하고 is neutral, (이)랑 is casual speech.",
|
|
"ex": [
|
|
[
|
|
"빵하고 우유를 샀어요.",
|
|
"ppanghago uyureul sasseoyo.",
|
|
"I bought bread and milk."
|
|
],
|
|
[
|
|
"친구와 같이 갔어요.",
|
|
"chinguwa gachi gasseoyo.",
|
|
"I went together with a friend."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-ui",
|
|
"cat": "조사 Particles",
|
|
"form": "의",
|
|
"name": "possessive 's",
|
|
"why": "Written 의 but pronounced [에] here. Often dropped entirely: 친구 가방 is perfectly natural. 저의 contracts to 제, 나의 to 내.",
|
|
"ex": [
|
|
[
|
|
"친구의 가방이에요.",
|
|
"chinguui gabang-ieyo.",
|
|
"It's my friend's bag."
|
|
],
|
|
[
|
|
"한국의 날씨는 어때요?",
|
|
"hangugui nalssineun eottaeyo?",
|
|
"How is the weather in Korea?"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-buteo",
|
|
"cat": "조사 Particles",
|
|
"form": "부터 ~ 까지",
|
|
"name": "from ~ until",
|
|
"why": "부터 ~ 까지 spans time; 에서 ~ 까지 spans distance. Mixing them up is the classic beginner tell.",
|
|
"ex": [
|
|
[
|
|
"아홉 시부터 여섯 시까지 일해요.",
|
|
"ahop sibuteo yeoseot sikkaji ilhaeyo.",
|
|
"I work from nine until six."
|
|
],
|
|
[
|
|
"집에서 회사까지 삼십 분 걸려요.",
|
|
"jibeseo hoesakkaji samsip bun geollyeoyo.",
|
|
"It takes thirty minutes from home to the office."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-boda",
|
|
"cat": "조사 Particles",
|
|
"form": "보다 (더)",
|
|
"name": "more than",
|
|
"why": "Attaches to the thing being beaten, not the winner: A는 B보다 — A beats B. 더 is optional but very common.",
|
|
"ex": [
|
|
[
|
|
"오늘이 어제보다 더워요.",
|
|
"oneuri eojeboda deowoyo.",
|
|
"Today is hotter than yesterday."
|
|
],
|
|
[
|
|
"저는 커피보다 차를 더 좋아해요.",
|
|
"jeoneun keopiboda chareul deo joahaeyo.",
|
|
"I like tea more than coffee."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-cheoreom",
|
|
"cat": "조사 Particles",
|
|
"form": "처럼 · 같이",
|
|
"name": "like, as",
|
|
"why": "Both attach directly to a noun. 같이 here is the adverb 'like', the same word as 'together' — context separates them.",
|
|
"ex": [
|
|
[
|
|
"한국 사람처럼 말해요.",
|
|
"hanguk saramcheoreom malhaeyo.",
|
|
"You speak like a Korean."
|
|
],
|
|
[
|
|
"얼음같이 차가워요.",
|
|
"eoreumgachi chagawoyo.",
|
|
"It's cold as ice."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-ieyo",
|
|
"cat": "서술 Predicates",
|
|
"form": "N + 이에요 / 예요",
|
|
"name": "to be",
|
|
"why": "The copula. 이에요 after a consonant, 예요 after a vowel. Formal register: 입니다. Negative: N이/가 아니에요.",
|
|
"ex": [
|
|
[
|
|
"저는 파비안이에요.",
|
|
"jeoneun pabian-ieyo.",
|
|
"I'm Fabian."
|
|
],
|
|
[
|
|
"여기가 우리 집이에요.",
|
|
"yeogiga uri jibieyo.",
|
|
"This is our house."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-ayo",
|
|
"cat": "서술 Predicates",
|
|
"form": "V/A + 아요 / 어요",
|
|
"name": "polite present (해요체)",
|
|
"why": "The everyday polite ending, and the one to master first. Stem vowel ㅏ or ㅗ takes 아요; everything else takes 어요; 하다 becomes 해요. Same form covers present tense, near future and a gentle suggestion.",
|
|
"ex": [
|
|
[
|
|
"지금 밥을 먹어요.",
|
|
"jigeum babeul meogeoyo.",
|
|
"I'm eating now."
|
|
],
|
|
[
|
|
"매일 운동해요.",
|
|
"maeil undonghaeyo.",
|
|
"I exercise every day."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-past",
|
|
"cat": "서술 Predicates",
|
|
"form": "V/A + 았 / 었어요",
|
|
"name": "past tense",
|
|
"why": "Take the 아/어 form, insert ㅆ, add 어요. 먹어요 → 먹었어요, 가요 → 갔어요, 해요 → 했어요.",
|
|
"ex": [
|
|
[
|
|
"어제 영화를 봤어요.",
|
|
"eoje yeonghwareul bwasseoyo.",
|
|
"I watched a film yesterday."
|
|
],
|
|
[
|
|
"밥을 안 먹었어요.",
|
|
"babeul an meogeosseoyo.",
|
|
"I didn't eat."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-future",
|
|
"cat": "서술 Predicates",
|
|
"form": "V + (으)ㄹ 거예요",
|
|
"name": "future, intention",
|
|
"why": "Plans and predictions. Add ㄹ 거예요 to a vowel-final stem, 을 거예요 after a consonant. Softer and more common than the bookish -겠-.",
|
|
"ex": [
|
|
[
|
|
"내일 한국에 갈 거예요.",
|
|
"naeil hanguge gal geoyeyo.",
|
|
"I'll go to Korea tomorrow."
|
|
],
|
|
[
|
|
"주말에 쉴 거예요.",
|
|
"jumare swil geoyeyo.",
|
|
"I'm going to rest at the weekend."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-nida",
|
|
"cat": "서술 Predicates",
|
|
"form": "V/A + ㅂ니다 / 습니다",
|
|
"name": "formal polite (합쇼체)",
|
|
"why": "The register of announcements, presentations, the news and the army. Vowel stem takes ㅂ니다, consonant stem 습니다. Questions end -ㅂ니까?",
|
|
"ex": [
|
|
[
|
|
"감사합니다.",
|
|
"gamsahamnida.",
|
|
"Thank you."
|
|
],
|
|
[
|
|
"저는 독일에서 왔습니다.",
|
|
"jeoneun dogireseo watseumnida.",
|
|
"I came from Germany."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-an",
|
|
"cat": "부정 Negation",
|
|
"form": "안 + V/A · V/A + 지 않다",
|
|
"name": "simple negation",
|
|
"why": "안 goes in front and is the spoken default; -지 않다 goes behind and reads a touch more formal. For 하다 verbs, 안 slips inside: 공부 안 해요, not 안 공부해요.",
|
|
"ex": [
|
|
[
|
|
"오늘은 안 바빠요.",
|
|
"oneureun an bappayo.",
|
|
"I'm not busy today."
|
|
],
|
|
[
|
|
"그 영화는 재미있지 않았어요.",
|
|
"geu yeonghwaneun jaemiitji anasseoyo.",
|
|
"That film wasn't interesting."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-mot",
|
|
"cat": "부정 Negation",
|
|
"form": "못 + V · V + 지 못하다",
|
|
"name": "cannot (ability, circumstance)",
|
|
"why": "안 is 'I don't'; 못 is 'I can't, even though I might want to'. Pronounced [몯] before a consonant, [모ㅅ] links forward before a vowel.",
|
|
"ex": [
|
|
[
|
|
"매운 음식을 못 먹어요.",
|
|
"maeun eumsigeul mot meogeoyo.",
|
|
"I can't eat spicy food."
|
|
],
|
|
[
|
|
"어제 못 갔어요.",
|
|
"eoje mot gasseoyo.",
|
|
"I couldn't go yesterday."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-jima",
|
|
"cat": "부정 Negation",
|
|
"form": "V + 지 마세요",
|
|
"name": "please don't",
|
|
"why": "The negative command. Attaches to the plain verb stem. Blunter: -지 마.",
|
|
"ex": [
|
|
[
|
|
"여기에서 사진을 찍지 마세요.",
|
|
"yeogieseo sajineul jjikji maseyo.",
|
|
"Please don't take photos here."
|
|
],
|
|
[
|
|
"걱정하지 마세요.",
|
|
"geokjeonghaji maseyo.",
|
|
"Don't worry."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-gosipda",
|
|
"cat": "표현 Expressions",
|
|
"form": "V + 고 싶다",
|
|
"name": "want to",
|
|
"why": "Only for I and you. Talking about a third person's wants needs -고 싶어하다, because Korean does not claim to know another person's inner state.",
|
|
"ex": [
|
|
[
|
|
"한국에 가고 싶어요.",
|
|
"hanguge gago sipeoyo.",
|
|
"I want to go to Korea."
|
|
],
|
|
[
|
|
"뭐 먹고 싶어요?",
|
|
"mwo meokgo sipeoyo?",
|
|
"What do you want to eat?"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-lsu",
|
|
"cat": "표현 Expressions",
|
|
"form": "V + (으)ㄹ 수 있다 / 없다",
|
|
"name": "can / cannot",
|
|
"why": "Literally 'there is a way to'. Vowel stem takes ㄹ 수, consonant stem 을 수.",
|
|
"ex": [
|
|
[
|
|
"한국어를 조금 할 수 있어요.",
|
|
"hangugeoreul jogeum hal su isseoyo.",
|
|
"I can speak a little Korean."
|
|
],
|
|
[
|
|
"오늘은 갈 수 없어요.",
|
|
"oneureun gal su eopseoyo.",
|
|
"I can't go today."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-ayadoeda",
|
|
"cat": "표현 Expressions",
|
|
"form": "V/A + 아 / 어야 되다",
|
|
"name": "must, have to",
|
|
"why": "Built on the 아/어 form. 되다 and 하다 are interchangeable here; 되다 is more spoken.",
|
|
"ex": [
|
|
[
|
|
"지금 가야 돼요.",
|
|
"jigeum gaya dwaeyo.",
|
|
"I have to go now."
|
|
],
|
|
[
|
|
"약을 먹어야 해요.",
|
|
"yageul meogeoya haeyo.",
|
|
"You need to take the medicine."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-euseyo",
|
|
"cat": "표현 Expressions",
|
|
"form": "V + (으)세요",
|
|
"name": "polite request & honorific",
|
|
"why": "Two jobs at once: a soft command to the listener, and the honorific present when the subject deserves respect. A few verbs go irregular — 먹다 → 드세요, 자다 → 주무세요, 있다 → 계세요.",
|
|
"ex": [
|
|
[
|
|
"여기 앉으세요.",
|
|
"yeogi anjeuseyo.",
|
|
"Please sit here."
|
|
],
|
|
[
|
|
"할머니는 지금 주무세요.",
|
|
"halmeonineun jigeum jumuseyo.",
|
|
"Grandmother is sleeping."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-juseyo",
|
|
"cat": "표현 Expressions",
|
|
"form": "V + 아 / 어 주세요",
|
|
"name": "please do it for me",
|
|
"why": "The single most useful thing to say in a shop, a taxi or a classroom. Adds a sense of favour that plain -(으)세요 lacks.",
|
|
"ex": [
|
|
[
|
|
"천천히 말해 주세요.",
|
|
"cheoncheonhi malhae juseyo.",
|
|
"Please speak slowly."
|
|
],
|
|
[
|
|
"이것 좀 보여 주세요.",
|
|
"igeot jom boyeo juseyo.",
|
|
"Could you show me this one."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-ryeogo",
|
|
"cat": "표현 Expressions",
|
|
"form": "V + (으)려고 하다",
|
|
"name": "intend to, be about to",
|
|
"why": "A plan already formed, not a fresh decision. Both clauses must share a subject.",
|
|
"ex": [
|
|
[
|
|
"한국어를 배우려고 해요.",
|
|
"hangugeoreul baeuryeogo haeyo.",
|
|
"I intend to learn Korean."
|
|
],
|
|
[
|
|
"나가려고 했어요.",
|
|
"nagaryeogo haesseoyo.",
|
|
"I was about to go out."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-reo",
|
|
"cat": "표현 Expressions",
|
|
"form": "V + (으)러 가다 / 오다",
|
|
"name": "go in order to",
|
|
"why": "Only pairs with verbs of movement — 가다, 오다, 다니다. The purpose comes first, the movement second.",
|
|
"ex": [
|
|
[
|
|
"밥 먹으러 가요.",
|
|
"bap meogeureo gayo.",
|
|
"Let's go eat."
|
|
],
|
|
[
|
|
"친구를 만나러 왔어요.",
|
|
"chingureul mannareo wasseoyo.",
|
|
"I came to meet a friend."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-geotgatda",
|
|
"cat": "표현 Expressions",
|
|
"form": "A/V + 것 같다",
|
|
"name": "it seems, I think",
|
|
"why": "Korean prefers a hedge to a flat assertion, so this shows up far more than 'I think' does in English. 올 것 같다 for a guess ahead, 온 것 같다 for a guess about what already happened.",
|
|
"ex": [
|
|
[
|
|
"비가 올 것 같아요.",
|
|
"biga ol geot gatayo.",
|
|
"It looks like rain."
|
|
],
|
|
[
|
|
"이 책이 좋은 것 같아요.",
|
|
"i chaegi joeun geot gatayo.",
|
|
"I think this book is good."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-lkkayo",
|
|
"cat": "표현 Expressions",
|
|
"form": "V + (으)ㄹ까요?",
|
|
"name": "shall we? I wonder?",
|
|
"why": "With a first-person plural sense it proposes; with a third-person subject it wonders aloud.",
|
|
"ex": [
|
|
[
|
|
"같이 갈까요?",
|
|
"gachi galkkayo?",
|
|
"Shall we go together?"
|
|
],
|
|
[
|
|
"비가 올까요?",
|
|
"biga olkkayo?",
|
|
"Do you think it'll rain?"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-neyo",
|
|
"cat": "표현 Expressions",
|
|
"form": "A/V + 네요",
|
|
"name": "realisation, mild surprise",
|
|
"why": "Marks something you have just noticed. Warm and very common — the difference between 좋아요 (it's good) and 좋네요 (oh, that's nice).",
|
|
"ex": [
|
|
[
|
|
"날씨가 좋네요.",
|
|
"nalssiga jonneyo.",
|
|
"The weather's lovely, isn't it."
|
|
],
|
|
[
|
|
"한국어를 잘하네요.",
|
|
"hangugeoreul jalhaneyo.",
|
|
"Oh — your Korean is good."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-go",
|
|
"cat": "연결 Connectives",
|
|
"form": "V/A + 고",
|
|
"name": "and (listing, sequence)",
|
|
"why": "Joins two clauses with no cause-and-effect claim. Tense is carried only by the final verb.",
|
|
"ex": [
|
|
[
|
|
"밥을 먹고 커피를 마셨어요.",
|
|
"babeul meokgo keopireul masyeosseoyo.",
|
|
"I ate and then drank coffee."
|
|
],
|
|
[
|
|
"이 카페는 조용하고 싸요.",
|
|
"i kapeneun joyonghago ssayo.",
|
|
"This cafe is quiet and cheap."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-jiman",
|
|
"cat": "연결 Connectives",
|
|
"form": "V/A + 지만",
|
|
"name": "but",
|
|
"why": "Attaches straight to the stem, and unlike -아/어서 it does take tense: 했지만.",
|
|
"ex": [
|
|
[
|
|
"한국어는 어렵지만 재미있어요.",
|
|
"hangugeoneun eoryeopjiman jaemiisseoyo.",
|
|
"Korean is hard but it's fun."
|
|
],
|
|
[
|
|
"갔지만 못 만났어요.",
|
|
"gatjiman mot mannasseoyo.",
|
|
"I went, but I couldn't meet them."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-aseo",
|
|
"cat": "연결 Connectives",
|
|
"form": "V/A + 아 / 어서",
|
|
"name": "because; and then",
|
|
"why": "Two readings from one form: a reason, or a sequence where the first action sets up the second. Never carries past tense before 서, and never precedes a command or a suggestion — that is what -(으)니까 is for.",
|
|
"ex": [
|
|
[
|
|
"배가 아파서 병원에 갔어요.",
|
|
"baega apaseo byeongwone gasseoyo.",
|
|
"I went to the hospital because my stomach hurt."
|
|
],
|
|
[
|
|
"친구를 만나서 밥을 먹었어요.",
|
|
"chingureul mannaseo babeul meogeosseoyo.",
|
|
"I met a friend and we ate."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-nikka",
|
|
"cat": "연결 Connectives",
|
|
"form": "V/A + (으)니까",
|
|
"name": "because (before commands)",
|
|
"why": "The reason ending that is allowed to precede 하세요, 합시다 and -(으)ㄹ까요. It also accepts past tense, which -아/어서 refuses.",
|
|
"ex": [
|
|
[
|
|
"비가 오니까 택시를 탑시다.",
|
|
"biga onikka taeksireul tapsida.",
|
|
"It's raining, so let's take a taxi."
|
|
],
|
|
[
|
|
"시간이 없으니까 빨리 가세요.",
|
|
"sigani eopseunikka ppalli gaseyo.",
|
|
"There's no time, so please hurry."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-neunde",
|
|
"cat": "연결 Connectives",
|
|
"form": "V + 는데 · A + (으)ㄴ데",
|
|
"name": "background, contrast, soft lead-in",
|
|
"why": "The hardest-working ending in conversational Korean. It sets the scene, softens a contrast, or simply opens a topic and trails off. Verbs take 는데, adjectives (으)ㄴ데, past tense 았/었는데.",
|
|
"ex": [
|
|
[
|
|
"지금 공부하는데 좀 어려워요.",
|
|
"jigeum gongbuhaneunde jom eoryeowoyo.",
|
|
"I'm studying now, and it's a bit hard."
|
|
],
|
|
[
|
|
"이 옷은 예쁜데 비싸요.",
|
|
"i oseun yeppeunde bissayo.",
|
|
"These clothes are pretty, but expensive."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-gijeone",
|
|
"cat": "연결 Connectives",
|
|
"form": "V + 기 전에",
|
|
"name": "before doing",
|
|
"why": "Always the plain stem + 기 전에, with no tense marking. With a noun, drop the 기: 식사 전에.",
|
|
"ex": [
|
|
[
|
|
"자기 전에 책을 읽어요.",
|
|
"jagi jeone chaegeul ilgeoyo.",
|
|
"I read before going to sleep."
|
|
],
|
|
[
|
|
"가기 전에 전화하세요.",
|
|
"gagi jeone jeonhwahaseyo.",
|
|
"Call before you go."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-nhue",
|
|
"cat": "연결 Connectives",
|
|
"form": "V + (으)ㄴ 후에",
|
|
"name": "after doing",
|
|
"why": "Mirror of 기 전에, but built on the past-modifier form: 먹은 후에, 간 후에. -(으)ㄴ 다음에 means the same thing.",
|
|
"ex": [
|
|
[
|
|
"밥을 먹은 후에 산책해요.",
|
|
"babeul meogeun hue sanchaekaeyo.",
|
|
"After eating I go for a walk."
|
|
],
|
|
[
|
|
"일이 끝난 후에 만나요.",
|
|
"iri kkeunnan hue mannayo.",
|
|
"Let's meet after work finishes."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-numsys",
|
|
"cat": "수 Numbers & counters",
|
|
"form": "일이삼 vs 하나둘셋",
|
|
"name": "the two number systems",
|
|
"why": "Korean runs two full sets of numbers side by side. Sino-Korean handles dates, money, minutes, phone numbers, floors and anything above 99 in counting. Native Korean handles counted objects, people, hours and age. A clock reading uses both at once.",
|
|
"ex": [
|
|
[
|
|
"세 시 삼십 분이에요.",
|
|
"se si samsip bunieyo.",
|
|
"It's 3:30. (native hour, Sino minute)"
|
|
],
|
|
[
|
|
"스물다섯 살이에요.",
|
|
"seumuldaseot sarieyo.",
|
|
"I'm twenty-five."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-counters",
|
|
"cat": "수 Numbers & counters",
|
|
"form": "개 · 명 · 마리 · 잔 · 권 · 살",
|
|
"name": "counters",
|
|
"why": "Nothing is counted bare — a counter word sits between the number and the verb. Before a counter, 하나·둘·셋·넷·스물 shorten to 한·두·세·네·스무. Order: noun, number, counter.",
|
|
"ex": [
|
|
[
|
|
"커피 두 잔 주세요.",
|
|
"keopi du jan juseyo.",
|
|
"Two coffees, please."
|
|
],
|
|
[
|
|
"고양이 세 마리가 있어요.",
|
|
"goyangi se mariga isseoyo.",
|
|
"There are three cats."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-banmal",
|
|
"cat": "반말 Casual speech",
|
|
"form": "V/A + 아 / 어",
|
|
"name": "반말 — plain casual speech",
|
|
"read": 1,
|
|
"why": "Take the polite 아/어요 form and drop the 요. That is 반말, and it is what almost every line of manhwa dialogue is written in. Between friends, from an older speaker to a younger one, and in a character's own thoughts.",
|
|
"ex": [
|
|
[
|
|
"밥 먹어.",
|
|
"",
|
|
"Eat. / I'm eating."
|
|
],
|
|
[
|
|
"어디 가?",
|
|
"",
|
|
"Where are you going?"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-ya",
|
|
"cat": "반말 Casual speech",
|
|
"form": "N + 야 / 이야",
|
|
"name": "casual 'to be'",
|
|
"read": 1,
|
|
"why": "The 반말 copula: 이에요/예요 with the 요 gone and the vowel shortened. 야 after a vowel, 이야 after a consonant. Questions are identical — only the rising tone and the question mark differ.",
|
|
"ex": [
|
|
[
|
|
"우리 친구야.",
|
|
"",
|
|
"We're friends."
|
|
],
|
|
[
|
|
"범인은 저 사람이야.",
|
|
"",
|
|
"The culprit is that person."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-eosseo",
|
|
"cat": "반말 Casual speech",
|
|
"form": "V/A + 았 / 었어",
|
|
"name": "casual past",
|
|
"read": 1,
|
|
"why": "The past tense minus the 요. This is the workhorse of manhwa narration and flashbacks.",
|
|
"ex": [
|
|
[
|
|
"소문 들었어?",
|
|
"",
|
|
"Did you hear the rumour?"
|
|
],
|
|
[
|
|
"나 회귀했어.",
|
|
"",
|
|
"I regressed."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-lge",
|
|
"cat": "반말 Casual speech",
|
|
"form": "V + (으)ㄹ게",
|
|
"name": "I'll do it (a promise to you)",
|
|
"read": 1,
|
|
"why": "A first-person commitment made for the listener's benefit — not a neutral prediction. Very common in the panel right before someone does something heroic.",
|
|
"ex": [
|
|
[
|
|
"내가 지킬게.",
|
|
"",
|
|
"I'll protect you."
|
|
],
|
|
[
|
|
"나 갈게.",
|
|
"",
|
|
"I'm off."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-lgeoya",
|
|
"cat": "반말 Casual speech",
|
|
"form": "V + (으)ㄹ 거야",
|
|
"name": "casual future / intention",
|
|
"read": 1,
|
|
"why": "-(으)ㄹ 거예요 in 반말. Declaring what you are going to do, often as a threat or a vow.",
|
|
"ex": [
|
|
[
|
|
"복수할 거야.",
|
|
"",
|
|
"I'm going to take revenge."
|
|
],
|
|
[
|
|
"안 갈 거야.",
|
|
"",
|
|
"I'm not going."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-ja",
|
|
"cat": "반말 Casual speech",
|
|
"form": "V + 자",
|
|
"name": "let's",
|
|
"read": 1,
|
|
"why": "The casual suggestion. 가자, 하자, 먹자 — three syllables that move a whole scene along.",
|
|
"ex": [
|
|
[
|
|
"우리 헤어지자.",
|
|
"",
|
|
"Let's break up."
|
|
],
|
|
[
|
|
"가자.",
|
|
"",
|
|
"Let's go."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-janha",
|
|
"cat": "반말 Casual speech",
|
|
"form": "V/A + 잖아",
|
|
"name": "you know, as you're aware",
|
|
"read": 1,
|
|
"why": "Appeals to something the listener already knows, often impatiently. Reading it as plain 'because' loses the exasperation the panel is drawing.",
|
|
"ex": [
|
|
[
|
|
"내가 말했잖아.",
|
|
"",
|
|
"I told you, didn't I."
|
|
],
|
|
[
|
|
"위험하잖아.",
|
|
"",
|
|
"It's dangerous, you know."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-geodeun",
|
|
"cat": "반말 Casual speech",
|
|
"form": "V/A + 거든",
|
|
"name": "the thing is…",
|
|
"read": 1,
|
|
"why": "Supplies a reason the listener did not have, sometimes with a note of defiance. Often ends a speech bubble on its own.",
|
|
"ex": [
|
|
[
|
|
"나 바쁘거든.",
|
|
"",
|
|
"I'm busy, that's why."
|
|
],
|
|
[
|
|
"걔가 먼저 그랬거든.",
|
|
"",
|
|
"He started it, actually."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-deora",
|
|
"cat": "반말 Casual speech",
|
|
"form": "V/A + 더라",
|
|
"name": "I saw it myself",
|
|
"read": 1,
|
|
"why": "Reports something the speaker personally witnessed, recalled with a little surprise. A flag that the line is a memory or an eyewitness account.",
|
|
"ex": [
|
|
[
|
|
"그 사람 진짜 강하더라.",
|
|
"",
|
|
"That person was seriously strong, I saw it."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-quote",
|
|
"cat": "반말 Casual speech",
|
|
"form": "V + 대 / 래 / 냬 / 재",
|
|
"name": "hearsay — 'they say'",
|
|
"read": 1,
|
|
"why": "Contracted quotation, everywhere in gossip panels. -대 reports a statement, -래 a command or an 'is', -냬 a question, -재 a suggestion. If a line ends in one of these, someone else said it first.",
|
|
"ex": [
|
|
[
|
|
"시험 어렵대.",
|
|
"",
|
|
"They say the exam is hard."
|
|
],
|
|
[
|
|
"같이 가재.",
|
|
"",
|
|
"He says let's go together."
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "g-neun",
|
|
"cat": "반말 Casual speech",
|
|
"form": "V + 는 / A + (으)ㄴ + N",
|
|
"name": "modifying a noun",
|
|
"read": 1,
|
|
"why": "Korean puts the whole description in front of the noun, where English puts it after: 내가 죽인 몬스터 is 'the monster I killed'. Once you can see where the modifier ends and the noun begins, long manhwa narration stops being a wall.",
|
|
"ex": [
|
|
[
|
|
"내가 죽인 몬스터.",
|
|
"",
|
|
"The monster I killed."
|
|
],
|
|
[
|
|
"강한 사람.",
|
|
"",
|
|
"A strong person."
|
|
]
|
|
]
|
|
}
|
|
]
|
|
} |