Mercurial > hg > xemacs-beta
view src/sunpro.c @ 4627:fdc76fec36d3
Vastly expand the characters x-compose.el supports.
2009-03-01 Aidan Kehoe <kehoea@parhasard.net>
* x-compose.el:
Document an XIM bug, and how one might work around it.
(define-compose-map):
Revise this macro, call it with compose-caron-map,
compose-macron-map, compose-breve-map, compose-dot-map,
compose-doubleacute-map, compose-ogonek-map, compose-hook-map,
compose-horn-map as well as the previous existing maps.
(compose-map):
Add entries for caron, macron, doubleacute, ogonek, breve and
abovedot to this map.
Add an assert, this code assumes that a non-Mule build has no
character codes above U+00FF.
Incorporate all the precomposed Latin characters in
UnicodeData.txt that we can into the maps, deciding at runtime on
which exactly depending on whether this is a non-Mule or a Mule
build.
Remove a commented-out old X11 bug workaround.
Use #'flet instead of defun + unintern for
#'alias-colon-to-doublequote.
Correct #'electric-diacritic to work with the keyboard macro
versions of the maps.
(compose-help):
This has been turned off since 1994; no-one appears to have
noticed, since the normal help mechanism offers similar
functionality and is actually maintained. Removed entirely.
Remove a superflous setting of a default value for ctl-arrow.
* x-init.el (x-initialize-compose):
Support the new dead key maps we just added to x-compose.el with
autoloads here.
| author | Aidan Kehoe <kehoea@parhasard.net> |
|---|---|
| date | Sun, 01 Mar 2009 11:11:46 +0000 |
| parents | e91cf17f6ab7 |
| children | 308d34e9f07d |
line wrap: on
line source
/* Sunpro-specific routines. Copyright (C) 1994 Sun Microsystems, Inc. This file is part of XEmacs. XEmacs is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. XEmacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with XEmacs; see the file COPYING. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* Synched up with: Not in FSF. */ /* Commentary: According to Paul Keusemann in <20070802140358.GA19566@visi.com>, this feature probably still works as of 2007-08-02. However, that doesn't seem reliable since there doesn't seem to be a way to configure it! */ #include <config.h> #include "lisp.h" /* #### The following junk used to be in lisp/prim/files.el. It obviously doesn't belong there, but should go somewhere. (if (fboundp 'ut-log-text) ;; #### Sun stuff; what is this? (ut-log-text "Reading a file.")) */ /* Whether usage tracking is turned on (Sun only) */ Lisp_Object Vusage_tracking; #ifdef USAGE_TRACKING #include <ut.h> #endif DEFUN ("ut-log-text", Fut_log_text, 1, MANY, 0, /* Log a usage-tracking message if `usage-tracking' is non-nil. Args are the same as to `format'. Returns whether the message was actually logged. If usage-tracking support was not compiled in, this function has no effect and always returns `nil'. See function `has-usage-tracking-p'. */ #ifdef USAGE_TRACKING (int nargs, Lisp_Object *args) #else (int UNUSED (nargs), Lisp_Object *UNUSED (args)) #endif ) { #ifdef USAGE_TRACKING Lisp_Object xs; unsigned char *s; if (!NILP (Vusage_tracking)) { xs = Fformat (nargs, args); CHECK_STRING (xs); s = XSTRING_DATA (xs); ut_log_text ((char *) s); } return Vusage_tracking; #else return Qnil; #endif } /************************************************************************/ /* initialization */ /************************************************************************/ void syms_of_sunpro (void) { DEFSUBR (Fut_log_text); } void vars_of_sunpro (void) { DEFVAR_LISP ("usage-tracking", &Vusage_tracking /* Whether usage tracking is turned on (Sun internal use only). Has no effect if usage tracking support has not been compiled in. */ ); Vusage_tracking = Qnil; Fprovide (intern ("sparcworks")); #ifdef USAGE_TRACKING Fprovide (intern ("usage-tracking")); #endif } void init_sunpro (void) { Vusage_tracking = Qnil; #ifdef USAGE_TRACKING if (!purify_flag) { /* Enabled only when not dumping an executable */ Vusage_tracking = Qt; ut_initialize ("xemacs", NULL, NULL); } #endif }
