802 |
|
|
803 |
|
|
804 |
DEFUN ("query-fontset", Fquery_fontset, Squery_fontset, 1, 2, 0, |
DEFUN ("query-fontset", Fquery_fontset, Squery_fontset, 1, 2, 0, |
805 |
"Return the name of a fontset that matches PATTERN.\n\ |
doc: /* Return the name of a fontset that matches PATTERN. |
806 |
The value is nil if there is no matching fontset.\n\ |
The value is nil if there is no matching fontset. |
807 |
PATTERN can contain `*' or `?' as a wildcard\n\ |
PATTERN can contain `*' or `?' as a wildcard |
808 |
just as X font name matching algorithm allows.\n\ |
just as X font name matching algorithm allows. |
809 |
If REGEXPP is non-nil, PATTERN is a regular expression.") |
If REGEXPP is non-nil, PATTERN is a regular expression. */) |
810 |
(pattern, regexpp) |
(pattern, regexpp) |
811 |
Lisp_Object pattern, regexpp; |
Lisp_Object pattern, regexpp; |
812 |
{ |
{ |
813 |
Lisp_Object fontset; |
Lisp_Object fontset; |
877 |
} |
} |
878 |
|
|
879 |
DEFUN ("new-fontset", Fnew_fontset, Snew_fontset, 2, 2, 0, |
DEFUN ("new-fontset", Fnew_fontset, Snew_fontset, 2, 2, 0, |
880 |
"Create a new fontset NAME that contains font information in FONTLIST.\n\ |
doc: /* Create a new fontset NAME that contains font information in FONTLIST. |
881 |
FONTLIST is an alist of charsets vs corresponding font name patterns.") |
FONTLIST is an alist of charsets vs corresponding font name patterns. */) |
882 |
(name, fontlist) |
(name, fontlist) |
883 |
Lisp_Object name, fontlist; |
Lisp_Object name, fontlist; |
884 |
{ |
{ |
885 |
Lisp_Object fontset, elements, ascii_font; |
Lisp_Object fontset, elements, ascii_font; |
976 |
} |
} |
977 |
|
|
978 |
DEFUN ("set-fontset-font", Fset_fontset_font, Sset_fontset_font, 3, 4, 0, |
DEFUN ("set-fontset-font", Fset_fontset_font, Sset_fontset_font, 3, 4, 0, |
979 |
"Modify fontset NAME to use FONTNAME for CHARACTER.\n\ |
doc: /* Modify fontset NAME to use FONTNAME for CHARACTER. |
980 |
\n\ |
|
981 |
CHARACTER may be a cons; (FROM . TO), where FROM and TO are\n\ |
CHARACTER may be a cons; (FROM . TO), where FROM and TO are |
982 |
non-generic characters. In that case, use FONTNAME\n\ |
non-generic characters. In that case, use FONTNAME |
983 |
for all characters in the range FROM and TO (inclusive).\n\ |
for all characters in the range FROM and TO (inclusive). |
984 |
CHARACTER may be a charset. In that case, use FONTNAME\n\ |
CHARACTER may be a charset. In that case, use FONTNAME |
985 |
for all character in the charsets.\n\ |
for all character in the charsets. |
986 |
\n\ |
|
987 |
FONTNAME may be a cons; (FAMILY . REGISTRY), where FAMILY is a family\n\ |
FONTNAME may be a cons; (FAMILY . REGISTRY), where FAMILY is a family |
988 |
name of a font, REGSITRY is a registry name of a font.") |
name of a font, REGSITRY is a registry name of a font. */) |
989 |
(name, character, fontname, frame) |
(name, character, fontname, frame) |
990 |
Lisp_Object name, character, fontname, frame; |
Lisp_Object name, character, fontname, frame; |
991 |
{ |
{ |
992 |
Lisp_Object fontset, elt; |
Lisp_Object fontset, elt; |
1090 |
} |
} |
1091 |
|
|
1092 |
DEFUN ("font-info", Ffont_info, Sfont_info, 1, 2, 0, |
DEFUN ("font-info", Ffont_info, Sfont_info, 1, 2, 0, |
1093 |
"Return information about a font named NAME on frame FRAME.\n\ |
doc: /* Return information about a font named NAME on frame FRAME. |
1094 |
If FRAME is omitted or nil, use the selected frame.\n\ |
If FRAME is omitted or nil, use the selected frame. |
1095 |
The returned value is a vector of OPENED-NAME, FULL-NAME, CHARSET, SIZE,\n\ |
The returned value is a vector of OPENED-NAME, FULL-NAME, CHARSET, SIZE, |
1096 |
HEIGHT, BASELINE-OFFSET, RELATIVE-COMPOSE, and DEFAULT-ASCENT,\n\ |
HEIGHT, BASELINE-OFFSET, RELATIVE-COMPOSE, and DEFAULT-ASCENT, |
1097 |
where\n\ |
where |
1098 |
OPENED-NAME is the name used for opening the font,\n\ |
OPENED-NAME is the name used for opening the font, |
1099 |
FULL-NAME is the full name of the font,\n\ |
FULL-NAME is the full name of the font, |
1100 |
SIZE is the maximum bound width of the font,\n\ |
SIZE is the maximum bound width of the font, |
1101 |
HEIGHT is the height of the font,\n\ |
HEIGHT is the height of the font, |
1102 |
BASELINE-OFFSET is the upward offset pixels from ASCII baseline,\n\ |
BASELINE-OFFSET is the upward offset pixels from ASCII baseline, |
1103 |
RELATIVE-COMPOSE and DEFAULT-ASCENT are the numbers controlling\n\ |
RELATIVE-COMPOSE and DEFAULT-ASCENT are the numbers controlling |
1104 |
how to compose characters.\n\ |
how to compose characters. |
1105 |
If the named font is not yet loaded, return nil.") |
If the named font is not yet loaded, return nil. */) |
1106 |
(name, frame) |
(name, frame) |
1107 |
Lisp_Object name, frame; |
Lisp_Object name, frame; |
1108 |
{ |
{ |
1109 |
FRAME_PTR f; |
FRAME_PTR f; |
1157 |
|
|
1158 |
|
|
1159 |
DEFUN ("internal-char-font", Finternal_char_font, Sinternal_char_font, 1, 1, 0, |
DEFUN ("internal-char-font", Finternal_char_font, Sinternal_char_font, 1, 1, 0, |
1160 |
"For internal use only.") |
doc: /* For internal use only. */) |
1161 |
(position) |
(position) |
1162 |
Lisp_Object position; |
Lisp_Object position; |
1163 |
{ |
{ |
1164 |
int pos, pos_byte, dummy; |
int pos, pos_byte, dummy; |
1239 |
|
|
1240 |
|
|
1241 |
DEFUN ("fontset-info", Ffontset_info, Sfontset_info, 1, 2, 0, |
DEFUN ("fontset-info", Ffontset_info, Sfontset_info, 1, 2, 0, |
1242 |
"Return information about a fontset named NAME on frame FRAME.\n\ |
doc: /* Return information about a fontset named NAME on frame FRAME. |
1243 |
The value is a vector:\n\ |
The value is a vector: |
1244 |
[ SIZE HEIGHT ((CHARSET-OR-RANGE FONT-SPEC OPENED ...) ...) ],\n\ |
[ SIZE HEIGHT ((CHARSET-OR-RANGE FONT-SPEC OPENED ...) ...) ], |
1245 |
where,\n\ |
where, |
1246 |
SIZE is the maximum bound width of ASCII font in the fontset,\n\ |
SIZE is the maximum bound width of ASCII font in the fontset, |
1247 |
HEIGHT is the maximum bound height of ASCII font in the fontset,\n\ |
HEIGHT is the maximum bound height of ASCII font in the fontset, |
1248 |
CHARSET-OR-RANGE is a charset, a character (may be a generic character)\n\ |
CHARSET-OR-RANGE is a charset, a character (may be a generic character) |
1249 |
or a cons of two characters specifying the range of characters.\n\ |
or a cons of two characters specifying the range of characters. |
1250 |
FONT-SPEC is a fontname pattern string or a cons (FAMILY . REGISTRY),\n\ |
FONT-SPEC is a fontname pattern string or a cons (FAMILY . REGISTRY), |
1251 |
where FAMILY is a `FAMILY' field of a XLFD font name,\n\ |
where FAMILY is a `FAMILY' field of a XLFD font name, |
1252 |
REGISTRY is a `CHARSET_REGISTRY' field of a XLDF font name.\n\ |
REGISTRY is a `CHARSET_REGISTRY' field of a XLDF font name. |
1253 |
FAMILY may contain a `FOUNDARY' field at the head.\n\ |
FAMILY may contain a `FOUNDARY' field at the head. |
1254 |
REGISTRY may contain a `CHARSET_ENCODING' field at the tail.\n\ |
REGISTRY may contain a `CHARSET_ENCODING' field at the tail. |
1255 |
OPENEDs are names of fonts actually opened.\n\ |
OPENEDs are names of fonts actually opened. |
1256 |
If the ASCII font is not yet opened, SIZE and HEIGHT are 0.\n\ |
If the ASCII font is not yet opened, SIZE and HEIGHT are 0. |
1257 |
If FRAME is omitted, it defaults to the currently selected frame.") |
If FRAME is omitted, it defaults to the currently selected frame. */) |
1258 |
(name, frame) |
(name, frame) |
1259 |
Lisp_Object name, frame; |
Lisp_Object name, frame; |
1260 |
{ |
{ |
1261 |
Lisp_Object fontset; |
Lisp_Object fontset; |
1349 |
} |
} |
1350 |
|
|
1351 |
DEFUN ("fontset-font", Ffontset_font, Sfontset_font, 2, 2, 0, |
DEFUN ("fontset-font", Ffontset_font, Sfontset_font, 2, 2, 0, |
1352 |
"Return a font name pattern for character CH in fontset NAME.\n\ |
doc: /* Return a font name pattern for character CH in fontset NAME. |
1353 |
If NAME is t, find a font name pattern in the default fontset.") |
If NAME is t, find a font name pattern in the default fontset. */) |
1354 |
(name, ch) |
(name, ch) |
1355 |
Lisp_Object name, ch; |
Lisp_Object name, ch; |
1356 |
{ |
{ |
1357 |
int c; |
int c; |
1373 |
|
|
1374 |
|
|
1375 |
DEFUN ("fontset-list", Ffontset_list, Sfontset_list, 0, 0, 0, |
DEFUN ("fontset-list", Ffontset_list, Sfontset_list, 0, 0, 0, |
1376 |
"Return a list of all defined fontset names.") |
doc: /* Return a list of all defined fontset names. */) |
1377 |
() |
() |
1378 |
{ |
{ |
1379 |
Lisp_Object fontset, list; |
Lisp_Object fontset, list; |
1380 |
int i; |
int i; |
1430 |
next_fontset_id = 1; |
next_fontset_id = 1; |
1431 |
|
|
1432 |
DEFVAR_LISP ("font-encoding-alist", &Vfont_encoding_alist, |
DEFVAR_LISP ("font-encoding-alist", &Vfont_encoding_alist, |
1433 |
"Alist of fontname patterns vs corresponding encoding info.\n\ |
doc: /* Alist of fontname patterns vs corresponding encoding info. |
1434 |
Each element looks like (REGEXP . ENCODING-INFO),\n\ |
Each element looks like (REGEXP . ENCODING-INFO), |
1435 |
where ENCODING-INFO is an alist of CHARSET vs ENCODING.\n\ |
where ENCODING-INFO is an alist of CHARSET vs ENCODING. |
1436 |
ENCODING is one of the following integer values:\n\ |
ENCODING is one of the following integer values: |
1437 |
0: code points 0x20..0x7F or 0x2020..0x7F7F are used,\n\ |
0: code points 0x20..0x7F or 0x2020..0x7F7F are used, |
1438 |
1: code points 0xA0..0xFF or 0xA0A0..0xFFFF are used,\n\ |
1: code points 0xA0..0xFF or 0xA0A0..0xFFFF are used, |
1439 |
2: code points 0x20A0..0x7FFF are used,\n\ |
2: code points 0x20A0..0x7FFF are used, |
1440 |
3: code points 0xA020..0xFF7F are used."); |
3: code points 0xA020..0xFF7F are used. */); |
1441 |
Vfont_encoding_alist = Qnil; |
Vfont_encoding_alist = Qnil; |
1442 |
|
|
1443 |
DEFVAR_LISP ("use-default-ascent", &Vuse_default_ascent, |
DEFVAR_LISP ("use-default-ascent", &Vuse_default_ascent, |
1444 |
"Char table of characters whose ascent values should be ignored.\n\ |
doc: /* Char table of characters whose ascent values should be ignored. |
1445 |
If an entry for a character is non-nil, the ascent value of the glyph\n\ |
If an entry for a character is non-nil, the ascent value of the glyph |
1446 |
is assumed to be what specified by _MULE_DEFAULT_ASCENT property of a font.\n\ |
is assumed to be what specified by _MULE_DEFAULT_ASCENT property of a font. |
1447 |
\n\ |
|
1448 |
This affects how a composite character which contains\n\ |
This affects how a composite character which contains |
1449 |
such a character is displayed on screen."); |
such a character is displayed on screen. */); |
1450 |
Vuse_default_ascent = Qnil; |
Vuse_default_ascent = Qnil; |
1451 |
|
|
1452 |
DEFVAR_LISP ("ignore-relative-composition", &Vignore_relative_composition, |
DEFVAR_LISP ("ignore-relative-composition", &Vignore_relative_composition, |
1453 |
"Char table of characters which is not composed relatively.\n\ |
doc: /* Char table of characters which is not composed relatively. |
1454 |
If an entry for a character is non-nil, a composition sequence\n\ |
If an entry for a character is non-nil, a composition sequence |
1455 |
which contains that character is displayed so that\n\ |
which contains that character is displayed so that |
1456 |
the glyph of that character is put without considering\n\ |
the glyph of that character is put without considering |
1457 |
an ascent and descent value of a previous character."); |
an ascent and descent value of a previous character. */); |
1458 |
Vignore_relative_composition = Qnil; |
Vignore_relative_composition = Qnil; |
1459 |
|
|
1460 |
DEFVAR_LISP ("alternate-fontname-alist", &Valternate_fontname_alist, |
DEFVAR_LISP ("alternate-fontname-alist", &Valternate_fontname_alist, |
1461 |
"Alist of fontname vs list of the alternate fontnames.\n\ |
doc: /* Alist of fontname vs list of the alternate fontnames. |
1462 |
When a specified font name is not found, the corresponding\n\ |
When a specified font name is not found, the corresponding |
1463 |
alternate fontnames (if any) are tried instead."); |
alternate fontnames (if any) are tried instead. */); |
1464 |
Valternate_fontname_alist = Qnil; |
Valternate_fontname_alist = Qnil; |
1465 |
|
|
1466 |
DEFVAR_LISP ("fontset-alias-alist", &Vfontset_alias_alist, |
DEFVAR_LISP ("fontset-alias-alist", &Vfontset_alias_alist, |
1467 |
"Alist of fontset names vs the aliases."); |
doc: /* Alist of fontset names vs the aliases. */); |
1468 |
Vfontset_alias_alist = Fcons (Fcons (FONTSET_NAME (Vdefault_fontset), |
Vfontset_alias_alist = Fcons (Fcons (FONTSET_NAME (Vdefault_fontset), |
1469 |
build_string ("fontset-default")), |
build_string ("fontset-default")), |
1470 |
Qnil); |
Qnil); |
1471 |
|
|
1472 |
DEFVAR_LISP ("highlight-wrong-size-font", &Vhighlight_wrong_size_font, |
DEFVAR_LISP ("highlight-wrong-size-font", &Vhighlight_wrong_size_font, |
1473 |
"*This variable is obsolete."); |
doc: /* *This variable is obsolete. */); |
1474 |
Vhighlight_wrong_size_font = Qnil; |
Vhighlight_wrong_size_font = Qnil; |
1475 |
|
|
1476 |
DEFVAR_LISP ("clip-large-size-font", &Vclip_large_size_font, |
DEFVAR_LISP ("clip-large-size-font", &Vclip_large_size_font, |
1477 |
"*This variable is obsolete."); |
doc: /* *This variable is obsolete. */); |
1478 |
Vclip_large_size_font = Qt; |
Vclip_large_size_font = Qt; |
1479 |
|
|
1480 |
DEFVAR_LISP ("vertical-centering-font-regexp", |
DEFVAR_LISP ("vertical-centering-font-regexp", |
1481 |
&Vvertical_centering_font_regexp, |
&Vvertical_centering_font_regexp, |
1482 |
"*Regexp matching font names that require vertical centering on display.\n\ |
doc: /* *Regexp matching font names that require vertical centering on display. |
1483 |
When a character is displayed with such fonts, the character is displayed\n\ |
When a character is displayed with such fonts, the character is displayed |
1484 |
at the vertival center of lines."); |
at the vertival center of lines. */); |
1485 |
Vvertical_centering_font_regexp = Qnil; |
Vvertical_centering_font_regexp = Qnil; |
1486 |
|
|
1487 |
defsubr (&Squery_fontset); |
defsubr (&Squery_fontset); |