From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Peter Dyballa Newsgroups: gmane.emacs.help Subject: Re: fontsets: (was Re: query-replace?) Date: Mon, 9 Jan 2006 12:53:27 +0100 Message-ID: References: <1hUvf.3442$ZA2.3357@newsread1.news.atl.earthlink.net> <8dgwf.6880$M%4.184@newsread3.news.atl.earthlink.net> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 (Apple Message framework v746.2) Content-Type: text/plain; charset=UTF-8; delsp=yes; format=flowed Content-Transfer-Encoding: quoted-printable X-Trace: sea.gmane.org 1136817953 31286 80.91.229.2 (9 Jan 2006 14:45:53 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Mon, 9 Jan 2006 14:45:53 +0000 (UTC) Cc: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Mon Jan 09 15:45:49 2006 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1EvyHG-0003fb-0Z for geh-help-gnu-emacs@m.gmane.org; Mon, 09 Jan 2006 15:45:42 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Evy8W-0004zM-I8 for geh-help-gnu-emacs@m.gmane.org; Mon, 09 Jan 2006 09:36:40 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1EvwlS-0000fw-Ps for help-gnu-emacs@gnu.org; Mon, 09 Jan 2006 08:08:48 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1EvwOt-0003yv-3b for help-gnu-emacs@gnu.org; Mon, 09 Jan 2006 07:45:36 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Evvcc-0001C0-Ll for help-gnu-emacs@gnu.org; Mon, 09 Jan 2006 06:55:35 -0500 Original-Received: from [217.72.192.209] (helo=smtp05.web.de) by monty-python.gnu.org with esmtp (TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24) (Exim 4.34) id 1Evves-0005vG-E0 for help-gnu-emacs@gnu.org; Mon, 09 Jan 2006 06:57:55 -0500 Original-Received: from [84.245.191.183] (helo=[192.168.1.2]) by smtp05.web.de with asmtp (TLSv1:RC4-SHA:128) (WEB.DE 4.105 #340) id 1Evvac-0004Ut-00; Mon, 09 Jan 2006 12:53:31 +0100 In-Reply-To: <8dgwf.6880$M%4.184@newsread3.news.atl.earthlink.net> X-Priority: 3 X-Image-Url: http://homepage.mac.com/sparifankal/.cv/thumbs/me.thumbnail Original-To: B. T. Raven X-Mailer: Apple Mail (2.746.2) X-Sender: Peter_Dyballa@web.de X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:32563 Archived-At: Am 08.01.2006 um 22:18 schrieb B. T. Raven: > Since this font covers such a large swath of Unicode I would rather =20= > stick > with the Losedows interface for now. I still don't understand fontsets > yet. Now the dialog box shows fonts, styles, point size (8-72) and =20 > script > all in one place. If I went the the fontset route and I wanted only =20= > sizes > 9-12 and only four different font styles, wouldn't I have to produced > about 16 times as much lisp code as you show above to get the same =20 > Unicode > coverage? THe font variants (italic, bold, bold-italic) are automatically =20 chosen, so four sets for 9, 10, 11, and 12 would suffice. Fontsets actually are necessary when you handle texts that have more =20 different characters than the small MS or ISO encodings provide. Then =20= GNU Emacs needs to create a table that maps code points (characters) =20 to members in fonts (glyphs) and this choice can look ugly. You help =20 GNU Emacs when you construct a fontset. IMO it would be enough to =20 create a fontset like this for 9 pt and three others for 10, 11, and =20 12 pt:: (create-fontset-from-fontset-spec "-outline-Arial Unicode MS-=20 normal-r-*-*-9-*-*-*-*-*-fontset-09pt_arial_UC" t 'noerror) (set-fontset-font "fontset-09pt_arial_UC" 'latin-iso8859-1 = =20 '("Arial Unicode MS" . "iso8859-1")) (set-fontset-font "fontset-09pt_arial_UC" 'latin-iso8859-2 = =20 '("Arial Unicode MS" . "iso8859-2")) (set-fontset-font "fontset-09pt_arial_UC" 'latin-iso8859-4 = =20 '("Arial Unicode MS" . "iso8859-4")) (set-fontset-font "fontset-09pt_arial_UC" 'cyrillic-iso8859-5 = =20 '("Arial Unicode MS" . "iso8859-5")) (set-fontset-font "fontset-09pt_arial_UC" 'arabic-iso8859-6 = =20 '("Arial Unicode MS" . "iso8859-6")) (set-fontset-font "fontset-09pt_arial_UC" 'greek-iso8859-7 = =20 '("Arial Unicode MS" . "iso8859-7")) (set-fontset-font "fontset-09pt_arial_UC" 'latin-iso8859-8 = =20 '("Arial Unicode MS" . "iso8859-8")) (set-fontset-font "fontset-09pt_arial_UC" 'latin-iso8859-9 = =20 '("Arial Unicode MS" . "iso8859-9")) (set-fontset-font "fontset-09pt_arial_UC" = 'latin-iso8859-13 =20 '("Arial Unicode MS" . "iso8859-13")) (set-fontset-font "fontset-09pt_arial_UC" = 'mule-unicode-0100-24ff =20 '("Arial Unicode MS" . "iso10646-1")) (set-fontset-font "fontset-09pt_arial_UC" = 'mule-unicode-2500-33ff =20 '("Arial Unicode MS" . "iso10646-1")) (set-fontset-font "fontset-09pt_arial_UC" = 'mule-unicode-e000-ffff =20 '("Arial Unicode MS" . "iso10646-1")) What about Lucida Console (666 glyphs, 714 mappings)? It can display =20 ISO 8859-3 in X11 completely (Arial Unicode MS has 51,180 glyphs and =20= 38,933 mappings -- and in X11 it has an ISO 8859-3 encoding!). It's =20 even monospaced. There is another monospaced font on the Web: Lucida =20 Sans Typewriter (1,376 glyphs, 1,425 mappings). It's part of the Java =20= SDKs (starting with Java 1.4 the Lucida fonts were reduced in =20 variants, so it's worth to retrieve JDK 1.3 first and update some of =20 these fonts with 1.4 and/or 1.5 fonts). The JDKs too have Lucida Sans =20= (2,929 glyphs, 2,410 mappings). Probably you need some ISO 8859-3 encoding file. *I* have no idea =20 where in MS Losedows this would be needed, somewhere in the machinery =20= that creates partial, specifically named encodings from a Unicode =20 encoded font? If it does not work in a *partial* encoding: would =20 *complete* Unicode succeed?! ;;; -*- mode: Text; coding: utf-8; -*- First open in ISO 8859-3, then select to save in UTF-8 -- conversion =20 done! http://aspell.net/charsets/, http://www.slovo.info/unifonts.htm, =20 http://www.cs.tut.fi/%7Ejkorpela/chars.html, http://www.topology.org/=20 soft/alpha.html, http://www.i18nguy.com/, http://web.archive.org/web/=20 20030622083607/www.diffuse.org/chars.html How do you declare ISO Latin-3 or ISO 8859-3? This is meant for =20 Southern European, Maltese, and Esperanto Glyphs, very exotic! Or do =20 you live on Malta? Here is my test file for this encoding, starting =20 with a hint for GNU Emacs: ;;; -*- mode: Text; coding: iso-8859-3; -*- ; ; Time-stamp: <2005-07-15 14:20:24 pete> ; ; Southern European, Maltese and Esperanto Glyphs (Latin 3) ; ; oct dec hex UCS2 UTF-8 ;=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =3D 240 =3D 160 =3D A0 =3D U+00A0 =3D C2 A0 : NO-BREAK SPACE =C4=A6 =3D 241 =3D 161 =3D A1 =3D U+0126 =3D C4 A6 : LATIN CAPITAL = LETTER H WITH =20 STROKE =CB=98 =3D 242 =3D 162 =3D A2 =3D U+02D8 =3D CB 98 : BREVE =C2=A3 =3D 243 =3D 163 =3D A3 =3D U+00A3 =3D C2 A3 : POUND SIGN =C2=A4 =3D 244 =3D 164 =3D A4 =3D U+00A4 =3D C2 A4 : CURRENCY SIGN =C4=A4 =3D 246 =3D 166 =3D A6 =3D U+0124 =3D C4 A4 : LATIN CAPITAL = LETTER H WITH =20 CIRCUMFLEX =C2=A7 =3D 247 =3D 167 =3D A7 =3D U+00A7 =3D C2 A7 : SECTION SIGN =C2=A8 =3D 250 =3D 168 =3D A8 =3D U+00A8 =3D C2 A8 : DIAERESIS =C4=B0 =3D 251 =3D 169 =3D A9 =3D U+0130 =3D C4 B0 : LATIN CAPITAL = LETTER I WITH =20 DOT ABOVE =C5=9E =3D 252 =3D 170 =3D AA =3D U+015E =3D C5 9E : LATIN CAPITAL = LETTER S WITH =20 CEDILLA =C4=9E =3D 253 =3D 171 =3D AB =3D U+011E =3D C4 9E : LATIN CAPITAL = LETTER G WITH =20 BREVE =C4=B4 =3D 254 =3D 172 =3D AC =3D U+0134 =3D C4 B4 : LATIN CAPITAL = LETTER J WITH =20 CIRCUMFLEX =C2=AD =3D 255 =3D 173 =3D AD =3D U+00AD =3D C2 AD : HYPHEN-MINUS =C5=BB =3D 257 =3D 175 =3D AF =3D U+017B =3D C5 BB : LATIN CAPITAL = LETTER Z WITH =20 DOT ABOVE =C2=B0 =3D 260 =3D 176 =3D B0 =3D U+00B0 =3D C2 B0 : DEGREE SIGN =C4=A7 =3D 261 =3D 177 =3D B1 =3D U+0127 =3D C4 A7 : LATIN SMALL = LETTER H WITH =20 STROKE =C2=B2 =3D 262 =3D 178 =3D B2 =3D U+00B2 =3D C2 B2 : SUPERSCRIPT TWO =C2=B3 =3D 263 =3D 179 =3D B3 =3D U+00B3 =3D C2 B3 : SUPERSCRIPT = THREE =C2=B4 =3D 264 =3D 180 =3D B4 =3D U+00B4 =3D C2 B4 : ACUTE ACCENT =C2=B5 =3D 265 =3D 181 =3D B5 =3D U+00B5 =3D C2 B5 : MICRO SIGN =C4=A5 =3D 266 =3D 182 =3D B6 =3D U+0125 =3D C4 A5 : LATIN SMALL = LETTER H WITH =20 CIRCUMFLEX =C2=B7 =3D 267 =3D 183 =3D B7 =3D U+00B7 =3D C2 B7 : MIDDLE DOT =C2=B8 =3D 270 =3D 184 =3D B8 =3D U+00B8 =3D C2 B8 : CEDILLA =C4=B1 =3D 271 =3D 185 =3D B9 =3D U+0131 =3D C4 B1 : LATIN SMALL = LETTER DOTLESS I =C5=9F =3D 272 =3D 186 =3D BA =3D U+015F =3D C5 9F : LATIN SMALL = LETTER S WITH =20 CEDILLA =C4=9F =3D 273 =3D 187 =3D BB =3D U+011F =3D C4 9F : LATIN SMALL = LETTER G WITH =20 BREVE =C4=B5 =3D 274 =3D 188 =3D BC =3D U+0135 =3D C4 B5 : LATIN SMALL = LETTER J WITH =20 CIRCUMFLEX =C2=BD =3D 275 =3D 189 =3D BD =3D U+00BD =3D C2 BD : VULGAR FRACTION = ONE HALF =C5=BC =3D 277 =3D 191 =3D BF =3D U+017C =3D C5 BC : LATIN SMALL = LETTER Z WITH =20 DOT ABOVE =C3=80 =3D 300 =3D 192 =3D C0 =3D U+00C0 =3D C3 80 : LATIN CAPITAL = LETTER A WITH =20 GRAVE =C3=81 =3D 301 =3D 193 =3D C1 =3D U+00C1 =3D C3 81 : LATIN CAPITAL = LETTER A WITH =20 ACUTE =C3=82 =3D 302 =3D 194 =3D C2 =3D U+00C2 =3D C3 82 : LATIN CAPITAL = LETTER A WITH =20 CIRCUMFLEX =C3=84 =3D 304 =3D 196 =3D C4 =3D U+00C4 =3D C3 84 : LATIN CAPITAL = LETTER A WITH =20 DIAERESIS =C4=8A =3D 305 =3D 197 =3D C5 =3D U+010A =3D C4 8A : LATIN CAPITAL = LETTER C WITH =20 DOT ABOVE =C4=88 =3D 306 =3D 198 =3D C6 =3D U+0108 =3D C4 88 : LATIN CAPITAL = LETTER C WITH =20 CIRCUMFLEX =C3=87 =3D 307 =3D 199 =3D C7 =3D U+00C7 =3D C3 87 : LATIN CAPITAL = LETTER C WITH =20 CEDILLA =C3=88 =3D 310 =3D 200 =3D C8 =3D U+00C8 =3D C3 88 : LATIN CAPITAL = LETTER E WITH =20 GRAVE =C3=89 =3D 311 =3D 201 =3D C9 =3D U+00C9 =3D C3 89 : LATIN CAPITAL = LETTER E WITH =20 ACUTE =C3=8A =3D 312 =3D 202 =3D CA =3D U+00CA =3D C3 8A : LATIN CAPITAL = LETTER E WITH =20 CIRCUMFLEX =C3=8B =3D 313 =3D 203 =3D CB =3D U+00CB =3D C3 8B : LATIN CAPITAL = LETTER E WITH =20 DIAERESIS =C3=8C =3D 314 =3D 204 =3D CC =3D U+00CC =3D C3 8C : LATIN CAPITAL = LETTER I WITH =20 GRAVE =C3=8D =3D 315 =3D 205 =3D CD =3D U+00CD =3D C3 8D : LATIN CAPITAL = LETTER I WITH =20 ACUTE =C3=8E =3D 316 =3D 206 =3D CE =3D U+00CE =3D C3 8E : LATIN CAPITAL = LETTER I WITH =20 CIRCUMFLEX =C3=8F =3D 317 =3D 207 =3D CF =3D U+00CF =3D C3 8F : LATIN CAPITAL = LETTER I WITH =20 DIAERESIS =C3=91 =3D 321 =3D 209 =3D D1 =3D U+00D1 =3D C3 91 : LATIN CAPITAL = LETTER N WITH =20 TILDE =C3=92 =3D 322 =3D 210 =3D D2 =3D U+00D2 =3D C3 92 : LATIN CAPITAL = LETTER O WITH =20 GRAVE =C3=93 =3D 323 =3D 211 =3D D3 =3D U+00D3 =3D C3 93 : LATIN CAPITAL = LETTER O WITH =20 ACUTE =C3=94 =3D 324 =3D 212 =3D D4 =3D U+00D4 =3D C3 94 : LATIN CAPITAL = LETTER O WITH =20 CIRCUMFLEX =C4=A0 =3D 325 =3D 213 =3D D5 =3D U+0120 =3D C4 A0 : LATIN CAPITAL = LETTER G WITH =20 DOT ABOVE =C3=96 =3D 326 =3D 214 =3D D6 =3D U+00D6 =3D C3 96 : LATIN CAPITAL = LETTER O WITH =20 DIAERESIS =C3=97 =3D 327 =3D 215 =3D D7 =3D U+00D7 =3D C3 97 : MULTIPLICATION = SIGN =C4=9C =3D 330 =3D 216 =3D D8 =3D U+011C =3D C4 9C : LATIN CAPITAL = LETTER G WITH =20 CIRCUMFLEX =C3=99 =3D 331 =3D 217 =3D D9 =3D U+00D9 =3D C3 99 : LATIN CAPITAL = LETTER U WITH =20 GRAVE =C3=9A =3D 332 =3D 218 =3D DA =3D U+00DA =3D C3 9A : LATIN CAPITAL = LETTER U WITH =20 ACUTE =C3=9B =3D 333 =3D 219 =3D DB =3D U+00DB =3D C3 9B : LATIN CAPITAL = LETTER U WITH =20 CIRCUMFLEX =C3=9C =3D 334 =3D 220 =3D DC =3D U+00DC =3D C3 9C : LATIN CAPITAL = LETTER U WITH =20 DIAERESIS =C5=AC =3D 335 =3D 221 =3D DD =3D U+016C =3D C5 AC : LATIN CAPITAL = LETTER U WITH =20 BREVE =C5=9C =3D 336 =3D 222 =3D DE =3D U+015C =3D C5 9C : LATIN CAPITAL = LETTER S WITH =20 CIRCUMFLEX =C3=9F =3D 337 =3D 223 =3D DF =3D U+00DF =3D C3 9F : LATIN SMALL = LETTER SHARP S =C3=A0 =3D 340 =3D 224 =3D E0 =3D U+00E0 =3D C3 A0 : LATIN SMALL = LETTER A WITH =20 GRAVE =C3=A1 =3D 341 =3D 225 =3D E1 =3D U+00E1 =3D C3 A1 : LATIN SMALL = LETTER A WITH =20 ACUTE =C3=A2 =3D 342 =3D 226 =3D E2 =3D U+00E2 =3D C3 A2 : LATIN SMALL = LETTER A WITH =20 CIRCUMFLEX =C3=A4 =3D 344 =3D 228 =3D E4 =3D U+00E4 =3D C3 A4 : LATIN SMALL = LETTER A WITH =20 DIAERESIS =C4=8B =3D 345 =3D 229 =3D E5 =3D U+010B =3D C4 8B : LATIN SMALL = LETTER C WITH =20 DOT ABOVE =C4=89 =3D 346 =3D 230 =3D E6 =3D U+0109 =3D C4 89 : LATIN SMALL = LETTER C WITH =20 CIRCUMFLEX =C3=A7 =3D 347 =3D 231 =3D E7 =3D U+00E7 =3D C3 A7 : LATIN SMALL = LETTER C WITH =20 CEDILLA =C3=A8 =3D 350 =3D 232 =3D E8 =3D U+00E8 =3D C3 A8 : LATIN SMALL = LETTER E WITH =20 GRAVE =C3=A9 =3D 351 =3D 233 =3D E9 =3D U+00E9 =3D C3 A9 : LATIN SMALL = LETTER E WITH =20 ACUTE =C3=AA =3D 352 =3D 234 =3D EA =3D U+00EA =3D C3 AA : LATIN SMALL = LETTER E WITH =20 CIRCUMFLEX =C3=AB =3D 353 =3D 235 =3D EB =3D U+00EB =3D C3 AB : LATIN SMALL = LETTER E WITH =20 DIAERESIS =C3=AC =3D 354 =3D 236 =3D EC =3D U+00EC =3D C3 AC : LATIN SMALL = LETTER I WITH =20 GRAVE =C3=AD =3D 355 =3D 237 =3D ED =3D U+00ED =3D C3 AD : LATIN SMALL = LETTER I WITH =20 ACUTE =C3=AE =3D 356 =3D 238 =3D EE =3D U+00EE =3D C3 AE : LATIN SMALL = LETTER I WITH =20 CIRCUMFLEX =C3=AF =3D 357 =3D 239 =3D EF =3D U+00EF =3D C3 AF : LATIN SMALL = LETTER I WITH =20 DIAERESIS =C3=B1 =3D 361 =3D 241 =3D F1 =3D U+00F1 =3D C3 B1 : LATIN SMALL = LETTER N WITH =20 TILDE =C3=B2 =3D 362 =3D 242 =3D F2 =3D U+00F2 =3D C3 B2 : LATIN SMALL = LETTER O WITH =20 GRAVE =C3=B3 =3D 363 =3D 243 =3D F3 =3D U+00F3 =3D C3 B3 : LATIN SMALL = LETTER O WITH =20 ACUTE =C3=B4 =3D 364 =3D 244 =3D F4 =3D U+00F4 =3D C3 B4 : LATIN SMALL = LETTER O WITH =20 CIRCUMFLEX =C4=A1 =3D 365 =3D 245 =3D F5 =3D U+0121 =3D C4 A1 : LATIN SMALL = LETTER G WITH =20 DOT ABOVE =C3=B6 =3D 366 =3D 246 =3D F6 =3D U+00F6 =3D C3 B6 : LATIN SMALL = LETTER O WITH =20 DIAERESIS =C3=B7 =3D 367 =3D 247 =3D F7 =3D U+00F7 =3D C3 B7 : DIVISION SIGN =C4=9D =3D 370 =3D 248 =3D F8 =3D U+011D =3D C4 9D : LATIN SMALL = LETTER G WITH =20 CIRCUMFLEX =C3=B9 =3D 371 =3D 249 =3D F9 =3D U+00F9 =3D C3 B9 : LATIN SMALL = LETTER U WITH =20 GRAVE =C3=BA =3D 372 =3D 250 =3D FA =3D U+00FA =3D C3 BA : LATIN SMALL = LETTER U WITH =20 ACUTE =C3=BB =3D 373 =3D 251 =3D FB =3D U+00FB =3D C3 BB : LATIN SMALL = LETTER U WITH =20 CIRCUMFLEX =C3=BC =3D 374 =3D 252 =3D FC =3D U+00FC =3D C3 BC : LATIN SMALL = LETTER U WITH =20 DIAERESIS =C5=AD =3D 375 =3D 253 =3D FD =3D U+016D =3D C5 AD : LATIN SMALL = LETTER U WITH =20 BREVE =C5=9D =3D 376 =3D 254 =3D FE =3D U+015D =3D C5 9D : LATIN SMALL = LETTER S WITH =20 CIRCUMFLEX =CB=99 =3D 377 =3D 255 =3D FF =3D U+02D9 =3D CB 99 : DOT ABOVE -- Greetings Pete The human brain operates at only 10% of its capacity. The rest is =20 overhead for the operating system.