Unicode support for 8x16graph font

This commit is contained in:
Markus Gans 2019-10-29 01:42:10 +01:00
parent ff39c85a33
commit 1671a5ff3e
21 changed files with 19808 additions and 3752 deletions

View File

@ -1,3 +1,6 @@
2019-10-28 Markus Gans <guru.mail@muenster.de>
* Unicode support for 8x16graph font
2019-10-20 Markus Gans <guru.mail@muenster.de>
* New method setInputType() in FLineEdit that allows to obscure
password entries

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

View File

@ -1,35 +0,0 @@
#!/bin/bash
N=0
HEIGHT=16
FONTFILE="8x16graph.bdf"
(
echo -e "// newfont.h\\n"
echo -e "#ifndef FNEWFONT_H"
echo -e "#define FNEWFONT_H\\n"
echo -e "namespace finalcut\\n{\\n"
echo -e "namespace fc\\n{\\n"
echo -e "static unsigned char __8x16graph[] =\\n{"
grep -A${HEIGHT} ^BITMAP "$FONTFILE" \
| tr '\n' ',' \
| sed -e 's/BITMAP,//g' \
| sed -e 's/--,/\n/g' \
| tr '[:upper:]' '[:lower:]' \
| sed -e 's/,/, /g' \
| sed -e 's/\([0-9a-f][0-9a-f]\)/0x\1/g' \
| sed -e 's/^0/ 0/g' \
| sed -e '$s/, $/ \n/' \
| while IFS=$'\n'; read -r LINE
do
echo "$LINE /* $N */"
(( N++ ))
done
echo -e "};"
echo -e "\\n} // namespace fc"
echo -e "\\n} // namespace finalcut"
echo -e "\\n#endif // FNEWFONT_H"
) > newfont.h

67
fonts/bdf2code.sh Executable file
View File

@ -0,0 +1,67 @@
#!/bin/bash
function create_code_file ()
{
ucs2any -d "$FONTFILE" "$MAP" "${REGISTRY}-${ENCODING}"
(
echo -e "// ${1}\\n"
echo -e "#ifndef ${INCLUDE_GUARD}"
echo -e "#define ${INCLUDE_GUARD}\\n"
echo -e "namespace finalcut\\n{\\n"
echo -e "namespace fc\\n{\\n"
echo -e "static unsigned char ${NAME}[] =\\n{"
grep -A"${HEIGHT}" "^BITMAP" "$NEWFONTFILE" \
| tr '\n' ',' \
| sed -e 's/BITMAP,//g' \
| sed -e 's/--,/\n/g' \
| tr '[:upper:]' '[:lower:]' \
| sed -e 's/,/, /g' \
| sed -e 's/\([0-9a-f][0-9a-f]\)/0x\1/g' \
| sed -e 's/^0/ 0/g' \
| sed -e '$s/, $/ \n/' \
| while IFS=$'\n'; read -r LINE
do
echo "$LINE /* $N */"
(( N++ ))
done
echo -e "};"
echo -e "\\n} // namespace fc"
echo -e "\\n} // namespace finalcut"
echo -e "\\n#endif // ${INCLUDE_GUARD}"
) > "${1}"
rm -f "$NEWFONTFILE"
}
#-------------------------#
# Convert newfont to code #
#-------------------------#
N=0
HEIGHT=16
FONTFILE="8x16graph.bdf"
MAP="map-newfont"
REGISTRY="nf"
ENCODING="fontspecific"
INCLUDE_GUARD="FNEWFONT_H"
NAME="__8x16graph"
NEWFONTFILE="8x16graph-nf-fontspecific.bdf"
create_code_file "newfont.h"
#--------------------------#
# Convert VGA font to code #
#--------------------------#
N=0
HEIGHT=16
FONTFILE="8x16graph.bdf"
MAP="map-vga"
REGISTRY="cp437"
ENCODING="1"
INCLUDE_GUARD="FVGAFONT_H"
NAME="__8x16std"
NEWFONTFILE="8x16graph-cp437-1.bdf"
create_code_file "vgafont.h"

View File

@ -3,4 +3,3 @@
test -f 8x16graph.pcf.gz && rm 8x16graph.pcf.gz
bdftopcf -o 8x16graph.pcf 8x16graph.bdf
gzip -9 8x16graph.pcf

View File

@ -1,32 +0,0 @@
#!/bin/bash
N=0
HEIGHT=16
FONTFILE="8x16std"
(
echo -e "// vgafont.h\\n"
echo -e "#ifndef FVGAFONT_H"
echo -e "#define FVGAFONT_H\\n"
echo -e "namespace finalcut\\n{\\n"
echo -e "namespace fc\\n{\\n"
xxd -g 1 -i -c $HEIGHT $FONTFILE \
| sed -e 's/ {$/\n{/' \
| sed -e 's/^unsigned/static unsigned/' \
| sed -e '/len = /d' \
| while IFS=$'\n'; read -r LINE
do
if [ "${LINE:0:1}" != " " ]
then
echo "$LINE"
else
echo "$LINE /* $N */" | sed -e 's/\([0-9]\) \/\*/\1 \/*/'
(( N++ ))
fi
done
echo -e "\\n} // namespace fc"
echo -e "\\n} // namespace finalcut"
echo -e "\\n#endif // FVGAFONT_H"
) > vgafont.h

View File

@ -1,7 +1,2 @@
! fonts.alias
8x16graph -misc-8x16graph-medium-r-normal--17-160-75-75-p-80-iso8859-1
-misc-8x16graph-medium-r-normal--17-160-75-75-p-80-ibm-cp437 -misc-8x16graph-medium-r-normal--17-160-75-75-p-80-iso8859-1
!----------------------------------------
! Note: urxvt can't load a ibm-cp437 font
!----------------------------------------
8x16graph -misc-8x16graph-Medium-R-Normal--16-160-75-75-C-80-ISO10646-1

View File

@ -1,2 +1,2 @@
1
8x16graph.pcf.gz -misc-8x16graph-medium-r-normal--17-160-75-75-p-80-iso8859-1
8x16graph.pcf.gz -misc-8x16graph-Medium-R-Normal--16-160-75-75-C-80-ISO10646-1

274
fonts/map-newfont Normal file
View File

