Skip to content

Spanish verb conjugator, uses pattern matching logic to conjugate any verb based on its model

License

Notifications You must be signed in to change notification settings

jirimracek/conjugate-esp

Repository files navigation

Spanish verb conjugator

Sun 03 Jan 2021 07:14:54 PM CET, version 2.3.6


Build Matrix Coverage Status GitHub

Uses templates, pattern matching & logic to conjugate Spanish verbs


Goals

  • correct, detailed, complete, fast & small

  • 14456 tested verbs based on 97 models

  • includes

    • only current, RAE recognized as known & used verbs
    • castellano, voseo, formal, canarias
    • reflexives
    • defectives
    • multiple (dual & triple) conjugations
    • dual participios
    • orthographical changes (1999 and 2010)
  • If you find this useful -- drop me a note, I'd like to know


TL;DR

  • new in 2.3.x
    • public interface changes
    • new public methods
      • getOrthoVerbListSync()
      • getOrthoVerbList() - get verbs affected by 1999/2010 orthography
      • useHighlight() - turn on / off / partial highlighting
    • getDefectiveVerbList(exact = false) now has an optional argument - see Usage for info
    • internal changes, dropped one lever of db nesting, simplifications
    • removed use of
      • Array.flat() , can be used with more browsers
      • ts compiler option target moved back to ES2016
    • rearranged the order or the Result[] - non-defective conjugations are always listed before defective ones
  • play with node bin/runme.js

Want to read

  • see Release notes for major / minor version updates
  • see Changelog for current details
  • see Roadmap for future changes and ideas
  • see Usage for usage, interfaces, return values description, sample output and more

Credits

  • Many thanks to Estudio Sampere Salamanca, España
    • Esther González, Ester García, María Ballesteros you're my heroes
  • Contributors to fast-diff - I really didn't feel like writing yet another text comparison, you saved me a lot of time

Compatibility


Installation

  • clone / download gitHub repository
  • npm i @jirimracek/conjugate-esp

Modes / Times

  • Impersonal
    • Infinitivo, Gerundio, Participio
  • Indicativo
    • Simple
      • Presente, Pretérito Imperfecto, Pretérito Indefinido, Futuro Imperfecto, Condicional Simple
    • Compuesto
      • Pretérito Perfecto, Pretérito Pluscuamperfecto, Pretérito Anterior, Futuro Perfecto, Condicional Compuesto
  • Subjuntivo
    • Simple
      • Presente, Pretérito Imperfecto Ra, Pretérito Imperfecto Se, Futuro Imperfecto
    • Compuesto
      • Pretérito Perfecto, Pretérito Pluscuamperfecto Ra, Pretérito Pluscuamperfecto Se, Futuro Perfecto
  • Imperativo
    • Afirmativo, Negativo

(rarely employed Indicativo Pretérito Anterior & Subjuntivo Futuro Perfecto / Imperfecto)


Implemented and tested conjugation models

AR
hablar
acertar
actuar
aguar
ahincar
aislar
andar
aunar
avergonzar
cabrahigar
colgar
contar
dar
desdar
desosar
engorar
enraizar
errar
estar
forzar
jugar
pagar
regar
rozar
sacar
tropezar
vaciar
volcar
ER
temer
caber
caer
coger
corroer
creer
haber
hacer
mover
nacer
oler
placer
poder
poner
querer
raer
rehacer
responder
rever
romper
saber
ser
tañer
tender
tener
torcer
traer
valer
vencer
ver
volver
yacer
IR
partir
abrir
adquirir
argüir
asir
balbucir
bendecir
ceñir
cohibir
conducir
corregir
decir
delinquir
dirigir
discernir
distinguir
dormir
embaír
erguir
escribir
huir
ir
lucir
oír
plañir
podrir
pudrir
rehenchir
rehuir
reunir
reír
salir
seguir
sentir
servir
venir
zurcir

Resources Used