www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/11/30/06:42:50

Date: Sun, 30 Nov 1997 13:40:25 +0200 (IST)
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
To: "John M. Aldrich" <fighteer AT cs DOT com>
cc: djgpp AT delorie DOT com
Subject: Re: emacs & win95 (interesting new problem)
In-Reply-To: <34820929.2D8@cs.com>
Message-ID: <Pine.SUN.3.91.971130133958.5422f-100000@is>
MIME-Version: 1.0

On Mon, 1 Dec 1997, John M. Aldrich wrote:

> Date: Mon, 01 Dec 1997 00:47:37 +0000
             ^^^^^^^^^^^
This MUST be wrong ;-).

> There _is_ no "NameNumericTail" option in my Win95 registry, nor any
> variant thereof.  I searched for "NameNumericTail", and each of those
> three words separately, in keys, text, and data, and came up with
> nothing.

Why search?  Didn't you find it using the path suggested by the FAQ
(section 8.2)?  If not, which branch of the path didn't exist in your
version of Windows?

> I was able to work around the problem by manually renaming all the
> LFN-dirty files in the 'lisp' directory

LFN-dirty--why?  Because you copied them from a DOS machine?

The easiest way of doing this is to delete the entire Emacs tree and
reinstall it from the zip archives (which should be LFN-clean).  I had
some of these problems myself, and almost invariably find reinstalling
the best way.

To make sure I don't lose files that were updated after the original
installation, I install the original files in a sibling directory,
then run `find' or `diff -r' (under LFN=n), and manually copy any
newer files to the LFN installation, renaming them as I copy.

> because, for some reason,
> renaming a file to a name greater than 8+3 with the DOS 7.0 version of
> 'rename' does not cause the 8+3 filename to be truncated with a numeric
> tail.

Welcome to the wonderful world of Papa Bill, where every misfeature
fights you to prevent any workaround.  `rename' does work as you
expect if NameNumericTail is set to 0.  Otherwise, you will need
to rename the files via a third file, like so:

	      rename longfile.lon foo
	      rename foo LongFileName.LongExtension

> Using rename() from the DJGPP library, OTOH, does.

This actually required a few bugfixes when v2.01 was in beta, before
we got it right.  So it's not surprising it works when `rename'
doesn't.

> I automated
> the process slightly by writing a program that compared the contents of
> an 8+3 directory and an LFN directory and wrote out a batch file to
> rename all necessary files, but this was a cumbersome and evil way to do
> the task.  :)

I'm considering to write a program that will make such conversion
semi-automagically, by getting a list of files that *should have been*
present and guessing how they are called in the 8+3 namespace, then
renaming them.  God knows when I will get to this.  Any takers?

> Here's another neat trick:  whenever I try to use the 'M-x compile'
> command from a Win95 DOS box, my computer's internal speaker begins
> beeping constantly and Emacs freezes, unresponsive to Ctrl-C or
> Ctrl-Break.  It does this from a full screen or a window, and the only
> way to recover is to manually shut down the DOS box.  I can shell to DOS
> from Emacs and run programs normally, just not from the Emacs
> compilation window.  Could this also be a symptom of LFN conflicts?

Yes.  But I need more details.  For starters, try to find out where
does it crash by using edebug through the ELisp code in compile.el.

One possibility is that the sources you used to build Emacs didn't
include the changes needed to make M-x compile work on Windows 95
(although I think they should have).  Also, there's a newer version on
SimTel.NET.

Btw, which shell are you using?  What do COMNSPEC and SHELL point to?

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019