Skip to content

Narrow the ever contraction guard to a preceding e or i - #199

Merged
owjs3901 merged 2 commits into
mainfrom
owjs3901/ever-preceding-letter
Sep 14, 2026
Merged

owjs3901 merged 2 commits into
mainfrom
owjs3901/ever-preceding-letter

Conversation

@owjs3901

Copy link
Copy Markdown
Contributor

국립국어원 점자상담 337번 회신(2026-09-12)을 반영한다.

통일 영어 점자 규정 10.7.4에는 'ever'의 첫 글자 'e'에 강세가 오고 그 앞에 'e'나 'i'가 오지 않는 경우 어두 약자 5점, 15점(두 칸)을 사용하도록 정하고 있습니다.

기존 가드는 앞 글자가 모든 모음일 때 약자를 막았으나, 규정이 막는 것은 ei 뿐이다.

근거는 fixture 안에 이미 있다. rule_10_7_2.jsonwhosesoevero 뒤에서 약자를 쓴다(⠘⠱⠎⠕⠐⠑). e/i 로 막히는 쪽도 fixture 가 확인한다 — believer(i), thievery(i), McKeever(e) 는 모두 철자다.

검증

  • 규정 fixture 5141/5141
  • 말뭉치 455,395/467,121 (97.49%) — 변동 없음. a/o/u + ever 조합이 말뭉치에 없다
  • cargo test --release -p braillify 4,984 + 541 통과
  • clippy 통과

회신의 나머지 절반(강세 판정)은 CMUdict 에 없는 상표 이름에서 확인할 방법이 없어 손대지 않았다. Weverse 를 약자로 돌리면 같은 꼴인 eversion/reverify 가 함께 깨지는 것을 측정으로 확인했다.

devfive added 2 commits September 14, 2026 11:42
RUEB 2024 10.7.4 uses the initial-letter contraction when the first e of
ever carries the stress and is not preceded by e or i. The guard rejected
every preceding vowel, which is wider than the rule: the whosesoever
example contracts after o.
@codecov

codecov Bot commented Sep 14, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

Files with missing lines Coverage Δ
.../braillify/src/rules/english_ueb/rule_10_7_pron.rs 100.00% <100.00%> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions

Copy link
Copy Markdown
Contributor

Changepacks

braillify@2.1.2 → 2.2.0 - libs/braillify/Cargo.toml

Minor

  • Raise Korean-braille conversion accuracy on the NIKL parallel corpus from 96.5% to 97.38% across its five editions (454,899 of 467,121 sentences), and read Hanja through its Korean reading. All 5,141 rule fixtures still pass.

Patch

  • Narrow what counts as a mathematical expression inside Korean prose; corpus accuracy 455,395 of 467,121 sentences.
  • Apply the National Institute of Korean Language rulings on Article 51's colon, Article 10's jamo prefix, and Article 46's operator spacing; corpus accuracy 454,990 of 467,121 sentences.

braillify-c@0.1.2 → 0.2.0 - packages/c/Cargo.toml

Minor

  • Raise Korean-braille conversion accuracy on the NIKL parallel corpus from 96.5% to 97.38% across its five editions (454,899 of 467,121 sentences), and read Hanja through its Korean reading. All 5,141 rule fixtures still pass.

Patch

  • Narrow what counts as a mathematical expression inside Korean prose; corpus accuracy 455,395 of 467,121 sentences.
  • Apply the National Institute of Korean Language rulings on Article 51's colon, Article 10's jamo prefix, and Article 46's operator spacing; corpus accuracy 454,990 of 467,121 sentences.

Braillify@2.1.2 → 2.2.0 - packages/dotnet/Braillify/Braillify.csproj

Minor

  • Raise Korean-braille conversion accuracy on the NIKL parallel corpus from 96.5% to 97.38% across its five editions (454,899 of 467,121 sentences), and read Hanja through its Korean reading. All 5,141 rule fixtures still pass.

Patch

  • Narrow what counts as a mathematical expression inside Korean prose; corpus accuracy 455,395 of 467,121 sentences.
  • Apply the National Institute of Korean Language rulings on Article 51's colon, Article 10's jamo prefix, and Article 46's operator spacing; corpus accuracy 454,990 of 467,121 sentences.

BraillifyNet@2.1.2 → 2.2.0 - packages/dotnet/BraillifyNet/BraillifyNet.csproj

Minor

  • Raise Korean-braille conversion accuracy on the NIKL parallel corpus from 96.5% to 97.38% across its five editions (454,899 of 467,121 sentences), and read Hanja through its Korean reading. All 5,141 rule fixtures still pass.

Patch

  • Narrow what counts as a mathematical expression inside Korean prose; corpus accuracy 455,395 of 467,121 sentences.
  • Apply the National Institute of Korean Language rulings on Article 51's colon, Article 10's jamo prefix, and Article 46's operator spacing; corpus accuracy 454,990 of 467,121 sentences.

braillify@2.1.2 → 2.2.0 - packages/node/package.json

Minor

  • Raise Korean-braille conversion accuracy on the NIKL parallel corpus from 96.5% to 97.38% across its five editions (454,899 of 467,121 sentences), and read Hanja through its Korean reading. All 5,141 rule fixtures still pass.

Patch

  • Narrow what counts as a mathematical expression inside Korean prose; corpus accuracy 455,395 of 467,121 sentences.
  • Apply the National Institute of Korean Language rulings on Article 51's colon, Article 10's jamo prefix, and Article 46's operator spacing; corpus accuracy 454,990 of 467,121 sentences.

braillify@2.1.2 → 2.2.0 - packages/python/pyproject.toml

Minor

  • Raise Korean-braille conversion accuracy on the NIKL parallel corpus from 96.5% to 97.38% across its five editions (454,899 of 467,121 sentences), and read Hanja through its Korean reading. All 5,141 rule fixtures still pass.

Patch

  • Narrow what counts as a mathematical expression inside Korean prose; corpus accuracy 455,395 of 467,121 sentences.
  • Apply the National Institute of Korean Language rulings on Article 51's colon, Article 10's jamo prefix, and Article 46's operator spacing; corpus accuracy 454,990 of 467,121 sentences.

@github-actions

Copy link
Copy Markdown
Contributor

Braillify testcase report

Suite Passed Total Failed Success rate
Standard testcases 5141 5141 0 100.00%
NIKL 2021 corpus 91016 93115 2099 97.75%
NIKL 2022 corpus 107813 108795 982 99.10%
NIKL 2023 corpus 122539 126693 4154 96.72%
NIKL 2024 corpus 53453 54990 1537 97.20%
NIKL 2025 corpus 80574 83528 2954 96.46%
NIKL corpus (all years) 455395 467121 11726 97.49%

Command: cargo test test_by_testcase -- --nocapture

@owjs3901
owjs3901 merged commit 72fed3c into main Sep 14, 2026
41 checks passed
@owjs3901
owjs3901 deleted the owjs3901/ever-preceding-letter branch September 14, 2026 04:54
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