Skip to content

Commit

Permalink
Rename anglicus to arabicus
Browse files Browse the repository at this point in the history
  • Loading branch information
hunter-richardson committed Jun 21, 2024
1 parent 18b408f commit 713d57d
Show file tree
Hide file tree
Showing 7 changed files with 33 additions and 118 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

*Hic situs verba Latina tabulasque inflexionis praebet similiter [dictionario](https://latinitium.com/latin-dictionaries) praebenti vires contextuales. Hospes [copiam lemmarum](/res/lemmae) quaereret de scripto principali categoriave. Lemma quaesita tonsori ante seligendum praebebitur cum tabula inflexionis si patet atque tabula lemmam inflectet de colaminibus seligendis et hospes locutioni currenti addere optet.* / This website presents Latin words and their inflection tables similiar to a [dictionary](https://latinitium.com/latin-dictionaries) that presents their contextual meanings. The visitor may search the [lemma store](/res/lemmae) according to the printed value of their principal parts and/or by the sentence function they perform. After (s)he selects the desired lemma, it is presented in the browser, with its inflection table if available. The table further inflects the lemma according to a selection of filters, and the visitor may choose to add it to the running phrase.

*Et Structor Verborum pro numeris Romanis modos [numeratoris](/src/facies/numerare.vue) [calculatorisque](/src/facies/numerare.vue) (qui dicuntur) praebet. Numerator simpliciter numeros Anglicos Romanis facit calculatorque operationes simplices mathematicas numeris Romanis agit.* / In addition to searching lemmas, *Structor Verborum* offers a so-called ["numerator"](/src/facies/numerare.vue) and ["calculator"](/src/facies/calculare.vue) functions for the purpose of Roman numerals. The numerator simply turns English numbers into Roman numerals, and the calculator performs simple mathematics operations on Roman numerals.
*Et Structor Verborum pro numeris Romanis modos [numeratoris](/src/facies/numerare.vue) [calculatorisque](/src/facies/numerare.vue) (qui dicuntur) praebet. Numerator simpliciter numeros Arabicos Romanis facit calculatorque operationes simplices mathematicas numeris Romanis agit.* / In addition to searching lemmas, *Structor Verborum* offers a so-called ["numerator"](/src/facies/numerare.vue) and ["calculator"](/src/facies/calculare.vue) functions for the purpose of Roman numerals. The numerator simply turns Arabic numbers into Roman numerals, and the calculator performs simple mathematics operations on Roman numerals.

## *Crustula* / Cookies

Expand Down
32 changes: 16 additions & 16 deletions src/facies/calculare.vue
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
<script lang='ts'>
import { defineComponent, defineModel } from 'vue';
import Numeral from '../miscella/numeral';
import Numerator from '../miscella/numerator';
import { Numerus } from '../praebeunda/verba';
import * as Specere from './specere.vue';
import type { ModelRef } from 'vue';
type numeri = {
anglicus: number,
arabicus: number,
romanus: string
};
const numerus: ModelRef<Numerus | undefined, string> = defineModel<Numerus>();
const operator: string = '';
const nihil: numeri = {
anglicus: 0,
arabicus: 0,
romanus: 'N'
};
Expand Down Expand Up @@ -44,51 +44,51 @@
licta(actus: string): boolean {
return this.operat(actus) ||
!!this.praesentes.anglicus;
!!this.praesentes.arabicus;
},
ponatur(actus: string): void {
if (actus === 'N') {
this.praevii = nihil;
this.praesentes = nihil;
} else if (/^[|MDCLXVIS·:∴×]$/.test(actus)) {
if (this.praesentes.anglicus) {
if (this.praesentes.arabicus) {
this.praesentes.romanus += actus;
} else {
this.praesentes.romanus = actus;
}
try {
this.praesentes.anglicus = Numeral.anglicus(this.praesentes.romanus);
this.praesentes.arabicus = Numerator.arabicus(this.praesentes.romanus);
} catch {
this.praesentes = nihil;
}
} else if (this.operat(actus)) {
if (this.praevii.anglicus === 0) {
if (this.praevii.arabicus === 0) {
this.praevii = this.praesentes;
} else {
switch ((this.operator ?? '').trim()) {
case '+':
this.praevii.anglicus += this.praesentes.anglicus;
this.praevii.arabicus += this.praesentes.arabicus;
break;
case '-':
this.praevii.anglicus -= this.praesentes.anglicus;
this.praevii.arabicus -= this.praesentes.arabicus;
break;
case '':
this.praevii.anglicus *= this.praesentes.anglicus;
this.praevii.arabicus *= this.praesentes.arabicus;
break;
case '÷':
this.praevii.anglicus /= this.praesentes.anglicus;
this.praevii.arabicus /= this.praesentes.arabicus;
break;
case '%':
this.praevii.anglicus %= this.praesentes.anglicus;
this.praevii.arabicus %= this.praesentes.arabicus;
break;
default:
this.praevii.anglicus = this.praesentes.anglicus;
this.praevii.arabicus = this.praesentes.arabicus;
break;
}
this.praevii.romanus = Numeral.romanus(this.praevii.anglicus);
this.praevii.romanus = Numerator.romanus(this.praevii.arabicus);
}
this.operator = actus === '=' ? '' : ` ${actus} `;
Expand All @@ -97,7 +97,7 @@
},
aequa(): void {
this.numerus = Numerus.numerator(this.praevii.anglicus);
this.numerus = Numerus.numerator(this.praevii.arabicus);
}
}
});
Expand All @@ -110,7 +110,7 @@
</template>
<template v-if='this.praevii.anglicus'>
<div class='text-center'>
<template v-if='Number.isInteger(praevii.anglicus)'>
<template v-if='Number.isInteger(praevii.arabicus)'>
<v-btn id='refer' icon='aequa' @click='aequa();' />
</template>
<v-card :text='praevii.romanus' />
Expand Down
14 changes: 7 additions & 7 deletions src/facies/numerare.vue
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<script lang='ts'>
import { defineComponent, defineModel } from 'vue';
import Numeral from '../miscella/numeral';
import Numerator from '../miscella/numerator';
import { Numerus } from '../praebeunda/verba';
import * as Specere from './specere.vue';
import Cocutor from '../miscella/cocutor';
Expand All @@ -16,30 +16,30 @@
romanus: '',
anglica: cocutor.edatur('lingua') === 'anglica',
numerus: numerus,
anglicus: {
arabicus: {
integer: 0,
numerator: 0,
denominator: 12
},
validator: [
(anglicus: number): boolean | string => {
(arabicus: number): boolean | string => {
const error: string = this.anglica ?
'Only Roman numerals allowed' : 'Romani numeri soli licuntur';
return Number.isInteger(anglicus) || error;
return Number.isInteger(arabicus) || error;
}
]
};
},
methods: {
effiat (): void {
this.romanus = Numeral.romanus(this.anglicus.integer + (this.anglicus.numerator / this.anglicus.denominator));
this.romanus = Numerator.romanus(this.arabicus.integer + (this.arabicus.numerator / this.arabicus.denominator));
},
refer (): void {
if (this.anglicus.numerator === 0) {
this.numerus = Numerus.numerator(this.anglicus.integer);
if (this.arabicus.numerator === 0) {
this.numerus = Numerus.numerator(this.arabicus.integer);
}
}
},
Expand Down
85 changes: 0 additions & 85 deletions src/miscella/numeral.ts

This file was deleted.

8 changes: 4 additions & 4 deletions src/miscella/nuntius.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import winston from 'winston';
import DailyRotateFile from 'winston-daily-rotate-file';
import { Mensa } from './enumerationes';
import Numeral from './numeral';
import Numerator from './numerator';


const scribatur = (parametra: {
Expand Down Expand Up @@ -233,9 +233,9 @@ class Temporis {
static hodie (): string {
const hodie: Date = new Date;
return [
Numeral.romanus(hodie.getUTCDay()),
Numerator.romanus(hodie.getUTCDay()),
Mensa[ hodie.getUTCMonth() ],
Numeral.romanus(hodie.getUTCFullYear())
Numerator.romanus(hodie.getUTCFullYear())
].join('');
}

Expand All @@ -246,7 +246,7 @@ class Temporis {
nunc.getUTCMinutes(),
nunc.getUTCSeconds(),
nunc.getUTCMilliseconds()
].map(numerus => Numeral.romanus(numerus))
].map(numerus => Numerator.romanus(numerus))
.join(':');
}
}
4 changes: 2 additions & 2 deletions src/praebeunda/agenda.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import Adiectiva from '../anomala/adiectiva';
import Nomina from '../anomala/nomina';
import LectorVerbalis from '../lectores/verbalis';
import Dictionarium from '../miscella/dictionarium';
import Numeral from '../miscella/numeral';
import Numerator from '../miscella/numerator';
import PutatorActus from '../putatores/actus';
import PutatorAdiectivi from '../putatores/adiectivi';
import PutatorIncomparabilis from '../putatores/incomparabilis';
Expand Down Expand Up @@ -382,7 +382,7 @@ export class NumeramenAgendum implements Interfecta.Faciendum<Verba.Numeramen>,
}
case 'numerus':
// eslint-disable-next-line no-case-declarations
const anglicus: number = Numeral.anglicus(this.numerus);
const anglicus: number = Numerator.arabicus(this.numerus);
return anglicus === null ? null : Verba.Numerus.numerator(anglicus);
case 'ordinale':
if ((await adiectiva.omnia()).includes(this.ordinale)) {
Expand Down
6 changes: 3 additions & 3 deletions src/praebeunda/verba.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import Structor from './structor';
import LectorVerbalis from '../lectores/verbalis';
import * as Enumerationes from '../miscella/enumerationes';
import Numeral from '../miscella/numeral';
import Numerator from '../miscella/numerator';
import {
AdiectivumAgendum,
NumeramenAgendum,
Expand Down Expand Up @@ -39,15 +39,15 @@ export class Numerus extends Verbum {
private _anglicus: number = -1;

private latinum (): string {
return Numeral.romanus(this._anglicus);
return Numerator.romanus(this._anglicus);
}

get anglicus (): number {
return this._anglicus;
}

set anglicus (valor: number) {
if (Numeral.convertibilis(valor)) {
if (Numerator.convertibilis(valor)) {
this._anglicus = valor;
} else {
throw Numerus.Errator('anclicus', valor.toString());
Expand Down

0 comments on commit 713d57d

Please sign in to comment.