@ -0,0 +1,274 @@
#
# Name: newfont to Unicode
# Unicode version: 3.0
# Table version: 1.0
# Table format: Format A
# Date: 2019 October 27
# Authors: Markus Gans <guru.mail@muenster.de>
#
# General notes: none
#
# Format: Three tab-separated columns
# Column #1 is the newfont code (in hex as 0xXX)
# Column #2 is the Unicode (in hex as 0xXXXX)
# Column #3 is the Unicode name (follows a comment sign, '#')
#
# The entries are in newfont order
#
0x00 0x0000 # NULL
0x01 0x263a # WHITE SMILING FACE
0x02 0x263b # BLACK SMILING FACE
0x03 0x2665 # BLACK HEART SUIT
0x04 0x2666 # BLACK DIAMOND SUIT
0x05 0x2663 # BLACK CLUB SUIT
0x06 0x2660 # BLACK SPADE SUIT
0x07 0x2022 # BULLET
0x08 0x25d8 # INVERSE BULLET
0x09 0x25cb # WHITE CIRCLE
0x0a 0x25d9 # INVERSE WHITE CIRCLE
0x0b 0x2642 # MALE SIGN
0x0c 0x2640 # FEMALE SIGN
0x0d 0x266a # EIGHTH NOTE
0x0e 0x266b # BEAMED EIGHTH NOTES
0x0f 0x263c # WHITE SUN WITH RAYS
0x10 0x25ba # BLACK RIGHT-POINTING POINTER
0x11 0x25c4 # BLACK LEFT-POINTING POINTER
0x12 0x2195 # UP DOWN ARROW
0x13 0x203c # DOUBLE EXCLAMATION MARK
0x14 0x00b6 # PILCROW SIGN
0x15 0x00a7 # SECTION SIGN
0x16 0x25ac # BLACK RECTANGLE
0x17 0x21a8 # UP DOWN ARROW WITH BASE
0x18 0x2191 # UPWARDS ARROW
0x19 0x2193 # DOWNWARDS ARROW
0x1a 0x2192 # RIGHTWARDS ARROW
0x1b 0x2190 # LEFTWARDS ARROW
0x1c 0x221f # RIGHT ANGLE
0x1d 0x2194 # LEFT RIGHT ARROW
0x1e 0x25b2 # BLACK UP-POINTING TRIANGLE
0x1f 0x25bc # BLACK DOWN-POINTING TRIANGLE
0x20 0x0020 # SPACE
0x21 0x0021 # EXCLAMATION MARK
0x22 0x0022 # QUOTATION MARK
0x23 0x0023 # NUMBER SIGN
0x24 0x0024 # DOLLAR SIGN
0x25 0x0025 # PERCENT SIGN
0x26 0x0026 # AMPERSAND
0x27 0x0027 # APOSTROPHE
0x28 0x0028 # LEFT PARENTHESIS
0x29 0x0029 # RIGHT PARENTHESIS
0x2a 0x002a # ASTERISK
0x2b 0x002b # PLUS SIGN
0x2c 0x002c # COMMA
0x2d 0x002d # HYPHEN-MINUS
0x2e 0x002e # FULL STOP
0x2f 0x002f # SOLIDUS
0x30 0x0030 # DIGIT ZERO
0x31 0x0031 # DIGIT ONE
0x32 0x0032 # DIGIT TWO
0x33 0x0033 # DIGIT THREE
0x34 0x0034 # DIGIT FOUR
0x35 0x0035 # DIGIT FIVE
0x36 0x0036 # DIGIT SIX
0x37 0x0037 # DIGIT SEVEN
0x38 0x0038 # DIGIT EIGHT
0x39 0x0039 # DIGIT NINE
0x3a 0x003a # COLON
0x3b 0x003b # SEMICOLON
0x3c 0x003c # LESS-THAN SIGN
0x3d 0x003d # EQUALS SIGN
0x3e 0x003e # GREATER-THAN SIGN
0x3f 0x003f # QUESTION MARK
0x40 0x0040 # COMMERCIAL AT
0x41 0x0041 # LATIN CAPITAL LETTER A
0x42 0x0042 # LATIN CAPITAL LETTER B
0x43 0x0043 # LATIN CAPITAL LETTER C
0x44 0x0044 # LATIN CAPITAL LETTER D
0x45 0x0045 # LATIN CAPITAL LETTER E
0x46 0x0046 # LATIN CAPITAL LETTER F
0x47 0x0047 # LATIN CAPITAL LETTER G
0x48 0x0048 # LATIN CAPITAL LETTER H
0x49 0x0049 # LATIN CAPITAL LETTER I
0x4a 0x004a # LATIN CAPITAL LETTER J
0x4b 0x004b # LATIN CAPITAL LETTER K
0x4c 0x004c # LATIN CAPITAL LETTER L
0x4d 0x004d # LATIN CAPITAL LETTER M
0x4e 0x004e # LATIN CAPITAL LETTER N
0x4f 0x004f # LATIN CAPITAL LETTER O
0x50 0x0050 # LATIN CAPITAL LETTER P
0x51 0x0051 # LATIN CAPITAL LETTER Q
0x52 0x0052 # LATIN CAPITAL LETTER R
0x53 0x0053 # LATIN CAPITAL LETTER S
0x54 0x0054 # LATIN CAPITAL LETTER T
0x55 0x0055 # LATIN CAPITAL LETTER U
0x56 0x0056 # LATIN CAPITAL LETTER V
0x57 0x0057 # LATIN CAPITAL LETTER W
0x58 0x0058 # LATIN CAPITAL LETTER X
0x59 0x0059 # LATIN CAPITAL LETTER Y
0x5a 0x005a # LATIN CAPITAL LETTER Z
0x5b 0x005b # LEFT SQUARE BRACKET
0x5c 0x005c # REVERSE SOLIDUS
0x5d 0x005d # RIGHT SQUARE BRACKET
0x5e 0x005e # CIRCUMFLEX ACCENT
0x5f 0x005f # LOW LINE
0x60 0x0060 # GRAVE ACCENT
0x61 0x0061 # LATIN SMALL LETTER A
0x62 0x0062 # LATIN SMALL LETTER B
0x63 0x0063 # LATIN SMALL LETTER C
0x64 0x0064 # LATIN SMALL LETTER D
0x65 0x0065 # LATIN SMALL LETTER E
0x66 0x0066 # LATIN SMALL LETTER F
0x67 0x0067 # LATIN SMALL LETTER G
0x68 0x0068 # LATIN SMALL LETTER H
0x69 0x0069 # LATIN SMALL LETTER I
0x6a 0x006a # LATIN SMALL LETTER J
0x6b 0x006b # LATIN SMALL LETTER K
0x6c 0x006c # LATIN SMALL LETTER L
0x6d 0x006d # LATIN SMALL LETTER M
0x6e 0x006e # LATIN SMALL LETTER N
0x6f 0x006f # LATIN SMALL LETTER O
0x70 0x0070 # LATIN SMALL LETTER P
0x71 0x0071 # LATIN SMALL LETTER Q
0x72 0x0072 # LATIN SMALL LETTER R
0x73 0x0073 # LATIN SMALL LETTER S
0x74 0x0074 # LATIN SMALL LETTER T
0x75 0x0075 # LATIN SMALL LETTER U
0x76 0x0076 # LATIN SMALL LETTER V
0x77 0x0077 # LATIN SMALL LETTER W
0x78 0x0078 # LATIN SMALL LETTER X
0x79 0x0079 # LATIN SMALL LETTER Y
0x7a 0x007a # LATIN SMALL LETTER Z
0x7b 0x007b # LEFT CURLY BRACKET
0x7c 0x007c # VERTICAL LINE
0x7d 0x007d # RIGHT CURLY BRACKET
0x7e 0x007e # TILDE
0x7f 0x2302 # HOUSE
0x80 0x00c7 # LATIN CAPITAL LETTER C WITH CEDILLA
0x81 0x00fc # LATIN SMALL LETTER U WITH DIAERESIS
0x82 0x00e9 # LATIN SMALL LETTER E WITH ACUTE
0x83 0x00e2 # LATIN SMALL LETTER A WITH CIRCUMFLEX
0x84 0x00e4 # LATIN SMALL LETTER A WITH DIAERESIS
0x85 0x00e0 # LATIN SMALL LETTER A WITH GRAVE
0x86 0x00e5 # LATIN SMALL LETTER A WITH RING ABOVE
0x87 0x00e7 # LATIN SMALL LETTER C WITH CEDILLA
0x88 0x00ea # LATIN SMALL LETTER E WITH CIRCUMFLEX
0x89 0x00eb # LATIN SMALL LETTER E WITH DIAERESIS
0x8a 0x00e8 # LATIN SMALL LETTER E WITH GRAVE
0x8b 0x00ef # LATIN SMALL LETTER I WITH DIAERESIS
0x8c 0x00ee # LATIN SMALL LETTER I WITH CIRCUMFLEX
0x8d 0x00ec # LATIN SMALL LETTER I WITH GRAVE
0x8e 0x00c4 # LATIN CAPITAL LETTER A WITH DIAERESIS
0x8f 0x00c5 # LATIN CAPITAL LETTER A WITH RING ABOVE
0x90 0x00c9 # LATIN CAPITAL LETTER E WITH ACUTE
0x91 0x00e6 # LATIN SMALL LIGATURE AE
0x92 0x00c6 # LATIN CAPITAL LIGATURE AE
0x93 0x00f4 # LATIN SMALL LETTER O WITH CIRCUMFLEX
0x94 0x00f6 # LATIN SMALL LETTER O WITH DIAERESIS
0x95 0x00f2 # LATIN SMALL LETTER O WITH GRAVE
0x96 0x00fb # LATIN SMALL LETTER U WITH CIRCUMFLEX
0x97 0x00f9 # LATIN SMALL LETTER U WITH GRAVE
0x98 0x00ff # LATIN SMALL LETTER Y WITH DIAERESIS
0x99 0x00d6 # LATIN CAPITAL LETTER O WITH DIAERESIS
0x9a 0x00dc # LATIN CAPITAL LETTER U WITH DIAERESIS
0x9b 0x00a2 # CENT SIGN
0x9c 0x00a3 # POUND SIGN
0x9d 0x00a5 # YEN SIGN
0x9e 0x20a7 # PESETA SIGN
0x9f 0x0192 # LATIN SMALL LETTER F WITH HOOK
0xa0 0x00e1 # LATIN SMALL LETTER A WITH ACUTE
0xa1 0x00ed # LATIN SMALL LETTER I WITH ACUTE
0xa2 0x00f3 # LATIN SMALL LETTER O WITH ACUTE
0xa3 0x00fa # LATIN SMALL LETTER U WITH ACUTE
0xa4 0x00f1 # LATIN SMALL LETTER N WITH TILDE
0xa5 0x00d1 # LATIN CAPITAL LETTER N WITH TILDE
0xa6 0x00aa # FEMININE ORDINAL INDICATOR
0xa7 0x00ba # MASCULINE ORDINAL INDICATOR
0xa8 0x00bf # INVERTED QUESTION MARK
0xa9 0x2310 # REVERSED NOT SIGN
0xaa 0x00ac # NOT SIGN
0xab 0x00bd # VULGAR FRACTION ONE HALF
0xac 0x00bc # VULGAR FRACTION ONE QUARTER
0xad 0x00a1 # INVERTED EXCLAMATION MARK
0xae 0x00ab # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
0xaf 0x00bb # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
0xb0 0x2591 # LIGHT SHADE
0xb1 0x2592 # MEDIUM SHADE
0xb2 0x2593 # DARK SHADE
0xb3 0x2502 # BOX DRAWINGS LIGHT VERTICAL
0xb4 0xe1b4 # NF REVERSE LEFT ARROW 2
0xb5 0xe1b5 # NF REVERSE DOWN ARROW 2
0xb6 0x2562 # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
0xb7 0xe1b7 # NF RADIO BUTTON 3
0xb8 0xe1b8 # NF REVERSE BORDER CORNER UPPER RIGHT
0xb9 0xe1b9 # NF REVERSE BORDER LINE RIGHT
0xba 0xe1ba # NF REVERSE BORDER LINE VERTICAL LEFT
0xbb 0xe1bb # NF REVERSE BORDER CORNER LOWER RIGHT
0xbc 0xe1bc # NF BORDER LINE LEFT
0xbd 0xe1bd # NF REVERSE UP ARROW 2
0xbe 0xe1be # NF REVERSE DOWN ARROW 2
0xbf 0x2510 # BOX DRAWINGS LIGHT DOWN AND LEFT
0xc0 0xe1c0 # NF BORDER CORNER MIDDLE LOWER LEFT
0xc1 0xe1c1 # NF REVERSE UP ARROW 1
0xc2 0xe1c2 # NF REVERSE DOWN ARROW 1
0xc3 0xe1c3 # NF REVERSE LINE VERTICAL RIGHT
0xc4 0x2500 # BOX DRAWINGS LIGHT HORIZONTAL
0xc5 0xe1c5 # NF BORDER LINE UP AND DOWN
0xc6 0xe1c6 # NF SHADOW BOX MIDDLE
0xc7 0xe1c7 # NF SHADOW BOX HDD
0xc8 0xe1c8 # NF REVERSE LEFT ARROW 1
0xc9 0xe1c9 # NF REVERSE RIGHT ARROW 1
0xca 0xe1ca # NF REVERSE MENU BUTTON 1
0xcb 0xe1cb # NF REVERSE MENU BUTTON 2
0xcc 0xe1cc # NF BORDER CORNER MIDDLE UPPER LEFT
0xcd 0xe1cd # NF SHADOW BOX CD
0xce 0xe1ce # NF SHADOW BOX LEFT
0xcf 0xe1cf # NF BORDER CORNER MIDDLE LOWER RIGHT
0xd0 0xe1d0 # NF BORDER CORNER MIDDLE UPPER RIGHT
0xd1 0xe1d1 # NF SHADOW BOX NET
0xd2 0xe1d2 # NF REVERSE UP POINTING TRIANGLE 1
0xd3 0xe1d3 # NF BORDER CORNER LOWER LEFT
0xd4 0xe1d4 # NF BORDER LINE BOTTOM
0xd5 0xe1d5 # NF RADIO BUTTON 2
0xd6 0xe1d6 # NF RADIO BUTTON 2 CHECKED
0xd7 0xe1d7 # NF REVERSE DOWN POINTING TRIANGLE 1
0xd8 0xe1d8 # NF BORDER LINE UPPER
0xd9 0xe1d9 # NF RADIO BUTTON 1
0xda 0xe1da # NF BORDER CORNER UPPER LEFT
0xdb 0x2588 # FULL BLOCK
0xdc 0xe1dc # NF SHADOW BOX CHECKED
0xdd 0x258c # LEFT HALF BLOCK
0xde 0x2590 # RIGHT HALF BLOCK
0xdf 0x2580 # UPPER HALF BLOCK
0xe0 0x03b1 # GREEK SMALL LETTER ALPHA
0xe1 0x00df # LATIN SMALL LETTER SHARP S
0xe2 0x0393 # GREEK CAPITAL LETTER GAMMA
0xe3 0x03c0 # GREEK SMALL LETTER PI
0xe4 0x03a3 # GREEK CAPITAL LETTER SIGMA
0xe5 0x03c3 # GREEK SMALL LETTER SIGMA
0xe6 0x00b5 # MICRO SIGN
0xe7 0xe1e7 # NF REVERSE BORDER LINE RIGHT AND LEFT
0xe8 0xe1e8 # NF REVERSE UP POINTING TRIANGLE 2
0xe9 0xe1e9 # NF REVERSE DOWN POINTING TRIANGLE 2
0xea 0x03a9 # GREEK CAPITAL LETTER OMEGA
0xeb 0x03b4 # GREEK SMALL LETTER DELTA
0xec 0x221e # INFINITY
0xed 0x03c6 # GREEK SMALL LETTER PHI
0xee 0x03b5 # GREEK SMALL LETTER EPSILON
0xef 0x2229 # INTERSECTION
0xf0 0x2261 # IDENTICAL TO
0xf1 0x00b1 # PLUS-MINUS SIGN
0xf2 0x2265 # GREATER-THAN OR EQUAL TO
0xf3 0x2264 # LESS-THAN OR EQUAL TO
0xf4 0xe1f4 # NF REVERSE MENU BUTTON 3
0xf5 0xe1f5 # NF SHADOW BOX RIGHT
0xf6 0x00f7 # DIVISION SIGN
0xf7 0x2248 # ALMOST EQUAL TO
0xf8 0x00b0 # DEGREE SIGN
0xf9 0xe1f9 # NF BULLET
0xfa 0x00b7 # MIDDLE DOT
0xfb 0xe1fb # NF CHECK MARK
0xfc 0xe1fc # NF X SUPERIOR
0xfd 0x00b2 # SUPERSCRIPT TWO
0xfe 0x25a0 # BLACK SQUARE
0xff 0x00a0 # NO-BREAK SPACE

