Skip to content

Handlers and subtypes

28 handlers, 75 subtypes across 4 categories. Source of truth: src/synterr/languages/russian/errors/.

Categories: MORPH, OTHER, PUNCT, SPELL.

Handler Subtypes Category Length-changing
adj_case adj_case MORPH no
adj_double_comparative adj_double_comparative MORPH yes
adj_form adj_short_full MORPH no
adj_gender adj_gender MORPH no
adj_number adj_number MORPH no
noun_case noun_case MORPH no
noun_case_prep noun_case_prep_e_u MORPH no
noun_number noun_number MORPH no
numeral_declension numeral_poltora, numeral_declension MORPH no
verb_person_number verb_person_number MORPH no
verb_tense verb_tense MORPH no
collocation collocation OTHER no
conjunction conjunction OTHER no
paronym paronym OTHER no
pleonasm pleonasm OTHER yes
preposition preposition OTHER no
word_insertion word_insertion OTHER yes
word_omission word_omission OTHER yes
comma_delete comma_subordinate, comma_compound, comma_parenthetical, comma_isolation, comma_homogeneous, comma_interjection, comma_response, comma_repeated, comma_asyndetic, comma_vocative PUNCT yes
comma_insert comma_before_kak, comma_in_set_phrase, comma_between_conjunctions, comma_in_indivisible, comma_clause_junction PUNCT yes
comma_pair_delete pair_participle, pair_relative, pair_gerund, pair_parenthetical, pair_apposition PUNCT yes
dash_delete dash_subj_pred, dash_asyndetic, dash_apposition, dash_other PUNCT yes
dash_to_comma dash_to_comma_apposition PUNCT no
adverb_spelling adverb_solid_to_separate, adverb_separate_to_solid, adverb_hyphen_to_separate, adverb_separate_to_hyphen SPELL yes
compound_spelling num_dash, pol_spelling, compound_adj SPELL no
function_spelling ne_attachment, ne_detachment, conjunction_split, conjunction_merge, taki_hyphen, neg_pronoun_ne_ni SPELL yes
orthographic_spelling pre_pri, y_i_after_prefix, suffix_enk_onk, suffix_insk_ensk, suffix_its_ets, suffix_ek_ik, participle_suffix, vowel_after_ts, vowel_after_sibilant, nn_suffix SPELL no
spelling vowel_reduction, devoicing, prefix_voicing, tsa_confusion, cluster, double_consonant, keyboard, soft_sign SPELL no

MORPH

adj_case (1 subtype)

Change adjective/participle case.

  • adj_case:adj_case

adj_double_comparative (1 subtype)

Insert a pleonastic «более» before a synthetic comparative.

  • adj_double_comparative:adj_double_comparative

adj_form (1 subtype)

Inflect a predicative short adjective to its full form.

  • adj_form:adj_short_full

adj_gender (1 subtype)

Change adjective/participle gender.

  • adj_gender:adj_gender

adj_number (1 subtype)

Change adjective/participle number.

  • adj_number:adj_number

noun_case (1 subtype)

Change noun case to create morphological error.

  • noun_case:noun_case

noun_case_prep (1 subtype)

Replace the second locative (-у) with the standard locative (-е).

  • noun_case_prep:noun_case_prep_e_u

noun_number (1 subtype)

Change noun number (singular ↔ plural).

  • noun_number:noun_number

numeral_declension (2 subtypes)

Corrupt numeral declension.

  • numeral_declension:numeral_poltora
  • numeral_declension:numeral_declension

verb_person_number (1 subtype)

Change verb person or number.

  • verb_person_number:verb_person_number

verb_tense (1 subtype)

Change verb tense.

  • verb_tense:verb_tense

OTHER

collocation (1 subtype)

Replace correct verb/adjective with wrong collocate.

  • collocation:collocation

conjunction (1 subtype)

Replace conjunction with an attested confusion from the same group.

  • conjunction:conjunction

paronym (1 subtype)

