macvim-dev / macvim-dev/macvim

opentype language tags for core text renderer

Đang mở
#491 1 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Feature Request
Ngôn ngữ chính
Vim Script
Star
7.9k
Fork
691
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

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.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Hướng nghiên cứu

Bắt đầu bằng cách xác định trình kết xuất Core Text của MacVim và các điểm vào để thiết lập phông chữ GUI được đề cập trong yêu cầu. Theo dõi cách một autocommand dành riêng cho từng loại tệp có thể cung cấp các thẻ ngôn ngữ OpenType, đồng thời xác nhận hành vi dự kiến bằng các ví dụ Iosevka và các tài liệu tham khảo được liên kết. Công việc được xem là hoàn tất khi một thiết lập được ghi chép có thể áp dụng các thẻ ngôn ngữ theo từng loại tệp cho phông chữ Core Text.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
macos, vim
Lĩnh vực
desktop
Loại issue
Tính năng
Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
25/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.