mirror of
https://gitlab.com/PronounsPage/PronounsPage.git
synced 2025-09-24 05:05:20 -04:00
Merge remote-tracking branch 'origin/main'
This commit is contained in:
commit
f3da4b70b4
5
.gitignore
vendored
5
.gitignore
vendored
@ -106,7 +106,10 @@ dist
|
||||
.serverless
|
||||
|
||||
# IDE / Editor
|
||||
.idea
|
||||
.idea/*
|
||||
!.idea/jsLinters
|
||||
!.idea/runConfigurations
|
||||
!.idea/vcs.xml
|
||||
|
||||
# Service worker
|
||||
sw.*
|
||||
|
101
.gitlab-ci.yml
101
.gitlab-ci.yml
@ -1,51 +1,69 @@
|
||||
image: node:latest
|
||||
|
||||
lint:
|
||||
check:
|
||||
stage: test
|
||||
script:
|
||||
image: node:latest
|
||||
before_script:
|
||||
- set -o pipefail
|
||||
|
||||
- echo -e "\e[0Ksection_start:`date +%s`:prepare_dependencies\r\e[0KPrepare Dependencies"
|
||||
- 'sed -i ''s/git+ssh:\/\/git@gitlab.com:Avris\/FontAwesomePro.git/git+https:\/\/git@gitlab.com\/Avris\/FakeFontAwesomePro.git/'' package.json'
|
||||
- 'sed -i ''/"devDependencies"/a "eslint-formatter-gitlab": "*",'' package.json'
|
||||
- echo -e "\e[0Ksection_end:`date +%s`:prepare_dependencies\r\e[0K"
|
||||
|
||||
- make switch LANG=en
|
||||
|
||||
- echo -e "\e[0Ksection_start:`date +%s`:install_dependencies\r\e[0KInstall Dependencies"
|
||||
- yarn install --immutable --immutable-cache --check-cache --cache-folder .yarn
|
||||
- echo -e "\e[0Ksection_end:`date +%s`:install_dependencies\r\e[0K"
|
||||
|
||||
- echo -e "\e[0Ksection_start:`date +%s`:reset_dependencies\r\e[0KReset Dependencies"
|
||||
- git restore package.json yarn.lock
|
||||
- echo -e "\e[0Ksection_end:`date +%s`:reset_dependencies\r\e[0K"
|
||||
|
||||
- echo -e "\e[0Ksection_start:`date +%s`:check_lints\r\e[0KCheck linting rules"
|
||||
- yarn lint --format gitlab --color --fix --quiet
|
||||
- echo -e "\e[0Ksection_end:`date +%s`:check_lints\r\e[0K"
|
||||
|
||||
- echo -e "\e[0Ksection_start:`date +%s`:check_fixable\r\e[0KCheck for fixable problems"
|
||||
- git diff --stat --exit-code
|
||||
- echo -e "\e[0Ksection_end:`date +%s`:check_fixable\r\e[0K"
|
||||
artifacts:
|
||||
reports:
|
||||
codequality: gl-codequality.json
|
||||
|
||||
unit-tests:
|
||||
stage: test
|
||||
- export NODE_ENV=development
|
||||
- >
|
||||
start_section () {
|
||||
current_section=$1;
|
||||
echo -e "\e[0Ksection_start:`date +%s`:${current_section//[^a-zA-Z0-9]/-}\r\e[0K$current_section";
|
||||
};
|
||||
end_section () {
|
||||
echo -e "\e[0Ksection_end:`date +%s`:${current_section//[^a-zA-Z0-9]/-}\r\e[0K";
|
||||
};
|
||||
failures=();
|
||||
record_failure () {
|
||||
exit_code=$?;
|
||||
name=${1:-$current_section};
|
||||
echo -e "\033[0;31m$name failed with exit code $exit_code\033[0m"; failures+=("$name");
|
||||
};
|
||||
script:
|
||||
- echo -e "\e[0Ksection_start:`date +%s`:prepare_dependencies\r\e[0KPrepare Dependencies"
|
||||
- 'sed -i ''s/git+ssh:\/\/git@gitlab.com:Avris\/FontAwesomePro.git/git+https:\/\/git@gitlab.com\/Avris\/FakeFontAwesomePro.git/'' package.json'
|
||||
- 'sed -i ''/"devDependencies"/a "jest-junit": "*",'' package.json'
|
||||
- echo -e "\e[0Ksection_end:`date +%s`:prepare_dependencies\r\e[0K"
|
||||
- start_section "Install Dependencies"
|
||||
# temporarily replace FontAwesomePro dependency with its fake version as the CI can’t access it
|
||||
# the name needs to be changed in both package.json and yarn.lock
|
||||
- 'sed -i "s/git+ssh:\/\/git@gitlab.com:Avris\/FontAwesomePro.git/git+https:\/\/gitlab.com\/Avris\/FakeFontAwesomePro.git/" package.json yarn.lock'
|
||||
# the referenced SHA needs to be additionally changed in yarn.lock
|
||||
- 'sed -i "s/f00db606f659dca78b143b7bcab5671b2cb459a8/0d322c775cbe9bf99da261700be30251291b51a8/" yarn.lock'
|
||||
- yarn install --frozen-lockfile || record_failure
|
||||
- git restore package.json yarn.lock
|
||||
- end_section
|
||||
|
||||
- make switch LANG=en
|
||||
|
||||
- echo -e "\e[0Ksection_start:`date +%s`:install_dependencies\r\e[0KInstall Dependencies"
|
||||
- yarn install --immutable --immutable-cache --check-cache --cache-folder .yarn
|
||||
- echo -e "\e[0Ksection_end:`date +%s`:install_dependencies\r\e[0K"
|
||||
- start_section "Unit Tests"
|
||||
- >
|
||||
yarn test --ci --reporters=default --reporters=jest-junit
|
||||
--coverage --collect-coverage-from="./{plugins,server,src,store}/**"
|
||||
--coverage-reporters=text --coverage-reporters=cobertura || record_failure
|
||||
- end_section
|
||||
|
||||
- yarn test --ci --reporters=default --reporters=jest-junit --coverage --collect-coverage-from="./{plugins,server,src,store}/**" --coverage-reporters=text --coverage-reporters=cobertura
|
||||
- start_section "Check linting rules"
|
||||
- yarn lint --format gitlab --color --fix | grep -v "^\S*warn" || record_failure
|
||||
- end_section
|
||||
|
||||
- start_section "Check for fixable problems"
|
||||
- git diff --stat --exit-code || record_failure
|
||||
- end_section
|
||||
|
||||
# calls scripts to check for simple issues while disabling actual work (e.g. no publishing to third party)
|
||||
# some scripts are left out because they need special configuration or are not safe to smoke test
|
||||
- start_section "Smoke test server scripts"
|
||||
- node server/migrate.js || record_failure "Smoke test migrate"
|
||||
- node server/calendarBot.js en,pl,es,pt,de,nl,fr,ja,ru,sv,lad,ua,vi "" || record_failure "Smoke test calendarBot"
|
||||
- node server/cleanupAccounts.js || record_failure "Smoke test cleanupAccounts"
|
||||
- node server/notify.js || record_failure "Smoke test notify"
|
||||
- node server/stats.js || record_failure "Smoke test stats"
|
||||
- node server/subscriptions.js || record_failure "Smoke test subscriptions"
|
||||
- end_section
|
||||
|
||||
- >
|
||||
if [[ ${failures[@]} ]]; then
|
||||
echo -e "\033[0;31mSome checks have failed:";
|
||||
printf -- "- %s\n" "${failures[@]}";
|
||||
echo -en "\033[0m";
|
||||
false;
|
||||
fi
|
||||
coverage: /All files[^|]*\|[^|]*\s+([\d\.]+)/
|
||||
artifacts:
|
||||
reports:
|
||||
@ -53,3 +71,4 @@ unit-tests:
|
||||
coverage_report:
|
||||
coverage_format: cobertura
|
||||
path: coverage/cobertura-coverage.xml
|
||||
codequality: gl-codequality.json
|
||||
|
7
.idea/jsLinters/eslint.xml
generated
Normal file
7
.idea/jsLinters/eslint.xml
generated
Normal file
@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="EslintConfiguration">
|
||||
<files-pattern value="**/*.{js,json,suml,vue,yml}" />
|
||||
<option name="fix-on-save" value="true" />
|
||||
</component>
|
||||
</project>
|
11
.idea/runConfigurations/jest-all-tests.run.xml
generated
Normal file
11
.idea/runConfigurations/jest-all-tests.run.xml
generated
Normal file
@ -0,0 +1,11 @@
|
||||
<component name="ProjectRunConfigurationManager">
|
||||
<configuration default="false" name="All Tests" type="JavaScriptTestRunnerJest" nameIsGenerated="true">
|
||||
<node-interpreter value="project" />
|
||||
<node-options value="--experimental-vm-modules" />
|
||||
<jest-package value="$PROJECT_DIR$/node_modules/jest" />
|
||||
<working-dir value="$PROJECT_DIR$" />
|
||||
<envs />
|
||||
<scope-kind value="ALL" />
|
||||
<method v="2" />
|
||||
</configuration>
|
||||
</component>
|
20
.idea/vcs.xml
generated
Normal file
20
.idea/vcs.xml
generated
Normal file
@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="IssueNavigationConfiguration">
|
||||
<option name="links">
|
||||
<list>
|
||||
<IssueNavigationLink>
|
||||
<option name="issueRegexp" value="!(\d+)" />
|
||||
<option name="linkRegexp" value="https://gitlab.com/PronounsPage/PronounsPage/-/merge_requests/$1" />
|
||||
</IssueNavigationLink>
|
||||
<IssueNavigationLink>
|
||||
<option name="issueRegexp" value="#(\d+)" />
|
||||
<option name="linkRegexp" value="https://gitlab.com/PronounsPage/PronounsPage/-/issues/$1" />
|
||||
</IssueNavigationLink>
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="" vcs="Git" />
|
||||
</component>
|
||||
</project>
|
29
README.md
29
README.md
@ -77,12 +77,22 @@ SECRET=replaceThis
|
||||
|
||||
### Editor
|
||||
|
||||
Some libraries like Vue recommend using Visual Studio Code as editor.
|
||||
There are some recommended extensions in `.vscode/extensions.json` to help with development.
|
||||
#### Visual Studio Code
|
||||
Recommended extensions are provided in `.vscode/extensions.json`
|
||||
and Visual Studio Code will ask for your permission to install them upon project open.
|
||||
`.vscode/settings.json` already includes settings to integrate with tooling.
|
||||
|
||||
#### JetBrains IDE (WebStorm, PhpStorm, …)
|
||||
Most of the tooling is already shipped with a JetBrains IDE.
|
||||
`.idea` already contains some settings to integrate with the tooling.
|
||||
If you want syntax highlighting for `.suml` files, you need to manually bind them to `yaml` syntax
|
||||
via `Settings › Editor › File Types`.
|
||||
|
||||
#### Others
|
||||
When you want to use a different editor, you may need to configure some points to reduce manual work:
|
||||
|
||||
- Integrating ESLint with auto-fixing on save (the formatting relies on it)
|
||||
- Integration Jest to easily view test results
|
||||
- Integrating Jest to easily view test results
|
||||
- Use `yaml` syntax highlighting for `.suml` files
|
||||
|
||||
### Tools
|
||||
@ -135,7 +145,18 @@ A non-comprehensive list of things to look out during development and review:
|
||||
- Be consistent with the design guidelines (at `/design`)
|
||||
- Check frontend in both dark and light mode
|
||||
- Check that changes work in a differently configured locale (especially for optionally configurable features)
|
||||
- Add new translations to `_base/translations.suml` and if applicable to `expectedTranslations.js`
|
||||
- Add new translations to `_base/translations.suml` and if applicable add a condition to `missingTranslations.js`
|
||||
- Consider backwards-compatibility (e.g. links to pronouns in their profile or mail signature shouldn’t break)
|
||||
- If you changed code related to those scripts, check that they keep running:
|
||||
- `server/calendar.js`
|
||||
- `server/calendarBot.js` (with arguments `en,pl,es,pt,de,nl,fr,ja,ru,sv,lad,ua,vi twitter,mastodon`)
|
||||
- `server/cleanupImages.js`
|
||||
- `server/cleanupAccounts.js`
|
||||
- `server/miastamaszerujace.js` (pl locale only)
|
||||
- `server/migrate.js`
|
||||
- `server/notify.js`
|
||||
- `server/stats.js`
|
||||
- `server/subscriptions.js`
|
||||
|
||||
### Integrations
|
||||
|
||||
|
@ -186,17 +186,55 @@ profile:
|
||||
editorEnabled: true
|
||||
defaultWords:
|
||||
-
|
||||
header: ~
|
||||
values: ['Weibliche Formen', 'Männliche Formen', 'Y-Formen', 'Inklusivum', 'Ojum', 'Person-Formen', 'Doppelpunkt-Formen', 'Unterstrich-Formen', 'Sternchen-Formen', 'Großbuchstabe-Formen']
|
||||
header: 'Substantive'
|
||||
values:
|
||||
- 'Weibliche Formen'
|
||||
- 'Männliche Formen'
|
||||
- 'Y-Formen'
|
||||
- 'Inklusivum'
|
||||
- 'Indefinitivum'
|
||||
- 'ens-Formen'
|
||||
- 'ex-Formen'
|
||||
- 'Ojum'
|
||||
- 'Person-Formen'
|
||||
- 'Doppelpunkt-Formen'
|
||||
- 'Unterstrich-Formen'
|
||||
- 'Sternchen-Formen'
|
||||
- 'Großbuchstabe-Formen'
|
||||
-
|
||||
header: ~
|
||||
values: ['[ohne Anrede]', 'Herr', 'Frau', 'Fräulein', 'Dame', 'Ind.', 'Bruder', 'Schwester', 'Geschwisterchen', 'Mann', 'Frau', 'Person']
|
||||
header: 'Anrede'
|
||||
values:
|
||||
- '[ohne Anrede]'
|
||||
- 'Herr'
|
||||
- 'Frau'
|
||||
- 'Fräulein'
|
||||
- 'Dame'
|
||||
- 'Ind.'
|
||||
- 'Bruder'
|
||||
- 'Schwester'
|
||||
- 'Geschwisterchen'
|
||||
- 'Mann'
|
||||
- 'Frau'
|
||||
- 'Person'
|
||||
-
|
||||
header: ~
|
||||
values: ['schön', 'süß', 'sexy', 'hübsch', 'attraktiv']
|
||||
header: 'Komplimente'
|
||||
values:
|
||||
- 'schön'
|
||||
- 'süß'
|
||||
- 'sexy'
|
||||
- 'hübsch'
|
||||
- 'attraktiv'
|
||||
-
|
||||
header: ~
|
||||
values: ['Freund', 'Freundin', 'Liebling', 'Schatz', 'Geliebte/r', 'Liebschaft', 'Süße/r', 'Partner/in']
|
||||
header: 'Beziehungsbezeichnungen'
|
||||
values:
|
||||
- 'Freund'
|
||||
- 'Freundin'
|
||||
- 'Liebling'
|
||||
- 'Schatz'
|
||||
- 'Geliebte/r'
|
||||
- 'Liebschaft'
|
||||
- 'Süße/r'
|
||||
- 'Partner/in'
|
||||
flags:
|
||||
defaultPronoun: 'er'
|
||||
|
||||
|
@ -24,7 +24,7 @@
|
||||
</h5>
|
||||
<Declension word="" :template="declension" open />
|
||||
</div>
|
||||
<div class="mb-3">
|
||||
<div v-if="Object.keys(declension.plural).length > 0" class="mb-3">
|
||||
<h5 class="h6">
|
||||
⁖ <T>nouns.plural</T>
|
||||
</h5>
|
||||
@ -87,7 +87,10 @@ export default {
|
||||
}),
|
||||
},
|
||||
Inklusivum: {
|
||||
info: 'Formen vorgestellt vom {https://geschlechtsneutral.net/=Verein für geschlechtsneutrales Deutsch}.',
|
||||
info: `
|
||||
Formen vorgestellt vom {https://geschlechtsneutral.net/=Verein für geschlechtsneutrales Deutsch}.<br/><br/>
|
||||
Siehe auch: {/en/em=Neopronomen „en“}.
|
||||
`,
|
||||
declension: new NounDeclension({
|
||||
N: 'de Arbeitere',
|
||||
G: 'ders Arbeiteres',
|
||||
@ -135,6 +138,47 @@ export default {
|
||||
A_pl: 'meine besten Lehrerninnen',
|
||||
}),
|
||||
},
|
||||
'ens-Formen': {
|
||||
info: `
|
||||
Formen vorgestellt von Lann Hornscheidt.<br/><br/>
|
||||
Siehe auch: {/ens=Neopronomen „ens“}.<br/><br/>
|
||||
„ens“ ist dabei dem Mittelteil aus „Mensch“ entnommen.
|
||||
`,
|
||||
declension: new NounDeclension({
|
||||
N: 'dens Arbeitens',
|
||||
G: 'dens Arbeitens',
|
||||
D: 'dens Arbeitens',
|
||||
A: 'dens Arbeitens',
|
||||
N_pl: 'die Arbeitense',
|
||||
G_pl: 'die Arbeitense',
|
||||
D_pl: 'die Arbeitense',
|
||||
A_pl: 'die Arbeitense',
|
||||
}),
|
||||
extendedDeclension: new NounDeclension({
|
||||
N: 'meinens beste Lehrens',
|
||||
G: 'meinens beste Lehrens',
|
||||
D: 'meinens beste Lehrens',
|
||||
A: 'meinens beste Lehrens',
|
||||
N_pl: 'meine besten Lehrens',
|
||||
G_pl: 'meiner besten Lehrens',
|
||||
D_pl: 'meinen besten Lehrens',
|
||||
A_pl: 'meine besten Lehrens',
|
||||
}),
|
||||
},
|
||||
'ex-Formen': {
|
||||
info: `
|
||||
Formen vorgestellt von {https://www.lannhornscheidt.com/w_ortungen/nonbinare-w_ortungen/=Lann Hornscheidt und Lio Oppenländer}.<br/><br/>
|
||||
Siehe auch: {/ex=Neopronomen „ex“}.<br/><br/>
|
||||
„ex“ steht für Exit Gender und soll in Abgrenzung zu anderen Formen
|
||||
explizit beschreiben, dass sich eine Person nicht über Gender versteht.
|
||||
`,
|
||||
declension: new NounDeclension({
|
||||
N: 'Arbeitex',
|
||||
G: 'Arbeitex',
|
||||
D: 'Arbeitex',
|
||||
A: 'Arbeitex',
|
||||
}),
|
||||
},
|
||||
Ojum: {
|
||||
info: `
|
||||
Formen vorgestellt von {https://www.frumble.de/blog/2021/03/26/ueberlegungen-zu-einer-genderneutralen-deutschen-grammatik=Frumble}.<br/><br/>
|
||||
|
@ -67,13 +67,13 @@
|
||||
<td><MorphemeWithPronunciation :pronoun="selectedPronoun" morpheme="possessive_n_d" :counter="counter" /></td>
|
||||
<td><MorphemeWithPronunciation :pronoun="selectedPronoun" morpheme="possessive_n_a" :counter="counter" /></td>
|
||||
</tr>
|
||||
<tr v-if="comprehensive && selectedPronoun.getMorpheme('article_n', counter)">
|
||||
<tr v-if="comprehensive && selectedPronoun.getMorpheme('relative_n', counter)">
|
||||
<th>Relativpronomen</th>
|
||||
<td></td>
|
||||
<td><MorphemeWithPronunciation :pronoun="selectedPronoun" morpheme="article_n" :counter="counter" /></td>
|
||||
<td><MorphemeWithPronunciation :pronoun="selectedPronoun" morpheme="article_g" :counter="counter" /></td>
|
||||
<td><MorphemeWithPronunciation :pronoun="selectedPronoun" morpheme="article_d" :counter="counter" /></td>
|
||||
<td><MorphemeWithPronunciation :pronoun="selectedPronoun" morpheme="article_a" :counter="counter" /></td>
|
||||
<td><MorphemeWithPronunciation :pronoun="selectedPronoun" morpheme="relative_n" :counter="counter" /></td>
|
||||
<td><MorphemeWithPronunciation :pronoun="selectedPronoun" morpheme="relative_g" :counter="counter" /></td>
|
||||
<td><MorphemeWithPronunciation :pronoun="selectedPronoun" morpheme="relative_d" :counter="counter" /></td>
|
||||
<td><MorphemeWithPronunciation :pronoun="selectedPronoun" morpheme="relative_a" :counter="counter" /></td>
|
||||
</tr>
|
||||
<tr v-if="comprehensive && selectedPronoun.getMorpheme('demonstrative_n', counter)">
|
||||
<th>Demonstrativpronomen</th>
|
||||
|
@ -7,5 +7,5 @@ Meine Lieblingsfarbe ist violett, {possessive_f_n} ist gelb. FALSE TRUE
|
||||
Wir freuen uns {pronoun_g}. FALSE TRUE
|
||||
Ich bin {pronoun_d} erst kürzlich begegnet. FALSE FALSE
|
||||
Ich verstehe {pronoun_a} so gut. FALSE FALSE
|
||||
{'article_n} Einzige, {article_a} ich kenne, {article_d} wir noch einen Gefallen schulden. {'article_n} Einzigen, {article_a} ich kenne, {article_d} wir noch einen Gefallen schulden. FALSE TRUE
|
||||
{'relative_n} Einzige, {relative_a} ich kenne, {relative_d} wir noch einen Gefallen schulden. {'relative_n} Einzigen, {relative_a} ich kenne, {relative_d} wir noch einen Gefallen schulden. FALSE TRUE
|
||||
{'demonstrative_n} Studierende kennt alle Lösungen {possessive_f_g} Übungsaufgabe. {'demonstrative_n} Studierende kennen alle Lösungen {possessive_f_g} Übungsaufgabe. FALSE TRUE
|
||||
|
|
@ -10,7 +10,7 @@ const morphemeGroups = [
|
||||
morphemeByCase('possessive_f'),
|
||||
morphemeByCase('possessive_m'),
|
||||
morphemeByCase('possessive_n'),
|
||||
morphemeByCase('article'),
|
||||
morphemeByCase('relative'),
|
||||
morphemeByCase('demonstrative'),
|
||||
];
|
||||
export default morphemeGroups.flatMap((morphemeGroup) => morphemeGroup);
|
||||
|
@ -1,5 +1,8 @@
|
||||
key name pronouns description
|
||||
binäre Binäre Pronomen sie,er Es ist wichtig zu betonen, dass Pronomen und Geschlecht unterschiedliche Konzepte sind. Eine Person kann nicht-binär sein und gleichzeitig die Pronomen nutzen, die bei der Geburt zugewiesen wurden – oder aber diesen normativ gegenübergestellt sind.
|
||||
neutrum Neutrum es,es/ihr,es/denen Das Pronomen „es“ ist zwar sehr gebräuchlich im Deutschen, aber nicht im Bezug auf Menschen. Einige wenige Personenwörter wie „Mädchen“, „Individuum“ und „Mitglied“ sind zwar sächlich. Doch viele Deutschsprachige empfinden das Neutrum dennoch als versächlichend und entmündigend, wenn es statt „sie“ oder „er“ für Personen verwendet wird, was manche transfeindliche Personen auch ausnutzen. Daher solltest du vorsichtig sein und dieses Pronomen nur gebrauchen, wenn die entsprechende Person es sich ausdrücklich wünscht. Viele Formen sind im Neutrum identisch mit denen des Maskulinums, daher bevorzugen einige Menschen modifizierte Varianten bei denen diese ausgetauscht werden.
|
||||
neopronomen Neopronomen dey,dey/denen/demm,die,el,em,en,en/em,et,ey,hän,hen,hie,iks,ind,mensch,nin,oj,per,ser,sier,they,xier,zet,ersie Im Gegensatz zu anderen Pronomen, die offiziell als „grammatikalisch korrekt“ anerkannt werden, sind Neopronomen neu geschaffen. Doch nur weil sie (noch) nicht in offiziellen Wörterbüchern stehen, sind sie noch lange nicht „schlechter“ oder „falsch“!
|
||||
Pronomen entlehnt aus dem Plural die,die/:plural Durch Kombination von normativen Pronomen aus dem Plural lassen sich diese auch auf eine einzelne Person beziehen.
|
||||
neopronomen Neopronomen ähnlich zu englischem „they“ dej,dey,dey/denen/dem,dey/denen/demm,ey,they Durch die Popularität von {https://en.pronouns.page/they=they/them} gibt es einige Vorschläge diese direkt oder mit Anpassungen auch als deutsche Pronomen zu verwenden.
|
||||
neopronomen Neopronomen mit neuem Stamm el,em,en,en/em,ens,et,ex,hän,hen,hie,iks,ind,mensch,nin,oj,per,ser,y,zet,* Im Gegensatz zu anderen Pronomen, die offiziell als „grammatikalisch korrekt“ anerkannt werden, sind Neopronomen neu geschaffen. Doch nur weil sie (noch) nicht in offiziellen Wörterbüchern stehen, sind sie noch lange nicht „schlechter“ oder „falsch“!
|
||||
neopronomen Neopronomen durch Verschmelzung sier,xier,ersie Diese Neopronomen entstehen durch Verschmelzung der binären Pronomen, sodass diese als ein Wort ausgesprochen werden.
|
||||
sonderzeichen Pronomen mit Sonderzeichen er:sie,er*sie,er_sie Diese Pronomen benutzen Sonderzeichen, die der Trennung der Bestandteile dienen und vor einem Vokal als {https://de.wikipedia.org/wiki/Glottaler_Plosiv=Glottisschlag} ausgesprochen werden.
|
||||
|
|
@ -1,16 +1,21 @@
|
||||
key description normative pronoun_n pronoun_g pronoun_d pronoun_a possessive_f_n possessive_f_g possessive_f_d possessive_f_a possessive_m_n possessive_m_g possessive_m_d possessive_m_a possessive_n_n possessive_n_g possessive_n_d possessive_n_a article_n article_g article_d article_a demonstrative_n demonstrative_g demonstrative_d demonstrative_a plural pluralHonorific pronounceable history thirdForm smallForm sourcesInfo
|
||||
er,er/sein,er/ihm Maskulinum TRUE er seiner ihm ihn seine seiner seiner seine sein seines seinem seinen sein seines seinem sein der des dem den dieser dieses diesem diesen FALSE FALSE TRUE
|
||||
sie,sie/ihr Femininum TRUE sie ihrer ihr sie ihre ihrer ihrer ihre ihr ihres ihrem ihren ihr ihres ihrem ihr die der der die diese dieser dieser diese FALSE FALSE TRUE
|
||||
es,es/sein,es/ihm Neutrum TRUE es seiner ihm es seine seiner seiner seine sein seines seinem seinen sein seines seinem sein das des dem das dieses dieses diesem dieses FALSE FALSE TRUE
|
||||
es/ihr Neutrum mit femininen Formen FALSE es ihrer ihr es ihre ihrer ihrer ihre ihr ihres ihrem ihren ihr ihres ihrem ihr das der der das dieses dieser dieser dieses FALSE FALSE TRUE Wie {/es=„es/sein“}, wobei Wörter, bei denen das {/es=Neutrum} identisch mit dem {/er=Maskulinum} ist, durch {/sie=feminine} Formen ersetzt werden
|
||||
es/denen Neutrum mit inflexiven Formen FALSE es derer denen es deren deren deren deren deren deren deren deren deren deren deren deren das des dem das dieses dieses diesem dieses FALSE FALSE TRUE Wie {/es=„es/sein“}, wobei die meisten Wörter, bei denen das {/es=Neutrum} identisch mit dem {/er=Maskulinum} ist, durch inflexive Formen ersetzt werden, wie sie auch in {/dey/denen=„dey/denen“} verwendet werden
|
||||
dey,dey/denen Neopronomen „dey“ FALSE dey derer denen dey deren deren deren deren deren deren deren deren deren deren deren deren ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE Im Akkusativ ist ebenfalls {/dey/denen/demm=„demm”} üblich. pronoun_a
|
||||
dey/denen/demm Neopronomen „dey“ FALSE dey derer denen demm deren deren deren deren deren deren deren deren deren deren deren deren ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE Im Akkusativ ist ebenfalls {/dey/denen=„dey”} üblich. pronoun_a
|
||||
die,die/denen Neopronomen „die“ FALSE die derer denen die deren deren deren deren deren deren deren deren deren deren deren deren ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE
|
||||
key description normative pronoun_n pronoun_g pronoun_d pronoun_a possessive_f_n possessive_f_g possessive_f_d possessive_f_a possessive_m_n possessive_m_g possessive_m_d possessive_m_a possessive_n_n possessive_n_g possessive_n_d possessive_n_a relative_n relative_g relative_d relative_a demonstrative_n demonstrative_g demonstrative_d demonstrative_a plural pluralHonorific pronounceable history thirdForm smallForm sourcesInfo
|
||||
er,er/sein,er/ihm Maskulinum TRUE er seiner ihm ihn seine seiner seiner seine sein seines seinem seinen sein seines seinem sein der dessen dem den dieser dieses diesem diesen FALSE FALSE TRUE
|
||||
sie,sie/ihr Femininum TRUE sie ihrer ihr sie ihre ihrer ihrer ihre ihr ihres ihrem ihren ihr ihres ihrem ihr die deren der die diese dieser dieser diese FALSE FALSE TRUE
|
||||
es,es/sein,es/ihm Neutrum TRUE es seiner ihm es seine seiner seiner seine sein seines seinem seinen sein seines seinem sein das dessen dem das dieses dieses diesem dieses FALSE FALSE TRUE
|
||||
es/ihr Neutrum mit femininen Formen FALSE es ihrer ihr es ihre ihrer ihrer ihre ihr ihres ihrem ihren ihr ihres ihrem ihr das deren der das dieses dieser dieser dieses FALSE FALSE TRUE Wie {/es=„es/sein“}, wobei Wörter, bei denen das {/es=Neutrum} identisch mit dem {/er=Maskulinum} ist, durch {/sie=feminine} Formen ersetzt werden
|
||||
es/denen Neutrum mit inflexiven Formen FALSE es derer denen es deren deren deren deren deren deren deren deren deren deren deren deren das deren dem das dieses dieses diesem dieses FALSE FALSE TRUE Wie {/es=„es/sein“}, wobei die meisten Wörter, bei denen das {/es=Neutrum} identisch mit dem {/er=Maskulinum} ist, durch inflexive Formen ersetzt werden, wie sie auch in {/dey/denen=„dey/denen“} verwendet werden
|
||||
dej,dej/denen Neopronomen „dej“ FALSE dej|deɪ derer denen dej|deɪ deren deren deren deren deren deren deren deren deren deren deren deren ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE Wie {/dey/denen=„dey“}, allerdings mit einer stärker eingedeutschten Schreibweise pronoun_a
|
||||
dey,dey/denen Neopronomen „dey“ FALSE dey|deɪ derer denen dey|deɪ deren deren deren deren deren deren deren deren deren deren deren deren ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE Im Akkusativ ist ebenfalls {/dey/denen/demm=„dem”} bzw. {/dey/denen/demm=„demm”} üblich pronoun_a
|
||||
dey/denen/dem Neopronomen „dey“ FALSE dey|deɪ derer denen dem|dɛm deren deren deren deren deren deren deren deren deren deren deren deren ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE Im Akkusativ ist ebenfalls {/dey/denen=„dey”} üblich. Wie {/dey/denen/demm=„demm”}, allerdings näher an der englischen Schreibweise pronoun_a
|
||||
dey/denen/demm Neopronomen „dey“ FALSE dey|deɪ derer denen demm|dɛm deren deren deren deren deren deren deren deren deren deren deren deren ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE Im Akkusativ ist ebenfalls {/dey/denen=„dey”} üblich. Wie {/dey/denen/dem=„dem”}, allerdings mit einer stärker eingedeutschten Schreibweise pronoun_a
|
||||
die,die/denen Pronomen „die“ (Singular) FALSE die derer denen die deren deren deren deren deren deren deren deren deren deren deren deren die deren denen die diese dieser dieser diese FALSE FALSE TRUE
|
||||
die/:plural,die/denen/:plural Pronomen „die“ (Plural) FALSE die derer denen die deren deren deren deren deren deren deren deren deren deren deren deren die deren denen die diese dieser diesen diese TRUE FALSE TRUE
|
||||
el,el/em Neopronomen „el“ FALSE el|ɛl emser|ɛmzɐ em|ɛm en|ɛn emse|ɛmzə emser|ɛmzɐ emser|ɛmzɐ emse|ɛmzə ems|ɛmz emses|ɛmzəs emsem|ɛmzəm emsen|ɛmzən ems|ɛmz emses|ɛmzəs emsem|ɛmzəm ems|ɛmz ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE
|
||||
em,em/em Neopronomen „em“ FALSE em|ɛm emser|ɛmzɐ em|ɛm em|ɛm ems|ɛmz ems|ɛmz ems|ɛmz ems|ɛmz ems|ɛmz ems|ɛmz ems|ɛmz ems|ɛmz ems|ɛmz ems|ɛmz ems|ɛmz ems|ɛmz ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE
|
||||
en,en/en Neopronomen „en“ FALSE en|ɛn enser|ɛnzɐ en|ɛn en|ɛn ense|ɛnzə enser|ɛnzɐ enser|ɛnzɐ ense|ɛnzə enses|ɛnzəs enses|ɛnzəs ensem|ɛnzəm ensen|ɛnzən ens|ɛnz enses|ɛnzəs ensem|ɛnzəm ens|ɛnz de|deː ders|dɛrz derm|dɛrm de|deː de|deː dersen|dɛrzən derm|dɛrm de|deː FALSE FALSE TRUE Erstellt vom österreichischen LGBTIQA+-Kongress 2018 in St. Pölten
|
||||
en/em Neopronomen „en“ FALSE en|ɛn enser|ɛnzɐ em|ɛm en|ɛn ense|ɛnzə enser|ɛnzɐ enser|ɛnzɐ ense|ɛnzə ens|ɛnz enses|ɛnzəs ensem|ɛnzəm ensen|ɛnzən ens|ɛnz enses|ɛnzəs ensem|ɛnzəm ens|ɛnz de|deː ders|dɛrz derm|dɛrm de|deː de|deː dersen|dɛrzən derm|dɛrm de|deː FALSE FALSE TRUE Erstellt vom {https://geschlechtsneutral.net/=Verein für geschlechtsneutrales Deutsch}
|
||||
ens Neopronomen „ens“ FALSE ens|ɛnz ens|ɛnz ens|ɛnz ens|ɛnz ens|ɛnz ens|ɛnz ens|ɛnz ens|ɛnz ens|ɛnz ens|ɛnz ens|ɛnz ens|ɛnz ens|ɛnz ens|ɛnz ens|ɛnz ens|ɛnz dens|dɛnz dens|dɛnz dens|dɛnz dens|dɛnz dens|dɛnz dens|dɛnz dens|dɛnz dens|dɛnz FALSE FALSE TRUE Vorgestellt von Lann Hornscheidt
|
||||
ex Neopronome „ex“ FALSE ex ex ex ex ex ex ex ex ex ex ex ex ex ex ex ex ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE Vorgestellt von {https://www.lannhornscheidt.com/w_ortungen/nonbinare-w_ortungen/=Lann Hornscheidt und Lio Oppenländer}@„ex“ steht für Exit Gender und soll in Abgrenzung zu anderen Formen explizit beschreiben, dass sich eine Person nicht über Gender versteht
|
||||
ey,ey/emm Neopronomen „ey“ FALSE ey eyser emm emm eyse eyser eyser eyse eys eyses eysem eysen eys eyses eysem eys ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE
|
||||
et,et/siem Neopronomen „et“ FALSE et sierer siem sien siere sierer sierer siere sier sieres sierem sieren sier sieres sierem sieren dat diesers diem dien dieset ~ diesigen diesetne FALSE FALSE TRUE
|
||||
hän,hän/sim Neopronomen „hän“ FALSE hän sirer sim sin sire sirer sirer sire sir sires sirem siren sir sires sirem siren ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE
|
||||
@ -24,8 +29,10 @@ oj,oj/juj,oj/ojm Neopronomen „oj“ FALSE oj jujer ojm ojn juje jujer jujer ju
|
||||
per,per/per Neopronomen „per“ FALSE per perer per per pers pers pers pers pers pers pers pers pers pers pers pers ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE Vom Wort „Person“
|
||||
ser,ser/sem Neopronomen „ser“ FALSE ser seser sem sen ses ses ses ses ses ses ses ses ses ses ses ses ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE
|
||||
sier,sier/siem Neopronomen „sier“ FALSE sier|zi:ɐ̯ sieser|zi:sɐ siem|zi:m sien|zi:n siese|zi:zə sieser|zi:zɐ sieser|zi:zɐ siese|zi:zə sies|zi:z sieses|zi:zəs siesem|zi:zəm siesen|zi:zən sies|zi:z sieses|zi:zəs siesem|zi:zəm sies|zi:z dier|di:ɐ̯ dies|di:s diem|di:m dien|di:n dier|di:ɐ̯ dies|di:s diem|di:m dien|di:n FALSE FALSE TRUE Erstellt von {https://www.annaheger.de/pronomen21/=Illi Anna Heger}
|
||||
they,they/them Äquivalent zu englischem „they“ FALSE they them them them their their their their their their their their their their their their ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE Aus dem Englischen, sieh: {https://en.pronouns.page/they=they/them}
|
||||
xier,xier/xiem Neopronomen „xier“ FALSE xier|ksi:ɐ̯ xieser|ksi:sɐ xiem|ksi:m xien|ksi:n xiese|ksi:zə xieser|ksi:ɐ̯sɐ xieser|ksi:ɐ̯sɐ xiese|ksi:zə xies|ksi:z xieses|ksi:zəs xiesem|ksi:zəm xiesen|ksi:zən xies|ksi:z xieses|ksi:zəs xiesem|ksi:zəm xies|ksi:z dier|di:ɐ̯ dies|di:s diem|di:m dien|di:n dier|di:ɐ̯ dies|di:s diem|di:m dien|di:n FALSE FALSE TRUE Erstellt von {https://www.annaheger.de/pronomen33/=Illi Anna Heger}.
|
||||
they,they/them Äquivalent zu englischem „they“ FALSE they them them them their their their their their their their their their their their their ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE Aus dem Englischen, siehe: {https://en.pronouns.page/they=they/them}
|
||||
xier,xier/xiem Neopronomen „xier“ FALSE xier|ksi:ɐ̯ xieser|ksi:sɐ xiem|ksi:m xien|ksi:n xiese|ksi:zə xieser|ksi:ɐ̯sɐ xieser|ksi:ɐ̯sɐ xiese|ksi:zə xies|ksi:z xieses|ksi:zəs xiesem|ksi:zəm xiesen|ksi:zən xies|ksi:z xieses|ksi:zəs xiesem|ksi:zəm xies|ksi:z dier|di:ɐ̯ dies|di:s diem|di:m dien|di:n dier|di:ɐ̯ dies|di:s diem|di:m dien|di:n FALSE FALSE TRUE Erstellt von {https://www.annaheger.de/pronomen33/=Illi Anna Heger}
|
||||
y Neopronomen „Y“ FALSE Y|waɪ Y|waɪ Y|waɪ Y|waɪ Ys|waɪz Ys|waɪz Ys|waɪz Ys|waɪz Ys|waɪz Ys|waɪz Ys|waɪz Ys|waɪz Ys|waɪz Ys|waɪz Ys|waɪz Ys|waɪz ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE Ausgeprochen wie das englische Fragewort „why“ („warum“)
|
||||
*,stern Neopronomen „*“ (Stern) FALSE *|ʃtɛʁn *|ʃtɛʁn *|ʃtɛʁn *|ʃtɛʁn *s|ʃtɛʁnz *s|ʃtɛʁnz *s|ʃtɛʁnz *s|ʃtɛʁnz *s|ʃtɛʁnz *s|ʃtɛʁnz *s|ʃtɛʁnz *s|ʃtɛʁnz *s|ʃtɛʁnz *s|ʃtɛʁnz *s|ʃtɛʁnz *s|ʃtɛʁnz ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE Ausgeprochen wie „Stern“
|
||||
zet,zet/zerm Neopronomen „zet“ FALSE zet zerner zerm zern zets zets zets zets zets zets zets zets zets zets zets zets ~ ~ ~ ~ ~ ~ ~ ~ FALSE FALSE TRUE
|
||||
er_sie,er_sie/ihm_ihr Neopronomen „er_sie“ FALSE er_sie seiner_ihrer ihm_ihr ihn_sie seine_ihre seiner_ihrer seiner_ihrer seine_ihre sein_ihr seines_ihres seinem_ihrem seinen_ihren sein_ihr seines_ihres seinem_ihrem sein_ihr der_die des_der dem_der den_die diese_r dieses_dieser diesem_dieser diese_n FALSE FALSE FALSE
|
||||
er*sie,er*sie/ihm*ihr Neopronomen „er*sie“ FALSE er*sie seiner*ihrer ihm*ihr ihn*sie seine*ihre seiner*ihrer seiner*ihrer seine*ihre sein*ihr seines*ihres seinem*ihrem seinen*ihren sein*ihr seines*ihres seinem*ihrem sein*ihr der*die des*der dem*der den*die diese*r dieses*dieser diesem*dieser diese*n FALSE FALSE FALSE
|
||||
|
|
@ -88,6 +88,7 @@
|
||||
"css-loader": "^5.2.7",
|
||||
"csv-loader": "^3.0.3",
|
||||
"eslint": "^8.55.0",
|
||||
"eslint-formatter-gitlab": "^5.1.0",
|
||||
"eslint-plugin-import": "^2.29.0",
|
||||
"eslint-plugin-jsonc": "^2.11.2",
|
||||
"eslint-plugin-vue": "^9.19.2",
|
||||
@ -95,6 +96,7 @@
|
||||
"globals": "^13.24.0",
|
||||
"html-loader": "^1.3.2",
|
||||
"jest": "^29.7.0",
|
||||
"jest-junit": "^16.0.0",
|
||||
"markdown-loader": "^6.0.0",
|
||||
"postcss": "^8.2.15",
|
||||
"postcss-import": "^13.0.0",
|
||||
|
@ -369,11 +369,11 @@ export default {
|
||||
}
|
||||
} else {
|
||||
const customOpinion = profile.opinions[opinion];
|
||||
if (customOpinion !== undefined
|
||||
&& customOpinion.colour !== 'grey'
|
||||
&& customOpinion.style !== 'small'
|
||||
&& !['ban', 'slash'].includes(customOpinion.icon)
|
||||
&& !(customOpinion.icon || '').endsWith('-slash')
|
||||
if (customOpinion !== undefined &&
|
||||
customOpinion.colour !== 'grey' &&
|
||||
customOpinion.style !== 'small' &&
|
||||
!['ban', 'slash'].includes(customOpinion.icon) &&
|
||||
!(customOpinion.icon || '').endsWith('-slash')
|
||||
) {
|
||||
best.push(pronoun);
|
||||
}
|
||||
|
23
yarn.lock
23
yarn.lock
@ -5578,6 +5578,14 @@ eslint-compat-utils@^0.1.1, eslint-compat-utils@^0.1.2:
|
||||
resolved "https://registry.yarnpkg.com/eslint-compat-utils/-/eslint-compat-utils-0.1.2.tgz#f45e3b5ced4c746c127cf724fb074cd4e730d653"
|
||||
integrity sha512-Jia4JDldWnFNIru1Ehx1H5s9/yxiRHY/TimCuUc0jNexew3cF1gI6CYZil1ociakfWO3rRqFjl1mskBblB3RYg==
|
||||
|
||||
eslint-formatter-gitlab@^5.1.0:
|
||||
version "5.1.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint-formatter-gitlab/-/eslint-formatter-gitlab-5.1.0.tgz#33162a17eefba5a44a257af568511d360212e866"
|
||||
integrity sha512-IxhrjLYzDlbFgPWEnvZlWLwPjMeyymbyo0hDHWntZ3DSAP9AP9huj15KbU+BK3OqeO3OHhbFEh2TA6sR0KZhkA==
|
||||
dependencies:
|
||||
chalk "^4.0.0"
|
||||
yaml "^2.0.0"
|
||||
|
||||
eslint-import-resolver-node@^0.3.9:
|
||||
version "0.3.9"
|
||||
resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz#d4eaac52b8a2e7c3cd1903eb00f7e053356118ac"
|
||||
@ -7897,6 +7905,16 @@ jest-haste-map@^29.7.0:
|
||||
optionalDependencies:
|
||||
fsevents "^2.3.2"
|
||||
|
||||
jest-junit@^16.0.0:
|
||||
version "16.0.0"
|
||||
resolved "https://registry.yarnpkg.com/jest-junit/-/jest-junit-16.0.0.tgz#d838e8c561cf9fdd7eb54f63020777eee4136785"
|
||||
integrity sha512-A94mmw6NfJab4Fg/BlvVOUXzXgF0XIH6EmTgJ5NDPp4xoKq0Kr7sErb+4Xs9nZvu58pJojz5RFGpqnZYJTrRfQ==
|
||||
dependencies:
|
||||
mkdirp "^1.0.4"
|
||||
strip-ansi "^6.0.1"
|
||||
uuid "^8.3.2"
|
||||
xml "^1.0.1"
|
||||
|
||||
jest-leak-detector@^29.7.0:
|
||||
version "29.7.0"
|
||||
resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz#5b7ec0dadfdfec0ca383dc9aa016d36b5ea4c728"
|
||||
@ -13841,6 +13859,11 @@ xml2js@0.5.0:
|
||||
sax ">=0.6.0"
|
||||
xmlbuilder "~11.0.0"
|
||||
|
||||
xml@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/xml/-/xml-1.0.1.tgz#78ba72020029c5bc87b8a81a3cfcd74b4a2fc1e5"
|
||||
integrity sha512-huCv9IH9Tcf95zuYCsQraZtWnJvBtLVE0QHMOs8bWyZAFZNDcYjsPq1nEx8jKA9y+Beo9v+7OBPRisQTjinQMw==
|
||||
|
||||
xmlbuilder@~11.0.0:
|
||||
version "11.0.1"
|
||||
resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3"
|
||||
|
Loading…
x
Reference in New Issue
Block a user