273
fonts/map-vga Normal file
View File

@ -0,0 +1,273 @@
#
# Name: vga to Unicode
# Unicode version: 3.0
# Table version: 1.0
# Table format: Format A
# Date: 2019 October 27
# Authors: Markus Gans <guru.mail@muenster.de>
#
# General notes: none
#
# Format: Three tab-separated columns
# Column #1 is the newfont code (in hex as 0xXX)
# Column #2 is the Unicode (in hex as 0xXXXX)
# Column #3 is the Unicode name (follows a comment sign, '#')
#
# The entries are in newfont order
#
0x00 0x0000 # NULL
0x01 0x263a # WHITE SMILING FACE
0x02 0x263b # BLACK SMILING FACE
0x03 0x2665 # BLACK HEART SUIT
0x04 0x2666 # BLACK DIAMOND SUIT
0x05 0x2663 # BLACK CLUB SUIT
0x06 0x2660 # BLACK SPADE SUIT
0x07 0x2022 # BULLET
0x08 0x25d8 # INVERSE BULLET
0x09 0x25cb # WHITE CIRCLE
0x0a 0x25d9 # INVERSE WHITE CIRCLE
0x0b 0x2642 # MALE SIGN
0x0c 0x2640 # FEMALE SIGN
0x0d 0x266a # EIGHTH NOTE
0x0e 0x266b # BEAMED EIGHTH NOTES
0x0f 0x263c # WHITE SUN WITH RAYS
0x10 0x25b6 # BLACK RIGHT-POINTING POINTER
0x11 0x25c0 # BLACK LEFT-POINTING POINTER
0x12 0x2195 # UP DOWN ARROW
0x13 0x203c # DOUBLE EXCLAMATION MARK
0x14 0x00b6 # PILCROW SIGN
0x15 0x00a7 # SECTION SIGN
0x16 0x25ac # BLACK RECTANGLE
0x17 0x21a8 # UP DOWN ARROW WITH BASE
0x18 0x2191 # UPWARDS ARROW
0x19 0x2193 # DOWNWARDS ARROW
0x1a 0x2192 # RIGHTWARDS ARROW
0x1b 0x2190 # LEFTWARDS ARROW
0x1c 0x221f # RIGHT ANGLE
0x1d 0x2194 # LEFT RIGHT ARROW
0x1e 0x25b2 # BLACK UP-POINTING TRIANGLE
0x1f 0x25bc # BLACK DOWN-POINTING TRIANGLE
0x20 0x0020 # SPACE
0x21 0x0021 # EXCLAMATION MARK
0x22 0x0022 # QUOTATION MARK
0x23 0x0023 # NUMBER SIGN
0x24 0x0024 # DOLLAR SIGN
0x25 0x0025 # PERCENT SIGN
0x26 0x0026 # AMPERSAND
0x27 0x0027 # APOSTROPHE
0x28 0x0028 # LEFT PARENTHESIS
0x29 0x0029 # RIGHT PARENTHESIS
0x2a 0x002a # ASTERISK
0x2b 0x002b # PLUS SIGN
0x2c 0x002c # COMMA
0x2d 0x002d # HYPHEN-MINUS
0x2e 0x002e # FULL STOP
0x2f 0x002f # SOLIDUS
0x30 0x0030 # DIGIT ZERO
0x31 0x0031 # DIGIT ONE
0x32 0x0032 # DIGIT TWO
0x33 0x0033 # DIGIT THREE
0x34 0x0034 # DIGIT FOUR
0x35 0x0035 # DIGIT FIVE
0x36 0x0036 # DIGIT SIX
0x37 0x0037 # DIGIT SEVEN
0x38 0x0038 # DIGIT EIGHT
0x39 0x0039 # DIGIT NINE
0x3a 0x003a # COLON
0x3b 0x003b # SEMICOLON
0x3c 0x003c # LESS-THAN SIGN
0x3d 0x003d # EQUALS SIGN
0x3e 0x003e # GREATER-THAN SIGN
0x3f 0x003f # QUESTION MARK
0x40 0x0040 # COMMERCIAL AT
0x41 0x0041 # LATIN CAPITAL LETTER A
0x42 0x0042 # LATIN CAPITAL LETTER B
0x43 0x0043 # LATIN CAPITAL LETTER C
0x44 0x0044 # LATIN CAPITAL LETTER D
0x45 0x0045 # LATIN CAPITAL LETTER E
0x46 0x0046 # LATIN CAPITAL LETTER F
0x47 0x0047 # LATIN CAPITAL LETTER G
0x48 0x0048 # LATIN CAPITAL LETTER H
0x49 0x0049 # LATIN CAPITAL LETTER I
0x4a 0x004a # LATIN CAPITAL LETTER J
0x4b 0x004b # LATIN CAPITAL LETTER K
0x4c 0x004c # LATIN CAPITAL LETTER L
0x4d 0x004d # LATIN CAPITAL LETTER M
0x4e 0x004e # LATIN CAPITAL LETTER N
0x4f 0x004f # LATIN CAPITAL LETTER O
0x50 0x0050 # LATIN CAPITAL LETTER P
0x51 0x0051 # LATIN CAPITAL LETTER Q
0x52 0x0052 # LATIN CAPITAL LETTER R
0x53 0x0053 # LATIN CAPITAL LETTER S
0x54 0x0054 # LATIN CAPITAL LETTER T
0x55 0x0055 # LATIN CAPITAL LETTER U
0x56 0x0056 # LATIN CAPITAL LETTER V
0x57 0x0057 # LATIN CAPITAL LETTER W
0x58 0x0058 # LATIN CAPITAL LETTER X
0x59 0x0059 # LATIN CAPITAL LETTER Y
0x5a 0x005a # LATIN CAPITAL LETTER Z
0x5b 0x005b # LEFT SQUARE BRACKET
0x5c 0x005c # REVERSE SOLIDUS
0x5d 0x005d # RIGHT SQUARE BRACKET
0x5e 0x005e # CIRCUMFLEX ACCENT
0x5f 0x005f # LOW LINE
0x60 0x0060 # GRAVE ACCENT
0x61 0x0061 # LATIN SMALL LETTER A
0x62 0x0062 # LATIN SMALL LETTER B
0x63 0x0063 # LATIN SMALL LETTER C
0x64 0x0064 # LATIN SMALL LETTER D
0x65 0x0065 # LATIN SMALL LETTER E
0x66 0x0066 # LATIN SMALL LETTER F
0x67 0x0067 # LATIN SMALL LETTER G
0x68 0x0068 # LATIN SMALL LETTER H
0x69 0x0069 # LATIN SMALL LETTER I
0x6a 0x006a # LATIN SMALL LETTER J
0x6b 0x006b # LATIN SMALL LETTER K
0x6c 0x006c # LATIN SMALL LETTER L
0x6d 0x006d # LATIN SMALL LETTER M
0x6e 0x006e # LATIN SMALL LETTER N
0x6f 0x006f # LATIN SMALL LETTER O
0x70 0x0070 # LATIN SMALL LETTER P
0x71 0x0071 # LATIN SMALL LETTER Q
0x72 0x0072 # LATIN SMALL LETTER R
0x73 0x0073 # LATIN SMALL LETTER S
0x74 0x0074 # LATIN SMALL LETTER T
0x75 0x0075 # LATIN SMALL LETTER U
0x76 0x0076 # LATIN SMALL LETTER V
0x77 0x0077 # LATIN SMALL LETTER W
0x78 0x0078 # LATIN SMALL LETTER X
0x79 0x0079 # LATIN SMALL LETTER Y
0x7a 0x007a # LATIN SMALL LETTER Z
0x7b 0x007b # LEFT CURLY BRACKET
0x7c 0x007c # VERTICAL LINE
0x7d 0x007d # RIGHT CURLY BRACKET
0x7e 0x007e # TILDE
0x7f 0x2302 # HOUSE
0x80 0x00c7 # LATIN CAPITAL LETTER C WITH CEDILLA
0x81 0x00fc # LATIN SMALL LETTER U WITH DIAERESIS
0x82 0x00e9 # LATIN SMALL LETTER E WITH ACUTE
0x83 0x00e2 # LATIN SMALL LETTER A WITH CIRCUMFLEX
0x84 0x00e4 # LATIN SMALL LETTER A WITH DIAERESIS
0x85 0x00e0 # LATIN SMALL LETTER A WITH GRAVE
0x86 0x00e5 # LATIN SMALL LETTER A WITH RING ABOVE
0x87 0x00e7 # LATIN SMALL LETTER C WITH CEDILLA
0x88 0x00ea # LATIN SMALL LETTER E WITH CIRCUMFLEX
0x89 0x00eb # LATIN SMALL LETTER E WITH DIAERESIS
0x8a 0x00e8 # LATIN SMALL LETTER E WITH GRAVE
0x8b 0x00ef # LATIN SMALL LETTER I WITH DIAERESIS
0x8c 0x00ee # LATIN SMALL LETTER I WITH CIRCUMFLEX
0x8d 0x00ec # LATIN SMALL LETTER I WITH GRAVE
0x8e 0x00c4 # LATIN CAPITAL LETTER A WITH DIAERESIS
0x8f 0x00c5 # LATIN CAPITAL LETTER A WITH RING ABOVE
0x90 0x00c9 # LATIN CAPITAL LETTER E WITH ACUTE
0x91 0x00e6 # LATIN SMALL LIGATURE AE
0x92 0x00c6 # LATIN CAPITAL LIGATURE AE
0x93 0x00f4 # LATIN SMALL LETTER O WITH CIRCUMFLEX
0x94 0x00f6 # LATIN SMALL LETTER O WITH DIAERESIS
0x95 0x00f2 # LATIN SMALL LETTER O WITH GRAVE
0x96 0x00fb # LATIN SMALL LETTER U WITH CIRCUMFLEX
0x97 0x00f9 # LATIN SMALL LETTER U WITH GRAVE
0x98 0x00ff # LATIN SMALL LETTER Y WITH DIAERESIS
0x99 0x00d6 # LATIN CAPITAL LETTER O WITH DIAERESIS
0x9a 0x00dc # LATIN CAPITAL LETTER U WITH DIAERESIS
0x9b 0x00a2 # CENT SIGN
0x9c 0x00a3 # POUND SIGN
0x9d 0x00a5 # YEN SIGN
0x9e 0x20a7 # PESETA SIGN
0x9f 0x0192 # LATIN SMALL LETTER F WITH HOOK
0xa0 0x00e1 # LATIN SMALL LETTER A WITH ACUTE
0xa1 0x00ed # LATIN SMALL LETTER I WITH ACUTE
0xa2 0x00f3 # LATIN SMALL LETTER O WITH ACUTE
0xa3 0x00fa # LATIN SMALL LETTER U WITH ACUTE
0xa4 0x00f1 # LATIN SMALL LETTER N WITH TILDE
0xa5 0x00d1 # LATIN CAPITAL LETTER N WITH TILDE
0xa6 0x00aa # FEMININE ORDINAL INDICATOR
0xa7 0x00ba # MASCULINE ORDINAL INDICATOR
0xa8 0x00bf # INVERTED QUESTION MARK
0xa9 0x2310 # REVERSED NOT SIGN
0xaa 0x00ac # NOT SIGN
0xab 0x00bd # VULGAR FRACTION ONE HALF
0xac 0x00bc # VULGAR FRACTION ONE QUARTER
0xad 0x00a1 # INVERTED EXCLAMATION MARK
0xae 0x00ab # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
0xaf 0x00bb # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
0xb0 0x2591 # LIGHT SHADE
0xb1 0x2592 # MEDIUM SHADE
0xb2 0x2593 # DARK SHADE
0xb3 0x2502 # BOX DRAWINGS LIGHT VERTICAL
0xb4 0x2524 # BOX DRAWINGS LIGHT VERTICAL AND LEFT
0xb5 0x2561 # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
0xb6 0x2562 # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
0xb7 0x2556 # BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
0xb8 0x2555 # BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
0xb9 0x2563 # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
0xba 0x2551 # BOX DRAWINGS DOUBLE VERTICAL
0xbb 0x2557 # BOX DRAWINGS DOUBLE DOWN AND LEFT
0xbc 0x255d # BOX DRAWINGS DOUBLE UP AND LEFT
0xbd 0x255c # BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
0xbe 0x255b # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
0xbf 0x2510 # BOX DRAWINGS LIGHT DOWN AND LEFT
0xc0 0x2514 # BOX DRAWINGS LIGHT UP AND RIGHT
0xc1 0x2534 # BOX DRAWINGS LIGHT UP AND HORIZONTAL
0xc2 0x252c # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
0xc3 0x251c # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
0xc4 0x2500 # BOX DRAWINGS LIGHT HORIZONTAL
0xc5 0x253c # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
0xc6 0x255e # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
0xc7 0x255f # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
0xc8 0x255a # BOX DRAWINGS DOUBLE UP AND RIGHT
0xc9 0x2554 # BOX DRAWINGS DOUBLE DOWN AND RIGHT
0xca 0x2569 # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
0xcb 0x2566 # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
0xcc 0x2560 # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
0xcd 0x2550 # BOX DRAWINGS DOUBLE HORIZONTAL
0xce 0x256c # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
0xcf 0x2567 # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
0xd0 0x2568 # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
0xd1 0x2564 # BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
0xd2 0x2565 # BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
0xd3 0x2559 # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
0xd4 0x2558 # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
0xd5 0x2552 # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
0xd6 0x2553 # BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
0xd7 0x256b # BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
0xd8 0x256a # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
0xd9 0x2518 # BOX DRAWINGS LIGHT UP AND LEFT
0xda 0x250c # BOX DRAWINGS LIGHT DOWN AND RIGHT
0xdb 0x2588 # FULL BLOCK
0xdc 0x2584 # LOWER HALF BLOCK
0xdd 0x258c # LEFT HALF BLOCK
0xde 0x2590 # RIGHT HALF BLOCK
0xdf 0x2580 # UPPER HALF BLOCK
0xe0 0x03b1 # GREEK SMALL LETTER ALPHA
0xe1 0x00df # LATIN SMALL LETTER SHARP S
0xe2 0x0393 # GREEK CAPITAL LETTER GAMMA
0xe3 0x03c0 # GREEK SMALL LETTER PI
0xe4 0x03a3 # GREEK CAPITAL LETTER SIGMA
0xe5 0x03c3 # GREEK SMALL LETTER SIGMA
0xe6 0x00b5 # MICRO SIGN
0xe7 0x03c4 # GREEK SMALL LETTER TAU
0xe8 0x03a6 # GREEK CAPITAL LETTER PHI
0xe9 0x0398 # GREEK CAPITAL LETTER THETA
0xea 0x03a9 # GREEK CAPITAL LETTER OMEGA
0xeb 0x03b4 # GREEK SMALL LETTER DELTA
0xec 0x221e # INFINITY
0xed 0x03c6 # GREEK SMALL LETTER PHI
0xee 0x03b5 # GREEK SMALL LETTER EPSILON
0xef 0x2229 # INTERSECTION
0xf0 0x2261 # IDENTICAL TO
0xf1 0x00b1 # PLUS-MINUS SIGN
0xf2 0x2265 # GREATER-THAN OR EQUAL TO
0xf3 0x2264 # LESS-THAN OR EQUAL TO
0xf4 0x2320 # TOP HALF INTEGRAL
0xf5 0x2321 # BOTTOM HALF INTEGRAL
0xf6 0x00f7 # DIVISION SIGN
0xf7 0x2248 # ALMOST EQUAL TO
0xf8 0x00b0 # DEGREE SIGN
0xf9 0x2219 # BULLET OPERATOR
0xfa 0x00b7 # MIDDLE DOT
0xfb 0x221a # SQUARE ROOT
0xfc 0x207f # SUPERSCRIPT LATIN SMALL LETTER N
0xfd 0x00b2 # SUPERSCRIPT TWO
0xfe 0x25a0 # BLACK SQUARE
0xff 0x00a0 # NO-BREAK SPACE

