#281 [en][pl][pronouns] mirrorprominal

This commit is contained in:
Avris 2021-11-30 18:50:38 +01:00
parent a962b78825
commit 3bca25597f
7 changed files with 70 additions and 1 deletions

View File

@ -140,6 +140,7 @@
if (link === this.config.pronouns.any if (link === this.config.pronouns.any
|| (this.config.pronouns.null && this.config.pronouns.null.routes && this.config.pronouns.null.routes.includes(link)) || (this.config.pronouns.null && this.config.pronouns.null.routes && this.config.pronouns.null.routes.includes(link))
|| (this.config.pronouns.mirror && this.config.pronouns.mirror.route === pronoun)
) { ) {
pronounOpinions.push({ pronounOpinions.push({
link, link,

View File

@ -82,6 +82,15 @@ pronouns:
reflexive: '#self' reflexive: '#self'
examples: ['💫', '💙'] examples: ['💫', '💙']
template: 'Open one of the examples and simply replace the emoji in the URL with your own.' template: 'Open one of the examples and simply replace the emoji in the URL with your own.'
mirror:
route: 'mirror'
name: 'Mirror pronouns / Mirrorpronominal'
description: >
A person who uses mirror pronouns wants to be referred to with the same pronouns as the person talking.
example:
- 'Person A uses mirror pronouns.'
- 'Person B uses {/she=she/her}, so when she talks about person A, she uses “she/her” to refer to her.'
- 'Person C uses {/ze=ze/hir} interchangeably with {/fae=fæ/fær}, so when ze talks about person A, fea uses either ze/hir or fæ/fær to refer to fær.'
slashes: true slashes: true
others: 'Other pronouns' others: 'Other pronouns'
@ -99,7 +108,7 @@ sources:
submit: true submit: true
mergePronouns: mergePronouns:
they/them/themself: 'they' they/them/themself: 'they'
extraTypes: ['avoiding', 'nounself'] extraTypes: ['avoiding', 'nounself', 'mirror']
nouns: nouns:
enabled: true enabled: true

View File

@ -156,6 +156,15 @@ pronouns:
normative: true normative: true
examples: examples:
- [ 'dziesięciu pracowników', 'dziesięcioro pracujących' ] - [ 'dziesięciu pracowników', 'dziesięcioro pracujących' ]
mirror:
route: 'lustrzane'
name: 'Zaimki lustrzane'
description: >
Osoba używająca zaimków lustrzanych chce, by zwracano się do niej / mówiono o niej takimi formami, jakich samx się używa.
example:
- 'Osoba A używa zaimków lustrzanych.'
- 'Osoba B używa {/ona=rodzaju żeńskiego}, więc zwracając się do osoby A lub mówiąc o niej będzie używała form żeńskich.'
- 'Osoba C używa {/onu=dukaizmów} wymiennie z {/ono=rodzajem neutralnym}, więc zwracając się do osoby A lub mówiąc o num będzie używała form postpłciowych bądź neutralnych.'
others: 'Pozostałe formy' others: 'Pozostałe formy'
pronunciation: pronunciation:

View File

@ -275,6 +275,9 @@ export default {
routes.push({ path: '/' + encodeURIComponent(route), component: resolve(__dirname, 'routes/avoiding.vue') }); routes.push({ path: '/' + encodeURIComponent(route), component: resolve(__dirname, 'routes/avoiding.vue') });
} }
} }
if (config.pronouns.mirror) {
routes.push({ path: '/' + encodeURIComponent(config.pronouns.mirror.route), component: resolve(__dirname, 'routes/mirror.vue') });
}
} }
if (config.calendar && config.calendar.enabled) { if (config.calendar && config.calendar.enabled) {

35
routes/mirror.vue Normal file
View File

@ -0,0 +1,35 @@
<template>
<div>
<h2>
{{ clearLinkedText(config.pronouns.mirror.name) }}
</h2>
<p>
<LinkedText :text="config.pronouns.mirror.description"/>
</p>
<ul>
<li v-for="example in config.pronouns.mirror.example">
<LinkedText :text="example"/>
</li>
</ul>
</div>
</template>
<script>
import { head, clearLinkedText } from "../src/helpers";
export default {
data() {
return {
clearLinkedText
};
},
head() {
return head({
title: this.config.pronouns.mirror.name,
description: this.config.pronouns.mirror.description,
});
},
};
</script>

View File

@ -349,6 +349,7 @@
pronoun = this.normalisePronoun(pronoun); pronoun = this.normalisePronoun(pronoun);
return pronoun === this.config.pronouns.any return pronoun === this.config.pronouns.any
|| (this.config.pronouns.null && this.config.pronouns.null.routes && this.config.pronouns.null.routes.includes(pronoun)) || (this.config.pronouns.null && this.config.pronouns.null.routes && this.config.pronouns.null.routes.includes(pronoun))
|| (this.config.pronouns.mirror && this.config.pronouns.mirror.route === pronoun)
|| buildPronoun(pronouns, pronoun) || buildPronoun(pronouns, pronoun)
? null ? null
: 'profile.pronounsNotFound' : 'profile.pronounsNotFound'

View File

@ -175,6 +175,17 @@
</div> </div>
<SimplePronounList :pronouns="config.pronouns.emoji.examples" class="mb-3"/> <SimplePronounList :pronouns="config.pronouns.emoji.examples" class="mb-3"/>
</li> </li>
<li v-if="config.pronouns.mirror" class="list-group-item" id="mirror">
<p class="h5">
<nuxt-link :to="`/${config.pronouns.mirror.route}`">
<LinkedText :text="config.pronouns.mirror.name"/>
</nuxt-link>
</p>
<div class="small my-1" v-if="config.pronouns.mirror.description">
<Icon v="info-circle"/>
<LinkedText :text="config.pronouns.mirror.description"/>
</div>
</li>
<li class="list-group-item"> <li class="list-group-item">
<p class="h5"> <p class="h5">
<nuxt-link :to="'/' + config.pronouns.any"><T>pronouns.any.header</T></nuxt-link> <nuxt-link :to="'/' + config.pronouns.any"><T>pronouns.any.header</T></nuxt-link>