Date: Thu, 22 Nov 2001 18:06:32 +0200 From: =?iso-8859-7?Q?=C1=ED=E1=F3=F4=E1=F3=DC=F4=EF=F2=20=C2=E1=F3=DF=EB=E5=E9=EF=F2?= <B.Anastasatos@MyRealBox.com> To: FreeBSD-gnats-submit@freebsd.org Cc: Panagiotis Astithas <past@netmode.ece.ntua.gr> Subject: misc/32193: Termcap ACS support for greek ISO-8859-7 fonts Message-ID: <3BFD2288.398BACD2@MyRealBox.com>
next in thread | raw e-mail | index | archive | help
>Number: 32193
>Category: misc
>Synopsis: Termcap ACS support for greek ISO-8859-7 fonts
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Thu Nov 22 08:10:01 PST 2001
>Closed-Date:
>Last-Modified:
>Originator: Basileios Anastasatos
>Release: FreeBSD 4.3-RELEASE i386
>Organization:
none
>Environment:
System: FreeBSD zephyr.compass 4.3-RELEASE FreeBSD 4.3-RELEASE #1: Sun
Nov 11 22:56:01 EET 2001
toor@zephyr.compass:/usr/src/sys/compile/2001-11-11 i386
>Description:
cons25 termcap entry does not support properly ACS (Alternate
Character Set) when a greek ISO-8859-7 font is activated. The reason
is that cons25 assumes a CP-437 encoded font. When using a ncurses
program that displays ACS characters (e.g. /usr/bin/dialog) the result
is ugly lines and columns of repeated greek letters instead of
beautiful line graphics.
>How-To-Repeat:
Activate greek locale and run vidfont or kbdmap. Both programs use
/usr/bin/dialog to display dialog boxes with borders made of ACS
characters. Unless a patch that chooses a greek font is applied on
/syscons/fonts/INDEX.fonts (or /syscons/keymaps/INDEX.keymaps,
respectively), vidfont switches automatically to a CP-437 font, thus
hiding the problem. Now, switch to another virtual console and choose
an ISO-8859-7 greek font, then switch back to the previous console.
You will notice that the nice border around the menu box was
transformed to lines of uppercase deltas and columns of superscript
threes.
>Fix:
The quick fix is to use cons25w instead of cons25, by setting TERM to
that value or by changing the /etc/ttys entries. Then ncurses library
will substitute ASCII characters for ACS ones.
A patch to /usr/src/share/termcap/termcap.src is included, that adds
the entries cons25l7, cons25l7-m, cons30l7 etc. The cons25l7 entry
maps 4 ACS characters to positions in the upper half of ISO-8859-7,
plus 4 more ACS characters to positions in the range 0-31, as does
cons25. ncurses emulates the remaining 24 ACS characters.
The patch follows:
*** termcap.src Thu Nov 22 04:04:22 2001
--- termcap.src.NEW Thu Nov 22 04:03:47 2001
***************
*** 2308,2313 ****
--- 2308,2335 ----
:li#60:tc=cons25l1:
cons60l1-m|cons60-iso8859-1-mono:\
:li#60:tc=cons25l1-m:
+ # ISO 8859-7 FreeBSD console with limited ACS support
+ cons25l7:cons25-iso8859-7:\
+ :ac=f\260g\261{\360}\243i^U`^D.^Y-^X:\
+ :tc=cons25w:
+ cons25l7-m|cons25-iso8859-7-mono:\
+ :pa@:Co@:AF@:AB@:AX@:op@:us=\E[4m:ue=\E[24m:tc=cons25l7:
+ cons30l7|cons30-iso8859-7:\
+ :li#30:tc=cons25l7:
+ cons30l7-m|cons30-iso8859-7-mono:\
+ :li#30:tc=cons25l7-m:
+ cons43l7|cons43-iso8859-7:\
+ :li#43:tc=cons25l7:
+ cons43l7-m|cons43-iso8859-7-mono:\
+ :li#43:tc=cons25l7-m:
+ cons50l7|cons50-iso8859-7:\
+ :li#50:tc=cons25l7:
+ cons50l7-m|cons50-iso8859-7-mono:\
+ :li#50:tc=cons25l7-m:
+ cons60l7|cons60-iso8859-7:\
+ :li#60:tc=cons25l7:
+ cons60l7-m|cons60-iso8859-7-mono:\
+ :li#60:tc=cons25l7-m:
#
dosansi|ANSI.SYS standard crt:\
:am:bs:ce=\E[K:cl=\E[2J:cm=\E[%i%d;%dH:co#80:\
>Release-Note:
>Audit-Trail:
>Unformatted:
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3BFD2288.398BACD2>