View File

@ -20,15 +20,15 @@ static unsigned char __8x16graph[] =
0x00, 0x00, 0x00, 0x18, 0x3c, 0x7e, 0xff, 0xff, 0x7e, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, 0x00, /* 6 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x3c, 0x3c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 7 */
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xc3, 0xc3, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, /* 8 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x66, 0x42, 0x42, 0x66, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, /* 9 */
0x00, 0x00, 0x00, 0x7e, 0xc3, 0x81, 0x81, 0x81, 0x81, 0xc3, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, /* 9 */
0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0x99, 0xbd, 0xbd, 0x99, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, /* 10 */
0x00, 0x00, 0x1e, 0x0e, 0x1a, 0x32, 0x78, 0xcc, 0xcc, 0xcc, 0xcc, 0x78, 0x00, 0x00, 0x00, 0x00, /* 11 */
0x00, 0x00, 0x3c, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x7e, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, /* 12 */
0x00, 0x00, 0x3f, 0x33, 0x3f, 0x30, 0x30, 0x30, 0x30, 0x70, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0x00, /* 13 */
0x00, 0x00, 0x7f, 0x63, 0x7f, 0x63, 0x63, 0x63, 0x63, 0x67, 0xe7, 0xe6, 0xc0, 0x00, 0x00, 0x00, /* 14 */
0x00, 0x00, 0x00, 0x18, 0x18, 0xdb, 0x3c, 0xe7, 0x3c, 0xdb, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, /* 15 */
0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfe, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, /* 16 */
0x00, 0x02, 0x06, 0x0e, 0x1e, 0x3e, 0xfe, 0x3e, 0x1e, 0x0e, 0x06, 0x02, 0x00, 0x00, 0x00, 0x00, /* 17 */
0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, /* 16 */
0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, /* 17 */
0x00, 0x00, 0x18, 0x3c, 0x7e, 0x18, 0x18, 0x18, 0x7e, 0x3c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, /* 18 */
0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x00, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, /* 19 */
0x00, 0x00, 0x7f, 0xdb, 0xdb, 0xdb, 0x7b, 0x1b, 0x1b, 0x1b, 0x1b, 0x1b, 0x00, 0x00, 0x00, 0x00, /* 20 */
@ -236,7 +236,7 @@ static unsigned char __8x16graph[] =
0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, /* 222 */
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 223 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xdc, 0xd8, 0xd8, 0xd8, 0xdc, 0x76, 0x00, 0x00, 0x00, 0x00, /* 224 */
0x00, 0x00, 0x00, 0x78, 0xcc, 0xcc, 0xcc, 0xd8, 0xcc, 0xc6, 0xc6, 0xc6, 0xcc, 0x00, 0x00, 0x00, /* 225 */
0x00, 0x00, 0x78, 0xcc, 0xcc, 0xcc, 0xd8, 0xcc, 0xc6, 0xc6, 0xc6, 0xcc, 0x00, 0x00, 0x00, 0x00, /* 225 */
0x00, 0x00, 0xfe, 0xc6, 0xc6, 0xc6, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, /* 226 */
0x00, 0x00, 0x00, 0x00, 0xff, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x00, 0x00, 0x00, 0x00, /* 227 */
0x00, 0x00, 0x00, 0xfe, 0xc6, 0x60, 0x30, 0x18, 0x30, 0x60, 0xc6, 0xfe, 0x00, 0x00, 0x00, 0x00, /* 228 */

