Skip to content

Phase-1 follow-up: Avalonia rule-formula editors (Grammar)#966

Draft
johnml1135 wants to merge 1 commit into
phase1-followup-interlinearfrom
phase1-followup-rule
Draft

Phase-1 follow-up: Avalonia rule-formula editors (Grammar)#966
johnml1135 wants to merge 1 commit into
phase1-followup-interlinearfrom
phase1-followup-rule

Conversation

@johnml1135

@johnml1135 johnml1135 commented Jun 24, 2026

Copy link
Copy Markdown
Contributor

Phase-1 follow-up: Avalonia rule-formula editors (Grammar)

Stacked on the interlinear follow-up. Restores and activates the Grammar rule-editor family.

  • Adds 29 files: the 5 plugins (regular/metathesis/compound rule grids + phonological-environment + Basic IPA symbol editors), RuleFormulaModel/RegionEditor/RuleCellCommands, projector/sinks/options/deriver, and all their tests.
  • Restores the 5 plugin registrations + census entries.
  • Flip: registers the 6 rule tools (PhonologicalRuleEdit, EnvironmentEdit, compoundRuleAdvancedEdit, naturalClassedit, phonemeEdit, AdhocCoprohibEdit) in LexicalEditFeatureCatalog under a new "Grammar rule editors" group (restoring the canonical pre-split active set + parity notes). Phase1FollowUpSurfaceTools is now empty.

Note: since this branch was rebased onto the squashed base PR, "flip" now means catalog entries rather than a hardcoded array edit — as a side effect, this also adds a new "Grammar rule editors" group (6 rows: Phonological Rules, Phonological Environments, Compound Rules, Natural Classes, Phonemes, Ad Hoc Co-occurrence Rules) to the Tools→Options "Manage Individual Features" dialog, visible under UIMode=New.

Verification: build green; census + 6 rule RegisteredRecordEditTools cases + RuleFormula/SupportingEditorCompose suites all passing (FwAvaloniaTests 866/866, xWorksTests 1695/1697, 2 pre-existing skips).


This change is Reviewable

@github-actions

This comment has been minimized.

@johnml1135 johnml1135 force-pushed the phase1-followup-interlinear branch from 17bd535 to 5120ef6 Compare June 25, 2026 02:56
@johnml1135 johnml1135 force-pushed the phase1-followup-rule branch from ace0238 to 9461891 Compare June 25, 2026 02:56
@johnml1135 johnml1135 force-pushed the phase1-followup-interlinear branch from 5120ef6 to 3c5893e Compare June 25, 2026 10:38
@johnml1135 johnml1135 force-pushed the phase1-followup-rule branch from 9461891 to 2c142bc Compare June 25, 2026 10:38
johnml1135 added a commit that referenced this pull request Jul 3, 2026
Verified the stacked follow-up PRs this base PR's description promises
actually exist and are correctly chained: phase1-followup-interlinear
(#965) -> phase1-followup-rule (#966) -> phase1-followup-table (#967),
all open/draft. The gating comments explaining why the browse table and
ChorusNotesPlugin are inert said "a follow-up PR" generically -- name
phase1-followup-table specifically (matching the sibling comment in
LexicalEditSurfaceRegistry.cs, which already names avalonia-interlinear-
editor/avalonia-rule-formula-editor per tool).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@johnml1135 johnml1135 force-pushed the phase1-followup-interlinear branch from 3c5893e to d6003e4 Compare July 3, 2026 21:13
@johnml1135 johnml1135 force-pushed the phase1-followup-rule branch 2 times, most recently from b2d7965 to 712c610 Compare July 4, 2026 14:32
@johnml1135 johnml1135 force-pushed the phase1-followup-interlinear branch from d6003e4 to c937d8b Compare July 4, 2026 14:32
@johnml1135 johnml1135 force-pushed the phase1-followup-rule branch from 712c610 to a81966e Compare July 4, 2026 14:41
Stacked on the interlinear follow-up. Restore the rule-formula surface
and activate it:
- add back the 29 rule-formula files (the 5 plugins,
  RuleFormulaModel/RegionEditor + RuleCellCommands, PhEnvironment +
  BasicIPASymbol editors, projector/sinks/options + deriver, and all
  their tests incl. SupportingEditorComposeTests)
- restore the 5 plugin registrations in RegionEditorPlugins
- restore the 5 rule class names in the burn-down census
- FLIP: register the 6 rule tools (PhonologicalRuleEdit,
  EnvironmentEdit, compoundRuleAdvancedEdit, naturalClassedit,
  phonemeEdit, AdhocCoprohibEdit) in LexicalEditFeatureCatalog under a
  new "Grammar rule editors" group (restoring the canonical pre-split
  active set + parity notes); Phase1FollowUpSurfaceTools is now empty
  (both edit follow-ups landed; browse table gated separately)
- add the 6 rule TestCase rows to RegisteredRecordEditTools_ResolveToAvalonia

Rebased onto the squashed phase1-base (post PR #964 review): tool
registration is now catalog-driven, so this flip also adds a new
"Grammar rule editors" group (6 rows) to the Tools->Options "Manage
Individual Features" dialog under UIMode=New.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@johnml1135 johnml1135 force-pushed the phase1-followup-rule branch from a81966e to 2f81e91 Compare July 4, 2026 15:26
@johnml1135 johnml1135 force-pushed the phase1-followup-interlinear branch from c937d8b to bebe347 Compare July 4, 2026 15:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant