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
Categories=TextEditor;Development;X-Red-Hat-Base;Application;
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.
Name: emacs
Version: 21.2
Release: 18
Release: 33
License: GPL
URL: http://www.gnu.org/software/emacs/
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
Source12: php-mode-init.el
Source13: ssl.el
Source14: po-mode.el
Source15: po-mode-init.el
Source16: python-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
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
Prereq: /sbin/install-info
BuildRequires: glibc-devel gcc XFree86-devel bzip2 ncurses-devel
BuildRequires: zlib-devel libpng-devel libjpeg-devel libungif-devel libtiff-devel
Obsoletes: emacs-nox emacs-X11
Prereq: /sbin/install-info, dev
BuildRequires: glibc-devel, gcc, XFree86-devel, bzip2, ncurses-devel, zlib-devel, libpng-devel, libjpeg-devel, libungif-devel, libtiff-devel
Obsoletes: emacs-nox, emacs-X11
Conflicts: gettext < 0.10.40
Prereq: dev
%description
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.
%prep
%setup -q -b 1
%patch1 -p1
%ifarch s390 s390x
%patch50 -p1 -b .s390
%endif
%patch1 -p1 -b .pop
%patch2 -p1 -b .s390
%patch3 -p1 -b .hammer
%patch4 -p1 -b .sticky
%patch5 -p1 -b .s390x
# 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
export CFLAGS="-DMAIL_USE_LOCKF $RPM_OPT_FLAGS"
#to find installinfo
export PATH="$PATH:/sbin:/usr/sbin"
%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 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
%define emacsbatch src/emacs -batch --no-init-file --no-site-file
# bytecompile python-mode, ssl, php-mode and rpm-spec-mode
cp %SOURCE7 %SOURCE8 %SOURCE11 %SOURCE13 %SOURCE14 .
%{recompile} python-mode.el rpm-spec-mode.el php-mode.el ssl.el po-mode.el
cp %SOURCE7 %SOURCE8 %SOURCE11 %SOURCE13 %SOURCE20 %SOURCE21 .
# xemacs compat patch
patch < %SOURCE18
# fix po-auto-replace-revision-date nil
patch < %SOURCE23
%{emacsbatch} -f batch-byte-compile *.el
%install
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
#install lisp files for Japanese and other Asian languages
pushd $RPM_BUILD_ROOT
tar --use-compress-program=bzip2 -xf %{SOURCE9}
popd
# make sure movemail isn't setgid
chmod 755 $RPM_BUILD_ROOT%{_libexecdir}/emacs/%{version}/*/movemail
rm -f $RPM_BUILD_ROOT/%{_infodir}/dir
gzip -9nf $RPM_BUILD_ROOT/%{_infodir}/*
# install lisp files for Japanese and other Asian languages
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/usr/bin/ctags $RPM_BUILD_ROOT/usr/bin/gctags
mv $RPM_BUILD_ROOT%{_bindir}/ctags $RPM_BUILD_ROOT%{_bindir}/gctags
# GNOME / KDE files
mkdir -p $RPM_BUILD_ROOT/usr/share/applications
install -c -m 0644 %SOURCE3 $RPM_BUILD_ROOT/usr/share/applications/gnu-emacs.desktop
mkdir -p $RPM_BUILD_ROOT/usr/share/pixmaps
install -c -m 0644 %SOURCE4 $RPM_BUILD_ROOT/usr/share/pixmaps/
mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
install -m 0644 %SOURCE3 $RPM_BUILD_ROOT%{_datadir}/applications/gnu-emacs.desktop
mkdir -p $RPM_BUILD_ROOT%{_datadir}/pixmaps
install -m 0644 %SOURCE4 $RPM_BUILD_ROOT%{_datadir}/pixmaps/
mkdir -p $RPM_BUILD_ROOT/usr/share/emacs/%{version}/etc
install -c -m644 etc/DOC-* $RPM_BUILD_ROOT/usr/share/emacs/%{version}/etc
# install site-lisp files
install -m 0644 *.el *.elc $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/
# Python mode, php mode and rpm-spec mode
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
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
# default initialization file
mkdir -p $RPM_BUILD_ROOT/etc/skel
install -c -m0644 %SOURCE5 $RPM_BUILD_ROOT/etc/skel/.emacs
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/skel
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
#
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
rm -f $RPM_BUILD_ROOT/%{_mandir}/man1/*ctags*
rm -f $RPM_BUILD_ROOT/usr/share/emacs/%{version}/etc/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 \) \)
# 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
find $RPM_BUILD_ROOT/usr/share/emacs/%{version}/lisp -type f\
-not -name '*.el' -print | sed "s^$RPM_BUILD_ROOT^^" > core-filelist
find $RPM_BUILD_ROOT/usr/share/emacs/%{version}/lisp \
-type d -printf "%%%%dir %%p\n" | sed "s^$RPM_BUILD_ROOT^^" >> core-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
# put the lists together filtering ./usr to /usr
cat base-*-files | sed "s|\.%{_prefix}|%{_prefix}|" > base-filelist
cat el-*-files | sed "s|\.%{_prefix}|%{_prefix}|" > el-filelist
cat leim-*-files | sed "s|\.%{_prefix}|%{_prefix}|" > leim-filelist
%clean
rm -rf $RPM_BUILD_ROOT
@ -215,51 +194,133 @@ done
fi
%files -f core-filelist
%files -f base-filelist
%defattr(-,root,root)
%config(noreplace) /etc/skel/.emacs
%config(noreplace) %{_sysconfdir}/skel/.emacs
%doc etc/NEWS BUGS README
/usr/bin/*
%{_bindir}/*
%{_mandir}/*/*
%{_infodir}/*
/usr/share/emacs/site-lisp/python-mode.elc
/usr/share/emacs/site-lisp/php-mode.elc
/usr/share/emacs/site-lisp/po-mode.elc
/usr/share/emacs/site-lisp/rpm-spec-mode.elc
/usr/share/emacs/site-lisp/ssl.elc
/usr/share/emacs/site-lisp/subdirs.el
/usr/share/emacs/site-lisp/site-start.d/lang.emacs.el
/usr/share/emacs/site-lisp/site-start.d/php-mode-init.el
/usr/share/emacs/site-lisp/site-start.d/po-mode-init.el
/usr/share/emacs/site-lisp/lang
/usr/share/emacs/%{version}/site-lisp/subdirs.el
%dir /usr/share/emacs
%dir /usr/share/emacs/site-lisp
%dir /usr/share/emacs/%{version}
%dir /usr/share/emacs/%{version}/*
/usr/share/emacs/%{version}/etc/*
/usr/libexec/emacs/%{version}/*/*
%attr(0755,root,root) /usr/libexec/emacs/%{version}/*/movemail
%attr(0644,root,root) %config /usr/share/emacs/site-lisp/site-start.el
%dir /usr/share/emacs/site-lisp/site-start.d
%config(noreplace) /usr/share/applications/gnu-emacs.desktop
/usr/share/pixmaps/emacs.png
%dir %{_datadir}/emacs
%dir %{_datadir}/emacs/site-lisp
%{_datadir}/emacs/site-lisp/python-mode.elc
%{_datadir}/emacs/site-lisp/php-mode.elc
%{_datadir}/emacs/site-lisp/po-*.elc
%{_datadir}/emacs/site-lisp/rpm-spec-mode.elc
%{_datadir}/emacs/site-lisp/ssl.elc
%{_datadir}/emacs/site-lisp/subdirs.el
%{_datadir}/emacs/site-lisp/site-start.d/*.el
%{_datadir}/emacs/site-lisp/lang
%dir %{_datadir}/emacs/%{version}
%{_datadir}/emacs/%{version}/etc
# quieten startup when -leim and -el aren't installed
%dir %{_datadir}/emacs/%{version}/leim
%{_datadir}/emacs/%{version}/site-lisp
%{_libexecdir}/emacs
%attr(0644,root,root) %config %{_datadir}/emacs/site-lisp/site-start.el
%dir %{_datadir}/emacs/site-lisp/site-start.d
%{_datadir}/applications/gnu-emacs.desktop
%{_datadir}/pixmaps/emacs.png
%files -f el-filelist el
%defattr(-,root,root)
/usr/share/emacs/site-lisp/python-mode.el
/usr/share/emacs/site-lisp/php-mode.el
/usr/share/emacs/site-lisp/po-mode.el
/usr/share/emacs/site-lisp/ssl.el
/usr/share/emacs/site-lisp/rpm-spec-mode.el
%{_datadir}/emacs/site-lisp/python-mode.el
%{_datadir}/emacs/site-lisp/php-mode.el
%{_datadir}/emacs/site-lisp/po-*.el
%{_datadir}/emacs/site-lisp/ssl.el
%{_datadir}/emacs/site-lisp/rpm-spec-mode.el
%files -f leim-filelist leim
%defattr(-,root,root)
/usr/share/emacs/%{version}/leim/leim-list.el
%dir /usr/share/emacs/%{version}/leim
%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
- Desktop file fix - add Application to make it show up
- DNS lookup fix for pop (#64802)
@ -271,7 +332,7 @@ fi
- Handle UTF-8 input (#70855).
* 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
- 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
(autoload 'php-mode "php-mode")
(setq auto-mode-alist (cons '("\\.php[34]\\'\\|\\.php\\'\\|\\.phtml\\'" . php-mode)
auto-mode-alist))
(add-to-list '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
(autoload 'po-mode "po-mode")
(setq auto-mode-alist (cons '("\\.po[tx]?\\'\\|\\.po\\." . po-mode)
auto-mode-alist))
;;; 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-mode "po-mode"
"Major mode for translators to edit PO files" t)
(add-to-list 'auto-mode-alist '("\\.po\\'\\|\\.po\\." . po-mode))
(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)
;; 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\\."
;; 'po-find-file-coding-system)
;;
@ -49,6 +50,9 @@
;;; Code:
(defconst po-mode-version-string "2.01" "\
Version number of this version of po-mode.el.")
;;; Emacs portability matters - part I.
;;; Here is the minimum for customization to work. See part II.
@ -133,6 +137,23 @@ msgstr \"\"
:type 'string
: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)
"*Highlight text whenever appropriate, when non-nil.
However, on older Emacses, a yet unexplained highlighting bug causes files
@ -160,6 +181,7 @@ slightly different."
("Albanian" . "sq")
("Amharic" . "am")
("Arabic" . "ar")
("Argentinian" . "es_AR")
("Armenian" . "hy")
("Assamese" . "as")
("Avestan" . "ae")
@ -180,6 +202,8 @@ slightly different."
("Chamorro" . "ch")
("Chechen" . "ce")
("Chinese" . "zh")
("Chinese (simplified)" . "zh_CN")
("Chinese (traditional)" . "zh_TW")
("Church Slavic" . "cu")
("Chuvash" . "cv")
("Cornish" . "kw")
@ -210,6 +234,7 @@ slightly different."
("Hiri Motu" . "ho")
("Hungarian" . "hu")
("Icelandic" . "is")
("Ido" . "io")
("Indonesian" . "id")
("Interlingua" . "ia")
("Interlingue" . "ie")
@ -218,7 +243,7 @@ slightly different."
("Irish" . "ga")
("Italian" . "it")
("Japanese" . "ja")
("Javanese" . "jw")
("Javanese" . "jv")
("Kalaallisut" . "kl")
("Kannada" . "kn")
("Kashmiri" . "ks")
@ -315,6 +340,7 @@ slightly different."
("Uzbek" . "uz")
("Vietnamese" . "vi")
("Volapuk" . "vo")
("Walloon" . "wa")
("Welsh" . "cy")
("Wolof" . "wo")
("Xhosa" . "xh")
@ -618,8 +644,7 @@ No doubt that highlighting, when Emacs does not allow it, is a kludge."
(defun po-mode-version ()
"Show Emacs PO mode version."
(interactive)
(message (_"Emacs PO mode, version %s")
(substring "$Revision: 1.1.1.1 $" 11 -2)))
(message (_"Emacs PO mode, version %s") po-mode-version-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.")
(defconst po-mode-menu-layout
'("PO"
`("PO"
("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"
["Any next" po-next-entry t]
["Next translated" po-next-translated-entry t]
["Next fuzzy" po-next-fuzzy-entry t]
["Next obsolete" po-next-obsolete-entry t]
["Next untranslated" po-next-untranslated-entry t]
["Last file entry" po-last-entry t]
["Any next" po-next-entry
,@(if (featurep 'xemacs) '(t)
'(:help "Jump to next entry"))]
["Next translated" po-next-translated-entry
,@(if (featurep 'xemacs) '(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"
["Any previous" po-previous-entry t]
["Previous translated" po-previous-translated-entry t]
["Previous fuzzy" po-previous-fuzzy-entry t]
["Previous obsolete" po-previous-obsolete-entry t]
["Previous untranslated" po-previous-untranslated-entry t]
["First file entry" po-first-entry t]
["Any previous" po-previous-entry
,@(if (featurep 'xemacs) '(t)
'(:help "Jump to previous entry"))]
["Previous translated" po-previous-translated-entry
,@(if (featurep 'xemacs) '(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"
["Mark and push current" po-push-location t]
["Pop and return" po-pop-location t]
["Exchange current/top" po-exchange-location t]
["Mark and push current" po-push-location
,@(if (featurep 'xemacs) '(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]
["Current index" po-statistics t])
["Redisplay" po-current-entry
,@(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"
["Undo" po-undo t]
["Undo" po-undo
,@(if (featurep 'xemacs) '(t)
'(:help "Revoke last changed entry"))]
"---"
"Msgstr"
["Edit msgstr" po-edit-msgstr t]
["Ediff and merge msgstr" po-edit-msgstr-and-ediff t]
["Kill msgstr" po-kill-msgstr t]
["Save msgstr" po-kill-ring-save-msgstr t]
["Yank msgstr" po-yank-msgstr t]
["Edit msgstr" po-edit-msgstr
,@(if (featurep 'xemacs) '(t)
'(:help "Edit current translation"))]
["Ediff and merge msgstr" po-edit-msgstr-and-ediff
,@(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"
["Edit comment" po-edit-comment t]
["Ediff and merge comment" po-edit-comment-and-ediff t]
["Kill comment" po-kill-comment t]
["Save comment" po-kill-ring-save-comment t]
["Yank comment" po-yank-comment t]
["Edit comment" po-edit-comment
,@(if (featurep 'xemacs) '(t)
'(:help "Edit current comment"))]
["Ediff and merge comment" po-edit-comment-and-ediff
,@(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]
["Fuzzy or fade out" po-fade-out-entry t]
["Init with msgid" po-msgid-to-msgstr t])
["Remove fuzzy mark" po-unfuzzy
,@(if (featurep 'xemacs) '(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 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"
["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 with keyword" po-select-mark-and-mark t]
"---"
["Version info" po-mode-version t]
["Help page" po-help t]
["Validate" po-validate t]
["Mail officially" po-send-mail t]
["Edit out full" po-edit-out-full t]
["Version info" po-mode-version
,@(if (featurep 'xemacs) '(t)
'(:help "Display version number of PO mode"))]
["Help page" po-help
,@(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]
["Soft quit" po-confirm-and-quit t])
["Forceful quit" po-quit
,@(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.")
(defconst po-subedit-mode-menu-layout
'("PO-Edit"
["Ediff and merge translation variants" po-subedit-ediff t]
`("PO-Edit"
["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]
"---"
["Abort edit" po-subedit-abort t]
["Exit edit" po-subedit-exit t])
["Abort edit" po-subedit-abort
,@(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.")
(defconst po-subedit-message
(_"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.")
; 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
"List of auxiliary PO files, in completing read format.")
(defvar po-auxiliary-cursor nil
"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
(let ((functions '(compose-mail-other-window
message-mail-other-window
@ -913,70 +940,10 @@ Content-Type into a Mule coding system.")
;;; Mode activation.
(defun po-find-charset (filename)
"Return PO file charset value."
(interactive)
(let ((charset-regexp
"^\"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)))
)
;; Emacs 21.2 comes with po-find-file-coding-system. We give preference
;; to the version shipped with Emacs.
(if (not (fboundp 'po-find-file-coding-system))
(require 'po-compat))
(defvar po-mode-abbrev-table nil
"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.
(or (member po-mode-line-entry mode-line-format)
(let ((entry (member 'global-mode-string mode-line-format)))
(setcdr entry (cons po-mode-line-entry (cdr entry)))))
;; mode-line-format usually contains global-mode-string, but some
;; 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 ()
"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.
(po-find-span-of-entry)
(if (string-equal (po-get-msgid nil) "")
(if (po-next-entry)
(progn
;; Start counting
(while (re-search-forward po-any-msgstr-regexp nil t)
(and (= (% total 20) 0)
(if flag
(message (_"Position %d/%d") position total)
(message (_"Position %d") total)))
(setq here (point))
(goto-char (match-beginning 0))
(setq total (1+ total))
(and flag (eq (point) current) (setq position total))
(cond ((eq (following-char) ?#)
(setq po-obsolete-counter (1+ po-obsolete-counter)))
((looking-at po-untranslated-regexp)
(setq po-untranslated-counter (1+ po-untranslated-counter)))
(t (setq po-translated-counter (1+ po-translated-counter))))
(goto-char here))
(goto-char po-end-of-entry))
(if (re-search-forward "^msgid" (point-max) t)
(progn
;; Start counting
(while (re-search-forward po-any-msgstr-regexp nil t)
(and (= (% total 20) 0)
(if flag
(message (_"Position %d/%d") position total)
(message (_"Position %d") total)))
(setq here (point))
(goto-char (match-beginning 0))
(setq total (1+ total))
(and flag (eq (point) current) (setq position total))
(cond ((eq (following-char) ?#)
(setq po-obsolete-counter (1+ po-obsolete-counter)))
((looking-at po-untranslated-regexp)
(setq po-untranslated-counter (1+ po-untranslated-counter)))
(t (setq po-translated-counter (1+ po-translated-counter))))
(goto-char here))
;; Make another pass just for the fuzzy entries, kind of kludgey.
;; FIXME: Counts will be wrong if untranslated entries are fuzzy, yet
;; this should not normally happen.
(goto-char (point-min))
(while (re-search-forward po-fuzzy-regexp nil t)
(setq po-fuzzy-counter (1+ po-fuzzy-counter)))
(setq po-translated-counter (- po-translated-counter po-fuzzy-counter)))
'())))
;; Make another pass just for the fuzzy entries, kind of kludgey.
;; FIXME: Counts will be wrong if untranslated entries are fuzzy, yet
;; this should not normally happen.
(goto-char (point-min))
(while (re-search-forward po-fuzzy-regexp nil t)
(setq po-fuzzy-counter (1+ po-fuzzy-counter)))
(setq po-translated-counter (- po-translated-counter po-fuzzy-counter)))
'()))
;; Push the results out.
(if flag
@ -2078,8 +2050,10 @@ For more info cf. `po-subedit-ediff'."
(defun po-subedit-ediff ()
"Edit the subedit buffer using `ediff'.
`po-subedit-ediff' calls `po-ediff-buffers-exit-recursive' to edit translation
variants side by side. `msgcat' is able to produce those variants; every
variant is marked with:
variants side by side if they are actually different; if variants are equal just
delete the first one.
`msgcat' is able to produce those variants; every variant is marked with:
#-#-#-#-# file name reference #-#-#-#-#
@ -2124,7 +2098,12 @@ When done with the `ediff' session press \\[exit-recursive-edit] exit to
(erase-buffer)
(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 ()
"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))))
(let ((buffer (current-buffer))
(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
(if team-flag
(read-string (_"Subject? "))
(format "TP-Robot %s" name))
(format "%s %s" po-translation-project-mail-label name))
nil)
(goto-char (point-min))
(re-search-forward
@ -3328,4 +3309,6 @@ strings remain."
(save-buffer)
(kill-buffer (current-buffer)))))))
(provide 'po-mode)
;;; 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")
;; Add python support
(require 'python-mode)
(setq auto-mode-alist
(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)))
;; load ".el" files in "/usr/share/emacs/site-lisp/site-start.d/" on startup
(mapc 'load
(directory-files "/usr/share/emacs/site-lisp/site-start.d" t "\\.el\\'"))
;; 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)))