View File

@ -3,6 +3,14 @@
#ifndef FUNICODEMAP_H
#define FUNICODEMAP_H
#if !defined (USE_FINAL_H) && !defined (COMPILE_FINAL_CUT)
#error "Only <final/final.h> can be included directly."
#endif
#if defined(__linux__)
#include <sys/kd.h>
#endif
namespace finalcut
{
@ -136,6 +144,7 @@ static struct unipair unicode_cp437_pairs[] =
{0x00c9, 0x90},
{0x00d1, 0xa5},
{0x00d6, 0x99},
{0x00d7, 0x78},
{0x00dc, 0x9a},
{0x00df, 0xe1},
{0x00e0, 0x85},
@ -280,6 +289,7 @@ static struct unipair unicode_cp437_pairs[] =
{0x25c0, 0x11},
{0x25c4, 0x11},
{0x25cb, 0x09},
{0x25cf, 0xf9},
{0x25d8, 0x08},
{0x25d9, 0x0a},
{0x263a, 0x01},
@ -296,6 +306,306 @@ static struct unipair unicode_cp437_pairs[] =
{0x266c, 0x0e}
};
static struct unipair unicode_newfont_pairs[] =
{
// .----------- unicode
// | .---- fontpos
// | |
{0x0020, 0x20},
{0x0021, 0x21},
{0x0022, 0x22},
{0x0023, 0x23},
{0x0024, 0x24},
{0x0025, 0x25},
{0x0026, 0x26},
{0x0027, 0x27},
{0x0028, 0x28},
{0x0029, 0x29},
{0x002a, 0x2a},
{0x002b, 0x2b},
{0x002c, 0x2c},
{0x002d, 0x2d},
{0x002e, 0x2e},
{0x002f, 0x2f},
{0x0030, 0x30},
{0x0031, 0x31},
{0x0032, 0x32},
{0x0033, 0x33},
{0x0034, 0x34},
{0x0035, 0x35},
{0x0036, 0x36},
{0x0037, 0x37},
{0x0038, 0x38},
{0x0039, 0x39},
{0x003a, 0x3a},
{0x003b, 0x3b},
{0x003c, 0x3c},
{0x003d, 0x3d},
{0x003e, 0x3e},
{0x003f, 0x3f},
{0x0040, 0x40},
{0x0041, 0x41},
{0x0042, 0x42},
{0x0043, 0x43},
{0x0044, 0x44},
{0x0045, 0x45},
{0x0046, 0x46},
{0x0047, 0x47},
{0x0048, 0x48},
{0x0049, 0x49},
{0x004a, 0x4a},
{0x004b, 0x4b},
{0x004c, 0x4c},
{0x004d, 0x4d},
{0x004e, 0x4e},
{0x004f, 0x4f},
{0x0050, 0x50},
{0x0051, 0x51},
{0x0052, 0x52},
{0x0053, 0x53},
{0x0054, 0x54},
{0x0055, 0x55},
{0x0056, 0x56},
{0x0057, 0x57},
{0x0058, 0x58},
{0x0059, 0x59},
{0x005a, 0x5a},
{0x005b, 0x5b},
{0x005c, 0x5c},
{0x005d, 0x5d},
{0x005e, 0x5e},
{0x005f, 0x5f},
{0x0060, 0x60},
{0x0061, 0x61},
{0x0062, 0x62},
{0x0063, 0x63},
{0x0064, 0x64},
{0x0065, 0x65},
{0x0066, 0x66},
{0x0067, 0x67},
{0x0068, 0x68},
{0x0069, 0x69},
{0x006a, 0x6a},
{0x006b, 0x6b},
{0x006c, 0x6c},
{0x006d, 0x6d},
{0x006e, 0x6e},
{0x006f, 0x6f},
{0x0070, 0x70},
{0x0071, 0x71},
{0x0072, 0x72},
{0x0073, 0x73},
{0x0074, 0x74},
{0x0075, 0x75},
{0x0076, 0x76},
{0x0077, 0x77},
{0x0078, 0x78},
{0x0079, 0x79},
{0x007a, 0x7a},
{0x007b, 0x7b},
{0x007c, 0x7c},
{0x007d, 0x7d},
{0x007e, 0x7e},
{0x00a0, 0xff},
{0x00a1, 0xad},
{0x00a2, 0x9b},
{0x00a3, 0x9c},
{0x00a5, 0x9d},
{0x00a7, 0x15},
{0x00aa, 0xa6},
{0x00ab, 0xae},
{0x00ac, 0xaa},
{0x00b0, 0xf8},
{0x00b1, 0xf1},
{0x00b2, 0xfd},
{0x00b5, 0xe6},
{0x00b6, 0x14},
{0x00b7, 0xfa},
{0x00ba, 0xa7},
{0x00bb, 0xaf},
{0x00bc, 0xac},
{0x00bd, 0xab},
{0x00bf, 0xa8},
{0x00c4, 0x8e},
{0x00c5, 0x8f},
{0x00c6, 0x92},
{0x00c7, 0x80},
{0x00c9, 0x90},
{0x00d1, 0xa5},
{0x00d6, 0x99},
{0x00d7, 0x78},
{0x00dc, 0x9a},
{0x00df, 0xe1},
{0x00e0, 0x85},
{0x00e1, 0xa0},
{0x00e2, 0x83},
{0x00e4, 0x84},
{0x00e5, 0x86},
{0x00e6, 0x91},
{0x00e7, 0x87},
{0x00e8, 0x8a},
{0x00e9, 0x82},
{0x00ea, 0x88},
{0x00eb, 0x89},
{0x00ec, 0x8d},
{0x00ed, 0xa1},
{0x00ee, 0x8c},
{0x00ef, 0x8b},
{0x00f1, 0xa4},
{0x00f2, 0x95},
{0x00f3, 0xa2},
{0x00f4, 0x93},
{0x00f6, 0x94},
{0x00f7, 0xf6},
{0x00f9, 0x97},
{0x00fa, 0xa3},
{0x00fb, 0x96},
{0x00fc, 0x81},
{0x00ff, 0x98},
{0x0192, 0x9f},
{0x02e3, 0xfc},
{0x0393, 0xe2},
{0x03a3, 0xe4},
{0x03a9, 0xea},
{0x03b1, 0xe0},
{0x03b2, 0xe1},
{0x03b4, 0xeb},
{0x03b5, 0xee},
{0x03bc, 0xe6},
{0x03c0, 0xe3},
{0x03c3, 0xe5},
{0x03c6, 0xed},
{0x2000, 0x20},
{0x2001, 0x20},
{0x2002, 0x20},
{0x2003, 0x20},
{0x2004, 0x20},
{0x2005, 0x20},
{0x2006, 0x20},
{0x2007, 0x20},
{0x2008, 0x20},
{0x2009, 0x20},
{0x200a, 0x20},
{0x2022, 0x07},
{0x202f, 0x20},
{0x203c, 0x13},
{0x2050, 0xd5},
{0x20a7, 0x9e},
{0x2126, 0xea},
{0x212b, 0x8f},
{0x2190, 0x1b},
{0x2191, 0x18},
{0x2192, 0x1a},
{0x2193, 0x19},
{0x2194, 0x1d},
{0x2195, 0x12},
{0x21a8, 0x17},
{0x2205, 0xed},
{0x2208, 0xee},
{0x220e, 0xfe},
{0x2219, 0xf9},
{0x221a, 0xfb},
{0x221e, 0xec},
{0x221f, 0x1c},
{0x2229, 0xef},
{0x2248, 0xf7},
{0x2261, 0xf0},
{0x2264, 0xf3},
{0x2265, 0xf2},
{0x22c5, 0xf9},
{0x2300, 0xed},
{0x2302, 0x7f},
{0x2310, 0xa9},
{0x2319, 0x1c},
{0x2500, 0xc4},
{0x2502, 0xb3},
{0x2510, 0xbf},
{0x2514, 0xc0},
{0x2562, 0xb6},
{0x2580, 0xdf},
{0x2581, 0xd4},
{0x2588, 0xdb},
{0x258c, 0xdd},
{0x258f, 0xbc},
{0x2590, 0xde},
{0x2591, 0xb0},
{0x2592, 0xb1},
{0x2593, 0xb2},
{0x2594, 0xd8},
{0x25a0, 0xfe},
{0x25ac, 0x16},
{0x25b2, 0x1e},
{0x25b4, 0x1e},
{0x25b6, 0x10},
{0x25ba, 0x10},
{0x25bc, 0x1f},
{0x25be, 0x1f},
{0x25c0, 0x11},
{0x25c4, 0x11},
{0x25cb, 0x09},
{0x25cf, 0xf9},
{0x25d8, 0x08},
{0x25d9, 0x0a},
{0x263a, 0x01},
{0x263b, 0x02},
{0x263c, 0x0f},
{0x2640, 0x0c},
{0x2642, 0x0b},
{0x2660, 0x06},
{0x2663, 0x05},
{0x2665, 0x03},
{0x2666, 0x04},
{0x266a, 0x0d},
{0x266b, 0x0e},
{0x266c, 0x0e},
{0x2713, 0xfb},
{0xe1b4, 0xb4},
{0xe1b5, 0xb5},
{0xe1b7, 0xb7},
{0xe1b8, 0xb8},
{0xe1b9, 0xb9},
{0xe1ba, 0xba},
{0xe1bb, 0xbb},
{0xe1bc, 0xbc},
{0xe1bd, 0xbd},
{0xe1be, 0xbe},
{0xe1c0, 0xc0},
{0xe1c1, 0xc1},
{0xe1c2, 0xc2},
{0xe1c3, 0xc3},
{0xe1c5, 0xc5},
{0xe1c6, 0xc6},
{0xe1c7, 0xc7},
{0xe1c8, 0xc8},
{0xe1c9, 0xc9},
{0xe1ca, 0xca},
{0xe1cb, 0xcb},
{0xe1cc, 0xcc},
{0xe1cd, 0xcd},
{0xe1ce, 0xce},
{0xe1cf, 0xcf},
{0xe1d0, 0xd0},
{0xe1d1, 0xd1},
{0xe1d2, 0xd2},
{0xe1d3, 0xd3},
{0xe1d4, 0xd4},
{0xe1d5, 0xd5},
{0xe1d6, 0xd6},
{0xe1d7, 0xd7},
{0xe1d8, 0xd8},
{0xe1d9, 0xd9},
{0xe1da, 0xda},
{0xe1dc, 0xdc},
{0xe1e7, 0xe7},
{0xe1e8, 0xe8},
{0xe1e9, 0xe9},
{0xe1f4, 0xf4},
{0xe1f5, 0xf5},
{0xe1f9, 0xf9},
{0xe1fb, 0xfb},
{0xe1fc, 0xfc}
};
} // namespace fc
} // namespace finalcut

