Ticket #1510 (closed enhancement: duplicate)

Opened 10 years ago

Last modified 2 years ago

Use more pseudographics in user interface

Reported by: sergey-feo Owned by:
Priority: minor Milestone:
Component: mc-core Version: 4.7.0-pre1
Keywords: Cc:
Blocked By: Blocking:
Branch state: no branch Votes for changeset:

Description

(Excuse me for my bad English)

Current user interface of mc avoid use pseudographics (except single lines) and so IMHO have clumsy look.

The main reasons avoiding pseudographics IMHO was:

  1. Simpler programming.
  2. No problems with different locales.
  3. No problems with black-and-white terminals.

The reasons why single-line pseudographics exists in mc is IMHO:

  1. ncurses have special features (ACS_) variables for this.
  2. Too bad look without it.

Ncurses have ACS_ variables only for single pseudographic lines, not for double (as VT100?). IMHO it is main reason why double-line pseudographics are not used in mc and many other programs under GNU/Linux.

Now is epoch of Unicode. The VT-100, black-and-white terminals is deep history. Most 8-bit encodings is also history, but not so deep :-)
Most of encodings have rich set of pseudographic symbols and iconv can do conversions between encodings.

I suggest review mc interface and look at old DOS applications that did not afraid to use pseudographics.
The best example of good looking console interface is IMHO Borland Turbo Vision library. You can see it in DOS Naigator ("DN", http://www.dnosp.com). Also old well-known Norton Commander ("NC") 5 and Norton Utilities ("NU") 8 have good interfaces.
Microsoft Visual Basic for DOS have interesting, but IMHO not so good looking interface.

Let's press F7 and see to directory create dialog.

Inactive buttons looks like [ OK ] in mc now.
It can be remade as rectangles with shadows.
Active buttons looks like [< OK >] now. This [<>] IMHO looks very inaccurate. DOS Navigator's ▶ OK ◀ with colored background is better.

Let see to the [CIRCUMFLEX ACCENT] button. Why it use "CIRCUMFLEX ACCENT" symbol that pointing to the top when list opens at bottom of this button? More logical will be [v]. And much more beautiful will be using "▼" or "↓" with colour background (see DN's F7 dialog).

Next, let see on F7 dialog boundaries. It consists of single-line boundary and empty boundary around it. IMHO empty boundary should be deleted.

Let press [CIRCUMFLEX ACCENT] button. We will see created directories history. It has no empty boundary around single-line boundary. Let see to the scroll bar. It made with symbols "CIRCUMFLEX ACCENT", "*", "v", "│" and IMHO has inaccurate primitive look. We can use:
— "▲" or "↑" in place of "CIRCUMFLEX ACCENT";
— "◼" in place of "*";
— "▲" or "↑" in place of "v";
— "▒" in place of "│".

All this changes can be done with using symbols from old 8-bit charsets like DOS CP866.

Also in other ticket I suggest make several "themes" for mc user interface:
without pseudographics, with pseudographics from 8-bit encodings and theme with Unicode pseudographics.


Regards, Sergey

Change History

comment:1 Changed 10 years ago by ossi

well, i mostly agree ...

your suggested characters for the scroll bars won't work, though - the replacement for "*" is not in the univga derivative font which i'm using. and the replacement for | is not in the font firefox uses, but i don't mind that one.
and you made a copy&paste mistake with the arrows. :P

on a general note, i see little point in using double lines. they just add visual clutter.

comment:2 Changed 10 years ago by sergey-feo

your suggested characters for the scroll bars won't work, though - the replacement for "*" is not in the univga derivative font which i'm using.

It is strange. I suggest only symbols that exist in classic DOS CP437 encoding (http://en.wikipedia.org/wiki/Cp437) that is base for many other 8-bit encodings. The square — replacement for "*" — has number 254dec in CP437. It also exists in Unicode.

and the replacement for | is not in the font firefox uses

Replacement for "|" is also very typical DOS symbol. It has number 177dec in CP437 and of course exist in Unicode. Firefox can use Liberation and Dejavu fonts families. This good Unicode fonts available in all major modern GNU/Linux distros. This symbol exists also in "standard" "fixed" font that is available on most GNU/Linux distros.

I think you use exotic old fonts that have very poor symbols set. Try Dejavu/Liberation? Sans in Firefox and Dejavu/Liberation? Mono in terminal emulator.

and you made a copy&paste mistake with the arrows. :P

Yes, replacements for "v" should be "▼" or "↓" :-)

on a general note, i see little point in using double lines. they just add visual clutter.

It is very subjectively thing as we can see :-)
I like double lines. Please look at http://www.midnight-commander.org/attachment/ticket/1511/dn640_screenshots.tar. This program actively uses double lines and (on my subjectively view) its TUI is not clutterly.

By the way: I suggest multiple mc TUI themes in http://www.midnight-commander.org/ticket/1511. With this solution mc will can use old fonts with classic theme and modern fonts with modern themes.

comment:3 Changed 10 years ago by ossi

well, i'm choosing my fonts based on legibility, not on the presence of glyphs which nobody ever needs under normal circumstances.
also note that mc is relatively often displayed on ttys which are ancient by all practical means.
but i'm fine with whatever "themes" as long as something which is covered by practically all terminals remains the default.

comment:4 Changed 10 years ago by sergey-feo

well, i'm choosing my fonts based on legibility

My criteria was legibility + existence of most symbols that I need.

which nobody ever needs under normal circumstances.

Normal circumstances is very subjective thing that differs for Unix and DOS traditions :-)

i'm fine with whatever "themes" as long as something which is covered by practically all terminals remains the default

I agree. Default theme can be current "theme" or something more primitive without even single pseudographic lines.

So, we begin talking about themes. I suggest to close this ticket as dublicate of 1511.

comment:5 Changed 10 years ago by andrew_b

  • Status changed from new to closed
  • Resolution set to duplicate

Closed as duplicate of #1511.

Last edited 2 years ago by andrew_b (previous) (diff)

comment:6 Changed 2 years ago by andrew_b

  • Branch state set to no branch
  • Milestone Future Releases deleted
Note: See TracTickets for help on using tickets.