CVS update by aidan xemacs/src ...
xemacs-cvs at xemacs.org
xemacs-cvs at xemacs.org
Wed Nov 29 14:56:17 EST 2006
User: aidan
Date: 06/11/29 20:56:17
Modified: xemacs/src ChangeLog mule-charset.c
Log:
Provide a FORCE argument in set-charset-registries, document that the user
should be using XLFD font forms and that the Mule build refuses to accept
non-XLFD forms unless forced.
Revision Changes Path
1.350 +8 -0 XEmacs/xemacs/man/ChangeLog
Index: ChangeLog
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/man/ChangeLog,v
retrieving revision 1.349
retrieving revision 1.350
diff -u -p -r1.349 -r1.350
--- ChangeLog 2006/11/17 02:50:30 1.349
+++ ChangeLog 2006/11/29 19:56:09 1.350
@@ -1,3 +1,11 @@
+2006-11-29 Aidan Kehoe <kehoea at parhasard.net>
+
+ * xemacs/custom.texi (Face Resources):
+ Mention that the user should use full XLFD forms for specifying
+ fonts, and that Mule builds reject the short forms by
+ default. Also mention the work-around to the latter design choice
+ that was implemented for Ilya.
+
2006-11-16 Stephen J. Turnbull <stephen at xemacs.org>
* internals/internals.texi
1.24 +12 -3 XEmacs/xemacs/man/xemacs/custom.texi
Index: custom.texi
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/man/xemacs/custom.texi,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -p -r1.23 -r1.24
--- custom.texi 2006/07/16 10:51:48 1.23
+++ custom.texi 2006/11/29 19:56:12 1.24
@@ -3035,6 +3035,10 @@ Description) format, which looks like
@end example
@noindent
+All X fonts can be referred to via XLFD-style names, and you should use
+those forms. See the man pages for @samp{X(1)}, @samp{xlsfonts(1)}, and
+ at samp{xfontsel(1)}.
+
If you use any of the other, less strict font name formats, some of which
look like
@@ -3045,9 +3049,14 @@ fixed
@end example
then XEmacs won't be able to guess the names of the bold and italic
-versions. All X fonts can be referred to via XLFD-style names, so you
-should use those forms. See the man pages for @samp{X(1)},
- at samp{xlsfonts(1)}, and @samp{xfontsel(1)}.
+versions, and on a build with internationalization support, it will
+refuse to use them. (Since only the XLFD form includes information as
+to which character set the font coverage.)
+
+If it is very important to you to use the short form names, you can
+override this for ASCII, and for ASCII alone, by passing the
+ at samp{FORCE} argument to @samp{set-charset-registries}, and specifying
+an empty string as one of the charset registries.
@node Widgets
@subsection Widgets
1.1024 +8 -0 XEmacs/xemacs/src/ChangeLog
Index: ChangeLog
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/src/ChangeLog,v
retrieving revision 1.1023
retrieving revision 1.1024
diff -u -p -r1.1023 -r1.1024
--- ChangeLog 2006/11/29 19:10:01 1.1023
+++ ChangeLog 2006/11/29 19:56:14 1.1024
@@ -1,5 +1,13 @@
2006-11-29 Aidan Kehoe <kehoea at parhasard.net>
+ * mule-charset.c (Fset_charset_registries):
+ Add an optional argument FORCE, to allow specifying badly-formed
+ CHARSET_REGISTRY-CHARSET_ENCODING combinations. Re-enables the
+ sort of hacks described in 96wt67fa3f.fsf at mo.msk.ru from Ilya
+ Golubev.
+
+2006-11-29 Aidan Kehoe <kehoea at parhasard.net>
+
* sound.c (init_native_sound):
Only X11 and GTK devices can possibly not be on the console of the
associated machine. Fixes a crash when init_native_sound is called
1.53 +22 -2 XEmacs/xemacs/src/mule-charset.c
Index: mule-charset.c
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/src/mule-charset.c,v
retrieving revision 1.52
retrieving revision 1.53
diff -u -p -r1.52 -r1.53
--- mule-charset.c 2006/11/15 21:40:02 1.52
+++ mule-charset.c 2006/11/29 19:56:15 1.53
@@ -891,7 +891,7 @@ set_charset_registries(Lisp_Object chars
face_property_was_changed (Vdefault_face, Qfont, Qglobal);
}
-DEFUN ("set-charset-registries", Fset_charset_registries, 2, 2, 0, /*
+DEFUN ("set-charset-registries", Fset_charset_registries, 2, 3, 0, /*
Set the `registries' property of CHARSET to REGISTRIES.
REGISTRIES is an ordered vector of strings that describe the X11
@@ -906,8 +906,22 @@ would be:
(set-charset-registries 'ascii ["jisx0201.1976-0"])
+If optional argument FORCE is non-nil, avoid sanity-checking the elements of
+REGISTRIES. Normally the strings are checked to make sure they contain no
+XLFD wild cards and that they contain at least one hyphen; the only context
+in which one might want not to do this is in order to use a font which
+doesn't have a full XLFD--and thus, an effective
+CHARSET_REGISTRY-CHARSET_ENCODING of ""--to display ASCII.
+
+We recommend strongly that you specify a full XLFD, since this makes
+multilingual and variant font handling work much better. To get the full
+XLFD of any font, start xfd with the short name as the pattern argument:
+
+ xfd -fn 8x16kana
+
+and use the text that appears at the top of the window.
*/
- (charset, registries))
+ (charset, registries, force))
{
int i;
charset = Fget_charset (charset);
@@ -916,6 +930,12 @@ would be:
for (i = 0; i < XVECTOR_LENGTH(registries); ++i)
{
CHECK_STRING (XVECTOR_DATA(registries)[i]);
+
+ if (!NILP(force))
+ {
+ continue;
+ }
+
if (NULL == qxestrchr(XSTRING_DATA(XVECTOR_DATA(registries)[i]), '-'))
{
invalid_argument("Not an X11 REGISTRY-ENCODING combination",
More information about the XEmacs-CVS
mailing list