Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bug: Ellipsis substitution inserts a range mark #1143

Open
tryonkus opened this issue Aug 21, 2024 · 2 comments
Open

Bug: Ellipsis substitution inserts a range mark #1143

tryonkus opened this issue Aug 21, 2024 · 2 comments
Labels
bug Something isn't working rule suggestion Suggestion to add or edit a rule

Comments

@tryonkus
Copy link

  • [x ] I have verified that I am on the latest version of the Linter

Describe the Bug

As someone who has set a lot of type professionally, I have strong opinions about ellipses. While the Unicode character, U+2026, is called an ellipsis, according how I was taught, it is actually a range mark. A true ellipsis is composed of three periods separated by nonbreaking spaces.

See: https://en.wikipedia.org/wiki/Ellipsis

Style guides often include rules governing ellipsis use. For example, The Chicago Manual of Style (Chicago style) recommends that an ellipsis be formed by typing three periods, each with a non-breaking space on both sides . . ., while the Associated Press Stylebook (AP style) puts the dots together, but retains a space before and after the group, thus: ....

How to Reproduce

Type " . . . " in text and run Linter with ellipsis substitution enabled.

Expected Behavior

Linter currently follows the AP Style Guide, sort of—U+2026 is labelled as an ellipsis, but the spacing is smaller than most commercial typesetting. Given that there is a difference in the Chicago and AP style guides (two of the most commonly used) and disagreement over whether U+2026 is a true ellipse, I recommend the following options:

  • Linter should offer the option to recognize any of the following as an ellipse if checked in settings (there may be other common variations that could be included):
    • . . .
    • `...
    • ...
  • Linter should offer the option to follow the Chicago or AP style guides:
    • Chicago: . . .
    • AP ' ... '
    • AP with U+2606:

This may seem like a picky detail, but if the plugin is going to offer the option to correct badly formed ellipses (which actually is a common problem), it should respect the differences in style guides. Ultimately, it would be best if Unicode added a wide ellipsis character, similar to en and em dashes.

On a related note, it would be helpful if there was an option for Linter to convert double hyphens (--) to true en (–) or em (—) dashes according to user preference.

@tryonkus tryonkus added the bug Something isn't working label Aug 21, 2024
@pjkaufman
Copy link
Collaborator

Hey @tryonkus , thanks for sending in your feedback. I think it is possible to update the Linter to allow the user to pick a style for ellipses to make it use the desired format for them. The code definitely does support that option.

But I think I am having trouble following a couple of things.

  • Linter should offer the option to recognize any of the following as an ellipse if checked in settings (there may be other common variations that could be included):
    • . . .
    • ...
    • ...
  • Linter should offer the option to follow the Chicago or AP style guides:
    • Chicago: . . .
    • AP ' ... '
    • AP with U+2606:

Normally the Linter will only recognize one format as valid and force everything to be uniform as opposed to allowing multiple different formats for the same thing. So could you elaborate on whether or not you expect the Linter to both allow you to format ellipses a certain way and also list out possible formats to leave as is? Right now that is my biggest hangup on this.

Also, as for

On a related note, it would be helpful if there was an option for Linter to convert double hyphens (--) to true en (–) or em (—) dashes according to user preference.

Have you looked at using custom replacements for this at this time? The Linter may be able to do this in the future, but my attention is geared towards some performance related changes which may take me some time to get in place.

@pjkaufman pjkaufman added the rule suggestion Suggestion to add or edit a rule label Aug 21, 2024
@tryonkus
Copy link
Author

tryonkus commented Aug 21, 2024 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working rule suggestion Suggestion to add or edit a rule
Projects
None yet
Development

No branches or pull requests

2 participants