[S] [PATCH] Fix broken -unmapped.
18 years, 1 month
Malcolm Purvis
SUPERSEDES m2u07e5ncc.fsf(a)silver.local
[I've discovered that I posted this patch ages ago but never committed it.]
Way back in April Giacomo Boffi reported that -unmapped was broken in 21.5.
This fixes it so once again no frame appears.
The problem was that the updated version of display-splash-screen called
pop-to-buffer, which mapped the frame. pop-to-buffer is moved to the
interactive function xemacs-splash-buffer instead.
Malcolm
lisp/ChangeLog addition:
2006-10-20 Malcolm Purvis <malcolmp(a)xemacs.org>
* startup.el (display-splash-screen): No longer bring buffer the
front. Fixes problems with -unmapped.
* startup.el (xemacs-splash-buffer): Pop splash buffer to the
front here instead.
xemacs-unmapped source patch:
Diff command: cvs-rw -q diff -u
Files affected: lisp/startup.el
Index: lisp/startup.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/lisp/startup.el,v
retrieving revision 1.56
diff -u -r1.56 startup.el
--- lisp/startup.el 2006/04/25 14:01:53 1.56
+++ lisp/startup.el 2006/10/20 12:32:22
@@ -1365,8 +1365,6 @@
(let* ((after-change-functions nil) ; no font-lock, thank you
(elements (cond (tty (splash-screen-tty-body))
(t (splash-screen-window-body)))))
- (pop-to-buffer (current-buffer))
- (delete-other-windows)
(splash-screen-present elements)
(set-buffer-modified-p nil))))
@@ -1377,6 +1375,8 @@
(set-buffer buffer)
(setq buffer-read-only nil)
(erase-buffer buffer)
+ (pop-to-buffer buffer)
+ (delete-other-windows)
(display-splash-screen)))
;; (let ((present-file
--
Malcolm Purvis <malcolmp(a)xemacs.org>
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
[PATCH] make window-configuration saving of frame position optional
18 years, 1 month
Nix
Back in the 21.4 days, `set-window-configuration' was written in C. In that
code were a few commented-out sections:
#if 0
/* JV: This is bogus,
First of all, the units are inconsistent. The frame sizes are measured
in characters but the window sizes are stored in pixels. So if a
font size change happened between saving and restoring, the
frame "sizes" maybe equal but the windows still should be
resized. This is tickled a lot by the new "character size
stays constant" policy in 21.0. It leads to very weird
glitches (and possibly crashes when asserts are tickled).
Just changing the units doesn't help because changing the
toolbar configuration can also change the pixel positions.
Luckily there is a much simpler way of doing this, see below.
*/
previous_frame_width = FRAME_WIDTH (f);
previous_frame_height = FRAME_HEIGHT (f);
/* If the frame has been resized since this window configuration was
made, we change the frame to the size specified in the
configuration, restore the configuration, and then resize it
back. We keep track of the prevailing height in these variables. */
if (config->frame_height != FRAME_HEIGHT (f)
|| config->frame_width != FRAME_WIDTH (f))
change_frame_size (f, config->frame_height, config->frame_width, 0);
#endif
In the move of this code to Lisp, this feature was implemented, which is
probably a good thing: otherwise, you can try to restore a window
configuration and then find that there isn't room to restore it because
the frame is too small.
Unfortunately, another feature was added at the same time: frame
positions are now saved in window configurations, and restored on
`set-window-configuration'. This is profoundly counterintuitive, for
several reasons:
- the position of a frame does not conceptually affect its contents:
the half-dozen XEmacs users I've informally polled consider that if
they drag a frame halfway across the screen with a *Help* buffer open,
say, closing it should not pop the frame back where it came from!
(There was a strong current of opinion saying that the frame size
should remain unchanged, as well, but that's harder to implement:
we'd have to attempt window restoration, and then restore the frame
size only if there's not enough room, and that sort of seemingly-
inconsistent behaviour is perhaps even more annoying than the
behaviour it replaces.)
- window configurations are used by all sorts of things not directly
commanded by the user: the window-configuration stack uses it, as
I just mentioned, and unless like me you've bound
`pushpop-window-configuration' to something this will remain an
undocumented feature which only people who read .el files for fun
will discover. But, more than that, `save-window-excursion' uses
it, and the docstring for that function says that it saves `window
sizes and contents': nothing about positions. A lot of functions far
from user view call `save-window-excursion', often to enable them to
repurpose user-interface functions for their own use.
A particularly extreme example is `bbdb-hashtable', which expands
the `bbdb-with-db-buffer' function, which calls `save-window-excursion',
and which is used by a huge number of functions in BBDB. e.g., if you
have the BBDB set up to replace full in Gnus with names from the BBDB,
this function gets called when populating summary buffers *once for
every line*.
- window positions are modified by the window manager, as well as by
the user, and are modified extensively in ways the user might not
expect. e.g. if FVWM-style viewports are in use, the position of every
window on the system will change whenever you flip viewports --- and
if XEmacs grabs a window configuration, then you change desktops,
and then it restores, XEmacs may just have pushed one of its frames
completely off the visible viewport area, and will definitely have
made it spontaneously change virtual desktops. This is supremely
annoying, particularly when combined with the previous item: now
you can start going into a summary buffer, flip to another viewport
to do something else while Gnus churns to itself, and *whoops*!
XEmacs has just chosen to move itself somewhere else for you!
So this patch (against CVS HEAD as of this morning) makes this feature
optional, and *off* by default (because a *lot* of people use
viewport-based virtual desktops, and it breaks for all of them, and my
informal poll found that people considered it counterintuitive anyway).
2006-10-28 Nix <nix(a)esperi.org.uk>
* window-xemacs.el (window-configuration-includes-position): New.
* window-xemacs.el (window-configuration-equal): Use it: window
configurations with distinct positions are equal by default.
* window-xemacs.el (really-set-window-configuration): Do not
restore window positions unless requested.
Index: 21.5/lisp/window-xemacs.el
===================================================================
--- 21.5.orig/lisp/window-xemacs.el 2006-10-20 19:50:53.000000000 +0100
+++ 21.5/lisp/window-xemacs.el 2006-10-28 15:02:30.000000000 +0100
@@ -107,6 +107,15 @@
;; Window configurations
+(defcustom window-configuration-includes-position nil
+ "*Whether restoring window configurations will restore positions too.
+If nil, only the size of windows will be restored.
+
+Note that setting this value to t may have counterintuitive consequences,
+if a window manager employing virtual desktops is in use."
+:type 'boolean
+:group 'windows)
+
(defstruct saved-window
currentp minibufferp minibuffer-scrollp
buffer mark-marker
@@ -128,7 +137,11 @@
(defun window-configuration-equal (conf-1 conf-2)
"Returns a boolean indicating whether the two given configurations
-are identical."
+are identical.
+
+Window configurations containing windows with different window
+positions are not identical iff `window-configuration-includes-position'
+is t."
(or (eq conf-1 conf-2)
(and (eq (window-configuration-frame conf-1)
(window-configuration-frame conf-2))
@@ -136,10 +149,12 @@
(window-configuration-frame-pixel-width conf-2))
(= (window-configuration-frame-pixel-height conf-1)
(window-configuration-frame-pixel-height conf-2))
- (equal (window-configuration-frame-top conf-1)
- (window-configuration-frame-top conf-2))
- (equal (window-configuration-frame-left conf-1)
- (window-configuration-frame-left conf-2))
+ (if window-configuration-includes-position
+ (and (equal (window-configuration-frame-top conf-1)
+ (window-configuration-frame-top conf-2))
+ (equal (window-configuration-frame-left conf-1)
+ (window-configuration-frame-left conf-2)))
+ t)
(eq (window-configuration-current-buffer conf-1)
(window-configuration-current-buffer conf-2))
(saved-window-equal (window-configuration-saved-root-window conf-1)
@@ -294,12 +309,13 @@
; avoid setting these if they're already up-to-date
; This also avoids potential inaccuracies in these settings --Mike
- (let ((left (window-configuration-frame-left configuration))
- (top (window-configuration-frame-top configuration)))
- (if (not (equal left (frame-property frame 'left)))
- (set-frame-property frame 'left left))
- (if (not (equal top (frame-property frame 'top)))
- (set-frame-property frame 'top top)))
+ (when window-configuration-includes-position
+ (let ((left (window-configuration-frame-left configuration))
+ (top (window-configuration-frame-top configuration)))
+ (if (not (equal left (frame-property frame 'left)))
+ (set-frame-property frame 'left left))
+ (if (not (equal top (frame-property frame 'top)))
+ (set-frame-property frame 'top top))))
;; these may have changed because of the delete
(let ((root-window (frame-root-window frame)))
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
[PATCH] Locale specific app-defaults files.
18 years, 1 month
Malcolm Purvis
Slightly connected to Mats' recent comments on running XEmacs under a non-"C"
locale, here is the first of two patches that fix locale problems that I've
found.
The locale package provides locale specific X resources and splash screens.
The files are stored in directories called <language> (eg 'fr'), and accessed
directly from the contents of $LANG. Unfortunately the general form of $LANG
these days is <language>_<country>.<encoding>.
This patch fixes the loading of a locale specific app-defaults file so that
<language>_<country> and <language> are searched as well.
Malcolm
src/ChangeLog addition:
2006-10-22 Malcolm Purvis <malcolmp(a)xemacs.org>
* device-x.c (x_init_device): Look in more directories when
searching for the locale specific app-defaults files.
xemacs-locale source patch:
Diff command: cvs -q diff -u
Files affected: src/device-x.c
Index: src/device-x.c
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/src/device-x.c,v
retrieving revision 1.67
diff -u -r1.67 device-x.c
--- src/device-x.c 2006/06/21 17:30:35 1.67
+++ src/device-x.c 2006/10/22 11:59:01
@@ -665,8 +665,10 @@
does not override resources defined elsewhere */
const Extbyte *data_dir;
Extbyte *path;
+ Extbyte *format;
XrmDatabase db = XtDatabase (dpy); /* #### XtScreenDatabase(dpy) ? */
- const Extbyte *locale = XrmLocaleOfDatabase (db);
+ Extbyte *locale = xstrdup (XrmLocaleOfDatabase (db));
+ Extbyte *locale_end;
if (STRINGP (Vx_app_defaults_directory) &&
XSTRING_LENGTH (Vx_app_defaults_directory) > 0)
@@ -674,18 +676,42 @@
LISP_STRING_TO_EXTERNAL (Vx_app_defaults_directory, data_dir,
Qfile_name);
path = alloca_extbytes (strlen (data_dir) + strlen (locale) + 7);
- sprintf (path, "%s%s/Emacs", data_dir, locale);
- if (!access (path, R_OK))
- XrmCombineFileDatabase (path, &db, False);
+ format = "%s%s/Emacs";
}
else if (STRINGP (Vdata_directory) && XSTRING_LENGTH (Vdata_directory) > 0)
{
LISP_STRING_TO_EXTERNAL (Vdata_directory, data_dir, Qfile_name);
path = alloca_extbytes (strlen (data_dir) + 13 + strlen (locale) + 7);
- sprintf (path, "%sapp-defaults/%s/Emacs", data_dir, locale);
- if (!access (path, R_OK))
- XrmCombineFileDatabase (path, &db, False);
+ format = "%sapp-defaults/%s/Emacs";
}
+
+ /*
+ * The general form for $LANG is <language>_<country>.<encoding>. Try
+ * that form, <language>_<country> and <language> and load for first
+ * app-defaults file found.
+ */
+
+ sprintf (path, format, data_dir, locale);
+ if (!access (path, R_OK))
+ XrmCombineFileDatabase (path, &db, False);
+
+ if ((locale_end = strchr(locale, '.'))) {
+ *locale_end = '\0';
+ sprintf (path, format, data_dir, locale);
+
+ if (!access (path, R_OK))
+ XrmCombineFileDatabase (path, &db, False);
+ }
+
+ if ((locale_end = strchr(locale, '_'))) {
+ *locale_end = '\0';
+ sprintf (path, format, data_dir, locale);
+
+ if (!access (path, R_OK))
+ XrmCombineFileDatabase (path, &db, False);
+ }
+
+ xfree (locale, Extbyte*);
}
#endif /* MULE */
--
Malcolm Purvis <malcolmp(a)xemacs.org>
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
[C] XEmacs-CVSROOT: Add new www.xemacs.org IP address to ssh_known_hosts
18 years, 1 month
Adrian Aichner
COMMIT
A web commit had this complaint, although the website update still
worked:
**** Access allowed: Personal Karma exceeds Environmental Karma.
Checking in About/ChangeLog;
/pack/xemacscvs/XEmacs/xemacsweb/About/ChangeLog,v <-- ChangeLog
new revision: 1.206; previous revision: 1.205
done
Checking in About/created.content;
/pack/xemacscvs/XEmacs/xemacsweb/About/created.content,v <-- created.content
new revision: 1.88; previous revision: 1.87
done
Processing log script arguments...
Mailing the commit message to xemacs-cvs(a)xemacs.org (from xemacs-cvs(a)xemacs.org)
Updating website as xemacs(a)sunsite.dk ...
Updating website as xemacs(a)xemacs.sourceforge.net ...
Updating website as xemacweb(a)www.xemacs.org ...
Failed to add the RSA1 host key for IP address '207.172.156.133' to the list of known hosts (./ssh_known_hosts).
And here's the update.
I am keeping old IPs for nostalgia, but should probably purge them?
Could these old IPs be reused by other organizations?
Best regards!
Adrian
XEmacs-CVSROOT ChangeLog patch:
Diff command: cvs -q diff -U 0
Files affected: ChangeLog
Index: ChangeLog
===================================================================
RCS file: /pack/xemacscvs/CVSROOT/ChangeLog,v
retrieving revision 1.149
diff -u -U0 -r1.149 ChangeLog
--- ChangeLog 16 Dec 2005 14:33:37 -0000 1.149
+++ ChangeLog 27 Oct 2006 20:57:32 -0000
@@ -0,0 +1,4 @@
+2006-10-27 Adrian Aichner <adrian(a)xemacs.org>
+
+ * ssh_known_hosts: Add new www.xemacs.org IP address.
+
XEmacs-CVSROOT source patch:
Diff command: cvs -f -z3 -q diff -u -w -N
Files affected: ssh_known_hosts
===================================================================
RCS
Index: ssh_known_hosts
===================================================================
RCS file: /pack/xemacscvs/CVSROOT/ssh_known_hosts,v
retrieving revision 1.24
diff -u -w -r1.24 ssh_known_hosts
--- ssh_known_hosts 12 Oct 2003 20:46:32 -0000 1.24
+++ ssh_known_hosts 27 Oct 2006 20:56:22 -0000
@@ -1,3 +1,3 @@
sunsite.dk,130.225.247.90 1024 35 148528299969609934846963622501552993813562345182945326718830553989687933347506564835361597805030181070665422926714899851462477104403575697872368044394421277863950549818205511825079380927537469626151489624113742202914922423343628570500862653065486787673958367142512616535948103788535351269771532331123007504709
xemacs.sourceforge.net,66.35.250.209 1024 33 128924470705398209102756996954502983262028081367539141294366246954411549904580834121479916210106191946755940435825080973567069530858666809492745122498855495744994998372484124505793741347067203790865455488054034609680287705733837331602330407470713515342800732981818490074631195245036203914402097831932034223577
-www.xemacs.org,199.184.165.136 1024 35 147791117709570226148391879398434809228159132703734105870815018356822921857678284814977059049568661442230855537449309575401577924292090593234020384348603755111614158040736768046345448616336139216350571433289658153595106874705767152078680206376400908833084672875810036607926893168605412877115839848383242787401
+www.xemacs.org,199.184.165.136,207.172.156.133 1024 35 147791117709570226148391879398434809228159132703734105870815018356822921857678284814977059049568661442230855537449309575401577924292090593234020384348603755111614158040736768046345448616336139216350571433289658153595106874705767152078680206376400908833084672875810036607926893168605412877115839848383242787401
--
Adrian Aichner
mailto:adrian@xemacs.org
http://www.xemacs.org/
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
Re: [APPROVE] make window-configuration saving of frame position optional
18 years, 1 month
Nix
On 29 Oct 2006, Michael Sperber stated:
> [Nix, I'm not sure you're a committer. Let me know if you're not, and
> I'll commit your patch.]
I'm sure I'm not a committer :)
> Nix <nix(a)esperi.org.uk> writes:
>
>> Unfortunately, another feature was added at the same time: frame
>> positions are now saved in window configurations,
>
> Hm, I don't remember this detail, but I do remember I tried to follow
> the essence of what the old code did pretty slavishly. But never
That code was rather... fugly, with a lot of #iffed out portions and
so forth.
> mind, your reasoning is sound. (Generally, window-configuration
> restore happens way too often.)
What I'm worried about here is the saving. Does querying the frame
position and size involve a round-trip to the X server? 'cos if it does
we're roundtripping to hell and back.
(I actually expect that it doesn't on the basis that I'd have seen the
network traffic... it's probably locally cached.)
(Tracking GC leak now: current suspect; horrible heap fragmentation
combined with the lack of an upper bound on the size of new heap
allocations (the comments say there is such a bound but they're
wrong). The new GC uses a new allocator, which nothing else uses, so
that allocator is a definite source of potential bugs.)
--
`When we are born we have plenty of Hydrogen but as we age our
Hydrogen pool becomes depleted.'
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
[COMMIT] Support Ghe with upturn in X11
18 years, 1 month
Aidan Kehoe
Ar an seachtú lá is fiche de mí Deireadh Fómhair, scríobh Andriy Gapon:
> [...] P.S. Macedonian Gje is now OK, so it seems that the Soviet
> conspiracy against GHE WITH UPTURN lives on, kidding :-)
The Soviet conspiracy against GHE WITH UPTURN, and its resulting exclusion
from ISO-8859-5 was indeed the problem. The patch below, which I’ve just
committed, allows you to input that character, but display won’t work until
the other patch I mentioned that uses Unicode fonts gets
committed. Hopefully tomorrow.
APPROVE COMMIT
NOTE: This patch has been committed.
src/ChangeLog addition:
2006-10-28 Aidan Kehoe <kehoea(a)parhasard.net>
* event-xlike-inc.c:
Rework the X11 keysym support to allow the use of Cyrillic keysyms
that are not in ISO-8859-5.
XEmacs Trunk source patch:
Diff command: cvs -q diff -Nu
Files affected: src/event-xlike-inc.c
Index: src/event-xlike-inc.c
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/src/event-xlike-inc.c,v
retrieving revision 1.4
diff -u -u -r1.4 event-xlike-inc.c
--- src/event-xlike-inc.c 2006/06/18 18:34:21 1.4
+++ src/event-xlike-inc.c 2006/10/28 15:54:09
@@ -459,6 +459,106 @@
0x22A3, /* #x0BFC RIGHT TACK APL */
};
+static UINT_16_BIT const CYRILLIC[] =
+ {
+ 0x0452, /* #x06A1 CYRILLIC SMALL LETTER DJE */
+#define FIRST_KNOWN_CYRILLIC 0x6A1
+ 0x0453, /* #x06A2 CYRILLIC SMALL LETTER GJE */
+ 0x0451, /* #x06A3 CYRILLIC SMALL LETTER IO */
+ 0x0454, /* #x06A4 CYRILLIC SMALL LETTER UKRAINIAN IE */
+ 0x0455, /* #x06A5 CYRILLIC SMALL LETTER DZE */
+ 0x0456, /* #x06A6 CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I */
+ 0x0457, /* #x06A7 CYRILLIC SMALL LETTER YI */
+ 0x0458, /* #x06A8 CYRILLIC SMALL LETTER JE */
+ 0x0459, /* #x06A9 CYRILLIC SMALL LETTER LJE */
+ 0x045A, /* #x06AA CYRILLIC SMALL LETTER NJE */
+ 0x045B, /* #x06AB CYRILLIC SMALL LETTER TSHE */
+ 0x045C, /* #x06AC CYRILLIC SMALL LETTER KJE */
+ 0x0491, /* #x06AD CYRILLIC SMALL LETTER GHE WITH UPTURN */
+ 0x045E, /* #x06AE CYRILLIC SMALL LETTER SHORT U */
+ 0x045F, /* #x06AF CYRILLIC SMALL LETTER DZHE */
+ 0x2116, /* #x06B0 NUMERO SIGN */
+ 0x0402, /* #x06B1 CYRILLIC CAPITAL LETTER DJE */
+ 0x0403, /* #x06B2 CYRILLIC CAPITAL LETTER GJE */
+ 0x0401, /* #x06B3 CYRILLIC CAPITAL LETTER IO */
+ 0x0404, /* #x06B4 CYRILLIC CAPITAL LETTER UKRAINIAN IE */
+ 0x0405, /* #x06B5 CYRILLIC CAPITAL LETTER DZE */
+ 0x0406, /* #x06B6 CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I */
+ 0x0407, /* #x06B7 CYRILLIC CAPITAL LETTER YI */
+ 0x0408, /* #x06B8 CYRILLIC CAPITAL LETTER JE */
+ 0x0409, /* #x06B9 CYRILLIC CAPITAL LETTER LJE */
+ 0x040A, /* #x06BA CYRILLIC CAPITAL LETTER NJE */
+ 0x040B, /* #x06BB CYRILLIC CAPITAL LETTER TSHE */
+ 0x040C, /* #x06BC CYRILLIC CAPITAL LETTER KJE */
+ 0x0490, /* #x06BD CYRILLIC CAPITAL LETTER GHE WITH UPTURN */
+ 0x040E, /* #x06BE CYRILLIC CAPITAL LETTER SHORT U */
+ 0x040F, /* #x06BF CYRILLIC CAPITAL LETTER DZHE */
+ 0x044E, /* #x06C0 CYRILLIC SMALL LETTER YU */
+ 0x0430, /* #x06C1 CYRILLIC SMALL LETTER A */
+ 0x0431, /* #x06C2 CYRILLIC SMALL LETTER BE */
+ 0x0446, /* #x06C3 CYRILLIC SMALL LETTER TSE */
+ 0x0434, /* #x06C4 CYRILLIC SMALL LETTER DE */
+ 0x0435, /* #x06C5 CYRILLIC SMALL LETTER IE */
+ 0x0444, /* #x06C6 CYRILLIC SMALL LETTER EF */
+ 0x0433, /* #x06C7 CYRILLIC SMALL LETTER GHE */
+ 0x0445, /* #x06C8 CYRILLIC SMALL LETTER HA */
+ 0x0438, /* #x06C9 CYRILLIC SMALL LETTER I */
+ 0x0439, /* #x06CA CYRILLIC SMALL LETTER SHORT I */
+ 0x043A, /* #x06CB CYRILLIC SMALL LETTER KA */
+ 0x043B, /* #x06CC CYRILLIC SMALL LETTER EL */
+ 0x043C, /* #x06CD CYRILLIC SMALL LETTER EM */
+ 0x043D, /* #x06CE CYRILLIC SMALL LETTER EN */
+ 0x043E, /* #x06CF CYRILLIC SMALL LETTER O */
+ 0x043F, /* #x06D0 CYRILLIC SMALL LETTER PE */
+ 0x044F, /* #x06D1 CYRILLIC SMALL LETTER YA */
+ 0x0440, /* #x06D2 CYRILLIC SMALL LETTER ER */
+ 0x0441, /* #x06D3 CYRILLIC SMALL LETTER ES */
+ 0x0442, /* #x06D4 CYRILLIC SMALL LETTER TE */
+ 0x0443, /* #x06D5 CYRILLIC SMALL LETTER U */
+ 0x0436, /* #x06D6 CYRILLIC SMALL LETTER ZHE */
+ 0x0432, /* #x06D7 CYRILLIC SMALL LETTER VE */
+ 0x044C, /* #x06D8 CYRILLIC SMALL LETTER SOFT SIGN */
+ 0x044B, /* #x06D9 CYRILLIC SMALL LETTER YERU */
+ 0x0437, /* #x06DA CYRILLIC SMALL LETTER ZE */
+ 0x0448, /* #x06DB CYRILLIC SMALL LETTER SHA */
+ 0x044D, /* #x06DC CYRILLIC SMALL LETTER E */
+ 0x0449, /* #x06DD CYRILLIC SMALL LETTER SHCHA */
+ 0x0447, /* #x06DE CYRILLIC SMALL LETTER CHE */
+ 0x044A, /* #x06DF CYRILLIC SMALL LETTER HARD SIGN */
+ 0x042E, /* #x06E0 CYRILLIC CAPITAL LETTER YU */
+ 0x0410, /* #x06E1 CYRILLIC CAPITAL LETTER A */
+ 0x0411, /* #x06E2 CYRILLIC CAPITAL LETTER BE */
+ 0x0426, /* #x06E3 CYRILLIC CAPITAL LETTER TSE */
+ 0x0414, /* #x06E4 CYRILLIC CAPITAL LETTER DE */
+ 0x0415, /* #x06E5 CYRILLIC CAPITAL LETTER IE */
+ 0x0424, /* #x06E6 CYRILLIC CAPITAL LETTER EF */
+ 0x0413, /* #x06E7 CYRILLIC CAPITAL LETTER GHE */
+ 0x0425, /* #x06E8 CYRILLIC CAPITAL LETTER HA */
+ 0x0418, /* #x06E9 CYRILLIC CAPITAL LETTER I */
+ 0x0419, /* #x06EA CYRILLIC CAPITAL LETTER SHORT I */
+ 0x041A, /* #x06EB CYRILLIC CAPITAL LETTER KA */
+ 0x041B, /* #x06EC CYRILLIC CAPITAL LETTER EL */
+ 0x041C, /* #x06ED CYRILLIC CAPITAL LETTER EM */
+ 0x041D, /* #x06EE CYRILLIC CAPITAL LETTER EN */
+ 0x041E, /* #x06EF CYRILLIC CAPITAL LETTER O */
+ 0x041F, /* #x06F0 CYRILLIC CAPITAL LETTER PE */
+ 0x042F, /* #x06F1 CYRILLIC CAPITAL LETTER YA */
+ 0x0420, /* #x06F2 CYRILLIC CAPITAL LETTER ER */
+ 0x0421, /* #x06F3 CYRILLIC CAPITAL LETTER ES */
+ 0x0422, /* #x06F4 CYRILLIC CAPITAL LETTER TE */
+ 0x0423, /* #x06F5 CYRILLIC CAPITAL LETTER U */
+ 0x0416, /* #x06F6 CYRILLIC CAPITAL LETTER ZHE */
+ 0x0412, /* #x06F7 CYRILLIC CAPITAL LETTER VE */
+ 0x042C, /* #x06F8 CYRILLIC CAPITAL LETTER SOFT SIGN */
+ 0x042B, /* #x06F9 CYRILLIC CAPITAL LETTER YERU */
+ 0x0417, /* #x06FA CYRILLIC CAPITAL LETTER ZE */
+ 0x0428, /* #x06FB CYRILLIC CAPITAL LETTER SHA */
+ 0x042D, /* #x06FC CYRILLIC CAPITAL LETTER E */
+ 0x0429, /* #x06FD CYRILLIC CAPITAL LETTER SHCHA */
+ 0x0427, /* #x06FE CYRILLIC CAPITAL LETTER CHE */
+ 0x042A, /* #x06FF CYRILLIC CAPITAL LETTER HARD SIGN */
+ };
+
/* For every key on the keyboard that has a known character correspondence,
we define the character-of-keysym property of its XEmacs keysym, and make
the default binding for the key be self-insert-command.
@@ -542,21 +642,7 @@
break;
case 6: /* Cyrillic */
{
- static UExtbyte const cyrillic[] = /* 0x20 - 0x7f */
- {0x00, 0x72, 0x73, 0x71, 0x74, 0x75, 0x76, 0x77,
- 0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x00, 0x7e, 0x7f,
- 0x70, 0x22, 0x23, 0x21, 0x24, 0x25, 0x26, 0x27,
- 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x00, 0x2e, 0x2f,
- 0x6e, 0x50, 0x51, 0x66, 0x54, 0x55, 0x64, 0x53,
- 0x65, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e,
- 0x5f, 0x6f, 0x60, 0x61, 0x62, 0x63, 0x56, 0x52,
- 0x6c, 0x6b, 0x57, 0x68, 0x6d, 0x69, 0x67, 0x6a,
- 0x4e, 0x30, 0x31, 0x46, 0x34, 0x35, 0x44, 0x33,
- 0x45, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e,
- 0x3f, 0x4f, 0x40, 0x41, 0x42, 0x43, 0x36, 0x32,
- 0x4c, 0x4b, 0x37, 0x48, 0x4d, 0x49, 0x47, 0x4a};
- USE_CHARSET (charset, CYRILLIC_ISO8859_5);
- code = cyrillic[(keysym & 0x7f) - 0x20];
+ USE_UNICODE_MAP(keysym, CYRILLIC);
break;
}
case 7: /* Greek */
--
Santa Maradona, priez pour moi!
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
[C] xemacsweb: Created with XEmacs addition
18 years, 1 month
Adrian Aichner
COMMIT
Welcome to the bunch, Pierre-Yves!
The update has already happened on our master websites, which are:
http://www.xemacs.org
http://www.dk.xemacs.org
http://www.us.xemacs.org
Mirrors will update within a day or week.
Adrian
xemacsweb ChangeLog patch:
Diff command: cvs -q diff -U 0
Files affected: About/ChangeLog
Index: About/ChangeLog
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacsweb/About/ChangeLog,v
retrieving revision 1.205
diff -u -U0 -r1.205 ChangeLog
--- About/ChangeLog 13 Oct 2006 17:18:54 -0000 1.205
+++ About/ChangeLog 27 Oct 2006 20:38:40 -0000
@@ -0,0 +1,4 @@
+2006-10-27 Adrian Aichner <adrian(a)xemacs.org>
+
+ * created.content: Add "Pierre-Yves Fourmond's Web Site".
+
xemacsweb source patch:
Diff command: cvs -f -z3 -q diff -u -w -N
Files affected: About/created.content
===================================================================
RCS
Index: About/created.content
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacsweb/About/created.content,v
retrieving revision 1.87
diff -u -w -r1.87 created.content
--- About/created.content 25 Mar 2006 13:24:36 -0000 1.87
+++ About/created.content 27 Oct 2006 20:37:14 -0000
@@ -315,6 +315,14 @@
<!-- Message-ID: <zf.upnptddy564.fsf(a)zeitform.de> -->
<li>
<a href="http://ulf.zeitform.de/">Ulf Stegemann</a></li>
+ <!-- From: Pierre-Yves Fourmond <pyfourmond(a)gmail.com> -->
+ <!-- Subject: Created by Xemacs -->
+ <!-- To: webmaster(a)xemacs.org -->
+ <!-- Date: Fri, 22 Sep 2006 21:24:19 +0200 -->
+ <!-- Organization: nil -->
+ <!-- Message-ID: <45143863.1060904(a)gmail.com> -->
+ <li>
+ <a href="http://pyfourmond.free.fr">Pierre-Yves Fourmond's Web Site</a></li>
</ul>
<!--
--
Adrian Aichner
mailto:adrian@xemacs.org
http://www.xemacs.org/
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
[COMMIT] Deal with buffer-reversion with non-binary coding better; update comment
18 years, 1 month
Aidan Kehoe
APPROVE COMMIT
NOTE: This patch has been committed.
lisp/ChangeLog addition:
2006-10-27 Aidan Kehoe <kehoea(a)parhasard.net>
* files.el (revert-buffer-internal):
When reverting, use the buffer-file-coding-system of the file's
buffer when determing whether something has changed on disk.
src/ChangeLog addition:
2006-10-27 Aidan Kehoe <kehoea(a)parhasard.net>
* fileio.c (Finsert_file_contents_internal) : Clarify that we
follow a more correct but more expensive design for buffers where
the on-disk representation doesn't correspond directly to the
XEmacs internal representation.
XEmacs Trunk source patch:
Diff command: cvs -q diff -Nu
Files affected: src/fileio.c lisp/files.el
Index: lisp/files.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/lisp/files.el,v
retrieving revision 1.75
diff -u -u -r1.75 files.el
--- lisp/files.el 2005/11/13 07:39:29 1.75
+++ lisp/files.el 2006/10/27 19:02:49
@@ -3521,7 +3521,10 @@
after-change-function
after-change-functions
before-change-function
- before-change-functions)
+ before-change-functions
+ ;; #### b-f-c-s is _not necessarily_ the coding system that
+ ;; was used to read in the file. See its docstring.
+ (coding-system-for-read buffer-file-coding-system))
(if revert-buffer-insert-file-contents-function
(funcall revert-buffer-insert-file-contents-function
file-name nil)
Index: src/fileio.c
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/src/fileio.c,v
retrieving revision 1.105
diff -u -u -r1.105 fileio.c
--- src/fileio.c 2006/06/19 18:19:37 1.105
+++ src/fileio.c 2006/10/27 19:02:51
@@ -2948,6 +2948,13 @@
reasonable maximum file size on the files. Is any of this worth it?
--ben
+
+ It's probably not worth it, and despite what you might take from the
+ above, we don't do it currently; that is, for non-"binary" coding
+ systems, we don't try to implement replace-mode at all. See the
+ do_speedy_insert variable above. The upside of this is that our API
+ is consistent and not buggy. -- Aidan Kehoe, Fri Oct 27 21:02:30 CEST
+ 2006
*/
if (!NILP (replace))
--
Santa Maradona, priez pour moi!
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches