auto-import changelog data from emacs-21.2-33.src.rpm

Thu Feb 20 2003 Jens Petersen <petersen@redhat.com> - 21.2-33
- default browse-url to use htmlview (#84262)
- remove info dir file rather than excluding it
Sat Feb 08 2003 Jens Petersen <petersen@redhat.com> - 21.2-32
- set X copy'n'paste encoding to extended compound-text (#74100) by default
    in .emacs file [suggested by olonho@hotmail.com]
- .emacs file cleanup (xemacs now has a separate init file)
Fri Feb 07 2003 Jens Petersen <petersen@redhat.com> - 21.2-31
- block input in allocate_vectorlike to prevent malloc hangs (#83600)
    [thanks to Jim Blandy]
- set startup wmclass notify in desktop file
Wed Jan 22 2003 Tim Powers <timp@redhat.com>
- rebuilt
Wed Jan 15 2003 Jens Petersen <petersen@redhat.com> 21.2-29
- update to newer po-mode.el and po-compat.el from gettext-0.11.4
- patch po-mode's po-replace-revision-date for when
    po-auto-replace-revision-date is nil (#71264)
- update po-mode-init.el
- examine LC_ALL before LC_CTYPE in site-start.el for utf-8 (#79535)
- don't install etc/DOC files explicitly by hand
- make sure all lisp .elc files are up to date
- pass _smp_mflags to make
- remove games that we shouldn't ship
Mon Jan 13 2003 Karsten Hopp <karsten@redhat.de> 21.2-28
- s390x lib64 fix
Fri Jan 03 2003 Jens Petersen <petersen@redhat.com> 21.2-27
- look at LANG after LC_CTYPE when checking for UTF-8 locale encoding in
    site-start.el (#79535)
- don't set desktop file config(noreplace)
Fri Dec 20 2002 Jens Petersen <petersen@redhat.com> 21.2-26
- unset the sticky bit of emacs in bindir (#80049)
Wed Dec 18 2002 Jens Petersen <petersen@redhat.com> 21.2-25
- no need to patch config.{sub,guess}
Tue Dec 03 2002 Tim Waugh <twaugh@redhat.com>
- Fix python-mode-init.el (bug #78910).
Sun Dec 01 2002 Jens Petersen <petersen@redhat.com> 21.2-24
- rpm-spec-mode update fixes
- patch in XEmacs compat functions rather than defining them with apel
    macros in init file (#78764)
- autoload "rpm-spec-mode" not "rpm-spec-mode.el" in same file
- let emacs base also own leim dir to avoid startup warning about missing
    dir when -el and -leim aren't installed (#78764)
Thu Nov 28 2002 Jens Petersen <petersen@redhat.com>
- use LC_CTYPE rather than LANG to determine default encoding (#78678)
    [reported by starback@stp.ling.uu.se]
Wed Nov 27 2002 Jens Petersen <petersen@redhat.com> 21.2-23
- set transient-mark-mode in dotemacs for Emacs not XEmacs (#75440)
- update rpm-spec-mode.el to 0.12
- define needed XEmacs compat functions in new rpm-spec-mode-init.el
- tidy site-start.el
- move python-mode setup to python-mode
- don't build with sbin in path
- use _libexecdir, _bindir and _sysconfdir
- don't gzip info files explicitly
- use tar's C and j options
- generate lisp file-lists in single find sweeps over lisp and leim dirs
- use -fprint and -fprintf
- correct more dir ownerships
Sun Nov 24 2002 Florian La Roche <Florian.LaRoche@redhat.de> 21.2-22
- add correct alloca defines for s390
Wed Nov 06 2002 Jens Petersen <petersen@redhat.com> 21.2-21
- uses patches for x86_64 and s390 support and config.{guess,sub} updating
Tue Nov 05 2002 Jens Petersen <petersen@redhat.com> 21.2-20
- add support for x86_64 and merge in s390 support from cvs
- add alloca defines to amdx86-64.h (from SuSE)
Wed Oct 30 2002 Jens Petersen <petersen@redhat.com> 21.2-19
- own our libexec dir (#73984)
- only set transient-mark-mode in dotemacs for Emacs (#75440)
- update to latest config.{guess,sub}
- use _datadir macro
This commit is contained in:
cvsdist 2004-09-09 04:35:28 +00:00
parent 43fd20cb91
commit d31aa3654e
11 changed files with 885 additions and 657 deletions

View File

@ -31,5 +31,4 @@ Terminal=0
MapNotify=false MapNotify=false
Categories=TextEditor;Development;X-Red-Hat-Base;Application; Categories=TextEditor;Development;X-Red-Hat-Base;Application;
Encoding=UTF-8 Encoding=UTF-8
StartupWMClass=Emacs

View File

@ -1,8 +1,9 @@
# [for (x)emacs] -*- coding: utf-8 -*- # This file is encoded in UTF-8. -*- coding: utf-8 -*-
Summary: The libraries needed to run the GNU Emacs text editor. Summary: The libraries needed to run the GNU Emacs text editor.
Name: emacs Name: emacs
Version: 21.2 Version: 21.2
Release: 18 Release: 33
License: GPL License: GPL
URL: http://www.gnu.org/software/emacs/ URL: http://www.gnu.org/software/emacs/
Group: Applications/Editors Group: Applications/Editors
@ -20,17 +21,26 @@ Source10: ftp://ftp.gnu.org/gnu/emacs/elisp-manual-21-2.8.tar.bz2
Source11: php-mode.el Source11: php-mode.el
Source12: php-mode-init.el Source12: php-mode-init.el
Source13: ssl.el Source13: ssl.el
Source14: po-mode.el Source16: python-mode-init.el
Source15: po-mode-init.el Source17: rpm-spec-mode-init.el
Source18: rpm-spec-mode.el-0.14-xemacs-compat.patch
Source20: po-mode.el
Source21: po-compat.el
Source22: po-mode-init.el
Source23: po-mode-auto-replace-date-71264.patch
Patch1: emacs-21.2-pop.patch Patch1: emacs-21.2-pop.patch
Patch50: emacs-21.2-s390.patch Patch2: emacs-21.2-s390.patch
Patch3: emacs-21.2-x86_64.patch
Patch4: emacs-21.2-sticky-bit-80049.patch
Patch5: emacs-21.2-s390x.patch
Patch6: emacs-21.2-menubar-games.patch
Patch7: emacs-21.2-alloc-blockinput-83600.patch
Patch8: browse-url-htmlview-84262.patch
Buildroot: %{_tmppath}/%{name}-%{version}-root Buildroot: %{_tmppath}/%{name}-%{version}-root
Prereq: /sbin/install-info Prereq: /sbin/install-info, dev
BuildRequires: glibc-devel gcc XFree86-devel bzip2 ncurses-devel BuildRequires: glibc-devel, gcc, XFree86-devel, bzip2, ncurses-devel, zlib-devel, libpng-devel, libjpeg-devel, libungif-devel, libtiff-devel
BuildRequires: zlib-devel libpng-devel libjpeg-devel libungif-devel libtiff-devel Obsoletes: emacs-nox, emacs-X11
Obsoletes: emacs-nox emacs-X11
Conflicts: gettext < 0.10.40 Conflicts: gettext < 0.10.40
Prereq: dev
%description %description
Emacs is a powerful, customizable, self-documenting, modeless text Emacs is a powerful, customizable, self-documenting, modeless text
@ -69,133 +79,102 @@ non-English character set. Input methods for many different character
sets are included in this package. sets are included in this package.
%prep %prep
%setup -q -b 1 %setup -q -b 1
%patch1 -p1 -b .pop
%patch1 -p1 %patch2 -p1 -b .s390
%patch3 -p1 -b .hammer
%ifarch s390 s390x %patch4 -p1 -b .sticky
%patch50 -p1 -b .s390 %patch5 -p1 -b .s390x
%endif # remove game we can't ship
%patch6 -p1
rm lisp/finder-inf.el lisp/play/tetris.el*
# block input in `allocate_vectorlike' (alloc.c)
%patch7 -p1 -b .block
# make browse-url default to htmlview not netscape
%patch8 -p1 -b .htmlview
# patches 2 and 3 touch configure.in
autoconf-2.13
%build %build
export CFLAGS="-DMAIL_USE_LOCKF $RPM_OPT_FLAGS" export CFLAGS="-DMAIL_USE_LOCKF $RPM_OPT_FLAGS"
#to find installinfo
export PATH="$PATH:/sbin:/usr/sbin"
%configure --with-gcc --with-pop --with-sound %configure --with-gcc --with-pop --with-sound
make make %{?_smp_mflags}
# remove versioned file so that we end up with .1 suffix and only one DOC file
rm src/emacs-%{version}.*
# make sure patched lisp files get byte-compiled
src/emacs -batch -f batch-byte-recompile-directory lisp
make %{?_smp_mflags} -C lisp updates
%define emacsbatch src/emacs -batch --no-init-file --no-site-file
%define recompile src/emacs -batch --no-init-file --no-site-file -f batch-byte-compile
# recompile patched .el files
%{recompile} lisp/mail/mh-utils.el lisp/progmodes/make-mode.el
# bytecompile python-mode, ssl, php-mode and rpm-spec-mode # bytecompile python-mode, ssl, php-mode and rpm-spec-mode
cp %SOURCE7 %SOURCE8 %SOURCE11 %SOURCE13 %SOURCE14 . cp %SOURCE7 %SOURCE8 %SOURCE11 %SOURCE13 %SOURCE20 %SOURCE21 .
%{recompile} python-mode.el rpm-spec-mode.el php-mode.el ssl.el po-mode.el
# xemacs compat patch
patch < %SOURCE18
# fix po-auto-replace-revision-date nil
patch < %SOURCE23
%{emacsbatch} -f batch-byte-compile *.el
%install %install
rm -rf $RPM_BUILD_ROOT rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT/usr
mkdir -p $RPM_BUILD_ROOT/usr/share/emacs/site-lisp/site-start.d
mkdir -p $RPM_BUILD_ROOT/%{_infodir}
%makeinstall %makeinstall
#install lisp files for Japanese and other Asian languages # make sure movemail isn't setgid
pushd $RPM_BUILD_ROOT chmod 755 $RPM_BUILD_ROOT%{_libexecdir}/emacs/%{version}/*/movemail
tar --use-compress-program=bzip2 -xf %{SOURCE9}
popd
rm -f $RPM_BUILD_ROOT/%{_infodir}/dir # install lisp files for Japanese and other Asian languages
gzip -9nf $RPM_BUILD_ROOT/%{_infodir}/* tar jxC $RPM_BUILD_ROOT -f %{SOURCE9}
install -m 644 %SOURCE6 $RPM_BUILD_ROOT/usr/share/emacs/site-lisp/site-start.el rm -f $RPM_BUILD_ROOT%{_infodir}/dir
mkdir -p $RPM_BUILD_ROOT/usr/share/emacs/site-lisp mkdir -p $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp
install -m 0644 %SOURCE6 $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/site-start.el
mv $RPM_BUILD_ROOT%{_mandir}/man1/ctags.1 $RPM_BUILD_ROOT%{_mandir}/man1/gctags.1 mv $RPM_BUILD_ROOT%{_mandir}/man1/ctags.1 $RPM_BUILD_ROOT%{_mandir}/man1/gctags.1
mv $RPM_BUILD_ROOT/usr/bin/ctags $RPM_BUILD_ROOT/usr/bin/gctags mv $RPM_BUILD_ROOT%{_bindir}/ctags $RPM_BUILD_ROOT%{_bindir}/gctags
# GNOME / KDE files # GNOME / KDE files
mkdir -p $RPM_BUILD_ROOT/usr/share/applications mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
install -c -m 0644 %SOURCE3 $RPM_BUILD_ROOT/usr/share/applications/gnu-emacs.desktop install -m 0644 %SOURCE3 $RPM_BUILD_ROOT%{_datadir}/applications/gnu-emacs.desktop
mkdir -p $RPM_BUILD_ROOT/usr/share/pixmaps mkdir -p $RPM_BUILD_ROOT%{_datadir}/pixmaps
install -c -m 0644 %SOURCE4 $RPM_BUILD_ROOT/usr/share/pixmaps/ install -m 0644 %SOURCE4 $RPM_BUILD_ROOT%{_datadir}/pixmaps/
mkdir -p $RPM_BUILD_ROOT/usr/share/emacs/%{version}/etc # install site-lisp files
install -c -m644 etc/DOC-* $RPM_BUILD_ROOT/usr/share/emacs/%{version}/etc install -m 0644 *.el *.elc $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/
# Python mode, php mode and rpm-spec mode mkdir -p $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/site-start.d
install -m 0644 $RPM_SOURCE_DIR/*-init.el $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/site-start.d
install -c -m0644 po-mode.el po-mode.elc php-mode.el php-mode.elc python-mode.el python-mode.elc rpm-spec-mode.el rpm-spec-mode.elc ssl.el ssl.elc $RPM_BUILD_ROOT/usr/share/emacs/site-lisp/
install -m0644 %SOURCE12 $RPM_BUILD_ROOT/usr/share/emacs/site-lisp/site-start.d/php-mode-init.el
install -m0644 %SOURCE15 $RPM_BUILD_ROOT/usr/share/emacs/site-lisp/site-start.d/po-mode-init.el
# default initialization file # default initialization file
mkdir -p $RPM_BUILD_ROOT/etc/skel mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/skel
install -c -m0644 %SOURCE5 $RPM_BUILD_ROOT/etc/skel/.emacs install -m 0644 %SOURCE5 $RPM_BUILD_ROOT%{_sysconfdir}/skel/.emacs
# elisp reference manual
tar jxf %{SOURCE10}
pushd elisp-manual-21-2.8
install -m 644 elisp elisp-? elisp-?? $RPM_BUILD_ROOT%{_infodir}
popd
# #
# create file lists # create file lists
# #
SRC_TOP=$PWD
rm -f *-filelist {base,el,leim}-*-files
pushd $RPM_BUILD_ROOT
# Remove ctags find .%{_datadir}/emacs/%{version}/lisp \( -type f -not -name '*.el' -fprint $SRC_TOP/base-lisp-none-elc-files \) -o \( -type d -fprintf $SRC_TOP/base-lisp-dir-files "%%%%dir %%p\n" \) -o \( -name '*.el' \( -exec test -e '{}'c \; -fprint $SRC_TOP/el-bytecomped-files -o -fprint $SRC_TOP/base-not-comped-files \) \)
rm -f $RPM_BUILD_ROOT/usr/bin/ctags find .%{_datadir}/emacs/%{version}/leim \( -name '*.elc' -fprint $SRC_TOP/leim-elc-files \) -o \( -type d -fprintf $SRC_TOP/leim-dir-files "%%%%dir %%p\n" -fprintf $SRC_TOP/el-leim-dir-files "%%%%dir %%p\n" \) -o \( -name '*.el' \( -exec test -e '{}'c \; -fprint $SRC_TOP/el-leim-bytecomped-files -o -fprint $SRC_TOP/leim-not-comped-files \) \)
rm -f $RPM_BUILD_ROOT/%{_mandir}/man1/*ctags*
rm -f $RPM_BUILD_ROOT/usr/share/emacs/%{version}/etc/ctags*
# The elisp reference manual
bzcat %{SOURCE10} | tar xf -
pushd elisp-manual-21-2.8
install -m 644 elisp elisp-? elisp-?? $RPM_BUILD_ROOT/%{_infodir}
popd popd
find $RPM_BUILD_ROOT/usr/share/emacs/%{version}/lisp -type f\ # put the lists together filtering ./usr to /usr
-not -name '*.el' -print | sed "s^$RPM_BUILD_ROOT^^" > core-filelist cat base-*-files | sed "s|\.%{_prefix}|%{_prefix}|" > base-filelist
find $RPM_BUILD_ROOT/usr/share/emacs/%{version}/lisp \ cat el-*-files | sed "s|\.%{_prefix}|%{_prefix}|" > el-filelist
-type d -printf "%%%%dir %%p\n" | sed "s^$RPM_BUILD_ROOT^^" >> core-filelist cat leim-*-files | sed "s|\.%{_prefix}|%{_prefix}|" > leim-filelist
# Include .el files which lack a corresponding byte compiled form
for I in `find $RPM_BUILD_ROOT/usr/share/emacs/%{version}/lisp \
-name '*.el'`; do
if [ ! -e `dirname $I`/`basename $I .el`.elc ]; then
echo $I | sed "s^$RPM_BUILD_ROOT^^"
fi
done >> core-filelist
# Include all non elisp files which emacs installs
#find $RPM_BUILD_ROOT/usr/share/emacs/%{version}/lisp -type f | \
# sed "s^$RPM_BUILD_ROOT^^" | grep -v "\.el\(c\)\?$" >> core-filelist
find $RPM_BUILD_ROOT/usr/share/emacs/%{version}/leim \
-name '*.elc' -print | sed "s^$RPM_BUILD_ROOT^^" > leim-filelist
find $RPM_BUILD_ROOT/usr/share/emacs/%{version}/leim \
-mindepth 1 -type d -printf "%%%%dir %%p\n" | \
sed "s^$RPM_BUILD_ROOT^^" >> leim-filelist
#
# be sure to exclude some files which are needed in the core package
#
for I in `find $RPM_BUILD_ROOT/usr/share/emacs/%{version}/lisp \
-name '*.el'`; do
if [ -e `dirname $I`/`basename $I .el`.elc ]; then
echo $I | sed "s^$RPM_BUILD_ROOT^^"
fi
done >> el-filelist
find $RPM_BUILD_ROOT/usr/share/emacs/%{version}/leim \
-name '*.el' -print | sed "s^$RPM_BUILD_ROOT^^" |\
grep -v "leim\/leim-list.el" >> el-filelist
%clean %clean
rm -rf $RPM_BUILD_ROOT rm -rf $RPM_BUILD_ROOT
@ -215,51 +194,133 @@ done
fi fi
%files -f core-filelist %files -f base-filelist
%defattr(-,root,root) %defattr(-,root,root)
%config(noreplace) /etc/skel/.emacs %config(noreplace) %{_sysconfdir}/skel/.emacs
%doc etc/NEWS BUGS README %doc etc/NEWS BUGS README
/usr/bin/* %{_bindir}/*
%{_mandir}/*/* %{_mandir}/*/*
%{_infodir}/* %{_infodir}/*
/usr/share/emacs/site-lisp/python-mode.elc %dir %{_datadir}/emacs
/usr/share/emacs/site-lisp/php-mode.elc %dir %{_datadir}/emacs/site-lisp
/usr/share/emacs/site-lisp/po-mode.elc %{_datadir}/emacs/site-lisp/python-mode.elc
/usr/share/emacs/site-lisp/rpm-spec-mode.elc %{_datadir}/emacs/site-lisp/php-mode.elc
/usr/share/emacs/site-lisp/ssl.elc %{_datadir}/emacs/site-lisp/po-*.elc
/usr/share/emacs/site-lisp/subdirs.el %{_datadir}/emacs/site-lisp/rpm-spec-mode.elc
/usr/share/emacs/site-lisp/site-start.d/lang.emacs.el %{_datadir}/emacs/site-lisp/ssl.elc
/usr/share/emacs/site-lisp/site-start.d/php-mode-init.el %{_datadir}/emacs/site-lisp/subdirs.el
/usr/share/emacs/site-lisp/site-start.d/po-mode-init.el %{_datadir}/emacs/site-lisp/site-start.d/*.el
/usr/share/emacs/site-lisp/lang %{_datadir}/emacs/site-lisp/lang
/usr/share/emacs/%{version}/site-lisp/subdirs.el %dir %{_datadir}/emacs/%{version}
%{_datadir}/emacs/%{version}/etc
%dir /usr/share/emacs # quieten startup when -leim and -el aren't installed
%dir /usr/share/emacs/site-lisp %dir %{_datadir}/emacs/%{version}/leim
%dir /usr/share/emacs/%{version} %{_datadir}/emacs/%{version}/site-lisp
%dir /usr/share/emacs/%{version}/* %{_libexecdir}/emacs
/usr/share/emacs/%{version}/etc/* %attr(0644,root,root) %config %{_datadir}/emacs/site-lisp/site-start.el
/usr/libexec/emacs/%{version}/*/* %dir %{_datadir}/emacs/site-lisp/site-start.d
%attr(0755,root,root) /usr/libexec/emacs/%{version}/*/movemail %{_datadir}/applications/gnu-emacs.desktop
%attr(0644,root,root) %config /usr/share/emacs/site-lisp/site-start.el %{_datadir}/pixmaps/emacs.png
%dir /usr/share/emacs/site-lisp/site-start.d
%config(noreplace) /usr/share/applications/gnu-emacs.desktop
/usr/share/pixmaps/emacs.png
%files -f el-filelist el %files -f el-filelist el
%defattr(-,root,root) %defattr(-,root,root)
/usr/share/emacs/site-lisp/python-mode.el %{_datadir}/emacs/site-lisp/python-mode.el
/usr/share/emacs/site-lisp/php-mode.el %{_datadir}/emacs/site-lisp/php-mode.el
/usr/share/emacs/site-lisp/po-mode.el %{_datadir}/emacs/site-lisp/po-*.el
/usr/share/emacs/site-lisp/ssl.el %{_datadir}/emacs/site-lisp/ssl.el
/usr/share/emacs/site-lisp/rpm-spec-mode.el %{_datadir}/emacs/site-lisp/rpm-spec-mode.el
%files -f leim-filelist leim %files -f leim-filelist leim
%defattr(-,root,root) %defattr(-,root,root)
/usr/share/emacs/%{version}/leim/leim-list.el
%dir /usr/share/emacs/%{version}/leim
%changelog %changelog
* Thu Feb 20 2003 Jens Petersen <petersen@redhat.com> - 21.2-33
- default browse-url to use htmlview (#84262)
- remove info dir file rather than excluding it
* Sat Feb 8 2003 Jens Petersen <petersen@redhat.com> - 21.2-32
- set X copy'n'paste encoding to extended compound-text (#74100)
by default in .emacs file [suggested by olonho@hotmail.com]
- .emacs file cleanup (xemacs now has a separate init file)
* Fri Feb 7 2003 Jens Petersen <petersen@redhat.com> - 21.2-31
- block input in allocate_vectorlike to prevent malloc hangs (#83600)
[thanks to Jim Blandy]
- set startup wmclass notify in desktop file
* Wed Jan 22 2003 Tim Powers <timp@redhat.com>
- rebuilt
* Wed Jan 15 2003 Jens Petersen <petersen@redhat.com> 21.2-29
- update to newer po-mode.el and po-compat.el from gettext-0.11.4
- patch po-mode's po-replace-revision-date for when
po-auto-replace-revision-date is nil (#71264)
- update po-mode-init.el
- examine LC_ALL before LC_CTYPE in site-start.el for utf-8 (#79535)
- don't install etc/DOC files explicitly by hand
- make sure all lisp .elc files are up to date
- pass _smp_mflags to make
- remove games that we shouldn't ship
* Mon Jan 13 2003 Karsten Hopp <karsten@redhat.de> 21.2-28
- s390x lib64 fix
* Fri Jan 3 2003 Jens Petersen <petersen@redhat.com> 21.2-27
- look at LANG after LC_CTYPE when checking for UTF-8 locale encoding
in site-start.el (#79535)
- don't set desktop file config(noreplace)
* Fri Dec 20 2002 Jens Petersen <petersen@redhat.com> 21.2-26
- unset the sticky bit of emacs in bindir (#80049)
* Wed Dec 18 2002 Jens Petersen <petersen@redhat.com> 21.2-25
- no need to patch config.{sub,guess}
* Tue Dec 3 2002 Tim Waugh <twaugh@redhat.com>
- Fix python-mode-init.el (bug #78910).
* Sun Dec 1 2002 Jens Petersen <petersen@redhat.com> 21.2-24
- rpm-spec-mode update fixes
- patch in XEmacs compat functions rather than defining them with apel
macros in init file (#78764)
- autoload "rpm-spec-mode" not "rpm-spec-mode.el" in same file
- let emacs base also own leim dir to avoid startup warning about missing dir
when -el and -leim aren't installed (#78764)
* Thu Nov 28 2002 Jens Petersen <petersen@redhat.com>
- use LC_CTYPE rather than LANG to determine default encoding (#78678)
[reported by starback@stp.ling.uu.se]
* Wed Nov 27 2002 Jens Petersen <petersen@redhat.com> 21.2-23
- set transient-mark-mode in dotemacs for Emacs not XEmacs (#75440)
- update rpm-spec-mode.el to 0.12
- define needed XEmacs compat functions in new rpm-spec-mode-init.el
- tidy site-start.el
- move python-mode setup to python-mode
- don't build with sbin in path
- use _libexecdir, _bindir and _sysconfdir
- don't gzip info files explicitly
- use tar's C and j options
- generate lisp file-lists in single find sweeps over lisp and leim dirs
- use -fprint and -fprintf
- correct more dir ownerships
* Sun Nov 24 2002 Florian La Roche <Florian.LaRoche@redhat.de> 21.2-22
- add correct alloca defines for s390
* Wed Nov 6 2002 Jens Petersen <petersen@redhat.com> 21.2-21
- uses patches for x86_64 and s390 support and config.{guess,sub} updating
* Tue Nov 5 2002 Jens Petersen <petersen@redhat.com> 21.2-20
- add support for x86_64 and merge in s390 support from cvs
- add alloca defines to amdx86-64.h (from SuSE)
* Wed Oct 30 2002 Jens Petersen <petersen@redhat.com> 21.2-19
- own our libexec dir (#73984)
- only set transient-mark-mode in dotemacs for Emacs (#75440)
- update to latest config.{guess,sub}
- use _datadir macro
* Wed Aug 28 2002 Trond Eivind Glomsrød <teg@redhat.com> 21.2-18 * Wed Aug 28 2002 Trond Eivind Glomsrød <teg@redhat.com> 21.2-18
- Desktop file fix - add Application to make it show up - Desktop file fix - add Application to make it show up
- DNS lookup fix for pop (#64802) - DNS lookup fix for pop (#64802)
@ -271,7 +332,7 @@ fi
- Handle UTF-8 input (#70855). - Handle UTF-8 input (#70855).
* Tue Aug 6 2002 Trond Eivind Glomsrød <teg@redhat.com> 21.2-15 * Tue Aug 6 2002 Trond Eivind Glomsrød <teg@redhat.com> 21.2-15
- Don't use canna by default (# 70870) - Don't use canna by default (#70870)
* Thu Aug 1 2002 Trond Eivind Glomsrød <teg@redhat.com> 21.2-14 * Thu Aug 1 2002 Trond Eivind Glomsrød <teg@redhat.com> 21.2-14
- Fixes to desktop file (add encoding, add missing a ";") - Fixes to desktop file (add encoding, add missing a ";")

View File

@ -1,6 +1,6 @@
;; Use php-mode for .php,.php3,.php4 and .phtml files ;; Use php-mode for .php,.php3,.php4 and .phtml files
(autoload 'php-mode "php-mode") (autoload 'php-mode "php-mode")
(setq auto-mode-alist (cons '("\\.php[34]\\'\\|\\.php\\'\\|\\.phtml\\'" . php-mode) (add-to-list 'auto-mode-alist
auto-mode-alist)) '("\\.php[34]\\'\\|\\.php\\'\\|\\.phtml\\'" . php-mode))

View File

@ -0,0 +1,13 @@
diff -u po-mode.el~ po-mode.el
--- po-mode.el~ 2003-01-16 01:44:50.000000000 +0900
+++ po-mode.el 2003-01-16 01:44:50.000000000 +0900
@@ -1267,8 +1267,7 @@
(concat "\"PO-Revision-Date: "
(format-time-string "%Y-%m-%d %H:%M" time)
zone "\\n\"")
- t t))))
- (message ""))
+ t t)))))
(message (_"PO-Revision-Date should be adjusted..."))))
;;; Handling span of entry, entry type and entry attributes.

View File

@ -1,12 +1,9 @@
;; Use po-mode for translation files ;; Use po-mode for translation files
(autoload 'po-mode "po-mode") (autoload 'po-mode "po-mode"
(setq auto-mode-alist (cons '("\\.po[tx]?\\'\\|\\.po\\." . po-mode) "Major mode for translators to edit PO files" t)
auto-mode-alist)) (add-to-list 'auto-mode-alist '("\\.po\\'\\|\\.po\\." . po-mode))
;;; To automatically use proper fonts under Emacs 20, also add:
(autoload 'po-find-file-coding-system "po-mode")
(modify-coding-system-alist 'file "\\.po[tx]?\\'\\|\\.po\\."
'po-find-file-coding-system)
(autoload 'po-find-file-coding-system "po-compat")
(modify-coding-system-alist 'file "\\.po\\'\\|\\.po\\."
'po-find-file-coding-system)

View File

@ -38,9 +38,10 @@
;; (setq auto-mode-alist (cons '("\\.po\\'\\|\\.po\\." . po-mode) ;; (setq auto-mode-alist (cons '("\\.po\\'\\|\\.po\\." . po-mode)
;; auto-mode-alist)) ;; auto-mode-alist))
;; ;;
;; To use the right coding system automatically under Emacs 20, also add: ;; To use the right coding system automatically under Emacs 20 or newer,
;; also add:
;; ;;
;; (autoload 'po-find-file-coding-system "po-mode") ;; (autoload 'po-find-file-coding-system "po-compat")
;; (modify-coding-system-alist 'file "\\.po\\'\\|\\.po\\." ;; (modify-coding-system-alist 'file "\\.po\\'\\|\\.po\\."
;; 'po-find-file-coding-system) ;; 'po-find-file-coding-system)
;; ;;
@ -49,6 +50,9 @@
;;; Code: ;;; Code:
(defconst po-mode-version-string "2.01" "\
Version number of this version of po-mode.el.")
;;; Emacs portability matters - part I. ;;; Emacs portability matters - part I.
;;; Here is the minimum for customization to work. See part II. ;;; Here is the minimum for customization to work. See part II.
@ -133,6 +137,23 @@ msgstr \"\"
:type 'string :type 'string
:group 'po) :group 'po)
(defcustom po-translation-project-address
"translation@iro.umontreal.ca"
"*Electronic mail address of the Translation Project.
Typing \\[po-send-mail] (normally bound to `M') the user will send the PO file
to this email address."
:type 'string
:group 'po)
(defcustom po-translation-project-mail-label "TP-Robot"
"*Subject label when sending the PO file to `po-translation-project-address'.
Don't change it when you send PO files to \"translation@iro.umontreal.ca\", the
Translation Project Robot at http://www.iro.umontreal.ca/contrib/po/HTML/. If
the label is different, your submission will be consiedered as a regular mail
and not stored at the TP site and also not forwarded to the package maintainer."
:type 'string
:group 'po)
(defcustom po-highlighting (or po-EMACS20 po-XEMACS) (defcustom po-highlighting (or po-EMACS20 po-XEMACS)
"*Highlight text whenever appropriate, when non-nil. "*Highlight text whenever appropriate, when non-nil.
However, on older Emacses, a yet unexplained highlighting bug causes files However, on older Emacses, a yet unexplained highlighting bug causes files
@ -160,6 +181,7 @@ slightly different."
("Albanian" . "sq") ("Albanian" . "sq")
("Amharic" . "am") ("Amharic" . "am")
("Arabic" . "ar") ("Arabic" . "ar")
("Argentinian" . "es_AR")
("Armenian" . "hy") ("Armenian" . "hy")
("Assamese" . "as") ("Assamese" . "as")
("Avestan" . "ae") ("Avestan" . "ae")
@ -180,6 +202,8 @@ slightly different."
("Chamorro" . "ch") ("Chamorro" . "ch")
("Chechen" . "ce") ("Chechen" . "ce")
("Chinese" . "zh") ("Chinese" . "zh")
("Chinese (simplified)" . "zh_CN")
("Chinese (traditional)" . "zh_TW")
("Church Slavic" . "cu") ("Church Slavic" . "cu")
("Chuvash" . "cv") ("Chuvash" . "cv")
("Cornish" . "kw") ("Cornish" . "kw")
@ -210,6 +234,7 @@ slightly different."
("Hiri Motu" . "ho") ("Hiri Motu" . "ho")
("Hungarian" . "hu") ("Hungarian" . "hu")
("Icelandic" . "is") ("Icelandic" . "is")
("Ido" . "io")
("Indonesian" . "id") ("Indonesian" . "id")
("Interlingua" . "ia") ("Interlingua" . "ia")
("Interlingue" . "ie") ("Interlingue" . "ie")
@ -218,7 +243,7 @@ slightly different."
("Irish" . "ga") ("Irish" . "ga")
("Italian" . "it") ("Italian" . "it")
("Japanese" . "ja") ("Japanese" . "ja")
("Javanese" . "jw") ("Javanese" . "jv")
("Kalaallisut" . "kl") ("Kalaallisut" . "kl")
("Kannada" . "kn") ("Kannada" . "kn")
("Kashmiri" . "ks") ("Kashmiri" . "ks")
@ -315,6 +340,7 @@ slightly different."
("Uzbek" . "uz") ("Uzbek" . "uz")
("Vietnamese" . "vi") ("Vietnamese" . "vi")
("Volapuk" . "vo") ("Volapuk" . "vo")
("Walloon" . "wa")
("Welsh" . "cy") ("Welsh" . "cy")
("Wolof" . "wo") ("Wolof" . "wo")
("Xhosa" . "xh") ("Xhosa" . "xh")
@ -618,8 +644,7 @@ No doubt that highlighting, when Emacs does not allow it, is a kludge."
(defun po-mode-version () (defun po-mode-version ()
"Show Emacs PO mode version." "Show Emacs PO mode version."
(interactive) (interactive)
(message (_"Emacs PO mode, version %s") (message (_"Emacs PO mode, version %s") po-mode-version-string))
(substring "$Revision: 1.1.1.1 $" 11 -2)))
(defconst po-help-display-string (defconst po-help-display-string
(_"\ (_"\
@ -650,55 +675,122 @@ M-S Ignore path M-A Ignore PO file *M-L Ignore lexicon
"Help page for PO mode.") "Help page for PO mode.")
(defconst po-mode-menu-layout (defconst po-mode-menu-layout
'("PO" `("PO"
("Moving around" ("Moving around"
["Auto select" po-auto-select-entry t] ["Auto select" po-auto-select-entry
,@(if (featurep 'xemacs) '(t)
'(:help "Jump to next interesting entry"))]
"---" "---"
"Forward" "Forward"
["Any next" po-next-entry t] ["Any next" po-next-entry
["Next translated" po-next-translated-entry t] ,@(if (featurep 'xemacs) '(t)
["Next fuzzy" po-next-fuzzy-entry t] '(:help "Jump to next entry"))]
["Next obsolete" po-next-obsolete-entry t] ["Next translated" po-next-translated-entry
["Next untranslated" po-next-untranslated-entry t] ,@(if (featurep 'xemacs) '(t)
["Last file entry" po-last-entry t] '(:help "Jump to next translated entry"))]
["Next fuzzy" po-next-fuzzy-entry
,@(if (featurep 'xemacs) '(t)
'(:help "Jump to next fuzzy entry"))]
["Next obsolete" po-next-obsolete-entry
,@(if (featurep 'xemacs) '(t)
'(:help "Jump to next obsolete entry"))]
["Next untranslated" po-next-untranslated-entry
,@(if (featurep 'xemacs) '(t)
'(:help "Jump to next untranslated entry"))]
["Last file entry" po-last-entry
,@(if (featurep 'xemacs) '(t)
'(:help "Jump to last entry"))]
"---" "---"
"Backward" "Backward"
["Any previous" po-previous-entry t] ["Any previous" po-previous-entry
["Previous translated" po-previous-translated-entry t] ,@(if (featurep 'xemacs) '(t)
["Previous fuzzy" po-previous-fuzzy-entry t] '(:help "Jump to previous entry"))]
["Previous obsolete" po-previous-obsolete-entry t] ["Previous translated" po-previous-translated-entry
["Previous untranslated" po-previous-untranslated-entry t] ,@(if (featurep 'xemacs) '(t)
["First file entry" po-first-entry t] '(:help "Jump to previous translated entry"))]
["Previous fuzzy" po-previous-fuzzy-entry
,@(if (featurep 'xemacs) '(t)
'(:help "Jump to previous fuzzy entry"))]
["Previous obsolete" po-previous-obsolete-entry
,@(if (featurep 'xemacs) '(t)
'(:help "Jump to previous obsolete entry"))]
["Previous untranslated" po-previous-untranslated-entry
,@(if (featurep 'xemacs) '(t)
'(:help "Jump to previous untranslated entry"))]
["First file entry" po-first-entry
,@(if (featurep 'xemacs) '(t)
'(:help "Jump to first entry"))]
"---" "---"
"Position stack" "Position stack"
["Mark and push current" po-push-location t] ["Mark and push current" po-push-location
["Pop and return" po-pop-location t] ,@(if (featurep 'xemacs) '(t)
["Exchange current/top" po-exchange-location t] '(:help "Remember current location"))]
["Pop and return" po-pop-location
,@(if (featurep 'xemacs) '(t)
'(:help "Jump to last remembered location and forget about it"))]
["Exchange current/top" po-exchange-location
,@(if (featurep 'xemacs) '(t)
'(:help "Jump to last remembered location and remember current location"))]
"---" "---"
["Redisplay" po-current-entry t] ["Redisplay" po-current-entry
["Current index" po-statistics t]) ,@(if (featurep 'xemacs) '(t)
'(:help "Make current entry properly visible"))]
["Current index" po-statistics
,@(if (featurep 'xemacs) '(t)
'(:help "Statistical info on current translation file"))])
("Modifying entries" ("Modifying entries"
["Undo" po-undo t] ["Undo" po-undo
,@(if (featurep 'xemacs) '(t)
'(:help "Revoke last changed entry"))]
"---" "---"
"Msgstr" "Msgstr"
["Edit msgstr" po-edit-msgstr t] ["Edit msgstr" po-edit-msgstr
["Ediff and merge msgstr" po-edit-msgstr-and-ediff t] ,@(if (featurep 'xemacs) '(t)
["Kill msgstr" po-kill-msgstr t] '(:help "Edit current translation"))]
["Save msgstr" po-kill-ring-save-msgstr t] ["Ediff and merge msgstr" po-edit-msgstr-and-ediff
["Yank msgstr" po-yank-msgstr t] ,@(if (featurep 'xemacs) '(t)
'(:help "Call `ediff' on current translation for merging"))]
["Cut msgstr" po-kill-msgstr
,@(if (featurep 'xemacs) '(t)
'(:help "Cut (kill) current translation"))]
["Copy msgstr" po-kill-ring-save-msgstr
,@(if (featurep 'xemacs) '(t)
'(:help "Copy current translation"))]
["Paste msgstr" po-yank-msgstr
,@(if (featurep 'xemacs) '(t)
'(:help "Paste (yank) text most recently cut/copied translation"))]
"---" "---"
"Comments" "Comments"
["Edit comment" po-edit-comment t] ["Edit comment" po-edit-comment
["Ediff and merge comment" po-edit-comment-and-ediff t] ,@(if (featurep 'xemacs) '(t)
["Kill comment" po-kill-comment t] '(:help "Edit current comment"))]
["Save comment" po-kill-ring-save-comment t] ["Ediff and merge comment" po-edit-comment-and-ediff
["Yank comment" po-yank-comment t] ,@(if (featurep 'xemacs) '(t)
'(:help "Call `ediff' on current comment for merging"))]
["Cut comment" po-kill-comment
,@(if (featurep 'xemacs) '(t)
'(:help "Cut (kill) current comment"))]
["Copy comment" po-kill-ring-save-comment
,@(if (featurep 'xemacs) '(t)
'(:help "Copy current translation"))]
["Paste comment" po-yank-comment
,@(if (featurep 'xemacs) '(t)
'(:help "Paste (yank) text most recently cut/copied"))]
"---" "---"
["Remove fuzzy mark" po-unfuzzy t] ["Remove fuzzy mark" po-unfuzzy
["Fuzzy or fade out" po-fade-out-entry t] ,@(if (featurep 'xemacs) '(t)
["Init with msgid" po-msgid-to-msgstr t]) '(:help "Remove \"#, fuzzy\""))]
["Fuzzy or fade out" po-fade-out-entry
,@(if (featurep 'xemacs) '(t)
'(:help "Set current entry fuzzy, or if already fuzzy delete it"))]
["Init with msgid" po-msgid-to-msgstr
,@(if (featurep 'xemacs) '(t)
'(:help "\
Initialize or replace current translation with the original message"))])
("Other files" ("Other files"
["Other window" po-other-window t] ["Other window" po-other-window
,@(if (featurep 'xemacs) '(t)
'(:help "Select other window; if necessay split current frame"))]
"---" "---"
"Program sources" "Program sources"
["Cycle reference" po-cycle-source-reference t] ["Cycle reference" po-cycle-source-reference t]
@ -729,120 +821,55 @@ M-S Ignore path M-A Ignore PO file *M-L Ignore lexicon
["Mark preferred" po-mark-translatable t] ["Mark preferred" po-mark-translatable t]
["Mark with keyword" po-select-mark-and-mark t] ["Mark with keyword" po-select-mark-and-mark t]
"---" "---"
["Version info" po-mode-version t] ["Version info" po-mode-version
["Help page" po-help t] ,@(if (featurep 'xemacs) '(t)
["Validate" po-validate t] '(:help "Display version number of PO mode"))]
["Mail officially" po-send-mail t] ["Help page" po-help
["Edit out full" po-edit-out-full t] ,@(if (featurep 'xemacs) '(t)
'(:help "Show the PO mode help screen"))]
["Validate" po-validate
,@(if (featurep 'xemacs) '(t)
'(:help "Check validity of current translation file using `msgfmt'"))]
["Mail officially" po-send-mail
,@(if (featurep 'xemacs) '(t)
'(:help "Send current translation file to the Translation Robot by mail"))]
["Edit out full" po-edit-out-full
,@(if (featurep 'xemacs) '(t)
'(:help "Leave PO mode to edit translation file using fundamental mode"))]
"---" "---"
["Forceful quit" po-quit t] ["Forceful quit" po-quit
["Soft quit" po-confirm-and-quit t]) ,@(if (featurep 'xemacs) '(t)
'(:help "Close (kill) current translation file without saving"))]
["Soft quit" po-confirm-and-quit
,@(if (featurep 'xemacs) '(t)
'(:help "Save current translation file, than close (kill) it"))])
"Menu layout for PO mode.") "Menu layout for PO mode.")
(defconst po-subedit-mode-menu-layout (defconst po-subedit-mode-menu-layout
'("PO-Edit" `("PO-Edit"
["Ediff and merge translation variants" po-subedit-ediff t] ["Ediff and merge translation variants" po-subedit-ediff
,@(if (featurep 'xemacs) '(t)
'(:help "Call `ediff' for merging variants"))]
["Cycle through auxiliary files" po-subedit-cycle-auxiliary t] ["Cycle through auxiliary files" po-subedit-cycle-auxiliary t]
"---" "---"
["Abort edit" po-subedit-abort t] ["Abort edit" po-subedit-abort
["Exit edit" po-subedit-exit t]) ,@(if (featurep 'xemacs) '(t)
'(:help "Don't change the translation"))]
["Exit edit" po-subedit-exit
,@(if (featurep 'xemacs) '(t)
'(:help "Use this text as the translation and close current edit buffer"))])
"Menu layout for PO subedit mode.") "Menu layout for PO subedit mode.")
(defconst po-subedit-message (defconst po-subedit-message
(_"Type 'C-c C-c' once done, or 'C-c C-k' to abort edit") (_"Type 'C-c C-c' once done, or 'C-c C-k' to abort edit")
"Message to post in the minibuffer when an edit buffer is displayed.") "Message to post in the minibuffer when an edit buffer is displayed.")
; Make the cpnnn codesets available.
(if po-EMACS20
(mapc #'codepage-setup (mapcar #'car (cp-supported-codepages))))
(defconst po-content-type-charset-alist
'(; Note: Emacs 21 doesn't support all encodings, thus the missing entries.
(ASCII . undecided)
(ANSI_X3.4-1968 . undecided)
(US-ASCII . undecided)
(ISO-8859-1 . iso-8859-1)
(ISO_8859-1 . iso-8859-1)
(ISO-8859-2 . iso-8859-2)
(ISO_8859-2 . iso-8859-2)
(ISO-8859-3 . iso-8859-3)
(ISO_8859-3 . iso-8859-3)
(ISO-8859-4 . iso-8859-4)
(ISO_8859-4 . iso-8859-4)
(ISO-8859-5 . iso-8859-5)
(ISO_8859-5 . iso-8859-5)
;(ISO-8859-6 . ??)
;(ISO_8859-6 . ??)
(ISO-8859-7 . iso-8859-7)
(ISO_8859-7 . iso-8859-7)
(ISO-8859-8 . iso-8859-8)
(ISO_8859-8 . iso-8859-8)
(ISO-8859-9 . iso-8859-9)
(ISO_8859-9 . iso-8859-9)
;(ISO-8859-13 . ??)
;(ISO_8859-13 . ??)
(ISO-8859-15 . iso-8859-15) ; requires Emacs 21
(ISO_8859-15 . iso-8859-15) ; requires Emacs 21
(KOI8-R . koi8-r)
;(KOI8-U . ??)
(CP437 . cp437) ; requires Emacs 20
(CP775 . cp775) ; requires Emacs 20
(CP850 . cp850) ; requires Emacs 20
(CP852 . cp852) ; requires Emacs 20
(CP855 . cp855) ; requires Emacs 20
;(CP856 . ??)
(CP857 . cp857) ; requires Emacs 20
(CP861 . cp861) ; requires Emacs 20
(CP862 . cp862) ; requires Emacs 20
(CP864 . cp864) ; requires Emacs 20
(CP865 . cp865) ; requires Emacs 20
(CP866 . cp866) ; requires Emacs 21
(CP869 . cp869) ; requires Emacs 20
;(CP874 . ??)
;(CP922 . ??)
;(CP932 . ??)
;(CP943 . ??)
;(CP949 . ??)
;(CP950 . ??)
;(CP1046 . ??)
;(CP1124 . ??)
;(CP1129 . ??)
(CP1250 . cp1250) ; requires Emacs 20
(CP1251 . cp1251) ; requires Emacs 20
(CP1252 . iso-8859-1) ; approximation
(CP1253 . cp1253) ; requires Emacs 20
(CP1254 . iso-8859-9) ; approximation
(CP1255 . iso-8859-8) ; approximation
;(CP1256 . ??)
(CP1257 . cp1257) ; requires Emacs 20
(GB2312 . cn-gb-2312) ; also named 'gb2312' in XEmacs 21 or Emacs 21
; also named 'euc-cn' in Emacs 20 or Emacs 21
(EUC-JP . euc-jp)
(EUC-KR . euc-kr)
;(EUC-TW . ??)
(BIG5 . big5)
;(BIG5-HKSCS . ??)
;(GBK . ??)
;(GB18030 . ??)
(SHIFT_JIS . shift_jis)
;(JOHAB . ??)
(TIS-620 . tis-620) ; requires Emacs 20 or Emacs 21
(VISCII . viscii) ; requires Emacs 20 or Emacs 21
(UTF-8 . utf-8) ; requires Mule-UCS in Emacs 20, or Emacs 21
)
"How to convert a GNU libc/libiconv canonical charset name as seen in
Content-Type into a Mule coding system.")
(defvar po-auxiliary-list nil (defvar po-auxiliary-list nil
"List of auxiliary PO files, in completing read format.") "List of auxiliary PO files, in completing read format.")
(defvar po-auxiliary-cursor nil (defvar po-auxiliary-cursor nil
"Cursor into the 'po-auxiliary-list'.") "Cursor into the 'po-auxiliary-list'.")
(defvar po-translation-project-address
"translation@iro.umontreal.ca"
"Electronic mail address of the Translation Project.")
(defvar po-compose-mail-function (defvar po-compose-mail-function
(let ((functions '(compose-mail-other-window (let ((functions '(compose-mail-other-window
message-mail-other-window message-mail-other-window
@ -913,70 +940,10 @@ Content-Type into a Mule coding system.")
;;; Mode activation. ;;; Mode activation.
(defun po-find-charset (filename) ;; Emacs 21.2 comes with po-find-file-coding-system. We give preference
"Return PO file charset value." ;; to the version shipped with Emacs.
(interactive) (if (not (fboundp 'po-find-file-coding-system))
(let ((charset-regexp (require 'po-compat))
"^\"Content-Type: text/plain;[ \t]*charset=\\(.*\\)\\\\n\"")
(short-read nil))
;; Try the first 4096 bytes. In case we cannot find the charset value
;; within the first 4096 bytes (the PO file might start with a long
;; comment) try the next 4096 bytes repeatedly until we'll know for sure
;; we've checked the empty header entry entirely.
(while (not (or short-read (re-search-forward "^msgid" nil t)))
(save-excursion
(goto-char (point-max))
(let ((pair (insert-file-contents-literally filename nil
(1- (point))
(1- (+ (point) 4096)))))
(setq short-read (< (nth 1 pair) 4096)))))
(cond (short-read nil)
((re-search-forward charset-regexp nil t) (match-string 1))
;; We've found the first msgid; maybe, only a part of the msgstr
;; value was loaded. Load the next 1024 bytes; if charset still
;; isn't available, give up.
(t (save-excursion
(goto-char (point-max))
(insert-file-contents-literally filename nil
(1- (point))
(1- (+ (point) 1024))))
(if (re-search-forward charset-regexp nil t)
(match-string 1))))))
(eval-and-compile
(if (or po-EMACS20 po-XEMACS)
(defun po-find-file-coding-system-guts (operation filename)
"\
Return a Mule (DECODING . ENCODING) pair, according to PO file charset.
Called through file-coding-system-alist, before the file is visited for real."
(and (eq operation 'insert-file-contents)
(po-with-temp-buffer
(let ((coding-system-for-read 'no-conversion))
(let* ((charset (or (po-find-charset filename)
"ascii"))
(charset-upper (intern (upcase charset)))
(charset-lower (intern (downcase charset))))
(list (or (cdr (assq charset-upper
po-content-type-charset-alist))
(if (memq charset-lower (coding-system-list))
charset-lower
'no-conversion)))))))))
(if po-EMACS20
(defun po-find-file-coding-system (arg-list)
"\
Return a Mule (DECODING . ENCODING) pair, according to PO file charset.
Called through file-coding-system-alist, before the file is visited for real."
(po-find-file-coding-system-guts (car arg-list) (car (cdr arg-list)))))
(if po-XEMACS
(defun po-find-file-coding-system (operation filename)
"\
Return a Mule (DECODING . ENCODING) pair, according to PO file charset.
Called through file-coding-system-alist, before the file is visited for real."
(po-find-file-coding-system-guts operation filename)))
)
(defvar po-mode-abbrev-table nil (defvar po-mode-abbrev-table nil
"Abbrev table used while in PO mode.") "Abbrev table used while in PO mode.")
@ -1127,8 +1094,12 @@ all reachable through 'M-x customize', in group 'Emacs.Editing.I18n.Po'."
;; Insert MODE-LINE-ENTRY in mode line, but on first load only. ;; Insert MODE-LINE-ENTRY in mode line, but on first load only.
(or (member po-mode-line-entry mode-line-format) (or (member po-mode-line-entry mode-line-format)
(let ((entry (member 'global-mode-string mode-line-format))) ;; mode-line-format usually contains global-mode-string, but some
(setcdr entry (cons po-mode-line-entry (cdr entry))))) ;; people customize this variable. As a last resort, append at the end.
(let ((prev-entry (or (member 'global-mode-string mode-line-format)
(member " " mode-line-format)
(last mode-line-format))))
(setcdr prev-entry (cons po-mode-line-entry (cdr prev-entry)))))
(defun po-update-mode-line-string () (defun po-update-mode-line-string ()
"Compute a new statistics string to display in mode line." "Compute a new statistics string to display in mode line."
@ -1182,33 +1153,34 @@ Then, update the mode line counters."
;; While counting, skip the header entry, for consistency with msgfmt. ;; While counting, skip the header entry, for consistency with msgfmt.
(po-find-span-of-entry) (po-find-span-of-entry)
(if (string-equal (po-get-msgid nil) "") (if (string-equal (po-get-msgid nil) "")
(if (po-next-entry) (goto-char po-end-of-entry))
(progn (if (re-search-forward "^msgid" (point-max) t)
;; Start counting (progn
(while (re-search-forward po-any-msgstr-regexp nil t) ;; Start counting
(and (= (% total 20) 0) (while (re-search-forward po-any-msgstr-regexp nil t)
(if flag (and (= (% total 20) 0)
(message (_"Position %d/%d") position total) (if flag
(message (_"Position %d") total))) (message (_"Position %d/%d") position total)
(setq here (point)) (message (_"Position %d") total)))
(goto-char (match-beginning 0)) (setq here (point))
(setq total (1+ total)) (goto-char (match-beginning 0))
(and flag (eq (point) current) (setq position total)) (setq total (1+ total))
(cond ((eq (following-char) ?#) (and flag (eq (point) current) (setq position total))
(setq po-obsolete-counter (1+ po-obsolete-counter))) (cond ((eq (following-char) ?#)
((looking-at po-untranslated-regexp) (setq po-obsolete-counter (1+ po-obsolete-counter)))
(setq po-untranslated-counter (1+ po-untranslated-counter))) ((looking-at po-untranslated-regexp)
(t (setq po-translated-counter (1+ po-translated-counter)))) (setq po-untranslated-counter (1+ po-untranslated-counter)))
(goto-char here)) (t (setq po-translated-counter (1+ po-translated-counter))))
(goto-char here))
;; Make another pass just for the fuzzy entries, kind of kludgey. ;; Make another pass just for the fuzzy entries, kind of kludgey.
;; FIXME: Counts will be wrong if untranslated entries are fuzzy, yet ;; FIXME: Counts will be wrong if untranslated entries are fuzzy, yet
;; this should not normally happen. ;; this should not normally happen.
(goto-char (point-min)) (goto-char (point-min))
(while (re-search-forward po-fuzzy-regexp nil t) (while (re-search-forward po-fuzzy-regexp nil t)
(setq po-fuzzy-counter (1+ po-fuzzy-counter))) (setq po-fuzzy-counter (1+ po-fuzzy-counter)))
(setq po-translated-counter (- po-translated-counter po-fuzzy-counter))) (setq po-translated-counter (- po-translated-counter po-fuzzy-counter)))
'()))) '()))
;; Push the results out. ;; Push the results out.
(if flag (if flag
@ -2078,8 +2050,10 @@ For more info cf. `po-subedit-ediff'."
(defun po-subedit-ediff () (defun po-subedit-ediff ()
"Edit the subedit buffer using `ediff'. "Edit the subedit buffer using `ediff'.
`po-subedit-ediff' calls `po-ediff-buffers-exit-recursive' to edit translation `po-subedit-ediff' calls `po-ediff-buffers-exit-recursive' to edit translation
variants side by side. `msgcat' is able to produce those variants; every variants side by side if they are actually different; if variants are equal just
variant is marked with: delete the first one.
`msgcat' is able to produce those variants; every variant is marked with:
#-#-#-#-# file name reference #-#-#-#-# #-#-#-#-# file name reference #-#-#-#-#
@ -2124,7 +2098,12 @@ When done with the `ediff' session press \\[exit-recursive-edit] exit to
(erase-buffer) (erase-buffer)
(insert-buffer-substring oldbuf start-2 end-2)) (insert-buffer-substring oldbuf start-2 end-2))
(po-ediff-buffers-exit-recursive buf1 buf2 oldbuf end-2))))) (if (not (string-equal (buffer-substring-no-properties start-1 end-1)
(buffer-substring-no-properties start-2 end-2)))
(po-ediff-buffers-exit-recursive buf1 buf2 oldbuf end-2)
(message "Variants are equal; delete %s" buf1)
(forward-line -1)
(delete-region (point-min) (point)))))))
(defun po-subedit-abort () (defun po-subedit-abort ()
"Exit the subedit buffer, merely discarding its contents." "Exit the subedit buffer, merely discarding its contents."
@ -3260,11 +3239,13 @@ Write to your team? ('n' if writing to the Translation Project robot) ")))
po-obsolete-counter)))) po-obsolete-counter))))
(let ((buffer (current-buffer)) (let ((buffer (current-buffer))
(name (po-guess-archive-name)) (name (po-guess-archive-name))
(transient-mark-mode nil)) (transient-mark-mode nil)
(coding-system-for-read buffer-file-coding-system)
(coding-system-for-write buffer-file-coding-system))
(apply po-compose-mail-function address (apply po-compose-mail-function address
(if team-flag (if team-flag
(read-string (_"Subject? ")) (read-string (_"Subject? "))
(format "TP-Robot %s" name)) (format "%s %s" po-translation-project-mail-label name))
nil) nil)
(goto-char (point-min)) (goto-char (point-min))
(re-search-forward (re-search-forward
@ -3328,4 +3309,6 @@ strings remain."
(save-buffer) (save-buffer)
(kill-buffer (current-buffer))))))) (kill-buffer (current-buffer)))))))
(provide 'po-mode)
;;; po-mode.el ends here ;;; po-mode.el ends here

6
python-mode-init.el Normal file
View File

@ -0,0 +1,6 @@
;; setup python support
(autoload 'python-mode "python-mode" "Python mode." t)
(autoload 'py-shell "python-mode" "Python shell mode." t)
(add-to-list 'auto-mode-alist '("\\.py$" . python-mode))
(add-to-list 'interpreter-mode-alist '("python" . python-mode))

4
rpm-spec-mode-init.el Normal file
View File

@ -0,0 +1,4 @@
;; rpm-spec-mode for spec files
(autoload 'rpm-spec-mode "rpm-spec-mode" "RPM spec mode." t)
(add-to-list 'auto-mode-alist '("\\.spec$" . rpm-spec-mode))

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,43 @@
diff -u rpm-spec-mode.el~ rpm-spec-mode.el
--- rpm-spec-mode.el~ 2002-12-02 12:00:38.000000000 +0900
+++ rpm-spec-mode.el 2002-12-02 12:00:38.000000000 +0900
@@ -105,6 +105,10 @@
:type 'string
:group 'rpm-spec)
+;; XEmacs compatibility function
+(unless (fboundp 'define-obsolete-variable-alias)
+ (defalias 'define-obsolete-variable-alias 'make-obsolete-variable))
+
(define-obsolete-variable-alias
'rpm-completion-ignore-case 'rpm-spec-completion-ignore-case)
@@ -597,6 +601,14 @@
;;------------------------------------------------------------
+;; XEmacs compatibility function
+(unless (fboundp 'user-mail-address)
+ (defun user-mail-address ()
+ "Return value of `user-mail-address'.
+
+XEmacs sendmail compatibility function."
+ user-mail-address))
+
(defun rpm-add-change-log-entry (&optional change-log-entry)
"Find change log and add an entry for today."
(interactive "sChange log entry: ")
@@ -1117,6 +1129,13 @@
;;------------------------------------------------------------
+;; XEmacs compatibility function
+(unless (fboundp 'ignore-errors)
+ (defmacro ignore-errors (&rest body)
+ "Execute FORMS; if an error occurs, return nil.
+Otherwise, return result of last FORM."
+ `(condition-case nil (progn ,@body) (error nil))))
+
(defun rpm-spec-field-value (field max)
"Get the value of FIELD, searching up to buffer position MAX.
See `search-forward-regexp'."

View File

@ -1,33 +1,20 @@
;; Aspell is a replacement for ispell ;; aspell is a replacement for ispell (this duplicates of aspell-init.el)
(setq-default ispell-program-name "aspell") (setq-default ispell-program-name "aspell")
;; Add python support ;; load ".el" files in "/usr/share/emacs/site-lisp/site-start.d/" on startup
(require 'python-mode) (mapc 'load
(setq auto-mode-alist (directory-files "/usr/share/emacs/site-lisp/site-start.d" t "\\.el\\'"))
(cons '("\\.py$" . python-mode) auto-mode-alist))
(setq interpreter-mode-alist
(cons '("python" . python-mode) interpreter-mode-alist))
;; run functions from the /usr/share/emacs/site-lisp/site-start.d directory
;; Files in this directory ending with ".el" are run on startup
(mapc 'load (directory-files "/usr/share/emacs/site-lisp/site-start.d" t "\\.el\\'"))
;; Use the rpm-spec-mode for spec files
(require 'rpm-spec-mode)
(setq auto-mode-alist
(cons '("\\.spec$" . rpm-spec-mode) auto-mode-alist))
;; Enable utf-8 in locales using utf-8. In RHL, all of these end in .UTF-8
;; The utf-8 support in emacs is limited, problems can be expected - especially
;; outside latin1
(cond ((equal (substring (concat " " (getenv "LANG")) -5) "UTF-8")
(setq locale-coding-system 'utf-8)
(set-terminal-coding-system 'utf-8)
(set-keyboard-coding-system 'utf-8)
(set-selection-coding-system 'utf-8)
(prefer-coding-system 'utf-8)))
;; Enable utf-8 in locales using utf-8. In RHL, all of these end in ".UTF-8".
;; The utf-8 support in Emacs is limited, problems can be expected - especially
;; outside latin-1
(cond ((equal (substring (concat " " (or (getenv "LC_ALL")
(getenv "LC_CTYPE")
(getenv "LANG")))
-5)
"UTF-8")
(setq locale-coding-system 'utf-8)
(set-terminal-coding-system 'utf-8)
(set-keyboard-coding-system 'utf-8)
(set-selection-coding-system 'utf-8)
(prefer-coding-system 'utf-8)))