From: norstar@tnl.com (Daniel Ray)
Newsgroups: comp.unix.wizards
Subject: Re: Extended chars in Unix
Summary: Using 'mapchan' for foreign chars
Date: 8 Sep 92 15:42:03 GMT
Organization: The Northern Lights, Troy NY

In article <8953@ncratl.AtlantaGA.NCR.COM>, sbarnhar@ncratl.AtlantaGA.NCR.COM (Scott Barnhart) writes:
> 
> 
> I am using Unix SystemVR4, and want to find a way to generate the
> extended ASCII chars from the keyboard.  The reason for this is
> ...

I am posting on how to use the SCO XENIX utility 'mapchan' to solve the
problem on foreign chars. I'm not sure if UNIX 4 has it or not. If it does,
one can use the table below to generate all foreign chars plus many useful
symbols. If this works for you, the best place to put it is in /etc/rc after
adding terminals to /etc/default/mapchan or the equivalent config. file.

-----------------------cut here--------------------------------------------
#
#	@(#) /usr/lib/mapchan/tnl/tnlcf
#	The Northern Lights
#
# NO DIRECT KEYBOARD MAPPING
# NO DEAD KEY FACILITY
# SETS UP ^_ FOR COMPOSE KEY TO CONSTRUCT ALL EXTENDED ASCII CHARS
#
# You type control-underscore plus two more chars such as ^_ ' e  for
# lowercase e accent acute, etc,...
#