View File

@ -20,7 +20,7 @@ static unsigned char __8x16std[] =
0x00, 0x00, 0x00, 0x18, 0x3c, 0x7e, 0xff, 0xff, 0x7e, 0x18, 0x18, 0x3c, 0x00, 0x00, 0x00, 0x00, /* 6 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x3c, 0x3c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 7 */
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xc3, 0xc3, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, /* 8 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x66, 0x42, 0x42, 0x66, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, /* 9 */
0x00, 0x00, 0x00, 0x7e, 0xc3, 0x81, 0x81, 0x81, 0x81, 0xc3, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, /* 9 */
0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0x99, 0xbd, 0xbd, 0x99, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, /* 10 */
0x00, 0x00, 0x1e, 0x0e, 0x1a, 0x32, 0x78, 0xcc, 0xcc, 0xcc, 0xcc, 0x78, 0x00, 0x00, 0x00, 0x00, /* 11 */
0x00, 0x00, 0x3c, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x7e, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, /* 12 */
@ -192,16 +192,16 @@ static unsigned char __8x16std[] =
0xdd, 0x77, 0xdd, 0x77, 0xdd, 0x77, 0xdd, 0x77, 0xdd, 0x77, 0xdd, 0x77, 0xdd, 0x77, 0xdd, 0x77, /* 178 */
0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, /* 179 */
0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xf8, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, /* 180 */
0x18, 0x18, 0x18, 0x18, 0x18, 0xf8, 0x18, 0xf8, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, /* 181 */
0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xf8, 0x18, 0xf8, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, /* 181 */
0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xf6, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 182 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 183 */
0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x18, 0xf8, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, /* 184 */
0x36, 0x36, 0x36, 0x36, 0x36, 0xf6, 0x06, 0xf6, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 185 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x18, 0xf8, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, /* 184 */
0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xf6, 0x06, 0xf6, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 185 */
0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 186 */
0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x06, 0xf6, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 187 */
0x36, 0x36, 0x36, 0x36, 0x36, 0xf6, 0x06, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 188 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x06, 0xf6, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 187 */
0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xf6, 0x06, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 188 */
0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 189 */
0x18, 0x18, 0x18, 0x18, 0x18, 0xf8, 0x18, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 190 */
0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xf8, 0x18, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 190 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, /* 191 */
0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 192 */
0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 193 */
@ -209,42 +209,42 @@ static unsigned char __8x16std[] =
0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x1f, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, /* 195 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 196 */
0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xff, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, /* 197 */
0x18, 0x18, 0x18, 0x18, 0x18, 0x1f, 0x18, 0x1f, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, /* 198 */
0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x1f, 0x18, 0x1f, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, /* 198 */
0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x37, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 199 */
0x36, 0x36, 0x36, 0x36, 0x36, 0x37, 0x30, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 200 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x30, 0x37, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 201 */
0x36, 0x36, 0x36, 0x36, 0x36, 0xf7, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 202 */
0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0xf7, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 203 */
0x36, 0x36, 0x36, 0x36, 0x36, 0x37, 0x30, 0x37, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 204 */
0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 205 */
0x36, 0x36, 0x36, 0x36, 0x36, 0xf7, 0x00, 0xf7, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 206 */
0x18, 0x18, 0x18, 0x18, 0x18, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 207 */
0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x37, 0x30, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 200 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x30, 0x37, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 201 */
0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xf7, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 202 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0xf7, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 203 */
0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x37, 0x30, 0x37, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 204 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 205 */
0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xf7, 0x00, 0xf7, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 206 */
0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 207 */
0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 208 */
0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, /* 209 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0xff, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, /* 209 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 210 */
0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 211 */
0x18, 0x18, 0x18, 0x18, 0x18, 0x1f, 0x18, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 212 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x18, 0x1f, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, /* 213 */
0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x1f, 0x18, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 212 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x18, 0x1f, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, /* 213 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 214 */
0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xff, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, /* 215 */
0x18, 0x18, 0x18, 0x18, 0x18, 0xff, 0x18, 0xff, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, /* 216 */
0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xff, 0x18, 0xff, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, /* 216 */
0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 217 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, /* 218 */
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, /* 219 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, /* 220 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, /* 220 */
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, /* 221 */
0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, /* 222 */
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 223 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xdc, 0xd8, 0xd8, 0xd8, 0xdc, 0x76, 0x00, 0x00, 0x00, 0x00, /* 224 */
0x00, 0x00, 0x78, 0xcc, 0xcc, 0xcc, 0xd8, 0xcc, 0xc6, 0xc6, 0xc6, 0xcc, 0x00, 0x00, 0x00, 0x00, /* 225 */
0x00, 0x00, 0xfe, 0xc6, 0xc6, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, /* 226 */
0x00, 0x00, 0x00, 0x00, 0xfe, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x00, 0x00, 0x00, 0x00, /* 227 */
0x00, 0x00, 0xfe, 0xc6, 0xc6, 0xc6, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, /* 226 */
0x00, 0x00, 0x00, 0x00, 0xff, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x00, 0x00, 0x00, 0x00, /* 227 */
0x00, 0x00, 0x00, 0xfe, 0xc6, 0x60, 0x30, 0x18, 0x30, 0x60, 0xc6, 0xfe, 0x00, 0x00, 0x00, 0x00, /* 228 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0xd8, 0xd8, 0xd8, 0xd8, 0xd8, 0x70, 0x00, 0x00, 0x00, 0x00, /* 229 */
0x00, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x7c, 0x60, 0x60, 0xc0, 0x00, 0x00, 0x00, /* 230 */
0x00, 0x00, 0x00, 0x00, 0x76, 0xdc, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, /* 231 */
0x00, 0x00, 0x00, 0x7e, 0x18, 0x3c, 0x66, 0x66, 0x66, 0x3c, 0x18, 0x7e, 0x00, 0x00, 0x00, 0x00, /* 232 */
0x00, 0x00, 0x00, 0x38, 0x6c, 0xc6, 0xc6, 0xfe, 0xc6, 0xc6, 0x6c, 0x38, 0x00, 0x00, 0x00, 0x00, /* 233 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x18, 0x18, 0x18, 0x18, 0x18, 0x0e, 0x00, 0x00, 0x00, 0x00, /* 231 */
0x00, 0x00, 0x10, 0x7c, 0xd6, 0xd6, 0xd6, 0xd6, 0xd6, 0x7c, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, /* 232 */
0x00, 0x00, 0x7c, 0xc6, 0xc6, 0xc6, 0xfe, 0xc6, 0xc6, 0xc6, 0xc6, 0x7c, 0x00, 0x00, 0x00, 0x00, /* 233 */
0x00, 0x00, 0x38, 0x6c, 0xc6, 0xc6, 0xc6, 0x6c, 0x6c, 0x6c, 0x6c, 0xee, 0x00, 0x00, 0x00, 0x00, /* 234 */
0x00, 0x00, 0x1e, 0x30, 0x18, 0x0c, 0x3e, 0x66, 0x66, 0x66, 0x66, 0x3c, 0x00, 0x00, 0x00, 0x00, /* 235 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0xdb, 0xdb, 0xdb, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 236 */
@ -260,10 +260,10 @@ static unsigned char __8x16std[] =
0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x7e, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, /* 246 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0xdc, 0x00, 0x76, 0xdc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 247 */
0x00, 0x38, 0x6c, 0x6c, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 248 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 249 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x3c, 0x3c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 249 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 250 */
0x00, 0x0f, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0xec, 0x6c, 0x6c, 0x3c, 0x1c, 0x00, 0x00, 0x00, 0x00, /* 251 */
0x00, 0xd8, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 252 */
0x00, 0x00, 0xb0, 0xd8, 0xd8, 0xd8, 0xd8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 252 */
0x00, 0x70, 0xd8, 0x30, 0x60, 0xc8, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 253 */
0x00, 0x00, 0x00, 0x00, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, /* 254 */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* 255 */

