macvim-dev / macvim-dev/macvim
Implement Metal renderer for MacVim
Nessuno ha ancora preso questa issue.
- Lingua principale
- Vim Script
- Stelle
- 7.9k
- Fork
- 691
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
We should implement a Metal-based text renderer for MacVim. #858 fixed a lot of the issues with the previous way MacVim rendered text and laid the grounds work by storing the buffer of the text so it could be redrawn. However, it is not as fast as it could be because it relies on software rendering and on scrolling (or other events) it needs to redraw quite a fair amount of texts, leading to scrolling not being as smooth as it could be.
Implementing a proper Metal renderer would allow us to get the native scrolling performance back as it's trivial to submit redraws.
There are also other downstream features (some in experimentation) that would need the Metal renderer to work properly. For example, if we want per-pixel scrolling (#273), we need a high-enough frame rate to be able to generate a smooth animation. Other special animation effects such as locating cursors, or cursor animations would all benefit from a Metal renderer.
Also see #1259 for performance issue with it.
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia esaminando il lavoro di rendering descritto nell’issue #858 e il problema di prestazioni segnalato in #1259, quindi ispeziona l’attuale percorso di rendering software di MacVim. L’issue è completata quando un renderer basato su Metal supporta lo scorrimento nativo fluido e fornisce le basi di rendering necessarie per le funzionalità di animazione downstream menzionate qui.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- macos, vim
- Ambito
- computer-graphics, desktop, performance
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 22/100