Replies: 5 comments
-
i definitely looked into this once, long ago. let me see if i can find my notes. |
Beta Was this translation helpful? Give feedback.
-
so you need something that can parse terminfo files, assuming you're going to keep using them, which we certainly are (in combination with our other methods). i'd rather see terminfo expanded and corrected than abandon it. so that means either writing your own, or using ncurses, or using some other terminfo parser. i recall seeing one (i think it began with an 'a'?), and even looked at it, but it did not impress me. i'd be willing to consider an alternative, because ncurses terminfo parsing is a substantial portion of our startup costs, and most everything else depends on it (so you can't parallelize it with other work). |
Beta Was this translation helpful? Give feedback.
-
unibilium is what i was thinking of: https://www.mankier.com/3/unibilium.h |
Beta Was this translation helpful? Give feedback.
-
#463 talks about this |
Beta Was this translation helpful? Give feedback.
-
so yeah, pretty much what you summed up in your initial post. of that, the parser certainly seems the largest component. i have a hard time believing that reimplementing the terminfo parser would be worth the win in startup time, especially in the long term, assuming there is such a win. i'd rather speed up the ncurses implementation, though i think the chances of getting such a thing through tdickey are scant (especially given the more aggressive portability concerns of ncurses). |
Beta Was this translation helpful? Give feedback.
-
I'd like to make my build a little simpler by removing the dependency on ncurses. I think it's fine to still depend on terminfo files, I'm not looking to go that far... But, it feels like so little of ncurses is used in notcurses, that it is ripe for removal.
Does anyone have any feel for what this might entail? Do we just need to rewrite the terminfo file parser,
setupterm()
,tigetstr()
,tigetnum()
,tigetflag()
?Beta Was this translation helpful? Give feedback.
All reactions