Skip to content

feat(font): add disable_ligatures toggle in advanced font settings#800

Open
HermeticOrmus wants to merge 1 commit into
pop-os:masterfrom
HermeticOrmus:feature/disable-ligatures
Open

feat(font): add disable_ligatures toggle in advanced font settings#800
HermeticOrmus wants to merge 1 commit into
pop-os:masterfrom
HermeticOrmus:feature/disable-ligatures

Conversation

@HermeticOrmus
Copy link
Copy Markdown

Closes #735.

Adds Config.disable_ligatures (default: false). When enabled, disables the OpenType liga, clig, and calt features on the terminal's default font attrs.

The toggle is exposed in View > Settings > Font > Advanced font settings, alongside the existing Make bold text brighter toggle, matching the location requested in the issue.

Changes propagate live to existing terminals through Terminal::set_config, so toggling does not require restarting tabs.

Files

  • i18n/en/cosmic_term.ftldisable-ligatures = Disable ligatures
  • src/config.rsdisable_ligatures: bool field, #[serde(default)]
  • src/main.rsMessage::DisableLigatures, settings row, update handler
  • src/terminal.rsno_ligature_features() helper, applied in new and on live config change

Verification

  • cargo check passes
  • Default behaviour unchanged when flag is false
  • Toggle applies live without tab restart

Adds Config.disable_ligatures (default: false). When enabled, disables
the OpenType `liga`, `clig`, and `calt` features on the terminal's
default font attrs. Toggle wired into View > Settings > Font > Advanced
font settings, propagates live to existing terminals via set_config.

Refs: pop-os#735
@jackpot51
Copy link
Copy Markdown
Member

The PR template is mandatory

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.

Support toggling (in particular, disabling) ligatures.

2 participants