macvim-dev / macvim-dev/macvim

opentype language tags for core text renderer

未关闭
#491 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

Feature Request
主要语言
Vim Script
星标
7.9k
派生
691
PR 合并指标
30 天内没有已合并 PR

描述

apparently the Core text renderer supports activating language tags in advanced opentype fonts, https://en.wikipedia.org/wiki/Apple_Advanced_Typography

the iosevka font implements fancy ligatures on a per-programming-language basis using these language tags.
https://github.com/be5invis/Iosevka/issues/56
(see also the README of this repo for examples)
the atom editor supports this via the use of custom stylesheets afaiu.

i find this a saner solution than enabling a fixed set of ligatures globally for a gui font, since the set of ligatures that make sense depends on the programming language. for example, is <= an arrow or a comparison operator? does |> have a special meaning in the language? etc.

so, feature request: could MacVim allow setting language tags for the Core Text renderer in opentype gui fonts? ideally this would be a new setting that can be put into a filetype-specific autocommand.

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

首先定位 MacVim 的 Core Text 渲染器,以及请求中提到的 GUI 字体设置入口。跟踪文件类型专用的 autocommand 如何提供 OpenType 语言标签,并结合 Iosevka 示例和链接的参考资料确认预期行为。当一个有文档说明的设置能够在 Core Text 字体中按文件类型应用语言标签时,即表示完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
macos, vim
领域
desktop
Issue 类型
功能
难度
5/5
预计耗时
一周以上
活跃度
停滞
描述清晰度
基本清楚
新手友好度
25/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。