Compare commits
No commits in common. "07f1abed0e4cda243e182672a08c06aad4707342" and "67071f3165f41070121c2c60eef17e5a70a7a78b" have entirely different histories.
07f1abed0e
...
67071f3165
|
@ -1 +0,0 @@
|
|||
src/content/index.ts
|
|
@ -24,7 +24,7 @@ import * as nounsUnisex from "./nouns/nouns-unisex.mdx";
|
|||
// @ts-ignore
|
||||
import * as nounsPlural from "./nouns/nouns-plural.mdx";
|
||||
// @ts-ignore
|
||||
import * as specialPlurals from "./nouns/special-plurals.mdx";
|
||||
import * as arabicPlurals from "./nouns/arabic-plurals.mdx";
|
||||
// @ts-ignore
|
||||
import * as bundledPlurals from "./nouns/bundled-plurals.mdx";
|
||||
|
||||
|
@ -130,394 +130,383 @@ import * as phraseBuilder from "./phrase-builder.mdx";
|
|||
import * as dictionary from "./dictionary.mdx";
|
||||
|
||||
type ChapterSection = {
|
||||
"import": any;
|
||||
"slug": string;
|
||||
import: any,
|
||||
slug: string,
|
||||
};
|
||||
type ChaptersSection = {
|
||||
"heading": string;
|
||||
"subdirectory": string;
|
||||
"chapters": ChapterSection[];
|
||||
heading: string,
|
||||
subdirectory: string,
|
||||
chapters: ChapterSection[],
|
||||
};
|
||||
|
||||
// for the super hacky sitemap generator to work this array needs to be
|
||||
// - in valid JSON and surrounded by these comments
|
||||
// - the import statements have to be at the top of the objects in a seperate line
|
||||
export const contentTree: (ChapterSection | ChaptersSection)[] =
|
||||
/* content-tree */ [
|
||||
export const contentTree: (ChapterSection | ChaptersSection)[] = /* content-tree */[
|
||||
{
|
||||
"import": intro,
|
||||
"slug": "intro"
|
||||
"import": intro,
|
||||
"slug": "intro"
|
||||
},
|
||||
{
|
||||
"import": games,
|
||||
"slug": "games"
|
||||
"import": games,
|
||||
"slug": "games"
|
||||
},
|
||||
{
|
||||
"import": phraseBuilder,
|
||||
"slug": "phrase-builder"
|
||||
"import": phraseBuilder,
|
||||
"slug": "phrase-builder"
|
||||
},
|
||||
{
|
||||
"heading": "Equatives",
|
||||
"subdirectory": "equatives",
|
||||
"chapters": [
|
||||
{
|
||||
"import": presentEquative,
|
||||
"slug": "present-equative"
|
||||
},
|
||||
{
|
||||
"import": habitualEquative,
|
||||
"slug": "habitual-equative"
|
||||
},
|
||||
{
|
||||
"import": otherEquatives,
|
||||
"slug": "other-equatives"
|
||||
}
|
||||
]
|
||||
"heading": "Equatives",
|
||||
"subdirectory": "equatives",
|
||||
"chapters": [
|
||||
{
|
||||
"import": presentEquative,
|
||||
"slug": "present-equative"
|
||||
},
|
||||
{
|
||||
"import": habitualEquative,
|
||||
"slug": "habitual-equative"
|
||||
},
|
||||
{
|
||||
"import": otherEquatives,
|
||||
"slug": "other-equatives"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"heading": "Nouns",
|
||||
"subdirectory": "nouns",
|
||||
"chapters": [
|
||||
{
|
||||
"import": nounsGender,
|
||||
"slug": "nouns-gender"
|
||||
},
|
||||
{
|
||||
"import": nounsUnisex,
|
||||
"slug": "nouns-unisex"
|
||||
},
|
||||
{
|
||||
"import": nounsPlural,
|
||||
"slug": "nouns-plural"
|
||||
},
|
||||
{
|
||||
"import": specialPlurals,
|
||||
"slug": "special-plurals"
|
||||
},
|
||||
{
|
||||
"import": bundledPlurals,
|
||||
"slug": "bundled-plurals"
|
||||
}
|
||||
]
|
||||
"heading": "Nouns",
|
||||
"subdirectory": "nouns",
|
||||
"chapters": [
|
||||
{
|
||||
"import": nounsGender,
|
||||
"slug": "nouns-gender"
|
||||
},
|
||||
{
|
||||
"import": nounsUnisex,
|
||||
"slug": "nouns-unisex"
|
||||
},
|
||||
{
|
||||
"import": nounsPlural,
|
||||
"slug": "nouns-plural"
|
||||
},
|
||||
{
|
||||
"import": arabicPlurals,
|
||||
"slug": "arabic-plurals"
|
||||
},
|
||||
{
|
||||
"import": bundledPlurals,
|
||||
"slug": "bundled-plurals"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"heading": "Phrase Structure 🧱",
|
||||
"subdirectory": "phrase-structure",
|
||||
"chapters": [
|
||||
{
|
||||
"import": BlocksAndKids,
|
||||
"slug": "blocks-and-kids"
|
||||
},
|
||||
{
|
||||
"import": NPIntro,
|
||||
"slug": "np"
|
||||
},
|
||||
{
|
||||
"import": APIntro,
|
||||
"slug": "ap"
|
||||
},
|
||||
{
|
||||
"import": EPIntro,
|
||||
"slug": "ep"
|
||||
},
|
||||
{
|
||||
"import": VPIntro,
|
||||
"slug": "vp"
|
||||
},
|
||||
{
|
||||
"import": Complement,
|
||||
"slug": "complement"
|
||||
},
|
||||
{
|
||||
"import": ShorteningVPs,
|
||||
"slug": "shortening-vps"
|
||||
}
|
||||
]
|
||||
"heading": "Phrase Structure 🧱",
|
||||
"subdirectory": "phrase-structure",
|
||||
"chapters": [
|
||||
{
|
||||
"import": BlocksAndKids,
|
||||
"slug": "blocks-and-kids"
|
||||
},
|
||||
{
|
||||
"import": NPIntro,
|
||||
"slug": "np"
|
||||
},
|
||||
{
|
||||
"import": APIntro,
|
||||
"slug": "ap"
|
||||
},
|
||||
{
|
||||
"import": EPIntro,
|
||||
"slug": "ep"
|
||||
},
|
||||
{
|
||||
"import": VPIntro,
|
||||
"slug": "vp"
|
||||
},
|
||||
{
|
||||
"import": Complement,
|
||||
"slug": "complement"
|
||||
},
|
||||
{
|
||||
"import": ShorteningVPs,
|
||||
"slug": "shortening-vps"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"heading": "Verbs",
|
||||
"subdirectory": "verbs",
|
||||
"chapters": [
|
||||
{
|
||||
"import": verbsIntro,
|
||||
"slug": "verbs-intro"
|
||||
},
|
||||
{
|
||||
"import": verbAspect,
|
||||
"slug": "verb-aspect"
|
||||
},
|
||||
{
|
||||
"import": rootsAndStems,
|
||||
"slug": "roots-and-stems"
|
||||
},
|
||||
{
|
||||
"import": presentVerbs,
|
||||
"slug": "present-verbs"
|
||||
},
|
||||
{
|
||||
"import": subjunctiveVerbs,
|
||||
"slug": "subjunctive-verbs"
|
||||
},
|
||||
{
|
||||
"import": futureVerbs,
|
||||
"slug": "future-verbs"
|
||||
},
|
||||
{
|
||||
"import": imperativeVerbs,
|
||||
"slug": "imperative-verbs"
|
||||
},
|
||||
{
|
||||
"import": pastVerbs,
|
||||
"slug": "past-verbs"
|
||||
},
|
||||
{
|
||||
"import": perfectVerbsIntro,
|
||||
"slug": "perfect-verbs-intro"
|
||||
},
|
||||
{
|
||||
"import": allPerfectVerbs,
|
||||
"slug": "all-perfect-verbs"
|
||||
},
|
||||
{
|
||||
"import": negativeVerbs,
|
||||
"slug": "negative-verbs"
|
||||
},
|
||||
{
|
||||
"import": ability,
|
||||
"slug": "ability"
|
||||
},
|
||||
{
|
||||
"import": jussive,
|
||||
"slug": "jussive"
|
||||
},
|
||||
{
|
||||
"import": passiveVoice,
|
||||
"slug": "passive-voice"
|
||||
},
|
||||
{
|
||||
"import": verbEndings,
|
||||
"slug": "verb-endings"
|
||||
},
|
||||
{
|
||||
"import": masterChart,
|
||||
"slug": "master-chart"
|
||||
}
|
||||
]
|
||||
"heading": "Verbs",
|
||||
"subdirectory": "verbs",
|
||||
"chapters": [
|
||||
{
|
||||
"import": verbsIntro,
|
||||
"slug": "verbs-intro"
|
||||
},
|
||||
{
|
||||
"import": verbAspect,
|
||||
"slug": "verb-aspect"
|
||||
},
|
||||
{
|
||||
"import": rootsAndStems,
|
||||
"slug": "roots-and-stems"
|
||||
},
|
||||
{
|
||||
"import": presentVerbs,
|
||||
"slug": "present-verbs"
|
||||
},
|
||||
{
|
||||
"import": subjunctiveVerbs,
|
||||
"slug": "subjunctive-verbs"
|
||||
},
|
||||
{
|
||||
"import": futureVerbs,
|
||||
"slug": "future-verbs"
|
||||
},
|
||||
{
|
||||
"import": imperativeVerbs,
|
||||
"slug": "imperative-verbs"
|
||||
},
|
||||
{
|
||||
"import": pastVerbs,
|
||||
"slug": "past-verbs"
|
||||
},
|
||||
{
|
||||
"import": perfectVerbsIntro,
|
||||
"slug": "perfect-verbs-intro"
|
||||
},
|
||||
{
|
||||
"import": allPerfectVerbs,
|
||||
"slug": "all-perfect-verbs"
|
||||
},
|
||||
{
|
||||
"import": negativeVerbs,
|
||||
"slug": "negative-verbs"
|
||||
},
|
||||
{
|
||||
"import": ability,
|
||||
"slug": "ability"
|
||||
},
|
||||
{
|
||||
"import": jussive,
|
||||
"slug": "jussive"
|
||||
},
|
||||
{
|
||||
"import": passiveVoice,
|
||||
"slug": "passive-voice"
|
||||
},
|
||||
{
|
||||
"import": verbEndings,
|
||||
"slug": "verb-endings"
|
||||
},
|
||||
{
|
||||
"import": masterChart,
|
||||
"slug": "master-chart"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"heading": "Compound Verbs",
|
||||
"subdirectory": "compound-verbs",
|
||||
"chapters": [
|
||||
{
|
||||
"import": compoundVerbsIntro,
|
||||
"slug": "intro"
|
||||
},
|
||||
{
|
||||
"import": helperVerbs,
|
||||
"slug": "helper-verbs"
|
||||
},
|
||||
{
|
||||
"import": stativeCompounds,
|
||||
"slug": "stative-compounds"
|
||||
},
|
||||
{
|
||||
"import": dynamicCompounds,
|
||||
"slug": "dynamic-compounds"
|
||||
},
|
||||
{
|
||||
"import": moreOnCompounds,
|
||||
"slug": "more-on-compounds"
|
||||
}
|
||||
]
|
||||
"heading": "Compound Verbs",
|
||||
"subdirectory": "compound-verbs",
|
||||
"chapters": [
|
||||
{
|
||||
"import": compoundVerbsIntro,
|
||||
"slug": "intro"
|
||||
},
|
||||
{
|
||||
"import": helperVerbs,
|
||||
"slug": "helper-verbs"
|
||||
},
|
||||
{
|
||||
"import": stativeCompounds,
|
||||
"slug": "stative-compounds"
|
||||
},
|
||||
{
|
||||
"import": dynamicCompounds,
|
||||
"slug": "dynamic-compounds"
|
||||
},
|
||||
{
|
||||
"import": moreOnCompounds,
|
||||
"slug": "more-on-compounds"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"heading": "Participles",
|
||||
"subdirectory": "participles",
|
||||
"chapters": [
|
||||
{
|
||||
"import": introToParticiples,
|
||||
"slug": "intro"
|
||||
}
|
||||
]
|
||||
"heading": "Participles",
|
||||
"subdirectory": "participles",
|
||||
"chapters": [
|
||||
{
|
||||
"import": introToParticiples,
|
||||
"slug": "intro"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"heading": "Pronouns",
|
||||
"subdirectory": "pronouns",
|
||||
"chapters": [
|
||||
{
|
||||
"import": pronounsBasic,
|
||||
"slug": "pronouns-basic"
|
||||
},
|
||||
{
|
||||
"import": pronounsMini,
|
||||
"slug": "pronouns-mini"
|
||||
},
|
||||
{
|
||||
"import": directionalPronouns,
|
||||
"slug": "pronouns-directional"
|
||||
}
|
||||
]
|
||||
"heading": "Pronouns",
|
||||
"subdirectory": "pronouns",
|
||||
"chapters": [
|
||||
{
|
||||
"import": pronounsBasic,
|
||||
"slug": "pronouns-basic"
|
||||
},
|
||||
{
|
||||
"import": pronounsMini,
|
||||
"slug": "pronouns-mini"
|
||||
},
|
||||
{
|
||||
"import": directionalPronouns,
|
||||
"slug": "pronouns-directional"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"heading": "Inflection 🔘",
|
||||
"subdirectory": "inflection",
|
||||
"chapters": [
|
||||
{
|
||||
"import": inflectionIntro,
|
||||
"slug": "inflection-intro"
|
||||
},
|
||||
{
|
||||
"import": inflectionPatterns,
|
||||
"slug": "inflection-patterns"
|
||||
}
|
||||
]
|
||||
"heading": "Inflection 🔘",
|
||||
"subdirectory": "inflection",
|
||||
"chapters": [
|
||||
{
|
||||
"import": inflectionIntro,
|
||||
"slug": "inflection-intro"
|
||||
},
|
||||
{
|
||||
"import": inflectionPatterns,
|
||||
"slug": "inflection-patterns"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"heading": "Sandwiches 🥪",
|
||||
"subdirectory": "sandwiches",
|
||||
"chapters": [
|
||||
{
|
||||
"import": sandwiches,
|
||||
"slug": "sandwiches"
|
||||
}
|
||||
]
|
||||
"heading": "Sandwiches 🥪",
|
||||
"subdirectory": "sandwiches",
|
||||
"chapters": [
|
||||
{
|
||||
"import": sandwiches,
|
||||
"slug": "sandwiches"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"heading": "Writing 🖊",
|
||||
"subdirectory": "writing",
|
||||
"chapters": [
|
||||
{
|
||||
"import": phonetics,
|
||||
"slug": "phonetics"
|
||||
},
|
||||
{
|
||||
"import": diacritics,
|
||||
"slug": "diacritics"
|
||||
},
|
||||
{
|
||||
"import": theFiveYeys,
|
||||
"slug": "the-five-yeys"
|
||||
},
|
||||
{
|
||||
"import": typingIssues,
|
||||
"slug": "typing-issues"
|
||||
}
|
||||
]
|
||||
"heading": "Writing 🖊",
|
||||
"subdirectory": "writing",
|
||||
"chapters": [
|
||||
{
|
||||
"import": phonetics,
|
||||
"slug": "phonetics"
|
||||
},
|
||||
{
|
||||
"import": diacritics,
|
||||
"slug": "diacritics"
|
||||
},
|
||||
{
|
||||
"import": theFiveYeys,
|
||||
"slug": "the-five-yeys"
|
||||
},
|
||||
{
|
||||
"import": typingIssues,
|
||||
"slug": "typing-issues"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"heading": "Recipes 👩🍳",
|
||||
"subdirectory": "recipes",
|
||||
"chapters": [
|
||||
{
|
||||
"import": unrealConditionals,
|
||||
"slug": "unreal-conditionals"
|
||||
}
|
||||
]
|
||||
"heading": "Recipes 👩🍳",
|
||||
"subdirectory": "recipes",
|
||||
"chapters": [
|
||||
{
|
||||
"import": unrealConditionals,
|
||||
"slug": "unreal-conditionals"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"heading": "Practice Tools 🔧",
|
||||
"subdirectory": "practice-tools",
|
||||
"chapters": [
|
||||
{
|
||||
"import": pronounPicker,
|
||||
"slug": "pronoun-picker"
|
||||
}
|
||||
]
|
||||
"heading": "Practice Tools 🔧",
|
||||
"subdirectory": "practice-tools",
|
||||
"chapters": [
|
||||
{
|
||||
"import": pronounPicker,
|
||||
"slug": "pronoun-picker"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"import": dictionary,
|
||||
"slug": "dictionary"
|
||||
"import": dictionary,
|
||||
"slug": "dictionary"
|
||||
}
|
||||
] /* content-tree */
|
||||
]/* content-tree */;
|
||||
|
||||
export const content = contentTree
|
||||
.map((item) => {
|
||||
export const content = contentTree.map((item) => {
|
||||
function prepareChapter(chp: any, subdir?: any) {
|
||||
return {
|
||||
path: subdir ? `/${subdir}/${chp.slug}/` : `/${chp.slug}/`,
|
||||
"slug": chp.slug,
|
||||
content: chp.import.default,
|
||||
frontMatter: chp.import.frontMatter,
|
||||
tableOfContents: chp.import.tableOfContents,
|
||||
};
|
||||
}
|
||||
return "import" in item
|
||||
? prepareChapter(item)
|
||||
: {
|
||||
...item,
|
||||
"chapters": item.chapters?.map((c) => {
|
||||
return prepareChapter(c, item.subdirectory);
|
||||
}),
|
||||
return {
|
||||
path: subdir ? `/${subdir}/${chp.slug}/` : `/${chp.slug}/`,
|
||||
slug: chp.slug,
|
||||
content: chp.import.default,
|
||||
frontMatter: chp.import.frontMatter,
|
||||
tableOfContents: chp.import.tableOfContents,
|
||||
};
|
||||
})
|
||||
.map((item, i, items) => {
|
||||
}
|
||||
return ("import" in item)
|
||||
? prepareChapter(item)
|
||||
: {
|
||||
...item,
|
||||
chapters: item.chapters?.map((c) => {
|
||||
return prepareChapter(c, item.subdirectory);
|
||||
}),
|
||||
};
|
||||
}).map((item, i, items) => {
|
||||
// make the next and previous page information for each chapter
|
||||
function withNextPrev(current: any, index: any, arr: any) {
|
||||
function getInfo(x: any) {
|
||||
return x.content
|
||||
? { frontMatter: x.frontMatter, path: x.path }
|
||||
: {
|
||||
frontMatter: x.chapters[0].frontMatter,
|
||||
path: x.chapters[0].path,
|
||||
}; // TODO: KILL THIS?
|
||||
}
|
||||
function getNextOutsideItem() {
|
||||
// @ts-ignore
|
||||
return items[i + 1].content
|
||||
? // if it's a single chapter section, get that chapter
|
||||
items[i + 1]
|
||||
: // if it's a section with multiple chapters, get the first chapter
|
||||
function getInfo(x: any) {
|
||||
return x.content
|
||||
? { frontMatter: x.frontMatter, path: x.path }
|
||||
: { frontMatter: x.chapters[0].frontMatter, path: x.chapters[0].path }; // TODO: KILL THIS?
|
||||
}
|
||||
function getNextOutsideItem() {
|
||||
// @ts-ignore
|
||||
items[i + 1].chapters[0];
|
||||
}
|
||||
function getPrevOutsideItem() {
|
||||
// @ts-ignore
|
||||
return items[i - 1].content
|
||||
? // if it's a single chapter section, get that chapter
|
||||
items[i - 1]
|
||||
: // if it's a section with multiple chapters, get the last chapter
|
||||
return items[i+1].content
|
||||
// if it's a single chapter section, get that chapter
|
||||
? items[i+1]
|
||||
// if it's a section with multiple chapters, get the first chapter
|
||||
// @ts-ignore
|
||||
: items[i+1].chapters[0];
|
||||
}
|
||||
function getPrevOutsideItem() {
|
||||
// @ts-ignore
|
||||
items[i - 1].chapters[items[i - 1].chapters.length - 1];
|
||||
}
|
||||
const next =
|
||||
index < arr.length - 1
|
||||
? // if there's another chapter in this section, that's the next one
|
||||
arr[index + 1]
|
||||
: // no? maybe there's another chapter or section in front of us
|
||||
i < items.length - 1
|
||||
? getNextOutsideItem()
|
||||
: false;
|
||||
const prev =
|
||||
index !== 0
|
||||
? // if there's another chapter in this section, that's the previous one
|
||||
arr[index - 1]
|
||||
: // no? maybe we there's a chapter or section behind us
|
||||
i !== 0
|
||||
? getPrevOutsideItem()
|
||||
: false;
|
||||
return {
|
||||
...current,
|
||||
...(prev
|
||||
? {
|
||||
prev: getInfo(prev),
|
||||
}
|
||||
: {}),
|
||||
...(next
|
||||
? {
|
||||
next: getInfo(next),
|
||||
}
|
||||
: {}),
|
||||
};
|
||||
return items[i-1].content
|
||||
// if it's a single chapter section, get that chapter
|
||||
? items[i-1]
|
||||
// if it's a section with multiple chapters, get the last chapter
|
||||
// @ts-ignore
|
||||
: items[i-1].chapters[items[i-1].chapters.length - 1];
|
||||
}
|
||||
const next = index < arr.length - 1
|
||||
// if there's another chapter in this section, that's the next one
|
||||
? arr[index+1]
|
||||
// no? maybe there's another chapter or section in front of us
|
||||
: (i < items.length - 1)
|
||||
? getNextOutsideItem()
|
||||
: false;
|
||||
const prev = index !== 0
|
||||
// if there's another chapter in this section, that's the previous one
|
||||
? arr[index-1]
|
||||
// no? maybe we there's a chapter or section behind us
|
||||
: (i !== 0)
|
||||
? getPrevOutsideItem()
|
||||
: false;
|
||||
return {
|
||||
...current,
|
||||
...prev ? {
|
||||
prev: getInfo(prev),
|
||||
} : {},
|
||||
...next ? {
|
||||
next: getInfo(next),
|
||||
} : {},
|
||||
};
|
||||
}
|
||||
// @ts-ignore
|
||||
if (item.content) {
|
||||
return withNextPrev(item, i, items);
|
||||
return withNextPrev(item, i, items);
|
||||
}
|
||||
return {
|
||||
...item,
|
||||
// @ts-ignore
|
||||
"chapters": item.chapters.map((chapter, j, chapters) =>
|
||||
withNextPrev(chapter, j, chapters)
|
||||
),
|
||||
};
|
||||
});
|
||||
...item,
|
||||
// @ts-ignore
|
||||
chapters: item.chapters.map((chapter, j, chapters) => (
|
||||
withNextPrev(chapter, j, chapters)
|
||||
)),
|
||||
}
|
||||
});
|
||||
|
||||
|
|
|
@ -1,43 +0,0 @@
|
|||
import Table from "../../components/Table";
|
||||
import { defaultTextOptions as opts } from "@lingdocs/ps-react";
|
||||
|
||||
function PluralTable({
|
||||
children,
|
||||
inflection,
|
||||
}: {
|
||||
children: any;
|
||||
inflection: boolean;
|
||||
}) {
|
||||
return (
|
||||
<Table
|
||||
wide={false}
|
||||
headRow={[
|
||||
...[
|
||||
<div>
|
||||
<div>singular</div>
|
||||
{inflection && <div className="small text-muted">plain</div>}
|
||||
</div>,
|
||||
<div>
|
||||
<div>plural</div>
|
||||
{inflection && <div className="small text-muted">inflected</div>}
|
||||
</div>,
|
||||
],
|
||||
...(children[0].length === 3
|
||||
? [
|
||||
<div>
|
||||
<div>plural and inflected</div>
|
||||
{inflection && (
|
||||
<div className="small text-muted">double inflected</div>
|
||||
)}
|
||||
</div>,
|
||||
]
|
||||
: []),
|
||||
]}
|
||||
opts={opts}
|
||||
>
|
||||
{children}
|
||||
</Table>
|
||||
);
|
||||
}
|
||||
|
||||
export default PluralTable;
|
|
@ -1,15 +1,9 @@
|
|||
---
|
||||
title: Special Plural Nouns
|
||||
title: Arabic Plural Nouns
|
||||
---
|
||||
|
||||
import {
|
||||
InlinePs,
|
||||
defaultTextOptions as opts,
|
||||
Examples,
|
||||
} from "@lingdocs/ps-react";
|
||||
import { InlinePs, defaultTextOptions as opts } from "@lingdocs/ps-react";
|
||||
import Table from "../../components/Table";
|
||||
import PluralTable from "./PluralTable";
|
||||
import Link from "../../components/Link";
|
||||
|
||||
export function ArabicPluralTable({ children }) {
|
||||
return (
|
||||
|
@ -29,71 +23,6 @@ export function ArabicPluralTable({ children }) {
|
|||
);
|
||||
}
|
||||
|
||||
## Irregular Plural Nouns
|
||||
|
||||
Some nouns just have completely irregular plural forms.
|
||||
|
||||
<PluralTable>
|
||||
{[
|
||||
[
|
||||
{ p: "خور", f: "khor", e: "sister" },
|
||||
{ p: "خویندې", f: "khwaynde", e: "sisters" },
|
||||
],
|
||||
[
|
||||
{ p: "ورور", f: "wror", e: "brother" },
|
||||
{ p: "وروڼه", f: "wróoNa", e: "brothers" },
|
||||
],
|
||||
[
|
||||
{ p: "نجلۍ", f: "njuluy", e: "girl" },
|
||||
{ p: "نجونې", f: "njóone", e: "girls" },
|
||||
],
|
||||
[
|
||||
{ p: "مور", f: "mor", e: "mother" },
|
||||
{ p: "میندې", f: "maynde", e: "mothers" },
|
||||
],
|
||||
[
|
||||
{ p: "زوی", f: "zooy", e: "son" },
|
||||
{ p: "زامن", f: "zaamun", e: "sons" },
|
||||
],
|
||||
[
|
||||
{ p: "ترور", f: "tror", e: "aunt" },
|
||||
{ p: "تریندې", f: "traynde", e: "aunts" },
|
||||
],
|
||||
[
|
||||
{ p: "لور", f: "loor", e: "daughter" },
|
||||
{ p: "لوڼې", f: "looNe", e: "daughters" },
|
||||
],
|
||||
[
|
||||
{ p: "یور", f: "yor", e: "wife of a husbands' brother" },
|
||||
{ p: "یوڼې", f: "yooNe", e: "wives of a husband's brother" },
|
||||
],
|
||||
[
|
||||
{ p: "نږور", f: "nGor", e: "daughter-in-law" },
|
||||
{ p: "نږیندې", f: "nGaynde", e: "daughter-in-laws" },
|
||||
],
|
||||
]}
|
||||
</PluralTable>
|
||||
|
||||
## Collective Plurals
|
||||
|
||||
Some nouns are just always considered plural, often because they are made up of a bunch of individual pieces.
|
||||
|
||||
<Examples opts={opts}>
|
||||
{[
|
||||
{ p: "خلک", f: "khalk", e: "people/populace (m. pl.)" },
|
||||
{ p: "اوړه", f: "ooRú", e: "flour (m. pl.)" },
|
||||
{ p: "برنج", f: "birínj", e: "rice (m. pl.)" },
|
||||
{ p: "اوبه", f: "oobú", e: "water (f. pl.)" },
|
||||
{ p: "جوار", f: "jawáar", e: "corn (m. pl.)" },
|
||||
{ p: "زهر", f: "zahur", e: "poison (m. pl.)" },
|
||||
{ p: "دروغ", f: "darógh", e: "lie, falsehood (m. pl.) " },
|
||||
{ p: "پیاز", f: "piyáaz", e: "onion (m. pl.)" },
|
||||
{ p: "سامان", f: "saamáan", e: "stuff, things (m. pl.)" },
|
||||
]}
|
||||
</Examples>
|
||||
|
||||
## Arabic Plurals
|
||||
|
||||
Pashto has many Arabic loan words, and people often **use the Arabic plural forms of these loan words**. We won't get into how plurals work in Arabic here, but you will learn to recognize and use these plural through lots of exposure.
|
||||
|
||||
For now, see if you can notice some of the basic patterns.
|
||||
|
@ -167,6 +96,8 @@ And some add an <InlinePs opts={opts} ps={{ p: "ین", f: "éen" }} /> on the en
|
|||
]}
|
||||
</ArabicPluralTable>
|
||||
|
||||
## Notes
|
||||
|
||||
### Arabic Plurals are Always Masculine
|
||||
|
||||
Once a word is put into it's special Arabic plural form, it's always a _masculine plural_ (based on the consonant ending) even if the singular version of the word was feminine.
|
||||
|
@ -257,38 +188,3 @@ For many words, people may either use the regular Pashto plural endings or the s
|
|||
],
|
||||
]}
|
||||
</Table>
|
||||
|
||||
## Masculine nouns with feminine plurals
|
||||
|
||||
Above we learned that **masculine nouns** that fit into the <Link to="/nouns/nouns-unisex/#1-basic">#1 basic pattern</Link>, we add the <InlinePs opts={opts} ps={{ p: "ونه", f: "óona" }} /> ending to make it plural. But there is also another interesting thing that happens in Pashto:
|
||||
|
||||
**Masculine nouns ending in a consonant can become feminine for the plural form**. Often you will hear both forms of the plural, the regular masculine form with <InlinePs opts={opts} ps={{ p: "ونه", f: "óona" }} /> and the feminine form as well.
|
||||
|
||||
<PluralTable>
|
||||
{[
|
||||
[
|
||||
{ p: "ډز", f: "Duz", e: "gunshot", sub: "(n. m.)" },
|
||||
{ p: "ډزې", f: "Dúze", e: "gunshots", sub: "(f. pl.)" },
|
||||
],
|
||||
[
|
||||
{ p: "", f: "", e: "" },
|
||||
{ p: "ډزونه", f: "Duzóona", e: "gunshots", sub: "(m. pl.)" },
|
||||
],
|
||||
[
|
||||
{ p: "ځل", f: "dzal", e: "time", sub: "(n. m.)" },
|
||||
{ p: "ځلې", f: "dzále", e: "times", sub: "(f. pl.)" },
|
||||
],
|
||||
[
|
||||
{ p: "", f: "", e: "" },
|
||||
{ p: "ځلونه", f: "dzalóona", e: "times", sub: "(m. pl.)" },
|
||||
],
|
||||
[
|
||||
{ p: "چرک", f: "chakár", e: "stroll", sub: "(n. m.)" },
|
||||
{ p: "چکرې", f: "chakáre", e: "strolls", sub: "(n. f.)" },
|
||||
],
|
||||
[
|
||||
{ p: "", f: "", e: "" },
|
||||
{ p: "چکرونه", f: "chakaróona", e: "strolls", sub: "(m. pl.)" },
|
||||
],
|
||||
]}
|
||||
</PluralTable>
|
File diff suppressed because one or more lines are too long
Before Width: | Height: | Size: 37 KiB |
File diff suppressed because one or more lines are too long
Before Width: | Height: | Size: 45 KiB |
|
@ -7,137 +7,118 @@ import {
|
|||
InlinePs,
|
||||
defaultTextOptions as opts,
|
||||
} from "@lingdocs/ps-react";
|
||||
import Table from "../../components/Table";
|
||||
import Link from "../../components/Link";
|
||||
import mascEndingChart from "./masc-plural-ending-decision-chart.excalidraw.svg";
|
||||
import femEndingChart from "./fem-plural-ending-decision-chart.excalidraw.svg";
|
||||
import PluralTable from "./PluralTable";
|
||||
import VideoPlayer from "../../components/VideoPlayer";
|
||||
|
||||
export const Pattern1 = () => <Link to="/nouns/nouns-unisex/#1-basic">Pattern #1</Link>;
|
||||
export const Pattern2 = () => <Link to="/inflection/inflection-patterns/#2-words-ending-in-an-unstressed-%DB%8C---ay">Pattern #2</Link>;
|
||||
export const Pattern3 = () => <Link to="/inflection/inflection-patterns/#3-words-ending-in-a-stressed-inlineps-optsopts-ps-p-ی-f-áy--">Pattern #3</Link>
|
||||
export const Pattern4 = () => <Link to="/inflection/inflection-patterns/#4-words-with-the-pashtoon-pattern">Pattern #4</Link>
|
||||
export const Pattern5 = () => <Link to="/inflection/inflection-patterns/#5-shorter-words-that-squish">pattern #5</Link>;
|
||||
|
||||
|
||||
<VideoPlayer src="https://www.youtube.com/watch?v=4ExCIcMoeTc" />
|
||||
export function PluralTable({ children, inflection }) {
|
||||
return (
|
||||
<Table
|
||||
headRow={[
|
||||
<div>
|
||||
<div>singular</div>
|
||||
{inflection && <div className="small text-muted">plain</div>}
|
||||
</div>,
|
||||
<div>
|
||||
<div>plural</div>
|
||||
{inflection && <div className="small text-muted">inflected</div>}
|
||||
</div>,
|
||||
]}
|
||||
opts={opts}
|
||||
>
|
||||
{children}
|
||||
</Table>
|
||||
);
|
||||
}
|
||||
|
||||
In Pashto **there are many, many ways that nouns become plural**. It may seem overwhelming at first to learn _all_ these different ways of nouns becoming plural. In the beginning, just look at a few. Then keep coming back and see if you're getting familiar with all the different ways that nouns become plural.
|
||||
|
||||
Basically, to make a noun plural you have the following options:
|
||||
|
||||
1. If possible, <Link to="/inflection/inflection-intro">inflect</Link> it.
|
||||
2. Add a <Link to="/nouns/nouns-plural/#plural-endings">plural ending</Link>, or
|
||||
1. <Link to="/inflection/inflection-intro">Inflect</Link> it.
|
||||
2. If the word isn't inflectable you add a <Link to="/nouns/nouns-plural/#plural-endings">plural ending</Link>, or
|
||||
3. If the word has an <Link to="/nouns/nouns-plural/#irregular-plurals">irregular plural</Link> use that.
|
||||
|
||||
## Plural by Inflection
|
||||
|
||||
To understand how to inflect words, have a look at the <Link to="/inflection/inflection-patterns/">5 and a half inflection patterns</Link>. Here are some examples of nouns made plural using inflection.
|
||||
To understand how to inflect words, have a look at the <Link to="/inflection/inflection-patterns/">5 inflection patterns</Link>. Here are some examples of words made plural using inflection.
|
||||
|
||||
If a word is plural and also needs to be inflected for some other reason, we use the second or "double inflection" ending in <InlinePs opts={opts} ps={{ p: "ـو", f: "o" }} />. For more info about this "double inflection," see the <Link to="/inflection/inflection-intro">inflection</Link> section.
|
||||
|
||||
### Inflecting masculine nouns
|
||||
### With masculine nouns
|
||||
|
||||
<PluralTable inflection>
|
||||
{[
|
||||
[
|
||||
{
|
||||
p: "ښوونکی",
|
||||
f: "xUwóonkay",
|
||||
e: "teacher",
|
||||
sub: <Pattern2 />,
|
||||
},
|
||||
{ p: "ښوونکي", f: "xUwóonkee", e: "teachers" },
|
||||
// { p: "ښوونکیو", f: "xUwóonkiyo", e: "teachers" },
|
||||
],
|
||||
[
|
||||
{
|
||||
p: "سړی",
|
||||
f: "saRáy",
|
||||
e: "man",
|
||||
sub: <Pattern3 />,
|
||||
sub: (
|
||||
<Link to="/inflection/inflection-patterns/#3-words-ending-in-a-stressed-inlineps-optsopts-ps-p-ی-f-áy--">
|
||||
pattern #3
|
||||
</Link>
|
||||
),
|
||||
},
|
||||
{ p: "سړي", f: "saRée", e: "men" },
|
||||
// { p: "سړیو", f: "saRúyo", e: "men" },
|
||||
],
|
||||
[
|
||||
{
|
||||
p: "سپی",
|
||||
f: "spay",
|
||||
e: "dog",
|
||||
sub: (
|
||||
<Link to="/inflection/inflection-patterns/#3-words-ending-in-a-stressed-inlineps-optsopts-ps-p-ی-f-áy--">
|
||||
pattern #3
|
||||
</Link>
|
||||
),
|
||||
},
|
||||
{ p: "سپي", f: "spee", e: "dog" },
|
||||
],
|
||||
[
|
||||
{
|
||||
p: "پښتون",
|
||||
f: "puxtóon",
|
||||
e: "a Pashtun",
|
||||
sub: <Pattern4 />,
|
||||
e: "Pashtun",
|
||||
sub: (
|
||||
<Link to="/inflection/inflection-patterns/#4-words-with-the-pashtoon-pattern">
|
||||
pattern #4
|
||||
</Link>
|
||||
),
|
||||
},
|
||||
{ p: "پښتانه", f: "puxtaanu", e: "Pashtuns" },
|
||||
// { p: "پښتنو", f: "puxtanó", e: "Pashtuns"}
|
||||
],
|
||||
[
|
||||
{
|
||||
p: "غل",
|
||||
f: "ghul",
|
||||
e: "thief",
|
||||
sub: <Pattern5 />,
|
||||
},
|
||||
{ p: "غل", f: "ghul", e: "thief", sub: <Link to="">pattern #5</Link> },
|
||||
{ p: "غله", f: "ghlu", e: "thieves" },
|
||||
// { p: "غلو", f: "ghlo", e: "thieves" },
|
||||
],
|
||||
]}
|
||||
</PluralTable>
|
||||
|
||||
Notice that <Pattern1 /> masculine nouns don't change for the first inflection, so to make these plural we will use the <Link to="/nouns/nouns-plural/#plural-endings">plural endings</Link> below.
|
||||
|
||||
### Inflecting feminine nouns
|
||||
### With feminine nouns
|
||||
|
||||
<PluralTable inflection>
|
||||
{[
|
||||
[
|
||||
{
|
||||
p: "ښڅه",
|
||||
f: "xúdza",
|
||||
f: "xudza",
|
||||
e: "woman",
|
||||
sub: <Pattern1 />,
|
||||
sub: (
|
||||
<Link to="/inflection/inflection-patterns/#1-basic">pattern #1</Link>
|
||||
),
|
||||
},
|
||||
{ p: "ښځې", f: "xúdze", e: "women" },
|
||||
// { p: "ښځو", f: "xúdzo", e: "women" },
|
||||
],
|
||||
[
|
||||
{
|
||||
p: "ښوونکې",
|
||||
f: "xUwóonke",
|
||||
e: "teacher (f.)",
|
||||
sub: <Pattern2 />,
|
||||
},
|
||||
{ p: "ښوونکې", f: "xUwóonke", e: "teachers (f.)" },
|
||||
// { p: "ښوونکیو", f: "xUwóonkiyo", e: "teachers (f.)" },
|
||||
],
|
||||
[
|
||||
{
|
||||
p: "ګاونډۍ",
|
||||
f: "gaawanDúy",
|
||||
e: "neighbor (f.)",
|
||||
sub: <Pattern3 />
|
||||
},
|
||||
{ p: "ګاونډۍ", f: "gaawanDúy", e: "neighbors (f.)" },
|
||||
// { p: "ګاونډیو", f: "gaawanDúyo", e: "neighbors (f.)" },
|
||||
{ p: "ښځې", f: "xudze", e: "women" },
|
||||
],
|
||||
[
|
||||
{
|
||||
p: "پښتنه",
|
||||
f: "puxtaná",
|
||||
e: "a Pashtun (f.)",
|
||||
sub: <Pattern4 />,
|
||||
f: "puxtana",
|
||||
e: "Pashtun (f.)",
|
||||
sub: (
|
||||
<Link to="/inflection/inflection-patterns/#5-shorter-words-that-squish">
|
||||
pattern #5
|
||||
</Link>
|
||||
),
|
||||
},
|
||||
{ p: "پښتنې", f: "puxtané", e: "Pashtuns (f.)" },
|
||||
// { p: "پښتنو", f: "puxtanó", e: "Pashtuns (f.)" },
|
||||
],
|
||||
[
|
||||
{
|
||||
p: "غله",
|
||||
f: "ghla",
|
||||
e: "thief (f.)",
|
||||
sub: <Pattern5 />,
|
||||
},
|
||||
{ p: "غلې", f: "ghle", e: "thieves (f.)" },
|
||||
// { p: "غلو", f: "ghlo", e: "thieves (f.)" },
|
||||
{ p: "پښتنې", f: "puxtane", e: "Pashtuns (f.)" },
|
||||
],
|
||||
[
|
||||
{
|
||||
|
@ -146,17 +127,16 @@ Notice that <Pattern1 /> masculine nouns don't change for the first inflection,
|
|||
e: "difficulty",
|
||||
sub: (
|
||||
<Link to="inflection/feminine-inflection/#feminine-nouns-ending-in-inlineps-optsopts-ps-p-ي-f-ee--">
|
||||
inan. fem. ending in <InlinePs opts={opts}>{{ p: "ي", f: "ee" }}</InlinePs>
|
||||
ending in <InlinePs opts={opts}>{{ p: "ي", f: "ee" }}</InlinePs>
|
||||
</Link>
|
||||
),
|
||||
},
|
||||
{ p: "سختۍ", f: "sakhtúy", e: "difficulties" },
|
||||
// { p: "سختیو", f: "sakhtúyo", e: "difficulties" },
|
||||
],
|
||||
]}
|
||||
</PluralTable>
|
||||
|
||||
Note that in the second and thrid patterns, feminine nouns the word does not change at all in the first inflection. In these cases the singular and plural are just the same. As we'll see below, in some cases we can express the plural using plural endings.
|
||||
Note that in some forms of inflection with feminine nouns the word does not change at all in the first inflection. In these cases the singular and plural are just the same.
|
||||
|
||||
<PluralTable inflection>
|
||||
{[
|
||||
|
@ -165,7 +145,11 @@ Note that in the second and thrid patterns, feminine nouns the word does not cha
|
|||
p: "ملګرې",
|
||||
f: "malgúre",
|
||||
e: "friend (f.)",
|
||||
sub: <Pattern2 />,
|
||||
sub: (
|
||||
<Link to="/inflection/inflection-patterns/#2-words-ending-in-an-unstressed-inlineps-optsopts-ps-p-ی-f-ay--">
|
||||
pattern #2
|
||||
</Link>
|
||||
),
|
||||
},
|
||||
{ p: "ملګرې", f: "malgúre", e: "friends (f.)" },
|
||||
],
|
||||
|
@ -174,7 +158,11 @@ Note that in the second and thrid patterns, feminine nouns the word does not cha
|
|||
p: "کړکۍ",
|
||||
f: "kuRkúy",
|
||||
e: "window",
|
||||
sub: <Pattern3 />,
|
||||
sub: (
|
||||
<Link to="/inflection/feminine-inflection/#feminine-nouns-ending-in-inlineps-optsopts-ps-p-ۍ-f-uy--">
|
||||
ending in <InlinePs opts={opts}>{{ p: "ۍ", f: "uy" }}</InlinePs>
|
||||
</Link>
|
||||
),
|
||||
},
|
||||
{ p: "کړکۍ", f: "kuRkúy", e: "windows" },
|
||||
],
|
||||
|
@ -183,15 +171,11 @@ Note that in the second and thrid patterns, feminine nouns the word does not cha
|
|||
|
||||
## Plural Endings
|
||||
|
||||
Pashto also has plural endings that you can add on the end of nouns to make them plural. Many words don't fit into the <Link to="/inflection/inflection-patterns/">5 and a half inflection patterns</Link>, and so we need to use these plural endings. In some cases, even if a word inflects, people will often use a plural ending instead.
|
||||
|
||||
### Masculine Plural Endings
|
||||
|
||||
#### Plural Ending ونه - óona
|
||||
#### Inanimate Plural Ending ونه - óona
|
||||
|
||||
This only works with **masculine nouns** that fit into <Pattern1 />. In other words, this only works with masculine nouns that end in a consonant or a shwa sound <InlinePs opts={opts} ps={{ p: "ـه", f: "u" }} />.
|
||||
|
||||
This ending is _usually_ used with **inanimate** things (non-living things, ie. not with people or animals).
|
||||
This only works with **masculine nouns** that fit into the <Link to="/nouns/nouns-unisex/#1-basic">basic pattern</Link>. It's _usually_ only used with inanimate things (not with people or animals). But there are exceptions...
|
||||
|
||||
<PluralTable>
|
||||
{[
|
||||
|
@ -203,30 +187,16 @@ This ending is _usually_ used with **inanimate** things (non-living things, ie.
|
|||
{ p: "څیز", f: "tseez", e: "thing" },
|
||||
{ p: "څیزونه", f: "tseezóona", e: "things" },
|
||||
],
|
||||
[
|
||||
{ p: "لاس", f: "laas", e: "hand" },
|
||||
{ p: "لاسونه", f: "laasóona", e: "hands" },
|
||||
],
|
||||
[
|
||||
{ p: "کتاب", f: "kitáab", e: "book" },
|
||||
{ p: "کتابونه", f: "kitaabóona", e: "books" },
|
||||
],
|
||||
[
|
||||
{ p: "واده", f: "waadú", e: "wedding" },
|
||||
{
|
||||
p: "وادونه", f: "waadóona", e: "weddings",
|
||||
},
|
||||
]
|
||||
]}
|
||||
</PluralTable>
|
||||
|
||||
#### Plural Ending ان - áan
|
||||
#### Animate Plural Ending ان - áan
|
||||
|
||||
##### With Pattern #1 Animate Nouns
|
||||
|
||||
This ending is also used with <Pattern1 /> nouns.
|
||||
|
||||
This is _usually_ only used with animate nouns (people or animals).
|
||||
This is _usually_ only used with animate things (people or animals), but there are exceptions...
|
||||
|
||||
<PluralTable>
|
||||
{[
|
||||
|
@ -239,226 +209,28 @@ This is _usually_ only used with animate nouns (people or animals).
|
|||
{ p: "ماران", f: "maaráan", e: "snakes" },
|
||||
],
|
||||
[
|
||||
{ p: "ډاکټر", f: "DakTár", e: "doctor" },
|
||||
{ p: "ډاکټران", f: "DakTaráan", e: "doctor" },
|
||||
],
|
||||
[
|
||||
{ p: "لېوه", f: "lewú", e: "wolf" },
|
||||
{ p: "لېوان", f: "lewáan", e: "wolves" },
|
||||
{ p: "ماما", f: "maamáa", e: "uncle" },
|
||||
{ p: "ماماګان", f: "maamaagáan", e: "uncles" },
|
||||
],
|
||||
]}
|
||||
</PluralTable>
|
||||
|
||||
##### With Pattern #3 Animate Nouns
|
||||
**Note**: If the word ends with a non-shwa vowel, (ie. not 'u') a <InlinePs opts={opts} ps={{ p: "ګ", f: "g" }} /> can be added to seperate the ending and the vowel.
|
||||
|
||||
This ending is also used with <Pattern3 /> animate nouns, nouns people or animals that end in a stressed <InlinePs opts={opts} ps={{ p: "ی", f: "áy" }} />.
|
||||
|
||||
In this case, the <InlinePs opts={opts} ps={{ p: "ی", f: "áy" }} /> gets squished into a little filler <InlinePs opts={opts} ps={{ p: "ی", f: "iy" }} /> sound before the ending.
|
||||
**Note:** Sometimes the <InlinePs opts={opts} ps={{ p: "ونه", f: "óona" }} /> ending is used with animate nouns, and somethimes the <InlinePs opts={opts} ps={{ p: "ان", f: "áan" }} /> ending is used with inanimate nouns as well. For example:
|
||||
|
||||
<PluralTable>
|
||||
{[
|
||||
[
|
||||
{ p: "زمری", f: "zmaráy", e: "lion" },
|
||||
{ p: "زمریان", f: "zmariyáan", e: "lions" },
|
||||
],
|
||||
[
|
||||
{ p: "بچی", f: "bacháy", e: "child" },
|
||||
{ p: "بچیان", f: "bachiyáan", e: "children" },
|
||||
],
|
||||
[
|
||||
{ p: "زلمی", f: "zalmáy", e: "young lad" },
|
||||
{ p: "زلمیان", f: "zalmiyáan", e: "young lads" },
|
||||
],
|
||||
[
|
||||
{ p: "پاکستانی", f: "paakistaanáy", e: "a Pakistani (man)"},
|
||||
{ p: "پاکستانیان", f: "paakistaaniyáan", e: "Pakistanis"},
|
||||
{ p: "شی", f: "shay", e: "thing" },
|
||||
{ p: "شیان", f: "shayáan", e: "things" },
|
||||
],
|
||||
]}
|
||||
</PluralTable>
|
||||
|
||||
Note that with these kinds of animate nouns we have a choice to either use the plural <InlinePs opts={opts} ps={{ p: "ان", f: "áan" }} /> ending, or to just use the inflected form for plural.
|
||||
|
||||
<PluralTable>
|
||||
{[
|
||||
[
|
||||
{ p: "زمری", f: "zmaráy", e: "lion" },
|
||||
{ p: "زمریان", f: "zmariyáan", e: "lions", sub: "w/ plural ending" },
|
||||
],
|
||||
[
|
||||
{ p: "", f: "", e: "" },
|
||||
{ p: "زمري", f: "zmarée", e: "lions", sub: "inflected"}
|
||||
],
|
||||
[
|
||||
{ p: "سپی", f: "spáy", e: "dog" },
|
||||
{ p: "سپیان", f: "spiyáan", e: "dogs", sub: "w/ plural ending"}
|
||||
],
|
||||
[
|
||||
{ p: "", f: "", e: "" },
|
||||
{ p: "سپي", f: "spée", e: "dogs", sub: "inflected"}
|
||||
],
|
||||
[
|
||||
{ p: "بچی", f: "bacháy", e: "child" },
|
||||
{ p: "بچیان", f: "bachiyáan", e: "children" },
|
||||
],
|
||||
[
|
||||
{ p: "", f: "", e: "" },
|
||||
{ p: "بچي", f: "bachée", e: "children" },
|
||||
],
|
||||
]}
|
||||
</PluralTable>
|
||||
|
||||
##### With Nouns Ending in a Long Vowel
|
||||
|
||||
If a noun ends ends in a long vowel, the <InlinePs opts={opts} ps={{ p: "ان", f: "áan" }} /> ending is used regardless of if it's animate or inanimate.
|
||||
|
||||
If the long vowel is an <InlinePs opts={opts} ps={{ p: "ا", f: "aa" }} /> or <InlinePs opts={opts} ps={{ p: "و", f: "o" }} />, a <InlinePs opts={opts} ps={{ p: "ګ", f: "g" }} /> as a spacer between the ending and the vowel.
|
||||
|
||||
<PluralTable>
|
||||
{[
|
||||
[
|
||||
{ p: "ماما", f: "maamáa", e: "maternal uncle" },
|
||||
{ p: "ماماګان", f: "maamaagáan", e: "maternal uncles" },
|
||||
],
|
||||
[
|
||||
{ p: "باڼو", f: "baaNoo", e: "eyelash" },
|
||||
{ p: "باڼوګان", f: "baaNoogáan", e: "eyelashes"}
|
||||
],
|
||||
[
|
||||
{ p: "کاکا", f: "kaakaa", e: "paternal uncle" },
|
||||
{ p: "کاکاګان", f: "kaakaagáan", e: "paternal uncles" },
|
||||
],
|
||||
]}
|
||||
</PluralTable>
|
||||
|
||||
If long vowel is a <InlinePs opts={opts} ps={{ p: "ي", f: "ee" }} />, then the ending turns into <InlinePs opts={opts} ps={{ p: "یان", f: "iyáan" }} /> as it did with the <Link to="nouns/nouns-plural/#with-pattern-3-animate-nouns">pattern #3 animate nouns</Link> above.
|
||||
|
||||
<PluralTable>
|
||||
{[
|
||||
[
|
||||
{ p: "قاضي", f: "qaazée", e: "judge" },
|
||||
{ p: "قاضیان", f: "qaaziyáan", e: "judges" },
|
||||
],
|
||||
[
|
||||
{ p: "درزي", f: "darzée", e: "tailor" },
|
||||
{
|
||||
p: "دریان", f: "darziyáan", e: "tailors",
|
||||
},
|
||||
],
|
||||
[
|
||||
{ p: "یاغي", f: "yaaghée", e: "rebel" },
|
||||
{
|
||||
p: "یاغیان", f: "yaaghiyáan", e: "rebels",
|
||||
}
|
||||
],
|
||||
]}
|
||||
</PluralTable>
|
||||
|
||||
#### Decision chart for adding plural endings to masculine nouns
|
||||
|
||||
<div className="text-center">
|
||||
<img
|
||||
className="img-fluid mb-4 mt-2"
|
||||
src={mascEndingChart}
|
||||
alt="decision chart for adding plural endings to masculine nouns in Pashto"
|
||||
style={{ margin: "0 auto" }}
|
||||
/>
|
||||
</div>
|
||||
|
||||
### Feminine Plural Endings
|
||||
|
||||
#### Plural Ending انې - áane
|
||||
|
||||
##### With Pattern #1 Animate Nouns
|
||||
|
||||
Just like with masculine #1 animate nouns, we can also add a <InlinePs opts={opts} ps={{ p: "انې", f: "áane" }} /> ending to feminine <Pattern1 /> nouns. Notice that this is the same as the <InlinePs opts={opts} ps={{ p: "ان", f: "áan" }} /> ending, but with an added <InlinePs opts={opts} ps={{ p: "ې", f: "e" }} /> on the end to signify femininity.
|
||||
|
||||
<PluralTable>
|
||||
{[
|
||||
[
|
||||
{ p: "ډاکټره", f: "DakTára", e: "doctor (f.)" },
|
||||
{ p: "ډاکټرانې", f: "DakTaráane", e: "doctors (f.)" },
|
||||
],
|
||||
[
|
||||
{ p: "چرګه", f: "chárga", e: "hen (f.)" },
|
||||
{ p: "چرګان", f: "chargáan", e: "hens (f.)" },
|
||||
],
|
||||
[
|
||||
{ p: "نرسه", f: "núrsa", e: "nurse (f.)" },
|
||||
{ p: "نرسانې", f: "nursáane", e: "nurses (f.)" },
|
||||
]
|
||||
]}
|
||||
</PluralTable>
|
||||
|
||||
Notice that with these types of nouns we have the option of either using these plural endings or just inflecting them.
|
||||
|
||||
<PluralTable>
|
||||
{[
|
||||
[
|
||||
{ p: "ډاکټره", f: "DakTára", e: "doctor (f.)" },
|
||||
{ p: "ډاکټرانې", f: "DakTaráane", e: "doctors (f.)", sub: "w/ plural ending" },
|
||||
],
|
||||
[
|
||||
{ p: "", f: "", e: "" },
|
||||
{ p: "ډاکټرې", f: "DakTáre", e: "doctors (f.)", sub: "inflected" },
|
||||
],
|
||||
[
|
||||
{ p: "چرګه", f: "chárga", e: "hen (f.)" },
|
||||
{ p: "چرګان", f: "chargáan", e: "hens (f.)", sub: "w/ plural ending" },
|
||||
],
|
||||
[
|
||||
{ p: "", f: "", e: "" },
|
||||
{ p: "چرګې", f: "chárge", e: "hens (f.)", sud: "inflected" },
|
||||
],
|
||||
]}
|
||||
</PluralTable>
|
||||
|
||||
##### With Pattern #3 Animate Nouns
|
||||
|
||||
In the same way we added the <InlinePs opts={opts} ps={{ p: "ان", f: "áan" }} /> ending to masculine <Pattern3 /> animate nouns, we can add the <InlinePs opts={opts} ps={{ p: "انې", f: "áane" }} /> ending to feminine <Pattern3 /> animate nouns.
|
||||
|
||||
<PluralTable>
|
||||
{[
|
||||
[
|
||||
{ p: "پاکستانۍ", f: "paakistaanúy", e: "a Pakistani (f.)"},
|
||||
{ p: "پاکستانیانې", f: "paakistaaniyáane", e: "Pakistanis (f.)"},
|
||||
],
|
||||
[
|
||||
{
|
||||
p: "بچۍ", f: "bachúy", e: "child (f.)",
|
||||
},
|
||||
{
|
||||
p: "بچیانې", f: "bachiyáane", e: "children (f.)",
|
||||
},
|
||||
],
|
||||
]}
|
||||
</PluralTable>
|
||||
|
||||
Again, with this form we have the option to use either the plural endings or just use the inflected form (which doesn't change from the feminine plain form).
|
||||
|
||||
<PluralTable>
|
||||
{[
|
||||
[
|
||||
{
|
||||
p: "بچۍ", f: "bachúy", e: "child (f.)",
|
||||
},
|
||||
{
|
||||
p: "بچیانې", f: "bachiyáane", e: "children (f.)", sub: "w/ plural ending"
|
||||
},
|
||||
],
|
||||
[
|
||||
{ p: "", f: "", e: "" },
|
||||
{
|
||||
p: "بچۍ", f: "bachúy", e: "children (f.)", sub: "inflected"
|
||||
}
|
||||
]
|
||||
]}
|
||||
</PluralTable>
|
||||
|
||||
#### With Feminine Nouns Ending in a Long Vowel
|
||||
|
||||
##### The وې ending
|
||||
|
||||
If a noun ends ends in a long vowel <InlinePs opts={opts} ps={{ p: "ا", f: "aa" }} />, <InlinePs opts={opts} ps={{ p: "و", f: "o" }} />, or <InlinePs opts={opts} ps={{ p: "و", f: "o" }} /> the <InlinePs opts={opts} ps={{ p: "وې", f: "وې" }} /> ending can be added for plurals.
|
||||
Depending on the dialect, you can either add <InlinePs opts={opts} ps={{ p: "وې", f: "we" }} />, or <InlinePs opts={opts} ps={{ p: "ګانې", f: "gáane" }} /> to the end of the word to make it plural.
|
||||
|
||||
<PluralTable>
|
||||
{[
|
||||
|
@ -466,98 +238,126 @@ If a noun ends ends in a long vowel <InlinePs opts={opts} ps={{ p: "ا", f: "aa"
|
|||
{ p: "دعا", f: "dUáa", e: "prayer" },
|
||||
{ p: "دعاوې", f: "dUáawe", e: "prayers" },
|
||||
],
|
||||
[null, { p: "دعاګانې", f: "dUaagáane", e: "prayers" }],
|
||||
[
|
||||
{ p: "بيشو", f: "peeshó", e: "cat" },
|
||||
{ p: "پیشووې", f: "peeshówe", e: "cats" },
|
||||
{ p: "بيشو", f: "peeshó", e: "cat 🐱" },
|
||||
{ p: "پیشووې", f: "peeshówe", e: "cats 🐱🐱" },
|
||||
],
|
||||
[
|
||||
{ p: "اړتیا", f: "aRtiyáa", e: "need" },
|
||||
{
|
||||
p: "اړتیاوې", f: "aRtiyáawe", e: "needs",
|
||||
},
|
||||
]
|
||||
[null, { p: "پیشوګانې", f: "peeshogáane", e: "cats 🐱🐱" }],
|
||||
]}
|
||||
</PluralTable>
|
||||
|
||||
#### With Feminine Nouns Ending in a Long Vowel
|
||||
#### With unisex animate nouns
|
||||
|
||||
##### The وې ending
|
||||
|
||||
If a noun ends ends in a long vowel <InlinePs opts={opts} ps={{ p: "ا", f: "aa" }} />, <InlinePs opts={opts} ps={{ p: "و", f: "o" }} />, or <InlinePs opts={opts} ps={{ p: "و", f: "o" }} /> the <InlinePs opts={opts} ps={{ p: "وې", f: "وې" }} /> ending can be added for plurals.
|
||||
When a noun is a <Link to="/nouns/nouns-unisex/">unisex noun</Link>, you often add an <InlinePs opts={opts} ps={{ p: "ې", f: "e" }} /> on the end of the <Link to="/nouns/nouns-plural/#animate-plural-ending-inlineps-optsopts-ps-p-ان-f-aan--">animate <InlinePs opts={opts} ps={{ p: "ان", f: "aan" }} /> ending</Link> instead of using the <Link to="/nouns/nouns-plural/#with-feminine-nouns">regular inflection</Link>.
|
||||
|
||||
<PluralTable>
|
||||
{[
|
||||
[
|
||||
{ p: "دعا", f: "dUáa", e: "prayer" },
|
||||
{ p: "دعاوې", f: "dUáawe", e: "prayers" },
|
||||
{ p: "استاذ", f: "Ustáaza", e: "teacher (f.) 👩🏫" },
|
||||
{ p: "استاذانې", f: "Ustaazáane", e: "teachers (f.) 👩🏫👩🏫" },
|
||||
],
|
||||
[
|
||||
{ p: "بيشو", f: "peeshó", e: "cat" },
|
||||
{ p: "پیشووې", f: "peeshówe", e: "cats" },
|
||||
{ p: "ډاکټره", f: "DakTára", e: "doctor (f.) 👩⚕️" },
|
||||
{ p: "ډاکټرانې", f: "DakTaráane", e: "doctors (f.) 👩⚕️👩⚕️" },
|
||||
],
|
||||
[
|
||||
{ p: "اړتیا", f: "aRtiyáa", e: "need" },
|
||||
{
|
||||
p: "اړتیاوې", f: "aRtiyáawe", e: "needs",
|
||||
},
|
||||
]
|
||||
]}
|
||||
</PluralTable>
|
||||
|
||||
##### The ګانې ending
|
||||
## Irregular Plurals
|
||||
|
||||
Often instead of the <InlinePs opts={opts} ps={{ p: "وې", f: "وې" }} /> ending, people use the <InlinePs opts={opts} ps={{ p: "انې", f: "áane" }} /> ending with the <InlinePs opts={opts} ps={{ p: "ګ", f: "g" }} /> spacer. This can also be used for singular feminine nouns ending in <InlinePs opts={opts} ps={{ p: "ې", f: "e" }} />.
|
||||
Some nouns just have completely irregular plural forms.
|
||||
|
||||
<PluralTable>
|
||||
{[
|
||||
[
|
||||
{ p: "دعا", f: "dUáa", e: "prayer" },
|
||||
{ p: "دعاګانې", f: "dUaagáane", e: "prayers" },
|
||||
{ p: "خور", f: "khor", e: "sister" },
|
||||
{ p: "خویندې", f: "khwaynde", e: "sisters" },
|
||||
],
|
||||
[
|
||||
{ p: "بيشو", f: "peeshó", e: "cat" },
|
||||
{ p: "پیشووې", f: "peeshogáane", e: "cats" },
|
||||
{ p: "ورور", f: "wror", e: "brother" },
|
||||
{ p: "وروڼه", f: "wróoNa", e: "brothers" },
|
||||
],
|
||||
[
|
||||
{ p: "یې", f: "ye", e: "the letter ی" },
|
||||
{
|
||||
p: "یې ګانې", f: "ye gáane", e: "the ی letters",
|
||||
},
|
||||
]
|
||||
{ p: "نجلۍ", f: "njuluy", e: "girl" },
|
||||
{ p: "نجونې", f: "njoone", e: "girls" },
|
||||
],
|
||||
[
|
||||
{ p: "مور", f: "mor", e: "mother" },
|
||||
{ p: "میندې", f: "maynde", e: "mothers" },
|
||||
],
|
||||
[
|
||||
{ p: "زوی", f: "zooy", e: "son" },
|
||||
{ p: "زامن", f: "zaamun", e: "sons" },
|
||||
],
|
||||
[
|
||||
{ p: "ترور", f: "tror", e: "aunt" },
|
||||
{ p: "تریندې", f: "traynde", e: "aunts" },
|
||||
],
|
||||
[
|
||||
{ p: "لور", f: "loor", e: "daughter" },
|
||||
{ p: "لوڼې", f: "looNe", e: "daughters" },
|
||||
],
|
||||
[
|
||||
{ p: "یور", f: "yor", e: "wife of a husbands' brother" },
|
||||
{ p: "یوڼې", f: "yooNe", e: "wives of a husband's brother" },
|
||||
],
|
||||
[
|
||||
{ p: "نږور", f: "nGor", e: "daughter-in-law" },
|
||||
{ p: "نږیندې", f: "nGaynde", e: "daughter-in-laws" },
|
||||
],
|
||||
]}
|
||||
</PluralTable>
|
||||
|
||||
##### With Feminine Nouns Ending in ي or ۍ
|
||||
## Collective Plurals
|
||||
|
||||
The <InlinePs opts={opts} ps={{ p: "انې", f: "áane" }} /> can be added to feminine nouns ending in <InlinePs opts={opts} ps={{ p: "ي", f: "ée" }} /> or <InlinePs opts={opts} ps={{ p: "ۍ", f: "úy" }} />, although this is _usually done with animate nouns_.
|
||||
Some nouns are just always considered plural, often because they are made up of a bunch of individual pieces.
|
||||
|
||||
<Examples opts={opts}>
|
||||
{[
|
||||
{ p: "خلک", f: "khalk", e: "people/populace (m. pl.)" },
|
||||
{ p: "اوړه", f: "ooRú", e: "flour (m. pl.)" },
|
||||
{ p: "برنج", f: "birínj", e: "rice (m. pl.)" },
|
||||
{ p: "اوبه", f: "oobú", e: "water (f. pl.)" },
|
||||
{ p: "جوار", f: "jawáar", e: "corn (m. pl.)" },
|
||||
{ p: "زهر", f: "zahur", e: "poison (m. pl.)" },
|
||||
{ p: "دروغ", f: "darógh", e: "lie, falsehood (m. pl.) " },
|
||||
{ p: "پیاز", f: "piyáaz", e: "onion (m. pl.)" },
|
||||
{ p: "سامان", f: "saamáan", e: "stuff, things (m. pl.)" },
|
||||
]}
|
||||
</Examples>
|
||||
|
||||
## Masculine nouns with feminine plurals
|
||||
|
||||
Above we learned that **masculine nouns** that fit into the <Link to="/nouns/nouns-unisex/#1-basic">#1 basic pattern</Link>, we add the <InlinePs opts={opts} ps={{ p: "ونه", f: "óona" }} /> ending to make it plural. But there is also another interesting thing that happens in Pashto:
|
||||
|
||||
**Masculine nouns ending in a consonant can become feminine for the plural form**. Often you will hear both forms of the plural, the regular masculine form with <InlinePs opts={opts} ps={{ p: "ونه", f: "óona" }} /> and the feminine form as well.
|
||||
|
||||
<PluralTable>
|
||||
{[
|
||||
[
|
||||
{ p: "قاضۍ", f: "qaazúy", e: "judge (f.)" },
|
||||
{ p: "فاضیانې", f: "qaaziyáane", e: "judges (f.)" },
|
||||
],
|
||||
[
|
||||
{ p: "سختي", f: "sakhtée", e: "difficulty" },
|
||||
{ p: "سختیانې", f: "sakhtiyáane", e: "difficulties", sub: "w/ plural ending" },
|
||||
{ p: "ډز", f: "Duz", e: "gunshot", sub: "(n. m.)" },
|
||||
{ p: "ډزې", f: "Dúze", e: "gunshots", sub: "(f. pl.)" },
|
||||
],
|
||||
[
|
||||
{ p: "", f: "", e: "" },
|
||||
{
|
||||
p: "سختۍ", f: "sakhtúy", e: "difficulties", sub: "inflected"
|
||||
},
|
||||
]
|
||||
{ p: "ډزونه", f: "Duzóona", e: "gunshots", sub: "(m. pl.)" },
|
||||
],
|
||||
[
|
||||
{ p: "ځل", f: "dzal", e: "time", sub: "(n. m.)" },
|
||||
{ p: "ځلې", f: "dzále", e: "times", sub: "(f. pl.)" },
|
||||
],
|
||||
[
|
||||
{ p: "", f: "", e: "" },
|
||||
{ p: "ځلونه", f: "dzalóona", e: "times", sub: "(m. pl.)" },
|
||||
],
|
||||
[
|
||||
{ p: "چرک", f: "chakár", e: "stroll", sub: "(n. m.)" },
|
||||
{ p: "چکرې", f: "chakáre", e: "strolls", sub: "(n. f.)" },
|
||||
],
|
||||
[
|
||||
{ p: "", f: "", e: "" },
|
||||
{ p: "چکرونه", f: "chakaróona", e: "strolls", sub: "(m. pl.)" },
|
||||
],
|
||||
]}
|
||||
</PluralTable>
|
||||
|
||||
#### Decision chart for adding plural endings to feminine nouns
|
||||
|
||||
<div className="text-center">
|
||||
<img
|
||||
className="img-fluid mb-4 mt-2"
|
||||
src={femEndingChart}
|
||||
alt="decision chart for adding plural endings to feminine nouns in Pashto"
|
||||
style={{ margin: "0 auto" }}
|
||||
/>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -303,6 +303,7 @@ export default [
|
|||
1527812780, // ښکته - xkuta
|
||||
1586340494373, // حد اقل - had-i-aqul
|
||||
1578080952673, // دباندې - dubaande
|
||||
1622374915074, // اغلب - aghláb
|
||||
1527813323, // خوشبختانه - khoshbakhtaana
|
||||
1527819156, // ظالمانه - zaalimaana
|
||||
1527818313, // پنځلس ورځنی - pindzúlaswradzanéy
|
||||
|
|
Loading…
Reference in New Issue