🌐 german translation
This commit is contained in:
parent
7663e3a43a
commit
73108f693a
@ -1,6 +1,6 @@
|
||||
body {
|
||||
font-family: Futura, sans-serif;
|
||||
background-color: #9ED2FF;
|
||||
background-color: #FFCF9E;
|
||||
}
|
||||
|
||||
footer {
|
||||
|
@ -1,40 +1,5 @@
|
||||
she her her hers herself
|
||||
he him his his himself
|
||||
they them their theirs themselves
|
||||
ze hir hir hirs hirself
|
||||
ze zir zir zirs zirself
|
||||
xey xem xyr xyrs xemself
|
||||
ae aer aer aers aerself
|
||||
e em eir eirs emself
|
||||
ey em eir eirs eirself
|
||||
fae faer faer faers faerself
|
||||
fey fem feir feirs feirself
|
||||
hu hum hus hus humself
|
||||
it it its its itself
|
||||
jee jem jeir jeirs jemself
|
||||
kit kit kits kits kitself
|
||||
ne nem nir nirs nemself
|
||||
peh pehm peh's peh's pehself
|
||||
per per per pers perself
|
||||
sie hir hir hirs hirself
|
||||
se sim ser sers serself
|
||||
shi hir hir hirs hirself
|
||||
si hyr hyr hyrs hyrself
|
||||
they them their theirs themself
|
||||
thon thon thons thons thonself
|
||||
ve ver vis vis verself
|
||||
ve vem vir virs vemself
|
||||
vi ver ver vers verself
|
||||
vi vim vir virs vimself
|
||||
vi vim vim vims vimself
|
||||
xie xer xer xers xerself
|
||||
xe xem xyr xyrs xemself
|
||||
xey xem xeir xeirs xemself
|
||||
yo yo yos yos yosself
|
||||
ze zem zes zes zirself
|
||||
ze mer zer zers zemself
|
||||
zee zed zeta zetas zedself
|
||||
zie zir zir zirs zirself
|
||||
zie zem zes zes zirself
|
||||
zie hir hir hirs hirself
|
||||
zme zmyr zmyr zmyrs zmyrself
|
||||
sie ihr ihr ihres sie
|
||||
er ihm sein seines ihn
|
||||
hen hem hens hens hen
|
||||
dey dem deir deirs dem
|
||||
dey dem deren deren dem
|
||||
|
@ -28,8 +28,8 @@
|
||||
(let [c (count items)]
|
||||
(cond
|
||||
(<= c 1) (or (first items) "")
|
||||
(= c 2) (s/join " and " items)
|
||||
:else (str (s/join ", " (butlast items)) ", and " (last items)))))
|
||||
(= c 2) (s/join " und " items)
|
||||
:else (str (s/join ", " (butlast items)) ", und " (last items)))))
|
||||
|
||||
(defn href
|
||||
[url text]
|
||||
@ -44,77 +44,76 @@
|
||||
(defn render-sentence [& content]
|
||||
[:p.sentence content])
|
||||
|
||||
(defn subject-example
|
||||
[subject]
|
||||
(render-sentence (wrap-pronoun (s/capitalize subject)) " went to the park."))
|
||||
(defn nominativ-example
|
||||
[nominativ]
|
||||
(render-sentence (wrap-pronoun (s/capitalize nominativ)) " ging in den Park."))
|
||||
|
||||
(defn object-example
|
||||
[object]
|
||||
(render-sentence "I went with " (wrap-pronoun object) "."))
|
||||
(defn dativ-example
|
||||
[dativ]
|
||||
(render-sentence "Ich ging mit " (wrap-pronoun dativ) "."))
|
||||
|
||||
(defn posessive-determiner-example
|
||||
[subject possessive-determiner]
|
||||
(render-sentence (wrap-pronoun (s/capitalize subject))
|
||||
" brought "
|
||||
(wrap-pronoun possessive-determiner)
|
||||
" frisbee."))
|
||||
(defn possessiv-example
|
||||
[nominativ possessiv]
|
||||
(render-sentence (wrap-pronoun (s/capitalize nominativ))
|
||||
" hatte "
|
||||
(wrap-pronoun possessiv)
|
||||
" Frisbee dabei."))
|
||||
|
||||
(defn possessive-pronoun-example
|
||||
[possessive-pronoun]
|
||||
(render-sentence "At least I think it was "
|
||||
(wrap-pronoun possessive-pronoun)
|
||||
(defn genitiv-example
|
||||
[genitiv]
|
||||
(render-sentence "Zumindest glaube ich, es war "
|
||||
(wrap-pronoun genitiv)
|
||||
"."))
|
||||
|
||||
(defn reflexive-example
|
||||
[subject reflexive]
|
||||
(render-sentence (wrap-pronoun (s/capitalize subject))
|
||||
" threw the frisbee to "
|
||||
(wrap-pronoun reflexive)
|
||||
"."))
|
||||
(defn akkusativ-example
|
||||
[akkusativ]
|
||||
(render-sentence "Ich habe "
|
||||
(wrap-pronoun akkusativ)
|
||||
" gestern schon damit gesehen."))
|
||||
|
||||
(defn header-block [header]
|
||||
[:div {:class "section title"}
|
||||
(href "/" [:h1 header])])
|
||||
|
||||
(defn examples-block
|
||||
[subject object possessive-determiner possessive-pronoun reflexive]
|
||||
(let [sub-obj (s/join "/" [subject object])
|
||||
header-str (str "Here are some example sentences using my "
|
||||
[nominativ dativ possessiv genitiv akkusativ]
|
||||
(let [sub-obj (s/join "/" [nominativ dativ])
|
||||
header-str (str "Hier sind einige Beispielsätze mit meinen "
|
||||
sub-obj
|
||||
" pronouns:")]
|
||||
" Pronomen:")]
|
||||
[:div {:class "section examples"}
|
||||
[:h2 header-str]
|
||||
[:div (subject-example subject)
|
||||
(object-example object)
|
||||
(posessive-determiner-example subject possessive-determiner)
|
||||
(possessive-pronoun-example possessive-pronoun)
|
||||
(reflexive-example subject reflexive)]]))
|
||||
[:div (nominativ-example nominativ)
|
||||
(dativ-example dativ)
|
||||
(possessiv-example nominativ possessiv)
|
||||
(genitiv-example genitiv)
|
||||
(akkusativ-example akkusativ)]]))
|
||||
|
||||
(defn usage-block []
|
||||
[:div {:class "section usage"}
|
||||
[:p "Full usage: "
|
||||
[:p "Volle Verwendung: "
|
||||
;; FIXME morgan.astra <2018-11-14 Wed>
|
||||
;; This looks really ugly in the browser
|
||||
[:tt "https://pronomen.lol/subject-pronoun/object-pronoun/possessive-determiner/possessive-pronoun/reflexive"]
|
||||
" displays examples of your pronouns."]
|
||||
[:p "This is a bit unwieldy. If we have a good guess we'll let you use"
|
||||
" just the first one or two."]])
|
||||
[:tt "https://pronomen.lol/nominativ/dativ/possessiv/genitiv/akkusativ"]
|
||||
" zeigt Beispiele zu deinen Pronomen."]
|
||||
[:p "Das ist ein wenig unhandlich. Bei Pronomen, die der Webseite bekannt sind"
|
||||
" reichen die ersten ein bis zwei Parameter."]])
|
||||
|
||||
(defn contact-block []
|
||||
[:div {:class "section contact"}
|
||||
[:p "Written by morganastra ("
|
||||
(href "https://pronomen.lol/she" "pronomen.lol/she")
|
||||
[:p "Geschrieben von morganastra ("
|
||||
(href "https://pronomen.lol/sie" "pronomen.lol/sie")
|
||||
")"]
|
||||
[:p "pronomen.lol is free software under the "
|
||||
[:p "pronomen.lol ist freie Software unter der Lizenz "
|
||||
(href "https://www.gnu.org/licenses/agpl.html" "AGPLv3")
|
||||
"! visit the project on "
|
||||
"! besuche des Projekt auf "
|
||||
(href "https://git.tjdev.de/kimendisch/pronomen.lol" "Git")]
|
||||
[:p "Hosted by Kim Endisch ("
|
||||
(href "https://pronomen.lol/they" "pronomen.lol/they")
|
||||
[:p "Betrieben durch Kim Endisch ("
|
||||
(href "https://pronomen.lol/dey" "pronomen.lol/dey")
|
||||
")"]
|
||||
[:p (href "https://www.tjdev.de/imprint" "Imprint")
|
||||
[:p (href "https://www.tjdev.de/impressum" "Impressum")
|
||||
" | "
|
||||
(href "https://www.tjdev.de/privacy" "Privacy Policy")]
|
||||
(href "https://www.tjdev.de/datenschutz" "Datenschutzerklärung")]
|
||||
[:p "<3"]])
|
||||
|
||||
(defn footer-block []
|
||||
@ -123,7 +122,7 @@
|
||||
(defn format-pronoun-examples
|
||||
[pronoun-declensions]
|
||||
(let [sub-objs (map #(s/join "/" (take 2 %)) pronoun-declensions)
|
||||
title (str "Pronomen LOL: " (prose-comma-list sub-objs) " examples")
|
||||
title (str "Pronomen LOL: " (prose-comma-list sub-objs) " Beispiele")
|
||||
examples (map #(apply examples-block %) pronoun-declensions)]
|
||||
(html
|
||||
[:html
|
||||
@ -166,7 +165,7 @@
|
||||
(let [abbreviations (take 6 (u/abbreviate @pronouns-table))
|
||||
links (map make-link abbreviations)
|
||||
title "Pronomen LOL"
|
||||
description "Pronomen.lol is a website for personal pronoun usage examples."]
|
||||
description "Pronomen.lol ist eine Webseite mit Beispielen zur Nutzung persönlicher Pronomen."]
|
||||
(html
|
||||
[:html
|
||||
[:head
|
||||
@ -183,10 +182,10 @@
|
||||
[:body
|
||||
(header-block title)
|
||||
[:div {:class "section table"}
|
||||
[:p "pronomen.lol is a website for personal pronoun usage examples"]
|
||||
[:p "here are some pronouns the site knows about:"]
|
||||
[:p "pronomen.lol ist eine Webseite mit Beispielen zur Nutzung persönlicher Pronomen"]
|
||||
[:p "hier einige Pronomen, die diese Webseite kennt:"]
|
||||
[:ul links]
|
||||
[:p [:small (href "all-pronouns" "see all pronouns in the database")]]]]
|
||||
[:p [:small (href "all-pronouns" "alle Pronomen ansehen")]]]]
|
||||
(footer-block)])))
|
||||
|
||||
(defn all-pronouns []
|
||||
@ -205,12 +204,12 @@
|
||||
[:body
|
||||
(header-block title)
|
||||
[:div {:class "section table"}
|
||||
[:p "All pronouns the site knows about:"]
|
||||
[:p "Alle Pronomen, die diese Webseite kennt:"]
|
||||
[:ul links]]]
|
||||
(footer-block)])))
|
||||
|
||||
(defn not-found [path]
|
||||
(let [title "Pronomen LOL: English Language Examples"
|
||||
(let [title "Pronomen LOL: Beispiele in Deutscher Sprache"
|
||||
or-re #"/[oO][rR]/"]
|
||||
(html
|
||||
[:html
|
||||
@ -224,13 +223,13 @@
|
||||
[:body
|
||||
(header-block title)
|
||||
[:div {:class "section examples"}
|
||||
[:p [:h2 "We couldn't find those pronouns in our database :("]
|
||||
"If you think we should have them, please reach out!"]
|
||||
[:p [:h2 "Wir konnten diese Pronomen nicht in unserer Datenbank finden :("]
|
||||
"Wenn Du denkst, die Seite sollte diese Pronomen kennen, gib Bescheid!"]
|
||||
(when (re-find or-re path)
|
||||
(let [alts (s/split path or-re)
|
||||
new-path (str "/" (s/join "/:OR/" alts))]
|
||||
[:div
|
||||
"Did you mean: "
|
||||
"Meintest Du: "
|
||||
(href new-path
|
||||
(str "pronomen.lol"
|
||||
new-path))]))]
|
||||
@ -238,8 +237,8 @@
|
||||
|
||||
(defn pronouns [params]
|
||||
(let [path (params :*)
|
||||
param-alts (u/vec-coerce (or (params "or") []))
|
||||
path-alts (s/split path #"/:[oO][rR]/")
|
||||
param-alts (u/vec-coerce (or (params "oder") []))
|
||||
path-alts (s/split path #"/:[oO][dD][eE][rR]/")
|
||||
pronouns (lookup-pronouns (concat path-alts param-alts))]
|
||||
(if (seq pronouns)
|
||||
(format-pronoun-examples pronouns)
|
||||
|
Loading…
Reference in New Issue
Block a user