Page 1 of 3 123 LastLast
Results 1 to 10 of 22

Thread: Text based user interfaces

  1. #1
    Join Date
    Apr 2012
    Beans
    39

    Text based user interfaces

    I've been thinking about text based user interfaces (TUIs) recently. TUIs have heaps of pros compared to GUIs. They are generally faster to use, faster to develop and according to the wikipedia they often allow more control over the software. The few cons, in my opinion, only exist because there has been very little modernization of TUIs. Google screenshots of ncurses and you'll see what I mean. A modern TUI could easily incorporate images, nice colors, multiple fonts and so on. The biggest con is that most people rarely use them and often have the opinion that they will be difficult to use.

    Does anyone know of a modern TUI library for C or C++? Despite the pros, would anyone even use a TUI in this day and age?

  2. #2
    Join Date
    Aug 2010
    Location
    Lancs, United Kingdom
    Beans
    1,588
    Distro
    Ubuntu Mate 16.04 Xenial Xerus

    Re: Text based user interfaces

    I don't understand. In what way is a TUI with "images, nice colors, multiple fonts and so on" not a GUI?

  3. #3

    Re: Text based user interfaces

    Isn't this called the console presently?
    Windows assumes the user is an idiot.
    Linux demands proof.

  4. #4
    Join Date
    Apr 2012
    Beans
    39

    Re: Text based user interfaces

    Quote Originally Posted by spjackson View Post
    I don't understand. In what way is a TUI with "images, nice colors, multiple fonts and so on" not a GUI?
    You're right, a true TUI will only have text and symbols. So I guess what I'm describing is a 'graphical TUI' or something. Maybe a GUI that primarily displays text. Image an old school application like this

    http://en.wikipedia.org/wiki/File:Synchronet.png

    with a logo, modernized fonts and a background image.

    Isn't this called the console presently?
    Maybe . . depends. I'm not really talking about command line interfaces (CLI). Bash has a TUI, gcc has a CLI.

  5. #5
    Join Date
    Jul 2012
    Beans
    52

    Re: Text based user interfaces

    Quote Originally Posted by SuperCamel View Post
    You're right, a true TUI will only have text and symbols. So I guess what I'm describing is a 'graphical TUI' or something. Maybe a GUI that primarily displays text. Image an old school application like this

    http://en.wikipedia.org/wiki/File:Synchronet.png

    with a logo, modernized fonts and a background image.


    Maybe . . depends. I'm not really talking about command line interfaces (CLI). Bash has a TUI, gcc has a CLI.
    I think what you are describing is an interface that can be navigated with a keyboard beyond just a TAB as can be done with some GUI interfaces today (like a web browser). When you have a text-based menu that is "active", then a key usually corresponding to a letter of the alphabet would activate that menu item. HTML browsers support the TAB which leads to a very linear navigation among all the potential items in the UI. I don't think any keystroke will perform the equivalent of a "hover" which often bring up menus. So, it may be nice to be able to hit a key that does that.

    Irregardless of whether I have interpreted your vision or not, I don't know if such libraries exist beyond something like ncurses that you mentioned.

  6. #6
    Join Date
    Aug 2011
    Location
    47°9′S 126°43W
    Beans
    2,172
    Distro
    Ubuntu 16.04 Xenial Xerus

    Re: Text based user interfaces

    Quote Originally Posted by SuperCamel View Post
    Maybe a GUI that primarily displays text. I
    This is called a "web application".

  7. #7
    Join Date
    Dec 2012
    Beans
    24

    Re: Text based user interfaces

    I think what the OP is talking about is for example why does the terminal open images in a new window? theoretically you could have these displayed in the terminal in an equally high quality.

    How about terminal applications which dock to one side of the terminal? You could have a music player on the right-hand strip, for example.

  8. #8
    Join Date
    Apr 2012
    Beans
    39

    Re: Text based user interfaces

    Quote Originally Posted by mevun View Post
    I think what you are describing is an interface that can be navigated with a keyboard beyond just a TAB as can be done with some GUI interfaces today (like a web browser). When you have a text-based menu that is "active", then a key usually corresponding to a letter of the alphabet would activate that menu item. HTML browsers support the TAB which leads to a very linear navigation among all the potential items in the UI. I don't think any keystroke will perform the equivalent of a "hover" which often bring up menus. So, it may be nice to be able to hit a key that does that.

    Irregardless of whether I have interpreted your vision or not, I don't know if such libraries exist beyond something like ncurses that you mentioned.
    You've pretty much nailed my description for me. Thanks.

    Such an interface would be much better for a lot of the software we use. Applications such as file sharing clients, audio converters and so on. I use an TUI based inventory management system on a daily basis and it's super quick to use.

    From a programmers perspective, if it was based on synchronous functions rather than a typical GUIs event based system that would be also ideal IMO. Unfortunately, to create such a library it would probably need to be based on an event driven GUI library like Gtk+ and therefor would need to be multi threaded to give the illusion that the application has halted pending user input. I might have a crack at making it myself . . .

    Would anyone use it though? Has the TUI died of old age, or is it niche enough to justify a revival?

  9. #9
    Join Date
    Dec 2012
    Beans
    24

    Re: Text based user interfaces

    I think the TUI could stage a comeback. It would be a different sort of device, but could find a niche, rather like the chromebook is doing but in the other direction.

    One thing that would interest me would be a minimal system. If I remember correctly someone once made a Linux distribution containing GNU/Linux and emacs, and that was all. Emacs could do pretty much all you want a TUI to do, but elisp is not the easiest language to master.

    Stallman once said that when he started the gnu project, he wasn't sure about which language to use. He considered writing the operating system in lisp but discarded the idea because of performance problems, and decided to go with C instead (and wrote gcc and glibc as well). Nowadays computers are a lot faster while scripting languages remain easier to code in. A project such as GNU/Linux with a TUI userland in a decent modern scripting language (dart? ruby?) would be interesting.

  10. #10
    Join Date
    Jun 2007
    Location
    Malvern, UK
    Beans
    992
    Distro
    Ubuntu 10.04 Lucid Lynx

    Re: Text based user interfaces

    Sorry if i'm being stupid but I still have no idea what you mean by TUI.

Page 1 of 3 123 LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •