typst / typst/codex

Use shorter modifier names for slanted equal variants

Open
#42 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

  • #89 by @Enivex — closed without merging
proposal
Dominant language
Rust
Stars
53
Forks
22
PR merge metrics
No merged PRs in 30d

Description

Context

lt.eq.slant and gt.eq.slant are very long names for quite common symbols. It is also not immediately clear that the .slant modifier applies to the equal part of the symbol (lt.slant.eq and gt.slant.eq are equally valid, but ambiguous). For more context, see the discussion on Discord.

Similarly, prec.curly.eq (≼) and succ.curly.eq (≽) make no sense.

In the following, I replace .eq.slant on lt and gt, and .curly.eq on prec and succ, with .seq. This is intended to be debated in this issue's comment thread.

Formal proposal

Rename four symbols from sym according to the following table.

Character Current name New name
⩽ LESS-THAN OR SLANTED EQUAL TO lt.eq.slant lt.seq
⩾ GREATER-THAN OR SLANTED EQUAL TO gt.eq.slant gt.seq
≼ PRECEDES OR EQUAL TO prec.curly.eq prec.seq
≽ SUCCEEDS OR EQUAL TO succ.curly.eq succ.seq

Breaking changes

lt.eq.slant and gt.eq.slant would become invalid.

Other information and concerns

Unicode defines the characters ⋞ EQUAL TO OR PRECEDES and ⋟ EQUAL TO OR SUCCEEDS, but no variant with a single horizontal line equal sign above ≺ or ≻. This may indicate that ≼ should be prec.eq, and ⪯ should be considered less common, and therefore use a more complex variant than plain eq (and similarly for ≽ and ⪰).

Concerns regarding this proposal were raised on Discord. Notably, "seq" reads like "sequence" and feels cryptic. A proposed solution is that the new names merely be added as aliases for those who wish to use them often, keeping the more self-describing names present as well.

Slanted variants of the parallel symbol use the .slanted modifier.

Related proposals

This proposal is incompatible with #43.

This proposal affects #36, since then prec.curly.eq would not be U+227C ≼ PRECEDES OR EQUAL TO, and succ.curly.eq would not be U+227D ≽ SUCCEEDS OR EQUAL TO.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the symbol definitions in sym, then read the discussion linked in the issue and compare the related proposals in #36 and #43. Done means resolving the naming or alias decision and updating the four affected symbol names consistently without breaking the agreed compatibility approach.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
content
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.