}
+/* Set the ASCII font of the default fontset to FONTNAME if that is
+ not yet set. */
+void
+set_default_ascii_font (fontname)
+ Lisp_Object fontname;
+{
+ if (! CONSP (FONTSET_ASCII (Vdefault_fontset)))
+ {
+ int id = fs_query_fontset (fontname, 2);
+
+ if (id >= 0)
+ fontname = XCDR (FONTSET_ASCII (FONTSET_FROM_ID (id)));
+ FONTSET_ASCII (Vdefault_fontset)
+ = Fcons (make_number (0), fontname);
+ }
+}
+
\f
/********** INTERFACES TO xfaces.c, xfns.c, and dispextern.h **********/
Lisp_Object name, target, font_spec, frame, add;
{
Lisp_Object fontset;
- Lisp_Object font_def, registry;
+ Lisp_Object font_def, registry, family;
Lisp_Object encoding, repertory;
Lisp_Object range_list;
struct charset *charset = NULL;
CHECK_STRING (AREF (font_spec, j));
ASET (font_spec, j, Fdowncase (AREF (font_spec, j)));
}
+ family = AREF (font_spec, FONT_SPEC_FAMILY_INDEX);
/* REGISTRY should not be omitted. */
CHECK_STRING (AREF (font_spec, FONT_SPEC_REGISTRY_INDEX));
- registry = Fdowncase (AREF (font_spec, FONT_SPEC_REGISTRY_INDEX));
- ASET (font_spec, FONT_SPEC_REGISTRY_INDEX, registry);
-
+ registry = AREF (font_spec, FONT_SPEC_REGISTRY_INDEX);
}
else if (CONSP (font_spec))
{
- Lisp_Object family;
-
family = XCAR (font_spec);
registry = XCDR (font_spec);
if (STRINGP (font_spec))
encoding = find_font_encoding (font_spec);
else
- encoding = find_font_encoding (registry);
+ encoding = find_font_encoding (concat2 (family, registry));
if (SYMBOLP (encoding))
{
CHECK_CHARSET (encoding);
FONTSET_ID (Vdefault_fontset) = make_number (0);
FONTSET_NAME (Vdefault_fontset)
= build_string ("-*-*-*-*-*-*-*-*-*-*-*-*-fontset-default");
- {
- Lisp_Object default_ascii_font;
-
-#if defined (macintosh)
- default_ascii_font
- = build_string ("-apple-monaco-medium-r-*--*-120-*-*-*-*-mac-roman");
-#elif defined (WINDOWSNT)
- default_ascii_font
- = build_string ("-*-courier new-normal-r-*-*-*-100-*-*-*-*-iso8859-1");
-#else
- default_ascii_font
- = build_string ("-adobe-courier-medium-r-*-*-*-120-*-*-*-*-iso8859-1");
-#endif
- FONTSET_ASCII (Vdefault_fontset) = default_ascii_font;
- }
AREF (Vfontset_table, 0) = Vdefault_fontset;
next_fontset_id = 1;