[nouns] reorganise nullpronominal
This commit is contained in:
parent
6afdf8bbda
commit
24c95ae0c0
|
@ -0,0 +1,40 @@
|
|||
<template>
|
||||
<div v-if="config.pronouns.null && config.pronouns.null.ideas && config.pronouns.null.ideas.length">
|
||||
<section v-for="idea in config.pronouns.null.ideas">
|
||||
<h3>{{idea.header}}</h3>
|
||||
<p v-if="idea.description">
|
||||
{{idea.description}}
|
||||
</p>
|
||||
<ul>
|
||||
<li v-for="[exampleFrom, exampleTo] in idea.examples">
|
||||
<LinkedText :text="exampleFrom"/> → <strong><LinkedText :text="exampleTo"/></strong>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<section v-if="sources && sources[''].length">
|
||||
<Literature :sources="sources"/>
|
||||
</section>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {SourceLibrary} from "../src/classes";
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
sources: undefined,
|
||||
}
|
||||
},
|
||||
async mounted() {
|
||||
if (!this.config.pronouns.null.routes) {
|
||||
return;
|
||||
}
|
||||
const key = this.config.pronouns.null.routes[0];
|
||||
this.sources = {
|
||||
'': new SourceLibrary(await this.$axios.$get(`/sources?pronoun=${key}`)).getForPronoun(key),
|
||||
};
|
||||
},
|
||||
};
|
||||
</script>
|
|
@ -137,12 +137,18 @@
|
|||
});
|
||||
|
||||
if (this.config.pronouns.enabled) {
|
||||
const extra = ['all', '/' + this.config.pronouns.any]
|
||||
if (this.config.pronouns.null && this.config.pronouns.null.routes) {
|
||||
for (let route of this.config.pronouns.null.routes) {
|
||||
extra.push('/' + route);
|
||||
}
|
||||
}
|
||||
links.push({
|
||||
link: '/' + this.config.pronouns.route,
|
||||
icon: 'tags',
|
||||
text: this.$t('pronouns.header'),
|
||||
textLong: this.$t('pronouns.headerLong').replace( /(<([^>]+)>)/ig, ''),
|
||||
extra: ['all', '/' + this.config.pronouns.any, this.config.pronouns.avoiding ? '/' + this.config.pronouns.avoiding : null],
|
||||
extra: extra,
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
@ -7,8 +7,13 @@
|
|||
props: {
|
||||
text: { required: true },
|
||||
noicons: { type: Boolean },
|
||||
escape: { type: Boolean },
|
||||
},
|
||||
render(h) {
|
||||
let text = this.text;
|
||||
if (this.escape) {
|
||||
text = text.replace(/[&<>"]/g, tag => escapeChars[tag] || tag);
|
||||
}
|
||||
if (!this.text) {
|
||||
return h('span');
|
||||
}
|
||||
|
|
|
@ -138,7 +138,9 @@
|
|||
link = link.toLowerCase();
|
||||
}
|
||||
|
||||
if (link === this.config.pronouns.any || link === this.config.pronouns.avoiding) {
|
||||
if (link === this.config.pronouns.any
|
||||
|| (this.config.pronouns.null && this.config.pronouns.null.routes && this.config.pronouns.null.routes.includes(link))
|
||||
) {
|
||||
pronounOpinions.push({
|
||||
link,
|
||||
pronoun: link,
|
||||
|
|
|
@ -16,7 +16,6 @@ pronouns:
|
|||
null: false
|
||||
emoji: false
|
||||
slashes: ['pronoun_n', 'possessive', 'pronoun_d', 'pronoun_a']
|
||||
avoiding: false
|
||||
others: 'Andere Pronomen'
|
||||
|
||||
pronunciation:
|
||||
|
|
|
@ -17,12 +17,14 @@ pronouns:
|
|||
Some like when others alternate between those forms when talking about them.
|
||||
examples: ['he&she', 'he&they', 'she&they']
|
||||
null:
|
||||
description: 'No pronouns / null pronouns / pronounless / nameself'
|
||||
description: >
|
||||
{/avoiding=Avoiding gendered forms} / {/no-pronouns=no pronouns} / {/null=null pronouns} /
|
||||
{/pronounless=pronounless} / {/nullpronominal=nullpronominal} / {/nameself=nameself}
|
||||
history: >
|
||||
Some people prefer not using any pronouns, instead being referred by name, initial,
|
||||
omitting pronouns with passive voice, or restructuring the sentence. See:
|
||||
{/avoiding=Avoiding gendered forms} &
|
||||
{https://lgbta.wikia.org/wiki/Nullpronominal=Nullpronominal}.
|
||||
omitting pronouns with passive voice, or restructuring the sentence.
|
||||
See: {https://twitter.com/lypomania/status/1290274971642544128=lypomania's guide},
|
||||
{https://lgbta.wikia.org/wiki/Nullpronominal=Nullpronominal on LGBTA Wiki}
|
||||
morphemes:
|
||||
pronoun_subject: '#'
|
||||
pronoun_object: '#'
|
||||
|
@ -31,6 +33,39 @@ pronouns:
|
|||
reflexive: '#self'
|
||||
examples: [':Andrea', ':S']
|
||||
template: 'Open one of the examples and simply replace the name/initial in the URL with your own.'
|
||||
routes: ['avoiding', 'no-pronouns', 'null', 'pronounless', 'nullpronominal', 'nameself']
|
||||
ideas:
|
||||
-
|
||||
header: 'Use names or initials instead of pronouns'
|
||||
examples:
|
||||
- ['I talked to him yesterday', 'I talked to {/:Sky=Sky} yesterday']
|
||||
- ['She is really beautiful', '{/:Soph=Soph} is really beautiful']
|
||||
-
|
||||
- 'Her graduation starts soon'
|
||||
- '{/:J=J}''s graduation starts soon'
|
||||
-
|
||||
header: 'Passive voice'
|
||||
examples:
|
||||
- ['He answered the phone', 'The phone was answered']
|
||||
-
|
||||
- 'Wen takes good care of her cat'
|
||||
- 'Wen''s cat is well cared for'
|
||||
-
|
||||
header: 'Rephrasing the sentence (circumlocution)'
|
||||
examples:
|
||||
- ['Lior did it all by himself', 'Lior did it all without any help']
|
||||
- ['Gael talks in his sleep', 'Gael talks while sleeping']
|
||||
-
|
||||
header: 'Replacing a pronoun with a descriptive noun or phrase'
|
||||
examples:
|
||||
- ['She landed the plane safely', 'The pilot landed the plane safely']
|
||||
- ['This is Lea, she is into painting', 'This is Lea. My friend is into painting']
|
||||
- ['She argues that…', 'The person who started this discussion argues that…']
|
||||
-
|
||||
header: 'Dropping pronouns'
|
||||
examples:
|
||||
- ['Did you buy Tex her gift?', 'Did you buy Tex a gift?']
|
||||
- ['Yes, I bought it for her. I will give it to her tomorrow.', 'Yes, I bought it. I will give it tomorrow.']
|
||||
emoji:
|
||||
description: 'Emojiself pronouns'
|
||||
history: '{https://lgbta.wikia.org/wiki/Emojiself_Pronouns=Emojiself} pronouns are intended for online communication and not supposed to be pronounced.'
|
||||
|
@ -43,7 +78,6 @@ pronouns:
|
|||
examples: ['💫', '💙']
|
||||
template: 'Open one of the examples and simply replace the emoji in the URL with your own.'
|
||||
slashes: true
|
||||
avoiding: 'avoiding'
|
||||
others: 'Other pronouns'
|
||||
|
||||
pronunciation:
|
||||
|
|
|
@ -82,45 +82,6 @@ pronouns:
|
|||
othersRaw: 'other'
|
||||
or: 'or'
|
||||
grammarTable: 'Table'
|
||||
avoiding:
|
||||
header: 'Avoiding gendered forms'
|
||||
description: >
|
||||
Some people prefer not using any pronouns, instead being referred by name, initial,
|
||||
omitting pronouns with passive voice, or restructuring the sentence.
|
||||
See: {https://twitter.com/lypomania/status/1290274971642544128=@lypomania's guide},
|
||||
{https://lgbta.wikia.org/wiki/Nullpronominal=Nullpronominal}
|
||||
ideas:
|
||||
-
|
||||
header: 'Use names or initials instead of pronouns'
|
||||
examples:
|
||||
- ['I talked to him yesterday', 'I talked to {/:Sky=Sky} yesterday']
|
||||
- ['She is really beautiful', '{/:Soph=Soph} is really beautiful']
|
||||
-
|
||||
- 'Her graduation starts soon'
|
||||
- '{/:J=J}''s graduation starts soon'
|
||||
-
|
||||
header: 'Passive voice'
|
||||
examples:
|
||||
- ['He answered the phone', 'The phone was answered']
|
||||
-
|
||||
- 'Wen takes good care of her cat'
|
||||
- 'Wen''s cat is well cared for'
|
||||
-
|
||||
header: 'Rephrasing the sentence (circumlocution)'
|
||||
examples:
|
||||
- ['Lior did it all by himself', 'Lior did it all without any help']
|
||||
- ['Gael talks in his sleep', 'Gael talks while sleeping']
|
||||
-
|
||||
header: 'Replacing a pronoun with a descriptive noun or phrase'
|
||||
examples:
|
||||
- ['She landed the plane safely', 'The pilot landed the plane safely']
|
||||
- ['This is Lea, she is into painting', 'This is Lea. My friend is into painting']
|
||||
- ['She argues that…', 'The person who started this discussion argues that…']
|
||||
-
|
||||
header: 'Dropping pronouns'
|
||||
examples:
|
||||
- ['Did you buy Tex her gift?', 'Did you buy Tex a gift?']
|
||||
- ['Yes, I bought it for her. I will give it to her tomorrow.', 'Yes, I bought it. I will give it tomorrow.']
|
||||
|
||||
sources:
|
||||
header: 'Sources'
|
||||
|
|
|
@ -16,7 +16,6 @@ pronouns:
|
|||
null: false
|
||||
emoji: false
|
||||
slashes: false
|
||||
avoiding: false
|
||||
others: 'Otros pronombres'
|
||||
|
||||
pronunciation:
|
||||
|
|
|
@ -19,7 +19,6 @@ pronouns:
|
|||
null: false
|
||||
emoji: false
|
||||
slashes: true
|
||||
avoiding: false
|
||||
others: 'Autres pronoms'
|
||||
|
||||
pronunciation:
|
||||
|
|
|
@ -36,7 +36,6 @@ pronouns:
|
|||
examples: ['💫', '💙']
|
||||
template: 'Open een van de voorbeelden en vervang de emoji in de URL met jouw eigen emoji.'
|
||||
slashes: true
|
||||
avoiding: false
|
||||
others: 'Andere voornaamwoorden'
|
||||
threeForms: true
|
||||
|
||||
|
|
|
@ -18,7 +18,6 @@ pronouns:
|
|||
null: false
|
||||
emoji: false
|
||||
slashes: true
|
||||
avoiding: false
|
||||
others: 'Andre pronomen'
|
||||
|
||||
pronunciation:
|
||||
|
|
|
@ -79,7 +79,6 @@ pronouns:
|
|||
othersRaw: 'andre'
|
||||
or: 'eller'
|
||||
grammarTable: 'Tabell'
|
||||
avoiding: false
|
||||
|
||||
sources:
|
||||
header: 'Kilder'
|
||||
|
|
|
@ -46,8 +46,100 @@ pronouns:
|
|||
honorific: '#'
|
||||
examples: ['💫', '💙', '🐿']
|
||||
template: 'Otwórz dowolny z przykładów i podmień emoji w URLu na swoje.'
|
||||
null: false
|
||||
avoiding: 'unikanie'
|
||||
null:
|
||||
description: '{/unikanie=Unikanie form nacechowanych płciowo}'
|
||||
history: >
|
||||
Niektóre osoby niebinarne preferują używanie form unikających precyzowania płci
|
||||
zamiast tych nacechowanych czy to binarnie czy niebinarnie.
|
||||
Warto też używać ich mówiąc o osobach, których płci nie znamy.
|
||||
Choć w silnie zgenderyzowanym języku polskim jest to względnie trudne do zrobienia
|
||||
i może lekko zmieniać znaczenie zdania,
|
||||
to jednak wcale nie jest niemożliwe.
|
||||
routes: ['unikanie']
|
||||
ideas:
|
||||
-
|
||||
header: 'Zmiana podmiotu zdania'
|
||||
examples:
|
||||
- [ 'usłyszałam dzwonek telefonu', 'zadzwonił telefon' ]
|
||||
- [ 'przestraszyłem się nagłego hałasu', 'jakiś nagły hałas mnie przestraszył' ]
|
||||
- [ 'powinieneś skoczyć do sklepu', 'trzeba by skoczyć do sklepu' ]
|
||||
-
|
||||
header: 'Strona bierna'
|
||||
examples:
|
||||
- [ 'zgubił telefon', 'telefon został zgubiony' ]
|
||||
- [ 'znalazłam telefon', 'telefon został znaleziony' ]
|
||||
-
|
||||
header: 'Forma bezosobowa'
|
||||
examples:
|
||||
- [ 'pani w urzędzie powiedziała mi', 'w urzędzie powiedziano mi' ]
|
||||
- [ 'znalazłam telefon', 'znaleziono telefon' ]
|
||||
- [ 'jak jesteś zalogowany, to możesz edytować wpisy', 'jak się jest zalogowanym, można edytować wpisy' ]
|
||||
-
|
||||
header: 'Bezosobowe użycie 3. os. mnogiej'
|
||||
examples:
|
||||
- [ 'pani w urzędzie powiedziała mi', 'w urzędzie powiedzieli mi' ]
|
||||
-
|
||||
header: 'Podmiot logiczny w celowniku'
|
||||
examples:
|
||||
- [ 'przypomniałem sobie', 'przypomniało mi się' ]
|
||||
- [ 'zmarzłam', 'zrobiło mi się zimno' ]
|
||||
- [ 'zrobiłem', 'udało mi się zrobić' ]
|
||||
-
|
||||
header: 'Bezokolicznikowy czas przyszły'
|
||||
examples:
|
||||
- [ 'będę robiła', 'będę robić' ]
|
||||
- [ 'będę jadł', 'będę jeść' ]
|
||||
-
|
||||
header: 'Czas teraźniejszy i przyszły zamiast przeszłego'
|
||||
examples:
|
||||
- [ 'gdy robiłem wczoraj obiad, skaleczyłem się nożem', 'robię wczoraj obiad i jak się nie skaleczę' ]
|
||||
-
|
||||
header: 'Imiesłowy'
|
||||
examples:
|
||||
- [ 'usiadłem na kanapie', 'usiadłszy na kanapie' ]
|
||||
- [ 'wypiłam herbatę', 'wypiwszy herbatę' ]
|
||||
- [ 'posprzątałem mieszkanie', 'mieszkanie posprzątane' ]
|
||||
-
|
||||
header: 'Unikanie trybu przypuszczającego'
|
||||
examples:
|
||||
- [ 'czy mógłbyś mi pomóc?', 'czy możesz mi pomóc?' ]
|
||||
- [ 'może bym tak pojechała na wakacje?', 'może pojadę na wakacje?' ]
|
||||
-
|
||||
header: 'Osobatywy i inne normatywne neutralne rzeczowniki'
|
||||
examples:
|
||||
- [ 'zarządca', 'osoba zarządzająca' ]
|
||||
- [ 'kandydaci i kandydatki', 'osoby kandydujące' ]
|
||||
- [ 'proszę przyjść do szkoły z mamą lub tatą', 'proszę przyjść do szkoły z opiekunem' ]
|
||||
- [ 'mama i tata Ani są bardzo mili', 'rodzice Ani są bardzo mili' ]
|
||||
- [ 'dziennikarze oko.press', 'redakcja oko.press' ]
|
||||
- [ 'fani Mariny', 'fandom Mariny' ]
|
||||
-
|
||||
header: 'Skrócone zaimki'
|
||||
description: 'Choć historycznie formy te są męskie, to współcześnie są na tyle rzadko używanie, że warto próbować je reinterpretować.'
|
||||
examples:
|
||||
- [ 'to dla niego', 'to dlań' ]
|
||||
- [ 'mieszkam u niej', 'mieszkam uń' ]
|
||||
-
|
||||
header: 'Skrócone zaimki + strona bierna'
|
||||
description: 'Choć historycznie formy te są męskie, to współcześnie są na tyle rzadko używanie, że warto próbować je reinterpretować.'
|
||||
examples:
|
||||
- [ 'zrobiła', 'było przezeń zrobione' ]
|
||||
-
|
||||
header: 'Staropolska, rzeczownikowa odmiana przymiotników'
|
||||
description: 'Choć historycznie formy te są męskie, to współcześnie są na tyle rzadko używanie, że warto próbować je reinterpretować.'
|
||||
examples:
|
||||
- [ 'jestem szczęśliwa!', 'jestem szczęśliw!' ]
|
||||
- [ 'czemu jesteś taki zmartwiony?', 'czemu jesteś tak zmartwion?' ]
|
||||
-
|
||||
header: 'Skróty'
|
||||
examples:
|
||||
- [ 'Katarzyna Nowak', 'K. Nowak' ]
|
||||
- [ 'Szanowny Pan Białek', 'Sz. P. Białek' ]
|
||||
- [ 'Towarzyszka Q', 'Tow. Q' ]
|
||||
-
|
||||
header: 'Liczebniki zbiorowe'
|
||||
examples:
|
||||
- [ 'dziesięciu pracowników', 'dziesięcioro pracujących' ]
|
||||
others: 'Pozostałe formy'
|
||||
|
||||
pronunciation:
|
||||
|
|
|
@ -90,100 +90,6 @@ pronouns:
|
|||
Choć dla wielu osób niezmiernie ważne jest, by używać wobec nich konkretnych zaimków,
|
||||
innym nie przeszkadza zwracanie się w dowolny sposób – o ile wiadomo z kontekstu, że to o nich mowa.
|
||||
options: 'przejrzyj listę możliwości [share]{/zaimki=tutaj}.'
|
||||
avoiding:
|
||||
header: 'Unikanie form nacechowanych płciowo'
|
||||
description: >
|
||||
Niektóre osoby niebinarne preferują używanie form unikających precyzowania płci
|
||||
zamiast tych nacechowanych czy to binarnie czy niebinarnie.
|
||||
Warto też używać ich mówiąc o osobach, których płci nie znamy.
|
||||
Choć w silnie zgenderyzowanym języku polskim jest to względnie trudne do zrobienia
|
||||
i może lekko zmieniać znaczenie zdania,
|
||||
to jednak wcale nie jest niemożliwe.
|
||||
ideas:
|
||||
-
|
||||
header: 'Zmiana podmiotu zdania'
|
||||
examples:
|
||||
- ['usłyszałam dzwonek telefonu', 'zadzwonił telefon']
|
||||
- ['przestraszyłem się nagłego hałasu', 'jakiś nagły hałas mnie przestraszył']
|
||||
- ['powinieneś skoczyć do sklepu', 'trzeba by skoczyć do sklepu']
|
||||
-
|
||||
header: 'Strona bierna'
|
||||
examples:
|
||||
- ['zgubił telefon', 'telefon został zgubiony']
|
||||
- ['znalazłam telefon', 'telefon został znaleziony']
|
||||
-
|
||||
header: 'Forma bezosobowa'
|
||||
examples:
|
||||
- ['pani w urzędzie powiedziała mi', 'w urzędzie powiedziano mi']
|
||||
- ['znalazłam telefon', 'znaleziono telefon']
|
||||
- ['jak jesteś zalogowany, to możesz edytować wpisy', 'jak się jest zalogowanym, można edytować wpisy']
|
||||
-
|
||||
header: 'Bezosobowe użycie 3. os. mnogiej'
|
||||
examples:
|
||||
- ['pani w urzędzie powiedziała mi', 'w urzędzie powiedzieli mi']
|
||||
-
|
||||
header: 'Podmiot logiczny w celowniku'
|
||||
examples:
|
||||
- ['przypomniałem sobie', 'przypomniało mi się']
|
||||
- ['zmarzłam', 'zrobiło mi się zimno']
|
||||
- ['zrobiłem', 'udało mi się zrobić']
|
||||
-
|
||||
header: 'Bezokolicznikowy czas przyszły'
|
||||
examples:
|
||||
- ['będę robiła', 'będę robić']
|
||||
- ['będę jadł', 'będę jeść']
|
||||
-
|
||||
header: 'Czas teraźniejszy i przyszły zamiast przeszłego'
|
||||
examples:
|
||||
- ['gdy robiłem wczoraj obiad, skaleczyłem się nożem', 'robię wczoraj obiad i jak się nie skaleczę']
|
||||
-
|
||||
header: 'Imiesłowy'
|
||||
examples:
|
||||
- ['usiadłem na kanapie', 'usiadłszy na kanapie']
|
||||
- ['wypiłam herbatę', 'wypiwszy herbatę']
|
||||
- ['posprzątałem mieszkanie', 'mieszkanie posprzątane']
|
||||
-
|
||||
header: 'Unikanie trybu przypuszczającego'
|
||||
examples:
|
||||
- ['czy mógłbyś mi pomóc?', 'czy możesz mi pomóc?']
|
||||
- ['może bym tak pojechała na wakacje?', 'może pojadę na wakacje?']
|
||||
-
|
||||
header: 'Osobatywy i inne normatywne neutralne rzeczowniki'
|
||||
examples:
|
||||
- ['zarządca', 'osoba zarządzająca']
|
||||
- ['kandydaci i kandydatki', 'osoby kandydujące']
|
||||
- ['proszę przyjść do szkoły z mamą lub tatą', 'proszę przyjść do szkoły z opiekunem']
|
||||
- ['mama i tata Ani są bardzo mili', 'rodzice Ani są bardzo mili']
|
||||
- ['dziennikarze oko.press', 'redakcja oko.press']
|
||||
- ['fani Mariny', 'fandom Mariny']
|
||||
-
|
||||
header: 'Skrócone zaimki'
|
||||
description: 'Choć historycznie formy te są męskie, to współcześnie są na tyle rzadko używanie, że warto próbować je reinterpretować.'
|
||||
examples:
|
||||
- ['to dla niego', 'to dlań']
|
||||
- ['mieszkam u niej', 'mieszkam uń']
|
||||
-
|
||||
header: 'Skrócone zaimki + strona bierna'
|
||||
description: 'Choć historycznie formy te są męskie, to współcześnie są na tyle rzadko używanie, że warto próbować je reinterpretować.'
|
||||
examples:
|
||||
- ['zrobiła', 'było przezeń zrobione']
|
||||
-
|
||||
header: 'Staropolska, rzeczownikowa odmiana przymiotników'
|
||||
description: 'Choć historycznie formy te są męskie, to współcześnie są na tyle rzadko używanie, że warto próbować je reinterpretować.'
|
||||
examples:
|
||||
- ['jestem szczęśliwa!', 'jestem szczęśliw!']
|
||||
- ['czemu jesteś taki zmartwiony?', 'czemu jesteś tak zmartwion?']
|
||||
-
|
||||
header: 'Skróty'
|
||||
examples:
|
||||
- ['Katarzyna Nowak', 'K. Nowak']
|
||||
- ['Szanowny Pan Białek', 'Sz. P. Białek']
|
||||
- ['Towarzyszka Q', 'Tow. Q']
|
||||
-
|
||||
header: 'Liczebniki zbiorowe'
|
||||
examples:
|
||||
- ['dziesięciu pracowników', 'dziesięcioro pracujących']
|
||||
|
||||
others: 'Inne formy'
|
||||
othersRaw: 'inne'
|
||||
or: 'lub'
|
||||
|
|
|
@ -16,7 +16,6 @@ pronouns:
|
|||
null: false
|
||||
emoji: false
|
||||
slashes: false
|
||||
avoiding: false
|
||||
others: 'Outros pronomes'
|
||||
threeForms: true
|
||||
|
||||
|
|
|
@ -27,7 +27,6 @@ pronouns:
|
|||
template: 'Open one of the examples and simply replace the name/initial in the URL with your own.'
|
||||
emoji: false
|
||||
slashes: true
|
||||
avoiding: false
|
||||
others: 'Other pronouns'
|
||||
|
||||
pronunciation:
|
||||
|
|
|
@ -23,7 +23,6 @@ pronouns:
|
|||
examples: ['💫', '💙']
|
||||
template: '打開一個例句,用自己的表情符號代替位址裏面的表情符號。'
|
||||
slashes: false
|
||||
avoiding: false
|
||||
others: 'Other pronouns'
|
||||
|
||||
pronunciation:
|
||||
|
|
|
@ -266,8 +266,10 @@ export default {
|
|||
|
||||
if (config.pronouns.enabled) {
|
||||
routes.push({ path: '/' + config.pronouns.any, component: resolve(__dirname, 'routes/any.vue') });
|
||||
if (config.pronouns.avoiding) {
|
||||
routes.push({ path: '/' + config.pronouns.avoiding, component: resolve(__dirname, 'routes/avoiding.vue') });
|
||||
if (config.pronouns.null && config.pronouns.null.routes) {
|
||||
for (let route of config.pronouns.null.routes) {
|
||||
routes.push({ path: '/' + route, component: resolve(__dirname, 'routes/avoiding.vue') });
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,49 +1,30 @@
|
|||
<template>
|
||||
<div>
|
||||
<h2>
|
||||
<T>pronouns.avoiding.header</T>
|
||||
{{ clearLinkedText(config.pronouns.null.description) }}
|
||||
</h2>
|
||||
|
||||
<p>
|
||||
<T>pronouns.avoiding.description</T>
|
||||
<LinkedText :text="config.pronouns.null.history"/>
|
||||
</p>
|
||||
|
||||
<section v-for="idea in $t('pronouns.avoiding.ideas')">
|
||||
<h3>{{idea.header}}</h3>
|
||||
<p v-if="idea.description">
|
||||
{{idea.description}}
|
||||
</p>
|
||||
<ul>
|
||||
<li v-for="[exampleFrom, exampleTo] in idea.examples">
|
||||
<LinkedText :text="exampleFrom"/> → <strong><LinkedText :text="exampleTo"/></strong>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<section v-if="sources && Object.keys(sources).length">
|
||||
<Literature :sources="sources"/>
|
||||
</section>
|
||||
<Avoiding/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {SourceLibrary} from "../src/classes";
|
||||
import { head } from "../src/helpers";
|
||||
import { head, clearLinkedText } from "../src/helpers";
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
sources: undefined,
|
||||
}
|
||||
},
|
||||
async mounted() {
|
||||
this.sources = {
|
||||
'': new SourceLibrary(await this.$axios.$get(`/sources?pronoun=${this.config.pronouns.avoiding}`)).getForPronoun(this.config.pronouns.avoiding),
|
||||
clearLinkedText
|
||||
};
|
||||
},
|
||||
head() {
|
||||
return head({
|
||||
title: this.$t('pronouns.avoiding.header'),
|
||||
title: this.config.pronouns.null.description,
|
||||
description: this.config.pronouns.null.history,
|
||||
});
|
||||
},
|
||||
};
|
||||
|
|
|
@ -342,9 +342,11 @@
|
|||
},
|
||||
validatePronoun(pronoun) {
|
||||
pronoun = this.normalisePronoun(pronoun);
|
||||
return pronoun === this.config.pronouns.any || pronoun === this.config.pronouns.avoiding || buildPronoun(pronouns, pronoun)
|
||||
? null
|
||||
: 'profile.pronounsNotFound'
|
||||
return pronoun === this.config.pronouns.any
|
||||
|| (this.config.pronouns.null && this.config.pronouns.null.routes && this.config.pronouns.null.routes.includes(pronoun))
|
||||
|| buildPronoun(pronouns, pronoun)
|
||||
? null
|
||||
: 'profile.pronounsNotFound'
|
||||
},
|
||||
},
|
||||
computed: {
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
</h2>
|
||||
<p class="h6 small text-center mb-0 mt-2" v-if="selectedPronoun.description">
|
||||
<em>
|
||||
(<Spelling escape :text="Array.isArray(selectedPronoun.description)
|
||||
(<LinkedText escape :text="Array.isArray(selectedPronoun.description)
|
||||
? ($t('pronouns.alt.header') + ': ' + selectedPronoun.description.join(glue))
|
||||
: selectedPronoun.description"/>)
|
||||
</em>
|
||||
|
@ -98,6 +98,8 @@
|
|||
</ul>
|
||||
</section>
|
||||
|
||||
<Avoiding v-if="isNull"/>
|
||||
|
||||
<section>
|
||||
<Share :title="`${$t('pronouns.intro')}: ${selectedPronoun.name(glue)}`"/>
|
||||
</section>
|
||||
|
@ -129,8 +131,9 @@
|
|||
export default {
|
||||
components: {LinkedText, GrammarTables },
|
||||
data() {
|
||||
const key = decodeURIComponent(this.$route.path.substr(1).replace(/\/$/, ''));
|
||||
const selectedPronoun = this.config.pronouns.enabled
|
||||
? buildPronoun(pronouns, decodeURIComponent(this.$route.path.substr(1).replace(/\/$/, '')))
|
||||
? buildPronoun(pronouns, key)
|
||||
: null;
|
||||
|
||||
return {
|
||||
|
@ -145,6 +148,8 @@
|
|||
counter: 0,
|
||||
counterHandle: null,
|
||||
counterSpeed: 1000,
|
||||
|
||||
isNull: key.startsWith(':'),
|
||||
}
|
||||
},
|
||||
async asyncData({app}) {
|
||||
|
|
|
@ -145,7 +145,7 @@
|
|||
</li>
|
||||
<li v-if="config.pronouns.null !== false" class="list-group-item" id="nameself">
|
||||
<p class="h5">
|
||||
<Spelling :text="config.pronouns.null.description"/>
|
||||
<LinkedText :text="config.pronouns.null.description"/>
|
||||
</p>
|
||||
<div class="small my-1" v-if="config.pronouns.null.history">
|
||||
<Icon v="info-circle"/>
|
||||
|
@ -177,14 +177,6 @@
|
|||
<T>pronouns.any.description</T>
|
||||
</p>
|
||||
</li>
|
||||
<li v-if="config.pronouns.avoiding" class="list-group-item">
|
||||
<p class="h5">
|
||||
<nuxt-link :to="'/' + config.pronouns.avoiding"><T>pronouns.avoiding.header</T></nuxt-link>
|
||||
</p>
|
||||
<p>
|
||||
<T>pronouns.avoiding.description</T>
|
||||
</p>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
|
|
|
@ -67,7 +67,7 @@ export const buildPronoun = (pronouns, path) => {
|
|||
pronoun = buildPronounFromTemplate(path, process.env.CONFIG.pronouns.emoji);
|
||||
}
|
||||
|
||||
if (!pronoun && process.env.CONFIG.pronouns.null !== false && path.startsWith(':') && path.length < 12) {
|
||||
if (!pronoun && process.env.CONFIG.pronouns.null && process.env.CONFIG.pronouns.null.morphemes && path.startsWith(':') && path.length < 12) {
|
||||
pronoun = buildPronounFromTemplate(path.substring(1), process.env.CONFIG.pronouns.null);
|
||||
}
|
||||
|
||||
|
|
|
@ -23,6 +23,7 @@ export const head = ({title, description, banner}) => {
|
|||
const meta = { meta: [] };
|
||||
|
||||
if (title) {
|
||||
title = clearLinkedText(title);
|
||||
title += ' • ' + process.env.TITLE;
|
||||
meta.title = title;
|
||||
meta.meta.push({ hid: 'og:title', property: 'og:title', content: title });
|
||||
|
@ -30,6 +31,7 @@ export const head = ({title, description, banner}) => {
|
|||
}
|
||||
|
||||
if (description) {
|
||||
description = clearLinkedText(description);
|
||||
meta.meta.push({ hid: 'description', name: 'description', content: description });
|
||||
meta.meta.push({ hid: 'og:description', property: 'og:description', content: description });
|
||||
meta.meta.push({ hid: 'twitter:description', property: 'twitter:description', content: description });
|
||||
|
|
Reference in New Issue