[HN Gopher] Hacking the planet with Notcurses: a guide to TUIs (...
       ___________________________________________________________________
        
       Hacking the planet with Notcurses: a guide to TUIs (2020) [pdf]
        
       Author : Tomte
       Score  : 76 points
       Date   : 2021-12-05 17:26 UTC (5 hours ago)
        
 (HTM) web link (nick-black.com)
 (TXT) w3m dump (nick-black.com)
        
       | nickdothutton wrote:
       | We have to go back.
        
       | marcodiego wrote:
       | Curses and notcurses have their place but I still miss the
       | simplicity of borland's conio.h implementation. Also remember
       | that visual basic was initially written for DOS. Having a open
       | source multiplatform text mode visual basic would be interesting.
        
         | michaelsbradley wrote:
         | Not exactly what you're describing, but check out Final Cut:
         | https://github.com/gansm/finalcut
        
           | marcodiego wrote:
           | Screenshot are cool! I remember someone had maintained the
           | open source implementation of turbo vision. I don't hear
           | about it for a long time, so I think it was abandoned and it
           | had to make a few changes to workaround turbo vision
           | unsafeness. This one seems cool!
        
             | michaelsbradley wrote:
             | A modern port of Turbo Vision 2.0:
             | https://github.com/magiblot/tvision
        
         | cout wrote:
         | AFAIK vbdos came after the Windows version. It was fun to play
         | with but a little slow.
        
       | entelechy0 wrote:
       | TIL of notcurses
       | 
       | "Notcurses is licensed under Apache2, a demonstration that I have
       | transcended your petty world of material goods, fiat currencies,
       | and closed sources. Implement Microsoft Bob in it. Charge rubes
       | for it. Put it in your ballistic missiles so that you have a nice
       | LED display of said missile's speed and projected yield; right
       | before impact, scroll "FUCK YOU" in all the world's languages,
       | and close it out with a smart palette fade. Carve the compiled
       | objects onto bricks and mail them to Richard Stallman, taunting
       | him through a bullhorn as you do so."
       | 
       | This inspires me
        
       | michaelsbradley wrote:
       | The author of Notcurses released version 3.0.0 several days ago,
       | a ton of work went into that!
       | 
       | https://github.com/dankamongmen/notcurses/releases/tag/v3.0....
        
       | gadrev wrote:
       | Ok, if you're looking into notcurses, you may want to watch this:
       | 
       | https://www.youtube.com/watch?v=dcjkezf1ARY (~ 6')
       | 
       | the WTF effect that video had on me lasted quite a while.
       | 
       | I still can't describe it.
        
         | actually_a_dog wrote:
         | Nice! This really makes me want to play with notcurses. :) BTW,
         | did you notice the image of a coronavirus in there?
        
       | gorgoiler wrote:
       | Happy was the day I gave up on curses and just started splatting
       | crap at the terminal with my own control codes.
       | 
       | For too long did I think that curses was the one and only way to
       | do anything with a terminal.
        
       | akkartik wrote:
       | From page 8:
       | 
       |  _" We don't switch from blue to some other specified color,
       | because we don't know the background color of the terminal. Some
       | people, possibly aliens, don't favor a dark terminal background.
       | If the terminal background were white, and we had just used e.g.
       | ncdirect_fg(n, 0xffffff), text following "house" would be
       | invisible._
       | 
       |  _" One might observe that a user with a blue background will
       | have invisible "house" text. This is a real issue, one lacking a
       | perfect solution. It is not generally possible to discover the
       | RGB values of the default colors. I suppose all one can do is
       | rest easy, serene in the belief that white backgrounds are one
       | thing, but people with chromatic backgrounds deserve whatever
       | happens to them."_
       | 
       | That's a lot of cognitive dissonance in a work about UI design.
       | Let's try to do better in making TUIs mainstream. That requires
       | encouraging people to use the few features terminals _do_
       | provide. Like chromatic backgrounds.
       | 
       | I've been doing a fair amount of ncurses hacking recently[1], and
       | I prefer to always explicitly specify colors. People won't get
       | their preferred colors by default, but they'll always get a
       | legible configuration by default.
       | 
       | [1] https://github.com/akkartik/teliva
        
         | paulryanrogers wrote:
         | This same problem has plagued the web for decades. I used to
         | change default colors to ease my eyes, and whenever foreground
         | CSS lacked a background color it often became impossible to
         | read. Accessibility modes came soon after but were too binary
         | for me.
         | 
         | These days we have dark modes and more elaborate extensions.
         | Still sometimes things don't align.
         | 
         | So thanks for at least specifying both.
        
           | akkartik wrote:
           | Yeah, it's a hard problem, and I liked that OP acknowledged
           | that. But I liked less how it made a virtue of the bad
           | situation. There's really no way to rest easy or be serene
           | here.
        
       | ripley12 wrote:
       | I've been reading this recently to get up to speed with
       | Notcurses, it's fantastic. Funny, engaging, and a surprisingly
       | good general overview of how terminals work.
       | 
       | One thing to note: it was written for an older version of
       | Notcurses. So some of the details aren't 100% up to date, but it
       | covers the fundamentals.
        
       ___________________________________________________________________
       (page generated 2021-12-05 23:00 UTC)