merge trunk
This commit is contained in:
commit
0ad1627dbe
33 changed files with 417 additions and 596 deletions
13
ChangeLog
13
ChangeLog
|
@ -1,3 +1,7 @@
|
|||
2010-05-28 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* configure.in: Simplify some of the $canonical tests.
|
||||
|
||||
2010-05-27 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* config.bat: Do not preprocess src/Makefile.in.
|
||||
|
@ -2107,6 +2111,10 @@
|
|||
|
||||
Update copyright year(s) in many files.
|
||||
|
||||
2006-04-01 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* configure: Regenerated.
|
||||
|
||||
2006-04-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
|
||||
|
||||
* configure.in (HAVE_XAW3D): Disable Xaw3d check if
|
||||
|
@ -4067,6 +4075,11 @@
|
|||
* make-dist: Unset EMACS_UNIBYTE, so Emacs runs in its default state.
|
||||
Quote $EMACS, in case it's a program with args.
|
||||
|
||||
1999-06-15 Gerd Moellmann <gerd@gnu.org>
|
||||
|
||||
* configure.in (HAVE_GIF): Use libungif instead of libgif
|
||||
because the former doesn't contain patented compression code.
|
||||
|
||||
1999-05-29 Richard M. Stallman <rms@gnu.org>
|
||||
|
||||
* configure.in: Delete the Kerberos stuff.
|
||||
|
|
85
configure.in
85
configure.in
|
@ -369,7 +369,7 @@ dnl quotation begins
|
|||
### the appropriate operating system and machine description files.
|
||||
|
||||
### You would hope that you could choose an m/*.h file pretty much
|
||||
### based on the machine portion of the configuration name, and an s-
|
||||
### based on the machine portion of the configuration name, and an s/*.h
|
||||
### file based on the operating system portion. However, it turns out
|
||||
### that each m/*.h file is pretty manufacturer-specific - for
|
||||
### example mips.h is MIPS
|
||||
|
@ -381,10 +381,6 @@ dnl quotation begins
|
|||
### /etc/MACHINES doesn't say anything about version numbers, be
|
||||
### prepared to handle anything reasonably. If version numbers
|
||||
### matter, be sure /etc/MACHINES says something about it.
|
||||
###
|
||||
### Eric Raymond says we should accept strings like "sysvr4" to mean
|
||||
### "System V Release 4"; he writes, "The old convention encouraged
|
||||
### confusion between `system' and `release' levels'."
|
||||
|
||||
machine='' opsys='' unported=no
|
||||
case "${canonical}" in
|
||||
|
@ -393,14 +389,14 @@ case "${canonical}" in
|
|||
*-*-freebsd* )
|
||||
opsys=freebsd
|
||||
case "${canonical}" in
|
||||
alpha*-*-freebsd*) machine=alpha ;;
|
||||
arm*-*-freebsd*) machine=arm ;;
|
||||
ia64-*-freebsd*) machine=ia64 ;;
|
||||
sparc-*-freebsd*) machine=sparc ;;
|
||||
sparc64-*-freebsd*) machine=sparc ;;
|
||||
powerpc-*-freebsd*) machine=macppc ;;
|
||||
i[3456]86-*-freebsd*) machine=intel386 ;;
|
||||
amd64-*-freebsd*|x86_64-*-freebsd*) machine=amdx86-64 ;;
|
||||
alpha*) machine=alpha ;;
|
||||
amd64-*|x86_64-*) machine=amdx86-64 ;;
|
||||
arm*) machine=arm ;;
|
||||
ia64-*) machine=ia64 ;;
|
||||
i[3456]86-*) machine=intel386 ;;
|
||||
powerpc-*) machine=macppc ;;
|
||||
sparc-*) machine=sparc ;;
|
||||
sparc64-*) machine=sparc ;;
|
||||
esac
|
||||
;;
|
||||
|
||||
|
@ -408,13 +404,13 @@ case "${canonical}" in
|
|||
*-*-kfreebsd*gnu* )
|
||||
opsys=gnu-kfreebsd
|
||||
case "${canonical}" in
|
||||
alpha*-*-kfreebsd*) machine=alpha ;;
|
||||
ia64-*-kfreebsd*) machine=ia64 ;;
|
||||
sparc-*-kfreebsd*) machine=sparc ;;
|
||||
sparc64-*-kfreebsd*) machine=sparc ;;
|
||||
powerpc-*-kfreebsd*) machine=macppc ;;
|
||||
i[3456]86-*-kfreebsd*) machine=intel386 ;;
|
||||
amd64-*-kfreebsd*|x86_64-*-kfreebsd*) machine=amdx86-64 ;;
|
||||
alpha*) machine=alpha ;;
|
||||
amd64-*|x86_64-*) machine=amdx86-64 ;;
|
||||
ia64-*) machine=ia64 ;;
|
||||
i[3456]86-*) machine=intel386 ;;
|
||||
powerpc-*) machine=macppc ;;
|
||||
sparc-*) machine=sparc ;;
|
||||
sparc64-*) machine=sparc ;;
|
||||
esac
|
||||
;;
|
||||
|
||||
|
@ -422,18 +418,17 @@ case "${canonical}" in
|
|||
*-*-netbsd* )
|
||||
opsys=netbsd
|
||||
case "${canonical}" in
|
||||
alpha*-*-netbsd*) machine=alpha ;;
|
||||
i[3456]86-*-netbsd*) machine=intel386 ;;
|
||||
mips-*-netbsd*) machine=mips ;;
|
||||
mipsel-*-netbsd*) machine=mips ;;
|
||||
mipseb-*-netbsd*) machine=mips ;;
|
||||
powerpc-*-netbsd*) machine=macppc ;;
|
||||
sparc*-*-netbsd*) machine=sparc ;;
|
||||
vax-*-netbsd*) machine=vax ;;
|
||||
arm-*-netbsd*) machine=arm ;;
|
||||
x86_64-*-netbsd*) machine=amdx86-64 ;;
|
||||
hppa-*-netbsd*) machine=hp800 ;;
|
||||
m68k-*-netbsd*) machine=m68k ;;
|
||||
alpha*) machine=alpha ;;
|
||||
x86_64-*) machine=amdx86-64 ;;
|
||||
arm-*) machine=arm ;;
|
||||
hppa-*) machine=hp800 ;;
|
||||
i[3456]86-*) machine=intel386 ;;
|
||||
m68k-*) machine=m68k ;;
|
||||
powerpc-*) machine=macppc ;;
|
||||
mips-*) machine=mips ;;
|
||||
mipse[bl]-*) machine=mips ;;
|
||||
sparc*-) machine=sparc ;;
|
||||
vax-*) machine=vax ;;
|
||||
esac
|
||||
;;
|
||||
|
||||
|
@ -441,14 +436,14 @@ case "${canonical}" in
|
|||
*-*-openbsd* )
|
||||
opsys=openbsd
|
||||
case "${canonical}" in
|
||||
alpha*-*-openbsd*) machine=alpha ;;
|
||||
arm-*-openbsd*) machine=arm ;;
|
||||
i386-*-openbsd*) machine=intel386 ;;
|
||||
powerpc-*-openbsd*) machine=macppc ;;
|
||||
sparc*-*-openbsd*) machine=sparc ;;
|
||||
vax-*-openbsd*) machine=vax ;;
|
||||
x86_64-*-openbsd*) machine=amdx86-64 ;;
|
||||
hppa-*-openbsd*) machine=hp800 ;;
|
||||
alpha*) machine=alpha ;;
|
||||
x86_64-*) machine=amdx86-64 ;;
|
||||
arm-*) machine=arm ;;
|
||||
hppa-*) machine=hp800 ;;
|
||||
i386-*) machine=intel386 ;;
|
||||
powerpc-*) machine=macppc ;;
|
||||
sparc*) machine=sparc ;;
|
||||
vax-*) machine=vax ;;
|
||||
esac
|
||||
;;
|
||||
|
||||
|
@ -499,16 +494,16 @@ case "${canonical}" in
|
|||
s390x-*-linux-gnu* )
|
||||
machine=ibms390x opsys=gnu-linux
|
||||
;;
|
||||
rs6000-ibm-aix4.2* | powerpc-ibm-aix4.2* )
|
||||
rs6000-ibm-aix4.[23]* )
|
||||
machine=ibmrs6000 opsys=aix4-2
|
||||
;;
|
||||
rs6000-ibm-aix4.3* | powerpc-ibm-aix4.3* )
|
||||
powerpc-ibm-aix4.[23]* )
|
||||
machine=ibmrs6000 opsys=aix4-2
|
||||
;;
|
||||
rs6000-ibm-aix5* | powerpc-ibm-aix5* )
|
||||
rs6000-ibm-aix[56]* )
|
||||
machine=ibmrs6000 opsys=aix4-2
|
||||
;;
|
||||
rs6000-ibm-aix6* | powerpc-ibm-aix6* )
|
||||
powerpc-ibm-aix[56]* )
|
||||
machine=ibmrs6000 opsys=aix4-2
|
||||
;;
|
||||
|
||||
|
@ -577,7 +572,7 @@ case "${canonical}" in
|
|||
machine=ia64 opsys=gnu-linux
|
||||
;;
|
||||
|
||||
## Intel 386 machines where we don't care about the manufacturer
|
||||
## Intel 386 machines where we don't care about the manufacturer.
|
||||
i[3456]86-*-* )
|
||||
machine=intel386
|
||||
case "${canonical}" in
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2010-05-28 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* MACHINES: Remove some old information no longer of relevance.
|
||||
Switch to outline-mode.
|
||||
|
||||
2010-05-27 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* PROBLEMS: Remove old information no longer of relevance.
|
||||
|
|
314
etc/MACHINES
314
etc/MACHINES
|
@ -6,9 +6,9 @@ See the end of the file for license conditions.
|
|||
|
||||
This is a list of the status of GNU Emacs on various machines and systems.
|
||||
|
||||
For each system and machine, we give the configuration name you should
|
||||
pass to the `configure' script to prepare to build Emacs for that
|
||||
system/machine.
|
||||
Information about older releases, and platforms that are no longer
|
||||
supported, has been removed. Consult older versions of this file if
|
||||
you are interested in this information.
|
||||
|
||||
The `configure' script uses the configuration name to decide which
|
||||
machine and operating system description files `src/config.h' should
|
||||
|
@ -25,16 +25,10 @@ configuration name(s) should select your new machine description and
|
|||
system description files.
|
||||
|
||||
Some obsolete platforms are unsupported beginning with Emacs 23.1, see
|
||||
the full list at the end of this file.
|
||||
the list at the end of this file.
|
||||
|
||||
|
||||
Here are the configurations Emacs is intended to work with, with the
|
||||
corresponding configuration names. You can postpend version numbers
|
||||
to operating system names (i.e. sunos4.1) or architecture names (i.e.
|
||||
hppa1.1). If you leave out the version number, the `configure' script
|
||||
will configure Emacs for the latest version it knows about.
|
||||
|
||||
Alpha (DEC) running GNU/Linux (alpha-dec-linux-gnu)
|
||||
** Alpha (DEC) running GNU/Linux (alpha-dec-linux-gnu)
|
||||
|
||||
DEC C compiler version 5.9 (DEC C V5.9-005 on Digital UNIX V4.0f)
|
||||
is reported to produce bogus binaries of Emacs 21.2 when the
|
||||
|
@ -47,125 +41,26 @@ Alpha (DEC) running GNU/Linux (alpha-dec-linux-gnu)
|
|||
versions fail to build with a message "Invalid dimension for the
|
||||
charset-ID 160".
|
||||
|
||||
Note that the X11 libraries on GNU/Linux systems for the Alpha are
|
||||
said to have bugs that prevent Emacs from working with X (as of
|
||||
November 1995). Recent releases work (July 2000).
|
||||
** Apple Macintosh running Mac OS X
|
||||
|
||||
Apple Macintosh running Mac OS X
|
||||
** Apple PowerPC Macintosh running GNU/Linux
|
||||
|
||||
For installation instructions see the file nextstep/INSTALL.
|
||||
|
||||
Apple PowerPC Macintosh running GNU/Linux
|
||||
|
||||
There are special considerations for a variety of this system which
|
||||
is known as the ``Yellow Dog [GNU/]Linux'': Emacs may crash during
|
||||
dumping. To solve this, edit the header file src/m/macppc.h in the
|
||||
Emacs distribution, and remove the "#if 0" and "#endif" directives
|
||||
which surround the following block near the end of the file:
|
||||
|
||||
#if 0 /* This breaks things on PPC GNU/Linux except for Yellowdog,
|
||||
even with identical GCC, as, ld. Let's take it out until we
|
||||
know what's really going on here. */
|
||||
/* GCC 2.95 and newer on GNU/Linux PPC changed the load address to
|
||||
0x10000000. */
|
||||
#if defined __linux__
|
||||
#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
|
||||
#define DATA_SEG_BITS 0x10000000
|
||||
#endif
|
||||
#endif
|
||||
#endif /* 0 */
|
||||
|
||||
After that, reconfigure and rebuild Emacs. It should now build
|
||||
successfully.
|
||||
|
||||
Cubix QBx/386 (i386-cubix-sysv)
|
||||
|
||||
Changes merged in 19.1. Systems before 2/A/0 may fail to compile etags.c
|
||||
due to a compiler bug.
|
||||
|
||||
Motorola Delta 147 (m68k-motorola-sysv)
|
||||
|
||||
The EMacs 19.26 pretest was reported to work.
|
||||
|
||||
Motorola Delta boxes running System V/68 release 3.
|
||||
Tested on 147 board with SVR3V7, no X and gcc.
|
||||
Tested on 167 board with SVR3V7, no X, cc, gnucc and gcc.
|
||||
Reports say it works with X too.
|
||||
|
||||
The installation script chooses the compiler itself. gnucc is
|
||||
preferred.
|
||||
|
||||
Fujitsu DS/90 (sparc-fujitsu-sysv4)
|
||||
|
||||
Changes merged in 20.3.
|
||||
|
||||
HP 9000 series 700 or 800 (Spectrum) (hppa1.0-hp-hpux or hppa1.1-hp-hpux
|
||||
or ...hpux9shr)
|
||||
|
||||
Use hppa1.1 for the 700 series and hppa1.0 for the 800
|
||||
series machines. (Emacs may not actually care which one you use.)
|
||||
** HP 9000 series 700 or 800 (Spectrum) (hppa1.0-hp-hpux or hppa1.1-hp-hpux)
|
||||
|
||||
Emacs 20 may work on HPUX 10. You need patch PHSS_6202 to install
|
||||
the Xaw and Xmu libraries. On HPUX 10.20 you may need to compile with GCC;
|
||||
when Emacs was compiled with HP's C compiler, HP92453-01 A.10.32.03,
|
||||
the subprocess features failed to work.
|
||||
|
||||
19.26 is believed to work on HPUX 9 provided you compile with GCC.
|
||||
As of version 19.16, Emacs was reported to build (using GCC) and run
|
||||
on HP 9000/700 series machines running HP/UX versions 8.07 and 9.01.
|
||||
The HP compiler is known to fail on some versions if you use +O3,
|
||||
but it may work with lower optimization levels.
|
||||
|
||||
Use hppa1.1-hp-hpux9shr to use shared libraries on HPUX version 9.
|
||||
You may need to create the X libraries libXaw.a and libXmu.a from
|
||||
the MIT X distribute, and you may need to edit src/Makefile's
|
||||
definition of LIBXT to look like this:
|
||||
|
||||
LIBXT= $(LIBW) -lXmu -lXt $(LIBXTR6) -lXext
|
||||
|
||||
Some people report trouble using the GNU memory allocator under
|
||||
HP/UX version 9. The problems often manifest as lots of ^@'s in the
|
||||
buffer.
|
||||
|
||||
We are told that these problems go away if you obtain the latest
|
||||
patches for the HP/UX C compiler. James J Dempsey
|
||||
<jjd@spserv.bbn.com> says that this set of versions works for him:
|
||||
/bin/cc:
|
||||
HP92453-01 A.09.28 HP C Compiler
|
||||
/lib/ccom:
|
||||
HP92453-01 A.09.28 HP C Compiler
|
||||
HP-UX SLLIC/OPTIMIZER HP-UX.09.00.23 02/18/93
|
||||
Ucode Code Generator - HP-UX.09.00.23.5 (patch) 2/18/93
|
||||
|
||||
For 700 series machines, the HP-UX patch needed is known as
|
||||
PHSS_2653. (Perhaps for 800 series machines as well; we don't
|
||||
know.) If you are on the Internet, you should be able to obtain
|
||||
this patch by using telnet to access the machine
|
||||
support.mayfield.hp.com and logging in as "hpslreg" and following
|
||||
the instructions there. Or you may be able to use this
|
||||
web site:
|
||||
|
||||
HP Patch Server: http://support.mayfield.hp.com/patches/html/patches.html
|
||||
HP Support Line: http://support.mayfield.hp.com
|
||||
|
||||
Please do not ask FSF for further support on this. If you have any
|
||||
trouble obtaining the patch, contact HP Software Support.
|
||||
|
||||
If your buffer fills up with nulls (^@) at some point, it could well
|
||||
be that problem. That problem does not happen when people use GCC
|
||||
to compile Emacs. On the other hand, the HP compiler version 9.34
|
||||
was reported to work for the 19.26 pretest. 9.65 was also reported to work.
|
||||
|
||||
If you turn on the DSUSP character (delayed suspend),
|
||||
Emacs 19.26 does not know how to turn it off on HPUX.
|
||||
You need to turn it off manually.
|
||||
If you turn on the DSUSP character (delayed suspend), Emacs 19.26
|
||||
does not know how to turn it off on HPUX. You need to turn it off manually.
|
||||
|
||||
If you are running HP/UX release 8.0 or later, you need the optional
|
||||
"C/ANSI C" software in order to build Emacs (older releases of HP/UX
|
||||
do not require any special software). If the file "/etc/filesets/C"
|
||||
exists on your machine, you have this software, otherwise you do not.
|
||||
|
||||
IBM RS/6000 (rs6000-ibm-aix*)
|
||||
** IBM RS/6000 (rs6000-ibm-aix*)
|
||||
|
||||
Emacs 19.26 is believed to work; its pretest was tested.
|
||||
|
||||
|
@ -180,31 +75,22 @@ IBM RS/6000 (rs6000-ibm-aix*)
|
|||
persons say that the tty VMIN and VTIME settings have been
|
||||
corrupted; if you have a fix, please send it to us.
|
||||
|
||||
Compiling with -O using the IBM compiler has been known
|
||||
to make Emacs work incorrectly. It's reported that on
|
||||
AIX 3.2.5 with an IBM compiler earlier than 1.03.00.14,
|
||||
cc -O fails for some files. You need to install any
|
||||
PTF containing APAR #IX42810 to bring the compiler to
|
||||
the 1.03.00.14 level to allow optimized compiles.
|
||||
|
||||
There are reports that IBM compiler versions earlier than 1.03.00.02
|
||||
fail even without -O. However, another report said that compiler
|
||||
version 1.02.01.00 did work, on AIX 3.2.4, with Emacs 19.31.
|
||||
Compiling with -O using the IBM compiler has been known to make
|
||||
Emacs work incorrectly. There are reports that IBM compiler versions
|
||||
earlier than 1.03.00.02 fail even without -O.
|
||||
|
||||
As of 19.11, if you strip the Emacs executable, it ceases to work.
|
||||
|
||||
If anyone can fix the above problems, or confirm that they don't happen
|
||||
with certain versions of various programs, we would appreciate it.
|
||||
|
||||
IBM System/390 running GNU/Linux (s390-*-linux-gnu)
|
||||
** IBM System/390 running GNU/Linux (s390-*-linux-gnu)
|
||||
|
||||
As of Emacs 21.2, a 31-bit only version is supported on this system.
|
||||
|
||||
Intel 386 (i386-*-freebsd, i386-*-linux-gnu,
|
||||
i386-*-sol2.4, i386-intsys-sysv,
|
||||
i386-*-sysv4, i386-*-sysv4.2, i386-*-cygwin,
|
||||
i386-*-msdos, i386-*-windowsnt.
|
||||
i386... can be replaced with i486... or i586...)
|
||||
** Intel 386 (i386-*-freebsd, i386-*-linux-gnu,
|
||||
i386-*-cygwin, i386-*-msdos, i386-*-windowsnt.
|
||||
i386 can be replaced with i486, i586, or i686)
|
||||
|
||||
In the above configurations, * means that the manufacturer's name
|
||||
you specify does not matter, and you can use any name you like
|
||||
|
@ -213,12 +99,9 @@ Intel 386 (i386-*-freebsd, i386-*-linux-gnu,
|
|||
Use i386-*-linux-gnu for GNU/Linux systems; Emacs runs as of version 19.26.
|
||||
Use i386-*-cygwin for Cygwin; Emacs builds as of version 22.1, in both X11
|
||||
and non-X11 modes. (The Cygwin site has source and binaries for 21.2.)
|
||||
Use i386-intsys-sysv for Integrated Solutions 386 machines.
|
||||
It may also be correct for Microport systems.
|
||||
|
||||
On GNU/Linux systems, Emacs 19.23 was said to work properly with libc
|
||||
version 4.5.21, but not with 4.5.19. If your system uses QMAGIC
|
||||
for the executable format, you must edit config.h to define LINUX_QMAGIC.
|
||||
version 4.5.21, but not with 4.5.19.
|
||||
|
||||
On GNU/Linux, configure may fail to put these definitions in config.h:
|
||||
|
||||
|
@ -231,16 +114,6 @@ Intel 386 (i386-*-freebsd, i386-*-linux-gnu,
|
|||
It is possible that this problem happens only with X11R6.
|
||||
Newer system versions have fixed it.
|
||||
|
||||
The 19.26 pretest was reported to work on SVR4.3 and on Freebsd.
|
||||
|
||||
19.29 is reported to crash when using Motif on Solaris 2.5.
|
||||
The reasons are not yet known.
|
||||
|
||||
For System V release 4, use i386-*-sysv4.
|
||||
For System V release 4.2, use i386-*-sysv4.2.
|
||||
|
||||
If you are using SCO Unix, see notes at end under SCO.
|
||||
|
||||
On NetBSD and FreeBSD, at one time, it was necessary to use
|
||||
GNU make, not the system's make. Assuming it's installed as gmake,
|
||||
do `gmake install MAKE=gmake'. However, more recently it is
|
||||
|
@ -253,16 +126,6 @@ Intel 386 (i386-*-freebsd, i386-*-linux-gnu,
|
|||
but no coherent explanation of why that might be so. If it is so,
|
||||
in current versions of Linux, something else should probably be changed.
|
||||
|
||||
Some versions have sys/sioctl.h, and require it in sysdep.c.
|
||||
But some versions do not have sys/sioctl.h.
|
||||
For a given version of the system, this may depend on whether you have
|
||||
X Windows or TCP/IP. Define or undefine NO_SIOCTL_H in config.h
|
||||
according to whether you have the file.
|
||||
|
||||
Likewise, some versions have been known to need sys/ttold.h, sys/stream.h,
|
||||
and sys/ptem.h included in sysdep.c. If your system has these files,
|
||||
try defining NEED_PTEM_H in config.h if you have trouble without it.
|
||||
|
||||
You may find that adding -I/usr/X/include or -I/usr/netinclude or both
|
||||
to CFLAGS avoids compilation errors on certain systems.
|
||||
|
||||
|
@ -270,14 +133,13 @@ Intel 386 (i386-*-freebsd, i386-*-linux-gnu,
|
|||
but define `struct tc' instead; add `#define tchars tc'
|
||||
to config.h to solve this problem.
|
||||
|
||||
Iris 4D (mips-sgi-irix6.*)
|
||||
** Iris 4D (mips-sgi-irix6.*)
|
||||
|
||||
Emacs 21.3 is reported to work on IRIX 6.5.x.
|
||||
|
||||
You can build a 64-bit executable (with larger maximum buffer size)
|
||||
on Irix 6.5 by specifying the 64-bit ABI using the `-64' compiler
|
||||
flag or otherwise (see cc(1)). This may work on earlier Irix 6
|
||||
systems if you edit src/s/irix6-0.h following irix6-5.h.
|
||||
flag or otherwise (see cc(1)).
|
||||
|
||||
If compiling with GCC on Irix 6 yields an error "conflicting types
|
||||
for `initstate'", install GCC 2.95 or a newer version, and this
|
||||
|
@ -286,36 +148,7 @@ Iris 4D (mips-sgi-irix6.*)
|
|||
could also try reinstalling the same version of GCC, and telling us
|
||||
whether that fixes the problem.
|
||||
|
||||
NCR Intel system (i386-ncr-sysv4.2)
|
||||
|
||||
This system works in 19.31, but if you don't link it with GNU ld,
|
||||
you may need to set LD_RUN_PATH at link time to specify where
|
||||
to find the X libraries.
|
||||
|
||||
Prime EXL (i386-prime-sysv)
|
||||
|
||||
Minor changes merged in 19.1.
|
||||
|
||||
Siemens Nixdorf RM600 and RM400 (mips-siemens-sysv4)
|
||||
|
||||
Changes merged in 19.29. The version configured with
|
||||
`--with-x' works without any modifications, but `--with-x-toolkit'
|
||||
works only if the Athena library and the Toolkit library are linked
|
||||
statically. For this, edit `src/Makefile' after the `configure' run
|
||||
and modify the lines with `-lXaw' and `-lXt' as follows:
|
||||
|
||||
LIBW= /usr/lib/libXaw.a
|
||||
LIBXT= $(LIBW) -lXmu /usr/lib/libXt.a $(LIBXTR6) -lXext
|
||||
|
||||
In addition, `--with-x-toolkit=motif' works only
|
||||
if the Motif library and the Toolkit library are linked statically.
|
||||
To do this, edit `src/Makefile' after the `configure' run
|
||||
and modify the lines with `-lXm' and `-lXt' as follows:
|
||||
|
||||
LIBW= /usr/lib/libXm.a /usr/ccs/lib/libgen.a
|
||||
LIBXT= $(LIBW) -lXmu /usr/lib/libXt.a $(LIBXTR6) -lXext
|
||||
|
||||
Sun 4 (sparc), Sun 386 (sparc-sun-solaris2.*,
|
||||
** Sun 4 (sparc), Sun 386 (sparc-sun-solaris2.*,
|
||||
i386-sun-solaris2.*, sparc*-*-linux-gnu)
|
||||
|
||||
To build a 32-bit Emacs (i.e. if you are having any sort of problem
|
||||
|
@ -363,16 +196,6 @@ Sun 4 (sparc), Sun 386 (sparc-sun-solaris2.*,
|
|||
As of release 2.95, GCC doesn't work properly with the 64-bit ABI
|
||||
(applicable on UltraSPARC), but that isn't the default mode.
|
||||
|
||||
Emacs 20.3 fails to build on Solaris 2.5 if you use GCC 2.7.2.3.
|
||||
Installing GCC 2.8 fixes the problem.
|
||||
|
||||
19.32 works on Solaris 2.4 and 2.5. On Solaris 2.5
|
||||
you may need one of these patches to prevent Emacs from crashing
|
||||
when it starts up:
|
||||
103093-03: [README] SunOS 5.5: kernel patch (2140557 bytes)
|
||||
102832-01: [README] OpenWindows 3.5: Xview Jumbo Patch (4181613 bytes)
|
||||
103242-04: [README] SunOS 5.5: linker patch (595363 bytes)
|
||||
|
||||
There are reports that using SunSoft cc with -xO4 -xdepend produces
|
||||
bad code for some part of Emacs.
|
||||
|
||||
|
@ -384,11 +207,6 @@ Sun 4 (sparc), Sun 386 (sparc-sun-solaris2.*,
|
|||
for transferring text between clients. The Cut, Paste and Copy items
|
||||
in the menu bar Edit menu work with the clipboard.
|
||||
|
||||
A user reported irreproducible segmentation faults when using 19.29
|
||||
on Solaris 2.3 and 2.4 after compiling it with the Sun compiler.
|
||||
The problem went away when GCC 2.7.0 was used instead. We do not know
|
||||
whether anything in Emacs is partly to blame for this.
|
||||
|
||||
If you compile with Sun's ANSI compiler acc, you need additional options
|
||||
when linking temacs, such as
|
||||
/usr/lang/SC2.0.1/values-Xt.o -L/usr/lang/SC2.0.1/cg87 -L/usr/lang/SC2.0.1
|
||||
|
@ -410,40 +228,23 @@ Sun 4 (sparc), Sun 386 (sparc-sun-solaris2.*,
|
|||
|
||||
If you have trouble using open-network-stream, get the distribution
|
||||
of `bind' (the BSD name-server), build libresolv.a, and link Emacs
|
||||
with -lresolv, by copying the #definition of LIBS_SYSTEM in
|
||||
src/s/sunos4-1.h to src/config.h. This problem is due to obsolete
|
||||
software in the nonshared standard library.
|
||||
with -lresolv, by editing LIBRESOLV in src/Makefile. This problem is
|
||||
due to obsolete software in the nonshared standard library.
|
||||
|
||||
Note that Emacs on a Sun is not really as big as it looks.
|
||||
As dumped, it includes around 200k of zeros between the
|
||||
original text section and the original data section
|
||||
(now remapped as part of the text). These are never
|
||||
swapped in.
|
||||
Note that Emacs on a Sun is not really as big as it looks. As
|
||||
dumped, it includes around 200k of zeros between the original text
|
||||
section and the original data section (now remapped as part of the
|
||||
text). These are never swapped in.
|
||||
|
||||
SuperH (sh[34]*-*-linux-gnu)
|
||||
** SuperH (sh[34]*-*-linux-gnu)
|
||||
|
||||
Emacs 23.0.60 was reported to work on GNU/Linux (October 2008).
|
||||
Tested on a little-endian sh4 system (cpu type SH7751R) running
|
||||
Gentoo Linux 2008.0.
|
||||
|
||||
Tadpole 68K (m68k-tadpole-sysv)
|
||||
* Here are notes about some of the systems supported:
|
||||
|
||||
Changes merged in 19.1.
|
||||
|
||||
You may need to edit Makefile to change the variables LIBDIR and
|
||||
BINDIR from /usr/local to /usr/contrib.
|
||||
|
||||
To give movemail access to /usr/mail, you may need to execute
|
||||
|
||||
chmod 2755 etc/movemail; chgrp mail etc/movemail
|
||||
|
||||
Vaxen running Berkeley Unix (vax-dec-bsd4.1, vax-dec-bsd4.2, vax-dec-bsd4.3)
|
||||
|
||||
Works.
|
||||
|
||||
Here are notes about some of the systems supported:
|
||||
|
||||
Linux (actually GNU/Linux)
|
||||
** Linux (actually GNU/Linux)
|
||||
|
||||
Most of the complete systems which use the Linux kernel are close
|
||||
enough to the GNU system to be considered variant GNU systems. We
|
||||
|
@ -462,54 +263,22 @@ Linux (actually GNU/Linux)
|
|||
people to write more free software. See the file LINUX-GNU in this
|
||||
directory for more explanation.
|
||||
|
||||
Microport
|
||||
** Mac OS X
|
||||
|
||||
See under "Intel 386".
|
||||
For installation instructions see the file nextstep/INSTALL.
|
||||
|
||||
MSDOS
|
||||
** MSDOS
|
||||
|
||||
For installation on MSDOS, see the file INSTALL (search for `MSDOG',
|
||||
near the end of the file). See the "MS-DOS" chapter of the manual
|
||||
for information about using Emacs on MSDOS.
|
||||
For installation on MSDOS, see the file msdos/INSTALL.
|
||||
See the "MS-DOS" chapter of the manual for information about using
|
||||
Emacs on MSDOS.
|
||||
|
||||
System V rel 4.0.3 and 4.0.4 (usg5.4)
|
||||
|
||||
Supported, including shared libraries for ELF, but ptys do not work
|
||||
because TIOCGPGRP fails to work on ptys (but Dell 2.2 seems to have
|
||||
fixed this). This failure is probably due to a misunderstanding of
|
||||
the consequences of the POSIX spec: many system designers mistakenly
|
||||
think that POSIX requires this feature to fail. This is untrue;
|
||||
ptys are an extension, and POSIX says that extensions *when used*
|
||||
may change the action of standard facilities in any fashion.
|
||||
|
||||
If you get compilation errors about wrong number of
|
||||
arguments to getpgrp, define GETPGRP_NO_ARG.
|
||||
|
||||
Some versions 3 and earlier of V.4, on the Intel 386 and 860, had
|
||||
problems in the X11 libraries. These prevent Emacs from working
|
||||
with X. You can use Emacs with X provided your copy of X is based
|
||||
on X11 release 4 or newer, or is Dell's 2.2 (which is a 4.0.3).
|
||||
Unfortunately, the only way you can tell whether your X11 library is
|
||||
new enough is to try compiling Emacs to use X. If emacs runs, your
|
||||
X11 library is new enough.
|
||||
|
||||
In this context, GSV4 and GSV4i are alternate names for X11R4.
|
||||
OL2.* is X11R3 based. OL3 is in between X11R3 and X11R4, and may or
|
||||
may not work, depending on who made the Unix system. If the library
|
||||
libXol is part of the X distribution, then you have X11R3 and Emacs
|
||||
won't work with X.
|
||||
|
||||
Most versions of V.4 support sockets. If `/usr/lib/libsocket.so'
|
||||
exists, your system supports them. If yours does not, you must add
|
||||
#undef HAVE_SOCKETS in config.h, after the inclusion of s-usg5-4.h.
|
||||
(Any system that supports Internet should implement sockets.)
|
||||
|
||||
Windows NT/95/98/ME/2000
|
||||
** MS-Windows NT/95/98/ME/2000
|
||||
|
||||
For installation on all versions of the MS-Windows platform, see the
|
||||
file nt/INSTALL.
|
||||
|
||||
X86_64 GNU/Linux
|
||||
** X86_64 GNU/Linux
|
||||
|
||||
No special procedures should be needed to build a 64-bit Emacs. To
|
||||
build a 32-bit Emacs, first ensure that the necessary 32-bit system
|
||||
|
@ -520,6 +289,9 @@ X86_64 GNU/Linux
|
|||
|
||||
(using the location of the 32-bit X libraries on your system).
|
||||
|
||||
|
||||
* Obsolete platforms
|
||||
|
||||
Support for the following obsolete platforms was removed in Emacs 23.1
|
||||
(the names in parentheses state the files in src/ that were removed):
|
||||
|
||||
|
@ -612,7 +384,7 @@ Support for the following obsolete platforms was removed in Emacs 23.1
|
|||
|
||||
|
||||
Local variables:
|
||||
mode: text
|
||||
mode: outline
|
||||
fill-prefix: " "
|
||||
End:
|
||||
|
||||
|
|
18
etc/NEWS
18
etc/NEWS
|
@ -109,16 +109,20 @@ scroll a line instead of full screen.
|
|||
** New property `scroll-command' should be set on a command's symbol to
|
||||
define it as a scroll command affected by `scroll-preserve-screen-position.
|
||||
|
||||
** Trash changes
|
||||
|
||||
*** `delete-by-moving-to-trash' now only affects commands that specify
|
||||
trashing. This avoids inadvertently trashing temporary files.
|
||||
|
||||
*** Calling `delete-file' or `delete-directory' with a prefix argument
|
||||
now forces true deletion, regardless of `delete-by-moving-to-trash'.
|
||||
|
||||
|
||||
* Editing Changes in Emacs 24.1
|
||||
|
||||
** completion-at-point is now an alias for complete-symbol.
|
||||
|
||||
** mouse-region-delete-keys has been deleted.
|
||||
|
||||
** If delete-file is called with a prefix argument, it really deletes,
|
||||
regardless of the value of `delete-by-moving-to-trash'.
|
||||
|
||||
|
||||
* Changes in Specialized Modes and Packages in Emacs 24.1
|
||||
|
||||
|
@ -237,8 +241,10 @@ secrets.
|
|||
** prog-mode is a new major-mode meant to be the parent of programming mode.
|
||||
** define-minor-mode accepts a new keyword :variable.
|
||||
|
||||
** delete-file now accepts an optional second arg, FORCE, which says
|
||||
to always delete and ignore the value of delete-by-moving-to-trash.
|
||||
** `delete-file' and `delete-directory now accept optional arg TRASH.
|
||||
Trashing is performed if TRASH and `delete-by-moving-to-trash' are
|
||||
both non-nil. Interactively, TRASH defaults to t, unless a prefix
|
||||
argument is supplied (see Trash changes, above).
|
||||
|
||||
** buffer-substring-filters is obsoleted by filter-buffer-substring-functions.
|
||||
|
||||
|
|
163
etc/PROBLEMS
163
etc/PROBLEMS
|
@ -87,8 +87,7 @@ it's loaded very early in the startup procedure.)
|
|||
Similarly, any other .el file for which there's no corresponding .elc
|
||||
file could fail to load if it is compressed.
|
||||
|
||||
The solution is to uncompress all .el files which don't have a .elc
|
||||
file.
|
||||
The solution is to uncompress all .el files that don't have a .elc file.
|
||||
|
||||
Another possible reason for such failures is stale *.elc files
|
||||
lurking somewhere on your load-path -- see the next section.
|
||||
|
@ -268,8 +267,7 @@ than the corresponding .el file.
|
|||
|
||||
These control the actions of Emacs.
|
||||
~/.emacs is your Emacs init file.
|
||||
EMACSLOADPATH overrides which directories the function
|
||||
"load" will search.
|
||||
EMACSLOADPATH overrides which directories the function "load" will search.
|
||||
|
||||
If you observe strange problems, check for these and get rid
|
||||
of them, then try again.
|
||||
|
@ -415,8 +413,7 @@ For example, (system-name) returns some variation on
|
|||
|
||||
You need to configure your machine with a fully qualified domain name,
|
||||
(i.e. a name with at least one ".") either in /etc/hosts,
|
||||
/etc/hostname, the NIS, or wherever your system calls for specifying
|
||||
this.
|
||||
/etc/hostname, the NIS, or wherever your system calls for specifying this.
|
||||
|
||||
If you cannot fix the configuration, you can set the Lisp variable
|
||||
mail-host-address to the value you want.
|
||||
|
@ -525,8 +522,7 @@ terminal type.
|
|||
|
||||
The cause of this is a shell startup file that sets the TERMCAP
|
||||
environment variable. The terminal emulator uses that variable to
|
||||
provide the information on the special terminal type that Emacs
|
||||
emulates.
|
||||
provide the information on the special terminal type that Emacs emulates.
|
||||
|
||||
Rewrite your shell startup file so that it does not change TERMCAP
|
||||
in such a case. You could use the following conditional which sets
|
||||
|
@ -825,8 +821,7 @@ To circumvent this problem, set x-use-underline-position-properties
|
|||
to nil in your `.emacs'.
|
||||
|
||||
To see what is the value of UNDERLINE_POSITION defined by the font,
|
||||
type `xlsfonts -lll FONT' and look at the font's UNDERLINE_POSITION
|
||||
property.
|
||||
type `xlsfonts -lll FONT' and look at the font's UNDERLINE_POSITION property.
|
||||
|
||||
** When using Exceed, fonts sometimes appear too tall.
|
||||
|
||||
|
@ -910,8 +905,7 @@ To see what glyphs are included in a font, use `xfd', like this:
|
|||
|
||||
xfd -fn -schumacher-clean-medium-r-normal--12-120-75-75-c-60-iso8859-1
|
||||
|
||||
If this shows only ASCII glyphs, the font is indeed the source of the
|
||||
problem.
|
||||
If this shows only ASCII glyphs, the font is indeed the source of the problem.
|
||||
|
||||
The solution is to remove the corresponding lines from the appropriate
|
||||
`fonts.alias' file, then run `mkfontdir' in that directory, and then run
|
||||
|
@ -1017,8 +1011,7 @@ have made the key binding correctly.
|
|||
|
||||
If C-h c reports an event that doesn't have the Alt modifier, it may
|
||||
be because your X server has no key for the Alt modifier. The X
|
||||
server that comes from MIT does not set up the Alt modifier by
|
||||
default.
|
||||
server that comes from MIT does not set up the Alt modifier by default.
|
||||
|
||||
If your keyboard has keys named Alt, you can enable them as follows:
|
||||
|
||||
|
@ -1160,8 +1153,7 @@ menu placement.
|
|||
|
||||
On some systems, even with Motif 1.2 emulation, Emacs occasionally
|
||||
locks up, grabbing all mouse and keyboard events. We still don't know
|
||||
what causes these problems; they are not reproducible by Emacs
|
||||
developers.
|
||||
what causes these problems; they are not reproducible by Emacs developers.
|
||||
|
||||
*** Motif: The Motif version of Emacs paints the screen a solid color.
|
||||
|
||||
|
@ -1490,8 +1482,7 @@ In this case, there is no obvious bug in Emacs, and most likely you
|
|||
need more padding, or possibly the terminal manual is wrong.
|
||||
|
||||
2) The characters sent are incorrect, due to an obscure aspect
|
||||
of the terminal behavior not described in an obvious way
|
||||
by termcap.
|
||||
of the terminal behavior not described in an obvious way by termcap.
|
||||
|
||||
This case is hard. It will be necessary to think of a way for
|
||||
Emacs to distinguish between terminals with this kind of behavior
|
||||
|
@ -1517,8 +1508,7 @@ in termcap.c, tparam.c, term.c, scroll.c, cm.c or dispnew.c.
|
|||
Some versions of rlogin (and possibly telnet) do not pass flow
|
||||
control characters to the remote system to which they connect.
|
||||
On such systems, emacs on the remote system cannot disable flow
|
||||
control on the local system. Sometimes `rlogin -8' will avoid this
|
||||
problem.
|
||||
control on the local system. Sometimes `rlogin -8' will avoid this problem.
|
||||
|
||||
One way to cure this is to disable flow control on the local host
|
||||
(the one running rlogin, not the one running rlogind) using the
|
||||
|
@ -1537,8 +1527,7 @@ following to your .emacs (on the host running rlogind):
|
|||
|
||||
(enable-flow-control-on "vt200" "vt300" "vt101" "vt131")
|
||||
|
||||
See the entry about spontaneous display of I-search (above) for more
|
||||
info.
|
||||
See the entry about spontaneous display of I-search (above) for more info.
|
||||
|
||||
** Output from Control-V is slow.
|
||||
|
||||
|
@ -1936,8 +1925,8 @@ Definitions" to make them defined.
|
|||
|
||||
** Solaris
|
||||
|
||||
We list bugs in current versions here. Solaris 2.x and 4.x are covered in the
|
||||
section on legacy systems.
|
||||
We list bugs in current versions here. See also the section on legacy
|
||||
systems.
|
||||
|
||||
*** On Solaris, C-x doesn't get through to Emacs when you use the console.
|
||||
|
||||
|
@ -1951,7 +1940,7 @@ may not work if you have used the unshared system libraries. This
|
|||
is because the unshared libraries fail to use YP for host name lookup.
|
||||
As a result, the host name you specify may not be recognized.
|
||||
|
||||
*** Solaris 2,6: Emacs crashes with SIGBUS or SIGSEGV on Solaris after you delete a frame.
|
||||
*** Solaris 2.6: Emacs crashes with SIGBUS or SIGSEGV on Solaris after you delete a frame.
|
||||
|
||||
We suspect that this is a bug in the X libraries provided by
|
||||
Sun. There is a report that one of these patches fixes the bug and
|
||||
|
@ -2267,8 +2256,7 @@ selection".
|
|||
|
||||
Of this does not work, please inform bug-gnu-emacs@gnu.org. Then
|
||||
please call support for your X-server and see if you can get a fix.
|
||||
If you do, please send it to bug-gnu-emacs@gnu.org so we can list it
|
||||
here.
|
||||
If you do, please send it to bug-gnu-emacs@gnu.org so we can list it here.
|
||||
|
||||
* Build-time problems
|
||||
|
||||
|
@ -2499,7 +2487,7 @@ The fix is to install a newer version of ncurses, such as version 4.2.
|
|||
** Bootstrapping
|
||||
|
||||
Bootstrapping (compiling the .el files) is normally only necessary
|
||||
with CVS builds, since the .elc files are pre-compiled in releases.
|
||||
with development builds, since the .elc files are pre-compiled in releases.
|
||||
|
||||
*** "No rule to make target" with Ubuntu 8.04 make 3.81-3build1
|
||||
|
||||
|
@ -2611,32 +2599,28 @@ nonprinting characters, you can fix them:
|
|||
|
||||
*** temacs prints "Pure Lisp storage exhausted".
|
||||
|
||||
This means that the Lisp code loaded from the .elc and .el
|
||||
files during temacs -l loadup inc dump took up more
|
||||
space than was allocated.
|
||||
This means that the Lisp code loaded from the .elc and .el files
|
||||
during temacs -l loadup inc dump took up more space than was allocated.
|
||||
|
||||
This could be caused by
|
||||
1) adding code to the preloaded Lisp files
|
||||
2) adding more preloaded files in loadup.el
|
||||
3) having a site-init.el or site-load.el which loads files.
|
||||
Note that ANY site-init.el or site-load.el is nonstandard;
|
||||
if you have received Emacs from some other site
|
||||
and it contains a site-init.el or site-load.el file, consider
|
||||
deleting that file.
|
||||
if you have received Emacs from some other site and it contains a
|
||||
site-init.el or site-load.el file, consider deleting that file.
|
||||
4) getting the wrong .el or .elc files
|
||||
(not from the directory you expected).
|
||||
5) deleting some .elc files that are supposed to exist.
|
||||
This would cause the source files (.el files) to be
|
||||
loaded instead. They take up more room, so you lose.
|
||||
6) a bug in the Emacs distribution which underestimates
|
||||
the space required.
|
||||
6) a bug in the Emacs distribution which underestimates the space required.
|
||||
|
||||
If the need for more space is legitimate, change the definition
|
||||
of PURESIZE in puresize.h.
|
||||
|
||||
But in some of the cases listed above, this problem is a consequence
|
||||
of something else that is wrong. Be sure to check and fix the real
|
||||
problem.
|
||||
of something else that is wrong. Be sure to check and fix the real problem.
|
||||
|
||||
*** Linux: Emacs crashes when dumping itself on Mac PPC running Yellow Dog GNU/Linux.
|
||||
|
||||
|
@ -2765,16 +2749,7 @@ This section covers bugs reported on very old hardware or software.
|
|||
If you are using hardware and an operating system shipped after 2000,
|
||||
it is unlikely you will see any of these.
|
||||
|
||||
*** Sunos 5.3: Subprocesses remain, hanging but not zombies.
|
||||
|
||||
A bug in Sunos 5.3 causes Emacs subprocesses to remain after Emacs
|
||||
exits. Sun patch # 101415-02 is part of the fix for this, but it only
|
||||
applies to ptys, and doesn't fix the problem with subprocesses
|
||||
communicating through pipes.
|
||||
|
||||
*** OPENSTEP
|
||||
|
||||
**** OPENSTEP 4.2: Compiling syntax.c with gcc 2.7.2.1 fails.
|
||||
*** OPENSTEP 4.2: Compiling syntax.c with gcc 2.7.2.1 fails.
|
||||
|
||||
The compiler was reported to crash while compiling syntax.c with the
|
||||
following message:
|
||||
|
@ -2857,15 +2832,10 @@ lists the supported locales; any locale other than "C" or "POSIX"
|
|||
should do.
|
||||
|
||||
pen@lysator.liu.se says (Feb 1998) that the Compose key does work
|
||||
if you link with the MIT X11 libraries instead of the Solaris X11
|
||||
libraries.
|
||||
|
||||
*** HP/UX versions before 11.0
|
||||
|
||||
HP/UX 10 was end-of-lifed in May 1999.
|
||||
if you link with the MIT X11 libraries instead of the Solaris X11 libraries.
|
||||
|
||||
*** HP/UX 10: Large file support is disabled.
|
||||
|
||||
(HP/UX 10 was end-of-lifed in May 1999.)
|
||||
See the comments in src/s/hpux10-20.h.
|
||||
|
||||
*** HP/UX: Emacs is slow using X11R5.
|
||||
|
@ -2877,47 +2847,7 @@ libXmu.a, libXext.a and others. HP/UX normally doesn't come with
|
|||
those libraries installed. To get good performance, you need to
|
||||
install them and rebuild Emacs.
|
||||
|
||||
*** Digital Unix 4.0: Garbled display on non-X terminals when Emacs runs.
|
||||
|
||||
So far it appears that running `tset' triggers this problem (when TERM
|
||||
is vt100, at least). If you do not run `tset', then Emacs displays
|
||||
properly. If someone can tell us precisely which effect of running
|
||||
`tset' actually causes the problem, we may be able to implement a fix
|
||||
in Emacs.
|
||||
|
||||
*** SVr4
|
||||
|
||||
**** SVr4: On some variants of SVR4, Emacs does not work at all with X.
|
||||
|
||||
Try defining BROKEN_FIONREAD in your config.h file. If this solves
|
||||
the problem, please send a bug report to tell us this is needed; be
|
||||
sure to say exactly what type of machine and system you are using.
|
||||
|
||||
**** SVr4: After running emacs once, subsequent invocations crash.
|
||||
|
||||
Some versions of SVR4 have a serious bug in the implementation of the
|
||||
mmap () system call in the kernel; this causes emacs to run correctly
|
||||
the first time, and then crash when run a second time.
|
||||
|
||||
Contact your vendor and ask for the mmap bug fix; in the mean time,
|
||||
you may be able to work around the problem by adding a line to your
|
||||
operating system description file (whose name is reported by the
|
||||
configure script) that reads:
|
||||
#define SYSTEM_MALLOC
|
||||
This makes Emacs use memory less efficiently, but seems to work around
|
||||
the kernel bug.
|
||||
|
||||
*** SCO Unix and UnixWare
|
||||
|
||||
**** SCO 4.2.0: Regular expressions matching bugs on SCO systems.
|
||||
|
||||
On SCO, there are problems in regexp matching when Emacs is compiled
|
||||
with the system compiler. The compiler version is "Microsoft C
|
||||
version 6", SCO 4.2.0h Dev Sys Maintenance Supplement 01/06/93; Quick
|
||||
C Compiler Version 1.00.46 (Beta). The solution is to compile with
|
||||
GCC.
|
||||
|
||||
**** UnixWare 2.1: Error 12 (virtual memory exceeded) when dumping Emacs.
|
||||
*** UnixWare 2.1: Error 12 (virtual memory exceeded) when dumping Emacs.
|
||||
|
||||
Paul Abrahams (abrahams@acm.org) reports that with the installed
|
||||
virtual memory settings for UnixWare 2.1.2, an Error 12 occurs during
|
||||
|
@ -2940,7 +2870,7 @@ According to Martin Sohnius, you can also retune this in the kernel:
|
|||
(He recommends you not change the stack limit, though.)
|
||||
These changes take effect when you reboot.
|
||||
|
||||
** Windows 3.1, 95, 98, and ME
|
||||
** MS-Windows 95, 98, ME, and NT
|
||||
|
||||
*** MS-Windows NT/95: Problems running Perl under Emacs
|
||||
|
||||
|
@ -3022,8 +2952,7 @@ http://www.gnu.org/software/emacs/windows/.
|
|||
When a program you are trying to run is not found on the PATH,
|
||||
Windows might respond by crashing or locking up your system. In
|
||||
particular, this has been reported when trying to compile a Java
|
||||
program in JDEE when javac.exe is installed, but not on the system
|
||||
PATH.
|
||||
program in JDEE when javac.exe is installed, but not on the system PATH.
|
||||
|
||||
** MS-DOS
|
||||
|
||||
|
@ -3088,7 +3017,7 @@ your system works as before.
|
|||
*** MS-DOS: Emacs crashes at startup.
|
||||
|
||||
Some users report that Emacs 19.29 requires dpmi memory management,
|
||||
and crashes on startup if the system does not have it. We don't yet
|
||||
and crashes on startup if the system does not have it. We don't
|
||||
know why this happens--perhaps these machines don't have enough real
|
||||
memory, or perhaps something is wrong in Emacs or the compiler.
|
||||
However, arranging to use dpmi support is a workaround.
|
||||
|
@ -3112,7 +3041,7 @@ This is an unfortunate side-effect of the support for Unix-style
|
|||
device names such as /dev/null in the DJGPP runtime library. A
|
||||
work-around is to rename the problem directory to another name.
|
||||
|
||||
*** MS-DOS+DJGPP: Problems on MS-DOG if DJGPP v2.0 is used to compile Emacs.
|
||||
*** MS-DOS+DJGPP: Problems on MS-DOS if DJGPP v2.0 is used to compile Emacs.
|
||||
|
||||
There are two DJGPP library bugs which cause problems:
|
||||
|
||||
|
@ -3134,8 +3063,7 @@ the Lisp files it needs to load at startup. Redirect Emacs stdout
|
|||
and stderr to a file to see the error message printed by Emacs.
|
||||
|
||||
Another manifestation of this problem is that Emacs is unable to load
|
||||
the support for editing program sources in languages such as C and
|
||||
Lisp.
|
||||
the support for editing program sources in languages such as C and Lisp.
|
||||
|
||||
This can happen if the Emacs distribution was unzipped without LFN
|
||||
support, thus causing long filenames to be truncated to the first 6
|
||||
|
@ -3165,7 +3093,7 @@ shortcut keys entirely by adding this line to ~/.OWdefaults:
|
|||
|
||||
OpenWindows.WindowMenuAccelerators: False
|
||||
|
||||
**** twm: A position you specified in .Xdefaults is ignored, using twm.
|
||||
*** twm: A position you specified in .Xdefaults is ignored, using twm.
|
||||
|
||||
twm normally ignores "program-specified" positions.
|
||||
You can tell it to obey them with this command in your `.twmrc' file:
|
||||
|
@ -3188,31 +3116,6 @@ This problem seems to be a matter of configuring the DECserver to use
|
|||
|
||||
* Build problems on legacy systems
|
||||
|
||||
** BSD/386 1.0: --with-x-toolkit option configures wrong.
|
||||
|
||||
This problem is due to bugs in the shell in version 1.0 of BSD/386.
|
||||
The workaround is to edit the configure file to use some other shell,
|
||||
such as bash.
|
||||
|
||||
** Digital Unix 4.0: Emacs fails to build, giving error message
|
||||
Invalid dimension for the charset-ID 160
|
||||
|
||||
This is due to a bug or an installation problem in GCC 2.8.0.
|
||||
Installing a more recent version of GCC fixes the problem.
|
||||
|
||||
** Digital Unix 4.0: Failure in unexec while dumping emacs.
|
||||
|
||||
This problem manifests itself as an error message
|
||||
|
||||
unexec: Bad address, writing data section to ...
|
||||
|
||||
The user suspects that this happened because his X libraries
|
||||
were built for an older system version,
|
||||
|
||||
./configure --x-includes=/usr/include --x-libraries=/usr/shlib
|
||||
|
||||
made the problem go away.
|
||||
|
||||
** SunOS: Emacs gets error message from linker on Sun.
|
||||
|
||||
If the error message says that a symbol such as `f68881_used' or
|
||||
|
@ -3297,7 +3200,7 @@ In the XCONS, etc., macros in lisp.h you must replace (a).u.val with
|
|||
This problem will only happen if USE_LISP_UNION_TYPE is manually
|
||||
defined in lisp.h.
|
||||
|
||||
*** C compilers lose on returning unions.
|
||||
** C compilers lose on returning unions.
|
||||
|
||||
I hear that some C compilers cannot handle returning a union type.
|
||||
Most of the functions in GNU Emacs return type Lisp_Object, which is
|
||||
|
|
|
@ -1,3 +1,80 @@
|
|||
2010-05-27 Chong Yidong <cyd@stupidchicken.com>
|
||||
|
||||
* dired.el (dired-delete-file): New arg TRASH.
|
||||
(dired-internal-do-deletions): New arg TRASH. Use progress
|
||||
reporter.
|
||||
(dired-do-flagged-delete, dired-do-delete): Use trash.
|
||||
|
||||
* speedbar.el (speedbar-item-delete): Allow trashing.
|
||||
|
||||
* files.el (delete-directory): New arg TRASH.
|
||||
|
||||
* net/ange-ftp.el (ange-ftp-del-tmp-name, ange-ftp-delete-file)
|
||||
(ange-ftp-rename-remote-to-remote)
|
||||
(ange-ftp-rename-local-to-remote)
|
||||
(ange-ftp-rename-remote-to-local, ange-ftp-load)
|
||||
(ange-ftp-compress, ange-ftp-uncompress): Remove optional arg from
|
||||
`delete-file'.
|
||||
(ange-ftp-delete-directory): Add optional arg to `delete-file', to
|
||||
allow trashing.
|
||||
|
||||
* net/tramp-compat.el (tramp-compat-delete-file): Rewrite to
|
||||
handle new TRASH arg of `delete-file'.
|
||||
|
||||
* net/tramp.el (tramp-handle-delete-file): Change FORCE arg to
|
||||
TRASH.
|
||||
(tramp-handle-make-symbolic-link, tramp-handle-load)
|
||||
(tramp-do-copy-or-rename-file-via-buffer)
|
||||
(tramp-do-copy-or-rename-file-directly)
|
||||
(tramp-do-copy-or-rename-file-out-of-band)
|
||||
(tramp-handle-process-file, tramp-handle-call-process-region)
|
||||
(tramp-handle-shell-command, tramp-handle-file-local-copy)
|
||||
(tramp-handle-insert-file-contents, tramp-handle-write-region)
|
||||
(tramp-delete-temp-file-function): Use null TRASH arg in
|
||||
tramp-compat-delete-file call.
|
||||
|
||||
* net/tramp-fish.el (tramp-fish-handle-delete-directory)
|
||||
(tramp-fish-handle-delete-file)
|
||||
(tramp-fish-handle-make-symbolic-link)
|
||||
(tramp-fish-handle-process-file): Use null TRASH arg in
|
||||
`tramp-compat-delete-file' call.
|
||||
|
||||
* net/tramp-ftp.el (tramp-ftp-file-name-handler): Use null TRASH
|
||||
arg in `tramp-compat-delete-file' call.
|
||||
|
||||
* net/tramp-gvfs.el (tramp-gvfs-handle-delete-file): Rename arg.
|
||||
(tramp-gvfs-handle-write-region): Use null TRASH arg in
|
||||
`tramp-compat-delete-file' call.
|
||||
|
||||
* net/tramp-imap.el (tramp-imap-handle-delete-file): Rename arg.
|
||||
(tramp-imap-do-copy-or-rename-file): Use null TRASH arg in
|
||||
`tramp-compat-delete-file' call.
|
||||
|
||||
* net/tramp-smb.el (tramp-smb-handle-copy-file)
|
||||
(tramp-smb-handle-file-local-copy, tramp-smb-handle-rename-file)
|
||||
(tramp-smb-handle-write-region): Use null TRASH arg in
|
||||
tramp-compat-delete-file call.
|
||||
(tramp-smb-handle-delete-directory): Use tramp-compat-delete-file.
|
||||
(tramp-smb-handle-delete-file): Rename arg.
|
||||
|
||||
* diff.el (diff-sentinel):
|
||||
* epg.el (epg--make-temp-file, epg-decrypt-string)
|
||||
(epg-verify-string, epg-sign-string, epg-encrypt-string):
|
||||
* jka-compr.el (jka-compr-partial-uncompress)
|
||||
(jka-compr-call-process, jka-compr-write-region):
|
||||
* server.el (server-sentinel): Remove optional arg from
|
||||
delete-file, reverting 2010-05-03 change.
|
||||
|
||||
2010-05-27 Chong Yidong <cyd@stupidchicken.com>
|
||||
|
||||
* progmodes/verilog-mode.el (verilog-type-font-keywords): Use
|
||||
font-lock-constant-face, not obsolete font-lock-reference-face.
|
||||
|
||||
2010-05-27 Masatake YAMATO <yamato@redhat.com>
|
||||
|
||||
* htmlfontify.el (hfy-face-resolve-face): New function.
|
||||
(hfy-face-to-style): Use it (Bug#6279).
|
||||
|
||||
2010-05-27 Kenichi Handa <handa@m17n.org>
|
||||
|
||||
* language/hebrew.el (hebrew-shape-gstring): Check if a glyph
|
||||
|
|
|
@ -64,8 +64,8 @@
|
|||
"Code run when the diff process exits.
|
||||
CODE is the exit code of the process. It should be 0 only if no diffs
|
||||
were found."
|
||||
(if diff-old-temp-file (delete-file diff-old-temp-file t))
|
||||
(if diff-new-temp-file (delete-file diff-new-temp-file t))
|
||||
(if diff-old-temp-file (delete-file diff-old-temp-file))
|
||||
(if diff-new-temp-file (delete-file diff-new-temp-file))
|
||||
(save-excursion
|
||||
(goto-char (point-max))
|
||||
(let ((inhibit-read-only t))
|
||||
|
|
|
@ -2579,7 +2579,7 @@ Anything else means ask for each directory."
|
|||
;; Delete file, possibly delete a directory and all its files.
|
||||
;; This function is usefull outside of dired. One could change it's name
|
||||
;; to e.g. recursive-delete-file and put it somewhere else.
|
||||
(defun dired-delete-file (file &optional recursive) "\
|
||||
(defun dired-delete-file (file &optional recursive trash) "\
|
||||
Delete FILE or directory (possibly recursively if optional RECURSIVE is true.)
|
||||
RECURSIVE determines what to do with a non-empty directory. If RECURSIVE is:
|
||||
nil, do not delete.
|
||||
|
@ -2590,15 +2590,19 @@ Anything else, ask for each sub-directory."
|
|||
;; (and (file-directory-p fn) (not (file-symlink-p fn)))
|
||||
;; but more efficient
|
||||
(if (not (eq t (car (file-attributes file))))
|
||||
(delete-file file)
|
||||
(delete-file file trash)
|
||||
(if (and recursive
|
||||
(directory-files file t dired-re-no-dot) ; Not empty.
|
||||
(or (eq recursive 'always)
|
||||
(yes-or-no-p (format "Recursive delete of %s? "
|
||||
(yes-or-no-p (format "Recursively %s %s? "
|
||||
(if (and trash
|
||||
delete-by-moving-to-trash)
|
||||
"trash"
|
||||
"delete")
|
||||
(dired-make-relative file)))))
|
||||
(if (eq recursive 'top) (setq recursive 'always)) ; Don't ask again.
|
||||
(setq recursive nil))
|
||||
(delete-directory file recursive)))
|
||||
(delete-directory file recursive trash)))
|
||||
|
||||
(defun dired-do-flagged-delete (&optional nomessage)
|
||||
"In Dired, delete the files flagged for deletion.
|
||||
|
@ -2616,7 +2620,7 @@ non-empty directories is allowed."
|
|||
;; this can't move point since ARG is nil
|
||||
(dired-map-over-marks (cons (dired-get-filename) (point))
|
||||
nil)
|
||||
nil)
|
||||
nil t)
|
||||
(or nomessage
|
||||
(message "(No deletions requested)")))))
|
||||
|
||||
|
@ -2631,11 +2635,11 @@ non-empty directories is allowed."
|
|||
;; this may move point if ARG is an integer
|
||||
(dired-map-over-marks (cons (dired-get-filename) (point))
|
||||
arg)
|
||||
arg))
|
||||
arg t))
|
||||
|
||||
(defvar dired-deletion-confirmer 'yes-or-no-p) ; or y-or-n-p?
|
||||
|
||||
(defun dired-internal-do-deletions (l arg)
|
||||
(defun dired-internal-do-deletions (l arg &optional trash)
|
||||
;; L is an alist of files to delete, with their buffer positions.
|
||||
;; ARG is the prefix arg.
|
||||
;; Filenames are absolute.
|
||||
|
@ -2644,14 +2648,21 @@ non-empty directories is allowed."
|
|||
;; lines still to be changed, so the (point) values in L stay valid.
|
||||
;; Also, for subdirs in natural order, a subdir's files are deleted
|
||||
;; before the subdir itself - the other way around would not work.
|
||||
(let ((files (mapcar (function car) l))
|
||||
(count (length l))
|
||||
(succ 0))
|
||||
(let* ((files (mapcar (function car) l))
|
||||
(count (length l))
|
||||
(succ 0)
|
||||
(trashing (and trash delete-by-moving-to-trash))
|
||||
(progress-reporter
|
||||
(make-progress-reporter
|
||||
(if trashing "Trashing..." "Deleting...")
|
||||
succ count)))
|
||||
;; canonicalize file list for pop up
|
||||
(setq files (nreverse (mapcar (function dired-make-relative) files)))
|
||||
(if (dired-mark-pop-up
|
||||
" *Deletions*" 'delete files dired-deletion-confirmer
|
||||
(format "Delete %s " (dired-mark-prompt arg files)))
|
||||
(format "%s %s "
|
||||
(if trashing "Trash" "Delete")
|
||||
(dired-mark-prompt arg files)))
|
||||
(save-excursion
|
||||
(let (failures);; files better be in reverse order for this loop!
|
||||
(while l
|
||||
|
@ -2659,10 +2670,10 @@ non-empty directories is allowed."
|
|||
(let ((inhibit-read-only t))
|
||||
(condition-case err
|
||||
(let ((fn (car (car l))))
|
||||
(dired-delete-file fn dired-recursive-deletes)
|
||||
(dired-delete-file fn dired-recursive-deletes trash)
|
||||
;; if we get here, removing worked
|
||||
(setq succ (1+ succ))
|
||||
(message "%s of %s deletions" succ count)
|
||||
(progress-reporter-update progress-reporter succ)
|
||||
(dired-fun-in-all-buffers
|
||||
(file-name-directory fn) (file-name-nondirectory fn)
|
||||
(function dired-delete-entry) fn))
|
||||
|
@ -2671,7 +2682,7 @@ non-empty directories is allowed."
|
|||
(setq failures (cons (car (car l)) failures)))))
|
||||
(setq l (cdr l)))
|
||||
(if (not failures)
|
||||
(message "%d deletion%s done" count (dired-plural-s count))
|
||||
(progress-reporter-done progress-reporter)
|
||||
(dired-log-summary
|
||||
(format "%d of %d deletion%s failed"
|
||||
(length failures) count
|
||||
|
|
|
@ -1899,7 +1899,7 @@ You can then use `write-region' to write new data into the file."
|
|||
;; Cleanup the tempfile.
|
||||
(and tempfile
|
||||
(file-exists-p tempfile)
|
||||
(delete-file tempfile t))
|
||||
(delete-file tempfile))
|
||||
;; Cleanup the tempdir.
|
||||
(and tempdir
|
||||
(file-directory-p tempdir)
|
||||
|
@ -1999,7 +1999,7 @@ If PLAIN is nil, it returns the result as a string."
|
|||
(epg-read-output context))
|
||||
(epg-delete-output-file context)
|
||||
(if (file-exists-p input-file)
|
||||
(delete-file input-file t))
|
||||
(delete-file input-file))
|
||||
(epg-reset context))))
|
||||
|
||||
(defun epg-start-verify (context signature &optional signed-text)
|
||||
|
@ -2203,7 +2203,7 @@ Otherwise, it makes a cleartext signature."
|
|||
(epg-read-output context))
|
||||
(epg-delete-output-file context)
|
||||
(if input-file
|
||||
(delete-file input-file t))
|
||||
(delete-file input-file))
|
||||
(epg-reset context))))
|
||||
|
||||
(defun epg-start-encrypt (context plain recipients
|
||||
|
@ -2323,7 +2323,7 @@ If RECIPIENTS is nil, it performs symmetric encryption."
|
|||
(epg-read-output context))
|
||||
(epg-delete-output-file context)
|
||||
(if input-file
|
||||
(delete-file input-file t))
|
||||
(delete-file input-file))
|
||||
(epg-reset context))))
|
||||
|
||||
(defun epg-start-export-keys (context keys)
|
||||
|
|
|
@ -4675,19 +4675,30 @@ this happens by default."
|
|||
"^\\([^.]\\|\\.\\([^.]\\|\\..\\)\\).*"
|
||||
"Regexp of file names excluging \".\" an \"..\".")
|
||||
|
||||
(defun delete-directory (directory &optional recursive)
|
||||
(defun delete-directory (directory &optional recursive trash)
|
||||
"Delete the directory named DIRECTORY. Does not follow symlinks.
|
||||
If RECURSIVE is non-nil, all files in DIRECTORY are deleted as well."
|
||||
If RECURSIVE is non-nil, all files in DIRECTORY are deleted as well.
|
||||
TRASH non-nil means to trash the directory instead, provided
|
||||
`delete-by-moving-to-trash' is non-nil.
|
||||
|
||||
When called interactively, TRASH is t if no prefix argument is
|
||||
given. With a prefix argument, TRASH is nil."
|
||||
(interactive
|
||||
(let ((dir (expand-file-name
|
||||
(read-file-name
|
||||
"Delete directory: "
|
||||
default-directory default-directory nil nil))))
|
||||
(let* ((trashing (and delete-by-moving-to-trash
|
||||
(null current-prefix-arg)))
|
||||
(dir (expand-file-name
|
||||
(read-file-name
|
||||
(if trashing
|
||||
"Move directory to trash: "
|
||||
"Delete directory: ")
|
||||
default-directory default-directory nil nil))))
|
||||
(list dir
|
||||
(if (directory-files dir nil directory-files-no-dot-files-regexp)
|
||||
(y-or-n-p
|
||||
(format "Directory `%s' is not empty, really delete? " dir))
|
||||
nil))))
|
||||
(format "Directory `%s' is not empty, really %s? "
|
||||
dir (if trashing "trash" "delete")))
|
||||
nil)
|
||||
(null current-prefix-arg))))
|
||||
;; If default-directory is a remote directory, make sure we find its
|
||||
;; delete-directory handler.
|
||||
(setq directory (directory-file-name (expand-file-name directory)))
|
||||
|
@ -4695,7 +4706,7 @@ If RECURSIVE is non-nil, all files in DIRECTORY are deleted as well."
|
|||
(cond
|
||||
(handler
|
||||
(funcall handler 'delete-directory directory recursive))
|
||||
(delete-by-moving-to-trash
|
||||
((and delete-by-moving-to-trash trash)
|
||||
;; Only move non-empty dir to trash if recursive deletion was
|
||||
;; requested. This mimics the non-`delete-by-moving-to-trash'
|
||||
;; case, where the operation fails in delete-directory-internal.
|
||||
|
@ -4715,8 +4726,8 @@ If RECURSIVE is non-nil, all files in DIRECTORY are deleted as well."
|
|||
;; (and (file-directory-p fn) (not (file-symlink-p fn)))
|
||||
;; but more efficient
|
||||
(if (eq t (car (file-attributes file)))
|
||||
(delete-directory file recursive)
|
||||
(delete-file file)))
|
||||
(delete-directory file recursive nil)
|
||||
(delete-file file nil)))
|
||||
;; We do not want to delete "." and "..".
|
||||
(directory-files
|
||||
directory 'full directory-files-no-dot-files-regexp)))
|
||||
|
|
|
@ -1026,14 +1026,25 @@ haven't encountered them yet. Returns a `hfy-style-assoc'."
|
|||
(setq n (apply '* m))
|
||||
(nconc r (hfy-size (if x (round n) (* n 1.0)))) ))
|
||||
|
||||
(defun hfy-face-resolve-face (fn)
|
||||
(cond
|
||||
((facep fn)
|
||||
(hfy-face-attr-for-class fn hfy-display-class))
|
||||
((and (symbolp fn)
|
||||
(facep (symbol-value fn)))
|
||||
;; Obsolete faces like `font-lock-reference-face' are defined as
|
||||
;; aliases for another face.
|
||||
(hfy-face-attr-for-class (symbol-value fn) hfy-display-class))
|
||||
(t nil)))
|
||||
|
||||
|
||||
(defun hfy-face-to-style (fn)
|
||||
"Take FN, a font or `defface' style font specification,
|
||||
\(as returned by `face-attr-construct' or `hfy-face-attr-for-class')
|
||||
and return a `hfy-style-assoc'.\n
|
||||
See also `hfy-face-to-style-i', `hfy-flatten-style'."
|
||||
;;(message "hfy-face-to-style");;DBUG
|
||||
(let ((face-def (if (facep fn)
|
||||
(hfy-face-attr-for-class fn hfy-display-class) fn))
|
||||
(let ((face-def (hfy-face-resolve-face fn))
|
||||
(final-style nil))
|
||||
|
||||
(setq final-style (hfy-flatten-style (hfy-face-to-style-i face-def)))
|
||||
|
|
|
@ -181,7 +181,7 @@ to keep: LEN chars starting BEG chars from the beginning."
|
|||
null-device))
|
||||
jka-compr-acceptable-retval-list)
|
||||
(jka-compr-error prog args infile message err-file))
|
||||
(delete-file err-file t)))
|
||||
(delete-file err-file)))
|
||||
|
||||
;; Run the uncompression program directly.
|
||||
;; We get the whole file and must delete what we don't want.
|
||||
|
@ -223,7 +223,7 @@ to keep: LEN chars starting BEG chars from the beginning."
|
|||
"")))
|
||||
jka-compr-acceptable-retval-list)
|
||||
(jka-compr-error prog args infile message err-file))
|
||||
(delete-file err-file t)))
|
||||
(delete-file err-file)))
|
||||
(or (eq 0
|
||||
(apply 'call-process
|
||||
prog infile (if (stringp output) temp output)
|
||||
|
@ -335,7 +335,7 @@ There should be no more than seven characters after the final `/'."
|
|||
(and append can-append) 'dont))
|
||||
(erase-buffer)) )
|
||||
|
||||
(delete-file temp-file t)
|
||||
(delete-file temp-file)
|
||||
|
||||
(and
|
||||
compress-message
|
||||
|
|
|
@ -1736,7 +1736,7 @@ good, skip, fatal, or unknown."
|
|||
|
||||
(defun ange-ftp-del-tmp-name (filename)
|
||||
"Force to delete temporary file."
|
||||
(delete-file filename 'force))
|
||||
(delete-file filename))
|
||||
|
||||
|
||||
;;;; ------------------------------------------------------------
|
||||
|
@ -3507,8 +3507,9 @@ system TYPE.")
|
|||
(file-exists-p file)
|
||||
(ange-ftp-real-file-executable-p file))))
|
||||
|
||||
(defun ange-ftp-delete-file (file &optional force)
|
||||
(interactive "fDelete file: ")
|
||||
(defun ange-ftp-delete-file (file &optional trash)
|
||||
(interactive (list (read-file-name "Delete file: " nil default-directory)
|
||||
(null current-prefix-arg)))
|
||||
(setq file (expand-file-name file))
|
||||
(let ((parsed (ange-ftp-ftp-name file)))
|
||||
(if parsed
|
||||
|
@ -3526,7 +3527,7 @@ system TYPE.")
|
|||
(format "FTP Error: \"%s\"" (cdr result))
|
||||
file)))
|
||||
(ange-ftp-delete-file-entry file))
|
||||
(ange-ftp-real-delete-file file force))))
|
||||
(ange-ftp-real-delete-file file trash))))
|
||||
|
||||
(defun ange-ftp-file-modtime (file)
|
||||
"Return the modification time of remote file FILE.
|
||||
|
@ -3897,7 +3898,7 @@ E.g.,
|
|||
(ange-ftp-add-file-entry newname)
|
||||
(ange-ftp-delete-file-entry filename))
|
||||
(ange-ftp-copy-file-internal filename newname t nil)
|
||||
(delete-file filename 'force))))
|
||||
(delete-file filename))))
|
||||
|
||||
(defun ange-ftp-rename-local-to-remote (filename newname)
|
||||
"Rename local file FILENAME to remote file NEWNAME."
|
||||
|
@ -3906,7 +3907,7 @@ E.g.,
|
|||
(msg (format "Renaming %s to %s" fabbr nabbr)))
|
||||
(ange-ftp-copy-file-internal filename newname t nil msg)
|
||||
(let (ange-ftp-process-verbose)
|
||||
(delete-file filename 'force))))
|
||||
(delete-file filename))))
|
||||
|
||||
(defun ange-ftp-rename-remote-to-local (filename newname)
|
||||
"Rename remote file FILENAME to local file NEWNAME."
|
||||
|
@ -3915,7 +3916,7 @@ E.g.,
|
|||
(msg (format "Renaming %s to %s" fabbr nabbr)))
|
||||
(ange-ftp-copy-file-internal filename newname t nil msg)
|
||||
(let (ange-ftp-process-verbose)
|
||||
(delete-file filename 'force))))
|
||||
(delete-file filename))))
|
||||
|
||||
(defun ange-ftp-rename-file (filename newname &optional ok-if-already-exists)
|
||||
(interactive "fRename file: \nFRename %s to file: \np")
|
||||
|
@ -4196,7 +4197,7 @@ directory, so that Emacs will know its current contents."
|
|||
(if copy
|
||||
(unwind-protect
|
||||
(funcall 'load copy noerror nomessage nosuffix)
|
||||
(delete-file copy 'force))
|
||||
(delete-file copy))
|
||||
(or noerror
|
||||
(signal 'file-error (list "Cannot open load file" file)))
|
||||
nil))
|
||||
|
@ -4267,7 +4268,7 @@ NEWNAME should be the name to give the new compressed or uncompressed file.")
|
|||
(if (zerop (buffer-size))
|
||||
(progn
|
||||
(let (ange-ftp-process-verbose)
|
||||
(delete-file file 'force))
|
||||
(delete-file file))
|
||||
(ange-ftp-copy-file-internal tmp2 nfile t nil msg2))))
|
||||
(ange-ftp-del-tmp-name tmp1)
|
||||
(ange-ftp-del-tmp-name tmp2))))
|
||||
|
@ -4303,7 +4304,7 @@ NEWNAME should be the name to give the new compressed or uncompressed file.")
|
|||
(if (zerop (buffer-size))
|
||||
(progn
|
||||
(let (ange-ftp-process-verbose)
|
||||
(delete-file file 'force))
|
||||
(delete-file file))
|
||||
(ange-ftp-copy-file-internal tmp2 nfile t nil msg2))))
|
||||
(ange-ftp-del-tmp-name tmp1)
|
||||
(ange-ftp-del-tmp-name tmp2))))
|
||||
|
|
|
@ -334,23 +334,18 @@ Add the extension of FILENAME, if existing."
|
|||
(if keep-time
|
||||
(set-file-times newname (nth 5 (file-attributes directory))))))))
|
||||
|
||||
;; FORCE has been introduced with Emacs 24.1.
|
||||
(defun tramp-compat-delete-file (filename &optional force)
|
||||
;; TRASH has been introduced with Emacs 24.1.
|
||||
(defun tramp-compat-delete-file (filename &optional trash)
|
||||
"Like `delete-file' for Tramp files (compat function)."
|
||||
(if (null force)
|
||||
(delete-file filename)
|
||||
(condition-case nil
|
||||
(tramp-compat-funcall 'delete-file filename force)
|
||||
;; This Emacs version does not support the FORCE flag. Setting
|
||||
;; `delete-by-moving-to-trash' shall give us the same effect.
|
||||
(wrong-number-of-arguments
|
||||
(let ((delete-by-moving-to-trash
|
||||
(cond
|
||||
((null force) t)
|
||||
((boundp 'delete-by-moving-to-trash)
|
||||
(symbol-value 'delete-by-moving-to-trash))
|
||||
(t nil))))
|
||||
(delete-file filename))))))
|
||||
(condition-case nil
|
||||
(tramp-compat-funcall 'delete-file filename trash)
|
||||
;; This Emacs version does not support the TRASH flag.
|
||||
(wrong-number-of-arguments
|
||||
(let ((delete-by-moving-to-trash
|
||||
(and (boundp 'delete-by-moving-to-trash)
|
||||
delete-by-moving-to-trash
|
||||
trash)))
|
||||
(delete-file filename)))))
|
||||
|
||||
;; RECURSIVE has been introduced with Emacs 23.2.
|
||||
(defun tramp-compat-delete-directory (directory &optional recursive)
|
||||
|
|
|
@ -326,16 +326,16 @@ pass to the OPERATION."
|
|||
(lambda (file)
|
||||
(if (file-directory-p file)
|
||||
(tramp-compat-delete-directory file recursive)
|
||||
(delete-file file)))
|
||||
(tramp-compat-delete-file file)))
|
||||
;; We do not want to delete "." and "..".
|
||||
(directory-files
|
||||
directory 'full "^\\([^.]\\|\\.\\([^.]\\|\\..\\)\\).*")))
|
||||
(with-parsed-tramp-file-name
|
||||
(directory-file-name (expand-file-name directory)) nil
|
||||
(tramp-flush-directory-property v localname)
|
||||
(tramp-fish-send-command-and-check v (format "#RMD %s" localname)))))
|
||||
(with-parsed-tramp-file-name
|
||||
(directory-file-name (expand-file-name directory)) nil
|
||||
(tramp-flush-directory-property v localname)
|
||||
(tramp-fish-send-command-and-check v (format "#RMD %s" localname)))))
|
||||
|
||||
(defun tramp-fish-handle-delete-file (filename &optional force)
|
||||
(defun tramp-fish-handle-delete-file (filename &optional trash)
|
||||
"Like `delete-file' for Tramp files."
|
||||
(when (file-exists-p filename)
|
||||
(with-parsed-tramp-file-name (expand-file-name filename) nil
|
||||
|
@ -660,7 +660,7 @@ target of the symlink differ."
|
|||
localname)))))
|
||||
(tramp-error
|
||||
v 'file-already-exists "File %s already exists" localname)
|
||||
(tramp-compat-delete-file linkname 'force)))
|
||||
(tramp-compat-delete-file linkname)))
|
||||
|
||||
;; If FILENAME is a Tramp name, use just the localname component.
|
||||
(when (tramp-tramp-file-p filename)
|
||||
|
@ -839,8 +839,8 @@ target of the symlink differ."
|
|||
;; Provide error file.
|
||||
(when tmpstderr (rename-file tmpstderr (cadr destination) t))
|
||||
;; Cleanup.
|
||||
(when tmpinput (tramp-compat-delete-file tmpinput 'force))
|
||||
(when tmpoutput (tramp-compat-delete-file tmpoutput 'force))
|
||||
(when tmpinput (tramp-compat-delete-file tmpinput))
|
||||
(when tmpoutput (tramp-compat-delete-file tmpoutput))
|
||||
;; Return exit status.
|
||||
ret)))
|
||||
|
||||
|
|
|
@ -182,7 +182,7 @@ pass to the OPERATION."
|
|||
(unwind-protect
|
||||
(rename-file tmpfile newname (car args))
|
||||
;; Cleanup.
|
||||
(ignore-errors (tramp-compat-delete-file tmpfile 'force)))))
|
||||
(ignore-errors (tramp-compat-delete-file tmpfile)))))
|
||||
|
||||
;; Normally, the handlers must be discarded.
|
||||
;; `inhibit-file-name-handlers' isn't sufficient, because the
|
||||
|
|
|
@ -533,9 +533,9 @@ is no information where to trace the message.")
|
|||
(tramp-compat-delete-directory
|
||||
(tramp-gvfs-fuse-file-name directory) recursive))
|
||||
|
||||
(defun tramp-gvfs-handle-delete-file (filename &optional force)
|
||||
(defun tramp-gvfs-handle-delete-file (filename &optional tramp)
|
||||
"Like `delete-file' for Tramp files."
|
||||
(tramp-compat-delete-file (tramp-gvfs-fuse-file-name filename) force))
|
||||
(tramp-compat-delete-file (tramp-gvfs-fuse-file-name filename) tramp))
|
||||
|
||||
(defun tramp-gvfs-handle-directory-files
|
||||
(directory &optional full match nosort)
|
||||
|
@ -742,7 +742,7 @@ is no information where to trace the message.")
|
|||
"gvfs-save" tmpfile (tramp-get-buffer v) nil
|
||||
(tramp-gvfs-url-file-name filename)))
|
||||
(signal (car err) (cdr err)))
|
||||
(tramp-compat-delete-file tmpfile 'force)))))
|
||||
(tramp-compat-delete-file tmpfile)))))
|
||||
|
||||
;; Set file modification time.
|
||||
(when (or (eq visit t) (stringp visit))
|
||||
|
|
|
@ -268,7 +268,7 @@ of `copy' and `rename'."
|
|||
(write-region (point-min) (point-max) newname)))))
|
||||
|
||||
(when (eq op 'rename)
|
||||
(tramp-compat-delete-file filename 'force))))
|
||||
(tramp-compat-delete-file filename))))
|
||||
|
||||
;; TODO: revise this much
|
||||
(defun tramp-imap-handle-expand-file-name (name &optional dir)
|
||||
|
@ -552,7 +552,7 @@ SIZE MODE WEIRD INODE DEVICE)."
|
|||
;; (file-exists-p (file-name-directory filename)))
|
||||
(file-directory-p (file-name-directory filename)))
|
||||
|
||||
(defun tramp-imap-handle-delete-file (filename &optional force)
|
||||
(defun tramp-imap-handle-delete-file (filename &optional trash)
|
||||
"Like `delete-file' for Tramp files."
|
||||
(cond
|
||||
((not (file-exists-p filename)) nil)
|
||||
|
|
|
@ -345,7 +345,7 @@ PRESERVE-UID-GID is completely ignored."
|
|||
(condition-case err
|
||||
(rename-file tmpfile newname ok-if-already-exists)
|
||||
((error quit)
|
||||
(tramp-compat-delete-file tmpfile 'force)
|
||||
(tramp-compat-delete-file tmpfile)
|
||||
(signal (car err) (cdr err))))
|
||||
|
||||
;; Remote newname.
|
||||
|
@ -382,7 +382,7 @@ PRESERVE-UID-GID is completely ignored."
|
|||
(lambda (file)
|
||||
(if (file-directory-p file)
|
||||
(tramp-compat-delete-directory file recursive)
|
||||
(delete-file file)))
|
||||
(tramp-compat-delete-file file t)))
|
||||
;; We do not want to delete "." and "..".
|
||||
(directory-files
|
||||
directory 'full "^\\([^.]\\|\\.\\([^.]\\|\\..\\)\\).*")))
|
||||
|
@ -404,7 +404,7 @@ PRESERVE-UID-GID is completely ignored."
|
|||
(tramp-error
|
||||
v 'file-error "%s `%s'" (match-string 0) directory))))))
|
||||
|
||||
(defun tramp-smb-handle-delete-file (filename &optional force)
|
||||
(defun tramp-smb-handle-delete-file (filename &optional trash)
|
||||
"Like `delete-file' for Tramp files."
|
||||
(setq filename (expand-file-name filename))
|
||||
(when (file-exists-p filename)
|
||||
|
@ -611,7 +611,7 @@ PRESERVE-UID-GID is completely ignored."
|
|||
v (format "get \"%s\" \"%s\""
|
||||
(tramp-smb-get-localname v) tmpfile))
|
||||
;; Oops, an error. We shall cleanup.
|
||||
(tramp-compat-delete-file tmpfile 'force)
|
||||
(tramp-compat-delete-file tmpfile)
|
||||
(tramp-error
|
||||
v 'file-error "Cannot make local copy of file `%s'" filename)))
|
||||
tmpfile)))
|
||||
|
@ -861,7 +861,7 @@ target of the symlink differ."
|
|||
(condition-case err
|
||||
(rename-file tmpfile newname ok-if-already-exists)
|
||||
((error quit)
|
||||
(tramp-compat-delete-file tmpfile 'force)
|
||||
(tramp-compat-delete-file tmpfile)
|
||||
(signal (car err) (cdr err))))
|
||||
|
||||
;; Remote newname.
|
||||
|
@ -882,7 +882,7 @@ target of the symlink differ."
|
|||
filename (tramp-smb-get-localname v)))
|
||||
(tramp-error v 'file-error "Cannot rename `%s'" filename)))))
|
||||
|
||||
(tramp-compat-delete-file filename 'force)))
|
||||
(tramp-compat-delete-file filename)))
|
||||
|
||||
(defun tramp-smb-handle-set-file-modes (filename mode)
|
||||
"Like `set-file-modes' for Tramp files."
|
||||
|
@ -946,7 +946,7 @@ errors for shares like \"C$/\", which are common in Microsoft Windows."
|
|||
v (format "put %s \"%s\""
|
||||
tmpfile (tramp-smb-get-localname v)))
|
||||
(tramp-error v 'file-error "Cannot write `%s'" filename))
|
||||
(tramp-compat-delete-file tmpfile 'force)))
|
||||
(tramp-compat-delete-file tmpfile)))
|
||||
|
||||
(unless (equal curbuf (current-buffer))
|
||||
(tramp-error
|
||||
|
|
|
@ -2544,7 +2544,7 @@ target of the symlink differ."
|
|||
l-localname)))))
|
||||
(tramp-error
|
||||
l 'file-already-exists "File %s already exists" l-localname)
|
||||
(tramp-compat-delete-file linkname 'force)))
|
||||
(tramp-compat-delete-file linkname)))
|
||||
|
||||
;; If FILENAME is a Tramp name, use just the localname component.
|
||||
(when (tramp-tramp-file-p filename)
|
||||
|
@ -2593,7 +2593,7 @@ target of the symlink differ."
|
|||
;; MUST-SUFFIX doesn't exist on XEmacs, so let it default to nil.
|
||||
(unwind-protect
|
||||
(load local-copy noerror t t)
|
||||
(tramp-compat-delete-file local-copy 'force)))))
|
||||
(tramp-compat-delete-file local-copy)))))
|
||||
t)))
|
||||
|
||||
;; Localname manipulation functions that grok Tramp localnames...
|
||||
|
@ -3769,7 +3769,7 @@ KEEP-DATE is non-nil if NEWNAME should have the same timestamp as FILENAME."
|
|||
;; Set the mode.
|
||||
(set-file-modes newname (tramp-default-file-modes filename))
|
||||
;; If the operation was `rename', delete the original file.
|
||||
(unless (eq op 'copy) (tramp-compat-delete-file filename 'force)))
|
||||
(unless (eq op 'copy) (tramp-compat-delete-file filename)))
|
||||
|
||||
(defun tramp-do-copy-or-rename-file-directly
|
||||
(op filename newname ok-if-already-exists keep-date preserve-uid-gid)
|
||||
|
@ -3924,7 +3924,7 @@ the uid and gid from FILENAME."
|
|||
|
||||
;; Save exit.
|
||||
(condition-case nil
|
||||
(tramp-compat-delete-file tmpfile 'force)
|
||||
(tramp-compat-delete-file tmpfile)
|
||||
(error)))))))))
|
||||
|
||||
;; Set the time and mode. Mask possible errors.
|
||||
|
@ -3964,7 +3964,7 @@ The method used must be an out-of-band method."
|
|||
(if dir-flag
|
||||
(tramp-compat-delete-directory
|
||||
(expand-file-name ".." tmpfile) 'recursive)
|
||||
(tramp-compat-delete-file tmpfile 'force))
|
||||
(tramp-compat-delete-file tmpfile))
|
||||
(error))))
|
||||
|
||||
;; Expand hops. Might be necessary for gateway methods.
|
||||
|
@ -4082,7 +4082,7 @@ The method used must be an out-of-band method."
|
|||
;; If the operation was `rename', delete the original file.
|
||||
(unless (eq op 'copy)
|
||||
(if (file-regular-p filename)
|
||||
(tramp-compat-delete-file filename 'force)
|
||||
(tramp-compat-delete-file filename)
|
||||
(tramp-compat-delete-directory filename 'recursive))))))
|
||||
|
||||
(defun tramp-handle-make-directory (dir &optional parents)
|
||||
|
@ -4112,7 +4112,7 @@ The method used must be an out-of-band method."
|
|||
(tramp-shell-quote-argument localname))))
|
||||
(tramp-error v 'file-error "Couldn't delete %s" directory))))
|
||||
|
||||
(defun tramp-handle-delete-file (filename &optional force)
|
||||
(defun tramp-handle-delete-file (filename &optional trash)
|
||||
"Like `delete-file' for Tramp files."
|
||||
(setq filename (expand-file-name filename))
|
||||
(with-parsed-tramp-file-name filename nil
|
||||
|
@ -4629,7 +4629,7 @@ beginning of local filename are not substituted."
|
|||
|
||||
;; Cleanup. We remove all file cache values for the connection,
|
||||
;; because the remote process could have changed them.
|
||||
(when tmpinput (tramp-compat-delete-file tmpinput 'force))
|
||||
(when tmpinput (tramp-compat-delete-file tmpinput))
|
||||
|
||||
;; `process-file-side-effects' has been introduced with GNU
|
||||
;; Emacs 23.2. If set to `nil', no remote file will be changed
|
||||
|
@ -4666,7 +4666,7 @@ Lisp error raised when PROGRAM is nil is trapped also, returning 1."
|
|||
(when delete (delete-region start end))
|
||||
(unwind-protect
|
||||
(apply 'call-process program tmpfile buffer display args)
|
||||
(tramp-compat-delete-file tmpfile 'force))))
|
||||
(tramp-compat-delete-file tmpfile))))
|
||||
|
||||
(defun tramp-handle-shell-command
|
||||
(command &optional output-buffer error-buffer)
|
||||
|
@ -4731,7 +4731,7 @@ Lisp error raised when PROGRAM is nil is trapped also, returning 1."
|
|||
(when (listp buffer)
|
||||
(with-current-buffer error-buffer
|
||||
(insert-file-contents (cadr buffer)))
|
||||
(tramp-compat-delete-file (cadr buffer) 'force))
|
||||
(tramp-compat-delete-file (cadr buffer)))
|
||||
(if current-buffer-p
|
||||
;; This is like exchange-point-and-mark, but doesn't
|
||||
;; activate the mark. It is cleaner to avoid activation,
|
||||
|
@ -4813,7 +4813,7 @@ Lisp error raised when PROGRAM is nil is trapped also, returning 1."
|
|||
(unwind-protect
|
||||
(tramp-call-local-coding-command
|
||||
loc-dec tmpfile2 tmpfile)
|
||||
(tramp-compat-delete-file tmpfile2 'force)))))
|
||||
(tramp-compat-delete-file tmpfile2)))))
|
||||
|
||||
;; Set proper permissions.
|
||||
(set-file-modes tmpfile (tramp-default-file-modes filename))
|
||||
|
@ -4826,7 +4826,7 @@ Lisp error raised when PROGRAM is nil is trapped also, returning 1."
|
|||
|
||||
;; Error handling.
|
||||
((error quit)
|
||||
(tramp-compat-delete-file tmpfile 'force)
|
||||
(tramp-compat-delete-file tmpfile)
|
||||
(signal (car err) (cdr err))))
|
||||
|
||||
(run-hooks 'tramp-handle-file-local-copy-hook)
|
||||
|
@ -4961,11 +4961,10 @@ coding system might not be determined. This function repairs it."
|
|||
(set-buffer-modified-p nil))
|
||||
(when (and (stringp local-copy)
|
||||
(or remote-copy (null tramp-temp-buffer-file-name)))
|
||||
(tramp-compat-delete-file local-copy 'force))
|
||||
(tramp-compat-delete-file local-copy))
|
||||
(when (stringp remote-copy)
|
||||
(tramp-compat-delete-file
|
||||
(tramp-make-tramp-file-name method user host remote-copy)
|
||||
'force)))))
|
||||
(tramp-make-tramp-file-name method user host remote-copy))))))
|
||||
|
||||
;; Result.
|
||||
(list (expand-file-name filename)
|
||||
|
@ -5155,7 +5154,7 @@ Returns a file name in `tramp-auto-save-directory' for autosaving this file."
|
|||
(list start end tmpfile append 'no-message lockname confirm))
|
||||
((error quit)
|
||||
(setq tramp-temp-buffer-file-name nil)
|
||||
(tramp-compat-delete-file tmpfile 'force)
|
||||
(tramp-compat-delete-file tmpfile)
|
||||
(signal (car err) (cdr err))))
|
||||
|
||||
;; Now, `last-coding-system-used' has the right value. Remember it.
|
||||
|
@ -5199,13 +5198,13 @@ Returns a file name in `tramp-auto-save-directory' for autosaving this file."
|
|||
(copy-file tmpfile filename t)
|
||||
((error quit)
|
||||
(setq tramp-temp-buffer-file-name nil)
|
||||
(tramp-compat-delete-file tmpfile 'force)
|
||||
(tramp-compat-delete-file tmpfile)
|
||||
(signal (car err) (cdr err)))))
|
||||
(setq tramp-temp-buffer-file-name nil)
|
||||
;; Don't rename, in order to keep context in SELinux.
|
||||
(unwind-protect
|
||||
(copy-file tmpfile filename t)
|
||||
(tramp-compat-delete-file tmpfile 'force))))
|
||||
(tramp-compat-delete-file tmpfile))))
|
||||
|
||||
;; Use inline file transfer.
|
||||
(rem-dec
|
||||
|
@ -5290,7 +5289,7 @@ Returns a file name in `tramp-auto-save-directory' for autosaving this file."
|
|||
filename rem-dec)))))
|
||||
|
||||
;; Save exit.
|
||||
(tramp-compat-delete-file tmpfile 'force)))
|
||||
(tramp-compat-delete-file tmpfile)))
|
||||
|
||||
;; That's not expected.
|
||||
(t
|
||||
|
@ -6373,7 +6372,7 @@ hosts, or files, disagree."
|
|||
"Remove temporary files related to current buffer."
|
||||
(when (stringp tramp-temp-buffer-file-name)
|
||||
(condition-case nil
|
||||
(tramp-compat-delete-file tramp-temp-buffer-file-name 'force)
|
||||
(tramp-compat-delete-file tramp-temp-buffer-file-name)
|
||||
(error nil))))
|
||||
|
||||
(add-hook 'kill-buffer-hook 'tramp-delete-temp-file-function)
|
||||
|
|
|
@ -2446,12 +2446,12 @@ See also `verilog-font-lock-extra-types'.")
|
|||
(list
|
||||
(concat "\\<function\\>\\s-+\\(integer\\|real\\(time\\)?\\|time\\)\\s-+\\(\\sw+\\)" )
|
||||
'(1 font-lock-keyword-face)
|
||||
'(3 font-lock-reference-face prepend))
|
||||
'(3 font-lock-constant-face prepend))
|
||||
'("\\<function\\>\\s-+\\(\\[[^]]+\\]\\)\\s-+\\(\\sw+\\)"
|
||||
(1 font-lock-keyword-face)
|
||||
(2 font-lock-reference-face append))
|
||||
(2 font-lock-constant-face append))
|
||||
'("\\<function\\>\\s-+\\(\\sw+\\)"
|
||||
1 'font-lock-reference-face append))))
|
||||
1 'font-lock-constant-face append))))
|
||||
|
||||
(setq verilog-font-lock-keywords-2
|
||||
(append verilog-font-lock-keywords-1
|
||||
|
|
|
@ -345,7 +345,7 @@ If CLIENT is non-nil, add a description of it to the logged message."
|
|||
(and (process-contact proc :server)
|
||||
(eq (process-status proc) 'closed)
|
||||
(ignore-errors
|
||||
(delete-file (process-get proc :server-file) t)))
|
||||
(delete-file (process-get proc :server-file))))
|
||||
(server-log (format "Status changed to %s: %s" (process-status proc) msg) proc)
|
||||
(server-delete-client proc))
|
||||
|
||||
|
|
|
@ -1644,8 +1644,8 @@ Files can be renamed to new names or moved to new directories."
|
|||
(if (speedbar-y-or-n-p (format "Delete %s? " f) t)
|
||||
(progn
|
||||
(if (file-directory-p f)
|
||||
(delete-directory f)
|
||||
(delete-file f))
|
||||
(delete-directory f t t)
|
||||
(delete-file f t))
|
||||
(speedbar-message "Okie dokie.")
|
||||
(let ((p (point)))
|
||||
(speedbar-refresh)
|
||||
|
|
|
@ -5,6 +5,28 @@
|
|||
(font_list_entities): Call font_delete_unmatched if
|
||||
Vface_ignored_fonts is non-nil.
|
||||
|
||||
2010-05-28 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* Makefile.in (LIBES): Remove $LOADLIBES, it is never set.
|
||||
|
||||
2010-05-27 Chong Yidong <cyd@stupidchicken.com>
|
||||
|
||||
* fileio.c (Fdelete_file): Change meaning of optional arg to mean
|
||||
whether to trash.
|
||||
(internal_delete_file, Frename_file): Callers changed.
|
||||
(delete_by_moving_to_trash): Doc fix.
|
||||
(Fdelete_directory_internal): Don't move to trash.
|
||||
|
||||
* callproc.c (delete_temp_file):
|
||||
* buffer.c (Fkill_buffer): Callers changed.
|
||||
|
||||
* lisp.h: Update prototype.
|
||||
|
||||
2010-05-27 Chong Yidong <cyd@stupidchicken.com>
|
||||
|
||||
* xdisp.c (redisplay_window): After redisplay, check if point is
|
||||
still valid before setting it (Bug#6177).
|
||||
|
||||
2010-05-27 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* Makefile.in, autodeps.mk, deps.mk, ns.mk:
|
||||
|
|
|
@ -4645,10 +4645,6 @@
|
|||
* image.c: Include "charset.h" and "coding.h".
|
||||
(x_find_image_file): Return an encoded file name.
|
||||
|
||||
2006-04-01 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* configure: Regenerated.
|
||||
|
||||
2006-03-31 Kenichi Handa <handa@m17n.org>
|
||||
|
||||
* xfns.c (xg_set_icon): Delete superfluous UNGCPRO.
|
||||
|
|
|
@ -4629,9 +4629,6 @@
|
|||
|
||||
* Makefile.in (LIBGIF): Use libungif.
|
||||
|
||||
* configure.in (HAVE_GIF): Use libungif instead of libgif
|
||||
because the former doesn't contain patented compression code.
|
||||
|
||||
* xdisp.c (compute_window_start_on_continuation_line): Don't
|
||||
do it if line start is too far away from window start.
|
||||
|
||||
|
|
|
@ -581,7 +581,7 @@ SOME_MACHINE_LISP = ../lisp/mouse.elc \
|
|||
## Note that SunOS needs -lm to come before -lc; otherwise, you get
|
||||
## duplicated symbols. If the standard libraries were compiled
|
||||
## with GCC, we might need LIB_GCC again after them.
|
||||
LIBES = $(LOADLIBES) $(LIBS) $(LIBX_BASE) $(LIBX_OTHER) $(LIBSOUND) \
|
||||
LIBES = $(LIBS) $(LIBX_BASE) $(LIBX_OTHER) $(LIBSOUND) \
|
||||
$(RSVG_LIBS) $(DBUS_LIBS) $(LIBGPM) $(LIBRESOLV) $(LIBS_SYSTEM) \
|
||||
$(LIBS_TERMCAP) $(GETLOADAVG_LIBS) ${GCONF_LIBS} ${LIBSELINUX_LIBS} \
|
||||
$(FREETYPE_LIBS) $(FONTCONFIG_LIBS) $(LIBOTF_LIBS) $(M17N_FLT_LIBS) \
|
||||
|
|
|
@ -1547,7 +1547,7 @@ with SIGHUP. */)
|
|||
Lisp_Object tem;
|
||||
tem = Fsymbol_value (intern ("delete-auto-save-files"));
|
||||
if (! NILP (tem))
|
||||
internal_delete_file (b->auto_save_file_name, Qt);
|
||||
internal_delete_file (b->auto_save_file_name);
|
||||
}
|
||||
|
||||
if (b->base_buffer)
|
||||
|
|
|
@ -856,7 +856,7 @@ delete_temp_file (name)
|
|||
/* Suppress jka-compr handling, etc. */
|
||||
int count = SPECPDL_INDEX ();
|
||||
specbind (intern ("file-name-handler-alist"), Qnil);
|
||||
internal_delete_file (name, Qt);
|
||||
internal_delete_file (name);
|
||||
unbind_to (count, Qnil);
|
||||
return Qnil;
|
||||
}
|
||||
|
|
41
src/fileio.c
41
src/fileio.c
|
@ -2180,12 +2180,7 @@ DEFUN ("delete-directory-internal", Fdelete_directory_internal,
|
|||
|
||||
CHECK_STRING (directory);
|
||||
directory = Fdirectory_file_name (Fexpand_file_name (directory, Qnil));
|
||||
|
||||
if (delete_by_moving_to_trash)
|
||||
return call1 (Qmove_file_to_trash, directory);
|
||||
|
||||
encoded_dir = ENCODE_FILE (directory);
|
||||
|
||||
dir = SDATA (encoded_dir);
|
||||
|
||||
if (rmdir (dir) != 0)
|
||||
|
@ -2195,19 +2190,21 @@ DEFUN ("delete-directory-internal", Fdelete_directory_internal,
|
|||
}
|
||||
|
||||
DEFUN ("delete-file", Fdelete_file, Sdelete_file, 1, 2,
|
||||
"(list (read-file-name \"Delete file: \" nil default-directory \
|
||||
(confirm-nonexistent-file-or-buffer)) \
|
||||
current-prefix-arg)",
|
||||
"(list (read-file-name \
|
||||
(if (and delete-by-moving-to-trash (null current-prefix-arg)) \
|
||||
\"Move file to trash: \" \"Delete file: \") \
|
||||
nil default-directory (confirm-nonexistent-file-or-buffer)) \
|
||||
(null current-prefix-arg))",
|
||||
doc: /* Delete file named FILENAME. If it is a symlink, remove the symlink.
|
||||
If file has multiple names, it continues to exist with the other names.
|
||||
TRASH non-nil means to trash the file instead of deleting, provided
|
||||
`delete-by-moving-to-trash' is non-nil.
|
||||
|
||||
If optional arg FORCE is non-nil, really delete the file regardless of
|
||||
`delete-by-moving-to-trash'. Otherwise, \"deleting\" actually moves
|
||||
it to the system's trash can if `delete-by-moving-to-trash' is non-nil.
|
||||
Interactively, FORCE is non-nil if called with a prefix arg. */)
|
||||
(filename, force)
|
||||
When called interactively, TRASH is t if no prefix argument is given.
|
||||
With a prefix argument, TRASH is nil. */)
|
||||
(filename, trash)
|
||||
Lisp_Object filename;
|
||||
Lisp_Object force;
|
||||
Lisp_Object trash;
|
||||
{
|
||||
Lisp_Object handler;
|
||||
Lisp_Object encoded_file;
|
||||
|
@ -2226,7 +2223,7 @@ Interactively, FORCE is non-nil if called with a prefix arg. */)
|
|||
if (!NILP (handler))
|
||||
return call2 (handler, Qdelete_file, filename);
|
||||
|
||||
if (delete_by_moving_to_trash && NILP (force))
|
||||
if (delete_by_moving_to_trash && !NILP (trash))
|
||||
return call1 (Qmove_file_to_trash, filename);
|
||||
|
||||
encoded_file = ENCODE_FILE (filename);
|
||||
|
@ -2244,14 +2241,14 @@ internal_delete_file_1 (ignore)
|
|||
}
|
||||
|
||||
/* Delete file FILENAME, returning 1 if successful and 0 if failed.
|
||||
FORCE means to ignore `delete-by-moving-to-trash'. */
|
||||
This ignores `delete-by-moving-to-trash'. */
|
||||
|
||||
int
|
||||
internal_delete_file (Lisp_Object filename, Lisp_Object force)
|
||||
internal_delete_file (Lisp_Object filename)
|
||||
{
|
||||
Lisp_Object tem;
|
||||
|
||||
tem = internal_condition_case_2 (Fdelete_file, filename, force,
|
||||
tem = internal_condition_case_2 (Fdelete_file, filename, Qnil,
|
||||
Qt, internal_delete_file_1);
|
||||
return NILP (tem);
|
||||
}
|
||||
|
@ -2345,7 +2342,7 @@ This is what happens in interactive use with M-x. */)
|
|||
)
|
||||
call2 (Qdelete_directory, file, Qt);
|
||||
else
|
||||
Fdelete_file (file, Qt);
|
||||
Fdelete_file (file, Qnil);
|
||||
unbind_to (count, Qnil);
|
||||
}
|
||||
else
|
||||
|
@ -5917,8 +5914,10 @@ A non-nil value may result in data loss! */);
|
|||
|
||||
DEFVAR_BOOL ("delete-by-moving-to-trash", &delete_by_moving_to_trash,
|
||||
doc: /* Specifies whether to use the system's trash can.
|
||||
When non-nil, the function `move-file-to-trash' will be used by
|
||||
`delete-file' and `delete-directory'. */);
|
||||
When non-nil, certain file deletion commands use the function
|
||||
`move-file-to-trash' instead of deleting files outright.
|
||||
This includes interactive calls to `delete-file' and
|
||||
`delete-directory' and the Dired deletion commands. */);
|
||||
delete_by_moving_to_trash = 0;
|
||||
Qdelete_by_moving_to_trash = intern_c_string ("delete-by-moving-to-trash");
|
||||
Qmove_file_to_trash = intern_c_string ("move-file-to-trash");
|
||||
|
|
|
@ -3060,7 +3060,7 @@ EXFUN (Fread_file_name, 6);
|
|||
extern Lisp_Object close_file_unwind P_ ((Lisp_Object));
|
||||
extern Lisp_Object restore_point_unwind P_ ((Lisp_Object));
|
||||
extern void report_file_error P_ ((const char *, Lisp_Object)) NO_RETURN;
|
||||
extern int internal_delete_file P_ ((Lisp_Object, Lisp_Object));
|
||||
extern int internal_delete_file P_ ((Lisp_Object));
|
||||
extern void syms_of_fileio P_ ((void));
|
||||
extern Lisp_Object make_temp_name P_ ((Lisp_Object, int));
|
||||
EXFUN (Fmake_symbolic_link, 3);
|
||||
|
|
12
src/xdisp.c
12
src/xdisp.c
|
@ -14788,8 +14788,16 @@ redisplay_window (window, just_this_one_p)
|
|||
(*FRAME_TERMINAL (f)->redeem_scroll_bar_hook) (w);
|
||||
}
|
||||
|
||||
/* Restore current_buffer and value of point in it. */
|
||||
TEMP_SET_PT_BOTH (CHARPOS (opoint), BYTEPOS (opoint));
|
||||
/* Restore current_buffer and value of point in it. The window
|
||||
update may have changed the buffer, so first make sure `opoint'
|
||||
is still valid (Bug#6177). */
|
||||
if (CHARPOS (opoint) < BEGV)
|
||||
TEMP_SET_PT_BOTH (BEGV, BEGV_BYTE);
|
||||
else if (CHARPOS (opoint) > ZV)
|
||||
TEMP_SET_PT_BOTH (Z, Z_BYTE);
|
||||
else
|
||||
TEMP_SET_PT_BOTH (CHARPOS (opoint), BYTEPOS (opoint));
|
||||
|
||||
set_buffer_internal_1 (old);
|
||||
/* Avoid an abort in TEMP_SET_PT_BOTH if the buffer has become
|
||||
shorter. This can be caused by log truncation in *Messages*. */
|
||||
|
|
Loading…
Add table
Reference in a new issue