input
#
output
#
compose 0x1f	# ^_ (control underscore)
'_' '_' 0x1f    # ^_ (control underscore)
' ' ' ' 0x9b    # no break space
'`' '`' '`'	# backquote
'"' '"' '"'	# quote
'^' '^' '^'	# circonflex
'6' '6' '^'	# circonflex
'!' '!' 0xad    # inverted !
'8' '8' 0xec	# infinity sign
'i' 'n' 0xec	# infinity sign
'I' 'N' 0xec	# infinity sign
'n' 'o' 0xaa	# not sign
'N' 'O' 0xaa	# not sign
'?' '?' 0xa8	# inverted ?
'-' '-' 0xc4	# long hyphen
'E' 'E' 0xe4	# greek uc sigma
'3' '3' 0xe4	# greek uc sigma
's' 'i' 0xe4	# greek uc sigma
'S' 'I' 0xe4	# greek uc sigma
'g' 'e' 0xf2	# greater than or equal
'G' 'E' 0xf2	# greater than or equal
'L' 'E' 0xf3	# less than or equal
'l' 'e' 0xf3	# less than or equal
'p' 'i' 0xe3	# greek lc pi
'P' 'I' 0xe3	# greek lc pi
'G' 'A' 0xe2	# greek uc gamma
'g' 'a' 0xe7	# greek lc gamma
'T' 'H' 0xe9	# greek uc theta
't' 'h' 0xe9	# greek uc theta
'O' 'M' 0xea	# greek uc omega
'o' 'm' 0xea	# greek uc omega
'A' 'L' 0xe0	# greek lc alpha
'a' 'l' 0xe0	# greek lc alpha
'E' 'P' 0xee	# greek uc epsilon
'e' 'p' 0xee	# greek uc epsilon
'D' 'E' 0xe5	# greek lc delta
'd' 'e' 0xe5	# greek lc delta
'B' 'E' 0xe1	# greek lc beta
'b' 'e' 0xe1	# greek lc beta
'N' 'U' 0xfc	# greek lc nu
'n' 'u' 0xfc	# greek lc nu
'B' 'X' 0xdb	# full filled-in box
'b' 'x' 0xfe	# small filled-in box
'B' 'O' 0xb2	# 3/4 shade filled-in box
'B' 'x' 0xb1	# 1/2 shade filled-in box
'B' 'o' 0xb0	# 1/4 shade filled-in box
'R' 'X' 0x9e	# Rx symbol
'R' 'x' 0x9e	# Rx symbol
'r' 'x' 0x9e	# Rx symbol
'.' '.' 0xf9	# centered period
'u' 'n' 0xef	# union sign
'U' 'N' 0xef	# union sign
'S' 'Q' 0xfb	# square root sign
's' 'q' 0xfb	# square root sign
'/' '/' 0xf6	# divisor sign
'~' '~' 0xf7	# approx. equal to
'~' '=' 0xf7	# approx. equal to
'=' '~' 0xf7	# approx. equal to
'=' '=' 0xf0	# identical sign
'L' '-' 0x9c    # pound sign
'L' '=' 0x9c    # pound sign
'l' '-' 0x9c    # pound sign
'l' '=' 0x9c    # pound sign
'Y' '-' 0x9d    # yen sign
'Y' '=' 0x9d    # yen sign
'y' '-' 0x9d    # yen sign
'y' '=' 0x9d    # yen sign
'A' '-' 0xa6    # feminine ordinal indicator
'A' '_' 0xa6    # feminine ordinal indicator
'a' '-' 0xa6    # feminine ordinal indicator
'a' '_' 0xa6    # feminine ordinal indicator
'<' '<' 0xae    # angle quotation mark left
'-' '!' 0xaa    # not sign
'-' '|' 0xaa    # not sign
'O' ' ' 0xf8    # degree sign
'o' ' ' 0xf8    # degree sign
'd' 'g' 0xf8	# degree sign
'D' 'G' 0xf8	# degree sign
'o' 'o' 0xf8	# degree sign
'+' '-' 0xf1    # plus/minus sign
'2' '<' 0xfd    # superscript 2
'2' '^' 0xfd    # superscript 2
0x27 0x27  0x27    # acute accent
'U' '/' 0xe6    # micro sign
'u' '/' 0xe6    # micro sign
'/' 'u' 0xe6	# micro sign
'.' '<' 0xfa    # middle dot
'.' '^' 0xfa    # middle dot
'O' '-' 0xa7    # masculine ordinal indicator
'O' '_' 0xa7    # masculine ordinal indicator
'o' '-' 0xa7    # masculine ordinal indicator
'o' '_' 0xa7    # masculine ordinal indicator
'>' '>' 0xaf    # angle quotation mark right
'1' '4' 0xac    # fraction one-quarter
'1' '2' 0xab    # fraction one-half
'A' '"' 0x8e    # A umlaut
'"' 'A' 0x8e	# A umlaut
'*' 'A' 0x8f	# A ring
'A' '*' 0x8f    # A ring
'8' 'A' 0x8f	# A ring
'A' '8' 0x8f    # A ring
'A' 'E' 0x92    # AE ligature
'C' ',' 0x80    # C cedilla
',' 'C' 0x80    # C cedilla
0x27 'E' 0x90	# E acute
'E' 0x27 0x90   # E acute
'D' '-' 0xe9    # capital Icelandic eth
'D' 'H' 0xe9    # capital Icelandic eth
'N' '=' 0xa5    # N tilde
'N' '~' 0xa5    # N tilde
'~' 'N' 0xa5	# N tilde
'"' 'O' 0x99	# O umlaut
'O' '"' 0x99    # O umlaut
'O' '/' 0xed    # O slash
'/' 'O' 0xed    # O slash
'U' '"' 0x9a    # U umlaut
'"' 'U' 0x9a	# U umlaut
'P' '1' 0x9e    # capital Icelandic thorn
'S' 'S' 0xe1    # sharp ss
's' 's' 0xe1    # sharp ss
'a' '(' 0x85    # a grave
'a' '`' 0x85    # a grave
'`' 'a' 0x85    # a grave
'a' 0x27 0xa0    # a acute
0x27 'a' 0xa0    # a acute
'a' '>' 0x83    # a circumflex
'a' '^' 0x83    # a circumflex
'^' 'a' 0x83    # a circumflex
'a' '"' 0x84    # a umlaut
'"' 'a' 0x84	# a umlaut
'a' '*' 0x86    # a ring
'*' 'a' 0x86	# a ring
'a' '8' 0x86    # a ring
'8' 'a' 0x86	# a ring
'a' 'e' 0x91    # ae ligature
'c' ',' 0x87    # c cedilla
',' 'c' 0x87    # c cedilla
'e' '(' 0x8a    # e grave
'e' '`' 0x8a    # e grave
'`' 'e' 0x8a    # e grave
'e' 39  0x82    # e acute
39  'e' 0x82    # e acute
'e' '>' 0x88    # e circumflex
'e' '^' 0x88    # e circumflex
'^' 'e' 0x88    # e circumflex
'e' '6' 0x88    # e circumflex
'6' 'e' 0x88    # e circumflex
'e' '"' 0x89    # e umlaut
'i' '(' 0x8d    # i grave
'i' '`' 0x8d    # i grave
'`' 'i' 0x8d    # i grave
'i' 39  0xa1    # i acute
39  'i' 0xa1    # i acute
'i' '>' 0x8c    # i circumflex
'i' '^' 0x8c    # i circumflex
'^' 'i' 0x8c    # i circumflex
'i' '6' 0x8c    # i circumflex
'6' 'i' 0x8c    # i circumflex
'i' '"' 0x8b    # i umlaut
'"' 'i' 0x8b	# i umlaut
'd' '-' 0xeb    # lowercase Icelandic eth
'd' 'h' 0xeb    # lowercase Icelandic eth
'n' '=' 0xa4    # n tilde
'n' '~' 0xa4    # n tilde
'~' 'n' 0xa4    # n tilde
'o' '(' 0x95    # o grave
'o' '`' 0x95    # o grave
'`' 'o' 0x95    # o grave
'o' 39  0xa2    # o acute
39  'o' 0xa2    # o acute
'o' '>' 0x93    # o circumflex
'o' '^' 0x93    # o circumflex
'^' 'o' 0x93    # o circumflex
'o' '6' 0x93    # o circumflex
'6' 'o' 0x93    # o circumflex
'o' '"' 0x94    # o umlaut
'"' 'o' 0x94	# o umlaut
':' '-' 0xf6    # divide operator
'o' '/' 0xed    # o slash
'/' 'o' 0xed    # o slash
'u' '(' 0x97    # u grave
'u' '`' 0x97    # u grave
'`' 'u' 0x97    # u grave
'u' 39  0xa3    # u acute
39  'u' 0xa3    # u acute
'u' '>' 0x96    # u circumflex
'u' '^' 0x96    # u circumflex
'^' 'u' 0x96    # u circumflex
'u' '6' 0x96    # u circumflex
'6' 'u' 0x96    # u circumflex
'u' '"' 0x81    # u umlaut
'"' 'u' 0x81	# u umlaut
'p' '1' 0xe8    # lowercase Icelandic thorn
'y' '"' 0x98    # y umlaut (ij ligature)

beep
-----------------------cut here--------------------------------------------

-- norstar
The Northern Lights, Troy NY                                 |      
tnl dialins: 518 237-2163 @ 300-2400 bps 8N1 $free         ` | /    
------------------------------------------------------   --- * ---  
UUCP: uupsi3!tnl!norstar                                   / | .    
Internet: norstar@tnl.com                                    |      
Newsgroups: comp.unix.wizards