View File

@ -1,3 +1,3 @@
#!/bin/sh
xfd -center -columns 16 -fn -misc-8x16graph-medium-r-normal--17-160-75-75-*-80-iso8859-1
xfd -center -columns 16 -fn -misc-8x16graph-medium-r-normal--16-160-75-75-c-80-iso10646-1

View File

@ -101,49 +101,50 @@ uInt character[][fc::NUM_OF_ENCODINGS] =
{0x25c0, ',', 0x11, '<'}, // ◀ - BlackLeftPointingTriangle (1)
{0x25ba, '+', 0x10, '>'}, // ► - BlackRightPointingPointer (1)
{0x25c4, ',', 0x11, '<'}, // ◄ - BlackLeftPointingPointer
{0x1ab4, 0, 0xb4, 0}, // ⊐ - NF_rev_left_arrow2 (2)
{0x1ab5, 0, 0xb5, 0}, // ► - NF_rev_right_arrow2 (2)
{0x1ab7, 0, 0xb7, 0}, // ) - NF_radio_button3 (2)
{0x1ab8, 0, 0xb8, 0}, // ⎤ - NF_rev_border_corner_upper_right (2)
{0x1ab9, 0, 0xb9, 0}, // ⎹ - NF_rev_border_line_right (2)
{0x1aba, 0, 0xba, 0}, // ┤ - NF_rev_border_line_vertical_left (2)
{0x1abb, 0, 0xbb, 0}, // ⎦ - NF_rev_border_corner_lower_right (2)
{0x1abc, 0, 0xbc, 0}, // ⎸ - NF_border_line_left (2)
{0x1abd, 0, 0xbd, 0}, //⎹◣ - NF_rev_up_arrow2 (2)
{0x1abe, 0, 0xbe, 0}, //⎹◤ - NF_rev_down_arrow2 (2)
{0x1ac0, 0, 0xc0, 0}, // └ - NF_border_corner_middle_lower_left (2)
{0x1ac1, 0, 0xc1, 0}, // ◢⎸ - NF_rev_up_arrow1 (2)
{0x1ac2, 0, 0xc2, 0}, // ◥⎸ - NF_rev_down_arrow1 (2)
{0x1ac3, 0, 0xc3, 0}, // ├ - NF_border_line_vertical_right (2)
{0x1ac5, 0, 0xc5, 0}, // = - NF_border_line_up_and_down (2)
{0x1ac6, 0, 0xc6, 0}, // = - NF_shadow_box_middle (2)
{0x1ac7, 0, 0xc7, 0}, // = - NF_shadow_box_hdd (2)
{0x1ac8, 0, 0xc8, 0}, // ◄ - NF_rev_left_arrow1 (2)
{0x1ac9, 0, 0xc9, 0}, // ⊏ - NF_rev_right_arrow1 (2)
{0x1aca, 0, 0xca, 0}, // [ - NF_rev_menu_button1 (2)
{0x1acb, 0, 0xcb, 0}, // - - NF_rev_menu_button2 (2)
{0x1acc, 0, 0xcc, 0}, // ┌ - NF_border_corner_middle_upper_left (2)
{0x1acd, 0, 0xcd, 0}, // = - NF_shadow_box_cd (2)
{0x1ace, 0, 0xce, 0}, // [ - NF_shadow_box_left (2)
{0x1acf, 0, 0xcf, 0}, // ┘ - NF_border_corner_middle_lower_right (2)
{0x1ad0, 0, 0xd0, 0}, // ┐ - NF_border_corner_middle_upper_right (2)
{0x1ad1, 0, 0xd1, 0}, // = - NF_shadow_box_net (2)
{0x1ad2, 0, 0xd2, 0}, // ◢ - NF_rev_up_pointing_triangle1 (2)
{0x1ad3, 0, 0xd3, 0}, // ⎣ - NF_border_corner_lower_left (2)
{0x1ad4, 0, 0xd4, 0}, // _ - NF_border_line_bottom (2)
{0x1ad5, 0, 0xd5, 0}, // O - NF_radio_button2 (2)
{0x1ad6, 0, 0xd6, 0}, // ● - NF_radio_button2_checked (2)
{0x1ad7, 0, 0xd7, 0}, // ◥ - NF_rev_down_pointing_triangle1 (2)
{0x1ad8, 0, 0xd8, 0}, // ¯ - NF_border_line_upper (2)
{0x1ad9, 0, 0xd9, 0}, // ( - NF_radio_button1 (2)
{0x1ada, 0, 0xda, 0}, // ⎡ - NF_border_corner_upper_left (2)
{0x1adc, 0, 0xdc, 0}, // ✓ - NF_shadow_box_checked (2)
{0x1ae7, 0, 0xe7, 0}, // ║ - NF_rev_border_line_right_and_left (2)
{0x1ae8, 0, 0xe8, 0}, // ◣ - NF_rev_up_pointing_triangle2 (2)
{0x1ae9, 0, 0xe9, 0}, // ◤ - NF_rev_down_pointing_triangle2 (2)
{0x1af4, 0, 0xf4, 0}, // ] - NF_rev_menu_button3 (2)
{0x1af5, 0, 0xf5, 0}, // ] - NF_shadow_box_right (2)
{0x1afb, 0, 0xfb, 0}, // ✓ - NF_check_mark (2)
{0xe1b4, 0, 0xb4, 0}, // ⊐ - NF_rev_left_arrow2 (2)
{0xe1b5, 0, 0xb5, 0}, // ► - NF_rev_right_arrow2 (2)
{0xe1b7, 0, 0xb7, 0}, // ) - NF_radio_button3 (2)
{0xe1b8, 0, 0xb8, 0}, // ⎤ - NF_rev_border_corner_upper_right (2)
{0xe1b9, 0, 0xb9, 0}, // ⎹ - NF_rev_border_line_right (2)
{0xe1ba, 0, 0xba, 0}, // ┤ - NF_rev_border_line_vertical_left (2)
{0xe1bb, 0, 0xbb, 0}, // ⎦ - NF_rev_border_corner_lower_right (2)
{0xe1bc, 0, 0xbc, 0}, // ⎸ - NF_border_line_left (2)
{0xe1bd, 0, 0xbd, 0}, //⎹◣ - NF_rev_up_arrow2 (2)
{0xe1be, 0, 0xbe, 0}, //⎹◤ - NF_rev_down_arrow2 (2)
{0xe1c0, 0, 0xc0, 0}, // └ - NF_border_corner_middle_lower_left (2)
{0xe1c1, 0, 0xc1, 0}, // ◢⎸ - NF_rev_up_arrow1 (2)
{0xe1c2, 0, 0xc2, 0}, // ◥⎸ - NF_rev_down_arrow1 (2)
{0xe1c3, 0, 0xc3, 0}, // ├ - NF_border_line_vertical_right (2)
{0xe1c5, 0, 0xc5, 0}, // = - NF_border_line_up_and_down (2)
{0xe1c6, 0, 0xc6, 0}, // = - NF_shadow_box_middle (2)
{0xe1c7, 0, 0xc7, 0}, // = - NF_shadow_box_hdd (2)
{0xe1c8, 0, 0xc8, 0}, // ◄ - NF_rev_left_arrow1 (2)
{0xe1c9, 0, 0xc9, 0}, // ⊏ - NF_rev_right_arrow1 (2)
{0xe1ca, 0, 0xca, 0}, // [ - NF_rev_menu_button1 (2)
{0xe1cb, 0, 0xcb, 0}, // - - NF_rev_menu_button2 (2)
{0xe1cc, 0, 0xcc, 0}, // ┌ - NF_border_corner_middle_upper_left (2)
{0xe1cd, 0, 0xcd, 0}, // = - NF_shadow_box_cd (2)
{0xe1ce, 0, 0xce, 0}, // [ - NF_shadow_box_left (2)
{0xe1cf, 0, 0xcf, 0}, // ┘ - NF_border_corner_middle_lower_right (2)
{0xe1d0, 0, 0xd0, 0}, // ┐ - NF_border_corner_middle_upper_right (2)
{0xe1d1, 0, 0xd1, 0}, // = - NF_shadow_box_net (2)
{0xe1d2, 0, 0xd2, 0}, // ◢ - NF_rev_up_pointing_triangle1 (2)
{0xe1d3, 0, 0xd3, 0}, // ⎣ - NF_border_corner_lower_left (2)
{0xe1d4, 0, 0xd4, 0}, // _ - NF_border_line_bottom (2)
{0xe1d5, 0, 0xd5, 0}, // O - NF_radio_button2 (2)
{0xe1d6, 0, 0xd6, 0}, // ● - NF_radio_button2_checked (2)
{0xe1d7, 0, 0xd7, 0}, // ◥ - NF_rev_down_pointing_triangle1 (2)
{0xe1d8, 0, 0xd8, 0}, // ¯ - NF_border_line_upper (2)
{0xe1d9, 0, 0xd9, 0}, // ( - NF_radio_button1 (2)
{0xe1da, 0, 0xda, 0}, // ⎡ - NF_border_corner_upper_left (2)
{0xe1dc, 0, 0xdc, 0}, // ✓ - NF_shadow_box_checked (2)
{0xe1e7, 0, 0xe7, 0}, // ║ - NF_rev_border_line_right_and_left (2)
{0xe1e8, 0, 0xe8, 0}, // ◣ - NF_rev_up_pointing_triangle2 (2)
{0xe1e9, 0, 0xe9, 0}, // ◤ - NF_rev_down_pointing_triangle2 (2)
{0xe1f4, 0, 0xf4, 0}, // ] - NF_rev_menu_button3 (2)
{0xe1f5, 0, 0xf5, 0}, // ] - NF_shadow_box_right (2)
{0xe1fb, 0, 0xfb, 0}, // ✓ - NF_check_mark (2)
{0xe1fc, '~', 0xfc, '`'}, // ˣ - NF_xsuperior (2)
{0x221a, 0, 0xfb, 'x'} // √ - square root
};

View File

@ -222,8 +222,7 @@ void FMenuItem::delAccelerator (FWidget* obj)
{
auto root = getRootWidget();
if ( root
&& ! root->setAcceleratorList().empty() )
if ( root && ! root->setAcceleratorList().empty() )
{
auto list = root->setAcceleratorList();
auto iter = list.begin();

View File

@ -666,19 +666,11 @@ bool FTerm::setVGAFont()
// Set font in xterm to vga
xterm->setFont("vga");
data->setNewFont(false);
data->setTermEncoding (fc::PC);
if ( isXTerminal() && data->hasUTF8Console() )
putchar() = &FTerm::putchar_UTF8;
else
putchar() = &FTerm::putchar_ASCII;
}
#if defined(__linux__)
else if ( isLinuxTerm() )
{
data->setVGAFont(linux->loadVGAFont());
data->setTermEncoding (fc::PC);
putchar() = &FTerm::putchar_ASCII;
}
#endif // defined(__linux__)
else
@ -708,19 +700,11 @@ bool FTerm::setNewFont()
data->setNewFont(true);
// Set font in xterm to 8x16graph
xterm->setFont("8x16graph");
data->setTermEncoding (fc::PC);
if ( isXTerminal() && data->hasUTF8Console() )
putchar() = &FTerm::putchar_UTF8;
else
putchar() = &FTerm::putchar_ASCII;
}
#if defined(__linux__)
else if ( isLinuxTerm() )
{
data->setNewFont(linux->loadNewFont());
data->setTermEncoding (fc::PC);
putchar() = &FTerm::putchar_ASCII; // function pointer
}
#endif // defined(__linux__)
else

View File

@ -315,9 +315,9 @@ bool FTermLinux::loadNewFont()
// Unicode character mapping
struct unimapdesc unimap;
unimap.entry_ct = uInt16 ( sizeof(fc::unicode_cp437_pairs)
unimap.entry_ct = uInt16 ( sizeof(fc::unicode_newfont_pairs)
/ sizeof(unipair) );
unimap.entries = &fc::unicode_cp437_pairs[0];
unimap.entries = &fc::unicode_newfont_pairs[0];
setUnicodeMap(&unimap);
}
else

View File

@ -201,50 +201,51 @@ enum SpecialCharacter : wchar_t
LowerHalfBlock = 0x2584, // ▄
LeftHalfBlock = 0x258c, // ▌
RightHalfBlock = 0x2590, // ▐
NF_rev_left_arrow2 = 0x1ab4, // ⊐ (2)
NF_rev_right_arrow2 = 0x1ab5, // ► (2)
NF_radio_button3 = 0x1ab7, // ) (2)
NF_rev_border_corner_upper_right = 0x1ab8, // ⎤ (2)
NF_rev_border_line_right = 0x1ab9, // ⎹ (2)
NF_rev_border_line_vertical_left = 0x1aba, // ┤ (2)
NF_rev_border_corner_lower_right = 0x1abb, // ⎦ (2)
NF_border_line_left = 0x1abc, // ⎸ (2)
NF_rev_up_arrow2 = 0x1abd, //⎹◣ (2)
NF_rev_down_arrow2 = 0x1abe, //⎹◤ (2)
NF_border_corner_middle_lower_left = 0x1ac0, // └ (2)
NF_rev_up_arrow1 = 0x1ac1, // ◢⎸ (2)
NF_rev_down_arrow1 = 0x1ac2, // ◥⎸ (2)
NF_border_line_vertical_right = 0x1ac3, // ├ (2)
NF_border_line_up_and_down = 0x1ac5, // ニ (2)
NF_shadow_box_middle = 0x1ac6, // ニ (2)
NF_shadow_box_hdd = 0x1ac7, // ニ (2)
NF_rev_left_arrow1 = 0x1ac8, // ◄ (2)
NF_rev_right_arrow1 = 0x1ac9, // ⊏ (2)
NF_rev_menu_button1 = 0x1aca, // [ (2)
NF_rev_menu_button2 = 0x1acb, // - (2)
NF_border_corner_middle_upper_left = 0x1acc, // ┌ (2)
NF_shadow_box_cd = 0x1acd, // ニ (2)
NF_shadow_box_left = 0x1ace, // [ (2)
NF_border_corner_middle_lower_right = 0x1acf, // ┘ (2)
NF_border_corner_middle_upper_right = 0x1ad0, // ┐ (2)
NF_shadow_box_net = 0x1ad1, // ニ (2)
NF_rev_up_pointing_triangle1 = 0x1ad2, // ◢ (2)
NF_border_corner_lower_left = 0x1ad3, // ⎣ (2)
NF_border_line_bottom = 0x1ad4, // _ (2)
NF_radio_button2 = 0x1ad5, // ⁐ (2)
NF_radio_button2_checked = 0x1ad6, // ● (2)
NF_rev_down_pointing_triangle1 = 0x1ad7, // ◥ (2)
NF_border_line_upper = 0x1ad8, // ¯ (2)
NF_radio_button1 = 0x1ad9, // ( (2)
NF_border_corner_upper_left = 0x1ada, // ⎡ (2)
NF_shadow_box_checked = 0x1adc, // ✓ (2)
NF_rev_border_line_right_and_left = 0x1ae7, // || (2)
NF_rev_up_pointing_triangle2 = 0x1ae8, // ◣ (2)
NF_rev_down_pointing_triangle2 = 0x1ae9, // ◤ (2)
NF_rev_menu_button3 = 0x1af4, // ] (2)
NF_shadow_box_right = 0x1af5, // ] (2)
NF_Bullet = 0x1af9, // ● (2)
NF_check_mark = 0x1afb, // ✓ (2)
NF_rev_left_arrow2 = 0xe1b4, // ⊐ (2)
NF_rev_right_arrow2 = 0xe1b5, // ► (2)
NF_radio_button3 = 0xe1b7, // ) (2)
NF_rev_border_corner_upper_right = 0xe1b8, // ⎤ (2)
NF_rev_border_line_right = 0xe1b9, // ⎹ (2)
NF_rev_border_line_vertical_left = 0xe1ba, // ┤ (2)
NF_rev_border_corner_lower_right = 0xe1bb, // ⎦ (2)
NF_border_line_left = 0xe1bc, // ⎸ (2)
NF_rev_up_arrow2 = 0xe1bd, //⎹◣ (2)
NF_rev_down_arrow2 = 0xe1be, //⎹◤ (2)
NF_border_corner_middle_lower_left = 0xe1c0, // └ (2)
NF_rev_up_arrow1 = 0xe1c1, // ◢⎸ (2)
NF_rev_down_arrow1 = 0xe1c2, // ◥⎸ (2)
NF_border_line_vertical_right = 0xe1c3, // ├ (2)
NF_border_line_up_and_down = 0xe1c5, // ニ (2)
NF_shadow_box_middle = 0xe1c6, // ニ (2)
NF_shadow_box_hdd = 0xe1c7, // ニ (2)
NF_rev_left_arrow1 = 0xe1c8, // ◄ (2)
NF_rev_right_arrow1 = 0xe1c9, // ⊏ (2)
NF_rev_menu_button1 = 0xe1ca, // [ (2)
NF_rev_menu_button2 = 0xe1cb, // - (2)
NF_border_corner_middle_upper_left = 0xe1cc, // ┌ (2)
NF_shadow_box_cd = 0xe1cd, // ニ (2)
NF_shadow_box_left = 0xe1ce, // [ (2)
NF_border_corner_middle_lower_right = 0xe1cf, // ┘ (2)
NF_border_corner_middle_upper_right = 0xe1d0, // ┐ (2)
NF_shadow_box_net = 0xe1d1, // ニ (2)
NF_rev_up_pointing_triangle1 = 0xe1d2, // ◢ (2)
NF_border_corner_lower_left = 0xe1d3, // ⎣ (2)
NF_border_line_bottom = 0xe1d4, // _ (2)
NF_radio_button2 = 0xe1d5, // ⁐ (2)
NF_radio_button2_checked = 0xe1d6, // ● (2)
NF_rev_down_pointing_triangle1 = 0xe1d7, // ◥ (2)
NF_border_line_upper = 0xe1d8, // ¯ (2)
NF_radio_button1 = 0xe1d9, // ( (2)
NF_border_corner_upper_left = 0xe1da, // ⎡ (2)
NF_shadow_box_checked = 0xe1dc, // ✓ (2)
NF_rev_border_line_right_and_left = 0xe1e7, // || (2)
NF_rev_up_pointing_triangle2 = 0xe1e8, // ◣ (2)
NF_rev_down_pointing_triangle2 = 0xe1e9, // ◤ (2)
NF_rev_menu_button3 = 0xe1f4, // ] (2)
NF_shadow_box_right = 0xe1f5, // ] (2)
NF_Bullet = 0xe1f9, // ● (2)
NF_check_mark = 0xe1fb, // ✓ (2)
NF_x_superior = 0xe1fc, // ˣ
SquareRoot = 0x221a // √
};
/*