Replace word from paronyms list to one from its paronyms

  • paronym:paronym

pleonasm (1 subtype)

Insert redundant words to create pleonasm errors.

  • pleonasm:pleonasm

preposition (1 subtype)

Replace preposition with an attested confusion from the same group.

  • preposition:preposition

word_insertion (1 subtype)

Insert a filler word (discourse marker, particle) into the sentence.

  • word_insertion:word_insertion

word_omission (1 subtype)

Delete a function word (preposition or conjunction).

  • word_omission:word_omission

PUNCT

comma_delete (10 subtypes)

Delete a comma with L2 subtype classification.

  • comma_delete:comma_subordinate
  • comma_delete:comma_compound
  • comma_delete:comma_parenthetical
  • comma_delete:comma_isolation
  • comma_delete:comma_homogeneous
  • comma_delete:comma_interjection
  • comma_delete:comma_response
  • comma_delete:comma_repeated
  • comma_delete:comma_asyndetic
  • comma_delete:comma_vocative

comma_insert (5 subtypes)

Insert spurious commas — creates extra-comma errors.

  • comma_insert:comma_before_kak
  • comma_insert:comma_in_set_phrase
  • comma_insert:comma_between_conjunctions
  • comma_insert:comma_in_indivisible
  • comma_insert:comma_clause_junction

comma_pair_delete (5 subtypes)

Delete both commas of a paired construction (обособление).

  • comma_pair_delete:pair_participle
  • comma_pair_delete:pair_relative
  • comma_pair_delete:pair_gerund
  • comma_pair_delete:pair_parenthetical
  • comma_pair_delete:pair_apposition

dash_delete (4 subtypes)

Delete a dash (em/en) with L2 subtype classification.

  • dash_delete:dash_subj_pred
  • dash_delete:dash_asyndetic
  • dash_delete:dash_apposition
  • dash_delete:dash_other

dash_to_comma (1 subtype)

Replace dash with comma — Rozental §93 apposition L1 error pattern.

  • dash_to_comma:dash_to_comma_apposition

SPELL

adverb_spelling (4 subtypes)

Corrupt adverb spelling: solid↔separate, hyphen↔separate.

  • adverb_spelling:adverb_solid_to_separate
  • adverb_spelling:adverb_separate_to_solid
  • adverb_spelling:adverb_hyphen_to_separate
  • adverb_spelling:adverb_separate_to_hyphen

compound_spelling (3 subtypes)

Corrupt compound word spelling: dashes, пол-, compound adjectives.

  • compound_spelling:num_dash
  • compound_spelling:pol_spelling
  • compound_spelling:compound_adj

function_spelling (6 subtypes)

Corrupt function word spelling: не/ни, conjunctions, particles.

  • function_spelling:ne_attachment
  • function_spelling:ne_detachment
  • function_spelling:conjunction_split
  • function_spelling:conjunction_merge
  • function_spelling:taki_hyphen
  • function_spelling:neg_pronoun_ne_ni

orthographic_spelling (10 subtypes)

Morpheme-level spelling errors: suffixes, prefixes, post-sibilant vowels.

  • orthographic_spelling:pre_pri
  • orthographic_spelling:y_i_after_prefix
  • orthographic_spelling:suffix_enk_onk
  • orthographic_spelling:suffix_insk_ensk
  • orthographic_spelling:suffix_its_ets
  • orthographic_spelling:suffix_ek_ik
  • orthographic_spelling:participle_suffix
  • orthographic_spelling:vowel_after_ts
  • orthographic_spelling:vowel_after_sibilant
  • orthographic_spelling:nn_suffix

spelling (8 subtypes)

Russian spelling error handler using phonetic rules.

  • spelling:vowel_reduction
  • spelling:devoicing
  • spelling:prefix_voicing
  • spelling:tsa_confusion
  • spelling:cluster
  • spelling:double_consonant
  • spelling:keyboard
  • spelling:soft_sign