Revision: miles@gnu.org--gnu-2004/emacs--unicode--0--patch-15

Merge from emacs--cvs-trunk--0

Patches applied:

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-218
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-220
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-221
   Restore deleted tagline in etc/TUTORIAL.ru

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-222
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-228
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-229
   Remove TeX output files from the archive

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-230
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-247
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-248
   src/lisp.h (CYCLE_CHECK): Macro moved from xfaces.c

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-249
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-256
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-258
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-263
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-264
   Update from CVS: lispref/display.texi: emacs -> Emacs.

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-265
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-274
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-275
   Update from CVS: man/makefile.w32-in: Revert last change

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-276
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-295
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-296
   Allow restarting an existing debugger session that's exited

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-297
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-299
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-300
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-327
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-328
   Update from CVS: src/.gdbinit (xsymbol): Fix last change.

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-329
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-344
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-345
   Tweak source regexps so that building in place won't cause problems

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-346
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-351
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-352
   Update from CVS: lisp/flymake.el: New file.

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-353
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-361
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-362
   Support " [...]" style defaults in minibuffer-electric-default-mode

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-363
   (read-number): Use canonical format for default in prompt.

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-364
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-367
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-368
   Improve display-supports-face-attributes-p on non-ttys

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-369
   Rewrite face-differs-from-default-p

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-370
   Move `display-supports-face-attributes-p' entirely into C code

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-371
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-372
   Simplify face-differs-from-default-p; don't consider :stipple.

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-373
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-374
   (tty_supports_face_attributes_p): Ensure attributes differ from default

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-375
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-376
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-377
   (Fdisplay_supports_face_attributes_p): Work around bootstrapping problem

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-378
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-380
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-381
   Face merging cleanups

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-382
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-384
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-385
   src/xfaces.c (push_named_merge_point): Return 0 if a cycle is detected

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-386
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-395
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-396
   Tweak arch tagging to make build/install-in-place less annoying

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-397
   Work around vc-arch problems when building eshell

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-398
   Tweak permissions

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-399
   Tweak directory permissions

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-400
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-401
   More build-in-place tweaking of arch tagging

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-402
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-403
   Yet more build-in-place tweaking of arch tagging

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-404
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-409
   Update from CVS

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-410
   Make sure image types are initialized for lookup too

 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-411
 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-416
   Update from CVS
This commit is contained in:
Miles Bader 2004-06-28 07:56:49 +00:00
commit 327719ee8a
539 changed files with 43899 additions and 14549 deletions

10
.arch-inventory Normal file
View file

@ -0,0 +1,10 @@
# Generated files
precious ^(config\.status|config\.cache)$
# Build-in-place makes these directories, so just ignore them
precious ^(info)$
# Install-in-place makes these directories, so just ignore them
backup ^(bin|data|lock|site-lisp)$
# arch-tag: 6eeeaa4e-cc7e-4b22-b3d7-1089e155da14

2
BUGS
View file

@ -22,5 +22,5 @@ not part of the Emacs distribution.)
(3) By hand. Do
cat info/emacs* | more "+/^File: emacs, Node: Bugs,"
Please first check the file etc/PROBLEMS (e.g. with C-h P in Emacs) to
Please first check the file etc/PROBLEMS (e.g. with C-h C-e in Emacs) to
make sure it isn't a known issue.

View file

@ -1,3 +1,30 @@
2004-06-15 Luc Teirlinck <teirllm@auburn.edu>
* info/dir (File): Add emacs-xtra.
* Makefile.in (install-arch-indep, uninstall): Add emacs-xtra.
2004-06-12 Juri Linkov <juri@jurta.org>
* info/dir: Move menu help lines from `* Menu:' to file header.
Describe the purpose of a red *.
2004-05-04 Dave Love <fx@gnu.org>
* configure.in: Don't use `extrasub'.
2004-04-29 Dave Love <fx@gnu.org>
* configure.in: Don't forget to quote args to `test'.
2004-04-24 Thien-Thi Nguyen <ttn@gnu.org>
* autogen.sh: Update filename in "please read" message.
2004-04-17 Richard M. Stallman <rms@gnu.org>
* INSTALL: Move the info about site-lisp dirs,
and say uninstalled Emacs looks there too.
2004-04-04 Eli Zaretskii <eliz@gnu.org>
* config.bat (lib-src): Recognize comment lines in Makefile.in

25
INSTALL
View file

@ -466,17 +466,6 @@ are installed in the following directories:
at the same time; in particular, you don't have to
make Emacs unavailable while installing a new version.
`/usr/local/share/emacs/VERSION/site-lisp' holds the local Emacs Lisp
files installed for Emacs version VERSION only.
`/usr/local/share/emacs/site-lisp' holds the local Emacs Lisp
files installed for all Emacs versions.
When Emacs is installed, it searches for its Lisp files
in `/usr/local/share/emacs/VERSION/site-lisp', then in
`/usr/local/share/emacs/site-lisp', and finally in
`/usr/local/share/emacs/VERSION/lisp'.
`/usr/local/share/emacs/VERSION/etc' holds the Emacs tutorial, the DOC
file, the `yow' database, and other
architecture-independent files Emacs might need while
@ -506,6 +495,20 @@ are installed in the following directories:
`/usr/local/man/man1' holds the man pages for the programs installed
in `/usr/local/bin'.
Any version of Emacs, whether installed or not, also looks for Lisp
files in these directories.
`/usr/local/share/emacs/VERSION/site-lisp' holds the local Emacs Lisp
files installed for Emacs version VERSION only.
`/usr/local/share/emacs/site-lisp' holds the local Emacs Lisp
files installed for all Emacs versions.
When Emacs is installed, it searches for its Lisp files
in `/usr/local/share/emacs/VERSION/site-lisp', then in
`/usr/local/share/emacs/site-lisp', and finally in
`/usr/local/share/emacs/VERSION/lisp'.
If these directories are not what you want, you can specify where to
install Emacs's libraries and data files or where Emacs should search
for its Lisp files by giving values for `make' variables as part of

View file

@ -19,9 +19,6 @@ maintainer has been found so far.
Richard Stallman
???
Andrew Choi
MacOS
Jason Rumney
W32
@ -73,6 +70,9 @@ Miles Bader
2.
==============================================================================
Steven Tamm
MacOS
Eli Zaretskii
man/*
lispref/*
@ -104,6 +104,9 @@ Miles Bader
src/editfns.c
lisp/textmodes/refill.el
Thien-Thi Nguyen
VMS
==============================================================================
3.
==============================================================================

View file

@ -259,7 +259,8 @@ epaths-force: FRC
-e 's;\(#.*PATH_BITMAPS\).*$$;\1 "${bitmapdir}";' \
-e 's;\(#.*PATH_X_DEFAULTS\).*$$;\1 "${x_default_search_path}";' \
-e 's;\(#.*PATH_GAME\).*$$;\1 "${gamedir}";' \
-e 's;\(#.*PATH_DOC\).*$$;\1 "${docdir}";') && \
-e 's;\(#.*PATH_DOC\).*$$;\1 "${docdir}";' \
-e 's;/[*] *arch-tag:.*;/*;') && \
${srcdir}/move-if-change epaths.h.$$$$ src/epaths.h
# For parallel make, src should be build before leim.
@ -445,11 +446,9 @@ install-arch-indep: mkdir info
if [ `(cd ./etc; /bin/pwd)` != `(cd ${docdir}; /bin/pwd)` ]; \
then \
echo "Copying etc/DOC-* to ${docdir} ..." ; \
(cd ./etc; tar -chf - DOC* compilation.txt) \
(cd ./etc; tar -chf - DOC*) \
|(cd ${docdir}; umask 022; tar -xvf - && cat > /dev/null) || exit 1; \
(cd $(docdir); \
chown $${LOGNAME:-$$USERNAME} DOC* compilation.txt; \
chmod a+r DOC* compilation.txt; \
(cd $(docdir); chown $${LOGNAME:-$$USERNAME} DOC*; chmod a+r DOC*; \
if test "`echo DOC-*`" != "DOC-*"; then rm DOC; fi); \
else true; fi
-unset CDPATH; \
@ -475,7 +474,7 @@ install-arch-indep: mkdir info
chmod a+r ${infodir}/dir); \
fi; \
cd ${srcdir}/info ; \
for f in ada-mode* autotype* calc* ccmode* cl* dired-x* ebrowse* ediff* efaq* eintr* elisp* emacs* eshell* eudc* forms* gnus* idlwave* info* message* mh-e* pcl-cvs* reftex* sc* ses* speedbar* tramp* vip* widget* woman* smtpmail*; do \
for f in ada-mode* autotype* calc* ccmode* cl* dired-x* ebrowse* ediff* efaq* eintr* elisp* emacs* emacs-xtra* eshell* eudc* forms* gnus* idlwave* info* message* mh-e* pcl-cvs* reftex* sc* ses* speedbar* tramp* vip* widget* woman* smtpmail*; do \
(cd $${thisdir}; \
${INSTALL_DATA} ${srcdir}/info/$$f ${infodir}/$$f; \
chmod a+r ${infodir}/$$f); \
@ -485,7 +484,7 @@ install-arch-indep: mkdir info
thisdir=`/bin/pwd`; \
if [ `(cd ${srcdir}/info && /bin/pwd)` != `(cd ${infodir} && /bin/pwd)` ]; \
then \
for f in ada-mode autotype calc ccmode cl dired-x ebrowse ediff efaq elisp eintr emacs emacs-mime eshell eudc forms gnus idlwave info message mh-e pcl-cvs reftex sc ses speedbar tramp vip viper widget woman smtpmail; do \
for f in ada-mode autotype calc ccmode cl dired-x ebrowse ediff efaq elisp eintr emacs emacs-mime emacs-xtra eshell eudc forms gnus idlwave info message mh-e pcl-cvs reftex sc ses speedbar tramp vip viper widget woman smtpmail; do \
(cd $${thisdir}; \
${INSTALL_INFO} --info-dir=${infodir} ${infodir}/$$f); \
done; \
@ -551,7 +550,7 @@ uninstall:
done
(cd ${archlibdir} && rm -f fns-*)
-rm -rf ${libexecdir}/emacs/${version}
(cd ${infodir} && rm -f cl* ada-mode* autotype* calc* ccmode* ebrowse* efaq* eintr elisp* eshell* eudc* idlwave* message* pcl-cvs* reftex* speedbar* tramp* widget* woman* dired-x* ediff* emacs* forms* gnus* info* mh-e* sc* ses* vip* smtpmail*)
(cd ${infodir} && rm -f cl* ada-mode* autotype* calc* ccmode* ebrowse* efaq* eintr elisp* eshell* eudc* idlwave* message* pcl-cvs* reftex* speedbar* tramp* widget* woman* dired-x* ediff* emacs* emacs-xtra* forms* gnus* info* mh-e* sc* ses* vip* smtpmail*)
(cd ${man1dir} && rm -f emacs${manext} emacsclient${manext} etags${manext} ctags${manext})
(cd ${bindir} && rm -f $(EMACSFULL) $(EMACS))
@ -755,5 +754,3 @@ bootstrap-clean-before: FRC
-(cd lispref && $(MAKE) $(MFLAGS) clean)
-(cd lispintro && $(MAKE) $(MFLAGS) clean)
(cd leim; $(MAKE) $(MFLAGS) clean)
# arch-tag: c1162ff6-e0a8-4366-bc1a-2eb544007156

View file

@ -1,3 +1,7 @@
2004-05-08 Thien-Thi Nguyen <ttn@gnu.org>
* notes/BRANCH: New file, to be maintained per CVS branch.
2003-10-01 Miles Bader <miles@gnu.org>
* quick-install-emacs: Don't use "function" keyword when defining

View file

@ -1,349 +0,0 @@
# Makefile -- Makefile to generate charset maps in etc/charsets.
# Copyright (C) 2003
# National Institute of Advanced Industrial Science and Technology (AIST)
# Registration Number H13PRO009
#
# This file is part of GNU Emacs.
# GNU Emacs is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
# GNU Emacs is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with GNU Emacs; see the file COPYING. If not, write to the
# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
# Commentary
# At first, set these environment variables:
# GLIBC_CHARMAPS
# Directory of glibc-VERSION/localedate/charmaps.
# VERSION must be 2.3 or the later.
# MISC_CHARMAPS
# Direcory containing these charmap files:
# o bulgarian-mik.txt.gz
# provided at <http://czyborra.com/charsets/>
# o PTCP154
# provided at <http://www.iana.org/assignments/charset-reg/>
# o stdenc.txt and symbol.txt
# provided at <http://www.unicode.org/Public/MAPPINGS/>
# o cp932.txt
# provided at <http://www.unicode.org/Public/MAPPINGS/VENDERS>
# o Uni2JIS
# provided at <http://kanji.zinbun.kyoto-u.ac.jp/~yasuoka/CJK.html>
# o 720.htm and 858.htm
# provided at <http://www.microsoft.com/globaldev/reference/oem/>
# o eucJP-13th.txt, eucJP-udc.txt, eucJP-ibmext.txt
# provided at <http://www.opengroup.or.jp/jvc/cde/>
# o cns2ucsdkw.txt
# available by:
# % cvs -d :pserver:anonymous@cvs.kanji-database.sourceforge.net:\
# /cvsroot/kanji-database login
# % cvs -d :pserver:anonymous@cvs.kanji-database.sourceforge.net:\
# /cvsroot/kanji-database co kanji-database
# OLDEMACS
# emacs of version 21.3.50 or later
#
# Then, do this:
# % make XXX.map (or make all)
# % make install
CHARSETS = ${ISO8859} ${IBM} ${CODEPAGE} ${CJK} ${MISC} ${MULE}
# Note: We can not prepend "ISO-" to these map files because of file
# name limits on DOS.
ISO8859 = \
8859-2.map 8859-3.map 8859-4.map 8859-5.map 8859-6.map 8859-7.map \
8859-8.map 8859-9.map 8859-10.map 8859-11.map 8859-13.map 8859-14.map \
8859-15.map 8859-16.map
IBM = \
IBM037.map IBM038.map \
IBM256.map IBM273.map IBM274.map IBM275.map IBM277.map IBM278.map \
IBM280.map IBM281.map IBM284.map IBM285.map IBM290.map IBM297.map \
IBM420.map IBM423.map IBM424.map IBM437.map IBM500.map IBM850.map \
IBM851.map IBM852.map IBM855.map IBM856.map IBM857.map IBM860.map \
IBM861.map IBM862.map IBM863.map IBM864.map IBM865.map IBM866.map \
IBM868.map IBM869.map IBM870.map IBM871.map IBM874.map IBM875.map \
IBM880.map IBM891.map IBM903.map IBM904.map IBM905.map IBM918.map \
IBM1004.map IBM1026.map IBM1047.map
CODEPAGE = \
CP737.map CP775.map CP1125.map\
CP1250.map CP1251.map CP1252.map CP1253.map CP1254.map \
CP1255.map CP1256.map CP1257.map CP1258.map \
CP10007.map \
CP720.map CP858.map
CJK = GB2312.map GBK.map GB180302.map GB180304.map \
BIG5.map BIG5-HKSCS.map\
CNS-1.map CNS-2.map CNS-3.map CNS-4.map CNS-5.map CNS-6.map CNS-7.map \
CNS-F.map \
JISX0201.map JISX0208.map JISX0212.map JISX2131.map JISX2132.map \
JISC6226.map CP932-2BYTE.map JISX213A.map\
KSC5601.map KSC5636.map JOHAB.map
MISC = KOI-8.map KOI8-R.map KOI8-U.map KOI8-T.map ALTERNATIVNYJ.map \
MIK.map PTCP154.map \
TIS-620.map VISCII.map VSCII.map VSCII-2.map\
KA-PS.map KA-ACADEMY.map \
HP-ROMAN8.map NEXTSTEP.map MACINTOSH.map EBCDICUK.map EBCDICUS.map \
stdenc.map symbol.map \
CP949-2BYTE.map \
BIG5-1.map BIG5-2.map
# Emacs-mule charsets.
MULE = MULE-ethiopic.map MULE-ipa.map MULE-is13194.map \
MULE-sisheng.map MULE-tibetan.map \
MULE-lviscii.map MULE-uviscii.map
TRANS_TABLE = cp51932.el eucjp-ms.el
all: ${CHARSETS} ${TRANS_TABLE}
AWK = gawk
# Rules for each charset
VSCII.map: ${GLIBC_CHARMAPS}/TCVN5712-1 mapconv compact.awk
# Generating $@...
@mapconv $< '/^<.*[ ]\/x[0-9a-f].[ ]/' GLIBC-1 compact.awk > $@
VSCII-2.map: ${GLIBC_CHARMAPS}/TCVN5712-1 mapconv compact.awk
# Generating $@...
@mapconv $< '/^<.*[ ]\/x[2-7a-f].[ ]/' GLIBC-1 compact.awk \
| sed 's/0x20-0x7F.*/0x00-0x7F 0x0000/' > $@
ALTERNATIVNYJ.map: IBM866.map
# Generating $@...
@echo "# Modified from ibm866 according to the chart at" > $@
@echo "# http://www.cyrillic.com/ref/cyrillic/koi-8alt.html," >> $@
@echo "# with guesses for the Unicodes of the glyphs." >> $@
@sed -e '/0xF2/ s/ .*/ 0x2019/' \
-e '/0xF3/ s/ .*/ 0x2018/' \
-e '/0xF4/ s/ .*/ 0x0301/' \
-e '/0xF5/ s/ .*/ 0x0300/' \
-e '/0xF6/ s/ .*/ 0x203A/' \
-e '/0xF7/ s/ .*/ 0x2039/' \
-e '/0xF8/ s/ .*/ 0x2191/' \
-e '/0xF9/ s/ .*/ 0x2193/' \
-e '/0xFA/ s/ .*/ 0x00B1/' \
-e '/0xFB/ s/ .*/ 0x00F7/' < $< >> $@
MIK.map: ${MISC_CHARMAPS}/bulgarian-mik.txt.gz mapconv compact.awk
# Generating $@...
@mapconv $< '1,$$' CZYBORRA compact.awk > $@
PTCP154.map: ${MISC_CHARMAPS}/PTCP154 mapconv compact.awk
# Generating $@...
@mapconv $< '/^0x/' IANA compact.awk > $@
stdenc.map: ${MISC_CHARMAPS}/stdenc.txt mapconv compact.awk
# Generating $@...
@mapconv $< '/^[0-9A-Fa-f]/' UNICODE compact.awk > $@
symbol.map: ${MISC_CHARMAPS}/symbol.txt mapconv compact.awk
# Generating $@...
@mapconv $< '/^[0-9A-Fa-f]/' UNICODE compact.awk > $@
CP720.map: ${MISC_CHARMAPS}/720.htm mapconv compact.awk
# Generating $@...
@mapconv $< '/^[0-9A-F]/' MICROSOFT compact.awk > $@
CP858.map: ${MISC_CHARMAPS}/858.htm mapconv compact.awk
# Generating $@...
@mapconv $< '/^[0-9A-F]/' MICROSOFT compact.awk > $@
CP949-2BYTE.map: ${GLIBC_CHARMAPS}/CP949 mapconv compact.awk
# Generating $@...
@mapconv $< '/^<.*[ ]\/x[89a-f]/' GLIBC-2 compact.awk > $@
GB2312.map: ${GLIBC_CHARMAPS}/GB2312 mapconv compact.awk
# Generating $@...
@mapconv $< '/^<.*[ ]\/x[a-f]/' GLIBC-2-7 compact.awk > $@
GBK.map: ${GLIBC_CHARMAPS}/GBK mapconv compact.awk
# Generating $@...
@mapconv $< '/^<.*[ ]\/x[89a-f]/' GLIBC-2 compact.awk > $@
GB180302.map: ${GLIBC_CHARMAPS}/GB18030 mapconv gb180302.awk
# Generating $@...
@mapconv $< '/^<.*[ ]\/x..\/x..[ ]/' GLIBC-2 gb180302.awk > $@
GB180304.map: GB180302.map gb180304.awk
# Generating $@...
@$(AWK) -f gb180304.awk < $< > $@
JISX0201.map: ${GLIBC_CHARMAPS}/JIS_X0201 mapconv compact.awk
# Generating $@...
@mapconv $< '/^<.*[ ]\/x[0-9]/' GLIBC-1 compact.awk > $@
@echo "# Generated by hand" >> $@
@echo "0xA1-0xDF 0xFF61" >> $@
JISX0208.map: ${GLIBC_CHARMAPS}/EUC-JP mapconv
# Generating $@...
@mapconv $< '/^<.*[ ]\/x[a-f]/' GLIBC-2-7 \
| sed 's/0x2015/0x2014/' > $@
JISX0212.map: ${GLIBC_CHARMAPS}/EUC-JP mapconv compact.awk
# Generating $@...
@mapconv $< '/^<.*[ ]\/x8f/ s,/x8f,,' GLIBC-2-7 compact.awk > $@
JISX2131.map: ${GLIBC_CHARMAPS}/EUC-JISX0213 mapconv
# Generating $@...
@mapconv $< '/^<.*[ ]\/x[a-f]/' GLIBC-2-7 \
| sed -e 's/0x2015/0x2014/' -e 's/0x2299/0x29BF/' > $@
JISX2132.map: ${GLIBC_CHARMAPS}/EUC-JISX0213 mapconv
# Generating $@...
@mapconv $< '/^<.*[ ]\/x8f/ s,/x8f,,' GLIBC-2-7 > $@
JISX213A.map:
# Generating $@
@(echo "0x2E21 0x4FF1"; \
echo "0x2F7E 0x525D"; \
echo "0x4F54 0x20B9F"; \
echo "0x4F7E 0x541E"; \
echo "0x7427 0x5653"; \
echo "0x7E7A 0x59F8"; \
echo "0x7E7B 0x5C5B"; \
echo "0x7E7C 0x5E77"; \
echo "0x7E7D 0x7626"; \
echo "0x7E7E 0x7E6B") > $@
CP932-2BYTE.map: ${MISC_CHARMAPS}/cp932.txt mapconv cp932.awk
# Generating $@...
@mapconv $< '/^0x[89A-F][0-9A-F][0-9A-F]/' UNICODE2 cp932.awk > $@
cp51932.el: CP932-2BYTE.map cp51932.awk
@$(AWK) -f cp51932.awk < CP932-2BYTE.map > $@
eucjp-ms.el: ${MISC_CHARMAPS}/eucJP-13th.txt ${MISC_CHARMAPS}/eucJP-udc.txt \
${MISC_CHARMAPS}/eucJP-ibmext.txt eucjp-ms.awk
@(cd ${MISC_CHARMAPS}; \
cat eucJP-13th.txt eucJP-udc.txt eucJP-ibmext.txt) \
| $(AWK) -f eucjp-ms.awk > $@
JISC6226.map : ${MISC_CHARMAPS}/Uni2JIS mapconv kuten.awk
# Generating $@...
@mapconv $< '/^[^#].*0-/' YASUOKA kuten.awk > $@
KSC5601.map: ${GLIBC_CHARMAPS}/EUC-KR mapconv compact.awk
# Generating $@...
@mapconv $< '/^<.*[ ]\/x[a-f]/' GLIBC-2-7 compact.awk > $@
BIG5.map: ${GLIBC_CHARMAPS}/BIG5 mapconv compact.awk
# Generating $@...
@mapconv $< '/^<.*[ ]\/x[a-f]/' GLIBC-2 > $@
BIG5-1.map: BIG5.map mapconv big5.awk
# Generating $@...
@echo "Generated from $<" > $@
@sed -n -e '/0xa140/,/0xc8fe/p' < $< | gawk -f big5.awk >> $@
BIG5-2.map: BIG5.map mapconv big5.awk
# Generating $@...
@echo "Generated from $<" > $@
@sed -n -e '/0xc940/,$$ p' < $< | gawk -f big5.awk >> $@
BIG5-HKSCS.map: ${GLIBC_CHARMAPS}/BIG5-HKSCS mapconv compact.awk
# Generating $@...
@mapconv $< '/^<.*[ ]\/x[89a-f].\//' GLIBC-2 compact.awk > $@
JOHAB.map: ${GLIBC_CHARMAPS}/JOHAB mapconv compact.awk
# Generating $@...
@mapconv $< '/^<.*[ ]\/x[89a-f]/' GLIBC-2 compact.awk > $@
CNS-1.map: ${GLIBC_CHARMAPS}/EUC-TW mapconv compact.awk
# Generating $@...
@mapconv $< '/^<.*[ ]\/x[a-f]/' GLIBC-2-7 compact.awk > $@
# CNS-1.map: ${MISC_CHARMAPS}/cns2ucsdkw.txt mapconv compact.awk
# # Generating $@...
# @mapconv $< '/^C1/' KANJI-DATABASE compact.awk > $@
CNS-2.map: ${MISC_CHARMAPS}/cns2ucsdkw.txt mapconv compact.awk
# Generating $@...
@mapconv $< '/^C2/' KANJI-DATABASE compact.awk > $@
CNS-3.map: ${MISC_CHARMAPS}/cns2ucsdkw.txt mapconv compact.awk
# Generating $@...
@mapconv $< '/^C3/' KANJI-DATABASE compact.awk > $@
CNS-4.map: ${MISC_CHARMAPS}/cns2ucsdkw.txt mapconv compact.awk
# Generating $@...
@mapconv $< '/^C4/' KANJI-DATABASE compact.awk > $@
CNS-5.map: ${MISC_CHARMAPS}/cns2ucsdkw.txt mapconv compact.awk
# Generating $@...
@mapconv $< '/^C5/' KANJI-DATABASE compact.awk > $@
CNS-6.map: ${MISC_CHARMAPS}/cns2ucsdkw.txt mapconv compact.awk
# Generating $@...
@mapconv $< '/^C6/' KANJI-DATABASE compact.awk > $@
CNS-7.map: ${MISC_CHARMAPS}/cns2ucsdkw.txt mapconv compact.awk
# Generating $@...
@mapconv $< '/^C7/' KANJI-DATABASE compact.awk > $@
CNS-F.map: ${GLIBC_CHARMAPS}/EUC-TW mapconv compact.awk
# Generating $@...
@mapconv $< '/^<.*\/x8e\/xaf/ s,/x8e/xaf,,' GLIBC-2-7 compact.awk > $@
# General target to produce map files for mule charsets.
MULE-%.map: mule-charsets.el
# Generating $@...
@${OLDEMACS} -batch -l ./mule-charsets.el $@
# General target to produce map files for ISO-8859, GEORGIAN, and
# EBCDIC charsets. We can not use the original file name because of
# file name limit on DOS. "KA" is ISO 639 language code for Georgian.
8859-%.map: ${GLIBC_CHARMAPS}/ISO-8859-% mapconv compact.awk
# Generating $@...
@mapconv $< '/^<.*[ ]\/x/' GLIBC-1 compact.awk > $@
KA-%.map: ${GLIBC_CHARMAPS}/GEORGIAN-% mapconv compact.awk
# Generating $@...
@mapconv $< '/^<.*[ ]\/x/' GLIBC-1 compact.awk > $@
EBCDIC%.map: ${GLIBC_CHARMAPS}/EBCDIC-% mapconv compact.awk
# Generating $@...
@mapconv $< '/^<.*[ ]\/x/' GLIBC-1 compact.awk > $@
# General target to produce map files for single-byte charsets.
%.map: ${GLIBC_CHARMAPS}/% mapconv compact.awk
# Generating $@...
@mapconv $< '/^<.*[ ]\/x/' GLIBC-1 compact.awk > $@
install:
@for f in ${CHARSETS}; do \
if test -r $$f; then \
if ! cmp -s $$f ../../etc/charsets/$$f; then \
echo updating $$f; \
cp $$f ../../etc/charsets; \
fi; \
fi; \
done
@for f in ${TRANS_TABLE}; do \
if test -r $$f; then \
if ! cmp -s $$f ../../lisp/international/$$f; then \
echo updating $$f; \
cp $$f ../../lisp/international; \
fi; \
fi; \
done
# Clear files that are automatically generated.
clean:
rm -f ${CHARSETS} ${TRANS_TABLE}
# arch-tag: 90b3bf30-1fef-45bf-b30c-665c30c22310

18
admin/notes/BRANCH Normal file
View file

@ -0,0 +1,18 @@
This file describes the CVS branch in which it is maintained.
Everything below the line is branch-specific.
________________________________________________________________________
This is the "HEAD" branch, otherwise known as the "trunk". Its primary
purpose is to accumulate changes that are not yet partitioned into a
specific (versioned) release. When people say "use CVS emacs", this is
the branch they are talking about. Likewise, a "cvs checkout" without
the "-r" option results in this branch.
The plans for this branch are not specified; Emacs hackers add to it
relatively free of constraint (aside from proper legal / accounting
practices), although sometimes there is related discussion on the
emacs-devel mailing list.
The closure process for this branch is undocumented; concepts such as
"freeze", "release", or "integration with the trunk" are not applicable
to this branch.

35
admin/notes/exit-value Normal file
View file

@ -0,0 +1,35 @@
ttn 2004-05-09
The exit value of a program returning to the shell on unixoid systems is
typically 0 for success, and non-0 (such as 1) for failure. For vms it is
odd (1,3,5...) for success, even (0,2,4...) for failure.
This holds from the point of view of the "shell" (in quotes because vms has a
different dispatch model that is not explained further here).
From the point of view of the program, nowadays stdlib.h on both type of
systems provides macros `EXIT_SUCCESS' and `EXIT_FAILURE' that should DTRT.
NB: The numerical values of these macros DO NOT need to fulfill the the exit
value requirements outlined in the first paragraph! That is the job of the
`exit' function. Thus, this kind of construct shows misunderstanding:
#ifdef VMS
exit (1);
#else
exit (0);
#endif
Values aside from EXIT_SUCCESS and EXIT_FAILURE are tricky.
ttn 2004-05-12
Values aside from EXIT_SUCCESS and EXIT_FAILURE can be used to indicate
finer gradations of failure. If this is the only information available
to the caller, clamping such values to EXIT_FAILURE loses information.
If there are other ways to indicate the problem to the caller (such as
a message to stderr) it may be ok to clamp. In all cases, it is the
relationship between the program and its caller that must be examined.
[Insert ZAMM quote here.]

View file

@ -1,6 +1,6 @@
#!/bin/sh
echo "Please read INSTALL-CVS for instructions on how to build Emacs from CVS."
echo "Please read INSTALL.CVS for instructions on how to build Emacs from CVS."
# Exit with failure, since people may have generic build scripts that
# try things like "autogen.sh && ./configure && make".

57
configure vendored
View file

@ -1573,15 +1573,6 @@ echo "$as_me: WARNING: The directory tree \`${srcdir}' is being used
use GNU make. If you do not have GNU make, then you must
now do \`make distclean' in ${srcdir},
and then run $0 again." >&2;}
extrasub='/^VPATH[ ]*=/c\
vpath %.c $(srcdir)\
vpath %.h $(srcdir)\
vpath %.y $(srcdir)\
vpath %.l $(srcdir)\
vpath %.s $(srcdir)\
vpath %.in $(srcdir)\
vpath %.texi $(srcdir)'
fi
#### Given the configuration name, set machfile and opsysfile to the
@ -4193,6 +4184,54 @@ then
fi
late_LDFLAGS=$LDFLAGS
if test "$GCC" = yes; then
LDFLAGS="$LDFLAGS -Wl,-znocombreloc"
else
LDFLAGS="$LDFLAGS -znocombreloc"
fi
echo "$as_me:$LINENO: checking For -znocombreloc" >&5
echo $ECHO_N "checking For -znocombreloc... $ECHO_C" >&6
cat >conftest.$ac_ext <<_ACEOF
main(){return 0;}
_ACEOF
rm -f conftest.$ac_objext conftest$ac_exeext
if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
(eval $ac_link) 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
{ ac_try='test -z "$ac_c_werror_flag"
|| test ! -s conftest.err'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; } &&
{ ac_try='test -s conftest$ac_exeext'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
echo "$as_me:$LINENO: result: yes" >&5
echo "${ECHO_T}yes" >&6
else
echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
LDFLAGS=$late_LDFLAGS
echo "$as_me:$LINENO: result: no" >&5
echo "${ECHO_T}no" >&6
fi
rm -f conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
echo "$as_me:$LINENO: checking for egrep" >&5
echo $ECHO_N "checking for egrep... $ECHO_C" >&6

View file

@ -3,7 +3,7 @@ dnl To rebuild the `configure' script from this, execute the command
dnl autoconf
dnl in the directory containing this script.
dnl
dnl Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2003
dnl Copyright (C) 1994, 95, 96, 1999, 2000, 01, 02, 03, 2004
dnl Free Software Foundation, Inc.
dnl
dnl This file is part of GNU Emacs.
@ -170,15 +170,6 @@ if test `pwd` != `(cd ${srcdir} && pwd)` \
use GNU make. If you do not have GNU make, then you must
now do `make distclean' in ${srcdir},
and then run $0 again.]])
[extrasub='/^VPATH[ ]*=/c\
vpath %.c $(srcdir)\
vpath %.h $(srcdir)\
vpath %.y $(srcdir)\
vpath %.l $(srcdir)\
vpath %.s $(srcdir)\
vpath %.in $(srcdir)\
vpath %.texi $(srcdir)']
fi
#### Given the configuration name, set machfile and opsysfile to the
@ -1280,7 +1271,7 @@ dnl Treat GCC specially since it just gives a non-fatal `unrecognized option'
dnl if not built to support GNU ld.
late_LDFLAGS=$LDFLAGS
if test $GCC = yes; then
if test "$GCC" = yes; then
LDFLAGS="$LDFLAGS -Wl,-znocombreloc"
else
LDFLAGS="$LDFLAGS -znocombreloc"

10
etc/.arch-inventory Normal file
View file

@ -0,0 +1,10 @@
# Unlike most emacs dirs, etc has a simple non-autoconf-generated makefile
source ^(Makefile)$
# Generated files (DOC-X is generated on windows)
backup ^(DOC(|-[0-9.]*|-X))$
# Install-in-place on NT makes this directory, so just ignore it
backup ^(icons)$
# arch-tag: 5a1d62e0-593a-48cd-8743-8d45dc58dfae

View file

@ -1,3 +1,50 @@
2004-06-10 Lars Hansen <larsh@math.ku.dk>
* NEWS: Describe dired-omit-mode. Describe desktop package changes.
2004-05-29 Steven Tamm <steventamm@mac.com>
* PROBLEMS: Document the workaround for the Mac OS X port not
picking up the environment variables from dotfiles.
2004-05-16 Juri Linkov <juri@jurta.org>
* TUTORIAL.pt_BR: Add coding: latin-1, sentence-end-double-space: nil.
* ru-refcard.tex: Add C-u and RET to `C-h t Russian'.
2004-05-15 Alex Ott <ott@jet.msk.su>
* ru-refcard.tex, ru-refcard.ps: New files.
2004-05-14 David Ponce <david@dponce.com>
* tree-widget: New directory containing tree-widget themes and
images.
2004-04-13 Marcelo Toledo <marcelo@marcelotoledo.org>
* TUTORIAL.pt_BR: initial check-in.
2004-05-06 Dave Love <fx@gnu.org>
* emacs.py: New file for python-mode's internal use.
2004-04-22 Stefan Monnier <monnier@iro.umontreal.ca>
* TODO: Use outline mode. Remove compile.el entry (done).
2004-04-18 Juri Linkov <juri@jurta.org>
* TUTORIAL.fr, TUTORIAL.pl, TUTORIAL.ru, TUTORIAL.sl, TUTORIAL.sv
* TUTORIAL.th: Add sentence-end-double-space: nil.
* TUTORIAL.it, TUTORIAL.nl, TUTORIAL.sv: Add coding: latin-1.
2004-04-16 David Kastrup <dak@gnu.org>
* TUTORIAL.ru: Changes by Alex Ott checked in.
2004-04-14 Jan Nieuwenhuizen <janneke@gnu.org>
* TUTORIAL.nl: Update Delete/Delback translation.

13
etc/FOR-RELEASE Normal file
View file

@ -0,0 +1,13 @@
Tasks needed before the next release.
** Test the mbox branch of Rmail.
** Install the mbox branch of Rmail.
** Finish updating the Emacs Lisp manual.
** Finish checking the Emacs Lisp manual.
** Update the Emacs Manual.
** Check the Emacs Lisp manual.

375
etc/NEWS
View file

@ -4,6 +4,8 @@ See the end for copying conditions.
Please send Emacs bug reports to bug-gnu-emacs@gnu.org.
For older news, see the file ONEWS
You can narrow news to the specific version by calling
`view-emacs-news' with a prefix argument or by typing C-u C-h C-n.
Temporary note:
+++ indicates that the appropriate manual has already been updated.
@ -89,6 +91,11 @@ eight-bit-control/eight-bit-graphic charsets aren't now in the range
* Installation Changes in Emacs 21.4
** Emacs includes now support for loading image libraries on demand.
(Currently this feature is only used on MS Windows.) You can configure
the supported image types and their associated dynamic libraries by
setting the variable `image-library-alist'.
---
** A Bulgarian translation of the Emacs Tutorial is available.
@ -163,6 +170,72 @@ types any more. Add -DUSE_LISP_UNION_TYPE if you want union types.
* Changes in Emacs 21.4
** Passing resources on the command line now works on MS Windows.
You can use --xrm to pass resource settings to Emacs, overriding any
existing values. For example:
emacs --xrm "Emacs.Background:red" --xrm "Emacs.Geometry:100x20"
will start up Emacs on an initial frame of 100x20 with red background,
irrespective of geometry or background setting on the Windows registry.
** New features in evaluation commands
+++
*** The function `eval-defun' (C-M-x) called on defface reinitializes
the face to the value specified in the defface expression.
*** Typing C-x C-e twice prints the value of the integer result
in additional formats (octal, hexadecimal, character) specified
by the new function `eval-expression-print-format'. The same
function also defines the result format for `eval-expression' (M-:),
`eval-print-last-sexp' (C-j) and some edebug evaluation functions.
** New input method chinese-sisheng for inputting Chinese Pinyin
characters.
** New command quail-show-key shows what key (or key sequence) to type
in the current input method to input a character at point.
** Convenient commands to switch buffers in a cyclic order are C-x <left>
(prev-buffer) and C-x <right> (next-buffer).
** Commands winner-redo and winner-undo, from winner.el, are now bound to
C-c <left> and C-c <right>, respectively. This is an incompatible change.
** Help commands `describe-function' and `describe-key' now show function
arguments in lowercase italics on displays that support it. To change the
default, customize face `help-argument-name' or redefine the function
`help-default-arg-highlight'.
---
** The comint prompt can now be made read-only, using the new user
option `comint-prompt-read-only'. This is not enabled by default,
except in IELM buffers. The read-only status of IELM prompts can be
controlled with the new user option `ielm-prompt-read-only', which
overrides `comint-prompt-read-only'.
The new commands `comint-kill-whole-line' and `comint-kill-region'
support editing comint buffers with read-only prompts.
`comint-kill-whole-line' is like `kill-whole-line', but ignores both
read-only and field properties. Hence, it will always kill entire
lines, including any prompts.
`comint-kill-region' is like `kill-region', except that it ignores
read-only properties, if it is safe to do so. This means that if any
part of a prompt is deleted, then the entire prompt must be deleted
and that all prompts must stay at the beginning of a line. If this is
not the case, then `comint-kill-region' behaves just like
`kill-region' if read-only are involved: it copies the text to the
kill-ring, but does not delete it.
** You can now use next-error (C-x `) and previous-error to advance to
the next/previous matching line found by M-x occur.
** Telnet will now prompt you for a port number with C-u M-x telnet.
+++
** New command line option -Q.
This is like using -q --no-site-file, but in addition it also disables
@ -239,6 +312,37 @@ This is like `strokes-global-set-stroke', but it allows you to bind
the stroke directly to a string to insert. This is convenient for
using strokes as an input method.
+++
** Desktop package
*** Desktop saving is now a minor mode, desktop-save-mode. Variable
desktop-enable is obsolete. Customize desktop-save-mode to enable desktop
saving.
*** Buffers are saved in the desktop file in the same order as that in the
buffer list.
*** New commands:
- desktop-revert reverts to the last loaded desktop.
- desktop-change-dir kills current desktop and loads a new.
- desktop-save-in-desktop-dir saves desktop in the directory from which
it was loaded.
*** New customizable variables:
- desktop-save. Determins whether the desktop should be saved when it is
killed.
- desktop-file-name-format.
- desktop-path. List of directories in which to lookup the desktop file.
- desktop-locals-to-save.
- desktop-globals-to-clear.
- desktop-clear-preserve-buffers-regexp.
*** New command line option --no-desktop
*** New hooks:
- desktop-after-read-hook run after a desktop is loaded.
- desktop-no-desktop-file-hook run when no desktop file is found.
---
** The saveplace.el package now filters out unreadable files.
When you exit Emacs, the saved positions in visited files no longer
@ -353,13 +457,15 @@ The technique of setting `sql-mode-font-lock-defaults' directly in
your .emacs will no longer establish the default highlighting -- Use
`sql-product' to accomplish this.
ANSI keywords are always highlighted.
*** The function `sql-add-product-keywords' can be used to add
font-lock rules to the product specific rules. For example, to have
all identifiers ending in "_t" under MS SQLServer treated as a type,
you would use the following line in your .emacs file:
(sql-add-product-keywords 'ms
'("\\<\\w+_t\\>" . font-lock-type-face))
'(("\\<\\w+_t\\>" . font-lock-type-face)))
*** Oracle support includes keyword highlighting for Oracle 9i. Most
SQL and PL/SQL keywords are implemented. SQL*Plus commands are
@ -376,6 +482,13 @@ If the username and password are not provided to `sql-ms', osql is
called with the -E command line argument to use the operating system
credentials to authenticate the user.
*** Postgres support is enhanced.
Keyword highlighting of Postgres 7.3 is implemented. Prompting for
the username and the pgsql `-U' option is added.
*** MySQL support is enhanced.
Keyword higlighting of MySql 4.0 is implemented.
*** Imenu support has been enhanced to locate tables, views, indexes,
packages, procedures, functions, triggers, sequences, rules, and
defaults.
@ -413,14 +526,24 @@ restores the previous value of `buffer-invisibility-spec'.
** New command `kill-whole-line' kills an entire line at once.
By default, it is bound to C-S-<backspace>.
** New commands to operate on pairs of open and close characters:
`insert-pair', `delete-pair', `raise-sexp'.
** A prefix argument of C-M-q in Emacs Lisp mode pretty-printifies the
list starting after point.
** Dired mode:
*** New faces dired-header, dired-mark, dired-marked, dired-flagged,
dired-ignored, dired-directory, dired-symlink, dired-warning
introduced for Dired mode instead of font-lock faces.
*** New Dired command `dired-compare-directories' to mark files with
different file attributes in two dired buffers.
*** New Dired command `dired-compare-directories' marks files
with different file attributes in two dired buffers.
+++
*** New Dired command `dired-do-touch' (bound to T) changes timestamps
of marked files with the value entered in the minibuffer.
+++
*** In Dired's ! command (dired-do-shell-command), `*' and `?' now
@ -436,17 +559,54 @@ types of files. The variable `dired-view-command-alist' controls
what external viewers to use and when.
*** In Dired, the w command now copies the current line's file name
into the kill ring.
into the kill ring. With a zero prefix arg, copies absolute file names.
+++
** Dired-x:
*** Omitting files is now a minor mode, dired-omit-mode. The mode toggling
command is bound to M-o. A new command dired-mark-omitted, bound to M-O,
marks omitted files. The variable dired-omit-files-p is obsoleted, use the
mode toggling function instead.
** Info mode:
*** A numeric prefix argument of `info' selects an Info buffer
with the number appended to the *info* buffer name.
*** New command `Info-history' (bound to L) displays a menu of visited nodes.
*** New command `Info-toc' (bound to T) creates a node with table of contents
from the tree structure of menus of the current Info file.
*** New command `info-apropos' searches the indices of the known
Info files on your system for a string, and builds a menu of the
possible matches.
*** New command `Info-copy-current-node-name' (bound to w) copies
the current Info node name into the kill ring. With a zero prefix
arg, puts the node name inside the `info' function call.
*** New command `Info-search-case-sensitively' (bound to S).
*** New command `Info-search-next' (unbound) repeats the last search
without prompting for a new search string.
*** New face `info-xref-visited' distinguishes visited nodes from unvisited
and a new option `Info-fontify-visited-nodes' to control this.
*** http and ftp links in Info are now operational: they look like cross
references and following them calls `browse-url'.
+++
*** Info now hides node names in menus and cross references by default.
If you prefer the old behavior, you can set the new user option
`Info-hide-note-references' to nil.
*** The new command `info-apropos' searches the indices of the known
Info files on your system for a string, and builds a menu of the
possible matches.
*** Images in Info pages are supported.
Info pages show embedded images, in Emacs frames with image support.
Info documentation that includes images, processed with makeinfo
version 4.7 or newer, compiles to Info pages with embedded images.
+++
*** The default value for `Info-scroll-prefer-subnodes' is now nil.
@ -458,6 +618,8 @@ possible matches.
'sql-sqlite'.
** BibTeX mode:
*** The new command bibtex-entry-update (bound to C-c C-u) updates
an existing BibTeX entry.
*** New `bibtex-entry-format' option `required-fields', enabled by default.
*** bibtex-maintain-sorted-entries can take values `plain',
`crossref', and `entry-class' which control the sorting scheme used
@ -670,11 +832,12 @@ and windows-1251 are preloaded since the former is so common and the
latter is used by GNU locales.
** The utf-8/16 coding systems have been enhanced.
By default, untranslatable utf-8 sequences (mostly representing CJK
characters) are simply composed into single quasi-characters. User
option `utf-translate-cjk' arranges to translate many utf-8 CJK
character sequences into real Emacs characters in a similar way to the
Mule-UCS system. This uses significant space, so is not the default.
By default, untranslatable utf-8 sequences are simply composed into
single quasi-characters. User option `utf-translate-cjk-mode' (it is
turned on by default) arranges to translate many utf-8 CJK character
sequences into real Emacs characters in a similar way to the Mule-UCS
system. As this loads a fairly big data on demand, people who are not
interested in CJK characters may want to customize it to nil.
You can augment/amend the CJK translation via hash tables
`ucs-mule-cjk-to-unicode' and `ucs-unicode-to-mule-cjk'. The utf-8
coding system now also encodes characters from most of Emacs's
@ -814,9 +977,9 @@ to give it focus.
+++
** The new command `describe-char' (C-u C-x =) pops up a buffer with
description various information about a character, including its
encodings and syntax, its text properties, overlays, and widgets at
point. You can get more information about some of them, by clicking
on mouse-sensitive areas or moving there and pressing RET.
encodings and syntax, its text properties, how to input, overlays, and
widgets at point. You can get more information about some of them, by
clicking on mouse-sensitive areas or moving there and pressing RET.
+++
** The new command `multi-occur' is just like `occur', except it can
@ -832,6 +995,10 @@ can optionally enable mouse highlighting only after you move the
mouse, so that highlighting disappears when you press a key. You can
also disable mouse highlighting.
** You can now customize if selecting a region by dragging the mouse
shall not copy the selected text to the kill-ring by setting the new
variable mouse-drag-copy-region to nil.
+++
** font-lock: in modes like C and Lisp where the fontification assumes that
an open-paren in column 0 is always outside of any string or comment,
@ -1054,6 +1221,12 @@ counter to the specified source line (the one where point is).
Minor Improvements
*** The STARTTLS elisp wrapper (starttls.el) can now use GNUTLS
instead of the OpenSSL based "starttls" tool. For backwards
compatibility, it will prefer "starttls", but you can toggle
`starttls-use-gnutls' to switch to GNUTLS (or simply remove the
"starttls" tool).
*** Do not allow debugger output history variable to grow without bounds.
+++
@ -1200,6 +1373,13 @@ the new function `appt-activate'. The new variable
`appt-display-format' controls how reminders are displayed, replacing
appt-issue-message, appt-visible, and appt-msg-window.
** The new functions `diary-from-outlook', `diary-from-outlook-gnus',
and `diary-from-outlook-rmail' can be used to import diary entries
from Outlook-format appointments in mail messages. The variable
`diary-outlook-formats' can be customized to recognize additional
formats.
** VC Changes
*** The key C-x C-q no longer checks files in or out, it only changes
@ -1652,6 +1832,10 @@ Lines that match are never indented, and are given distinctive font-locking.
** F90 mode has new navigation commands `f90-end-of-block',
`f90-beginning-of-block', `f90-next-block', `f90-previous-block'.
** F90 mode now has support for hs-minor-mode (hideshow).
It cannot deal with every code format, but ought to handle a sizeable
majority.
---
** Prolog mode has a new variable `prolog-font-lock-keywords'
to support use of font-lock.
@ -1679,13 +1863,19 @@ candidate is a directory.
to the text before point. If there is text in the buffer after point,
it remains unchanged.
** Visual feedback of *Completions* buffer is enhanced.
Faces are put on the common prefix substrings and the first uncommon
charachters of each completion candidate in the *Completions* buffer.
`completion-de-emphasis' is put on the common prefix substrings as the
face; and `completion-emphasis' is put on the first uncommon
charachters. By default `completion-de-emphasis' is inherited from
`default' face. `completion-emphasis' is inherited from `bold' face.
** Enhanced visual feedback in *Completions* buffer.
Completions lists use faces to highlight what all completions
have in common and where they begin to differ.
The common prefix shared by all possible completions uses the face
`completions-common-part', while the first character that isn't the
same uses the face `completions-first-difference'. By default,
`completions-common-part' inherits from `default', and
`completions-first-difference' inherits from `bold'. The idea of
`completions-common-part' is that you can use it to make the common
parts less visible than normal, so that the rest of the differing
parts is, by contrast, slightly highlighted.
+++
** New user option `inhibit-startup-buffer-menu'.
@ -1738,7 +1928,7 @@ depend on external libraries. All of these libraries have been ported
to Windows, and can be found in both source and binary form at
http://gnuwin32.sourceforge.net/. Note that libpng also depends on
zlib, and tiff depends on the version of jpeg that it was compiled
against.
against. For additional information, see nt/INSTALL.
---
** Sound is now supported on MS Windows.
@ -1790,9 +1980,25 @@ to view diffs or log entries directly from vc-annotate-mode:
D: shows the diff of the revision at line with its previous revision
L: shows the log of the revision at line
W: annotates the workfile (most up to date) version
+++
** In pcl-cvs mode, there is a new `d y' command to view the diffs
between the local version of the file and yesterday's head revision
in the repository.
* New modes and packages in Emacs 21.4
** The new package flymake.el does on-the-fly syntax checking of program
source files. See the Flymake's Info manual for more details.
** The library tree-widget.el provides a new widget to display a set
of hierarchical data as an outline. For example, the tree-widget is
well suited to display a hierarchy of directories and files.
** The wdired.el package allows you to use normal editing commands on dired
buffers to change filenames, permissions, etc...
** The new python.el package is used to edit Python and Jython programs.
** The URL package (which had been part of W3) is now part of Emacs.
@ -1880,6 +2086,7 @@ where the keys work like (shifted) arrow keys, home/end, etc., and
are left unspecified and can be bound individually through the global
or local keymaps.
+++
** The new kmacro package provides a simpler user interface to
emacs' keyboard macro facilities.
@ -2018,9 +2225,106 @@ configuration files.
* Lisp Changes in Emacs 21.4
** If a command sets transient-mark-mode to `only', that
enables Transient Mark mode for the following command, only.
+++
** Cleaner way to enter key sequences.
You can enter a constant key sequence in a more natural format, the
same one used for saving keyboard macros, using the macro `kbd'. For
example,
(kbd "C-x C-f") => "\^x\^f"
** The sentinel is now called when a network process is deleted with
delete-process. The status message passed to the sentinel for a
deleted network process is "deleted". The message passed to the
sentinel when the connection is closed by the remote peer has been
changed to "connection broken by remote peer".
** If the buffer's undo list for the current command gets longer than
undo-outer-limit, garbage collection empties it. This is to prevent
it from using up the available memory and choking Emacs.
---
** New function quail-find-key returns a list of keys to type in the
current input method to input a character.
+++
** New functions posn-at-point and posn-at-x-y return
click-event-style position information for a given visible buffer
position or for a given window pixel coordinate.
** skip-chars-forward and skip-chars-backward now handle
character classes such as [:alpha:], along with individual characters
and ranges.
** Function pos-visible-in-window-p now returns the pixel coordinates
and partial visiblity state of the corresponding row, if the PARTIALLY
arg is non-nil.
** The function `eql' is now available without requiring the CL package.
+++
** The new primitive `set-file-times' sets a file's access and
modification times. Magic file name handlers can handle this
operation.
** The display space :width and :align-to text properties are now
supported on text terminals.
** Support for displaying image slices
*** New display property (slice X Y WIDTH HEIGHT) may be used with
an image property to display only a specific slice of the image.
*** Function insert-image has new optional fourth arg to
specify image slice (X Y WIDTH HEIGHT).
*** New function insert-sliced-image inserts a given image as a
specified number of evenly sized slices (rows x columns).
** New line-height and line-spacing properties for newline characters
A newline may now have line-height and line-spacing text or overlay
properties that control the height of the corresponding display row.
If the line-height property value is 0, the newline does not
contribute to the height of the display row; instead the height of the
newline glyph is reduced. Also, a line-spacing property on this
newline is ignored. This can be used to tile small images or image
slices without adding blank areas between the images.
If the line-height property value is a positive integer, the value
specifies the minimum line height in pixels. If necessary, the line
height it increased by increasing the line's ascent.
If the line-height property value is a float, the minimum line height
is calculated by multiplying the default frame line height by the
given value.
If the line-height property value is a cons (RATIO . FACE), the
minimum line height is calculated as RATIO * height of named FACE.
RATIO is int or float. If FACE is t, it specifies the current face.
If the line-spacing property value is an positive integer, the value
is used as additional pixels to insert after the display line; this
overrides the default frame line-spacing and any buffer local value of
the line-spacing variable.
If the line-spacing property may be a float or cons, the line spacing
is calculated as specified above for the line-height property.
If the line-spacing value is a cons (total . SPACING) where SPACING is
any of the forms described above, the value of SPACING is used as the
total height of the line, i.e. a varying number of pixels are inserted
after each line to make each line exactly that many pixels high.
** The buffer local line-spacing variable may now have a float value,
which is used as a height relative to the default frame line height.
** Enhancements to stretch display properties
The display property stretch specification form `(space PROPS)', where
@ -2139,6 +2443,12 @@ number of corresponding line in current buffer.
variable `sentence-end-without-space' which contains such characters
that end a sentence without following spaces.
** The function `sentence-end' should be used to obtain the value of
the variable `sentence-end'. If the variable `sentence-end' is nil,
then this function returns the regexp constructed from the variables
`sentence-end-without-period', `sentence-end-double-space' and
`sentence-end-without-space'.
+++
** The flags, width, and precision options for %-specifications in function
`format' are now documented. Some flags that were accepted but not
@ -2929,6 +3239,10 @@ A new predicate `supports' has also been added to the `defface' face
specification language, which can be used to do this test for faces
defined with defface.
** The function face-differs-from-default-p now truly checks whether the
given face displays differently from the default face or not (previously
it did only a very cursory check).
+++
** face-attribute, face-foreground, face-background, and face-stipple now
accept a new optional argument, INHERIT, which controls how face
@ -2938,6 +3252,13 @@ inheritance is used when determining the value of a face attribute.
** New functions face-attribute-relative-p and merge-face-attribute
help with handling relative face attributes.
** The priority of faces in an :inherit attribute face-list is reversed.
If a face contains an :inherit attribute with a list of faces, earlier
faces in the list override later faces in the list; in previous releases
of Emacs, the order was the opposite. This change was made so that
:inherit face-lists operate identically to face-lists in text `face'
properties.
+++
** Enhancements to process support
@ -3403,6 +3724,9 @@ using the text properties (esp. the face) of the prompt string.
** New function x-send-client-message sends a client message when
running under X.
** Arguments for remove-overlays are now optional, so that you can remove
all overlays in the buffer by just calling (remove-overlay).
** New packages:
*** The new package gdb-ui.el provides an enhanced graphical interface to
@ -3443,10 +3767,7 @@ been added.
with Custom.
** UTF-16 coding systems are available, encoding the same characters
as mule-utf-8. Coding system `utf-16-le-dos' is useful as the value
of `selection-coding-system' in MS Windows, allowing you to paste
multilingual text from the clipboard. Set it interactively with
C-x RET x or in .emacs with `(set-selection-coding-system 'utf-16-le-dos)'.
as mule-utf-8.
** There is a new language environment for UTF-8 (set up automatically
in UTF-8 locales).

View file

@ -5,6 +5,18 @@ in compiling, installing and running GNU Emacs.
It's completely redundant now, as far as we know.
* Environment Variables from dotfiles are ignored with Mac OS X (Carbon).
When starting Emacs from the Dock or the Finder on Mac OS X, the
environment variables that are set up in dotfiles, such as .cshrc or
.profile, are ignored. This is because the Finder and Dock are not
started from a shell, but instead from the Window Manager itself.
The workaround for this is to create a .MacOSX/environment.plist file to
setup these environment variables. These environment variables will
apply to all processes regardless of where they are started.
For me information, see http://developer.apple.com/qa/qa2001/qa1067.html.
* Segfault on GNU/Linux using certain recent versions of the Linux kernel.
With certain recent Linux kernels (like the one of Redhat Fedora Core
@ -225,6 +237,12 @@ __MSVCRT__, like so:
configure --with-gcc --cflags -mwin32 --cflags -D__MSVCRT__
* Building the MS-Windows port fails with a CreateProcess failure.
Some versions of mingw32 make on some versions of Windows do not seem
to detect the shell correctly. Try "make SHELL=cmd.exe", or if that
fails, try running make from Cygwin bash instead.
* Building the MS-Windows port with Leim fails in the `leim' directory.
The error message might be something like this:
@ -578,11 +596,6 @@ ought to recognize the Windows language-change event and set up the
appropriate keyboard encoding automatically, but it doesn't do that
yet.)
Windows uses UTF-16 encoding to deal with multilingual text (text not
encodable in the `system codepage') in the clipboard. To deal with
this, load the library `utf-16' and use `set-selection-coding-system'
to set the clipboard coding system to `utf-16-le-with-signature-dos'.
The %b specifier for format-time-string does not produce abbreviated
month names with consistent widths for some locales on some versions
of Windows. This is caused by a deficiency in the underlying system

177
etc/TODO
View file

@ -1,4 +1,4 @@
-*-text-*-
-*-outline-*-
If you are ready to start working on any of these TODO items, we
appreciate your help; please write to emacs-devel@gnu.org so we can be
@ -7,51 +7,48 @@ it best. Since Emacs is an FSF-copyrighted package, please be
prepared to sign legal papers to transfer the copyright on your work
to the FSF.
Small but important fixes needed in existing features:
* Small but important fixes needed in existing features:
* Make compile.el record the markers that point to error loci
on text properties in the error message lines.
* Fix the kill/yank treatment of invisible text. At the moment,
** Fix the kill/yank treatment of invisible text. At the moment,
invisible text is placed in the kill-ring, so that the contents of
the ring may not correspond to the text as displayed to the user. It
ought to be possible to omit text which is invisible (due to a
text-property, overlay, or selective display) from the kill-ring.
Important features:
* Important features:
* Provide user-friendly ways to list all available font families,
** Provide user-friendly ways to list all available font families,
display a font as a sample, etc. [fx is looking at multilingual
font selection for Emacs 22.]
* Program Enriched mode to read and save in RTF. [Is there actually a
** Program Enriched mode to read and save in RTF. [Is there actually a
decent single definition of RTF? Maybe see info at
http://latex2rtf.sourceforge.net/.]
* Implement something better than the current Refill mode. This
** Implement something better than the current Refill mode. This
probably needs some primitive support.
* Implement primitive and higher-level functions to allow filling
** Implement primitive and higher-level functions to allow filling
properly with variable-pitch faces.
* Implement a smoother vertical scroll facility, one that allows
** Implement a smoother vertical scroll facility, one that allows
C-v to scroll through a tall image.
* Implement other text formatting properties.
** Footnotes that can appear either in place or at the end of the page.
** text property that says "don't break line in middle of this".
** Implement other text formatting properties.
*** Footnotes that can appear either in place or at the end of the page.
*** text property that says "don't break line in middle of this".
Don't break the line between two characters that have the
same value of this property.
** Discretionary hyphens that are not visible when they are at end of line.
*** Discretionary hyphens that are not visible when they are at end of line.
* Make movemail work with IMAP.
** Make movemail work with IMAP.
* Internationalize Emacs's messages. [Note that this is of limited
** Internationalize Emacs's messages. [Note that this is of limited
use until the menus can display multilingual text. It also doesn't
address important issues like using the names of symbols essentially
as documentation, e.g. in command names and Custom. -- fx]
* Make the Lucid menu widget display multilingual text. [This
** Make the Lucid menu widget display multilingual text. [This
probably needs to be done from actual Emacs buffers, either directly
in the menu or by rendering in an unmapped window and copying the
pixels. Note that the relevant Xlib functions assume a specific
@ -60,48 +57,63 @@ Important features:
port now displays multilingual text in menus, but only insofar as
Emacs can encode it as utf-8 and gtk can display the result.]
* Remove the limitation that window and frame widths and heights can
** Remove the limitation that window and frame widths and heights can
be only full columns/lines.
Other features we would like:
* Other features we would like:
* Have a command suggestion help system that recognizes patterns
** Ability to map a key, including all modified-combinations.
E.g map mouse-4 to wheel-up as well as M-mouse-4 -> M-wheel-up
M-C-mouse-4 -> M-C-wheel-up, H-S-C-M-s-double-mouse-4 ->
H-S-C-M-s-double-wheel-up, ...
** Beefed-up syntax-tables.
*** recognize multi-character syntactic entities like `begin' and `end'.
*** nested string-delimiters (for Postscript's (foo(bar)baz) strings).
*** support for infix operators (with precedence).
*** support for the $ (paired delimiter) in parse-partial-sexp.
*** support for hook-chars whose effect on the parsing-state is specified
by elisp code. Thus a char could both close a string and open a comment
at the same time and do it in a context-sensitive way.
*** ability to add mode-specific data to the partial-parse-state.
** Have a command suggestion help system that recognizes patterns
of commands which could be replaced with a simpler common command.
It should not make more than one suggestion per 10 minutes.
* Add a way to define input methods by computing them (when first used)
** Add a way to define input methods by computing them (when first used)
from other input methods. Then redefine C-x 8 to use a
user-selected input method, with the default being the union of
latin-1-prefix and latin-1-postfix.
* Implement a clean way to use different major modes for
** Implement a clean way to use different major modes for
different parts of a buffer.
* Give start-process the ability to direct standard-error
** Give start-process the ability to direct standard-error
output to a different filter.
* Make desktop.el save the "frame configuration" of Emacs (in some
** Make desktop.el save the "frame configuration" of Emacs (in some
useful sense).
* Give desktop.el a feature to switch between different named
** Give desktop.el a feature to switch between different named
desktops.
* Replace finder.el with something that generates an Info file
** Replace finder.el with something that generates an Info file
which gives the same information through a menu structure. [Dave
Love started on this.]
* Implement a variant of uncompress.el or jka-compr.el that works with
** Implement a variant of uncompress.el or jka-compr.el that works with
GNU Privacy Guard for encryption. [Code exists but isn't assigned.
See the Gnus development sources for assigned code concerning GPG
use with mail, which is probably a good start.]
* Save undo information in files, and reload it when needed
** Save undo information in files, and reload it when needed
for undoing.
* Merge the Emacs regex.c with the Glibc regex.c.
** Merge the Emacs regex.c with the Glibc regex.c.
They split off a few years ago through negligence.
* Change the Windows NT menu code
** Change the Windows NT menu code
so that it handles the deep_p argument and avoids
regenerating the whole menu bar menu tree except
when the user tries to use the menubar.
@ -111,84 +123,80 @@ Other features we would like:
thread has processed the MENU_BAR_ACTIVATE_EVENT and regenerated
the whole menu bar. In the mean time, it should process other messages.
* Get some major packages installed: W3/url (development version needs
** Get some major packages installed: W3 (development version needs
significant work), PSGML. Check the assignments file for other
packages which might go in and have been missed.
* Make keymaps a first-class Lisp object (this means a rewrite of
** Make keymaps a first-class Lisp object (this means a rewrite of
keymap.c). What should it do apart from being opaque ?
multiple inheritance ? faster where-is ? no more fix_submap_inheritance ?
what else ?
* Provide real menus on ttys. The MS-DOS implementation can serve as
** Provide real menus on ttys. The MS-DOS implementation can serve as
an example how to do part of this.
* Implement popular parts of the rest of the CL functions as compiler
** Implement popular parts of the rest of the CL functions as compiler
macros in cl-macs.
* Highlight rectangles (`mouse-track-rectangle-p' in XEmacs). Already in CUA,
** Highlight rectangles (`mouse-track-rectangle-p' in XEmacs). Already in CUA,
but it's a valuable feature worth making more general.
* Support simultaneous tty and X frames.
** Support simultaneous tty and X frames.
* Provide MIME support for Rmail using the Gnus MIME library. [Maybe
** Provide MIME support for Rmail using the Gnus MIME library. [Maybe
not now feasible, given Gnus maintenance decisions. fx looked at
this and can say where some of the problems are.]
* Eliminate the storm of warnings concerning char/unsigned char
** Eliminate the storm of warnings concerning char/unsigned char
mismatches that we get with proprietary compilers on various systems.
They make it difficult to spot the important warnings.
* Fix anything necessary to use `long long' EMACS_INTs with GCC.
** Fix anything necessary to use `long long' EMACS_INTs with GCC.
* Split out parts of lisp.h and generate Makefile dependencies
** Split out parts of lisp.h and generate Makefile dependencies
automatically.
* Update the FAQ.
** Update the FAQ.
* Allow auto-compression-mode to use zlib calls if zlib is available.
** Allow auto-compression-mode to use zlib calls if zlib is available.
[It's required for PNG, so may be linked anyhow.]
* Add a --pristine startup flag which does -q --no-site-file plus
** Add a --pristine startup flag which does -q --no-site-file plus
ignoring X resources (Doze equivalents?) and most of the
environment. What should not be ignored needs consideration.
* Investigate using the language environment (or locale?) to set up
** Investigate using the language environment (or locale?) to set up
more things, such as the default Ispell dictionary, calendar
holidays, quoting characters?,...
* Improve the GC (generational, incremental). (We may be able to use
** Improve the GC (generational, incremental). (We may be able to use
the Boehm collector.) [See the Boehm-GC branch in CVS for work on
this.]
* Check what hooks would help Emacspeak -- see the defadvising in W3.
** Check what hooks would help Emacspeak -- see the defadvising in W3.
* Add horizontal scroll bars.
** Add horizontal scroll bars.
* Provide an optional feature which computes a scroll bar slider's
** Provide an optional feature which computes a scroll bar slider's
size and its position from lines instead of characters.
* Make the Custom themes support do useful things.
** Make the Custom themes support do useful things.
* Investigate using GNU Lightning or similar system for incremental
compilation of selected bytecode functions to subrs. Converting CCL
programs to native code is probably the first thing to try, though.
* Add support for SVG (Scalable Vector Graphics) rendering to
** Add support for SVG (Scalable Vector Graphics) rendering to
Emacs.
* Allow unknown image types to be rendered via an external program
** Allow unknown image types to be rendered via an external program
converting them to, say, PBM (in the same way as PostScript?).
* Allow displaying an X window from an external program in a buffer,
** Allow displaying an X window from an external program in a buffer,
e.g. to render graphics from Java applets. [gerd and/or wmperry
thought this was feasible.]
* Allow images (not just text) in the margin to be mouse-sensitive.
** Allow images (not just text) in the margin to be mouse-sensitive.
(Requires recursing through display properties). Provide some way
to simulate mouse-clicks on marginal text without a mouse.
* Implement Lisp functions to determine properly whether a character
** Implement Lisp functions to determine properly whether a character
is displayable (particularly needed in XFree 4, sigh). Use it to
define useful glyphs that may be displayed as images or unicodes
(with ASCIIfied fallback via latin1-disp). Examples include
@ -196,40 +204,33 @@ Other features we would like:
tree displays generally, mode-line mail indicator. [See work done
already for Emacs 22 and consult fx.]
* Do something to make rms happy with fx's dynamic loading, and use it
** Do something to make rms happy with fx's dynamic loading, and use it
to implement things like auto-loaded buffer parsers and database
access in cases which need more than Lisp.
* Extend ps-print to deal with multiple font sizes, images, and extra
** Extend ps-print to deal with multiple font sizes, images, and extra
encodings.
* Provide portable undumping using mmap (per gerd design).
** Provide portable undumping using mmap (per gerd design).
* Replace gmalloc.c with the modified Doug Lea code from the current
GNU libc so that the special mmapping of buffers can be removed --
that apparently loses under Solaris, at least. [fx has mostly done
this.]
** Use the XIE X extension, if available, for image display.
* Use the XIE X extension, if available, for image display.
* Make monochrome images display using the foreground and background
** Make monochrome images display using the foreground and background
colors of the applicable faces.
* Add support for rendering antialiased text, probably using
** Add support for rendering antialiased text, probably using
XRender/Freetype.
* Rewrite make-docfile to be clean and maintainable.
* Port the conservative stack marking code of Emacs' garbage collector
** Port the conservative stack marking code of Emacs' garbage collector
to more systems, so that we can completely get rid of GCPROs.
* Reorder defcustom's in each package so that the more important
** Reorder defcustom's in each package so that the more important
options come first in the Customize buffers. This could be done by
either rearranging the file (since options are shown in the order
they appear in the *.el files), or by adding a few :set-after
attributes.
* Maybe document the features of libraries missing from the manual (or
** Maybe document the features of libraries missing from the manual (or
ancillary manuals, including the Lisp manual in some cases).
This is not worth doing for all of these packages and we need not
aim for completeness, but some may be worth documenting.
@ -250,21 +251,21 @@ Other features we would like:
cvs-status (should be described in PCL-CVS manual); other progmodes,
probably in separate manual.
* Convert the XPM bitmaps to PPM, replace the PBMs with them and scrap
** Convert the XPM bitmaps to PPM, replace the PBMs with them and scrap
the XPMs so that the colour versions work generally. (Requires care
with the colour used for the transparent regions.)
* Convenient access to the `values' variable. It would be nice to have an
** Convenient access to the `values' variable. It would be nice to have an
interface that would show you the printed reps of the elements of the
list in a menu, let you select one of the values, and put it into some
other variable, without changing the value of `values'.
* Fix skip-chars-{for,back}ward to allow character classes.
** Fix skip-chars-{for,back}ward to allow character classes.
* (Controlled by a flag) make open and close syntax match exactly,
** (Controlled by a flag) make open and close syntax match exactly,
i.e. `(' doesn't match `]'.
* Specify parameter ID-FORMAT in all calls to `file-attributes' and
** Specify parameter ID-FORMAT in all calls to `file-attributes' and
`directory-files-and-attributes' where attributes UID or GID are used.
Whenever possible, use value 'string.
When done, change meaning of default value from 'integer to 'string.
@ -272,4 +273,18 @@ Other features we would like:
the definition of `file-attributes' and `directory-files-and-attributes'
and from the calls.
* Internal changes
** Replace gmalloc.c with the modified Doug Lea code from the current
GNU libc so that the special mmapping of buffers can be removed --
that apparently loses under Solaris, at least. [fx has mostly done
this.]
** Rewrite make-docfile to be clean and maintainable.
** Add an inferior-comint-minor-mode to capture the common set of operations
offered by major modes that offer an associated inferior
comint-derived mode. I.e. basically make cmuscheme.el generic.
For use by sml-mode, python-mode, tex-mode, scheme-mode, ...
;;; arch-tag: b0a3e40b-726a-457d-9999-ba848321b036

View file

@ -1197,6 +1197,7 @@ Cette traduction fran
;;; Local Variables:
;;; coding: latin-1
;;; sentence-end-double-space: nil
;;; End:
;;; arch-tag: f6c5c2ff-bf24-477c-bd18-32f76f51ba65

View file

@ -1114,4 +1114,8 @@ copie di GNU Emacs ai vostri amici. Aiutateci a combattere
l'ostruzionismo al software ("la proprietà") usando, scrivendo e
condividendo software libero!
;;; Local Variables:
;;; coding: latin-1
;;; End:
;;; arch-tag: c6f7079d-8032-473d-91d4-36754af15719

View file

@ -830,8 +830,7 @@ het zoeken.
zien wat er met de cursor gebeurt. Je hebt nu eenmaal naar het woord
`cursor' gezocht.
>> Type nogmaals C-s, om het volgende woord `cursor' te zoeken
> Type nu viermaal <Delback> en let op de cursorbewegingen.
>> Type nu viermaal <Delback> en let op de cursorbewegingen.
>> Type <RET> om het zoeken te beëindigen.
Zag je wat er gebeurde? Tijdens incrementeel zoeken probeert Emacs naar
@ -1093,4 +1092,8 @@ same spirit. Please read the file COPYING and then do give copies of
GNU Emacs to your friends. Help stamp out software obstructionism
("ownership") by using, writing, and sharing free software!)
;;; Local Variables:
;;; coding: latin-1
;;; End:
;;; arch-tag: 3399e308-e605-4125-8fbb-b2fe91ac3149

View file

@ -1239,13 +1239,10 @@
znajomym kopie Emacsa. Pomóż tępić obstrukcjonizm w informatyce,
używając, tworząc i dzieląc się oprogramowaniem swobodnym.
;;; Local Variables:
;;; mode: fundamental
;;; coding: latin-2
;;; sentence-end-double-space: nil
;;; End:
;;; arch-tag: 6c6b7445-4cd5-44ca-a101-7f4697b92f60

1089
etc/TUTORIAL.pt_BR Normal file

File diff suppressed because it is too large Load diff

View file

@ -1,43 +1,41 @@
;; -*- coding: cyrillic-koi8; -*-
Copyright (c) 1985, 1996 Free Software Foundation, Inc. See end for conditions.
Вы читаете учебник Emacs.
Вы читаете учебник Emacs. Условия копирования в конце файла.
Copyright (c) 1985, 1996, 2004 Free Software Foundation, Inc.
Для управления Emacs обычно используется ключ (сочетание клавиш клавиатуры
и/или кнопок мыши), включающий в себя клавишу CONTROL (иногда отмечаемая как
CTRL или CTL) или клавишу META (иногда помеченную как ALT или EDIT). В
дальнейшем вместо того, чтобы каждый раз писать META или CONTROL мы будем
и/или кнопок мыши), включающий в себя клавишу CONTROL (иногда отмечаемая
как CTRL или CTL) или клавишу META (иногда помеченную как ALT или EDIT). В
дальнейшем вместо того, чтобы каждый раз писать META или CONTROL, мы будем
использовать следующее сокращение:
C-<chr> следует удерживать клавишу CONTROL пока набирается символ <chr>
C-<chr> следует удерживать клавишу CONTROL, пока набирается символ <chr>.
Так, C-f должно означать: нажать клавишу CONTROL и f.
M-<chr> следует удерживать клавишу META пока набирается символ <chr>. Если
M-<chr> следует удерживать клавишу META, пока набирается символ <chr>. Если
нет клавиши META, ALT или EDIT, то нажмите <ESC>, отпустите ее,
а потом наберите символ <chr>.
Важное замечание: для завершения сеанса Emacs, наберите C-x C-c. (Два
Важное замечание: для завершения сеанса Emacs, наберите C-x C-c. (Два
символа). Символы ">>" с левой стороны указывают, что вам нужно делать,
чтобы применить команду. Например:
<<Середина страницы оставлена пустой для учебных целей. Текст прдолжается ниже>>
чтобы применить команду. Например:
<<Середина страницы оставлена пустой для учебных целей. Текст продолжается ниже>>
>> Теперь нажмите C-v (Просмотр следующего экрана) для перемещения на
следующий экран. (Выполните это, удерживая клавишу CONTROL нажимая v).
Теперь вы должны это сделать еще раз, когда закончите читать экран.
Обратите внимание на то, что, пока вы движетесь с экрана на экран,
перекрываются две строчки; это обеспечивает некоторую непрерывность, так что
вы можете продолжить читать текст.
перекрываются две строчки; это обеспечивает некоторую непрерывность, так
что вы можете продолжить читать текст.
Первое что вам необходимо знать -- как передвигаться по тексту из одного
Первое, что вам необходимо знать -- как передвигаться по тексту из одного
места в другое. Вы уже знаете, как переместиться вперед один экран,
используя ключ C-v. Для перемещения назад на один экран, нажмите M-v
(удерживайте клавишу META и наберите v, или нажмите <ESC>v если у вас нет
клавише META, EDIT, или ALT).
используя ключ C-v. Для перемещения назад на один экран, нажмите M-v
(удерживайте клавишу META и наберите v, или нажмите <ESC>v, если у вас нет
клавишы META, EDIT, или ALT).
>> попробуйте набрать M-v и потом C-v, несколько раз.
* КРАТКАЯ СВОДКА
---------
----------------
Для просмотра используются следующие команды:
@ -47,18 +45,18 @@ CTRL
текст, находящийся возле курсора, в центре экрана.
(Это CONTROL-L, а не CONTROL-1.)
>> Найдите курсор, и запомните текст возле него. Потом нажмите C-l.
>> Найдите курсор, и запомните текст возле него. Потом нажмите C-l.
Найдите курсор снова и убедитесь, что возле него все тот же текст.
* БАЗОВЫЕ КОМАНДЫ УПРАВЛЕНИЯ КУРСОРОМ
-----------------------------
-------------------------------------
Движение от экрана к экрану удобно, но как переместиться в определенное
место текста на экране?
Есть насколько способов сделать это. Основной способ -- использовать команды
C-p, C-b, C-f и C-n. Каждая из этих команд передвигает курсор на одну
Есть несколько способов сделать это. Основной способ -- использовать команды
C-p, C-b, C-f и C-n. Каждая из этих команд передвигает курсор на одну
строку или колонку на экране в определенном направлении. Эта таблица
показывает четыре команды и четыре направления их движения:
@ -78,7 +76,7 @@ C-p, C-b, C-f
F-вперед (forward). Это основные команды позиционирования курсора, которыми
Вы будете пользоваться ВСЕГДА, так что будет неплохо их выучить.
>> Нажмите несколько раз C-n чтоб опустить курсор вниз на эту строку.
>> Нажмите несколько раз C-n, чтобы опустить курсор вниз на эту строку.
>> Переместитесь по строке, используя C-f и потом поднимитесь вверх с
помощью C-p. Посмотрите, как изменилось положение курсора при нажатии
@ -95,7 +93,7 @@ character),
C-f может перемещать курсор через символ перевода строки так же, как и C-b.
>> Попробуйте несколько раз применить C-b, так чтобы Вы увидели, как
>> Попробуйте несколько раз применить C-b так, чтобы Вы увидели, как
движется курсор. Далее используйте C-f чтобы вернуться на конец
строки. Нажмите C-f еще раз, чтобы перейти к началу следующей строки.
@ -130,15 +128,16 @@ Control-
перемещает курсор в начало и конец строки, а M-a и M-e перемещает курсор в
начало и конец предложения.
>> Попробуйте нажать пару раз C-a, и потом пару раз C-e. Попробуйте пару
>> Попробуйте нажать пару раз C-a, и потом пару раз C-e. Попробуйте пару
раз нажать M-a, после этого пару раз нажать M-e.
Посмотрите, что повтор C-a ничего не изменяет, а повтор M-a продолжает
движение курсора к следующему предложению. Это не сохраняет аналогию, но
выглядит естественно.
Положение курсора в тексте также называют "точка". Скажем иначе: курсор
показывает место на экране в какой точке будет расположен вводимый текст.
Положение курсора в тексте также называют "точкой вставки". Скажем иначе:
курсор показывает место на экране в какой точке будет расположен вводимый
текст.
Здесь собраны простые команды перемещения курсора, включая движение по
словам и предложениям:
@ -166,22 +165,22 @@ Control-
Greater-than {Больше-Чем}), которая перемещает курсор в конец текста.
На большинстве терминалов знак "<" находится над знаком точки, и чтобы
набрать его вы должны использовать клавишу Shift. На этих терминалах вы так
же должны использовать Shift чтоб набрать M-<; Без удержания клавиши Shift
вы наберете M-точка.
набрать его, вы должны использовать клавишу Shift. На этих терминалах вы так
же должны использовать Shift, чтобы набрать M-< (без удержания клавиши Shift
вы наберете M-точка).
>> Сейчас попробуйте M-<, чтоб переместиться в начало учебника. Потом
используйте C-v чтоб вернуться назад.
>> Сейчас попробуйте M-<, чтобы переместиться в начало учебника. Потом
используйте C-v, чтобы вернуться назад.
>> Сейчас попробуйте M->, что переместиться к концу учебника. Используйте
M-v чтоб вернуться снова.
>> Сейчас попробуйте M->, чтобы переместиться к концу учебника. Используйте
M-v, чтобы вернуться снова.
Курсор можно перемещать клавишами управления курсора (стрелками), если ваш
терминал оборудован ими. Мы рекомендуем выучить C-b, C-f, C-n и C-p по трем
причинам. Во первых, они работают на любых терминалах. Во вторых, однажды
причинам. Во-первых, они работают на любых терминалах. Во-вторых, однажды
получив практику использования Emacs, вы поймете, что использовать
CTRL-символы удобнее и быстрее, чем кнопки со стрелочками (потому что вы не
убираете руки с обычного их положения при печати). В третьих, как только вы
убираете руки с обычного их положения при печати). В-третьих, как только вы
привыкните использовать CTRL-символы, вы сможете так же легко выучить и
использовать другие, расширенные команды перемещения курсора.
@ -192,7 +191,7 @@ CTRL-
аргумент можно задать другим способом: наберите цифры, удерживая клавишу
META. Мы рекомендуем освоить использование C-u, поскольку эта
последовательность клавиш работает на любом терминале. Числовой аргумент
также называется "префиксным аргументом" поскольку вы набираете аргумент до
также называется "префиксным аргументом", поскольку вы набираете аргумент до
выполнения команды.
Например, C-u 8 C-f переместит курсор на восемь символов вперед.
@ -217,7 +216,7 @@ META.
прокрутить его вниз, можете задать аргумент для M-v.
Если вы используете оконную систему, такую как X11 или MS-Windows, должна
быть прямоугольная область именуемая полосой прокрутки с левой стороны окна
быть прямоугольная область, именуемая полосой прокрутки с левой стороны окна
Emacs. Вы можете прокручивать текст, используя манипулятор мышь.
>> Попробуйте перемещать мышь при нажатой средней кнопке мыши. Вы увидите
@ -232,7 +231,7 @@ Emacs.
влево, вправо, вверх и вниз передвигают курсор в ожидаемом направлении; они
работают точно также как C-b, C-f, C-p и C-n, но легче в наборе и
запоминании. Вы так же можете использовать сочетания C-left и C-right для
передвижения по словам, и C-up и C-down для передвижения по блокам (т.е.,
передвижения по словам, и C-up и C-down для передвижения по блокам (т.е.
параграфам, если вы редактируете текст). Если у вас есть кнопки помеченные
HOME (или BEGIN) или END, то они будут перемещать курсор в начало и конец
строки, соответственно, и C-home и C-end будут перемещать в начало и конец
@ -249,14 +248,14 @@ CONTROL
* ЕСЛИ EMACS ЗАВИС
------------------
Если Emacs перестал реагировать на ваши команды, вы можете остановить это
просто нажав C-g. Вы можете использовать C-g чтобы остановить выполнение
команды которая слишком долго выполняется.
Если Emacs перестал реагировать на ваши команды, вы можете остановить это,
просто нажав C-g. Вы можете использовать C-g, чтобы остановить выполнение
команды, которая слишком долго выполняется.
Вы так же можете использовать C-g для отмены цифрового аргумента или начатой
Вы также можете использовать C-g для отмены цифрового аргумента или начатой
команды, которую вы не хотите завершать.
>> Наберите C-u 100 для задания аргумента 100, потом нажмите C-g. Теперь
>> Наберите C-u 100 для задания аргумента 100, потом нажмите C-g. Теперь
нажмите C-f. Курсор должен переместиться всего на один символ, потому что
вы отменили аргумент нажатием C-g.
@ -264,7 +263,7 @@ CONTROL
нажатием C-g.
* ЗАПРЕЩЕННЫЕ КОМАНДЫ (DISABLED COMMANDS)
* ЗАПРЕЩЕННЫЕ КОМАНДЫ (DISABLED COMMANDS)
-----------------------------------------
Некоторые команды Emacs "запрещены", поскольку начинающие пользователи могут
@ -291,7 +290,7 @@ Emacs
C-x 1 Одно окно. (закрыть все другие окна).
Это CONTROL-x со следующей цифрой 1. C-x 1 развернет окно которое содержит
Это CONTROL-x со следующей цифрой 1. C-x 1 развернет окно, которое содержит
курсор, так, чтобы оно заняло весь экран. При этом будут удалены все
остальные окна.
@ -301,7 +300,7 @@ Emacs
Посмотрите, как текущее окно сожмется, когда новое
появится и отобразит документацию на команду CONTROL-f.
>> Наберите C-x 1 и посмотрите как окно с документацией исчезнет.
>> Наберите C-x 1 и посмотрите, как окно с документацией исчезнет.
Эта команда отличается от других команд, которые вы изучили, тем, что она
состоит из двух символов. Она начинается со знака CONTROL-x. Есть целый
@ -326,7 +325,7 @@ Emacs
курсора.
>> Попробуйте выполнить это сейчас -- наберите несколько символов, потом
удалите их нажимая <Delete> несколько раз. Не волнуйтесь о изменениях
удалите их нажимая <Delete> несколько раз. Не волнуйтесь об изменениях
этого файла; вы не изменяете главный учебник. Это ваша личная копия
учебника.
@ -336,7 +335,7 @@ Emacs
стрелка) с правой границы показывает, что строка будет продолжена.
>> Вводите текст, пока не достигните правой границы, и продолжайте
вставку. Вы увидите, как появится символ продолжения строки.
вставку. Вы увидите, как появится символ продолжения строки.
>> Используйте <Delete> для удаления текста, пока строка не поместится в
экран снова. Символ продолжения строки исчезнет.
@ -353,13 +352,13 @@ Emacs
удаленного вами.
Помните, что многие команды Emacs могут получать счетчик повторения; простые
символы не являются исключением. Набирайте простые символы вставляя их по
символы не являются исключением. Набирайте простые символы, вставляя их по
несколько за один раз.
>> Попробуйте выполнить это -- наберите C-u 8 * для вставки ********.
Теперь вы научились основному способу набрать что-нибудь в Emacs и
исправлять ошибки. Так же вы можете удалять слова и строки. Здесь собраны
исправлять ошибки. Также вы можете удалять слова и строки. Здесь собраны
операции удаления:
<Delete> удалить символ перед курсором
@ -371,8 +370,8 @@ Emacs
C-k Убить все от курсора до конца строки
M-k Убить все до конца предложения
Заметьте, что <Delete> и C-d против M-<Delete> и M-d расширяют параллель
начатую, C-f и M-f (да, <Delete> это не реальный управляющий символ, но не
Заметьте, что <Delete> и C-d против M-<Delete> и M-d расширяют параллель,
начатую C-f и M-f (да, <Delete> это не реальный управляющий символ, но не
нужно волноваться об этом). C-k и M-k, как и C-e и M-e, проводят параллель
между строками и предложениями.
@ -393,13 +392,13 @@ C-SPC (
Отличие между "убить (killing)" и "удалить (deleting)" заключается в том,
что "убитый" текст может быть заново вставлен, в то время как "удаленные"
части не могут быть вставлены. Вставка "убитого" текста называется
"восстановление (yanking)". В общем, команды, которые могут удалять большие
части текста, удаляют этот текст (они так настраиваются так, что вы можете
восстановить текст), в то время как команды, которые удаляют только один
"восстановление (yanking)". В общем, команды, которые могут убирать большие
части текста, убивают этот текст (они так настраиваются так, что вы можете
восстановить текст), в то время как команды, которые убирают только один
символ, или только пустые строки и пробельные символы, выполняют удаление
(так что вы не можете восстановить текст).
>> Переместите курсор на начало непустой строки. Теперь нажмите C-k чтобы
>> Переместите курсор на начало непустой строки. Теперь нажмите C-k, чтобы
убить текст в этой строке.
>> Нажмите C-k еще раз. Вы видите, что это убьет символ новой строки
@ -407,7 +406,7 @@ C-SPC (
Заметьте, что первое C-k убивает содержимое строки, а второе C-k убивает
саму строку и поднимает другие строки вверх. C-k обрабатывает числовой
аргумент специальным образом: убивает много строк _И_ их содержимое. Это не
аргумент специальным образом: убивает столько строк _И_ их содержимое. Это не
просто повторение. C-u 2 C-k удалит две строи и завершающие их символы новой
строки; ввод C-k два раза не сделает этого.
@ -420,10 +419,10 @@ C-SPC (
Командой для восстановления текста является C-y. Она восстанавливает
последний убитый текст в место расположение курсора.
>> Попробуйте выполнить это; наберите C-y чтоб вернуть текст назад.
>> Попробуйте выполнить это; наберите C-y, чтобы вернуть текст назад.
Помните, если вы использовали несколько команд C-k в строке, все убитые
строки будут сохранены вместе, так, что C-y восстановит их вместе.
строки будут сохранены вместе так, что C-y восстановит их вместе.
>> Попробуйте выполнить это сейчас, нажмите C-k несколько раз.
@ -434,8 +433,8 @@ C-SPC (
Что делать, если есть некоторый текст, который вы хотите вернуть назад и
потом убить что-то еще? C-y вернет не более чем последний удаленный текст.
Но предыдущий текст не будет потерян. Вы сможете его вернуть назад используя
команду M-y. После того как вы вернули последний удаленный текст, нажмите
Но предыдущий текст не будет потерян. Вы сможете его вернуть назад, используя
команду M-y. После того, как вы вернули последний удаленный текст, нажмите
M-y, и замените этот восстановленный текст тем, который был убит ранее.
Нажатие M-y снова и снова будет возвращать ранее убитый текст. Когда вы
достигните искомого текста, вам не нужно делать ничего более чтобы сохранить
@ -447,7 +446,7 @@ M-y,
>> Убейте строку, переместите курсор вокруг этой точки, потом удалите еще
одну строку. Затем используйте C-y для восстановления второй убитой
строки. Затем используйте M-y и она будет заменена первой убитой
строки. Затем используйте M-y, и она будет заменена первой убитой
строкой. Нажмите M-y еще несколько раз, чтобы увидеть полученный
результат. Продолжайте делать это, пока вторая убитая строка не вернется,
и еще чуть-чуть. Если вам хочется, то вы можете задавать для M-y
@ -463,7 +462,7 @@ M-y,
Обычно, C-x u отменяет изменения, сделанные одной командой; если повторить
C-x u несколько раз подряд, каждый раз будет отменяться еще одна команда.
Но есть два исключения: команды которые не изменяют текст не учитываются
Но есть два исключения: команды, которые не изменяют текст, не учитываются
(это включает команды перемещения курсора и прокрутки), и самовставляющиеся
(self-inserting) символы обрабатываются группами до 20. (Это уменьшает
число C-x u которые вы можете набрать для отмены ввода текста).
@ -472,14 +471,14 @@ C-x u
вернуться назад.
C-_ альтернативная команда отмены; она работает также как и C-x u, но легче
в использовании несколько раз подряд. Неудобное положение C-_ а на некоторых
в использовании несколько раз подряд. Неудобное положение C-_ на некоторых
клавиатурах делает неочевидным способ ее набора. Поэтому мы предлагаем
использовать C-x u. На некоторых терминалах, вы можете набирать C-_ нажимая
использовать C-x u. На некоторых терминалах, вы можете набирать C-_, нажимая
/ и удерживая клавишу CONTROL.
Числовой аргумент для C-_ или C-x u работает как счетчик повторения.
Вы можете отменить удаление текста точно также как отмену убития
Вы можете отменить удаление текста точно так же, как отмену убития
текста. Отличие между убийством и удалением чего-либо заключается в том, что
вы можете восстановить убитый текст с помощью C-y; но это не делает различий
для отмены.
@ -488,27 +487,27 @@ C-_
-------
Чтобы созданный текст можно было редактировать позже, вы должны его
поместить в файл. Иначе, он исчезнет когда вы выйдите из Emacs. Вы помещаете
ваш текст в файл "открывая" файл. (Еще это называют "посетить" файл.)
поместить в файл. Иначе, он исчезнет, когда вы выйдите из Emacs. Вы помещаете
ваш текст в файл, "открывая" файл. (Еще это называют "посетить" файл.)
Открыть файл означает посмотреть его содержимое используя Emacs. Во многих
случаях, это происходит когда вы редактируете файл сами. Однако ваши
Открыть файл означает посмотреть его содержимое, используя Emacs. Во многих
случаях, это происходит, когда вы редактируете файл сами. Однако ваши
изменения, сделанные с использованием Emacs не будут зафиксированы, пока вы
не сохраните файл. Так вы можете не оставлять полуизмененный файл в системе,
если вы не хотите этого. Даже когда вы сохраняете файл, Emacs оставляет
оригинальный файл с измененным именем, чтоб вы могли позже решить, что ваши
оригинальный файл с измененным именем, чтобы вы могли позже решить, что ваши
изменения были ошибочны.
Если вы посмотрите в нижнюю часть экрана, то вы увидите строку, которая
начинается с тире и начинается с "--:-- TUTORIAL.ru" или чего-то
подобного. Эта часть экрана всегда показывает имя файла который вы
открыли. Итак, сейчас вы открыли файл с именем "TUTORIAL.ru" который
является вашей персональной копией учебника Emacs. Для любого файла который
подобного. Эта часть экрана всегда показывает имя файла, который вы
открыли. Итак, сейчас вы открыли файл с именем "TUTORIAL.ru", который
является вашей персональной копией учебника Emacs. Для любого файла, который
вы откроете, имя этого файла появится в этом месте.
Одной из специальных вещей, которую вам нужно знать о команде открытия файла
-- это то, что вы должны ввести имя файла, который нужно читать. Мы это
называем командой "читающая аргумент с терминала" (в этом случае, аргументом
Одной из специальных вещей, которую вам нужно знать о команде открытия файла,
это то, что вы должны ввести имя файла, который нужно читать. Мы это
называем командой, "читающей аргумент с терминала" (в этом случае, аргументом
является имя файла). После ввода команды
C-x C-f Открыть (найти) файл
@ -522,15 +521,15 @@ Emacs
отменить команду нажав C-g.
>> Нажмите C-x C-f, затем нажмите C-g. Это отменит мини-буфер, и команду
C-x C-f которая использовала мини-буфер. В итоге, вы не открыли ни одного
C-x C-f, которая использовала мини-буфер. В итоге, вы не открыли ни одного
файла.
Когда вы завершите ввод имени файла, нажмите <Return>. Далее сработает
команда C-x C-f, и откроет файл указанный вами. Мини-буфер исчезнет когда
команда C-x C-f завершится.
команда C-x C-f, которая откроет указанный вами файл. Мини-буфер исчезнет,
когда команда C-x C-f завершится.
И мгновением позже содержимое файла появится на экране, и вы сможете его
редактировать. Когда вы закончите редактирование, чтобы сохранить изменения
редактировать. Когда вы закончите редактирование, чтобы сохранить изменения,
наберите команду
C-x C-s Сохранить файл
@ -541,18 +540,18 @@ Emacs
имени файла.
Когда сохранение завершится, Emacs напечатает имя записанного файла. Вы
должны сохранять изменения достаточно часто, так чтобы не потерять много
работы если вдруг система погибнет.
должны сохранять изменения достаточно часто, чтобы не потерять много
работы, если вдруг система зависнет.
>> Наберите C-x C-s, сохраните вашу копию учебника. В нижней строке экрана
должна появиться надпись "Wrote ...TUTORIAL.ru".
ЗАМЕЧАНИЕ: На некоторых системах, ввод C-x C-s заблокирует экран и вы не
увидите последующего вывода Emacs`а. Это означает что операционная система
имеет "особенность" именуемую "flow control" перехватывающую C-s и не
увидите последующего вывода Emacs`а. Это означает, что операционная система
имеет "особенность", именуемую "flow control", перехватывающую C-s и не
пропускающую этот символ к Emacs`у. Для разблокировки экрана, нажмите C-q.
Смотрите раздел "Spontaneous Entry to Incremental Search" руководства Emacs
чтобы узнать как бороться с этой "особенностью".
Смотрите раздел "Spontaneous Entry to Incremental Search" руководства Emacs,
чтобы узнать, как бороться с этой "особенностью".
Вы можете открыть существующий файл для просмотра или редактирования. Вы
также можете найти файл, которого еще не существует. Другими словами --
@ -569,45 +568,45 @@ Emacs
внутри Emacs. Вы можете переключиться назад, найдя его снова C-x C-f. Это
способ загрузить несколько файлов в Emacs.
>> Создайте файл с именем "foo" набирая C-x C-f foo <Return>.
Вставьте какой-нибудь текст, отредактируйте его, и сохраните "foo"
>> Создайте файл с именем "foo", набирая C-x C-f foo <Return>.
Вставьте какой-нибудь текст, отредактируйте его, и сохраните "foo",
набрав C-x C-s.
Наконец, наберите C-x C-f TUTORIAL.ru <Return>
Наконец, наберите C-x C-f TUTORIAL.ru <Return>,
чтобы вернуться назад к учебнику.
Emacs сохраняет текст каждого файла внутри в объекте называемый "буфер"
("buffer"). Открытие файла создает новый буфер внутри Emacs. чтобы увидеть
список буферов созданных в текущем Emacs наберите
Emacs сохраняет текст каждого файла внутри в объекте, называемом "буфер"
("buffer"). Открытие файла создает новый буфер внутри Emacs. Чтобы увидеть
список буферов, созданных в текущем Emacs, наберите
C-x C-b Список буферов
>> Попробуйте C-x C-b сейчас.
Мы видим что каждый буфер имеет имя, и может иметь имя файла, содержимое
Мы видим, что каждый буфер имеет имя, и может иметь имя файла, содержимое
которого в нем хранится. Некоторые буфера не соответствуют файлам. Например,
буфер названный "*Buffer List*" не содержит никакого файла. В этом буфере
содержится список буферов, который был создан командой C-x C-b. ЛЮБОЙ текст
который ви видите в окне Emacs всегда является частью какого-либо буфера.
буфер, названный "*Buffer List*", не содержит никакого файла. В этом буфере
содержится список буферов, который был создан командой C-x C-b. ЛЮБОЙ текст,
который вы видите в окне Emacs, всегда является частью какого-либо буфера.
>> Наберите C-x 1 чтобы избавиться от списка буферов.
>> Наберите C-x 1, чтобы избавиться от списка буферов.
Если вы изменяете текст одного файла, потом открываете другой, то первый
остается не сохраненным. Изменения останутся внутри Emacs, в файловом
буфере. Создание или редактирование следующего файлового буфера не
остается несохраненным. Изменения останутся внутри Emacs, в файловом
буфере. Создание или редактирование следующего файлового буфера не
сказывается на первом буфере. Это очень удобно, но имейте в виду, что вам
нужно иметь удобный способ сохранить первый файловый буфер. Было бы
неприятно каждый раз возвращаться назад с помощью C-x C-f и потом
использовать C-x C-s. Поэтому существует команда
использовать C-x C-s. Поэтому существует команда
C-x s Сохранить некоторые буфера. (Save some buffers)
C-x s спрашивает вас о каждом буфере, который содержит не сохраненные
изменения. Для каждого такого буфера у вас спрашивают сохранять или не
C-x s спрашивает вас о каждом буфере, который содержит несохраненные
изменения. Для каждого такого буфера у вас спрашивают: сохранять или не
сохранять изменения.
>> Вставьте строку текста, потом наберите C-x s.
У вас должны спросить сохранять ли буфер с именем TUTORIAL.ru.
Ответьте на вопрос да набрав "y".
У вас должны спросить, сохранять ли буфер с именем TUTORIAL.ru.
Ответьте на вопрос да, набрав "y".
* РАСШИРЕННЫЙ НАБОР КОМАНД
@ -624,28 +623,28 @@ C-x s
Это команды, которые обычно используются, но вы уже выучили некоторые из
них. Вы уже видели: команды работы с файлами C-x C-f -- открыть, и C-x C-s
-- сохранить. Другой пример - завершения работы с Emacs -- это команда C-x
-- сохранить. Другой пример - завершения работы с Emacs -- это команда C-x
C-c. (Не волнуйтесь о том, что вы потеряете сделанные изменения, C-x C-c
предлагает сохранить изменения перед тем как удалит буфер Emacs.)
предлагает сохранить изменения перед тем, как удалит буфер Emacs.)
C-z это команда *временного* выхода из Emacs -- вы можете вернуться в туже
сессию Emacs после.
C-z это команда *временного* выхода из Emacs -- вы можете вернуться в ту же
сессию Emacs позже.
На системах, которые допускают этого, C-z "приостанавливают" ("suspends")
Emacs; Возвращают в оболочку (shell), но не закрывают Emacs. В большинстве
оболочек вы можете продолжить работу в Emacs используя команду `fg' или
На системах, которые допускают это, C-z "приостанавливают" ("suspends")
Emacs; возвращают в оболочку (shell), но не закрывают Emacs. В большинстве
оболочек вы можете продолжить работу в Emacs, используя команду `fg' или
`%emacs'.
В системах не поддерживающих приостановку процессов, C-z создает новую
В системах, не поддерживающих приостановку процессов, C-z создает новую
оболочку (subshell), запущенную из-под Emacs, чтобы дать вам возможность
выполнить другую программу, и потом вернуться в Emacs; Это не настоящий
выполнить другую программу, и потом вернуться в Emacs; это не настоящий
выход из Emacs. В этом случае, команда `exit' вернет вас в Emacs из
оболочки.
Используйте C-x C-c если вы хотите выйти (log out) из системы. Это также
используется чтобы выйти из Emacs вызванного из почтовой программы, или другой
утилиты, которая может не знает как справиться с приостановленным Emacs.
Обычно, если вы не выходите из системы, лучше приостановить Emacs
Используйте C-x C-c, если вы хотите выйти (log out) из системы. Это также
используется, чтобы выйти из Emacs, вызванного из почтовой программы, или другой
утилиты, которая может не знать, как справиться с приостановленным Emacs.
Обычно, если вы не выходите из системы, лучше приостановить Emacs,
используя C-z вместо выхода их него.
Существует очень много C-x команд. Эти вы уже выучили:
@ -661,18 +660,18 @@ Emacs;
только в определенных режимах. В качестве примера команда замена строки,
которая заменяет одну строку на другую во всем тексте. Когда вы наберете
M-x, Emacs предложит вам ввести имя команды в нижней строке экрана; в нашем
случае, "replace-string". Только наберите "repl s<TAB>" и Emacs дополнит
случае, "replace-string". Только наберите "repl s<TAB>", и Emacs дополнит
имя. (<TAB> -- это клавиша табуляции, обычно находящаяся выше клавиш
CapsLock или Shift слева на клавиатуре). Завершите имя вводом <Return>.
Команда замены строки (replace-string) требует два аргумента -- строку
которая будет заменена, и строка на которую нужно заменить. Вы должны
Команда замены строки (replace-string) требует два аргумента -- строку,
которая будет заменена, и строку, на которую нужно заменить. Вы должны
завершать каждый аргумент вводом <Return>.
>> Переместите курсор на две пустые строки ниже этой.
Наберите M-x repl s<Return>changed<Return>altered<Return>.
Заметьте как эта строка изменится: вы замените слово c-h-a-n-g-e-d
Заметьте, как эта строка изменится: вы замените слово c-h-a-n-g-e-d
словом "altered" везде, где оно встретится, ниже позиции курсора.
@ -680,40 +679,40 @@ CapsLock
----------------
Когда вы изменяете файл, но не сохраняете его, то в случае краха системы
вы можете потерять информацию. чтобы защитить вас от этого, Emacs
вы можете потерять информацию. Чтобы защитить вас от этого, Emacs
периодически сохраняет каждый файл, который вы редактируете. Автосохранение
происходит в файл, имя которого такое же, но начинается и заканчивается
символом "#"; например, если ваш файл называется "hello.c", то
автосохраненный файл будет называться "#hello.c#". Когда вы сохраните файл
обычным способом. Emacs удалит автосохраненный файл.
обычным способом, Emacs удалит автосохраненный файл.
Если система подвисает, вы можете восстановить ваши изменения который были
сохранены автоматически, путем открытия нормального файла (файла который вы
редактировали, не автосохраненного) и затем набрав M-x recover-file<return>.
Когда у вас спросят подтверждение, наберите yes<return> чтобы восстановить
Если система зависла, вы можете восстановить ваши изменения, который были
сохранены автоматически, путем открытия нормального файла (файла, который вы
редактировали, не автосохраненного), и затем набрав M-x recover-file<return>.
Когда у вас спросят подтверждение, наберите yes<return>, чтобы восстановить
автосохраненные данные.
* ОБЛАСТЬ ЭХО (ECHO AREA)
-------------------------
Если Emacs видит что вы медленно набираете команды, он показывает их вам
Если Emacs видит, что вы медленно набираете команды, он показывает их вам
внизу экрана, в области называемой "область эхо". Область эхо -- это самая
нижняя строка экрана.
* СТРОКА РЕЖИМА
------------------
---------------
Строка сразу над областью эхо называется "строка состояния".
Выглядит эта строка примерно так:
--:** TUTORIAL (Fundamental)--L670--58%----------------
--:** TUTORIAL.ru (Fundamental)--L670--58%----------------
Эта строка сообщает полезную информацию о состоянии Emacs и текста, который
вы редактируете.
Вы уже знаете что означает имя файла -- это файл, который вы открыли. -NN%--
Вы уже знаете, что означает имя файла -- это файл, который вы открыли. -NN%--
показывает текущую позицию курсора в тексте; это означает что NN процентов
текста выше, чем начало экрана. Если первая строка находится в первой строке
экрана, вы там увидите --Top-- вместо --00%--. Если на экране отображается
@ -744,13 +743,13 @@ Emacs
его. Например, M-x fundamental-mode - команда, которая переключает в базовый
(Fundamental) режим.
Если вы редактируете английский текст, например как этот (//конечно не именно
Если вы редактируете русский текст, например как этот (конечно, не именно
этот, а TUTORIAL) файл, вы вероятно должны переключиться в Text-режим.
>> Наберите M-x text mode<Return>.
Не волнуйтесь, ни одна из выученных вами команд Emacs не изменилась. Но вы
можите заметить, что M-f и M-b теперь различать апострофы как части слова.
можете заметить, что M-f и M-b теперь различают апострофы как части слова.
Ранее, в базовом режиме (Fundamental mode), M-f и M-b понимали апострофы
как разделители слов.
@ -762,8 +761,8 @@ Emacs
>> Используйте C-u C-v один раз или более, чтобы расположить эту строку ближе
к верху экрана.
>> Наберите C-h m, что посмотреть отличия Text-режима от базового.
>> Наберите C-x 1 чтобы убрать документацию с глаз долой :)
>> Наберите C-h m, чтобы посмотреть отличия Text-режима от базового.
>> Наберите C-x 1, чтобы убрать документацию с глаз долой :)
Основной режим называется основным потому, что есть несколько дополнительных
(minor) режимов. Дополнительные режимы не являются альтернативами основным,
@ -777,13 +776,13 @@ Emacs
включен, Emacs разрывает строки между словами автоматически, когда вы
вставляете текст и делаете строки слишком длинными.
Вы можете включить режим автозаполнения набрав M-x auto fill mode<Return>.
Вы можете включить режим автозаполнения, набрав M-x auto fill mode<Return>.
Когда этот режим включен, его можно выключить - M-x auto fill mode<Return>.
Если режим включен -- команда его выключит, если выключен -- включит. Мы
называем это командой "переключения режима".
>> Наберите M-x auto fill mode<Return>. Затем вводите строку из слов
"фыва " пока не увидите как она разделится на две строки. Вы должны
"фыва " пока не увидите, как она разделится на две строки. Вы должны
помещать пробелы между словами, потому что режим автозаполнения разделяет
строки только по пробелам.
@ -806,22 +805,22 @@ Emacs
* ПОИСК
-------
Emacs умеет искать строки (это непрерывные группы символов или слова) вперед
по тексту, или назад. Поиск строки это команда перемещения курсора; она
Emacs умеет искать строки (непрерывные группы символов или слова) вперед
по тексту, или назад. Поиск строки - это команда перемещения курсора; она
перемещает курсор в следующую точку, где найдена искомая строка.
Команда поиска Emacs отличаются от аналогичных команд большинства других
редакторов тем, что она инкрементальная. Это означает что поиск происходит по
мере того как вы набираете искомую строку.
редакторов тем, что она инкрементальная. Это означает, что поиск происходит
по мере, того как вы набираете искомую строку.
Команда, начинающая поиск вперед -- C-s, а C-r ищет назад. ПОДОЖДИТЕ! Не
нужно пробовать прямо сейчас.
Когда вы нажмете C-s вы увидите строку "I-search", появившуюся в области эхо.
Вам сообщается что Emacs ждет ввода слова, которое вы хотите найти.
Когда вы нажмете C-s, вы увидите строку "I-search", появившуюся в области эхо.
Вам сообщается, что Emacs ждет ввода слова, которое вы хотите найти.
<Return> завершает поиск.
>> Теперь, нажмите C-s для начала поиска. Медленно, одну букву за один раз,
>> Теперь нажмите C-s для начала поиска. Медленно, одну букву за один раз,
набирайте слово 'курсор', останавливаясь после каждой введенной буквы и
замечая что происходит с курсором.
Сейчас вы нашли первое вхождение слова "курсор".
@ -829,38 +828,38 @@ Emacs
>> Теперь нажмите <Delete> четыре раза и проследите за перемещениями курсора.
>> Нажмите <Return> для завершения поиска.
Вы видели что происходило? Emacs, в режиме инкрементального поиска, пытался
переходить к строкам совпадающим с набираемой вами, подсвечивая их для вас.
Вы видели, что происходило? Emacs в режиме инкрементального поиска пытался
переходить к строкам, совпадающим с набираемой вами, подсвечивая их для вас.
Чтобы перейти к следующему вхождения слова 'курсор' просто нажмите C-s
снова. Если больше нет вхождений, Emacs издаст звуковой сигнал, и сообщит
что ваш поиск не удался ("failing"), C-g также должен отменить поиск.
снова. Если больше нет вхождений, Emacs издаст звуковой сигнал, и сообщит,
что ваш поиск не удался ("failing"), C-g также может отменить поиск.
ЗАМЕЧАНИЕ: На некоторых системах, ввод C-s заморозит экран и вы не увидите
последующего вывода Emacs`а. Это означает что операционная система имеет
"особенность" именуемую "flow control" перехватывающую C-s и не пропускающую
этот символ к Emacs`у. Для разморозки экрана, нажмите C-q. Смотрите раздел
"Spontaneous Entry to Incremental Search" руководства Emacs чтобы узнать как
бороться с этой "особенностью".
ЗАМЕЧАНИЕ: На некоторых системах ввод C-s заморозит экран, и вы не увидите
последующего вывода Emacs`а. Это означает, что операционная система имеет
"особенность", именуемую "flow control", перехватывающую C-s и не пропускающую
этот символ к Emacs`у. Для разморозки экрана, нажмите C-q. Смотрите раздел
"Spontaneous Entry to Incremental Search" руководства Emacs, чтобы узнать,
как бороться с этой "особенностью".
Если вы во время инкрементального поиска нажмете <Delete>, вы можете заметить
Если вы во время инкрементального поиска нажмете <Delete>, вы можете заметить,
что последний символ в искомой строке удалился, и поиск вернулся к предыдущему
найденному месту. Например, предположим, что вы набрали "c", поиск перейдет к
первому вхождению символа "c". Теперь если вы наберете "u", курсор перейдет к
первому вхождению "cu". Нажатие <Delete> удалит символ "u" их строки поиска, и
курсор вернется к первому вхождению "c".
найденному месту. Например, предположим, что вы набрали "к", поиск перейдет к
первому вхождению символа "к". Теперь, если вы наберете "у", курсор перейдет к
первому вхождению "ку". Нажатие <Delete> удалит символ "у" из строки поиска, и
курсор вернется к первому вхождению "к".
Если вы во время поиска введете control- или meta- символ (за некоторыми
исключениями -- символы вызывающие поиск, а именно C-s и C-r), поиск
прекратится.
C-s начинает поиск и смотрит на любые вхождения искомой строки ПОСЛЕ текущей
позиции курсора. Если вы хотите найти что-то ранее в тексте, нажмите C-r. Все
что мы говорили о C-s применимо и к C-r, за исключением противоположного
позиции курсора. Если вы хотите найти что-то ранее в тексте, нажмите C-r.
Все, что мы говорили о C-s, применимо и к C-r, за исключением противоположного
направления поиска.
* МНОЖЕСТВО ОКОН (MULTIPLE WINDOWS)
-------------------------------
-----------------------------------
Одна из приятных особенностей Emacs это то, что вы можете одновременно
отображать на экране более чем одно окно.
@ -868,7 +867,7 @@ C-s
>> Переместите курсор на эту линию, и наберите C-u 0 C-l (это CONTROL-L, а
не CONTROL-1).
>> Теперь, наберите C-x 2, что разделит экран на два окна.
>> Теперь наберите C-x 2, что разделит экран на два окна.
Оба окна отображают учебник. Курсор остался в верхнем окне.
>> Нажмите C-M-v для прокрутки нижнего окна.
@ -876,10 +875,10 @@ C-s
>> Нажмите C-x o ("o" от слова "other" - другое) для перемещения курсора в
нижнее окно.
>> Используйте C-v и M-v в нижнем окне что прокручивать его.
>> Используйте C-v и M-v в нижнем окне, чтобы прокручивать его.
Продолжите чтение этих инструкций в верхнем окне.
>> Нажмите C-x o снова чтобы переместить курсор назад в верхнее окно.
>> Нажмите C-x o снова, чтобы переместить курсор назад в верхнее окно.
Курсор в верхнем окне там же, где и был до того.
Вы можете продолжать переключаться между окнами, используя C-x o. Каждое
@ -892,9 +891,9 @@ C-s
в окне редактирования и последовательно продвигаться во втором, используя
C-M-v.
C-M-v пример CONTROL-META символа. Если у вас есть настоящая кнопка META
(Alt), то вы можете набрать C-M-v нажав одновременно CONTROL и META и не
отпуская их нажать v. И не важно какая из клавиш будет нажата первой,
C-M-v - пример CONTROL-META символа. Если у вас есть настоящая кнопка META
(Alt), то вы можете набрать C-M-v, нажав одновременно CONTROL и META и,
не отпуская их, нажать v. И не важно, какая из клавиш будет нажата первой,
CONTROL или META, поскольку эти кнопки модифицируют тип символа.
Если у вас нет настоящей кнопки META, и вы используете ESC вместо нее,
@ -902,43 +901,43 @@ CONTROL
CONTROL-ESC v не будет работать. Потому, что ESC имеет свой собственный
символ -- это не модифицирующая кнопка.
>> Нажмите C-x 1 (в верхнем окне) чтобы избавиться от нижнего.
>> Нажмите C-x 1 (в верхнем окне), чтобы избавиться от нижнего.
(Если вы нажали C-x 1 в нижнем окне, то вы избавились от верхнего. Понимайте
эту команду как "Оставить только одно окно, то в котором я сейчас нахожусь").
эту команду как "Оставить только одно окно, то, в котором я сейчас нахожусь").
Вам не нужно отображать один и тот же буфер в обоих окнах. Если вы используете
C-x C-f чтобы открыть файл в одном окне, другое останется без изменения. Вы
можете открывать файлы в каждом окне независимо.
Вам не нужно отображать один и тот же буфер в обоих окнах. Если вы
используете C-x C-f, чтобы открыть файл в одном окне, другое останется без
изменения. Вы можете открывать файлы в каждом окне независимо.
Есть другой путь использовать два окна отображающих разные файлы:
Есть другой путь использовать два окна, отображающих разные файлы:
>> Наберите C-x 4 C-f затем имя одного и ваших файлов. Завершите <Return>.
Посмотрите что выбранный файл появился в нижнем окне. Курсор перешел
>> Наберите C-x 4 C-f, затем имя одного и ваших файлов. Завершите <Return>.
Посмотрите, что выбранный файл появился в нижнем окне. Курсор перешел
туда же.
>> Наберите C-x o чтобы вернуться в верхнее окно, и C-x 1 чтобы удалить нижнее
окно.
>> Наберите C-x o, чтобы вернуться в верхнее окно, и C-x 1, чтобы удалить
нижнее окно.
* РЕКУРСИВНЫЕ УРОВНИ РЕДАКТИРОВАНИЯ (RECURSIVE EDITING LEVELS)
--------------------------------------------------------------
Иногда вы будете включать так называемые "рекурсивные уровни
редактирования". На это указывают прямоугольные скобки в строке
состояния, окружающие обычные скобки вокруг имени основного режима. Например
вы можете увидеть [(Fundamental)] вместо (Fundamental).
редактирования". На это указывают прямоугольные скобки в строке состояния,
окружающие обычные скобки вокруг имени основного режима. Например, вы можете
увидеть [(Fundamental)] вместо (Fundamental).
Чтобы выйти из рекурсивных уровней редактирования, нажмите ESC ESC ESC. Это
многоцелевая команда "выход". Вы так же можете использовать ее как для
Чтобы выйти из рекурсивных уровней редактирования, нажмите ESC ESC ESC. Это
многоцелевая команда "выход". Вы также можете использовать ее как для
уничтожения лишних окон, так и для выхода из мини-буфера.
>> Нажмите M-x чтобы попасть в мини-буфер; затем нажмите ESC ESC ESC чтобы
покинуть его.
>> Нажмите M-x, чтобы попасть в мини-буфер; затем нажмите ESC ESC ESC,
чтобы покинуть его.
Вы не можете использовать C-g чтобы выйти из рекурсивных уровней
редактирования. Потому, что C-g используется для отмены команды и аргументов
БЕЗ рекурсивных уровней редактирования.
Вы не можете использовать C-g, чтобы выйти из рекурсивных уровней
редактирования. Потому, что C-g используется для отмены команды и
аргументов БЕЗ рекурсивных уровней редактирования.
* КАК ПОЛУЧИТЬ ПОМОЩЬ (GETTING MORE HELP)
@ -953,10 +952,10 @@ C-x C-f
помощи".
Чтобы использовать особенности Помощи, нажмите C-h, и затем символ, который
расскажет какой именно вид помощи вы хотите получить. Если вы ДЕЙСТВИТЕЛЬНО
растерялись, наберите C-h ? и Emacs расскажет вам какую помощь он может вам
расскажет, какой именно вид помощи вы хотите получить. Если вы ДЕЙСТВИТЕЛЬНО
растерялись, наберите C-h ?, и Emacs расскажет вам какую помощь он может вам
предоставить. Если вы нажали C-h и передумали обращаться к помощи, просто
нажмите C-g чтобы отменить эту команду.
нажмите C-g, чтобы отменить эту команду.
(Кое-где переназначают символ C-h. Реальной необходимости в этом нет,
сообщите о ней системному администратору. Тем временем, если C-h не вызывает
@ -971,35 +970,35 @@ C-x C-f
Сообщение должно выглядеть примерно так
C-p runs the command previous-line
(C-p выполняет команду previous-line {предыдущая-линия})
(C-p выполняет команду previous-line {предыдущая-строка})
Вам сообщают "имя функции". Имена функции используются в основном для
настройки и расширения Emacs. Имена функций выбраны так, чтобы показать что
именно команда делает, так же они позволяют с помощью этой краткой
Вам сообщают "имя функции". Имена функций используются в основном для
настройки и расширения Emacs. Имена функций выбраны так, чтобы показать,
что именно команда делает, также они позволяют с помощью этой краткой
информации легче запомнить уже выученные команды.
Многосимвольные команды, такие как C-x C-s и (если у вас нет кнопки META или
EDIT или ALT) <ESC>v так же будут доступны после C-h c.
EDIT или ALT) <ESC>v также будут доступны после C-h c.
Получите больше информации о команде используя C-h k вместо C-h c.
>> Наберите C-h k C-p.
Вы увидите описание функции, а также ее имя в отдельном окне Emacs. Когда вы
завершите чтение, нажмите C-x 1 чтобы избавиться от текста помощи. Вы
завершите чтение, нажмите C-x 1, чтобы избавиться от текста помощи. Вы
можете выполнить какое-то редактирование во время просмотра текста справки,
а только затем нажать C-x 1
а только затем нажать C-x 1.
Есть еще несколько полезных опций C-h:
C-h f Описывает функцию. Вам необходимо набрать имя функции.
C-h f Описывает функцию. Вам необходимо набрать имя функции.
>> Попробуйте набрать C-h f previous-line<Return>.
Это распечатает информацию Emacs о этой функции, которая выполняется
командой C-p.
Аналогичная команда C-h v отображает документацию о переменных, значение
которых вы можете изменить для настройки поведения Emacs. Вым нужно набрать
которых вы можете изменить для настройки поведения Emacs. Вам нужно набрать
имя переменной, когда Emacs запросит его.
C-h a Hyper Apropos. Введите ключевое слово и Emacs покажет вам
@ -1009,14 +1008,14 @@ EDIT
>> Наберите C-h a file<Return>.
это отобразит полный список функций и переменных имена которых начинаются с
"newline". Нажмите <Return> или кликните средней кнопкой мышки чтобы
получить больше о функции или переменной. Нажмите `q' чтобы выйти из
hyper-apropos.
это отобразит полный список функций и переменных, имена которых начинаются
с "newline". Нажмите <Return> или кликните средней кнопкой мышки, чтобы
получить больше информации о функции или переменной. Нажмите `q', чтобы
выйти из hyper-apropos.
Это отобразит в другом окне список всех команд M-x со словом "file" в их
именах. Также в списке, кроме команд, таких как find-file, вы увидите
соответствующие символьные команды, такие как C-x C-f.
именах. Также в списке кроме команд таких, как find-file, вы увидите
соответствующие символьные команды такие, как C-x C-f.
>> Наберите C-M-v для прокрутки окна справки. Выполните это несколько раз.
@ -1024,29 +1023,28 @@ hyper-apropos.
C-h i Читать интерактивные руководства (a.k.a. Info). Эта команда
переходит в специальный буфер с именем `*info*', где вы
можете читать интерактивные руководства для пакетов
можете читать интерактивные руководства для пакетов,
установленных в вашей системе. Наберите m emacs <Return> для
чтения руководства по Emacs. Если вы никогда ранее не
использовали Info, то наберите ? и Emacs откроет учебник по
возможностям режима Info. Однажды ознакомившись с этим
учебником, вы должны использовать руководство Emacs Info в
качетсве основной документации.
качестве основной документации.
* ЗАКЛЮЧЕНИЕ
------------
Запомните, что чтобы выйти из Emacs насовсем используется сочетание C-x
C-c. А чтобы временно выйти в оболочку (shell) и потом вернуться обратно,
используйте C-z.
Запомните, чтобы совсем выйти из Emacs, используется сочетание клавиш
C-x C-c. А чтобы временно выйти в оболочку (shell) и потом вернуться
обратно, используйте C-z.
Этот учебник должен быть понятен всем новым пользователям, если вы найдете
что-нибудь неясное, не нужно сидеть и порицать себя -- жалуйтесь!
Этот учебник должен быть понятен всем новым пользователям, но если вы
найдете что-нибудь неясное, не нужно сидеть и порицать себя -- жалуйтесь!
* COPYING
-------
---------
Этот учебник произошел из длинной серии учебников Emacs, начатой с однажды
написанного by Stuart Cracraft для оригинального Emacs.
@ -1071,12 +1069,17 @@ Copyright (c) 1985, 1996 Free Software Foundation
Условия копирования самого Emacs более сложные, но в том же духе.
Пожалуйста, прочтите файл COPYING и затем дайте копию GNU Emacs вашим
друзьям. Помогите уничтожить обструкционизм в области программного
обеспечения ("владение") используя, создавая и распространяя свободное
обеспечения ("владение"), используя, создавая и распространяя свободное
программное обеспечение!
// замечания, исправления ошибок с нетерпением жду по адресу ottalex@beep.ru
// замечания, исправления ошибок с нетерпением жду по адресу ottalex@narod.ru
// Alex Ott.
// Большое спасибо Владимиру Бормотову, на базе перевода которого был сделан
// этот перевод
;;; Local Variables:
;;; coding: cyrillic-koi8
;;; sentence-end-double-space: nil
;;; End:
;;; arch-tag: ad4e5698-ea8b-45b7-b236-ed5ad5b72d2b

View file

@ -1134,6 +1134,7 @@ pi
;;; Local Variables:
;;; coding: iso-latin-2
;;; sentence-end-double-space: nil
;;; End:
;;; arch-tag: 985059e4-44c6-4ac9-b627-46c8db57acf6

View file

@ -1089,4 +1089,9 @@ same spirit. Please read the file COPYING and then do give copies of
GNU Emacs to your friends. Help stamp out software obstructionism
("ownership") by using, writing, and sharing free software!
;;; Local Variables:
;;; coding: latin-1
;;; sentence-end-double-space: nil
;;; End:
;;; arch-tag: b352f774-622b-4cc6-85ce-43e3baf4fc1b

View file

@ -1005,4 +1005,8 @@ virach@nectec.or.th
Translate - January 1999 by Virach Sornlertlamvanich
;;; Local Variables:
;;; sentence-end-double-space: nil
;;; End:
;;; arch-tag: 79ad252a-448a-4dc9-a4cb-2097dd1ec014

View file

@ -14,6 +14,7 @@ TUTORIAL.ko: Koaunghi Un <koaunghi@ling.cnu.ac.kr>
TUTORIAL.nl: Pieter Schoenmakers <tiggr@tiggr.net>
TUTORIAL.pl: Beatę Wierzchołowską <beataw@orient.uw.edu.pl>
Janusz S. Bien <jsbien@mail.uw.edu.pl>
TUTORIAL.pt_BR: Marcelo Toledo <marcelo@marcelotoledo.org>
TUTORIAL.ro: Tudor Hulubei <tudor@gnu.org>
TUTORIAL.ru: Alex Ott <ottalex@narod.ru>
TUTORIAL.sk: Miroslav Vaško <vasko@debian.cz>

View file

@ -91,6 +91,16 @@ symbol: comma
"src/swapping.c", line 30.34: 1506-342 (W) "/*" detected in comment.
* EDG C/C++
symbol: edg-1 edg-2
build/intel/debug/../../../struct.cpp(42): error: identifier "foo" is undefined
build/intel/debug/../../../struct.cpp(44): warning #1011: missing return statement at end of ...
build/intel/debug/../../../iptr.h(302): remark #981: operands are evaluated in unspecified order
detected during ... at line 62 of "build/intel/debug/../../../trace.h"
* EPC F90 compiler
symbol: epc
@ -120,6 +130,7 @@ foo.c(5:5) : error EDC0350: Syntax error.
symbol: irix
ccom: Error: foo.c, line 2: syntax error
cc: Severe: /src/Python-2.3.3/Modules/_curses_panel.c, line 17: Cannot find file <panel.h> ...
cc: Info: foo.c, line 27: ...
cfe: Warning 712: foo.c, line 2: illegal combination of pointer and ...
cfe: Warning 600: xfe.c: 170: Not in a conditional directive while ...
@ -194,6 +205,7 @@ foo.c:8.23-9.1: message
jade:dbcommon.dsl:133:17:E: missing argument for function call
G:/cygwin/dev/build-myproj.xml:54: Compiler Adapter 'javac' can't be found.
file:G:/cygwin/dev/build-myproj.xml:54: Compiler Adapter 'javac' can't be found.
{standard input}:27041: Warning: end of file not at end of a line; newline inserted
* Lucid Compiler, lcc 3.x
@ -241,7 +253,17 @@ d:\tmp\test.c(23) : error C2143: syntax error : missing ';' before 'if'
symbol: oracle
This stupid precompiler wraps lines at column 80 in the middle of a file name.
There is no obvious way of detecting this or turning it off. But if you
delete the newline, the file name will automatically be reparsed, so that you
can then go there.
Semantic error at line 528, column 5, file erosacqdb.pc:
Error at line 41, column 10 in file /usr/src/sb/ODBI_BHP.hpp
PCC-02150: error at line 49, column 27 in file /usr/src/sb/ODBI_dxfgh.pc
PCC-00003: invalid SQL Identifier at column name in line 12 of file /usr/src/sb/ODBI_BHP.hpp
PCC-00004: mismatched IF/ELSE/ENDIF block at line 27 in file /usr/src/sb/ODBI_BHP.hpp
PCC-02151: line 21 column 40 file /usr/src/sb/ODBI_BHP.hpp:
* Perl
@ -298,14 +320,6 @@ symbol: sun-ada
/home3/xdhar/rcds_rc/main.a, line 361, char 6:syntax error: "," inserted
* Ultrix 3.0 f77 & Some SGI cc version
symbol: ultrix
fort: Severe: addstf.f, line 82: Missing operator or delimiter symbol
cfe: Warning 835: foo.c, line 2: something
* 4.3BSD grep, cc, lint
symbol: 4bsd

112
etc/emacs.py Normal file
View file

@ -0,0 +1,112 @@
"""Definitions used by commands sent to inferior Python in python.el."""
# Copyright (C) 2004 Free Software Foundation, Inc.
# Author: Dave Love <d.love@dl.ac.uk>
# This file is part of GNU Emacs.
# GNU Emacs is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
# GNU Emacs is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with GNU Emacs; see the file COPYING. If not, write to the
# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
import os, sys, traceback, inspect, rlcompleter, __main__
__all__ = ["eexecfile", "args", "complete", "ehelp", "eimport"]
def eexecfile (file):
"""Execute FILE and then remove it.
If we get an exception, print a traceback with the top frame
(oursleves) excluded."""
try:
try: execfile (file, globals (), globals ())
except:
(type, value, tb) = sys.exc_info ()
# Lose the stack frame for this location.
tb = tb.tb_next
if tb is None: # print_exception won't do it
print "Traceback (most recent call last):"
traceback.print_exception (type, value, tb)
finally:
os.remove (file)
def eargs (name):
"Get arglist of NAME for Eldoc &c."
try:
parts = name.split ('.')
if len (parts) > 1:
exec 'import ' + parts[0] # might fail
func = eval (name)
if inspect.isbuiltin (func):
doc = func.__doc__
if doc.find (' ->') != -1:
print '_emacs_out', doc.split (' ->')[0]
elif doc.find ('\n') != -1:
print '_emacs_out', doc.split ('\n')[0]
return
if inspect.ismethod (func):
func = func.im_func
if not inspect.isfunction (func):
return
(args, varargs, varkw, defaults) = inspect.getargspec (func)
# No space between name and arglist for consistency with builtins.
print '_emacs_out', \
func.__name__ + inspect.formatargspec (args, varargs, varkw,
defaults)
except: pass
def complete (text, namespace = None):
"""Complete TEXT in NAMESPACE and print a Lisp list of completions.
NAMESPACE is currently not used."""
if namespace is None: namespace = __main__.__dict__
c = rlcompleter.Completer (namespace)
try:
if '.' in text:
matches = c.attr_matches (text)
else:
matches = c.global_matches (text)
print '_emacs_out (',
for elt in matches:
print '"%s"' % elt,
print ')'
except:
print '_emacs_out ()'
def ehelp (name):
"""Get help on string NAME.
First try to eval name for, e.g. user definitions where we need
the object. Otherwise try the string form."""
try: help (eval (name))
except: help (name)
def eimport (mod, dir):
"""Import module MOD with directory DIR at the head of the search path.
NB doesn't load from DIR if MOD shadows a system module."""
path0 = sys.path[0]
sys.path[0] = dir
try:
try:
if globals().has_key(mod) and inspect.ismodule (eval (mod)):
reload(eval (mod))
else:
globals ()[mod] = __import__ (mod)
except:
(type, value, tb) = sys.exc_info ()
print "Traceback (most recent call last):"
traceback.print_exception (type, value, tb.tb_next)
finally:
sys.path[0] = path0
print '_emacs_ok' # ready for input and can call continuation
# arch-tag: d90408f3-90e2-4de4-99c2-6eb9c7b9ca46

2087
etc/ru-refcard.ps Normal file

File diff suppressed because it is too large Load diff

516
etc/ru-refcard.tex Normal file
View file

@ -0,0 +1,516 @@
\documentclass[10pt]{article}
\usepackage{multicol,tabularx}
\usepackage[a4paper,hmargin={2cm,2cm},vmargin={2cm,2cm},nohead,twoside]{geometry}
\usepackage[T2A]{fontenc}
\usepackage[koi8-r]{inputenc}
\usepackage[english,russian]{babel}
\usepackage{verbatim}
%\usepackage{enumerate,calc}
%\usepackage{indentfirst,amsmath,graphicx,citehack,floatflt}
%
%\usepackage{pscyr}
%\renewcommand{\rmdefault}{fha}
\newlength{\ColWidth}
\setlength{\ColWidth}{120mm}
\newlength{\ColThreeWidth}
\setlength{\ColThreeWidth}{25mm}
\newcommand{\versionnumber}[0]{2.2}
\newcommand{\nyear}[0]{1997}
\newcommand\shortcopyrightnotice[0]{\vskip 1ex plus 2 fill
\centerline{\footnotesize \copyright\ \nyear\ Free Software Foundation, Inc.
Permissions on back. v\versionnumber}}
\newcommand\copyrightnotice[0]{
\vskip 1ex plus 2 fill\begingroup\footnotesize
\centerline{Copyright \copyright\ \nyear\ Free Software Foundation, Inc.}
\centerline{v\versionnumber{} for GNU Emacs version 21, June \nyear}
\centerline{designed by Stephen Gildea}
\centerline{Перевод Alex Ott <ottalex at narod.ru>}
Permission is granted to make and distribute copies of
this card provided the copyright notice and this permission notice
are preserved on all copies.
For copies of the GNU Emacs manual, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
\endgroup}
\hyphenation{mini-buf-fer}
\parindent 0pt
%\parskip 0.5ex plus .2ex minus .2ex
\newcommand{\kbd}[1]{\texttt{#1}}
\begin{document}
%\begin{multicols}{3}
\centerline{Справочная карта по GNU Emacs}
\centerline{(для версии 21)}
\section{Запуск Emacs}
Для запуска GNU Emacs 21, просто наберите имя программы: \kbd{emacs}
О том, как открывать файлы, читайте далее в разделе Файлы.
\section{Выход из Emacs}
\begin{tabular}{p{\ColWidth}p{\ColThreeWidth}p{\ColThreeWidth}}
Приостановить работу Emacs (или свернуть в иконку при работе в X) & \kbd{C-z} \\
Выйти из Emacs & \kbd{C-x C-c} \\
\end{tabular}
\section{Файлы}
\begin{tabular}{p{\ColWidth}p{\ColThreeWidth}p{\ColThreeWidth}}
{\bf открыть} файл в буфере Emacs & \kbd{C-x C-f} \\
{\bf сохранить} файл обратно на диск & \kbd{C-x C-s} \\
сохранить {\bf все} файлы & \kbd{C-x s} \\
{\bf вставить} содержимое другого файла в текущий буфер & \kbd{C-x i} \\
открыть нужный вам файл вместо текущего & \kbd{C-x C-v} \\
сохранить буфер в указанном файле & \kbd{C-x C-w} \\
Включить/выключить состояние буфера ``только для чтения'' & \kbd{C-x C-q} \\
\end{tabular}
\section{Получение помощи}
Справочная система достаточно проста. Hажмите \kbd{C-h} (или \kbd{F1}) и
следуйте инструкциям. Если вы в первый раз работаете с Emacs, наберите
\kbd{C-u C-h t Russian RET} для вызова {\bf учебника}.
\begin{tabular}{p{\ColWidth}p{\ColThreeWidth}p{\ColThreeWidth}}
Закрыть окно справки & \kbd{C-x 1} \\
Прокрутить окно справки & \kbd{C-M-v} \\
apropos: показать команды, соответствующие строке & \kbd{C-h a} \\
показать имя функции, которая запускается клавишей & \kbd{C-h c} \\
описать функцию & \kbd{C-h f} \\
получить информацию о режиме & \kbd{C-h m} \\
\end{tabular}
\section{Исправление ошибок}
\begin{tabular}{p{\ColWidth}p{\ColThreeWidth}p{\ColThreeWidth}}
{\bf прервать} частично набранную или исполняемую команду & \kbd{C-g} \\
{\bf восстановить} файл, потерянный при крахе системы & \kbd{M-x recover-file} \\
{\bf отменить} нежелательные изменения & \kbd{C-x u {\rm или} C-\_} \\
восстановить буфер в первоначальное состояние & \kbd{M-x revert-buffer} \\
перерисовать заполненный мусором экран & \kbd{C-l} \\
\end{tabular}
\section{Hаращиваемый поиск}
\begin{tabular}{p{\ColWidth}p{\ColThreeWidth}p{\ColThreeWidth}}
поиск вперед & \kbd{C-s} \\
поиск назад & \kbd{C-r} \\
поиск по регулярному выражению & \kbd{C-M-s} \\
поиск по регулярному выражению назад & \kbd{C-M-r} \\
выбрать предыдущую строку поиска & \kbd{M-p} \\
выбрать следующую строку поиска & \kbd{M-n} \\
прекратить наращиваемый поиск & \kbd{RET} \\
отменить эффект ввода последнего символа & \kbd{DEL} \\
прервать текущий поиск & \kbd{C-g} \\
\end{tabular}
Для повтора поиска в любом направлении используйте клавиши \kbd{C-s} или
\kbd{C-r}. Если Emacs все еще производит поиск, \kbd{C-g} отменит только
несделанную часть.
\section{Перемещение}
\begin{tabular}{p{\ColWidth}p{\ColThreeWidth}p{\ColThreeWidth}}
{\bf единицы перемещения} & {\bf назад} & {\bf вперед} \\
символ & \kbd{C-b} & \kbd{C-f} \\
слово & \kbd{M-b} & \kbd{M-f} \\
строка & \kbd{C-p} & \kbd{C-n} \\
начало (или конец) строки & \kbd{C-a} & \kbd{C-e} \\
предложение & \kbd{M-a} & \kbd{M-e} \\
абзац & \kbd{M-\{} & \kbd{M-\}} \\
страница & \kbd{C-x [} & \kbd{C-x ]} \\
выражение (sexp) & \kbd{C-M-b} & \kbd{C-M-f} \\
функция & \kbd{C-M-a} & \kbd{C-M-e} \\
переход в начало (или конец) буфера & \kbd{M-<} & \kbd{M->} \\
\end{tabular}
\begin{tabular}{p{\ColWidth}l}
прокрутка экрана вниз & \kbd{C-v} \\
прокрутка экрана вверх & \kbd{M-v} \\
прокрутка влево & \kbd{C-x <} \\
прокрутка вправо & \kbd{C-x >} \\
прокрутка текущей строки в центр экрана & \kbd{C-u C-l} \\
\end{tabular}
\section{Уничтожение и удаление}
\begin{tabular}{p{\ColWidth}p{\ColThreeWidth}p{\ColThreeWidth}}
{\bf уничтожаемый объект} & {\bf назад} & {\bf вперед} \\
символ (удаление, а не уничтожение) & \kbd{DEL} & \kbd{C-d} \\
слово & \kbd{M-DEL} & \kbd{M-d} \\
строка (до конца строки) & \kbd{M-0 C-k} & \kbd{C-k} \\
предложение & \kbd{C-x DEL} & \kbd{M-k} \\
выражение & \kbd{M-- C-M-k} & \kbd{C-M-k} \\
\end{tabular}
\begin{tabular}{p{\ColWidth}l}
уничтожить {\bf область} & \kbd{C-w} \\
скопировать область в список уничтожений & \kbd{M-w} \\
уничтожить до следующего вхождения символа {\it char} & \kbd{M-z {\it char}} \\
вставить последний уничтоженный объект & \kbd{C-y} \\
заменить только что восстановленный текст предшествующим уничтоженным текстом & M-y \\
\end{tabular}
\section{Пометка}
\begin{tabular}{p{\ColWidth}l}
установить пометки & \kbd{C-@ {\rm or} C-SPC} \\
обменять местами курсор и пометку & \kbd{C-x C-x} \\
пометить {\it arg\/} {\bf слов} & \kbd{M-@} \\
пометить {\bf параграф} & \kbd{M-h} \\
пометить {\bf страницу} & \kbd{C-x C-p} \\
пометить {\bf выражение} & \kbd{C-M-@} \\
пометить {\bf функцию} & \kbd{C-M-h} \\
пометить весь {\bf буфер} & \kbd{C-x h} \\
\end{tabular}
\section{Замена с запросом}
\begin{tabular}{p{\ColWidth}l}
интерактивная замена текстовой строки & \kbd{M-\%} \\
с использованием регулярных выражений & \kbd{M-x query-replace-regexp} \\
\end{tabular}
В режиме интерактивной замены пользователю доступны следующие ответы:
\begin{tabular}{p{\ColWidth}l}
{\bf заменить} данное соответствие, перейти к следующему & \kbd{SPC} \\
заменить это соответствие, не перемещаться & \kbd{,} \\
{\bf пропустить} соответствие без замены & \kbd{DEL} \\
заменить все оставшиеся соответствия & \kbd{!} \\
{\bf вернуться} к предыдущему соответствию & \kbd{\^} \\
{\bf выйти} из режима замена с запросом & \kbd{RET} \\
войти в режим рекурсивного редактирования (для выхода используется \kbd{C-M-c}) & \kbd{C-r} \\
\end{tabular}
\section{Множество окон}
Команды, приведенные во втором столбце, применяются к другому
(неактивному) окну.
\begin{tabular}{p{\ColWidth}l}
удалить все остальные окна & \kbd{C-x 1} \\
\end{tabular}
\begin{tabular}{p{\ColWidth}p{\ColThreeWidth}p{\ColThreeWidth}}
разбить окно по горизонтали & \kbd{C-x 2\ \ \ \ } & \kbd{C-x 5 2} \\
удалить данное окно & \kbd{C-x 0\ \ \ \ } & \kbd{C-x 5 0} \\
разбить окно по вертикали & \kbd{C-x 3} \\
выполнить прокрутку в другом окне & \kbd{C-M-v} \\
\end{tabular}
\begin{tabular}{p{\ColWidth}p{\ColThreeWidth}p{\ColThreeWidth}}
переместить курсор в другое окно & \kbd{C-x o} & \kbd{C-x 5 o} \\
выбрать буфер в другом окне & \kbd{C-x 4 b} & \kbd{C-x 5 b} \\
показать буфер в другом окне & \kbd{C-x 4 C-o} & \kbd{C-x 5 C-o} \\
загрузить файл в другое окно & \kbd{C-x 4 f} & \kbd{C-x 5 f} \\
открыть файл в режиме чтения в другом окне & \kbd{C-x 4 r} & \kbd{C-x 5 r} \\
запустить Dired в другом окне & \kbd{C-x 4 d} & \kbd{C-x 5 d} \\
найти таг в другом окне & \kbd{C-x 4 .} & \kbd{C-x 5 .} \\
\end{tabular}
\begin{tabular}{p{\ColWidth}l}
увеличить высоту окна & \kbd{C-x \^} \\
сузить текущее окно & \kbd{C-x \{} \\
расширить текущее окно & \kbd{C-x \}} \\
\end{tabular}
\section{Форматирование}
\begin{tabular}{p{\ColWidth}l}
сделать отступ для текущей {\bf строки} (в зависимости от режима) & \kbd{TAB} \\
сделать отступ для {\bf области} (в зависимости от режима) & \kbd{C-M-$\backslash$} \\
сделать отступ для {\bf выражения} (в зависимости от режима) & \kbd{C-M-q} \\
сделать отступ к заданной {\it arg\/} колонке & \kbd{C-x TAB} \\
вставить новую строку после курсора & \kbd{C-o} \\
сдвинуть остаток строки вертикально вниз & \kbd{C-M-o} \\
удалить пустые строки вокруг курсора & \kbd{C-x C-o} \\
объединить строку с предыдущей (со следующими arg) & \kbd{M-\^} \\
удалить пустое пространство вокруг курсора & \kbd{M-$\backslash$} \\
поместить только один пробел в позиции курсора & \kbd{M-SPC} \\
заполнить текущий параграф & \kbd{M-q} \\
установить столбец заполнения & \kbd{C-x f} \\
установить префикс заполнения каждой строки & \kbd{C-x .} \\
установить начертание & \kbd{M-g} \\
\end{tabular}
\section{Изменение регистра}
\begin{tabular}{p{\ColWidth}l}
сделать буквы слова заглавными & \kbd{M-u} \\
сделать буквы слова строчными & \kbd{M-l} \\
сделать первую букву слова заглавной & \kbd{M-c} \\
сделать буквы области заглавными & \kbd{C-x C-u} \\
сделать буквы области строчными & \kbd{C-x C-l} \\
\end{tabular}
\section{Минибуфер}
Следующие клавиши (ключи) определены в минибуфере.
\begin{tabular}{p{\ColWidth}l}
дополнить насколько возможно & \kbd{TAB} \\
дополнить до одного слова & \kbd{SPC} \\
дополнить и выполнить & \kbd{RET} \\
показать возможные дополнения & \kbd{?} \\
выбрать предыдущий ввод в минибуфер & \kbd{M-p} \\
выбрать следующий ввод в минибуфер & \kbd{M-n} \\
поиск в истории по регулярному выражению в обратном напрвлении & \kbd{M-r} \\
поиск в истории по регулярному выражению в прямом напрвлении & \kbd{M-s} \\
прервать команду & \kbd{C-g} \\
\end{tabular}
Наберите \kbd{C-x ESC ESC} для редактирования и повторения последней
команды набранной в минибуфере. Наберите \kbd{F10}, чтобы работать с
пунктами меню при помощи команд минибуфера.
\section{Буфера}
\begin{tabular}{p{\ColWidth}l}
выбрать другой буфер & \kbd{C-x b} \\
выдать список всех буферов & \kbd{C-x C-b} \\
уничтожить буфер & \kbd{C-x k} \\
\end{tabular}
\section{Обмен местами}
\begin{tabular}{p{\ColWidth}l}
обменять местами {\bf символы} & \kbd{C-t} \\
обменять местами {\bf слова} & \kbd{M-t} \\
обменять местами {\bf строки} & \kbd{C-x C-t} \\
обменять местами {\bf выражения} & \kbd{C-M-t} \\
\end{tabular}
\section{Проверка грамматики}
\begin{tabular}{p{\ColWidth}l}
проверить текущее слово & \kbd{M-\$} \\
проверить все слова в области & \kbd{M-x ispell-region} \\
выполнить проверку всего буфера & \kbd{M-x ispell-buffer} \\
\end{tabular}
\section{Теги}
\begin{tabular}{p{\ColWidth}l}
найти определение тега & \kbd{M-.} \\
найти следующее вхождение тега & \kbd{C-u M-.} \\
указать новый файл с тегами & \kbd{M-x visit-tags-table} \\
поиск по шаблону по всей таблице тегов & \kbd{M-x tags-search} \\
выполнить query-replace над всеми файлами & \kbd{M-x tags-query-replace} \\
продолжить поиск или поиск-замену тега & \kbd{M-,} \\
\end{tabular}
\section{Командные процессоры}
\begin{tabular}{p{\ColWidth}l}
Выполнить команду командного процессора & \kbd{M-!} \\
выполнить команду командного процессора над областью & \kbd{M-|} \\
пропустить содержимое области через команду командного процессора & \kbd{C-u M-|} \\
запустить командный процессор в окне \kbd{*shell*} & \kbd{M-x shell} \\
\end{tabular}
\section{Прямоугольные области}
\begin{tabular}{p{\ColWidth}l}
скопировать прямоугольную область в регистр & \kbd{C-x r r} \\
удалить прямоугольную область & \kbd{C-x r k} \\
вставить последную уничтоженную прямоугольную область & \kbd{C-x r y} \\
открыть прямоугольную область, сдвигая текст вправо & \kbd{C-x r o} \\
очистить прямоугольную область & \kbd{C-x r c} \\
предварить каждую строку строкой текста & \kbd{C-x r t} \\
\end{tabular}
\section{Сокращения}
\begin{tabular}{p{\ColWidth}l}
добавить глобальное сокращение & \kbd{C-x a g} \\
добавить локальное для режима сокращение & \kbd{C-x a l} \\
добавить глобальное значение для данного сокращения & \kbd{C-x a i g} \\
добавить специфическое для режима значение данного сокращения & \kbd{C-x a i l} \\
явно вставить значение для сокращения & \kbd{C-x a e} \\
динамически дополнить предыдущее слово & \kbd{M-/} \\
\end{tabular}
\section{Регулярные выражения}
\begin{tabular}{p{\ColWidth}l}
любой одиночный символ (за исключением символа новой строки) & \kbd{. {\rm(dot)}} \\
ноль или более повторений & \kbd{*} \\
одно или более повторений & \kbd{+} \\
ноль или одно повторение & \kbd{?} \\
экранировать специальный символ {\it c\/} & \kbd{$\backslash${\it c}} \\
выбор между альтернативами (``или'') & \kbd{$\backslash|$} \\
группировка & \kbd{$\backslash$( {\rm$\ldots$} $\backslash$)} \\
текст в {\it n\/}-й группе & \kbd{$\backslash${\it n}} \\
граница слова & \kbd{$\backslash$b} \\
не граница слова & \kbd{$\backslash$B} \\
\end{tabular}
\begin{tabular}{p{\ColWidth}p{\ColThreeWidth}p{\ColThreeWidth}}
{\bf объект} & {\bf начало соответствия} & {\bf конец соответствия} \\
строка & \kbd{\^} & \kbd{\$} \\
слово & \kbd{$\backslash$<} & \kbd{$\backslash$>} \\
буфер & \kbd{$\backslash$`} & \kbd{$\backslash$'} \\
\end{tabular}
\begin{tabular}{p{\ColWidth}p{\ColThreeWidth}p{\ColThreeWidth}}
{\bf класс символов} & {\bf соответ\-ствует им} & {\bf соответ\-ствует другим} \\
явный набор & \kbd{[ {\rm$\ldots$} ]} & \kbd{[\^ {\rm$\ldots$} ]} \\
символ-буква & \kbd{$\backslash$w} & \kbd{$\backslash$W} \\
символ с синтаксисом {\it c} & \kbd{$\backslash$s{\it c}} & \kbd{$\backslash$S{\it c}} \\
\end{tabular}
\section{Международные наборы символов}
\begin{tabular}{p{\ColWidth}l}
выбрать язык & \kbd{M-x set-language-environment} \\
показать все возможные методы ввода & \kbd{M-x list-input-methods} \\
разрешить или запретить метод ввода & \kbd{C-$\backslash$} \\
установить систему кодирования для следующей команды & \kbd{C-x RET c} \\
показать список всех систем кодирования & \kbd{M-x list-coding-systems} \\
выбрать предпочтительную систему кодирования & \kbd{M-x prefer-coding-system} \\
\end{tabular}
\section{Информация (система Info)}
\begin{tabular}{p{\ColWidth}l}
запустить систему доступа к документации & \kbd{C-h i} \\
найти указанную функцию или переменную в документации & \kbd{C-h C-i} \\
\end{tabular}
Перемещение внутри узла (нодами):
\begin{tabular}{p{\ColWidth}l}
прокрутка вперед & \kbd{SPC} \\
прокрутка назад & \kbd{DEL} \\
перейти к началу узла & \kbd{. {\rm (dot)}} \\
\end{tabular}
Перемещение между узлами:
\begin{tabular}{p{\ColWidth}l}
{\bf следующий} узел & \kbd{n} \\
{\bf предыдущий} узел & \kbd{p} \\
перейти к {\bf верхнему} узлу & \kbd{u} \\
выбрать меню по имени & \kbd{m} \\
выбрать {\it n\/}-й пункт меню по номеру (1--9) & \kbd{{\it n}} \\
перейти по ссылке (возврат с помощью \kbd{l}) & \kbd{f} \\
возвратится к последнему просмотренному узлу & \kbd{l} \\
возвратится к узлу-каталогу & \kbd{d} \\
перейти к узлу, заданному именем & \kbd{g} \\
\end{tabular}
Другие команды:
\begin{tabular}{p{\ColWidth}l}
запустить {\bf учебник} по системе документации & \kbd{h} \\
{\bf прекратить работу} с документацией & \kbd{q} \\
поиск в узлах с помощью регулярных выражений & \kbd{M-s} \\
\end{tabular}
\section{Регистры}
\begin{tabular}{p{\ColWidth}l}
сохранить область в регистре & \kbd{C-x r s} \\
вставить содержимое регистра в буфер & \kbd{C-x r i} \\
сохранить положение курсора в регистре & \kbd{C-x r SPC} \\
перейти к положению курсора, сохраненному в регистре & \kbd{C-x r j} \\
\end{tabular}
\section{Клавиатурные макросы}
\begin{tabular}{p{\ColWidth}l}
{\bf начать} определение клавиатурного макроса & \kbd{C-x (} \\
{\bf закончить} определение клавиатурного макроса & \kbd{C-x )} \\
{\bf выполнить} последний определенный макрос & \kbd{C-x e} \\
дополнить последний определенный макрос & \kbd{C-u C-x (} \\
задать имя для последнего определенного макроса & \kbd{M-x name-last-kbd-macro} \\
вставить в буфер определение макроса на языке Lisp & \kbd{M-x insert-kbd-macro} \\
\end{tabular}
\section{Команды, связанные с Emacs Lisp}
\begin{tabular}{p{\ColWidth}l}
вычислить {\bf выражение} перед курсором & \kbd{C-x C-e} \\
вычислить текущую функцию {\bf defun} & \kbd{C-M-x} \\
вычислить {\bf область} как выражение & \kbd{M-x eval-region} \\
считать и вычислить выражение из минибуфера & \kbd{M-:} \\
загрузить из стандартного системного каталога & \kbd{M-x load-library} \\
\end{tabular}
\section{Простая настройка}
\begin{tabular}{p{\ColWidth}l}
настроить переменные и оформление (faces) & \kbd{M-x customize} \\
\end{tabular}
% The intended audience here is the person who wants to make simple
% customizations and knows Lisp syntax.
Создать глобальное назначение ключей на Emacs Lisp (пример):
\begin{verbatim}
(global-set-key "\C-cg" 'goto-line)
(global-set-key "\M-#" 'query-replace-regexp)
\end{verbatim}
\section{Написание команд}
\begin{verbatim}
(defun <command-name> (<args>)
"<documentation>" (interactive "<template>")
<body>)
\end{verbatim}
Пример:
\begin{verbatim}
(defun this-line-to-top-of-window (line)
"Reposition line point is on to top of window.
With ARG, put point on line ARG."
(interactive "P")
(recenter (if (null line)
0
(prefix-numeric-value line))))
\end{verbatim}
Спецификация \kbd{interactive} сообщает о том, что аргумент надо считывать
интерактивно. Для дополнительной информации наберите \kbd{C-h f interactive}.
\copyrightnotice
%\end{multicols}
\end{document}
% arch-tag: 868a12f6-4339-4a14-a56e-4a3937277a9e

Binary file not shown.

After

Width:  |  Height:  |  Size: 999 B

View file

@ -0,0 +1,284 @@
/* XPM */
static char *close[] = {
/* width height num_colors chars_per_pixel */
" 16 21 256 2",
/* colors */
"`` c #840000",
"`. c #942929",
"`# c #9c3131",
"`a c #9c3939",
"`b c #a54242",
"`c c #a54a4a",
"`d c #ad4a4a",
"`e c #ad5252",
"`f c #ad5a5a",
"`g c None",
"`h c #ffffff",
"`i c #ffffff",
"`j c #ffffff",
"`k c #ffffff",
"`l c #ffffff",
"`m c #ffffff",
"`n c #ffffff",
"`o c #ffffff",
"`p c #ffffff",
"`q c #ffffff",
"`r c #ffffff",
"`s c #ffffff",
"`t c #ffffff",
"`u c #ffffff",
"`v c #ffffff",
"`w c #ffffff",
"`x c #ffffff",
"`y c #ffffff",
"`z c #ffffff",
"`A c #ffffff",
"`B c #ffffff",
"`C c #ffffff",
"`D c #ffffff",
"`E c #ffffff",
"`F c #ffffff",
"`G c #ffffff",
"`H c #ffffff",
"`I c #ffffff",
"`J c #ffffff",
"`K c #ffffff",
"`L c #ffffff",
"`M c #ffffff",
"`N c #ffffff",
"`O c #ffffff",
"`P c #ffffff",
"`Q c #ffffff",
"`R c #ffffff",
"`S c #ffffff",
"`T c #ffffff",
"`U c #ffffff",
"`V c #ffffff",
"`W c #ffffff",
"`X c #ffffff",
"`Y c #ffffff",
"`Z c #ffffff",
"`0 c #ffffff",
"`1 c #ffffff",
"`2 c #ffffff",
"`3 c #ffffff",
"`4 c #ffffff",
"`5 c #ffffff",
"`6 c #ffffff",
"`7 c #ffffff",
"`8 c #ffffff",
".` c #ffffff",
".. c #ffffff",
".# c #ffffff",
".a c #ffffff",
".b c #ffffff",
".c c #ffffff",
".d c #ffffff",
".e c #ffffff",
".f c #ffffff",
".g c #ffffff",
".h c #ffffff",
".i c #ffffff",
".j c #ffffff",
".k c #ffffff",
".l c #ffffff",
".m c #ffffff",
".n c #ffffff",
".o c #ffffff",
".p c #ffffff",
".q c #ffffff",
".r c #ffffff",
".s c #ffffff",
".t c #ffffff",
".u c #ffffff",
".v c #ffffff",
".w c #ffffff",
".x c #ffffff",
".y c #ffffff",
".z c #ffffff",
".A c #ffffff",
".B c #ffffff",
".C c #ffffff",
".D c #ffffff",
".E c #ffffff",
".F c #ffffff",
".G c #ffffff",
".H c #ffffff",
".I c #ffffff",
".J c #ffffff",
".K c #ffffff",
".L c #ffffff",
".M c #ffffff",
".N c #ffffff",
".O c #ffffff",
".P c #ffffff",
".Q c #ffffff",
".R c #ffffff",
".S c #ffffff",
".T c #ffffff",
".U c #ffffff",
".V c #ffffff",
".W c #ffffff",
".X c #ffffff",
".Y c #ffffff",
".Z c #ffffff",
".0 c #ffffff",
".1 c #ffffff",
".2 c #ffffff",
".3 c #ffffff",
".4 c #ffffff",
".5 c #ffffff",
".6 c #ffffff",
".7 c #ffffff",
".8 c #ffffff",
"#` c #ffffff",
"#. c #ffffff",
"## c #ffffff",
"#a c #ffffff",
"#b c #ffffff",
"#c c #ffffff",
"#d c #ffffff",
"#e c #ffffff",
"#f c #ffffff",
"#g c #ffffff",
"#h c #ffffff",
"#i c #ffffff",
"#j c #ffffff",
"#k c #ffffff",
"#l c #ffffff",
"#m c #ffffff",
"#n c #ffffff",
"#o c #ffffff",
"#p c #ffffff",
"#q c #ffffff",
"#r c #ffffff",
"#s c #ffffff",
"#t c #ffffff",
"#u c #ffffff",
"#v c #ffffff",
"#w c #ffffff",
"#x c #ffffff",
"#y c #ffffff",
"#z c #ffffff",
"#A c #ffffff",
"#B c #ffffff",
"#C c #ffffff",
"#D c #ffffff",
"#E c #ffffff",
"#F c #ffffff",
"#G c #ffffff",
"#H c #ffffff",
"#I c #ffffff",
"#J c #ffffff",
"#K c #ffffff",
"#L c #ffffff",
"#M c #ffffff",
"#N c #ffffff",
"#O c #ffffff",
"#P c #ffffff",
"#Q c #ffffff",
"#R c #ffffff",
"#S c #ffffff",
"#T c #ffffff",
"#U c #ffffff",
"#V c #ffffff",
"#W c #ffffff",
"#X c #ffffff",
"#Y c #ffffff",
"#Z c #ffffff",
"#0 c #ffffff",
"#1 c #ffffff",
"#2 c #ffffff",
"#3 c #ffffff",
"#4 c #ffffff",
"#5 c #ffffff",
"#6 c #ffffff",
"#7 c #ffffff",
"#8 c #ffffff",
"a` c #ffffff",
"a. c #ffffff",
"a# c #ffffff",
"aa c #ffffff",
"ab c #ffffff",
"ac c #ffffff",
"ad c #ffffff",
"ae c #ffffff",
"af c #ffffff",
"ag c #ffffff",
"ah c #ffffff",
"ai c #ffffff",
"aj c #ffffff",
"ak c #ffffff",
"al c #ffffff",
"am c #ffffff",
"an c #ffffff",
"ao c #ffffff",
"ap c #ffffff",
"aq c #ffffff",
"ar c #ffffff",
"as c #ffffff",
"at c #ffffff",
"au c #ffffff",
"av c #ffffff",
"aw c #ffffff",
"ax c #ffffff",
"ay c #ffffff",
"az c #ffffff",
"aA c #ffffff",
"aB c #ffffff",
"aC c #ffffff",
"aD c #ffffff",
"aE c #ffffff",
"aF c #ffffff",
"aG c #ffffff",
"aH c #ffffff",
"aI c #ffffff",
"aJ c #ffffff",
"aK c #ffffff",
"aL c #ffffff",
"aM c #ffffff",
"aN c #ffffff",
"aO c #ffffff",
"aP c #ffffff",
"aQ c #ffffff",
"aR c #ffffff",
"aS c #ffffff",
"aT c #ffffff",
"aU c #ffffff",
"aV c #ffffff",
"aW c #ffffff",
"aX c #ffffff",
"aY c #ffffff",
"aZ c #ffffff",
"a0 c #ffffff",
"a1 c #ffffff",
"a2 c #ffffff",
"a3 c #ffffff",
"a4 c #ffffff",
"a5 c #ffffff",
"a6 c #ffffff",
"a7 c #ffffff",
"a8 c #ffffff",
/* pixels */
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g```````g`g`g`g`g`g`g`g`g",
"`g`g`g`````.`````g`g`g`g`g`g`g`g",
"`g`g`````.`#`a`````g`g`g`g`g`g`g",
"`g`````.`#`a`a`b`````g`g`g`g`g`g",
"`````.`#`a`a`b`c`e`````g`g`g`g`g",
"```.`#`a`a`b`c`e`e`f```g`g`g`g`g",
"`````a`a`b`c`e`e`f`````g`g`g`g`g",
"`g`````b`c`e`e`f`````g`g`g`g`g`g",
"`g`g`````e`e`f`````g`g`g`g`g`g`g",
"`g`g`g`````f`````g`g`g`g`g`g`g`g",
"`g`g`g`g```````g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g"
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 999 B

View file

@ -0,0 +1,284 @@
/* XPM */
static char *empty[] = {
/* width height num_colors chars_per_pixel */
" 16 21 256 2",
/* colors */
"`` c #848400",
"`. c #949429",
"`# c #9c9c31",
"`a c #9c9c39",
"`b c #a5a542",
"`c c #a5a54a",
"`d c #adad4a",
"`e c #adad52",
"`f c #adad5a",
"`g c None",
"`h c #ffffff",
"`i c #ffffff",
"`j c #ffffff",
"`k c #ffffff",
"`l c #ffffff",
"`m c #ffffff",
"`n c #ffffff",
"`o c #ffffff",
"`p c #ffffff",
"`q c #ffffff",
"`r c #ffffff",
"`s c #ffffff",
"`t c #ffffff",
"`u c #ffffff",
"`v c #ffffff",
"`w c #ffffff",
"`x c #ffffff",
"`y c #ffffff",
"`z c #ffffff",
"`A c #ffffff",
"`B c #ffffff",
"`C c #ffffff",
"`D c #ffffff",
"`E c #ffffff",
"`F c #ffffff",
"`G c #ffffff",
"`H c #ffffff",
"`I c #ffffff",
"`J c #ffffff",
"`K c #ffffff",
"`L c #ffffff",
"`M c #ffffff",
"`N c #ffffff",
"`O c #ffffff",
"`P c #ffffff",
"`Q c #ffffff",
"`R c #ffffff",
"`S c #ffffff",
"`T c #ffffff",
"`U c #ffffff",
"`V c #ffffff",
"`W c #ffffff",
"`X c #ffffff",
"`Y c #ffffff",
"`Z c #ffffff",
"`0 c #ffffff",
"`1 c #ffffff",
"`2 c #ffffff",
"`3 c #ffffff",
"`4 c #ffffff",
"`5 c #ffffff",
"`6 c #ffffff",
"`7 c #ffffff",
"`8 c #ffffff",
".` c #ffffff",
".. c #ffffff",
".# c #ffffff",
".a c #ffffff",
".b c #ffffff",
".c c #ffffff",
".d c #ffffff",
".e c #ffffff",
".f c #ffffff",
".g c #ffffff",
".h c #ffffff",
".i c #ffffff",
".j c #ffffff",
".k c #ffffff",
".l c #ffffff",
".m c #ffffff",
".n c #ffffff",
".o c #ffffff",
".p c #ffffff",
".q c #ffffff",
".r c #ffffff",
".s c #ffffff",
".t c #ffffff",
".u c #ffffff",
".v c #ffffff",
".w c #ffffff",
".x c #ffffff",
".y c #ffffff",
".z c #ffffff",
".A c #ffffff",
".B c #ffffff",
".C c #ffffff",
".D c #ffffff",
".E c #ffffff",
".F c #ffffff",
".G c #ffffff",
".H c #ffffff",
".I c #ffffff",
".J c #ffffff",
".K c #ffffff",
".L c #ffffff",
".M c #ffffff",
".N c #ffffff",
".O c #ffffff",
".P c #ffffff",
".Q c #ffffff",
".R c #ffffff",
".S c #ffffff",
".T c #ffffff",
".U c #ffffff",
".V c #ffffff",
".W c #ffffff",
".X c #ffffff",
".Y c #ffffff",
".Z c #ffffff",
".0 c #ffffff",
".1 c #ffffff",
".2 c #ffffff",
".3 c #ffffff",
".4 c #ffffff",
".5 c #ffffff",
".6 c #ffffff",
".7 c #ffffff",
".8 c #ffffff",
"#` c #ffffff",
"#. c #ffffff",
"## c #ffffff",
"#a c #ffffff",
"#b c #ffffff",
"#c c #ffffff",
"#d c #ffffff",
"#e c #ffffff",
"#f c #ffffff",
"#g c #ffffff",
"#h c #ffffff",
"#i c #ffffff",
"#j c #ffffff",
"#k c #ffffff",
"#l c #ffffff",
"#m c #ffffff",
"#n c #ffffff",
"#o c #ffffff",
"#p c #ffffff",
"#q c #ffffff",
"#r c #ffffff",
"#s c #ffffff",
"#t c #ffffff",
"#u c #ffffff",
"#v c #ffffff",
"#w c #ffffff",
"#x c #ffffff",
"#y c #ffffff",
"#z c #ffffff",
"#A c #ffffff",
"#B c #ffffff",
"#C c #ffffff",
"#D c #ffffff",
"#E c #ffffff",
"#F c #ffffff",
"#G c #ffffff",
"#H c #ffffff",
"#I c #ffffff",
"#J c #ffffff",
"#K c #ffffff",
"#L c #ffffff",
"#M c #ffffff",
"#N c #ffffff",
"#O c #ffffff",
"#P c #ffffff",
"#Q c #ffffff",
"#R c #ffffff",
"#S c #ffffff",
"#T c #ffffff",
"#U c #ffffff",
"#V c #ffffff",
"#W c #ffffff",
"#X c #ffffff",
"#Y c #ffffff",
"#Z c #ffffff",
"#0 c #ffffff",
"#1 c #ffffff",
"#2 c #ffffff",
"#3 c #ffffff",
"#4 c #ffffff",
"#5 c #ffffff",
"#6 c #ffffff",
"#7 c #ffffff",
"#8 c #ffffff",
"a` c #ffffff",
"a. c #ffffff",
"a# c #ffffff",
"aa c #ffffff",
"ab c #ffffff",
"ac c #ffffff",
"ad c #ffffff",
"ae c #ffffff",
"af c #ffffff",
"ag c #ffffff",
"ah c #ffffff",
"ai c #ffffff",
"aj c #ffffff",
"ak c #ffffff",
"al c #ffffff",
"am c #ffffff",
"an c #ffffff",
"ao c #ffffff",
"ap c #ffffff",
"aq c #ffffff",
"ar c #ffffff",
"as c #ffffff",
"at c #ffffff",
"au c #ffffff",
"av c #ffffff",
"aw c #ffffff",
"ax c #ffffff",
"ay c #ffffff",
"az c #ffffff",
"aA c #ffffff",
"aB c #ffffff",
"aC c #ffffff",
"aD c #ffffff",
"aE c #ffffff",
"aF c #ffffff",
"aG c #ffffff",
"aH c #ffffff",
"aI c #ffffff",
"aJ c #ffffff",
"aK c #ffffff",
"aL c #ffffff",
"aM c #ffffff",
"aN c #ffffff",
"aO c #ffffff",
"aP c #ffffff",
"aQ c #ffffff",
"aR c #ffffff",
"aS c #ffffff",
"aT c #ffffff",
"aU c #ffffff",
"aV c #ffffff",
"aW c #ffffff",
"aX c #ffffff",
"aY c #ffffff",
"aZ c #ffffff",
"a0 c #ffffff",
"a1 c #ffffff",
"a2 c #ffffff",
"a3 c #ffffff",
"a4 c #ffffff",
"a5 c #ffffff",
"a6 c #ffffff",
"a7 c #ffffff",
"a8 c #ffffff",
/* pixels */
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g```````g`g`g`g`g`g`g`g`g",
"`g`g`g`````.`````g`g`g`g`g`g`g`g",
"`g`g`````.`#`a`````g`g`g`g`g`g`g",
"`g`````.`#`a`a`b`````g`g`g`g`g`g",
"`````.`#`a`a`b`c`c`````g`g`g`g`g",
"```.`#`a`a`b`c`c`e`f```g`g`g`g`g",
"`````a`a`b`c`c`e`f`````g`g`g`g`g",
"`g`````b`c`c`e`f`````g`g`g`g`g`g",
"`g`g`````c`e`f`````g`g`g`g`g`g`g",
"`g`g`g`````f`````g`g`g`g`g`g`g`g",
"`g`g`g`g```````g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g`g"
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 913 B

View file

@ -0,0 +1,284 @@
/* XPM */
static char *end-guide[] = {
/* width height num_colors chars_per_pixel */
" 6 21 256 2",
/* colors */
"`` c #000000",
"`. c #a5a5c6",
"`# c #ada5c6",
"`a c #cecee7",
"`b c #ceceff",
"`c c None",
"`d c #ffffff",
"`e c #ffffff",
"`f c #ffffff",
"`g c #ffffff",
"`h c #ffffff",
"`i c #ffffff",
"`j c #ffffff",
"`k c #ffffff",
"`l c #ffffff",
"`m c #ffffff",
"`n c #ffffff",
"`o c #ffffff",
"`p c #ffffff",
"`q c #ffffff",
"`r c #ffffff",
"`s c #ffffff",
"`t c #ffffff",
"`u c #ffffff",
"`v c #ffffff",
"`w c #ffffff",
"`x c #ffffff",
"`y c #ffffff",
"`z c #ffffff",
"`A c #ffffff",
"`B c #ffffff",
"`C c #ffffff",
"`D c #808000",
"`E c #ffffff",
"`F c #ffffff",
"`G c #ffffff",
"`H c #ffffff",
"`I c #ffffff",
"`J c #ffffff",
"`K c #ffffff",
"`L c #ffffff",
"`M c #ffffff",
"`N c #ffffff",
"`O c #ffffff",
"`P c #ffffff",
"`Q c #ffffff",
"`R c #ffffff",
"`S c #ffffff",
"`T c #ffffff",
"`U c #ffffff",
"`V c #ffffff",
"`W c #ffffff",
"`X c #ffffff",
"`Y c #ffffff",
"`Z c #ffffff",
"`0 c #ffffff",
"`1 c #ffffff",
"`2 c #ffffff",
"`3 c #ffffff",
"`4 c #ffffff",
"`5 c #ffffff",
"`6 c #ffffff",
"`7 c #ffffff",
"`8 c #ffffff",
".` c #ffffff",
".. c #ffffff",
".# c #ffffff",
".a c #ffffff",
".b c #ffffff",
".c c #ffffff",
".d c #ffffff",
".e c #ffffff",
".f c #ffffff",
".g c #ffffff",
".h c #ffffff",
".i c #ffffff",
".j c #ffffff",
".k c #ffffff",
".l c #ffffff",
".m c #ffffff",
".n c #ffffff",
".o c #ffffff",
".p c #ffffff",
".q c #ffffff",
".r c #ffffff",
".s c #ffffff",
".t c #ffffff",
".u c #ffffff",
".v c #ffffff",
".w c #ffffff",
".x c #ffffff",
".y c #ffffff",
".z c #ffffff",
".A c #ffffff",
".B c #ffffff",
".C c #ffffff",
".D c #ffffff",
".E c #ffffff",
".F c #ffffff",
".G c #ffffff",
".H c #ffffff",
".I c #ffffff",
".J c #ffffff",
".K c #ffffff",
".L c #ffffff",
".M c #ffffff",
".N c #ffffff",
".O c #ffffff",
".P c #ffffff",
".Q c #ffffff",
".R c #ffffff",
".S c #ffffff",
".T c #ffffff",
".U c #ffffff",
".V c #ffffff",
".W c #ffffff",
".X c #ffffff",
".Y c #ffffff",
".Z c #ffffff",
".0 c #ffffff",
".1 c #ffffff",
".2 c #ffffff",
".3 c #ffffff",
".4 c #ffffff",
".5 c #ffffff",
".6 c #ffffff",
".7 c #ffffff",
".8 c #ffffff",
"#` c #ffffff",
"#. c #ffffff",
"## c #ffffff",
"#a c #ffffff",
"#b c #ffffff",
"#c c #ffffff",
"#d c #ffffff",
"#e c #ffffff",
"#f c #ffffff",
"#g c #ffffff",
"#h c #ffffff",
"#i c #ffffff",
"#j c #ffffff",
"#k c #ffffff",
"#l c #ffffff",
"#m c #ffffff",
"#n c #ffffff",
"#o c #ffffff",
"#p c #ffffff",
"#q c #ffffff",
"#r c #ffffff",
"#s c #ffffff",
"#t c #ffffff",
"#u c #ffffff",
"#v c #ffffff",
"#w c #ffffff",
"#x c #ffffff",
"#y c #ffffff",
"#z c #ffffff",
"#A c #ffffff",
"#B c #ffffff",
"#C c #ffffff",
"#D c #ffffff",
"#E c #ffffff",
"#F c #ffffff",
"#G c #ffffff",
"#H c #ffffff",
"#I c #ffffff",
"#J c #ffffff",
"#K c #ffffff",
"#L c #ffffff",
"#M c #ffffff",
"#N c #ffffff",
"#O c #ffffff",
"#P c #ffffff",
"#Q c #ffffff",
"#R c #ffffff",
"#S c #ffffff",
"#T c #ffffff",
"#U c #ffffff",
"#V c #ffffff",
"#W c #ffffff",
"#X c #ffffff",
"#Y c #ffffff",
"#Z c #ffffff",
"#0 c #ffffff",
"#1 c #ffffff",
"#2 c #ffffff",
"#3 c #ffffff",
"#4 c #ffffff",
"#5 c #ffffff",
"#6 c #ffffff",
"#7 c #ffffff",
"#8 c #ffffff",
"a` c #ffffff",
"a. c #ffffff",
"a# c #ffffff",
"aa c #ffffff",
"ab c #ffffff",
"ac c #ffffff",
"ad c #ffffff",
"ae c #ffffff",
"af c #ffffff",
"ag c #ffffff",
"ah c #ffffff",
"ai c #ffffff",
"aj c #ffffff",
"ak c #ffffff",
"al c #ffffff",
"am c #ffffff",
"an c #ffffff",
"ao c #ffffff",
"ap c #ffffff",
"aq c #ffffff",
"ar c #ffffff",
"as c #ffffff",
"at c #ffffff",
"au c #ffffff",
"av c #ffffff",
"aw c #ffffff",
"ax c #ffffff",
"ay c #ffffff",
"az c #ffffff",
"aA c #ffffff",
"aB c #ffffff",
"aC c #ffffff",
"aD c #ffffff",
"aE c #ffffff",
"aF c #ffffff",
"aG c #ffffff",
"aH c #ffffff",
"aI c #ffffff",
"aJ c #ffffff",
"aK c #ffffff",
"aL c #ffffff",
"aM c #ffffff",
"aN c #ffffff",
"aO c #ffffff",
"aP c #ffffff",
"aQ c #ffffff",
"aR c #ffffff",
"aS c #ffffff",
"aT c #ffffff",
"aU c #ffffff",
"aV c #ffffff",
"aW c #ffffff",
"aX c #ffffff",
"aY c #ffffff",
"aZ c #ffffff",
"a0 c #ffffff",
"a1 c #ffffff",
"a2 c #ffffff",
"a3 c #ffffff",
"a4 c #ffffff",
"a5 c #ffffff",
"a6 c #ffffff",
"a7 c #ffffff",
"a8 c #ffffff",
/* pixels */
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`c",
"`c`c`c`c`c`c",
"`c`c`c`c`c`c",
"`c`c`c`c`c`c",
"`c`c`c`c`c`c",
"`c`c`c`c`c`c",
"`c`c`c`c`c`c",
"`c`c`c`c`c`c",
"`c`c`c`c`c`c",
"`c`c`c`c`c`c"
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 911 B

View file

@ -0,0 +1,284 @@
/* XPM */
static char *guide[] = {
/* width height num_colors chars_per_pixel */
" 6 21 256 2",
/* colors */
"`` c #000000",
"`. c #a5a5c6",
"`# c #ada5c6",
"`a c #cecee7",
"`b c #ceceff",
"`c c None",
"`d c #ffffff",
"`e c #ffffff",
"`f c #ffffff",
"`g c #ffffff",
"`h c #ffffff",
"`i c #ffffff",
"`j c #ffffff",
"`k c #ffffff",
"`l c #ffffff",
"`m c #ffffff",
"`n c #ffffff",
"`o c #ffffff",
"`p c #ffffff",
"`q c #ffffff",
"`r c #ffffff",
"`s c #ffffff",
"`t c #ffffff",
"`u c #ffffff",
"`v c #ffffff",
"`w c #ffffff",
"`x c #ffffff",
"`y c #ffffff",
"`z c #ffffff",
"`A c #ffffff",
"`B c #ffffff",
"`C c #ffffff",
"`D c #808000",
"`E c #ffffff",
"`F c #ffffff",
"`G c #ffffff",
"`H c #ffffff",
"`I c #ffffff",
"`J c #ffffff",
"`K c #ffffff",
"`L c #ffffff",
"`M c #ffffff",
"`N c #ffffff",
"`O c #ffffff",
"`P c #ffffff",
"`Q c #ffffff",
"`R c #ffffff",
"`S c #ffffff",
"`T c #ffffff",
"`U c #ffffff",
"`V c #ffffff",
"`W c #ffffff",
"`X c #ffffff",
"`Y c #ffffff",
"`Z c #ffffff",
"`0 c #ffffff",
"`1 c #ffffff",
"`2 c #ffffff",
"`3 c #ffffff",
"`4 c #ffffff",
"`5 c #ffffff",
"`6 c #ffffff",
"`7 c #ffffff",
"`8 c #ffffff",
".` c #ffffff",
".. c #ffffff",
".# c #ffffff",
".a c #ffffff",
".b c #ffffff",
".c c #ffffff",
".d c #ffffff",
".e c #ffffff",
".f c #ffffff",
".g c #ffffff",
".h c #ffffff",
".i c #ffffff",
".j c #ffffff",
".k c #ffffff",
".l c #ffffff",
".m c #ffffff",
".n c #ffffff",
".o c #ffffff",
".p c #ffffff",
".q c #ffffff",
".r c #ffffff",
".s c #ffffff",
".t c #ffffff",
".u c #ffffff",
".v c #ffffff",
".w c #ffffff",
".x c #ffffff",
".y c #ffffff",
".z c #ffffff",
".A c #ffffff",
".B c #ffffff",
".C c #ffffff",
".D c #ffffff",
".E c #ffffff",
".F c #ffffff",
".G c #ffffff",
".H c #ffffff",
".I c #ffffff",
".J c #ffffff",
".K c #ffffff",
".L c #ffffff",
".M c #ffffff",
".N c #ffffff",
".O c #ffffff",
".P c #ffffff",
".Q c #ffffff",
".R c #ffffff",
".S c #ffffff",
".T c #ffffff",
".U c #ffffff",
".V c #ffffff",
".W c #ffffff",
".X c #ffffff",
".Y c #ffffff",
".Z c #ffffff",
".0 c #ffffff",
".1 c #ffffff",
".2 c #ffffff",
".3 c #ffffff",
".4 c #ffffff",
".5 c #ffffff",
".6 c #ffffff",
".7 c #ffffff",
".8 c #ffffff",
"#` c #ffffff",
"#. c #ffffff",
"## c #ffffff",
"#a c #ffffff",
"#b c #ffffff",
"#c c #ffffff",
"#d c #ffffff",
"#e c #ffffff",
"#f c #ffffff",
"#g c #ffffff",
"#h c #ffffff",
"#i c #ffffff",
"#j c #ffffff",
"#k c #ffffff",
"#l c #ffffff",
"#m c #ffffff",
"#n c #ffffff",
"#o c #ffffff",
"#p c #ffffff",
"#q c #ffffff",
"#r c #ffffff",
"#s c #ffffff",
"#t c #ffffff",
"#u c #ffffff",
"#v c #ffffff",
"#w c #ffffff",
"#x c #ffffff",
"#y c #ffffff",
"#z c #ffffff",
"#A c #ffffff",
"#B c #ffffff",
"#C c #ffffff",
"#D c #ffffff",
"#E c #ffffff",
"#F c #ffffff",
"#G c #ffffff",
"#H c #ffffff",
"#I c #ffffff",
"#J c #ffffff",
"#K c #ffffff",
"#L c #ffffff",
"#M c #ffffff",
"#N c #ffffff",
"#O c #ffffff",
"#P c #ffffff",
"#Q c #ffffff",
"#R c #ffffff",
"#S c #ffffff",
"#T c #ffffff",
"#U c #ffffff",
"#V c #ffffff",
"#W c #ffffff",
"#X c #ffffff",
"#Y c #ffffff",
"#Z c #ffffff",
"#0 c #ffffff",
"#1 c #ffffff",
"#2 c #ffffff",
"#3 c #ffffff",
"#4 c #ffffff",
"#5 c #ffffff",
"#6 c #ffffff",
"#7 c #ffffff",
"#8 c #ffffff",
"a` c #ffffff",
"a. c #ffffff",
"a# c #ffffff",
"aa c #ffffff",
"ab c #ffffff",
"ac c #ffffff",
"ad c #ffffff",
"ae c #ffffff",
"af c #ffffff",
"ag c #ffffff",
"ah c #ffffff",
"ai c #ffffff",
"aj c #ffffff",
"ak c #ffffff",
"al c #ffffff",
"am c #ffffff",
"an c #ffffff",
"ao c #ffffff",
"ap c #ffffff",
"aq c #ffffff",
"ar c #ffffff",
"as c #ffffff",
"at c #ffffff",
"au c #ffffff",
"av c #ffffff",
"aw c #ffffff",
"ax c #ffffff",
"ay c #ffffff",
"az c #ffffff",
"aA c #ffffff",
"aB c #ffffff",
"aC c #ffffff",
"aD c #ffffff",
"aE c #ffffff",
"aF c #ffffff",
"aG c #ffffff",
"aH c #ffffff",
"aI c #ffffff",
"aJ c #ffffff",
"aK c #ffffff",
"aL c #ffffff",
"aM c #ffffff",
"aN c #ffffff",
"aO c #ffffff",
"aP c #ffffff",
"aQ c #ffffff",
"aR c #ffffff",
"aS c #ffffff",
"aT c #ffffff",
"aU c #ffffff",
"aV c #ffffff",
"aW c #ffffff",
"aX c #ffffff",
"aY c #ffffff",
"aZ c #ffffff",
"a0 c #ffffff",
"a1 c #ffffff",
"a2 c #ffffff",
"a3 c #ffffff",
"a4 c #ffffff",
"a5 c #ffffff",
"a6 c #ffffff",
"a7 c #ffffff",
"a8 c #ffffff",
/* pixels */
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#",
"`c`c`c`c`c`#"
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 916 B

View file

@ -0,0 +1,284 @@
/* XPM */
static char *handle[] = {
/* width height num_colors chars_per_pixel */
" 10 21 256 2",
/* colors */
"`` c #000000",
"`. c #a5a5c6",
"`# c #ada5c6",
"`a c #cecee7",
"`b c #ceceff",
"`c c None",
"`d c #ffffff",
"`e c #ffffff",
"`f c #ffffff",
"`g c #ffffff",
"`h c #ffffff",
"`i c #ffffff",
"`j c #ffffff",
"`k c #ffffff",
"`l c #ffffff",
"`m c #ffffff",
"`n c #ffffff",
"`o c #ffffff",
"`p c #ffffff",
"`q c #ffffff",
"`r c #ffffff",
"`s c #ffffff",
"`t c #ffffff",
"`u c #ffffff",
"`v c #ffffff",
"`w c #ffffff",
"`x c #ffffff",
"`y c #ffffff",
"`z c #ffffff",
"`A c #ffffff",
"`B c #ffffff",
"`C c #ffffff",
"`D c #808000",
"`E c #ffffff",
"`F c #ffffff",
"`G c #ffffff",
"`H c #ffffff",
"`I c #ffffff",
"`J c #ffffff",
"`K c #ffffff",
"`L c #ffffff",
"`M c #ffffff",
"`N c #ffffff",
"`O c #ffffff",
"`P c #ffffff",
"`Q c #ffffff",
"`R c #ffffff",
"`S c #ffffff",
"`T c #ffffff",
"`U c #ffffff",
"`V c #ffffff",
"`W c #ffffff",
"`X c #ffffff",
"`Y c #ffffff",
"`Z c #ffffff",
"`0 c #ffffff",
"`1 c #ffffff",
"`2 c #ffffff",
"`3 c #ffffff",
"`4 c #ffffff",
"`5 c #ffffff",
"`6 c #ffffff",
"`7 c #ffffff",
"`8 c #ffffff",
".` c #ffffff",
".. c #ffffff",
".# c #ffffff",
".a c #ffffff",
".b c #ffffff",
".c c #ffffff",
".d c #ffffff",
".e c #ffffff",
".f c #ffffff",
".g c #ffffff",
".h c #ffffff",
".i c #ffffff",
".j c #ffffff",
".k c #ffffff",
".l c #ffffff",
".m c #ffffff",
".n c #ffffff",
".o c #ffffff",
".p c #ffffff",
".q c #ffffff",
".r c #ffffff",
".s c #ffffff",
".t c #ffffff",
".u c #ffffff",
".v c #ffffff",
".w c #ffffff",
".x c #ffffff",
".y c #ffffff",
".z c #ffffff",
".A c #ffffff",
".B c #ffffff",
".C c #ffffff",
".D c #ffffff",
".E c #ffffff",
".F c #ffffff",
".G c #ffffff",
".H c #ffffff",
".I c #ffffff",
".J c #ffffff",
".K c #ffffff",
".L c #ffffff",
".M c #ffffff",
".N c #ffffff",
".O c #ffffff",
".P c #ffffff",
".Q c #ffffff",
".R c #ffffff",
".S c #ffffff",
".T c #ffffff",
".U c #ffffff",
".V c #ffffff",
".W c #ffffff",
".X c #ffffff",
".Y c #ffffff",
".Z c #ffffff",
".0 c #ffffff",
".1 c #ffffff",
".2 c #ffffff",
".3 c #ffffff",
".4 c #ffffff",
".5 c #ffffff",
".6 c #ffffff",
".7 c #ffffff",
".8 c #ffffff",
"#` c #ffffff",
"#. c #ffffff",
"## c #ffffff",
"#a c #ffffff",
"#b c #ffffff",
"#c c #ffffff",
"#d c #ffffff",
"#e c #ffffff",
"#f c #ffffff",
"#g c #ffffff",
"#h c #ffffff",
"#i c #ffffff",
"#j c #ffffff",
"#k c #ffffff",
"#l c #ffffff",
"#m c #ffffff",
"#n c #ffffff",
"#o c #ffffff",
"#p c #ffffff",
"#q c #ffffff",
"#r c #ffffff",
"#s c #ffffff",
"#t c #ffffff",
"#u c #ffffff",
"#v c #ffffff",
"#w c #ffffff",
"#x c #ffffff",
"#y c #ffffff",
"#z c #ffffff",
"#A c #ffffff",
"#B c #ffffff",
"#C c #ffffff",
"#D c #ffffff",
"#E c #ffffff",
"#F c #ffffff",
"#G c #ffffff",
"#H c #ffffff",
"#I c #ffffff",
"#J c #ffffff",
"#K c #ffffff",
"#L c #ffffff",
"#M c #ffffff",
"#N c #ffffff",
"#O c #ffffff",
"#P c #ffffff",
"#Q c #ffffff",
"#R c #ffffff",
"#S c #ffffff",
"#T c #ffffff",
"#U c #ffffff",
"#V c #ffffff",
"#W c #ffffff",
"#X c #ffffff",
"#Y c #ffffff",
"#Z c #ffffff",
"#0 c #ffffff",
"#1 c #ffffff",
"#2 c #ffffff",
"#3 c #ffffff",
"#4 c #ffffff",
"#5 c #ffffff",
"#6 c #ffffff",
"#7 c #ffffff",
"#8 c #ffffff",
"a` c #ffffff",
"a. c #ffffff",
"a# c #ffffff",
"aa c #ffffff",
"ab c #ffffff",
"ac c #ffffff",
"ad c #ffffff",
"ae c #ffffff",
"af c #ffffff",
"ag c #ffffff",
"ah c #ffffff",
"ai c #ffffff",
"aj c #ffffff",
"ak c #ffffff",
"al c #ffffff",
"am c #ffffff",
"an c #ffffff",
"ao c #ffffff",
"ap c #ffffff",
"aq c #ffffff",
"ar c #ffffff",
"as c #ffffff",
"at c #ffffff",
"au c #ffffff",
"av c #ffffff",
"aw c #ffffff",
"ax c #ffffff",
"ay c #ffffff",
"az c #ffffff",
"aA c #ffffff",
"aB c #ffffff",
"aC c #ffffff",
"aD c #ffffff",
"aE c #ffffff",
"aF c #ffffff",
"aG c #ffffff",
"aH c #ffffff",
"aI c #ffffff",
"aJ c #ffffff",
"aK c #ffffff",
"aL c #ffffff",
"aM c #ffffff",
"aN c #ffffff",
"aO c #ffffff",
"aP c #ffffff",
"aQ c #ffffff",
"aR c #ffffff",
"aS c #ffffff",
"aT c #ffffff",
"aU c #ffffff",
"aV c #ffffff",
"aW c #ffffff",
"aX c #ffffff",
"aY c #ffffff",
"aZ c #ffffff",
"a0 c #ffffff",
"a1 c #ffffff",
"a2 c #ffffff",
"a3 c #ffffff",
"a4 c #ffffff",
"a5 c #ffffff",
"a6 c #ffffff",
"a7 c #ffffff",
"a8 c #ffffff",
/* pixels */
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`#`#`#`#`#`#`#`#`#`#",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c"
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 994 B

View file

@ -0,0 +1,284 @@
/* XPM */
static char *leaf[] = {
/* width height num_colors chars_per_pixel */
" 16 21 256 2",
/* colors */
"`` c #424242",
"`. c #737373",
"`# c #7b7b7b",
"`a c #848484",
"`b c #8c8c8c",
"`c c #949494",
"`d c #9c9c9c",
"`e c #a5a5a5",
"`f c None",
"`g c #ffffff",
"`h c #ffffff",
"`i c #ffffff",
"`j c #ffffff",
"`k c #ffffff",
"`l c #ffffff",
"`m c #ffffff",
"`n c #ffffff",
"`o c #ffffff",
"`p c #ffffff",
"`q c #ffffff",
"`r c #ffffff",
"`s c #ffffff",
"`t c #ffffff",
"`u c #ffffff",
"`v c #ffffff",
"`w c #ffffff",
"`x c #ffffff",
"`y c #ffffff",
"`z c #ffffff",
"`A c #ffffff",
"`B c #ffffff",
"`C c #ffffff",
"`D c #ffffff",
"`E c #ffffff",
"`F c #ffffff",
"`G c #ffffff",
"`H c #ffffff",
"`I c #ffffff",
"`J c #ffffff",
"`K c #ffffff",
"`L c #ffffff",
"`M c #ffffff",
"`N c #ffffff",
"`O c #ffffff",
"`P c #ffffff",
"`Q c #ffffff",
"`R c #ffffff",
"`S c #ffffff",
"`T c #ffffff",
"`U c #ffffff",
"`V c #ffffff",
"`W c #ffffff",
"`X c #ffffff",
"`Y c #ffffff",
"`Z c #ffffff",
"`0 c #ffffff",
"`1 c #ffffff",
"`2 c #ffffff",
"`3 c #ffffff",
"`4 c #ffffff",
"`5 c #ffffff",
"`6 c #ffffff",
"`7 c #ffffff",
"`8 c #ffffff",
".` c #ffffff",
".. c #ffffff",
".# c #ffffff",
".a c #ffffff",
".b c #ffffff",
".c c #ffffff",
".d c #ffffff",
".e c #ffffff",
".f c #ffffff",
".g c #ffffff",
".h c #ffffff",
".i c #ffffff",
".j c #ffffff",
".k c #ffffff",
".l c #ffffff",
".m c #ffffff",
".n c #ffffff",
".o c #ffffff",
".p c #ffffff",
".q c #ffffff",
".r c #ffffff",
".s c #ffffff",
".t c #ffffff",
".u c #ffffff",
".v c #ffffff",
".w c #ffffff",
".x c #ffffff",
".y c #ffffff",
".z c #ffffff",
".A c #ffffff",
".B c #ffffff",
".C c #ffffff",
".D c #ffffff",
".E c #ffffff",
".F c #ffffff",
".G c #ffffff",
".H c #ffffff",
".I c #ffffff",
".J c #ffffff",
".K c #ffffff",
".L c #ffffff",
".M c #ffffff",
".N c #ffffff",
".O c #ffffff",
".P c #ffffff",
".Q c #ffffff",
".R c #ffffff",
".S c #ffffff",
".T c #ffffff",
".U c #ffffff",
".V c #ffffff",
".W c #ffffff",
".X c #ffffff",
".Y c #ffffff",
".Z c #ffffff",
".0 c #ffffff",
".1 c #ffffff",
".2 c #ffffff",
".3 c #ffffff",
".4 c #ffffff",
".5 c #ffffff",
".6 c #ffffff",
".7 c #ffffff",
".8 c #ffffff",
"#` c #ffffff",
"#. c #ffffff",
"## c #ffffff",
"#a c #ffffff",
"#b c #ffffff",
"#c c #ffffff",
"#d c #ffffff",
"#e c #ffffff",
"#f c #ffffff",
"#g c #ffffff",
"#h c #ffffff",
"#i c #ffffff",
"#j c #ffffff",
"#k c #ffffff",
"#l c #ffffff",
"#m c #ffffff",
"#n c #ffffff",
"#o c #ffffff",
"#p c #ffffff",
"#q c #ffffff",
"#r c #ffffff",
"#s c #ffffff",
"#t c #ffffff",
"#u c #ffffff",
"#v c #ffffff",
"#w c #ffffff",
"#x c #ffffff",
"#y c #ffffff",
"#z c #ffffff",
"#A c #ffffff",
"#B c #ffffff",
"#C c #ffffff",
"#D c #ffffff",
"#E c #ffffff",
"#F c #ffffff",
"#G c #ffffff",
"#H c #ffffff",
"#I c #ffffff",
"#J c #ffffff",
"#K c #ffffff",
"#L c #ffffff",
"#M c #ffffff",
"#N c #ffffff",
"#O c #ffffff",
"#P c #ffffff",
"#Q c #ffffff",
"#R c #ffffff",
"#S c #ffffff",
"#T c #ffffff",
"#U c #ffffff",
"#V c #ffffff",
"#W c #ffffff",
"#X c #ffffff",
"#Y c #ffffff",
"#Z c #ffffff",
"#0 c #ffffff",
"#1 c #ffffff",
"#2 c #ffffff",
"#3 c #ffffff",
"#4 c #ffffff",
"#5 c #ffffff",
"#6 c #ffffff",
"#7 c #ffffff",
"#8 c #ffffff",
"a` c #ffffff",
"a. c #ffffff",
"a# c #ffffff",
"aa c #ffffff",
"ab c #ffffff",
"ac c #ffffff",
"ad c #ffffff",
"ae c #ffffff",
"af c #ffffff",
"ag c #ffffff",
"ah c #ffffff",
"ai c #ffffff",
"aj c #ffffff",
"ak c #ffffff",
"al c #ffffff",
"am c #ffffff",
"an c #ffffff",
"ao c #ffffff",
"ap c #ffffff",
"aq c #ffffff",
"ar c #ffffff",
"as c #ffffff",
"at c #ffffff",
"au c #ffffff",
"av c #ffffff",
"aw c #ffffff",
"ax c #ffffff",
"ay c #ffffff",
"az c #ffffff",
"aA c #ffffff",
"aB c #ffffff",
"aC c #ffffff",
"aD c #ffffff",
"aE c #ffffff",
"aF c #ffffff",
"aG c #ffffff",
"aH c #ffffff",
"aI c #ffffff",
"aJ c #ffffff",
"aK c #ffffff",
"aL c #ffffff",
"aM c #ffffff",
"aN c #ffffff",
"aO c #ffffff",
"aP c #ffffff",
"aQ c #ffffff",
"aR c #ffffff",
"aS c #ffffff",
"aT c #ffffff",
"aU c #ffffff",
"aV c #ffffff",
"aW c #ffffff",
"aX c #ffffff",
"aY c #ffffff",
"aZ c #ffffff",
"a0 c #ffffff",
"a1 c #ffffff",
"a2 c #ffffff",
"a3 c #ffffff",
"a4 c #ffffff",
"a5 c #ffffff",
"a6 c #ffffff",
"a7 c #ffffff",
"a8 c #ffffff",
/* pixels */
"`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f",
"`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f",
"`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f",
"`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f",
"`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f",
"`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f",
"`f`f`f```````````f`f`f`f`f`f`f`f",
"`f`f```.`#`#`a`a```f`f`f`f`f`f`f",
"`f```.`#`#`a`a`b`b```f`f`f`f`f`f",
"```.`#`#`a`a`b`b`c`c```f`f`f`f`f",
"```#`#`a`a`b`b`c`c`d```f`f`f`f`f",
"```#`a`a`b`b`c`c`d`e```f`f`f`f`f",
"`f```a`b`b`c`c`d`e```f`f`f`f`f`f",
"`f`f```b`c`c`d`e```f`f`f`f`f`f`f",
"`f`f`f```````````f`f`f`f`f`f`f`f",
"`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f",
"`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f",
"`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f",
"`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f",
"`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f",
"`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f`f"
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 914 B

View file

@ -0,0 +1,284 @@
/* XPM */
static char *no-guide[] = {
/* width height num_colors chars_per_pixel */
" 6 21 256 2",
/* colors */
"`` c #000000",
"`. c #84849c",
"`# c #8c8ca5",
"`a c #a5a5c6",
"`b c #ada5c6",
"`c c #b5b5ce",
"`d c #cecee7",
"`e c #ceceff",
"`f c #e7e7ff",
"`g c None",
"`h c #808000",
"`i c #ffffff",
"`j c #ffffff",
"`k c #ffffff",
"`l c #ffffff",
"`m c #ffffff",
"`n c #ffffff",
"`o c #ffffff",
"`p c #ffffff",
"`q c #ffffff",
"`r c #ffffff",
"`s c #ffffff",
"`t c #ffffff",
"`u c #ffffff",
"`v c #ffffff",
"`w c #ffffff",
"`x c #ffffff",
"`y c #ffffff",
"`z c #ffffff",
"`A c #ffffff",
"`B c #ffffff",
"`C c #ffffff",
"`D c #ffffff",
"`E c #ffffff",
"`F c #ffffff",
"`G c #ffffff",
"`H c #ffffff",
"`I c #ffffff",
"`J c #ffffff",
"`K c #ffffff",
"`L c #ffffff",
"`M c #ffffff",
"`N c #ffffff",
"`O c #ffffff",
"`P c #ffffff",
"`Q c #ffffff",
"`R c #ffffff",
"`S c #ffffff",
"`T c #ffffff",
"`U c #ffffff",
"`V c #ffffff",
"`W c #ffffff",
"`X c #ffffff",
"`Y c #ffffff",
"`Z c #ffffff",
"`0 c #ffffff",
"`1 c #ffffff",
"`2 c #ffffff",
"`3 c #ffffff",
"`4 c #ffffff",
"`5 c #ffffff",
"`6 c #ffffff",
"`7 c #ffffff",
"`8 c #ffffff",
".` c #ffffff",
".. c #ffffff",
".# c #ffffff",
".a c #ffffff",
".b c #ffffff",
".c c #ffffff",
".d c #ffffff",
".e c #ffffff",
".f c #ffffff",
".g c #ffffff",
".h c #ffffff",
".i c #ffffff",
".j c #ffffff",
".k c #ffffff",
".l c #ffffff",
".m c #ffffff",
".n c #ffffff",
".o c #ffffff",
".p c #ffffff",
".q c #ffffff",
".r c #ffffff",
".s c #ffffff",
".t c #ffffff",
".u c #ffffff",
".v c #ffffff",
".w c #ffffff",
".x c #ffffff",
".y c #ffffff",
".z c #ffffff",
".A c #ffffff",
".B c #ffffff",
".C c #ffffff",
".D c #ffffff",
".E c #ffffff",
".F c #ffffff",
".G c #ffffff",
".H c #ffffff",
".I c #ffffff",
".J c #ffffff",
".K c #ffffff",
".L c #ffffff",
".M c #ffffff",
".N c #ffffff",
".O c #ffffff",
".P c #ffffff",
".Q c #ffffff",
".R c #ffffff",
".S c #ffffff",
".T c #ffffff",
".U c #ffffff",
".V c #ffffff",
".W c #ffffff",
".X c #ffffff",
".Y c #ffffff",
".Z c #ffffff",
".0 c #ffffff",
".1 c #ffffff",
".2 c #ffffff",
".3 c #ffffff",
".4 c #ffffff",
".5 c #ffffff",
".6 c #ffffff",
".7 c #ffffff",
".8 c #ffffff",
"#` c #ffffff",
"#. c #ffffff",
"## c #ffffff",
"#a c #ffffff",
"#b c #ffffff",
"#c c #ffffff",
"#d c #ffffff",
"#e c #ffffff",
"#f c #ffffff",
"#g c #ffffff",
"#h c #ffffff",
"#i c #ffffff",
"#j c #ffffff",
"#k c #ffffff",
"#l c #ffffff",
"#m c #ffffff",
"#n c #ffffff",
"#o c #ffffff",
"#p c #ffffff",
"#q c #ffffff",
"#r c #ffffff",
"#s c #ffffff",
"#t c #ffffff",
"#u c #ffffff",
"#v c #ffffff",
"#w c #ffffff",
"#x c #ffffff",
"#y c #ffffff",
"#z c #ffffff",
"#A c #ffffff",
"#B c #ffffff",
"#C c #ffffff",
"#D c #ffffff",
"#E c #ffffff",
"#F c #ffffff",
"#G c #ffffff",
"#H c #ffffff",
"#I c #ffffff",
"#J c #ffffff",
"#K c #ffffff",
"#L c #ffffff",
"#M c #ffffff",
"#N c #ffffff",
"#O c #ffffff",
"#P c #ffffff",
"#Q c #ffffff",
"#R c #ffffff",
"#S c #ffffff",
"#T c #ffffff",
"#U c #ffffff",
"#V c #ffffff",
"#W c #ffffff",
"#X c #ffffff",
"#Y c #ffffff",
"#Z c #ffffff",
"#0 c #ffffff",
"#1 c #ffffff",
"#2 c #ffffff",
"#3 c #ffffff",
"#4 c #ffffff",
"#5 c #ffffff",
"#6 c #ffffff",
"#7 c #ffffff",
"#8 c #ffffff",
"a` c #ffffff",
"a. c #ffffff",
"a# c #ffffff",
"aa c #ffffff",
"ab c #ffffff",
"ac c #ffffff",
"ad c #ffffff",
"ae c #ffffff",
"af c #ffffff",
"ag c #ffffff",
"ah c #ffffff",
"ai c #ffffff",
"aj c #ffffff",
"ak c #ffffff",
"al c #ffffff",
"am c #ffffff",
"an c #ffffff",
"ao c #ffffff",
"ap c #ffffff",
"aq c #ffffff",
"ar c #ffffff",
"as c #ffffff",
"at c #ffffff",
"au c #ffffff",
"av c #ffffff",
"aw c #ffffff",
"ax c #ffffff",
"ay c #ffffff",
"az c #ffffff",
"aA c #ffffff",
"aB c #ffffff",
"aC c #ffffff",
"aD c #ffffff",
"aE c #ffffff",
"aF c #ffffff",
"aG c #ffffff",
"aH c #ffffff",
"aI c #ffffff",
"aJ c #ffffff",
"aK c #ffffff",
"aL c #ffffff",
"aM c #ffffff",
"aN c #ffffff",
"aO c #ffffff",
"aP c #ffffff",
"aQ c #ffffff",
"aR c #ffffff",
"aS c #ffffff",
"aT c #ffffff",
"aU c #ffffff",
"aV c #ffffff",
"aW c #ffffff",
"aX c #ffffff",
"aY c #ffffff",
"aZ c #ffffff",
"a0 c #ffffff",
"a1 c #ffffff",
"a2 c #ffffff",
"a3 c #ffffff",
"a4 c #ffffff",
"a5 c #ffffff",
"a6 c #ffffff",
"a7 c #ffffff",
"a8 c #ffffff",
/* pixels */
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g",
"`g`g`g`g`g`g"
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 914 B

View file

@ -0,0 +1,284 @@
/* XPM */
static char *no-handle[] = {
/* width height num_colors chars_per_pixel */
" 10 21 256 2",
/* colors */
"`` c #000000",
"`. c #84849c",
"`# c #8c8ca5",
"`a c #a5a5c6",
"`b c #ada5c6",
"`c c #b5b5ce",
"`d c #cecee7",
"`e c #ceceff",
"`f c #e7e7ff",
"`g c None",
"`h c #808000",
"`i c #ffffff",
"`j c #ffffff",
"`k c #ffffff",
"`l c #ffffff",
"`m c #ffffff",
"`n c #ffffff",
"`o c #ffffff",
"`p c #ffffff",
"`q c #ffffff",
"`r c #ffffff",
"`s c #ffffff",
"`t c #ffffff",
"`u c #ffffff",
"`v c #ffffff",
"`w c #ffffff",
"`x c #ffffff",
"`y c #ffffff",
"`z c #ffffff",
"`A c #ffffff",
"`B c #ffffff",
"`C c #ffffff",
"`D c #ffffff",
"`E c #ffffff",
"`F c #ffffff",
"`G c #ffffff",
"`H c #ffffff",
"`I c #ffffff",
"`J c #ffffff",
"`K c #ffffff",
"`L c #ffffff",
"`M c #ffffff",
"`N c #ffffff",
"`O c #ffffff",
"`P c #ffffff",
"`Q c #ffffff",
"`R c #ffffff",
"`S c #ffffff",
"`T c #ffffff",
"`U c #ffffff",
"`V c #ffffff",
"`W c #ffffff",
"`X c #ffffff",
"`Y c #ffffff",
"`Z c #ffffff",
"`0 c #ffffff",
"`1 c #ffffff",
"`2 c #ffffff",
"`3 c #ffffff",
"`4 c #ffffff",
"`5 c #ffffff",
"`6 c #ffffff",
"`7 c #ffffff",
"`8 c #ffffff",
".` c #ffffff",
".. c #ffffff",
".# c #ffffff",
".a c #ffffff",
".b c #ffffff",
".c c #ffffff",
".d c #ffffff",
".e c #ffffff",
".f c #ffffff",
".g c #ffffff",
".h c #ffffff",
".i c #ffffff",
".j c #ffffff",
".k c #ffffff",
".l c #ffffff",
".m c #ffffff",
".n c #ffffff",
".o c #ffffff",
".p c #ffffff",
".q c #ffffff",
".r c #ffffff",
".s c #ffffff",
".t c #ffffff",
".u c #ffffff",
".v c #ffffff",
".w c #ffffff",
".x c #ffffff",
".y c #ffffff",
".z c #ffffff",
".A c #ffffff",
".B c #ffffff",
".C c #ffffff",
".D c #ffffff",
".E c #ffffff",
".F c #ffffff",
".G c #ffffff",
".H c #ffffff",
".I c #ffffff",
".J c #ffffff",
".K c #ffffff",
".L c #ffffff",
".M c #ffffff",
".N c #ffffff",
".O c #ffffff",
".P c #ffffff",
".Q c #ffffff",
".R c #ffffff",
".S c #ffffff",
".T c #ffffff",
".U c #ffffff",
".V c #ffffff",
".W c #ffffff",
".X c #ffffff",
".Y c #ffffff",
".Z c #ffffff",
".0 c #ffffff",
".1 c #ffffff",
".2 c #ffffff",
".3 c #ffffff",
".4 c #ffffff",
".5 c #ffffff",
".6 c #ffffff",
".7 c #ffffff",
".8 c #ffffff",
"#` c #ffffff",
"#. c #ffffff",
"## c #ffffff",
"#a c #ffffff",
"#b c #ffffff",
"#c c #ffffff",
"#d c #ffffff",
"#e c #ffffff",
"#f c #ffffff",
"#g c #ffffff",
"#h c #ffffff",
"#i c #ffffff",
"#j c #ffffff",
"#k c #ffffff",
"#l c #ffffff",
"#m c #ffffff",
"#n c #ffffff",
"#o c #ffffff",
"#p c #ffffff",
"#q c #ffffff",
"#r c #ffffff",
"#s c #ffffff",
"#t c #ffffff",
"#u c #ffffff",
"#v c #ffffff",
"#w c #ffffff",
"#x c #ffffff",
"#y c #ffffff",
"#z c #ffffff",
"#A c #ffffff",
"#B c #ffffff",
"#C c #ffffff",
"#D c #ffffff",
"#E c #ffffff",
"#F c #ffffff",
"#G c #ffffff",
"#H c #ffffff",
"#I c #ffffff",
"#J c #ffffff",
"#K c #ffffff",
"#L c #ffffff",
"#M c #ffffff",
"#N c #ffffff",
"#O c #ffffff",
"#P c #ffffff",
"#Q c #ffffff",
"#R c #ffffff",
"#S c #ffffff",
"#T c #ffffff",
"#U c #ffffff",
"#V c #ffffff",
"#W c #ffffff",
"#X c #ffffff",
"#Y c #ffffff",
"#Z c #ffffff",
"#0 c #ffffff",
"#1 c #ffffff",
"#2 c #ffffff",
"#3 c #ffffff",
"#4 c #ffffff",
"#5 c #ffffff",
"#6 c #ffffff",
"#7 c #ffffff",
"#8 c #ffffff",
"a` c #ffffff",
"a. c #ffffff",
"a# c #ffffff",
"aa c #ffffff",
"ab c #ffffff",
"ac c #ffffff",
"ad c #ffffff",
"ae c #ffffff",
"af c #ffffff",
"ag c #ffffff",
"ah c #ffffff",
"ai c #ffffff",
"aj c #ffffff",
"ak c #ffffff",
"al c #ffffff",
"am c #ffffff",
"an c #ffffff",
"ao c #ffffff",
"ap c #ffffff",
"aq c #ffffff",
"ar c #ffffff",
"as c #ffffff",
"at c #ffffff",
"au c #ffffff",
"av c #ffffff",
"aw c #ffffff",
"ax c #ffffff",
"ay c #ffffff",
"az c #ffffff",
"aA c #ffffff",
"aB c #ffffff",
"aC c #ffffff",
"aD c #ffffff",
"aE c #ffffff",
"aF c #ffffff",
"aG c #ffffff",
"aH c #ffffff",
"aI c #ffffff",
"aJ c #ffffff",
"aK c #ffffff",
"aL c #ffffff",
"aM c #ffffff",
"aN c #ffffff",
"aO c #ffffff",
"aP c #ffffff",
"aQ c #ffffff",
"aR c #ffffff",
"aS c #ffffff",
"aT c #ffffff",
"aU c #ffffff",
"aV c #ffffff",
"aW c #ffffff",
"aX c #ffffff",
"aY c #ffffff",
"aZ c #ffffff",
"a0 c #ffffff",
"a1 c #ffffff",
"a2 c #ffffff",
"a3 c #ffffff",
"a4 c #ffffff",
"a5 c #ffffff",
"a6 c #ffffff",
"a7 c #ffffff",
"a8 c #ffffff",
/* pixels */
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g",
"`g`g`g`g`g`g`g`g`g`g"
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 1,006 B

View file

@ -0,0 +1,284 @@
/* XPM */
static char *open[] = {
/* width height num_colors chars_per_pixel */
" 16 21 256 2",
/* colors */
"`` c #004200",
"`. c #296329",
"`# c #316331",
"`a c #316b31",
"`b c #396b39",
"`c c #427342",
"`d c #4a734a",
"`e c #4a7b4a",
"`f c #528452",
"`g c #5a845a",
"`h c #a5a5c6",
"`i c None",
"`j c #ffffff",
"`k c #ffffff",
"`l c #ffffff",
"`m c #ffffff",
"`n c #ffffff",
"`o c #ffffff",
"`p c #ffffff",
"`q c #ffffff",
"`r c #ffffff",
"`s c #ffffff",
"`t c #ffffff",
"`u c #ffffff",
"`v c #ffffff",
"`w c #ffffff",
"`x c #ffffff",
"`y c #ffffff",
"`z c #ffffff",
"`A c #ffffff",
"`B c #ffffff",
"`C c #ffffff",
"`D c #ffffff",
"`E c #ffffff",
"`F c #ffffff",
"`G c #ffffff",
"`H c #ffffff",
"`I c #ffffff",
"`J c #ffffff",
"`K c #ffffff",
"`L c #ffffff",
"`M c #ffffff",
"`N c #ffffff",
"`O c #ffffff",
"`P c #ffffff",
"`Q c #ffffff",
"`R c #ffffff",
"`S c #ffffff",
"`T c #ffffff",
"`U c #ffffff",
"`V c #ffffff",
"`W c #ffffff",
"`X c #ffffff",
"`Y c #ffffff",
"`Z c #ffffff",
"`0 c #ffffff",
"`1 c #ffffff",
"`2 c #ffffff",
"`3 c #ffffff",
"`4 c #ffffff",
"`5 c #ffffff",
"`6 c #ffffff",
"`7 c #ffffff",
"`8 c #ffffff",
".` c #ffffff",
".. c #ffffff",
".# c #ffffff",
".a c #ffffff",
".b c #ffffff",
".c c #ffffff",
".d c #ffffff",
".e c #ffffff",
".f c #ffffff",
".g c #ffffff",
".h c #ffffff",
".i c #ffffff",
".j c #ffffff",
".k c #ffffff",
".l c #ffffff",
".m c #ffffff",
".n c #ffffff",
".o c #ffffff",
".p c #ffffff",
".q c #ffffff",
".r c #ffffff",
".s c #ffffff",
".t c #ffffff",
".u c #ffffff",
".v c #ffffff",
".w c #ffffff",
".x c #ffffff",
".y c #ffffff",
".z c #ffffff",
".A c #ffffff",
".B c #ffffff",
".C c #ffffff",
".D c #ffffff",
".E c #ffffff",
".F c #ffffff",
".G c #ffffff",
".H c #ffffff",
".I c #ffffff",
".J c #ffffff",
".K c #ffffff",
".L c #ffffff",
".M c #ffffff",
".N c #ffffff",
".O c #ffffff",
".P c #ffffff",
".Q c #ffffff",
".R c #ffffff",
".S c #ffffff",
".T c #ffffff",
".U c #ffffff",
".V c #ffffff",
".W c #ffffff",
".X c #ffffff",
".Y c #ffffff",
".Z c #ffffff",
".0 c #ffffff",
".1 c #ffffff",
".2 c #ffffff",
".3 c #ffffff",
".4 c #ffffff",
".5 c #ffffff",
".6 c #ffffff",
".7 c #ffffff",
".8 c #ffffff",
"#` c #ffffff",
"#. c #ffffff",
"## c #ffffff",
"#a c #ffffff",
"#b c #ffffff",
"#c c #ffffff",
"#d c #ffffff",
"#e c #ffffff",
"#f c #ffffff",
"#g c #ffffff",
"#h c #ffffff",
"#i c #ffffff",
"#j c #ffffff",
"#k c #ffffff",
"#l c #ffffff",
"#m c #ffffff",
"#n c #ffffff",
"#o c #ffffff",
"#p c #ffffff",
"#q c #ffffff",
"#r c #ffffff",
"#s c #ffffff",
"#t c #ffffff",
"#u c #ffffff",
"#v c #ffffff",
"#w c #ffffff",
"#x c #ffffff",
"#y c #ffffff",
"#z c #ffffff",
"#A c #ffffff",
"#B c #ffffff",
"#C c #ffffff",
"#D c #ffffff",
"#E c #ffffff",
"#F c #ffffff",
"#G c #ffffff",
"#H c #ffffff",
"#I c #ffffff",
"#J c #ffffff",
"#K c #ffffff",
"#L c #ffffff",
"#M c #ffffff",
"#N c #ffffff",
"#O c #ffffff",
"#P c #ffffff",
"#Q c #ffffff",
"#R c #ffffff",
"#S c #ffffff",
"#T c #ffffff",
"#U c #ffffff",
"#V c #ffffff",
"#W c #ffffff",
"#X c #ffffff",
"#Y c #ffffff",
"#Z c #ffffff",
"#0 c #ffffff",
"#1 c #ffffff",
"#2 c #ffffff",
"#3 c #ffffff",
"#4 c #ffffff",
"#5 c #ffffff",
"#6 c #ffffff",
"#7 c #ffffff",
"#8 c #ffffff",
"a` c #ffffff",
"a. c #ffffff",
"a# c #ffffff",
"aa c #ffffff",
"ab c #ffffff",
"ac c #ffffff",
"ad c #ffffff",
"ae c #ffffff",
"af c #ffffff",
"ag c #ffffff",
"ah c #ffffff",
"ai c #ffffff",
"aj c #ffffff",
"ak c #ffffff",
"al c #ffffff",
"am c #ffffff",
"an c #ffffff",
"ao c #ffffff",
"ap c #ffffff",
"aq c #ffffff",
"ar c #ffffff",
"as c #ffffff",
"at c #ffffff",
"au c #ffffff",
"av c #ffffff",
"aw c #ffffff",
"ax c #ffffff",
"ay c #ffffff",
"az c #ffffff",
"aA c #ffffff",
"aB c #ffffff",
"aC c #ffffff",
"aD c #ffffff",
"aE c #ffffff",
"aF c #ffffff",
"aG c #ffffff",
"aH c #ffffff",
"aI c #ffffff",
"aJ c #ffffff",
"aK c #ffffff",
"aL c #ffffff",
"aM c #ffffff",
"aN c #ffffff",
"aO c #ffffff",
"aP c #ffffff",
"aQ c #ffffff",
"aR c #ffffff",
"aS c #ffffff",
"aT c #ffffff",
"aU c #ffffff",
"aV c #ffffff",
"aW c #ffffff",
"aX c #ffffff",
"aY c #ffffff",
"aZ c #ffffff",
"a0 c #ffffff",
"a1 c #ffffff",
"a2 c #ffffff",
"a3 c #ffffff",
"a4 c #ffffff",
"a5 c #ffffff",
"a6 c #ffffff",
"a7 c #ffffff",
"a8 c #ffffff",
/* pixels */
"`i`i`i`i`i`i`i`i`i`i`i`i`i`i`i`i",
"`i`i`i`i`i`i`i`i`i`i`i`i`i`i`i`i",
"`i`i`i`i`i`i`i`i`i`i`i`i`i`i`i`i",
"`i`i`i`i`i`i`i`i`i`i`i`i`i`i`i`i",
"`i`i`i`i`i`i`i`i`i`i`i`i`i`i`i`i",
"`i`i`i`i```````i`i`i`i`i`i`i`i`i",
"`i`i`i`````.`````i`i`i`i`i`i`i`i",
"`i`i`````.`#`b`````i`i`i`i`i`i`i",
"`i`````.`#`b`b`c`````i`i`i`i`i`i",
"`````.`#`b`b`c`d`e`````i`i`i`i`i",
"```.`#`b`b`c`d`e`f`g```i`i`i`i`i",
"`````b`b`c`d`e`f`g`````i`i`i`i`i",
"`i`````c`d`e`f`g`````i`i`i`i`i`i",
"`i`i`````e`f`g`````i`i`i`i`i`i`i",
"`i`i`i`````g`````i`i`i`i`i`i`i`i",
"`i`i`i`i```````i`i`i`i`i`i`i`i`i",
"`i`i`i`i`i`h`i`i`i`i`i`i`i`i`i`i",
"`i`i`i`i`i`h`i`i`i`i`i`i`i`i`i`i",
"`i`i`i`i`i`h`i`i`i`i`i`i`i`i`i`i",
"`i`i`i`i`i`h`i`i`i`i`i`i`i`i`i`i",
"`i`i`i`i`i`h`i`i`i`i`i`i`i`i`i`i"
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 981 B

View file

@ -0,0 +1,285 @@
/* XPM */
static char *close[] = {
/* width height num_colors chars_per_pixel */
" 16 22 256 2",
/* colors */
"`` c #848400",
"`. c #9c9c29",
"`# c #a5a531",
"`a c #adad39",
"`b c #adad42",
"`c c #b5b54a",
"`d c #b5b552",
"`e c #bdbd52",
"`f c #bdbd5a",
"`g c #c6c663",
"`h c #c6c66b",
"`i c #cece6b",
"`j c #cece73",
"`k c #dede8c",
"`l c #e7e794",
"`m c #e7e79c",
"`n c #efef9c",
"`o c None",
"`p c #ffffff",
"`q c #ffffff",
"`r c #ffffff",
"`s c #ffffff",
"`t c #ffffff",
"`u c #ffffff",
"`v c #ffffff",
"`w c #ffffff",
"`x c #ffffff",
"`y c #ffffff",
"`z c #ffffff",
"`A c #ffffff",
"`B c #ffffff",
"`C c #ffffff",
"`D c #ffffff",
"`E c #ffffff",
"`F c #ffffff",
"`G c #ffffff",
"`H c #ffffff",
"`I c #ffffff",
"`J c #ffffff",
"`K c #ffffff",
"`L c #ffffff",
"`M c #ffffff",
"`N c #ffffff",
"`O c #ffffff",
"`P c #ffffff",
"`Q c #ffffff",
"`R c #ffffff",
"`S c #ffffff",
"`T c #ffffff",
"`U c #ffffff",
"`V c #ffffff",
"`W c #ffffff",
"`X c #ffffff",
"`Y c #ffffff",
"`Z c #ffffff",
"`0 c #ffffff",
"`1 c #ffffff",
"`2 c #ffffff",
"`3 c #ffffff",
"`4 c #ffffff",
"`5 c #ffffff",
"`6 c #ffffff",
"`7 c #ffffff",
"`8 c #ffffff",
".` c #ffffff",
".. c #ffffff",
".# c #ffffff",
".a c #ffffff",
".b c #ffffff",
".c c #ffffff",
".d c #ffffff",
".e c #ffffff",
".f c #ffffff",
".g c #ffffff",
".h c #ffffff",
".i c #ffffff",
".j c #ffffff",
".k c #ffffff",
".l c #ffffff",
".m c #ffffff",
".n c #ffffff",
".o c #ffffff",
".p c #ffffff",
".q c #ffffff",
".r c #ffffff",
".s c #ffffff",
".t c #ffffff",
".u c #ffffff",
".v c #ffffff",
".w c #ffffff",
".x c #ffffff",
".y c #ffffff",
".z c #ffffff",
".A c #ffffff",
".B c #ffffff",
".C c #ffffff",
".D c #ffffff",
".E c #ffffff",
".F c #ffffff",
".G c #ffffff",
".H c #ffffff",
".I c #ffffff",
".J c #ffffff",
".K c #ffffff",
".L c #ffffff",
".M c #ffffff",
".N c #ffffff",
".O c #ffffff",
".P c #ffffff",
".Q c #ffffff",
".R c #ffffff",
".S c #ffffff",
".T c #ffffff",
".U c #ffffff",
".V c #ffffff",
".W c #ffffff",
".X c #ffffff",
".Y c #ffffff",
".Z c #ffffff",
".0 c #ffffff",
".1 c #ffffff",
".2 c #ffffff",
".3 c #ffffff",
".4 c #ffffff",
".5 c #ffffff",
".6 c #ffffff",
".7 c #ffffff",
".8 c #ffffff",
"#` c #ffffff",
"#. c #ffffff",
"## c #ffffff",
"#a c #ffffff",
"#b c #ffffff",
"#c c #ffffff",
"#d c #ffffff",
"#e c #ffffff",
"#f c #ffffff",
"#g c #ffffff",
"#h c #ffffff",
"#i c #ffffff",
"#j c #ffffff",
"#k c #ffffff",
"#l c #ffffff",
"#m c #ffffff",
"#n c #ffffff",
"#o c #ffffff",
"#p c #ffffff",
"#q c #ffffff",
"#r c #ffffff",
"#s c #ffffff",
"#t c #ffffff",
"#u c #ffffff",
"#v c #ffffff",
"#w c #ffffff",
"#x c #ffffff",
"#y c #ffffff",
"#z c #ffffff",
"#A c #ffffff",
"#B c #ffffff",
"#C c #ffffff",
"#D c #ffffff",
"#E c #ffffff",
"#F c #ffffff",
"#G c #ffffff",
"#H c #ffffff",
"#I c #ffffff",
"#J c #ffffff",
"#K c #ffffff",
"#L c #ffffff",
"#M c #ffffff",
"#N c #ffffff",
"#O c #ffffff",
"#P c #ffffff",
"#Q c #ffffff",
"#R c #ffffff",
"#S c #ffffff",
"#T c #ffffff",
"#U c #ffffff",
"#V c #ffffff",
"#W c #ffffff",
"#X c #ffffff",
"#Y c #ffffff",
"#Z c #ffffff",
"#0 c #ffffff",
"#1 c #ffffff",
"#2 c #ffffff",
"#3 c #ffffff",
"#4 c #ffffff",
"#5 c #ffffff",
"#6 c #ffffff",
"#7 c #ffffff",
"#8 c #ffffff",
"a` c #ffffff",
"a. c #ffffff",
"a# c #ffffff",
"aa c #ffffff",
"ab c #ffffff",
"ac c #ffffff",
"ad c #ffffff",
"ae c #ffffff",
"af c #ffffff",
"ag c #ffffff",
"ah c #ffffff",
"ai c #ffffff",
"aj c #ffffff",
"ak c #ffffff",
"al c #ffffff",
"am c #ffffff",
"an c #ffffff",
"ao c #ffffff",
"ap c #ffffff",
"aq c #ffffff",
"ar c #ffffff",
"as c #ffffff",
"at c #ffffff",
"au c #ffffff",
"av c #ffffff",
"aw c #ffffff",
"ax c #ffffff",
"ay c #ffffff",
"az c #ffffff",
"aA c #ffffff",
"aB c #ffffff",
"aC c #ffffff",
"aD c #ffffff",
"aE c #ffffff",
"aF c #ffffff",
"aG c #ffffff",
"aH c #ffffff",
"aI c #ffffff",
"aJ c #ffffff",
"aK c #ffffff",
"aL c #ffffff",
"aM c #ffffff",
"aN c #ffffff",
"aO c #ffffff",
"aP c #ffffff",
"aQ c #ffffff",
"aR c #ffffff",
"aS c #ffffff",
"aT c #ffffff",
"aU c #ffffff",
"aV c #ffffff",
"aW c #ffffff",
"aX c #ffffff",
"aY c #ffffff",
"aZ c #ffffff",
"a0 c #ffffff",
"a1 c #ffffff",
"a2 c #ffffff",
"a3 c #ffffff",
"a4 c #ffffff",
"a5 c #ffffff",
"a6 c #ffffff",
"a7 c #ffffff",
"a8 c #ffffff",
/* pixels */
"`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o",
"`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o",
"`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o",
"`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o",
"`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o",
"`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o",
"`o`````````o`o`o`o`o`o`o`o`o`o`o",
"```m`l`l`k```````````````o`o`o`o",
"```````````a`b`b`c`c`d`f```o`o`o",
"```.`#`#`a`b`b`c`c`d`f`f```o`o`o",
"```#`#`a`b`b`c`c`d`f`f`f```o`o`o",
"```#`a`b`b`c`c`d`f`f`f`g```o`o`o",
"```a`b`b`c`c`d`f`f`f`g`h```o`o`o",
"```b`b`c`c`d`f`f`f`g`h`h```o`o`o",
"```b`c`c`d`f`f`f`g`h`h`j```o`o`o",
"```````````````````````````o`o`o",
"`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o",
"`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o",
"`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o",
"`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o",
"`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o",
"`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o`o"
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 1,008 B

View file

@ -0,0 +1,285 @@
/* XPM */
static char *empty[] = {
/* width height num_colors chars_per_pixel */
" 16 22 256 2",
/* colors */
"`` c #424242",
"`. c #6b6b6b",
"`# c #737373",
"`a c #7b7b7b",
"`b c #848484",
"`c c #8c8c8c",
"`d c #949494",
"`e c #9c9c9c",
"`f c #a5a5a5",
"`g c #adadad",
"`h c None",
"`i c #ffffff",
"`j c #ffffff",
"`k c #ffffff",
"`l c #ffffff",
"`m c #ffffff",
"`n c #ffffff",
"`o c #ffffff",
"`p c #ffffff",
"`q c #ffffff",
"`r c #ffffff",
"`s c #ffffff",
"`t c #ffffff",
"`u c #ffffff",
"`v c #ffffff",
"`w c #ffffff",
"`x c #ffffff",
"`y c #ffffff",
"`z c #ffffff",
"`A c #ffffff",
"`B c #ffffff",
"`C c #ffffff",
"`D c #ffffff",
"`E c #ffffff",
"`F c #ffffff",
"`G c #ffffff",
"`H c #ffffff",
"`I c #ffffff",
"`J c #ffffff",
"`K c #ffffff",
"`L c #ffffff",
"`M c #ffffff",
"`N c #ffffff",
"`O c #ffffff",
"`P c #ffffff",
"`Q c #ffffff",
"`R c #ffffff",
"`S c #ffffff",
"`T c #ffffff",
"`U c #ffffff",
"`V c #ffffff",
"`W c #ffffff",
"`X c #ffffff",
"`Y c #ffffff",
"`Z c #ffffff",
"`0 c #ffffff",
"`1 c #ffffff",
"`2 c #ffffff",
"`3 c #ffffff",
"`4 c #ffffff",
"`5 c #ffffff",
"`6 c #ffffff",
"`7 c #ffffff",
"`8 c #ffffff",
".` c #ffffff",
".. c #ffffff",
".# c #ffffff",
".a c #ffffff",
".b c #ffffff",
".c c #ffffff",
".d c #ffffff",
".e c #ffffff",
".f c #ffffff",
".g c #ffffff",
".h c #ffffff",
".i c #ffffff",
".j c #ffffff",
".k c #ffffff",
".l c #ffffff",
".m c #ffffff",
".n c #ffffff",
".o c #ffffff",
".p c #ffffff",
".q c #ffffff",
".r c #ffffff",
".s c #ffffff",
".t c #ffffff",
".u c #ffffff",
".v c #ffffff",
".w c #ffffff",
".x c #ffffff",
".y c #ffffff",
".z c #ffffff",
".A c #ffffff",
".B c #ffffff",
".C c #ffffff",
".D c #ffffff",
".E c #ffffff",
".F c #ffffff",
".G c #ffffff",
".H c #ffffff",
".I c #ffffff",
".J c #ffffff",
".K c #ffffff",
".L c #ffffff",
".M c #ffffff",
".N c #ffffff",
".O c #ffffff",
".P c #ffffff",
".Q c #ffffff",
".R c #ffffff",
".S c #ffffff",
".T c #ffffff",
".U c #ffffff",
".V c #ffffff",
".W c #ffffff",
".X c #ffffff",
".Y c #ffffff",
".Z c #ffffff",
".0 c #ffffff",
".1 c #ffffff",
".2 c #ffffff",
".3 c #ffffff",
".4 c #ffffff",
".5 c #ffffff",
".6 c #ffffff",
".7 c #ffffff",
".8 c #ffffff",
"#` c #ffffff",
"#. c #ffffff",
"## c #ffffff",
"#a c #ffffff",
"#b c #ffffff",
"#c c #ffffff",
"#d c #ffffff",
"#e c #ffffff",
"#f c #ffffff",
"#g c #ffffff",
"#h c #ffffff",
"#i c #ffffff",
"#j c #ffffff",
"#k c #ffffff",
"#l c #ffffff",
"#m c #ffffff",
"#n c #ffffff",
"#o c #ffffff",
"#p c #ffffff",
"#q c #ffffff",
"#r c #ffffff",
"#s c #ffffff",
"#t c #ffffff",
"#u c #ffffff",
"#v c #ffffff",
"#w c #ffffff",
"#x c #ffffff",
"#y c #ffffff",
"#z c #ffffff",
"#A c #ffffff",
"#B c #ffffff",
"#C c #ffffff",
"#D c #ffffff",
"#E c #ffffff",
"#F c #ffffff",
"#G c #ffffff",
"#H c #ffffff",
"#I c #ffffff",
"#J c #ffffff",
"#K c #ffffff",
"#L c #ffffff",
"#M c #ffffff",
"#N c #ffffff",
"#O c #ffffff",
"#P c #ffffff",
"#Q c #ffffff",
"#R c #ffffff",
"#S c #ffffff",
"#T c #ffffff",
"#U c #ffffff",
"#V c #ffffff",
"#W c #ffffff",
"#X c #ffffff",
"#Y c #ffffff",
"#Z c #ffffff",
"#0 c #ffffff",
"#1 c #ffffff",
"#2 c #ffffff",
"#3 c #ffffff",
"#4 c #ffffff",
"#5 c #ffffff",
"#6 c #ffffff",
"#7 c #ffffff",
"#8 c #ffffff",
"a` c #ffffff",
"a. c #ffffff",
"a# c #ffffff",
"aa c #ffffff",
"ab c #ffffff",
"ac c #ffffff",
"ad c #ffffff",
"ae c #ffffff",
"af c #ffffff",
"ag c #ffffff",
"ah c #ffffff",
"ai c #ffffff",
"aj c #ffffff",
"ak c #ffffff",
"al c #ffffff",
"am c #ffffff",
"an c #ffffff",
"ao c #ffffff",
"ap c #ffffff",
"aq c #ffffff",
"ar c #ffffff",
"as c #ffffff",
"at c #ffffff",
"au c #ffffff",
"av c #ffffff",
"aw c #ffffff",
"ax c #ffffff",
"ay c #ffffff",
"az c #ffffff",
"aA c #ffffff",
"aB c #ffffff",
"aC c #ffffff",
"aD c #ffffff",
"aE c #ffffff",
"aF c #ffffff",
"aG c #ffffff",
"aH c #ffffff",
"aI c #ffffff",
"aJ c #ffffff",
"aK c #ffffff",
"aL c #ffffff",
"aM c #ffffff",
"aN c #ffffff",
"aO c #ffffff",
"aP c #ffffff",
"aQ c #ffffff",
"aR c #ffffff",
"aS c #ffffff",
"aT c #ffffff",
"aU c #ffffff",
"aV c #ffffff",
"aW c #ffffff",
"aX c #ffffff",
"aY c #ffffff",
"aZ c #ffffff",
"a0 c #ffffff",
"a1 c #ffffff",
"a2 c #ffffff",
"a3 c #ffffff",
"a4 c #ffffff",
"a5 c #ffffff",
"a6 c #ffffff",
"a7 c #ffffff",
"a8 c #ffffff",
/* pixels */
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`````````h`h`h`h`h`h`h`h`h`h`h",
"```f`f`f`e```````````h`h`h`h`h`h",
"```f`f`e`e`e`d`d`c`c```h`h`h`h`h",
"```f`e`````````````````````h`h`h",
"```e```.`.`.`#`#`#`a`a`b`b```h`h",
"```e```.`.`#`#`#`a`a`b`b```h`h`h",
"`````.`.`#`#`#`a`a`b`b`b```h`h`h",
"`````.`#`#`#`a`a`b`b`b```h`h`h`h",
"```.`#`#`#`a`a`b`b`b`c```h`h`h`h",
"```````````````````````h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h"
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 942 B

View file

@ -0,0 +1,285 @@
/* XPM */
static char *end-guide[] = {
/* width height num_colors chars_per_pixel */
" 6 22 256 2",
/* colors */
"`` c #ada5c6",
"`. c None",
"`# c #ffffff",
"`a c #ffffff",
"`b c #ffffff",
"`c c #ffffff",
"`d c #ffffff",
"`e c #ffffff",
"`f c #ffffff",
"`g c #ffffff",
"`h c #ffffff",
"`i c #ffffff",
"`j c #ffffff",
"`k c #ffffff",
"`l c #ffffff",
"`m c #ffffff",
"`n c #ffffff",
"`o c #ffffff",
"`p c #ffffff",
"`q c #ffffff",
"`r c #ffffff",
"`s c #ffffff",
"`t c #ffffff",
"`u c #ffffff",
"`v c #ffffff",
"`w c #ffffff",
"`x c #ffffff",
"`y c #ffffff",
"`z c #ffffff",
"`A c #ffffff",
"`B c #ffffff",
"`C c #ffffff",
"`D c #ffffff",
"`E c #ffffff",
"`F c #ffffff",
"`G c #ffffff",
"`H c #ffffff",
"`I c #ffffff",
"`J c #ffffff",
"`K c #ffffff",
"`L c #ffffff",
"`M c #ffffff",
"`N c #ffffff",
"`O c #ffffff",
"`P c #ffffff",
"`Q c #ffffff",
"`R c #ffffff",
"`S c #ffffff",
"`T c #ffffff",
"`U c #ffffff",
"`V c #ffffff",
"`W c #ffffff",
"`X c #ffffff",
"`Y c #ffffff",
"`Z c #ffffff",
"`0 c #ffffff",
"`1 c #ffffff",
"`2 c #ffffff",
"`3 c #ffffff",
"`4 c #ffffff",
"`5 c #ffffff",
"`6 c #ffffff",
"`7 c #ffffff",
"`8 c #ffffff",
".` c #ffffff",
".. c #ffffff",
".# c #ffffff",
".a c #ffffff",
".b c #ffffff",
".c c #ffffff",
".d c #ffffff",
".e c #ffffff",
".f c #ffffff",
".g c #ffffff",
".h c #ffffff",
".i c #ffffff",
".j c #ffffff",
".k c #ffffff",
".l c #ffffff",
".m c #ffffff",
".n c #ffffff",
".o c #ffffff",
".p c #ffffff",
".q c #ffffff",
".r c #ffffff",
".s c #ffffff",
".t c #ffffff",
".u c #ffffff",
".v c #ffffff",
".w c #ffffff",
".x c #ffffff",
".y c #ffffff",
".z c #ffffff",
".A c #ffffff",
".B c #ffffff",
".C c #ffffff",
".D c #ffffff",
".E c #ffffff",
".F c #ffffff",
".G c #ffffff",
".H c #ffffff",
".I c #ffffff",
".J c #ffffff",
".K c #ffffff",
".L c #ffffff",
".M c #ffffff",
".N c #ffffff",
".O c #ffffff",
".P c #ffffff",
".Q c #ffffff",
".R c #ffffff",
".S c #ffffff",
".T c #ffffff",
".U c #ffffff",
".V c #ffffff",
".W c #ffffff",
".X c #ffffff",
".Y c #ffffff",
".Z c #ffffff",
".0 c #ffffff",
".1 c #ffffff",
".2 c #ffffff",
".3 c #ffffff",
".4 c #ffffff",
".5 c #ffffff",
".6 c #ffffff",
".7 c #ffffff",
".8 c #ffffff",
"#` c #ffffff",
"#. c #ffffff",
"## c #ffffff",
"#a c #ffffff",
"#b c #ffffff",
"#c c #ffffff",
"#d c #ffffff",
"#e c #ffffff",
"#f c #ffffff",
"#g c #ffffff",
"#h c #ffffff",
"#i c #ffffff",
"#j c #ffffff",
"#k c #ffffff",
"#l c #ffffff",
"#m c #ffffff",
"#n c #ffffff",
"#o c #ffffff",
"#p c #ffffff",
"#q c #ffffff",
"#r c #ffffff",
"#s c #ffffff",
"#t c #ffffff",
"#u c #ffffff",
"#v c #ffffff",
"#w c #ffffff",
"#x c #ffffff",
"#y c #ffffff",
"#z c #ffffff",
"#A c #ffffff",
"#B c #ffffff",
"#C c #ffffff",
"#D c #ffffff",
"#E c #ffffff",
"#F c #ffffff",
"#G c #ffffff",
"#H c #ffffff",
"#I c #ffffff",
"#J c #ffffff",
"#K c #ffffff",
"#L c #ffffff",
"#M c #ffffff",
"#N c #ffffff",
"#O c #ffffff",
"#P c #ffffff",
"#Q c #ffffff",
"#R c #ffffff",
"#S c #ffffff",
"#T c #ffffff",
"#U c #ffffff",
"#V c #ffffff",
"#W c #ffffff",
"#X c #ffffff",
"#Y c #ffffff",
"#Z c #ffffff",
"#0 c #ffffff",
"#1 c #ffffff",
"#2 c #ffffff",
"#3 c #ffffff",
"#4 c #ffffff",
"#5 c #ffffff",
"#6 c #ffffff",
"#7 c #ffffff",
"#8 c #ffffff",
"a` c #ffffff",
"a. c #ffffff",
"a# c #ffffff",
"aa c #ffffff",
"ab c #ffffff",
"ac c #ffffff",
"ad c #ffffff",
"ae c #ffffff",
"af c #ffffff",
"ag c #ffffff",
"ah c #ffffff",
"ai c #ffffff",
"aj c #ffffff",
"ak c #ffffff",
"al c #ffffff",
"am c #ffffff",
"an c #ffffff",
"ao c #ffffff",
"ap c #ffffff",
"aq c #ffffff",
"ar c #ffffff",
"as c #ffffff",
"at c #ffffff",
"au c #ffffff",
"av c #ffffff",
"aw c #ffffff",
"ax c #ffffff",
"ay c #ffffff",
"az c #ffffff",
"aA c #ffffff",
"aB c #ffffff",
"aC c #ffffff",
"aD c #ffffff",
"aE c #ffffff",
"aF c #ffffff",
"aG c #ffffff",
"aH c #ffffff",
"aI c #ffffff",
"aJ c #ffffff",
"aK c #ffffff",
"aL c #ffffff",
"aM c #ffffff",
"aN c #ffffff",
"aO c #ffffff",
"aP c #ffffff",
"aQ c #ffffff",
"aR c #ffffff",
"aS c #ffffff",
"aT c #ffffff",
"aU c #ffffff",
"aV c #ffffff",
"aW c #ffffff",
"aX c #ffffff",
"aY c #ffffff",
"aZ c #ffffff",
"a0 c #ffffff",
"a1 c #ffffff",
"a2 c #ffffff",
"a3 c #ffffff",
"a4 c #ffffff",
"a5 c #ffffff",
"a6 c #ffffff",
"a7 c #ffffff",
"a8 c #ffffff",
/* pixels */
"`.`.`.`.`.`.",
"`.`.`.`.`.``",
"`.`.`.`.`.`.",
"`.`.`.`.`.``",
"`.`.`.`.`.`.",
"`.`.`.`.`.``",
"`.`.`.`.`.`.",
"`.`.`.`.`.``",
"`.`.`.`.`.`.",
"`.`.`.`.`.``",
"`.`.`.`.`.`.",
"`.`.`.`.`.``",
"`.`.`.`.`.`.",
"`.`.`.`.`.`.",
"`.`.`.`.`.`.",
"`.`.`.`.`.`.",
"`.`.`.`.`.`.",
"`.`.`.`.`.`.",
"`.`.`.`.`.`.",
"`.`.`.`.`.`.",
"`.`.`.`.`.`.",
"`.`.`.`.`.`."
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 940 B

View file

@ -0,0 +1,285 @@
/* XPM */
static char *guide[] = {
/* width height num_colors chars_per_pixel */
" 6 22 256 2",
/* colors */
"`` c #ada5c6",
"`. c None",
"`# c #ffffff",
"`a c #ffffff",
"`b c #ffffff",
"`c c #ffffff",
"`d c #ffffff",
"`e c #ffffff",
"`f c #ffffff",
"`g c #ffffff",
"`h c #ffffff",
"`i c #ffffff",
"`j c #ffffff",
"`k c #ffffff",
"`l c #ffffff",
"`m c #ffffff",
"`n c #ffffff",
"`o c #ffffff",
"`p c #ffffff",
"`q c #ffffff",
"`r c #ffffff",
"`s c #ffffff",
"`t c #ffffff",
"`u c #ffffff",
"`v c #ffffff",
"`w c #ffffff",
"`x c #ffffff",
"`y c #ffffff",
"`z c #ffffff",
"`A c #ffffff",
"`B c #ffffff",
"`C c #ffffff",
"`D c #ffffff",
"`E c #ffffff",
"`F c #ffffff",
"`G c #ffffff",
"`H c #ffffff",
"`I c #ffffff",
"`J c #ffffff",
"`K c #ffffff",
"`L c #ffffff",
"`M c #ffffff",
"`N c #ffffff",
"`O c #ffffff",
"`P c #ffffff",
"`Q c #ffffff",
"`R c #ffffff",
"`S c #ffffff",
"`T c #ffffff",
"`U c #ffffff",
"`V c #ffffff",
"`W c #ffffff",
"`X c #ffffff",
"`Y c #ffffff",
"`Z c #ffffff",
"`0 c #ffffff",
"`1 c #ffffff",
"`2 c #ffffff",
"`3 c #ffffff",
"`4 c #ffffff",
"`5 c #ffffff",
"`6 c #ffffff",
"`7 c #ffffff",
"`8 c #ffffff",
".` c #ffffff",
".. c #ffffff",
".# c #ffffff",
".a c #ffffff",
".b c #ffffff",
".c c #ffffff",
".d c #ffffff",
".e c #ffffff",
".f c #ffffff",
".g c #ffffff",
".h c #ffffff",
".i c #ffffff",
".j c #ffffff",
".k c #ffffff",
".l c #ffffff",
".m c #ffffff",
".n c #ffffff",
".o c #ffffff",
".p c #ffffff",
".q c #ffffff",
".r c #ffffff",
".s c #ffffff",
".t c #ffffff",
".u c #ffffff",
".v c #ffffff",
".w c #ffffff",
".x c #ffffff",
".y c #ffffff",
".z c #ffffff",
".A c #ffffff",
".B c #ffffff",
".C c #ffffff",
".D c #ffffff",
".E c #ffffff",
".F c #ffffff",
".G c #ffffff",
".H c #ffffff",
".I c #ffffff",
".J c #ffffff",
".K c #ffffff",
".L c #ffffff",
".M c #ffffff",
".N c #ffffff",
".O c #ffffff",
".P c #ffffff",
".Q c #ffffff",
".R c #ffffff",
".S c #ffffff",
".T c #ffffff",
".U c #ffffff",
".V c #ffffff",
".W c #ffffff",
".X c #ffffff",
".Y c #ffffff",
".Z c #ffffff",
".0 c #ffffff",
".1 c #ffffff",
".2 c #ffffff",
".3 c #ffffff",
".4 c #ffffff",
".5 c #ffffff",
".6 c #ffffff",
".7 c #ffffff",
".8 c #ffffff",
"#` c #ffffff",
"#. c #ffffff",
"## c #ffffff",
"#a c #ffffff",
"#b c #ffffff",
"#c c #ffffff",
"#d c #ffffff",
"#e c #ffffff",
"#f c #ffffff",
"#g c #ffffff",
"#h c #ffffff",
"#i c #ffffff",
"#j c #ffffff",
"#k c #ffffff",
"#l c #ffffff",
"#m c #ffffff",
"#n c #ffffff",
"#o c #ffffff",
"#p c #ffffff",
"#q c #ffffff",
"#r c #ffffff",
"#s c #ffffff",
"#t c #ffffff",
"#u c #ffffff",
"#v c #ffffff",
"#w c #ffffff",
"#x c #ffffff",
"#y c #ffffff",
"#z c #ffffff",
"#A c #ffffff",
"#B c #ffffff",
"#C c #ffffff",
"#D c #ffffff",
"#E c #ffffff",
"#F c #ffffff",
"#G c #ffffff",
"#H c #ffffff",
"#I c #ffffff",
"#J c #ffffff",
"#K c #ffffff",
"#L c #ffffff",
"#M c #ffffff",
"#N c #ffffff",
"#O c #ffffff",
"#P c #ffffff",
"#Q c #ffffff",
"#R c #ffffff",
"#S c #ffffff",
"#T c #ffffff",
"#U c #ffffff",
"#V c #ffffff",
"#W c #ffffff",
"#X c #ffffff",
"#Y c #ffffff",
"#Z c #ffffff",
"#0 c #ffffff",
"#1 c #ffffff",
"#2 c #ffffff",
"#3 c #ffffff",
"#4 c #ffffff",
"#5 c #ffffff",
"#6 c #ffffff",
"#7 c #ffffff",
"#8 c #ffffff",
"a` c #ffffff",
"a. c #ffffff",
"a# c #ffffff",
"aa c #ffffff",
"ab c #ffffff",
"ac c #ffffff",
"ad c #ffffff",
"ae c #ffffff",
"af c #ffffff",
"ag c #ffffff",
"ah c #ffffff",
"ai c #ffffff",
"aj c #ffffff",
"ak c #ffffff",
"al c #ffffff",
"am c #ffffff",
"an c #ffffff",
"ao c #ffffff",
"ap c #ffffff",
"aq c #ffffff",
"ar c #ffffff",
"as c #ffffff",
"at c #ffffff",
"au c #ffffff",
"av c #ffffff",
"aw c #ffffff",
"ax c #ffffff",
"ay c #ffffff",
"az c #ffffff",
"aA c #ffffff",
"aB c #ffffff",
"aC c #ffffff",
"aD c #ffffff",
"aE c #ffffff",
"aF c #ffffff",
"aG c #ffffff",
"aH c #ffffff",
"aI c #ffffff",
"aJ c #ffffff",
"aK c #ffffff",
"aL c #ffffff",
"aM c #ffffff",
"aN c #ffffff",
"aO c #ffffff",
"aP c #ffffff",
"aQ c #ffffff",
"aR c #ffffff",
"aS c #ffffff",
"aT c #ffffff",
"aU c #ffffff",
"aV c #ffffff",
"aW c #ffffff",
"aX c #ffffff",
"aY c #ffffff",
"aZ c #ffffff",
"a0 c #ffffff",
"a1 c #ffffff",
"a2 c #ffffff",
"a3 c #ffffff",
"a4 c #ffffff",
"a5 c #ffffff",
"a6 c #ffffff",
"a7 c #ffffff",
"a8 c #ffffff",
/* pixels */
"`.`.`.`.`.`.",
"`.`.`.`.`.``",
"`.`.`.`.`.`.",
"`.`.`.`.`.``",
"`.`.`.`.`.`.",
"`.`.`.`.`.``",
"`.`.`.`.`.`.",
"`.`.`.`.`.``",
"`.`.`.`.`.`.",
"`.`.`.`.`.``",
"`.`.`.`.`.`.",
"`.`.`.`.`.``",
"`.`.`.`.`.`.",
"`.`.`.`.`.``",
"`.`.`.`.`.`.",
"`.`.`.`.`.``",
"`.`.`.`.`.`.",
"`.`.`.`.`.``",
"`.`.`.`.`.`.",
"`.`.`.`.`.``",
"`.`.`.`.`.`.",
"`.`.`.`.`.``"
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 915 B

View file

@ -0,0 +1,285 @@
/* XPM */
static char *handle[] = {
/* width height num_colors chars_per_pixel */
" 10 22 256 2",
/* colors */
"`` c #000000",
"`. c #a5a5c6",
"`# c #ada5c6",
"`a c #cecee7",
"`b c #ceceff",
"`c c None",
"`d c #ffffff",
"`e c #ffffff",
"`f c #ffffff",
"`g c #ffffff",
"`h c #ffffff",
"`i c #ffffff",
"`j c #ffffff",
"`k c #ffffff",
"`l c #ffffff",
"`m c #ffffff",
"`n c #ffffff",
"`o c #ffffff",
"`p c #ffffff",
"`q c #ffffff",
"`r c #ffffff",
"`s c #ffffff",
"`t c #ffffff",
"`u c #ffffff",
"`v c #ffffff",
"`w c #ffffff",
"`x c #ffffff",
"`y c #ffffff",
"`z c #ffffff",
"`A c #ffffff",
"`B c #ffffff",
"`C c #ffffff",
"`D c #808000",
"`E c #ffffff",
"`F c #ffffff",
"`G c #ffffff",
"`H c #ffffff",
"`I c #ffffff",
"`J c #ffffff",
"`K c #ffffff",
"`L c #ffffff",
"`M c #ffffff",
"`N c #ffffff",
"`O c #ffffff",
"`P c #ffffff",
"`Q c #ffffff",
"`R c #ffffff",
"`S c #ffffff",
"`T c #ffffff",
"`U c #ffffff",
"`V c #ffffff",
"`W c #ffffff",
"`X c #ffffff",
"`Y c #ffffff",
"`Z c #ffffff",
"`0 c #ffffff",
"`1 c #ffffff",
"`2 c #ffffff",
"`3 c #ffffff",
"`4 c #ffffff",
"`5 c #ffffff",
"`6 c #ffffff",
"`7 c #ffffff",
"`8 c #ffffff",
".` c #ffffff",
".. c #ffffff",
".# c #ffffff",
".a c #ffffff",
".b c #ffffff",
".c c #ffffff",
".d c #ffffff",
".e c #ffffff",
".f c #ffffff",
".g c #ffffff",
".h c #ffffff",
".i c #ffffff",
".j c #ffffff",
".k c #ffffff",
".l c #ffffff",
".m c #ffffff",
".n c #ffffff",
".o c #ffffff",
".p c #ffffff",
".q c #ffffff",
".r c #ffffff",
".s c #ffffff",
".t c #ffffff",
".u c #ffffff",
".v c #ffffff",
".w c #ffffff",
".x c #ffffff",
".y c #ffffff",
".z c #ffffff",
".A c #ffffff",
".B c #ffffff",
".C c #ffffff",
".D c #ffffff",
".E c #ffffff",
".F c #ffffff",
".G c #ffffff",
".H c #ffffff",
".I c #ffffff",
".J c #ffffff",
".K c #ffffff",
".L c #ffffff",
".M c #ffffff",
".N c #ffffff",
".O c #ffffff",
".P c #ffffff",
".Q c #ffffff",
".R c #ffffff",
".S c #ffffff",
".T c #ffffff",
".U c #ffffff",
".V c #ffffff",
".W c #ffffff",
".X c #ffffff",
".Y c #ffffff",
".Z c #ffffff",
".0 c #ffffff",
".1 c #ffffff",
".2 c #ffffff",
".3 c #ffffff",
".4 c #ffffff",
".5 c #ffffff",
".6 c #ffffff",
".7 c #ffffff",
".8 c #ffffff",
"#` c #ffffff",
"#. c #ffffff",
"## c #ffffff",
"#a c #ffffff",
"#b c #ffffff",
"#c c #ffffff",
"#d c #ffffff",
"#e c #ffffff",
"#f c #ffffff",
"#g c #ffffff",
"#h c #ffffff",
"#i c #ffffff",
"#j c #ffffff",
"#k c #ffffff",
"#l c #ffffff",
"#m c #ffffff",
"#n c #ffffff",
"#o c #ffffff",
"#p c #ffffff",
"#q c #ffffff",
"#r c #ffffff",
"#s c #ffffff",
"#t c #ffffff",
"#u c #ffffff",
"#v c #ffffff",
"#w c #ffffff",
"#x c #ffffff",
"#y c #ffffff",
"#z c #ffffff",
"#A c #ffffff",
"#B c #ffffff",
"#C c #ffffff",
"#D c #ffffff",
"#E c #ffffff",
"#F c #ffffff",
"#G c #ffffff",
"#H c #ffffff",
"#I c #ffffff",
"#J c #ffffff",
"#K c #ffffff",
"#L c #ffffff",
"#M c #ffffff",
"#N c #ffffff",
"#O c #ffffff",
"#P c #ffffff",
"#Q c #ffffff",
"#R c #ffffff",
"#S c #ffffff",
"#T c #ffffff",
"#U c #ffffff",
"#V c #ffffff",
"#W c #ffffff",
"#X c #ffffff",
"#Y c #ffffff",
"#Z c #ffffff",
"#0 c #ffffff",
"#1 c #ffffff",
"#2 c #ffffff",
"#3 c #ffffff",
"#4 c #ffffff",
"#5 c #ffffff",
"#6 c #ffffff",
"#7 c #ffffff",
"#8 c #ffffff",
"a` c #ffffff",
"a. c #ffffff",
"a# c #ffffff",
"aa c #ffffff",
"ab c #ffffff",
"ac c #ffffff",
"ad c #ffffff",
"ae c #ffffff",
"af c #ffffff",
"ag c #ffffff",
"ah c #ffffff",
"ai c #ffffff",
"aj c #ffffff",
"ak c #ffffff",
"al c #ffffff",
"am c #ffffff",
"an c #ffffff",
"ao c #ffffff",
"ap c #ffffff",
"aq c #ffffff",
"ar c #ffffff",
"as c #ffffff",
"at c #ffffff",
"au c #ffffff",
"av c #ffffff",
"aw c #ffffff",
"ax c #ffffff",
"ay c #ffffff",
"az c #ffffff",
"aA c #ffffff",
"aB c #ffffff",
"aC c #ffffff",
"aD c #ffffff",
"aE c #ffffff",
"aF c #ffffff",
"aG c #ffffff",
"aH c #ffffff",
"aI c #ffffff",
"aJ c #ffffff",
"aK c #ffffff",
"aL c #ffffff",
"aM c #ffffff",
"aN c #ffffff",
"aO c #ffffff",
"aP c #ffffff",
"aQ c #ffffff",
"aR c #ffffff",
"aS c #ffffff",
"aT c #ffffff",
"aU c #ffffff",
"aV c #ffffff",
"aW c #ffffff",
"aX c #ffffff",
"aY c #ffffff",
"aZ c #ffffff",
"a0 c #ffffff",
"a1 c #ffffff",
"a2 c #ffffff",
"a3 c #ffffff",
"a4 c #ffffff",
"a5 c #ffffff",
"a6 c #ffffff",
"a7 c #ffffff",
"a8 c #ffffff",
/* pixels */
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`#`c`#`c`#`c`#`c`#",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c"
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 980 B

View file

@ -0,0 +1,285 @@
/* XPM */
static char *leaf[] = {
/* width height num_colors chars_per_pixel */
" 16 22 256 2",
/* colors */
"`` c #000000",
"`. c #424242",
"`# c #848484",
"`a c #949494",
"`b c #9c9c9c",
"`c c #a5a5a5",
"`d c #adadad",
"`e c #b5b5b5",
"`f c #bdbdbd",
"`g c #c6c6c6",
"`h c None",
"`i c #ffffff",
"`j c #ffffff",
"`k c #ffffff",
"`l c #ffffff",
"`m c #ffffff",
"`n c #ffffff",
"`o c #ffffff",
"`p c #ffffff",
"`q c #ffffff",
"`r c #ffffff",
"`s c #ffffff",
"`t c #ffffff",
"`u c #ffffff",
"`v c #ffffff",
"`w c #ffffff",
"`x c #ffffff",
"`y c #ffffff",
"`z c #ffffff",
"`A c #ffffff",
"`B c #ffffff",
"`C c #ffffff",
"`D c #ffffff",
"`E c #ffffff",
"`F c #ffffff",
"`G c #ffffff",
"`H c #ffffff",
"`I c #ffffff",
"`J c #ffffff",
"`K c #ffffff",
"`L c #ffffff",
"`M c #ffffff",
"`N c #ffffff",
"`O c #ffffff",
"`P c #ffffff",
"`Q c #ffffff",
"`R c #ffffff",
"`S c #ffffff",
"`T c #ffffff",
"`U c #ffffff",
"`V c #ffffff",
"`W c #ffffff",
"`X c #ffffff",
"`Y c #ffffff",
"`Z c #ffffff",
"`0 c #ffffff",
"`1 c #ffffff",
"`2 c #ffffff",
"`3 c #ffffff",
"`4 c #ffffff",
"`5 c #ffffff",
"`6 c #ffffff",
"`7 c #ffffff",
"`8 c #ffffff",
".` c #ffffff",
".. c #ffffff",
".# c #ffffff",
".a c #ffffff",
".b c #ffffff",
".c c #ffffff",
".d c #ffffff",
".e c #ffffff",
".f c #ffffff",
".g c #ffffff",
".h c #ffffff",
".i c #ffffff",
".j c #ffffff",
".k c #ffffff",
".l c #ffffff",
".m c #ffffff",
".n c #ffffff",
".o c #ffffff",
".p c #ffffff",
".q c #ffffff",
".r c #ffffff",
".s c #ffffff",
".t c #ffffff",
".u c #ffffff",
".v c #ffffff",
".w c #ffffff",
".x c #ffffff",
".y c #ffffff",
".z c #ffffff",
".A c #ffffff",
".B c #ffffff",
".C c #ffffff",
".D c #ffffff",
".E c #ffffff",
".F c #ffffff",
".G c #ffffff",
".H c #ffffff",
".I c #ffffff",
".J c #ffffff",
".K c #ffffff",
".L c #ffffff",
".M c #ffffff",
".N c #ffffff",
".O c #ffffff",
".P c #ffffff",
".Q c #ffffff",
".R c #ffffff",
".S c #ffffff",
".T c #ffffff",
".U c #ffffff",
".V c #ffffff",
".W c #ffffff",
".X c #ffffff",
".Y c #ffffff",
".Z c #ffffff",
".0 c #ffffff",
".1 c #ffffff",
".2 c #ffffff",
".3 c #ffffff",
".4 c #ffffff",
".5 c #ffffff",
".6 c #ffffff",
".7 c #ffffff",
".8 c #ffffff",
"#` c #ffffff",
"#. c #ffffff",
"## c #ffffff",
"#a c #ffffff",
"#b c #ffffff",
"#c c #ffffff",
"#d c #ffffff",
"#e c #ffffff",
"#f c #ffffff",
"#g c #ffffff",
"#h c #ffffff",
"#i c #ffffff",
"#j c #ffffff",
"#k c #ffffff",
"#l c #ffffff",
"#m c #ffffff",
"#n c #ffffff",
"#o c #ffffff",
"#p c #ffffff",
"#q c #ffffff",
"#r c #ffffff",
"#s c #ffffff",
"#t c #ffffff",
"#u c #ffffff",
"#v c #ffffff",
"#w c #ffffff",
"#x c #ffffff",
"#y c #ffffff",
"#z c #ffffff",
"#A c #ffffff",
"#B c #ffffff",
"#C c #ffffff",
"#D c #ffffff",
"#E c #ffffff",
"#F c #ffffff",
"#G c #ffffff",
"#H c #ffffff",
"#I c #ffffff",
"#J c #ffffff",
"#K c #ffffff",
"#L c #ffffff",
"#M c #ffffff",
"#N c #ffffff",
"#O c #ffffff",
"#P c #ffffff",
"#Q c #ffffff",
"#R c #ffffff",
"#S c #ffffff",
"#T c #ffffff",
"#U c #ffffff",
"#V c #ffffff",
"#W c #ffffff",
"#X c #ffffff",
"#Y c #ffffff",
"#Z c #ffffff",
"#0 c #ffffff",
"#1 c #ffffff",
"#2 c #ffffff",
"#3 c #ffffff",
"#4 c #ffffff",
"#5 c #ffffff",
"#6 c #ffffff",
"#7 c #ffffff",
"#8 c #ffffff",
"a` c #ffffff",
"a. c #ffffff",
"a# c #ffffff",
"aa c #ffffff",
"ab c #ffffff",
"ac c #ffffff",
"ad c #ffffff",
"ae c #ffffff",
"af c #ffffff",
"ag c #ffffff",
"ah c #ffffff",
"ai c #ffffff",
"aj c #ffffff",
"ak c #ffffff",
"al c #ffffff",
"am c #ffffff",
"an c #ffffff",
"ao c #ffffff",
"ap c #ffffff",
"aq c #ffffff",
"ar c #ffffff",
"as c #ffffff",
"at c #ffffff",
"au c #ffffff",
"av c #ffffff",
"aw c #ffffff",
"ax c #ffffff",
"ay c #ffffff",
"az c #ffffff",
"aA c #ffffff",
"aB c #ffffff",
"aC c #ffffff",
"aD c #ffffff",
"aE c #ffffff",
"aF c #ffffff",
"aG c #ffffff",
"aH c #ffffff",
"aI c #ffffff",
"aJ c #ffffff",
"aK c #ffffff",
"aL c #ffffff",
"aM c #ffffff",
"aN c #ffffff",
"aO c #ffffff",
"aP c #ffffff",
"aQ c #ffffff",
"aR c #ffffff",
"aS c #ffffff",
"aT c #ffffff",
"aU c #ffffff",
"aV c #ffffff",
"aW c #ffffff",
"aX c #ffffff",
"aY c #ffffff",
"aZ c #ffffff",
"a0 c #ffffff",
"a1 c #ffffff",
"a2 c #ffffff",
"a3 c #ffffff",
"a4 c #ffffff",
"a5 c #ffffff",
"a6 c #ffffff",
"a7 c #ffffff",
"a8 c #ffffff",
/* pixels */
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`.`.`.`.`.`.`.`h`h`h`h`h`h`h`h`h",
"`.`a`a`b`b`c`.`.`h`h`h`h`h`h`h`h",
"`.`a`b`b`c`c`.`d`.`h`h`h`h`h`h`h",
"`.`b`b`c`c`c`.`.`.`.`h`h`h`h`h`h",
"`.`b`#`#`#`a`#`d`e`.`h`h`h`h`h`h",
"`.`c`c`c`d`d`d`e`e`.`h`h`h`h`h`h",
"`.`c`#`a`#`#`#`e`f`.`h`h`h`h`h`h",
"`.`c`d`d`d`e`e`f`f`.`h`h`h`h`h`h",
"`.`d`#`#`a`#`#`f`f`.`h`h`h`h`h`h",
"`.`d`d`e`e`f`f`f`f`.`h`h`h`h`h`h",
"`.`d`e`e`f`f`f`f`f`.`h`h`h`h`h`h",
"`.`.`.`.`.`.`.`.`.`.`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h",
"`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h`h"
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 934 B

View file

@ -0,0 +1,285 @@
/* XPM */
static char *no-guide[] = {
/* width height num_colors chars_per_pixel */
" 6 22 256 2",
/* colors */
"`` c None",
"`. c #ffffff",
"`# c #ffffff",
"`a c #ffffff",
"`b c #ffffff",
"`c c #ffffff",
"`d c #ffffff",
"`e c #ffffff",
"`f c #ffffff",
"`g c #ffffff",
"`h c #ffffff",
"`i c #ffffff",
"`j c #ffffff",
"`k c #ffffff",
"`l c #ffffff",
"`m c #ffffff",
"`n c #ffffff",
"`o c #ffffff",
"`p c #ffffff",
"`q c #ffffff",
"`r c #ffffff",
"`s c #ffffff",
"`t c #ffffff",
"`u c #ffffff",
"`v c #ffffff",
"`w c #ffffff",
"`x c #ffffff",
"`y c #ffffff",
"`z c #ffffff",
"`A c #ffffff",
"`B c #ffffff",
"`C c #ffffff",
"`D c #ffffff",
"`E c #ffffff",
"`F c #ffffff",
"`G c #ffffff",
"`H c #ffffff",
"`I c #ffffff",
"`J c #ffffff",
"`K c #ffffff",
"`L c #ffffff",
"`M c #ffffff",
"`N c #ffffff",
"`O c #ffffff",
"`P c #ffffff",
"`Q c #ffffff",
"`R c #ffffff",
"`S c #ffffff",
"`T c #ffffff",
"`U c #ffffff",
"`V c #ffffff",
"`W c #ffffff",
"`X c #ffffff",
"`Y c #ffffff",
"`Z c #ffffff",
"`0 c #ffffff",
"`1 c #ffffff",
"`2 c #ffffff",
"`3 c #ffffff",
"`4 c #ffffff",
"`5 c #ffffff",
"`6 c #ffffff",
"`7 c #ffffff",
"`8 c #ffffff",
".` c #ffffff",
".. c #ffffff",
".# c #ffffff",
".a c #ffffff",
".b c #ffffff",
".c c #ffffff",
".d c #ffffff",
".e c #ffffff",
".f c #ffffff",
".g c #ffffff",
".h c #ffffff",
".i c #ffffff",
".j c #ffffff",
".k c #ffffff",
".l c #ffffff",
".m c #ffffff",
".n c #ffffff",
".o c #ffffff",
".p c #ffffff",
".q c #ffffff",
".r c #ffffff",
".s c #ffffff",
".t c #ffffff",
".u c #ffffff",
".v c #ffffff",
".w c #ffffff",
".x c #ffffff",
".y c #ffffff",
".z c #ffffff",
".A c #ffffff",
".B c #ffffff",
".C c #ffffff",
".D c #ffffff",
".E c #ffffff",
".F c #ffffff",
".G c #ffffff",
".H c #ffffff",
".I c #ffffff",
".J c #ffffff",
".K c #ffffff",
".L c #ffffff",
".M c #ffffff",
".N c #ffffff",
".O c #ffffff",
".P c #ffffff",
".Q c #ffffff",
".R c #ffffff",
".S c #ffffff",
".T c #ffffff",
".U c #ffffff",
".V c #ffffff",
".W c #ffffff",
".X c #ffffff",
".Y c #ffffff",
".Z c #ffffff",
".0 c #ffffff",
".1 c #ffffff",
".2 c #ffffff",
".3 c #ffffff",
".4 c #ffffff",
".5 c #ffffff",
".6 c #ffffff",
".7 c #ffffff",
".8 c #ffffff",
"#` c #ffffff",
"#. c #ffffff",
"## c #ffffff",
"#a c #ffffff",
"#b c #ffffff",
"#c c #ffffff",
"#d c #ffffff",
"#e c #ffffff",
"#f c #ffffff",
"#g c #ffffff",
"#h c #ffffff",
"#i c #ffffff",
"#j c #ffffff",
"#k c #ffffff",
"#l c #ffffff",
"#m c #ffffff",
"#n c #ffffff",
"#o c #ffffff",
"#p c #ffffff",
"#q c #ffffff",
"#r c #ffffff",
"#s c #ffffff",
"#t c #ffffff",
"#u c #ffffff",
"#v c #ffffff",
"#w c #ffffff",
"#x c #ffffff",
"#y c #ffffff",
"#z c #ffffff",
"#A c #ffffff",
"#B c #ffffff",
"#C c #ffffff",
"#D c #ffffff",
"#E c #ffffff",
"#F c #ffffff",
"#G c #ffffff",
"#H c #ffffff",
"#I c #ffffff",
"#J c #ffffff",
"#K c #ffffff",
"#L c #ffffff",
"#M c #ffffff",
"#N c #ffffff",
"#O c #ffffff",
"#P c #ffffff",
"#Q c #ffffff",
"#R c #ffffff",
"#S c #ffffff",
"#T c #ffffff",
"#U c #ffffff",
"#V c #ffffff",
"#W c #ffffff",
"#X c #ffffff",
"#Y c #ffffff",
"#Z c #ffffff",
"#0 c #ffffff",
"#1 c #ffffff",
"#2 c #ffffff",
"#3 c #ffffff",
"#4 c #ffffff",
"#5 c #ffffff",
"#6 c #ffffff",
"#7 c #ffffff",
"#8 c #ffffff",
"a` c #ffffff",
"a. c #ffffff",
"a# c #ffffff",
"aa c #ffffff",
"ab c #ffffff",
"ac c #ffffff",
"ad c #ffffff",
"ae c #ffffff",
"af c #ffffff",
"ag c #ffffff",
"ah c #ffffff",
"ai c #ffffff",
"aj c #ffffff",
"ak c #ffffff",
"al c #ffffff",
"am c #ffffff",
"an c #ffffff",
"ao c #ffffff",
"ap c #ffffff",
"aq c #ffffff",
"ar c #ffffff",
"as c #ffffff",
"at c #ffffff",
"au c #ffffff",
"av c #ffffff",
"aw c #ffffff",
"ax c #ffffff",
"ay c #ffffff",
"az c #ffffff",
"aA c #ffffff",
"aB c #ffffff",
"aC c #ffffff",
"aD c #ffffff",
"aE c #ffffff",
"aF c #ffffff",
"aG c #ffffff",
"aH c #ffffff",
"aI c #ffffff",
"aJ c #ffffff",
"aK c #ffffff",
"aL c #ffffff",
"aM c #ffffff",
"aN c #ffffff",
"aO c #ffffff",
"aP c #ffffff",
"aQ c #ffffff",
"aR c #ffffff",
"aS c #ffffff",
"aT c #ffffff",
"aU c #ffffff",
"aV c #ffffff",
"aW c #ffffff",
"aX c #ffffff",
"aY c #ffffff",
"aZ c #ffffff",
"a0 c #ffffff",
"a1 c #ffffff",
"a2 c #ffffff",
"a3 c #ffffff",
"a4 c #ffffff",
"a5 c #ffffff",
"a6 c #ffffff",
"a7 c #ffffff",
"a8 c #ffffff",
/* pixels */
"````````````",
"````````````",
"````````````",
"````````````",
"````````````",
"````````````",
"````````````",
"````````````",
"````````````",
"````````````",
"````````````",
"````````````",
"````````````",
"````````````",
"````````````",
"````````````",
"````````````",
"````````````",
"````````````",
"````````````",
"````````````",
"````````````"
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 942 B

View file

@ -0,0 +1,285 @@
/* XPM */
static char *no-handle[] = {
/* width height num_colors chars_per_pixel */
" 10 22 256 2",
/* colors */
"`` c #000000",
"`. c #a5a5c6",
"`# c #ada5c6",
"`a c #cecee7",
"`b c #ceceff",
"`c c None",
"`d c #ffffff",
"`e c #ffffff",
"`f c #ffffff",
"`g c #ffffff",
"`h c #ffffff",
"`i c #ffffff",
"`j c #ffffff",
"`k c #ffffff",
"`l c #ffffff",
"`m c #ffffff",
"`n c #ffffff",
"`o c #ffffff",
"`p c #ffffff",
"`q c #ffffff",
"`r c #ffffff",
"`s c #ffffff",
"`t c #ffffff",
"`u c #ffffff",
"`v c #ffffff",
"`w c #ffffff",
"`x c #ffffff",
"`y c #ffffff",
"`z c #ffffff",
"`A c #ffffff",
"`B c #ffffff",
"`C c #ffffff",
"`D c #808000",
"`E c #ffffff",
"`F c #ffffff",
"`G c #ffffff",
"`H c #ffffff",
"`I c #ffffff",
"`J c #ffffff",
"`K c #ffffff",
"`L c #ffffff",
"`M c #ffffff",
"`N c #ffffff",
"`O c #ffffff",
"`P c #ffffff",
"`Q c #ffffff",
"`R c #ffffff",
"`S c #ffffff",
"`T c #ffffff",
"`U c #ffffff",
"`V c #ffffff",
"`W c #ffffff",
"`X c #ffffff",
"`Y c #ffffff",
"`Z c #ffffff",
"`0 c #ffffff",
"`1 c #ffffff",
"`2 c #ffffff",
"`3 c #ffffff",
"`4 c #ffffff",
"`5 c #ffffff",
"`6 c #ffffff",
"`7 c #ffffff",
"`8 c #ffffff",
".` c #ffffff",
".. c #ffffff",
".# c #ffffff",
".a c #ffffff",
".b c #ffffff",
".c c #ffffff",
".d c #ffffff",
".e c #ffffff",
".f c #ffffff",
".g c #ffffff",
".h c #ffffff",
".i c #ffffff",
".j c #ffffff",
".k c #ffffff",
".l c #ffffff",
".m c #ffffff",
".n c #ffffff",
".o c #ffffff",
".p c #ffffff",
".q c #ffffff",
".r c #ffffff",
".s c #ffffff",
".t c #ffffff",
".u c #ffffff",
".v c #ffffff",
".w c #ffffff",
".x c #ffffff",
".y c #ffffff",
".z c #ffffff",
".A c #ffffff",
".B c #ffffff",
".C c #ffffff",
".D c #ffffff",
".E c #ffffff",
".F c #ffffff",
".G c #ffffff",
".H c #ffffff",
".I c #ffffff",
".J c #ffffff",
".K c #ffffff",
".L c #ffffff",
".M c #ffffff",
".N c #ffffff",
".O c #ffffff",
".P c #ffffff",
".Q c #ffffff",
".R c #ffffff",
".S c #ffffff",
".T c #ffffff",
".U c #ffffff",
".V c #ffffff",
".W c #ffffff",
".X c #ffffff",
".Y c #ffffff",
".Z c #ffffff",
".0 c #ffffff",
".1 c #ffffff",
".2 c #ffffff",
".3 c #ffffff",
".4 c #ffffff",
".5 c #ffffff",
".6 c #ffffff",
".7 c #ffffff",
".8 c #ffffff",
"#` c #ffffff",
"#. c #ffffff",
"## c #ffffff",
"#a c #ffffff",
"#b c #ffffff",
"#c c #ffffff",
"#d c #ffffff",
"#e c #ffffff",
"#f c #ffffff",
"#g c #ffffff",
"#h c #ffffff",
"#i c #ffffff",
"#j c #ffffff",
"#k c #ffffff",
"#l c #ffffff",
"#m c #ffffff",
"#n c #ffffff",
"#o c #ffffff",
"#p c #ffffff",
"#q c #ffffff",
"#r c #ffffff",
"#s c #ffffff",
"#t c #ffffff",
"#u c #ffffff",
"#v c #ffffff",
"#w c #ffffff",
"#x c #ffffff",
"#y c #ffffff",
"#z c #ffffff",
"#A c #ffffff",
"#B c #ffffff",
"#C c #ffffff",
"#D c #ffffff",
"#E c #ffffff",
"#F c #ffffff",
"#G c #ffffff",
"#H c #ffffff",
"#I c #ffffff",
"#J c #ffffff",
"#K c #ffffff",
"#L c #ffffff",
"#M c #ffffff",
"#N c #ffffff",
"#O c #ffffff",
"#P c #ffffff",
"#Q c #ffffff",
"#R c #ffffff",
"#S c #ffffff",
"#T c #ffffff",
"#U c #ffffff",
"#V c #ffffff",
"#W c #ffffff",
"#X c #ffffff",
"#Y c #ffffff",
"#Z c #ffffff",
"#0 c #ffffff",
"#1 c #ffffff",
"#2 c #ffffff",
"#3 c #ffffff",
"#4 c #ffffff",
"#5 c #ffffff",
"#6 c #ffffff",
"#7 c #ffffff",
"#8 c #ffffff",
"a` c #ffffff",
"a. c #ffffff",
"a# c #ffffff",
"aa c #ffffff",
"ab c #ffffff",
"ac c #ffffff",
"ad c #ffffff",
"ae c #ffffff",
"af c #ffffff",
"ag c #ffffff",
"ah c #ffffff",
"ai c #ffffff",
"aj c #ffffff",
"ak c #ffffff",
"al c #ffffff",
"am c #ffffff",
"an c #ffffff",
"ao c #ffffff",
"ap c #ffffff",
"aq c #ffffff",
"ar c #ffffff",
"as c #ffffff",
"at c #ffffff",
"au c #ffffff",
"av c #ffffff",
"aw c #ffffff",
"ax c #ffffff",
"ay c #ffffff",
"az c #ffffff",
"aA c #ffffff",
"aB c #ffffff",
"aC c #ffffff",
"aD c #ffffff",
"aE c #ffffff",
"aF c #ffffff",
"aG c #ffffff",
"aH c #ffffff",
"aI c #ffffff",
"aJ c #ffffff",
"aK c #ffffff",
"aL c #ffffff",
"aM c #ffffff",
"aN c #ffffff",
"aO c #ffffff",
"aP c #ffffff",
"aQ c #ffffff",
"aR c #ffffff",
"aS c #ffffff",
"aT c #ffffff",
"aU c #ffffff",
"aV c #ffffff",
"aW c #ffffff",
"aX c #ffffff",
"aY c #ffffff",
"aZ c #ffffff",
"a0 c #ffffff",
"a1 c #ffffff",
"a2 c #ffffff",
"a3 c #ffffff",
"a4 c #ffffff",
"a5 c #ffffff",
"a6 c #ffffff",
"a7 c #ffffff",
"a8 c #ffffff",
/* pixels */
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c",
"`c`c`c`c`c`c`c`c`c`c"
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 1,019 B

View file

@ -0,0 +1,285 @@
/* XPM */
static char *open[] = {
/* width height num_colors chars_per_pixel */
" 16 22 256 2",
/* colors */
"`` c #848400",
"`. c #a5a5c6",
"`# c #adad39",
"`a c #adad42",
"`b c #b5b54a",
"`c c #bdbd52",
"`d c #bdbd5a",
"`e c #c6c663",
"`f c #c6c66b",
"`g c #cece6b",
"`h c #cece73",
"`i c #cece7b",
"`j c #d6d67b",
"`k c None",
"`l c #ffffff",
"`m c #ffffff",
"`n c #ffffff",
"`o c #ffffff",
"`p c #ffffff",
"`q c #ffffff",
"`r c #ffffff",
"`s c #ffffff",
"`t c #ffffff",
"`u c #ffffff",
"`v c #ffffff",
"`w c #ffffff",
"`x c #ffffff",
"`y c #ffffff",
"`z c #ffffff",
"`A c #ffffff",
"`B c #ffffff",
"`C c #ffffff",
"`D c #ffffff",
"`E c #ffffff",
"`F c #ffffff",
"`G c #ffffff",
"`H c #ffffff",
"`I c #ffffff",
"`J c #ffffff",
"`K c #ffffff",
"`L c #ffffff",
"`M c #ffffff",
"`N c #ffffff",
"`O c #ffffff",
"`P c #ffffff",
"`Q c #ffffff",
"`R c #ffffff",
"`S c #ffffff",
"`T c #ffffff",
"`U c #ffffff",
"`V c #ffffff",
"`W c #ffffff",
"`X c #ffffff",
"`Y c #ffffff",
"`Z c #ffffff",
"`0 c #ffffff",
"`1 c #ffffff",
"`2 c #ffffff",
"`3 c #ffffff",
"`4 c #ffffff",
"`5 c #ffffff",
"`6 c #ffffff",
"`7 c #ffffff",
"`8 c #ffffff",
".` c #ffffff",
".. c #ffffff",
".# c #ffffff",
".a c #ffffff",
".b c #ffffff",
".c c #ffffff",
".d c #ffffff",
".e c #ffffff",
".f c #ffffff",
".g c #ffffff",
".h c #ffffff",
".i c #ffffff",
".j c #ffffff",
".k c #ffffff",
".l c #ffffff",
".m c #ffffff",
".n c #ffffff",
".o c #ffffff",
".p c #ffffff",
".q c #ffffff",
".r c #ffffff",
".s c #ffffff",
".t c #ffffff",
".u c #ffffff",
".v c #ffffff",
".w c #ffffff",
".x c #ffffff",
".y c #ffffff",
".z c #ffffff",
".A c #ffffff",
".B c #ffffff",
".C c #ffffff",
".D c #ffffff",
".E c #ffffff",
".F c #ffffff",
".G c #ffffff",
".H c #ffffff",
".I c #ffffff",
".J c #ffffff",
".K c #ffffff",
".L c #ffffff",
".M c #ffffff",
".N c #ffffff",
".O c #ffffff",
".P c #ffffff",
".Q c #ffffff",
".R c #ffffff",
".S c #ffffff",
".T c #ffffff",
".U c #ffffff",
".V c #ffffff",
".W c #ffffff",
".X c #ffffff",
".Y c #ffffff",
".Z c #ffffff",
".0 c #ffffff",
".1 c #ffffff",
".2 c #ffffff",
".3 c #ffffff",
".4 c #ffffff",
".5 c #ffffff",
".6 c #ffffff",
".7 c #ffffff",
".8 c #ffffff",
"#` c #ffffff",
"#. c #ffffff",
"## c #ffffff",
"#a c #ffffff",
"#b c #ffffff",
"#c c #ffffff",
"#d c #ffffff",
"#e c #ffffff",
"#f c #ffffff",
"#g c #ffffff",
"#h c #ffffff",
"#i c #ffffff",
"#j c #ffffff",
"#k c #ffffff",
"#l c #ffffff",
"#m c #ffffff",
"#n c #ffffff",
"#o c #ffffff",
"#p c #ffffff",
"#q c #ffffff",
"#r c #ffffff",
"#s c #ffffff",
"#t c #ffffff",
"#u c #ffffff",
"#v c #ffffff",
"#w c #ffffff",
"#x c #ffffff",
"#y c #ffffff",
"#z c #ffffff",
"#A c #ffffff",
"#B c #ffffff",
"#C c #ffffff",
"#D c #ffffff",
"#E c #ffffff",
"#F c #ffffff",
"#G c #ffffff",
"#H c #ffffff",
"#I c #ffffff",
"#J c #ffffff",
"#K c #ffffff",
"#L c #ffffff",
"#M c #ffffff",
"#N c #ffffff",
"#O c #ffffff",
"#P c #ffffff",
"#Q c #ffffff",
"#R c #ffffff",
"#S c #ffffff",
"#T c #ffffff",
"#U c #ffffff",
"#V c #ffffff",
"#W c #ffffff",
"#X c #ffffff",
"#Y c #ffffff",
"#Z c #ffffff",
"#0 c #ffffff",
"#1 c #ffffff",
"#2 c #ffffff",
"#3 c #ffffff",
"#4 c #ffffff",
"#5 c #ffffff",
"#6 c #ffffff",
"#7 c #ffffff",
"#8 c #ffffff",
"a` c #ffffff",
"a. c #ffffff",
"a# c #ffffff",
"aa c #ffffff",
"ab c #ffffff",
"ac c #ffffff",
"ad c #ffffff",
"ae c #ffffff",
"af c #ffffff",
"ag c #ffffff",
"ah c #ffffff",
"ai c #ffffff",
"aj c #ffffff",
"ak c #ffffff",
"al c #ffffff",
"am c #ffffff",
"an c #ffffff",
"ao c #ffffff",
"ap c #ffffff",
"aq c #ffffff",
"ar c #ffffff",
"as c #ffffff",
"at c #ffffff",
"au c #ffffff",
"av c #ffffff",
"aw c #ffffff",
"ax c #ffffff",
"ay c #ffffff",
"az c #ffffff",
"aA c #ffffff",
"aB c #ffffff",
"aC c #ffffff",
"aD c #ffffff",
"aE c #ffffff",
"aF c #ffffff",
"aG c #ffffff",
"aH c #ffffff",
"aI c #ffffff",
"aJ c #ffffff",
"aK c #ffffff",
"aL c #ffffff",
"aM c #ffffff",
"aN c #ffffff",
"aO c #ffffff",
"aP c #ffffff",
"aQ c #ffffff",
"aR c #ffffff",
"aS c #ffffff",
"aT c #ffffff",
"aU c #ffffff",
"aV c #ffffff",
"aW c #ffffff",
"aX c #ffffff",
"aY c #ffffff",
"aZ c #ffffff",
"a0 c #ffffff",
"a1 c #ffffff",
"a2 c #ffffff",
"a3 c #ffffff",
"a4 c #ffffff",
"a5 c #ffffff",
"a6 c #ffffff",
"a7 c #ffffff",
"a8 c #ffffff",
/* pixels */
"`k`k`k`k`k`k`k`k`k`k`k`k`k`k`k`k",
"`k`k`k`k`k`k`k`k`k`k`k`k`k`k`k`k",
"`k`k`k`k`k`k`k`k`k`k`k`k`k`k`k`k",
"`k`k`k`k`k`k`k`k`k`k`k`k`k`k`k`k",
"`k`k`k`k`k`k`k`k`k`k`k`k`k`k`k`k",
"`k`k`k`k`k`k`k`k`k`k`k`k`k`k`k`k",
"`k`````````k`k`k`k`k`k`k`k`k`k`k",
"```j`i`i`h```````````k`k`k`k`k`k",
"```i`i`h`h`f`f`d`d`c```k`k`k`k`k",
"```i`h`````````````````````k`k`k",
"```h```#`a`a`b`b`c`d`d`e`e```k`k",
"```h```a`a`b`b`c`d`d`e`e```k`k`k",
"`````a`a`b`b`c`d`d`e`e`f```k`k`k",
"`````a`b`b`c`d`d`e`e`f```k`k`k`k",
"```a`b`b`c`d`d`e`e`f`g```k`k`k`k",
"```````````````````````k`k`k`k`k",
"`k`k`k`k`k`k`k`k`k`k`k`k`k`k`k`k",
"`k`k`k`k`k`.`k`k`k`k`k`k`k`k`k`k",
"`k`k`k`k`k`k`k`k`k`k`k`k`k`k`k`k",
"`k`k`k`k`k`.`k`k`k`k`k`k`k`k`k`k",
"`k`k`k`k`k`k`k`k`k`k`k`k`k`k`k`k",
"`k`k`k`k`k`.`k`k`k`k`k`k`k`k`k`k"
};

4
leim/.arch-inventory Normal file
View file

@ -0,0 +1,4 @@
# Auto-generated files, which ignore.
precious ^(stamp-subdir|changed\..*|leim-list\.el)$
# arch-tag: a4cda8ae-2a52-4d85-bd29-14e25c7ed2a2

4
leim/.gitignore vendored
View file

@ -1,2 +1,4 @@
leim-list.el
Makefile
changed.misc
changed.tit
leim-list.el

View file

@ -1,3 +1,68 @@
2004-06-05 Kenichi Handa <handa@m17n.org>
* Makefile.in (leim-list.el): Depend on leim-ext.el. Append the
contents of leim-ext.el to leim-list.el.
* leim-ext.el: New file.
2004-05-17 Werner Lemberg <wl@gnu.org>
* quail/sisheng.el: New file.
2004-05-17 Kenichi Handa <handa@m17n.org>
* Makefile.in (OTHERS): Add ${srcdir}/quail/sisheng.elc.
2004-05-11 Eli Zaretskii <eliz@gnu.org>
* Makefile.in (leim-list.el): Move commands to convert TIT and
MISC dictionaries from here...
(changed.tit, changed.misc): ...to here. Remove the (now
unneeded) test of the contents of changed.* files.
2004-05-10 Andreas Schwab <schwab@suse.de>
* Makefile.in (all): Readd dependency on ${WORLD} so that lisp
files are compiled when bootstrapping.
2004-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
* quail/latin-ltx.el ("TeX"): Fix typo.
2004-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
* quail/latin-ltx.el: Use utf-8 coding.
("TeX"): Add de and fr quotes. From Karl Eichwalder <ke@suse.de>.
2004-05-04 Kenichi Handa <handa@m17n.org>
* Makefile.in (TIT-SOURCES): Prepend ${srcdir} to each elemnt.
(MISC-SOURCES): Likewise.
2004-05-01 Kenichi Handa <handa@m17n.org>
* Makefile.in (OTHERS): Raname from MISC.
(MISC): Rename from MISC-DIC.
(WORLD): Adjute for the above changes.
(TIT-MISC, NON-TIT-MISC): New targets.
(all): Don't depend on ${WORLD}.
(.NOTPARALLEL, .NO_PARALLEL, ${TIT}, ${MSIC-IDC}): Remove these targets.
(TIT-SOURCES, MISC-SOURCES): New macros.
(changed.tit, changed.misc): New targets.
(leim-list.el): Depend on ${NON-TIT-MISC}, changed.tit, and
changed.misc. Generate quail files from TIT and MISC files if
necessary.
(clean mostlyclean): Delete ${TIT-MISC} instead of ${TIT} and
${MISC-DIC}.
2004-05-03 Jason Rumney <jasonr@gnu.org>
* makefile.nt: Remove.
2004-04-23 Juanma Barranquero <lektu@terra.es>
* makefile.w32-in: Add "-*- makefile -*-" mode tag.
2004-04-09 Andrew Innes <andrewi@gnu.org>
* makefile.w32-in (distclean clean): Remove nmake specific
@ -5,17 +70,17 @@
2004-02-28 Kenichi Handa <handa@m17n.org>
* Makefile.in (all): Depends on ${WORLD} instead of ${TIT} and
* Makefile.in (all): Depend on ${WORLD} instead of ${TIT} and
${MISC-DIC}.
(clean, mostlyclean): Don't delete *.elc distributed with tarball.
(maintainer-clean): Delete files that are not in CVS repository.
* makefile.nt (all): Depends on $(WORLD) instead of $(TIT) and
* makefile.nt (all): Depend on $(WORLD) instead of $(TIT) and
$(MISC-DIC).
(clean, mostlyclean): Don't delete *.elc distributed with tarball.
(maintainer-clean): Delete files that are not in CVS repository.
* makefile.w32-in (all): Depends on $(WORLD) instead of $(TIT) and
* makefile.w32-in (all): Depend on $(WORLD) instead of $(TIT) and
$(MISC-DIC).
(clean, mostlyclean): Don't delete *.elc distributed with tarball.
(maintainer-clean): Delete files that are not in CVS repository.
@ -31,7 +96,7 @@
2004-01-22 Ognyan Kulev <ogi@fmi.uni-sofia.bg> (tiny change)
* quail/cyrillic.el ("bulgarian-phonetic"): Docstring fixed.
Duplicated entry removed.
Duplicate entry removed.
("bulgarian-bds"): Docstring fixed.
2003-10-06 Dave Love <fx@gnu.org>
@ -52,7 +117,7 @@
2003-07-21 KAWABATA, Taichi <kawabata@m17n.org>
* quail/indian.el (quail-indian-update-translation): Adjusted the
* quail/indian.el (quail-indian-update-translation): Adjust the
behaviour according to the change of quail-translate-key.
2003-05-22 Kenichi Handa <handa@m17n.org>
@ -71,11 +136,11 @@
2003-02-27 David Kastrup <dak@gnu.org>
* quail/greek.el (greek-babel): add koronis transliteration.
* quail/greek.el (greek-babel): Add koronis transliteration.
2003-02-23 David Kastrup <dak@gnu.org>
* quail/greek.el (greek-babel): fix <' accent.
* quail/greek.el (greek-babel): Fix <' accent.
2003-02-17 Dave Love <fx@gnu.org>
@ -83,18 +148,17 @@
2003-02-14 Juanma Barranquero <lektu@terra.es>
* quail/uni-input.el (utf-8-ccl-encode): Fix use of character
constants.
* quail/uni-input.el (utf-8-ccl-encode): Fix use of character constants.
2003-02-11 KAWABATA, Taichi <kawabata@m17n.org>
* quail/indian.el (punjabi-itrans, gujarati-itrans, oriya-itrans)
(bengali-itrans, assamese-itrans, telugu-itrans kannada-itrans)
(bengali-itrans, assamese-itrans, telugu-itrans, kannada-itrans)
(malayalam-itrans, tamil-itrans): New ITRANS based input methods.
(punjabi-inscript, gujarati-inscript, oriya-inscript)
(bengali-inscript, assamese-inscript, telugu-inscript)
(kannada-inscript, malayalam-inscript, tamil-inscript): New
INSCRIPT based input methods.
(kannada-inscript, malayalam-inscript, tamil-inscript):
New INSCRIPT based input methods.
2003-02-07 Kenichi Handa <handa@m17n.org>
@ -104,8 +168,7 @@
2003-02-05 David Kastrup <dak@gnu.org>
* quail/greek.el: fix iota accent typos in greek-babel
encoding.
* quail/greek.el: Fix iota accent typos in greek-babel encoding.
2003-01-05 Dave Love <fx@gnu.org>
@ -156,12 +219,12 @@
* quail/cyrillic.el: Doc fixes.
("cyrillic-beylorussian"): Commented-out.
("cyrillic-translit-bulgarian"): Deleted.
("cyrillic-translit-bulgarian"): Delete.
("cyrillic-ukrainian"): Fix `q', `Q', `W', `w' bindings.
("ukrainian-computer", "belarusian", "bulgarian-bds")
("russian-computer"): New.
("bulgarian-phonetic"): Renamed from bulgarian-pho. Add ,A'(B, $,1uV(B, ,LN(B.
("russian-typewriter"): Renamed from cyrillic-jcuken.
("bulgarian-phonetic"): Rename from bulgarian-pho. Add ,A'(B, $,1uV(B, ,LN(B.
("russian-typewriter"): Rename from cyrillic-jcuken.
2002-06-20 Dave Love <fx@gnu.org>
@ -195,7 +258,7 @@
2002-04-06 Jaeyoun Chung <jay@kldp.org>
* quail/hanja3.el ("kf"): added a few composing rules
* quail/hanja3.el ("kf"): Add a few composing rules
from "Taik-kyun Lim" <mongmong@milab.yonsei.ac.kr>
* quail/hangul3.el: buggy alternative second character
@ -234,9 +297,8 @@
2002-01-07 Jaeyoun Chung <jay@kldp.org>
* quail/hangul.el: removed key sequence mapping for O[rsfaqtTd].
Not used for Korean Hangul Type 2. (request from emacs-kr mailing
list).
* quail/hangul.el: Remove key sequence mapping for O[rsfaqtTd].
Not used for Korean Hangul Type 2 (request from emacs-kr mailing list).
2002-01-03 Eli Zaretskii <eliz@is.elta.co.il>
@ -244,8 +306,7 @@
2002-01-01 Dave Love <fx@gnu.org>
* quail/indian.el (quail-define-indian-trans-package): Unquote
lambda.
* quail/indian.el (quail-define-indian-trans-package): Unquote lambda.
(quail-define-inscript-package): Avoid mapcar*.
2001-12-20 Dave Love <fx@gnu.org>
@ -263,7 +324,7 @@
("spanish-keyboard"): Fix language assignment.
* quail/indian.el: Don't require cl.
(quail-indian-flatten-list): Renamed from flatten-list.
(quail-indian-flatten-list): Rename from flatten-list.
* quail/cyrillic.el ("cyrillic-beylorussian")
("cyrillic-ukrainian", "cyrillic-translit-bulgarian")
@ -273,8 +334,7 @@
("spanish-alt-postfix", "turkish-latin-3-alt-postfix")
("turkish-alt-postfix"): Fix language assignment.
("dutch"): Assign to Dutch. Use chars, not strings.
("lithuanian-numeric", "lithuanian-keyboard", "latvian-keyboard"):
New.
("lithuanian-numeric", "lithuanian-keyboard", "latvian-keyboard"): New.
2001-12-08 Pavel Jan,Am(Bk <Pavel@Janik.cz>
@ -282,7 +342,7 @@
2001-12-03 Jaeyoun Chung <jay@kldp.org>
* quail/hangul3.el: Added a few convenient composing sequences for
* quail/hangul3.el: Add a few convenient composing sequences for
Korean keyboard type 3 users.
2001-11-29 Dave Love <fx@gnu.org>
@ -293,7 +353,7 @@
2001-11-28 Juanma Barranquero <lektu@terra.es>
* makefile.w32-in (INDIAN): Adjusted for the file name change;
* makefile.w32-in (INDIAN): Adjust for the file name change;
quail/devanagari.elc -> quail/indian.elc.
* makefile.nt (INDIAN): Likewise.
@ -442,7 +502,7 @@
2001-05-17 Dave Love <fx@gnu.org>
* quail/latin-ltx.el ("TeX"): Renamed from "latin-latex2e".
* quail/latin-ltx.el ("TeX"): Rename from "latin-latex2e".
Language family and indicator changed. Many new translations.
2001-05-17 Gerd Moellmann <gerd@gnu.org>
@ -1389,7 +1449,7 @@
;; Local Variables:
;; coding: iso-2022-7bit-unix
;; coding: iso-2022-7bit
;; End:
Copyright (C) 1997, 1998, 1999, 2001 Free Software Foundation, Inc.

View file

@ -1,9 +1,6 @@
# Makefile for leim subdirectory in GNU Emacs.
# Copyright (C) 1997 Electrotechnical Laboratory, JAPAN.
# Licensed to the Free Software Foundation.
# Copyright (C) 2003
# National Institute of Advanced Industrial Science and Technology (AIST)
# Registration Number H13PRO009
# Copyright (C) 1997, 2004 Electrotechnical Laboratory, JAPAN.
# Licensed to the Free Software Foundation.
# This file is part of GNU Emacs.
@ -45,7 +42,7 @@ BUILT-EMACS = ${dot}${dot}/src/emacs
buildlisppath=${srcdir}/${dot}${dot}/lisp
# How to run Emacs.
RUN-EMACS = EMACSLOADPATH=$(buildlisppath) LC_ALL=C \
RUN-EMACS = EMACSLOADPATH=$(buildlisppath) \
${BUILT-EMACS} -batch --no-init-file --no-site-file --multibyte
# Subdirectories to be made if ${srcdir} is different from the current
@ -120,13 +117,14 @@ GREEK=${srcdir}/quail/greek.elc
RUSSIAN=${srcdir}/quail/cyrillic.elc ${srcdir}/quail/cyril-jis.elc
MISC= \
OTHERS= \
${srcdir}/quail/ethiopic.elc \
${srcdir}/quail/ipa.elc \
${srcdir}/quail/hebrew.elc \
${srcdir}/quail/georgian.elc
${srcdir}/quail/georgian.elc \
${srcdir}/quail/sisheng.elc
MISC-DIC=\
MISC= \
quail/tsang-b5.elc \
quail/quick-b5.elc \
quail/tsang-cns.elc \
@ -140,17 +138,17 @@ CHINESE=${CHINESE-GB} ${CHINESE-BIG5}
EASTASIA=${CHINESE} ${JAPANESE} ${KOREAN}
ASIA=${EASTASIA} ${THAI} ${VIETNAMESE} ${LAO} ${INDIAN} ${TIBETAN}
EUROPEAN=${LATIN} ${SLAVIC} ${GREEK} ${RUSSIAN}
WORLD=${ASIA} ${EUROPEAN} ${MISC} ${MISC-DIC} ${UNICODE}
WORLD=${ASIA} ${EUROPEAN} ${OTHERS} ${MISC} ${UNICODE}
TIT=${CHINESE-TIT}
NON-TIT=${CHINESE-NON-TIT} ${JAPANESE} ${KOREAN} ${EUROPEAN} ${MISC}
TIT-MISC=${CHINESE-TIT} ${MISC}
NON-TIT-MISC=${CHINESE-NON-TIT} ${JAPANESE} ${KOREAN} ${EUROPEAN} ${OTHERS}
.SUFFIXES: .elc .el
.el.elc:
${RUN-EMACS} -f batch-byte-compile $<
all: ${BUILT-EMACS} ${SUBDIRS} ${WORLD} leim-list.el
all: ${BUILT-EMACS} ${SUBDIRS} leim-list.el ${WORLD}
# To ensure that we can run Emacs. This target is ignored (never
# being hit) if a user changes default value of EMACS.
@ -161,38 +159,42 @@ ${SUBDIRS}:
mkdir $@
touch stamp-subdir
# The rules which generate ${TIT} and ${MISC-DIC} files create them all
# in one go. So we need to prevent parallel execution for that target,
# otherwise Emacs complains about files being locked. .NOTPARALLEL is
# for GNU Make, .NO_PARALLEL is for other Make's.
.NOTPARALLEL: ${TIT} ${MISC-DIC}
TIT-SOURCES= \
${srcdir}/CXTERM-DIC/4Corner.tit \
${srcdir}/CXTERM-DIC/ARRAY30.tit \
${srcdir}/CXTERM-DIC/CCDOSPY.tit \
${srcdir}/CXTERM-DIC/ECDICT.tit \
${srcdir}/CXTERM-DIC/ETZY.tit \
${srcdir}/CXTERM-DIC/PY-b5.tit \
${srcdir}/CXTERM-DIC/Punct-b5.tit \
${srcdir}/CXTERM-DIC/Punct.tit \
${srcdir}/CXTERM-DIC/QJ-b5.tit \
${srcdir}/CXTERM-DIC/QJ.tit \
${srcdir}/CXTERM-DIC/SW.tit \
${srcdir}/CXTERM-DIC/TONEPY.tit \
${srcdir}/CXTERM-DIC/ZOZY.tit
.NO_PARALLEL: ${TIT} ${MISC-DIC}
changed.tit: ${TIT-SOURCES}
${RUN-EMACS} -l ${buildlisppath}/international/titdic-cnv \
-f batch-titdic-convert -dir quail ${srcdir}/CXTERM-DIC; \
echo "changed" > $@
# Rule to generate quail/*.el from CXTERM-DIC/*.tit.
# The "if [ -f $@ ]; then true; " part prevents parallel Make's
# which don't honor .NOTPARALLEL, such as SGI's Make, from running
# this rule many times, one each for every file it creates.
${TIT}:
if [ -d quail ]; then true; else make quail; fi
if [ -f $@ ]; then true; else \
${RUN-EMACS} -l ${buildlisppath}/international/titdic-cnv \
--eval '(batch-titdic-convert t)' -dir quail ${srcdir}/CXTERM-DIC; fi
if [ -f $@ ]; then true; else \
${RUN-EMACS} -l ${buildlisppath}/international/quail \
-f batch-byte-compile ${TIT:.elc=.el}; fi
MISC-SOURCES= \
${srcdir}/MISC-DIC/CTLau-b5.html \
${srcdir}/MISC-DIC/CTLau.html \
${srcdir}/MISC-DIC/cangjie-table.b5 \
${srcdir}/MISC-DIC/cangjie-table.cns \
${srcdir}/MISC-DIC/pinyin.map \
${srcdir}/MISC-DIC/ziranma.cin
# Rule to generate quail/*.el from MISC-DIC/*.
${MISC-DIC}:
if [ -d quail ]; then true; else make quail; fi
if [ -f $@ ]; then true; else \
${RUN-EMACS} -l ${buildlisppath}/international/titdic-cnv \
-f batch-miscdic-convert -dir quail ${srcdir}/MISC-DIC; fi
if [ -f $@ ]; then true; else \
${RUN-EMACS} -l ${buildlisppath}/international/quail \
-f batch-byte-compile ${MISC-DIC:.elc=.el}; fi
changed.misc: ${MISC-SOURCES}
${RUN-EMACS} -l ${buildlisppath}/international/titdic-cnv \
-f batch-miscdic-convert -dir quail ${srcdir}/MISC-DIC; \
echo "changed" > $@
leim-list.el: ${SUBDIRS} ${WORLD}
leim-list.el: ${SUBDIRS} ${NON-TIT-MISC} changed.tit changed.misc ${srcdir}/leim-ext.el
${RUN-EMACS} -l ${buildlisppath}/international/quail \
-f batch-byte-compile-if-not-done ${TIT-MISC:.elc=.el}
if [ x`(cd ${srcdir} && /bin/pwd)` = x`(/bin/pwd)` ] ; then \
${RUN-EMACS} -l ${buildlisppath}/international/quail \
--eval "(update-leim-list-file \".\")" ; \
@ -200,6 +202,7 @@ leim-list.el: ${SUBDIRS} ${WORLD}
${RUN-EMACS} -l ${buildlisppath}/international/quail \
--eval "(update-leim-list-file \".\" \"${srcdir}\")" ; \
fi
sed -n '/^[^;]/ p' < ${srcdir}/leim-ext.el >> $@
install: all
if [ x`(cd ${INSTALLDIR} && /bin/pwd)` != x`(/bin/pwd)` ] ; then \
@ -226,8 +229,8 @@ install: all
-chmod -R a+r ${INSTALLDIR}
clean mostlyclean:
rm -f ${TIT} ${TIT:.elc=.el} ${MISC-DIC} ${MISC-DIC:.elc=.el} \
leim-list.el
rm -f ${TIT-MISC} ${TIT-MISC:.elc=.el} \
leim-list.el changed.tit changed.misc
distclean: clean
if test -f stamp-subdir; then rm -rf ${SUBDIRS} stamp-subdir; fi
@ -238,5 +241,3 @@ maintainer-clean: distclean
extraclean: maintainer-clean
-rm -f *~ \#* m/?*~ s/?*~
# arch-tag: f666a939-8145-4d64-a6a6-cc1f61bd32ca

37
leim/leim-ext.el Normal file
View file

@ -0,0 +1,37 @@
;; leim-ext.el -- extra leim configulation -*- coding:iso-2022-7bit; -*-
;; Copyright (C) 2004
;; Free Software Foundation, Inc.
;; Copyright (C) 2004
;; National Institute of Advanced Industrial Science and Technology (AIST)
;; Registration Number H13PRO009
;; This file is part of GNU Emacs.
;; GNU Emacs is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 2, or (at your option)
;; any later version.
;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
;; Boston, MA 02111-1307, USA.
;;; Commentary:
;; Makefile in this directory appends the contents of this file (only
;; such non-empty lines that don't begin with ';') to the generated
;; file leim-list.el.
;;; Code:
(eval-after-load "quail/PY-b5"
'(quail-defrule "ling2" ?$(0!r(B nil t))
;; arch-tag: 75cfdfc7-de85-44f9-b408-ff67d1ec664e

View file

@ -1,208 +0,0 @@
# Makefile for leim subdirectory in GNU Emacs on the Microsoft W32 API.
# Copyright (C) 1997 Electrotechnical Laboratory, JAPAN.
# Licensed to the Free Software Foundation.
# This file is part of GNU Emacs.
# GNU Emacs is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# GNU Emacs is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GNU Emacs; see the file COPYING. If not, write to the
# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
#
# Sets up the system dependent macros.
#
!include ..\nt\makefile.def
srcdir=.
# Where to install LEIM files.
INSTALLDIR=$(INSTALL_DIR)\leim
# On Xenix and the IBM RS6000, double-dot gets screwed up.
dot = .
# Which Emacs to use to convert TIT files to Emacs Lisp files,
# byte-compile Emacs Lisp files, and generate the file leim-list.el.
BUILT_EMACS = $(dot)$(dot)\src\$(BLD)\emacs.exe
buildlisppath=$(MAKEDIR:\=/)/$(dot)$(dot)/lisp
# How to run Emacs.
RUN_EMACS = $(BUILT_EMACS) -batch --no-init-file --no-site-file --multibyte
# Subdirectories to be made if $(srcdir) is different from the current
# directory.
SUBDIRS=quail
# Files generated from TIT dictionaries for Chinese GB character set.
TIT_GB=\
quail/CCDOSPY.elc \
quail/Punct.elc \
quail/QJ.elc \
quail/SW.elc \
quail/TONEPY.elc
# Files generated from TIT dictionaries for Chinese BIG5 character set.
TIT_BIG5=\
quail/4Corner.elc \
quail/ARRAY30.elc \
quail/ECDICT.elc \
quail/ETZY.elc \
quail/Punct-b5.elc \
quail/PY-b5.elc \
quail/QJ-b5.elc \
quail/ZOZY.elc
CHINESE_TIT=$(TIT_GB) $(TIT_BIG5)
NON_TIT_GB=$(srcdir)/quail/py-punct.elc
NON_TIT_BIG5=$(srcdir)/quail/quick-b5.elc
CHINESE_NON_TIT=$(NON_TIT_GB) $(NON_TIT_BIG5)
CHINESE_GB=$(TIT_GB) $(NON_TIT_GB)
CHINESE_BIG5=$(TIT_BIG5) $(NON_TIT_BIG5)
JAPANESE=$(srcdir)/quail/japanese.elc $(srcdir)/ja-dic/ja-dic.elc
KOREAN= $(srcdir)/quail/hangul.elc \
$(srcdir)/quail/hangul3.elc \
$(srcdir)/quail/hanja.elc \
$(srcdir)/quail/hanja3.elc \
$(srcdir)/quail/hanja-jis.elc \
$(srcdir)/quail/symbol-ksc.elc
THAI=$(srcdir)/quail/thai.elc
VIETNAMESE=$(srcdir)/quail/viqr.elc $(srcdir)/quail/vntelex.elc
LAO=$(srcdir)/quail/lao.elc $(srcdir)/quail/lrt.elc
INDIAN=$(srcdir)/quail/indian.elc
TIBETAN=$(srcdir)/quail/tibetan.elc
LATIN= $(srcdir)/quail/latin-pre.elc \
$(srcdir)/quail/latin-post.elc \
$(srcdir)/quail/latin-alt.elc \
$(srcdir)/quail/latin-ltx.elc
SLAVIC= \
$(srcdir)/quail/czech.elc \
$(srcdir)/quail/slovak.elc
GREEK=$(srcdir)/quail/greek.elc
RUSSIAN=$(srcdir)/quail/cyrillic.elc $(srcdir)/quail/cyril-jis.elc
MISC= \
$(srcdir)/quail/ethiopic.elc \
$(srcdir)/quail/ipa.elc \
$(srcdir)/quail/hebrew.elc
MISC_DIC=\
quail/tsang-b5.elc \
quail/quick-b5.elc \
quail/tsang-cns.elc \
quail/quick-cns.elc \
quail/PY.elc \
quail/ZIRANMA.elc \
quail/CTLau.elc \
quail/CTLau-b5.elc
CHINESE=$(CHINESE_GB) $(CHINESE_BIG5)
EASTASIA=$(CHINESE) $(JAPANESE) $(KOREAN)
ASIA=$(EASTASIA) $(THAI) $(VIETNAMESE) $(LAO) $(INDIAN) $(TIBETAN)
EUROPEAN=$(LATIN) $(SLAVIC) $(GREEK) $(RUSSIAN)
WORLD=$(ASIA) $(EUROPEAN) $(MISC)
TIT=$(CHINESE_TIT)
NON_TIT=$(CHINESE_NON_TIT) $(JAPANESE) $(KOREAN) $(EUROPEAN) $(MISC)
all: $(BUILT_EMACS) $(SUBDIRS) $(WORLD) leim-list.el
# To ensure that we can run Emacs. This target is ignored (never
# being hit) if a user changes default value of EMACS.
$(dot)$(dot)/src/emacs:
cd ../src; $(MAKE) $(MFLAGS) emacs
$(SUBDIRS):
mkdir $@
echo stamp>stamp-subdir
# The rules which generate $(TIT) and ${MISC_DIC) files create them all
# in one go. So we need to prevent parallel execution for that target,
# otherwise Emacs complains about files being locked. .NOTPARALLEL is
# for GNU Make, .NO_PARALLEL is for other Make's.
.NOTPARALLEL: $(TIT) $(MISC_DIC)
.NO_PARALLEL: $(TIT) $(MISC_DIC)
# Rule to generate quail/*.el from CXTERM-DIC/*.tit.
$(TIT): $(SUBDIRS)
set EMACSLOADPATH=$(buildlisppath)
$(RUN_EMACS) -l $(buildlisppath)/international/titdic-cnv \
--eval "(batch-titdic-convert t)" -dir quail $(srcdir)/CXTERM-DIC
$(RUN_EMACS) -l $(buildlisppath)/international/quail \
-f batch-byte-compile $(TIT:.elc=.el)
# Rule to generate quail/*.el from CXTERM-DIC/*.tit.
$(MISC_DIC): $(SUBDIRS)
set EMACSLOADPATH=$(buildlisppath)
$(RUN_EMACS) -l $(buildlisppath)/international/titdic-cnv \
-f batch-miscdic-convert -dir quail $(srcdir)/MISC-DIC
$(RUN_EMACS) -l $(buildlisppath)/international/quail \
-f batch-byte-compile $(MISC_DIC:.elc=.el)
.SUFFIXES: .elc .el
.el.elc:
set EMACSLOADPATH=$(buildlisppath)
$(RUN_EMACS) -f batch-byte-compile $<
leim-list.el: $(SUBDIRS) $(WORLD)
set EMACSLOADPATH=$(buildlisppath)
$(RUN_EMACS) -l $(buildlisppath)/international/quail \
--eval "(update-leim-list-file \".\")"
install: all
- mkdir $(INSTALLDIR)
- $(DEL) same-dir.tst
- $(DEL) $(INSTALLDIR)\same-dir.tst
echo SameDirTest > $(INSTALLDIR)\same-dir.tst
if not exist same-dir.tst $(CP) leim-list.el $(INSTALLDIR)
if not exist same-dir.tst $(CP_DIR) quail $(INSTALLDIR)\quail
if not exist same-dir.tst $(CP_DIR) ja-dic $(INSTALLDIR)\ja-dic
- $(DEL) $(INSTALLDIR)\same-dir.tst
TIT_EL=$(TIT:.elc=.el)
MISC_DIC_EL=$(MISC_DIC:.elc=.el)
clean mostlyclean:
for %%f in ($(TIT:/=\)) do $(DEL) %%f
for %%f in ($(TIT_EL:/=\)) do $(DEL) %%f
for %%f in ($(MISC_DIC:/=\)) do $(DEL) %%f
for %%f in ($(MISC_DIC_EL:/=\)) do $(DEL) %%f
$(DEL) leim-list.el
distclean: clean
if exist stamp-subdir $(DELTREE) $(SUBDIRS)
$(DEL) stamp-subdir
maintainer-clean: distclean
for %%f in ($(WORLD:/=\)) do $(DEL) %%f
# arch-tag: cded53b4-4803-496b-8c05-7daff80e5b3b

View file

@ -1,5 +1,5 @@
# Makefile for leim subdirectory in GNU Emacs on the Microsoft W32 API.
# Copyright (C) 1997 Electrotechnical Laboratory, JAPAN.
# -*- Makefile -*- for leim subdirectory in GNU Emacs on the Microsoft W32 API.
# Copyright (C) 1997, 2004 Electrotechnical Laboratory, JAPAN.
# Licensed to the Free Software Foundation.
# This file is part of GNU Emacs.
@ -203,5 +203,3 @@ distclean clean:
maintainer-clean: distclean
- $(FOREACH) $(WORLD) $(FORDO) $(DEL) $(FORVAR) $(ENDFOR)
# arch-tag: 08250c45-fa9c-4f39-a175-a0c5c36dd67b

View file

@ -0,0 +1,4 @@
# Auto-generated lisp files, which ignore.
precious ^([A-Z0-9].*|tsang-.*|quick-.*)\.el$
# arch-tag: 3d0d3e6b-f7c3-4dce-9135-a72ba7fe095d

File diff suppressed because it is too large Load diff

292
leim/quail/sisheng.el Normal file
View file

@ -0,0 +1,292 @@
;;; sisheng.el --- sisheng input method for Chinese pinyin transliteration
;; Copyright (C) 2004 Free Software Foundation, Inc.
;; Author: Werner LEMBERG <wl@gnu.org>
;; Keywords: multilingual, input method, Chinese, pinyin, sisheng
;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 2, or (at your option)
;; any later version.
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
;;; Commentary:
;;; Code:
(require 'quail)
(defconst sisheng-regexp
"[āēīōūǖ]\\|üē")
;; First element is the key,
;; second element is the vowel used for the input sequence,
;; last four elements are the resulting tones.
;;
(defconst sisheng-vowel-table
'(("ā" "a" "ā" "á" "ǎ" "à")
("ē" "e" "ē" "é" "ě" "è")
("ī" "i" "ī" "í" "ǐ" "ì")
("ō" "o" "ō" "ó" "ǒ" "ò")
("ū" "u" "ū" "ú" "ǔ" "ù")
("ǖ" "v" "ǖ" "ǘ" "ǚ" "ǜ")
("üē" "ve" "üē" "üé" "üě" "üè")))
;; All possible syllables in Mandarin Chinese, presented in the first
;; tone. Note that make-sisheng-rules always constructs rules for all
;; four tones even if some of those tones aren't used in Mandarin.
;;
(defconst sisheng-syllable-table
'("ā" "āi" "ān" "āng" "āo"
"" "bāi" "bān" "bāng" "bāo"
"bēi" "bēn" "bēng"
"" "biān" "biāo" "biē" "bīn" "bīng"
""
""
"" "cāi" "cān" "cāng" "cāo"
"" "cēn" "cēng"
""
"cōng" "cōu"
"" "cuān" "cuī" "cūn" "cuō"
"chā" "chāi" "chān" "chāng" "chāo"
"chē" "chēn" "chēng"
"chī"
"chōng" "chōu"
"chū" "chuā" "chuāi" "chuān" "chuāng" "chuī" "chūn" "chuō"
"" "dāi" "dān" "dāng" "dāo"
"" "dēi" "dēn" "dēng"
"" "diān" "diāo" "diē" "dīng" "diū"
"dōng" "dōu"
"" "duān" "duī" "dūn" "duō"
"ē" "ēi" "ēn" "ēng" "ēr"
"" "fān" "fāng"
"fēi" "fēn" "fēng"
"fiāo"
"" "fōu"
""
"" "gāi" "gān" "gāng" "gāo"
"" "gēi" "gēn" "gēng"
"gōng" "gōu"
"" "guā" "guāi" "guān" "guāng" "guī" "gūn" "guō"
"" "hāi" "hān" "hāng" "hāo"
"" "hēi" "hēn" "hēng"
"hōng" "hōu"
"" "huā" "huāi" "huān" "huāng" "huī" "hūn" "huō"
"" "jiā" "jiān" "jiāng" "jiāo" "jiē" "jīn" "jīng" "jiōng" "jiū"
"" "juān" "juē" "jūn"
"" "kāi" "kān" "kāng" "kāo"
"" "kēi" "kēn" "kēng"
"kōng" "kōu"
"" "kuā" "kuāi" "kuān" "kuāng" "kuī" "kūn" "kuō"
"" "lāi" "lān" "lāng" "lāo"
"" "lēi" "lēng"
"" "liā" "liān" "liāng" "liāo" "liē" "līn" "līng" "liū"
"lōng" "lōu"
"" "luān" "lūn" "luō"
"" "lüē"
"" "māi" "mān" "māng" "māo"
"" "mēi" "mēn" "mēng"
"" "miān" "miāo" "miē" "mīn" "mīng" "miū"
"" "mōu"
""
"" "nāi" "nān" "nāng" "nāo"
"" "nēi" "nēn" "nēng"
"" "niān" "niāng" "niāo" "niē" "nīn" "nīng" "niū"
"nōng" "nōu"
"" "nuān" "nuō"
"" "nüē"
"ō" "ōu"
"" "pāi" "pān" "pāng" "pāo"
"pēi" "pēn" "pēng"
"" "piān" "piāo" "piē" "pīn" "pīng"
"" "pōu"
""
"" "qiā" "qiān" "qiāng" "qiāo" "qiē" "qīn" "qīng" "qiōng" "qiū"
"" "quān" "quē" "qūn"
"rān" "rāng" "rāo"
"" "rēn" "rēng"
""
"rōng" "rōu"
"" "ruā" "ruān" "ruī" "rūn" "ruō"
"" "sāi" "sān" "sāng" "sāo"
"" "sēn" "sēng"
""
"sōng" "sōu"
"" "suān" "suī" "sūn" "suō"
"shā" "shāi" "shān" "shāng" "shāo"
"shē" "shēi" "shēn" "shēng"
"shī"
"shōu"
"shū" "shuā" "shuāi" "shuān" "shuāng" "shuī" "shūn" "shuō"
"" "tāi" "tān" "tāng" "tāo"
"" "tēi" "tēng"
"" "tiān" "tiāo" "tiē" "tīng"
"tōng" "tōu"
"" "tuān" "tuī" "tūn" "tuō"
"" "wāi" "wān" "wāng"
"wēi" "wēn" "wēng"
""
""
"" "xiā" "xiān" "xiāng" "xiāo" "xiē" "xīn" "xīng" "xiōng" "xiū"
"" "xuān" "xuē" "xūn"
"" "yān" "yāng" "yāo"
""
"" "yīn" "yīng"
"" "yōng" "yōu"
"" "yuān" "yuē" "yūn"
"" "zāi" "zān" "zāng" "zāo"
"" "zēi" "zēn" "zēng"
""
"zōng" "zōu"
"" "zuān" "zuī" "zūn" "zuō"
"zhā" "zhāi" "zhān" "zhāng" "zhāo"
"zhē" "zhēi" "zhēn" "zhēng"
"zhī"
"zhōng" "zhōu"
"zhū" "zhuā" "zhuāi" "zhuān" "zhuāng" "zhuī" "zhūn" "zhuō"))
;; This function converts e.g.
;;
;; "zhuō"
;;
;; into
;;
;; (("zhuo4" ["zhuò"])
;; ("zhuo3" ["zhuǒ"])
;; ("zhuo2" ["zhuó"])
;; ("zhuo1" ["zhuō"]))
;;
(defun quail-make-sisheng-rules (syllable)
(let ((case-fold-search t)
vowel-match
vowel-list
input-vowel
base-key
key
value
key-value-list
(i 1))
(string-match sisheng-regexp syllable)
(setq vowel-match (downcase (match-string 0 syllable)))
(setq vowel-list
(cdr (assoc-string vowel-match sisheng-vowel-table)))
(setq input-vowel (car vowel-list))
(setq base-key (replace-match input-vowel nil nil syllable))
(while (<= i 4)
(setq key (concat base-key (number-to-string i)))
(setq value (vector (replace-match (nth i vowel-list) nil nil syllable)))
(push (list key value) key-value-list)
(setq i (1+ i)))
key-value-list))
;; Set up sisheng input method.
;;
(quail-define-package
"chinese-sisheng" ; name
"Chinese" ; language
"ǚ" ; title
t ; guidance
"Sìshēng input method for pīnyīn transliteration of Chinese.
Examples: shuang1 -> shuāng
Lv3 ->
AN4 -> ÀN
Use the fifth (unstressed) tone for syllables containing `ü'
without a tone mark.
Example: nve5 -> nüe
" ; docstring
nil ; translation-keys
t ; forget-last-selection
nil ; deterministic
nil ; kbd-translate
nil ; show-layout
nil ; create-decode-map
nil ; maximum-shortest
nil ; overlay-plist
nil ; update-translation-function
nil ; conversion-keys
t ; simple
)
;; Call quail-make-sisheng-rules for all syllables in sisheng-syllable-table.
;;
(let ((case-table-save (current-case-table))
sisheng-list)
(set-case-table (standard-case-table))
(dolist (syllable sisheng-syllable-table)
(setq sisheng-list
(append (quail-make-sisheng-rules syllable)
sisheng-list)))
(dolist (syllable sisheng-syllable-table)
(setq sisheng-list
(append (quail-make-sisheng-rules (upcase-initials syllable))
sisheng-list)))
(dolist (syllable sisheng-syllable-table)
(setq sisheng-list
(append (quail-make-sisheng-rules (upcase syllable))
sisheng-list)))
(eval `(quail-define-rules
,@sisheng-list
("lv5" [""])
("lve5" ["lüe"])
("nv5" [""])
("nve5" ["nüe"])
("Lv5" [""])
("Lve5" ["Lüe"])
("Nv5" [""])
("Nve5" ["Nüe"])
("LV5" [""])
("LVE5" ["LÜE"])
("NV5" [""])
("NVE5" ["NÜE"])))
(set-case-table case-table-save))
;; Local Variables:
;; coding: utf-8
;; End:
;;; arch-tag: 1fa6ba5f-6747-44bc-bf12-30628ad3e8ad

10
lib-src/.arch-inventory Normal file
View file

@ -0,0 +1,10 @@
# Ignore binaries
backup ^(test-distrib|make-docfile|profile|digest-doc|movemail|cvtmail|fakemail|yow|emacsserver|hexl|update-game-score|etags|ctags|emacsclient|b2m|ebrowse)$
# Building actually makes a copy/link of the source file
precious ^(ctags\.c)$
# Windows generates this
backup ^(DOC)$
# arch-tag: da33b3d6-170d-4fe5-9eb8-ed2753bc9b4f

View file

@ -1,3 +1,59 @@
2004-06-01 Juanma Barranquero <lektu@terra.es>
* makefile.w32-in (obj): Add image.c.
2004-05-10 Thien-Thi Nguyen <ttn@gnu.org>
* test-distrib.c (main): For failing cases, exit with
`EXIT_FAILURE'.
2004-05-08 Jason Rumney <jasonr@gnu.org>
* makefile.w32-in (lisp1, lisp2): Split lisp to avoid long
command-lines.
2004-05-08 Thien-Thi Nguyen <ttn@gnu.org>
* cvtmail.c: Throughout, replace 0 destined for `exit' arg
with `EXIT_SUCCESS'. Likewise, replace 1 with `EXIT_FAILURE'.
(main): Use `EXIT_SUCCESS' or `EXIT_FAILURE' for return value.
* ebrowse.c, emacsclient.c, fakemail.c, hexl.c,
* make-docfile.c, movemail.c, profile.c, sorted-doc.c,
* test-distrib.c, update-game-score.c, yow.c: Likewise.
2004-05-08 Thien-Thi Nguyen <ttn@gnu.org>
* Makefile.in (emacsclient${EXEEXT}): Use makefile var `version'.
2004-05-07 Thien-Thi Nguyen <ttn@gnu.org>
* b2m.c (GOOD, BAD): Delete macros. Throughout,
replace w/ `EXIT_SUCCESS' and `EXIT_FAILURE', respectively.
(main): Use `EXIT_SUCCESS' or `EXIT_FAILURE' for return value.
* etags.c: Likewise.
2004-05-03 Jason Rumney <jasonr@gnu.org>
* makefile.nt: Remove.
2004-04-26 Eli Zaretskii <eliz@gnu.org>
* make-docfile.c (IS_DIRECTORY_SEP): New macro.
(put_filename): Remove unused variable len. Use IS_DIRECTORY_SEP
instead of a literal '/'.
2004-04-23 Juanma Barranquero <lektu@terra.es>
* makefile.w32-in: Add "-*- makefile -*-" mode tag.
2004-04-17 Paul Eggert <eggert@gnu.org>
* rcs2log (Help): Clarify wording of the usage message.
Problem reported by Alan Mackenzie in
<http://mail.gnu.org/archive/html/bug-gnu-emacs/2004-04/msg00188.html>.
2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
* make-docfile.c (xmalloc): Fix return type.

View file

@ -1,5 +1,5 @@
# Makefile for lib-src subdirectory in GNU Emacs.
# Copyright (C) 1985, 1987, 1988, 1993, 1994, 2002, 2003
# Copyright (C) 1985, 1987, 1988, 1993, 1994, 2002, 2003, 2004
# Free Software Foundation, Inc.
# This file is part of GNU Emacs.
@ -447,7 +447,7 @@ yow${EXEEXT}: ${srcdir}/yow.c ../src/epaths.h
emacsclient${EXEEXT}: ${srcdir}/emacsclient.c ../src/config.h $(GETOPTDEPS)
$(CC) ${ALL_CFLAGS} ${srcdir}/emacsclient.c $(GETOPTOBJS) \
-DVERSION=`sed -n -e '/(defconst emacs-version/ s/^[^"]*\("[^"]*"\).*/\1/p' ${srcdir}/../lisp/version.el` \
-DVERSION="\"${version}\"" \
$(LOADLIBES) -o emacsclient
hexl${EXEEXT}: ${srcdir}/hexl.c ../src/config.h
@ -478,6 +478,3 @@ xveterm${EXEEXT}: ${srcdir}/emacstool.c
$(CC) -o xveterm -DXVIEW -DTTERM ${ALL_CFLAGS} ${srcdir}/emacstool.c \
-lxview -lolgx -lX -I$(OPENWINHOME)/include -L$(OPENWINHOME)/lib \
$(LOADLIBES)
/* arch-tag: cc40144d-fbd2-436b-9a22-dcb5b5b6a2af
(do not change this comment) */

View file

@ -39,15 +39,6 @@
#undef FALSE
#define FALSE 0
/* Exit codes for success and failure. */
#ifdef VMS
#define GOOD 1
#define BAD 0
#else
#define GOOD 0
#define BAD 1
#endif
#define streq(s,t) (strcmp (s, t) == 0)
#define strneq(s,t,n) (strncmp (s, t, n) == 0)
@ -124,18 +115,18 @@ main (argc, argv)
case 'V':
printf ("%s (GNU Emacs %s)\n", "b2m", VERSION);
puts ("b2m is in the public domain.");
exit (GOOD);
exit (EXIT_SUCCESS);
case 'h':
fprintf (stderr, "Usage: %s <babylmailbox >unixmailbox\n", progname);
exit (GOOD);
exit (EXIT_SUCCESS);
}
}
if (optind != argc)
{
fprintf (stderr, "Usage: %s <babylmailbox >unixmailbox\n", progname);
exit (GOOD);
exit (EXIT_SUCCESS);
}
labels_saved = printing = header = FALSE;
@ -191,7 +182,7 @@ main (argc, argv)
puts (data.buffer);
}
return 0;
return EXIT_SUCCESS;
}
@ -298,8 +289,10 @@ fatal (message)
char *message;
{
fprintf (stderr, "%s: %s\n", progname, message);
exit (BAD);
exit (EXIT_FAILURE);
}
/* arch-tag: 5a3ad2af-a802-408f-83cc-e7cf5e98653e
(do not change this comment) */
/* b2m.c ends here */

View file

@ -119,7 +119,7 @@ main (argc, argv)
}
fclose (mddf);
fclose (mfilef);
return 0;
return EXIT_SUCCESS;
}
void
@ -148,7 +148,7 @@ fatal (s1, s2)
char *s1, *s2;
{
error (s1, s2);
exit (1);
exit (EXIT_FAILURE);
}
void
@ -157,7 +157,7 @@ sysfail (s)
{
fprintf (stderr, "cvtmail: ");
perror (s);
exit (1);
exit (EXIT_FAILURE);
}
char *
@ -183,3 +183,5 @@ xrealloc (ptr, size)
/* arch-tag: b93c25a9-9012-44f1-b78b-9cc7aed44a7a
(do not change this comment) */
/* cvtmail.c ends here */

View file

@ -564,7 +564,7 @@ xmalloc (nbytes)
if (p == NULL)
{
yyerror ("out of memory", NULL);
exit (1);
exit (EXIT_FAILURE);
}
return p;
}
@ -581,7 +581,7 @@ xrealloc (p, sz)
if (p == NULL)
{
yyerror ("out of memory", NULL);
exit (1);
exit (EXIT_FAILURE);
}
return p;
}
@ -3671,7 +3671,7 @@ usage (error)
int error;
{
puts (USAGE);
exit (error ? 1 : 0);
exit (error ? EXIT_FAILURE : EXIT_SUCCESS);
}
@ -3688,7 +3688,7 @@ version ()
printf ("ebrowse %s\n", VERSION);
puts ("Copyright (C) 1992-1999, 2000, 2001 Free Software Foundation, Inc.");
puts ("This program is distributed under the same terms as Emacs.");
exit (0);
exit (EXIT_SUCCESS);
}
@ -3925,7 +3925,7 @@ main (argc, argv)
if (yyout == NULL)
{
yyerror ("cannot open output file `%s'", out_filename);
exit (1);
exit (EXIT_FAILURE);
}
}
@ -3970,11 +3970,10 @@ main (argc, argv)
if (yyout != stdout)
fclose (yyout);
return 0;
return EXIT_SUCCESS;
}
/* ebrowse.c ends here. */
/* arch-tag: fc03b4bc-91a9-4c3d-b3b9-12a77fa86dd8
(do not change this comment) */
/* ebrowse.c ends here */

View file

@ -44,9 +44,6 @@ Boston, MA 02111-1307, USA. */
char *getenv (), *getwd ();
char *getcwd ();
/* This is defined with -D from the compilation command,
which extracts it from ../lisp/version.el. */
#ifndef VERSION
#define VERSION "unspecified"
#endif
@ -131,7 +128,7 @@ decode_options (argc, argv)
case 'V':
printf ("emacsclient %s\n", VERSION);
exit (0);
exit (EXIT_SUCCESS);
break;
case 'H':
@ -140,7 +137,7 @@ decode_options (argc, argv)
default:
fprintf (stderr, "Try `%s --help' for more information\n", progname);
exit (1);
exit (EXIT_FAILURE);
break;
}
}
@ -166,7 +163,7 @@ The following OPTIONS are accepted:\n\
Editor to fallback to if the server is not running\n\
\n\
Report bugs to bug-gnu-emacs@gnu.org.\n", progname);
exit (0);
exit (EXIT_SUCCESS);
}
/* In NAME, insert a & before each &, each space, each newline, and
@ -221,7 +218,7 @@ xmalloc (size)
if (result == NULL)
{
perror ("malloc");
exit (1);
exit (EXIT_FAILURE);
}
return result;
}
@ -243,7 +240,7 @@ fail (argc, argv)
}
else
{
exit (1);
exit (EXIT_FAILURE);
}
}
@ -314,7 +311,7 @@ main (argc, argv)
{
fprintf (stderr, "%s: file name or argument required\n", progname);
fprintf (stderr, "Try `%s --help' for more information\n", progname);
exit (1);
exit (EXIT_FAILURE);
}
/*
@ -356,7 +353,7 @@ main (argc, argv)
{
fprintf (stderr, "%s: socket-name %s too long",
argv[0], socket_name);
exit (1);
exit (EXIT_FAILURE);
}
/* See if the socket exists, and if it's owned by us. */
@ -391,7 +388,7 @@ main (argc, argv)
{
fprintf (stderr, "%s: socket-name %s too long",
argv[0], socket_name);
exit (1);
exit (EXIT_FAILURE);
}
sock_status = socket_status (server.sun_path);
@ -522,13 +519,13 @@ To start the server in Emacs, type \"M-x server-start\".\n",
}
fprintf (out, " ");
}
fprintf (out, "\n");
fflush (out);
/* Maybe wait for an answer. */
if (nowait)
return 0;
return EXIT_SUCCESS;
if (!eval)
{
@ -550,7 +547,7 @@ To start the server in Emacs, type \"M-x server-start\".\n",
printf ("\n");
fflush (stdout);
return 0;
return EXIT_SUCCESS;
}
#endif /* HAVE_SOCKETS */
@ -572,3 +569,5 @@ strerror (errnum)
/* arch-tag: f39bb9c4-73eb-477e-896d-50832e2ca9a7
(do not change this comment) */
/* emacsclient.c ends here */

View file

@ -177,15 +177,6 @@ If you want regular expression support, you should delete this notice and
# define CTAGS FALSE
#endif
/* Exit codes for success and failure. */
#ifdef VMS
# define GOOD 1
# define BAD 0
#else
# define GOOD 0
# define BAD 1
#endif
#define streq(s,t) (assert((s)!=NULL || (t)!=NULL), !strcmp (s, t))
#define strcaseeq(s,t) (assert((s)!=NULL && (t)!=NULL), !etags_strcasecmp (s, t))
#define strneq(s,t,n) (assert((s)!=NULL || (t)!=NULL), !strncmp (s, t, n))
@ -830,7 +821,7 @@ print_version ()
puts ("Copyright (C) 2002 Free Software Foundation, Inc. and Ken Arnold");
puts ("This program is distributed under the same terms as Emacs");
exit (GOOD);
exit (EXIT_SUCCESS);
}
static void
@ -849,7 +840,7 @@ print_help (argbuffer)
}
if (help_for_lang)
exit (GOOD);
exit (EXIT_SUCCESS);
printf ("Usage: %s [options] [[regex-option ...] file-name] ...\n\
\n\
@ -990,7 +981,7 @@ Relative ones are stored relative to the output file's directory.\n");
puts ("");
puts ("Report bugs to bug-gnu-emacs@gnu.org");
exit (GOOD);
exit (EXIT_SUCCESS);
}
@ -1413,7 +1404,7 @@ main (argc, argv)
if (fclose (tagf) == EOF)
pfatal (tagfile);
exit (GOOD);
exit (EXIT_SUCCESS);
}
if (update)
@ -1432,7 +1423,7 @@ main (argc, argv)
sprintf (cmd,
"mv %s OTAGS;fgrep -v '\t%s\t' OTAGS >%s;rm OTAGS",
tagfile, argbuffer[i].what, tagfile);
if (system (cmd) != GOOD)
if (system (cmd) != EXIT_SUCCESS)
fatal ("failed to execute shell command", (char *)NULL);
}
append_to_tagfile = TRUE;
@ -1453,7 +1444,7 @@ main (argc, argv)
sprintf (cmd, "sort -o %.*s %.*s", BUFSIZ, tagfile, BUFSIZ, tagfile);
exit (system (cmd));
}
return GOOD;
return EXIT_SUCCESS;
}
@ -6470,7 +6461,7 @@ fatal (s1, s2)
char *s1, *s2;
{
error (s1, s2);
exit (BAD);
exit (EXIT_FAILURE);
}
static void
@ -6478,7 +6469,7 @@ pfatal (s1)
char *s1;
{
perror (s1);
exit (BAD);
exit (EXIT_FAILURE);
}
static void
@ -6492,7 +6483,7 @@ fprintf (stderr, "\tTry `%s %s' for a complete list of options.\n",
fprintf (stderr, "\tTry `%s %s' for a complete list of options.\n",
progname, "-h");
#endif
exit (BAD);
exit (EXIT_FAILURE);
}
/* Print error message. `s1' is printf control string, `s2' is arg for it. */
@ -6788,3 +6779,5 @@ xrealloc (ptr, size)
/* arch-tag: 8a9b748d-390c-4922-99db-2eeefa921051
(do not change this comment) */
/* etags.c ends here */

View file

@ -169,7 +169,7 @@ fatal (s1, s2)
char *s1, *s2;
{
error (s1, s2);
exit (1);
exit (EXIT_FAILURE);
}
/* Like malloc but get fatal error if memory is exhausted. */
@ -410,7 +410,7 @@ close_the_streams ()
no_problems = (no_problems &&
((*rem->action) (rem->handle) == 0));
the_streams = ((stream_list) NULL);
return (no_problems ? 0 : 1);
return (no_problems ? EXIT_SUCCESS : EXIT_FAILURE);
}
void
@ -667,7 +667,7 @@ read_header ()
if (next_line == ((line_list *) NULL))
{
/* Not a valid header */
exit (1);
exit (EXIT_FAILURE);
}
*next_line = new_list ();
(*next_line)->string = alloc_string (length);
@ -753,3 +753,5 @@ main (argc, argv)
/* arch-tag: acb0afa6-315a-4c5b-b9e3-def5725c8783
(do not change this comment) */
/* fakemail.c ends here */

View file

@ -270,15 +270,17 @@ main (argc, argv)
fclose (fp);
} while (*argv != NULL);
return 0;
return EXIT_SUCCESS;
}
void
usage ()
{
fprintf (stderr, "usage: %s [-de] [-iso]\n", progname);
exit (1);
exit (EXIT_FAILURE);
}
/* arch-tag: 20e04fb7-926e-4e48-be86-64fe869ecdaa
(do not change this comment) */
/* hexl.c ends here */

View file

@ -60,6 +60,10 @@ Boston, MA 02111-1307, USA. */
#define READ_BINARY "r"
#endif /* not DOS_NT */
#ifndef IS_DIRECTORY_SEP
#define IS_DIRECTORY_SEP(_c_) ((_c_) == '/')
#endif
int scan_file ();
int scan_lisp_file ();
int scan_c_file ();
@ -100,7 +104,7 @@ fatal (s1, s2)
char *s1, *s2;
{
error (s1, s2);
exit (1);
exit (EXIT_FAILURE);
}
/* Like malloc but get fatal error if memory is exhausted. */
@ -183,11 +187,13 @@ void
put_filename (filename)
char *filename;
{
char *tmp = filename;
int len;
while ((tmp = index (filename, '/')))
filename = tmp + 1;
char *tmp;
for (tmp = filename; *tmp; tmp++)
{
if (IS_DIRECTORY_SEP(*tmp))
filename = tmp + 1;
}
putc (037, outfile);
putc ('S', outfile);
@ -1204,3 +1210,5 @@ scan_lisp_file (filename, mode)
/* arch-tag: f7203aaf-991a-4238-acb5-601db56f2894
(do not change this comment) */
/* make-docfile.c ends here */

View file

@ -1,417 +0,0 @@
# Makefile for GNU Emacs lib-src directory.
# Geoff Voelker (voelker@cs.washington.edu)
# Copyright (C) 1994 Free Software Foundation, Inc.
#
# This file is part of GNU Emacs.
#
# GNU Emacs is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# GNU Emacs is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GNU Emacs; see the file COPYING. If not, write to the
# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
#
#
# Sets up the system dependent macros.
#
!include ..\nt\makefile.def
LOCAL_FLAGS = -DWINDOWSNT -DDOS_NT -DSTDC_HEADERS=1 -DNO_LDAV=1 \
-DNO_ARCHIVES=1 -DHAVE_CONFIG_H=1 -I..\nt\inc -I..\src
LINK_FLAGS = $(ARCH_LDFLAGS) -debug:PARTIAL -machine:$(ARCH) -subsystem:console -entry:mainCRTStartup setargv.obj
ALL = $(BLD)\make-docfile.exe \
$(BLD)\hexl.exe \
$(BLD)\ctags.exe \
$(BLD)\etags.exe \
$(BLD)\ebrowse.exe \
$(BLD)\movemail.exe
# don't know what (if) to do with these yet...
#
# $(BLD)\sorted-doc.exe \
# $(BLD)\env.exe \
# $(BLD)\server.exe \
# $(BLD)\emacstool.exe \
# $(BLD)\leditcfns.exe \
# $(BLD)\emacsclient.exe \
# $(BLD)\cvtmail.exe \
# $(BLD)\digest-doc.exe \
# $(BLD)\test-distrib.exe \
LIBS = $(BASE_LIBS)
$(BLD)\make-docfile.exe: $(BLD)\make-docfile.obj $(BLD)\ntlib.obj
$(LINK) -out:$@ $(LINK_FLAGS) $(BLD)\make-docfile.obj $(BLD)\ntlib.obj $(LIBS)
$(BLD)\hexl.exe: $(BLD)\hexl.obj
$(BLD)\fakemail.exe: $(BLD)\fakemail.obj $(BLD)\ntlib.obj
$(LINK) -out:$@ $(LINK_FLAGS) -debug:full $(BLD)\fakemail.obj $(BLD)\ntlib.obj $(LIBS)
make-docfile: $(BLD) $(BLD)\make-docfile.exe
etags: $(BLD) $(BLD)\etags.exe
ebrowse: $(BLD) $(BLD)\ebrowse.exe
hexl: $(BLD) $(BLD)\hexl.exe
movemail: $(BLD) $(BLD)\movemail.exe
fakemail: $(BLD) $(BLD)\fakemail.exe
GETOPTOBJS = $(BLD)\getopt.obj $(BLD)\getopt1.obj
GETOPTDEPS = $(GETOPTOBJS) getopt.h
MOVEMAILOBJS = $(BLD)\movemail.obj \
$(BLD)\pop.obj \
$(BLD)\ntlib.obj \
$(GETOPTOBJS)
$(BLD)\movemail.exe: $(MOVEMAILOBJS) getopt.h
# put wsock32.lib before $(LIBS) to ensure we don't link to ws2_32.lib
$(LINK) -out:$@ $(LINK_FLAGS) -debug:FULL $(MOVEMAILOBJS) wsock32.lib $(LIBS)
ETAGSOBJ = $(BLD)\etags.obj \
$(BLD)\getopt.obj \
$(BLD)\getopt1.obj \
$(BLD)\ntlib.obj \
$(BLD)\regex.obj
$(BLD)\etags.exe: $(ETAGSOBJ)
$(LINK) -out:$@ $(LINK_FLAGS) $(ETAGSOBJ) $(LIBS)
$(BLD)\regex.obj: ../src/regex.c ../src/regex.h ../src/config.h
$(CC) $(CFLAGS) -DCONFIG_BROKETS -DINHIBIT_STRING_HEADER \
../src/regex.c -Fo$@
ETAGS_CFLAGS = -DETAGS_REGEXPS -DHAVE_GETCWD
$(BLD)\etags.obj: etags.c
$(CC) $(CFLAGS) $(ETAGS_CFLAGS) -Fo$@ etags.c
CTAGSOBJ = $(BLD)\ctags.obj \
$(BLD)\getopt.obj \
$(BLD)\getopt1.obj \
$(BLD)\ntlib.obj \
$(BLD)\regex.obj
$(BLD)\ctags.exe: ctags.c $(CTAGSOBJ)
$(LINK) -out:$@ $(LINK_FLAGS) $(CTAGSOBJ) $(LIBS)
ctags.c: etags.c
- $(DEL) ctags.c
copy etags.c ctags.c
CTAGS_CFLAGS = -DCTAGS $(ETAGS_CFLAGS)
$(BLD)\ctags.obj: ctags.c
$(CC) $(CFLAGS) $(CTAGS_CFLAGS) -Fo$@ ctags.c
EBROWSE_OBJ = $(BLD)\ebrowse.obj \
$(BLD)\getopt.obj \
$(BLD)\getopt1.obj \
$(BLD)\ntlib.obj
$(BLD)\ebrowse.exe: $(EBROWSE_OBJ)
$(LINK) -out:$@ $(LINK_FLAGS) $(EBROWSE_OBJ) $(LIBS)
$(BLD)\ebrowse.obj: ebrowse.c ..\src\config.h
$(CC) $(CFLAGS) -DVERSION=\"$(VERSION)\" -Fo$@ ebrowse.c
#
# don't know what to do with these yet...
#
# $(BLD)\sorted-doc.exe: $(BLD)\sorted-doc.obj
# $(BLD)\yow.exe: $(BLD)\yow.obj
# $(BLD)\emacstool.exe: $(BLD)\emacstool.obj
# $(BLD)\leditcfns.exe: $(BLD)\leditcfns.obj
# $(BLD)\server.exe: $(BLD)\server.obj
# $(BLD)\cvtmail.exe: $(BLD)\cvtmail.obj
# $(BLD)\digest-doc.exe: $(BLD)\digest-doc.obj
# $(BLD)\emacsclient.exe: $(BLD)\emacsclient.obj
# $(BLD)\test-distrib.exe: $(BLD)\test-distrib.obj
#
# From ..\src\makefile.nt.
#
obj = abbrev.c alloc.c alloca.c buffer.c bytecode.c callint.c callproc.c casefiddle.c cm.c cmds.c charset.c coding.c category.c ccl.c data.c dired.c dispnew.c doc.c doprnt.c editfns.c emacs.c eval.c fileio.c filelock.c filemode.c fns.c fontset.c indent.c insdel.c keyboard.c keymap.c lastfile.c lread.c macros.c marker.c minibuf.c xfaces.c print.c process.c regex.c scroll.c search.c syntax.c sysdep.c term.c termcap.c tparam.c undo.c unexw32.c window.c xdisp.c casetab.c floatfns.c frame.c gmalloc.c intervals.c ralloc.c textprop.c vm-limit.c region-cache.c strftime.c w32.c w32console.c w32faces.c w32fns.c w32heap.c w32inevt.c w32proc.c w32reg.c w32menu.c w32select.c w32term.c w32xfns.c
#
# These are the lisp files that are loaded up in loadup.el
#
lispsource = ../lisp/
FACE_SUPPORT = $(lispsource)facemenu.elc
MOUSE_SUPPORT = $(lispsource)select.elc $(lispsource)scroll-bar.elc $(lispsource)mouse.elc
FLOAT_SUPPORT = $(lispsource)float-sup.elc
WINNT_SUPPORT = $(lispsource)ls-lisp.elc $(lispsource)w32-fns.elc $(lispsource)dos-w32.elc
lisp= \
$(lispsource)abbrev.elc \
$(lispsource)buff-menu.elc \
$(lispsource)byte-run.elc \
$(lispsource)cus-start.el \
$(lispsource)custom.elc \
$(lispsource)disp-table.elc \
$(lispsource)faces.elc \
$(lispsource)files.elc \
$(lispsource)textmodes/fill.elc \
$(lispsource)format.elc \
$(FACE_SUPPORT) \
$(MOUSE_SUPPORT) \
$(FLOAT_SUPPORT) \
$(lispsource)frame.elc\
$(X_WINDOWS_SUPPORT) \
$(lispsource)help.elc \
$(lispsource)indent.elc \
$(lispsource)isearch.elc \
$(lispsource)emacs-lisp/lisp-mode.elc \
$(lispsource)emacs-lisp/lisp.elc \
$(lispsource)loadup.el \
$(lispsource)loaddefs.el \
$(lispsource)bindings.el \
$(lispsource)map-ynp.elc \
$(lispsource)menu-bar.elc \
$(lispsource)international/mule.elc \
$(lispsource)international/mule-conf.el \
$(lispsource)international/mule-cmds.elc \
$(lispsource)international/characters.elc \
$(lispsource)international/ccl.elc \
$(lispsource)international/codepage.elc \
$(lispsource)international/utf-8.elc \
$(lispsource)case-table.elc \
$(lispsource)language/chinese.elc \
$(lispsource)language/cyrillic.elc \
$(lispsource)language/devanagari.elc \
$(lispsource)language/english.elc \
$(lispsource)language/ethiopic.elc \
$(lispsource)language/european.elc \
$(lispsource)language/czech.elc \
$(lispsource)language/slovak.elc \
$(lispsource)language/romanian.elc \
$(lispsource)language/greek.elc \
$(lispsource)language/hebrew.elc \
$(lispsource)language/indian.elc \
$(lispsource)language/japanese.elc \
$(lispsource)language/korean.elc \
$(lispsource)language/lao.elc \
$(lispsource)language/thai.elc \
$(lispsource)language/tibetan.elc \
$(lispsource)language/vietnamese.elc \
$(lispsource)language/misc-lang.elc \
$(lispsource)textmodes/page.elc \
$(lispsource)textmodes/paragraphs.elc \
$(lispsource)paths.el \
$(lispsource)register.elc \
$(lispsource)replace.elc \
$(lispsource)simple.elc \
$(lispsource)startup.elc \
$(lispsource)subr.elc \
$(lispsource)term/tty-colors.elc \
$(lispsource)textmodes/text-mode.elc \
$(lispsource)vc-hooks.elc \
$(lispsource)ediff-hook.elc \
$(VMS_SUPPORT) \
$(MSDOS_SUPPORT) \
$(WINNT_SUPPORT) \
$(lispsource)widget.elc \
$(lispsource)window.elc \
$(lispsource)version.el
DOC = DOC
$(DOC): $(BLD)\make-docfile.exe
- $(DEL) $(DOC)
$(BLD)\make-docfile -d ..\src $(obj) > $(DOC)
$(BLD)\make-docfile -d ..\src $(lisp) >> $(DOC)
$(CP) $(DOC) ..\etc\DOC-X
- mkdir ..\src\$(OBJDIR)
- mkdir ..\src\$(OBJDIR)\etc
$(CP) $(DOC) ..\src\$(OBJDIR)\etc\DOC-X
{$(BLD)}.obj{$(BLD)}.exe:
$(LINK) -out:$@ $(LINK_FLAGS) $*.obj $(LIBS)
#
# Build the executables
#
all: $(BLD) $(ALL) $(DOC)
#
# Assuming INSTALL_DIR is defined, build and install emacs in it.
#
INSTALL_FILES = $(ALL)
install: $(INSTALL_FILES)
- mkdir $(INSTALL_DIR)\bin
$(CP) $(BLD)\etags.exe $(INSTALL_DIR)\bin
$(CP) $(BLD)\ctags.exe $(INSTALL_DIR)\bin
$(CP) $(BLD)\hexl.exe $(INSTALL_DIR)\bin
$(CP) $(BLD)\movemail.exe $(INSTALL_DIR)\bin
- mkdir $(INSTALL_DIR)\etc
$(CP) $(DOC) $(INSTALL_DIR)\etc
# Don't install fakemail by default, as it sends mail into a
# blackhole if /bin/mail is not installed.
# $(CP) $(BLD)\fakemail.exe $(INSTALL_DIR)\bin
#
# Maintenance
#
clean:; - $(DEL) *~ *.pdb DOC*
- $(DEL) *.orig *.rej *.crlf ctags.c
- $(DEL_TREE) deleted
- $(DEL_TREE) obj
- $(DEL_TREE) obj-spd
#
# Headers we would preprocess if we could.
#
..\src\config.h: ..\nt\$(CONFIG_H)
$(CP) $** $@
..\src\paths.h: ..\nt\paths.h
$(CP) $** $@
### DEPENDENCIES ###
EMACS_ROOT = ..
SRC = .
$(BLD)\b2m.obj : \
$(SRC)\b2m.c \
$(EMACS_ROOT)\src\s\ms-w32.h \
$(EMACS_ROOT)\src\m\intel386.h \
$(EMACS_ROOT)\lib-src\..\src\config.h
$(BLD)\ctags.obj : \
$(SRC)\ctags.c \
$(EMACS_ROOT)\nt\inc\sys\param.h \
$(EMACS_ROOT)\src\s\ms-w32.h \
$(EMACS_ROOT)\src\m\intel386.h \
$(EMACS_ROOT)\lib-src\..\src\config.h \
$(SRC)\ntlib.h \
$(SRC)\getopt.h
$(BLD)\cvtmail.obj : \
$(SRC)\cvtmail.c
$(BLD)\digest-doc.obj : \
$(SRC)\digest-doc.c
$(BLD)\emacsclient.obj : \
$(SRC)\emacsclient.c \
$(EMACS_ROOT)\src\s\ms-w32.h \
$(EMACS_ROOT)\src\m\intel386.h \
$(EMACS_ROOT)\lib-src\..\src\config.h
$(BLD)\emacstool.obj : \
$(SRC)\emacstool.c \
$(EMACS_ROOT)\nt\inc\sys\file.h
$(BLD)\etags.obj : \
$(SRC)\etags.c \
$(EMACS_ROOT)\nt\inc\sys\param.h \
$(EMACS_ROOT)\src\s\ms-w32.h \
$(EMACS_ROOT)\src\m\intel386.h \
$(EMACS_ROOT)\lib-src\..\src\config.h \
$(SRC)\ntlib.h \
$(SRC)\getopt.h
$(BLD)\fakemail.obj : \
$(SRC)\fakemail.c \
$(SRC)\ntlib.h \
$(EMACS_ROOT)\src\s\ms-w32.h \
$(EMACS_ROOT)\src\m\intel386.h \
$(EMACS_ROOT)\lib-src\..\src\config.h \
$(EMACS_ROOT)\nt\inc\pwd.h
$(BLD)\getdate.obj : \
$(SRC)\getdate.c \
$(EMACS_ROOT)\src\s\ms-w32.h \
$(EMACS_ROOT)\src\m\intel386.h \
$(EMACS_ROOT)\src\config.h \
$(MSTOOLS_SYS)\types.h
$(BLD)\getopt.obj : \
$(SRC)\getopt.c \
$(EMACS_ROOT)\src\s\ms-w32.h \
$(EMACS_ROOT)\src\m\intel386.h \
$(EMACS_ROOT)\src\config.h \
$(SRC)\ntlib.h \
$(SRC)\getopt.h
$(BLD)\getopt1.obj : \
$(SRC)\getopt1.c \
$(EMACS_ROOT)\src\s\ms-w32.h \
$(EMACS_ROOT)\src\m\intel386.h \
$(EMACS_ROOT)\src\config.h \
$(SRC)\getopt.h
$(BLD)\hexl.obj : \
$(SRC)\hexl.c
$(BLD)\leditcfns.obj : \
$(SRC)\leditcfns.c
$(BLD)\make-docfile.obj : \
$(SRC)\make-docfile.c \
$(EMACS_ROOT)\src\config.h
$(BLD)\make-path.obj : \
$(SRC)\make-path.c
$(BLD)\movemail.obj : \
$(SRC)\movemail.c \
$(EMACS_ROOT)\src\s\ms-w32.h \
$(EMACS_ROOT)\src\m\intel386.h \
$(EMACS_ROOT)\lib-src\..\src\config.h \
$(EMACS_ROOT)\nt\inc\sys\file.h \
$(EMACS_ROOT)\lib-src\..\src\syswait.h \
$(EMACS_ROOT)\nt\inc\pwd.h \
$(SRC)\ntlib.h
$(CC) $(CFLAGS) -DUSG -Fo$@ movemail.c
$(BLD)\ntlib.obj : \
$(SRC)\ntlib.c \
$(SRC)\ntlib.h \
$(EMACS_ROOT)\nt\inc\pwd.h
$(BLD)\pop.obj : \
$(SRC)\pop.c \
$(SRC)\pop.h \
$(SRC)\ntlib.h
$(BLD)\profile.obj : \
$(SRC)\profile.c \
$(EMACS_ROOT)\src\s\ms-w32.h \
$(EMACS_ROOT)\src\m\intel386.h \
$(EMACS_ROOT)\lib-src\..\src\config.h \
$(EMACS_ROOT)\lib-src\..\src\systime.h
$(BLD)\qsort.obj : \
$(SRC)\qsort.c
$(BLD)\sorted-doc.obj : \
$(SRC)\sorted-doc.c
$(BLD)\tcp.obj : \
$(SRC)\tcp.c
$(BLD)\test-distrib.obj : \
$(SRC)\test-distrib.c
$(BLD)\timer.obj : \
$(SRC)\timer.c \
$(EMACS_ROOT)\src\s\ms-w32.h \
$(EMACS_ROOT)\src\m\intel386.h \
$(EMACS_ROOT)\lib-src\..\src\config.h
$(BLD)\yow.obj : \
$(SRC)\yow.c \
$(EMACS_ROOT)\lib-src\..\src\paths.h
# arch-tag: 59e1b54b-4cc2-4086-bb0b-ecfad4b683e9

View file

@ -1,5 +1,5 @@
# Makefile for GNU Emacs on the Microsoft W32 API.
# Copyright (c) 2000-2001 Free Software Foundation, Inc.
# -*- Makefile -*- for GNU Emacs on the Microsoft W32 API.
# Copyright (c) 2000-2001, 2004 Free Software Foundation, Inc.
#
# This file is part of GNU Emacs.
#
@ -126,7 +126,7 @@ $(BLD)/ctags.$(O): ctags.c
#
# From ..\src\makefile.nt.
#
obj = abbrev.c alloc.c alloca.c buffer.c bytecode.c callint.c callproc.c casefiddle.c casetab.c category.c ccl.c charset.c cm.c cmds.c coding.c data.c dired.c dispnew.c doc.c doprnt.c editfns.c emacs.c eval.c fileio.c filelock.c filemode.c floatfns.c fns.c fontset.c frame.c fringe.c gmalloc.c indent.c insdel.c intervals.c keyboard.c keymap.c lastfile.c lread.c macros.c marker.c minibuf.c print.c process.c ralloc.c regex.c region-cache.c scroll.c search.c sound.c strftime.c syntax.c sysdep.c term.c termcap.c textprop.c tparam.c undo.c unexw32.c vm-limit.c w32.c w32console.c w32fns.c w32heap.c w32inevt.c w32menu.c w32proc.c w32reg.c w32select.c w32term.c w32xfns.c window.c xdisp.c xfaces.c xfaces.c
obj = abbrev.c alloc.c alloca.c buffer.c bytecode.c callint.c callproc.c casefiddle.c casetab.c category.c ccl.c charset.c cm.c cmds.c coding.c data.c dired.c dispnew.c doc.c doprnt.c editfns.c emacs.c eval.c fileio.c filelock.c filemode.c floatfns.c fns.c fontset.c frame.c fringe.c gmalloc.c image.c indent.c insdel.c intervals.c keyboard.c keymap.c lastfile.c lread.c macros.c marker.c minibuf.c print.c process.c ralloc.c regex.c region-cache.c scroll.c search.c sound.c strftime.c syntax.c sysdep.c term.c termcap.c textprop.c tparam.c undo.c unexw32.c vm-limit.c w32.c w32console.c w32fns.c w32heap.c w32inevt.c w32menu.c w32proc.c w32reg.c w32select.c w32term.c w32xfns.c window.c xdisp.c xfaces.c xfaces.c
#
# These are the lisp files that are loaded up in loadup.el
#
@ -139,7 +139,7 @@ WINNT_SUPPORT = $(lispsource)ls-lisp.elc $(lispsource)disp-table.elc $(lispsourc
MSDOS_SUPPORT = $(lispsource)dos-fns.elc $(lispsource)dos-vars.elc $(lispsource)international/ccl.elc $(lispsource)international/codepage.elc
VMS_SUPPORT = $(lispsource)vmsproc.elc $(lispsource)vms-patch.elc
lisp= \
lisp1= \
$(lispsource)abbrev.elc \
$(lispsource)buff-menu.elc \
$(lispsource)button.elc \
@ -178,7 +178,9 @@ lisp= \
$(lispsource)international/latin-5.el \
$(lispsource)international/latin-8.el \
$(lispsource)international/latin-9.el \
$(lispsource)case-table.elc \
$(lispsource)case-table.elc
lisp2 = \
$(lispsource)language/chinese.elc \
$(lispsource)language/cyrillic.elc \
$(lispsource)language/indian.elc \
@ -228,7 +230,8 @@ DOC = DOC
$(DOC): make-docfile
- $(DEL) $(DOC)
"$(THISDIR)/$(BLD)/make-docfile" -o $(DOC) -d ../src $(obj)
"$(THISDIR)/$(BLD)/make-docfile" -a $(DOC) -d ../src $(lisp)
"$(THISDIR)/$(BLD)/make-docfile" -a $(DOC) -d ../src $(lisp1)
"$(THISDIR)/$(BLD)/make-docfile" -a $(DOC) -d ../src $(lisp2)
$(CP) $(DOC) ../etc/DOC-X
- mkdir "../src/$(OBJDIR)"
- mkdir "../src/$(OBJDIR)/etc"
@ -422,5 +425,3 @@ $(BLD)/timer.$(O) : \
$(BLD)/yow.$(O) : \
$(SRC)/yow.c \
$(EMACS_ROOT)/lib-src/../src/paths.h
# arch-tag: c051bc02-a6de-474b-889a-27f7b2fbbcea

View file

@ -216,7 +216,7 @@ main (argc, argv)
preserve_mail++;
break;
default:
exit(1);
exit (EXIT_FAILURE);
}
}
@ -234,7 +234,7 @@ main (argc, argv)
#else
fprintf (stderr, "Usage: movemail [-p] inbox destfile%s\n", "");
#endif
exit (1);
exit (EXIT_FAILURE);
}
inname = argv[optind];
@ -536,12 +536,12 @@ main (argc, argv)
if (spool_name)
mailunlock ();
#endif
exit (0);
exit (EXIT_SUCCESS);
}
wait (&status);
if (!WIFEXITED (status))
exit (1);
exit (EXIT_FAILURE);
else if (WRETCODE (status) != 0)
exit (WRETCODE (status));
@ -554,7 +554,7 @@ main (argc, argv)
#endif /* ! DISABLE_DIRECT_ACCESS */
return 0;
return EXIT_SUCCESS;
}
#ifdef MAIL_USE_MAILLOCK
@ -607,7 +607,7 @@ fatal (s1, s2)
if (delete_lockname)
unlink (delete_lockname);
error (s1, s2, 0);
exit (1);
exit (EXIT_FAILURE);
}
/* Print error message. `s1' is printf control string, `s2' and `s3'
@ -709,6 +709,8 @@ char Errmsg[200]; /* POP errors, at least, can exceed
* If the mailbox is in the form "po:username:hostname", then it is
* modified by this function -- the second colon is replaced by a
* null.
*
* Return a value suitable for passing to `exit'.
*/
int
@ -736,19 +738,19 @@ popmail (mailbox, outfile, preserve, password, reverse_order)
if (! server)
{
error ("Error connecting to POP server: %s", pop_error, 0);
return (1);
return EXIT_FAILURE;
}
if (pop_stat (server, &nmsgs, &nbytes))
{
error ("Error getting message count from POP server: %s", pop_error, 0);
return (1);
return EXIT_FAILURE;
}
if (!nmsgs)
{
pop_close (server);
return (0);
return EXIT_SUCCESS;
}
mbfi = open (outfile, O_WRONLY | O_CREAT | O_EXCL, 0666);
@ -756,7 +758,7 @@ popmail (mailbox, outfile, preserve, password, reverse_order)
{
pop_close (server);
error ("Error in open: %s, %s", strerror (errno), outfile);
return (1);
return EXIT_FAILURE;
}
fchown (mbfi, getuid (), -1);
@ -766,7 +768,7 @@ popmail (mailbox, outfile, preserve, password, reverse_order)
error ("Error in fdopen: %s", strerror (errno), 0);
close (mbfi);
unlink (outfile);
return (1);
return EXIT_FAILURE;
}
if (reverse_order)
@ -789,7 +791,7 @@ popmail (mailbox, outfile, preserve, password, reverse_order)
{
error (Errmsg, 0, 0);
close (mbfi);
return (1);
return EXIT_FAILURE;
}
mbx_delimit_end (mbf);
fflush (mbf);
@ -798,7 +800,7 @@ popmail (mailbox, outfile, preserve, password, reverse_order)
error ("Error in fflush: %s", strerror (errno), 0);
pop_close (server);
close (mbfi);
return (1);
return EXIT_FAILURE;
}
}
@ -812,14 +814,14 @@ popmail (mailbox, outfile, preserve, password, reverse_order)
if (fsync (mbfi) < 0)
{
error ("Error in fsync: %s", strerror (errno), 0);
return (1);
return EXIT_FAILURE;
}
#endif
if (close (mbfi) == -1)
{
error ("Error in close: %s", strerror (errno), 0);
return (1);
return EXIT_FAILURE;
}
if (! preserve)
@ -829,17 +831,17 @@ popmail (mailbox, outfile, preserve, password, reverse_order)
{
error ("Error from POP server: %s", pop_error, 0);
pop_close (server);
return (1);
return EXIT_FAILURE;
}
}
if (pop_quit (server))
{
error ("Error from POP server: %s", pop_error, 0);
return (1);
return EXIT_FAILURE;
}
return (0);
return EXIT_SUCCESS;
}
int
@ -957,3 +959,5 @@ strerror (errnum)
/* arch-tag: 1c323112-41fe-4fe5-8de9-494de631f73f
(do not change this comment) */
/* movemail.c ends here */

View file

@ -55,7 +55,7 @@ char *
get_time ()
{
if (watch_not_started)
exit (1); /* call reset_watch first ! */
exit (EXIT_FAILURE); /* call reset_watch first ! */
EMACS_GET_TIME (TV2);
EMACS_SUB_TIME (TV2, TV2, TV1);
sprintf (time_string, "%lu.%06lu", (unsigned long)EMACS_SECS (TV2), (unsigned long)EMACS_USECS (TV2));
@ -94,14 +94,16 @@ main ()
puts (get_time ());
break;
case 'q':
exit (0);
exit (EXIT_SUCCESS);
}
/* Anything remaining on the line is ignored. */
while (c != '\n' && c != EOF)
c = getchar ();
}
exit (1);
exit (EXIT_FAILURE);
}
/* arch-tag: 8db68f7e-2322-4944-a315-dba349bdbf39
(do not change this comment) */
/* profile.c ends here */

View file

@ -2,34 +2,57 @@
# RCS to ChangeLog generator
# Generate a change log prefix from RCS files (perhaps in the CVS repository)
# and the ChangeLog (if any).
# Output the new prefix to standard output.
# You can edit this prefix by hand, and then prepend it to ChangeLog.
Help='
Generate ChangeLog entries from RCS files (perhaps in a CVS repository)
and the ChangeLog file (if any). An RCS file typically has a name
ending in ",v", and represents the entire history of a file that is
under revision control. The ChangeLog file logs entries for changes,
in reverse chronological order.
# Ignore log entries that start with `#'.
# Clump together log entries that start with `{topic} ',
# where `topic' contains neither white space nor `}'.
Generate entries for changes entered into RCS (or CVS) more recently
than the newest existing entry in the ChangeLog file. You can then
edit these entries by hand, and prepend them to the ChangeLog file.
Output the resulting ChangeLog entries to standard output.
Each entry looks something like this:
2004-04-17 Paul Eggert <eggert@gnu.org>
* rcs2log (Help): Clarify wording of the usage message.
Problem reported by Alan Mackenzie in
<http://mail.gnu.org/archive/html/bug-gnu-emacs/2004-04/msg00188.html>.
ChangeLog entries contain the current date, full name, email address
including hostname, the name of the affected file, and commentary.
RCS and CVS logs lack full names and email addresses, so they are
inferred from login names using a heuristic that can be overridden
via the -u option.
Ignore log entries that start with "#".
Clump together log entries that start with "{topic} ",
where "topic" contains neither white space nor "}".
If no FILE is specified, use all files under the working directory
that are maintained under version control.
Help='The default FILEs are the files registered under the working directory.
Options:
-c CHANGELOG Output a change log prefix to CHANGELOG (default ChangeLog).
-c FILE Output ChangeLog entries for FILE (default ChangeLog).
-h HOSTNAME Use HOSTNAME in change log entries (default current host).
-i INDENT Indent change log lines by INDENT spaces (default 8).
-l LENGTH Try to limit log lines to LENGTH characters (default 79).
-L FILE Use rlog-format FILE for source of logs.
-L FILE Use FILE (same format as "rlog") for source of logs.
-R If no FILEs are given and RCS is used, recurse through working directory.
-r OPTION Pass OPTION to subsidiary log command.
-r OPTION Pass OPTION to subsidiary command (either "rlog" or "cvs -q log").
-t TABWIDTH Tab stops are every TABWIDTH characters (default 8).
-u "LOGIN<tab>FULLNAME<tab>MAILADDR" Assume LOGIN has FULLNAME and MAILADDR.
-u "LOGIN<tab>FULLNAME<tab>EMAILADDR" LOGIN has FULLNAME and EMAILADDR.
-v Append RCS revision to file names in log lines.
--help Output help.
--version Output version number.
Report bugs to <bug-gnu-emacs@gnu.org>.'
Id='$Id: rcs2log,v 1.52 2003/12/27 08:18:08 uid65632 Exp $'
Id='$Id$'
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2001, 2002, 2003,
# 2004 Free Software Foundation, Inc.

View file

@ -75,7 +75,7 @@ fatal (s1, s2)
char *s1, *s2;
{
error (s1, s2);
exit (1);
exit (EXIT_FAILURE);
}
/* Like malloc but get fatal error if memory is exhausted. */
@ -279,8 +279,10 @@ main ()
printf ("@bye\n");
}
return 0;
return EXIT_SUCCESS;
}
/* arch-tag: ce28f204-1e70-4b34-8210-3d54a5662071
(do not change this comment) */
/* sorted-doc.c ends here */

View file

@ -80,13 +80,13 @@ main (argc, argv)
if (argc != 2)
{
fprintf (stderr, "Usage: %s testfile\n", argv[0]);
exit (2);
exit (EXIT_FAILURE);
}
fd = open (argv[1], O_RDONLY);
if (fd < 0)
{
perror (argv[1]);
exit (2);
exit (EXIT_FAILURE);
}
if (cool_read (fd, buf, sizeof string1) != sizeof string1 ||
strcmp (buf, string1) ||
@ -97,14 +97,13 @@ main (argc, argv)
Most likely this means that many nonprinting characters\n\
have been corrupted in the files of Emacs, and it will not work.\n",
argv[1]);
exit (2);
exit (EXIT_FAILURE);
}
close (fd);
#ifdef VMS
exit (1); /* On VMS, success is 1. */
#endif
return (0);
return EXIT_SUCCESS;
}
/* arch-tag: 3a89005d-df98-4c32-aa9f-33570e16a26a
(do not change this comment) */
/* test-distrib.c ends here */

View file

@ -111,7 +111,7 @@ lose (msg)
const char *msg;
{
fprintf (stderr, "%s\n", msg);
exit (1);
exit (EXIT_FAILURE);
}
void lose_syserr P_ ((const char *msg)) NO_RETURN;
@ -138,7 +138,7 @@ lose_syserr (msg)
const char *msg;
{
fprintf (stderr, "%s: %s\n", msg, strerror (errno));
exit (1);
exit (EXIT_FAILURE);
}
char *
@ -199,7 +199,7 @@ main (argc, argv)
switch (c)
{
case 'h':
usage (0);
usage (EXIT_SUCCESS);
break;
case 'd':
user_prefix = optarg;
@ -213,11 +213,11 @@ main (argc, argv)
max = MAX_SCORES;
break;
default:
usage (1);
usage (EXIT_FAILURE);
}
if (optind+3 != argc)
usage (1);
usage (EXIT_FAILURE);
running_suid = (getuid () != geteuid ());
@ -266,7 +266,7 @@ main (argc, argv)
lose_syserr ("Failed to write scores file");
}
unlock_file (scorefile, lockstate);
exit (0);
exit (EXIT_SUCCESS);
}
int
@ -531,3 +531,5 @@ unlock_file (filename, state)
/* arch-tag: 2bf5c52e-4beb-463a-954e-c58b9c64736b
(do not change this comment) */
/* update-game-score.c ends here */

View file

@ -73,7 +73,7 @@ main (argc, argv)
if ((fp = fopen(file, "r")) == NULL) {
fprintf(stderr, "yow: ");
perror(file);
exit(1);
exit(EXIT_FAILURE);
}
/* initialize random seed */
@ -82,7 +82,7 @@ main (argc, argv)
setup_yow(fp);
yow(fp);
fclose(fp);
return 0;
return EXIT_SUCCESS;
}
static long len = -1;
@ -113,7 +113,7 @@ setup_yow(fp)
if (fseek(fp, 0L, 2) == -1) {
perror("yow");
exit(1);
exit(EXIT_FAILURE);
}
len = ftell(fp) - header_len;
}
@ -132,7 +132,7 @@ yow (fp)
offset = rand() % len + header_len;
if (fseek(fp, offset, 0) == -1) {
perror("yow");
exit(1);
exit(EXIT_FAILURE);
}
/* Read until SEP, read next line, print it.
@ -180,3 +180,5 @@ yow (fp)
/* arch-tag: e40fc0df-bafb-4001-af24-5c883d1c685e
(do not change this comment) */
/* yow.c ends here */

7
lisp/.arch-inventory Normal file
View file

@ -0,0 +1,7 @@
# Auto-generated lisp files, which ignore
precious ^(loaddefs|finder-inf|cus-load)\.el$
# Something generated during a windows build?!?
precious ^(Makefile\.unix)$
# arch-tag: fc62dc9f-3a91-455b-b8e7-d49df66beee0

Some files were not shown because too many files have changed in this diff Show more