|
|
|
|
|
by gnachman
2879 days ago
|
|
There is no official feature roadmap, but here's the current plan: 3.2.x will be focused on rendering improvements. The full change log is here: https://iterm2.com/appcasts/testing_changes3.txt 3.3, which is currently under development, is adding a Python scripting API (https://iterm2.com/python-api/) and fixing tab and window titles to make sense, plus adding a status bar. Feature requests that are candidates for 3.4 are here: https://gitlab.com/gnachman/iterm2/milestones/8 If you have something in mind file an issue. Y'all are my PMs. There is already support for ligatures (prefs>profiles>text>enable ligatures). The Metal renderer does not support them because that's an extra level of complexity I can't handle in the first release. It would require constructing CTLineRefs which is already the slowest part of drawing. Subpixel antialiasing also makes this really difficult, but since that's going away in Mojave I'll revisit it. Future performance enhancements that I have in mind are:
- Faster tokenization (including revisiting SIMD)
- Mojave-specific optimizations (removing subpixel AA and its knock-on consequences)
- Move per-frame setup work into a compute shader. This is tricky because some people have CPUs that are relatively faster than their GPUs (thanks Intel!)
- Reuse the preceding frame's rendered texture when updating less than a full frame
- Move work off the main thread where possible |
|
Looking forward to Mojave dropping support for subpixel-antialiasing and maybe iTerm supporting Ligatures with the new drawing engine someday.