Skip to content

feat: enforce absolute ban on em dashes and en dashes#96

Open
erhanurgun wants to merge 1 commit intoblader:mainfrom
erhanurgun:feat/ban-em-dashes
Open

feat: enforce absolute ban on em dashes and en dashes#96
erhanurgun wants to merge 1 commit intoblader:mainfrom
erhanurgun:feat/ban-em-dashes

Conversation

@erhanurgun
Copy link
Copy Markdown

@erhanurgun erhanurgun commented Apr 16, 2026

Closes #78

Summary

  • Replaced "overuse" warning with an absolute ban on em dashes (—) and en dashes (–)
  • Added replacement hierarchy (period > comma > colon > semicolon > parentheses > rewrite)
  • Added mandatory em dash scan step to the workflow
  • Added zero-dash constraint to output format

Motivation

The em dash has become one of the most reliable tells of AI-generated writing. A "use sparingly" approach was insufficient; a complete ban aligns with humanizer's core purpose.

Changes

  • SKILL.md: Rewrote Rule 14, added self-check step and output constraint
  • Version: 2.5.1 → 2.6.0

Test plan

  • Run humanizer skill on text containing em dashes
  • Verify output contains zero and characters
  • Confirm replacement hierarchy is applied correctly

  Replace "overuse" warning with a hard constraint. Add replacement
  hierarchy, mandatory self-check step, and output format constraint.
@erhanurgun
Copy link
Copy Markdown
Author

Note on overlapping PRs

This PR overlaps with #85 and #84, which also modify Rule 14 in SKILL.md:

Both of those PRs build on the existing "use sparingly" approach. This PR takes a stricter stance: a complete ban with a replacement hierarchy and a mandatory scan step before output.

I believe an absolute ban is the right call here. Issue #78 shows that the "overuse" framing still lets em dashes slip through. A hard constraint with a self-check step is more enforceable than a soft guideline.

If this PR is merged first, #85 and #84 would need to be rebased and reconciled against the new Rule 14 !!!

spencergoldade added a commit to spencergoldade/humanizer that referenced this pull request Apr 22, 2026
Upstream blader/humanizer PR blader#96 (erhanurgun). Replaces pattern 14's
"use sparingly" guideline with a hard ban plus replacement hierarchy
and a mandatory scan step. Aligns with writing-style.md rule.

Preserved local paired-bracketing content from PR blader#84.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@jonathansp
Copy link
Copy Markdown

This is indeed one of the most common signals: dash and double dashes.

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.

Still getting em dashes, and a lot of the text is also getting truncated after using the humanizer

2 participants