This commit was manufactured by cvs2svn to create branch 'unlabeled-1.3.2'.
authortomo <tomo>
Sun, 17 Sep 2000 15:44:34 +0000 (15:44 +0000)
committertomo <tomo>
Sun, 17 Sep 2000 15:44:34 +0000 (15:44 +0000)
107 files changed:
.cvsignore [deleted file]
AUTHORS [deleted file]
COPYING [deleted file]
ChangeLog [deleted file]
INSTALL [deleted file]
Makefile.am [deleted file]
NEWS [deleted file]
README [deleted file]
acinclude.m4 [deleted file]
bootstrap [deleted file]
configure.in [deleted file]
contrib/plum-support.el [deleted file]
dcc/.cvsignore [deleted file]
dcc/Makefile.am [deleted file]
dcc/dcc.c [deleted file]
dcc/dcc.ml [deleted file]
dcc/getaddrinfo.c [deleted file]
dcc/getaddrinfo.h [deleted file]
dcc/getopt.c [deleted file]
dcc/getopt.h [deleted file]
dcc/getopt1.c [deleted file]
dcc/naddr.ml [deleted file]
dcc/naddr.mli [deleted file]
dcc/tcp.c [deleted file]
doc/.cvsignore [deleted file]
doc/Makefile.am [deleted file]
doc/README [deleted file]
doc/liece.xml [deleted file]
doc/texinfo.tex [deleted file]
etc/.cvsignore [deleted file]
etc/Makefile.am [deleted file]
etc/icons/back.xpm [deleted file]
etc/icons/ball.blank.xpm [deleted file]
etc/icons/ball.gray.xpm [deleted file]
etc/icons/ball.red.xpm [deleted file]
etc/icons/balloon.xpm [deleted file]
etc/icons/crypt.xpm [deleted file]
etc/icons/encrypt.xpm [deleted file]
etc/icons/forward.xpm [deleted file]
etc/icons/home.xpm [deleted file]
etc/icons/icons.gif [deleted file]
etc/icons/icons.xpm [deleted file]
etc/icons/key.xpm [deleted file]
etc/icons/liece-pointer.xbm [deleted file]
etc/icons/liece-pointer.xpm [deleted file]
etc/icons/location.xpm [deleted file]
etc/icons/naruto.blank.xpm [deleted file]
etc/icons/naruto.gray.xpm [deleted file]
etc/icons/naruto.red.xpm [deleted file]
etc/icons/pindown.xpm [deleted file]
etc/icons/print.xpm [deleted file]
etc/icons/reload.xpm [deleted file]
etc/icons/search.xpm [deleted file]
etc/icons/stop.xpm [deleted file]
etc/po/ja.po [deleted file]
etc/styles/bottom [deleted file]
etc/styles/middle [deleted file]
etc/styles/top [deleted file]
lisp/.cvsignore [deleted file]
lisp/ChangeLog [deleted file]
lisp/Makefile [deleted file]
lisp/Makefile.am [deleted file]
lisp/bitmap-stipple.el [deleted file]
lisp/gettext.el [deleted file]
lisp/liece-000.el [deleted file]
lisp/liece-200.el [deleted file]
lisp/liece-300.el [deleted file]
lisp/liece-400.el [deleted file]
lisp/liece-500.el [deleted file]
lisp/liece-channel.el [deleted file]
lisp/liece-clfns.el [deleted file]
lisp/liece-coding.el [deleted file]
lisp/liece-commands.el [deleted file]
lisp/liece-compat.el [deleted file]
lisp/liece-config.el [deleted file]
lisp/liece-ctcp.el [deleted file]
lisp/liece-dcc.el [deleted file]
lisp/liece-emacs.el [deleted file]
lisp/liece-filter.el [deleted file]
lisp/liece-globals.el [deleted file]
lisp/liece-handle.el [deleted file]
lisp/liece-handler.el [deleted file]
lisp/liece-hilit.el [deleted file]
lisp/liece-inlines.el [deleted file]
lisp/liece-intl.el [deleted file]
lisp/liece-mail.el [deleted file]
lisp/liece-make.el [deleted file]
lisp/liece-menu.el [deleted file]
lisp/liece-message.el [deleted file]
lisp/liece-minibuf.el [deleted file]
lisp/liece-misc.el [deleted file]
lisp/liece-modules.el [deleted file]
lisp/liece-nick.el [deleted file]
lisp/liece-q-ccl.el [deleted file]
lisp/liece-q-el.el [deleted file]
lisp/liece-tcp.el [deleted file]
lisp/liece-url.el [deleted file]
lisp/liece-vars.el [deleted file]
lisp/liece-version.el [deleted file]
lisp/liece-window.el [deleted file]
lisp/liece-x-face.el [deleted file]
lisp/liece-xemacs.el [deleted file]
lisp/liece.el [deleted file]
lisp/liece.xbm [deleted file]
lisp/liece.xpm [deleted file]
lisp/queue-m.el [deleted file]
sample.dot.emacs.in [deleted file]

diff --git a/.cvsignore b/.cvsignore
deleted file mode 100644 (file)
index 2056dde..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-install-sh
-mkinstalldirs
-missing
-Makefile.in
-Makefile
-aclocal.m4
-configure
-config.log
-config.status
-config.cache
-sample.dot.emacs
diff --git a/AUTHORS b/AUTHORS
deleted file mode 100644 (file)
index 071acdb..0000000
--- a/AUTHORS
+++ /dev/null
@@ -1,8 +0,0 @@
--*- mode: text; left-margin: 2; fill-column: 70; -*-
-
-  Liece is mainly written by Daiki Ueno <ueno@ueda.info.waseda.ac.jp>.
-  
-  This package based on Irchat (version 3.01) which has been
-  distributed under GPL1 or later.
-  
-  Original author of Irchat is Tor Lillqvist <tml@hemuli.atk.vtt.fi>
diff --git a/COPYING b/COPYING
deleted file mode 100644 (file)
index a3f6b12..0000000
--- a/COPYING
+++ /dev/null
@@ -1,340 +0,0 @@
-                   GNU GENERAL PUBLIC LICENSE
-                      Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
-                          59 Temple Place - Suite 330, Boston, MA
-                          02111-1307, USA.
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-                           Preamble
-
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users.  This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it.  (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.)  You can apply it to
-your programs, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
-  To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
-  For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have.  You must make sure that they, too, receive or can get the
-source code.  And you must show them these terms so they know their
-rights.
-
-  We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
-  Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software.  If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
-  Finally, any free program is threatened constantly by software
-patents.  We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary.  To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.
-\f
-                   GNU GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License.  The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language.  (Hereinafter, translation is included without limitation in
-the term "modification".)  Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
-  1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
-  2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
-    a) You must cause the modified files to carry prominent notices
-    stating that you changed the files and the date of any change.
-
-    b) You must cause any work that you distribute or publish, that in
-    whole or in part contains or is derived from the Program or any
-    part thereof, to be licensed as a whole at no charge to all third
-    parties under the terms of this License.
-
-    c) If the modified program normally reads commands interactively
-    when run, you must cause it, when started running for such
-    interactive use in the most ordinary way, to print or display an
-    announcement including an appropriate copyright notice and a
-    notice that there is no warranty (or else, saying that you provide
-    a warranty) and that users may redistribute the program under
-    these conditions, and telling the user how to view a copy of this
-    License.  (Exception: if the Program itself is interactive but
-    does not normally print such an announcement, your work based on
-    the Program is not required to print an announcement.)
-\f
-These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works.  But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
-  3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
-    a) Accompany it with the complete corresponding machine-readable
-    source code, which must be distributed under the terms of Sections
-    1 and 2 above on a medium customarily used for software interchange; or,
-
-    b) Accompany it with a written offer, valid for at least three
-    years, to give any third party, for a charge no more than your
-    cost of physically performing source distribution, a complete
-    machine-readable copy of the corresponding source code, to be
-    distributed under the terms of Sections 1 and 2 above on a medium
-    customarily used for software interchange; or,
-
-    c) Accompany it with the information you received as to the offer
-    to distribute corresponding source code.  (This alternative is
-    allowed only for noncommercial distribution and only if you
-    received the program in object code or executable form with such
-    an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it.  For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable.  However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-\f
-  4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License.  Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
-  5. You are not required to accept this License, since you have not
-signed it.  However, nothing else grants you permission to modify or
-distribute the Program or its derivative works.  These actions are
-prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
-  6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions.  You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
-  7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all.  For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices.  Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-\f
-  8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded.  In such case, this License incorporates
-the limitation as if written in the body of this License.
-
-  9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time.  Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number.  If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation.  If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
-  10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission.  For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this.  Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
-                           NO WARRANTY
-
-  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
-  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
-                    END OF TERMS AND CONDITIONS
-\f
-       Appendix: How to Apply These Terms to Your New Programs
-
-  If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
-  To do so, attach the following notices to the program.  It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-    <one line to give the program's name and a brief idea of what it does.>
-    Copyright (C) 19yy  <name of author>
-
-    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 of the License, 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 this program; if not, write to the Free Software
-    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
-    Gnomovision version 69, Copyright (C) 19yy name of author
-    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License.  Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary.  Here is a sample; alter the names:
-
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
-  `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
-  <signature of Ty Coon>, 1 April 1989
-  Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs.  If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library.  If this is what you want to do, use the GNU Library General
-Public License instead of this License.
diff --git a/ChangeLog b/ChangeLog
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/INSTALL b/INSTALL
deleted file mode 100644 (file)
index 467ae8b..0000000
--- a/INSTALL
+++ /dev/null
@@ -1,95 +0,0 @@
--*- mode: text; left-margin: 2; fill-column: 70; -*-
-
-  This program is in very early developing stage. Please use at your
-  own risk.
-  
-* Requirements
-
-  Liece works under following environment at least.
-  
-  - Emacs 20.6
-  - XEmacs 21.2 with MULE extension
-  
-  This package uses following external libraries.
-  
-  - APEL 10.2 or later (stands for - "A Portable Emacs Library")
-       ftp://ftp.m17n.org/pub/mule/apel/
-  - FLIM 1.12 or later
-       ftp://ftp.m17n.org/pub/mule/flim/
-  
-  If you does not have installed copy of above, please try to specify 
-  `--enable-apel' option at configure time.
-  (After configuration, Liece will use local copy of APEL.)
-
-* Quick installation
-
-  (Install APEL, then)
-  % ./configure
-  % make
-  % su
-  Password: ultrasecret
-  # make install
-  
-  If you are not able to become super-user, you may specify local
-  directory to install.
-  
-  % ./configure --prefix=~/ --with-lispdir=~/elisp
-
-* Configuration and running
-  
-** Setting up your ~/.emacs   
-  
-  If you are using Emacs or Mule, please add directory of APEL and
-  Liece to load-path.  If you install by default setting you can write
-  subdirs.el for example:
-  
-  ex:
-  (normal-top-level-add-to-load-path '("apel" "liece"))
-
-  If you are using Emacs 20.3 or XEmacs, prepare `subdirs.el' with
-  following contents, Emacs will find and append each substantial
-  directory to `load-path' automagically.
-
-  ex:
-  (normal-top-level-add-subdirs-to-load-path)
-
-  If you are using Emacs 19 or earlier version of Emacsen, 
-  you have to write more complicated path-setting in your `~/.emacs'.
-  
-  ex: 
-  (setq load-path 
-        (append 
-         (list "/usr/local/lib/mule/site-lisp/apel"
-              "/usr/local/lib/mule/site-lisp/liece")
-         load-path))
-  
-  For more details, please read `README' file come along with APEL.
-
-  If you have never been using liece and/or its variants, 
-  add an autoload setting into your `~/.emacs'.
-
-  ex:
-  (autoload 'liece "liece" nil t)
-
-** Setting up your ~/.liece
-  
-  If you have never run Liece, and quite unsure to configure startup
-  files in Emacs Lisp, please copy `sample.dot.liece' file in `doc'
-  directory to `~/.liece'.
-
-  Please read ducuments under `doc' directory.
-  (`README-styles' to configure window splitting)
-  
-* Optional packages
-
-  Following packages are optional. If install script of this package
-  found them, it would use various functionality provided in them.
-  
-  custom
-       http://www.dina.kvl.dk/~abraham/custom/
-
-  X-Face utility
-       ftp://ftp.jpl.org/pub/elisp/
-
-  bitmap-mule
-       ftp://ftp.jpl.org/pub/elisp/bitmap/ (for GNU Emacs only)
diff --git a/Makefile.am b/Makefile.am
deleted file mode 100644 (file)
index 457eb05..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-SUBDIRS = . dcc doc etc lisp
-EXTRA_DIST = sample.dot.emacs.in
-DISTCLEANFILES = sample.dot.emacs
-
-CVSROOT = :pserver:anonymous@cvs.m17n.org:/cvs/root
-if USE_TM
-ALL_LOCAL_TARGET = all-tm
-INSTALL_LOCAL_TARGET = install-tm
-CLEAN_LOCAL_TARGET = clean-tm
-else
-ALL_LOCAL_TARGET = 
-INSTALL_LOCAL_TARGET = 
-CLEAN_LOCAL_TARGET =
-endif
-
-if USE_PACKAGE
-ALL_TM_TARGET = package
-INSTALL_TM_TARGET = install-package
-else
-ALL_TM_TARGET = 
-INSTALL_TM_TARGET = install 
-endif
-
-CLEAN_TM_TARGET = clean
-
-if USE_CUSTOM_LISPDIR
-INSTALL_TM_MAKEFLAGS = LISPDIR=$(lispdir) VERSION_SPECIFIC_LISPDIR=$(lispdir)
-else
-INSTALL_TM_MAKEFLAGS = 
-endif
-
-if USE_CUSTOM_PACKAGEDIR
-INSTALL_TM_MAKEFLAGS = PACKAGEDIR=$(packagedir)
-endif
-
-all-local: $(ALL_LOCAL_TARGET)
-
-sample.dot.emacs: sample.dot.emacs.in
-       sed -e 's!@pkgdatadir@!$(pkgdatadir)!g' $< > $@
-
-install-data-local: $(INSTALL_LOCAL_TARGET) 
-
-clean-local: $(CLEAN_LOCAL_TARGET) 
-
-all-tm:
-       @if grep ${CVSROOT} ${HOME}/.cvspass; then :; else \
-       echo "${CVSROOT} A" >> ${HOME}/.cvspass; fi; \
-       target=`echo $@ | sed s/-recursive//`; \
-       if test -d apel; then :; else \
-               cvs -d ${CVSROOT} -z3 checkout apel; fi; \
-       if test -d flim; then :; else \
-               cvs -d ${CVSROOT} -z3 checkout -r flim-1_13 flim; fi; \
-       list='apel flim'; for subdir in $$list; do \
-               echo "Making $$target in $$subdir"; \
-               ( cd $$subdir && \
-               $(MAKE) $(AM_MAKEFLAGS) $(ALL_TM_TARGET) ) ; \
-       done
-
-install-tm: all-tm
-       @target=`echo $@ | sed s/-recursive//`; \
-       list='apel flim'; for subdir in $$list; do \
-               echo "Making $$target in $$subdir"; \
-               ( cd $$subdir && \
-               $(MAKE) $(INSTALL_TM_MAKEFLAGS) $(INSTALL_TM_TARGET) ) ; \
-       done
-
-clean-tm:
-       @target=`echo $@ | sed s/-recursive//`; \
-       list='apel flim'; for subdir in $$list; do \
-               echo "Making $$target in $$subdir"; \
-               ( cd $$subdir && \
-               $(MAKE) $(AM_MAKEFLAGS) $(CLEAN_TM_TARGET) ) ; \
-       done
-
diff --git a/NEWS b/NEWS
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/README b/README
deleted file mode 100644 (file)
index 1f7f406..0000000
--- a/README
+++ /dev/null
@@ -1,51 +0,0 @@
--*- mode: text; left-margin: 2; fill-column: 70; -*-
-
-* Directory tree
-  
-  This package contains following directories:
-  
-  lisp/ - Emacs Lisp files.
-  
-  dcc/  - DCC external program source.
-  
-  doc/  - Documentation, info files, sample configuration, etc.
-  
-  etc/  - Miscellaneous files which decorate this program.
-  
-  Please read documentation under `doc' directory.
-
-* Bug reports
-  
-  If you write bug reports and/or suggestions for improvement, 
-  please send them to the Liece Mailing List.
-  This mailing list is also for other general discussions (about
-  future enhancements, customization, etc). To join the Liece ML,
-  send an e-mail to:
-  
-       liece-ctl@unixuser.org
-  
-  with the message body, 
-
-       subscribe Your Name
-
-* CVS
-  
-  Development of Liece uses CVS, Concurrent Versions System.
-  Latest developing version is available at CVS.
-  
-(0) logging in to anonymous CVS server.
-  
-    % cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/root login
-
-    CVS password: [CR] # NULL string
-  
-(1) checkout modules
-  
-    % cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/root checkout liece
-  
-  Specify revision tag in front of the module name.
-
-(2) bootstrapping
-  
-  % cd liece
-  % ./bootstrap
diff --git a/acinclude.m4 b/acinclude.m4
deleted file mode 100644 (file)
index 90be5b4..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-AC_DEFUN(AM_PATH_LISPDIR,
- [dnl #
-  dnl # Check Emacs
-  dnl #
-  AC_ARG_WITH(emacs,
-    [  --with-emacs=EMACS      compile with EMACS [EMACS=emacs, xemacs...]],
-    [case "${withval}" in
-       yes)    EMACS= ;;
-       no)     AC_MSG_ERROR([emacs is not available]) ;;
-       *)      EMACS=${withval} ;;
-     esac], EMACS=)
-  if test "x$EMACS" = "xt" -o "x$EMACS" = x; then
-    AC_PATH_PROGS(EMACS, emacs xemacs mule, no)
-  else
-    AC_MSG_CHECKING(for emacs)
-    AC_MSG_RESULT($EMACS)
-  fi
-  dnl # 
-  dnl # Check Emacs directories
-  dnl #
-  AC_ARG_WITH(emacsdir,
-    [  --with-emacsdir=EDIR    Emacs program/data files in EDIR [guessed]],
-    [case "${withval}" in
-       yes)    emacsdir=NONE ;;
-       no)     AC_MSG_ERROR(emacsdir is not available) ;;
-       *)      emacsdir=${withval} ;;
-     esac], emacsdir=NONE)
-  AC_MSG_CHECKING([where emacs files are in])
-  AC_MSG_RESULT($emacsdir)
-  AC_SUBST(emacsdir)
-  dnl # 
-  dnl # Check Emacs site-lisp directories
-  dnl #
-  ac_cv_lispdir=no
-  AC_ARG_WITH(lispdir,
-    [  --with-lispdir=DIR      emacs lisp files in DIR [EDIR/site-lisp]],
-    [case "${withval}" in
-       yes)    lispdir=NONE ;;
-       no)     AC_MSG_ERROR(lispdir is not available) ;;
-       *)      lispdir=${withval} ; ac_cv_lispdir=yes ;;
-     esac], lispdir=NONE)
-  AC_MSG_CHECKING([where .elc files should go])
-  AC_MSG_RESULT($lispdir)
-  AC_SUBST(lispdir)
-  AM_CONDITIONAL(USE_CUSTOM_LISPDIR, test x$ac_cv_lispdir = xyes)
-  dnl #
-  dnl # Check whether install as XEmacs package
-  dnl #
-  AC_ARG_ENABLE(package,
-    [  --enable-package        install as XEmacs package [default=no]],,
-    enable_package=no)
-  AC_MSG_CHECKING([whether install as XEmacs package])
-  if test "x$enable_package" = "xyes"; then
-    AC_MSG_RESULT(yes)
-    EMACS=xemacs
-    dnl # 
-    dnl # Check XEmacs package directories 
-    dnl #
-    ac_cv_packagedir=no
-    AC_ARG_WITH(packagedir,
-      [  --with-packagedir=DIR   XEmacs package files in DIR [EDIR/packages]],
-      [case "${withval}" in
-         yes)  packagedir=NONE ;;
-         no)   AC_MSG_ERROR(packagedir is not available) ;;
-         *)    packagedir=${withval} ; ac_cv_packagedir=yes ;;
-       esac], packagedir=NONE)
-    AC_MSG_CHECKING([where package files should go])
-    if test "x$packagedir" = "xNONE"; then
-      eval `$EMACS -batch -q -no-site-file -l ./lisp/liece-make.el \
-        -f config-liece-package-directory`
-      packagedir=$PACKAGEDIR
-    fi
-    AC_MSG_RESULT($packagedir)
-    AC_SUBST(packagedir)
-    pkgdatadir=${packagedir}/etc/${PACKAGE}
-    infodir=${packagedir}/info
-    AM_CONDITIONAL(USE_CUSTOM_PACKAGEDIR, test x$ac_cv_packagedir = xyes)
-  else 
-    AC_MSG_RESULT(no)
-  fi
-  AC_SUBST(icondir)
-  AC_SUBST(catalogdir)
-  AC_SUBST(styledir)
-  
-  AM_CONDITIONAL(USE_PACKAGE, test x$enable_package = xyes)])
diff --git a/bootstrap b/bootstrap
deleted file mode 100755 (executable)
index c67fa95..0000000
--- a/bootstrap
+++ /dev/null
@@ -1,7 +0,0 @@
-#! /bin/sh
-
-aclocal
-automake --gnu --add-missing
-autoconf
-
-exit 0
diff --git a/configure.in b/configure.in
deleted file mode 100644 (file)
index 484cf1d..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-AC_INIT(lisp/liece.el)
-AM_INIT_AUTOMAKE(liece, 1.4.4)
-
-AM_PATH_LISPDIR
-
-AC_PROG_CC
-AC_ISC_POSIX
-AC_PROG_INSTALL
-AC_PROG_MAKE_SET
-AC_PROG_RANLIB
-
-AC_CHECK_HEADERS(sys/select.h libgen.h socks.h netinet6/in6.h)
-
-AC_CHECK_LIB(nsl, gethostbyname)
-AC_CHECK_LIB(socket, socket)
-
-AC_CHECK_FUNCS(strtoul memmove basename getaddrinfo)
-
-AC_CHECK_TYPE(fd_set, int)
-
-dnl checking if the system supports ipv6 address space or not
-AC_CACHE_CHECK([for struct in6_addr], ac_cv_struct_in6_addr,
-[AC_TRY_COMPILE([#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <netinet6/in6.h>], [struct in6_addr v6; v6.s6_addr32[3];],
-ac_cv_struct_in6_addr=yes, ac_cv_struct_in6_addr=no)])
-test "x$ac_cv_struct_in6_addr" = "xyes" && AC_DEFINE(HAVE_IN6_ADDR)
-
-dnl checking if the system supports tcp over ipv6 support or not
-AC_CACHE_CHECK([for struct sockaddr_in6], ac_cv_struct_sockaddr_in6,
-[AC_TRY_COMPILE([#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <netinet6/in6.h>], [struct sockaddr_in6 v6; v6.sin6_addr;],
-ac_cv_struct_sockaddr_in6=yes, ac_cv_struct_sockaddr_in6=no)])
-test "x$ac_cv_struct_sockaddr_in6" = "xyes" && AC_DEFINE(HAVE_SOCKADDR_IN6)
-
-# Check compile with IPv6 support
-AC_MSG_CHECKING(whether we compile with IPv6)
-AC_ARG_ENABLE(ipv6, \
- [ --enable-ipv6           compile with IPv6 [default=no]],, \
-    enable_ipv6=no)
-test "x$enable_ipv6" = "xyes" && AC_DEFINE(INET6)
-AC_MSG_RESULT($enable_ipv6)
-
-# Check whether to retrieve APEL/FLIM distribution.
-AC_MSG_CHECKING(whether we retrieve APEL/FLIM distribution via CVS)
-AC_ARG_ENABLE(tm, \
- [ --enable-tm             retrieve APEL/FLIM distribution via CVS [default=no]],, \
-    enable_tm=no)
-if test "x$enable_tm" = "xyes"; then
-    AC_MSG_RESULT(yes)
-else 
-    AC_MSG_RESULT(no)
-fi
-AM_CONDITIONAL(USE_TM, test x$enable_tm = xyes)
-
-AC_OUTPUT(Makefile \
-lisp/Makefile \
-dcc/Makefile \
-doc/Makefile \
-etc/Makefile)
diff --git a/contrib/plum-support.el b/contrib/plum-support.el
deleted file mode 100644 (file)
index 9697fbc..0000000
+++ /dev/null
@@ -1,150 +0,0 @@
-;;; plum-support.el --- pirc support for plum
-;; Copyright (C) 1999 Daiki Ueno <ueno@ueda.info.waseda.ac.jp>
-;; See file irchat-copyright.el for original change log and copyright info.
-
-;; Author: Daiki Ueno <ueno@ueda.info.waseda.ac.jp>
-;; Created: 1999-05-06
-;; Revised: 1999-05-06
-;; Keywords: IRC, irchat, pirc
-
-;; This file is not part of any package.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-;;; Code:
-
-(require 'custom)
-
-(defcustom plum-recent-header "plum"
-  "String added in front of each recent logged message"
-  :type 'string
-  :group 'irchat-support)
-
-(defconst plum-recent-time-header-regexp "[0-9][0-9]:[0-9][0-9]"
-  "Regexp for timestamp preceding in message body")
-
-(defconst plum-recent-privmsg-header-regexp
-  "[<>(=]\\([^ <>)=]*\\)[<>)=]"
-  "Regexp for whole message line (privmsg)")
-
-(defconst plum-recent-join-header-regexp
-  "\\+ [@+]?[^ ]* [^ ]* to \\([^ ]*\\)"
-  "Regexp for whole message line (join)")
-
-(defconst plum-recent-part-header-regexp
-  "- [^ ]* from \\([^ ]*\\)"
-  "Regexp for whole message line (part)")
-
-(defconst plum-recent-kick-header-regexp
-  "- [^ ]* by [^ ]* from \\([^ ]*\\) .*"
-  "Regexp for whole message line (kick)")
-
-(defconst plum-recent-mode-header-regexp
-  "Mode by [^:]*: \\([^ ]*\\) .*"
-  "Regexp for whole message line (mode)")
-
-(defconst plum-recent-topic-header-regexp
-  "Topic of channel \\([^ ]*\\) by [^:]*: .*"
-  "Regexp for whole message line (nick)")
-
-(defconst plum-recent-message-header-regexp
-  (concat "^\\(" plum-recent-time-header-regexp "\\)? *"
-         plum-recent-privmsg-header-regexp))
-
-(defconst plum-recent-channel-header-regexp
-  (concat "^\\(" plum-recent-time-header-regexp "\\)? *"
-         (mapconcat (function identity) 
-                    (list plum-recent-join-header-regexp
-                          plum-recent-part-header-regexp
-                          plum-recent-kick-header-regexp
-                          plum-recent-mode-header-regexp
-                          plum-recent-topic-header-regexp)
-                    "\\|")))
-
-(defconst plum-recent-generic-header-regexp
-  (concat "^\\(" plum-recent-time-header-regexp "\\)? *"))
-
-(defvar plum-recent-log-buffer " *plum recent log")
-
-(defun plum-parse-recent-after ()
-  "Parse text after point as recent log message, then returns components"
-  (save-excursion
-    (let (time lparen rparen chnl nick)
-      (cond
-       ((looking-at plum-recent-message-header-regexp)
-       (setq time (match-string 1))
-       (goto-char (match-beginning 2))
-       (setq lparen (char-before))
-       (goto-char (match-end 2))
-       (setq rparen (char-after))
-       (skip-chars-backward "^: ") 
-       (skip-chars-forward "=")
-       (setq nick (buffer-substring (point) (match-end 2)))
-       (backward-char)
-       (setq chnl (buffer-substring (match-beginning 2) (point)))
-       (goto-char (match-end 0))
-       (forward-char)
-       (list 'message time lparen rparen chnl nick 
-             (buffer-substring (point) (line-end-position))))
-       ((looking-at plum-recent-channel-header-regexp)
-       (setq time (match-string 1)
-             chnl (match-string 2))
-       (goto-char (match-end 1))
-       (forward-char)
-       (list 'channel time chnl 
-             (buffer-substring (point) (line-end-position))))
-       ((looking-at plum-recent-generic-header-regexp)
-       (setq time (match-string 1))
-       (goto-char (match-end 0))
-       (list 'generic time (buffer-substring (point) (line-end-position)))))
-      )))
-
-(add-hook 'irchat-notice-hook 'plum-recent-add)
-(add-hook 'irchat-002-hook 
-         (function 
-          (lambda (header rest)
-            (remove-hook 'irchat-notice-hook 'plum-recent-add) )))
-
-(defun plum-recent-add (header rest)
-  "Add recent log line into `plum-recent-log-buffer'."
-  (let (fun from to body component type)
-    (if header 
-       nil
-      (and rest (string-match "^[^ ]* +:\\(.*\\)" rest)
-          (with-temp-buffer 
-            (insert (match-string 1 rest) ?\n)
-            (goto-char (point-min))
-            (setq component (plum-parse-recent-after)
-                  type (pop component))
-            (cond
-             ((eq type 'message)
-              (setq from (nth 4 component)
-                    to (cond 
-                        ((eq (nth 1 component) ?=)
-                         (irchat-current-nickname))
-                        ((eq (nth 1 component) ?<)
-                         (irchat-channel-real (nth 3 component))))
-                    body (concat "(" plum-recent-header " " (car component) 
-                                 ") " (nth 5 component))
-                    fun (llhandler-lookup "irchat-handle-privmsg-msg"))
-              (funcall fun from (concat to " :" body))
-              t)
-             (t nil)))))))
-              
-
-(provide 'plum-support)
-
-;;; plum-support.el ends here.
\ No newline at end of file
diff --git a/dcc/.cvsignore b/dcc/.cvsignore
deleted file mode 100644 (file)
index af6ac77..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-Makefile.in
-Makefile
-ldcc
-ltcp
-.deps
diff --git a/dcc/Makefile.am b/dcc/Makefile.am
deleted file mode 100644 (file)
index 9c54399..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-DEFS = -I$(srcdir) -I$(top_srcdir) $(CFLAGS) @DEFS@
-LIBS = -L. -ldcc @LIBS@
-CLEANFILES = ldcc ltcp
-
-noinst_LIBRARIES = libdcc.a
-bin_PROGRAMS = ldcc ltcp
-
-libdcc_a_SOURCES = getopt1.c getopt.c getaddrinfo.c
-noinst_HEADERS = getopt.h getaddrinfo.h
-
-ltcp_SOURCES = tcp.c 
-ldcc_SOURCES = dcc.c
-
-#MLHDRS = naddr.mli
-#MLSRCS = naddr.ml dcc.ml
-#MLOBJS = $(MLSRCS:.ml=.cmo) 
-#MLINTF = $(MLHDRS:.mli=.cmi) 
-#EXTRA_ldcc_SOURCES = $(MLHDRS) $(MLSRCS)
-#ldcc_SOURCES = $(MLSRCS)
-#ldcc_COMPILE = @OCAMLC@
-#ldcc_LINK = $(OCAMLC) -custom unix.cma nums.cma str.cma 
-#ldcc_LDFLAGS = -cclib -lunix -cclib -lnums -cclib -lstr -o ldcc
-
-#SUFFIXES = .ml .mli .cmo .cmi
-
-#$(MLOBJS): $(MLINTF)
-
-#.mli.cmi:
-#      $(OCAMLC) -c $<
-
-#.ml.cmo:
-#      $(OCAMLC) -c $<
diff --git a/dcc/dcc.c b/dcc/dcc.c
deleted file mode 100644 (file)
index 7671cc0..0000000
--- a/dcc/dcc.c
+++ /dev/null
@@ -1,505 +0,0 @@
-/* This file is part of Liece.                                          
-   Copyright (C) 1998 Daiki Ueno <daiki@kake.info.waseda.ac.jp>         
-
-   Author: Daiki Ueno <daiki@kake.info.waseda.ac.jp>                    
-   Created: 1998-09-28                                                  
-   Revised: 1999-01-28                                                  
-   Keywords: IRC, liece, DCC                                           
-
-   This file is part of Liece.                                          
-
-   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, Inc., 59 Temple Place - Suite 330,         
-   Boston, MA 02111-1307, USA.                                          
-*/
-
-#include <sys/types.h>
-#include <sys/time.h>
-#include <sys/socket.h>
-#include <sys/file.h>
-#include <sys/ioctl.h>
-#include <sys/stat.h>
-#include <sys/time.h>
-#include <netdb.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <signal.h>
-#include <fcntl.h>
-#include <netinet/in.h>
-#define _GNU_SOURCE
-#include <getopt.h>
-
-#ifndef MAXHOSTNAMELEN
-# define MAXHOSTNAMELEN 31
-#endif
-
-#ifdef HAVE_SYS_SELECT_H
-# include <sys/select.h>
-#endif
-
-#ifdef HAVE_MEMMOVE
-# ifdef HAVE_LIBGEN_H
-#  include <libgen.h>
-#  ifdef basename
-#   undef basename
-#  endif
-# endif
-# include <string.h>
-#else
-# define memmove(x,y,z) bcopy((y), (x), (z))
-#endif
-
-#ifndef HAVE_BASENAME
-# define basename(path) (rindex((path), '/') + 1)
-#endif
-
-static void usage();
-static int prepare_listen_port();
-static int prepare_connect_port();
-
-static int receive_file();
-static int send_file();
-static int select_loop();
-static int chat_listen();
-static int chat_connect();
-
-static u_long primary_address_of();
-static u_long extract_addr_of_string();
-static u_long get_address_externally();
-
-static char *progname;
-
-void version () {
-       printf("%s (Liece) 1.4.0\n"
-                                "Copyright (C) 1998, 1999 Daiki Ueno\n"
-                                "This is free software; see the source for copying conditions.  There is NO\n"
-                                "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n", 
-                                progname);
-}
-
-void usage() {
-  printf("Usage: %s [global-options] command [command-options-and-arguments]\n"
-                                "where global-options are -v, -h, etc.\n"
-                                "where command is one of send, receive, chat, resolve.\n"
-                                "where command-options-and-arguments depend on the specific command.\n\n"
-                                "send <host> <port> <filename>\n"
-                                "receive <host> <port> <size> <filename>\n"
-                                "chat listen <port>\n"
-                                "chat connect <host> <port>\n"
-                                "resolve [hosts ...]\n",
-                                progname);
-}
-
-int prepare_listen_port (int ip_port) {
-  int sock, tries;
-  int opt = 1;
-  static struct sockaddr_in server;
-
-  
-  if ((sock = socket(AF_INET, SOCK_STREAM, 0)) < 0) {
-    perror("opening stream socket");
-    exit(1);
-  }
-
-#ifdef SO_REUSEADDR
-  if (setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, 
-                (char *)&opt, sizeof (opt)) < 0) {
-    perror ("setsockopt SO_REUSEADDR");
-  }
-#endif
-
-  /* Bind a port to listen for new connections */
-
-  server.sin_family = AF_INET;
-  server.sin_addr.s_addr = INADDR_ANY;
-  server.sin_port = htons (ip_port);
-  for (tries = 0; tries < 10; tries++) {
-    if (bind (sock, (struct sockaddr *) &server, sizeof (server))) {
-      if (tries >= 9) {
-       perror ("binding stream socket");
-       exit (1);
-      }
-      perror ("binding stream socket. retry in 20 seconds");
-      sleep (20);              /* wait 20 seconds and try again */
-    } else
-      break;
-  }
-  listen (sock, 64);
-  return (sock);
-}
-
-u_long get_address_externally(char *ircserver) {
-  int i, len, dummy;
-  u_long addr;
-  struct hostent *hp;
-  struct sockaddr_in server, client;
-
-  addr = 0xc6290004;                          /* dummy addr --- rootA */
-  if (ircserver && (hp = gethostbyname(ircserver)) != NULL) {
-    addr = ntohl(((struct in_addr *)hp->h_addr_list[0])->s_addr);
-  }
-  if ((dummy = socket(AF_INET, SOCK_DGRAM, 0)) < 0) {
-    perror("opening stream socket");
-    return -1;
-  }
-  server.sin_family = AF_INET;
-  server.sin_addr.s_addr = htonl(addr);
-  server.sin_port = htons(7);                 /* dummy port --- echo */
-  for (i = 0; i < 8; i++) {
-    server.sin_zero[i] = 0;
-  }
-  if (connect(dummy, (struct sockaddr *)&server, sizeof(server)) < 0) {
-    perror ("connecting remote socket");
-    return -1;
-  }
-  len = sizeof(client);
-  if (getsockname(dummy, (struct sockaddr *)&client, &len) < 0) 
-    return -1;
-  close(dummy);
-  return ntohl(client.sin_addr.s_addr);
-}
-
-\f
-/*
- * send_file(int port, char *ifile)
- * listens to connections to port, and when connection established
- * sends ifile to that socket
- */
-int send_file (int port, char *ifile) {
-  int sock, ifd, ofd, len;
-  u_long addr, bytessent = 0;
-  char buf[ BUFSIZ * 8 ];
-  fd_set readfds, writefds, fdset;
-  struct stat statbuf;
-  char namebuf[ MAXHOSTNAMELEN ];
-  struct hostent *hp;
-  struct sockaddr_in sin;
-
-  if ((ifd = open (ifile, O_RDONLY)) < 0) { 
-    /* error in opening file to send */
-    close(ofd);
-    return 1;
-  }
-
-  gethostname(namebuf, sizeof (namebuf));
-  fstat (ifd, &statbuf);
-
-  sock = prepare_listen_port(port);
-  len = sizeof (struct sockaddr_in);
-  if (getsockname(sock, (struct sockaddr *)&sin, &len) == 0) 
-    port = ntohs(sin.sin_port);
-       if ((addr = get_address_externally (NULL)) < 0) {
-               gethostname(namebuf, sizeof (namebuf));
-               if (hp = gethostbyname(namebuf)) 
-                       addr = ((struct in_addr *) (hp->h_addr_list)[0])->s_addr;
-               else
-                       return 2;
-       }
-
-       printf ("DCC send %s %d %u %d\n", ifile, port, addr, statbuf.st_size);
-  
-  ofd = accept(sock, (struct sockaddr *) 0, (int *) 0);
-  
-  while ((len = read (ifd, buf, sizeof (buf))) > 0) {
-    write (ofd, buf, len);     
-    bytessent += len;
-    while ((len = read (ofd, buf, sizeof (u_long))) &&
-          ntohl (*(u_long *) buf) != bytessent);
-  }
-  close (ofd);
-  close (ifd);
-  printf ("*** DCC file %s sent\n", ifile);
-
-  return 0;
-}
-
-/*
- * receive_file(u_long host, int port, char *ifile)
- * connects to (host,port) and reads everything send from there
- * for every packet received gives back how much actually got
- * puts everything in ifile
- */
-int receive_file (u_long host, int port, int size, char *ifile) {
-  int sock, ifd, ofd, len, bytesreceived = 0, toread, prev = 0;
-  char buf[ BUFSIZ * 8 ];
-  fd_set readfds, writefds, fdset;
-  u_long netsize;
-    
-  if ((ofd = open(ifile, O_WRONLY|O_CREAT|O_TRUNC, 0600)) < 0) {
-    fprintf(stderr, "open: opening file: %s\n", ifile);
-    return 1;
-  }
-  ifd = prepare_connect_port (host, port);
-  if ((toread = sizeof (buf)) > size)
-    toread = size;
-  while (bytesreceived < size && (len = read (ifd, buf, toread)) > 0) {
-    write (ofd, buf, len);
-    bytesreceived += len;
-    netsize = htonl (bytesreceived);
-    lseek (ifd, 0, 2);
-    write (ifd, &netsize, 4);
-    lseek (ifd, 0, 2);
-    if (toread > size - bytesreceived)
-      toread = size - bytesreceived;
-    if (bytesreceived - prev > size / 5) {
-      printf ("DCC %s %d%% (%d/%d bytes) received\n", ifile,
-             100 * bytesreceived / size, bytesreceived, size);
-      prev = bytesreceived;
-    }
-  }
-  printf ("*** DCC file %s received\n", ifile);
-  close (ifd);
-  close (ofd);
-
-  return 0;
-}
-
-/*
- * select_loop(int sfd)
- * listens fd given, reads stdin and sends it to socket 
- * anything read from socket is send to stdout
- */
-int select_loop (int sfd) {
-  int ofd, len, bytesreceived = 0;
-  char buf[ BUFSIZ * 8 ];
-  fd_set readfds, writefds, fdset;
-
-  for (;;) {
-    FD_ZERO (&readfds);
-    FD_SET (sfd, &readfds);
-    FD_SET (0, &readfds);
-    if (select (32, &readfds, 0, 0, 0) < 0) {
-      perror ("select");
-      close (sfd);
-      return 1;
-    }
-       
-    if (FD_ISSET (sfd, &readfds)) {
-      if ((len = read(sfd, buf, sizeof (buf))) == 0) {
-       close (sfd);
-       return 0;
-      }
-      write (1, buf, len);
-      FD_CLR (sfd, &readfds);
-    }
-    if (FD_ISSET (0, &readfds))        {
-      if ((len = read (0, buf, sizeof (buf))) == 0) {
-       close (sfd);
-       return 0;
-      }
-      write(sfd, buf, len);
-      FD_CLR (ofd, &readfds);
-    }
-  }
-}
-
-int prepare_connect_port (u_long host, int port) {
-  int sock;
-  static struct hostent *hp;
-  static struct sockaddr_in server;
-    
-  sock = socket (AF_INET, SOCK_STREAM, 0);
-  if (sock < 0) {
-    perror ("opening stream socket");
-    exit (1);
-  }
-  server.sin_family = AF_INET;
-  
-  server.sin_addr.s_addr = ntohl (host);
-  server.sin_port = htons (port);
-    
-  if (connect(sock, (struct sockaddr *) &server, sizeof (server)) < 0) {
-    perror ("connecting remote socket");
-    return 0;
-  }
-  
-  return sock;
-}
-
-u_long extract_addr_of_string (char *str) {
-  u_long result = 0;
-
-#ifndef HAVE_STRTOUL
-  while (*str++) 
-    result = result * 10 + *str - '0';
-#else /* !HAVE_STRTOUL */
-  result = strtoul(str, NULL, 10);
-#endif /* HAVE_STRTOUL */
-  return result;
-}
-
-u_long primary_address_of (char *host) {   
-  struct hostent *hp;
-  u_long addr;
-  
-  if ((hp = gethostbyname(host)) == NULL)
-    addr = inet_addr(host);
-  else
-    memmove(&addr, hp->h_addr_list[ 0 ], 4);
-  
-  return ntohl(addr);
-}
-
-int chat_listen(int port) {
-  struct sockaddr_in sin;
-  struct hostent *hp;
-       u_long addr;
-  int sock, len;
-  char namebuf[ MAXHOSTNAMELEN ];
-    
-  sock = prepare_listen_port (port);
-  
-  len = sizeof (struct sockaddr_in);
-  if (getsockname(sock, (struct sockaddr *)&sin, &len) == 0) 
-    port = ntohs(sin.sin_port);
-
-       if ((addr = get_address_externally (NULL)) < 0) {
-               gethostname(namebuf, sizeof (namebuf));
-               if (hp = gethostbyname(namebuf)) 
-                       addr = ((struct in_addr *) (hp->h_addr_list)[0])->s_addr;
-               else
-                       return 2;
-       }
-
-       printf("DCC chat %u %d\n", addr, port);
-  
-  if ((sock = accept(sock, (struct sockaddr *) 0, (int *) 0)) > -1) {
-               printf("DCC chat established\n");
-    return select_loop(sock);
-       }
-  
-  return 1;
-}
-
-int chat_connect(u_long host, int port) {
-  int sock;
-  
-  if ((sock = prepare_connect_port(host, port)) > -1) {
-    printf("DCC chat established\n");
-    return select_loop(sock);
-  }
-  
-  return 1;
-}
-
-\f
-int main (int argc, char **argv) {
-  char *host = "localhost";
-  char *action;
-  int c, status = 0;
-
-  progname = (char *)basename(argv[ 0 ]);
-
-       while (1)       {
-               int this_option_optind = optind ? optind : 1;
-               int option_index = 0;
-               static struct option long_options[] =   {
-                       {"version", 0, 0, 'v'},
-                       {"help", 0, 0, 'h'},
-                       {0, 0, 0, 0}
-               };
-                       
-               c = getopt_long (argc, argv, "vh", long_options, &option_index);
-               if (c == -1)
-                       break;
-               
-               switch (c) {
-               case 'v':
-                       version();
-                       exit(1);
-                       break;
-               case 'h':
-                       usage();
-                       exit(1);
-                       break;
-               default:
-                       break;
-               }
-       }
-
-  if (argc > 1) {
-    action = argv[ 1 ];
-  } else {
-    usage();
-    exit(1);
-  }
-
-  if (!strcmp(action, "resolve")) {
-    if (argc < 3) {
-      usage();
-      exit(1);
-    } else {
-      u_long i, addr;
-      for (i = 2; i < argc; i++) {
-       addr = primary_address_of(argv[i]);
-       if (addr != -1)
-         printf("%u\n", addr);
-       else
-         printf("0\n");
-      }
-      status = 0;
-    }
-  }
-
-  if (!strcmp(action, "send")) {
-    if (argc != 4) {
-      usage();
-      exit(1);
-    }
-    status = send_file (atoi(argv[ 2 ]), argv[ 3 ]);
-  } else if (!strcmp(action, "receive")) {
-    if (argc != 6) {
-      usage();
-      exit(1);
-    }
-    status = 
-      receive_file (extract_addr_of_string(argv[ 2 ]),
-                   atoi(argv[ 3 ]), atoi(argv[ 4 ]), argv[ 5 ]);
-  } else if (!strcmp(action, "chat")) {
-    if (argc > 3) {
-      if (!strcmp(argv[ 2 ], "listen")) {
-       if (argc != 4) {
-         usage();
-         exit(1);
-       }
-       status = chat_listen(atoi(argv[ 3 ]));
-      } else if (!strcmp(argv[ 2 ], "connect")) {
-       if (argc != 5) {
-         usage();
-         exit(1);
-       }
-       status = chat_connect(extract_addr_of_string(argv[ 3 ]), 
-                             atoi(argv[ 4 ]));
-      } else {
-       usage();
-       exit(1);
-      }        
-    }
-  } else {
-    usage();
-    exit(1);
-  }
-
-  return status;
-}
-
-/*
- * Local variables:
- *  compile-command: "gcc -DHAVE_STRTOUL -Wall -O6 -o dcc dcc.c"
- *  c-indent-level: 2
- *  c-basic-offset: 2
- *  tab-width: 2
- * End:
- */
diff --git a/dcc/dcc.ml b/dcc/dcc.ml
deleted file mode 100644 (file)
index 0b852dc..0000000
+++ /dev/null
@@ -1,248 +0,0 @@
-(* DCC module.
-
-This file is part of Liece.                                          
-
-Author: Daiki Ueno <daiki@kake.info.waseda.ac.jp>                    
-Created: 1998-09-28                                               
-Revised: 1999-01-28                                               
-Keywords: IRC, liece, DCC                                        
-
-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, Inc., 59 Temple Place - Suite 330,         
-Boston, MA 02111-1307, USA.  *)
-
-open Unix
-
-let usage prefix progname = 
-  String.concat "\n"
-    (List.map (fun x -> (Printf.sprintf "%s: %s %s" prefix progname x))
-       [ "send <port> <filename>";
-        "receive <host> <port> <size> <filename>";
-         "chat listen <port>"; 
-         "chat connect <host> <port>" ])
-
-let buff = String.create 1024
-
-let print_exc exc =
-  match exc with
-    Unix_error (err, fun_name, arg) ->
-      prerr_string "\"";
-      prerr_string fun_name;
-      prerr_string "\" failed";
-      if String.length arg > 0 then
-        begin
-          prerr_string " on \""; prerr_string arg; prerr_string "\""; ()
-        end;
-      prerr_string ": ";
-      prerr_endline (error_message err);
-      flush Pervasives.stderr; ()
-  | _ ->
-      try Printexc.print raise exc with
-        _ -> ()
-
-let accept_connection f s =
-  let (t, addr) = accept s in
-  f t; close t; ()
-       
-let write_file filename size t =
-  let fd =
-    try openfile filename [ O_RDONLY ] 0 with
-      _ -> Printf.eprintf "Open failed.\n"; flush Pervasives.stderr; exit 1
-  in
-  let (len, rlen) = ref 0, ref 0 in
-  while len := read fd buff 0 (String.length buff); !len <> 0
-  do
-    let rec loop i =
-      let j = i + write t buff i (!len - i) in 
-      if j == !len then () else loop j
-    in
-    loop 0;
-    flush (out_channel_of_descr t);
-    rlen := !rlen + !len;
-    Printf.printf "DCC %s %d%% (%d/%d bytes) sent.\n"
-      filename (100 * !rlen / size) !rlen size;
-    flush Pervasives.stdout
-  done;
-  close fd; close t; ()
-
-let send_file port filename =
-  try
-    let host = gethostbyname (gethostname ()) in
-    let haddr = string_of_inet_addr host.h_addr_list.(0) in
-    let s = socket PF_INET SOCK_STREAM 0 in
-    setsockopt s SO_REUSEADDR true;
-    bind s (ADDR_INET (inet_addr_any, port));
-    let port =
-      match (getsockname s) with
-       ADDR_INET (addr, port) -> port
-      | _ -> port
-    in
-    listen s 1;
-    let fd =
-      try openfile filename [ O_RDONLY ] 0 with
-       _ -> Printf.eprintf "Open failed.\n"; flush Pervasives.stderr; exit 1
-    in
-    let size = (fstat fd).st_size in
-    close fd;
-    Printf.printf "DCC send %s %d %s %d\n"
-      (Filename.basename filename) port (Naddr.encode haddr) size;
-    flush Pervasives.stdout;
-    accept_connection (fun t -> write_file filename size t) s;
-  with
-    exc -> print_exc exc
-
-let read_file filename size t =
-  let fd =
-    try openfile filename [ O_WRONLY; O_CREAT ] 0o600 with
-      _ -> Printf.eprintf "Open failed.\n"; flush Pervasives.stderr; exit 1
-  in
-  let (len, rlen) = ref 0, ref 0 in
-  while len := read t buff 0 (String.length buff); !len <> 0
-  do
-    let _ = write fd buff 0 !len in
-    flush (out_channel_of_descr fd);
-    rlen := !rlen + !len;
-    Printf.printf "DCC %s %d%% (%d/%d bytes) received.\n"
-      filename (100 * !rlen / size) !rlen size;
-    flush Pervasives.stdout
-  done;
-  close fd; close t
-
-let receive_file host port size filename =
-  let s = socket PF_INET SOCK_STREAM 0 in
-  connect s (ADDR_INET (inet_addr_of_string (Naddr.decode host), port));
-  read_file filename size s; ()
-
-let chat_loop s =
-  let sel = ref [s; stdin] in
-  while !sel <> [] do
-    let (l, _, _) =
-    try
-      select !sel [] [] (-1.0) 
-    with 
-      _ -> exit 0
-    in
-    List.iter
-      (fun x -> 
-       let (rfd, wfd) =
-         if x == s then 
-           (s, stdout)
-         else if x == stdin then 
-           (stdin, s)
-         else 
-           (stdin, stdout)
-       in
-       let len = ref 0 
-       in
-       len := read rfd buff 0 (String.length buff); 
-       if !len == 0 then 
-         begin try shutdown wfd SHUTDOWN_SEND; () with
-           _ -> exit 0
-         end
-       else
-         begin
-           let rec loop i =
-             let j = i + write wfd buff i (!len - i) in 
-             if j == !len then () else loop j
-           in
-           loop 0;
-           flush (out_channel_of_descr wfd)
-         end;
-       ())
-      l
-  done
-
-let chat_listen port =
-  let host = gethostbyname (gethostname ()) in
-  let haddr = string_of_inet_addr host.h_addr_list.(0) in
-  let s = socket PF_INET SOCK_STREAM 0 in
-  setsockopt s SO_REUSEADDR true;
-  bind s (ADDR_INET (inet_addr_any, port));
-  let port =
-    match (getsockname s) with
-      ADDR_INET (addr, port) -> port
-    | _ -> port
-  in
-  listen s 1;
-  Printf.printf "DCC chat %s %d\n" (Naddr.encode haddr) port;
-  flush Pervasives.stdout;
-  accept_connection 
-    (fun t -> 
-      Printf.printf "DCC chat established\n";
-      flush Pervasives.stdout; 
-      chat_loop t) s; ()
-
-let chat_connect host port =
-  let s = socket PF_INET SOCK_STREAM 0 in
-  connect s (ADDR_INET (inet_addr_of_string (Naddr.decode host), port));
-  Printf.printf "DCC chat established\n";
-  flush Pervasives.stdout;
-  chat_loop s; ()
-  
-let getaddr_ext server =
-  let addr =
-    try (gethostbyname server).h_addr_list.(0) with
-      _ -> inet_addr_of_string "198.41.0.4"
-  and port = 7 in 
-  let s = socket PF_INET SOCK_DGRAM 0 in
-  connect s (ADDR_INET (addr, port));
-  match (getsockname s) with
-    ADDR_INET (addr, port) -> addr
-  | _ -> raise Not_found
-  
-let main () =
-  let a = ref [] in
-  let usage = usage "Usage" (Filename.basename Sys.argv.(0)) in
-  let speclist = [] in
-  Arg.parse speclist (fun x -> a := !a @ [x]) usage;
-  begin match !a with
-    "send" :: [ port; filename ] -> 
-      let port = 
-       try int_of_string port with
-         _ -> Arg.usage speclist usage; exit 1
-      in
-      send_file port filename;
-      exit 0; ()
-  | "receive" :: [ host; port; size; filename ] ->
-      let (port, size) = 
-       try 
-         int_of_string port, 
-         int_of_string size
-       with
-         _ -> Arg.usage speclist usage; exit 1
-      in
-      receive_file host port size filename;
-      exit 0; ()
-  | "chat" :: [ "listen"; port ] ->
-      let port =
-       try
-         int_of_string port
-       with
-         _ -> Arg.usage speclist usage; exit 1
-      in
-      chat_listen port;
-      exit 0; ()
-  | "chat" :: [ "connect"; host; port ] ->
-      let port =
-       try
-         int_of_string port
-       with
-         _ -> Arg.usage speclist usage; exit 1
-      in
-      chat_connect host port;
-      exit 0; ()
-  | _ -> Arg.usage speclist usage; exit 1
-  end
-
-let _ = Printexc.catch main ()
diff --git a/dcc/getaddrinfo.c b/dcc/getaddrinfo.c
deleted file mode 100644 (file)
index 18eeccf..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * getaddrinfo(2) emulation.
- * Copyright (C) 1988, 1989, 1992, 1993 Free Software Foundation, Inc.
-
- * Author: Daiki Ueno <daiki@kiss.kake.info.waseda.ac.jp>
-
-This file is not part of any package.
-
-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.
- */
-
-#ifndef HAVE_GETADDRINFO
-
-#include <stdlib.h>
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netdb.h>
-#include <netinet/in.h>
-
-#ifdef HAVE_NETINET6_IN6_H
-# include <netinet6/in6.h>
-#endif /* HAVE_NETINET6_IN6_H */
-
-#include "getaddrinfo.h"
-
-int getaddrinfo (hostname, servname, hints, res)
-  const char *hostname;
-  const char *servname;
-  const struct addrinfo *hints;
-  struct addrinfo **res;
-{
-  struct hostent *host = NULL;
-  struct servent *serv = NULL;
-  struct protoent *proto;
-  int port = 0;
-
-#if (defined (HAVE_SOCKADDR_IN6) && defined (INET6))
-  struct sockaddr_in6 *sin =
-    (struct sockaddr_in6 *) calloc (1, sizeof (struct sockaddr_in6));
-#else /* (defined (HAVE_SOCKADDR_IN6) && defined (INET6)) */
-  struct sockaddr_in *sin =
-    (struct sockaddr_in *) calloc (1, sizeof (struct sockaddr_in));
-#endif /* !(defined (HAVE_SOCKADDR_IN6) && defined (INET6)) */
-
-  struct addrinfo *ai = *res = 
-    (struct addrinfo *) calloc (1, sizeof (struct addrinfo));
-  
-  if ((~ hints->ai_flags & AI_PASSIVE) && hostname && 
-      (host = gethostbyname (hostname)) == NULL) {
-    perror ("gethostbyname");
-    return EAI_NONAME;
-  }
-
-  if (hints->ai_protocol && 
-      (proto = getprotobynumber (hints->ai_protocol)) == NULL) {
-    perror ("getprotobynumber");
-    return EAI_NONAME;
-  }
-
-  if (servname) 
-    if (isdigit (servname[0]))
-      port = atoi (servname);
-    else {
-      if ((serv = getservbyname (servname, proto->p_name)) == NULL) {
-       perror ("getservbyname");
-       return EAI_NONAME;
-      }
-      port = serv->s_port;
-    }
-  
-#if (defined (HAVE_SOCKADDR_IN6) && defined (INET6))
-  if (host)
-    memcpy (&sin->sin6_addr, host->h_addr, host->h_length);
-  sin->sin6_port = htons (port);
-#else /* (defined (HAVE_SOCKADDR_IN6) && defined (INET6)) */
-  if (host)
-    memcpy (&sin->sin_addr, host->h_addr, host->h_length);
-  sin->sin_port = htons (port);
-#endif /* !(defined (HAVE_SOCKADDR_IN6) && defined (INET6)) */
-
-  if (hints->ai_family == AF_UNSPEC)
-    ai->ai_family = host->h_addrtype;
-  else
-    ai->ai_family = hints->ai_family;
-#if (defined (HAVE_SOCKADDR_IN6) && defined (INET6))
-  sin->sin6_family = ai->ai_family;
-#else /* (defined (HAVE_SOCKADDR_IN6) && defined (INET6)) */
-  sin->sin_family = ai->ai_family;
-#endif /* !(defined (HAVE_SOCKADDR_IN6) && defined (INET6)) */
-
-  ai->ai_protocol = hints->ai_protocol;
-  ai->ai_socktype = hints->ai_socktype;
-  ai->ai_addrlen = sizeof (*sin);
-  ai->ai_addr = (struct sockaddr *)sin;
-
-  return 0;
-}
-
-void freeaddrinfo (ai)
-     struct addrinfo *ai;
-{
-  struct addrinfo *p;
-
-  while (ai != NULL) {
-    p = ai;
-    ai = ai->ai_next;
-    free (p);
-  }
-}
-
-#endif /* HAVE_GETADDRINFO */
diff --git a/dcc/getaddrinfo.h b/dcc/getaddrinfo.h
deleted file mode 100644 (file)
index d88883f..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * getaddrinfo(2) emulation.
- * Copyright (C) 1988, 1989, 1992, 1993 Free Software Foundation, Inc.
-
- * Author: Daiki Ueno <daiki@kiss.kake.info.waseda.ac.jp>
-
-This file is not part of any package.
-
-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.
- */
-
-struct addrinfo {
-  int ai_flags;
-  int ai_family;
-  int ai_socktype;
-  int ai_protocol;
-  size_t ai_addrlen;
-  char *ai_canonname;
-  struct sockaddr *ai_addr;
-  struct addrinfo *ai_next; 
-};
-
-/* Possible values for `ai_flags' field in `addrinfo' structure.  */
-# define AI_PASSIVE     1       /* Socket address is intended for `bind'.  */
-# define AI_CANONNAME   2       /* Request for canonical name.  */
-# define AI_NUMERICHOST 3       /* Don't use name resolution.  */
-
-/* Error values for `getaddrinfo' function.  */
-#define EAI_BADFLAGS   -1      /* Invalid value for `ai_flags' field.  */
-#define EAI_NONAME     -2      /* NAME or SERVICE is unknown.  */
-#define EAI_AGAIN      -3      /* Temporary failure in name resolution.  */
-#define EAI_FAIL       -4      /* Non-recoverable failure in name res.  */
-#define EAI_NODATA     -5      /* No address associated with NAME.  */
-#define EAI_FAMILY     -6      /* `ai_family' not supported.  */
-#define EAI_SOCKTYPE   -7      /* `ai_socktype' not supported.  */
-#define EAI_SERVICE    -8      /* SERVICE not supported for `ai_socktype'.  */
-#define EAI_ADDRFAMILY -9      /* Address family for NAME not supported.  */
-#define EAI_MEMORY     -10     /* Memory allocation failure.  */
-#define EAI_SYSTEM     -11     /* System error returned in `errno'.  */
-
-#define NI_MAXHOST      1025
-#define NI_MAXSERV      32
-
-#define NI_NUMERICHOST 1       /* Don't try to look up hostname.  */
-#define NI_NUMERICSERV 2       /* Don't convert port number to name.  */
-#define NI_NOFQDN      4       /* Only return nodename portion.  */
-#define NI_NAMEREQD    8       /* Don't return numeric addresses.  */
-#define NI_DGRAM       16      /* Look up UDP service rather than TCP.  */
-
-extern int getaddrinfo (const char *, const char *, const struct addrinfo *, 
-                       struct addrinfo **);
-
-extern void freeaddrinfo (struct addrinfo *ai);
-
-
-
diff --git a/dcc/getopt.c b/dcc/getopt.c
deleted file mode 100644 (file)
index b5caccd..0000000
+++ /dev/null
@@ -1,755 +0,0 @@
-/* Getopt for GNU.
-   NOTE: getopt is now part of the C library, so if you don't know what
-   "Keep this file name-space clean" means, talk to roland@gnu.ai.mit.edu
-   before changing it!
-
-   Copyright (C) 1987, 88, 89, 90, 91, 92, 93, 94
-       Free Software Foundation, Inc.
-
-   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.  */
-\f
-/* This tells Alpha OSF/1 not to define a getopt prototype in <stdio.h>.
-   Ditto for AIX 3.2 and <stdlib.h>.  */
-#ifndef _NO_PROTO
-#define _NO_PROTO
-#endif
-
-#ifdef HAVE_CONFIG_H
-#if defined (emacs) || defined (CONFIG_BROKETS)
-/* We use <config.h> instead of "config.h" so that a compilation
-   using -I. -I$srcdir will use ./config.h rather than $srcdir/config.h
-   (which it would do because it found this file in $srcdir).  */
-#include <config.h>
-#else
-#include "config.h"
-#endif
-#endif
-
-#ifndef __STDC__
-/* This is a separate conditional since some stdc systems
-   reject `defined (const)'.  */
-#ifndef const
-#define const
-#endif
-#endif
-
-#include <stdio.h>
-
-#ifdef HAVE_STRING_H
-#include <string.h>
-#endif
-
-/* Comment out all this code if we are using the GNU C Library, and are not
-   actually compiling the library itself.  This code is part of the GNU C
-   Library, but also included in many other GNU distributions.  Compiling
-   and linking in this code is a waste when using the GNU C library
-   (especially if it is a shared library).  Rather than having every GNU
-   program understand `configure --with-gnu-libc' and omit the object files,
-   it is simpler to just do this in the source for each such file.  */
-
-#if defined (_LIBC) || !defined (__GNU_LIBRARY__)
-
-
-/* This needs to come after some library #include
-   to get __GNU_LIBRARY__ defined.  */
-#ifdef __GNU_LIBRARY__
-/* Don't include stdlib.h for non-GNU C libraries because some of them
-   contain conflicting prototypes for getopt.  */
-#include <stdlib.h>
-#endif /* GNU C library.  */
-
-/* This version of `getopt' appears to the caller like standard Unix `getopt'
-   but it behaves differently for the user, since it allows the user
-   to intersperse the options with the other arguments.
-
-   As `getopt' works, it permutes the elements of ARGV so that,
-   when it is done, all the options precede everything else.  Thus
-   all application programs are extended to handle flexible argument order.
-
-   Setting the environment variable POSIXLY_CORRECT disables permutation.
-   Then the behavior is completely standard.
-
-   GNU application programs can use a third alternative mode in which
-   they can distinguish the relative order of options and other arguments.  */
-
-#include "getopt.h"
-
-/* For communication from `getopt' to the caller.
-   When `getopt' finds an option that takes an argument,
-   the argument value is returned here.
-   Also, when `ordering' is RETURN_IN_ORDER,
-   each non-option ARGV-element is returned here.  */
-
-char *optarg = NULL;
-
-/* Index in ARGV of the next element to be scanned.
-   This is used for communication to and from the caller
-   and for communication between successive calls to `getopt'.
-
-   On entry to `getopt', zero means this is the first call; initialize.
-
-   When `getopt' returns EOF, this is the index of the first of the
-   non-option elements that the caller should itself scan.
-
-   Otherwise, `optind' communicates from one call to the next
-   how much of ARGV has been scanned so far.  */
-
-/* XXX 1003.2 says this must be 1 before any call.  */
-int optind = 0;
-
-/* The next char to be scanned in the option-element
-   in which the last option character we returned was found.
-   This allows us to pick up the scan where we left off.
-
-   If this is zero, or a null string, it means resume the scan
-   by advancing to the next ARGV-element.  */
-
-static char *nextchar;
-
-/* Callers store zero here to inhibit the error message
-   for unrecognized options.  */
-
-int opterr = 1;
-
-/* Set to an option character which was unrecognized.
-   This must be initialized on some systems to avoid linking in the
-   system's own getopt implementation.  */
-
-int optopt = '?';
-
-/* Describe how to deal with options that follow non-option ARGV-elements.
-
-   If the caller did not specify anything,
-   the default is REQUIRE_ORDER if the environment variable
-   POSIXLY_CORRECT is defined, PERMUTE otherwise.
-
-   REQUIRE_ORDER means don't recognize them as options;
-   stop option processing when the first non-option is seen.
-   This is what Unix does.
-   This mode of operation is selected by either setting the environment
-   variable POSIXLY_CORRECT, or using `+' as the first character
-   of the list of option characters.
-
-   PERMUTE is the default.  We permute the contents of ARGV as we scan,
-   so that eventually all the non-options are at the end.  This allows options
-   to be given in any order, even with programs that were not written to
-   expect this.
-
-   RETURN_IN_ORDER is an option available to programs that were written
-   to expect options and other ARGV-elements in any order and that care about
-   the ordering of the two.  We describe each non-option ARGV-element
-   as if it were the argument of an option with character code 1.
-   Using `-' as the first character of the list of option characters
-   selects this mode of operation.
-
-   The special argument `--' forces an end of option-scanning regardless
-   of the value of `ordering'.  In the case of RETURN_IN_ORDER, only
-   `--' can cause `getopt' to return EOF with `optind' != ARGC.  */
-
-static enum
-{
-  REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER
-} ordering;
-
-/* Value of POSIXLY_CORRECT environment variable.  */
-static char *posixly_correct;
-\f
-#ifdef __GNU_LIBRARY__
-/* We want to avoid inclusion of string.h with non-GNU libraries
-   because there are many ways it can cause trouble.
-   On some systems, it contains special magic macros that don't work
-   in GCC.  */
-#include <string.h>
-#define        my_index        strchr
-#else
-
-/* Avoid depending on library functions or files
-   whose names are inconsistent.  */
-
-char *getenv ();
-
-static char *
-my_index (str, chr)
-     const char *str;
-     int chr;
-{
-  while (*str)
-    {
-      if (*str == chr)
-       return (char *) str;
-      str++;
-    }
-  return 0;
-}
-
-/* If using GCC, we can safely declare strlen this way.
-   If not using GCC, it is ok not to declare it.  */
-#ifdef __GNUC__
-/* Note that Motorola Delta 68k R3V7 comes with GCC but not stddef.h.
-   That was relevant to code that was here before.  */
-#ifndef __STDC__
-/* gcc with -traditional declares the built-in strlen to return int,
-   and has done so at least since version 2.4.5. -- rms.  */
-extern int strlen (const char *);
-#endif /* not __STDC__ */
-#endif /* __GNUC__ */
-
-#endif /* not __GNU_LIBRARY__ */
-\f
-/* Handle permutation of arguments.  */
-
-/* Describe the part of ARGV that contains non-options that have
-   been skipped.  `first_nonopt' is the index in ARGV of the first of them;
-   `last_nonopt' is the index after the last of them.  */
-
-static int first_nonopt;
-static int last_nonopt;
-
-/* Exchange two adjacent subsequences of ARGV.
-   One subsequence is elements [first_nonopt,last_nonopt)
-   which contains all the non-options that have been skipped so far.
-   The other is elements [last_nonopt,optind), which contains all
-   the options processed since those non-options were skipped.
-
-   `first_nonopt' and `last_nonopt' are relocated so that they describe
-   the new indices of the non-options in ARGV after they are moved.  */
-
-static void
-exchange (argv)
-     char **argv;
-{
-  int bottom = first_nonopt;
-  int middle = last_nonopt;
-  int top = optind;
-  char *tem;
-
-  /* Exchange the shorter segment with the far end of the longer segment.
-     That puts the shorter segment into the right place.
-     It leaves the longer segment in the right place overall,
-     but it consists of two parts that need to be swapped next.  */
-
-  while (top > middle && middle > bottom)
-    {
-      if (top - middle > middle - bottom)
-       {
-         /* Bottom segment is the short one.  */
-         int len = middle - bottom;
-         register int i;
-
-         /* Swap it with the top part of the top segment.  */
-         for (i = 0; i < len; i++)
-           {
-             tem = argv[bottom + i];
-             argv[bottom + i] = argv[top - (middle - bottom) + i];
-             argv[top - (middle - bottom) + i] = tem;
-           }
-         /* Exclude the moved bottom segment from further swapping.  */
-         top -= len;
-       }
-      else
-       {
-         /* Top segment is the short one.  */
-         int len = top - middle;
-         register int i;
-
-         /* Swap it with the bottom part of the bottom segment.  */
-         for (i = 0; i < len; i++)
-           {
-             tem = argv[bottom + i];
-             argv[bottom + i] = argv[middle + i];
-             argv[middle + i] = tem;
-           }
-         /* Exclude the moved top segment from further swapping.  */
-         bottom += len;
-       }
-    }
-
-  /* Update records for the slots the non-options now occupy.  */
-
-  first_nonopt += (optind - last_nonopt);
-  last_nonopt = optind;
-}
-
-/* Initialize the internal data when the first call is made.  */
-
-static const char *
-_getopt_initialize (optstring)
-     const char *optstring;
-{
-  /* Start processing options with ARGV-element 1 (since ARGV-element 0
-     is the program name); the sequence of previously skipped
-     non-option ARGV-elements is empty.  */
-
-  first_nonopt = last_nonopt = optind = 1;
-
-  nextchar = NULL;
-
-  posixly_correct = getenv ("POSIXLY_CORRECT");
-
-  /* Determine how to handle the ordering of options and nonoptions.  */
-
-  if (optstring[0] == '-')
-    {
-      ordering = RETURN_IN_ORDER;
-      ++optstring;
-    }
-  else if (optstring[0] == '+')
-    {
-      ordering = REQUIRE_ORDER;
-      ++optstring;
-    }
-  else if (posixly_correct != NULL)
-    ordering = REQUIRE_ORDER;
-  else
-    ordering = PERMUTE;
-
-  return optstring;
-}
-\f
-/* Scan elements of ARGV (whose length is ARGC) for option characters
-   given in OPTSTRING.
-
-   If an element of ARGV starts with '-', and is not exactly "-" or "--",
-   then it is an option element.  The characters of this element
-   (aside from the initial '-') are option characters.  If `getopt'
-   is called repeatedly, it returns successively each of the option characters
-   from each of the option elements.
-
-   If `getopt' finds another option character, it returns that character,
-   updating `optind' and `nextchar' so that the next call to `getopt' can
-   resume the scan with the following option character or ARGV-element.
-
-   If there are no more option characters, `getopt' returns `EOF'.
-   Then `optind' is the index in ARGV of the first ARGV-element
-   that is not an option.  (The ARGV-elements have been permuted
-   so that those that are not options now come last.)
-
-   OPTSTRING is a string containing the legitimate option characters.
-   If an option character is seen that is not listed in OPTSTRING,
-   return '?' after printing an error message.  If you set `opterr' to
-   zero, the error message is suppressed but we still return '?'.
-
-   If a char in OPTSTRING is followed by a colon, that means it wants an arg,
-   so the following text in the same ARGV-element, or the text of the following
-   ARGV-element, is returned in `optarg'.  Two colons mean an option that
-   wants an optional arg; if there is text in the current ARGV-element,
-   it is returned in `optarg', otherwise `optarg' is set to zero.
-
-   If OPTSTRING starts with `-' or `+', it requests different methods of
-   handling the non-option ARGV-elements.
-   See the comments about RETURN_IN_ORDER and REQUIRE_ORDER, above.
-
-   Long-named options begin with `--' instead of `-'.
-   Their names may be abbreviated as long as the abbreviation is unique
-   or is an exact match for some defined option.  If they have an
-   argument, it follows the option name in the same ARGV-element, separated
-   from the option name by a `=', or else the in next ARGV-element.
-   When `getopt' finds a long-named option, it returns 0 if that option's
-   `flag' field is nonzero, the value of the option's `val' field
-   if the `flag' field is zero.
-
-   The elements of ARGV aren't really const, because we permute them.
-   But we pretend they're const in the prototype to be compatible
-   with other systems.
-
-   LONGOPTS is a vector of `struct option' terminated by an
-   element containing a name which is zero.
-
-   LONGIND returns the index in LONGOPT of the long-named option found.
-   It is only valid when a long-named option has been found by the most
-   recent call.
-
-   If LONG_ONLY is nonzero, '-' as well as '--' can introduce
-   long-named options.  */
-
-int
-_getopt_internal (argc, argv, optstring, longopts, longind, long_only)
-     int argc;
-     char *const *argv;
-     const char *optstring;
-     const struct option *longopts;
-     int *longind;
-     int long_only;
-{
-  optarg = NULL;
-
-  if (optind == 0)
-    optstring = _getopt_initialize (optstring);
-
-  if (nextchar == NULL || *nextchar == '\0')
-    {
-      /* Advance to the next ARGV-element.  */
-
-      if (ordering == PERMUTE)
-       {
-         /* If we have just processed some options following some non-options,
-            exchange them so that the options come first.  */
-
-         if (first_nonopt != last_nonopt && last_nonopt != optind)
-           exchange ((char **) argv);
-         else if (last_nonopt != optind)
-           first_nonopt = optind;
-
-         /* Skip any additional non-options
-            and extend the range of non-options previously skipped.  */
-
-         while (optind < argc
-                && (argv[optind][0] != '-' || argv[optind][1] == '\0'))
-           optind++;
-         last_nonopt = optind;
-       }
-
-      /* The special ARGV-element `--' means premature end of options.
-        Skip it like a null option,
-        then exchange with previous non-options as if it were an option,
-        then skip everything else like a non-option.  */
-
-      if (optind != argc && !strcmp (argv[optind], "--"))
-       {
-         optind++;
-
-         if (first_nonopt != last_nonopt && last_nonopt != optind)
-           exchange ((char **) argv);
-         else if (first_nonopt == last_nonopt)
-           first_nonopt = optind;
-         last_nonopt = argc;
-
-         optind = argc;
-       }
-
-      /* If we have done all the ARGV-elements, stop the scan
-        and back over any non-options that we skipped and permuted.  */
-
-      if (optind == argc)
-       {
-         /* Set the next-arg-index to point at the non-options
-            that we previously skipped, so the caller will digest them.  */
-         if (first_nonopt != last_nonopt)
-           optind = first_nonopt;
-         return EOF;
-       }
-
-      /* If we have come to a non-option and did not permute it,
-        either stop the scan or describe it to the caller and pass it by.  */
-
-      if ((argv[optind][0] != '-' || argv[optind][1] == '\0'))
-       {
-         if (ordering == REQUIRE_ORDER)
-           return EOF;
-         optarg = argv[optind++];
-         return 1;
-       }
-
-      /* We have found another option-ARGV-element.
-        Skip the initial punctuation.  */
-
-      nextchar = (argv[optind] + 1
-                 + (longopts != NULL && argv[optind][1] == '-'));
-    }
-
-  /* Decode the current option-ARGV-element.  */
-
-  /* Check whether the ARGV-element is a long option.
-
-     If long_only and the ARGV-element has the form "-f", where f is
-     a valid short option, don't consider it an abbreviated form of
-     a long option that starts with f.  Otherwise there would be no
-     way to give the -f short option.
-
-     On the other hand, if there's a long option "fubar" and
-     the ARGV-element is "-fu", do consider that an abbreviation of
-     the long option, just like "--fu", and not "-f" with arg "u".
-
-     This distinction seems to be the most useful approach.  */
-
-  if (longopts != NULL
-      && (argv[optind][1] == '-'
-         || (long_only && (argv[optind][2] || !my_index (optstring, argv[optind][1])))))
-    {
-      char *nameend;
-      const struct option *p;
-      const struct option *pfound = NULL;
-      int exact = 0;
-      int ambig = 0;
-      int indfound;
-      int option_index;
-
-      for (nameend = nextchar; *nameend && *nameend != '='; nameend++)
-       /* Do nothing.  */ ;
-
-      /* Test all long options for either exact match
-        or abbreviated matches.  */
-      for (p = longopts, option_index = 0; p->name; p++, option_index++)
-       if (!strncmp (p->name, nextchar, nameend - nextchar))
-         {
-           if (nameend - nextchar == (int) strlen (p->name))
-             {
-               /* Exact match found.  */
-               pfound = p;
-               indfound = option_index;
-               exact = 1;
-               break;
-             }
-           else if (pfound == NULL)
-             {
-               /* First nonexact match found.  */
-               pfound = p;
-               indfound = option_index;
-             }
-           else
-             /* Second or later nonexact match found.  */
-             ambig = 1;
-         }
-
-      if (ambig && !exact)
-       {
-         if (opterr)
-           fprintf (stderr, "%s: option `%s' is ambiguous\n",
-                    argv[0], argv[optind]);
-         nextchar += strlen (nextchar);
-         optind++;
-         return '?';
-       }
-
-      if (pfound != NULL)
-       {
-         option_index = indfound;
-         optind++;
-         if (*nameend)
-           {
-             /* Don't test has_arg with >, because some C compilers don't
-                allow it to be used on enums.  */
-             if (pfound->has_arg)
-               optarg = nameend + 1;
-             else
-               {
-                 if (opterr)
-                   {
-                     if (argv[optind - 1][1] == '-')
-                       /* --option */
-                       fprintf (stderr,
-                                "%s: option `--%s' doesn't allow an argument\n",
-                                argv[0], pfound->name);
-                     else
-                       /* +option or -option */
-                       fprintf (stderr,
-                            "%s: option `%c%s' doesn't allow an argument\n",
-                            argv[0], argv[optind - 1][0], pfound->name);
-                   }
-                 nextchar += strlen (nextchar);
-                 return '?';
-               }
-           }
-         else if (pfound->has_arg == 1)
-           {
-             if (optind < argc)
-               optarg = argv[optind++];
-             else
-               {
-                 if (opterr)
-                   fprintf (stderr, "%s: option `%s' requires an argument\n",
-                            argv[0], argv[optind - 1]);
-                 nextchar += strlen (nextchar);
-                 return optstring[0] == ':' ? ':' : '?';
-               }
-           }
-         nextchar += strlen (nextchar);
-         if (longind != NULL)
-           *longind = option_index;
-         if (pfound->flag)
-           {
-             *(pfound->flag) = pfound->val;
-             return 0;
-           }
-         return pfound->val;
-       }
-
-      /* Can't find it as a long option.  If this is not getopt_long_only,
-        or the option starts with '--' or is not a valid short
-        option, then it's an error.
-        Otherwise interpret it as a short option.  */
-      if (!long_only || argv[optind][1] == '-'
-         || my_index (optstring, *nextchar) == NULL)
-       {
-         if (opterr)
-           {
-             if (argv[optind][1] == '-')
-               /* --option */
-               fprintf (stderr, "%s: unrecognized option `--%s'\n",
-                        argv[0], nextchar);
-             else
-               /* +option or -option */
-               fprintf (stderr, "%s: unrecognized option `%c%s'\n",
-                        argv[0], argv[optind][0], nextchar);
-           }
-         nextchar = (char *) "";
-         optind++;
-         return '?';
-       }
-    }
-
-  /* Look at and handle the next short option-character.  */
-
-  {
-    char c = *nextchar++;
-    char *temp = my_index (optstring, c);
-
-    /* Increment `optind' when we start to process its last character.  */
-    if (*nextchar == '\0')
-      ++optind;
-
-    if (temp == NULL || c == ':')
-      {
-       if (opterr)
-         {
-           if (posixly_correct)
-             /* 1003.2 specifies the format of this message.  */
-             fprintf (stderr, "%s: illegal option -- %c\n", argv[0], c);
-           else
-             fprintf (stderr, "%s: invalid option -- %c\n", argv[0], c);
-         }
-       optopt = c;
-       return '?';
-      }
-    if (temp[1] == ':')
-      {
-       if (temp[2] == ':')
-         {
-           /* This is an option that accepts an argument optionally.  */
-           if (*nextchar != '\0')
-             {
-               optarg = nextchar;
-               optind++;
-             }
-           else
-             optarg = NULL;
-           nextchar = NULL;
-         }
-       else
-         {
-           /* This is an option that requires an argument.  */
-           if (*nextchar != '\0')
-             {
-               optarg = nextchar;
-               /* If we end this ARGV-element by taking the rest as an arg,
-                  we must advance to the next element now.  */
-               optind++;
-             }
-           else if (optind == argc)
-             {
-               if (opterr)
-                 {
-                   /* 1003.2 specifies the format of this message.  */
-                   fprintf (stderr, "%s: option requires an argument -- %c\n",
-                            argv[0], c);
-                 }
-               optopt = c;
-               if (optstring[0] == ':')
-                 c = ':';
-               else
-                 c = '?';
-             }
-           else
-             /* We already incremented `optind' once;
-                increment it again when taking next ARGV-elt as argument.  */
-             optarg = argv[optind++];
-           nextchar = NULL;
-         }
-      }
-    return c;
-  }
-}
-
-int
-getopt (argc, argv, optstring)
-     int argc;
-     char *const *argv;
-     const char *optstring;
-{
-  return _getopt_internal (argc, argv, optstring,
-                          (const struct option *) 0,
-                          (int *) 0,
-                          0);
-}
-
-#endif /* _LIBC or not __GNU_LIBRARY__.  */
-\f
-#ifdef TEST
-
-/* Compile with -DTEST to make an executable for use in testing
-   the above definition of `getopt'.  */
-
-int
-main (argc, argv)
-     int argc;
-     char **argv;
-{
-  int c;
-  int digit_optind = 0;
-
-  while (1)
-    {
-      int this_option_optind = optind ? optind : 1;
-
-      c = getopt (argc, argv, "abc:d:0123456789");
-      if (c == EOF)
-       break;
-
-      switch (c)
-       {
-       case '0':
-       case '1':
-       case '2':
-       case '3':
-       case '4':
-       case '5':
-       case '6':
-       case '7':
-       case '8':
-       case '9':
-         if (digit_optind != 0 && digit_optind != this_option_optind)
-           printf ("digits occur in two different argv-elements.\n");
-         digit_optind = this_option_optind;
-         printf ("option %c\n", c);
-         break;
-
-       case 'a':
-         printf ("option a\n");
-         break;
-
-       case 'b':
-         printf ("option b\n");
-         break;
-
-       case 'c':
-         printf ("option c with value `%s'\n", optarg);
-         break;
-
-       case '?':
-         break;
-
-       default:
-         printf ("?? getopt returned character code 0%o ??\n", c);
-       }
-    }
-
-  if (optind < argc)
-    {
-      printf ("non-option ARGV-elements: ");
-      while (optind < argc)
-       printf ("%s ", argv[optind++]);
-      printf ("\n");
-    }
-
-  exit (0);
-}
-
-#endif /* TEST */
diff --git a/dcc/getopt.h b/dcc/getopt.h
deleted file mode 100644 (file)
index c872f41..0000000
+++ /dev/null
@@ -1,125 +0,0 @@
-/* Declarations for getopt.
-   Copyright (C) 1989, 1990, 1991, 1992, 1993 Free Software Foundation, Inc.
-
-   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.  */
-
-#ifndef _GETOPT_H
-#define _GETOPT_H 1
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* For communication from `getopt' to the caller.
-   When `getopt' finds an option that takes an argument,
-   the argument value is returned here.
-   Also, when `ordering' is RETURN_IN_ORDER,
-   each non-option ARGV-element is returned here.  */
-
-extern char *optarg;
-
-/* Index in ARGV of the next element to be scanned.
-   This is used for communication to and from the caller
-   and for communication between successive calls to `getopt'.
-
-   On entry to `getopt', zero means this is the first call; initialize.
-
-   When `getopt' returns EOF, this is the index of the first of the
-   non-option elements that the caller should itself scan.
-
-   Otherwise, `optind' communicates from one call to the next
-   how much of ARGV has been scanned so far.  */
-
-extern int optind;
-
-/* Callers store zero here to inhibit the error message `getopt' prints
-   for unrecognized options.  */
-
-extern int opterr;
-
-/* Set to an option character which was unrecognized.  */
-
-extern int optopt;
-
-/* Describe the long-named options requested by the application.
-   The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector
-   of `struct option' terminated by an element containing a name which is
-   zero.
-
-   The field `has_arg' is:
-   no_argument         (or 0) if the option does not take an argument,
-   required_argument   (or 1) if the option requires an argument,
-   optional_argument   (or 2) if the option takes an optional argument.
-
-   If the field `flag' is not NULL, it points to a variable that is set
-   to the value given in the field `val' when the option is found, but
-   left unchanged if the option is not found.
-
-   To have a long-named option do something other than set an `int' to
-   a compiled-in constant, such as set a value from `optarg', set the
-   option's `flag' field to zero and its `val' field to a nonzero
-   value (the equivalent single-letter option character, if there is
-   one).  For long options that have a zero `flag' field, `getopt'
-   returns the contents of the `val' field.  */
-
-struct option
-{
-#if    __STDC__
-  const char *name;
-#else
-  char *name;
-#endif
-  /* has_arg can't be an enum because some compilers complain about
-     type mismatches in all the code that assumes it is an int.  */
-  int has_arg;
-  int *flag;
-  int val;
-};
-
-/* Names for the values of the `has_arg' field of `struct option'.  */
-
-#define        no_argument             0
-#define required_argument      1
-#define optional_argument      2
-
-#if __STDC__
-#if defined(__GNU_LIBRARY__)
-/* Many other libraries have conflicting prototypes for getopt, with
-   differences in the consts, in stdlib.h.  To avoid compilation
-   errors, only prototype getopt for the GNU C library.  */
-extern int getopt (int argc, char *const *argv, const char *shortopts);
-#else /* not __GNU_LIBRARY__ */
-extern int getopt ();
-#endif /* not __GNU_LIBRARY__ */
-extern int getopt_long (int argc, char *const *argv, const char *shortopts,
-                       const struct option *longopts, int *longind);
-extern int getopt_long_only (int argc, char *const *argv,
-                            const char *shortopts,
-                            const struct option *longopts, int *longind);
-
-/* Internal only.  Users should not call this directly.  */
-extern int _getopt_internal (int argc, char *const *argv,
-                            const char *shortopts,
-                            const struct option *longopts, int *longind,
-                            int long_only);
-#else /* not __STDC__ */
-extern int getopt ();
-extern int getopt_long ();
-extern int getopt_long_only ();
-
-extern int _getopt_internal ();
-#endif /* not __STDC__ */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* _GETOPT_H */
diff --git a/dcc/getopt1.c b/dcc/getopt1.c
deleted file mode 100644 (file)
index a4f1976..0000000
+++ /dev/null
@@ -1,183 +0,0 @@
-/* getopt_long and getopt_long_only entry points for GNU getopt.
-   Copyright (C) 1987, 88, 89, 90, 91, 92, 1993
-       Free Software Foundation, Inc.
-
-   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.  */
-\f
-#ifdef HAVE_CONFIG_H
-#if defined (emacs) || defined (CONFIG_BROKETS)
-/* We use <config.h> instead of "config.h" so that a compilation
-   using -I. -I$srcdir will use ./config.h rather than $srcdir/config.h
-   (which it would do because it found this file in $srcdir).  */
-#include <config.h>
-#else
-#include "config.h"
-#endif
-#endif
-
-#include "getopt.h"
-
-#ifndef __STDC__
-/* This is a separate conditional since some stdc systems
-   reject `defined (const)'.  */
-#ifndef const
-#define const
-#endif
-#endif
-
-#include <stdio.h>
-
-/* Comment out all this code if we are using the GNU C Library, and are not
-   actually compiling the library itself.  This code is part of the GNU C
-   Library, but also included in many other GNU distributions.  Compiling
-   and linking in this code is a waste when using the GNU C library
-   (especially if it is a shared library).  Rather than having every GNU
-   program understand `configure --with-gnu-libc' and omit the object files,
-   it is simpler to just do this in the source for each such file.  */
-
-#if defined (_LIBC) || !defined (__GNU_LIBRARY__)
-
-
-/* This needs to come after some library #include
-   to get __GNU_LIBRARY__ defined.  */
-#ifdef __GNU_LIBRARY__
-#include <stdlib.h>
-#else
-char *getenv ();
-#endif
-
-#ifndef        NULL
-#define NULL 0
-#endif
-
-int
-getopt_long (argc, argv, options, long_options, opt_index)
-     int argc;
-     char *const *argv;
-     const char *options;
-     const struct option *long_options;
-     int *opt_index;
-{
-  return _getopt_internal (argc, argv, options, long_options, opt_index, 0);
-}
-
-/* Like getopt_long, but '-' as well as '--' can indicate a long option.
-   If an option that starts with '-' (not '--') doesn't match a long option,
-   but does match a short option, it is parsed as a short option
-   instead.  */
-
-int
-getopt_long_only (argc, argv, options, long_options, opt_index)
-     int argc;
-     char *const *argv;
-     const char *options;
-     const struct option *long_options;
-     int *opt_index;
-{
-  return _getopt_internal (argc, argv, options, long_options, opt_index, 1);
-}
-
-
-#endif /* _LIBC or not __GNU_LIBRARY__.  */
-\f
-#ifdef TEST
-
-#include <stdio.h>
-
-int
-main (argc, argv)
-     int argc;
-     char **argv;
-{
-  int c;
-  int digit_optind = 0;
-
-  while (1)
-    {
-      int this_option_optind = optind ? optind : 1;
-      int option_index = 0;
-      static struct option long_options[] =
-      {
-       {"add", 1, 0, 0},
-       {"append", 0, 0, 0},
-       {"delete", 1, 0, 0},
-       {"verbose", 0, 0, 0},
-       {"create", 0, 0, 0},
-       {"file", 1, 0, 0},
-       {0, 0, 0, 0}
-      };
-
-      c = getopt_long (argc, argv, "abc:d:0123456789",
-                      long_options, &option_index);
-      if (c == EOF)
-       break;
-
-      switch (c)
-       {
-       case 0:
-         printf ("option %s", long_options[option_index].name);
-         if (optarg)
-           printf (" with arg %s", optarg);
-         printf ("\n");
-         break;
-
-       case '0':
-       case '1':
-       case '2':
-       case '3':
-       case '4':
-       case '5':
-       case '6':
-       case '7':
-       case '8':
-       case '9':
-         if (digit_optind != 0 && digit_optind != this_option_optind)
-           printf ("digits occur in two different argv-elements.\n");
-         digit_optind = this_option_optind;
-         printf ("option %c\n", c);
-         break;
-
-       case 'a':
-         printf ("option a\n");
-         break;
-
-       case 'b':
-         printf ("option b\n");
-         break;
-
-       case 'c':
-         printf ("option c with value `%s'\n", optarg);
-         break;
-
-       case 'd':
-         printf ("option d with value `%s'\n", optarg);
-         break;
-
-       case '?':
-         break;
-
-       default:
-         printf ("?? getopt returned character code 0%o ??\n", c);
-       }
-    }
-
-  if (optind < argc)
-    {
-      printf ("non-option ARGV-elements: ");
-      while (optind < argc)
-       printf ("%s ", argv[optind++]);
-      printf ("\n");
-    }
-
-  exit (0);
-}
-
-#endif /* TEST */
diff --git a/dcc/naddr.ml b/dcc/naddr.ml
deleted file mode 100644 (file)
index 24179a9..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-(* Network address handling module.
-
-This file is part of Liece.                                          
-
-Author: Daiki Ueno <daiki@kake.info.waseda.ac.jp>                    
-Created: 1998-09-28                                               
-Revised: 1999-01-28                                               
-Keywords: IRC, liece, DCC                                        
-
-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, Inc., 59 Temple Place - Suite 330,         
-Boston, MA 02111-1307, USA.  *)
-
-open Num
-open Big_int
-open Str
-
-let encode str =
-  let _ = string_match 
-      (regexp "\([0-9]+\)\.\([0-9]+\)\.\([0-9]+\)\.\([0-9]+\)") str 0 in
-  let (a1, a2, a3, a4) = 
-    try 
-      int_of_string (matched_group 1 str), 
-      int_of_string (matched_group 2 str), 
-      int_of_string (matched_group 3 str), 
-      int_of_string (matched_group 4 str)
-    with
-      _ -> 
-       Printf.eprintf "Invalid address\n"; flush Pervasives.stdout; exit 1;
-  in
-  let (s1, s2, s3, s4) =
-    Int (1 lsl 24), 
-    Int (1 lsl 16), 
-    Int (1 lsl 8), 
-    Int 1
-  in
-  let ul =
-    ((Int a1) */ s1) +/ ((Int a2) */ s2) +/ ((Int a3) */ s3) +/ (Int a4)
-  in
-  string_of_num ul
-
-let decode str =
-  let ul = 
-    try
-      num_of_string str 
-    with
-      _ ->
-       Printf.eprintf "Invalid address\n"; flush Pervasives.stdout; exit 1;
-  in
-  let (s1, s2, s3, s4) =
-    Int (1 lsl 24), 
-    Int (1 lsl 16), 
-    Int (1 lsl 8), 
-    Int 1
-  in
-  let (a1, a2, a3, a4) = 
-    floor_num (ul // s1), 
-    floor_num ((mod_num ul s1) // s2), 
-    floor_num ((mod_num (mod_num ul s1) s2) // s3), 
-    (mod_num (mod_num (mod_num ul s1) s2) s3)
-  in
-  Printf.sprintf "%s.%s.%s.%s" 
-    (string_of_num a1) 
-    (string_of_num a2) 
-    (string_of_num a3) 
-    (string_of_num a4)
diff --git a/dcc/naddr.mli b/dcc/naddr.mli
deleted file mode 100644 (file)
index 0c9917a..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-(* Network address handling module.
-
-This file is part of Liece.                                          
-
-Author: Daiki Ueno <daiki@kake.info.waseda.ac.jp>                    
-Created: 1998-09-28                                               
-Revised: 1999-01-28                                               
-Keywords: IRC, liece, DCC                                        
-
-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, Inc., 59 Temple Place - Suite 330,         
-Boston, MA 02111-1307, USA.  *)
-
-val encode : string -> string;;
-    (* [Naddr.encode s] encodes the XXX.XXX.XXX.XXX address [s] into
-       another string packed by network byte order. *)
-
-val decode : string -> string;;
-    (* [Naddr.decode s] does the inverse job than [Naddr.encode],
-       restoring initial expression of address. *)
diff --git a/dcc/tcp.c b/dcc/tcp.c
deleted file mode 100644 (file)
index 266b1ad..0000000
--- a/dcc/tcp.c
+++ /dev/null
@@ -1,229 +0,0 @@
-/*
- * TCP/IP stream emulation for GNU Emacs.
- * Copyright (C) 1988, 1989, 1992, 1993 Free Software Foundation, Inc.
-
- * Author: Masanobu Umeda <umerin@mse.kyutech.ac.jp>
- *         Daiki Ueno <daiki@kiss.kake.info.waseda.ac.jp>
-
-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.
- */
-
-#include <sys/types.h>
-#include <sys/time.h>
-#include <sys/socket.h>
-#include <sys/file.h>
-#include <sys/ioctl.h>
-#include <sys/stat.h>
-#include <sys/time.h>
-#include <netdb.h>
-#include <stdio.h>
-#include <signal.h>
-#include <fcntl.h>
-#include <netinet/in.h>
-#define _GNU_SOURCE
-#include <getopt.h>
-
-#ifdef HAVE_SOCKS_H
-#include <socks.h>
-#endif 
-
-#ifndef HAVE_GETADDRINFO
-#include "getaddrinfo.h"
-#endif /* !HAVE_GETADDRINFO */
-
-#ifdef HAVE_BASENAME
-# ifdef HAVE_LIBGEN_H
-#  include <libgen.h>
-#  ifdef basename
-#   undef basename
-#  endif
-# endif
-# include <string.h>
-#else
-# define basename(path) (rindex((path), '/') + 1)
-#endif
-
-#ifndef NI_MAXHOST
-# define NI_MAXHOST 1025
-#endif
-
-static char *progname;
-
-void version () {
-       printf("%s (Liece) 1.4.0\n"
-              "Copyright (C) 1998, 1999 Daiki Ueno\n"
-              "This is free software; see the source for copying conditions.  There is NO\n"
-              "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n", 
-              progname);
-}
-
-void usage() {
-  printf("Usage: %s [options] host [service]\n", progname);
-}
-
-\f
-main (argc, argv)
-  int argc;
-  char *argv[];
-{
-  struct protoent *proto;
-
-  struct addrinfo *in, hints;
-
-  char *hostname = NULL, *service = "ircd";
-  int family, port;
-  fd_set *readfds, *writefds;
-  int server, emacsIn = fileno (stdin), emacsOut = fileno (stdout); 
-  char buffer[1024], *retry;
-  int nbuffer, wret, false = 0;
-  int c;
-  
-  progname = (char *) basename (argv[0]);
-
-  while (1) {
-    int this_option_optind = optind ? optind : 1;
-    int option_index = 0;
-    static struct option long_options[] =      {
-      {"version", 0, 0, 'v'},
-      {"help", 0, 0, 'h'},
-      {0, 0, 0, 0}
-    };
-    
-    c = getopt_long (argc, argv, "vh", long_options, &option_index);
-    if (c == -1)
-      break;
-    
-    switch (c) {
-    case 'v':
-      version();
-      exit(1);
-      break;
-    case 'h':
-      usage();
-      exit(1);
-      break;
-    default:
-      break;
-    }
-  }
-  
-  if (argc < 2)
-    {
-      usage();
-      exit (1);
-    }
-  if (argc >= 2)
-    hostname = argv[1];
-  if (argc >= 3)
-    service = argv[2];
-  
-  if ((proto = getprotobyname ("tcp")) == NULL) {
-    perror ("getprotobyname");
-    exit (1);
-  }
-  
-  memset (&hints, 0, sizeof (hints));
-  hints.ai_family = AF_UNSPEC;
-  hints.ai_socktype = SOCK_STREAM;
-  hints.ai_protocol = proto->p_proto;
-  if (getaddrinfo (hostname, service, &hints, &in) < 0) {
-    perror ("getaddrinfo");
-    exit (1);
-  }
-
-  if ((server = socket (in->ai_family, in->ai_socktype, 0)) < 0) {
-    perror ("socket");
-    exit (1);
-  }
-
-  if (setsockopt (server, SOL_SOCKET, SO_REUSEADDR, 
-                 (const char *) &false, sizeof (false))) {
-    perror ("setsockopt");
-    exit (1);
-  }
-
-  if (connect (server, in->ai_addr, in->ai_addrlen) < 0) {
-    perror ("connect");
-    close (server);
-    exit (1);
-  }
-
-#ifdef O_NDELAY
-  fcntl (server, F_SETFL, O_NDELAY);
-#endif /* O_NDELAY */
-
-  /* Connection established. */
-
-  readfds = (fd_set *) calloc(server + 1, sizeof (fd_mask));
-  writefds = (fd_set *) calloc(server + 1, sizeof (fd_mask));
-
-  while (1)
-    {
-      FD_SET (server, readfds);
-      FD_SET (emacsIn, readfds);
-      if (select (server+1, readfds, NULL, NULL, NULL) == -1)
-       {
-         perror ("select");
-         exit (1);
-       }
-      if (FD_ISSET (emacsIn, readfds))
-       {
-         /* From Emacs */
-         nbuffer = read (emacsIn, buffer, sizeof buffer -1);
-
-          if (nbuffer == 0)
-           goto finish;
-         for (retry = buffer; nbuffer > 0; nbuffer -= wret, retry += wret)
-           {
-             FD_SET (server, writefds);
-             if (select (server+1, NULL, writefds, NULL, NULL) == -1)
-               {
-                 perror ("select");
-                 exit (1);
-               }
-             wret = write (server, retry, nbuffer);
-             if (wret < 0) goto finish;
-           }
-       }
-      if (FD_ISSET (server, readfds))
-       {
-         /* From NNTP server */
-         nbuffer = read (server, buffer, sizeof buffer -1);
-         if (nbuffer == 0)
-           goto finish;
-         for (retry = buffer; nbuffer > 0; nbuffer -= wret, retry += wret)
-           {
-             FD_SET (emacsOut, writefds);
-             if (select (emacsOut+1, NULL, writefds, NULL, NULL) == -1)
-               {
-                 perror ("select");
-                 exit (1);
-               }
-             wret = write (emacsOut, retry, nbuffer);
-             if (wret < 0) goto finish;
-           }
-       }
-    }
-
-  /* End of communication. */
- finish:
-  close (server);
-  close (emacsIn);
-  close (emacsOut);
-  exit (0);
-}
diff --git a/doc/.cvsignore b/doc/.cvsignore
deleted file mode 100644 (file)
index b1c24a0..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-Makefile.in
-Makefile
-liece.info
-xslt
-texi_xml
diff --git a/doc/Makefile.am b/doc/Makefile.am
deleted file mode 100644 (file)
index c061e04..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-TEXI_XML = ./texi_xml
-EXTRA_DIST = README liece.xml liece.info
-DISTCLEANFILES = liece.info
-CLEANFILES = *~
-
-SUFFIXES = .xml .txml .texi .info
-
-DOCBOOK2TEXIXSLT_DIR = xslt/texi
-SAXON = java -classpath $(CLASSPATH):$(DOCBOOK2TEXIXSLT_DIR) com.icl.saxon.StyleSheet
-
-all: liece.info
-
-%.txml: %.xml
-       $(SAXON) -o $@ $*.xml $(DOCBOOK2TEXIXSLT_DIR)/docbook.xsl
-
-%.texi:        %.txml
-       $(TEXI_XML) $*.txml
-       -recode -df utf8..texi < $@ > tmp
-       mv tmp $@
diff --git a/doc/README b/doc/README
deleted file mode 100644 (file)
index 41b2d92..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-This is the Liece documentation in DocBook XML format README.
-===========================================================
-
-We are rewriting the Liece documentation in DocBook XML format.
-For texinfo output, you have to install docbook2X[1] and SAXON[2] (the
-XSLT processor) and follow the instructions below:
-
-(0) Install a Java VM.
-(1) Add `saxon.jar' to CLASSPATH.
-(2) Copy docbook2X/texi_xml and docbook2X/xslt in this directory.
-(3) Run `make' in the top directory.
-
-Footnotes: 
-[1]  http://docbook2x.sourceforge.net/
-
-[2]  http://users.iclway.co.uk/mhkay/saxon/
diff --git a/doc/liece.xml b/doc/liece.xml
deleted file mode 100644 (file)
index f4e5403..0000000
+++ /dev/null
@@ -1,268 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
-       "http://docbook.org/xml/4.1.2/docbookx.dtd" [
-<!ENTITY cvsroot-pserver ":pserver:anonymousl@cvs.m17n.org:/cvs/root">
-<!ENTITY liece-version "1.4.4">
-<!ENTITY liece-command-prefix
-"<keycombo><keycap>C</keycap><keycap>c</keycap></keycombo>">
-]>
-
-<article id="index">
-  <articleinfo>
-    <title>Liece</title>
-    <abstract>
-      <para>Emacs IRC client.</para>
-    </abstract>
-    <author>
-      <firstname>Daiki</firstname>
-      <surname>Ueno</surname>
-      <affiliation>
-       <address format="linespecific">
-         <email>ueno@unixuser.org</email>
-       </address>
-      </affiliation>
-    </author>
-    <date>2000/09/12</date>
-    <releaseinfo>Version 1.4.4</releaseinfo>
-  </articleinfo>
-
-  <para>
-    This manual documents <firstterm>Liece</firstterm> &liece-version;,
-    the Emacs IRC client.  You may find the latest information from
-    <ulink url="http://www.unixuser.org/~ueno/liece/">
-      <firstterm>Liece</firstterm> official home page.
-    </ulink>
-  </para>
-
-  <sect1 id="overview">
-    <sect1info>
-      <abstract>
-       <para>Summary of <firstterm>Liece</firstterm> features</para>
-      </abstract>
-    </sect1info>
-    <title>Overview</title>
-
-    <para>
-      <firstterm>Liece</firstterm>, the Emacs IRC client,
-      provides a user-friendly interface to access IRC servers.
-      <footnote>
-       Internet Relay Chat: RFC 1459, RFC 2810, RFC 2811, RFC 2812, RFC 2813.
-      </footnote>
-    </para>
-    <para>Currently <firstterm>Liece</firstterm> has following features:</para>
-    <itemizedlist>
-      <listitem>
-       <para>
-         Clear user interface inspired by
-         <ulink url="http://www.chocoa.org/">CHOCOA</ulink>
-       </para>
-      </listitem>
-      <listitem><para>Lightweight operation</para></listitem>
-      <listitem><para>Dynamic window configuration</para></listitem>
-      <listitem><para>Collect URLs automatically</para></listitem>
-    </itemizedlist>
-  </sect1>
-
-  <sect1 id="install">
-    <sect1info>
-      <abstract>
-       <para>How to install <firstterm>Liece</firstterm></para>
-      </abstract>
-    </sect1info>
-    <title>Installation</title>
-
-    <para>
-      
-    </para>
-
-    <para>
-      The installation procedure depends on the Emacs flavor you are
-      running.  Anyway <firstterm>Liece</firstterm> &liece-version;
-      should work on:
-    </para>
-
-    <simplelist type="vert">
-      <member>Emacs 20.7 and up.</member>
-      <member>XEmacs 21.1.12 and up.</member>
-    </simplelist>
-
-    <sect2>
-      <sect2info>
-       <abstract>
-         <para>Complicated stuff you may have to do.</para>
-       </abstract>
-      </sect2info>
-      <title>Prerequisites</title>
-      <para>
-       <firstterm>Liece</firstterm> &liece-version; uses APEL and FLIM,
-       you have to install them in this order.
-       Generally <command moreinfo="none">make install</command> will do the job.
-      </para>
-      <segmentedlist>
-       <segtitle>Package</segtitle>
-       <segtitle>Author's version</segtitle>
-       <seglistitem>
-         <seg>
-           <ulink url="ftp://ftp.m17n.org/pub/mule/apel/">APEL (A Portable Emacs Library)</ulink></seg>
-         <seg>10.2 or later</seg>
-       </seglistitem>
-       <seglistitem>
-         <seg>
-           <ulink url="ftp://ftp.m17n.org/pub/mule/flim/">FLIM</ulink>
-         </seg>
-         <seg>1.12 or later</seg>
-       </seglistitem>
-      </segmentedlist>
-    </sect2>
-    <sect2>
-      <title>Compilation</title>
-      <para>
-       In the top level directory of the <firstterm>Liece</firstterm> distribution,
-       run the script <filename moreinfo="none">configure</filename> as follows:
-      </para>
-      <informalexample>
-       <screen format="linespecific">
-<prompt moreinfo="none">$</prompt> ./configure [CONFIGURATION-NAME] [--OPTION[=VALUE]] ...
-       </screen>
-      </informalexample>
-      <para>
-       If you are using XEmacs and want to install to XEmacs package directory,
-       specify <option>--enable-package</option>.
-       If you wish to build with a specific version of Emacs,
-       use <option>--with-emacs</option>.
-      </para>
-      <para>
-       When it is done, <filename moreinfo="none">configure</filename>
-       just creates the files:
-      </para>
-      <simplelist type="vert">
-       <member>Makefile</member>
-       <member>lisp/Makefile</member>
-       <member>dcc/Makefile</member>
-       <member>doc/Makefile</member>
-       <member>etc/Makefile</member>
-      </simplelist>
-      <para>
-       Then run <command moreinfo="none">make</command> to finish building
-       <firstterm>Liece</firstterm> in the standard way.
-       You can install the package with
-       <command moreinfo="none">make install</command>.
-      </para>
-    </sect2>
-  </sect1>
-
-  <sect1 id="usage">
-    <sect1info>
-      <abstract>
-       <para>The various usage possibilities</para>
-      </abstract>
-    </sect1info>
-    <title>Usage</title>
-    <sect2>
-      <sect2info>
-       <abstract>
-         <para>Finding an IRC server and connecting to it</para>
-       </abstract>
-      </sect2info>
-      <title>Servers</title>
-      <para>
-       <firstterm>Liece</firstterm> comes with a list of servers
-       held in the variable <varname>liece-server-alist</varname>.
-      </para>
-    </sect2>
-    <sect2>
-      <sect2info>
-       <abstract>
-         <para>Starting <firstterm>Liece</firstterm></para>
-       </abstract>
-      </sect2info>
-      <title>Start <firstterm>Liece</firstterm></title>
-      <para>
-       If installation and configuration worked well,
-       you can invoke <firstterm>Liece</firstterm> typing
-       <command moreinfo="none">
-         <keycombo moreinfo="none">
-           <keycap moreinfo="none">M</keycap>
-           <keycap moreinfo="none">x</keycap>
-         </keycombo>
-         liece
-       </command>
-       in Emacs.
-      </para>
-    </sect2>
-    <sect2>
-      <title>Basic Key Bindings</title>
-      <para>
-       Once join a channel, if you type normal text then you will see it come up
-       in the channel with your nick before it.
-       If anyone else was in the channel they would also see that. 
-      </para>
-      <para>
-       If you are familiar with IRC, you can issue commands with leading
-       <command moreinfo="none">
-         &liece-command-prefix;<keycap moreinfo="none">/</keycap>
-       </command>, while there are many shortcut:
-      </para>
-      <variablelist>
-       <varlistentry>
-         <term>&liece-command-prefix;<keycap moreinfo="none">j</keycap></term>
-         <listitem>
-           <para>
-             Join one or more comma separated channels with given optional keys.
-           </para>
-         </listitem>
-       </varlistentry>
-       <varlistentry>
-         <term>&liece-command-prefix;<keycap moreinfo="none">n</keycap></term>
-         <listitem>
-           <para>Change your nickname.</para>
-         </listitem>
-       </varlistentry>
-       <varlistentry>
-         <term>&liece-command-prefix;<keycap moreinfo="none">q</keycap></term>
-         <listitem>
-           <para>
-             Quit <firstterm>Liece</firstterm>.
-             You can specify the comment by a prefix argument.
-           </para>
-         </listitem>
-       </varlistentry>
-       <varlistentry>
-         <term>&liece-command-prefix;<keycap moreinfo="none">p</keycap></term>
-         <listitem>
-           <para>
-             Part one or more channels.
-             You can specify the comment by a prefix argument.
-           </para>
-         </listitem>
-       </varlistentry>
-      </variablelist>
-    </sect2>
-  </sect1>
-
-  <sect1 id="copying">
-    <sect1info>
-      <abstract>
-       <para>Copyright and warranty</para>
-      </abstract>
-    </sect1info>
-    <title>Copying</title>
-    <para>
-      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 of the License, or
-      (at your option) any later version.
-    </para>
-    <para>
-      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.
-    </para>
-    <para>
-      You should have received a copy of the GNU General Public License
-      along with this program; if not, write to the Free Software
-      Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-    </para>
-  </sect1>
-</article>
diff --git a/doc/texinfo.tex b/doc/texinfo.tex
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/etc/.cvsignore b/etc/.cvsignore
deleted file mode 100644 (file)
index 3dda729..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-Makefile.in
-Makefile
diff --git a/etc/Makefile.am b/etc/Makefile.am
deleted file mode 100644 (file)
index 99cf0b3..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-ICONS = \
-       icons/back.xpm \
-       icons/ball.blank.xpm \
-       icons/ball.gray.xpm \
-       icons/ball.red.xpm \
-       icons/naruto.blank.xpm \
-       icons/naruto.gray.xpm \
-       icons/naruto.red.xpm \
-       icons/crypt.xpm \
-       icons/encrypt.xpm \
-       icons/forward.xpm \
-       icons/home.xpm \
-       icons/icons.gif \
-       icons/icons.xpm \
-       icons/liece-pointer.xbm \
-       icons/liece-pointer.xpm \
-       icons/key.xpm \
-       icons/location.xpm \
-       icons/pindown.xpm \
-       icons/print.xpm \
-       icons/reload.xpm \
-       icons/search.xpm \
-       icons/stop.xpm \
-       icons/balloon.xpm
-CATALOGS = po/ja.po
-STYLES = \
-       styles/bottom \
-       styles/middle \
-       styles/top
-TARGETS = $(ICONS) $(CATALOGS) $(STYLES)
-
-if USE_PACKAGE
-icondir = $(packagedir)/etc/$(PACKAGE)/icons
-catalogdir = $(packagedir)/etc/$(PACKAGE)/po
-styledir = $(packagedir)/etc/$(PACKAGE)/styles
-else
-icondir = $(pkgdatadir)/icons
-catalogdir = $(pkgdatadir)/po
-styledir = $(pkgdatadir)/styles
-endif
-
-disticondir = $(distdir)/icons
-distcatalogdir = $(distdir)/po
-diststyledir = $(distdir)/styles
-
-install-data-local: $(TARGETS)
-       for d in $(pkgdatadir) $(icondir) $(catalogdir) $(styledir); do \
-               $(top_srcdir)/mkinstalldirs $$d; \
-       done
-       @list="$(ICONS)"; for p in $$list; do \
-         if test -f $$p; then \
-           echo " $(INSTALL_DATA) $$p $(icondir)/"; \
-             $(INSTALL_DATA) $$p $(icondir)/; \
-          else :; fi; \
-        done
-       @list="$(CATALOGS)"; for p in $$list; do \
-         if test -f $$p; then \
-           echo " $(INSTALL_DATA) $$p $(catalogdir)/"; \
-             $(INSTALL_DATA) $$p $(catalogdir)/; \
-          else :; fi; \
-        done
-       @list="$(STYLES)"; for p in $$list; do \
-         if test -f $$p; then \
-           echo " $(INSTALL_DATA) $$p $(styledir)/"; \
-             $(INSTALL_DATA) $$p $(styledir)/; \
-          else :; fi; \
-        done
-
-dist-hook:
-       for d in $(distpkgdatadir) $(disticondir) $(distcatalogdir) \
-       $(diststyledir); do \
-               $(top_srcdir)/mkinstalldirs $$d; \
-       done
-       @list="$(ICONS)"; for p in $$list; do \
-         if test -f $$p; then \
-           echo " $(INSTALL_DATA) $$p $(disticondir)/"; \
-             $(INSTALL_DATA) $$p $(disticondir)/; \
-          else :; fi; \
-        done
-       @list="$(CATALOGS)"; for p in $$list; do \
-         if test -f $$p; then \
-           echo " $(INSTALL_DATA) $$p $(distcatalogdir)/"; \
-             $(INSTALL_DATA) $$p $(distcatalogdir)/; \
-          else :; fi; \
-        done
-       @list="$(STYLES)"; for p in $$list; do \
-         if test -f $$p; then \
-           echo " $(INSTALL_DATA) $$p $(diststyledir)/"; \
-             $(INSTALL_DATA) $$p $(diststyledir)/; \
-          else :; fi; \
-        done
diff --git a/etc/icons/back.xpm b/etc/icons/back.xpm
deleted file mode 100644 (file)
index 6c23254..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/* XPM */
-static char *back[] = {
-/* width height num_colors chars_per_pixel */
-"    28    28       23            1",
-/* colors */
-". c #000000",
-"# c #000080",
-"a c #0000f8",
-"b c #003438",
-"c c #008000",
-"d c #008080",
-"e c #00fc00",
-"f c #202020",
-"g c #303060",
-"h c #4098a0",
-"i c #6064c8",
-"j c #800000",
-"k c #808000",
-"l c #808080",
-"m c #980060",
-"n c #9898f8",
-"o c #b2b2b2  s backgroundToolBarColor",
-"p c #e8e8e8",
-"q c #f80000",
-"r c #f86430",
-"s c #f864c8",
-"t c #f8fc00",
-"u c #f8fcf8",
-/* pixels */
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooelooooooooooooo",
-"ooooooooooooeudooooooooooooo",
-"oooooooooooeuocloooooooooooo",
-"ooooooooooeuoecboooooooooooo",
-"oooooooooeuoeocblooooooooooo",
-"ooooooooeuoeoecfdooooooooooo",
-"oooooooeuoeoeocffloooooooooo",
-"ooooooeuoeoeoeoeoboooooooooo",
-"oooooeuoeoeoeoeoedbooooooooo",
-"oooohuoeoeoeoeoeoffooooooooo",
-"oooohueoeoeoeoeoeffooooooooo",
-"ooooocdddddddddddfbooooooooo",
-"oooooochcdcdcccccfbooooooooo",
-"ooooooochchccccccbdooooooooo",
-"oooooooochchcccccblooooooooo",
-"ooooooooochcccffffoooooooooo",
-"ooooooolllchccbbbdlllloooooo",
-"oooooooolllbhcbblllllllooooo",
-"oooooooooollbhbblllllloooooo",
-"ooooooooooollbbllllooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo"
-};
diff --git a/etc/icons/ball.blank.xpm b/etc/icons/ball.blank.xpm
deleted file mode 100644 (file)
index 4bfd945..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-/* XPM */
-static char * ball_blank_xpm[] = {
-"12 12 1 1",
-"      c None",
-"            ",
-"            ",
-"            ",
-"            ",
-"            ",
-"            ",
-"            ",
-"            ",
-"            ",
-"            ",
-"            ",
-"            "};
diff --git a/etc/icons/ball.gray.xpm b/etc/icons/ball.gray.xpm
deleted file mode 100644 (file)
index 68cb382..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/* XPM */
-static char * ball_gray_xpm[] = {
-"12 12 10 1",
-"      c None",
-".     c #000000",
-"+     c #999999",
-"@     c #666666",
-"#     c #FFFFFF",
-"$     c #CCCCCC",
-"%     c #888888",
-"&     c #555555",
-"*     c #BBBBBB",
-"=     c #333333",
-"    ....    ",
-"   .+++@.   ",
-"  .+#$%@&.  ",
-" .+*#*%@&=. ",
-" .++++@&==. ",
-" .+++@@&=.. ",
-" .@@@@&==.. ",
-" .@@&&==... ",
-"  .====.=.  ",
-"   .=....   ",
-"    ....    ",
-"            "};
diff --git a/etc/icons/ball.red.xpm b/etc/icons/ball.red.xpm
deleted file mode 100644 (file)
index 79ee137..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-/* XPM */
-static char * ball_red_xpm[] = {
-"12 12 6 1",
-"      c None",
-".     c #000000",
-"+     c #FF9999",
-"@     c #FF3333",
-"#     c #FFFFFF",
-"$     c #660000",
-"            ",
-"    ....    ",
-"   .+++@.   ",
-"  .+#+@@$.  ",
-" .++#++@@$. ",
-" .@+@+@$$$. ",
-" .+@+@@@$.. ",
-" .@@@@$$$.. ",
-" .@@$@$$... ",
-"  .$$$$.$.  ",
-"   .$....   ",
-"    ....    "};
diff --git a/etc/icons/balloon.xpm b/etc/icons/balloon.xpm
deleted file mode 100644 (file)
index db84538..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-/* XPM */
-static char * balloon_xpm[] = {
-"12 12 4 1",
-"       c None",
-".      c #000000",
-"+      c #FFFFFF",
-"@      c #808080",
-"   ......   ",
-"  ..++++..  ",
-" .++++++++. ",
-".++@@@@@@++.",
-".++++++++++.",
-".++@@@@@@++.",
-".++++++++++.",
-".++@@@@@@++.",
-" .++++++++. ",
-"  .++++++.  ",
-"  .+++...   ",
-" .....      "};
diff --git a/etc/icons/crypt.xpm b/etc/icons/crypt.xpm
deleted file mode 100644 (file)
index 1e73f16..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/* XPM */
-static char *crypt[] = {
-/* width height num_colors chars_per_pixel */
-"    28    28       23            1",
-/* colors */
-". c #000000",
-"# c #000080",
-"a c #0000f8",
-"b c #003438",
-"c c #008000",
-"d c #008080",
-"e c #00fc00",
-"f c #202020",
-"g c #303060",
-"h c #4098a0",
-"i c #6064c8",
-"j c #800000",
-"k c #808000",
-"l c #808080",
-"m c #980060",
-"n c #9898f8",
-"o c #b2b2b2  s backgroundToolBarColor",
-"p c #e8e8e8",
-"q c #f80000",
-"r c #f86430",
-"s c #f864c8",
-"t c #f8fc00",
-"u c #f8fcf8",
-/* pixels */
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooijiiinooooooo",
-"ooooooooooooooiouokkiioooooo",
-"oooooooooooooikkjiiksioooooo",
-"oooooooooooooik.oooik.oooooo",
-"oooooooooooooikjooornjoooooo",
-"oooooooooooooik#ooon..oooooo",
-"oooooiiniiiiijkijooooooooooo",
-"ooooi#n.kkkkin.ji#oooooooooo",
-"ooooiaooouuookki#.oooooooooo",
-"ooooikokkkkkkkii#.oooooooooo",
-"ooooimommmmmmmmi#.oooooooooo",
-"ooooikokkkkkkkki#.oooooooooo",
-"ooooimommmmmmmji#.lllllooooo",
-"ooooikokkkkkkkki#.iiillooooo",
-"ooooimommmmmmjjj#.lilooooooo",
-"ooooikkkkkkkkkki#.lloooooooo",
-"oooooiijjjjj.....ooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo"
-};
diff --git a/etc/icons/encrypt.xpm b/etc/icons/encrypt.xpm
deleted file mode 100644 (file)
index 3a2beff..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-/* XPM */
-static char *encrypt[] = {
-/* width height num_colors chars_per_pixel */
-"    28    28       19            1",
-/* colors */
-". c #000000",
-"# c #000080",
-"a c #003438",
-"b c #008000",
-"c c #008080",
-"d c #00fc00",
-"e c #202020",
-"f c #303060",
-"g c #4098a0",
-"h c #6064c8",
-"i c #808000",
-"j c #808080",
-"k c #9898f8",
-"l c #c0c0c0  s backgroundToolBarColor",
-"m c #e8e8e8",
-"n c #f86430",
-"s c #f864c8",
-"p c #f8fc00",
-"q c #f8fcf8",
-/* pixels */
-"llllllllllllllllllllllllllll",
-"llllllllllllllllllllllllllll",
-"llllllllllllllllllllllllllll",
-"llllllllllllllllllllllllllll",
-"llllllllllppppppllllllllllll",
-"llllllllpphhhhhpplllllllllll",
-"lllllllpphqqllkhfpllllllllll",
-"lllllllphql###lkhfplllllllll",
-"lllllllphqepll#lheplllllllll",
-"lllllllphlepll#kheplllllllll",
-"llllllpphleppp#kheppllllllll",
-"lllllppehkhjhffkhefpllllllll",
-"lllllphkhffkkkkefhh.plllllll",
-"lllllphklqqqllllkhf.plllllll",
-"lllllphkqhhhhhhhhef.plllllll",
-"lllllphkqlllllllkhf.plllllll",
-"lllllphkqhhhhhhhhff.plllllll",
-"lllllphkqlllllllkhf.plllllll",
-"lllllphkqhhhhhhhhef.jjjjjlll",
-"lllllphkqlllllllkhf.phhjllll",
-"lllllphkhhhhhhhhhf#.jpllllll",
-"lllllpph#fffffefe..pppllllll",
-"llllllppppppppppppplllllllll",
-"llllllllllllllllllllllllllll",
-"llllllllllllllllllllllllllll",
-"llllllllllllllllllllllllllll",
-"llllllllllllllllllllllllllll",
-"llllllllllllllllllllllllllll"
-};
diff --git a/etc/icons/forward.xpm b/etc/icons/forward.xpm
deleted file mode 100644 (file)
index 6f49a34..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/* XPM */
-static char *forward[] = {
-/* width height num_colors chars_per_pixel */
-"    28    28       23            1",
-/* colors */
-". c #000000",
-"# c #000080",
-"a c #0000f8",
-"b c #003438",
-"c c #008000",
-"d c #008080",
-"e c #00fc00",
-"f c #202020",
-"g c #303060",
-"h c #4098a0",
-"i c #6064c8",
-"j c #800000",
-"k c #808000",
-"l c #808080",
-"m c #980060",
-"n c #9898f8",
-"o c #b2b2b2  s backgroundToolBarColor",
-"p c #e8e8e8",
-"q c #f80000",
-"r c #f86430",
-"s c #f864c8",
-"t c #f8fc00",
-"u c #f8fcf8",
-/* pixels */
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"ooooooooedhooooooooooooooooo",
-"ooooooooeechoooooooooooooooo",
-"oooooooohuochooooooooooooooo",
-"oooooooohoeochoooooooooooooo",
-"oooooooohuoeochooooooooooooo",
-"oooooooohoeoeochoooooooooooo",
-"ooooeeeeeuoeoeoccooooooooooo",
-"oooohououoeoeoeodcoooooooooo",
-"oooohueeoeoeoeoeodcooooooooo",
-"oooohoeoeoeoeoeoeodcoooooooo",
-"oooohueeoeoeoeoeoecdoooooooo",
-"oooohodddddddddddbbdoooooooo",
-"oooohuchchccccccbbdooooooooo",
-"ooooeohchccccccbbdoooooooooo",
-"ooooeechchccccbbdooooooooooo",
-"oooocbbbbhcccbbdlllllllooooo",
-"oooooooochccbgdllllllloooooo",
-"ooooolllchcbgdlllllooooooooo",
-"oooooollccbgdllloooooooooooo",
-"ooooooollbgdoooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo"
-};
diff --git a/etc/icons/home.xpm b/etc/icons/home.xpm
deleted file mode 100644 (file)
index 74d75ad..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/* XPM */
-static char *home[] = {
-/* width height num_colors chars_per_pixel */
-"    28    28       23            1",
-/* colors */
-". c #000000",
-"# c #000080",
-"a c #0000f8",
-"b c #003438",
-"c c #008000",
-"d c #008080",
-"e c #00fc00",
-"f c #202020",
-"g c #303060",
-"h c #4098a0",
-"i c #6064c8",
-"j c #800000",
-"k c #808000",
-"l c #808080",
-"m c #980060",
-"n c #9898f8",
-"o c #b2b2b2  s backgroundToolBarColor",
-"p c #e8e8e8",
-"q c #f80000",
-"r c #f86430",
-"s c #f864c8",
-"t c #f8fc00",
-"u c #f8fcf8",
-/* pixels */
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"ooooooooooooooooungioooooooo",
-"ooooooooooonnnnnungioooooooo",
-"oooooooooooiiiiiongioooooooo",
-"ooooooooooiuiiiiongioooooooo",
-"oooooooooifguiiiongioooooooo",
-"ooooooooifinguiiinggoooooooo",
-"oooooooifinoniuiiigigooooooo",
-"ooooooifinononioiiigiioooooo",
-"oooooiginonononioiiiigiooooo",
-"ooooiginonononongoiiiiiioooo",
-"oooigfnononononongnffgggoooo",
-"oooooiononiigsononibbgiooooo",
-"oooooononoiiilnonoifggoooooo",
-"ooooooononiiilononiggioooooo",
-"oooooononoiiisnonoigiioooooo",
-"ooooooononiigsononiinioooooo",
-"oooooononoigglnonoiniioooooo",
-"oooohhononggglononinlhoooooo",
-"oollchnhnonkkrkkilhllhlooooo",
-"oollchclllkkrkllhhhchhhhhooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo"
-};
diff --git a/etc/icons/icons.gif b/etc/icons/icons.gif
deleted file mode 100644 (file)
index df01fab..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-/* XPM */
-static char *icons[] = {
-/* width height num_colors chars_per_pixel */
-"   454    29       23            1",
-/* colors */
-". c #000000",
-"# c #000080",
-"a c #0000f8",
-"b c #003438",
-"c c #008000",
-"d c #008080",
-"e c #00fc00",
-"f c #202020",
-"g c #303060",
-"h c #4098a0",
-"i c #6064c8",
-"j c #800000",
-"k c #808000",
-"l c #808080",
-"m c #980060",
-"n c #9898f8",
-"o c #c0c0c0",
-"p c #e8e8e8",
-"q c #f80000",
-"r c #f86430",
-"s c #f864c8",
-"t c #f8fc00",
-"u c #f8fcf8",
-/* pixels */
-"pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp",
-"pooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo",
-"pooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo",
-"pooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo",
-"poooooooooooooooooooooooooelooooooooooooooooooooooooooooooooooooooooooedhooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooiiiiiiiiiiilooooooooooooooooooo",
-"pooooooooooooooooooooooooeudooogggggooooooooooooooooooooooooooooooooooeechoooooogggggooooooooooooooooooooooooooooooooooiiiiiiiigoooooooooooooooooooooooooooooooooooooooooooooooooooungiooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooniiigoooooogggggooooooooooooooooooooooooooooooooooooouuuuuuuuuloooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooonllnlnlnlnligooooooooooooooooooo",
-"poooooooooooooooooooooooeuoclooogggooooooooooooooooooooooooooooooooooohuochoooooogggooooooooooooooooooooooooooooooooooiuininiif#ggoooooooooooooooooooooooooooooooooooooooooooonnnnnungiooooooooooooooooooooooooooooooooooooooooooouououoooooooooooooooooooooooooooooooooooooonuoigooooooogggoooooooooooooooooooooooooooooooooooooouuuouououloooooooooooooooooooooooooooooooooooooooooooooooijiiinooooooooooooooooooooooooooooooooooogninnlg.glolol...goooooooooooooooo",
-"pooooooooooooooooooooooeuoecboooogoooooooooooooooooooooooooooooooooooohoeochoooooogooooooooooooooooooooooooooooooooooiunnnnnifff#ggoooooooooooooooooooooooooooooooooooooooooooiiiiiongioooooooooooooooooooooooooooooooooooooooooouououououooooooooooooooooooooooooooooooooooonogigoooooooogooooooooooooooooooooooooooooooooooooooouuuuououulooooooooooooooooooooooooooooooooooooooooooooooiouokkiioooooooooooooooooooooooooooooooooogoioljjjj.lnogli.goooooooooooooooo",
-"poooooooooooooooooooooeuoeocbloooooooooooooooooooooooooooooooooooooooohuoeochooooooooooooooooooooooooooooooooooooiuoooononononnniffgoooooooooooooooooooooooooooooooooooooooooiuiiiiongiooooooooooooooooooooooooooooooooooooooooououuuuuuuouooooooooooooooooooooooooooooooooonoggi.oooooooooooooooooooooooooooooooooooooooooooooooouuuuuuuuuloooooooooooooooooooooooooooooooooooooooooooooikkjiiksiooooooooooooooooooooooooooooooooooogiojjqjjg.loli.j.oooooooooooooooo",
-"pooooooooooooooooooooeuoeoecfdoooooooooooooooooooooooooooooooooooooooohoeoeochooooooooooooooooooooooooooooooooooooiuoonononononfffggooooooooooooooooooooooooooooooooooooooooifguiiiongioooooooooooooooooooooooooooooooooooooooououuuuuuuottoooooooooooooooooooooooooooooooonogggi.oooooooooooooooooooooooooooooooooooooooooooooooouuuuuuuuulggingooooooooooooooooooooooooooooooooooooooooik.oooik.ooooooooooooooooooooooooooooooooooogiooqqqjg.noiojjooooooooooooooooo",
-"poooooooooooooooooooeuoeoeocffloooooooooooooooooooooooooooooooooooeeeeeuoeoeoccooooooooooooooooooooooooooooooooooooiuoononononfg##ggoooooooooooooooooooooooooooooooooooooooifinguiiinggooooooooooooooooooooooooooooooooooooooooouuuutuuuttouoooooooooooooooooooooooooooooonogiggi.oooooooooooooooooooooooooooooooooooooooooooooooouoooooooolgingoooooooooooooooooooooooooooooooooooooooooikjooornjooooooooooooooooooooooooooooooooooooioooqqjg.lolgjjooooooooooooooooo",
-"pooooooooooooooooooeuoeoeoeoeobooooooooooooooooooooooooooooooooooohououoeoeoeodcooooooooooooooooooooooooooooooooooooiuooooooifg###ggooooooooooooooooooooooooooooooooooooooifinoniuiiigigooooooooooooooooooooooooooooooooooooooouooootttutouoooooooooooooooooooooooooooooonoiigggi.ooooooooooooooooooooooooooooooooooooooooooooooooououououlgingooooooooooooooooooooooooooooooooooooooooooik#ooon..ooooooooooooooooooooooooooooooooooooionoqjf.fnoigojooooooooooooooooo",
-"poooooooooooooooooeuoeoeoeoeoedboooooooooooooooooooooooooooooooooohueeoeoeoeoeodcooooooooooooooooooooooooooooooooooooiuooooifg####ggoooooooooooooooooooooooooooooooooooooifinononioiiigiiooooooooooooooooooooooooooooooooooooooniiiintttuuouoooooooooooooooooooooooooooonunigig.igggiiiiiiiooooooooooooooooooooooooooooooooooooonououououoliggoooooooooooooooooooooooooooooooooooiiniiiiijkijoooooooooooooooooooooooooooooooooooooooglionnffffilogggggoooooooooooooooo",
-"poooooooooooooooohuoeoeoeoeoeoffoooooooooooooooooooooooooooooooooohoeoeoeoeoeoeodcooooooooooooooooooooooooooooooooooooiuooifgi####ggooooooooooooooooooooooooooooooooooooiginonononioiiiigioooooooooooooooooooooooooooooooooooooinoiifntuuuuooooooooooooooooooooooooooooonuniigg.noooooooooogooooooooooooooooooooooooooooooooooiinnniiiiiiiiiiggiooooooooooooooooooooooooooooooooi#n.kkkkin.ji#oooooooooooooooooooooooooooooooooooooognion....ignoili.goooooooooooooooo",
-"poooooooooooooooohueoeoeoeoeoeffoooooooooooooooooooooooooooooooooohueeoeoeoeoeoecdoooooooooooooooooooooooooooooooooooooiuifgoi####ggoooooooooooooooooooooooooooooooooooiginonononongoiiiiiioooooooooooooooooooooooooooooooooooinoniigfotutouoooooooooooooooooooooooooooonunigi.iinnnnnnnnnnogooooooooooooooooooooooooooooooooiuuoouonniiinniggiiooooooooooooooooooooooooooooooooiaooouuookki#.ooooooooooooooooooooooooooooooooooooooogiolggiiggloli.ggoooooooooooooooo",
-"pooooooooooooooooocdddddddddddfboooooooooooooooooooooooooooooooooohodddddddddddbbdoooooooooooooooooooooooooooooooooooooogggooi###fggooooooooooooooooooooooooooooooooooigfnononononongnffgggooooooooooooooooooooooooooooooooggofiiiggigoutuuooooooooooooooooooooooooooooonuiii.niinnnnnnnnnnngooooooooooooooooooooooooooooooooiooooouuuuoniiggigiooooooooooooooooooooooooooooooooikokkkkkkkii#.ooooooooooooooooooooooooooooooooooooooooio.llggggnoioggooooooooooooooooo",
-"poooooooooooooooooochcdcdcccccfboooooooooooooooooooooooooooooooooohuchchccccccbbdooooooooooooooooooooooooooooooooooooooooooooi###fggolooooooooooooooooooooooooooooooooooiononiigsononibbgioooooooooooooooooooooooooooooooofoiiooggggigottouoooooooooooooooooooooooooooooigg..ioiinnnnnnnnnnngooooooooooooooooooooooooooooooooionooooooooooogggiiglooooooooooooooooooooooooooooooimommmmmmmmi#.ooooooooooooooooooooooooooooooooooooooooio.llggfllolgggooooooooooooooooo",
-"pooooooooooooooooooochchccccccbdooooooooooooooooooooooooooooooooooeohchccccccbbdooooooooooooooooooooooooooooooooooooooooooooonn#ffggolloooooooooooooooooooooooooooooooooononoiiilnonoifggoooooooooooooooooooooooooooooooooiinoongfgfgiouououoooooooooooooooooooooooooooooooooioiinnnnnnnnnngoooooooooooooooooooooooooooooooooionnnnnnnnnnnngggigfggoooooooooooooooooooooooooooooikokkkkkkkki#.oooooooooooooooooooooooooooooooooooooognionlggggnlolggg.oooooooooooooooo",
-"poooooooooooooooooooochchcccccblooooooooooooooooooooooooooooooooooeechchccccbbdoooooooooooooooooooooooooooooooooooooonnnnnnnnnif#fgglllooooooooooooooooooooooooooooooooooononiiilononiggiooooooooooooooooooooooooooooooooinooniigffgiluououooooooooooooooooooooooooooooooooooioigggggggggggooooooooooooooooooooooooooooooooooionnononononnnggiggfgloooooooooooooooooooooooooooooimommmmmmmji#.lllllooooooooooooooooooooooooooooooooogniol....flnogli.goooooooooooooooo",
-"pooooooooooooooooooooochcccffffooooooooooooooooooooooooooooooooooocbbbbhcccbbdllllllloooooooooooooooooooooooooooooooonnnnnnnnnifffggiiooooooooooooooooooooooooooooooooooononoiiisnonoigiiooooooooooooooooooooooooooooooiiooniiigfillloonlnlnoooooooooooooooooooooooooooooooooioig.oooooooooooooooooooooooooooooooooooooooooooiinononononecnggggfglooooooooooooooooooooooooooooooikokkkkkkkki#.iiillooooooooooooooooooooooooooooooooolgio.ffff.gloii.ggoooooooooooooooo",
-"pooooooooooooooooooolllchccbbbdllllooooooooooooooooooooooooooooooooooochccbgdlllllllooooooooooooooooooooooooooooooooonininininiifgigiloooooooooooooooooooooooooooooooooooononiigsononiinioooooooooooooooooooooooooooooinoniiigfiooooonillllloooooooooooooooooooooooooooooooooioiggligigiiiillooooooooooooooooooooooooooooooooolliiiiiiiiinngggfgloooooooooooooooooooooooooooooooimommmmmmjjj#.liloooooooooooooooooooooooooooooooooooogio.gggfg.noilggooooooooooooooooo",
-"poooooooooooooooooooolllbhcbblllllllooooooooooooooooooooooooooooooolllchcbgdlllllooooooooooooooooooooooooooooooooooooniiiiiiiiiiiigillooooooooooooooooooooooooooooooooooononoigglnonoiniioooooooooooooooooooooooooooooggiiigfiooooniiiiiillnoooooooooooooooooooooooooooooooooioiggigigigilllooooooooooooooooooooooooooooooooooooooolliigggggffglooooooooooooooooooooooooooooooooikkkkkkkkkki#.llooooooooooooooooooooooooooooooooooooooiooggfgf.loigggllloooooooooooooo",
-"poooooooooooooooooooooollbhbbllllllooooooooooooooooooooooooooooooooollccbgdlllooooooooooooooooooooooooooooooooooooooooniiggggg#gggilloooooooooooooooooooooooooooooooooohhononggglononinlhoooooooooooooooooooooooooooooiggigillonliiillnooooooooooooooooooooooooooooooooooooooioiggliloooooooooooooooooooooooooooooooooooooooooooooooooooolgfgooooooooooooooooooooooooooooooooooooiijjjjj.....oooooooooooooooooooooooooooooooooooooooooinnnfffglnlifllllooooooooooooooo",
-"pooooooooooooooooooooooollbbllllooooooooooooooooooooooooooooooooooooollbgdooooooooooooooooooooooooooooooooooooooooooooooolllllllllllooooooooooooooooooooooooooooooooollchnhnonkkrkkilhllhloooooooooooooooooooooooooooonfgflllllllnoooooooooooooooooooooooooooooooooooooooooooioigllooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooogggiiiiigi.llloooooooooooooooo",
-"poooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooollchclllkkrkllhhhchhhhhoooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo",
-"pooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo",
-"pooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo",
-"pooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo",
-"pooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo"
-};
diff --git a/etc/icons/icons.xpm b/etc/icons/icons.xpm
deleted file mode 100644 (file)
index df01fab..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-/* XPM */
-static char *icons[] = {
-/* width height num_colors chars_per_pixel */
-"   454    29       23            1",
-/* colors */
-". c #000000",
-"# c #000080",
-"a c #0000f8",
-"b c #003438",
-"c c #008000",
-"d c #008080",
-"e c #00fc00",
-"f c #202020",
-"g c #303060",
-"h c #4098a0",
-"i c #6064c8",
-"j c #800000",
-"k c #808000",
-"l c #808080",
-"m c #980060",
-"n c #9898f8",
-"o c #c0c0c0",
-"p c #e8e8e8",
-"q c #f80000",
-"r c #f86430",
-"s c #f864c8",
-"t c #f8fc00",
-"u c #f8fcf8",
-/* pixels */
-"pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp",
-"pooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo",
-"pooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo",
-"pooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo",
-"poooooooooooooooooooooooooelooooooooooooooooooooooooooooooooooooooooooedhooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooiiiiiiiiiiilooooooooooooooooooo",
-"pooooooooooooooooooooooooeudooogggggooooooooooooooooooooooooooooooooooeechoooooogggggooooooooooooooooooooooooooooooooooiiiiiiiigoooooooooooooooooooooooooooooooooooooooooooooooooooungiooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooniiigoooooogggggooooooooooooooooooooooooooooooooooooouuuuuuuuuloooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooonllnlnlnlnligooooooooooooooooooo",
-"poooooooooooooooooooooooeuoclooogggooooooooooooooooooooooooooooooooooohuochoooooogggooooooooooooooooooooooooooooooooooiuininiif#ggoooooooooooooooooooooooooooooooooooooooooooonnnnnungiooooooooooooooooooooooooooooooooooooooooooouououoooooooooooooooooooooooooooooooooooooonuoigooooooogggoooooooooooooooooooooooooooooooooooooouuuouououloooooooooooooooooooooooooooooooooooooooooooooooijiiinooooooooooooooooooooooooooooooooooogninnlg.glolol...goooooooooooooooo",
-"pooooooooooooooooooooooeuoecboooogoooooooooooooooooooooooooooooooooooohoeochoooooogooooooooooooooooooooooooooooooooooiunnnnnifff#ggoooooooooooooooooooooooooooooooooooooooooooiiiiiongioooooooooooooooooooooooooooooooooooooooooouououououooooooooooooooooooooooooooooooooooonogigoooooooogooooooooooooooooooooooooooooooooooooooouuuuououulooooooooooooooooooooooooooooooooooooooooooooooiouokkiioooooooooooooooooooooooooooooooooogoioljjjj.lnogli.goooooooooooooooo",
-"poooooooooooooooooooooeuoeocbloooooooooooooooooooooooooooooooooooooooohuoeochooooooooooooooooooooooooooooooooooooiuoooononononnniffgoooooooooooooooooooooooooooooooooooooooooiuiiiiongiooooooooooooooooooooooooooooooooooooooooououuuuuuuouooooooooooooooooooooooooooooooooonoggi.oooooooooooooooooooooooooooooooooooooooooooooooouuuuuuuuuloooooooooooooooooooooooooooooooooooooooooooooikkjiiksiooooooooooooooooooooooooooooooooooogiojjqjjg.loli.j.oooooooooooooooo",
-"pooooooooooooooooooooeuoeoecfdoooooooooooooooooooooooooooooooooooooooohoeoeochooooooooooooooooooooooooooooooooooooiuoonononononfffggooooooooooooooooooooooooooooooooooooooooifguiiiongioooooooooooooooooooooooooooooooooooooooououuuuuuuottoooooooooooooooooooooooooooooooonogggi.oooooooooooooooooooooooooooooooooooooooooooooooouuuuuuuuulggingooooooooooooooooooooooooooooooooooooooooik.oooik.ooooooooooooooooooooooooooooooooooogiooqqqjg.noiojjooooooooooooooooo",
-"poooooooooooooooooooeuoeoeocffloooooooooooooooooooooooooooooooooooeeeeeuoeoeoccooooooooooooooooooooooooooooooooooooiuoononononfg##ggoooooooooooooooooooooooooooooooooooooooifinguiiinggooooooooooooooooooooooooooooooooooooooooouuuutuuuttouoooooooooooooooooooooooooooooonogiggi.oooooooooooooooooooooooooooooooooooooooooooooooouoooooooolgingoooooooooooooooooooooooooooooooooooooooooikjooornjooooooooooooooooooooooooooooooooooooioooqqjg.lolgjjooooooooooooooooo",
-"pooooooooooooooooooeuoeoeoeoeobooooooooooooooooooooooooooooooooooohououoeoeoeodcooooooooooooooooooooooooooooooooooooiuooooooifg###ggooooooooooooooooooooooooooooooooooooooifinoniuiiigigooooooooooooooooooooooooooooooooooooooouooootttutouoooooooooooooooooooooooooooooonoiigggi.ooooooooooooooooooooooooooooooooooooooooooooooooououououlgingooooooooooooooooooooooooooooooooooooooooooik#ooon..ooooooooooooooooooooooooooooooooooooionoqjf.fnoigojooooooooooooooooo",
-"poooooooooooooooooeuoeoeoeoeoedboooooooooooooooooooooooooooooooooohueeoeoeoeoeodcooooooooooooooooooooooooooooooooooooiuooooifg####ggoooooooooooooooooooooooooooooooooooooifinononioiiigiiooooooooooooooooooooooooooooooooooooooniiiintttuuouoooooooooooooooooooooooooooonunigig.igggiiiiiiiooooooooooooooooooooooooooooooooooooonououououoliggoooooooooooooooooooooooooooooooooooiiniiiiijkijoooooooooooooooooooooooooooooooooooooooglionnffffilogggggoooooooooooooooo",
-"poooooooooooooooohuoeoeoeoeoeoffoooooooooooooooooooooooooooooooooohoeoeoeoeoeoeodcooooooooooooooooooooooooooooooooooooiuooifgi####ggooooooooooooooooooooooooooooooooooooiginonononioiiiigioooooooooooooooooooooooooooooooooooooinoiifntuuuuooooooooooooooooooooooooooooonuniigg.noooooooooogooooooooooooooooooooooooooooooooooiinnniiiiiiiiiiggiooooooooooooooooooooooooooooooooi#n.kkkkin.ji#oooooooooooooooooooooooooooooooooooooognion....ignoili.goooooooooooooooo",
-"poooooooooooooooohueoeoeoeoeoeffoooooooooooooooooooooooooooooooooohueeoeoeoeoeoecdoooooooooooooooooooooooooooooooooooooiuifgoi####ggoooooooooooooooooooooooooooooooooooiginonononongoiiiiiioooooooooooooooooooooooooooooooooooinoniigfotutouoooooooooooooooooooooooooooonunigi.iinnnnnnnnnnogooooooooooooooooooooooooooooooooiuuoouonniiinniggiiooooooooooooooooooooooooooooooooiaooouuookki#.ooooooooooooooooooooooooooooooooooooooogiolggiiggloli.ggoooooooooooooooo",
-"pooooooooooooooooocdddddddddddfboooooooooooooooooooooooooooooooooohodddddddddddbbdoooooooooooooooooooooooooooooooooooooogggooi###fggooooooooooooooooooooooooooooooooooigfnononononongnffgggooooooooooooooooooooooooooooooooggofiiiggigoutuuooooooooooooooooooooooooooooonuiii.niinnnnnnnnnnngooooooooooooooooooooooooooooooooiooooouuuuoniiggigiooooooooooooooooooooooooooooooooikokkkkkkkii#.ooooooooooooooooooooooooooooooooooooooooio.llggggnoioggooooooooooooooooo",
-"poooooooooooooooooochcdcdcccccfboooooooooooooooooooooooooooooooooohuchchccccccbbdooooooooooooooooooooooooooooooooooooooooooooi###fggolooooooooooooooooooooooooooooooooooiononiigsononibbgioooooooooooooooooooooooooooooooofoiiooggggigottouoooooooooooooooooooooooooooooigg..ioiinnnnnnnnnnngooooooooooooooooooooooooooooooooionooooooooooogggiiglooooooooooooooooooooooooooooooimommmmmmmmi#.ooooooooooooooooooooooooooooooooooooooooio.llggfllolgggooooooooooooooooo",
-"pooooooooooooooooooochchccccccbdooooooooooooooooooooooooooooooooooeohchccccccbbdooooooooooooooooooooooooooooooooooooooooooooonn#ffggolloooooooooooooooooooooooooooooooooononoiiilnonoifggoooooooooooooooooooooooooooooooooiinoongfgfgiouououoooooooooooooooooooooooooooooooooioiinnnnnnnnnngoooooooooooooooooooooooooooooooooionnnnnnnnnnnngggigfggoooooooooooooooooooooooooooooikokkkkkkkki#.oooooooooooooooooooooooooooooooooooooognionlggggnlolggg.oooooooooooooooo",
-"poooooooooooooooooooochchcccccblooooooooooooooooooooooooooooooooooeechchccccbbdoooooooooooooooooooooooooooooooooooooonnnnnnnnnif#fgglllooooooooooooooooooooooooooooooooooononiiilononiggiooooooooooooooooooooooooooooooooinooniigffgiluououooooooooooooooooooooooooooooooooooioigggggggggggooooooooooooooooooooooooooooooooooionnononononnnggiggfgloooooooooooooooooooooooooooooimommmmmmmji#.lllllooooooooooooooooooooooooooooooooogniol....flnogli.goooooooooooooooo",
-"pooooooooooooooooooooochcccffffooooooooooooooooooooooooooooooooooocbbbbhcccbbdllllllloooooooooooooooooooooooooooooooonnnnnnnnnifffggiiooooooooooooooooooooooooooooooooooononoiiisnonoigiiooooooooooooooooooooooooooooooiiooniiigfillloonlnlnoooooooooooooooooooooooooooooooooioig.oooooooooooooooooooooooooooooooooooooooooooiinononononecnggggfglooooooooooooooooooooooooooooooikokkkkkkkki#.iiillooooooooooooooooooooooooooooooooolgio.ffff.gloii.ggoooooooooooooooo",
-"pooooooooooooooooooolllchccbbbdllllooooooooooooooooooooooooooooooooooochccbgdlllllllooooooooooooooooooooooooooooooooonininininiifgigiloooooooooooooooooooooooooooooooooooononiigsononiinioooooooooooooooooooooooooooooinoniiigfiooooonillllloooooooooooooooooooooooooooooooooioiggligigiiiillooooooooooooooooooooooooooooooooolliiiiiiiiinngggfgloooooooooooooooooooooooooooooooimommmmmmjjj#.liloooooooooooooooooooooooooooooooooooogio.gggfg.noilggooooooooooooooooo",
-"poooooooooooooooooooolllbhcbblllllllooooooooooooooooooooooooooooooolllchcbgdlllllooooooooooooooooooooooooooooooooooooniiiiiiiiiiiigillooooooooooooooooooooooooooooooooooononoigglnonoiniioooooooooooooooooooooooooooooggiiigfiooooniiiiiillnoooooooooooooooooooooooooooooooooioiggigigigilllooooooooooooooooooooooooooooooooooooooolliigggggffglooooooooooooooooooooooooooooooooikkkkkkkkkki#.llooooooooooooooooooooooooooooooooooooooiooggfgf.loigggllloooooooooooooo",
-"poooooooooooooooooooooollbhbbllllllooooooooooooooooooooooooooooooooollccbgdlllooooooooooooooooooooooooooooooooooooooooniiggggg#gggilloooooooooooooooooooooooooooooooooohhononggglononinlhoooooooooooooooooooooooooooooiggigillonliiillnooooooooooooooooooooooooooooooooooooooioiggliloooooooooooooooooooooooooooooooooooooooooooooooooooolgfgooooooooooooooooooooooooooooooooooooiijjjjj.....oooooooooooooooooooooooooooooooooooooooooinnnfffglnlifllllooooooooooooooo",
-"pooooooooooooooooooooooollbbllllooooooooooooooooooooooooooooooooooooollbgdooooooooooooooooooooooooooooooooooooooooooooooolllllllllllooooooooooooooooooooooooooooooooollchnhnonkkrkkilhllhloooooooooooooooooooooooooooonfgflllllllnoooooooooooooooooooooooooooooooooooooooooooioigllooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooogggiiiiigi.llloooooooooooooooo",
-"poooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooollchclllkkrkllhhhchhhhhoooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo",
-"pooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo",
-"pooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo",
-"pooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo",
-"pooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo"
-};
diff --git a/etc/icons/key.xpm b/etc/icons/key.xpm
deleted file mode 100644 (file)
index 5475976..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-/* XPM */
-static char * mini_lock_xpm[] = {
-"22 22 4 1",
-"      c None  s backgroundToolBarColor",
-".     c #82077DF77DF7",
-"X     c #000000000000",
-"o     c #FFFFFFFFFFFF",
-"                      ",
-"                      ",
-"                      ",
-"                      ",
-"        .XXX.         ",
-"        .ooo.X        ",
-"      ..oXXXo..       ",
-"      XoX...XoX       ",
-"      XoX.  XoX.      ",
-"      XoX.  XoX.      ",
-"     XXXXXXXXXXX      ",
-"     X         X.     ",
-"     X ....... X.     ",
-"     X ooooooo X.     ",
-"     X ....... X.     ",
-"     X         X.     ",
-"     XXXXXXXXXXX.     ",
-"      ...........     ",
-"                      ",
-"                      ",
-"                      ",
-"                      "};
diff --git a/etc/icons/liece-pointer.xbm b/etc/icons/liece-pointer.xbm
deleted file mode 100644 (file)
index f31481f..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-#define irchat-pointer_width 18
-#define irchat-pointer_height 13
-static unsigned char irchat-pointer_bits[] = {
-   0x00, 0x00, 0xfc, 0x00, 0x70, 0xfc, 0x00, 0x70, 0xfc, 0x00, 0xbc, 0xfc,
-   0x00, 0x3f, 0xfc, 0x00, 0x06, 0xfc, 0x40, 0x03, 0xfc, 0x88, 0x00, 0xfc,
-   0xfc, 0x00, 0xfd, 0xf2, 0x83, 0xfd, 0x94, 0xff, 0xfc, 0x00, 0x3e, 0xfc,
-   0x00, 0x00, 0xfc};
diff --git a/etc/icons/liece-pointer.xpm b/etc/icons/liece-pointer.xpm
deleted file mode 100644 (file)
index 9c49a04..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-/* XPM */
-static char * irchat_pointer_xpm[] = {
-"18 13 58 1",
-"      c None",
-".     c #943D51",
-"+     c #8F243B",
-"@     c #943E51",
-"#     c #84132C",
-"$     c #6A031A",
-"%     c #99364C",
-"&     c #9B3D52",
-"*     c #8E1731",
-"=     c #72031C",
-"-     c #670319",
-";     c #993E52",
-">     c #AC324D",
-",     c #981632",
-"'     c #81041F",
-")     c #77031D",
-"!     c #82162E",
-"~     c #9A3D51",
-"{     c #951834",
-"]     c #9E3C52",
-"^     c #A73750",
-"/     c #973D51",
-"(     c #A73E55",
-"_     c #AB2B47",
-":     c #9A1130",
-"<     c #8B0422",
-"[     c #8F0F2A",
-"}     c #9F2B44",
-"|     c #89384A",
-"1     c #943F51",
-"2     c #A74056",
-"3     c #A2364E",
-"4     c #88112A",
-"5     c #76031D",
-"6     c #750820",
-"7     c #993248",
-"8     c #923D50",
-"9     c #933F52",
-"0     c #954154",
-"a     c #9F4156",
-"b     c #A04156",
-"c     c #9F4256",
-"d     c #9D3C51",
-"e     c #7E172E",
-"f     c #5F0317",
-"g     c #590316",
-"h     c #70192C",
-"i     c #8C3146",
-"j     c #92394D",
-"k     c #8F394C",
-"l     c #7F3041",
-"m     c #923E51",
-"n     c #983E51",
-"o     c #8E3045",
-"p     c #701D30",
-"q     c #66192A",
-"r     c #772839",
-"s     c #8F3A4D",
-"                  ",
-"            .+@   ",
-"            #$%   ",
-"          &*=-;   ",
-"        >,')!~    ",
-"         {]       ",
-"        ^/        ",
-"       (          ",
-"  _:<[}|        1 ",
-" 2  345678     90 ",
-"  abc defghijklm  ",
-"        nopqrs    ",
-"                  "};
diff --git a/etc/icons/location.xpm b/etc/icons/location.xpm
deleted file mode 100644 (file)
index 50ffcf4..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/* XPM */
-static char *location[] = {
-/* width height num_colors chars_per_pixel */
-"    28    28       23            1",
-/* colors */
-". c #000000",
-"# c #000080",
-"a c #0000f8",
-"b c #003438",
-"c c #008000",
-"d c #008080",
-"e c #00fc00",
-"f c #202020",
-"g c #303060",
-"h c #4098a0",
-"i c #6064c8",
-"j c #800000",
-"k c #808000",
-"l c #808080",
-"m c #980060",
-"n c #9898f8",
-"o c #b2b2b2  s backgroundToolBarColor",
-"p c #e8e8e8",
-"q c #f80000",
-"r c #f86430",
-"s c #f864c8",
-"t c #f8fc00",
-"u c #f8fcf8",
-/* pixels */
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooniiigoooooooooooooooo",
-"ooooooonuoigoooooooooooooooo",
-"ooooooonogigoooooooooooooooo",
-"oooooonoggi.oooooooooooooooo",
-"ooooonogggi.oooooooooooooooo",
-"oooonogiggi.oooooooooooooooo",
-"ooonoiigggi.oooooooooooooooo",
-"oonunigig.igggiiiiiiiooooooo",
-"oonuniigg.noooooooooogoooooo",
-"oonunigi.iinnnnnnnnnnogooooo",
-"oonuiii.niinnnnnnnnnnngooooo",
-"ooigg..ioiinnnnnnnnnnngooooo",
-"oooooooioiinnnnnnnnnngoooooo",
-"oooooooioigggggggggggooooooo",
-"oooooooioig.oooooooooooooooo",
-"oooooooioiggligigiiiillooooo",
-"oooooooioiggigigigillloooooo",
-"oooooooioigglilooooooooooooo",
-"oooooooioigllooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo"
-};
diff --git a/etc/icons/naruto.blank.xpm b/etc/icons/naruto.blank.xpm
deleted file mode 100644 (file)
index ac050ae..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/* XPM */
-static char *naruto_blank_xpm[] = {
-/* width height num_colors chars_per_pixel */
-"    16    16        2            1",
-/* colors */
-". c #000000",
-"# c None",
-/* pixels */
-"################",
-"################",
-"################",
-"################",
-"################",
-"################",
-"################",
-"################",
-"################",
-"################",
-"################",
-"################",
-"################",
-"################",
-"################",
-"################"
-};
diff --git a/etc/icons/naruto.gray.xpm b/etc/icons/naruto.gray.xpm
deleted file mode 100644 (file)
index dad9b67..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-/* XPM */
-static char *naruto_gray_xpm[] = {
-/* width height num_colors chars_per_pixel */
-"    16    16        4            1",
-/* colors */
-". c None",
-"# c #fffab5",
-"a c #8e8e8e",
-"b c #000000",
-/* pixels */
-".......#####....",
-".......#####....",
-"......#aaaab##..",
-"......#aaaab##..",
-"...####aaaab###.",
-"...####aaaab###.",
-"###aaaaaaaaaaaa#",
-"###aaaaaaaaaaaa#",
-"...####aaaab###.",
-"...####aaaab###.",
-"......#aaaab##..",
-"......#aaaab##..",
-"......#aaaab##..",
-"......#aaaab##..",
-"......#aaaab##..",
-"......#aaaab##.."
-};
diff --git a/etc/icons/naruto.red.xpm b/etc/icons/naruto.red.xpm
deleted file mode 100644 (file)
index 870e759..0000000
+++ /dev/null
@@ -1,116 +0,0 @@
-/* XPM */
-static char * naruto_red_xpm[] = {
-"16 16 97 2",
-"      c None",
-".     c #0F0F0F",
-"+     c #363636",
-"@     c #434343",
-"#     c #232323",
-"$     c #000000",
-"%     c #333333",
-"&     c #EAEAEA",
-"*     c #4A4A4A",
-"=     c #555555",
-"-     c #212121",
-";     c #393939",
-">     c #F6F6F6",
-",     c #FFFFFF",
-"'     c #E7E7E7",
-")     c #F3F3F3",
-"!     c #FFFAFA",
-"~     c #F0EAEA",
-"{     c #D1D1D1",
-"]     c #444444",
-"^     c #7A7A7A",
-"/     c #FFFCFC",
-"(     c #FFC2C2",
-"_     c #FFA3A3",
-":     c #FFAAAA",
-"<     c #FFC6C6",
-"[     c #E4E4E4",
-"}     c #030303",
-"|     c #565656",
-"1     c #E4E2E2",
-"2     c #FFD4D4",
-"3     c #B9B9B9",
-"4     c #0D0D0D",
-"5     c #AEAEAE",
-"6     c #FFC8C8",
-"7     c #FFCDCD",
-"8     c #5E5E5E",
-"9     c #929292",
-"0     c #FDF9F9",
-"a     c #FFA1A1",
-"b     c #FFFEFE",
-"c     c #FFD7D7",
-"d     c #FFCCCC",
-"e     c #FFF8F8",
-"f     c #B5B5B5",
-"g     c #141414",
-"h     c #7E6161",
-"i     c #FFD1D1",
-"j     c #FFB9B9",
-"k     c #FFD3D3",
-"l     c #FFA2A2",
-"m     c #DFDFDF",
-"n     c #818181",
-"o     c #101010",
-"p     c #E2C7C7",
-"q     c #FFBFBF",
-"r     c #FFEAEA",
-"s     c #FFF9F9",
-"t     c #FFCECE",
-"u     c #525252",
-"v     c #ACACAC",
-"w     c #FFFDFD",
-"x     c #FFA0A0",
-"y     c #9E9E9E",
-"z     c #606060",
-"A     c #FFE0E0",
-"B     c #FFA7A7",
-"C     c #FFF3F3",
-"D     c #FFDADA",
-"E     c #FEFEFE",
-"F     c #323232",
-"G     c #020202",
-"H     c #282828",
-"I     c #656565",
-"J     c #FFE9E9",
-"K     c #FFC3C3",
-"L     c #FFF7F7",
-"M     c #ABABAB",
-"N     c #1F1F1F",
-"O     c #898989",
-"P     c #383838",
-"Q     c #999999",
-"R     c #B3B3B3",
-"S     c #040404",
-"T     c #2B2B2B",
-"U     c #FBFBFB",
-"V     c #7B7B7B",
-"W     c #070707",
-"X     c #CDCDCD",
-"Y     c #DDDDDD",
-"Z     c #0C0C0C",
-"`     c #191919",
-" .    c #C7C7C7",
-"..    c #2D2D2D",
-"+.    c #1B1B1B",
-"@.    c #DEDEDE",
-"#.    c #131313",
-"              .                 ",
-"    + @ # $ % & *   # = -       ",
-"    ; > , ' ) ! ~ { , , ]       ",
-"      ^ / ( _ : : < , [ }       ",
-"    | 1 : 2 , , , , , 3 }       ",
-"4 5 , 6 7 , , , , , , , ' 8     ",
-"  9 0 a b , b c d e , , , , f g ",
-"    h ( , , i j k l ! , , m n . ",
-"  o p q , , r s , t i , u       ",
-"  v w x ! , , , , t i , y       ",
-"z , , A B C , w D _ ! , E F     ",
-"G H I , J B _ _ K L , , , M     ",
-"    N , , , > , , , O P Q R S   ",
-"    T , U V W X , Y Z           ",
-"    `  ...    +.@.;             ",
-"      S         #.              "};
diff --git a/etc/icons/pindown.xpm b/etc/icons/pindown.xpm
deleted file mode 100644 (file)
index 7f5c4f1..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-/* XPM */
-static char *pindown[] = {
-/* width height num_colors chars_per_pixel */
-"    16    16        4            1",
-/* colors */
-". c #000000",
-"# c #c0c0c0",
-"a c #ffffff  s backgroundToolBarColor",
-"b c #808080",
-/* pixels */
-"aaaaaaaaaaaaaaaa",
-"aaaaaaaaaaaaaaaa",
-"aaaaaaaa....aaaa",
-"aaaaaa..#a#a.aaa",
-"aaaa...#a#a#b.aa",
-"aaaa.a.a#a#ab.aa",
-"aaa.a#.#a#ab..aa",
-"aaa.#a.b#abb..aa",
-"aaa.b#b......aaa",
-"aaa.bbbbb....aaa",
-"aaaa.bbb....baaa",
-"aaaa.......baaaa",
-"aaa.bb...bbaaaaa",
-"aaaaaaaaaaaaaaaa",
-"aaaaaaaaaaaaaaaa",
-"aaaaaaaaaaaaaaaa"
-};
diff --git a/etc/icons/print.xpm b/etc/icons/print.xpm
deleted file mode 100644 (file)
index 14dfae6..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/* XPM */
-static char *print[] = {
-/* width height num_colors chars_per_pixel */
-"    28    28       23            1",
-/* colors */
-". c #000000",
-"# c #000080",
-"a c #0000f8",
-"b c #003438",
-"c c #008000",
-"d c #008080",
-"e c #00fc00",
-"f c #202020",
-"g c #303060",
-"h c #4098a0",
-"i c #6064c8",
-"j c #800000",
-"k c #808000",
-"l c #808080",
-"m c #980060",
-"n c #9898f8",
-"o c #b2b2b2  s backgroundToolBarColor",
-"p c #e8e8e8",
-"q c #f80000",
-"r c #f86430",
-"s c #f864c8",
-"t c #f8fc00",
-"u c #f8fcf8",
-/* pixels */
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"ooooooooouuuuuuuuulooooooooo",
-"ooooooooouuuouououlooooooooo",
-"ooooooooouuuuououulooooooooo",
-"ooooooooouuuuuuuuulooooooooo",
-"ooooooooouuuuuuuuulggingoooo",
-"ooooooooouoooooooolgingooooo",
-"oooooooooououououlgingoooooo",
-"ooooooonououououoliggooooooo",
-"oooooiinnniiiiiiiiiiggiooooo",
-"ooooiuuoouonniiinniggiiooooo",
-"ooooiooooouuuuoniiggigiooooo",
-"ooooionooooooooooogggiiglooo",
-"ooooionnnnnnnnnnnngggigfggoo",
-"ooooionnononononnnggiggfgloo",
-"ooooiinononononecnggggfglooo",
-"ooooolliiiiiiiiinngggfgloooo",
-"oooooooooolliigggggffglooooo",
-"oooooooooooooooolgfgoooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo"
-};
diff --git a/etc/icons/reload.xpm b/etc/icons/reload.xpm
deleted file mode 100644 (file)
index 5cc5d9b..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/* XPM */
-static char *reload[] = {
-/* width height num_colors chars_per_pixel */
-"    28    28       23            1",
-/* colors */
-". c #000000",
-"# c #000080",
-"a c #0000f8",
-"b c #003438",
-"c c #008000",
-"d c #008080",
-"e c #00fc00",
-"f c #202020",
-"g c #303060",
-"h c #4098a0",
-"i c #6064c8",
-"j c #800000",
-"k c #808000",
-"l c #808080",
-"m c #980060",
-"n c #9898f8",
-"o c #b2b2b2  s backgroundToolBarColor",
-"p c #e8e8e8",
-"q c #f80000",
-"r c #f86430",
-"s c #f864c8",
-"t c #f8fc00",
-"u c #f8fcf8",
-/* pixels */
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"ooooooooiiiiiiiigooooooooooo",
-"oooooooiuininiif#ggooooooooo",
-"ooooooiunnnnnifff#ggoooooooo",
-"ooiuoooononononnniffgooooooo",
-"oooiuoonononononfffggooooooo",
-"ooooiuoononononfg##ggooooooo",
-"oooooiuooooooifg###ggooooooo",
-"ooooooiuooooifg####ggooooooo",
-"oooooooiuooifgi####ggooooooo",
-"ooooooooiuifgoi####ggooooooo",
-"ooooooooogggooi###fggooooooo",
-"ooooooooooooooi###fggolooooo",
-"oooooooooooooonn#ffggolloooo",
-"oooooonnnnnnnnnif#fggllloooo",
-"oooooonnnnnnnnnifffggiiooooo",
-"oooooonininininiifgigilooooo",
-"ooooooniiiiiiiiiiiigillooooo",
-"oooooooniiggggg#gggilloooooo",
-"oooooooooolllllllllllooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo"
-};
diff --git a/etc/icons/search.xpm b/etc/icons/search.xpm
deleted file mode 100644 (file)
index 813b425..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/* XPM */
-static char *search[] = {
-/* width height num_colors chars_per_pixel */
-"    28    28       23            1",
-/* colors */
-". c #000000",
-"# c #000080",
-"a c #0000f8",
-"b c #003438",
-"c c #008000",
-"d c #008080",
-"e c #00fc00",
-"f c #202020",
-"g c #303060",
-"h c #4098a0",
-"i c #6064c8",
-"j c #800000",
-"k c #808000",
-"l c #808080",
-"m c #980060",
-"n c #9898f8",
-"o c #b2b2b2  s backgroundToolBarColor",
-"p c #e8e8e8",
-"q c #f80000",
-"r c #f86430",
-"s c #f864c8",
-"t c #f8fc00",
-"u c #f8fcf8",
-/* pixels */
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"ooooooooooooooouououoooooooo",
-"oooooooooooooouououououooooo",
-"ooooooooooooououuuuuuuouoooo",
-"oooooooooooououuuuuuuottoooo",
-"ooooooooooooouuuutuuuttouooo",
-"oooooooooooouooootttutouoooo",
-"ooooooooooooniiiintttuuouooo",
-"ooooooooooooinoiifntuuuuoooo",
-"oooooooooooinoniigfotutouooo",
-"ooooooooggofiiiggigoutuuoooo",
-"ooooooofoiiooggggigottouoooo",
-"oooooooiinoongfgfgiouououooo",
-"ooooooinooniigffgiluououoooo",
-"ooooiiooniiigfillloonlnlnooo",
-"oooinoniiigfiooooonilllllooo",
-"oooggiiigfiooooniiiiiillnooo",
-"oooiggigillonliiillnoooooooo",
-"ooonfgflllllllnooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo"
-};
diff --git a/etc/icons/stop.xpm b/etc/icons/stop.xpm
deleted file mode 100644 (file)
index 7219d7e..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/* XPM */
-static char *stop[] = {
-/* width height num_colors chars_per_pixel */
-"    28    28       23            1",
-/* colors */
-". c #000000",
-"# c #000080",
-"a c #0000f8",
-"b c #003438",
-"c c #008000",
-"d c #008080",
-"e c #00fc00",
-"f c #202020",
-"g c #303060",
-"h c #4098a0",
-"i c #6064c8",
-"j c #800000",
-"k c #808000",
-"l c #808080",
-"m c #980060",
-"n c #9898f8",
-"o c #b2b2b2  s backgroundToolBarColor",
-"p c #e8e8e8",
-"q c #f80000",
-"r c #f86430",
-"s c #f864c8",
-"t c #f8fc00",
-"u c #f8fcf8",
-/* pixels */
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"ooooooooiiiiiiiiiiiloooooooo",
-"ooooooonllnlnlnlnligoooooooo",
-"ooooogninnlg.glolol...gooooo",
-"ooooogoioljjjj.lnogli.gooooo",
-"oooooogiojjqjjg.loli.j.ooooo",
-"oooooogiooqqqjg.noiojjoooooo",
-"oooooooioooqqjg.lolgjjoooooo",
-"oooooooionoqjf.fnoigojoooooo",
-"oooooglionnffffilogggggooooo",
-"ooooognion....ignoili.gooooo",
-"oooooogiolggiiggloli.ggooooo",
-"oooooooio.llggggnoioggoooooo",
-"oooooooio.llggfllolgggoooooo",
-"ooooognionlggggnlolggg.ooooo",
-"ooooogniol....flnogli.gooooo",
-"ooooolgio.ffff.gloii.ggooooo",
-"oooooogio.gggfg.noilggoooooo",
-"oooooooiooggfgf.loiggglllooo",
-"oooooooinnnfffglnliflllloooo",
-"ooooooooogggiiiiigi.lllooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo",
-"oooooooooooooooooooooooooooo"
-};
diff --git a/etc/po/ja.po b/etc/po/ja.po
deleted file mode 100644 (file)
index 8221832..0000000
+++ /dev/null
@@ -1,418 +0,0 @@
-# Copyright (C) 1998 Free Software Foundation, Inc.
-# Daiki Ueno <daiki@kiss.kake.info.waseda.ac.jp>, 1998.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: Liece 1.2.8\n"
-"PO-Revision-Date: 1998-12-30 18:09 +0900\n"
-"Last-Translator: Daiki Ueno <daiki@kiss.kake.info.waseda.ac.jp>\n"
-"Language-Team: Daiki Ueno <daiki@kiss.kake.info.waseda.ac.jp>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=euc-japan\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-msgid "IRC error: %s"
-msgstr "IRC ¥¨¥é¡¼: %s"
-
-msgid "%s is now known as %s\n"
-msgstr "%s ¤Ï %s ¤Ë¥Ë¥Ã¥¯¤òÊѹ¹¤·¤Þ¤·¤¿\n"
-
-msgid "IRCHAT: A private message has arrived from %s"
-msgstr "IRCHAT: %s ¤«¤é¥×¥é¥¤¥Ù¡¼¥È¥á¥Ã¥»¡¼¥¸¤¬ÅþÃ夷¤Þ¤·¤¿"
-
-msgid " (has|have) left IRC%s" 
-msgstr " ¤Ï IRC ¤«¤éÎ¥¤ì¤Þ¤·¤¿ %s"
-
-msgid "%s has left IRC%s\n"
-msgstr "%s ¤Ï IRC ¤«¤éÎ¥¤ì¤Þ¤·¤¿ %s\n"
-
-msgid ", %s have left IRC%s"
-msgstr "¡¢%s ¤Ï IRC ¤«¤éÎ¥¤ì¤Þ¤·¤¿ %s"
-
-msgid "New topic on channel %s set by %s: %s\n" 
-msgstr "¥Á¥ã¥ó¥Í¥ë %s ¤Ë %s ¤Ë¤è¤ê¿·¤·¤¤¥È¥Ô¥Ã¥¯¤¬ÀßÄꤵ¤ì¤Þ¤·¤¿: %s\n"
-
-msgid "^%s%sNew mode for %s set by %s: " 
-msgstr "^%s%s %s ¤Ë %s ¤Ë¤è¤ê¿·¤·¤¤¥â¡¼¥É¤¬ÀßÄꤵ¤ì¤Þ¤·¤¿: "
-
-msgid "New mode for %s set by %s: %s\n"
-msgstr "%s ¤Ë %s ¤Ë¤è¤ê¿·¤·¤¤¥â¡¼¥É¤¬ÀßÄꤵ¤ì¤Þ¤·¤¿: %s\n"
-
-msgid "You were kicked off channel %s by %s (%s).\n"
-msgstr "¤¢¤Ê¤¿¤Ï¥Á¥ã¥ó¥Í¥ë %s ¤«¤é %s ¤Ë¤è¤ê½³¤ê½Ð¤µ¤ì¤Þ¤·¤¿: (%s)\n"
-
-msgid "%s has come back as (%s)\n"
-msgstr "%s ¤Ï (%s) ¤È¤·¤Æµ¢¤Ã¤ÆÍè¤Þ¤·¤¿\n"
-
-msgid " (has|have) joined channel %s"
-msgstr " ¤¬ ¥Á¥ã¥ó¥Í¥ë %s ¤Ë»²²Ã¤·¤Þ¤·¤¿"
-
-msgid "%s (%s) has joined channel %s\n"
-msgstr "%s (%s) ¤¬¥Á¥ã¥ó¥Í¥ë %s ¤Ë»²²Ã¤·¤Þ¤·¤¿\n"
-
-msgid ", %s (%s) have joined channel %s"
-msgstr "¡¢%s (%s) ¤¬¥Á¥ã¥ó¥Í¥ë %s ¤Ë»²²Ã¤·¤Þ¤·¤¿"
-
-msgid " (has|have) left channel %s"
-msgstr " ¤Ï ¥Á¥ã¥ó¥Í¥ë %s ¤«¤éÎ¥¤ì¤Þ¤·¤¿"
-
-msgid "%s has left channel %s\n"
-msgstr "%s ¤Ï ¥Á¥ã¥ó¥Í¥ë %s ¤«¤éÎ¥¤ì¤Þ¤·¤¿\n"
-
-msgid ", %s have left channel %s"
-msgstr "¡¢%s ¤Ï ¥Á¥ã¥ó¥Í¥ë %s ¤«¤éÎ¥¤ì¤Þ¤·¤¿"
-
-msgid "%s is now known as %s\n"
-msgstr "%s ¤Ï %s ¤Ë¥Ë¥Ã¥¯¤òÊѹ¹¤·¤Þ¤·¤¿\n"
-
-msgid " \\(has\\|have\\) left IRC%s" 
-msgstr " ¤Ï IRC ¤«¤éÎ¥¤ì¤Þ¤·¤¿ %s"
-
-msgid "%s has left IRC%s\n"
-msgstr "%s ¤Ï IRC ¤«¤éÎ¥¤ì¤Þ¤·¤¿ %s\n"
-
-msgid "%s%s has left IRC%s\n"
-msgstr "%s%s ¤Ï IRC ¤«¤éÎ¥¤ì¤Þ¤·¤¿ %s\n"
-
-msgid "New topic on channel %s set by %s: %s\n"
-msgstr "¥Á¥ã¥ó¥Í¥ë %s ¤Ë %s ¤Ë¤è¤ê¿·¤·¤¤¥È¥Ô¥Ã¥¯¤¬ÀßÄꤵ¤ì¤Þ¤·¤¿: %s\n"
-
-msgid "New mode for %s set by %s: %s\n"
-msgstr "¥Á¥ã¥ó¥Í¥ë %s ¤Ë %s ¤Ë¤è¤ê¿·¤·¤¤¥â¡¼¥É¤¬ÀßÄꤵ¤ì¤Þ¤·¤¿: %s\n"
-
-msgid "%sNew mode for %s set by %s: %s\n"
-msgstr "%s¥Á¥ã¥ó¥Í¥ë %s ¤Ë %s ¤Ë¤è¤ê¿·¤·¤¤¥â¡¼¥É¤¬ÀßÄꤵ¤ì¤Þ¤·¤¿: %s\n"
-
-msgid "You were kicked off channel %s by %s (%s).\n"
-msgstr "¤¢¤Ê¤¿¤Ï¥Á¥ã¥ó¥Í¥ë %s ¤«¤é %s ¤Ë¤è¤ê½³¤ê½Ð¤µ¤ì¤Þ¤·¤¿: (%s)\n"
-
-msgid "%s has come back as (%s)\n"
-msgstr "%s ¤Ï (%s) ¤È¤·¤Æµ¢¤Ã¤ÆÍè¤Þ¤·¤¿\n"
-
-msgid " \\(has\\|have\\) joined channel %s"
-msgstr " ¤¬ ¥Á¥ã¥ó¥Í¥ë %s ¤Ë»²²Ã¤·¤Þ¤·¤¿"
-
-msgid "%s (%s) has joined channel %s\n"
-msgstr "%s (%s) ¤¬¥Á¥ã¥ó¥Í¥ë %s ¤Ë»²²Ã¤·¤Þ¤·¤¿\n"
-
-msgid "%s%s (%s) has joined channel %s\n"
-msgstr "%s%s (%s) ¤¬¥Á¥ã¥ó¥Í¥ë %s ¤Ë»²²Ã¤·¤Þ¤·¤¿\n"
-
-msgid " \\(has\\|have\\) left channel %s"
-msgstr " ¤Ï ¥Á¥ã¥ó¥Í¥ë %s ¤«¤éÎ¥¤ì¤Þ¤·¤¿"
-
-msgid "%s has left channel %s\n"
-msgstr "%s ¤Ï ¥Á¥ã¥ó¥Í¥ë %s ¤«¤éÎ¥¤ì¤Þ¤·¤¿\n"
-
-msgid "%s%s has left channel %s\n"
-msgstr "%s%s ¤Ï ¥Á¥ã¥ó¥Í¥ë %s ¤«¤éÎ¥¤ì¤Þ¤·¤¿\n"
-
-msgid "Quit IRCHAT? "
-msgstr "Liece ¤ò½ªÎ»¤·¤Þ¤¹¤«¡©"
-
-msgid "Start private conversation with: "
-msgstr "²ñÏäò»Ï¤á¤ëÁê¼ê: "
-
-msgid "Join channel: "
-msgstr "»²²Ã¤¹¤ë¥Á¥ã¥ó¥Í¥ë: "
-
-msgid "Key for channel %s: "
-msgstr "¥Á¥ã¥ó¥Í¥ë %s ¤Î¥­¡¼: "
-
-msgid "End private conversation with: "
-msgstr "²ñÏäò½ªÎ»¤¹¤ëÁê¼ê: "
-
-msgid "Part channel: "
-msgstr "Î¥¤ì¤ë¥Á¥ã¥ó¥Í¥ë: "
-
-msgid "Part Message: "
-msgstr "Υæ¥á¥Ã¥»¡¼¥¸: "
-
-msgid "Ignore nickname or regexp: " 
-msgstr "̵»ë¤¹¤ë¥Ë¥Ã¥¯¥Í¡¼¥à¤â¤·¤¯¤ÏÀµµ¬É½¸½: "
-
-msgid "Currently ignoring:"
-msgstr "¸½ºß¤Î̵»ë¥ê¥¹¥È:"
-
-msgid " (%d min)"
-msgstr " (%d ÉÃ)"
-
-msgid " expired"
-msgstr "´ü¸ÂÀÚ¤ì"
-
-msgid "No longer ignoring: %s.\n"
-msgstr "%s ¤ò¤â¤Ï¤ä̵»ë¤·¤Þ¤»¤ó\n"
-
-msgid "Ignoring %s"
-msgstr "%s ¤ò̵»ë¤·¤Æ¤¤¤Þ¤¹"
-
-msgid "To whom: "
-msgstr "ï¤Ë: "
-
-msgid "Send file"
-msgstr "¥Õ¥¡¥¤¥ë¤òÁ÷¿®"
-
-msgid "Receive file"
-msgstr "¥Õ¥¡¥¤¥ë¤ò¼õ¿®"
-
-msgid "Send chat request"
-msgstr "DCC CHATÍ×µá"
-
-msgid "Accept chat request"
-msgstr "DCC CHAT³«»Ï"
-
-msgid "List DCC request"
-msgstr "DCCÍ×µá°ìÍ÷"
-
-msgid "Dispatch stacked DCC requests"
-msgstr "DCCÍ×µá¤ò¾å¤«¤é½ç¤Ë½èÍý"
-
-msgid "Toggle crypt mode"
-msgstr "°Å¹æ²½ on/off"
-
-msgid "Set default key for this channel"
-msgstr "ÈëÌ©¸°¤ÎÀßÄê"
-
-msgid "Add new key to keyring"
-msgstr "ÈëÌ©¸°¤ÎÄɲÃ"
-
-msgid "Remove key from keyring"
-msgstr "ÈëÌ©¸°¤Îºï½ü"
-
-msgid "Toggle private conversation" 
-msgstr "1ÂÐ1ÂÐÏÃ" 
-
-msgid "Start IsON timer"
-msgstr "IsON¥¿¥¤¥Þ³«»Ï"
-
-msgid "Cancel IsON timer"
-msgstr "IsON¥¿¥¤¥Þºï½ü"
-
-msgid "Display userhost"
-msgstr "¥Û¥¹¥È̾¤Îɽ¼¨"
-
-msgid "Ignore nicks / regexp"
-msgstr "¥Ë¥Ã¥¯/Àµµ¬É½¸½¤ò̵»ë"
-
-msgid "Compose mail"
-msgstr "¥á¥¤¥ë¤ÎºîÀ®"
-
-msgid "Join channel"
-msgstr "»²²Ã"
-
-msgid "Part channel"
-msgstr "Υæ"
-
-msgid "Go to next channel"
-msgstr "¼¡¤Î¥Á¥ã¥ó¥Í¥ë"
-
-msgid "Go to previous channel"
-msgstr "Á°¤Î¥Á¥ã¥ó¥Í¥ë"
-
-msgid "Rotate left channels"
-msgstr "¥Á¥ã¥ó¥Í¥ë¥ê¥¹¥È¤òº¸²ó¤ê¤Ë²óž"
-
-msgid "Rotate right channels"
-msgstr "¥Á¥ã¥ó¥Í¥ë¥ê¥¹¥È¤ò±¦²ó¤ê¤Ë²óž"
-
-msgid "Invite to this channel"
-msgstr "¤³¤Î¥Á¥ã¥ó¥Í¥ë¤Ë¾·ÂÔ" 
-
-msgid "Kick out from this channel"
-msgstr "¤³¤Î¥Á¥ã¥ó¥Í¥ë¤«¤é½³¤ê½Ð¤¹" 
-
-msgid "Set mode of this channel"
-msgstr "¥â¡¼¥É¤ÎÀßÄê"
-
-msgid "Set topic of this channel"
-msgstr "¥È¥Ô¥Ã¥¯¤ÎÀßÄê"
-
-msgid "List channel"
-msgstr "¥Á¥ã¥ó¥Í¥ë°ìÍ÷"
-
-msgid "Display names of channel"
-msgstr "¥á¥ó¥Ð¤Îɽ¼¨(¥Ë¥Ã¥¯¤Î¤ß)" 
-
-msgid "Display who are on the channel"
-msgstr "¥á¥ó¥Ð¤Îɽ¼¨"
-
-msgid "Toggle crypt mode"
-msgstr "°Å¹æ²½ on/off"
-
-msgid "Set default key of this channel"
-msgstr "ÈëÌ©¸°¤ÎÀßÄê"
-
-msgid "Request X-Face"
-msgstr "X-Face¤òÍ×µá" 
-
-msgid "Set my X-Face"
-msgstr "¼«Ê¬¤ÎX-Face¤òÀßÄê"
-
-msgid "Strange %s reply"
-msgstr "´ñ̯¤Ê %s ±þÅú¤Ç¤¹"
-
-msgid "Welcome to the Internet Relay Chat world. Your nick is %s.\n"
-msgstr "¤è¤¦¤³¤½ Internet Relay Chat ¤ÎÀ¤³¦¤Ø¡£¤¢¤Ê¤¿¤Î¥Ë¥Ã¥¯¤Ï %s ¤Ç¤¹\n"
-
-msgid "Your server is %s (version %s).\n"
-msgstr "¥µ¡¼¥Ð¤Ï %s (¥Ð¡¼¥¸¥ç¥ó %s) ¤Ç¤¹\n"
-
-msgid "Your client version is %s.\n"
-msgstr "¥¯¥é¥¤¥¢¥ó¥È¤Î¥Ð¡¼¥¸¥ç¥ó¤Ï %s ¤Ç¤¹\n"
-
-msgid "Your server was created %s\n"
-msgstr "¥µ¡¼¥Ð¤Ï %s ¤ËºîÀ®¤µ¤ì¤Þ¤·¤¿\n"
-
-msgid "%s Trying to connect to %s (class %s)\n"
-msgstr "%s %s (¥¯¥é¥¹ %s) ¤ËÀܳ¤ò»î¤ß¤Æ¤¤¤Þ¤¹\n"
-
-msgid "%s Handshaking with %s (class: %s)\n"
-msgstr "%s %s (¥¯¥é¥¹ %s) ¤È°®¼ê¤ò¤·¤Æ¤¤¤Þ¤¹\n"
-
-msgid "Mode for you is %s\n"
-msgstr "¤¢¤Ê¤¿¤Î¥â¡¼¥É¤Ï %s ¤Ç¤¹\n"
-
-msgid "Channels: %s\n"
-msgstr "¥Á¥ã¥ó¥Í¥ë: %s\n"
-
-msgid "Channel"
-msgstr "¥Á¥ã¥ó¥Í¥ë"
-
-msgid "Users"
-msgstr "¥æ¡¼¥¶¿ô"
-
-msgid "Topic"
-msgstr "¥È¥Ô¥Ã¥¯"
-
-msgid "Mode for %s is %s\n"
-msgstr "%s ¤Î¥â¡¼¥É¤Ï %s ¤Ç¤¹\n"
-
-msgid "No topic is set\n"
-msgstr "¥È¥Ô¥Ã¥¯¤ÏÀßÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
-
-msgid "Topic: %s\n"
-msgstr "¥È¥Ô¥Ã¥¯: %s\n"
-
-msgid "Topic for %s: %s\n"
-msgstr "%s ¤Î¥È¥Ô¥Ã¥¯¤Ï: %s\n"
-
-msgid "Inviting user %s\n"
-msgstr "¥æ¡¼¥¶ %s ¤ò¾·ÂÔ¤·¤Æ¤¤¤Þ¤¹\n"
-
-msgid "Inviting user %s to channel %s\n"
-msgstr "¥æ¡¼¥¶ %s ¤ò¥Á¥ã¥ó¥Í¥ë %s ¤Ë¾·ÂÔ¤·¤Æ¤¤¤Þ¤¹\n"
-
-msgid "Machine %s is running IRC version %s (%s)\n"
-msgstr "¥Û¥¹¥È %s ¤Ç¤Ï¥Ð¡¼¥¸¥ç¥ó %s (%s) ¤ÎIRC¥µ¡¼¥Ð¤¬Æ°¤¤¤Æ¤¤¤Þ¤¹\n"
-
-msgid "You just KILLED %s. %s\n"
-msgstr "¤¢¤Ê¤¿¤Ï¤¿¤Ã¤¿º£ %s ¤òKILL¤·¤Þ¤·¤¿ (%s)\n"
-
-msgid "%s has been banned on %s\n"
-msgstr "%s ¤Ï ¥Á¥ã¥ó¥Í¥ë %s ¤Ç ban ¤µ¤ì¤Æ¤¤¤Þ¤¹\n"
-
-msgid "Server time: %s\n"
-msgstr "¥µ¡¼¥Ð¤Î»þ´Ö: %s\n"
-
-msgid "No such user %s"
-msgstr "¥æ¡¼¥¶ %s ¤Ï¸ºß¤·¤Þ¤»¤ó"
-
-msgid "No text to send"
-msgstr "Á÷¤ë¤Ù¤­Ê¸¾Ï¤¬¤¢¤ê¤Þ¤»¤ó"
-
-msgid "Erroneous nickname %s.  Choose a new one with %s."
-msgstr "%s ¤ÏÉÔÀµ¤Ê¥Ë¥Ã¥¯¤Ç¤¹¡£%s ¤È¥¿¥¤¥×¤·¤Æ ¿·¤·¤¤¥Ë¥Ã¥¯¤òÁª¤ó¤Ç²¼¤µ¤¤"
-
-msgid "Nickname %s already in use.  Choose a new one with %."
-msgstr "¥Ë¥Ã¥¯ %s ¤Ï´û¤Ë»ÈÍѤµ¤ì¤Æ¤¤¤Þ¤¹¡£%s ¤È¥¿¥¤¥×¤·¤Æ ¿·¤·¤¤¥Ë¥Ã¥¯¤òÁª¤ó¤Ç²¼¤µ¤¤"
-
-msgid "Password incorrect from %s. Try again with password."
-msgstr "%s ¤Î¥Ñ¥¹¥ï¡¼¥É¤¬ÉÔÀµ¤Ç¤¹¡£¥Ñ¥¹¥ï¡¼¥É¤òºÆÅÙÆþÎϤ·¤Æ²¼¤µ¤¤"
-
-msgid "You are not a channel operator"
-msgstr "¤¢¤Ê¤¿¤Ï¥Á¥ã¥ó¥Í¥ë¥ª¥Ú¥ì¡¼¥¿¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó"
-
-msgid "Style file load failed."
-msgstr "¥¹¥¿¥¤¥ë¥Õ¥¡¥¤¥ë¤ÎÆɤ߹þ¤ß¤Ë¼ºÇÔ¤·¤Þ¤·¤¿"
-
-msgid "Encrypt message with key [RET for none]: "
-msgstr "¥á¥Ã¥»¡¼¥¸¤ò°Å¹æ²½¤¹¤ë¸°¤òÆþÎϤ·¤Æ²¼¤µ¤¤ [RET for none]: "
-
-msgid "Kick out nickname: "
-msgstr "½³¤ê½Ð¤¹¥Ë¥Ã¥¯: "
-
-msgid "Kick Message: "
-msgstr "Íýͳ: "
-
-msgid "LIST channel: "
-msgstr "LIST ¥Á¥ã¥ó¥Í¥ë: "
-
-msgid "Channel: "
-msgstr "¥Á¥ã¥ó¥Í¥ë: "
-
-msgid "Mode for channel %s [%s]: "
-msgstr "¥Á¥ã¥ó¥Í¥ë %s ¤Î¥â¡¼¥É [%s]: "
-
-msgid "Set Operator for"
-msgstr "¤Ê¤ë¤È¤òÉÕ¤±¤ëÁê¼ê"
-
-msgid "Unset Operator for"
-msgstr "¤Ê¤ë¤È¤ò³°¤¹Áê¼ê"
-
-msgid "Set Voice for"
-msgstr "½½»ú²Í¤òÉÕ¤±¤ëÁê¼ê"
-
-msgid "Unset Voice for"
-msgstr "½½»ú²Í¤ò³°¤¹Áê¼ê"
-
-msgid "Private message to: "
-msgstr "¥×¥é¥¤¥Ù¡¼¥È¥á¥Ã¥»¡¼¥¸¤òÁ÷¤ëÁê¼ê: "
-
-msgid "Private message to %s: "
-msgstr "%s ¤Ø¤Î¥á¥Ã¥»¡¼¥¸: "
-
-msgid "To whom: "
-msgstr "ï¤Ë: "
-
-msgid "Names on channel: "
-msgstr "NAMES¤ò¼è¤ë¥Á¥ã¥ó¥Í¥ë: "
-
-msgid "WHO expression: "
-msgstr "WHOɽ¸½: "
-
-msgid "Wait for: "
-msgstr "ÂÔ¤ÄÁê¼ê: "
-
-msgid "Message to send %s upon entering: "
-msgstr "%s ¤ËÁ÷¤ë¥á¥Ã¥»¡¼¥¸: "
-
-msgid "Finger whom: "
-msgstr "¿È¸µ¤òÄ´¤Ù¤ëÁê¼ê: "
-
-msgid "Invite channel: "
-msgstr "¾·ÂÔ¤¹¤ë¥Á¥ã¥ó¥Í¥ë: "
-
-msgid "Invite whom: " 
-msgstr "¾·ÂÔ¤¹¤ëÁê¼ê: "
-
-msgid "Signoff message: "
-msgstr "½ªÎ»¥á¥Ã¥»¡¼¥¸: "
-
-msgid "Whose client: "
-msgstr "ï¤Î¥¯¥é¥¤¥¢¥ó¥È: "
-
-msgid "What info: "
-msgstr "Á÷¤ëCTCP: "
-
-msgid "New userinfo: "
-msgstr "¿·µ¬¥æ¡¼¥¶¾ðÊó: "
-
-msgid "New X-Face: "
-msgstr "¿·µ¬ X-Face: "
-
-msgid "Really SEND from Yank Buffer?"
-msgstr "ËÜÅö¤Ë¥Ð¥Ã¥Õ¥¡¤ÎÆâÍƤòÁ÷¤ê¤Þ¤¹¤«¡©"
-
-msgid "No unread channel or chat partner."
-msgstr "̤ÆɤΥÁ¥ã¥ó¥Í¥ë¤Þ¤¿¤Ï¥Á¥ã¥Ã¥È¤ÎÁê¼ê¤Ï¤¢¤ê¤Þ¤»¤ó"
-
diff --git a/etc/styles/bottom b/etc/styles/bottom
deleted file mode 100644 (file)
index e335817..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-;; -*- emacs-lisp -*-
-;;; bottom --- Window configuration style spec for `bottom'.
-;; Copyright (C) 1998 Daiki Ueno <daiki@kake.info.waseda.ac.jp>
-;; See file liece-copyright.el for original change log and copyright info.
-
-;; Author: Daiki Ueno <daiki@kake.info.waseda.ac.jp>
-;; Created: 1999-01-08
-;; Revised: 1999-01-08
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-;;; Code:
-
-(liece-window-add-style
- (command-buffer-mode . any)
- (channel-buffer-mode . t) 
- (nick-buffer-mode . t)
- (channel-list-buffer-mode . t)
- (configuration 
-  (vertical
-   1.0
-   (horizontal
-    1.0
-    (others 1.0)
-    (channel-list 
-     liece-channel-list-window-width-percent))
-   (horizontal
-    liece-channel-window-height-percent   
-    (channel 1.0)
-    (nick liece-nick-window-width-percent))
-   (command 4 point))))
-
-(liece-window-add-style
- (command-buffer-mode . any)
- (channel-buffer-mode . t) 
- (nick-buffer-mode . nil)
- (channel-list-buffer-mode . t)
- (configuration 
-  (vertical
-   1.0
-   (horizontal 
-    1.0
-    (others 1.0)
-    (channel-list 
-     liece-channel-list-window-width-percent))
-   (channel liece-channel-window-height-percent)
-   (command 4 point))))
-
-(liece-window-add-style
- (command-buffer-mode . any)
- (channel-buffer-mode . t) 
- (nick-buffer-mode . t)
- (channel-list-buffer-mode . nil)
- (configuration 
-  (vertical
-   1.0
-   (others 1.0)
-   (horizontal
-    liece-channel-window-height-percent   
-    (channel 1.0)
-    (nick liece-nick-window-width-percent))
-   (command 4 point))))
-
-(liece-window-add-style
- (command-buffer-mode . any)
- (channel-buffer-mode . t) 
- (nick-buffer-mode . nil)
- (channel-list-buffer-mode . nil)
- (configuration 
-  (vertical
-   1.0
-   (others 1.0)
-   (channel liece-channel-window-height-percent)
-   (command 4 point))))
-
-(liece-window-add-style
- (command-buffer-mode . any)
- (channel-buffer-mode . nil) 
- (nick-buffer-mode . any)
- (channel-list-buffer-mode . any)
- (configuration 
-  (vertical
-   1.0
-   (dialogue 1.0)
-   (command 4 point))))
diff --git a/etc/styles/middle b/etc/styles/middle
deleted file mode 100644 (file)
index 278615c..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-;; -*- emacs-lisp -*-
-;;; middle --- Window configuration style spec for `middle'.
-;; Copyright (C) 1998 Daiki Ueno <daiki@kake.info.waseda.ac.jp>
-;; See file liece-copyright.el for original change log and copyright info.
-
-;; Author: Daiki Ueno <daiki@kake.info.waseda.ac.jp>
-;; Created: 1999-01-08
-;; Revised: 1999-01-08
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-;;; Code:
-
-(liece-window-add-style
- (command-buffer-mode . any)
- (channel-buffer-mode . t) 
- (nick-buffer-mode . t)
- (channel-list-buffer-mode . t)
- (configuration 
-  (horizontal
-   1.0
-   (vertical
-    1.0
-    (channel liece-channel-window-height-percent)
-    (command 3 point)
-    (others 1.0))
-   (vertical
-    liece-nick-window-width-percent
-    (nick 0.5)
-    (channel-list 1.0)))))
-
-(liece-window-add-style
- (command-buffer-mode . any)
- (channel-buffer-mode . t) 
- (nick-buffer-mode . nil)
- (channel-list-buffer-mode . t)
- (configuration 
-  (vertical
-   1.0
-   (horizontal 
-    1.0
-    (others 1.0)
-    (channel-list 
-     liece-channel-list-window-width-percent))
-   (horizontal
-    liece-channel-window-height-percent
-    (channel 1.0))
-   (command 3 point))))
-
-(liece-window-add-style
- (command-buffer-mode . any)
- (channel-buffer-mode . t) 
- (nick-buffer-mode . nil)
- (channel-list-buffer-mode . nil)
- (configuration 
-  (vertical
-   1.0
-   (others 1.0)
-   (channel liece-channel-window-height-percent)
-   (command 3 point))))
-
-(liece-window-add-style
- (command-buffer-mode . any)
- (channel-buffer-mode . nil) 
- (nick-buffer-mode . any)
- (channel-list-buffer-mode . any)
- (configuration 
-  (vertical
-   1.0
-   (dialogue 1.0)
-   (command 3 point))))
diff --git a/etc/styles/top b/etc/styles/top
deleted file mode 100644 (file)
index e013760..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-;;; top --- Window configuration style spec for `top'. -*- emacs-lisp -*-
-;; Copyright (C) 1998 Daiki Ueno <daiki@kake.info.waseda.ac.jp>
-;; See file liece-copyright.el for original change log and copyright info.
-
-;; Author: Daiki Ueno <daiki@kake.info.waseda.ac.jp>
-;; Created: 1999-01-08
-;; Revised: 1999-01-08
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-;;; Code:
-
-(liece-window-add-style
- (command-buffer-mode . any)
- (channel-buffer-mode . t) 
- (nick-buffer-mode . t)
- (channel-list-buffer-mode . t)
- (configuration 
-  (vertical
-   1.0
-   (command 4 point)
-   (horizontal
-    liece-channel-window-height-percent   
-    (channel 1.0)
-    (nick liece-nick-window-width-percent))
-   (horizontal
-    1.0
-    (others 1.0)
-    (channel-list 
-     liece-channel-list-window-width-percent)))))
-
-(liece-window-add-style
- (command-buffer-mode . any)
- (channel-buffer-mode . t) 
- (nick-buffer-mode . nil)
- (channel-list-buffer-mode . t)
- (configuration 
-  (vertical
-   1.0
-   (command 4 point)
-   (horizontal
-    liece-channel-window-height-percent
-    (channel 1.0))
-   (horizontal 
-    1.0
-    (others 1.0)
-    (channel-list 
-     liece-channel-list-window-width-percent)))))
-
-(liece-window-add-style
- (command-buffer-mode . any)
- (channel-buffer-mode . t) 
- (nick-buffer-mode . t)
- (channel-list-buffer-mode . nil)
- (configuration 
-  (vertical
-   1.0
-   (command 4 point)
-   (horizontal
-    liece-channel-window-height-percent   
-    (channel 1.0)
-    (nick liece-nick-window-width-percent))
-   (others 1.0))))
-
-(liece-window-add-style
- (command-buffer-mode . any)
- (channel-buffer-mode . t) 
- (nick-buffer-mode . nil)
- (channel-list-buffer-mode . nil)
- (configuration 
-  (vertical
-   1.0
-   (command 4 point)
-   (channel liece-channel-window-height-percent)
-   (others 1.0))))
-
-(liece-window-add-style
- (command-buffer-mode . any)
- (channel-buffer-mode . nil) 
- (nick-buffer-mode . any)
- (channel-list-buffer-mode . any)
- (configuration 
-  (vertical
-   1.0
-   (command 4 point)
-   (dialogue 1.0))))
-
diff --git a/lisp/.cvsignore b/lisp/.cvsignore
deleted file mode 100644 (file)
index 2c31d3a..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-Makefile.in
-liece-setup.el
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
deleted file mode 100644 (file)
index 8cbb0dd..0000000
+++ /dev/null
@@ -1,4066 +0,0 @@
-2000-09-17  Akira Ohashi  <bg66@luck.gr.jp>
-
-       * liece-menu.el (liece-menu-channel-menu): Move `liece-command-freeze'
-       from `liece-menu-IRC-menu'.
-       (liece-menu-channel-menu): Move `liece-command-own-freeze'
-       from 'liece-menu-IRC-menu'.
-       (liece-menu-channel-menu): New menu item `liece-dialogue-beep'.
-
-2000-09-17  Akira Ohashi  <bg66@luck.gr.jp>
-
-       * liece-channel.el (liece-channel-read-functions): Rename from
-       `liece-channel-read-hook'.
-
-       * liece-handle.el (liece-channel-unread-functions): Rename from
-       `liece-channel-unread-hook'.
-
-       * liece-emacs.el (toplevel): Use them.
-
-       * liece-xemacs.el (toplevel): Ditto.
-
-2000-09-17   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-make.el (make-liece-sample-files): Abolish.
-       (make-liece-info-files): Abolish.
-
-       * liece-url.el (liece-add-url-functions): Rename from `liece-url-add-hook'.
-
-       * liece.el (liece-after-insert-functions): Rename from `liece-insert-hook'.
-       (liece-before-insert-functions): Rename from `liece-before-insert-hook'.
-
-       * liece-handle.el (liece-notice-cleartext-hook): Abolish.
-       (liece-privmsg-cleartext-hook): Abolish.
-
-       * liece-filter.el (liece-handle-message): Simplify.
-
-       * liece-ctcp.el (liece-ctcp-message): Don't ignore errors in hooks.
-       (liece-ctcp-notice): Ditto.
-       (liece-ctcp-file-notice): Ditto.
-
-       * liece-channel.el (liece-channel-add-mode): Don't use pushnew.
-       (liece-channel-add-exception): Ditto.
-       (liece-channel-add-invite): Ditto.
-
-2000-09-12   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-vars.el (liece-inhibit-startup-message): New user option.
-
-2000-09-11   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-xemacs.el (liece-xemacs-splash-at-point): Don't check `console-type'.
-       (liece-x-face-insert-with-xemacs): Ditto.
-
-2000-09-11  Akira Ohashi  <bg66@luck.gr.jp>
-
-       * liece-emacs.el (liece-emacs-unread-character): Abolish.
-
-       * liece-vars.el (liece-channel-unread-character): New variable.
-
-       * liece-xemacs.el (liece-xemacs-unread-mark): Simplify; Don't use
-       `featurep' and `console-type'.
-       (toplevel): Ditto.
-
-2000-09-11   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-minibuf.el: Autoload `completing-read-multiple'; declare
-       `crm-separator'.
-       (liece-minibuffer-completing-read): Rename from
-       `liece-minibuffer-completing-default-read'; accept optional arguments
-       `history' and `default'.
-       (liece-minibuffer-completion-separator): New variable.
-       (liece-minibuffer-completion-table): New variable.
-       (liece-minibuffer-completing-read-multiple-1): New completion function.
-       (liece-minibuffer-completing-read-multiple): Rename from
-       `liece-minibuffer-completing-sequential-read'; accept optional
-       arguments `history' and `default'; use `completing-read-multiple'
-       when optional 8th argument `multiple-candidate' is specified.
-
-       * liece-xemacs.el (liece-xemacs-redisplay-unread-mark): Don't bind `chnl'.
-
-2000-09-11   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-commands.el (liece-command-quit): Don't send QUIT.
-
-       * liece-emacs.el (liece-emacs-splash): Use `generate-new-buffer'
-       instead of `liece-get-buffer-create'
-
-       * liece-xemacs.el (liece-xemacs-splash): Synch with liece-emacs.el
-
-       * liece.el (liece-clear-system): Call
-       `liece-buffer-dispose-function' instead of burying buffer.
-       (liece-open-server-internal): Simplify; Don't use
-       `liece-get-buffer-create' to prepare process-buffer.
-       (liece-close-server): Accept optional argument `quit-string'.
-
-       * liece-vars.el (liece-buffer-dispose-function): New variable.
-
-2000-09-10   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-inlines.el (string-list-remove-ignore-case): Remove car of the element.
-       (string-list-delete-ignore-case): Ditto.
-       (string-list-remove): Ditto.
-       (string-list-delete): Ditto.
-
-2000-09-06   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-clfns.el (remq): New compiler macro.
-
-2000-09-05  Akira Ohashi  <bg66@luck.gr.jp>
-
-       * liece-channel.el (liece-channel-redisplay-buffer): New hook
-       `liece-channel-read-hook'.
-       (liece-channel-change): Run `liece-redisplay-unread-mark'.
-
-       * liece-handle.el (liece-handle-privmsg-message): New hook
-       `liece-channel-unread-hook'.
-
-       * liece-vars.el (liece-display-unread-mark): New variable.
-
-       * liece-xemacs.el (liece-xemacs-unread-icon): Rename from
-       `liece-xemacs-channel-balloon-icon'.
-       (liece-xemacs-unread-mark): Rename and simplified from
-       `liece-xemacs-channel-balloon'.
-       (liece-xemacs-read-mark): Rename and simplified from
-       `liece-xemacs-channel-balloon-kill'.
-       (liece-xemacs-redisplay-unread-mark): New function.
-       (toplevel): Add them to hook.
-
-       * liece-emacs.el (liece-emacs-unread-character): New variable.
-       (liece-emacs-unread-mark): New function.
-       (liece-emacs-read-mark): Ditto.
-       (liece-emacs-redisplay-unread-mark): Ditto.
-       (toplevel): Add them to hook.
-
-2000-09-04   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-inlines.el (string-equal-ignore-case): Check return value
-       of `compare-strings'.
-
-2000-09-03   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-clfns.el: Require `pym'.
-       (liece-clfns-subr-fboundp): New macro.
-       (last,member-if,member-if-not,delete-if,remove-if,remove-if-not,
-       assoc-if,rassoc-if): Use it.
-
-       * liece-inlines.el (string-list-member-ignore-case): Use
-       `member-ignore-case'.
-       (string-list-remove-ignore-case): Use remq.
-       (string-list-member): Abolish.
-       (string-list-delete-ignore-case): Use delq.
-       (string-equal-ignore-case): Use `compare-strings' if available.
-
-2000-09-01   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-channel.el (liece-channel-change): Handle
-       `liece-current-chat-partner'.
-
-       * Makefile.am (SOURCES): Remove `liece-crypt'.
-
-       * liece-crypt.el: Remove.
-
-       * liece-400.el (liece-handle-433-message): Use `liece-beep'
-       (liece-handle-432-message): Ditto.
-
-       * liece-misc.el (liece-beep): New macro.
-       (liece-set-beep): Rename from `liece-beep'.
-
-       * liece-xemacs.el (liece-xemacs-channel-balloon): Abolish local
-       variable `chnl'.
-
-       * liece.el: Don't require `liece-crypt'.
-       (liece-crypt-map): Abolish.
-       (liece-buffer-mode-alist): Remove `liece-CRYPT-buffer'.
-       (liece-command-mode-map): Don't bind
-       `liece-command-enter-message-opposite-crypt-mode'.
-       (liece): Don't initialize crypt indicator.
-       (liece-command-mode): Ditto.
-       (liece-dialogue-mode): Ditto.
-       (liece-channel-mode): Ditto.
-
-       * liece-xemacs.el: Don't require `liece-crypt'.
-       (liece-toolbar-crypt-active-icon): Abolish.
-       (liece-toolbar-crypt-inactive-icon): Abolish.
-       (liece-toolbar-crypt-icon): Abolish.
-       (liece-toolbar-crypt-glyph): Abolish.
-       (liece-toolbar-crypt-active-glyph): Abolish.
-       (liece-toolbar-crypt-inactive-glyph): Abolish.
-       (liece-toolbar-spec-list): Don't set `liece-toolbar-crypt-glyph'.
-       (liece-xemacs-setup-toolbar-hook): Remove `liece-toolbar-setup-crypt-glyph'.
-       (liece-toolbar-setup-crypt-glyph): Abolish.
-       (liece-toolbar-toggle-crypt): Abolish.
-
-       * liece-vars.el (liece-defected-message-prefix): Abolish.
-       (liece-suspicious-message-prefix): Abolish.
-       (liece-beep-function): New variable.
-
-       * liece-message.el (liece-message-brackets-function): Don't handle
-       `liece-message-encrypted-p'.
-       (liece-message-encrypted-p): Abolish.
-       (liece-message-suspicious-p): Abolish.
-       (liece-message-garbled-p): Abolish.
-       (liece-message-fingerprint): Abolish.
-       (liece-message-timestamp): Abolish.
-
-       * liece-menu.el (liece-menu-crypt-menu): Abolish.
-       (liece-menu-channel-menu): Remove `liece-menu-crypt-menu'.
-       (liece-menu-alist): Ditto.
-       (liece-menu-crypt-menu-map): Abolish.
-
-       * liece-handle.el (liece-handle-notice-message): Don't use
-       `with-liece-decryption'.
-       (liece-handle-privmsg-message): Ditto.
-       Use `liece-beep' instead of `beep'.
-
-       * liece-modules.el (liece-modules-to-compile): Remove `liece-crypt'.
-
-       * liece-globals.el (liece-crypt-indicator): Abolish.
-       (liece-CRYPT-buffer): Abolish.
-       (liece-C-buffer): Abolish.
-
-       * liece-commands.el: Don't require `liece-crypt'.
-       (liece-command-send-message): Abolish optional argument ARG and KEY.
-       (liece-command-enter-message): Ditto.
-       (liece-command-message): Ditto.
-       (liece-enter-message): Abolish.
-       (liece-command-part): Don't set crypt indicator.
-       (liece-switch-to-channel): Ditto.
-       (liece-switch-to-channel-no): Ditto.
-       (liece-command-private-conversation): Ditto.
-       (liece-command-toggle-crypt): Abolish.
-
-2000-08-31  Akira Ohashi  <bg66@luck.gr.jp>
-
-       * liece-handle.el (liece-handle-privmsg-message): Fixed.
-
-2000-08-30  Akira Ohashi  <bg66@luck.gr.jp>
-
-       * liece-commands.el (liece-command-unread-channel): New function.
-
-       * liece.el (liece-command-map): Bind "\C-u" to it.
-       (liece-channel-list-mode-map): Bind "u" to it.
-
-2000-08-29   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-channel.el (liece-channel-change): Run
-       `liece-redisplay-buffer-functions' only when
-       `liece-current-channel' is non-nil.
-
-       * liece-commands.el (liece-command-who): Check
-       `liece-current-channel'.
-       (liece-command-names): Ditto.
-       Suggested by: Yoichi NAKAYAMA <yoichi@eken.phys.nagoya-u.ac.jp>.
-
-2000-08-30  Akira Ohashi <bg66@luck.gr.jp>
-
-       * liece-vars.el (liece-channel-unread-list): New variable.
-
-       * liece-channel.el (liece-channel-unread-p): New function.
-       (liece-channel-redisplay-buffer): Use it.
-
-       * liece-handle.el (liece-handle-privmsg-message): Ditto.
-
-2000-08-29  Akira Ohashi  <bg66@luck.gr.jp>
-
-       * liece-channel.el (liece-channel-change): Run
-       `liece-redisplay-buffer-functions'.
-
-2000-08-23   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-handle.el (liece-handle-privmsg-message): Use
-       `liece-pick-buffer-1' to construct channel buffer name.
-
-2000-08-23  Akira Ohashi  <bg66@luck.gr.jp>
-
-       * liece-xemacs.el (liece-xemacs-channel-balloon): New function.
-       Show balloon icon to `liece-cahnnel-list-buffer' as XEmacs glyphs
-       when non-current channel message is received.
-       (liece-xemacs-channel-balloon-kill): New function.
-       Kill the balloon icon.
-       
-2000-08-17   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece.el (liece-server-keyword-map): Bind connection type.
-
-2000-08-16   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece.el (liece-open-server-internal): Use
-       `liece-open-network-stream'; bind liece-tcp-connection-type.
-
-       * liece-tcp.el (liece-tcp-open-program-stream-as-binary): Abolish.
-       (liece-tcp-open-ssl-stream-as-binary): Abolish.
-       (liece-tcp-open-rlogin-stream-as-binary): Abolish.
-       (liece-tcp-wait-for-string): Abolish.
-       (liece-tcp-stream-alist): New variable.
-       (liece-open-network-stream): Abolish 5th argument `type'.
-
-2000-08-01  Yoshiki Hayashi  <yoshiki@xemacs.org>
-
-       * liece-xemacs.el (liece-toolbar-position): Use
-       function defaul-toolbar-position instead of variable.
-
-2000-07-17   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-emacs.el (create-image): Don't advise.
-       (liece-widget-keymap): Remove checking about 'button3.
-       (liece-emacs-widget-button-click): Save point in window explicitly.
-
-       * liece-ctcp.el (liece-command-ctcp-generic): Fix format string.
-
-2000-07-16  Akira Ohashi  <bg66@luck.gr.jp>
-
-       * liece-commands.el (liece-command-beep): New function.
-       Toggle the automatic beep notice when the channel message is received.
-
-       * liece.el (liece-dialogue-mode-map): Bind "B" to liece-dialogue-beep.
-
-       * liece-vars.el (liece-default-beep): New variable.
-       (liece-beep-when-invited): Ditto.
-       (liece-beep-when-privmsg): Ditto.
-       (liece-beep-words-list): Ditto.
-
-2000-05-07   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-tcp.el
-       (liece-tcp-rlogin-parameters): Use `socket' instead of `telnet'.
-       (liece-tcp-open-rlogin-stream): Don't wait for a connection.
-       (liece-tcp-open-rlogin-stream-as-binary): Simply wrap
-       `liece-tcp-open-rlogin-stream'.
-
-2000-04-21   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-ctcp.el
-       (liece-ctcp-make-menu-command-wrapper): Quote CTCP subcommands.
-
-       * liece-mail.el (liece-maintainer-address): New ML address.
-
-2000-04-12   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-url.el: Don't require browse-url when compiling.
-       (liece-url-browser-name): Abolish.
-       (liece-url-prepare-browser-function): Abolish.
-       (liece-url-mail-regexp): Abolish.
-       (liece-url-browser-function): Abolish.
-       (liece-url-link-action): Use browse-url directly.
-       (liece-command-browse-url): Ditto.
-       (liece-url-add-buttons): Remove local variable `url-start',
-       `url-end' and `url'.
-       Suggested by: Kenichi OKADA <okada@opaopa.org>
-
-       * liece-xemacs.el
-       (liece-toolbar-position): Check feature 'toolbar was provided.
-
-2000-04-08   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-xemacs.el (liece-xemacs-setup-toolbar): Run
-       `liece-xemacs-setup-toolbar-hook' only once.
-       (liece-setup-toolbar): Don't check return value
-       of `liece-xemacs-setup-toolbar'.
-       Reported by: Yosuke MITSUMASU <werdna@ntn.org>
-
-2000-04-05   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-commands.el: Add autoload for liece-command-ctcp-version,
-       liece-command-ctcp-userinfo,liece-command-ctcp-clientinfo,
-       liece-command-ctcp-ping,liece-command-ctcp-time,
-       liece-command-ctcp-x-face,liece-command-ctcp-comment,
-       liece-command-ctcp-help.
-       Suggested by: HARUYAMA Seigo <haruyama@unixuser.org>.
-
-       * liece-ctcp.el
-       (liece-ctcp-make-menu-command-wrapper): Don't use `#'.
-       (liece-ctcp-make-command-wrapper): Ditto.
-
-2000-04-04   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece.el (liece-client-query-keys): Rename all commands.
-
-       * liece-vars.el
-       (liece-ctcp-userinfo): Rename from `liece-client-userinfo'.
-       (liece-ctcp-x-face): Ditto.
-
-       * liece-ctcp.el (liece-ctcp-message): Abolish macro.
-       (liece-ctcp-file-message): Ditto.
-
-2000-03-28   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-emacs.el: Require `derived'.
-
-2000-03-24   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-inlines.el (liece-locate-path): Use
-       `liece-locate-data-directory' instead of `locate-data-directory'.
-
-2000-03-23   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-q-ccl.el (ccl-set-register-right): Abolish.
-       (liece-quote-ccl-decode): Simplified.
-
-       * liece-compat.el (liece-suppress-mode-line-format): Copy original
-       `mode-line-format' before modification.
-       (locate-data-directory): Abolish.
-       (liece-locate-data-directory): New function.
-
-       * liece-xemacs.el (liece-xemacs-suppress-modeline-format): Ditto.
-       (liece-locate-data-directory): Override with `locate-data-directory'.
-
-       * liece.el
-       (liece-command-mode): Define `mode-line-format' as buffer local.
-       (liece-dialogue-mode): Exchange `mode-line-modified' position.
-       (liece-clear-system): Check buffer status.
-
-       * liece-ctcp.el (liece-ctcp-xyzzy-message): Abolish.
-       (liece-command-send-file): Don't narrowing buffer.
-       (liece-ctcp-file-save-directory): Default to `liece-directory'.
-       (liece-register-file-handler): New macro.
-       (liece-ctcp-notice): Rewrite.
-       (liece-ctcp-message): Rewrite.
-       (liece-query-client-insert-to-generic): Abolish.
-       (liece-query-client-version): Abolish.
-       (liece-query-client-userinfo): Abolish.
-       (liece-query-client-help): Abolish.
-       (liece-query-client-clientinfo): Abolish.
-       (liece-query-client-ping): Abolish.
-       (liece-query-client-time): Abolish.
-       (liece-query-client-x-face): Abolish.
-       (liece-query-client-last-command): Rename from
-       `liece-query-client-lastcommand'.
-       (liece-query-client-alist): Abolish.
-       (liece-ctcp-last-nick): Rename from `liece-query-client-nick'.
-       (liece-command-ctcp-x-face-from-minibuffer): Abolish.
-       (liece-command-ctcp-x-face-from-commandbuffer): Abolish.
-       (liece-command-ctcp-userinfo-from-commandbuffer): Abolish.
-
-2000-03-22   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-xemacs.el (liece-xemacs-icon-path): Abolish.
-       (liece-toolbar-position): Default to `default-toolbar-position'.
-       (liece-xemacs-setup-toolbar): Remove directory checking.
-       (liece-xemacs-modeline-glyph): Suppress glyph specs.
-       (liece-xemacs-create-nick-glyph): Ditto.
-
-       * liece-emacs.el (liece-emacs-icon-path): Abolish.
-
-       * liece-intl.el (liece-intl-load-catalogue): Rewrite with
-       `liece-locate-path'; remove local binding.
-
-       * liece-window.el (liece-window-load-style-file): Rewrite with
-       `liece-locate-path'; remove local binding.
-
-       * liece-compat.el (locate-data-directory): New function.
-
-       * liece-inlines.el (liece-find-data-directory): Abolish.
-       (liece-locate-path): Rename from `liece-find-path'; use
-       `locate-data-directory'; reorder arguments.
-       (liece-locate-icon-file): New function.
-
-2000-03-20   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-globals.el
-       (liece-command-buffer,liece-dialogue-buffer,liece-private-buffer,
-       liece-others-buffer,liece-channel-buffer,
-       liece-channel-buffer-format,liece-channel-list-buffer,
-       liece-nick-buffer,liece-nick-buffer-format,
-       liece-KILLS-buffer,liece-IGNORED-buffer,liece-WALLOPS-buffer,
-       liece-CRYPT-buffer,liece-server-buffer): Remove preceding `*IRC*'.
-
-       * liece-xemacs.el
-       (liece-xemacs-splash-at-point): Bind
-       `liece-insert-environment-version' to nil.
-       (liece-xemacs-splash): Ditto.
-       (liece-xemacs-suppress-modeline-format): New function.
-       (liece-suppress-mode-line-format): Override with
-       `liece-xemacs-suppress-modeline-format'.
-       (liece-xemacs-mode-line-buffer-identification): Decorate 1st
-       element and modify whole identification by side effect.
-
-       * liece-compat.el (current-language-environment): Abolish.
-       (frame-title-format): Abolish.
-       (enable-multibyte-characters): Abolish.
-       (liece-suppress-mode-line-format): New function.
-
-       * liece-version.el: Use product.el.
-       (liece-version): New function.
-       (liece-user-interface-product): Abolish.
-       (liece-product-name): Abolish.
-       (liece-product-version): Abolish.
-       (liece-product-code-name): Abolish.
-       (liece-user-agent-value): Abolish.
-       (liece-command-version): Abolish.
-       (liece-environment-version): Rename from
-       `liece-emacs-user-agent-value'.
-
-       * bitmap-stipple.el
-       (bitmap-stipple-insert-pixmap): Don't set point to `point-min'.
-
-       * liece-xbm.el: Update.
-
-       * liece-emacs.el (liece-emacs-splash): Display version number;
-       bind `liece-insert-environment-version' to nil.
-       (liece-emacs-mode-line-buffer-identification): Decorate 1st
-       element and modify whole identification by side effect.
-
-       * liece-vars.el (liece-nick-max-length): New variable.
-       (liece-insert-environment-version): New variable.
-
-       * liece.el (liece-truncate-nickname): Abolish.
-       (liece-client-query-keys,liece-dialogue-keys,
-       liece-select-keys,liece-crypt-keys): Define as a plist.
-       (liece-local-set-keys): New function borrowed from gnus-util.el.
-       (liece-define-keys): Ditto.
-       (liece-define-keys-safe): Ditto.
-       (liece-define-keys-1): Ditto.
-       (liece-command-map): Bind "\C-m" to liece-command-modec.
-       (liece-command-mode): Don't set `mode-line-format' directly;
-       exchange `mode-line-modified' position;
-       (liece-dialogue-mode): Ditto.
-       (liece-others-mode): Ditto.
-       (liece-channel-mode): Ditto.
-       (liece-nick-mode): Ditto.
-       (liece-channel-list-mode): Ditto.
-
-2000-03-19   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * gettext.el (bind-text-domain): Don't refer "PATHNAME/DOMAIN.mo"
-       directly.
-
-       * bitmap-stipple.el,gettext.el,liece-000.el,liece-200.el,
-       liece-300.el,liece-400.el,liece-500.el,liece-commands.el,
-       liece-config.el,liece-crypt.el,liece-ctcp.el,liece-dcc.el,
-       liece-filter.el,liece-globals.el,liece-handle.el,liece-hilit.el,
-       liece-inlines.el,liece-intl.el,liece-mail.el,liece-make.el,
-       liece-menu.el,liece-message.el,liece-minibuf.el,liece-misc.el,
-       liece-nick.el,liece-q-ccl.el,liece-q-el.el,liece-tcp.el,
-       liece-version.el,liece-window.el,liece-x-face.el: Checkdoc.
-
-       * liece-menu.el (liece-nick-popup-menu): Use copy-sequence instead
-       of copy-tree.
-
-       * liece-modules.el (liece-modules-to-compile): Modify for
-       `liece-clfns' and `liece-handler'.
-
-       * liece-handler.el: Rename from llunf.el.
-
-       * liece-clfns.el: New file.
-
-       * liece-channel.el (liece-channel-add-buttons): Fix regexp.
-       (liece-channel-add-ban): Use add-to-list instead of pushnew.
-
-       * liece-coding.el
-       (liece-default-coding-system): Abolish.
-       (liece-mime-charset-for-write): Rename from
-       `liece-default-mime-charset'.
-       (liece-mime-charset-for-read): Rename from
-       `liece-default-mime-charset-for-read'.
-
-       * liece.el (liece-client-query-map,liece-dcc-map,
-       liece-crypt-map,liece-friends-map,liece-channel-list-mode-map,
-       liece-nick-mode-map,): Use make-sparse-keymap when initialising.
-       (liece-command-mode): Don't set liece-display-frame-title to nil.
-       (liece-dialogue-mode-map): Bind `L' to liece-command-load-vars
-       instead of `C-l'; bind `S' to liece-command-save-vars instead of
-       `s'; bind `M' to liece-command-modec instead of `C-m'; bind `O' to
-       liece-dialogue-own-freeze instead of `M'.
-       (liece-buffer-last-check-time): Rename from
-       `liece-last-checkbuffer-time'.
-       (liece-check-buffers): Define as function.
-       (liece-check-buffers-if-interval-expired): Simplified.
-
-       * liece-vars.el
-       (liece-buffer-max-size): Rename from `liece-buffer-maxsize'.
-       (liece-buffer-default-size): Rename from `liece-buffer-defsize'.
-       (liece-buffer-check-interval): Rename from
-       `liece-checkbuffer-interval'.
-
-       * liece-emacs.el (liece-emacs-widget-button-click): Don't use
-       `event-buffer'.
-
-       * liece-xemacs.el
-       (liece-xemacs-get-buffer-window-list): Abolish.
-       (liece-xemacs-run-at-time): Abolish.
-       (liece-xemacs-put-text-property): Abolish.
-       (liece-xemacs-add-text-property): Abolish.
-
-       * liece-minibuf.el (liece-minibuffer-map): Use `set-keymap-parent'
-       instead of `liece-set-keymap-parents'.
-
-       * liece-compat.el: Don't require emu, broken, alist.
-       (remassoc): Abolish.
-       (remassq): Abolish.
-       (liece-run-at-time): Abolish.
-       (liece-cancel-timer): Abolish.
-       (with-timeout): Abolish.
-       (with-timeout-handler): Abolish.
-       (liece-get-buffer-window-list): Abolish.
-       (liece-set-keymap-parents): Abolish.
-       (event-buffer): Abolish.
-       (event-point): Abolish.
-       (truncate-string-to-width): Abolish.
-       (plist-get): Abolish.
-       (read-passwd): Abolish.
-       (colon-keyword-usable): Abolish.
-       (turn-on-font-lock): Abolish.
-       (liece-make-overlay): Abolish.
-       (liece-delete-overlay): Abolish.
-       (liece-overlay-put): Abolish.
-       (liece-move-overlay): Abolish.
-       (liece-overlay-end): Abolish.
-       (liece-overlay-get): Abolish.
-       (liece-overlays-at): Abolish.
-       (liece-put-text-property): Abolish.
-       (liece-add-text-property): Abolish.
-       (buffer-disable-undo): Abolish.
-       (valid-plist-p): Abolish.
-
-       * liece-url.el (liece-url-browser-netscape): Abolish.
-
-2000-03-08   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-compat.el (liece-get-buffer-window): Search all frames.
-
-2000-02-28   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece.el (liece-command-mode): Set frame-title-format when
-       running on window-system environment.
-
-2000-02-18   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-emacs.el (liece-emacs-splash): Use `frame-char-width' and
-       `frame-char-height' when calculating logo centering.
-
-2000-02-17   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-400.el (liece-handle-443-message): Check channel name.
-
-2000-02-13   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-coding.el
-       (liece-coding-encode-charset-region): Define as function.
-       (liece-coding-encode-charset-string): Define as function.
-
-       * liece-dcc.el
-       (liece-dcc-chat-send): Switch to liece-command-buffer.
-       (liece-dcc-enqueue-request): Rename.
-       (liece-dcc-dequeue-request): Ditto.
-
-       * liece-misc.el (liece-send-as-binary): Abolish.
-       (liece-repair-crlf): Abolish.
-       (liece-send): Switch to liece-command-buffer.
-
-       * liece-emacs.el (liece-emacs-splash): Use `font-info' if 'font
-       parameter of the selected frame is not a fontset name.
-
-       * liece.el (liece-open-server-internal): Set process-buffer of
-       open-network-stream as unibyte.
-
-2000-02-10   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-xemacs.el (liece-toolbar-icon-convert-1): New function.
-       (liece-toolbar-icon-states): New variable.
-
-       * liece-emacs.el (liece-emacs-widget-button-click): Don't preserve
-       previously selected window.
-
-2000-01-23   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-emacs.el: Require `image' when compiling.
-       (create-image): Add optional argument `data-p'.
-
-2000-01-22   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-message.el (liece-message-empty-predicate): New variable.
-
-       * liece-commands.el
-       (liece-command-message): Use `liece-message-empty-predicate'.
-
-2000-01-16   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-modules.el (liece-modules): Don't install `queue-m'.
-
-       * liece-dcc.el: Don't require `queue-m' at runtime.
-
-       * liece-hilit.el:
-       Add autoload setting for `liece-channel-add-buttons' and
-       `liece-nick-add-buttons'.
-       (liece-highlight-maybe-turn-on-font-lock): Activate
-       `liece-channel-add-buttons' and `liece-nick-add-buttons' when
-       inserting every line.
-
-       * liece-compat.el (liece-map-overlays): New function.
-       (liece-kill-all-overlays): Use it.
-
-       * liece-xemacs.el (liece-xemacs-map-extents): New function.
-       (liece-xemacs-kill-all-overlays): Use it.
-       (liece-map-overlays): New alias to `liece-xemacs-map-extents'.
-
-       * liece-nick.el (liece-nick-redisplay-buffer): New function.
-       (liece-nick-add-buttons): New function.
-
-       * liece-channel.el
-       (liece-channel-redisplay-buffer): New function.
-       (liece-channel-list-redisplay-buffer): New function.
-       (liece-channel-buffer-invisible-p): Remove redundant cond.
-       (liece-channel-part-internal): Remove redundant `function'.
-       (liece-channel-list-add-button): Rename from
-       `liece-channel-add-button'.
-       (liece-channel-push-button-action): Use `liece-command-join'
-       instead of `liece-switch-to-channel'.
-
-       * liece-commands.el (liece-switch-to-channel-1): Abolish.
-       (liece-redisplay-buffer-functions): New variable.
-
-2000-01-07   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-commands.el
-       (liece-command-next-channel): Traverse channel list circularly.
-       (liece-command-previous-channel): Likewise.
-
-1999-12-26   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-commands.el
-       (liece-command-previous-channel): Remove nil from channel list.
-       (liece-command-next-channel): Ditto.
-
-1999-12-24   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-emacs.el (liece-emacs-splash): Check whether logo height
-       is larger than frame height.
-
-       * liece-crypt.el (liece-crypt-maybe-encrypt-message): Simplified.
-
-       * liece-commands.el
-       (liece-command-enter-message-encrypted): Abolish.
-       (liece-command-enter-message-cleartext): Abolish.
-       (liece-command-enter-message-opposite-crypt-mode): Abolish.
-       (liece-command-enter-message-with-key): Abolish.
-
-1999-12-23   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-version.el (liece-user-agent-value): Add APEL version.
-
-       * liece-inlines.el (liece-next-line): New macro.
-
-       * liece-ctcp.el
-       (liece-command-client-action): Use `liece-next-line'.
-       (liece-command-client-userinfo-from-commandbuffer): Ditto.
-
-       * liece-channel.el (liece-channel-member): Use `member-if' instead
-       of `find-if'.
-
-       * liece.el (liece): Don't use `liece-command-describe-briefly'.
-       (liece-command-mode): Don't bind `next-line-add-newlines'.
-       (liece-dialogue-keys): Don't bind `C-u'.
-
-       * liece-commands.el (liece-command-topic): If called with prefix
-       argument insert the current topic as default.
-       (liece-command-finger): Add documentation about optional 2nd
-       argument.
-       (liece-command-describe-briefly): Abolish.
-       (liece-enter-message): Abolish local variable `message'.
-       (liece-command-join-channel): Fix paren style.
-       (liece-command-join-partner): Ditto.
-       (liece-command-join): Ditto.
-       (liece-command-part): Ditto.
-       (liece-switch-to-channel-no): Ditto.
-       (liece-command-complete): Ditto.
-       (liece-command-next-channel): Rewrite with using
-       `liece-channel-member'.
-       (liece-command-previous-channel):
-       (liece-command-push): Abolish local variable `rest-sym' and
-       `item'; don't use `liece-channel-remove'.
-       (liece-command-pop): Abolish local variable `rest-sym'.
-       (liece-command-tag-region): Don't create temp buffer.
-
-1999-12-21   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-misc.el (liece-set-channel-indicator): Switch to
-       `liece-command-buffer' when updating modeline.
-
-1999-12-19   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-minibuf.el (liece-minibuffer-map): Don't use
-       `set-keymap-parents'.
-
-       * liece-compat.el (liece-set-keymap-parents): Rename from
-       `set-keymap-parents'.
-       (turn-on-font-lock,event-buffer,event-point,region-active-p,
-       remassoc,remassq,valid-plist-p,plist-get): Add document.
-
-1999-12-14   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece.el (liece-insert-internal): Don't bind `tab-stop-list'.
-       (liece-dialogue-mode): Declare `tab-stop-list' as buffer local.
-
-1999-12-01   Daiki Ueno  <ueno@unixuser.org>
-
-       * liece-message.el (liece-message-parent-buffer): Add condtion.
-
-1999-11-13   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece.el (liece-read-variables-files): Make the `~/.liece/'
-       directory if there is no initialization file.
-
-1999-11-10   Kenichi OKADA  <okada@opaopa.org>
-
-       * liece-xemacs.el (liece-xemacs-splash-at-point): Calculate
-       horizontal position of the splash logo.
-
-1999-11-10   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-emacs.el (liece-emacs-splash): Check the number of
-       the arguments of `insert-image'.
-
-1999-11-07   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-coding.el (detect-coding-string): Remove.
-       (liece-detect-coding-string): Don't define if
-       `detect-coding-string' does not exist.
-
-1999-11-05   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-url.el (liece-url-add-buttons): Accept optional arguments
-       `start' and `end'.
-
-       * liece.el (liece-save-point): New macro; borrowed from SKK.
-       (liece-before-insert-hook): New variable.
-       (liece-insert-internal): Refine.
-
-1999-11-01   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-misc.el (liece-get-buffer-create): Use memq instead of
-       member to search over buffers list.
-
-1999-10-29  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-handle.el (liece-handle-ping-message): Return the
-       argument correctly.
-
-       * liece.el (liece-insert-internal): Remove `inline'.
-
-1999-10-27  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-commands.el (liece-command-nick-scroll-down): Fix
-       argument list.
-       (liece-command-nick-scroll-up): Ditto.
-
-       * liece-hilit.el (liece-highlight-turn-on-font-lock): Set
-       `liece-highlight-maybe-play-jingle' as local hook.
-       (liece-highlight-font-lock-keywords): Undo last change.
-
-1999-10-26   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece.el (liece-refresh-windows): Remove.
-       (liece-refresh-buffer-window): New function `liece-refresh-windows'.
-       (liece-insert-internal): Preserve old point unconditionally when
-       the buffer is frozen.
-
-1999-10-21   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-misc.el (liece-freeze): Rename from `liece-freeze-toggle'.
-       (liece-own-freeze): Rename from `liece-own-freeze-toggle'.
-
-       * liece.el: Add autoload for `liece-command-submit-bug-report'.
-       (liece-overriding-command-keys): Rename.
-       (liece-dialogue-keys): Bind `liece-command-submit-bug-report'.
-
-       * liece-commands.el (liece-command-scroll-down): Use
-       `scroll-other-window'; accept prefix value.
-       (liece-command-scroll-up): Ditto.
-       (liece-command-nick-scroll-down): Ditto.
-       (liece-command-nick-scroll-up): Ditto.
-       (liece-command-freeze): Accept prefix argument.
-       (liece-command-own-freeze): Ditto.
-       (liece-command-quit): Refine.
-
-1999-10-20   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-commands.el (liece-command-display-friends): Remove
-       `save-excursion'.
-
-       * liece.el (liece-read-variables-files): Prepare startup
-       directory if it does not exist.
-
-       * liece-vars.el (liece-directory): New variable.
-       (liece-variables-file): Relocate under `liece-directory'.
-
-       * liece-ctcp.el (liece-ctcp-version-message): Refer
-       `liece-user-agent-value'.
-
-       * liece-menu.el: Check features about menubars.
-
-       * liece-xemacs.el (liece-xemacs-hide-scrollbars): Set
-       `scrollbar-height' to 0 if `horizontal-scrollbar-visible-p' is not
-       available.
-
-       * liece-mail.el (liece-command-submit-bug-report): New function.
-       (liece-maintainer-address): New variable.
-
-       * gettext.el (gettext-load-message-catalogue): Enclose with
-       `as-binary-input-file' instead of using `set-buffer-multibyte' twice.
-       (gettext-load-portable-message-catalogue): Likewise.
-       (dgettext): Check the cdr of catalogue entry.
-       (gettext-gmo-read-32bit-word): Mask each byte with 255.
-
-       * liece-compat.el (truncate-string-to-width): New alias.
-
-       * liece.el (liece-server-keyword-bind): Quote colon keywords.
-
-       * liece-make.el (make-liece-info-files): Check if
-       `set-language-environment' exists.
-
-       * liece-misc.el (liece-server-host): Quote colon keyword.
-
-1999-10-19   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-hilit.el (liece-highlight-font-lock-keywords): Undo last
-       change; accept partial matcher as the value of
-       `liece-highlight-pattern'.
-       (liece-highlight-maybe-play-jingle): New function.
-       (liece-highlight-maybe-turn-on-font-lock): Add
-       `liece-highlight-maybe-play-jingle' to `after-change-functions'.
-
-1999-10-14   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * gettext.el (gettext-load-message-catalogue): Use hashtable.
-       (gettext-load-portable-message-catalogue): Likewise.
-
-1999-10-13  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-misc.el (next-visible-point): Don't advise.
-       (liece-remove-properties-region): Enclose by `save-restriction'.
-
-1999-10-12   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-commands.el (liece-command-send-action): Remove.
-
-       * liece-ctcp.el (liece-command-client-action): Move from
-       `liece-commands.el'; mark `liece-command-send-action' as obsolete.
-       (liece-client-x-face-notice): Remove whitespaces.
-
-       * liece-handle.el (liece-handle-kick-message): Fix message.
-
-1999-10-11  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * gettext.el (gettext-default-mime-charset): New variable.
-       (gettext-parse-Content-Type): Use it.
-
-1999-10-07  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-misc.el (liece-message): Fix message prefix.
-
-       * liece-compat.el (liece-find-data-directory): Move to
-       `liece-inlines'.
-
-       * liece-xemacs.el (liece-xemacs-icon-path): Use `liece-find-path'.
-
-       * liece-emacs.el (liece-emacs-icon-path): Use `liece-find-path'.
-
-       * liece-inlines.el (liece-find-path): New function.
-
-1999-10-05  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-version.el (liece-user-interface-product): Renamed from
-       `liece-client-product'.
-       (liece-client-version-major): Abolish.
-       (liece-client-version-minor): Abolish.
-       (liece-client-version-beta): Abolish.
-       (liece-client-version-alpha): Abolish.
-       (liece-client-version-codename): Abolish.
-       (liece-product-name): New macro.
-       (liece-product-version): New macro.
-       (liece-product-code-name): New macro.
-
-1999-10-03   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-hilit.el (liece-highlight-jingle-function): New variable.
-       (liece-highlight-font-lock-keywords): If liece-highlight-pattern
-       matches, play jingle.
-
-1999-10-01   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-message.el (liece-message-parent-buffer): Check the
-       message direction in private conversation.
-
-1999-09-28   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-version.el (liece-emacs-user-agent-value): Include
-       `emacs-patch-level'.  It exists in XEmacs 21.1.1 or later.
-
-1999-09-22  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece.el (liece-channel-mode): Make `truncate-lines' local.
-       (liece-others-mode): Ditto.
-       (liece-channel-list-mode): Ditto.
-       (liece-nick-mode): Ditto.
-
-1999-09-18   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece.el (liece-open-server): Set `liece-status-message-string'
-       when timeout is expired.
-
-1999-09-14   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-menu.el (liece-use-localized-menu): New variable.
-       (liece-command-define-menus): Use it.
-       (liece-command-define-menus-1): New function; to raverse menu
-       items recursively.
-
-       * liece.el (liece): Call `liece-intl-load-catalogue' before switch
-       to the command buffer.
-
-       * liece-dcc.el: Refine.
-
-       * liece-ctcp.el (liece-client-x-face-notice): Do not decode empty
-       `X-Face'.
-
-1999-09-11   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-vars.el (liece-dcc-program): Rename to `ldcc'.
-
-       * liece-tcp.el (liece-tcp-program): Rename to `ltcp'.
-
-       * gettext.el (gettext-parse-Content-Type): Require `path-util'.
-
-       * liece-x-face.el: Require `path-util'.
-
-1999-09-10   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * Makefile.am (SOURCES): Add `gettext.el'.
-
-       * liece-modules.el (liece-modules-to-compile): Add `gettext.el'.
-
-       * liece-intl.el: Use `gettext.el'.
-       (liece-intl-domains-alist): Abolish.
-       (liece-intl-domain-to-mime-charset-alist): Abolish.
-       (liece-intl-prepare-prefix): Abolish.
-       (liece-intl-parse-Content-Type): Abolish.
-       (liece-intl-convert-string): Abolish.
-       (liece-intl-catalogue-path): Abolish.
-
-       * gettext.el: New file.
-
-       * liece-ctcp.el: Add autoload setting for `liece-ctcp-dcc-message'.
-
-       * liece.el (liece): Save window splitting only when called
-       interactively.
-       (liece-clear-system): Do not restore window splitting.
-       (liece-command-mode): Set syntax table explicitly; make
-       `frame-title-format' buffer local.
-
-       * liece-window.el (liece-window-configuration-push): Do not save
-       `frame-title-format'.
-       (liece-window-configuration-pop): Likewise.
-
-       * liece-commands.el (liece-command-quit): Restore window splitting
-       only when called interactively.
-
-1999-09-09   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece.el (liece-server-keyword-map): New variable.
-       (liece-server-keyword-bind): New macro modified version of
-       `mail-source-bind' from `mail-source.el'.
-       (liece-server-parse-string): New function.
-       (liece-open-server): Use them.
-
-1999-09-08   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece-300.el (liece-handle-353-message): Reverse reply list.
-
-       * All files are renamed from `irchat-*' to `liece-*'.
-       All symbols are renamed too.
-
-       * irchat-vars.el (irchat-connection-timeout): Default to 60.
-
-       * irchat-nick.el (irchat-nick-insert): Handle reverse order
-       sorting.
-
-1999-09-07  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat.el (irchat): Call `irchat-command-mode' just once.
-       (irchat-initialize-buffers): Likewise.
-
-       * irchat-channel.el (irchat-channel-buffer-create): Call
-       `irchat-channel-mode' just once.
-
-       * irchat-nick.el (irchat-nick-buffer-create): Call
-       `irchat-nick-mode' just once.
-
-       * irchat-message.el (irchat-message-parent-buffer): Fix condition.
-
-1999-09-06  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-nick.el (irchat-nick-sort-nicks): New variable.
-
-       * irchat-intl.el (irchat-intl-load-catalogue): Ignore all errors
-       when reading catalogue file.
-
-       * irchat-menu.el: Do not require `irchat-ctcp'; add autoload
-       settings for `irchat-menu-callback-ctcp-version',
-       `irchat-menu-callback-ctcp-userinfo',
-       `irchat-menu-callback-ctcp-help',
-       `irchat-menu-callback-ctcp-clientinfo' and
-       `irchat-menu-callback-ctcp-ping'; add `irchat-menu-add-url' to
-       `irchat-url-add-hook'.
-
-       * irchat-url.el (irchat-url-add-buttons): Enclose with
-       `save-excursion'; run `irchat-url-add-hook'.
-
-1999-09-06  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * Liece 1.3.7.
-
-       * irchat-xemacs.el (irchat-xemacs-setup-menu): Abolish.
-
-       * irchat-intl.el (irchat-intl-get-msgstr-if): Abolish.
-
-       * irchat-vars.el: Remove defconst for colon keyword.
-
-1999-09-05  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-menu.el: All the menu specs are expanded immediately.
-       (irchat-menu-prepare-menus): Abolish.
-       (irchat-menu-define): New function.
-       (irchat-menu-alist): New variable.
-
-       * irchat-handle.el (irchat-handle-topic-message): Check empty
-       topic line.
-
-       * irchat.el (irchat): When `irchat-startup-channel-list' contains
-       list element send cadr as a channel key.
-
-       * irchat-emacs.el (irchat-emacs-widget-convert-button): Make the
-       keymap `irchat-widget-keymap' parented from current local map.
-
-       * irchat-nick.el (irchat-nick-sort-predicate): New variable.
-       (irchat-nick-update): Sort nicknames with
-       `irchat-nick-sort-predicate'.
-       (irchat-nick-insert): Search sorted position before insertion.
-       (irchat-nick-replace): Call `irchat-nick-insert' when
-       `irchat-nick-sort-predicate' is valid.
-
-       * irchat-message.el (irchat-message-parent-buffer): Add condition
-       for private conversation.
-
-       * irchat-make.el (make-irchat-info-files): Set language
-       environment to `Japanese'.
-
-       * irchat-dcc.el (irchat-dcc-channel-representation-format):
-       Remove.
-
-       * irchat-minibuf.el (irchat-minibuffer-complete-channel-modes):
-       Use `string-list-member-ignore-case' instead of
-       `string-list-ci-member'.
-
-       * irchat-url.el: Remove `irchat-insert-hook'.
-
-       * irchat-hilit.el (irchat-highlight-maybe-turn-on-font-lock):
-       Add `irchat-url-add-buttons' to `irchat-insert-hook'.
-
-       * irchat.el (irchat-initialize-buffers): Fix last change.
-
-       * irchat-300.el: Enclose autoloads by `eval-and-compile'.
-
-       * irchat-channel.el: Declare variable
-       `irchat-dcc-channel-representation-format'.
-
-1999-09-04  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * Liece 1.3.6.
-
-       * irchat.el: Add autoload for `irchat-command-browse-url'; do not
-       require `irchat-url' and `irchat-dcc'; add autoload for
-       `irchat-command-mail-compose'.
-       (irchat-initialize-timers): Rewrite with `dolist'; do
-       not check `irchat-timers-list-initialized-p'.
-       (irchat-truncate-nickname): Use `truncate-string-to-width' instead
-       of `truncate-string'.
-       (irchat-buffer-mode-alist): New variable.
-       (irchat-dialogue-setup-buffer): Abolish.
-       (irchat-others-setup-buffer): Abolish.
-       (irchat-channel-list-setup-buffer): Abolish.
-       (irchat-private-setup-buffer): Abolish.
-       (irchat-KILLS-setup-buffer): Abolish.
-       (irchat-IGNORED-setup-buffer): Abolish.
-       (irchat-WALLOPS-setup-buffer): Abolish.
-       (irchat-CRYPT-setup-buffer): Abolish.
-       (irchat-initialize-buffers): Rewrite.
-
-       * irchat-ctcp.el (irchat-client-version-insert): Do not indent
-       explicitly.
-       (irchat-client-message-no-lf): Abolish.
-
-       * irchat-300.el, irchat-xemacs.el, irchat-commands.el: Do not
-       require `irchat-dcc' and `irchat-mail'.
-
-       * irchat-dcc.el (irchat-command-dcc-send): Remove autoload cookie.
-
-1999-09-03  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-inlines.el (forward-line): Do not advise.
-
-       * irchat-intl.el: Do not require `alist'; require `mcharset',
-       `static' and `cl' during compilation.
-       (irchat-intl-msgid-regexp): Fix regexp.
-       (irchat-intl-msgstr-regexp): Ditto.
-       (irchat-intl-set-msgstr): Abolish.
-       (irchat-intl-load-catalogue): Optimize with side-effects.
-
-       * irchat.el (irchat): Load message catalogue only once.
-
-1999-08-31  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat.el (irchat-close-server-internal): Use
-       `irchat-server-opened'.
-
-       * irchat-hilit.el (irchat-highlight-maybe-turn-on-widget):
-       Abolish.
-
-       * irchat-channel.el (irchat-channel-add-button): Use
-       `irchat-widget-convert-button'.
-
-       * irchat-nick.el (irchat-nick-insert): Use
-       `irchat-widget-convert-button'.
-       (irchat-nick-replace): Ditto.
-
-       * irchat-compat.el (irchat-widget-convert-button): New alias.
-       (irchat-widget-button-click): Alias to `widget-button-click'.
-
-       * irchat-emacs.el (irchat-widget-keymap): New variable.
-       (irchat-emacs-widget-convert-button): New function.
-       (irchat-emacs-widget-button-click): New function.
-       (irchat-widget-convert-button): Redefine here.
-       (irchat-widget-button-click): Redefine here.
-
-       * irchat-url.el (irchat-url-add-buttons): Use
-       `irchat-widget-convert-button'.
-
-1999-08-23  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-emacs.el (irchat-emacs-splash): Use `fontset-pixel-size'.
-
-1999-08-22  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-compat.el: Do not require `wid-browse' during
-       compilation.
-       (irchat-widget-button-click): New function.
-
-       * irchat-emacs.el: Enclose autoloads with `eval-and-compile'.
-       (irchat-emacs-create-mode-line-image): Specify
-       `:ascent' property when creating the image.
-       (irchat-emacs-create-nick-image): Ditto.
-
-1999-08-22  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * Makefile.am (EXTRA_DIST): Add `irchat-emacs.el'.
-
-       * irchat-xemacs.el (irchat-xemacs-glyph-nick-buffer): Abolish.
-       (irchat-xemacs-glyph-nick-region): Remove interactive spec.
-
-       * irchat-intl.el: Do not require `mime-parse'.
-
-       * irchat-tcp.el: Bind `ssl-program-arguments'.
-
-1999-08-22  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-modules.el (irchat-modules-to-compile): Add
-       `irchat-emacs'.
-
-       * irchat-xemacs.el (irchat-xemacs-glyph-nick-buffer): Refine.
-
-       * irchat-vars.el (irchat-icon-directory): Move from
-       `irchat-xemacs.el'.; To be used under FSF Emacs 20.4.91.
-       (irchat-nick-image-alist): Move from `irchat-xemacs.el'.
-
-       * irchat-emacs.el: New file.; Most of FSF Emacs specific routines
-       are stored here.
-       (irchat-emacs-icon-path): New macro.
-       (irchat-emacs-mode-line-buffer-identification): New function.
-       (irchat-emacs-mode-line-buffer-identification): New variable.
-
-1999-08-20  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece.xpm: Reduce colors.
-
-1999-08-20  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-x-face.el (irchat-x-face-insert-function): Don't use
-       `eval-when-compile' while checking bitmap-mule.
-
-1999-08-20  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat.el (irchat-splash-pixmap): Renamed from
-       `irchat-stipple-pixmap'; use the XPM data under FSF Emacs 20.4.91.
-       (irchat-x-splash): Likewise.
-
-       * irchat-channel.el (irchat-channel-virtual): Undo last change.
-
-1999-08-15  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-400.el (irchat-handle-400-messages): Do not pass empty
-       channel names to `irchat-channel-virtual'.
-
-       * irchat-channel.el (irchat-channel-virtual): Make channel ID for
-       `!' channels invisible from user.
-
-       * irchat-vars.el (irchat-channel-id-length): Default to 5.
-
-1999-08-14  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-300.el (irchat-353-channel): Abolish.
-       (irchat-handle-366-message): Do not use `irchat-353-channel'.
-
-1999-08-13  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-200.el (irchat-handle-218-message): Do not indent
-       explicitly.
-
-1999-08-08  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-compat.el (with-timeout): New macro for compatibility.
-
-       * irchat-xemacs.el: Check `horizontal-scrollbar-visible-p' for
-       XEmacs 20.4.
-
-       * irchat.el (irchat-open-server): Do not truncate trailing `_'.
-
-       * Liece 1.3.5.
-
-       * irchat-handle.el (irchat-handle-mode-message): Handle channel
-       invite list.
-       (irchat-handle-join-message): Pass optional argument to
-       `match-string'.
-
-       * irchat-channel.el (irchat-channel-get-invites): New macro.
-       (irchat-channel-add-invite): New macro.
-       (irchat-channel-remove-invite): New macro.
-       (irchat-channel-set-invite): New macro.
-
-       * irchat-300.el: Handle channel invite list.
-       (irchat-handle-346-message) <RPL_INVITELIST>: New handler.
-       (irchat-handle-347-message) <RPL_ENDOFINVITE>: New handler
-
-1999-08-07  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-200.el: Register 200 handler again.
-       (irchat-handle-200-message): Do not indent explicitly.
-       (irchat-handle-201-message): Likewise.
-       (irchat-handle-213-message): Likewise.
-       (irchat-handle-214-message): Likewise.
-       (irchat-handle-262-message) <RPL_ENDOFTRACE>: New handler.
-
-       * irchat-300.el (irchat-handle-365-message): Turn hops count into
-       string.
-
-       * irchat-xemacs.el (irchat-toolbar-map-button-list): Fix typo.
-
-1999-08-06  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-intl.el (irchat-intl-load-catalogue): Add nil check.
-       (irchat-intl-catalogue-path): Fix last change.
-
-1999-08-06  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-window.el (irchat-window-load-style-file): Cache
-       `irchat-window-style-directory'.
-
-       * irchat-xemacs.el (irchat-xemacs-icon-path): Cache
-       `irchat-icon-directory'.
-
-       * irchat-intl.el (irchat-intl-catalogue-path): New macro.
-       (irchat-intl-load-catalogue): Use it.
-
-       * irchat-make.el (install-update-manifest-file): Fix for data
-       directories.
-       (config-irchat-package-directory): Splitt into
-       `config-irchat-package'.
-
-       * irchat-xemacs.el: Do not require `smiley'.
-       (irchat-xemacs-icon-path): New macro.
-       (irchat-toolbar-icon-plist-get): Use it.
-       (irchat-xemacs-setup-toolbar): Use it.
-       (irchat-xemacs-create-nick-glyph): Use it.
-       (irchat-xemacs-modeline-glyph): Use it.
-
-       * irchat-vars.el (irchat-use-smiley): Abolish.
-
-       * irchat-hilit.el (irchat-maybe-smiley-region): Abolish. If you
-       want to use this functionality, please setup `irchat-insert-hook'.
-
-1999-08-05  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * liece.xpm: New splash logo.
-
-       * irchat-xemacs.el (irchat-xemacs-splash-at-point): Use
-       `glyph-width', `glyph-height' and `window-pixel-height' to
-       calculate position of the splash logo.
-
-1999-08-04  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-compat.el (irchat-find-data-directory): Move from
-       `irchat-misc'.
-
-       * irchat-intl.el: Use new style macros.
-       (irchat-intl-parse-Content-Type): Check statically if
-       `mime-content-type-parameter' is available.
-       (irchat-intl-load-catalogue): Use `irchat-find-data-directory'.
-
-       * irchat.el (irchat-open-server): Add server parameter `relay'.
-
-       * irchat-window.el (irchat-window-set-default-style): Use
-       `irchat-find-data-directory'.
-
-       * irchat-tcp.el: Fix comment string.
-       (irchat-tcp-open-rlogin-stream): New function.
-       (irchat-tcp-open-rlogin-stream-as-binary): New function.
-       (irchat-tcp-default-connection-type): Add rlogin to custom spec.
-       (irchat-tcp-rlogin-program): New variable.
-       (irchat-tcp-relay-host): New variable.
-       (irchat-tcp-rlogin-parameters): New variable.
-       (irchat-tcp-rlogin-user-name): New variable.
-
-1999-08-03  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-config.el (irchat-config-info-file-regexp): New variable.
-
-       * irhcat-hilit.el: Require font-lock during compilation.
-
-       * irchat-vars.el (irchat-tab-stop-list): New variable.
-
-       * irhcat-000.el, irchat-200.el, irchat-300.el, irchat-400.el,
-       irchat-ctcp.el: Do not use `mapcar' when registering handlers.
-
-       * irchat-misc.el (irchat-find-etc-directory): New function.
-
-       * irchat.el: Add autoloads for
-       `bitmap-stipple-xbm-file-to-stipple' and
-       `bitmap-stipple-insert-pixmap'.
-
-       * irchat-xemacs.el (irchat-x-face-insert-with-xemacs): Use xface
-       glyph if this feature has been provided and `console-type' returns
-       'tty or 'pc, or otherwise make string glyph.
-       [Rename from overriding function `irchat-x-face-insert']
-       (irchat-xemacs-create-nick-glyph): Call `console-type' instead of
-       referring `window-system'.
-       (irchat-xemacs-modeline-glyph): Check current console type.
-       (irchat-xemacs-splash-at-point): Ditto.
-       (irchat-find-etc-directory): Advise it.
-
-       * irchat-compat.el (irchat-static-autoload): New macro.
-       (colon-keyword-usable): New facility checking.
-
-       * irchat-x-face.el: Add autoloads for `x-face-encode',
-       `x-face-read-existing-file-name', `bitmap-insert-xbm-buffer',
-       `bitmap-decode-xbm', `bitmap-read-xbm-buffer' and `bitmap-compose'.
-       (irchat-x-face-insert-function): New variable.
-       (irchat-x-face-insert-with-bitmap): Rename from overriding
-       function `irchat-x-face-insert'.
-
-       * irchat-url.el: Do not check with requiring browse-url. Assume
-       that function `browse-url' have already been autoloaded.
-
-1999-08-01  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat.el (irchat-command-mode): Set local value of
-       `next-line-add-newlines' 't.
-       (irchat-wait-for-response): Use `with-timeout'.
-       (irchat): Do not use `make-variable-buffer-local' when
-       `irchat-freeze' and `irchat-own-freeze' are initialized.
-       (irchat-dialogue-mode): Define `irchat-freeze' and
-       `irchat-own-freeze' here.
-
-       * irchat-misc.el (next-line): Abolish.
-
-       * irchat-handle.el (irchat-handle-nick-message): Fix typo.
-
-1999-07-30  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-inlines.el (string-list-modify-ignore-case): Fix typo.
-
-1999-07-29  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-make.el: Generate file `MANIFEST.liece'.
-       (install-update-manifest-file): New function.
-
-1999-07-28  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-commands.el (irchat-command-end-of-buffer): Do not use
-       `set-window-point'.
-
-       * irchat-300.el (irchat-handle-367-message): Use
-       `irchat-channel-add-ban' instead of temp variable.
-       (irchat-367-channel): Abolish.
-       (irchat-367-regexps): Abolish.
-       (irchat-handle-348-message): New handler for handling channel
-       exception list.
-       (irchat-handle-349-message): New handler for handling channel
-       exception list.
-
-1999-07-27  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-handle.el (irchat-handle-mode-message): Handle channel
-       exception list.
-
-       * irchat-channel.el: (irchat-channel-get-exceptions): New macro.
-       (irchat-channel-add-exception): New macro.
-       (irchat-channel-remove-exception): New macro.
-       (irchat-channel-set-exception): New macro.
-
-1999-07-25  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-commands.el (irchat-command-end-of-buffer): Do not use
-       `pop-to-buffer'.
-       (irchat-command-describe-briefly): Do not use backquote.
-
-1999-07-24  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-compat.el: Do not refer `widget-minor-mode-map'.
-
-       * irchat-hilit.el (irchat-highlight-maybe-turn-on-widget): Use
-       `current-local-map' instead of `widget-minor-mode-map'.
-
-       * Liece 1.3.4.
-
-       * irchat-q-ccl.el (irchat-quote-ccl-encode-region): Fix typo.
-
-       * irchat-crypt.el: Add autoload for `crc32-string'.
-       (irchat-crypt-hash-crc32-string): New function.
-       (irchat-crypt-default-hash-function): New variable.
-       (irchat-crypt-key-fingerprint): Rewrite with above functions.
-
-       * irchat-handle.el (irchat-handle-topic-message): Fix argument
-       order of `irchat-channel-set-topic'.
-
-       * irchat-misc.el (irchat-maybe-update-channel-indicator): Abolish.
-       Call `irchat-set-channel-indicator' directly.
-
-       * irchat-nick.el (irchat-nick-replace): Remove widgets.
-
-       * irchat-menu.el (irchat-nick-popup-menu): Move "Kick" menu to the
-       bottom of menu entries.
-
-       * irchat-xemacs.el (irchat-xemacs-setup-menu): Ditto.
-
-1999-07-23  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-globals.el (irchat-frame-title-format-last): Abolish.
-
-       * irchat.el (irchat-accept-response): Call `irchat' with no
-       arguments. Here's the point that take care of growing tail.
-       (irchat): Call `irchat-window-configuration-pop' and
-       `irchat-window-configuration-push' consequently.
-
-       * irchat-commands.el (irchat-command-keepalive): Call `irchat'
-       with no arguments.
-
-       * irchat-filter.el (irchat-sentinel): Call `irchat' with no
-       arguments.
-
-       * irchat-window.el: Add window configuration stack utility.
-       (irchat-window-configuration-push): New function.
-       (irchat-window-configuration-pop): New function.
-       (irchat-window-configuration-stack): New variable.
-
-       * irchat-compat.el: Require wid-edit and wid-browse during
-       compilation.
-       (widget-minor-mode-map): Bind `mouse-button-3'.
-       (irchat-dont-set-event-point): New advice against
-       `widget-button-click' for FSF Emacs.
-       (irchat-save-current-buffer): New advice against
-       `widget-button-click' for FSF Emacs.
-       (remassq): New function.
-
-       * irchat-channel.el (irchat-channel-push-button): Abolish.
-       (irchat-channel-list-insert): Abolish.
-       (irchat-channel-button): New widget.
-       (irchat-channel-add-button): New function.
-       (irchat-channel-button-action): New function.
-
-       * irchat-url.el: Use widget.
-       (irchat-url-link): New widget.
-       (irchat-url-add-button): New function.
-       (irchat-url-iterate-buffer): Abolish.
-       (irchat-url-search-forward): Abolish.
-       (irchat-url-add-to-completion): Abolish
-       (irchat-url-link-action): Renamed from irchat-url-push-button.
-
-       * irchat-hilit.el: Renamed from irchat-hilight.el.
-       (irchat-highlight-overlay-put-mouse-face): Abolish.
-       (irchat-highlight-insert-with-mouse-face): Abolish.
-       (irchat-highlight-insert-line-with-mouse-face): Abolish.
-       (irchat-highlight-with-widget): Abolish.
-       (irchat-url-face): Abolish.
-       (irchat-mouse-face): Abolish.
-       (irchat-highlight-maybe-turn-on-widget): New function.
-       This function turns on `widget-minor-mode' in
-       `irchat-nick-mode', `irchat-channel-list-mode' or
-       `irchat-dialogue-mode'.
-
-1999-07-21  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * Liece 1.3.3.
-
-       * irchat.el (irchat-override-command-keys): Bind "\C-c\C-a" to
-       `irchat-command-previous-channel'.
-
-       * irchat-crypt.el: Add routines for encapsulate cipher algorithms.
-       (irchat-crypt-import-cipher-algorithm): New function.
-       (irchat-crypt-key-fingerprint): New function.
-       (irchat-crypt-build-decryption-key): New function.
-       (irchat-crypt-build-encryption-key): New function.
-       (irchat-crypt-encrypt-string): New function.
-       (irchat-crypt-decrypt-string): New function.
-       (irchat-crypt-algorithm-major-version): New function.
-       (irchat-crypt-algorithm-minor-version): New function.
-       (irchat-crypt-secure-passphrase-read): Abolish.
-       (irchat-crypt-ignore-suspicious): Abolish.
-       (irchat-crypt-ignore-defected): Abolish.
-       (irchat-get-idea-decryption-key): Abolish.
-       (irchat-command-set-default-key): Check if this function was
-       called interactively.
-       (irchat-command-add-decryption-key): Renamed from
-       `irchat-command-add-new-key'.
-       (irchat-command-delete-decryption-key): Renamed from
-       `irchat-command-delete-key'.
-       (irchat-crypt-decryption-keys): Renamed from
-       `irchat-crypt-known-keys'.
-       (irchat-crypt-encryption-keys): Renamed from
-       `irchat-crypt-default-keys'.
-
-       * irchat-coding.el (irchat-default-mime-charset-for-read): New
-       variable. Default to 'x-ctext.
-
-       * irchat-compat.el: Do not require 'defface.
-       (irchat-compat-enable-to-read-multibyte): Abolish.
-
-       * irchat-modules.el (irchat-modules-to-compile): Remove
-       `irchat-ck-*' and `defface'. Use `japanese-zenkaku-*' with hook.
-
-       * irchat-vars.el (irchat-convert-hankaku-katakana): Abolished.
-
-       * irchat-inlines.el: All string functions are rewritten.
-
-1999-07-05  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-ctcp.el: Register ACTION handler.
-
-1999-07-04  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-version.el (irchat-emacs-user-agent-value): Modify for
-       XEmacs UTF-2000-MULE.
-
-       * irchat-crypt.el: Do not use IDEA as the default cipher algorithm.
-       (irchat-crypt-cipher-algorithm): New variable.
-       (irchat-crypt-encrypt-message-format): Add version field of
-       the cipher algorithm.
-       (irchat-crypt-current-keys): Always restore the computed keys into
-       this variable. [Renamed from irchat-default-idea-key-list]
-
-1999-06-26  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-xemacs.el (irchat-use-toolbar): Add custom spec.
-       (irchat-toolbar-toggle-crypt): Check irchat-use-toolbar.
-       (irchat-setup-toolbar): Ditto.
-
-1999-06-14  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * Liece 1.3.2.
-
-       * irchat.el (irchat-define-keys): Rewrite.
-       (irchat-truncate-nickname): Rewrite; rename from irchat-read-nickname.
-
-       * irchat-handle.el, irchat-400.el, irchat-300.el, irchat-200.el,
-       irchat-000.el:
-       Declarations of hook variables are splitted into each file.
-
-       * irchat-300.el: Register 322 reply handler.
-
-1999-06-11  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat.el (irchat-dialogue-mode-map): Bind mouse-button-2 to
-       irchat-url-push-button.
-
-       * irchat-url.el (irchat-url-push-button): Check all overlays
-       around event point.
-
-       * irchat-filter.el (irchat-handle-message): Ignore errors which
-       occurs during hook evaluation.
-
-       * irchat-ctcp.el (irchat-ctcp-message): Ignore errors which
-       occurrs during hook evaluation.
-       (irchat-ctcp-notice): Likewise.
-       (irchat-ctcp-file-notice): Likewise.
-
-       * irchat-channel.el (irchat-channel-push-button): Use
-       irchat-overlays-at instead of overlays-at.
-
-1999-06-10  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-hilight.el (irchat-quoted-colors-mirc):
-       Rename from irchat-quoted-colors.
-       (irchat-quoted-colors-ircle): New color table.
-       (irchat-highlight-maybe-hide-prefix): Fix regexp.
-       (irchat-highlight-colorize-quote): Check vender specific extension.
-
-       * irchat-channel.el (irchat-channel-push-button):
-       Check all overlays under the point.
-
-       * irchat-filter.el: Rename default backend name to "generic".
-
-       * irchat-handle.el: Use multiple values bindings.
-       (irchat-handle-notice-message): Fix argument against
-       irchat-ctcp-notice.
-
-       *irchat-misc.el (irchat-compose-time-string): Use
-       format-time-string. Now only accepts encoded time.
-
-       * irchat-misc.el (irchat-pick-buffer): Check if chnl is string and
-       apropriate buffer does not exist.
-       (irchat-pick-buffer-1): Do not return buffer list.
-
-1999-06-10  Daiki Ueno  <ueno@unixuser.org>
-
-       * irchat.el (irchat-debug-mode-map): Abolish.
-       (irchat-debug-keys): Abolish.
-       (irchat-command-keys): Fix return key code.
-
-       * irchat-window.el (irchat-window-to-buffer):
-       Remove irchat-debug-buffer.
-
-       * irchat-vars.el (irchat-debug-mode-hook): Abolish.
-       (irchat-debug-prefix): Abolish.
-
-       * irchat-nick.el (irchat-nick-equal): New alias to string-ci-equal.
-       (irchat-nick-member): New function.
-       (irchat-command-toggle-nick-buffer-mode): Do not toggle when
-       irchat-nick-buffer has not been created.
-
-       * llhandler.el, irchat-modules.el (irchat-modules-to-compile):
-       Remove llhandler.
-
-       * irchat-misc.el (irchat-split-line): New function.
-       (irchat-split-rest): Abolish.
-       (irchat-with-split-rest): Abolish.
-       (irchat-maybe-update-channel-indicator): Do not use backquote.
-       (irchat-freeze-toggle): Use irchat-nick-equal.
-       (irchat-message-from-ignored): Rename from irchat-msg-from-ignored.
-
-       * irchat-message.el (irchat-message-parent-buffer):
-       Use irchat-nick-equal.
-
-       * irchat-make.el (compile-irchat): Add comments.
-
-       * irchat-intl.el (irchat-intl-prepare-prefix):
-       Do not treat irchat-debug-prefix.
-
-       * irchat-inlines.el (filter-elements): Move from irchat-compat.
-
-       * irchat-globals.el (irchat-debug-buffer): Remove.
-
-       * irchat-crypt.el (irchat-idea-encrypt-message-format): Rename from
-       irchat-idea-encrypt-msg-format.
-       (irchat-crypt-maybe-decrypt-message): Use irchat-nick-equal.
-
-       * irchat-compat.el: Require cl at load time.
-       (buffer-or-string-p): Remove.
-       (irchat-get-buffer-window): Enclose with eval-and-compile.
-       (irchat-get-buffer-window-list): Ditto.
-       (irchat-mode-line-buffer-identification): New alias to 'identity.
-       (mapvector): Remove.
-
-       * irchat-commands.el (irchat-command-debug): Abolished.
-       (irchat-command-join-channel): Use irchat-channel-equal.
-       (irchat-command-join): Use force-mode-line-update.
-       (irchat-command-private-conversation): Ditto.
-       (irchat-command-list): Check if 1st argument is empty string.
-       (irchat-command-who): Ditto.
-       (irchat-command-names): Ditto.
-       (irchat-command-mode+o): Use irchat-nick-member.
-
-       * irchat-channel.el (irchat-command-toggle-channel-buffer-mode):
-       Do not toggle when
-       irchat-channel-buffer has not been created.
-
-       * irchat-handle.el, irchat-filter.el, irchat-dcc.el,
-       irchat-ctcp.el, irchat-500.el, irchat-400.el, irchat-300.el,
-       irchat-200.el, irchat-000.el: Use llunf instead of llhandler.
-
-       * llunf.el: New file.
-
-       * idea.el, b64.el (>>): Move from irchat-compat.
-       (<<): Ditto.
-
-1999-06-06  Daiki Ueno  <ueno@unixuser.org>
-
-       * irchat-misc.el (irchat-freeze-toggle): Use force-mode-line-update.
-       (irchat-own-freeze-toggle): Ditto.
-
-       * irchat-dcc.el: Require irchat-minibuf.el.
-       (irchat-command-dcc-send): Use
-       irchat-minibuffer-completing-default-read.
-       (irchat-command-dcc-chat-listen): Ditto.
-
-1999-06-04  Daiki Ueno  <ueno@unixuser.org>
-
-       * irchat.el (irchat-override-command-keys): Add "\C-v" and "l".
-       (irchat-dialogue-keys): Remove "\C-v" and "\C-f".
-
-       * irchat.el (irchat-override-command-keys):
-       Add "\C-n", "\C-p" and "\C-a".
-       (irchat-dialogue-keys): Remove "\C-n" and "\C-p".
-
-       * irchat-nick.el (irchat-nick-set-user-at-host): New macro.
-       (irchat-nick-mark-as-apart): New macro.
-       (irchat-nick-unmark-as-apart): New macro.
-
-       * irchat-version.el (irchat-emacs-user-agent-value):
-        Ignore parenthesis in
-       `emacs-version' for XEmacs 21.2.15.
-
-1999-06-03  Daiki Ueno  <ueno@unixuser.org>
-
-       * irchat-handle.el, irchat-dcc.el, irchat-500.el, irchat-300.el,
-       irchat-200.el: Do not check "strange" reply.
-
-       * irchat-message.el (irchat-message-parent-buffer):
-       Check if irchat-current-channel exists.
-
-       * irchat-coding.el: Do not require irchat-vars.
-
-       * irchat-menu.el (irchat-nick-popup-menu):
-       Enclose save-selected-window.
-
-       * irchat-misc.el (irchat-get-buffer-create): Do not use unless.
-
-       * irchat-nick.el (irchat-nick-change): Set chnl property internally.
-
-       * irchat-dcc.el (irchat-command-dcc-chat-listen):
-       Use irchat-get-buffer-create instead
-       of get-buffer-create.
-       (irchat-command-dcc-chat-connect): Ditto.
-       (irchat-dcc-compare-hostnames): Ditto.
-
-       * irchat-ctcp.el (irchat-file-start):
-       Use irchat-get-buffer-create instead of
-       get-buffer-create.
-       (irchat-file-cont): Ditto.
-       (irchat-file-end): Ditto.
-       (irchat-ctcp-client-notice): Ditto.
-
-       * irchat.el (irchat-open-server-internal):
-       Use irchat-get-buffer-create instead of
-       get-buffer-create.
-       (irchat-dialogue-setup-buffer): Ditto.
-       (irchat-others-setup-buffer): Ditto.
-       (irchat-channel-list-setup-buffer): Ditto.
-       (irchat-private-setup-buffer): Ditto.
-       (irchat-KILLS-setup-buffer): Ditto.
-
-1999-06-02  Daiki Ueno  <ueno@unixuser.org>
-
-       * irchat-xemacs.el (irchat-xemacs-nick-popup-menu):
-       Remove save-excursion.
-
-       * irchat-channel.el (irchat-channel-push-button):
-       Remove save-excursion, just use save-selected-window instead.
-       (irchat-channel-real): Remove save-match-data.
-
-       * irchat.el (irchat-clear-system):
-       Check irchat-obarray has been initialized.
-
-       * Makefile.am (SOURCES): Add irchat-message.el and irchat-coding.el.
-       (EXTRA_DIST): Add liece.xbm.
-
-1999-06-02  Daiki Ueno  <ueno@unixuser.org>
-
-       * Liece 1.3.1.
-
-       * irchat-url.el (url-irc-liece): New function.
-       [should be called from url-irc.el]
-
-       * Makefile.am (EXTRA_DIST): Add bitmap-stipple.
-
-1999-06-02  Daiki Ueno  <ueno@unixuser.org>
-
-       * irchat-coding.el (irchat-detect-coding-region): New function.
-       (irchat-detect-coding-region-function): Use above.
-
-       * irchat-coding.el (irchat-detect-coding-string): New function.
-       (irchat-detect-coding-string-function): Use above.
-
-       * irchat-channel.el (irchat-channel-push-button):
-       Switch to channel list buffer.
-
-1999-06-02  Daiki Ueno  <ueno@unixuser.org>
-
-       * irchat-nick.el (irchat-nick-update-region): Undo last change.
-
-       * irchat-menu.el (irchat-nick-popup-menu): Switch to nick buffer.
-
-       * irchat-filter.el: fix comments.
-       (irchat-filter): Split multiple lines without string matching.
-       (irchat-handle-message): Renamed from irchat-handle-message-2.
-       (irchat-parse-user-at-host): New function.
-
-       * irchat-coding.el (irchat-detect-coding-region-function): Renamed from
-       irchat-custom-detect-coding-region-function.
-       (irchat-detect-coding-string-function): Renamed from
-       irchat-custom-detect-coding-string-function.
-
-1999-06-01  Daiki Ueno  <ueno@unixuser.org>
-
-       * irchat.el (irchat-command-mode): Do not use mapvector.
-
-       * irchat-handle.el (irchat-handle-notice-msg): Fix arguments against
-       with-irchat-decryption.
-       (irchat-handle-privmsg-msg): Likewise.
-
-       * irchat-commands.el (irchat-command-send-message): Fix arguments of
-       with-irchat-encryption.
-       (irchat-command-message): Likewise.
-
-       * irchat-crypt.el (irchat-crypt-maybe-decrypt-message):
-       Exchange car with cdr in arglist.
-       (with-irchat-encryption): Accept flat arglist.
-       (with-irchat-decryption): Likewise.
-
-       * irchat.el (irchat-nick-mode-map): Define as prefix commands.
-
-       * irchat.el (irchat-channel-mode): Eliminate channel indicator.
-       (irchat-others-mode): Likewise.
-       (irchat-dialogue-mode): Likewise.
-
-       * irchat-misc.el (irchat-set-channel-indicator):
-       Eliminate channel indicator.
-
-       * irchat-ctcp.el (irchat-ctcp-action-msg):
-       Use irchat-display-message.
-
-1999-06-01  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-400.el: Remove redundancies on regexps.
-       (irchat-handle-432-msg) <ERR_ERRONEUSNICKNAME>: Rewrite.
-       (irchat-handle-433-msg) <ERR_NICKNAMEINUSE>: Resend NICK command only
-       if irchat-auto-iterate-nick is non-nil.
-
-       * irchat.el (irchat-command-keys): Add irchat-command-mode+o,
-       irchat-command-mode-o, irchat-command-mode+v, irchat-command-mode-v.
-       XXX: Should be prefixed commands?
-
-1999-05-31  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-message.el (irchat-message-predicate):
-       Normalize irchat-message-blackets-predicate.
-
-       * irchat-inlines.el (irchat-eval-form): New function.
-
-       * irchat-message.el (irchat-message-predicate):
-       Rename specifier typep to type.
-
-       * irchat-misc.el (irchat-own-channel-message):
-       Bind irchat-message-direction 'outgoing.
-       (irchat-own-private-message): Ditto.
-
-       * irchat-message.el (irchat-message-tags): New variable.
-       (irchat-message-tags-function): New function.
-       (irchat-message-private-buffer): Abolished.
-       Use irchat-message-buffer-function.
-
-1999-05-31  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-nick.el (irchat-nick-update-region):
-       Move opening save-excursion.
-
-       * irchat-channel.el (irchat-channel-push-button):
-       Move point to event ocurred position before calling
-       irchat-nick-update-region.
-
-       * irchat-nick.el (irchat-nick-update-region):
-       Remove argument event from arglist.
-
-       * irchat-menu.el (irchat-nick-popup-menu):
-       Move point to event ocurred position before calling
-       irchat-nick-update-region.
-
-       * irchat-xemacs.el (irchat-xemacs-setup-menu):
-       Remove argument event from arglist.
-       (irchat-xemacs-nick-popup-menu): Move point to event ocurred
-       position before calling irchat-nick-update-region.
-
-       * irchat.el: Use modern key sequence expression.
-       (irchat-command-map): New keymap which override
-       irchat-dialogue-keys with prefix command ("\C-c").
-       (irchat-friends-map): New keymap. [prefix command for friends]
-       (irchat-dialogue-keys): Import some useful command keys.
-
-       * irchat-channel.el (irchat-channel-parse-representation):
-       To remove let, construct representation object directly.
-
-       * irchat-channel.el (irchat-channel-list-insert): Remove format.
-
-       * irchat-vars.el: Do not require mcharset.
-
-       * irchat.el (irchat-nick-mode-map): Do not check xemacs.
-
-       * irchat-xemacs.el (irchat-nick-popup-menu): New alias to
-       irchat-xemacs-nick-popup-menu which override original one.
-
-       * irchat-compat.el: Use emu's mouse-button emulation.
-       (irchat-button2): Abolished.
-       (irchat-button3): Abolished.
-
-       * irchat-vars.el (irchat-variables-files): Do not load
-       `~/.irchat3_vars.el' at startup time.
-
-       * irchat-vars.el (irchat-debug-prefix): Clear.
-
-       * irchat.el: Do not check `set-face-stipple' is bound.
-       (irchat-x-splash): Add interactive spec.
-
-1999-05-30  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat.el (irchat-x-splash): Do centering.
-
-       * bitmap-stipple.el (bitmap-stipple-insert-pixmap):
-       Add optional argument center.
-
-       * liece.xbm: New file.
-
-       * irchat.el: Check if liece.xbm exists.
-
-       * irchat.el (irchat-stipple-pixmap): New variable.
-       (irchat-x-splash): New function.
-
-       * bitmap-stipple.el: New file.
-
-       * irchat-modules.el (irchat-modules-to-compile): Add bitmap-stipple.
-
-       * irchat-commands.el (irchat-command-send-action): Fix typo.
-
-       * irchat-hilight.el (irchat-highlight-font-lock-keywords):
-       Fix regexp.
-
-       * irchat-inlines.el (irchat-or): New function.
-       (irchat-and): New function.
-
-       * irchat-filter.el (irchat-handle-msg-msg): Abolished.
-
-       * irchat-crypt.el (irchat-message-encrypted-p): Move into
-       irchat-message.
-       (irchat-message-suspicious-p): Ditto.
-       (irchat-message-garbled-p): Ditto.
-       (irchat-message-fingerprint): Ditto.
-       (irchat-message-timestamp): Ditto.
-
-       * irchat-vars.el: All format strings are removed.
-       (irchat-format-string): Abolished.
-
-       * irchat-modules.el (irchat-modules-to-compile): Add
-       irchat-message.
-
-       * irchat-dcc.el (irchat-dcc-chat-filter): Use
-       irchat-display-message.
-
-       * irchat-commands.el (irchat-command-send-action):
-       Bind irchat-message-type.
-
-       * irchat-handle.el (irchat-handle-privmsg-msg):
-       Use irchat-display-message.
-       (irchat-handle-privmsglike-msg): Abolished.
-
-       * irchat-misc.el (irchat-own-channel-message):
-       Use irchat-display-message.
-       (irchat-own-private-message): Likewise.
-
-       * irchat-message.el: New file.
-
-1999-05-29  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat.el, irchat-vars.el (irchat-before-kill-emacs-hook): New hook.
-
-1999-05-29  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-vars.el (irchat-signoff-message):
-       Renamed from irchat-signoff-msg.
-
-       * irchat.el (irchat-obarray-size): Moved from irchat-globals.el.
-
-       * irchat-globals.el: Remove obsolete variables.
-
-       * irchat-ctcp.el (irchat-client-error-message):
-       Moved from irchat-globals.el.
-
-       * irchat-commands.el (irchat-save-variables-are-dirty): Renamed
-       from irchat-save-vars-is-dirty.
-       (irchat-command-send-action): Add prefix.
-
-       * irchat-400.el (irchat-nickname-last): Renamed from
-       irchat-old-nickname.
-
-       * irchat-000.el (irchat-servername): Abolished.
-
-1999-05-28  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-crypt.el: Do not require 'idea.
-
-       * irchat-commands.el (irchat-command-message): Treat channel target.
-
-       * irchat-300.el (irchat-handle-317-msg) <RPL_WHOISIDLE>:
-       Add argument rest to match-string.
-
-1999-05-28  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * Liece 1.2.8.25.
-
-       * irchat.el (irchat-command-keys): Do not bind lisp-complete-symbol.
-
-       * irchat-commands.el (irchat-command-load-vars): Enclose body with
-       unwind-protect.
-       (irchat-command-complete): Use irchat-minibuffer-finalize-completion.
-       (get-word-left): Abolished.
-       (irchat-switch-to-channel-1): New function.
-       (irchat-switch-to-channel): Use irchat-switch-to-channel-1.
-       (irchat-switch-to-channel-no): Likewise.
-       (irchat-command-message): Check crypt-type.
-
-       * irchat-minibuf.el (irchat-minibuffer-complete-channel-modes):
-       Complete ban patterns.
-       (irchat-minibuffer-parse-modes): Rename property 'uah to 'ban.
-
-       * irchat-handle.el (irchat-handle-mode-msg):
-       Use irchat-channel-set-ban.
-
-       * irchat-channel.el (irchat-channel-add-ban): New macro.
-       (irchat-channel-remove-ban): New macro.
-       (irchat-channel-set-ban): New macro.
-       (irchat-channel-get-bans): New function.
-
-       * irchat-300.el:
-       (irchat-handle-317-msg) <RPL_WHOISIDLE>: Remove condtionals for
-       obsolete servers. [2.5 or 2.6].
-       (irchat-handle-367-msg) <RPL_BANLIST>: Treat it as generic long
-       reply handler.
-       (irchat-367-channel): New variable.
-       (irchat-367-regexps): New variable.
-       (irchat-handle-368-msg) <RPL_ENDOF_BANLIST>: Save ban patterns as
-       'ban property.
-
-1999-05-26  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat.el (irchat-clear-system):
-       Use dotimes when initializing irchat-obarray.
-
-1999-05-26  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat.el (irchat-command-keys):
-       Bind irchat-command-display-friends.
-
-       * irchat-commands.el (irchat-command-display-friends): New command.
-
-       * irchat-vars.el (irchat-display-friends-function): New variable.
-
-       * irchat-300.el (irchat-303-display-friends): New function.
-       (irchat-303-display-all-friends): New function.
-
-       * irchat-minibuf.el (irchat-minibuffer-complete-channel-modes):
-       Complete nickname using operators and voices.
-       (irchat-minibuffer-parse-modes): Likewise.
-       (irchat-minibuffer-finalize-completion): Notice no match found.
-
-       * Makefile.am: New file.
-
-1999-05-25  UENO Daiki  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat.el (irchat-others-mode): Set parent mode explicitly.
-       (irchat-channel-mode): Ditto.
-
-1999-05-24  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-minibuf.el (irchat-minibuffer-parse-modes): Parse ban
-       pattern.
-
-       * irchat-200.el (irchat-handle-206-msg) <RPL_TRACESERVER>:
-       Use multiline display format.
-       (irchat-handle-214-msg) <RPL_STATSNLINE>: Likewise.
-       (irchat-handle-213-msg) <RPL_STATSCLINE>: Likewise.
-
-       * irchat-ctcp.el (irchat-client-insert): Quote format string.
-
-1999-05-23  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * Liece 1.2.8.24.
-
-       * irchat-ctcp.el (irchat-minibuffer-complete-client-query): Use
-       `irchat-minibuffer-finalize-completion'.
-
-       * irchat-minibuf.el (irchat-minibuffer-finalize-completion): New
-       function.
-       (irchat-minibuffer-complete-channel-modes): Use above.
-
-       * irchat.el (irchat-check-buffers): Fix loop condition.
-
-1999-05-23  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-dcc.el (irchat-dcc-message): New function.
-
-       * irchat-nick.el (irchat-nick-join-1): Check dups.
-
-       * irchat-ctcp.el (irchat-client-insert): New function.
-
-       * irchat-commands.el (irchat-command-prepare-message-prefix):
-       Abolished.
-       (irchat-command-prepare-own-message-prefix): Ditto.
-
-       * irchat-misc.el (irchat-own-private-message): Generate prefix
-       string automatically.
-       (irchat-own-channel-message): Likewise.
-
-1999-05-22  Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
-
-       * irchat-compat.el (run-hook-with-args-until-success): Abolished.
-
-       * irchat.el (irchat-command-mode): Change mode-line-format.
-       (irchat-open-server): Save password.
-       (irchat-insert-internal): Rewrite.
-
-       * irchat-200.el (irchat-handle-215-msg) <RPL_STATSILINE>:
-       Fix regexp.
-       (irchat-handle-242-msg) <RPL_STATSUPTIME>: Cut off preceding `:'.
-       (irchat-handle-205-msg) <RPL_TRACEUSER>: Fix typo.
-       (irchat-handle-218-msg) <RPL_STATSYLINE>: Fix display format.
-
-1999-05-13  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-inlines.el (format-quote): Abolished.
-
-       * irchat-ctcp.el (irchat-ctcp-action-msg): Pass arguments to
-       PRIVMSG handler.
-
-       * irchat-hilight.el (irchat-highlight-turn-on-font-lock): Make
-       `after-change-hook' local.
-
-1999-05-12  sphere      <sphere@pop12.odn.ne.jp>
-
-       * irchat-url.el (irchat-command-browse-url): Fix typo.
-
-1999-05-11  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-crypt.el (irchat-command-set-default-key): Fix typo.
-
-       * irchat-window.el (irchat-command-set-window-style): Fix typo.
-
-       * irchat-url.el (irchat-command-browse-url): Fix typo.
-
-       * irchat-channel.el (irchat-channel-set-voice): Quote regexp.
-
-1999-05-09  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-ctcp.el (irchat-command-client-time): Fix typo.
-
-       * irchat.el (irchat-channel-mode): Explicitly define as
-       it derives from `irchat-dialogue-mode'.
-       (irchat-others-mode): Ditto.
-
-       * irchat-compat.el (irchat-kill-all-overlays): New function.
-
-       * irchat-nick.el (irchat-nick-update): Do not switch to buffer.
-       (irchat-nick-join): Do not check whether nickname has been inserted.
-       (irchat-nick-update): Kill all overlays.
-
-       * irchat-mail.el: Follow the value of `mail-user-agent'.
-       (irchat-mail-pop-to-buffer): Abolished.
-       (irchat-mail-compose-with-mail): Abolished.
-       (irchat-mail-compose-with-gnus): Abolished.
-
-       * irchat-inlines.el (nth1, nth1cdr):Abolished.
-       (matching-substring): Abolished.
-       (irchat-greater-flags): Abolished.
-
-1999-05-08  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-300.el (irchat-353-scan-channels): New macro.
-
-       * irchat-minibuf.el (irchat-minibuffer-completing-default-read):
-       Renamed from `irchat-completing-default-read'.
-       (irchat-minibuffer-completing-sequential-read): Renamed from
-       `irchat-completing-sequential-read'.
-
-       * irchat-channel.el (irchat-channel-set-operator-1): Renamed from
-       `irchat-set-channel-operator' within irchat-misc.el.
-       Restrict its use to internal only.
-       (irchat-channel-set-voice-1): Likewise.
-
-       * irchat-commands.el (irchat-command-wait): Abolished.
-
-       * irchat-nick.el (irchat-nick-update): Assume that the 2nd
-       argument CHNL is one of channels we've already joined.
-
-       * irchat-misc.el (irchat-change-nick-of): Change nicks, opers and
-       voices properties properly.
-       (irchat-change-nick-of-1): New function. Modify nick alist by
-       side effect.
-       (irchat-change-nick-of-2): New function which resembles above,
-       but it acts on singular list.
-       (irchat-greet-user): Abolished.
-       (irchat-user-on-my-channel): Abolished.
-       (irchat-user-on-this-channel): Abolished.
-
-       * irchat-handle.el (irchat-handle-channel-msg): Do not use
-       `irchat-change-nick-of' directly.
-       (irchat-handle-nick-msg): Likewise.
-       (irchat-handle-quit-msg): Likewise.
-
-1999-05-07  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-commands.el (irchat-command-nickname): Do not set
-       `irchat-real-nickname'.
-
-1999-05-06  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * Liece 1.2.8.23.
-
-       * irchat-hilight.el (irchat-quoted-colors): New variable.
-       (irchat-highlight-colorize-quote): New function.
-       (irchat-highlight-turn-on-font-lock): Add buffer locality to
-       some members of `after-change-hook'.
-
-       * Makefile (install): Do not depend on `dcc'.
-
-1999-05-05  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-handle.el (irchat-handle-part-msg): Call
-       `irchat-channel-part' and `irchat-nick-part' exclusively.
-       (irchat-handle-kick-msg): Likewise.
-
-       * irchat-channel.el (irchat-channel-equal): New alias.
-       (irchat-channel-member): Renamed from `irchat-channel-memberp'.
-       (irchat-channel-join-internal): New function.
-       (irchat-channel-part-internal): New function.
-
-       * irchat-ctcp.el (irchat-ctcp-client-msg): Fix reply string.
-
-       * irchat-minibuf.el (irchat-minibuffer-parse-modes): Completion
-       fixed for ban pattern.
-
-       * irchat-nick.el (irchat-nick-normalize): New macro.
-       (irchat-nick-strip): New macro.
-       (irchat-nick-parse-nick-after): New function.
-
-       * irchat-handle.el (irchat-handle-silence-msg): New handler.
-
-1999-05-04  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-handle.el (irchat-handle-part-msg): Fix quotation of part
-       message.
-
-       * irchat-400.el: Fix unconsistent user data returned from pirc.
-       (irchat-handle-442-msg): `ERR_NOTONCHANNEL'.
-       (irchat-handle-443-msg): `ERR_USERONCHANNEL'.
-
-       * irchat-misc.el (irchat-update-thischannel): Abolished.
-
-       * irchat-commands.el (irchat-channel-virtual): Save matched data.
-       (irchat-channel-real): Likewise.
-
-       * irchat-300.el (irchat-handle-364-msg): `RPL_LINKS'. Fix regexp.
-       (irchat-handle-333-msg): New hander for `RPL_TOPICWHOTIME'.
-       (irchat-handle-namereply-msg): Abolished.
-       (irchat-handle-whoreply-msg): Abolished.
-
-       * irchat-000.el (irchat-handle-005-msg): `RPL_MAP'.
-       Support for ircu server mapping facility.
-       (irchat-handle-006-msg): New handler for `RPL_MAPMORE'.
-       (irchat-handle-007-msg): New handler for `RPL_MAPEND'.
-
-1999-05-03  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-handle.el (irchat-handle-part-msg): Handle left message.
-
-       * irchat-custom.el (irchat-connection-timeout): New variable.
-
-       * irchat.el (irchat-accept-response): Add optional arg timeout.
-       (irchat-accept-process-output): New function.
-       (irchat-clear-system): Reset `irchat-timers-list-initialized-p'.
-       (irchat-initialize-timers): Fix secs parameter.
-
-       * irchat-xemacs.el (irchat-xemacs-run-at-time): New function.
-
-       * irchat-compat.el (irchat-run-at-time): New alias.
-       (irchat-cancel-timer): New alias.
-
-       * irchat-commands.el (irchat-command-start-ison-timer): Abolished.
-       (irchat-command-cancel-ison-timer): Abolished.
-
-       * irchat-timer.el: Removed.
-\f
-1999-04-29  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat.el (irchat-initialize-timers): New function.
-
-       * irchat-q-ccl.el (irchat-quote-ccl-decode-region): New function.
-       (irchat-quote-ccl-encode-region): New function.
-
-       * irchat-q-el.el (irchat-quote-el-decode-region): New function.
-       (irchat-quote-el-encode-region): New function.
-
-       * irchat-ctcp.el (irchat-complete-client): New macro.
-       (irchat-complete-query): New macro.
-       (irchat-command-client-time): New command.
-       (irchat-ctcp-client-msg): Rename each *-msg-hook to *-hook.
-       (irchat-minibuffer-complete-client-query): New function.
-
-       * irchat-commands.el (irchat-command-activate-friends): Fix
-       completion.
-
-       * irchat-compat.el (filter-elements): Add `lisp-indent-function'
-       property with value 2.
-
-1999-04-28  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-dcc.el (irchat-dcc-object): Implement as cl-struct.
-
-       * irchat-compat.el (irchat-static-require): New macro.
-       (irchat-static-require-if): New macro.
-       (irchat-static-defun-if): New macro.
-
-       * Liece 1.2.8.22.
-
-1999-04-27  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * README-styles.ja, TODO.ja, sample.dot.liece.ja: Removed.
-
-1999-04-26  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-inlines.el: Require irchat-setup.
-
-       * irchat-x-face.el: Use `static.el'.
-
-       * irchat-handle.el (irchat-handle-join-msg): Set user-at-host
-       information after calling `irchat-nick-join'.
-
-       * irchat-globals.el (irchat-default-channel-candidate): New
-       variable.
-
-1999-04-22  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-handle.el (irchat-handle-324-msg): Fix regexp.
-
-1999-04-16  Daiki Ueno  <ueno@bleu.ueda.info.waseda.ac.jp>
-
-       * irchat-xemacs.el: Add hooks to hide modelines.
-
-1999-04-12  Daiki Ueno  <ueno@bleu.ueda.info.waseda.ac.jp>
-
-       * irchat.el (irchat-refresh-windows): New function.
-
-       * irchat-300.el: Remove all occurrences of `matching-substring'.
-       (irchat-handle-352-msg): Do not pick-up channel buffer.
-
-       * irchat-config.el, irchat-modules.el: New files.
-
-1999-04-07  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat.el (irchat-switch-to-channel-no-*): Use `dotimes' on the
-       definitions of themselves.
-
-       * irchat-vars.el (irchat-ignore-spec-convert): Fix tag.
-
-1999-04-06  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * dcc.c (send_file): Use `get_address_externally'.
-       (chat_listen): Likewise.
-
-1999-04-05  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * getaddrinfo.c: Include `stdlib.h'.
-
-1999-04-04  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * Liece 1.2.8.21.
-
-       * irchat-handle.el (irchat-handle-mode-msg): Fix channel mode parser.
-
-       * irchat-commands.el (irchat-command-ban-kick): New command.
-       (irchat-command-ban): New command.
-
-       * irchat-ctcp.el (irchat-ctcp-version-msg): Eliminate the client
-       version string.
-       (irchat-client-version-notice): Fix regexp.
-       (irchat-client-version-insert): New function.
-
-       * irchat-misc.el (irchat-repair-crlf): Fixed.
-
-1999-04-01  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * tcp.c (NI_MAXHOST): Add check if it has been already defined.
-
-       * irchat.el (irchat-command-keys): Bind `C-c C-j'.
-\f
-1999-03-31  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-handle.el (irchat-handle-mode-msg): Fix regexp.
-
-       * irchat-commands.el (irchat-command-finger): Add prefix arg.
-
-1999-03-30  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-filter.el (irchat-handle-message): Fix regexp.
-
-       * irchat-handle.el (irchat-handle-join-msg): Fix regexp.
-       (irchat-handle-nick-msg): Fix regexp.
-
-1999-03-24  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-commands.el (irchat-command-finger): Specify nick twice.
-
-       * liece-faq.texinfo: Fix URI of APEL's ftp sites.
-
-1999-03-17  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * Liece 1.2.8.20.
-
-       * irchat-crypt.el (with-irchat-encryption): New macro.
-       (with-irchat-decryption): New macro.
-
-       * irchat-compat.el (valid-plist-p): Fixed.
-
-       * irchat-tcp.el (irchat-tcp-default-connection-type): Renamed from
-       `irchat-tcp-connection-type'.
-       (irchat-open-network-stream-as-binary): Add optional arg `type'.
-       (irchat-open-network-stream): Likewise.
-
-       * irchat-vars.el (irchat-server-alist): Add `:prescript' and
-       `:type' keywords.
-
-1999-03-16  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-compat.el: Require `pcustom'.
-       (point-at-bol): Abolished. Use `line-beginning-position'.
-       (point-at-eol): Abolished. Use `line-end-position'.
-
-       * tcp.c: New file.
-
-       * irchat-tcp.el: New file; TCP/IP emulation using external program.
-
-       * irchat-compat.el (read-passwd): New function to keep compatibility.
-       (passwd-echo): New variable to keep compatibility.
-
-       * irchat-commands.el (irchat-command-who): Confirm really send WHO
-       command with no arguments.
-       (irchat-command-list): Likewise.
-       (irchat-command-names): Likewise.
-
-       * irchat-misc.el (irchat-set-crypt-indicator): Activate crypt mode
-       also in private mode.
-       (irchat-read-passwd): Abolished. Use `read-passwd'.
-
-       * irchat-crypt.el (irchat-crypt-maybe-encrypt-message): Renamed
-       from `irchat-crypt-with-encrypt-message'.
-       (irchat-crypt-maybe-decrypt-message): Likewise.
-
-1999-03-15  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-handle.el (irchat-handle-join-msg): Fix regexp.
-
-       * irchat-hilight.el (irchat-highlight-maybe-hide-quote): Fixed.
-
-1999-03-14  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * Liece 1.2.8.19.
-
-       * irchat-commands.el (irchat-command-poll-names): Check if
-       `irchat-server-opened' returns t.
-       (irchat-command-poll-friends): Likewise.
-
-       * irchat-hilight.el (irchat-highlight-turn-on-font-lock): Remove
-       all hooks before calling `turn-on-font-lock'.
-
-       * irchat-compat.el (run-hook-with-args-until-success): Do not use
-       `run-hook-with-args'.
-
-       * irchat-filter.el (irchat-handle-message-2): Use
-       `run-hook-with-args-until-success' instead of
-       `run-hook-with-args'.
-
-       * irchat-handle.el (irchat-handle-with-running-cleartext-hook):
-       Use `run-hook-with-args-until-success' instead of
-       `run-hook-with-args'.
-       (irchat-handle-run-cleartext-hook): Likewise.
-       (irchat-handle-run-hook-with-args): Likewise.
-
-       * irchat-timer.el (irchat-start-timer): Use `run-at-time' with 1st
-       argument 0 instead of nil.
-
-       * irchat-ctcp.el (irchat-query-client-nick-maybe-change): Return
-       with nil explicitly.
-
-       * irchat-vars.el (irchat-service-spec): New widget.
-       (irchat-service-spec-convert): New function; widget-converter.
-       (irchat-server-spec): New widget.
-       (irchat-server-spec-convert): New function; widget-converter.
-       (irchat-ignore-spec): New widget.
-       (irchat-ignore-spec-convert): New function; widget-converter.
-
-       * irchat-url.el (irchat-command-browse-url): Use the URL added
-       most recently, if `current-prefix' equals `-'.
-       (irchat-url-browser-netscape): Do not bind the process buffer.
-
-       * irchat-menu.el (irchat-menu-add-button): Add 3rd argument.
-
-1999-03-13  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-xemacs.el: Use extents instead of overlays.
-       (irchat-xemacs-put-text-property): New function.
-       (irchat-xemacs-get-text-property): New function.
-       (irchat-xemacs-kill-all-overlays): New function.
-       (irchat-xemacs-overlays-at): New function.
-
-       * irchat-compat.el (irchat-make-overlay): New emulation function.
-       (irchat-delete-overlay): Ditto.
-       (irchat-overlay-put): Ditto.
-       (irchat-move-overlay): Ditto.
-       (irchat-overlay-end): Ditto.
-       (irchat-overlay-get): Ditto.
-       (irchat-overlays-at): Ditto.
-       (irchat-kill-all-overlays): Ditto.
-
-1999-03-12  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-xemacs.el (irchat-toolbar-toggle-crypt): New function.
-       (irchat-toolbar-icon-convert): New function; widget-converter.
-       (irchat-toolbar-icon): New widget.
-       (irchat-toolbar-icon-plist-get): New function.
-       (irchat-toolbar-map-button-list): New function.
-       (irchat-xemacs-setup-toolbar): Renamed from
-       `irchat-xemacs-setup-toolbar-list'.
-       (irchat-toolbar-setup-crypt-glyph): New function.
-       (irchat-toolbar-toggle-crypt): New function.
-       (irchat-use-toolbar): New customizable variable.
-
-       * irchat-compat.el (irchat-put-text-property): Implemented as
-       function.
-
-       * irchat.el (irchat-after-load-startup-hook): New hook variable.
-
-       * irchat-hilight.el (irchat-highlight-maybe-turn-on-font-lock):
-       New function.
-
-       * Liece 1.2.8.18.
-
-       * irchat-channel.el (irchat-channel-create-buffer): Use
-       `irchat-format-time-function'.
-
-       * irchat-hilight.el: Use font-lock.el.
-
-1999-03-11  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-debug.el (irchat-debug-enter-handler): Moved from
-       llhandler.el.
-       (irchat-debug-leave-handler): Ditto.
-
-       * llhandler.el (llhandler-debug-enter): Abolished.
-       (llhandler-debug-leave): Abolished.
-
-       * irchat-version.el (irchat-emacs-user-agent-value): New variable
-       imported from `mime-edit-user-agent-value' of SEMI.
-       (irchat-user-agent-value): New variable.
-       (irchat-make-user-agent-string): Abolished.
-       (irchat-make-emacs-user-agent-string): Abolished.
-       (irchat-command-version): New command.
-
-       * irchat-hilight.el (irchat-maybe-highlight-region): New function.
-       (irchat-maybe-smiley-region): New function.
-       (irchat-maybe-highlight-url-region): New function.
-       (irchat-highlight-put-url-properties-region): New function.
-
-       * irchat-ctcp.el: Add hooks in order to let
-       `irchat-query-client-nick' follow the changes.
-       (irchat-query-client-nick-maybe-change): New function.
-       (irchat-query-client-nick-maybe-reset): New function.
-
-       * irchat-url.el (irchat-url-gather-hook): New hook variable.
-       (irchat-command-browse-url): Use `_'.
-       (irchat-url-gather-urls-region): New function.
-       (irchat-url-search-forward): New function.
-
-       * irchat-compat.el (easy-menu-add-item): New alias.
-
-       * irchat-xemacs.el (easy-menu-add-item): New advice.
-
-1999-03-10 Tsunehiko Baba <tbaba@mtl.t.u-tokyo.ac.jp>
-
-       * dcc.c (main): Add cast against return value of basename(3).
-
-1999-03-10  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-menu.el (irchat-menu-url-menu): New variable.
-
-       * Liece 1.2.8.17.
-
-       * irchat-misc.el (irchat-compose-time-string): Renamed from
-       `irchat-compose-servertimestring'.
-
-       * irchat-compat.el (plist-get): New function for compatibility.
-
-       * irchat-ctcp.el (irchat-client-time-notice): New handler.
-       (irchat-ctcp-time-msg): Ditto.
-
-       * irchat-minibuf.el (irchat-minibuffer-complete-channel-modes):
-       Also display candidates when `irchat-minibuffer-parse-modes'
-       returns 'flag.
-
-       * irchat-400.el (irchat-handle-433-msg): `ERR_NICKNAMEINUSE'.
-       Do grow-tail iteration on `irchat-real-nickname' only if
-       `irchat-auto-iterate-nick' is specified.
-
-       * irchat-vars.el (irchat-server-alist): Enable to specify keywords
-       (:host, :service, :password, etc.).
-       (irchat-auto-iterate-nick): New customizable variable.
-
-       * irchat-menu.el (irchat-menu-add-url): New function.
-       (irchat-command-mode-url-menu): New menu entry.
-
-       * irchat.el (irchat): Do not ping to server.
-       (irchat-open-server): Use new format of `irchat-server-alist'.
-
-1999-03-02  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-handle.el (irchat-handle-privmsglike-msg): Define as subst.
-
-       * irchat-make.el (install-just-print-p): New function
-       imported from APEL 9.13's `APEL-MK'.
-       (config-irchat-package): Likewise.
-       (compile-irchat-package): Likewise.
-       (install-irchat-package): Likewise.
-       (install-update-package-files): Likewise.
-       (make-irchat-sample-files): New function imported from packaged
-       version of Liece.
-       (make-irchat-info-files): Ditto.
-
-       * irchat-300.el (irchat-handle-366-msg): Do not update nicks when
-       `irchat-353-nameslist' holds no element.
-
-1999-03-01  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-handle.el (irchat-handle-quit-msg,
-       irchat-handle-mode-msg, irchat-handle-join-msg,
-       irchat-handle-part-msg): Quote regexp.
-
-1999-02-28  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat.el (irchat-clear-system): Fix backquotes.
-
-1999-02-25  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-300.el (irchat-handle-303-msg): Fix. Add check for empty
-       reply.
-
-1999-02-24  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-handle.el (irchat-handle-notice-msg): Fix. Call handler
-       with `funcall'.
-
-       * irchat.el (irchat-channel-mode-map): Make keymap as sparse.
-       (irchat-others-mode-map): Likewise.
-
-       * irchat-commands.el (irchat-command-deactivate-friends):
-       Fix argument.
-
-       * Liece 1.2.8.16.
-
-       * irchat-globals.el (irchat-who-expression): New variable.
-
-       * irchat-misc.el (irchat-toggle-command-buffer-mode): Change
-       `irchat-private-indicator'.
-
-       * irchat-300.el (irchat-handle-315-msg): `RPL_ENDOFWHO'.
-       Display `no matches found' message
-       (irchat-handle-{322,323,353,366}-msg): Count iterations.
-
-       * irchat.el (irchat-command-mode): Do not save
-       `frame-title-format' twice. Use `irchat-current-channel' in place
-       of `irchat-channel-indicator'.
-
-       * llhandler.el (llhandler-debug-enter): New function.
-       (llhandler-debug-leave): New function.
-       (llhandler-define-handler): New macro.
-       (llhandler-eval-args): Abolished.
-
-       * irchat-crypt.el (irchat-encrypt-message): Encode messages.
-       (irchat-decrypt-message): Likewise. Decode messages.
-       (irchat-crypt-with-encrypted-message): Do not encode message which
-       has type `cleartext'.
-
-1999-02-23  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-misc.el (irchat-send-pong): New macro.
-       (irchat-increment-long-reply-count): New macro.
-       (irchat-reset-long-reply-count): New macro.
-       (irchat-check-long-reply-count): New macro.
-
-       * irchat-globals.el (irchat-long-reply-count) New variable.
-       (irchat-long-reply-max): New variable.
-
-       * irchat-commands.el (irchat-command-save-vars): Fix. Set marker
-       at output position.
-
-1999-02-21  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-300.el (irchat-handle-303-msg): Add differential IsON.
-
-       * irchat-commands.el (irchat-command-start-ison-timer,
-       irchat-command-cancel-ison-timer, irchat-command-activate-friends,
-       irchat-command-deactivate-friends): Do completion case
-       insensitively.
-
-       * irchat-vars.el (irchat-saved-forms): Add symbol `irchat-friends'
-       to be saved its value.
-
-1999-02-20  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * Liece 1.2.8.15.
-
-       * irchat-filter.el (irchat-sentinel): Do not throw signal, just
-       clear whole system.
-       (irchat-sentinel-error): Ditto.
-
-       * irchat-vars.el (irchat-friends): New user customizable variable.
-       (irchat-poll-friends-interval): New user customizable variable.
-       (irchat-poll-names-interval): New user customizable variable.
-
-       * irchat-commands.el (irchat-command-poll-names): Renamed from
-       `irchat-command-pollnames'; implemented as function.
-       (irchat-command-keepalive): Implemented as function.
-       (irchat-command-poll-friends): New function.
-       (irchat-command-activate-friends): New command.
-       (irchat-command-deactivate-friends): New command.
-
-       * irchat-300.el (irchat-handle-331-msg): Call
-       `irchat-set-channel-indicator'.
-       (irchat-handle-332-msg): Ditto.
-
-       * irchat-globals.el (irchat-channel-status-indicator): New
-       variable; default value of `frame-title-format'.
-       (irchat-friends-last): New variable.
-       (irchat-frame-title-format-last): New variable.
-
-       * irchat-misc.el (irchat-set-frame-title-format): Do not calculate
-       `frame-title-format' directly.
-       (irchat-maybe-update-channel-indicator): New macro.
-
-1999-02-20  P.F.FrontJr. <pff@softai.co.jp>:
-
-       * irchat-misc.el (irchat-set-channel-indicator): Display channel
-       status on mode line.
-
-       * irchat-vars.el (irchat-display-status-on-channel-indicator):
-       New user customizable variable.
-
-1999-02-15  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat.el (irchat-read-variables-files): Set alternative
-       startup file as primary one.
-
-       * irchat-timer.el (irchat-start-timer): Do not require `timer' or
-       `itimer'; autoload timer functions.
-       (irchat-cancel-timer): Ditto.
-
-1999-02-14  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-ck-ccl (irchat-ck-ccl): Remove.
-       (irchat-ck-ccl-cj-to-ck-string): Use `ccl-execute-on-string'.
-       (irchat-ck-ccl-ck-to-cj-string): Ditto.
-
-       * irchat-xemacs.el (irchat-xemacs-setup-toolbar): New function.
-
-       * irchat-menu.el (irchat-command-add-menus): New function; add
-       menubar menus explicitly.
-
-       * irchat-coding.el (irchat-coding-custom-detect-coding-region):
-       New variable; set user customizable function to detect coding system.
-       (irchat-coding-custom-detect-coding-string): Likewise.
-       (irchat-detect-coding-string-tcljp): Transported from
-       `tclKanjiUtil.c'; trivial encoding detection routine.
-       (irchat-default-coding-system): Moved from `irchat-vars.el'.
-       (irchat-default-mime-charset): Ditto.
-       (irchat-detect-coding-system): Ditto.
-
-       * crc32.el (crc32-region): Remove `mark-active'.
-
-       * irchat-timer.el (irchat-cancel-timer): Fix for XEmacs's
-       `itimer'.
-
-       * Liece 1.2.8.14.
-
-       * irchat-dcc.el (irchat-dcc-requests): Rename from
-       `irchat-dcc-request-list'; implemented as actually a queue.
-
-       * queue-m.el: New file; imported from elib.
-
-       * irchat-filter.el (irchat-filter): Remove checking whether
-       process output line contains LF; remove duplicated LF checking
-       likewise; enclose with `save-match-data'.
-       (irchat-handle-message): Add checking user-at-host cookie with
-       restricted line.
-
-       * irchat-window.el (irchat-window-functionp): Remove; use
-       `irchat-functionp'.
-
-       * irchat-channel.el (irchat-channel-get-nicks): Fix; apply car
-       against each elements.
-
-1999-02-13  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-commands.el (irchat-command-mode+o,
-       irchat-command-mode+v): Build completion list using
-       `filter-elements'.
-
-       * irchat-vars.el (irchat-exit-hook): Rename from
-       `irchat-Exit-hook'.
-
-       * irchat-inlines.el (irchat-functionp): New macro.
-
-       * irchat-compat.el (mapvector): New macro.
-
-       * irchat-misc.el (irchat-greet-author): Remove.
-       (irchat-split-rest): Fix arguments.
-       (irchat-completing-default-read): 3rd and later arguments become
-       optional.
-       (irchat-completing-sequential-read): Evaluate completion table
-       consequently; Add optional argument `multiple-candidate', if this
-       arg is non-nil always create new table with its initial state.
-
-       * llhandler.el (llhandler-define-entry-point): Add debugging
-       triger in frount of function definition.
-       (llhandler-define-with-return): Ditto.
-       (llhandler-define): Ditto.
-       (llhandler-enter-format-string): New constant; for debugging use.
-       (llhandler-leave-format-string): Ditto.
-       (llhandler-eval-args): New macro.
-
-       * irchat.el (irchat-open-server-internal): Use
-       `open-network-stream-as-binary'.
-       (irchat-startup-hook): Rename from `irchat-Startup-hook'.
-
-1999-02-07  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * Liece 1.2.8.13.
-
-       * idea.el (idea-ecb-decrypt-string): Enclose Base64 decoded string
-       with `string-as-unibyte'.
-       (idea-cbc-decrypt-string): Ditto.
-
-       * idea.el: Sync up with Irchat-980625-2.
-
-       * crc32.el: Ditto.
-
-       * irchat-300.el (irchat-handle-303-msg): Fix matched string.
-
-       * irchat-handle.el (irchat-handle-privmsg-msg): Check whether
-       private message has come from entirely outer.
-
-       * irchat-filter.el (irchat-handle-message): Remove all occurence
-       of CR out of inputs :(
-
-1999-02-06  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat.el (irchat-read-variables-files): Save alternatively
-       specified startup file name into `irchat-variables-files'.
-
-1999-02-04  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-dcc.el (irchat-command-dcc-accept): Remove destructive
-       checking.
-
-       * irchat-make.el: Do not use `add-to-list' for Emacs19.
-
-       * irchat-nick.el (irchat-nick-replace): Fixed regexp.
-
-1999-02-03  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-coding.el (irchat-coding-detect-coding-region)
-       (irchat-coding-detect-coding-string): New function.
-       (irchat-coding-decode-mime-charset-region): Use above directly.
-       (irchat-coding-decode-mime-charset-string): Ditto.
-
-1999-02-02  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-commands.el (irchat-command-who): Fixed setting
-       `irchat-channel-alist.
-
-       * Liece 1.2.8.12.
-
-       * irchat-nick.el (irchat-nick-get-user-at-host): New macro.
-
-       * irchat-compat.el (temp-minibuffer-message): New function.
-
-       * irchat-minibuf.el: New file; custom minibuffer completion.
-
-       * irchat.el (irchat-open-server-internal): Add check for dotless
-       IP or IPv6 address representation.
-
-       * irchat-channel.el (irchat-channel-set-voice): Replace with
-       regexp.
-
-1999-02-01  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-300.el (irchat-handle-319-msg): Fixed channel conversion.
-
-       * irchat-commands.el (irchat-command-modec): Fixed completion.
-       (irchat-command-mode-o,irchat-command-mode+v,irchat-command-mode-v):
-       Fix format string.
-
-       * dcc.c (chat_listen): Print connection result.
-
-       * irchat-dcc.el (irchat-command-dcc-chat-listen): Add dummy
-       argument `chat' for compatibility.
-
-       * irchat-channel.el (irchat-channel-remove-mode): Use `delq'.
-       (irchat-nick-remove-mode): Ditto.
-
-       * Liece 1.2.8.11.
-
-       * irchat-menu.el (irchat-menu-popup-menu): Check whether XEmacs or
-       not compile time.
-\f
-1999-01-31  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-compat.el (set-keymap-parents): New macro.
-
-       * irchat-commands.el (irchat-command-join-channel): Add flag
-       whether `irchat-command-buffer-mode' is toggled.
-       (irchat-command-join-partner): Ditto.
-
-       * irchat-300.el (irchat-count-words-from-string): Count postfix
-       white spaces.
-
-       * irchat-q-el.el: Splited from `irchat-ctcp.el'; binary data
-       quotation in emacs-lisp.
-       * irchat-q-ccl.el: Same functionality as above but implemented in
-       Emacs CCL.
-
-       * b64.el (b64-encode-string, b64-decode-string): Add autoload
-       cookie.
-
-       * irchat.el (irchat-channel-list-keys): New variable.
-       (irchat-define-keys): Add lisp-mode indentation.
-       (irchat-channel-mode-map, irchat-others-mode-map): Set
-       `irchat-dialogue-mode-map' as its keymap parent.
-
-1999-01-28  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * Liece 1.2.8.10.
-
-       * dcc.c: Rewritten but this is obsoleted.
-
-       * irchat-commands.el (irchat-command-end-of-buffer): Renamed from
-       `irchat-command-eod-buffer'; this works also in `irchat-{channel,
-       others}-buffer-mode'.
-
-       * dcc.ml (getaddr_ext): New function.
-
-       * irchat-dcc.el (irchat-dcc-send-filter): Fix regexp.
-       (irchat-dcc-add-to-process-alist): Add process key as symbol.
-       (irchat-dcc-get-process-object): Likewise.
-       (irchat-command-dcc-receive): Fixed arguments of
-       `irchat-dcc-add-to-process-alist'.
-       (irchat-command-dcc-send): Likewise.
-       (irchat-command-dcc-accept): Fix typo.
-
-1999-01-27  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat.el (irchat-others-mode-map): Add key binding of
-       `irchat-command-tag-region'
-
-       * irchat-commands.el (irchat-command-join-channel): Use
-       `irchat-channel-memberp'.
-       (irchat-command-modec): Make completion from supported mode list.
-       (irchat-channel-real): Try match with
-       `irchat-channel-conversion-map' case insensitively.
-       (irchat-channel-virtual): Ditto.
-
-1999-01-26  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-globals.el (irchat-supported-channel-mode-alist):
-       (irchat-supported-user-mode-alist): New variable
-
-       * irchat-nick.el (irchat-nick-get-modes): New macro.
-       (irchat-nick-add-mode): New macro.
-       (irchat-nick-remove-mode): New macro.
-       (irchat-nick-set-mode): New macro.
-
-       * irchat-000.el (irchat-handle-004-msg): Save server supported
-       modes.
-
-       * Liece 1.2.8.9.
-
-       * irchat-make.el: Add local copy of APEL to `load-path'.
-       (autoload-irchat): New function to generate autoload file.
-
-       * irchat.el (irchat-command-keys): Add key definition of
-       `irchat-command-set-window-style' (C-c s).
-       (irchat): Parse `irchat-variables-files' specified in command
-       line.
-       (irchat-read-variables-files): Add optional argument `file'.
-
-       * irchat-window.el (irchat-window-set-default-style): Fallback
-       style used when encountered an error at style-file loading time.
-
-       * irchat-handle.el (irchat-handle-mode-msg): Gather channel modes
-       correctly.
-
-       * irchat-channel.el (irchat-channel-get-modes): New macro.
-       (irchat-channel-set-mode): New macro.
-       (irchat-channel-add-mode): New macro.
-       (irchat-channel-remove-mode): New macro.
-
-       * irchat-menu.el (irchat-menu-prepare-menus): Fix typo in
-       `irchat-command-previous-channel'.
-       (irchat-menu-IRC-menu): Add menu items.
-
-1999-01-23  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-misc.el (irchat-change-nick-of): Fixed.
-
-1999-01-22  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * llhandler.el: New file.
-
-       * Liece 1.2.8.8.
-
-       * irchat-handle.el (irchat-handler-defun-*): Abolished.
-       (irchat-handler-defsubst-*): Abolished.
-       (irchat-handler-obarray): New variable.
-       (irchat-handle-error-msg): New handler.
-       Handler API has been rewritten with `irchat-handler-obarray',
-       which enables faster handler lookup from hash.
-
-1999-01-21  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-ctcp.el: Rewritten with new handler API.
-       (irchat-ctcp-file-save-directory): New user variable.
-       (irchat-client-message): New macro.
-       (irchat-client-file-message): New macro.
-
-       * irchat-vars.el (irchat-gather-channel-modes): New user variable.
-       (irchat-*-buffer): Moved into `irchat-globals.el'.
-
-       * irchat-misc.el: Require `invisible'.
-       (irchat-remove-properties-region): Use
-       `next-single-property-change' instead of `next-property-change'.
-       (next-visible-point): Add advice to pass optional argument
-       `limit'.
-       (irchat-change-nick-of): Fixed.
-
-1999-01-20  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-compat.el (filter-elements): Renamed from `filtercar'.
-       Rewritten as macro with referring to `dabbrev-filter-elements'.
-
-       * defface.el (defface-set-face-inverse): New function.
-       (defface-face-inverse): Ditto.
-       (defface-set-face-bold): Abolished. Use `face-set-bold-p'.
-       (defface-face-bold): Abolished. Use `face-bold-p'.
-       (defface-set-face-italic): Abolished. Use `face-set-italic-p'.
-       (defface-face-italic): Abolished. Use `face-italic-p'.
-
-1999-01-19  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-commands.el (irchat-command-tag-region): Renamed from
-       `irchat-dialogue-tag-line'. Add removing 'face and 'invisible
-       properties from text moved into kill ring.
-
-       * sample.dot.liece{,.ja}: Fixed documentation about window
-       configuration.
-
-       * irchat-misc.el (irchat-pick-buffer): Assume that channel names
-       are associated to channel buffers case insensitively.
-       (irchat-remove-properties-region): New macro.
-
-1999-01-18  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-compat.el (keymap-accept-event-array): Abolished.
-
-       * Liece 1.2.8.7.
-
-       * irchat-misc.el (matching-substring): Became an alias for
-       `match-string'.
-
-       * irchat.el (irchat-open-server): Fixed.
-       (irchat-open-server-internal): Fixed.
-       Do not require `smiley'.
-
-1999-01-17  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-300.el (irchat-handle-364-msg): Fixed.
-
-       * irchat-200.el (irchat-handle-213-msg): Fixed.
-
-       * irchat-intl.el (irchat-intl-load-catalogue): Do not bind `lang'
-       to `current-language-environment'.
-
-       * irchat-window.el (irchat-configure-windows): Switch to
-       `irchat-command-buffer' before calling function
-       `irchat-window-configure-frame'.
-
-       * irchat-timer.el: Enclose statement which has newly styled macros
-       with `eval'.
-
-       * irchat-compat.el (run-hook-with-args-until-success): New macro
-       for compatibility.
-
-       * irchat-misc.el (irchat-convert-received-input): New macro.
-       No longer require `irchat-filter'.
-
-1999-01-16  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-caesar.el: Abolished.
-
-       * irchat-compat.el (function-documentation): New macro.
-
-       * irchat-commands.el (irchat-command-point-back-to-command-buffer):
-       New command. Bind key to `c'.
-       (irchat-command-caesar-line): Abolished. Use `mule-caesar-region'.
-
-       * irchat-misc.el (irchat-is-message-ignored): Moved from
-       `irchat.el'.
-       (irchat-maybe-poll): Ditto.
-       (irchat-set-crypt-indicator): Ditto.
-       (irchat-get-buffer-create): Ditto.
-       (irchat-hex-char-to-integer): Imported from `misty1.el'.
-       (irchat-hex-string-to-integer): Ditto.
-
-1999-01-15  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat.el (irchat-read-variables-files): New function.
-       (irchat-command-read-variables-files): New alias to
-       `irchat-read-variables-files'.
-       (irchat-initialize-buffers): New wrapper function.
-       (irchat-replace-internal): New macro.
-       (irchat-insert-internal): New macro.
-
-       * irchat-compat.el (ccl-enable-to-read-multibyte): New broken
-       facility.
-       (buffer-or-string-p): New macro.
-
-       * irchat-misc.el (irchat-send-as-binary): New macro.
-       (irchat-send): Add `string-as-unibyte' while checking length of
-       string.
-       (irchat-replace-in-string): Abolished.
-
-       * irchat-ck-ccl.el: CCL version of `ck' to `cj' converter.
-
-       * irchat-ck-el.el: Renamed from `irchat-hankana.el'.
-
-       * irchat-make.el: irchat-make.el: Add checking whether CCL accepts
-       `read-multibyte-character'.
-
-1999-01-14  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-misc.el (irchat-nickname): New macro.
-
-       * irchat-window.el (irchat-configure-windows): Enclose
-       calling function `irchat-window-configure-frame' with
-       `save-excursion'.
-
-       * irchat-crypt.el (irchat-crypt-with-decrypt-message):
-       Renamed from `irchat-crypt-with-encrypted-message'.
-       (irchat-crypt-with-encrypt-message): New macro.
-
-       * irchat-commands.el (irchat-command-join-partner): Fixed.
-       (irchat-command-timestamp): Fixed.
-       (irchat-command-send-message): Fixed.
-       (irchat-command-message): Fixed.
-       (irchat-command-prepare-message-prefix): New macro.
-       (irchat-command-prepare-own-message-prefix): New macro.
-
-       * Liece 1.2.8.6.
-
-       * irchat-channel.el (irchat-channel-join): Fixed.
-
-       * irchat-url.el (irchat-url-prepare-browser-function): New macro.
-       (irchat-url-command-browse-url): Add checking
-       `irchat-url-browser-name' prior to `irchat-url-browser-function'.
-
-1999-01-13  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * README-styles.ja: New file.
-
-       * irchat-channel.el (irchat-channel-change): Enclose with
-       `save-excursion'.
-
-1999-01-11  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat.el (irchat): Fixed bug in XEmacs toolbar specification.
-
-1999-01-10  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-nick.el (irchat-nick-get-joined-channels): New macro.
-
-       * irchat-channel.el (irchat-channel-get-nicks): New macro.
-       (irchat-channel-get-opers): Ditto.
-       (irchat-channel-get-voices): Ditto.
-       (irchat-channel-get-topic): Ditto.
-
-       * styles/{top,bottom}: Fixed command buffer lines.
-
-       * Liece 1.2.8.5.
-
-       * irchat.el (irchat-insert): Remove checking "(featurep 'custom)".
-
-       * defface.el: New file.
-
-1999-01-09  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-handle.el (irchat-handler-define-entry-point): New alias.
-       (irchat-handler-defun-with-return): New macro.
-       (irchat-handler-defsubst-with-return): New macro.
-
-       * irchat-{000,200,300,400,500}.el: Rewritten with new handler API.
-
-       * irchat-handle.el (irchat-handler-entry-point-defun): New macro.
-       (irchat-handler-entry-point-defsubst): New macro.
-
-       * irchat-handle.el (irchat-handle-with-running-cleartext-hook):
-       Renamed from `irchat-handle-with-cleartext-hook'.
-       (irchat-handle-run-cleartext-hook):
-       Renamed from `irchat-handle-cleartext-hook'.
-
-1999-01-08  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * styles/top: New file.
-
-       * irchat-misc.el (irchat-message): New macro.
-
-       * Liece 1.2.8.4.
-
-       * styles/{bottom,middle}: New file.
-
-       * irchat-window.el (irchat-configure-windows): Moved from
-       `irchat'.
-
-       * irchat-window.el: New file for style-based window configuration.
-
-       * irchat-nick.el (irchat-nick-replace): Fixed moving point to
-       highlight mouse face.
-
-1999-01-05  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-nick.el (irchat-nick-update-region): Set point to mouse
-       clicked position.
-
-       * Liece 1.2.8.3.
-
-       * irchat.el (irchat-nick-mode-map): Add popup menu.
-
-       * irchat-menu.el (irchat-nick-popup-menu): New function.
-       (irchat-menu-popup-menu): New macro.
-
-       * irchat-intl.el (irchat-intl-get-msgstr-if): New macro.
-
-       * irchat-nick.el (irchat-nick-update-region): New function.
-       (irchat-nick-region-nicks): Moved from `irchat-xemacs'.
-       (irchat-nick-region-opers): Ditto.
-       (irchat-nick-region-voices): Ditto.
-
-       * irchat-menu.el (irchat-menu-callback-*): Moved from
-       `irchat-xemacs'.
-       (irchat-menu-define-menus): Moved to defadviced block.
-
-       * irchat-xemacs.el (irchat-xemacs-setup-menu): Shared
-       `irchat-nick-update-region'.
-
-       * irchat-channel.el (irchat-channel-set-operator): Fixed regexp.
-
-       * irchat-nick.el (irchat-nick-replace): Fixed regexp.
-
-1999-01-04  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-nick.el (irchat-nick-replace): Fixed execution order.
-
-       * irchat-nick.el (irchat-nick-replace): Fixed regexp.
-       And enclose `save-restriction'.
-
-       * irchat-menu.el: Add easymenu support.
-
-       * Liece 1.2.8.2.
-
-       * irchat-crypt.el (irchat-crypt-with-encrypted-message):
-       New macro.
-
-       * irchat-handle.el (irchat-handler-defsubst): New macro.
-       (irchat-handler-defun): Ditto.
-       (irchat-handler-return): Ditto.
-       All handler routines are defined with new form.
-       (irchat-handle-with-cleartext-hook): New macro.
-       (irchat-handle-cleartext-hook): Ditto.
-       (irchat-handle-run-hook-with-args): Ditto.
-       Handler code eliminated by global jump.
-       (irchat-handle-set-channel-prefix): New macro.
-       (irchat-handle-set-dialogue-prefix): Ditto.
-       (irchat-handle-set-private-prefix): Ditto.
-
-       * irchat-misc.el (irchat-insert-change): New macro.
-       (irchat-insert-notice): Ditto.
-       (irchat-insert-broadcast): Ditto.
-       (irchat-insert-wallops): Ditto.
-       (irchat-insert-error): Ditto.
-       (irchat-insert-info): Ditto.
-       (irchat-insert-timestamp): Ditto.
-       (irchat-insert-dcc): Ditto.
-       (irchat-insert-client): Ditto.
-
-1999-01-03  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-commands.el (irchat-switch-to-channel-no): Fixed.
-
-       * irchat-hilight.el (irchat-highlight-region): Check
-       `irchat-display-prefix-tag'.
-
-       * irchat-vars.el (irchat-display-prefix-tag): New variable.
-
-       * irchat-hilight.el (irchat-highlight-hide-prefix-region):
-       New function.
-
-       * irchat-version.el (irchat-version-user-agent-style): Abolished.
-       (liece-client-product): New variable.
-       (liece-client-name): New macro.
-       (liece-client-version-major): Ditto.
-       (liece-client-version-minor): Ditto.
-       (liece-client-version-beta): Ditto.
-       (liece-client-version-alpha): Ditto.
-       (liece-client-codename): Ditto.
-
-       * irchat-version.el (irchat-make-emacs-user-agent-string): New
-       function.
-
-       * irchat.el (irchat-insert): Renamed from `irchat-w-insert'.
-       (irchat-replace): Renamed from `irchat-w-replace'.
-
-       * irchat-intl.el (irchat-intl-domain-to-mime-charset-alist): New
-       variable.
-
-       * irchat-intl.el (irchat-intl-parse-Content-Type): Do not use
-       `mime-parse-Content-Type' when `mime-parse' is not loaded.
-
-       * irchat.el: Remove extra calls of `suppress-keymap'.
-
-       * irchat-compat.el: Remove all CL emulation.
-
-       * Liece 1.2.8.1.
-
-       * irchat-intl.el (irchat-intl-use-localized-messages): New
-       variable.
-
-1999-01-02  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-intl.el (irchat-intl-parse-Content-Type): Parse
-       "Content-Type:" header to recognize coding used in PO files.
-
-1999-01-01  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-intl.el (irchat-intl-domains-to-coding-system-alist):
-       Abolished.
-
-       * irchat-commands.el (irchat-command-find-timestamp): Regexp fixed.
-\f
-1998-12-30  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * Add experimental i18n feature.
-
-       * po/ja.po: New file.
-
-       * irchat-intl.el: New file.
-
-       * irchat-ctcp.el (irchat-ctcp-msg): Message format fixed.
-
-       * irchat-channel.el (irchat-channel-join): Fixed.
-       (irchat-channel-create-buffer): Fixed.
-
-1998-12-29  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-commands.el (irchat-switch-to-channel{,-no}):
-       Do not reconfigure windows.
-
-       * TODO.ja: New file.
-
-       * Liece 1.2.6.13/1.2.8.0.
-
-       * irchat-commands.el (irchat-switch-to-channel): Fixed.
-       (irchat-switch-to-channel-no): Fixed.
-
-       * irchat-misc.el (irchat-toggle-command-buffer-mode): When hiding
-       state of nick buffer is toggled, reconfigure windows every time.
-
-       * irchat-handle.el (irchat-handle-join-msg): Check whether joined
-       channel is modeless.
-
-       * irchat-misc.el (irchat-channel-modeless-p): New macro.
-       (irchat-channel-modeless-regexp): New variable.
-
-       * irchat-handle.el (irchat-handle-{join,quit,mode,part}-msg):
-       Compression of changes reworked.
-
-       * irchat-vars.el (irchat-display-time): Rename from
-       `irchat-print-time'.
-       (irchat-time-prefix-regexp): Regexp for time prefix.
-
-       * irchat-mail.el: Add autoloads instead of all requires
-       (`gnus-msg', `sendmail', `mime-edit').
-       (irchat-mail-compose-with-mail): Add evals to silence
-       byte-compiler.
-       (irchat-command-mail-compose): Fix completion.
-
-       * irchat-channel.el (irchat-channel-buffer-create):
-       Rewritten as a macro.
-
-       * irchat-nick.el (irchat-nick-buffer-create): Ditto.
-
-       * irchat-compat.el: `<<' and `>>' are become aliases of lsh.
-
-       * irchat.el: Rename `irchat-Select-keys' to `irchat-select-keys'.
-
-       * sample.liece{,.ja}: Add sample setting of
-       `irchat-startup-channel-list'.
-
-       * irchat.el (irchat-command-keys): Bind `C-c b' and `C-c N b' to
-       `irchat-command{,-nick}-scroll-down' (synced up with irchat-2.4jp24f).
-       (irchat-nick-keys): Bind scrolling functions.
-
-       * irchat.el (irchat-command-mode): Display `minor-mode-alist' on
-       mode-line.
-
-       * irchat-globals.el (irchat-obarray):
-       Set initial array length to 1.
-
-       * irchat.el: Remove preparation code of `irchat-obarray'.
-
-       * liece-faq.texinfo: Change formatting style.
-
-1998-12-10  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-commands.el (irchat-command-nick-scroll-down): Add check
-       whether `irchat-nick-buffer' is visible.
-       (irchat-command-nick-scroll-up): Ditto.
-
-       * irchat-commands.el (irchat-command-scroll-down): Add check
-       whether `irchat-channel-buffer' is visible.
-       (irchat-command-scroll-up): Ditto.
-
-1998-12-09  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-misc.el (irchat-set-channel-indicator): Add check for
-       `irchat-display-frame-title'.
-
-       * irchat.el (irchat-configure-windows): Bind
-       `irchat-channel-buffer-mode' and `irchat-nick-buffer-mode' at the
-       entry point.
-
-       * irchat-channel.el (irchat-channel-switch-to-last): New macro.
-
-       * Liece 1.2.6.12.
-
-       * irchat-commands.el (irchat-channel-real): Fix spelling.
-       (irchat-channel-virtual): Ditto.
-
-       * irchat-channel.el (irchat-channel-switch-to-last): New function.
-
-       * irchat-channel.el (irchat-channel-last): New macro.
-
-       * irchat-misc.el (irchat-change-nick-of): Fixed.
-
-1998-12-04  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-misc.el (irchat-own-channel-message):
-       (ircaht-own-private-message): Remove dialogue buffer from target
-       buffers.
-
-       * liece-faq.texinfo: Fix hook for auto invisible.
-
-1998-12-03  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-handle.el (irchat-pick-buffer): Moved to `irchat-misc.el'.
-
-       * irchat-highlit.el (irchat-highlight-pattern-alist): Fix regexp
-       for DCC chatting line.
-
-       * irchat-commands.el (irchat-command-modec): Select target channel.
-
-       * irchat-dcc.el (irchat-command-dcc-chat-listen):
-       (irchat-command-dcc-chat-listen): Use `as-binary-process'
-       block.
-
-       * irchat.el (irchat-open-server-internal): Ditto.
-
-       * irchat-vars.el (irchat-binary-coding-system): Abolished.
-
-       * irchat.el (irchat-open-server-internal): Bind
-       `file-coding-system-for-{read|write}' for Mule 2.3.
-
-       * irchat.el: `irchat-switch-to-channel-no-*' registered automatically.
-
-1998-12-02  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-vars.el: Require `mcharset'.
-
-       * Liece 1.2.6.11.
-
-       * irchat-vars.el (irchat-default-mime-charset): New variable.
-
-       * irchat-coding.el: Use `mcharset' instead of
-       `{encode|decode}-coding-*'.
-       (irchat-coding-encode-charset-region):
-       (irchat-coding-encode-charset-string): New macro.
-
-       * irchat-dcc.el (irchat-dcc-pop-request-object): Fixed.
-
-       * irchat-compat.el (caar): New macro.
-
-       * irchat-misc.el (irchat-repair-crlf): New function.
-
-       * Liece 1.2.6.10.
-
-       * irchat.el (irchat-dcc-map): New keymap.
-
-       * irchat-dcc.el (irchat-command-dcc-accept): New function.
-       (irchat-dcc-get-*): Access method for request object.
-       (irchat-dcc-pop-request-object): New macro.
-
-       * Liece 1.2.6.9.
-
-       * irchat-dcc.el: Very experimental DCC chat support added.
-       (irchat-command-dcc-chat-listen): New function.
-       (irchat-command-dcc-chat-connect): Ditto.
-       (irchat-dcc-chat-listen-filter): Ditto.
-       (irchat-dcc-chat-connect-filter): Ditto.
-       (irchat-dcc-chat-filter): Ditto.
-       (irchat-dcc-channel-representation-format): New variable.
-
-       * irchat-channel.el: Very experimental multiple server support
-       added.
-       (irchat-default-channel-representation-format): New variable. This
-       is unified channel locater. Set default as
-       "@<server abbreviation>+<channel name>".
-       (irchat-channel-parse-representation): New function.
-       (irchat-channel-prepare-representation): Ditto.
-
-       * irchat-misc.el (irchat-own-channel-message): New function.
-
-       * irchat-misc.el (irchat-own-message): New macro.
-
-       * dcc.ml: Explicitly return with code 0.
-
-       * irchat-dcc.el (irchat-dcc-send-filter): Fixed.
-       (irchat-dcc-receive-filter): Fixed.
-
-1998-12-01  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-vars.el (irchat-dcc-prefix): New variable.
-
-       * irchat-compat.el (cdddr): New macro.
-
-       * irchat-dcc.el (irchat-dcc-add-to-receive-list): New macro.
-       (irchat-dcc-add-to-process-alist): Ditto.
-       (irchat-dcc-get-process-object): Ditto.
-       (irchat-dcc-sentinel): New sentinel function.
-       (irchat-dcc-prepare-directory): New function.
-       (irchat-ctcp-dcc-msg): Add handler for DCC chat.
-       (irchat-command-dcc-send): Rewritten.
-       (irchat-command-dcc-receive): Ditto.
-       (irchat-command-dcc-list): Ditto.
-
-       * Liece 1.2.6.8.
-
-       * dcc.ml: New file.
-
-       * naddr.mli: Ditto.
-
-       * naddr.ml: Ditto.
-
-       * irchat-misc.el (irchat-own-message):
-       (irchat-own-private-message): Add check whether channel buffer has
-       been created.
-
-       * sample.dot.liece: Fix typo.
-
-       * sample.dot.liece.ja: Ditto.
-
-       * irchat-url.el (irchat-url-browser-netscape): Use builtin
-       composer when encounted `mailto:'.
-
-       * irchat-commands.el (irchat-dialogue-insert): Abolished.
-\f
-1998-11-28  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-misc.el (irchat-own-private-message): Check if
-       `irchat-command-buffer-mode' is not 'chat.
-
-       * Liece 1.2.6.7.
-
-       * irchat-channel.el (irchat-channel-prepare-partner):
-       Fixed for setting `irchat-current-chat-partner'.
-
-       * irchat.el: Do not require `irchat-mail'.
-
-1998-11-27  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat.el: Set default `truncate-lines'.
-
-1998-11-26  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-vars.el (irchat-display-frame-title): New variable.
-
-       * Liece 1.2.6.6.
-
-       * irchat-channel.el (irchat-command-toggle-channel-buffer-mode):
-       Remove setting dirty flag.
-
-       * irchat-nick.el (irchat-command-toggle-nick-buffer-mode):
-       Ditto
-
-1998-11-25  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-mail.el: New file.
-
-       * irchat-vars.el (irchat-convert-hankaku-katakana): New variable.
-
-       * irchat-hankana.el: New file.
-
-       * Liece 1.2.6.5.
-
-       * irchat-300.el (irchat-handle-303-msg): Print come back
-       messages for private conversation.
-
-       * irchat-misc.el (irchat-set-channel-indicator): New macro.
-
-       * irchat-handle.el (irchat-handle-nick-msg): Fixed channel indicator.
-
-       * irchat.el (irchat-close-server): Set `irchat-server' to nil.
-
-       * irchat-handle.el (irchat-handle-join-msg): Fixed for private
-       conversation.
-
-       * Add copylefts.
-
-1998-11-23  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-globals.el (irchat-ison-timer): New variable.
-
-       * irchat-vars.el (irchat-ison-interval): New variable.
-
-       * irchat-commands.el (irchat-command-set-ison-timer): New
-       function.
-       (irchat-command-cancel-ison-timer): Ditto.
-
-       * irchat-misc.el (irchat-completing-sequential-read): New function.
-
-       * Liece 1.2.6.4.
-
-       * irchat-compat.el (irchat-button3): Moved into `eval-and-compile'
-       enclosure.
-
-       * irchat.el: Do not require alist.
-
-       * irchat-handle.el (irchat-handle-quit-msg): Rewritten.
-
-       * irchat-handle.el (irchat-handle-nick-msg): Handle nick message
-       and reflect changes to private buffers.
-
-1998-11-21  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * Liece 1.2.6.3.
-
-       * irchat-misc.el (irchat-channel-p): New macro.
-       (irchat-toggle-command-buffer-mode): New wrapper function.
-
-       * irchat.el (irchat-windows-reconfiguration-needed): Fixed
-       predicate for nick buffer mode and channel list mode.
-
-       * irchat.el (irchat-command-keys): Removed duplicated binding of
-       `irchat-command-enter-message'(`\C-j' and `\M-\C-j').
-
-1998-11-19  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-handle.el (irchat-handle-privmsg-msg): Fixed.
-
-       * etc/ball.*.xpm: Remove background color in each XPM file
-       (From Yasushi Shoji <yashi@yashi.com>).
-
-       * sample.dot.liece: Add sample customizations of new feature.
-       `irchat-channel-list-buffer-mode',
-       `irchat-channel-list-window-width-percent',
-       `irchat-auto-join-partner'.
-
-       * irchat-filter.el (irchat-filter): Remove unreferenced binding.
-
-       * irchat-handle.el (irchat-handle-privmsg-msg): Handle private
-       message and join automatically.
-
-       * Liece 1.2.6.2.
-
-       * irchat-vars.el (irchat-auto-join-partner): New variable.
-       (irchat-channel-list-window-width-percent): Ditto.
-
-       * irchat-compat.el (irchat-button3): New variable.
-
-       * irchat-channel.el (irchat-channel-push-button): New handler.
-       (irchat-channel-list-insert): New function.
-       (irchat-channel-prepare-partner): New function.
-
-       * irchat-url.el (irchat-url-push-button): Search URL string around
-       event line.
-
-       * irchat.el (irchat-channel-list-mode): New major mode.
-       (irchat-configure-windows): Fixed for channel list window.
-       (irchat-channel-list-mode-map); New keymap.
-
-       * All irchat-{`Command', `Nick', `Channel', `Others', `Crypt'}-*
-       symbols renamed with uncapitalized one.
-
-1998-11-16  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * Liece 1.2.4.4.
-
-       * irchat-filter.el: Do not require mcharset.
-
-       * irchat-timer.el: Macro expression fixed (for Emacs19).
-
-       * Liece 1.2.4.3/1.2.6.1.
-
-       * irchat-vars.el (irchat-binary-coding-system):
-       New variable.
-
-       * irchat-coding.el: New file.
-
-       * irchat-filter.el (irchat-run-message-hook-types):
-       Abolished.
-       (irchat-handle-message): Rewritten.
-       (irchat-handle-message-2): Rewritten.
-
-1998-11-15  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat.el (irchat-Dialogue-mode-map):
-       (irchat-Channel-mode-map):
-       (irchat-Others-mode-map): Add check whether array style keymap
-       expression is acceptable.
-
-       * liece-faq.texinfo: New FAQ added for older version of emacsen.
-
-       * irchat-handle.el (irchat-handle-privmsg-msg):
-       Rewritten.
-
-       * irchat-200.el (irchat-handle-200-msgs):
-       Channel mask regexp fixed.
-
-       * irchat-300.el (irchat-handle-300-msgs):
-       Ditto.
-
-       * irchat-400.el (irchat-handle-400-msgs):
-       Ditto.
-
-       * sample.dot.liece: Add sample hook for auto invisible.
-
-       * Liece 1.2.3.5.
-
-       * irchat-vars.el (irchat-default-coding-system):
-       Set default to 'iso-2022-jp.
-       (irchat-detect-coding-system): New custom variable.
-
-       * irchat-misc.el (irchat-send): Add code conversion with
-       `encode-coding-region' .
-
-       * irchat-filter.el (irchat-filter): Add coding-system detection.
-
-       * irchat-compat.el (irchat-set-process-coding-system):
-       (irchat-buffer-disable-undo): Abolished.
-       (buffer-disable-undo): New macro.
-
-       * defsubst.el: Removed.
-
-1998-11-14  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-ctcp.el (irchat-ccl-quote-decode): Fixed.
-
-1998-11-13  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-ctcp.el (ccl-cascade-write):
-       (ccl-set-register-right): New broken facility.
-       (irchat-ccl-quote-decode): Rewritten with checking broken CCL
-       facilities.
-
-       * irchat-timer.el (irchat-start-timer):
-       Fixed macro expression for older versions of emacsen.
-
-       * irchat-compat.el (defface): New macro for older versions of
-       emacsen.
-
-1998-11-12  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-ctcp.el: Add CCL usability checking with `ccl-usable'.
-
-1998-11-11  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-version.el (irchat-make-user-agent-string):
-       (irchat-make-version-string):
-       Regexp fixed.
-
-       * irchat-ctcp.el (irchat-ccl-quote-decode):
-       (irchat-ccl-quote-encode): Check if module `pccl' exists.
-
-       * sample.dot.liece: Renamed from sample.irchat3_vars.el.
-
-       * irchat-version.el (liece-client-minor-version):
-       Numbered as 1.2.3.3.
-       (irchat-version-user-agent-style):
-       Declaration revereted to `defvar' from `defcustom'.
-
-       * Makefile: Removed `-lnsl'.
-\f
-1998-10-20  Daiki Ueno  <daiki@kake.info.waseda.ac.jp>
-
-       * irchat-nick.el (irchat-Nick-update): Bug fixed in splitting 353
-       (NAMEREPLY) message.
-
-       * irchat-inlines.el (list-to-assoclist): Rewritten.
-
-1998-10-08  Daiki Ueno  <daiki@dice.cache.waseda.ac.jp>
-
-       * irchat-xemacs.el (irchat-toolbar-spec-list): Replace
-       `irchat-Command-push' and `irchat-Command-pop' with
-       `irchat-Command-previous-channel' and `irchat-Command-next-channel'.
-       (irchat-x-face-face-insert): Evaluate also when loaded.
-
-1998-10-07  Daiki Ueno  <daiki@dice.cache.waseda.ac.jp>
-
-       * irchat-crypt.el (base64-encode-string): Fixed autoload with
-       `mel' to `mel-b' package.
-       (base64-decode-string): Ditto.
-
-1998-10-06  Daiki Ueno  <daiki@dice.cache.waseda.ac.jp>
-
-       * irchat-xemacs.el (irchat-xemacs-splash-logo): Splash screen with
-       "liece.xpm" on every loadup time.
-
-       * irchat-version.el (liece-client-version): Numbered as 1.2.1.
-
-       * irchat-x-face.el (irchat-x-face-face-insert): Display X-Face on
-       each prefix line align middle.
-
-       * irchat-debug.el: New file.
-
-1998-10-02  Daiki Ueno  <daiki@dice.cache.waseda.ac.jp>
-
-       * irchat.el (irchat-Debug-mode): New major mode for
-       `irchat-Command-debug'.
-
-       * liece-faq.texinfo: New file.
-
-       * irchat-commands.el (irchat-Client-query-map): Key binding for
-       `irchat-Command-client-x-face-from-minibuffer' substituted with
-       `irchat-Command-client-x-face-from-xbm-file'.
-
-       * irchat-compat.el (replace-in-string): New function from XEmacs
-       subr.el.
-
-       * irchat-x-face.el: New file.
-       (irchat-x-face-insert): Now works properly with GNU Emacs.
-
-       * irchat-xemacs.el (irchat-x-face-insert): New function.
-       (irchat-x-face-encode): Ditto.
-
-       * irchat-ctcp.el (irchat-ctcp-x-face-msg): X-Face query support.
-       Now it works only with X-Face utility.
-
-       * irchat-version.el (liece-client-version-beta): New variable.
-
-1998-10-01  Daiki Ueno  <daiki@dice.cache.waseda.ac.jp>
-
-       * irchat.el (irchat-clear-system): Restart now reworked.
-
-       * irchat-make.el (config-irchat): Add check wheter APEL version is
-       9.0 or later.
-
-       * irchat-ctcp.el (irchat-ctcp-version-msg): Rewritten with new
-       style version string.
-
-       * irchat-version.el (irchat-version-user-agent-style): New
-       variable.
-       (irchat-make-user-agent-string): New function.
-       (irchat-make-client-version-string): Ditto.
-       (irchat-make-version-string): Ditto.
-
-       * irchat-make.el (config-irchat): Rewritten.
-
-       * irchat-ctcp.el: Renamed from irchat-cta.el.
-       (irchat-ccl-quote-cs): New coding system for file transfer.
-       (irchat-ccl-quote-encode): New CCL program.
-       (irchat-ccl-quote-decode): Ditto.
-       (irchat-ctcp-msg): Hook checking code eliminated.
-       (irchat-ctcp-client-msg): Ditto.
-\f
-1998-09-30  Daiki Ueno  <daiki@dice.cache.waseda.ac.jp>
-
-       * irchat-hilight.el (irchat-highlight-buffer):
-       Add check whether there is point has
-
-       * irchat-compat (irchat-get-text-property):
-       Add signal handler for XEmacs extents.
-
-       * irchat-commands.el: Require `irchat-dcc.el'.
-
-       * Makefile: New rule for .texinfo to .info.
-
-       * irchat-hilight.el (irchat-highlight-buffer): Bug fix for
-       `irchat-highlight-pattern'.
-
-1998-09-29  Daiki Ueno  <daiki@kiss.kake.info.waseda.ac.jp>
-
-       * irchat-make.el (install-irchat): Fixed usage of function
-       install-files.
-
-       * irchat-nick.el: Do not require widget wid-edit.
-
-       * irchat-make.el (irchat-modules-to-compile): Added
-       irchat-channel, irchat-nick to module list.
-
-       * irchat-hilight.el (irchat-highlight-insert-with-mouse-face):
-       Addded check whether function widget-create is bounded.
-
-       * irchat-compat.el: Require cl.
-
-       * Makefile: Require cl. Machine specific option removed.
-
-       * irchat-commands.el (irchat-Command-send-message):
-       New signal handler for `encode-coding-string' with unknown coding
-       system. This encoding is needed when `irchat-crypt-mode-active-p'
-       is non nil.
-
-       * irchat.el: Renamed from irchat-main.el.
-
-       * irchat-main.el: Removed.
-
-1998-09-29  Daiki Ueno  <daiki@dice.cache.waseda.ac.jp>
-
-       * irchat-crypt.el (irchat-read-passphrase): New alias.
-
-1998-09-28  Daiki Ueno  <daiki@dice.cache.waseda.ac.jp>
-
-       * irchat-make.el: New file.
-
-       * irchat-compat.el: New file.
-
-       * irchat-ja.texinfo: New file.
-
-       * setpath.el: Removed.
-
-       * irchat-url.el (irchat-url-button-push): New handler.
-
-       * irchat-main.el (irchat-Select-map): New keymap.
-
-       * irchat-filter.el: Added autoloads for entry points of 000, 200,
-       300, 400, 500 message handlers.
-
-       * irchat-misc.el (irchat-greet-author): Abolished.
-
-       * irchat-channel.el: Splitted from irchat-commands.el.
-
-       * irchat-nick.el: Ditto.
diff --git a/lisp/Makefile b/lisp/Makefile
deleted file mode 100644 (file)
index 40b7dd0..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-# -*- makefile -*-
-#
-# Makefile for liece
-#
-#
-
-PACKAGE  = liece
-VERSION  = 1.4
-
-EMACS    = emacs
-XEMACS = xemacs
-FLAGS    = -batch -q -no-site-file
-TAR     = tar
-
-PREFIX   = NONE
-LISPDIR  = NONE
-PACKAGEDIR = NONE
-VERSION_SPECIFIC_LISPDIR = NONE
-
-GOMI     = liece-setup.el *.elc
-
-all: elc
-
-elc: 
-       $(EMACS) $(FLAGS) -l ./liece-make.el -f autoload-liece \
-               $(PREFIX) $(LISPDIR) $(VERSION_SPECIFIC_LISPDIR)
-       $(EMACS) $(FLAGS) -l ./liece-make.el -f compile-liece \
-               $(PREFIX) $(LISPDIR) $(VERSION_SPECIFIC_LISPDIR)
-
-install:       elc
-       $(EMACS) $(FLAGS) -l ./liece-make.el -f install-liece \
-               $(PREFIX) $(LISPDIR) $(VERSION_SPECIFIC_LISPDIR)
-
-package:
-       $(XEMACS) $(FLAGS) -l ./liece-make.el -f autoload-liece \
-               $(PREFIX) $(LISPDIR) $(VERSION_SPECIFIC_LISPDIR)
-       $(XEMACS) $(FLAGS) -l ./liece-make.el -f compile-liece-package \
-               $(PACKAGEDIR)
-
-install-package: package
-       $(XEMACS) $(FLAGS) -l ./liece-make.el -f install-liece-package \
-               $(PACKAGEDIR)
-
-tag:
-       sh -c 'cvs tag -RF liece-`echo $(VERSION) | \
-               tr . _`-`date +%Y%m%d%H%m`'
-
-clean:
-       -rm -f $(GOMI)
diff --git a/lisp/Makefile.am b/lisp/Makefile.am
deleted file mode 100644 (file)
index 749bd9e..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-## Process this file with automake to produce Makefile.in
-## We do not use automake's emacs-lisp support.
-
-SOURCES = liece-clfns.el liece-handler.el gettext.el \
-       liece-compat.el liece-version.el \
-       liece-vars.el liece-globals.el liece-inlines.el \
-       liece-filter.el liece-dcc.el liece-menu.el \
-       liece-000.el liece-200.el liece-300.el liece-400.el liece-500.el \
-       liece-nick.el liece-channel.el \
-       liece-commands.el liece-ctcp.el \
-       liece-handle.el liece-hilit.el liece-intl.el liece-mail.el \
-       liece-minibuf.el liece-misc.el liece-url.el liece-message.el \
-       liece-x-face.el liece-tcp.el liece-coding.el \
-       queue-m.el liece.el \
-       liece-window.el
-
-EXTRA_DIST = liece-make.el liece-config.el liece-modules.el \
-       liece-emacs.el liece-xemacs.el \
-       liece-q-ccl.el liece-q-el.el \
-       bitmap-stipple.el \
-       liece.xpm liece.xbm
-
-TARGETS = $(SOURCES:.el=.elc)
-
-if USE_CUSTOM_LISPDIR
-LISPDIR  = $(lispdir)
-VERSION_SPECIFIC_LISPDIR = $(lispdir)/emu
-else
-LISPDIR  = NONE
-VERSION_SPECIFIC_LISPDIR = NONE
-endif
-
-if USE_CUSTOM_PACKAGEDIR
-PACKAGEDIR = $(packagedir)
-else
-PACKAGEDIR = NONE
-endif
-
-EMACS_AUTOLOAD_FLAGS = -f autoload-liece 
-
-if USE_PACKAGE
-EMACS_COMPILE_FLAGS = -f compile-liece-package $(PACKAGEDIR)
-EMACS_INSTALL_FLAGS = -f install-liece-package $(PACKAGEDIR)
-else
-EMACS_COMPILE_FLAGS = -f compile-liece \
-       NONE $(LISPDIR) $(VERSION_SPECIFIC_LISPDIR)
-EMACS_INSTALL_FLAGS = -f install-liece \
-       NONE $(LISPDIR) $(VERSION_SPECIFIC_LISPDIR)
-endif
-
-
-all: $(TARGETS)
-
-$(TARGETS): liece-make.el liece-setup.el $(SOURCES)
-       $(EMACS) -batch  -q -no-site-file -l ./liece-make.el \
-               $(EMACS_COMPILE_FLAGS)
-
-liece-setup.el:
-       $(EMACS) -batch -q -no-site-file -l ./liece-make.el \
-               $(EMACS_AUTOLOAD_FLAGS)
-
-install-exec-local: $(TARGETS)
-       $(EMACS) -batch  -q -no-site-file -l ./liece-make.el \
-               $(EMACS_INSTALL_FLAGS)
-
-clean-local:
-       -rm *.elc liece-setup.el
-
-.PHONY: update
diff --git a/lisp/bitmap-stipple.el b/lisp/bitmap-stipple.el
deleted file mode 100644 (file)
index c946ed0..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-;;; bitmap-stipple.el --- display bitmap file using stipple.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1999-05-30
-;; Keywords: bitmap, stipple
-
-;; This file is not part of any package.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(defun bitmap-stipple-xbm-file-to-stipple (file)
-  "Convert xbm FILE into icon format and return the list of spec and buffers."
-  (with-temp-buffer
-    (erase-buffer)
-    (let ((case-fold-search t) width height xbytes right margin)
-      (insert-file-contents file)
-      (goto-char (point-min))
-      (or (re-search-forward "_width[\t ]+\\([0-9]+\\)" nil t)
-         (error "!! Illegal xbm file format" (current-buffer)))
-      (setq width (string-to-int (match-string 1))
-           xbytes (/ (+ width 7) 8))
-      (goto-char (point-min))
-      (or (re-search-forward "_height[\t ]+\\([0-9]+\\)" nil t)
-         (error "!! Illegal xbm file format" (current-buffer)))
-      (setq height (string-to-int (match-string 1)))
-
-      (goto-char (point-min))
-      (re-search-forward "0x[0-9a-f][0-9a-f],")
-      (delete-region (point-min) (match-beginning 0))
-
-      (goto-char (point-min))
-      (while (re-search-forward "[\n\r\t ,;}]" nil t)
-       (replace-match ""))
-      (goto-char (point-min))
-      (while (re-search-forward "0x" nil t)
-       (replace-match "\\x" nil t))
-      (goto-char (point-min))
-      (insert "(" (number-to-string width) " " (number-to-string height) " \"")
-      (goto-char (point-max))
-      (insert "\")")
-      (goto-char (point-min))
-      (read (current-buffer)))))
-
-(defun bitmap-stipple-insert-pixmap (pixmap &optional center)
-  "Insert PIXMAP in the current buffer.
-Optional argument CENTER specified, pixmap will be centered."
-  (let (width height beg i)
-    (or (facep 'bitmap-stipple-splash)
-       (make-face 'bitmap-stipple-splash))
-    (setq width (/ (car pixmap) (frame-char-width))
-         height (/ (cadr pixmap) (frame-char-height)))
-    (set-face-foreground 'bitmap-stipple-splash "red")
-    (set-face-stipple 'bitmap-stipple-splash pixmap)
-    (if center (insert-char ?\n height))
-    (setq i height)
-    (while (> i 0)
-      (setq beg (point))
-      (insert-char ?  width)
-      (set-text-properties beg (point) '(face bitmap-stipple-splash))
-      (insert "\n")
-      (decf i))))
-  
-;;;###autoload
-(defun bitmap-stipple-insert-xbm-file (file)
-  "Insert xbm FILE at point."
-  (interactive "fxbm file: ")
-  (save-excursion
-    (bitmap-stipple-insert-pixmap
-     (bitmap-stipple-xbm-file-to-stipple file))))
-
-(provide 'bitmap-stipple)
-
-;;; bitmap-stipple.el ends here
diff --git a/lisp/gettext.el b/lisp/gettext.el
deleted file mode 100644 (file)
index a23a7d5..0000000
+++ /dev/null
@@ -1,255 +0,0 @@
-;;; gettext.el --- GNU gettext interface
-;; Copyright (C) 1999 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1999-09-10
-;; Keywords: i18n
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile (require 'cl))
-
-(require 'mcharset)
-
-(eval-and-compile
-  (autoload 'mime-content-type-parameter "mime-parse")
-  (autoload 'mime-read-Content-Type "mime-parse"))
-
-(defvar gettext-gmo-endian 1234)
-(defvar gettext-message-domain-to-catalog-alist nil)
-(defvar gettext-default-message-domain "emacs")
-(defvar gettext-default-mime-charset default-mime-charset)
-
-(defconst gettext-msgid-regexp "msgid\\s-*\"")
-(defconst gettext-msgstr-regexp "msgstr\\s-*\"")
-
-(defmacro gettext-hex-char-to-integer (character)
-  `(if (and (>= ,character ?0) (<= ,character ?9))
-       (- ,character ?0)
-     (let ((ch (logior ,character 32)))
-       (if (and (>= ch ?a) (<= ch ?f))
-          (- ch (- ?a 10))
-        (error "Invalid hex digit `%c'" ch)))))
-
-(defun gettext-hex-string-to-integer (hex-string)
-  (let ((hex-num 0))
-    (while (not (equal hex-string ""))
-      (setq hex-num (+ (* hex-num 16)
-                      (gettext-hex-char-to-integer
-                       (string-to-char hex-string)))
-           hex-string (substring hex-string 1)))
-    hex-num))
-
-(defun gettext-gmo-read-32bit-word ()
-  (let ((word (string-to-char-list
-              (buffer-substring (point) (+ (point) 4)))))
-    (forward-char 4)
-    (apply #'format "%02x%02x%02x%02x"
-          (mapcar (lambda (ch) (logand 255 ch))
-                  (if (= gettext-gmo-endian 1234)
-                      (nreverse word)
-                    word)))))
-    
-(defmacro gettext-gmo-header-revision (header)
-  `(aref header 0))
-
-(defmacro gettext-gmo-header-nn (header)
-  `(aref header 1))
-
-(defmacro gettext-gmo-header-oo (header)
-  `(aref header 2))
-
-(defmacro gettext-gmo-header-tt (header)
-  `(aref header 3))
-
-(defmacro gettext-gmo-header-ss (header)
-  `(aref header 4))
-
-(defmacro gettext-gmo-header-hh (header)
-  `(aref header 5))
-
-(defmacro gettext-gmo-read-header ()
-  (cons 'vector
-       (make-list 6 '(gettext-hex-string-to-integer
-                      (gettext-gmo-read-32bit-word)))))
-
-(defun gettext-gmo-collect-strings (nn)
-  (let (strings pos len off)
-    (dotimes (i nn)
-      (setq len (gettext-hex-string-to-integer
-                (gettext-gmo-read-32bit-word))
-           off (gettext-hex-string-to-integer
-                (gettext-gmo-read-32bit-word))
-           pos (point))
-      (goto-char (1+ off))
-      (push (buffer-substring (point) (+ (point) len))
-           strings)
-      (goto-char pos))
-    (nreverse strings)))
-
-(defmacro gettext-parse-Content-Type (&optional header)
-  (require 'path-util)
-  (if (module-installed-p 'mime-parse)
-      (list 'with-temp-buffer
-           (list 'insert header)
-           '(mime-content-type-parameter
-             (mime-read-Content-Type)
-             "charset"))
-    'gettext-default-mime-charset))
-
-(defun gettext-mapcar* (function &rest args)
-  "Apply FUNCTION to successive cars of all ARGS.
-Return the list of results."
-  (unless (memq nil args)
-    (cons (apply function (mapcar #'car args))
-         (apply #'gettext-mapcar* function
-                (mapcar #'cdr args)))))
-
-(defun gettext-load-message-catalogue (file)
-  (with-temp-buffer
-    (let (header strings charset gettext-obarray)
-      (as-binary-input-file
-       (insert-file-contents file)
-       (goto-char (point-min))
-       (when (looking-at "\x95\x04\x12\xde")
-        (setq gettext-gmo-endian 4321))
-       (forward-char 4)
-       (setq header (gettext-gmo-read-header)
-            strings
-            (gettext-mapcar* #'cons
-                    (progn
-                      (goto-char (1+ (gettext-gmo-header-oo header)))
-                      (gettext-gmo-collect-strings
-                       (gettext-gmo-header-nn header)))
-                    (progn
-                      (goto-char (1+ (gettext-gmo-header-tt header)))
-                      (gettext-gmo-collect-strings
-                       (gettext-gmo-header-nn header))))
-            charset (or (gettext-parse-Content-Type
-                         (cdr (assoc "" strings)))
-                        'x-ctext)
-            gettext-obarray (make-vector
-                             (* 2 (gettext-gmo-header-nn header))
-                             0)))
-      (dolist (oott strings)
-       (set (intern (car oott) gettext-obarray)
-            (decode-mime-charset-string
-             (cdr oott) charset)))
-      gettext-obarray)))
-
-(defun gettext-load-portable-message-catalogue (file)
-  (with-temp-buffer
-    (let (strings charset msgstr msgid state gettext-obarray)
-      (as-binary-input-file
-       (insert-file-contents file)
-       (goto-char (point-min))
-       (while (not (eobp))
-        (cond
-         ((looking-at gettext-msgid-regexp)
-          (if (eq state 'msgstr)
-              (push (cons msgid msgstr)
-                    strings))
-          (setq msgid (buffer-substring (match-end 0)
-                                        (progn (end-of-line) (point))))
-          (when (string-match "\"\\s-*$" msgid)
-            (setq msgid (substring msgid 0 (match-beginning 0))))
-          (setq state 'msgid))
-         ((looking-at gettext-msgstr-regexp)
-          (setq msgstr (buffer-substring (match-end 0)
-                                         (progn (end-of-line) (point))))
-          (when (string-match "\"\\s-*$" msgstr)
-            (setq msgstr (substring msgstr 0 (match-beginning 0))))
-          (setq state 'msgstr))
-         ((looking-at "\\s-*\"")
-          (let ((line (buffer-substring (match-end 0)
-                                        (progn (end-of-line) (point)))))
-            (when (string-match "\"\\s-*$" line)
-              (setq line (substring line 0 (match-beginning 0))))
-            (set state (concat (symbol-value state) line)))))
-        (beginning-of-line 2))
-       (if (eq state 'msgstr)
-          (push (cons msgid msgstr)
-                strings))
-       ;; Remove quotations
-       (erase-buffer)
-       (goto-char (point-min))
-       (insert "(setq strings '(\n")
-       (dolist (oott strings)
-        (insert (format "(\"%s\" . \"%s\")\n"
-                        (car oott) (cdr oott)))
-        (insert "))"))
-       (ignore-errors (eval-buffer))
-       (setq charset (or (gettext-parse-Content-Type
-                         (cdr (assoc "" strings)))
-                        'x-ctext)))
-      (dolist (oott strings)
-       (set (intern (car oott) gettext-obarray)
-            (decode-mime-charset-string
-             (cdr oott) charset)))
-      gettext-obarray)))
-
-(unless (featurep 'i18n3)
-  (eval-and-compile
-    (defun dgettext (domain string)
-      "Look up STRING in the default message domain and return its translation.
-\[XEmacs I18N level 3 emulating function]"
-      (let ((oott (assoc domain gettext-message-domain-to-catalog-alist)))
-       (when (stringp (cdr oott))
-         (setcdr oott (gettext-load-message-catalogue
-                       (cdr oott))))
-       (or (symbol-value
-            (intern-soft string (or (cdr oott) (make-vector 1 0))))
-           string))))
-  
-  (defun gettext (string)
-    "Look up STRING in the default message domain and return its translation.
-\[XEmacs I18N level 3 emulating function]"
-    (dgettext gettext-default-message-domain string))
-
-  (defun bind-text-domain (domain pathname)
-    "Associate a pathname with a message domain.
-Here's how the path to message files is constructed under SunOS 5.0:
-  {pathname}/{LANG}/LC_MESSAGES/{domain}.mo
-\[XEmacs I18N level 3 emulating function]"
-    (let* ((lang (getenv "LANG"))
-          (file (concat domain ".mo"))
-          (catalog (expand-file-name
-                    file (concat pathname "/" lang "/LC_MESSAGES"))))
-      (when (file-exists-p catalog)
-       ;;(file-exists-p (setq catalog (expand-file-name file pathname)))
-       (push (cons domain catalog) gettext-message-domain-to-catalog-alist))))
-
-  (defun set-domain (domain)
-    "Specify the domain used for translating messages in this source file.
-The domain declaration may only appear at top-level, and should precede
-all function and variable definitions.
-
-The presence of this declaration in a compiled file effectively sets the
-domain of all functions and variables which are defined in that file.
-\[XEmacs I18N level 3 emulating function]"
-    (setq gettext-default-message-domain domain)))
-
-(provide 'gettext)
-
-;;; gettext.el ends here
diff --git a/lisp/liece-000.el b/lisp/liece-000.el
deleted file mode 100644 (file)
index f7cc798..0000000
+++ /dev/null
@@ -1,166 +0,0 @@
-;;; liece-000.el --- Handler routines for 000 numeric reply.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1998-01-26
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile (require 'cl))
-
-(eval-when-compile
-  (require 'liece-inlines)
-  (require 'liece-intl)
-  (require 'liece-misc))
-
-(defvar liece-tmp-server-name)
-
-(defun* liece-handle-000-messages (number prefix rest)
-  (setq liece-nick-accepted 'ok)
-  (or (string-match "[^ ]* \\([^ :]*\\) *\\([^ :]*\\) *:\\(.*\\)" rest)
-      (return-from liece-handle-000-messages))
-  (let ((target1 (match-string 1 rest)) (target2 (match-string 2 rest))
-       (msg (match-string 3 rest)))
-    (cond
-     ((string-equal target1 "")
-      (liece-insert liece-000-buffer
-                    (concat liece-info-prefix msg "\n")))
-     ((string-equal target2 "")
-      (liece-insert liece-000-buffer
-                    (format "%s%s (%s)\n" liece-info-prefix msg target1)))
-     (t
-      (liece-insert liece-000-buffer
-                    (format "%s%s %s (%s)\n"
-                            liece-info-prefix target1 msg target2))))))
-
-(defun* liece-handle-001-message (prefix rest)
-  "RPL_WELCOME \"Welcome to the Internet Relay Network <nick>\""
-  (or (< 0 (length (setq rest (liece-split-line rest))))
-      (return-from liece-handle-001-message))
-  (let ((nick (car rest)))
-    (setq liece-tmp-server-name prefix
-         liece-nickname nick
-         liece-real-nickname nick
-         liece-my-userhost nil)
-    (liece-send "USERHOST %s" liece-nickname)
-    (liece-insert-info
-     liece-000-buffer
-     (format
-      (_ "Welcome to the Internet Relay Chat world. Your nick is %s.\n")
-      nick))))
-
-(defun liece-handle-002-message (prefix rest)
-  "RPL_YOURHOST \"Your host is <host>, running version <version>\"."
-  (cond
-   ((string-match "running version \\(.*\\)" rest)
-    (liece-insert-info liece-000-buffer
-                       (format (_ "Your server is %s (version %s).\n")
-                               liece-tmp-server-name (match-string 1 rest))))
-   (t
-    (liece-insert-info liece-000-buffer
-                       (format (_ "Your client version is %s.\n")
-                               (liece-version))))))
-
-(defun liece-handle-003-message (prefix rest)
-  "RPL_CREATED \"This server was created <time>\"."
-  (if (string-match "was created \\(.*\\)" rest)
-      (liece-insert-info liece-000-buffer
-                         (format (_ "Your server was created %s\n")
-                                 (match-string 1 rest)))))
-
-(defmacro char-list-to-string-alist (clist)
-  `(mapcar
-    (lambda (ch) (list (char-to-string ch)))
-    ,clist))
-
-(defun* liece-handle-004-message (prefix rest)
-  "RPL_MYINFO \"<umodes> <chnlmodes>\""
-  (or (string-match "[^ ]* \\(.*\\)" rest)
-      (return-from liece-handle-004-message))
-  (let ((rest (match-string 1 rest)))
-    (cond
-     ((string-match "[^ ]* [^ ]* \\([^ ]+\\) \\(.*\\)" rest)
-      (setq liece-supported-user-mode-alist
-           (char-list-to-string-alist
-            (string-to-char-list (match-string 1 rest)))
-           liece-supported-channel-mode-alist
-           (char-list-to-string-alist
-            (string-to-char-list (match-string 2 rest)))))
-     (t
-      (liece-insert-info liece-000-buffer (concat rest "\n"))))))
-
-\f
-;; Undernet's MAP feature
-(defvar liece-undernet-map nil)
-
-(defun liece-handle-005-message (prefix rest)
-  "RPL_MAP \"<server>\"."
-  (liece-increment-long-reply-count)
-  (liece-check-long-reply-count)
-  (push rest liece-undernet-map))
-
-(defun liece-handle-006-message (prefix rest)
-  "RPL_MAPMORE \"<server> --> *more*\"."
-  (liece-increment-long-reply-count)
-  (liece-check-long-reply-count)
-  (if (string-match " --> \*more\*" rest)
-      (setq rest (concat "[" (substring rest 0 (match-beginning 0)))) "]*")
-  (push rest liece-undernet-map))
-
-(defun liece-handle-007-message (prefix rest)
-  "RPL_MAPEND \"End of /MAP\"."
-  (liece-reset-long-reply-count)
-  (dolist (map liece-undernet-map)
-    (liece-insert-info liece-000-buffer (concat map "\n")))
-  (setq liece-undernet-map nil))
-
-\f
-;;; @ register message handlers
-;;;
-
-(eval-when-compile (require 'liece-handler))
-
-(liece-handler-define-backend "000")
-
-(defmacro liece-register-000-handler (num)
-  `(progn
-     (liece-handler-define-function
-      ,(format "%03d" num) '(prefix require "000")
-      ',(intern (format "liece-handle-%03d-message" num)))
-     (defvar ,(intern (format "liece-%03d-hook" num)) nil)
-     (defvar ,(intern (format "liece-after-%03d-hook" num)) nil)))
-
-(liece-register-000-handler 001)
-(liece-register-000-handler 002)
-(liece-register-000-handler 003)
-(liece-register-000-handler 004)
-(liece-register-000-handler 005)
-(liece-register-000-handler 006)
-(liece-register-000-handler 007)
-
-(provide 'liece-000)
-
-;;; liece-000.el ends here
diff --git a/lisp/liece-200.el b/lisp/liece-200.el
deleted file mode 100644 (file)
index cfdba65..0000000
+++ /dev/null
@@ -1,385 +0,0 @@
-;;; liece-200.el --- Handler routines for 200 numeric reply.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1998-11-25
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile
-  (require 'liece-inlines)
-  (require 'liece-intl)
-  (require 'liece-misc)
-  (require 'liece-commands))
-
-(defun* liece-handle-200-messages (number prefix rest)
-  "200 replies"
-  (or (string-match "[^ ]* \\([^ ]*\\) *\\([^ ]*\\) *:\\(.*\\)" rest)
-      (return-from liece-handle-200-messages))
-  (let ((target1 (match-string 1 rest))        (target2 (match-string 2 rest))
-       (msg (match-string 3 rest)))
-    (setq target1 (liece-channel-virtual target1)
-         target2 (liece-channel-virtual target2))
-    (cond ((string-equal target1 "")
-          (liece-insert-info liece-200-buffer (concat msg "\n")))
-         ((string-equal target2 "")
-          (liece-insert-info
-           liece-200-buffer (concat target1 " " msg "\n")))
-         (t
-          (liece-insert-info
-           liece-200-buffer (concat target1 " " msg " (" target2 ")\n"))))))
-
-(defun* liece-handle-200-message (prefix rest)
-  "RPL_TRACELINK \"Link <version & debug level> <destination> <next server>\""
-  (or (string-match "Link \\([^ ]*\\)[ :]*\\([^ ]*\\)[ :]*\\([^ ]*\\)[ :]*\\([^ ]*\\)[ :]*\\([^ ]*\\)[ :]*\\([^ ]*\\)[ :]*\\(.*\\)" rest)
-      (return-from liece-handle-200-message))
-  (let ((version (match-string 1 rest)) (dest (match-string 2 rest))
-       (next (match-string 3 rest)) (ver (match-string 4 rest))
-       (sec (match-string 5 rest))
-       (q1 (match-string 6 rest)) (q2 (match-string 7 rest)))
-    (liece-insert-info liece-200-buffer
-                       (concat prefix
-                               " ("
-                               version (if ver (concat " " ver) "")
-                               ") --- " dest "\n"))
-    (liece-insert-info liece-200-buffer
-                       (concat "\t[" (liece-convert-seconds sec) "]"
-                               (if (not (string= q1 "")) (concat " " q1) "")
-                               (if (not (string= q2 "")) (concat "/" q2) "")
-                               " (next " next ")\n"))))
-    
-(defun* liece-handle-201-message (prefix rest)
-  "RPL_TRACECONNECTING \"Try. <class> <server>\""
-  (or (string-match "[^ ]* [^ ]* \\([0-9]*\\)[ :]*\\(.*\\)" rest)
-      (return-from liece-handle-201-message))
-  (let ((class (match-string 1 rest))
-       (server (match-string 2 rest)))
-    (liece-insert-info liece-200-buffer
-                       (format (_ "%s Trying to connect to %s (class %s)\n")
-                               prefix server class))))
-
-(defun* liece-handle-202-message (prefix rest)
-  "RPL_TRACEHANDSHAKE \"H.S. <class> <server>\""
-  (or (string-match "[^ ]* [^ ]* \\([0-9]*\\)[ :]*\\(.*\\)" rest)
-      (return-from liece-handle-202-message))
-  (let ((class (match-string 1 rest)) (server (match-string 2 rest)))
-    (liece-insert-info liece-200-buffer
-                       (format (_ "%s Handshaking with %s (class: %s)\n")
-                               prefix server class))))
-
-(defun* liece-handle-203-message (prefix rest)
-  "RPL_TRACEUNKNOWN \"???? <class> [<client IP address in dot form>]\""
-  (or (string-match "[^ ]* [^ ]* \\([^ ]*\\)[ :]+\\(.*\\)" rest)
-      (return-from liece-handle-203-message))
-  (let ((class (match-string 1 rest)) (who (match-string 2 rest)))
-    (liece-insert-info liece-200-buffer
-                       (concat "Class " class ": unknown " who "\n"))))
-
-(defun* liece-handle-204-message (prefix rest)
-  "RPL_TRACEOPERATOR \"Oper <class> <nick>\""
-  (or (string-match "[^ ]* [^ ]* \\([^ ]*\\)[ :]+\\(.*\\)" rest)
-      (return-from liece-handle-204-message))
-  (let ((class (match-string 1 rest)) (who (match-string 2 rest)))
-    (liece-insert-info liece-200-buffer
-                       (concat "Class " class ": operator " who "\n"))))
-
-(defun* liece-handle-205-message (prefix rest)
-  "RPL_TRACEUSER \"User <class> <nick>\""
-  (or (string-match "[^ ]* [^ ]* \\([0-9]*\\)[ :]*\\(.*\\)" rest)
-      (return-from liece-handle-205-message))
-  (let ((hops (match-string 1 rest)) (where (match-string 2 rest)))
-    (liece-insert-info liece-200-buffer
-                       (concat "Class " hops ": user " where "\n"))))
-
-(defun* liece-handle-206-message (prefix rest)
-  "RPL_TRACESERVER \"Serv <class> <int>S <int>C <server> <nick!user|*!*>@<host|server>\""
-  (or (string-match "Serv \\([^ ]*\\) \\(.*\\)" rest)
-      (return-from liece-handle-206-message))
-  (let ((class (match-string 1 rest)) (pars (match-string 2 rest)))
-    (cond
-     ((string-match "\\([0-9]*\\)S *\\([0-9]*\\)C *\\([^ ]*\\) *\\([^ ]*\\)[ :]*\\(.*\\)" pars)
-      (let ((servers (match-string 1 pars)) (clients (match-string 2 pars))
-           (next (match-string 3 pars)) (by (match-string 4 pars))
-           (type (match-string 5 pars)))
-       
-       ;; This is automatic connection line
-       (setq by (if (string-match "^AutoConn\\.!" by)
-                    "auto connection"
-                  (concat "by " by)))
-       
-       (liece-insert-info liece-200-buffer
-                           (concat prefix " --- " next "\n"))
-       (liece-insert-info liece-200-buffer
-                           (concat "\t[" clients " clients, "
-                                   servers " servers]"
-                                   " Class " class ", Type " type " " by
-                                   "\n"))))
-     (t
-      (liece-insert-info liece-200-buffer
-                         (format "Class %s: server %s --- %s\n"
-                                 class prefix pars))))))
-
-(defun* liece-handle-207-message (prefix rest)
-  "RPL_TRACESERVICE \"Service <class> <name> <type> <wants>\""
-  (or (string-match "[^ ]* Service \\([0-9]*\\) \\(.*\\)" rest)
-      (return-from liece-handle-207-message))
-  (let ((class (match-string 1 rest)) (service (match-string 2 rest)))
-    (liece-insert-info liece-200-buffer
-                       (concat "Class " class ": service " service "\n"))))
-
-(defun liece-handle-208-message (prefix rest)
-  "RPL_TRACENEWTYPE \"<newtype> 0 <client name>\"."
-  (liece-insert-info liece-200-buffer
-                     (format "%s: RPL_TRACENEWTYPE: Why this?\n" prefix)))
-
-(defun* liece-handle-209-message (prefix rest)
-  "RPL_TRACECLASS \"Class <class> <links>\""
-  (or (string-match "[^ ]* Class \\([0-9]*\\) \\([0-9]*\\)" rest)
-      (return-from liece-handle-209-message))
-  (let ((class (match-string 1 rest)) (entries (match-string 2 rest)))
-    (liece-insert-info liece-200-buffer
-                      (concat "Class " class ": " entries
-                              "entries linked\n"))))
-
-(defun* liece-handle-211-message (prefix rest)
-  "RPL_STATSLINKINF \"<linkname> <sendq> <sent messages> <sent bytes> <received messages> <received bytes> <time open>\""
-  (or (string-match "\\([^ ]*\\) \\([^ ]*\\) \\([^ ]*\\) \\([^ ]*\\) \\([^ ]*\\) \\([^ ]*\\) \\([^ ]*\\)[ :]+\\(.*\\)" rest)
-      (return-from liece-handle-211-message))
-  (let ((link (match-string 2 rest)) (sendq (match-string 3 rest))
-       (sendm (match-string 4 rest)) (sendb (match-string 5 rest))
-       (rcvem (match-string 6 rest)) (rcveb (match-string 7 rest))
-       (open (match-string 8 rest)))
-    (liece-insert-info liece-200-buffer
-                       (format "%-35s %s: %5s%7s%10s%7s%10s %s\n"
-                               link prefix sendq sendm sendb
-                               rcvem rcveb open))))
-
-(defun* liece-handle-212-message (prefix rest)
-  "RPL_STATSCOMMANDS \"<command> <count>\""
-  (or (string-match "[^ ]* \\([^ ]*\\) \\([0-9]*\\)" rest)
-      (return-from liece-handle-212-message))
-  (let ((cmd (match-string 1 rest)) (times (match-string 2 rest)))
-    (liece-insert-info liece-200-buffer
-                       (format "%s has been used %s times after startup\n"
-                               cmd times))))
-
-(defun* liece-handle-213-message (prefix rest)
-  "RPL_STATSCLINE \"C <host> * <name> <port> <class>\""
-  (or (string-match "[^ ]* C \\([^ ]*\\) \\* \\([^ ]*\\) \\([0-9]*\\) \\([0-9]*\\)" rest)
-      (return-from liece-handle-213-message))
-  (let ((canon (match-string 1 rest)) (name (match-string 2 rest))
-       (port (match-string 3 rest)) (class (match-string 4 rest)))
-    (liece-insert-info liece-200-buffer
-                       (concat "Connect to " canon ":" port
-                               (if (not (string= class ""))
-                                   " (Class " class ")" "")
-                               "\n"))
-    (liece-insert-info liece-200-buffer
-                       (concat "\t[" name "]\n"))))
-
-(defun* liece-handle-214-message (prefix rest)
-  "RPL_STATSNLINE \"N <host> * <name> <port> <class>\""
-  (or (string-match "[^ ]* N \\([^ ]*\\) \\* \\([^ ]*\\) \\([0-9]*\\) \\([0-9]*\\)" rest)
-      (return-from liece-handle-214-message))
-  (let ((canon (match-string 1 rest)) (name (match-string 2 rest))
-       (port (match-string 3 rest)) (class (match-string 4 rest)))
-    (liece-insert-info liece-200-buffer
-                       (concat "Accept " canon ":" port
-                               (if (not (string= class ""))
-                                   " (Class " class ")" "")
-                               "\n"))
-    (liece-insert-info liece-200-buffer
-                       (concat "\t[" name "]\n"))))
-
-(defun* liece-handle-215-message (prefix rest)
-  "RPL_STATSILINE \"I <host> * <host> <port> <class>\""
-  (or (string-match "[^ ]* I \\([^ ]*\\) \\(.*\\) \\([^ ]*\\)" rest)
-      (return-from liece-handle-215-message))
-  (let ((domain (match-string 1 rest)) (passwd (match-string 2 rest))
-       (redomain (match-string 3 rest)))
-    (liece-insert-info liece-200-buffer
-                       (format "I:%s:%s:%s\n" domain passwd redomain))))
-
-(defun* liece-handle-216-message (prefix rest)
-  "RPL_STATSKLINE \"K <host> * <username> <port> <class>\""
-  (or (or (string-match
-          "[^ ]* K \\([^ ]*\\) \\(.\\) \\([^ ]*\\) 0 -1" rest)
-         (string-match
-          "[^ ]* K \\([^ ]*\\) \\([^ ]*\\) \\([^ ]*\\) 0 [:]*-1" rest))
-      (return-from liece-handle-216-message))
-  (let ((host (match-string 1 rest)) (pass (match-string 2 rest))
-       (user (match-string 3 rest)))
-    (liece-insert-info liece-200-buffer
-                       (format "K:%s:%s:%s\n" host pass user))))
-
-(defun* liece-handle-217-message (prefix rest)
-  "RPL_STATSQLINE \"Q %s %s %s %d %d\""
-  (or (string-match
-       "[^ ]* Q \\([^ ]*\\) \\(.\\) \\([^ ]*\\) \\(.*\\)" rest)
-      (return-from liece-handle-217-message))
-  (let ((reason (match-string 1 rest)) (star (match-string 2 rest))
-       (host (match-string 3 rest)) (stuff (match-string 4 rest)))
-    (liece-insert-info liece-200-buffer
-                       (format "Q:%s:%s:%s:%s\n" reason star host stuff))))
-
-(defun* liece-handle-218-message (prefix rest)
-  "RPL_STATSYLINE \"Y <class> <ping frequency> <connect  frequency> <max sendq>\""
-  (or (string-match "[^ ]* Y " rest)
-      (return-from liece-handle-218-message))
-  (let* ((args (split-string (substring rest (match-end 0))))
-        (class (pop args)) (pingfreq (pop args)) (confreq (pop args))
-        (maxlinks (pop args)) (qlen (pop args)))
-    (liece-insert-info liece-200-buffer
-                       (concat "Class " class ": \n"))
-    (liece-insert-info liece-200-buffer
-                       (concat "\tPing frequency " pingfreq " (sec)\n"))
-    (liece-insert-info liece-200-buffer
-                       (concat "\tConnection frequency " confreq " (sec)\n"))
-    (liece-insert-info liece-200-buffer
-                       (concat "\tMaximum links " maxlinks "\n"))
-    (when qlen
-      (liece-insert-info liece-200-buffer
-                         (concat "\tMaximum amount of send buffer "
-                                 qlen " (bytes)\n")))))
-
-(defun liece-handle-219-message (prefix rest)
-  "RPL_ENDOFSTATS \"<stats letter> :End of /STATS report\"."
-  nil)
-
-(defun liece-handle-221-message (prefix rest)
-  "RPL_UMODEIS \"<user mode string>\"."
-  (if (string-match "[^ ]* \\(.*\\)" rest)
-      (liece-insert-info liece-200-buffer
-                         (format (_ "Mode for you is %s\n")
-                                 (match-string 1 rest)))))
-
-;;;
-;;; 230 series not implemented as 7/94
-;;;
-(defun liece-handle-231-message (prefix rest)
-  nil)
-
-(defun liece-handle-232-message (prefix rest)
-  nil)
-
-(defun liece-handle-233-message (prefix rest)
-  nil)
-
-(defun liece-handle-234-message (prefix rest)
-  nil)
-
-(defun liece-handle-235-message (prefix rest)
-  nil)
-
-(defun liece-handle-241-message (prefix rest)
-  "RPL_STATSLLINE \"L <hostmask> * <servername> <maxdepth>\"."
-  (if (string-match "[^ ]* \\(.*\\)" rest)
-      (liece-insert-info liece-200-buffer
-                         (concat (match-string 1 rest) "\n"))))
-
-(defun liece-handle-242-message (prefix rest)
-  "RPL_STATSUPTIME \":Server Up %d days %d:%02d:%02d\"."
-  (if (string-match "[^ ]* :\\(.*\\)" rest)
-      (liece-insert-info liece-200-buffer
-                         (concat (match-string 1 rest) "\n"))))
-
-(defun liece-handle-243-message (prefix rest)
-  "RPL_STATSOLINE \"O <hostmask> * <name>\"."
-  (if (string-match "[^ ]* \\(.*\\)" rest)
-      (liece-insert-info liece-200-buffer
-                         (concat (match-string 1 rest) "\n"))))
-
-(defun liece-handle-244-message (prefix rest)
-  "RPL_STATSHLINE \"H <hostmask> * <servername>\"."
-  (if (string-match "[^ ]* \\(.*\\)" rest)
-      (liece-insert-info liece-200-buffer
-                         (concat (match-string 1 rest) "\n"))))
-
-(defun liece-handle-245-message (prefix rest)
-  "RPL_STATSSLINE \"S <hostmask> * <servicename> <servicetype> <class>\"."
-  (if (string-match "[^ ]* \\(.*\\)" rest)
-      (liece-insert-info liece-200-buffer
-                         (concat (match-string 1 rest) "\n"))))
-
-(defun liece-handle-262-message (prefix rest)
-  "RPL_ENDOFTRACE \"<nickname> <target> <version> :End of TRACE\"."
-  nil)
-
-\f
-;;; @ register message handlers
-;;;
-
-(eval-when-compile (require 'liece-handler))
-
-(liece-handler-define-backend "200")
-
-(defmacro liece-register-200-handler (num)
-  `(progn
-     (liece-handler-define-function
-      ,(number-to-string num) '(prefix rest "200")
-      ',(intern (format "liece-handle-%03d-message" num)))
-     (defvar ,(intern (format "liece-%03d-hook" num)) nil)
-     (defvar ,(intern (format "liece-after-%03d-hook" num)) nil)))
-
-(liece-register-200-handler 200)
-(liece-register-200-handler 201)
-(liece-register-200-handler 202)
-(liece-register-200-handler 203)
-(liece-register-200-handler 204)
-(liece-register-200-handler 205)
-(liece-register-200-handler 206)
-(liece-register-200-handler 207)
-(liece-register-200-handler 208)
-(liece-register-200-handler 209)
-
-(liece-register-200-handler 211)
-(liece-register-200-handler 212)
-(liece-register-200-handler 213)
-(liece-register-200-handler 214)
-(liece-register-200-handler 215)
-(liece-register-200-handler 216)
-(liece-register-200-handler 217)
-(liece-register-200-handler 218)
-(liece-register-200-handler 219)
-
-(liece-register-200-handler 221)
-
-(liece-register-200-handler 231)
-(liece-register-200-handler 232)
-(liece-register-200-handler 233)
-(liece-register-200-handler 234)
-(liece-register-200-handler 235)
-
-(liece-register-200-handler 241)
-(liece-register-200-handler 242)
-(liece-register-200-handler 243)
-(liece-register-200-handler 244)
-(liece-register-200-handler 245)
-(liece-register-200-handler 262)
-
-(provide 'liece-200)
-
-;;; liece-200.el ends here
diff --git a/lisp/liece-300.el b/lisp/liece-300.el
deleted file mode 100644 (file)
index 93fe292..0000000
+++ /dev/null
@@ -1,646 +0,0 @@
-;;; liece-300.el --- Handler routines for 300 numeric reply.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1998-11-25
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile
-  (require 'liece-inlines)
-  (require 'liece-intl)
-  (require 'liece-misc)
-  (require 'liece-commands))
-
-(eval-and-compile
-  (autoload 'liece-dcc-compare-hostnames "liece-dcc"))
-
-(defvar liece-recursing-whois nil)
-(defvar liece-recursing-whowas nil)
-
-(defun* liece-handle-300-messages (number prefix rest)
-  "300 replies"
-  (or (string-match "[^ ]* \\([^ ]*\\) *\\([^ ]*\\) *:\\(.*\\)" rest)
-      (return-from liece-handle-300-messages))
-  (let ((target1 (liece-channel-virtual (match-string 1 rest)))
-       (target2 (liece-channel-virtual (match-string 2 rest)))
-       (msg (match-string 3 rest)))
-    (cond ((string= target1 "")
-          (liece-insert-info liece-300-buffer (concat msg "\n")))
-         ((string= target2 "")
-          (liece-insert-info liece-300-buffer
-                              (format "%s (%s)\n" msg target1)))
-         (t
-          (liece-insert-info liece-300-buffer
-                              (format "%s %s (%s)\n" target1 msg target2))))))
-
-(defun liece-handle-301-message (prefix rest)
-  "RPL_AWAY \"<nickname> :<away message>\"."
-  (if (string-match "^[^ ]+ \\([^ ]+\\) +:\\(.*\\)" rest)
-      (let ((who (match-string 1 rest)) (iswhat (match-string 2 rest)))
-       (or liece-recursing-whois
-           (liece-insert-info liece-300-buffer
-                               (concat who " is marked as being away, "
-                                       "but left the message:\n"
-                                       iswhat "\n"))))))
-
-(defun liece-handle-302-message (prefix rest)
-  "RPL_USERHOST        \":[<reply>{<space><reply>}]\"."
-  (while (string-match
-         "^[^ ]* :[ ]*\\([^*=]+\\)\\([*]*\\)=\\([+-]\\)\\([^ ]+\\)" rest)
-    (let ((nick (match-string 1 rest)) (oper (match-string 2 rest))
-         (away (match-string 3 rest)) (who (match-string 4 rest))
-         (end (match-end 4)))
-      (if (liece-nick-equal nick liece-real-nickname)
-         (setq liece-my-userhost who))
-      (liece-insert-info liece-300-buffer
-                         (format "Nick %s is %s [%s%s, %s%s]\n"
-                                 nick who
-                                 (if (string= oper "") "Not ") "operator"
-                                 (if (string= away "+") "Not ") "away"))
-      (setq rest (concat " :" (substring rest end nil))))))
-
-(defun liece-303-display-friends (nicks)
-  (let ((on (filter-elements nick nicks
-             (not (string-list-member-ignore-case nick liece-friends-last))))
-       (off (filter-elements nick liece-friends-last
-              (not (string-list-member-ignore-case nick nicks)))))
-    (setq liece-friends-last nicks)
-    (if on
-      (liece-insert-info liece-300-buffer
-                         (format (_ "Following people are now on: %s\n")
-                                 (mapconcat 'identity on " "))))
-    (if off
-       (liece-insert-info liece-300-buffer
-                           (format (_ "Following people are now off: %s\n")
-                                   (mapconcat 'identity off " "))))))
-
-(defun* liece-handle-303-message (prefix rest)
-  "RPL_ISON \":[<nickname> {<space><nickname>}]\""
-  (or (string-match "[^ ]+ :\\(.*\\)" rest)
-      (return-from liece-handle-303-message))
-  (setq rest (match-string 1 rest))
-  (or (string= rest "")
-      (setq rest (substring rest 0 -1)))
-  (let ((nicks (split-string rest)))
-    (when (and (null nicks) (null liece-friends))
-      (liece-insert-info liece-300-buffer
-                         (_ "No one you requested is on now.\n"))
-      (return-from liece-handle-303-message))
-    (dolist (nick nicks)
-      (when (and (string-list-member-ignore-case
-                 nick liece-current-chat-partners)
-                (get (intern nick liece-obarray) 'part))
-       (liece-insert-change (liece-pick-buffer nick)
-                             (format (_ "%s has come back\n") nick))
-       (put (intern nick liece-obarray) 'part nil)))
-    (unless liece-friends
-      (liece-insert-info liece-300-buffer
-                         (format (_ "Following people are on: %s\n") rest))
-      (return-from liece-handle-303-message))
-    (if (fboundp liece-display-friends-function)
-       (funcall liece-display-friends-function nicks))))
-       
-(defun* liece-handle-305-message (prefix rest)
-  "RPL_UNAWAY \":You are no longer marked as being away\""
-  (or (string-equal liece-away-indicator "A")
-      (return-from liece-handle-305-message))
-  (setq liece-away-indicator "-")
-  (liece-maybe-poll)
-  (when (string-match "[^:]:\\(.*\\)" rest)
-    (setq rest (match-string 1 rest))
-    (liece-insert-info liece-300-buffer
-                       (format "%s (%s)\n"
-                               rest (funcall liece-format-time-function
-                                             (current-time))))))
-
-(defun liece-handle-306-message (prefix rest)
-  "RPL_NOWAWAY \":You have been marked as being away\"."
-  (setq liece-away-indicator "A")
-  (if (string-match "[^:]:\\(.*\\)" rest)
-      (liece-insert-info liece-300-buffer
-                         (format "%s (%s)\n"
-                                 (match-string 1 rest)
-                                 (funcall liece-format-time-function
-                                          (current-time))))))
-
-(defun liece-handle-311-message (prefix rest)
-  "RPL_WHOISUSER \"<nickname> <user> <host> * :<real name>\"."
-  (and (string-match "[^ ]+ \\([^ ]+\\) \\([^ ]+\\) \\([^ ]+\\) \\([^ ]+\\) :\\(.*\\)" rest)
-       (not liece-recursing-whois)
-       (liece-insert-info liece-300-buffer
-                          (format "%s is %s (%s@%s)\n"
-                                  (match-string 1 rest) ; nick
-                                  (match-string 5 rest) ; realname
-                                  (match-string 2 rest) ; username
-                                  (match-string 3 rest) ; machine
-                                  ))))
-
-(defun* liece-handle-312-message (prefix rest)
-  "RPL_WHOISSERVER \"<nickname> <server> :<server info>\""
-  (or (string-match "^[^ ]+ \\(\\([^ ]+\\) \\)?\\([^ ]+\\) :\\(.*\\)" rest)
-      (return-from liece-handle-312-message))
-  (let ((who (match-string 2 rest))
-       (server (match-string 3 rest))
-       (real (match-string 4 rest)))
-    (if (and liece-dcc-resolve-server
-            (not (liece-dcc-compare-hostnames server (liece-server-host)))
-            (not liece-recursing-whois)
-            (not liece-recursing-whowas))
-       (progn
-         (setq liece-recursing-whois t)
-         (liece-send "WHOIS %s %s" server who))
-      (setq liece-recursing-whois nil)
-      (liece-insert-info liece-300-buffer
-                         (format "on via server %s (%s)\n" server real)))))
-
-(defun liece-handle-313-message (prefix rest)
-  "RPL_WHOISOPERATOR \"<nickname> :is an IRC operator\"."
-  (if (string-match "^[^ ]+ \\([^ ]+\\) :\\(.*\\)" rest)
-      (or liece-recursing-whois
-         (liece-insert-info liece-300-buffer
-                             (concat (match-string 2 rest)
-                                     " is an IRC operator\n")))))
-
-(defun liece-handle-316-message (prefix rest)
-  "RPL_WHOISCHANOP."
-  (cond ((string-match "^\\([^ ]+\\) :\\(.*\\)" rest)
-        (if (not liece-recursing-whois)
-            (liece-insert-info liece-300-buffer
-                                (concat "Status: "
-                                        (match-string 2 rest) "\n"))))
-       ((string-match "^\\([^ ]+\\) \\([^ ]+\\) :\\(.*\\)" rest)
-        (if (not liece-recursing-whois)
-            (liece-insert-info liece-300-buffer
-                                (concat "Status: "
-                                        (match-string 3 rest) "\n"))))))
-
-(defun* liece-handle-319-message (prefix rest)
-  "RPL_WHOISCHANNELS \"<nickname> :{[@|+]<channel><space>}\""
-  (or (string-match "^\\([^ ]+\\) \\([^ ]+\\) :\\(.*\\)" rest)
-      (return-from liece-handle-319-message))
-  (let ((chnls (split-string (match-string 3 rest)))
-       isonchnls flag)
-    (dolist (chnl chnls)
-      (if (and (or (eq ?@ (string-to-char chnl))
-                  (eq ?+ (string-to-char chnl)))
-              (liece-channel-p (substring chnl 1)))
-         (progn
-           (setq flag (substring chnl 0 1)
-                 chnl (substring chnl 1)))
-       (setq flag ""))
-      (push (concat flag (liece-channel-virtual chnl)) isonchnls))
-    (if (not liece-recursing-whois)
-       (liece-insert-info liece-300-buffer
-                           (format (_ "Channels: %s\n")
-                                   (mapconcat (function identity)
-                                              (nreverse isonchnls) " "))))))
-
-(defun liece-handle-314-message (prefix rest)
-  "RPL_WHOWASUSER \"<nickname> <user> <host> * :<real name>\"."
-  (if (string-match
-       "[^ ]+ \\([^ ]+\\) \\([^ ]+\\) \\([^ ]+\\) \\([^ ]+\\) :\\(.*\\)"
-       rest)
-      (let ((nick (match-string 1 rest)) (username (match-string 2 rest))
-           (machine (match-string 3 rest)) (chnl (match-string 4 rest))
-           (realname (match-string 5 rest)))
-       (setq liece-recursing-whowas t)
-       (liece-insert-info liece-300-buffer
-                           (format "%s [%s] was %s (%s@%s)\n"
-                                   nick
-                                   (if (string= chnl "*") "Private" chnl)
-                                   realname username machine)))))
-
-(defun liece-handle-315-message (prefix rest)
-  "RPL_ENDOFWHO."
-  (if (zerop liece-long-reply-count)
-      (liece-insert-info liece-300-buffer
-                         (concat "No matches found"
-                                 (if liece-who-expression
-                                     (concat ": " liece-who-expression)
-                                   "")
-                                 "\n")))
-  (setq liece-who-expression nil)
-  (liece-reset-long-reply-count))
-
-(defun liece-handle-317-message (prefix rest)
-  "RPL_WHOISIDLE \"<nickname> <integer> :seconds idle\"."
-  (cond ((string-match "^[^ ]+ [^ ]+ \\([0-9]*\\) :\\(.*\\)" rest)
-        (liece-insert-info liece-300-buffer
-                            (concat "Idle for "
-                                    (liece-convert-seconds
-                                     (match-string 1 rest))
-                                    "\n")))
-       ((string-match "^[^ ]+ \\([0-9]*\\) :\\(.*\\)" rest)
-        (liece-insert-info liece-300-buffer
-                            (concat "Idle for "
-                                    (liece-convert-seconds
-                                     (match-string 1 rest))
-                                    "\n")))))
-
-(defun liece-handle-318-message (prefix rest)
-  "RPL_ENDOFWHOIS \"<nickname> :End of /WHOIS list\"."
-  nil)
-
-(defun liece-handle-321-message (prefix rest)
-  "RPL_LISTSTART \"Channel :Users  Name\"."
-  (liece-insert-info liece-300-buffer
-                     (format "%-10s%6s  %s\n"
-                             (_ "Channel") (_ "Users")  (_ "Topic"))))
-
-(defun* liece-handle-322-message (prefix rest)
-  "RPL_LIST \"<channel> <# visible> :<topic>\""
-  (or (string-match "^\\([^ ]+\\) \\([^ ]+\\) \\([^ ]+\\) :\\(.*\\)" rest)
-      (return-from liece-handle-322-message))
-  (liece-increment-long-reply-count)
-  (liece-check-long-reply-count)
-  (let ((chnl (match-string 2 rest))
-       (users (match-string 3 rest))
-       (topic (match-string 4 rest)))
-    (when (or (string= liece-channel-filter (downcase chnl))
-             (string= liece-channel-filter "")
-             (and (string= liece-channel-filter "0")
-                  (string= chnl "*")))
-      (setq chnl (liece-channel-virtual chnl))
-      (put (intern chnl liece-obarray) 'topic topic)
-      (liece-insert-info (append (liece-pick-buffer chnl) liece-300-buffer)
-                         (format "%-10s%6s user%s%s%s\n"
-                                 (if (string= chnl "*") "Priv" chnl)
-                                 users
-                                 (if (> (string-to-int users) 1) "s" "")
-                                 (if (string= "" topic) "" ": ")
-                                 topic)))))
-
-(defun liece-handle-323-message (prefix rest)
-  "RPL_LISTEND \":End of /LIST\"."
-  (liece-reset-long-reply-count))
-
-(defun liece-handle-324-message (prefix rest)
-  "RPL_CHANNELMODEIS \"<channel> <mode> <mode params>\"."
-  (if (string-match "[^ ]* \\([^ ]*\\) +\\+\\([^ ]*\\)\\( *[^ ]*\\)" rest)
-      (let ((chnl (match-string 1 rest))
-           (mode (match-string 2 rest))
-           (param (match-string 3 rest)))
-       (setq chnl (liece-channel-virtual chnl))
-       (put (intern chnl liece-obarray) 'mode mode)
-       (liece-insert-info (append (liece-pick-buffer chnl)
-                                   liece-300-buffer)
-                           (format (_ "Mode for %s is %s%s\n")
-                                   chnl mode param))
-       (liece-set-channel-indicator))))
-
-(defun liece-handle-331-message (prefix rest)
-  "RPL_NOTOPIC \"<channel> :No topic is set\"."
-  (if (string-match "[^ ]* \\([^ ]*\\) \\(.*\\)" rest)
-      (let ((chnl (match-string 1 rest)))
-       (setq chnl (liece-channel-virtual chnl))
-       (put (intern chnl liece-obarray) 'topic nil)
-       (liece-insert-info (append (liece-pick-buffer chnl)
-                                   liece-300-buffer)
-                           (_ "No topic is set\n"))
-       (liece-set-channel-indicator))))
-
-(defun liece-handle-332-message (prefix rest)
-  "RPL_TOPIC \"<channel> :<topic>\"."
-  (if (string-match "[^ ]* \\([^ ]*\\) +:\\(.*\\)" rest)
-      (let ((chnl (liece-channel-virtual (match-string 1 rest)))
-           (topic (match-string 2 rest)))
-       (liece-channel-set-topic topic chnl)
-       (liece-insert-info (liece-pick-buffer chnl)
-                           (format (_ "Topic: %s\n") topic))
-       (liece-insert-info liece-300-buffer
-                           (format (_ "Topic for %s: %s\n") chnl topic))
-       (liece-set-channel-indicator))))
-
-(defun liece-handle-333-message (prefix rest)
-  "RPL_TOPICWHOTIME <channel> <nickname> <time>."
-  (if (string-match "[^ ]* \\([^ ]*\\) +\\([^ ]*\\) +\\([^ ]*\\)" rest)
-      (let ((chnl (liece-channel-virtual (match-string 1 rest)))
-           (nick (match-string 2 rest))
-           (time (funcall liece-format-time-function
-                          (liece-seconds-to-time
-                           (string-to-int (match-string 3 rest))))))
-       (liece-insert-info (liece-pick-buffer chnl)
-                           (format (_ "Topic set by %s at %s\n")
-                                   nick time))
-       (liece-insert-info liece-300-buffer
-                           (format (_ "Topic for %s set by %s at %s\n")
-                                   chnl nick time))
-       (liece-set-channel-indicator))))
-
-(defun liece-handle-341-message (prefix rest)
-  "RPL_INVITING \"<channel> <nickname>\"."
-  (if (string-match "^\\([^ ]+\\) +\\([^ ]+\\) +\\([-#&0-9+][^ ]*\\)" rest)
-      (let ((nick (match-string 2 rest))
-           (chnl (liece-channel-virtual (match-string 3 rest))))
-       (liece-insert-info (liece-pick-buffer chnl)
-                           (format (_ "Inviting user %s\n") nick))
-       (liece-insert-info liece-300-buffer
-                           (format (_ "Inviting user %s to channel %s\n")
-                                   nick chnl)))))
-
-(defun liece-handle-346-message (prefix rest)
-  "RPL_INVITELIST \"<channel> <inviteid>\"."
-  (when (string-match "[^ ]* \\([^ ]*\\) \\([^ ]*\\)" rest)
-    (let* ((regexp (match-string 2 rest))
-          (chnl (liece-channel-virtual (match-string 1 rest))))
-      (liece-increment-long-reply-count)
-      (liece-check-long-reply-count)
-      (or (> liece-polling 0)
-         (liece-channel-add-invite regexp chnl)))))
-
-(defun liece-handle-347-message (prefix rest)
-  "RPL_ENDOFINVITELIST \"<channel> :End of Channel Invite List\"."
-  (when (string-match "[^ ]* \\([^ ]*\\)" rest)
-    (let* ((chnl (liece-channel-virtual (match-string 1 rest)))
-          (invites (liece-channel-get-invites chnl)))
-      (liece-reset-long-reply-count)
-      (liece-insert-info liece-300-buffer
-                         (concat "Following users are invited to " chnl
-                                 ": \n"))
-      (dolist (invite invites)
-       (liece-insert-info liece-300-buffer
-                           (concat "\t" invite "\n"))))))
-
-(defun liece-handle-348-message (prefix rest)
-  "RPL_EXCEPTLIST \"<channel> <exceptid>\"."
-  (when (string-match "[^ ]* \\([^ ]*\\) \\([^ ]*\\)" rest)
-    (let* ((regexp (match-string 2 rest))
-          (chnl (liece-channel-virtual (match-string 1 rest))))
-      (liece-increment-long-reply-count)
-      (liece-check-long-reply-count)
-      (or (> liece-polling 0)
-         (liece-channel-add-exception regexp chnl)))))
-  
-(defun liece-handle-349-message (prefix rest)
-  "RPL_ENDOFEXCEPTLIST \"<channel> :End of Channel Exception List\"."
-  (when (string-match "[^ ]* \\([^ ]*\\)" rest)
-    (let* ((chnl (liece-channel-virtual (match-string 1 rest)))
-          (exceptions (liece-channel-get-exceptions chnl)))
-      (liece-reset-long-reply-count)
-      (liece-insert-info liece-300-buffer
-                         (concat "Following users are welcome to " chnl
-                                 ": \n"))
-      (dolist (exception exceptions)
-       (liece-insert-info liece-300-buffer
-                           (concat "\t" exception "\n"))))))
-
-(defun liece-handle-351-message (prefix rest)
-  "RPL_VERSION \"<version>.<debuglevel> <server> :<comments>\"."
-  (if (string-match "[^ ]+ \\([^ ]+\\) :*\\([^ ]+\\)[ :]*\\(.*\\)" rest)
-      (liece-insert-info
-       liece-300-buffer
-       (format (_ "Machine %s is running IRC version %s (%s)\n")
-              (match-string 2 rest) ; machine
-              (match-string 1 rest) ; version
-              (match-string 3 rest) ; comments
-              ))))
-
-(defun liece-handle-352-message (prefix rest)
-  "RPL_WHOREPLY        \"<channel> <user> <host> <server> <nickname> <H|G>[*][@|+] :<hopcount> <real name>\"."
-  (if (string-match "\\([^ ]*\\) \\([^ ]+\\) \\([^ ]+\\) \\([^ ]+\\) \\([^ ]+\\) \\([^ ]+\\) :[0-9]* ?\\(.*\\)" rest)
-      (let ((chnl (liece-channel-virtual (match-string 1 rest)))
-           (user (match-string 2 rest)) (host (match-string 3 rest))
-           (nick (match-string 5 rest)) (oper (match-string 6 rest))
-           (name (match-string 7 rest)))
-       (liece-increment-long-reply-count)
-       (liece-check-long-reply-count)
-       (liece-nick-set-user-at-host nick (concat user "@" host))
-       (liece-insert-info liece-300-buffer
-                           (format "%3s %10s %9s %-29s %s\n"
-                                   oper (if (memq (aref chnl 0) '(?* ?0))
-                                            "Private" chnl)
-                                   nick
-                                   (concat "(" user "@"
-                                           (liece-clean-hostname host)
-                                           ")")
-                                   name)))))
-
-(defvar liece-353-names nil)
-
-(defmacro liece-353-scan-channels (chnl)
-  `(or (string-assoc-ignore-case ,chnl liece-channel-alist)
-       (push (list ,chnl) liece-channel-alist)))
-
-(defun liece-handle-353-message (prefix rest)
-  "RPL_NAMREPLY        \"<channel> :[[@|+]<nick> [[@|+]<nick> [...]]]\"."
-  (when (string-match "[^ =*@]?[=*@] \\([^ ]*\\) :\\(.*\\)" rest)
-    (let ((chnl (liece-channel-virtual (match-string 1 rest)))
-         (users (delete "" (split-string (match-string 2 rest)))))
-      (liece-increment-long-reply-count)
-      (liece-check-long-reply-count)
-      (or (> liece-polling 0)
-         (setq liece-353-names
-               (append (nreverse users) liece-353-names )))
-      (liece-353-scan-channels chnl))))
-
-(defun liece-handle-361-message (prefix rest)
-  "RPL_KILLDONE."
-  (if (string-match "[^ ]+ \\([^ ]+\\) +:\\(.*\\)" rest)
-      (let ((who (match-string 1 rest))
-           (message (match-string 2 rest)))
-       (liece-insert-info liece-300-buffer
-                           (format (_ "You just killed %s. %s\n")
-                                   who message)))))
-
-(defstruct liece-364-link from to hop info)
-(defvar liece-364-links nil)
-
-(defun liece-handle-364-message (prefix rest)
-  "RPL_LINKS \"<mask> <server> :<hopcount> <server info>\"."
-  (if (string-match
-       "[^ ]+ \\([^ ]+\\) +\\([^ ]*\\) +:\\(\\(.*\\) +\\(.*\\)\\)" rest)
-      (let ((from (match-string 1 rest)) (to (match-string 2 rest))
-           (hop (string-to-int (match-string 4 rest)))
-           (info (match-string 5 rest)) link)
-       (liece-increment-long-reply-count)
-       (liece-check-long-reply-count)
-       (setq rest (match-string 3 rest)
-             link (make-liece-364-link
-                   :from from :to to :hop hop :info info))
-       (push link liece-364-links))))
-
-(defun liece-handle-365-message (prefix rest)
-  "RPL_ENDOFLINKS \"<mask> :End of /LINKS list\"."
-  (liece-reset-long-reply-count)
-  (dolist (link liece-364-links)
-    (liece-insert-info liece-300-buffer
-                       (concat (liece-364-link-from link)
-                               " --"
-                               (number-to-string (liece-364-link-hop link))
-                               "-- "
-                               (liece-364-link-to link) "\n")))
-  (setq liece-364-links nil))
-
-(defun liece-handle-366-message (prefix rest)
-  "RPL_ENDOFNAME \"<channel> :End of /NAMES list\"."
-  (when (string-match "[^ ]* \\([^ ]*\\)" rest)
-    (let ((level (- liece-polling 1))
-         (users (length liece-353-names))
-         (names (mapconcat #'identity liece-353-names " "))
-         (chnl (liece-channel-virtual (match-string 1 rest))))
-      (liece-reset-long-reply-count)
-      (setq liece-polling (max 0 level))
-      (liece-insert-info (append (liece-pick-buffer chnl)
-                                 liece-300-buffer)
-                         (format "%-10s%6d user%s: %s\n"
-                                 (if (memq chnl '(?* ?0))
-                                     "Private"
-                                   chnl)
-                                 users (if (= users 1) "" "s") names))
-      (and liece-353-names
-          (liece-channel-member chnl liece-current-channels)
-          (liece-nick-update chnl liece-353-names))
-      (setq liece-353-names nil))))
-
-(defun liece-handle-367-message (prefix rest)
-  "RPL_BANLIST \"<channel> <banid>\"."
-  (when (string-match "[^ ]* \\([^ ]*\\) \\([^ ]*\\)" rest)
-    (let* ((regexp (match-string 2 rest))
-          (chnl (liece-channel-virtual (match-string 1 rest))))
-      (liece-increment-long-reply-count)
-      (liece-check-long-reply-count)
-      (or (> liece-polling 0)
-         (liece-channel-add-ban regexp chnl)))))
-
-(defun liece-handle-368-message (prefix rest)
-  "RPL_ENDOFBANLIST \"<channel> :End of channel ban list\"."
-  (when (string-match "[^ ]* \\([^ ]*\\)" rest)
-    (let* ((chnl (liece-channel-virtual (match-string 1 rest)))
-          (bans (liece-channel-get-bans chnl)))
-      (liece-reset-long-reply-count)
-      (liece-insert-info liece-300-buffer
-                         (concat "Following users are banned on " chnl
-                                 ": \n"))
-      (dolist (ban bans)
-       (liece-insert-info liece-300-buffer
-                           (concat "\t" ban "\n"))))))
-
-(defun liece-handle-369-message (prefix rest)
-  "RPL_ENDOFWHOWAS \"<nickname> :End of WHOWAS\"."
-  (setq liece-recursing-whowas nil))
-
-(defun liece-handle-371-message (prefix rest)
-  "RPL_INFO \":<string>\"."
-  (if (string-match "^\\([^ ]+\\) +:?\\(.*\\)" rest)
-      (liece-insert-info liece-300-buffer
-                         (concat (match-string 2 rest) "\n"))))
-
-(defun liece-handle-372-message (prefix rest)
-  "RPL_MOTD \":- <text>\"."
-  (if (string-match "^\\([^ ]+\\) +:?\\(.*\\)" rest)
-      (liece-insert-info liece-300-buffer
-                         (concat (match-string 2 rest) "\n"))))
-
-(defun liece-handle-381-message (prefix rest)
-  "RPL_YOUREOPER \":You are now an IRC operator\"."
-  (if (string-match "^\\([^ ]+\\) +:\\(.*\\)" rest)
-      (liece-insert-info liece-300-buffer
-                         (format "You are now an IRC operator (%s)\n"
-                                 (match-string 2 rest)))))
-
-(defun liece-handle-382-message (prefix rest)
-  "RPL_REHASHING \"<config file> :Rehashing\"."
-  (if (string-match "^\\([^ ]+\\) +:\\(.*\\)" rest)
-      (liece-insert-info liece-300-buffer
-                         (concat (match-string 2 rest) " "
-                                 (match-string 1 rest) "\n"))))
-
-(defun liece-handle-391-message (prefix rest)
-  "RPL_TIME \"<server> :<string showing server's local time>\"."
-  (if (string-match "^\\([^ ]+\\) +\\(.*\\)" rest)
-      (liece-insert-info liece-300-buffer
-                         (format (_ "Server time is %s\n")
-                                 (match-string 2 rest)))))
-
-\f
-;;; @ register message handlers
-;;;
-
-(eval-when-compile (require 'liece-handler))
-
-(liece-handler-define-backend "300")
-
-(defmacro liece-register-300-handler (num)
-  `(progn
-     (liece-handler-define-function
-      ,(number-to-string num) '(prefix rest "300")
-      ',(intern (format "liece-handle-%03d-message" num)))
-     (defvar ,(intern (format "liece-%03d-hook" num)) nil)
-     (defvar ,(intern (format "liece-after-%03d-hook" num)) nil)))
-
-(liece-register-300-handler 301)
-(liece-register-300-handler 302)
-(liece-register-300-handler 303)
-(liece-register-300-handler 305)
-(liece-register-300-handler 306)
-
-(liece-register-300-handler 311)
-(liece-register-300-handler 312)
-(liece-register-300-handler 313)
-(liece-register-300-handler 314)
-(liece-register-300-handler 315)
-(liece-register-300-handler 316)
-(liece-register-300-handler 317)
-(liece-register-300-handler 318)
-(liece-register-300-handler 319)
-
-(liece-register-300-handler 321)
-(liece-register-300-handler 322)
-(liece-register-300-handler 323)
-(liece-register-300-handler 324)
-
-(liece-register-300-handler 331)
-(liece-register-300-handler 332)
-(liece-register-300-handler 333)
-
-(liece-register-300-handler 341)
-(liece-register-300-handler 348)
-(liece-register-300-handler 349)
-
-(liece-register-300-handler 351)
-(liece-register-300-handler 352)
-(liece-register-300-handler 353)
-
-(liece-register-300-handler 361)
-(liece-register-300-handler 364)
-(liece-register-300-handler 365)
-(liece-register-300-handler 366)
-(liece-register-300-handler 367)
-(liece-register-300-handler 368)
-(liece-register-300-handler 369)
-
-(liece-register-300-handler 371)
-(liece-register-300-handler 372)
-
-(liece-register-300-handler 381)
-(liece-register-300-handler 382)
-
-(liece-register-300-handler 391)
-
-(provide 'liece-300)
-
-;;; liece-300.el ends here
diff --git a/lisp/liece-400.el b/lisp/liece-400.el
deleted file mode 100644 (file)
index b56e3de..0000000
+++ /dev/null
@@ -1,177 +0,0 @@
-;;; liece-400.el --- Handler routines for 400 numeric reply.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1998-11-25
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile
-  (require 'liece-inlines)
-  (require 'liece-intl)
-  (require 'liece-misc))
-
-(defun* liece-handle-400-messages (number prefix rest)
-  "400 replies -- ERRORS"
-  (or (string-match "[^ ]* \\([^ ]*\\) *\\([^ ]*\\) *:\\(.*\\)" rest)
-      (return-from liece-handle-400-messages))
-  (let ((target1 (match-string 1 rest)) (target2 (match-string 2 rest))
-       (msg (match-string 3 rest)))
-    (setq target1 (liece-channel-virtual target1)
-         target2 (liece-channel-virtual target2))
-    (cond ((string= target1 "")
-          (liece-insert-error liece-400-buffer
-                               (concat msg "\n")))
-         ((string= target2 "")
-          (liece-insert-error liece-400-buffer
-                               (concat msg " (" target1 ")\n")))
-         (t
-          (liece-insert-error liece-400-buffer
-                               (format"%s %s (%s)\n" target1 msg target2))))))
-
-(defun liece-handle-401-message (prefix rest)
-  "ERR_NOSUCHNICK \"<nickname> :No such nick/channel\"."
-  (if (string-match "[^ ]+ \\([^ ]+\\)" rest)
-      (let ((name (match-string 1 rest)))
-       (liece-nick-change name nil)
-       (liece-send "WHOWAS %s" name))))
-
-(defun liece-handle-406-message (prefix rest)
-  "ERR_WASNOSUCHNICK \"<nickname> :There was no such nickname\"."
-  (if (string-match "[^ ]+ \\([^ ]+\\)" rest)
-      (let ((nick (match-string 1 rest)))
-       (liece-nick-change nick nil)
-       (liece-message (_ "No such user %s") nick))))
-
-(defun liece-handle-412-message (prefix rest)
-  "ERR_NOTEXTTOSEND \":No text to send\"."
-  (liece-message (_ "No text to send")))
-
-(defun liece-iterate-nick (nick)
-  (let* ((fmt (format "%s_" nick))
-        (new (substring fmt 0 (min 9 (length fmt)))))
-    (if (string= nick new)
-       (liece-iterate-nick (format "_%s" nick))
-      new)))
-
-(defun liece-handle-432-message (prefix rest)
-  "ERR_ERRONEUSNICKNAME        \"<nickname> :Erroneous nickname\"."
-  (let ((nick (cond ((string-match "^[^ ]+ +\\([^ ]+\\)" rest)
-                    (match-string 1 rest))
-                   ((string-match "^ *\\([^ ]+\\)" rest)
-                    (match-string 1 rest)))))
-    (with-current-buffer liece-command-buffer
-      (if (eq liece-nick-accepted 'ok)
-         (setq liece-real-nickname liece-nickname-last))
-      (liece-message
-       (_ "Erroneous nickname %s.  Choose a new one with %s.")
-       nick (substitute-command-keys "\\[liece-command-nickname]"))
-      (liece-beep))))
-
-(defun liece-handle-433-message (prefix rest)
-  "ERR_NICKNAMEINUSE \"<nickname> :Nickname is already in use\"."
-  (let ((nick (cond ((string-match "^[^ ]+ +\\([^ ]+\\)" rest)
-                    (match-string 1 rest))
-                   ((string-match "^ *\\([^ ]+\\)" rest)
-                    (match-string 1 rest)))))
-    (cond
-     ((and (not (eq liece-nick-accepted 'ok))
-          liece-auto-iterate-nick)
-      (liece-send "NICK %s" (liece-iterate-nick nick))
-      (setq liece-nick-accepted 'sent))
-     (t
-      (if (eq liece-nick-accepted 'ok)
-         (setq liece-real-nickname liece-nickname-last))
-      (with-current-buffer liece-command-buffer
-       (liece-message
-        (_ "Nickname %s already in use.  Choose a new one with %s.")
-        nick (substitute-command-keys "\\[liece-command-nickname]"))
-       (liece-beep))))))
-
-(defun liece-handle-442-message (prefix rest)
-  "ERR_NOTONCHANNEL \"<channel> :You're not on that channel\"."
-  (if (string-match "[^ ]+ \\([^ ]+\\) +:\\(.*\\)" rest)
-      (let* ((chnl (liece-channel-virtual (match-string 1 rest)))
-            (rest (match-string 2 rest)))
-       (if (liece-channel-member chnl liece-current-channels)
-           (liece-channel-part chnl)
-         (liece-message (_ "You're not on channel %s") chnl)))))
-
-(defun liece-handle-443-message (prefix rest)
-  "ERR_USERONCHANNEL \"<channel> <nickname> :is already on channel\"."
-  (if (string-match "[^ ]+ \\([^ ]+\\) \\([^ ]+\\)" rest)
-      (let ((chnl (match-string 1 rest))
-           (rest (match-string 2 rest)))
-       (when (prog1 (liece-channel-p chnl)
-               (setq chnl (liece-channel-virtual chnl)))
-         (or (liece-channel-member chnl liece-current-channels)
-             (liece-channel-join chnl)))
-       (liece-message (_ "You're already on channel %s") chnl))))
-
-(defun liece-handle-464-message (prefix rest)
-  "ERR_PASSWDMISMATCH \":Password incorrect\"."
-  (liece-message
-   (_ "Password incorrect from %s. Try again with password.") prefix)
-  (setq liece-reconnect-with-password t))
-
-(defun liece-handle-482-message (prefix rest)
-  "ERR_CHANOPRIVSNEEDED        \"<channel> :You're not channel operator\"."
-  (liece-message (_ "You are not a channel operator")))
-
-\f
-;;; @ register message handlers
-;;;
-
-(eval-when-compile (require 'liece-handler))
-
-(liece-handler-define-backend "400")
-
-(defmacro liece-register-400-handler (num)
-  `(progn
-     (liece-handler-define-function
-      ,(number-to-string num) '(prefix require "400")
-      ',(intern (format "liece-handle-%03d-message" num)))
-     (defvar ,(intern (format "liece-%03d-hook" num)) nil)
-     (defvar ,(intern (format "liece-after-%03d-hook" num)) nil)))
-
-(liece-register-400-handler 401)
-(liece-register-400-handler 406)
-
-(liece-register-400-handler 412)
-
-(liece-register-400-handler 432)
-(liece-register-400-handler 433)
-
-(liece-register-400-handler 442)
-(liece-register-400-handler 443)
-
-(liece-register-400-handler 464)
-
-(liece-register-400-handler 482)
-
-(provide 'liece-400)
-
-;;; liece-400.el ends here
diff --git a/lisp/liece-500.el b/lisp/liece-500.el
deleted file mode 100644 (file)
index 23e4c20..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-;;; liece-500.el --- Handler routines for 500 numeric reply.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1998-11-25
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile
-  (require 'liece-inlines)
-  (require 'liece-intl)
-  (require 'liece-misc))
-
-(defun* liece-handle-500-messages (number prefix rest)
-  (or (string-match "[^ ]* \\([^ :]*\\) *\\([^ :]*\\) *:\\(.*\\)" rest)
-      (return-from liece-handle-500-messages))
-  (let ((target1 (match-string 1 rest)) (target2 (match-string 2 rest))
-       (msg (match-string 3 rest)))
-    (cond ((string-equal target1 "")
-          (liece-insert-error liece-500-buffer (concat msg "\n")))
-         ((string-equal target2 "")
-          (liece-insert-error liece-500-buffer
-                               (concat msg " (" target1 ")\n")))
-         (t
-          (liece-insert-error liece-500-buffer
-                               (format "%s %s (%s)\n"
-                                       target1 msg target2))))))
-
-(provide 'liece-500)
-
-;;; liece-500.el ends here
diff --git a/lisp/liece-channel.el b/lisp/liece-channel.el
deleted file mode 100644 (file)
index aecc8ec..0000000
+++ /dev/null
@@ -1,542 +0,0 @@
-;;; liece-channel.el --- Various facility for channel operation.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1999-05-05
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile (require 'liece-inlines))
-
-(eval-when-compile (require 'liece-clfns))
-
-(defconst liece-channel-regexp "[+&#!]")
-(defconst liece-channel-modeless-regexp "[+!]")
-
-(defvar liece-default-channel-representation-format "%s+%s")
-
-(defconst liece-dcc-channel-representation-format "=%s")
-
-(define-widget 'liece-channel-push-button 'push-button
-  "A channel button."
-  :action 'liece-channel-push-button-action)
-
-(defun liece-channel-push-button-action (widget &optional event)
-  (let ((chnl (liece-channel-virtual (widget-value widget))))
-    (if (or (liece-channel-member chnl liece-current-channels)
-           (y-or-n-p (format "Do you really join %s? " chnl)))
-       (liece-command-join chnl))))
-
-;;; Reader conventions
-(defun liece-channel-p (chnl)
-  (string-match
-   (eval-when-compile
-     (concat "^" liece-channel-regexp))
-   chnl))
-
-(defun liece-channel-modeless-p (chnl)
-  (string-match
-   (eval-when-compile
-     (concat "^" liece-channel-modeless-regexp))
-   chnl))
-
-(defalias 'liece-channel-equal 'string-equal-ignore-case)
-
-(defun liece-channel-member (chnl chnls)
-  "Return non-nil if CHNL is member of CHNLS."
-  (member-if
-   (lambda (item)
-     (and (stringp item) (liece-channel-equal chnl item)))
-   chnls))
-
-(defun liece-channel-unread-p (chnl)
-  "Return non-nil if CHNL is unread channel."
-  (member-if
-   (lambda (item)
-     (and (stringp item) (liece-channel-equal chnl item)))
-   liece-channel-unread-list))
-
-(defun liece-channel-get-nicks (&optional chnl)
-  "Return CHNL or current channels's members as list."
-  (get (intern (or chnl liece-current-channel) liece-obarray) 'nick))
-
-(defun liece-channel-get-operators (&optional chnl)
-  "Return CHNL or current channels's operators as list."
-  (get (intern (or chnl liece-current-channel) liece-obarray) 'oper))
-
-(defun liece-channel-get-voices (&optional chnl)
-  "Return CHNL or current channels's voices as list."
-  (get (intern (or chnl liece-current-channel) liece-obarray) 'voice))
-
-(defun liece-channel-get-topic (&optional chnl)
-  "Return CHNL or current channels's topic."
-  (get (intern (or chnl liece-current-channel) liece-obarray) 'topic))
-
-(defun liece-channel-get-modes (&optional chnl)
-  "Return CHNL or current channels's mode."
-  (get (intern (or chnl liece-current-channel) liece-obarray)
-       'mode))
-
-(defun liece-channel-get-bans (&optional chnl)
-  "Return CHNL or current channels's ban list."
-  (get (intern (or chnl liece-current-channel) liece-obarray)
-       'ban))
-
-(defun liece-channel-get-invites (&optional chnl)
-  "Return CHNL or current channels's invite list."
-  (get (intern (or chnl liece-current-channel) liece-obarray)
-       'invite))
-
-(defun liece-channel-get-exceptions (&optional chnl)
-  "Return CHNL or current channels's exception list."
-  (get (intern (or chnl liece-current-channel) liece-obarray)
-       'exception))
-
-;;; Internal functions
-(defun liece-channel-remove (chnl chnls)
-  "Remove CHNL from CHNLS."
-  (remove-if
-   (lambda (item)
-     (and (stringp item) (liece-channel-equal chnl item)))
-   chnls))
-
-(defun liece-channel-delete (chnl chnls)
-  "Delete CHNL from CHNLS."
-  (delete-if
-   (lambda (item)
-     (and (stringp item) (liece-channel-equal chnl item)))
-   chnls))
-
-(defmacro liece-channel-set-topic (topic &optional chnl)
-  "Set CHNL or current channels's topic."
-  `(put (intern (or ,chnl liece-current-channel) liece-obarray)
-       'topic ,topic))
-
-(defmacro liece-channel-add-mode (mode &optional chnl)
-  "Add MODE as char to CHNL."
-  `(let ((modes (string-to-char-list (or (liece-channel-get-modes ,chnl)
-                                        ""))))
-     (or (memq ,mode modes)
-        (push ,mode modes))
-     (put (intern (or ,chnl liece-current-channel) liece-obarray)
-         'mode (mapconcat #'char-to-string modes ""))))
-
-(defmacro liece-channel-remove-mode (mode &optional chnl)
-  "Remove MODE as char to CHNL."
-  `(let ((modes (string-to-char-list (or (liece-channel-get-modes ,chnl)
-                                        ""))))
-     (delq ,mode modes)
-     (put (intern (or ,chnl liece-current-channel) liece-obarray)
-         'mode (mapconcat #'char-to-string modes ""))))
-
-(defmacro liece-channel-set-mode (val mode &optional chnl)
-  "Set character VAL as channel MODE into the CHNL."
-  `(if val
-       (liece-channel-add-mode ,mode ,chnl)
-     (liece-channel-remove-mode ,mode ,chnl)))
-
-(defmacro liece-channel-add-ban (pattern &optional chnl)
-  "Add ban PATTERN as char to CHNL."
-  `(let ((patterns (liece-channel-get-bans ,chnl)))
-     (or (string-list-member-ignore-case ,pattern patterns)
-        (push ,pattern patterns))
-     (put (intern (or ,chnl liece-current-channel) liece-obarray)
-         'ban patterns)))
-
-(defmacro liece-channel-remove-ban (pattern &optional chnl)
-  "Remove ban PATTERN as char to CHNL."
-  `(let ((patterns (remove-if (lambda (elm) (string-equal ,pattern elm))
-                             (liece-channel-get-bans ,chnl))))
-     (put (intern (or ,chnl liece-current-channel) liece-obarray)
-         'ban patterns)))
-
-(defmacro liece-channel-set-ban (chnl pattern val)
-  "Set ban PATTERN as char to CHNL."
-  `(if val
-       (liece-channel-add-ban ,pattern ,chnl)
-     (liece-channel-remove-ban ,pattern ,chnl)))
-
-(defmacro liece-channel-add-exception (pattern &optional chnl)
-  "Add exception PATTERN as char to CHNL."
-  `(let ((patterns (liece-channel-get-exceptions ,chnl)))
-     (or (string-list-member-ignore-case ,pattern patterns)
-        (push ,pattern patterns))
-     (put (intern (or ,chnl liece-current-channel) liece-obarray)
-         'exception patterns)))
-
-(defmacro liece-channel-remove-exception (pattern &optional chnl)
-  "Remove exception PATTERN as char to CHNL."
-  `(let ((patterns (remove-if (lambda (elm) (string-equal ,pattern elm))
-                             (liece-channel-get-exceptions ,chnl))))
-     (put (intern (or ,chnl liece-current-channel) liece-obarray)
-         'exception patterns)))
-
-(defmacro liece-channel-set-exception (chnl pattern val)
-  "Set exception PATTERN as char to CHNL."
-  `(if val
-       (liece-channel-add-exception ,pattern ,chnl)
-     (liece-channel-remove-exception ,pattern ,chnl)))
-
-(defmacro liece-channel-add-invite (pattern &optional chnl)
-  "Add invite PATTERN as char to CHNL."
-  `(let ((patterns (liece-channel-get-invites ,chnl)))
-     (or (string-list-member-ignore-case ,pattern patterns)
-        (push ,pattern patterns))
-     (put (intern (or ,chnl liece-current-channel) liece-obarray)
-         'invite patterns)))
-
-(defmacro liece-channel-remove-invite (pattern &optional chnl)
-  "Remove invite PATTERN as char to CHNL."
-  `(let ((patterns (remove-if (lambda (elm) (string-equal ,pattern elm))
-                             (liece-channel-get-invites ,chnl))))
-     (put (intern (or ,chnl liece-current-channel) liece-obarray)
-         'invite patterns)))
-
-(defmacro liece-channel-set-invite (chnl pattern val)
-  "Set invite PATTERN as char to CHNL."
-  `(if val
-       (liece-channel-add-invite ,pattern ,chnl)
-     (liece-channel-remove-invite ,pattern ,chnl)))
-  
-(defun liece-channel-virtual (chnl)
-  "Convert channel name into internal representation.
-\(For example if CHNL is a string \"#...:*\", it will be converted into
-\"%...\"\)"
-  (let ((mapping liece-channel-conversion-map) match)
-    (while mapping
-      (if (string-equal-ignore-case (caar mapping) chnl)
-         (setq match (cdar mapping)))
-      (pop mapping))
-    (if match
-       match
-      (save-match-data
-       (cond
-        ((and (string-match "^[#+]\\(.*\\):\\(.*\\)$" chnl)
-              (string= (match-string 2 chnl)
-                       liece-channel-conversion-default-mask))
-         (if (eq ?+ (aref chnl 0))
-             (concat "-" (match-string 1 chnl))
-           (concat "%" (match-string 1 chnl))))
-        ((string= "" chnl) chnl)
-;       ((eq ?! (aref chnl 0))
-;        (concat "!" (substring chnl (1+ liece-channel-id-length))))
-        (t chnl))))))
-
-(defun liece-channel-real (chnl)
-  "Convert channel name into external representation.
-\(For example if CHNL is a string \"%...\", it will be converted into
-\"#...:*\"\)"
-  (let ((mapping liece-channel-conversion-map) match)
-    (while mapping
-      (if (string-equal-ignore-case (cdar mapping) chnl)
-         (setq match (caar mapping)))
-      (pop mapping))
-    (cond
-     (match match)
-     ((eq ?% (aref chnl 0))
-      (concat "#" (substring chnl 1) ":"
-             liece-channel-conversion-default-mask))
-     ((eq ?- (aref chnl 0))
-      (concat "+" (substring chnl 1) ":"
-             liece-channel-conversion-default-mask))
-     (t chnl))))
-
-;;;###liece-autoload
-(defun liece-command-toggle-channel-buffer-mode ()
-  "Toggle visibility of channel buffer."
-  (interactive)
-  (if (get-buffer liece-channel-buffer)
-      (setq liece-channel-buffer-mode (not liece-channel-buffer-mode)))
-  (liece-configure-windows))
-
-(defmacro liece-channel-buffer-create (chnl)
-  "Create channel buffer of CHNL."
-  `(with-current-buffer
-       (liece-get-buffer-create (format liece-channel-buffer-format ,chnl))
-     (let (buffer-read-only)
-       (liece-insert-info (current-buffer)
-                          (concat (funcall liece-format-time-function
-                                           (current-time))
-                                  " Created.\n")))
-     (unless (eq major-mode 'liece-channel-mode)
-       (liece-channel-mode))
-     (set-alist 'liece-channel-buffer-alist ,chnl (current-buffer))
-     (current-buffer)))
-
-(defun liece-channel-join-internal (item chnls &optional hints)
-  (let (binding inserted)
-    (if (liece-channel-member item hints)
-       (do ((hint hints (cdr hint)) (chnl chnls (cdr chnl)))
-           ((not (or hint chnl)))
-         (if (and (car hint) (liece-channel-equal (car hint) item))
-             (push item binding)
-           (push (car chnl) binding)))
-      (do ((hint hints (cdr hint)) (chnl chnls (cdr chnl)))
-         ((not (or hint chnl)))
-       (if (and (not inserted)
-                (not (or (car hint) (car chnl))))
-           (progn
-             (push item binding)
-             (setq inserted t))
-         (push (car chnl) binding))))
-    (or (liece-channel-member item binding)
-       (push item binding))
-    (nreverse binding)))
-
-(defun liece-channel-join (chnl &optional nosw)
-  "Initialize channel variables of CHNL.
-If NOSW is non-nil do not switch to newly created channel."
-  (let ((cbuf (cdr (string-assoc-ignore-case chnl liece-channel-buffer-alist)))
-       (nbuf (cdr (string-assoc-ignore-case chnl liece-nick-buffer-alist))))
-    (or cbuf
-       (setq cbuf (liece-channel-buffer-create chnl)))
-    (or nbuf
-       (setq nbuf (liece-nick-buffer-create chnl)))
-    (if (liece-channel-p (liece-channel-real chnl))
-       (setq liece-current-channels
-             (liece-channel-join-internal
-              chnl liece-current-channels liece-default-channel-binding))
-      (setq liece-current-chat-partners
-           (liece-channel-join-internal chnl liece-current-chat-partners
-                                         liece-default-partner-binding)))
-    (unless nosw
-      (liece-switch-to-channel chnl)
-      (setq liece-channel-buffer cbuf
-           liece-nick-buffer nbuf))
-    (liece-channel-change)))
-
-(defun liece-channel-part-internal (item chnls &optional hints)
-  (if hints
-      (mapcar
-       (lambda (chnl)
-        (if (and chnl (liece-channel-equal item chnl)) nil chnl))
-       chnls)
-    (liece-channel-remove item chnls)))
-
-(defun liece-channel-part (chnl &optional nosw)
-  "Finalize channel variables of CHNL.
-If NOSW is non-nil do not switch to newly created channel."
-  (cond
-   ((eq liece-command-buffer-mode 'chat)
-    (setq liece-current-chat-partners
-         (liece-channel-part-internal chnl liece-current-chat-partners
-                                       liece-default-partner-binding))
-    (unless nosw
-      (liece-channel-switch-to-last liece-current-chat-partners)))
-   (t
-    (setq liece-current-channels
-         (liece-channel-part-internal chnl liece-current-channels
-                                      liece-default-channel-binding))
-    (unless nosw
-      (liece-channel-switch-to-last liece-current-channels)))))
-
-(defun liece-channel-last (chnls)
-  (car (last (delq nil (copy-sequence chnls)))))
-
-(defmacro liece-channel-switch-to-last (chnls)
-  `(let ((chnl (liece-channel-last ,chnls)))
-     (if chnl
-        (liece-switch-to-channel chnl))
-     (liece-channel-change)))
-
-(defun liece-channel-change ()
-  (let ((chnls (if (eq liece-command-buffer-mode 'chat)
-                  liece-current-chat-partners
-                liece-current-channels))
-       (string "")
-       chnl)
-    (with-current-buffer liece-channel-list-buffer
-      (let ((n 1) buffer-read-only)
-       (erase-buffer)
-       (dolist (chnl chnls)
-         (when chnl
-           (setq chnl (liece-channel-virtual chnl)
-                 string (format "%s,%d:%s" string n chnl))
-           (liece-channel-list-add-button n chnl))
-         (incf n))))
-    (if (string-equal string "")
-       (if (eq liece-command-buffer-mode 'chat)
-           (setq liece-channels-indicator "No partner")
-         (setq liece-channels-indicator "No channel"))
-      (setq liece-channels-indicator (substring string 1)))
-    (liece-set-channel-indicator)
-    (setq chnl (if (eq liece-command-buffer-mode 'chat)
-                  liece-current-chat-partner
-                liece-current-channel))
-    (when chnl
-      (save-excursion
-       (run-hook-with-args 'liece-redisplay-buffer-functions chnl)))
-    (liece-redisplay-unread-mark)
-    (liece-configure-windows)))
-
-(defsubst liece-channel-set-operator-1 (chnl user val)
-  (let* ((chnl (intern chnl liece-obarray)) (opers (get chnl 'oper)))
-    (if val
-       (or (string-list-member-ignore-case user opers)
-           (put chnl 'oper (cons user opers)))
-      (if (string-list-member-ignore-case user opers)
-         (put chnl 'oper (string-list-remove-ignore-case user opers))))))
-
-(defsubst liece-channel-set-voice-1 (chnl user val)
-  (let* ((chnl (intern chnl liece-obarray)) (voices (get chnl 'voice)))
-    (if val
-       (or (string-list-member-ignore-case user voices)
-           (put chnl 'voice (cons user voices)))
-      (if (string-list-member-ignore-case user voices)
-         (put chnl 'voice (string-list-remove-ignore-case user voices))))))
-
-(defun liece-channel-set-operator (chnl user val)
-  (let ((nbuf (cdr (string-assoc-ignore-case chnl liece-nick-buffer-alist)))
-       (xuser user))
-    (liece-channel-set-operator-1 chnl user val)
-    (liece-channel-set-voice-1 chnl user val)
-    (setq user (concat (if val "@" " ") user)
-         xuser (concat (if val "[ +]" "@") (regexp-quote xuser)))
-    (with-current-buffer nbuf
-      (let (buffer-read-only)
-       (goto-char (point-min))
-       (liece-nick-replace xuser user nil t)))))
-
-(defun liece-channel-set-voice (chnl user val)
-  (let ((nbuf (cdr (string-assoc-ignore-case chnl liece-nick-buffer-alist)))
-       (xuser user))
-    (liece-channel-set-voice-1 chnl user val)
-    (setq user (concat (if val "+" " ") user)
-         xuser (concat (if val " " "\\+") (regexp-quote xuser)))
-    (with-current-buffer nbuf
-      (let (buffer-read-only)
-       (goto-char (point-min))
-       (liece-nick-replace xuser user nil t)))))
-
-(defun liece-channel-prepare-partner (join-channel-var)
-  (setq liece-current-chat-partner
-       (or liece-current-chat-partner join-channel-var))
-  (let ((liece-command-buffer-mode 'chat))
-    (liece-channel-join join-channel-var t))
-  (liece-channel-change))
-
-(defun liece-channel-buffer-invisible-p (chnl mode)
-  (let ((cbuf (liece-pick-buffer chnl)))
-    (or (liece-frozen (car cbuf))
-       (and (eq mode 'chat)
-            (not (and (eq liece-command-buffer-mode 'chat)
-                      liece-current-chat-partner
-                      (string-equal-ignore-case
-                       chnl liece-current-chat-partner))))
-       (not (and (eq liece-command-buffer-mode 'channel)
-                 liece-current-channel
-                 (string-equal-ignore-case
-                  chnl liece-current-channel))))))
-
-(defun liece-channel-prepare-representation (chnl &optional method name)
-  (cond
-   ((eq method 'dcc)
-    (format liece-dcc-channel-representation-format chnl))
-   (name
-    (format liece-default-channel-representation-format name chnl))
-   (t chnl)))
-
-(defun liece-channel-parse-representation (str)
-  (cond
-   ((string-match
-     (format
-      (regexp-quote liece-dcc-channel-representation-format)
-      "\\([^ ]+\\)")
-     str)
-    (vector 'dcc nil (match-string 1 str)))
-   ((string-match
-     (format
-      (regexp-quote liece-default-channel-representation-format)
-      "\\([^ ]+\\)" "\\([^ ]+\\)")
-     str)
-    (vector 'irc (match-string 1 str) (match-string 2 str)))
-   (t (vector 'irc nil str))))
-
-(defun liece-channel-list-add-button (n chnl)
-  (insert (format "%2d: " n))
-  (if liece-highlight-mode
-      (let ((st (point)))
-       (insert chnl)
-       (liece-widget-convert-button
-        'liece-channel-push-button st (point) chnl))
-    (insert chnl))
-  (insert "\n"))
-
-(defun liece-channel-add-buttons (start end)
-  (save-excursion
-    (goto-char start)
-    (while (re-search-forward
-           (eval-when-compile
-             (concat "\\(^\\(" liece-time-prefix-regexp "\\)?"
-                     "[][=<>(-][][=<>(-]?\\|\\s-+[+@]?\\)"
-                     "\\([&#!%][^ :]*\\)"))
-           end t)
-      ;;(re-search-forward "\\s-+\\(\\)\\([-+]\\S-*\\)" end t)
-      (let* ((chnl-start (match-beginning 3))
-            (chnl-end (match-end 3))
-            (chnl (buffer-substring chnl-start chnl-end)))
-       (when liece-highlight-mode
-         (liece-widget-convert-button
-          'liece-channel-push-button chnl-start chnl-end chnl))))))
-
-;;;###liece-autoload
-(defun liece-channel-redisplay-buffer (chnl)
-  (let ((buffer
-        (cdr (string-assoc-ignore-case
-              chnl liece-channel-buffer-alist)))
-       (window (liece-get-buffer-window liece-channel-buffer)))
-    (when (liece-channel-unread-p chnl)
-      (setq liece-channel-unread-list
-           (delete chnl liece-channel-unread-list))
-      (run-hook-with-args 'liece-channel-read-functions chnl))
-    (and buffer window
-        (with-current-buffer buffer
-          (set-window-buffer window buffer)
-          (unless (liece-frozen buffer)
-            (set-window-point window (point-max)))
-          (setq liece-channel-buffer buffer)))))
-
-;;;###liece-autoload
-(defun liece-channel-list-redisplay-buffer (chnl)
-  (let ((window (liece-get-buffer-window liece-channel-list-buffer)))
-    (when window
-      (save-selected-window
-       (select-window window)
-       (goto-char (point-min))
-       (search-forward chnl nil t)
-       (set-window-point window (match-beginning 0))
-       (when liece-highlight-mode
-         (let ((overlay (make-overlay (point)(match-end 0))))
-           (liece-map-overlays
-            (lambda (ovl)
-              (if (overlay-get ovl 'liece-channel)
-                  (delete-overlay ovl))))
-           (overlay-put overlay 'face 'underline)
-           (overlay-put overlay 'liece-channel t)))))))
-
-(provide 'liece-channel)
-
-;;; liece-channel.el ends here
diff --git a/lisp/liece-clfns.el b/lisp/liece-clfns.el
deleted file mode 100644 (file)
index e3771a5..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
-;;; liece-clfns.el --- compiler macros for emulating cl functions
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 2000-03-19
-;; Keywords: cl, compile
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-
-;; This file is borrowed from `gnus-clfns.el' from T-gnus.
-;; Avoid cl runtime functions for FSF Emacsen.
-
-;;; Code:
-
-(defun liece-clfns-subr-fboundp (symbol)
-  "Return t if SYMBOL's function definition is a basic function."
-  (and (fboundp symbol)
-       (or (subrp (symbol-function symbol))
-          (string-equal (symbol-file symbol) "subr"))))
-
-(if (featurep 'xemacs)
-    nil
-  (require 'cl)
-
-  (define-compiler-macro last (&whole form x &optional n)
-    (if (liece-clfns-subr-fboundp 'last)
-       form
-      (if n
-         `(let* ((x ,x) (n ,n) (m 0) (p x))
-            (while (consp p)
-              (incf m)
-              (pop p))
-            (if (<= n 0)
-                p
-              (if (< n m)
-                  (nthcdr (- m n) x)
-                x)))
-       `(let ((x ,x))
-          (while (consp (cdr x))
-            (pop x))
-          x))))
-
-  (define-compiler-macro remq (&whole form elt list)
-    (if (liece-clfns-subr-fboundp 'remq)
-       form
-      `(let ((elt ,elt)
-            (list ,list))
-        (if (memq elt list)
-            (delq elt (copy-sequence list))
-          list))))
-
-  (define-compiler-macro member-if (&whole form pred list)
-    (if (liece-clfns-subr-fboundp 'member-if)
-       form
-      `(let ((fn ,pred)
-            (seq ,list))
-        (while (and seq (not (funcall fn (car seq))))
-          (pop seq))
-        seq)))
-
-  (define-compiler-macro member-if-not (&whole form pred list)
-    (if (liece-clfns-subr-fboundp 'member-if-not)
-       form
-      `(let ((fn ,pred)
-            (seq ,list))
-        (while (and seq (funcall fn (car seq)))
-          (pop seq))
-        seq)))
-  
-  (define-compiler-macro delete-if (&whole form pred list)
-    (if (liece-clfns-subr-fboundp 'delete-if)
-       form
-      `(let* ((fn ,pred) (seq ,list) (p seq))
-        (while (and p (not (funcall fn (car p))))
-          (pop p))
-        (if p (delq (car p) seq)))))
-
-  (define-compiler-macro remove-if (&whole form pred list)
-    (if (liece-clfns-subr-fboundp 'remove-if)
-       form
-      `(let* ((fn ,pred) (seq (copy-sequence ,list)) (p seq))
-        (while (and p (not (funcall fn (car p))))
-          (pop p))
-        (if p (delq (car p) seq) seq))))
-
-  (define-compiler-macro remove-if-not (&whole form pred list)
-    (if (liece-clfns-subr-fboundp 'remove-if-not)
-       form
-      `(let* ((fn ,pred) (seq (copy-sequence ,list)) (p seq))
-        (while (and p (funcall fn (car p)))
-          (pop p))
-        (if p (delq (car p) seq) seq))))
-
-  (define-compiler-macro assoc-if (&whole form pred list)
-    (if (liece-clfns-subr-fboundp 'assoc-if)
-       form
-      `(let ((fn ,pred) (seq ,list))
-        (while (and seq (not (funcall fn (caar seq))))
-          (pop seq))
-        (car seq))))
-
-  (define-compiler-macro rassoc-if (&whole form pred list)
-    (if (liece-clfns-subr-fboundp 'rassoc-if)
-       form
-      `(let ((fn ,pred) (seq ,list))
-        (while (and seq (not (funcall fn (cdar seq))))
-          (pop seq))
-        (car seq)))))
-
-(provide 'liece-clfns)
-
-;;; liece-clfns.el ends here
diff --git a/lisp/liece-coding.el b/lisp/liece-coding.el
deleted file mode 100644 (file)
index deee745..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-;;; liece-coding.el --- Converting string with apropriate coding system.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1999-06-02
-;; Keywords: IRC, liece, coding-system, MULE
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(require 'poem)
-(require 'mcharset)
-
-(eval-when-compile (require 'liece-compat))
-
-(defgroup liece-coding nil
-  "Code conversion group"
-  :tag "Coding"
-  :prefix "liece-"
-  :group 'liece)
-  
-(defcustom liece-mime-charset-for-write 'iso-2022-jp-2
-  "Charset used in any transferred messages."
-  :type 'mime-charset
-  :group 'liece-coding)
-
-(defcustom liece-mime-charset-for-read 'x-ctext
-  "Charset used in any transferred messages."
-  :type 'mime-charset
-  :group 'liece-coding)
-
-(static-when (featurep 'xemacs)
-  (define-obsolete-variable-alias 'liece-default-mime-charset
-    'liece-mime-charset-for-write)
-  (define-obsolete-variable-alias 'liece-default-mime-charset-for-read
-    'liece-mime-charset-for-read))
-
-(defcustom liece-detect-coding-system nil
-  "Whether use coding system auto detection."
-  :type 'boolean
-  :group 'liece-coding)
-
-(defcustom liece-detect-coding-region-function
-  (function liece-detect-coding-region)
-  "User customizable `detect-coding-region'."
-  :type 'function
-  :group 'liece-coding)
-
-(defcustom liece-detect-coding-string-function
-  (function liece-detect-coding-string)
-  "User customizable detect-coding-string."
-  :type 'function
-  :group 'liece-coding)
-
-(defcustom liece-decode-coding-string-function
-  (function decode-coding-string)
-  "User customizable `decode-coding-string'."
-  :type 'function
-  :group 'liece-coding)
-
-(defun liece-coding-encode-charset-region (start end &optional lbt)
-  (encode-mime-charset-region start end liece-mime-charset-for-write lbt))
-
-(defun liece-coding-decode-charset-region (start end)
-  (let ((cs (if (and liece-detect-coding-system
-                    (fboundp liece-detect-coding-region-function))
-               (funcall liece-detect-coding-region-function start end)
-             (mime-charset-to-coding-system liece-mime-charset-for-read))))
-    (decode-coding-region start end cs)))
-
-(defun liece-detect-coding-region (start end)
-  (let ((cs (detect-coding-region start end)))
-    (if (listp cs)
-       (setq cs (car cs)))
-    (if (featurep 'xemacs)
-       (eval '(setq cs (coding-system-name cs))))
-    cs))
-
-(defun liece-coding-encode-charset-string (str &optional lbt)
-  (encode-mime-charset-string str liece-mime-charset-for-write lbt))
-
-(eval-and-compile
-  (when (fboundp 'detect-coding-string)
-    (defun liece-detect-coding-string (str)
-      (let ((cs (detect-coding-string str)))
-       (if (listp cs)
-           (setq cs (car cs)))
-       (static-if (fboundp 'coding-system-name)
-           (coding-system-name cs)
-         cs)))))
-
-(defun liece-coding-decode-charset-string (str)
-  (let ((cs (or (and liece-detect-coding-system
-                    (fboundp liece-detect-coding-string-function)
-                    (funcall liece-detect-coding-string-function str))
-               (mime-charset-to-coding-system liece-mime-charset-for-read))))
-    (funcall liece-decode-coding-string-function str cs)))
-
-(provide 'liece-coding)
-
-;;; liece-coding.el ends here
diff --git a/lisp/liece-commands.el b/lisp/liece-commands.el
deleted file mode 100644 (file)
index de437de..0000000
+++ /dev/null
@@ -1,1234 +0,0 @@
-;;; liece-commands.el --- Interactive commands in command buffer.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1999-12-24
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile
-   (require 'liece-misc))
-
-(require 'liece-channel)
-(require 'liece-nick)
-(require 'liece-coding)
-(require 'liece-intl)
-(require 'liece-minibuf)
-
-(autoload 'liece-dcc-chat-send "liece-dcc")
-(autoload 'liece-window-configuration-pop "liece-window")
-
-(autoload 'liece-command-ctcp-version "liece-ctcp" nil t)
-(autoload 'liece-command-ctcp-userinfo "liece-ctcp" nil t)
-(autoload 'liece-command-ctcp-clientinfo "liece-ctcp" nil t)
-(autoload 'liece-command-ctcp-ping "liece-ctcp" nil t)
-(autoload 'liece-command-ctcp-time "liece-ctcp" nil t)
-(autoload 'liece-command-ctcp-x-face "liece-ctcp" nil t)
-(autoload 'liece-command-ctcp-comment "liece-ctcp" nil t)
-(autoload 'liece-command-ctcp-help "liece-ctcp" nil t)
-
-(defun liece-command-poll-names ()
-  "Handler for polling NAMES."
-  (when (liece-server-opened)
-    (setq liece-polling
-         (+ liece-polling
-            (length liece-channel-alist)))
-    (dolist (chnl liece-channel-alist)
-      (liece-send "NAMES %s" (car chnl)))))
-
-(defun liece-command-poll-friends ()
-  "Handler for polling ISON."
-  (and liece-friends
-       (liece-server-opened)
-       (liece-send "ISON %s" (mapconcat 'identity liece-friends " "))))
-
-(defun liece-command-find-timestamp ()
-  "Find recent timestamp in dialogue buffer."
-  (interactive)
-  (save-excursion
-    (let ((range "")
-         (regexp (concat "^\\(" liece-time-prefix-regexp "\\)?"
-                         (regexp-quote liece-timestamp-prefix))))
-      (unless (eq 'liece-dialogue-mode (derived-mode-class major-mode))
-       (set-buffer liece-dialogue-buffer)
-       (goto-char (point-max)))
-      (if (re-search-backward regexp (point-min) t)
-         (setq range (concat (buffer-substring (match-end 0)
-                                               (line-end-position))
-                             "   ---   ")))
-      (if (re-search-forward regexp (point-max) t)
-         (setq range (concat range (buffer-substring (match-end 0)
-                                                     (line-end-position)))))
-      (liece-message range))))
-
-(defun liece-command-keepalive ()
-  "Handler for polling server connection."
-  (if (not (liece-server-opened))
-      (liece)
-    (liece-ping-if-idle)))
-
-(defvar liece-last-timestamp-time nil "Last time timestamp was inserted.")
-(defvar liece-last-timestamp-no-cons-p nil "Last timestamp was no-cons.")
-
-(defun liece-command-timestamp-if-interval-expired (&optional no-cons)
-  "If interval timer has expired, insert timestamp into dialogue buffer.
-And save variables into `liece-variable-file' if there are variables to save.
-Optional argument NO-CONS specifies timestamp format is cons cell."
-  (interactive)
-  (when (and (not (and no-cons
-                      liece-last-timestamp-no-cons-p))
-            (numberp liece-timestamp-interval)
-            (> liece-timestamp-interval 0)
-            (or (null liece-last-timestamp-time)
-                (> (liece-time-difference liece-last-timestamp-time
-                                           (current-time))
-                   liece-timestamp-interval)))
-    (if liece-save-variables-are-dirty
-       (liece-command-save-vars))
-    (liece-command-timestamp)
-    (setq liece-last-timestamp-no-cons-p no-cons)))
-
-(defun liece-command-timestamp ()
-  "Insert timestamp into dialogue buffer."
-  (interactive)
-  (let ((stamp (format liece-timestamp-format
-                      (funcall liece-format-time-function (current-time))))
-       (liece-timestamp-interval 0))
-    (liece-insert liece-D-buffer (concat stamp "\n"))
-    (setq liece-last-timestamp-time (current-time))))
-
-(defun liece-command-point-back-to-command-buffer ()
-  "Set point back to command buffer."
-  (interactive)
-  (let ((win (liece-get-buffer-window liece-command-buffer)))
-    (if win (select-window win))))
-
-(defun liece-command-send-message (message)
-  "Send MESSAGE to current chat partner of current channel."
-  (if (string-equal message "")
-      (progn (liece-message (_ "No text to send")) nil)
-    (let ((addr (if (eq liece-command-buffer-mode 'chat)
-                   liece-current-chat-partner
-                 liece-current-channel))
-         repr method name target)
-      (cond
-       ((eq liece-command-buffer-mode 'chat)
-       (or liece-current-chat-partner
-           (error
-            (substitute-command-keys
-             "Type \\[liece-command-join] to start private conversation")))
-       (setq repr (liece-channel-parse-representation
-                   liece-current-chat-partner)
-             method (aref repr 0)
-             name (aref repr 1)
-             target (aref repr 2))
-       (cond ((eq method 'dcc)
-              (liece-dcc-chat-send target message))
-             ((eq method 'irc)
-              (liece-send "PRIVMSG %s :%s"
-                          liece-current-chat-partner message)))
-       (liece-own-private-message message))
-       (t
-       (or liece-current-channel
-           (error
-            (substitute-command-keys
-             "Type \\[liece-command-join] to join a channel")))
-       (liece-send
-        "PRIVMSG %s :%s"
-        (liece-channel-real liece-current-channel) message)
-       (liece-own-channel-message message))))))
-
-(defun liece-command-enter-message ()
-  "Enter the current line as an entry in the IRC dialogue."
-  (interactive)
-  (beginning-of-line)
-  (liece-command-send-message
-   (buffer-substring (point)(progn (end-of-line) (point))))
-  (liece-next-line 1))
-
-(defun liece-dialogue-enter-message ()
-  "Ask for a line as an entry in the IRC dialogue on the current channel."
-  (interactive)
-  (let (message)
-    (while (not (string-equal (setq message (read-string "> ")) ""))
-      (liece-command-send-message message))))
-
-(defun liece-command-inline ()
-  "Send current line as a message to the IRC server."
-  (interactive)
-  (beginning-of-line)
-  (liece-send (buffer-substring (point)(progn (end-of-line) (point))))
-  (liece-next-line 1))
-
-(defun liece-command-join-channel (join-channel-var key)
-  "Join a JOIN-CHANNEL-VAR with KEY."
-  (let ((nicks liece-nick-alist) nick)
-    (while (and nicks
-                (not (and
-                      (car nick)
-                      (liece-channel-equal join-channel-var (car nick)))))
-      (setq nick (pop nicks)))
-    (when nicks
-      (setq join-channel-var
-            (or (car (get (intern (car nick) liece-obarray) 'chnl))
-                join-channel-var)))
-    (if (liece-channel-member join-channel-var liece-current-channels)
-       (progn
-         (setq liece-current-channel join-channel-var)
-         (liece-switch-to-channel liece-current-channel)
-         (liece-channel-change))
-      (liece-send "JOIN %s %s" (liece-channel-real join-channel-var) key))))
-
-(defun liece-command-join-partner (join-channel-var)
-  "Join a JOIN-CHANNEL-VAR."
-  (if (liece-channel-member join-channel-var liece-current-chat-partners)
-      (progn
-       (setq liece-current-chat-partner join-channel-var)
-       (liece-switch-to-channel liece-current-chat-partner))
-    (setq liece-current-chat-partner join-channel-var)
-    (liece-channel-join liece-current-chat-partner))
-  (liece-channel-change))
-
-(defun liece-command-join (join-channel-var &optional key)
-  "Join a JOIN-CHANNEL-VAR with KEY.
-If user nickname is given join the same set of channels as the specified user.
-If command-buffer is in chat-mode, start private conversation
-with specified user."
-  (interactive
-   (let (join-channel-var key (completion-ignore-case t))
-     (setq join-channel-var
-          (if (numberp current-prefix-arg)
-              current-prefix-arg
-            (liece-channel-virtual
-             (if (eq liece-command-buffer-mode 'chat)
-                 (liece-minibuffer-completing-read
-                  (_ "Start private conversation with: ")
-                  liece-nick-alist nil nil nil nil liece-privmsg-partner)
-               (liece-minibuffer-completing-read
-                (_ "Join channel: ")
-                (append liece-channel-alist liece-nick-alist)
-                nil nil nil nil liece-default-channel-candidate)))))
-     (if (and current-prefix-arg
-             (not (numberp current-prefix-arg)))
-        (setq key
-              (if (eq current-prefix-arg '-)
-                  (read-string
-                   (format (_ "Key for channel %s: ") join-channel-var))
-                (let ((passwd-echo ?*))
-                  (read-passwd
-                   (format (_ "Key for channel %s: ") join-channel-var))))))
-     (list join-channel-var key)))
-  (let ((real-chnl (liece-channel-real join-channel-var)))
-    (if (numberp join-channel-var)
-       (liece-switch-to-channel-no join-channel-var)
-      (setq liece-default-channel-candidate nil)
-      (if (liece-channel-p real-chnl)
-         (liece-toggle-command-buffer-mode 'channel)
-       (liece-toggle-command-buffer-mode 'chat))
-      (if (eq liece-command-buffer-mode 'chat)
-         (liece-command-join-partner join-channel-var)
-       (if (null key)
-           (setq key (get (intern join-channel-var liece-obarray) 'key)))
-       (put (intern join-channel-var liece-obarray) 'key key)
-       (if (null key)
-           (setq key ""))
-       (liece-command-join-channel join-channel-var key))
-      (force-mode-line-update))))
-
-(defun liece-command-part (part-channel-var &optional part-msg)
-  "Part a PART-CHANNEL-VAR with PART-MSG."
-  (interactive
-   (let (part-channel-var
-        (completion-ignore-case t)
-        (part-msg "bye..."))
-     (setq part-channel-var
-          (liece-channel-virtual
-           (if (eq liece-command-buffer-mode 'chat)
-               (liece-minibuffer-completing-read
-                (_ "End private conversation with: ")
-                (list-to-alist liece-current-chat-partners)
-                nil nil nil nil liece-current-chat-partner)
-             (liece-minibuffer-completing-read
-              (_ "Part channel: ")
-              (list-to-alist liece-current-channels)
-              nil nil nil nil liece-current-channel))))
-     (when current-prefix-arg
-       (setq part-msg (read-string (_ "Part Message: "))))
-     (list part-channel-var part-msg)))
-  (let ((real-chnl (liece-channel-real part-channel-var)))
-    (if (liece-channel-p real-chnl)
-       (progn
-         (if (liece-channel-member part-channel-var liece-current-channels)
-             (setq liece-current-channel part-channel-var))
-         (liece-send "PART %s :%s" real-chnl part-msg)
-         (setq liece-default-channel-candidate part-channel-var))
-      (setq liece-current-chat-partners
-           (liece-channel-remove part-channel-var
-                                 liece-current-chat-partners)
-           liece-current-chat-partner
-           (car liece-current-chat-partners))
-      (liece-set-channel-indicator)
-      (liece-channel-part part-channel-var))))
-
-(defun liece-command-kill (kill-nickname-var &optional timeout silent)
-  "Ignore messages from KILL-NICKNAME-VAR.
-Username can be given as case insensitive regular expression of form
-\".*@.*\.sub.domain\".
-If already ignoring him/her, toggle.
-If `liece-variables-file' is defined and the file is writable,
-settings are updated automatically for future sessions.
-Optional argument TIMEOUT says expiration.
-If SILENT is non-nil, don't notify current status."
-  (interactive
-   (let (kill-nickname-var timeout (completion-ignore-case t))
-     (setq kill-nickname-var (completing-read
-                             (_ "Ignore nickname or regexp: ")
-                             (append liece-nick-alist
-                                     liece-kill-nickname)))
-     (or (string-equal "" kill-nickname-var)
-        (string-assoc-ignore-case kill-nickname-var liece-kill-nickname)
-        (setq timeout (string-to-int (read-from-minibuffer
-                                      (_ "Timeout [RET for none]: ")))))
-     (list kill-nickname-var timeout)))
-  ;; empty, just list them
-  (if (string-equal "" kill-nickname-var)
-      (with-current-buffer liece-dialogue-buffer
-       (let ((ignores liece-kill-nickname) (time (current-time))
-             buffer-read-only expire expiretime)
-         (goto-char (point-max))
-         (liece-insert-info liece-D-buffer (_ "Currently ignoring:"))
-         (dolist (ignore ignores)
-           (setq expiretime (if (cdr ignore)
-                                (/ (liece-time-difference time (cdr ignore))
-                                   60))
-                 expire (cond ((not expiretime) "")
-                              ((>= expiretime 0)
-                               (format (_ " (%d min)") expiretime))
-                              ((< expiretime 0)
-                               (_ " expired"))))
-           (liece-insert liece-D-buffer
-                          (concat " " (car ignore) expire "\n")))))
-    ;; else not empty, check if exists
-    (let ((ignore
-          (string-assoc-ignore-case
-           kill-nickname-var liece-kill-nickname)))
-      (if ignore
-         (when (setq ignore (string-assoc-ignore-case
-                             (car ignore) liece-kill-nickname))
-           (setq liece-kill-nickname
-                 (delq ignore liece-kill-nickname))
-           (liece-insert-info liece-D-buffer
-                              (format (_ "No longer ignoring: %s.\n")
-                                      (car ignore))))
-       ;; did not find, add to ignored ones
-       (let ((expire-time (if (> timeout 0)
-                              (liece-time-add (current-time)
-                                               (* timeout 60)))))
-         (and silent (> timeout 0)
-              (setcar (cdr (cdr expire-time)) -1))
-         (setq liece-kill-nickname
-               (cons (cons kill-nickname-var expire-time)
-                     liece-kill-nickname))
-         (unless silent
-           (liece-insert-info liece-D-buffer
-                               (format (_ "Ignoring %s") kill-nickname-var))
-           (liece-insert-info liece-D-buffer
-                               (if (> timeout 0)
-                                   (format " for %d minutes.\n" timeout)
-                                 (format ".\n")))))))
-    (setq liece-save-variables-are-dirty t)))
-
-(defun liece-command-kick (nick &optional msg)
-  "Kick this NICK out with MSG."
-  (interactive
-   (let ((completion-ignore-case t)
-        (nicks (liece-channel-get-nicks)) nick msg)
-     (setq nick (completing-read
-                (_ "Kick out nickname: ")
-                (list-to-alist nicks)))
-     (if current-prefix-arg
-        (setq msg (concat " :" (read-string (_ "Kick Message: ")))))
-     (list nick msg)))
-  (liece-send "KICK %s %s%s"
-              (liece-channel-real liece-current-channel)
-              nick (or msg "")))
-
-(defun liece-command-ban (ban)
-  "BAN this user out."
-  (interactive
-   (let* ((completion-ignore-case t)
-         (nicks (liece-channel-get-nicks))
-         (uahs (mapcar
-                (function
-                 (lambda (nick)
-                   (list
-                    (concat nick "!" (liece-nick-get-user-at-host nick)))))
-                nicks))
-         ban nick msg)
-     (setq ban (liece-minibuffer-completing-read
-               (_ "Ban pattern: ") uahs nil nil nil nil
-               (concat nick "!" (liece-nick-get-user-at-host nick))))
-     (list ban)))
-  (liece-send "MODE %s :+b %s"
-              (liece-channel-real liece-current-channel) ban))
-   
-(defun liece-command-ban-kick (ban nick &optional msg)
-  "BAN kick this NICK out with MSG."
-  (interactive
-   (let* ((completion-ignore-case t)
-         (nicks (liece-channel-get-nicks))
-         (uahs (mapcar
-                (function
-                 (lambda (nick)
-                   (list
-                    (concat nick "!" (liece-nick-get-user-at-host nick)))))
-                nicks))
-         ban nick msg)
-     (setq nick (completing-read (_ "Kick out nickname: ")
-                                (list-to-alist nicks))
-          ban (liece-minibuffer-completing-read
-               (_ "Ban pattern: ") uahs nil nil nil nil
-               (concat nick "!" (liece-nick-get-user-at-host nick))))
-     (if current-prefix-arg
-        (setq msg (concat " :" (read-string (_ "Kick Message: "))))
-       (setq msg ""))
-     (list ban nick msg)))
-  (liece-send "MODE %s :+b %s"
-              (liece-channel-real liece-current-channel) ban)
-  (liece-send "KICK %s %s%s"
-              (liece-channel-real liece-current-channel)
-              nick (or msg "")))
-
-(defun liece-command-list (&optional channel)
-  "List the given CHANNEL and its topics.
-If you enter only Control-U as argument, list the current channel.
-With - as argument, list all channels."
-  (interactive
-   (if (or current-prefix-arg (null liece-current-channel))
-       (if (eq current-prefix-arg '-)
-          (list current-prefix-arg))
-     (let ((completion-ignore-case t) channel)
-       (setq channel (liece-minibuffer-completing-read
-                     (_ "LIST channel: ")
-                     liece-channel-alist nil nil nil nil liece-current-channel))
-       (unless (string-equal "" channel)
-        (list channel)))))
-  
-  (cond ((not channel)
-        (if liece-current-channel
-            (liece-send "LIST %s"
-                         (liece-channel-real liece-current-channel))))
-       ((and (eq channel '-)
-             (y-or-n-p (_ "Do you really query LIST without argument?")))
-        (liece-send "LIST"))
-       ((not (string-equal channel ""))
-        (liece-send "LIST %s" (liece-channel-real channel))
-        )))
-
-(defun liece-command-lusers ()
-  "List the number of users and servers."
-  (interactive)
-  (liece-send "LUSERS"))
-
-(defun liece-command-modec (chnl change)
-  "Send a MODE command to this CHNL.
-Argument CHANGE ."
-  (interactive
-   (let ((completion-ignore-case t)
-        (chnl liece-current-channel)
-        liece-minibuffer-complete-function prompt)
-     (if current-prefix-arg
-        (setq chnl
-              (liece-minibuffer-completing-read
-               (_ "Channel/User: ")
-               (append liece-channel-alist liece-nick-alist)
-               nil nil nil nil liece-current-channel)))
-     (cond
-      ((liece-channel-p (liece-channel-real chnl))
-       (setq prompt (format
-                    (_ "Mode for channel %s [%s]: ")
-                    chnl (or (liece-channel-get-modes chnl) ""))
-            liece-minibuffer-complete-function
-            (function liece-minibuffer-complete-channel-modes)))
-      (t
-       (setq prompt (format
-                    (_ "Mode for user %s [%s]: ")
-                    chnl (or (liece-nick-get-modes chnl) ""))
-            liece-minibuffer-complete-function
-            (function liece-minibuffer-complete-user-modes))))
-     (list chnl (read-from-minibuffer prompt nil liece-minibuffer-map))))
-  (liece-send "MODE %s %s" (liece-channel-real chnl) change))
-
-(defun liece-command-mode+o (opers)
-  "Send a MODE +o OPERS command."
-  (interactive
-   (let ((opers (liece-channel-get-operators)) oper
-        (nicks (liece-channel-get-nicks))
-        (completion-ignore-case t))
-     (setq nicks (filter-elements
-                  nick nicks
-                  (not (liece-nick-member nick opers)))
-          opers (liece-minibuffer-completing-read-multiple
-                 (_ "Assign operational privilege to: ") (list-to-alist nicks)))
-     (list opers)))
-  (let (ops)
-    (dolist (oper opers)
-      (push oper ops)
-      (when (= (length ops) liece-compress-mode-length)
-       (liece-send "MODE %s +%s %s"
-                    (liece-channel-real liece-current-channel)
-                    (string-times "o" liece-compress-mode-length)
-                    (string-join ops " "))
-       (setq ops nil)))
-    (if ops
-       (liece-send "MODE %s +%s %s"
-                    (liece-channel-real liece-current-channel)
-                    (string-times "o" (length ops))
-                    (string-join ops " ")))))
-
-(defun liece-command-mode-o (opers)
-  "Send a MODE -o OPERS command."
-  (interactive
-   (let ((completion-ignore-case t)
-        (opers (liece-channel-get-operators)) oper nicks)
-     (setq nicks (liece-minibuffer-completing-read-multiple
-                 (_ "Divest operational privilege from: ") (list-to-alist opers)))
-     (list nicks)))
-  (let (ops)
-    (dolist (oper opers)
-      (push oper ops)
-      (when (= (length ops) liece-compress-mode-length)
-       (liece-send "MODE %s -%s %s"
-                    (liece-channel-real liece-current-channel)
-                    (string-times "o" liece-compress-mode-length)
-                    (string-join ops " "))
-       (setq ops nil)))
-    (if ops
-       (liece-send "MODE %s -%s %s"
-                    (liece-channel-real liece-current-channel)
-                    (string-times "o" (length ops))
-                    (string-join ops " ")))))
-
-(defun liece-command-mode+v (voices)
-  "Send a MODE +v VOICES command."
-  (interactive
-   (let ((voices (append (liece-channel-get-voices)
-                        (liece-channel-get-operators)))
-        voice
-        (nicks (liece-channel-get-nicks))
-        (completion-ignore-case t)
-        (count 0))
-     (setq nicks (filter-elements nick nicks
-                  (not (string-assoc-ignore-case nick voices)))
-          voices (liece-minibuffer-completing-read-multiple
-                  (_ "Allow to speak: ") (list-to-alist nicks)))
-     (list voices)))
-  (let (vcs)
-    (dolist (voice voices)
-      (push voice vcs)
-      (when (= (length vcs) liece-compress-mode-length)
-       (liece-send "MODE %s +%s %s"
-                    (liece-channel-real liece-current-channel)
-                    (string-times "v" liece-compress-mode-length)
-                    (string-join vcs " "))
-       (setq vcs nil)))
-    (if vcs
-       (liece-send "MODE %s +%s %s"
-                    (liece-channel-real liece-current-channel)
-                    (string-times "v" (length vcs))
-                    (string-join vcs " ")))))
-
-(defun liece-command-mode-v (voices)
-  "Send a MODE -v VOICES command."
-  (interactive
-   (let ((completion-ignore-case t)
-        (voices (liece-channel-get-voices)) voice nicks)
-     (setq nicks (liece-minibuffer-completing-read-multiple
-                 (_ "Forbid to speak: ") (list-to-alist voices)))
-     (list nicks)))
-  (let (vcs)
-    (dolist (voice voices)
-      (push voice vcs)
-      (when (= (length vcs) liece-compress-mode-length)
-       (liece-send "MODE %s -%s %s"
-                    (liece-channel-real liece-current-channel)
-                    (string-times "v" liece-compress-mode-length)
-                    (string-join vcs " "))
-       (setq vcs nil)))
-    (if vcs
-       (liece-send "MODE %s -%s %s"
-                    (liece-channel-real liece-current-channel)
-                    (string-times "v" (length vcs))
-                    (string-join vcs " ")))))
-
-(defun liece-command-message (address message)
-  "Send ADDRESS a private MESSAGE."
-  (interactive
-   (let ((completion-ignore-case t) address)
-     (setq address
-          (liece-channel-virtual
-           (liece-minibuffer-completing-read
-            (_ "Private message to: ")
-            (append liece-nick-alist liece-channel-alist)
-            nil nil nil nil liece-privmsg-partner)))
-     (list address
-          (read-string
-           (format
-            (_ "Private message to %s: ")
-            address)))))
-  (if (funcall liece-message-empty-predicate message)
-      (progn (liece-message (_ "No text to send")) nil)
-    (let ((chnl (liece-channel-real address)))
-      (liece-send "PRIVMSG %s :%s" chnl message)
-      (if (liece-channel-p chnl)
-         (liece-own-channel-message message
-                                    (liece-channel-virtual address))
-       (liece-own-private-message message address)))))
-
-(defun liece-command-mta-private (partner)
-  "Send a private message (current line) to PARTNER."
-  (interactive
-   (let ((completion-ignore-case t))
-     (setq liece-privmsg-partner
-          (liece-channel-virtual
-           (liece-minibuffer-completing-read
-            (_ "To whom: ")
-            (append liece-nick-alist liece-channel-alist)
-            nil nil nil nil liece-privmsg-partner)))
-     (list liece-privmsg-partner)))
-  (let ((message (buffer-substring (progn (beginning-of-line) (point))
-                                  (progn (end-of-line) (point)))))
-    (if (> (length message) 0)
-       (progn
-         (liece-command-message liece-privmsg-partner message)
-         (liece-next-line 1))
-      (liece-message (_ "No text to send")))))
-
-(defun liece-command-names (&optional expr)
-  "List the nicknames of the current IRC users on given EXPR.
-With an Control-U as argument, only the current channel is listed.
-With - as argument, list all channels."
-  (interactive
-   (if (or current-prefix-arg (null liece-current-channel))
-       (if (eq current-prefix-arg '-)
-          (list current-prefix-arg))
-     (let ((completion-ignore-case t) expr)
-       (setq expr (liece-minibuffer-completing-read
-                     (_ "Names on channel: ")
-                     liece-channel-alist nil nil nil nil liece-current-channel))
-       (unless (string-equal "" expr)
-        (list expr)))))
-  (when (or (and (eq expr '-)
-                (y-or-n-p
-                 (_ "Do you really query NAMES without argument?")))
-           (not (or expr
-                    (if liece-current-channel
-                        (setq expr (liece-channel-real
-                                    liece-current-channel))))))
-    (setq expr ""))
-  (when expr
-    (liece-send "NAMES %s" expr)))
-
-(defun liece-command-nickname (nick)
-  "Set your nickname to NICK."
-  (interactive "sEnter your nickname: ")
-  (let ((nickname (truncate-string nick liece-nick-max-length)))
-    (if (zerop (length nickname))
-       (liece-message (_ "illegal nickname \"%s\"; not changed") nickname)
-      (liece-send "NICK %s" nick))))
-      
-(defun liece-command-who (&optional expr)
-  "Lists tue users that match the given expression EXPR.
-If you enter only Control-U as argument, list the current channel.
-With - as argument, list all users."
-  (interactive
-   (if (or current-prefix-arg (null liece-current-channel))
-       (if (eq current-prefix-arg '-)
-          (list current-prefix-arg))
-     (let ((completion-ignore-case t) expr)
-       (setq expr (completing-read
-                  (_ "WHO expression: ")
-                  (append liece-channel-alist liece-nick-alist)))
-       (unless (string-equal "" expr)
-        (list expr)))))
-  (when (or (and (eq expr '-)
-                (y-or-n-p
-                 (_ "Do you really query WHO without argument?")))
-           (not (or expr
-                    (if liece-current-channel
-                        (setq expr (liece-channel-real
-                                    liece-current-channel))))))
-    (setq expr ""))
-  (when expr
-    (liece-send "WHO %s" expr)
-    (setq liece-who-expression expr)))
-
-(defun liece-command-finger (finger-nick-var &optional server)
-  "Get information about a specific user FINGER-NICK-VAR.
-If called with optional argument SERVER or any prefix argument,
-query information to the foreign server."
-  (interactive
-   (let (finger-nick-var (completion-ignore-case t))
-     (setq finger-nick-var
-          (completing-read (_ "Finger whom: ") liece-nick-alist))
-     (list finger-nick-var (and current-prefix-arg finger-nick-var))))
-  (if server
-      (liece-send "WHOIS %s %s" server finger-nick-var)
-    (liece-send "WHOIS %s" finger-nick-var)))
-
-(defun liece-command-topic (topic)
-  "Change TOPIC of the current channel."
-  (interactive
-   (list (read-from-minibuffer
-         "Topic: " (cons (or (liece-channel-get-topic) "") 0))))
-  (liece-send "TOPIC %s :%s"
-             (liece-channel-real liece-current-channel) topic))
-
-(defun liece-command-invite (&optional invite-nick-var invite-channel-var)
-  "Invite INVITE-NICK-VAR to INVITE-CHANNEL-VAR."
-  (interactive
-   (let ((completion-ignore-case t) invite-channel-var invite-nick-var)
-     (if current-prefix-arg
-        (setq invite-channel-var
-              (liece-channel-virtual
-               (completing-read
-                (_ "Invite channel: ")
-                (list-to-alist liece-current-channels)))))
-     (setq invite-nick-var
-          (completing-read
-           (_ "Invite whom: ")
-           liece-nick-alist))
-     (list invite-nick-var invite-channel-var)))
-  (or invite-channel-var
-      (setq invite-channel-var liece-current-channel))
-  (liece-send "INVITE %s %s"
-              invite-nick-var (liece-channel-real invite-channel-var)))
-
-(defun liece-command-away (awaymsg)
-  "Mark/unmark yourself as being away.
-Leave message AWAYMSG."
-  (interactive "sAway message: ")
-  (liece-send "AWAY :%s" awaymsg)
-  (setq liece-away-message awaymsg))
-
-(defun liece-command-scroll-down (lines)
-  "Scroll LINES down dialogue buffer from command buffer."
-  (interactive "P")
-  (let ((other-window-scroll-buffer
-        (if liece-channel-buffer-mode
-            liece-channel-buffer
-          liece-dialogue-buffer)))
-    (when (liece-get-buffer-window other-window-scroll-buffer)
-      (condition-case nil
-         (scroll-other-window-down lines)
-       (beginning-of-buffer
-        (message "Beginning of buffer"))))))
-
-(defun liece-command-scroll-up (lines)
-  "Scroll LINES up dialogue buffer from command buffer."
-  (interactive "P")
-  (let* ((other-window-scroll-buffer
-         (if liece-channel-buffer-mode
-             liece-channel-buffer
-           liece-dialogue-buffer)))
-    (when (liece-get-buffer-window other-window-scroll-buffer)
-      (condition-case nil
-         (scroll-other-window lines)
-       (end-of-buffer
-        (message "End of buffer"))))))
-
-(defun liece-command-nick-scroll-down (lines)
-  "Scroll LINES down nick buffer from command buffer."
-  (interactive "P")
-  (let ((other-window-scroll-buffer liece-nick-buffer))
-    (when (liece-get-buffer-window other-window-scroll-buffer)
-      (condition-case nil
-         (scroll-other-window-down lines)
-       (beginning-of-buffer
-        (message "Beginning of buffer"))))))
-
-(defun liece-command-nick-scroll-up (lines)
-  "Scroll LINES up nick buffer from command buffer."
-  (interactive "P")
-  (let* ((other-window-scroll-buffer liece-nick-buffer))
-    (when (liece-get-buffer-window other-window-scroll-buffer)
-      (condition-case nil
-         (scroll-other-window lines)
-       (end-of-buffer
-        (message "End of buffer"))))))
-
-(defun liece-command-freeze (&optional arg)
-  "Prevent automatic scrolling of the dialogue window.
-If prefix argument ARG is non-nil, toggle frozen status."
-  (interactive "P")
-  (liece-freeze (if liece-channel-buffer-mode
-                   liece-channel-buffer
-                 liece-dialogue-buffer)
-               (if arg (prefix-numeric-value arg))))
-
-(defun liece-command-own-freeze (&optional arg)
-  "Prevent automatic scrolling of the dialogue window.
-The difference from `liece-command-freeze' is that your messages are hidden.
-If prefix argument ARG is non-nil, toggle frozen status."
-  (interactive "P")
-  (liece-own-freeze (if liece-channel-buffer-mode
-                       liece-channel-buffer
-                     liece-dialogue-buffer)
-                   (if arg (prefix-numeric-value arg))))
-
-(defun liece-command-beep (&optional arg)
-  "Toggle the automatic beep notice when the channel message is received."
-  (interactive "P")
-  (liece-set-beep (if liece-channel-buffer-mode
-                     liece-channel-buffer
-                   liece-dialogue-buffer)
-                 (if arg (prefix-numeric-value arg))))
-
-(defun liece-command-quit (&optional arg)
-  "Quit IRC.
-If prefix argument ARG is non-nil, leave signoff message."
-  (interactive "P")
-  (when (and (liece-server-opened)
-            (y-or-n-p (_ "Quit IRC? ")))
-    (message "")
-    (let ((quit-string
-          (if arg (read-string (_ "Signoff message: "))
-            (or liece-signoff-message
-                (product-name (product-find 'liece-version))))))
-      (liece-close-server quit-string))
-    (liece-clear-system)
-    (if liece-save-variables-are-dirty
-       (liece-command-save-vars))
-    (if (interactive-p)
-       (liece-window-configuration-pop))
-    (run-hooks 'liece-exit-hook)))
-
-(defun liece-command-generic (message)
-  "Enter a generic IRC MESSAGE, which is sent to the server.
-A ? lists the useful generic messages."
-  (interactive "sIRC command (? to help): ")
-  (if (string-equal message "?")
-      (with-output-to-temp-buffer "*IRC Help*"
-       (princ "The following generic IRC messages may be of interest to you:
-TOPIC <new topic>              set the topic of your channel
-INVITE <nickname>              invite another user to join your channel
-LINKS                          lists the currently reachable IRC servers
-SUMMON <user@host>             invites an user not currently in IRC
-USERS <host>                   lists the users on a host
-AWAY <reason>                  marks you as not really actively using IRC
-                               (an empty reason clears it)
-WALL <message>                 send to everyone on IRC
-NAMES <channel>                        lists users per channel
-"))
-    (liece-send "%s" message)))
-
-(defun liece-command-irc-compatible ()
-  "If entered at column 0, allow you to enter a generic IRC message."
-  (interactive)
-  (if (zerop (current-column))
-      (call-interactively (function liece-command-generic))
-    (self-insert-command 1)))
-
-(defun liece-command-exec (command)
-  "Execute COMMAND, stdout to dialogue."
-  (interactive "sShell command: ")
-  (shell-command command t)
-  (let ((opoint (point)))
-    (while (< (point) (mark))
-      (liece-command-enter-message)
-      (set-buffer liece-command-buffer))
-    (push-mark opoint t)))
-
-(defun liece-command-yank-send (&optional arg)
-  "Send message from yank buffer.
-Prefix argument ARG is regarded as distance from yank pointer."
-  (interactive)
-  (when (y-or-n-p (_ "Really SEND from Yank Buffer?"))
-    (save-restriction
-      (narrow-to-region (point) (point))
-      (insert (car kill-ring-yank-pointer))
-      (goto-char (point-min))
-      (while (eobp)
-       (liece-command-enter-message)
-       (set-buffer liece-command-buffer)))))
-
-(defun liece-command-complete ()
-  "Complete word before point from userlist."
-  (interactive)
-  (let ((completion-ignore-case t)
-       (alist (if liece-current-channel
-                  (list-to-alist (liece-channel-get-nicks))
-                liece-nick-alist))
-       candidate completion all)
-    (setq candidate (current-word)
-         completion (try-completion candidate alist)
-         all (all-completions candidate alist))
-    (liece-minibuffer-finalize-completion completion candidate all)))
-
-(defun liece-command-load-vars ()
-  "Load configuration from liece-variables-file."
-  (interactive)
-  (let ((nick liece-real-nickname))
-    (unwind-protect
-       (liece-read-variables-files)
-      (setq liece-real-nickname nick)
-      (liece-command-reconfigure-windows))))
-
-(defun liece-command-save-vars ()
-  "Save current settings to `liece-variables-file'."
-  (interactive)
-  (let* ((output-buffer
-         (find-file-noselect
-          (expand-file-name liece-variables-file)))
-        output-marker p)
-    (save-excursion
-      (set-buffer output-buffer)
-      (goto-char (point-min))
-      (cond ((re-search-forward "^;; Saved Settings *\n" nil 'move)
-            (setq p (match-beginning 0))
-            (goto-char p)
-            (or (re-search-forward
-                 "^;; End of Saved Settings *\\(\n\\|\\'\\)" nil t)
-                (error
-                 (concat "can't find END of saved state in "
-                         liece-variables-file)))
-            (delete-region p (match-end 0)))
-           (t
-            (goto-char (point-max))
-            (insert "\n")))
-      (setq output-marker (point-marker))
-      (let ((print-readably t)
-           (print-escape-newlines t)
-           (standard-output output-marker))
-       (princ ";; Saved Settings\n")
-       (dolist (var liece-saved-forms)
-         (if (symbolp var)
-             (prin1 (list 'setq var
-                          (let ((val (symbol-value var)))
-                            (if (memq val '(t nil))
-                                val
-                              (list 'quote val)))))
-           (setq var (eval var))
-           (cond ((eq (car-safe var) 'progn)
-                  (while (setq var (cdr var))
-                    (prin1 (car var))
-                    (princ "\n")
-                    (if (cdr var) (princ "  "))))
-                 (var
-                  (prin1 "xx")(prin1 var))))
-         (if var (princ "\n")))
-       (princ "\n")
-       (princ ";; End of Saved Settings\n")))
-    (set-marker output-marker nil)
-    (save-excursion
-      (set-buffer output-buffer)
-      (save-buffer)))
-  (setq liece-save-variables-are-dirty nil))
-
-(defun liece-command-reconfigure-windows ()
-  "Rearrange window splitting."
-  (interactive)
-  (let ((command-window (liece-get-buffer-window liece-command-buffer))
-       (dialogue-window (liece-get-buffer-window liece-dialogue-buffer))
-       (obuffer (current-buffer)))
-    (if (and command-window dialogue-window)
-       (let ((ch (window-height command-window))
-             (dh (window-height dialogue-window)))
-         (delete-window command-window)
-         (pop-to-buffer liece-dialogue-buffer)
-         (enlarge-window (+ ch dh (- dh))))
-      (pop-to-buffer liece-dialogue-buffer))
-    (liece-configure-windows)
-    (if liece-one-buffer-mode
-       (pop-to-buffer liece-dialogue-buffer)
-      (pop-to-buffer obuffer))))
-
-(defun liece-command-end-of-buffer ()
-  "Get end of the dialogue buffer."
-  (interactive)
-  (let (buffer window)
-    (setq buffer (if liece-channel-buffer-mode
-                    liece-channel-buffer
-                  liece-dialogue-buffer))
-    (or (setq window (liece-get-buffer-window buffer))
-       (setq window (liece-get-buffer-window liece-dialogue-buffer)
-             buffer liece-dialogue-buffer))
-    (when window
-      (save-selected-window
-       (select-window window)
-       (goto-char (point-max))))))
-
-(defun liece-command-private-conversation (arg)
-  "Toggle between private conversation mode and channel mode.
-User can then join and part to a private conversation as he would
-join or part to a channel.
-
-If there are no private conversations or argument is given user is
-prompted the partner/channel (return as partner/channel means toggle
-mode, the current channel and current chat partner are not altered)
-Argument ARG is prefix argument of toggle status."
-  (interactive
-   (let ((completion-ignore-case t))
-     (list
-      (if current-prefix-arg
-         ;; prefixed, ask where to continue
-         (if (eq liece-command-buffer-mode 'chat)
-             (liece-minibuffer-completing-read
-              (_ "Return to channel: ")
-              (append liece-channel-alist liece-nick-alist)
-              nil nil nil nil liece-current-channel)
-           (completing-read
-            (_ "Start private conversation with: ")
-            liece-nick-alist nil nil))
-       ;; no prefix, see if going to chat
-       (if (eq liece-command-buffer-mode 'channel)
-           ;; and if we have chat partner, select that
-           (if liece-current-chat-partner
-               liece-current-chat-partner
-             (completing-read
-              (_ "Start private conversation with: ")
-              liece-nick-alist )))))))
-  
-  (liece-toggle-command-buffer-mode)
-  (if (and arg (not (string-equal arg "")))
-      (liece-command-join arg))
-  (liece-set-channel-indicator)
-  ;; refresh mode line
-  (force-mode-line-update))
-
-(defun liece-command-next-channel ()
-  "Select next channel or chat partner, and *DONT* rotate list."
-  (interactive)
-  (let ((rest (copy-sequence
-              (if (eq liece-command-buffer-mode 'chat)
-                  liece-current-chat-partners
-                liece-current-channels)))
-       (chnl (if (eq liece-command-buffer-mode 'chat)
-                 liece-current-chat-partner
-               liece-current-channel)))
-    (liece-switch-to-channel
-     (or (cadr (liece-channel-member chnl (delq nil rest)))
-        (car (delq nil rest))
-        chnl))))
-
-(defun liece-command-previous-channel ()
-  "Select previous channel or chat partner, and *DONT* rotate list."
-  (interactive)
-  (let ((rest
-        (reverse
-         (if (eq liece-command-buffer-mode 'chat)
-             liece-current-chat-partners
-           liece-current-channels)))
-       (chnl
-        (if (eq liece-command-buffer-mode 'chat)
-            liece-current-chat-partner
-          liece-current-channel)))
-    (liece-switch-to-channel
-     (or (cadr (liece-channel-member chnl (delq nil rest)))
-        (car (delq nil rest))
-        chnl))))
-      
-(defun liece-command-unread-channel ()
-  "Select unread channel or chat partner."
-  (interactive)
-  (let ((chnl (car liece-channel-unread-list)))
-    (if chnl
-       (liece-switch-to-channel chnl)
-      (liece-message (_ "No unread channel or chat partner.")))))
-
-(defun liece-command-push ()
-  "Select next channel or chat partner, and rotate list."
-  (interactive)
-  (let* ((rest
-         (if (eq liece-command-buffer-mode 'chat)
-             liece-current-chat-partners
-           liece-current-channels))
-        (temp (car (last rest)))
-        (len (length rest)))
-    (unwind-protect
-       (while (< 1 len)
-         (setcar (nthcdr (1- len) rest) (nth (- len 2) rest))
-         (decf len))
-      (when rest
-       (setcar rest temp)))
-    (liece-channel-change)))
-
-(defun liece-command-pop ()
-  "Select previous channel or chat partner, and rotate list."
-  (interactive)
-  (let* ((rest
-         (if (eq liece-command-buffer-mode 'chat)
-             liece-current-chat-partners
-           liece-current-channels))
-        (temp (car rest))
-        (len (length rest)))
-    (unwind-protect
-       (dotimes (i len)
-         (setcar (nthcdr i rest) (nth (1+ i) rest)))
-      (when rest
-       (setcar (last rest) temp)))
-    (liece-channel-change)))
-
-(defvar liece-redisplay-buffer-functions
-  '(liece-channel-redisplay-buffer
-    liece-nick-redisplay-buffer
-    liece-channel-list-redisplay-buffer))
-
-(defun liece-switch-to-channel (chnl)
-  "Switch the current channel to CHNL."
-  (if (liece-channel-p (liece-channel-real chnl))
-      (progn
-       (liece-toggle-command-buffer-mode 'channel)
-       (setq liece-current-channel chnl)
-       (liece-set-channel-indicator))
-    (liece-toggle-command-buffer-mode 'chat)
-    (setq liece-current-chat-partner chnl)
-    (liece-set-channel-indicator))
-  (save-excursion
-    (run-hook-with-args 'liece-redisplay-buffer-functions chnl)))
-
-(defun liece-switch-to-channel-no (num)
-  "Switch the current channel to NUM."
-  (let* ((mode liece-command-buffer-mode)
-        (chnls (if (eq mode 'chat)
-                   liece-current-chat-partners
-                 liece-current-channels)))
-    (if (and (integerp num)
-            (stringp (nth num chnls)))
-       (let ((chnl (nth num chnls)))
-         (if (eq mode 'chat)
-             (progn
-               (liece-toggle-command-buffer-mode 'chat)
-               (setq liece-current-chat-partner chnl)
-               (liece-set-channel-indicator))
-           (liece-toggle-command-buffer-mode 'channel)
-           (setq liece-current-channel chnl)
-           (liece-set-channel-indicator))
-         (save-excursion
-           (run-hook-with-args 'liece-redisplay-buffer-functions chnl)))
-      (message "Invalid channel!"))))
-
-(defun liece-command-ping ()
-  "Send PING to server."
-  (interactive)
-  (if (stringp liece-server-name)
-      (liece-send "PING %s" liece-server-name)))
-
-(defun liece-command-ison (nicks)
-  "IsON users NICKS."
-  (interactive
-   (let (nicks (completion-ignore-case t))
-     (setq nicks (liece-minibuffer-completing-read-multiple
-                 "IsON" liece-nick-alist))
-     (list nicks)))
-  (liece-send "ISON :%s" (mapconcat #'identity nicks " ")))
-
-(defun liece-command-activate-friends (nicks)
-  "Register NICKS to the frinends list."
-  (interactive
-   (let (nicks (completion-ignore-case t))
-     (setq nicks
-          (liece-minibuffer-completing-read-multiple
-           (_ "Friend")
-           (filter-elements nick liece-nick-alist
-             (not (string-list-member-ignore-case
-                   (car nick) liece-friends)))))
-     (list nicks)))
-  (setq liece-friends (append nicks liece-friends)))
-
-(defun liece-command-deactivate-friends ()
-  "Clear current friends list."
-  (interactive)
-  (setq liece-friends nil))
-
-(defun liece-command-display-friends ()
-  "Display status of the friends."
-  (interactive)
-  (with-output-to-temp-buffer " *IRC Friends*"
-    (set-buffer standard-output)
-    (insert "Friends status: \n\n")
-    (dolist (friend liece-friends)
-      (if (string-list-member-ignore-case friend liece-friends-last)
-         (insert "+ " friend "\n")
-       (insert "- " friend "\n")))))
-
-(defun liece-command-userhost (nicks)
-  "Ask for the hostnames of NICKS."
-  (interactive
-   (let (nicks (completion-ignore-case t))
-     (setq nicks (liece-minibuffer-completing-read-multiple
-                 (_ "Userhost nick")
-                 (list-to-alist liece-nick-alist)))
-     (list nicks)))
-  (liece-send "USERHOST :%s" (mapconcat 'identity nicks ",")))
-
-(defun liece-command-show-last-kill ()
-  "Dig last kill from KILL and show it."
-  (interactive)
-  (liece-insert-info
-   (append liece-D-buffer liece-O-buffer)
-   (save-excursion
-     (set-buffer liece-KILLS-buffer)
-     (goto-char (point-max))
-     (forward-line -1)
-     (concat (buffer-substring (point) (point-max)) "\n"))))
-
-(defun liece-command-toggle-private ()
-  "Toggle private mode / channel mode."
-  (interactive)
-  (case (prog1 liece-command-buffer-mode
-         (liece-toggle-command-buffer-mode))
-    (chat
-     (if liece-current-channel
-        (liece-switch-to-channel liece-current-channel))
-     (setq liece-command-buffer-mode-indicator "Channels"))
-    (channel
-     (if liece-current-chat-partner
-        (liece-switch-to-channel liece-current-chat-partner))
-     (setq liece-command-buffer-mode-indicator "Partners")))
-  (liece-channel-change))
-
-(defun liece-command-tag-region (start end)
-  "Move current region between START and END to `kill-ring'."
-  (interactive
-   (if (region-active-p)
-       (list (region-beginning)(region-end))
-     (list (line-beginning-position)(line-end-position))))
-  (static-if (fboundp 'extent-property)
-      (kill-ring-save start end)
-    (let ((start (set-marker (make-marker) start))
-         (end (set-marker (make-marker) end))
-         (inhibit-read-only t)
-         buffer-read-only
-         buffer-undo-list)
-      (liece-remove-properties-region start end)
-      (kill-ring-save start end)
-      (push nil buffer-undo-list)
-      (undo))))
-
-(provide 'liece-commands)
-
-;;; liece-commands.el ends here
diff --git a/lisp/liece-compat.el b/lisp/liece-compat.el
deleted file mode 100644 (file)
index 96afb99..0000000
+++ /dev/null
@@ -1,163 +0,0 @@
-;;; liece-compat.el --- Provide compatibility for various emacsen.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1999-12-19
-;; Keywords: IRC, liece, APEL
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile (require 'cl))
-
-(require 'pcustom)
-
-(eval-when-compile (require 'wid-edit))
-
-(eval-and-compile (autoload 'widget-convert-button "wid-edit"))
-
-(defalias 'liece-widget-convert-button 'widget-convert-button)
-(defalias 'liece-widget-button-click 'widget-button-click)
-
-(defun-maybe region-active-p ()
-  "Return non-nil if the region is active.
-If `zmacs-regions' is true, this is equivalent to `region-exists-p'.
-Otherwise, this function always returns false.
-\[XEmacs emulating function]"
-  (static-if (and (boundp 'transient-mark-mode) (boundp 'mark-active))
-      (and transient-mark-mode mark-active)))
-
-(defun liece-map-overlays (function)
-  "Map FUNCTION over the extents which overlap the current buffer."
-  (let* ((overlayss (overlay-lists))
-        (buffer-read-only nil)
-        (overlays (delq nil (nconc (car overlayss) (cdr overlayss)))))
-    (dolist (overlay overlays)
-      (funcall function overlay))))
-
-(defun liece-kill-all-overlays ()
-  "Delete all overlays in the current buffer."
-  (liece-map-overlays #'delete-overlay))
-
-(defmacro liece-get-buffer-window (buffer)
-  "Traverse all frames and return a window currently displaying BUFFER."
-  `(get-buffer-window ,buffer t))
-
-(static-if (fboundp 'window-displayed-height)
-    (defalias 'liece-window-height 'window-displayed-height)
-  (defalias 'liece-window-height 'window-height))
-
-(defalias 'liece-mode-line-buffer-identification 'identity)
-
-(defun liece-suppress-mode-line-format ()
-  "Remove unnecessary information from `mode-line-format'."
-  (let ((value (rassq 'mode-line-modified mode-line-format)))
-    (if value
-       (setq mode-line-format (delq value (copy-sequence mode-line-format)))
-      mode-line-format)))
-
-(defun liece-locate-data-directory (name &optional dir-list)
-  "Locate a directory in a search path DIR-LIST (a list of directories)."
-  (let ((dir-list
-        (or dir-list
-            (cons data-directory
-                  (mapcar (lambda (path) (concat path "etc/"))
-                          load-path))))
-       dir)
-    (while dir-list
-      (if (and (car dir-list)
-              (file-directory-p
-               (setq dir (concat
-                          (file-name-directory
-                           (directory-file-name (car dir-list)))
-                          name "/"))))
-         (setq dir-list nil)
-       (setq dir-list (cdr dir-list))))
-    dir))
-
-(defvar-maybe completion-display-completion-list-function
-  'display-completion-list)
-  
-(defalias-maybe 'easy-menu-add-item 'ignore)
-  
-;; from XEmacs's minibuf.el
-(defun-maybe temp-minibuffer-message (m)
-  (let ((savemax (point-max)))
-    (save-excursion
-      (goto-char (point-max))
-      (message nil)
-      (insert m))
-    (let ((inhibit-quit t))
-      (sit-for 2)
-      (delete-region savemax (point-max)))))
-
-;; from XEmacs's subr.el
-(defun-maybe replace-in-string (str regexp newtext &optional literal)
-  "Replace all matches in STR for REGEXP with NEWTEXT string,
- and returns the new string.
-Optional LITERAL non-nil means do a literal replacement.
-Otherwise treat \\ in NEWTEXT string as special:
-  \\& means substitute original matched text,
-  \\N means substitute match for \(...\) number N,
-  \\\\ means insert one \\."
-  (let ((rtn-str "")
-       (start 0)
-       (special)
-       match prev-start)
-    (while (setq match (string-match regexp str start))
-      (setq prev-start start
-           start (match-end 0)
-           rtn-str
-           (concat
-            rtn-str
-            (substring str prev-start match)
-            (cond (literal newtext)
-                  (t (mapconcat
-                      (lambda (c)
-                        (if special
-                            (progn
-                              (setq special nil)
-                              (cond ((eq c ?\\) "\\")
-                                    ((eq c ?&)
-                                     (substring str
-                                                (match-beginning 0)
-                                                (match-end 0)))
-                                    ((and (>= c ?0) (<= c ?9))
-                                     (if (> c (+ ?0 (length
-                                                     (match-data))))
-                                         ;; Invalid match num
-                                         (error "Invalid match num: %c" c)
-                                       (setq c (- c ?0))
-                                       (substring str
-                                                  (match-beginning c)
-                                                  (match-end c))))
-                                    (t (char-to-string c))))
-                          (if (eq c ?\\) (progn (setq special t) nil)
-                            (char-to-string c))))
-                      newtext ""))))))
-    (concat rtn-str (substring str start))))
-  
-(provide 'liece-compat)
-
-;;; liece-compat.el ends here
diff --git a/lisp/liece-config.el b/lisp/liece-config.el
deleted file mode 100644 (file)
index 336a2e3..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-;;; liece-config.el --- Installation settings.
-;; Copyright (C) 1999 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1999-04-12
-;; Revised: 1999-04-12
-;; Keywords: IRC, liece, APEL
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(setq load-path (cons (expand-file-name "../apel") load-path))
-
-(defvar default-load-path load-path)
-
-(and (expand-file-name "../../site-lisp/apel" data-directory)
-     (setq load-path (cons
-                     (expand-file-name "../../site-lisp/apel" data-directory)
-                     load-path )))
-
-(when (and (boundp 'LISPDIR) LISPDIR)
-  (or (member LISPDIR default-load-path)
-      (setq default-load-path (cons LISPDIR default-load-path)) )
-  (or (member LISPDIR load-path) (setq load-path (cons LISPDIR load-path)))
-  (or (member (expand-file-name "apel" LISPDIR) load-path)
-      (setq load-path (cons (expand-file-name "apel" LISPDIR) load-path))))
-
-(setq load-path (cons (expand-file-name ".") load-path))
-
-(defvar VERSION_SPECIFIC_LISPDIR nil)
-(if (and VERSION_SPECIFIC_LISPDIR
-        (null (member VERSION_SPECIFIC_LISPDIR load-path)) )
-    (setq load-path (cons VERSION_SPECIFIC_LISPDIR load-path)) )
-
-(require 'install)
-
-
-;;; @ Please specify prefix of install directory.
-;;;
-
-;; Please specify install path prefix.
-;; If it is omitted, shared directory (maybe /usr/local is used).
-(defvar PREFIX install-prefix)
-;;(setq PREFIX "~/")
-
-\f
-
-;;; @ optional settings
-;;;
-
-(defvar VERSION_SPECIFIC_LISPDIR
-  (install-detect-elisp-directory PREFIX nil 'version-specific))
-
-;; It is generated by automatically. Please set variable `PREFIX'.
-;; If you don't like default directory tree, please set it.
-(defvar LISPDIR (install-detect-elisp-directory PREFIX))
-;; (setq install-default-elisp-directory "~/lib/emacs/lisp")
-
-(defvar PACKAGEDIR
-  (if (boundp 'early-packages)
-      (let ((dirs (append (if early-package-load-path
-                             early-packages)
-                         (if late-package-load-path
-                             late-packages)
-                         (if last-package-load-path
-                             last-packages)))
-           dir)
-       (while (not (file-exists-p (setq dir (car dirs))))
-         (setq dirs (cdr dirs)) )
-       dir )))
-
-(defconst liece-config-info-file-regexp
-  (concat "^liece-faq\\.info\\(-[0-9]+\\)?$"))
-
-;;; liece-config.el ends here
diff --git a/lisp/liece-ctcp.el b/lisp/liece-ctcp.el
deleted file mode 100644 (file)
index 1a0b605..0000000
+++ /dev/null
@@ -1,604 +0,0 @@
-;;; liece-ctcp.el --- CTCP handlers and commands.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1998-11-25
-;; Keywords: IRC, liece, CTCP
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile (require 'liece-inlines))
-
-(require 'liece-handler)
-
-(require 'pccl)
-
-(if-broken ccl-usable
-    (require 'liece-q-el)
-  (require 'liece-q-ccl))
-
-(require 'liece-x-face)
-
-(autoload 'liece-ctcp-dcc-message "liece-dcc")
-
-(eval-and-compile
-  (defconst liece-ctcp-supported-symbols
-    '(version userinfo clientinfo ping time x-face comment help)))
-
-(defun liece-ctcp-make-menu-command-wrapper (symbol)
-  (fset (intern (format "liece-menu-callback-ctcp-%s" symbol))
-       `(lambda ()
-          (interactive)
-          (dolist (nick liece-nick-region-nicks)
-            (funcall (symbol-function
-                      (intern (format "liece-command-ctcp-%s" ',symbol)))
-                     nick)))))
-
-(dolist (symbol liece-ctcp-supported-symbols)
-  (liece-ctcp-make-menu-command-wrapper symbol))
-            
-(defvar liece-ctcp-message
-  (eval-when-compile
-    (concat liece-client-prefix "%s(%s) = %s"))
-  "Message in which info of other clients is displayed.")
-
-(defvar liece-ctcp-buffer (append liece-D-buffer liece-O-buffer))
-
-(defvar liece-ctcp-ping-time '(0 0 0))
-
-(defvar liece-ctcp-last-command nil
-  "The last command executed.")
-
-(defvar liece-ctcp-last-nick nil
-  "The last nick being queried.")
-
-(defconst liece-ctcp-error-message "Unrecognized command: '%s'"
-  "Error message given to anyone asking wrong CLIENT data.")
-
-(defun liece-ctcp-last-nick-maybe-change (prefix rest)
-  (if (equal prefix liece-ctcp-last-nick)
-      (setq liece-ctcp-last-nick rest))
-  nil)
-
-(defun liece-ctcp-last-nick-maybe-reset (prefix rest)
-  (if (equal prefix liece-ctcp-last-nick)
-      (setq liece-ctcp-last-nick nil)))
-
-(add-hook 'liece-nick-hook 'liece-ctcp-last-nick-maybe-change t)
-(add-hook 'liece-quit-hook 'liece-ctcp-last-nick-maybe-reset)
-  
-(defcustom liece-ctcp-file-save-directory liece-directory
-  "Directory to save received files."
-  :type 'directory
-  :group 'liece-ctcp)
-  
-(liece-handler-define-backend "ctcp-message")
-
-(defmacro liece-register-ctcp-message-handler (name)
-  `(liece-handler-define-function
-    ,name '(from chnl data "ctcp-message")
-    ',(intern (format "liece-ctcp-%s-message" name))))
-
-(liece-register-ctcp-message-handler "version")
-(liece-register-ctcp-message-handler "userinfo")
-(liece-register-ctcp-message-handler "clientinfo")
-(liece-register-ctcp-message-handler "ping")
-(liece-register-ctcp-message-handler "time")
-(liece-register-ctcp-message-handler "file")
-(liece-register-ctcp-message-handler "x-face")
-(liece-register-ctcp-message-handler "comment")
-(liece-register-ctcp-message-handler "help")
-(liece-register-ctcp-message-handler "action")
-(liece-register-ctcp-message-handler "dcc")
-(liece-register-ctcp-message-handler "errmsg")
-
-(defun* liece-ctcp-message (from chnl rest)
-  (or (string-match "^\\([^\001]*\\)\001\\([^\001]*\\)\001" rest)
-      (return-from liece-ctcp-message))
-  (let (hook after-hook data message)
-    (setq data (match-string 2 rest)
-         rest (concat
-               (match-string 1 rest)
-               (substring rest (match-end 0))))
-    (if (string-match "^\\([^ ]*\\) *:?" data)
-       (setq message (downcase (match-string 1 data))
-             data (substring data (match-end 0)))
-      (setq message "errmsg"
-           data (_ "Couldn't figure out what was said.")))
-    (setq hook
-         (intern-soft
-          (concat "liece-ctcp-" message "-hook"))
-         after-hook
-         (intern-soft
-          (concat "liece-after-ctcp-" message "-hook")))
-    (if (run-hook-with-args-until-success hook from chnl data)
-       (return-from liece-ctcp-message rest))
-    (let ((func
-          (liece-handler-find-function
-           message '(from chnl data) "ctcp-message")))
-      (if func
-         (funcall func from chnl data)
-       (liece-ctcp-messages message from chnl data))
-      (run-hook-with-args after-hook from chnl data))
-    rest))
-
-(defun liece-ctcp-messages (message from chnl rest)
-  (liece-send "NOTICE %s :\001ERRMSG %s :%s\001"
-              from (upcase message)
-              (format liece-ctcp-error-message
-                      (upcase message)))
-  (setq chnl (liece-channel-virtual chnl))
-  (liece-ctcp-insert (upcase message) from chnl rest))
-
-(defun liece-ctcp-action-message (from chnl rest)
-  "CTCP ACTION handler."
-  (let ((liece-message-target (liece-channel-virtual chnl))
-       (liece-message-speaker from)
-       (liece-message-type 'action))
-    (liece-display-message rest)))
-
-(defun liece-ctcp-insert (message from &optional chnl rest)
-  (if (or (null chnl)
-         (liece-nick-equal chnl liece-real-nickname))
-      (liece-message "%s query from %s." message from)
-    (liece-message "%s query from %s (%s)." message from chnl)
-    (liece-insert-client
-     (liece-pick-buffer chnl)
-     (format "%s query from %s%s\n"
-            message from (if rest (concat ":" rest) "")))))
-
-(defun liece-ctcp-version-message (from chnl rest)
-  "CTCP VERSION handler."
-  (liece-send "NOTICE %s :\001VERSION %s :\001"
-             from (liece-version))
-  (setq chnl (liece-channel-virtual chnl))
-  (liece-ctcp-insert "VERSION" from chnl rest))
-
-(defun liece-ctcp-userinfo-message (from chnl rest)
-  "CTCP USERINFO handler."
-  (liece-send "NOTICE %s :\001USERINFO %s\001"
-             from liece-ctcp-userinfo)
-  (setq chnl (liece-channel-virtual chnl))
-  (liece-ctcp-insert "USERINFO" from chnl))
-
-(defun liece-ctcp-clientinfo-message (from chnl rest)
-  "CTCP CLIENTINFO handler."
-  (liece-send "NOTICE %s :\001CLIENTINFO %s\001"
-             from
-             (eval-when-compile
-               (mapconcat 
-                (lambda (symbol) (upcase (symbol-name symbol)))
-                liece-ctcp-supported-symbols " ")))
-  (setq chnl (liece-channel-virtual chnl))
-  (liece-ctcp-insert "CLIENTINFO" from chnl))
-
-(defvar liece-ctcp-help-message
-  "This is a help message for CTCP requests.
-\"VERSION\" gives version of this client.
-\"USERINFO\" gives user supplied information if any.
-\"CLIENTINFO\" gives commands this client knows.
-\"PING\" returns the arguments it receives.
-\"TIME\" tells you the time on the user's host.
-\"FILE\" send a small file via IRC messages.
-\"X-FACE\" gives you user supplied X-Face.
-\"COMMENT\" returns string sent by other person.
-\"HELP\" gives this help message"
-  "Help message for CTCP requests.")
-  
-(defun liece-ctcp-help-message (from chnl rest)
-  "CTCP HELP handler."
-  (liece-send
-   "NOTICE %s :\001HELP %s\001"
-   from (liece-quote-encode-string liece-ctcp-help-message))
-  (setq chnl (liece-channel-virtual chnl))
-  (liece-ctcp-insert "HELP" from chnl))
-
-(defun liece-ctcp-comment-message (from chnl rest)
-  "CTCP COMMENT handler."
-  (setq chnl (liece-channel-virtual chnl))
-  (liece-ctcp-insert "COMMENT" from chnl))
-
-(defun liece-ctcp-ping-message (from chnl rest)
-  "CTCP PING handler."
-  (liece-send "NOTICE %s :\001PING %s\001" from rest)
-  (setq chnl (liece-channel-virtual chnl))
-  (liece-ctcp-insert "PING" from chnl))
-
-(defun liece-ctcp-time-message (from chnl rest)
-  "CTCP TIME handler."
-  (liece-send "NOTICE %s :\001TIME %s\001"
-             from (funcall liece-format-time-function
-                           (current-time)))
-  (setq chnl (liece-channel-virtual chnl))
-  (liece-ctcp-insert "TIME" from chnl))
-
-(defun liece-ctcp-x-face-message (from chnl rest)
-  "CTCP X-FACE handler."
-  (liece-send "NOTICE %s :\001X-FACE %s\001"
-             from liece-ctcp-x-face)
-  (setq chnl (liece-channel-virtual chnl))
-  (liece-ctcp-insert "X-FACE" from chnl))
-
-(liece-handler-define-backend "ctcp-notice")
-
-(defmacro liece-register-ctcp-notice-handler (name)
-  `(liece-handler-define-function
-    ,name '(prefix rest "ctcp-notice")
-    ',(intern (format "liece-ctcp-%s-notice" name))))
-
-(liece-register-ctcp-notice-handler "version")
-(liece-register-ctcp-notice-handler "userinfo")
-(liece-register-ctcp-notice-handler "clientinfo")
-(liece-register-ctcp-notice-handler "ping")
-(liece-register-ctcp-notice-handler "time")
-(liece-register-ctcp-notice-handler "file")
-(liece-register-ctcp-notice-handler "x-face")
-(liece-register-ctcp-notice-handler "comment")
-(liece-register-ctcp-notice-handler "help")
-(liece-register-ctcp-notice-handler "dcc")
-(liece-register-ctcp-notice-handler "errmsg")
-
-(defun* liece-ctcp-notice (prefix rest)
-  (or (string-match "^\\([^\001]*\\)\001\\([^\001]*\\)\001" rest)
-      (return-from liece-ctcp-notice))
-  (let (hook after-hook data message)
-    (setq data (match-string 2 rest)
-         rest (concat
-               (match-string 1 rest)
-               (substring rest (match-end 0))))
-    (if (string-match "^\\([^ ]*\\) *:?" data)
-       (setq message (downcase (match-string 1 data))
-             data (substring data (match-end 0)))
-      (setq message "errmsg"
-           data (_ "Couldn't figure out what was said.")))
-    (setq hook
-         (intern-soft
-          (concat "liece-ctcp-" message "-notice-hook"))
-         after-hook
-         (intern-soft
-          (concat "liece-after-ctcp-" message "-notice-hook")))
-    (if (run-hook-with-args-until-success hook prefix data)
-       (return-from liece-ctcp-notice rest))
-    (let ((func
-          (liece-handler-find-function
-           message '(prefix data) "ctcp-notice")))
-      (if func
-         (funcall func prefix data)
-       (liece-ctcp-notices message prefix data)))
-    (run-hook-with-args after-hook prefix data)
-    rest))
-
-(defun liece-ctcp-notices (message prefix rest)
-  (liece-message
-   (_ "Unknown ctcp notice \":%s %s %s\"")
-   prefix (upcase message) rest))
-
-(liece-handler-define-backend "ctcp-file")
-
-(defmacro liece-register-file-handler (name)
-  `(liece-handler-define-function
-    ,name '(prefix name data "ctcp-file")
-    ',(intern (format "liece-file-%s" name))))
-
-(liece-register-file-handler "start")
-(liece-register-file-handler "cont")
-(liece-register-file-handler "end")
-
-(defun* liece-ctcp-file-notice (prefix rest)
-  (when liece-file-accept
-    (multiple-value-bind (message name data)
-       (liece-split-line rest)
-      (setq message (downcase message))
-      (let ((hook
-            (intern-soft
-             (concat "liece-file-" message "-hook")))
-           (after-hook
-            (intern-soft
-             (concat "liece-after-file-" message "-hook")))
-           func)
-       (if (run-hook-with-args-until-success hook prefix name)
-           (return-from liece-ctcp-file-notice))
-       (setq func (liece-handler-find-function
-                   message '(prefix name data) 'ctcp-file))
-       (if func
-           (funcall func prefix name data)
-         (liece-file-notices message prefix name data))
-       (run-hook-with-args after-hook prefix name)))))
-
-(defun liece-file-notices (message prefix name data)
-  (liece-message
-   (_ "Unknown FILE message \":%s %s %s %s\"")
-   prefix (upcase message) name data))
-
-(defun liece-file-start (prefix name data)
-  "CTCP FILE start handler."
-  (save-excursion
-    (set-buffer
-     (liece-get-buffer-create
-      (format " *ctcp-file:%s*" name)))
-    (buffer-disable-undo)
-    (set-buffer-multibyte nil)
-    (erase-buffer)
-    (insert data)))
-
-(defun liece-file-cont (prefix name data)
-  "CTCP FILE cont handler."
-  (save-excursion
-    (set-buffer
-     (liece-get-buffer-create
-      (format " *ctcp-file:%s*" name)))
-    (goto-char (point-max))
-    (insert data)))
-
-(defun liece-file-end (prefix name data)
-  "CTCP FILE cont handler."
-  (save-excursion
-    (set-buffer
-     (liece-get-buffer-create
-      (format " *ctcp-file:%s*" name)))
-    (goto-char (point-max))
-    (insert data)
-    (liece-quote-decode-region (point-min)(point-max))
-    (goto-char (point-min))
-    (when (or (null liece-file-confirm-save)
-             (y-or-n-p "Save file? "))
-      (or (file-directory-p liece-ctcp-file-save-directory)
-         (make-directory liece-ctcp-file-save-directory))
-      (write-region-as-binary
-       (point-min)(point-max)
-       (expand-file-name
-       (file-name-nondirectory
-        (concat name "-" prefix))
-       liece-ctcp-file-save-directory))
-      (kill-buffer (current-buffer)))))
-
-(defun liece-ctcp-version-insert (buffer prefix name
-                                        &optional version environment)
-  (or (listp buffer)
-      (setq buffer (list buffer)))
-  (liece-insert buffer
-               (concat (format liece-ctcp-message
-                               "VERSION" prefix "")
-                       name "\n"))
-  (when version
-    (liece-insert buffer
-                 (concat (format liece-ctcp-message
-                                 "VERSION" prefix "")
-                         "\t" version
-                         (if environment
-                             (concat " " environment))
-                         "\n"))))
-
-(defun liece-ctcp-version-notice (prefix rest)
-  "CTCP VERSION reply handler."
-  (if (null rest)
-      (liece-message (_ "Empty CLIENT version notice from \"%s\".") prefix)
-    (cond
-     ((string-match "^\\([^:]*\\):\\([^:]+\\):?\\([^:]*\\)" rest)
-      (liece-ctcp-version-insert liece-ctcp-buffer
-                                prefix (match-string 1 rest)
-                                (match-string 2 rest)
-                                (match-string 3 rest)))
-     ((string-match "^\\([^:]*\\):\\(.*\\)" rest)
-      (liece-ctcp-version-insert liece-ctcp-buffer
-                                prefix (match-string 1 rest)))
-     (t
-      (liece-ctcp-version-insert liece-ctcp-buffer prefix rest)))))
-
-(defun liece-ctcp-clientinfo-notice (prefix rest)
-  "CTCP CLIENTINFO reply handler."
-  (liece-insert liece-ctcp-buffer
-                (format (concat liece-ctcp-message "\n")
-                        "CLIENTINFO" prefix rest)))
-
-(defun liece-ctcp-userinfo-notice (prefix rest)
-  "CTCP USERINFO reply handler."
-  (liece-insert liece-ctcp-buffer
-                (format (concat liece-ctcp-message "\n")
-                        "USERINFO" prefix rest)))
-
-(defun liece-ctcp-help-notice (prefix rest)
-  "CTCP HELP reply handler."
-  (liece-insert liece-ctcp-buffer
-                (format (concat liece-ctcp-message "\n")
-                        "HELP" prefix rest)))
-
-(defun liece-ctcp-x-face-notice (prefix rest)
-  "CTCP X-FACE reply handler."
-  (let ((buffer liece-ctcp-buffer))
-    (liece-insert buffer
-                  (format liece-ctcp-message
-                          "X-FACE" prefix ""))
-    (if (and liece-use-x-face
-            (string-match "[^ \t]" rest))
-       (liece-x-face-insert
-        buffer (replace-in-string rest "[ \t\r\n]+" "") prefix)
-      (liece-insert buffer rest))
-    (let (liece-display-time)
-      (liece-insert buffer "\n"))))
-
-(defun liece-ctcp-errmsg-notice (prefix rest)
-  "CTCP ERRMSG reply handler."
-  (liece-insert liece-ctcp-buffer
-                (format (concat liece-ctcp-message "\n")
-                        "ERRMSG" prefix rest)))
-
-(defun liece-ctcp-comment-notice (from rest)
-  "CTCP COMMENT reply handler."
-  (liece-insert liece-ctcp-buffer
-                (format (concat liece-ctcp-message "\n")
-                        "COMMENT" from rest))
-  (liece-message "COMMENT query from %s." from))
-
-(defmacro liece-ctcp-prepare-ping-seconds (timenow)
-  `(format (_ "%d sec")
-          (+ (* 65536 (- (car ,timenow) (car liece-ctcp-ping-time)))
-             (- (cadr ,timenow) (cadr liece-ctcp-ping-time)))))
-
-(defun liece-ctcp-ping-notice (from rest)
-  "CTCP PING reply handler."
-  (let ((timenow (current-time)))
-    (liece-insert liece-ctcp-buffer
-                  (format (concat liece-ctcp-message "\n")
-                          "PING" from
-                          (liece-ctcp-prepare-ping-seconds timenow)))))
-
-(defun liece-ctcp-time-notice (from rest)
-  "CTCP TIME reply handler."
-  (liece-insert liece-ctcp-buffer
-               (format (concat liece-ctcp-message "\n")
-                       "TIME" from rest)))
-
-(defmacro liece-complete-client ()
-  '(let ((completion-ignore-case t) (nick liece-ctcp-last-nick))
-     (liece-minibuffer-completing-read
-      (_ "Whose client: ") liece-nick-alist nil nil nil nil
-      (if nick (liece-channel-virtual nick)))))
-
-(defun liece-minibuffer-complete-client-query ()
-  (let* ((alist
-         (eval-when-compile
-           (list-to-alist
-            (mapcar
-             (lambda (symbol) (downcase (symbol-name symbol)))
-             liece-ctcp-supported-symbols))))
-        (candidate (liece-minibuffer-prepare-candidate))
-        (completion (try-completion candidate alist))
-        (all (all-completions candidate alist)))
-    (liece-minibuffer-finalize-completion completion candidate all)))
-
-(defmacro liece-complete-query ()
-  '(let ((completion-ignore-case t)
-        (liece-minibuffer-complete-function
-         (function liece-minibuffer-complete-client-query)))
-     (read-from-minibuffer
-      (_ "Which query: ") liece-ctcp-last-command
-      liece-minibuffer-map)))
-
-(defun liece-ctcp-make-command-wrapper (symbol)
-  (fset (intern (format "liece-command-ctcp-%s" symbol))
-       `(lambda (client)
-          (interactive (list (liece-complete-client)))
-          (setq client (liece-channel-real client)
-                liece-ctcp-last-nick client
-                ,@(if (eq symbol 'ping)
-                      '(liece-ctcp-ping-time
-                        (current-time))))
-          (liece-send "PRIVMSG %s :\001%s\001"
-                      client (upcase (symbol-name ',symbol))))))
-
-(dolist (symbol liece-ctcp-supported-symbols)
-  (liece-ctcp-make-command-wrapper symbol))
-
-(defun liece-command-ctcp-action (&optional arg)
-  "Send CTCP action."
-  (interactive
-   (if current-prefix-arg
-       (list current-prefix-arg)))
-  (let ((completion-ignore-case t)
-       (liece-message-type 'action)
-       message)
-    (if arg
-       (setq liece-privmsg-partner 
-             (liece-channel-virtual
-              (liece-minibuffer-completing-read 
-               (_ "To whom: ")
-               (append liece-nick-alist liece-channel-alist)
-               nil nil nil nil liece-privmsg-partner))))
-    (beginning-of-line)
-    (setq message (buffer-substring (point)(progn (end-of-line)(point))))
-    (if (string= message "")
-       (setq message (read-string "Action: "))
-      (liece-next-line 1))
-    (liece-send "PRIVMSG %s :\001ACTION %s\001"
-                (if arg
-                    liece-privmsg-partner
-                  (liece-channel-real liece-current-channel))
-                message)
-    (if arg
-       (liece-own-private-message message)
-      (liece-own-channel-message message))))
-
-(define-obsolete-function-alias 'liece-command-send-action
-  'liece-command-ctcp-action)
-
-;;;###liece-autoload
-(defun liece-command-ctcp-generic (nick command)
-  "Ask about someones client clientinfo."
-  (interactive (list (liece-complete-client) (liece-complete-query)))
-  (setq nick (liece-channel-real nick)
-       liece-ctcp-last-nick nick
-       liece-ctcp-last-command command)
-  (if (string-equal-ignore-case liece-ctcp-last-command "ping")
-      (setq liece-ctcp-ping-time (current-time)))
-  (liece-send "PRIVMSG %s :\001%s\001" nick command))
-
-;;;###liece-autoload
-(defun liece-command-ctcp-userinfo-from-minibuffer (info)
-  "Ask about someones client clientinfo."
-  (interactive
-   (list (read-from-minibuffer "New userinfo: " liece-ctcp-userinfo)))
-  (setq liece-ctcp-userinfo info))
-
-;;;###liece-autoload
-(defun liece-command-ctcp-x-face-from-xbm-file (file)
-  (interactive "fXBM File: ")
-  (let (data)
-    (and (file-exists-p file) (file-readable-p file)
-        (setq data (liece-x-face-encode file))
-        (setq liece-ctcp-x-face
-              (replace-in-string (cadr (nth 3 data)) "[ \t\n]" "")))))
-
-;;;###liece-autoload
-(defun liece-command-send-file (file to)
-  "Send a file to given  user."
-  (interactive "fFile name: \nsTo whom: ")
-  (save-excursion
-    (set-buffer (liece-get-buffer-create (format " *ctcp-file:%s*" file)))
-    (buffer-disable-undo)
-    (set-buffer-multibyte nil)
-    (erase-buffer)
-    (insert-file-contents-as-binary file)
-    (liece-quote-encode-region (point-min)(point-max))
-    (goto-char (point-min))
-    (let ((bound (min (point-max) (+ 80 (point))))
-         (liece-mime-charset-for-write 'binary))
-      (liece-send
-       "NOTICE %s :\001FILE START %s :%s\001"
-       to file (buffer-substring (point) bound))
-      (goto-char bound)
-      (while (not (eobp))
-       (if (= 1 (mod (point) 800))
-           (sit-for 1))
-       (setq bound (min (point-max) (+ 80 (point))))
-       (liece-send "NOTICE %s :\001FILE CONT %s :%s\001"
-                   to file (buffer-substring (point) bound))
-       (goto-char bound)))
-    (liece-send "NOTICE %s :\001FILE END %s : \001" to file)
-    (kill-buffer (current-buffer))))
-
-(provide 'liece-ctcp)
-
-;;; liece-ctcp.el ends here
diff --git a/lisp/liece-dcc.el b/lisp/liece-dcc.el
deleted file mode 100644 (file)
index 4963610..0000000
+++ /dev/null
@@ -1,405 +0,0 @@
-;;; liece-dcc.el --- DCC handlers and commands.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1998-11-25
-;; Keywords: IRC, liece, DCC
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile
-  (require 'liece-intl)
-  (require 'liece-inlines)
-  (require 'liece-channel))
-
-(eval-when-compile (require 'queue-m))
-
-(require 'liece-coding)
-(require 'liece-misc)
-(require 'liece-minibuf)
-
-(defvar liece-dcc-requests (queue-create))
-(defvar liece-dcc-receive-direct t)
-(defvar liece-dcc-process-alist nil)
-
-(defconst liece-dcc-acceptable-messages '("SEND" "CHAT"))
-
-(defstruct liece-dcc-object type from host port file size)
-
-(defun liece-dcc-enqueue-request (type &rest args)
-  (let ((request (apply #'make-liece-dcc-object :type type args)))
-    (inline (queue-enqueue liece-dcc-requests request))))
-
-(defun liece-dcc-dequeue-request (&optional type)
-  (when (or (not type)
-           (eq (liece-dcc-object-type
-                (queue-first liece-dcc-requests))
-               type))
-    (inline (queue-dequeue liece-dcc-requests))))
-
-(defmacro liece-dcc-add-to-process-alist (process type &rest args)
-  `(push (cons (process-name ,process)
-              (make-liece-dcc-object :type ,type ,@args))
-        liece-dcc-process-alist))
-
-(defmacro liece-dcc-get-process-object (process)
-  `(cdr (assoc (process-name ,process) liece-dcc-process-alist)))
-
-(defmacro liece-dcc-message (&rest msg)
-  `(message "DCC %s" (format ,@msg)))
-
-(defun* liece-ctcp-dcc-message (from chnl rest)
-  (cond
-   ((string-match "^SEND +" rest)
-    (multiple-value-bind (filename host port size)
-       (split-string (substring rest (match-end 0)))
-      (setq filename (file-name-nondirectory filename))
-      (liece-insert-dcc
-       (append liece-O-buffer liece-D-buffer)
-       (format (_ "SEND request from %s: %s (%s bytes)\n")
-              from filename size))
-      (liece-dcc-enqueue-request
-       'send :from from :host host :port port :file filename :size size)
-      (when liece-dcc-receive-direct
-       (liece-insert-dcc
-        (append liece-O-buffer liece-D-buffer)
-        (format (_ "SEND applied autoreceive: %s (%s bytes)\n")
-                filename size))
-       (liece-command-dcc-receive))))
-   ((string-match "^CHAT [^ ]+ +" rest)
-    (multiple-value-bind (host port)
-       (split-string (substring rest (match-end 0)))
-      (liece-dcc-enqueue-request 'chat :from from :host host :port port)
-      (liece-insert-dcc
-       (append liece-O-buffer liece-D-buffer)
-       (concat "CHAT request from " from "\n"))))))
-
-(defun liece-command-dcc-send (filename towhom)
-  "Send file to user."
-  (interactive
-   (list (expand-file-name
-         (read-file-name
-          (_ "File to send: ")
-          default-directory nil))
-        (liece-minibuffer-completing-read
-         (_ "To whom: ")
-         (append liece-nick-alist liece-channel-alist)
-         nil nil nil nil liece-privmsg-partner)))
-
-  (setq liece-privmsg-partner towhom)
-  (let (process)
-    (setq process (start-process
-                  liece-dcc-program nil liece-dcc-program
-                  "send" (int-to-string liece-dcc-port) filename))
-    (set-process-filter process #'liece-dcc-send-filter)
-    (set-process-sentinel process #'liece-dcc-sentinel))
-  (or (zerop liece-dcc-port)
-      (incf liece-dcc-port)))
-
-(defun liece-dcc-sentinel (process output)
-  (let* ((object (liece-dcc-get-process-object process))
-        (type (liece-dcc-object-type object)))
-    (if (null object)
-        (delete-process process)
-      (if (string-match "^finished" output)
-         (cond
-          ((eq type 'send)
-           (liece-dcc-message (_ "Sent file to %s: %s (%s bytes)")
-                              (liece-dcc-object-from object)
-                              (liece-dcc-object-file object)
-                              (liece-dcc-object-size object)))
-          ((eq type 'receive)
-           (liece-dcc-message (_ "Received file from %s: %s (%s bytes)")
-                              (liece-dcc-object-from object)
-                              (liece-dcc-object-file object)
-                              (liece-dcc-object-size object)))
-          ((eq type 'chat)
-           (liece-dcc-message (_ "Chat connection with %s finished")
-                              (liece-dcc-object-from object))))
-       (liece-dcc-message
-        (_ "%s error (%s %s %s) is %s\n")
-        (capitalize (downcase (prin1-to-string
-                               (liece-dcc-object-type object))))
-        (or (liece-dcc-object-file object) "")
-        (cond ((eq type 'send) "to")
-              ((eq type 'receive) "from")
-              ((eq type 'chat) "with"))
-        (liece-dcc-object-from object)
-        (substring output 0 (1- (length output))))))))
-
-(defun liece-dcc-send-filter (process output)
-  (if (string-match "DCC send +" output)
-      (multiple-value-bind (filename port host size)
-         (split-string (substring output (match-end 0)))
-       (setq filename (file-name-nondirectory filename))
-       (liece-send "PRIVMSG %s :\001DCC SEND %s %s %s %s\001"
-                   liece-privmsg-partner filename host port size)
-       (liece-dcc-message (_ "Sending file to %s: %s (%s bytes)")
-                          liece-privmsg-partner filename size)
-       (liece-dcc-add-to-process-alist process 'send
-                                       :host host
-                                       :port port
-                                       :from liece-privmsg-partner
-                                       :file filename
-                                       :size size))
-    (liece-dcc-message (_ "send error to %s: %s")
-                      liece-privmsg-partner
-                      (substring output 0 (1- (length output))))))
-
-(defmacro liece-dcc-prepare-directory ()
-  '(or (file-directory-p (expand-file-name liece-dcc-directory))
-       (and (y-or-n-p (_ "DCC directory does not exist. Create it? "))
-           (make-directory (expand-file-name liece-dcc-directory)))))
-
-(defun liece-command-dcc-receive (&optional number)
-  "Receive next file from list."
-  (interactive "P")
-  (let ((object (liece-dcc-dequeue-request 'send)))
-    (if (not object)
-       (liece-message (_ "DCC No send request has been arrived."))
-      (liece-dcc-message (_ "Getting file from %s: %s (%s bytes)")
-                         (liece-dcc-object-from object)
-                         (liece-dcc-object-file object)
-                         (liece-dcc-object-size object))
-      (liece-dcc-prepare-directory)
-      (let ((file
-            (expand-file-name
-             (liece-dcc-object-file object)
-             liece-dcc-directory))
-           process)
-       (setq process
-             (start-process
-              liece-dcc-program nil liece-dcc-program
-              "receive"
-              (liece-dcc-object-host object)
-              (liece-dcc-object-port object)
-              (liece-dcc-object-size object)
-              (expand-file-name
-               (liece-dcc-object-file object)
-               liece-dcc-directory)))
-       (set-process-filter process #'liece-dcc-receive-filter)
-       (set-process-sentinel process  #'liece-dcc-sentinel)
-       (liece-dcc-add-to-process-alist
-        process 'receive
-        :from (liece-dcc-object-from object)
-        :host (liece-dcc-object-host object)
-        :port (liece-dcc-object-port object)
-        :file file
-        :size (liece-dcc-object-size object))))))
-
-(defun liece-dcc-receive-filter (process output)
-  (liece-dcc-message "%s" (substring output 0 (1- (length output)))))
-
-(defun liece-command-dcc-chat-listen (towhom)
-  (interactive
-   (list (liece-minibuffer-completing-read
-         (_ "With whom: ")
-         (append liece-nick-alist liece-channel-alist)
-         nil nil nil nil liece-privmsg-partner)))
-  (setq liece-privmsg-partner towhom)
-  (let (process)
-    (as-binary-process
-     (setq process
-          (start-process
-           liece-dcc-program nil
-           liece-dcc-program "chat" "listen"
-           (int-to-string liece-dcc-port)))
-     (set-process-buffer
-      process
-      (liece-get-buffer-create (format " DCC:%s" (process-id process))))
-     (set-process-filter process 'liece-dcc-chat-listen-filter)
-     (set-process-sentinel process 'liece-dcc-sentinel)))
-  (unless (zerop liece-dcc-port)
-    (setq liece-dcc-port (1+ liece-dcc-port))))
-
-(defun liece-dcc-chat-listen-filter (process output)
-  (cond
-   ((string-match "DCC chat +" output)
-    (multiple-value-bind (host port)
-       (split-string (substring output (match-end 0)))
-      (liece-send "PRIVMSG %s :\001DCC CHAT chat %s %s\001"
-                 liece-privmsg-partner host port)
-      (liece-dcc-message (_ "Ringing user %s")
-                        liece-privmsg-partner)
-      (liece-dcc-add-to-process-alist
-       process 'chat :from liece-privmsg-partner)))
-   ((string-match "^DCC chat established" output)
-    (set-process-filter process 'liece-dcc-chat-filter)
-    (let* ((object (liece-dcc-get-process-object process))
-          (nick (liece-dcc-object-from object)))
-      (setq nick (liece-channel-prepare-representation nick 'dcc))
-      (liece-channel-prepare-partner nick)
-      (liece-dcc-message (_ "Chat connection established with: %s")
-                        nick))
-    (message ""))
-   (t
-    (liece-dcc-message (_ "listen error to %s: %s")
-                      liece-privmsg-partner
-                      (substring output 0 (1- (length output)))))))
-
-(defun liece-command-dcc-chat-connect (&optional number)
-  (interactive "P")
-  (let* ((object (liece-dcc-dequeue-request 'chat))
-        (nick (liece-dcc-object-from object))
-        process)
-    (if (not object)
-       (liece-message (_ "DCC No chat request has been arrived."))
-      (liece-dcc-message (_ "Connecting to: %s") nick)
-      (setq liece-privmsg-partner nick)
-      (as-binary-process
-       (setq process
-            (start-process liece-dcc-program nil
-                           liece-dcc-program "chat" "connect"
-                           (liece-dcc-object-host object)
-                           (liece-dcc-object-port object)))
-       (set-process-buffer
-       process
-       (liece-get-buffer-create
-        (format " DCC:%s" (process-id process))))
-       (set-process-filter process #'liece-dcc-chat-connect-filter)
-       (set-process-sentinel process #'liece-dcc-sentinel)
-       (liece-dcc-add-to-process-alist
-       process 'chat :from liece-privmsg-partner)))))
-
-(defun liece-dcc-chat-connect-filter (process output)
-  (if (string-match "^DCC chat established" output)
-      (let* ((object (liece-dcc-get-process-object process))
-            (nick (liece-dcc-object-from object)))
-       (set-process-filter process #'liece-dcc-chat-filter)
-       (setq nick (liece-channel-prepare-representation nick 'dcc))
-       (liece-channel-prepare-partner nick)
-       (liece-dcc-message (_ "Chat connection established with: %s")
-                          nick)
-       (message ""))
-    (liece-dcc-message
-     (_ "connect error to %s: %s")
-     liece-privmsg-partner
-     (substring output 0 (1- (length output))))))
-
-(defun liece-dcc-chat-filter (process output)
-  (save-match-data
-    (with-current-buffer (process-buffer process)
-      (let* ((object (liece-dcc-get-process-object process))
-            (nick (liece-channel-prepare-representation
-                   (liece-dcc-object-from object) 'dcc)))
-       (goto-char (point-max))
-       (insert output)
-       (goto-char (point-min))
-       (while (search-forward "\n\n" (point-max) t)
-         (delete-char -1))
-       (goto-char (point-min))
-       (when (string-match "\n" output)
-         (let (st nd line)
-           (while (looking-at ".*\n")
-             (setq st (match-beginning 0) nd (match-end 0)
-                   line (liece-coding-decode-charset-string
-                         (buffer-substring st (1- nd))))
-             (delete-region st nd)
-             (let ((liece-message-target (liece-current-nickname))
-                   (liece-message-speaker nick))
-               (liece-display-message line)))))))))
-
-(defun liece-dcc-chat-nick-to-process (nick)
-  "Convert NICK to process symbol."
-  (let ((alist liece-dcc-process-alist)
-       pair)
-    (catch 'found
-      (while alist
-       (setq pair (pop alist))
-       (if (and (eq 'chat (cadr pair))
-                (liece-nick-equal nick (caddr pair)))
-           (throw 'found (car pair))))
-      nil)))
-
-(defun liece-dcc-chat-send (nick message)
-  "Send MSG string to NICK via DCC chat."
-  (let ((process (liece-dcc-chat-nick-to-process nick)))
-    (if (not process)
-       (liece-message (_ "DCC chat has not been started."))
-      (with-current-buffer liece-command-buffer
-       (setq message (liece-coding-encode-charset-string message)
-             message (if (string-match "\r$" message) message
-                       (concat message "\r\n")))
-       (process-send-string process message)))))
-
-(defun liece-command-dcc-accept ()
-  "Dispatch one DCC request."
-  (interactive)
-  (let* ((object (queue-first liece-dcc-requests))
-        (type (liece-dcc-object-type object)))
-    (cond ((eq type 'send)
-          (liece-command-dcc-receive))
-         ((eq type 'chat)
-          (liece-command-dcc-chat-connect))
-         (t
-          (liece-message
-           (_ "DCC No request has been arrived."))))))
-
-(defun liece-command-dcc-list ()
-  "List files in receive queue."
-  (interactive)
-  (if (queue-empty liece-dcc-requests)
-      (liece-dcc-message (_ "No DCC request here"))
-    (let ((i 0) (objects (queue-all liece-dcc-requests)) type)
-      (dolist (object objects)
-       (setq type (liece-dcc-object-type object))
-       (cond ((eq type 'send)
-              (liece-dcc-message
-               (_ "(%d) %s request %s: %s (%s bytes)")
-               i (upcase (symbol-name type))
-               (liece-dcc-object-from object)
-               (liece-dcc-object-file object)
-               (liece-dcc-object-size object)))
-             ((eq type 'chat)
-              (liece-dcc-message
-               (_ "(%d) %s request from %s")
-               i (upcase (symbol-name type))
-               (liece-dcc-object-from object))))
-       (incf i)))))
-
-(defun liece-dcc-compare-hostnames (h1 h2)
-  "Compare two internet domain hostnames. Return true iff they resolve to the
-same IP-address."
-  (or
-   (string-equal-ignore-case h1 h2)
-   (if liece-dcc-program
-       (let ((pob (liece-get-buffer-create "*IRC DCC resolve*"))
-            (output) (domatch nil))
-        (save-excursion
-          (call-process liece-dcc-program nil pob nil "resolve" h1 h2)
-          (set-buffer pob)
-          (goto-char (point-min))
-          (setq output (buffer-substring (point-min) (point-max)))
-          (if (string-match "\\([^ ]+\\)\n\\([^ ]+\\)\n" output)
-              (if (string= (match-string 1 output)
-                           (match-string 2 output))
-                  (setq domatch t))))
-        (kill-buffer pob)
-        domatch)
-     (string-equal-ignore-case h1 h2))))
-
-(provide 'liece-dcc)
-
-;;; liece-dcc.el ends here
diff --git a/lisp/liece-emacs.el b/lisp/liece-emacs.el
deleted file mode 100644 (file)
index dbd82a1..0000000
+++ /dev/null
@@ -1,276 +0,0 @@
-;;; liece-emacs.el --- FSF Emacs specific routines.
-;; Copyright (C) 1999 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1999-08-21
-;; Keywords: emulation
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile
-  (require 'static)
-  (require 'liece-compat)
-  (require 'liece-vars))
-
-(eval-when-compile (ignore-errors (require 'image)))
-
-(require 'derived)
-
-(eval-and-compile
-  (autoload 'bitmap-stipple-xbm-file-to-stipple "bitmap-stipple")
-  (autoload 'bitmap-stipple-insert-pixmap "bitmap-stipple"))
-
-;;; @ widget emulation
-;;; 
-(defvar liece-widget-keymap nil)
-
-(unless liece-widget-keymap
-  (require 'wid-edit)
-  (setq liece-widget-keymap (copy-keymap widget-keymap))
-  (substitute-key-definition
-   'widget-button-click 'liece-widget-button-click
-   liece-widget-keymap)
-  (define-key liece-widget-keymap [mouse-3]
-    'liece-widget-button-click))
-
-(defun liece-emacs-widget-convert-button (type from to &rest args)
-  (apply 'widget-convert-button type from to args)
-  (let ((map (copy-keymap liece-widget-keymap)))
-    (set-keymap-parent map (current-local-map))
-    (overlay-put (make-overlay from to) 'local-map map)))
-
-(defun liece-emacs-widget-button-click (event)
-  (interactive "e")
-  (let* ((window (posn-window (event-start event)))
-        (point (window-point window))
-        (buffer (window-buffer window)))
-    (with-current-buffer buffer
-      (unwind-protect
-         (progn
-           (goto-char (widget-event-point event))
-           (cond
-            ((widget-at (point)))
-            ((> (point) (save-excursion
-                          (widget-forward 0)
-                          (point)))
-             (widget-backward 0))
-            ((< (point) (save-excursion
-                          (widget-backward 0)
-                          (point)))
-             (widget-forward 0)))
-           (call-interactively (function widget-button-click)))
-       (if (windowp (setq window (get-buffer-window buffer)))
-           (set-window-point window point))))))
-
-(fset 'liece-widget-convert-button
-      'liece-emacs-widget-convert-button)
-(fset 'liece-widget-button-click
-      'liece-emacs-widget-button-click)
-
-;;; @ startup splash
-;;; 
-(defconst liece-splash-image
-  (eval-when-compile
-    (cond
-     ((and (fboundp 'image-type-available-p)
-          (image-type-available-p 'xpm))
-      (let ((file (expand-file-name "liece.xpm" default-directory)))
-       (if (file-exists-p file)
-           (list 'image
-                 :type 'xpm
-                 :data (with-temp-buffer
-                         (insert-file-contents-as-binary file)
-                         (buffer-string))))))
-     ((fboundp 'set-face-stipple)
-      (let ((file (expand-file-name "liece.xbm" default-directory)))
-       (if (file-exists-p file)
-           (bitmap-stipple-xbm-file-to-stipple file)))))))
-
-(defun liece-emacs-splash (&optional arg)
-  (interactive "P")
-  (let* ((font (cdr (assq 'font (frame-parameters))))
-        (liece-insert-environment-version nil)
-        config buffer pixel-width pixel-height)
-    (unwind-protect
-       (progn
-         (setq config (current-window-configuration))
-         (save-excursion
-           (setq buffer (generate-new-buffer
-                         (concat (if arg "*" " *")
-                                 (liece-version) "*")))
-           (switch-to-buffer buffer)
-           (erase-buffer)
-           (static-cond
-            ((and (fboundp 'image-type-available-p)
-                  (image-type-available-p 'xpm))
-             (with-temp-buffer
-               (insert (plist-get (cdr liece-splash-image) :data))
-               (goto-char (point-min))
-               (skip-syntax-forward "^\"")
-               (when (looking-at "\"[ \t]*\\([0-9]+\\)[ \t]*\\([0-9]+\\)")
-                 (setq pixel-width (string-to-int (match-string 1))
-                       pixel-height (string-to-int (match-string 2)))))
-             (insert (make-string (max 0 (/ (- (frame-height)
-                                               (/ pixel-height
-                                                  (frame-char-height)))
-                                            2))
-                                  ?\n)
-                     (make-string (max 0 (/ (- (frame-width)
-                                               (/ pixel-width
-                                                  (frame-char-width)))
-                                            2))
-                                  ?\ ))
-             (static-if (condition-case nil
-                            (progn (insert-image '(image)) nil)
-                          (wrong-number-of-arguments t))
-                 (insert-image liece-splash-image "x")
-               (insert-image liece-splash-image))
-             (insert "\n"))
-            (t
-             (bitmap-stipple-insert-pixmap liece-splash-image 'center)))
-           (insert "\n")
-           (insert-char ?\  (max 0 (/ (- (window-width)
-                                         (length (liece-version)))
-                                      2)))
-           (put-text-property (point) (prog2 (insert (liece-version))(point)
-                                        (insert "\n"))
-                              'face 'underline))
-         (or arg (sit-for 2)))
-      (unless arg
-       (kill-buffer buffer)
-       (set-window-configuration config)))))
-
-;;; @ modeline decoration
-;;; 
-(defconst liece-mode-line-image nil)
-
-(defun liece-emacs-create-mode-line-image ()
-  (static-when (fboundp 'image-type-available-p)
-    (let ((file (liece-locate-icon-file
-                (static-cond
-                 ((image-type-available-p 'xpm)
-                  "liece-pointer.xpm")
-                 ((image-type-available-p 'xbm)
-                  "liece-pointer.xbm")))))
-      (and file (file-exists-p file)
-          (create-image file nil nil :ascent 99)))))
-
-(defun liece-emacs-mode-line-buffer-identification (line)
-  (let ((id (copy-sequence (car line))) image)
-    (if (and (stringp id) (string-match "^Liece:" id)
-            (setq liece-mode-line-image
-                  (liece-emacs-create-mode-line-image)))
-       (progn
-         (add-text-properties 0 (length id)
-                              (list 'display
-                                    liece-mode-line-image
-                                    'rear-nonsticky (list 'display))
-                              id)
-         (setcar line id)))
-    line))
-
-(fset 'liece-mode-line-buffer-identification
-      'liece-emacs-mode-line-buffer-identification)
-
-;;; @ nick buffer decoration
-;;; 
-(defun liece-emacs-create-nick-image (file)
-  (static-when (and (fboundp 'image-type-available-p)
-                   (image-type-available-p 'xpm))
-    (let ((file (liece-locate-icon-file file)))
-      (and file (file-exists-p file)
-          (create-image file nil nil :ascent 99)))))
-
-(defun liece-emacs-nick-image-region (start end)
-  (save-excursion
-    (goto-char start)
-    (beginning-of-line)
-    (setq start (point))
-
-    (goto-char end)
-    (beginning-of-line 2)
-    (setq end (point))
-    
-    (save-restriction
-      (narrow-to-region start end)
-      (let ((buffer-read-only nil)
-           (inhibit-read-only t)
-           (case-fold-search nil)
-           mark image)
-       (dolist (entry liece-nick-image-alist)
-         (setq mark (car entry)
-               image (cdr entry))
-         (if (stringp image)
-             (setq image
-                   (setcdr entry (liece-emacs-create-nick-image image))))
-         (goto-char start)
-         (while (not (eobp))
-           (when (eq (char-after) mark)
-             (add-text-properties (point) (1+ (point))
-                                  (list 'display
-                                        image
-                                        'rear-nonsticky (list 'display))))
-           (beginning-of-line 2)))))))
-
-;;; @ unread mark
-;;; 
-(defun liece-emacs-unread-mark (chnl)
-  (if liece-display-unread-mark
-      (with-current-buffer liece-channel-list-buffer
-        (let ((buffer-read-only nil))
-         (goto-char (point-min))
-         (when (re-search-forward (concat "^ ?[0-9]+: " chnl "$") nil t)
-            (goto-char (match-end 0))
-           (insert (concat " " liece-channel-unread-character)))))))
-
-(defun liece-emacs-read-mark (chnl)
-  (if liece-display-unread-mark
-      (with-current-buffer liece-channel-list-buffer
-        (let ((buffer-read-only nil))
-         (goto-char (point-min))
-         (when (re-search-forward
-                (concat "^ ?[0-9]+: " chnl " "
-                        liece-channel-unread-character "$") nil t)
-            (goto-char (- (match-end 0) 2))
-           (delete-char 2))))))
-
-(defun liece-emacs-redisplay-unread-mark ()
-  (if liece-display-unread-mark
-      (dolist (chnl liece-channel-unread-list)
-        (liece-emacs-unread-mark chnl))))
-
-(add-hook 'liece-nick-insert-hook 'liece-emacs-nick-image-region)
-(add-hook 'liece-nick-replace-hook 'liece-emacs-nick-image-region)
-       
-(when (and (not liece-inhibit-startup-message)
-          liece-splash-image window-system)
-  (liece-emacs-splash))
-
-(fset 'liece-redisplay-unread-mark 'liece-emacs-redisplay-unread-mark)
-(add-hook 'liece-channel-unread-functions 'liece-emacs-unread-mark)
-(add-hook 'liece-channel-read-functions 'liece-emacs-read-mark)
-
-(provide 'liece-emacs)
-
-;;; liece-emacs.el ends here
diff --git a/lisp/liece-filter.el b/lisp/liece-filter.el
deleted file mode 100644 (file)
index fa5ef6f..0000000
+++ /dev/null
@@ -1,151 +0,0 @@
-;;; liece-filter.el --- Process filters for IRC process.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1998-11-25
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(require 'liece-inlines)
-(require 'liece-misc)
-(require 'liece-intl)
-(require 'liece-handler)
-
-(defvar liece-current-function nil)
-
-(defun* liece-handle-message (prefix message line)
-  (let ((hook (intern (concat "liece-" message "-hook")))
-       (after-hook (intern (concat "liece-after-" message "-hook")))
-       (number (car (read-from-string message)))
-       function)
-    (if (run-hook-with-args-until-success hook prefix line)
-       (return-from liece-handle-message))
-    (if (not (numberp number))
-       (setq function (liece-handler-find-function message '(prefix line) "generic"))
-      (let ((base (format "%03d" (- number (mod number 100)))))
-       (require (intern (concat "liece-" base)) nil 'noerror)
-       (setq function (liece-handler-find-function message '(prefix line) base))
-       (or function
-           (setq function
-                 (let ((default (concat "liece-handle-" base "-messages")))
-                   `(lambda (prefix line)
-                      (funcall (intern ,default) ,message prefix line)))))))
-    (if function
-       (funcall function prefix line))
-    (run-hook-with-args after-hook prefix line)))
-
-(defun liece-parse-user-at-host ()
-  (let ((cookie
-        (and (stringp liece-user-at-host)
-             (> (length liece-user-at-host) 2)
-             (string-to-char liece-user-at-host))))
-    (cond
-     ((null cookie)
-      (setq liece-user-at-host-type 'invalid))
-     ((or (eq cookie ?^) (eq cookie ?=))
-      (setq liece-user-at-host (substring liece-user-at-host 1)
-           liece-user-at-host-type 'fake))
-     ((or (eq cookie ?~) (eq cookie ?-))
-      (setq liece-user-at-host (substring liece-user-at-host 1)
-           liece-user-at-host-type 'not-verified))
-     ((eq cookie ?+)
-      (setq liece-user-at-host (substring liece-user-at-host 1)
-           liece-user-at-host-type 'ok))
-     (t (setq liece-user-at-host-type 'ok)))))
-
-(defun liece-parse-line (line)
-  (let (prefix message)
-    (when (or (string-match "^\\(:[^! ]*\\)!\\([^ ]*\\) +\\([^ ]+\\) +:?"
-                           line)
-             (string-match "^\\(:[^ ]*\\)?\\(\\) *\\([^ ]+\\) +:?"
-                           line)
-             (string-match "^\\(:[^! \t]*\\)!\\([^ \t]*\\) +\\([^ \t]+\\) +:?"
-                           line)
-             (string-match "^\\(:[^ ]*\\)?\\(\\) *\\([^ \t]+\\) +:?"
-                           line))
-      (setq prefix (if (match-beginning 1)
-                      (substring (match-string 1 line) 1))
-           liece-user-at-host (match-string 2 line)
-           message (downcase (match-string 3 line))
-           line (liece-coding-decode-charset-string
-                 (substring line (match-end 0))))
-      
-      (liece-parse-user-at-host)
-      (setq liece-current-function (list prefix message))
-      (liece-handle-message prefix message line)
-      (setq liece-current-function '("" "")))))
-
-(defun liece-filter (process output)
-  "Filter function for IRC server process."
-  (with-current-buffer (process-buffer process)
-    (goto-char (point-max))
-    (insert (liece-convert-received-input output))
-    (goto-char (point-min))
-    (while (progn (end-of-line) (and (not (eobp)) (eq (char-after) ?\n)))
-      (if (eq (char-after (1- (point))) ?\r) ; cut off preceding LF
-         (delete-region (1- (point)) (point)))
-      (liece-parse-line (buffer-substring (point-min) (point)))
-      (delete-region (point-min) (progn (beginning-of-line 2) (point))))))
-
-(defun liece-sentinel (proc status)
-  "Sentinel function for Liece process."
-  (cond
-   ((or (not liece-server-process) (liece-server-opened)))
-   ((not (or liece-reconnect-automagic liece-reconnect-with-password))
-    (if (process-id proc)
-       (liece-sentinel-error proc status)
-      (liece-message (_ "Connection closed. (%s)")
-                     (substring status 0 (1- (length status)))))
-    (liece-clear-system))
-   (liece-reconnect-with-password
-    (liece))
-   (t
-    (condition-case nil
-       (progn
-         (set-process-filter liece-server-process nil)
-         (set-process-sentinel liece-server-process nil))
-      (wrong-type-argument nil))
-    (setq liece-server-process nil)
-    (liece))))
-
-(defun liece-sentinel-error (proc status)
-  (if (not (string-match "^exited abnormally with code \\([0-9]+\\)" status))
-      (liece-message (_ "Connection closed. (%s)")
-                     (substring status 0 (1- (length status))))
-    (let ((status (string-to-int (match-string 1 status))))
-      (cond
-       ((= 99 status) ;; unsupported command
-        (liece-message (_ "Please use a newer \"%s\".") liece-dcc-program))
-       ((= 98 status) ;; bad argment number
-        (liece-message (_ "Please use a newer \"%s\".") liece-dcc-program))
-       ((= 97 status)
-        (liece-message (_ "Cannot connect to IRC server.")))
-       (t
-        (liece-message (_ "Server connection closed.")))))))
-
-(provide 'liece-filter)
-
-;;; liece-filter.el ends here
diff --git a/lisp/liece-globals.el b/lisp/liece-globals.el
deleted file mode 100644 (file)
index 21299cb..0000000
+++ /dev/null
@@ -1,213 +0,0 @@
-;;; liece-globals.el --- Global variables and constants.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1998-11-25
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(require 'liece-version)
-
-(defvar liece-server-name nil)
-(defvar liece-server-process nil)
-(defvar liece-status-message-string nil)
-(defvar liece-polling 0
-  "Wheter we are automatically polling the server.")
-
-(defvar liece-real-nickname nil)
-(defvar liece-nick-accepted nil)
-
-(defvar liece-current-channel nil
-  "The channel you currently have joined.")
-
-(defvar liece-current-channels nil
-  "The channels you have currently joined.")
-
-(defvar liece-current-chat-partner nil
-  "The person you are in a private conversation with.")
-
-(defvar liece-current-chat-partners nil
-  "An list containing nics user is chatting with.")
-
-(defvar liece-privmsg-partner nil
-  "The person who got your last private message.")
-
-(defvar liece-nick-alist nil
-  "An alist containing the nicknames of users known to be on IRC.
-Each element in the list is a list containing a nickname.")
-
-(defvar liece-channel-alist nil
-  "An alist containing the channels on IRC.
-Each element in the list is  a list containing a channel name.")
-
-(defvar liece-operator-alist nil
-  "An alist of operators on channel.
-Each element in the list is a list containing a nickname.")
-
-(defvar liece-supported-user-mode-alist nil
-  "User modes supported by server.")
-
-(defvar liece-supported-channel-mode-alist nil
-  "Channel modes supported by server.")
-
-;; Caches
-(defvar liece-save-variables-are-dirty nil
-  "Non nil if liece_vars.el is changed but not saved.")
-
-(defvar liece-user-at-host ""
-  "The user@host for the current line.")
-
-(defvar liece-user-at-host-type nil
-  "The authentication of uerathost.  'ok 'not-verified 'fake or 'invalid.")
-
-(defvar liece-channel-filter ""
-  "Enables use of \\[universal-argument] with NAMES and TOPIC.")
-
-(defvar liece-default-channel-candidate nil)
-
-(defvar liece-nickname-last nil
-  "Place to keep old nickname.")
-
-(defvar liece-friends-last nil)
-(defvar liece-who-expression nil)
-
-(defconst liece-long-reply-max 38)
-(defvar liece-long-reply-count 0)
-
-(defvar liece-obarray nil)
-
-\f
-;; Modeline indicators
-(defvar liece-channel-indicator "No channel"
-  "The current channel, \"pretty-printed.\".")
-
-(defvar liece-private-indicator nil
-  "String displayed in the modeline indicating private conversation.")
-
-(defvar liece-channels-indicator "No channel"
-  "The current joined channels, \"pretty-printed.\".")
-
-(defvar liece-away-indicator "-")
-(defvar liece-command-buffer-mode-indicator "Channels")
-(defvar liece-channel-status-indicator "")
-
-(defvar liece-beep-indicator nil)
-(defvar liece-freeze-indicator nil)
-(defvar liece-own-freeze-indicator nil)
-(defvar liece-beep nil)
-(defvar liece-freeze nil)
-(defvar liece-own-freeze nil)
-
-(defvar liece-own-freeze nil
-  "If non-nil, dialogue window will not be scrolled automatically.")
-
-(defvar liece-command-buffer-mode 'channel
-  "Current command buffer mode.
-Which value is 'chat or 'channel.")
-
-;; Buffers
-(defvar liece-command-buffer "*Commands*"
-  "Name of command input buffer.")
-
-(defvar liece-dialogue-buffer "*Dialogue*"
-  "Name of dialogue output buffer.")
-
-(defvar liece-private-buffer "*Private*"
-  "Name of private message buffer.")
-
-(defvar liece-others-buffer "*Others*"
-  "Name of others message buffer.")
-
-(defvar liece-channel-buffer "*Channel*"
-  "Name of Channel message buffer.")
-
-(defvar liece-channel-buffer-format " *Channel:%s*"
-  "Format of Channel message buffer.")
-
-(defvar liece-channel-list-buffer "*Channels*"
-  "Name of Channel list buffer.")
-
-(defvar liece-nick-buffer " *Nicks*"
-  "Name of nick list message buffer.")
-
-(defvar liece-nick-buffer-format " *Nicks:%s*"
-  "Format of nick list buffer.")
-
-(defvar liece-KILLS-buffer " *KILLS*")
-(defvar liece-IGNORED-buffer " *IGNORED*")
-(defvar liece-WALLOPS-buffer " *WALLOPS*")
-
-(defvar liece-server-buffer nil)
-
-;; Buffer display variables
-(defvar liece-channel-buffer-alist nil)
-(defvar liece-nick-buffer-alist nil)
-
-(defvar liece-buffer-list nil
-  "A list of buffers used in displaying messages.")
-
-(defvar liece-D-buffer (list liece-dialogue-buffer)
-  "A list of buffer where normal dialogue is sent.")
-
-(defvar liece-O-buffer (list liece-others-buffer)
-  "A list of buffer where other messages are sent.")
-
-(defvar liece-P-buffer
-  (list liece-dialogue-buffer liece-private-buffer liece-others-buffer)
-  "A list of buffers where private messages to me are sent.")
-
-(defvar liece-I-buffer (list liece-IGNORED-buffer)
-  "A list of buffers where private messages to me are sent.")
-
-(defvar liece-W-buffer (list liece-WALLOPS-buffer)
-  "A list of buffers where WALLOPS messages to me are sent.")
-
-(defvar liece-K-buffer (list liece-KILLS-buffer)
-  "A list of buffers where KILL messages to me are sent.")
-
-(defvar liece-000-buffer
-  (list liece-dialogue-buffer liece-others-buffer)
-  "A list of buffers where 000 messages to me are sent.")
-
-(defvar liece-200-buffer
-  (list liece-dialogue-buffer liece-others-buffer)
-  "A list of buffers where 200 messages to me are sent.")
-
-(defvar liece-300-buffer
-  (list liece-dialogue-buffer liece-others-buffer)
-  "A list of buffers where 300 messages to me are sent.")
-
-(defvar liece-400-buffer
-  (list liece-dialogue-buffer liece-others-buffer)
-  "A list of buffers where 400 messages to me are sent.")
-
-(defvar liece-500-buffer
-  (list liece-dialogue-buffer liece-others-buffer)
-  "A list of buffers where 500 messages to me are sent.")
-
-(provide 'liece-globals)
-
-;;; liece-globals.el ends here
diff --git a/lisp/liece-handle.el b/lisp/liece-handle.el
deleted file mode 100644 (file)
index 18bbfb0..0000000
+++ /dev/null
@@ -1,496 +0,0 @@
-;;; liece-handle.el --- implementation of IRC message handlers
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1998-11-25
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile
-  (require 'liece-inlines)
-  (require 'liece-misc)
-  (require 'liece-intl))
-
-(require 'liece-message)
-(require 'liece-filter)
-
-(require 'liece-handler)
-
-(defmacro liece-handle-prepare-comment (rest &optional quote)
-  `(if (zerop (length ,rest))
-       ""
-     (if ,quote
-        (regexp-quote (format " (%s)" ,rest))
-       (format " (%s)" ,rest))))
-
-(defmacro liece-handle-message-check-empty (msg)
-  `(string= ,msg ""))
-
-(defmacro liece-handle-message-check-ignored (prefix rest)
-  `(and ,prefix
-       (liece-ignore-this-p ,prefix liece-user-at-host)
-       (liece-message-from-ignored ,prefix ,rest)))
-
-(defmacro liece-handle-check-changes-ignored ()
-  'liece-ignore-changes)
-
-(defconst liece-handle-ctcp-message-regexp "\001\\(.*\\)\001")
-
-(defmacro liece-handle-ctcp-message-p (msg)
-  `(string-match liece-handle-ctcp-message-regexp ,msg))
-
-(autoload 'liece-ctcp-message "liece-ctcp")
-(autoload 'liece-ctcp-notice "liece-ctcp")
-
-\f
-(liece-handler-define-backend "generic")
-
-(mapcar
- (lambda (message)
-   (liece-handler-define-function
-    message '(prefix rest "generic")
-    (intern (format "liece-handle-%s-message" message)))
-   (defvar ,(intern (format "liece-%s-hook" message)) nil)
-   (defvar ,(intern (format "liece-after-%s-hook" message)) nil))
- '("nick" "notice" "privmsg" "ping" "wall" "wallops" "quit" "topic"
-   "mode" "kick" "invite" "kill" "join" "part" "silence"))
-
-(defun* liece-handle-nick-message (prefix rest)
-  (let ((chnls (liece-nick-get-joined-channels prefix)))
-    (liece-nick-change prefix rest)
-    (cond
-     ((liece-nick-equal prefix liece-real-nickname)
-      (setq liece-nickname-last liece-real-nickname
-           liece-real-nickname rest))
-     ((liece-nick-member prefix liece-current-chat-partners)
-      (setq liece-current-chat-partners
-           (string-list-modify-ignore-case (list (cons prefix rest))
-                                           liece-current-chat-partners))
-      (setcar (string-assoc-ignore-case prefix liece-nick-buffer-alist)
-             rest)
-      (setcar (string-assoc-ignore-case prefix liece-channel-buffer-alist)
-             rest)
-      (if (liece-nick-equal prefix liece-current-chat-partner)
-         (setq liece-current-chat-partner rest))
-      (add-to-list 'chnls rest)
-      (liece-channel-change)))
-    (if (liece-handle-check-changes-ignored)
-       (return-from liece-handle-nick-message))
-    (liece-insert-change (append (liece-pick-buffer chnls)
-                                 liece-D-buffer liece-O-buffer)
-                         (format (_ "%s is now known as %s\n") prefix rest))))
-
-(defun* liece-handle-notice-message (prefix rest)
-  (if (liece-handle-message-check-ignored prefix rest)
-      (return-from liece-handle-notice-message))
-  (or liece-ignore-extra-notices
-       prefix
-       (string-match "as being away" rest)
-       (return-from liece-handle-notice-message))
-
-  ;; No prefix. This is a server notice.
-  (when (and (null prefix) (string-match "^[^ ]* +:?" rest))
-    (liece-insert-notice (append liece-D-buffer liece-O-buffer)
-                         (concat (substring rest (match-end 0)) "\n"))
-    (return-from liece-handle-notice-message))
-  (multiple-value-bind (chnl temp) (liece-split-line rest)
-    ;; This is a ctcp reply but contains additional messages
-    ;; at the left or/and right side.
-    (if (liece-handle-ctcp-message-p temp)
-       (setq temp (liece-ctcp-notice prefix temp)))
-    (if (liece-handle-message-check-empty temp)
-       (return-from liece-handle-notice-message))
-
-    ;; Normal message via notice.
-    (setq chnl (liece-channel-virtual chnl))
-    (let ((liece-message-target chnl)
-         (liece-message-speaker prefix)
-         (liece-message-type 'notice))
-      (liece-display-message temp))))
-
-(defun* liece-handle-privmsg-message (prefix rest)
-  (if (liece-handle-message-check-ignored prefix rest)
-      (return-from liece-handle-privmsg-message))
-  (multiple-value-bind (chnl temp) (liece-split-line rest)
-    (setq temp (or temp ""))
-    ;; This is a ctcp request but contains additional messages
-    ;; at the left or/and right side.
-    (if (liece-handle-ctcp-message-p temp)
-       (setq temp (liece-ctcp-message prefix chnl temp)))
-    (if (liece-handle-message-check-empty temp)
-       (return-from liece-handle-privmsg-message))
-
-    (setq chnl (liece-channel-virtual chnl))
-      
-    (when liece-beep-on-bells
-      (if (string-match "\007" rest)
-         (liece-beep))
-      (if (liece-nick-equal chnl liece-real-nickname)
-         (and liece-beep-when-privmsg (liece-beep))
-       (with-current-buffer (if liece-channel-buffer-mode
-                                (liece-pick-buffer-1 chnl)
-                              liece-dialogue-buffer)
-         (if liece-beep
-             (liece-beep))))
-      (dolist (word liece-beep-words-list)
-       (if (string-match word rest)
-           (liece-beep))))
-
-    ;; Append timestamp if we are being away.
-    (if (and (string-equal "A" liece-away-indicator)
-            (liece-nick-equal chnl liece-real-nickname))
-       (setq temp
-             (concat temp " ("
-                     (funcall liece-format-time-function (current-time))
-                     ")")))
-
-    ;; Normal message.
-    (let ((liece-message-target chnl)
-         (liece-message-speaker prefix)
-         (liece-message-type 'privmsg))
-      (liece-display-message temp))
-
-    ;; Append to the unread list.
-    (let ((item (if (eq liece-command-buffer-mode 'chat)
-                   liece-current-chat-partner
-                 liece-current-channel)))
-      (unless (liece-channel-equal chnl item)
-       (if (liece-channel-unread-p chnl)
-           (setq liece-channel-unread-list
-                 (delete chnl liece-channel-unread-list)))
-       (setq liece-channel-unread-list
-             (cons chnl liece-channel-unread-list))
-      (run-hook-with-args 'liece-channel-unread-functions chnl)))
-
-    (if (and (liece-nick-equal chnl liece-real-nickname)
-            (not (liece-nick-equal prefix liece-current-chat-partner)))
-       (liece-message (_ "A private message has arrived from %s")
-                      prefix))))
-
-(defun liece-handle-ping-message (prefix rest)
-  (liece-send "PONG :%s" rest)
-  (liece-command-timestamp-if-interval-expired t)
-  (liece-maybe-poll))
-
-(defun liece-handle-wall-message (prefix rest)
-  (liece-insert-broadcast (append liece-D-buffer liece-O-buffer)
-                          (concat (if prefix (concat "from " prefix) "") " "
-                                  rest "\n")))
-
-(defun liece-handle-wallops-message (prefix rest)
-  (if liece-show-wallops
-      (liece-insert-wallops (append liece-D-buffer liece-O-buffer)
-                            (concat (if prefix prefix "UNKNOWN")
-                                    ": " rest "\n")))
-  (liece-insert-wallops liece-W-buffer
-                        (concat (if prefix (concat "from " prefix) "") " "
-                                rest "\n")))
-
-(defun* liece-handle-quit-message (prefix rest)
-  (let ((chnls (liece-nick-get-joined-channels prefix)) text match default)
-    ;; Mark temporary apart, if quitting user is one of our chat partners.
-    (when (liece-nick-member prefix liece-current-chat-partners)
-      (add-to-list 'chnls prefix)
-      (liece-nick-mark-as-apart prefix))
-    (if (liece-handle-check-changes-ignored)
-       (return-from liece-handle-quit-message))
-    (cond
-     (liece-compress-changes
-      (setq text (format (_ " \\(has\\|have\\) left IRC%s")
-                        (liece-handle-prepare-comment rest t))
-           match (format "^%s%s.*%s$"
-                         (if liece-display-time
-                             liece-time-prefix-regexp "")
-                         (regexp-quote liece-change-prefix)
-                         (regexp-quote text))
-           default (format (_ "%s%s has left IRC%s\n")
-                           liece-change-prefix prefix
-                           (liece-handle-prepare-comment rest)))
-      (liece-replace (append (liece-pick-buffer chnls)
-                             liece-D-buffer liece-O-buffer)
-                     match default text
-                     (format (_ ", %s have left IRC%s")
-                             prefix (liece-handle-prepare-comment rest))))
-     (t
-      (liece-insert-change (append (liece-pick-buffer chnls)
-                                   liece-D-buffer liece-O-buffer)
-                           (format (_ "%s has left IRC%s\n")
-                                   (liece-handle-prepare-comment rest)))))
-    (liece-nick-change prefix nil)))
-
-(defun* liece-handle-topic-message (prefix rest)
-  (multiple-value-bind (chnl topic) (liece-split-line rest)
-    (setq chnl (liece-channel-virtual chnl)
-         topic (or topic ""))
-    (liece-channel-set-topic topic chnl)
-    (if (liece-handle-check-changes-ignored)
-       (return-from liece-handle-topic-message))
-    (liece-insert-change (liece-pick-buffer chnl)
-                         (format (_ "New topic on channel %s set by %s: %s\n")
-                                 chnl prefix topic))
-    (liece-insert-change (if (liece-nick-equal chnl liece-current-channel)
-                             liece-D-buffer
-                           (append liece-D-buffer liece-O-buffer))
-                         (format (_ "New topic on channel %s set by %s: %s\n")
-                                 chnl prefix topic))
-    (liece-set-channel-indicator)))
-
-(defun* liece-handle-mode-message (prefix rest)
-  (if (liece-handle-check-changes-ignored)
-      (return-from liece-handle-mode-message))
-  (let ((chnl " ") (str "") mflag mflags marg margs val md chnlp)
-    (or (and (string-match "\\([^ ]*\\) +:?" rest)
-            (setq chnl (match-string 1 rest)
-                  str (substring rest (match-end 0))
-                  chnlp (liece-channel-p chnl)
-                  str (if (= (aref str (1- (length str))) ? )
-                          (substring str 0 -1) str)
-                  chnl (liece-channel-virtual chnl)))
-       (and (string-match " +:" rest)
-            (setq str (substring rest (match-end 0))))
-       (return-from liece-handle-mode-message))
-
-    ;; parse modes
-    (when (string-match "\\([^ ]*\\) +" str)
-      (setq mflag (match-string 1 str)
-           marg (substring str (match-end 0))
-           mflags (string-to-char-list mflag))
-      (while (string-match "^\\([^ ]*\\) +" marg)
-       (setq margs (cons (match-string 1 marg) margs)
-             marg (substring marg (match-end 0))))
-      (or (string= marg "") (setq margs (cons marg margs)))
-      (while (setq md (pop mflags))
-       (cond ((eq ?- md) (setq val nil))
-             ((eq ?+ md) (setq val t))
-             ((eq ?o md) (liece-channel-set-operator chnl (pop margs) val))
-             ((eq ?v md) (liece-channel-set-voice chnl (pop margs) val))
-             ((eq ?b md) (liece-channel-set-ban chnl (pop margs) val))
-             ((eq ?e md) (liece-channel-set-exception chnl (pop margs) val))
-             ((eq ?I md) (liece-channel-set-invite chnl (pop margs) val))
-             (chnlp (liece-channel-set-mode val md chnl))
-             (t (liece-nick-set-mode val md chnl)))))
-    
-    (liece-set-channel-indicator)
-    (cond
-     (liece-compress-changes
-      (let* ((text (concat (regexp-quote rest) "\n"))
-            (match (format (_ "^%s%sNew mode for %s set by %s: ")
-                           (if liece-display-time
-                               liece-time-prefix-regexp "")
-                           (regexp-quote liece-change-prefix)
-                           (regexp-quote chnl) (regexp-quote prefix)))
-            (default (format (_ "%sNew mode for %s set by %s: %s\n")
-                             liece-change-prefix chnl prefix str)))
-       (liece-replace (liece-pick-buffer chnl)
-                       match default text (concat ", " str "\n"))
-       (liece-replace (if (and liece-current-channel
-                                (liece-channel-equal
-                                 chnl liece-current-channel))
-                           liece-D-buffer
-                         (append liece-D-buffer liece-O-buffer))
-                       match default text (concat ", " str "\n"))))
-     (t
-      (liece-insert-change (liece-pick-buffer chnl)
-                           (format (_ "New mode for %s set by %s: %s\n")
-                                   chnl prefix str))
-      (liece-insert-change (if (and liece-current-channel
-                                    (liece-channel-equal
-                                     chnl liece-current-channel))
-                               liece-D-buffer
-                             (append liece-D-buffer liece-O-buffer))
-                           (format (_ "New mode for %s set by %s: %s\n")
-                                   chnl prefix str))))))
-
-(defun* liece-handle-kick-message (prefix rest)
-  (if (/= 3 (length (setq rest (liece-split-line rest))))
-      (return-from liece-handle-kick-message))
-  (multiple-value-bind (chnl nick message) rest
-    (setq chnl (liece-channel-virtual chnl))
-    
-    (if (liece-nick-equal nick liece-real-nickname)
-       (progn
-         (liece-insert-change
-          (liece-pick-buffer chnl)
-          (format (_ "You were kicked off channel %s by %s (%s).\n")
-                  chnl prefix message))
-         (liece-channel-part chnl))
-      (liece-nick-part nick chnl))
-    
-    (if (liece-handle-check-changes-ignored)
-       (return-from liece-handle-kick-message))
-
-    (liece-insert-change
-     (append (liece-pick-buffer chnl)
-            (if (liece-channel-equal chnl liece-current-channel)
-                liece-D-buffer
-              (append liece-D-buffer liece-O-buffer)))
-     (format "%s has kicked %s out%s%s\n"
-            prefix nick
-            (if (string= (or liece-current-channel "") chnl)
-                ""
-              (format " from channel %s" chnl))
-            (if (not message)
-                ""
-              (format " (%s)" message))))))
-
-(defun* liece-handle-invite-message (prefix rest)
-  (or (string-match " +:" rest)
-      (return-from liece-handle-invite-message))
-  (and liece-beep-when-invited liece-beep-on-bells
-       (liece-beep))
-  (let ((chnl (liece-channel-virtual (substring rest (match-end 0)))))
-    (liece-insert-info (append liece-D-buffer liece-O-buffer)
-                       (format "%s invites you to channel %s\n"
-                               prefix chnl))
-    (setq liece-default-channel-candidate chnl)))
-
-(defun* liece-handle-kill-message (prefix rest)
-  (or (string-match " +:" rest)
-      (return-from liece-handle-kill-message))
-  (let ((path (substring rest (match-end 0))))
-    (liece-insert-info (append liece-D-buffer liece-O-buffer)
-                       (format "You were killed by %s. (Path: %s. RIP)\n"
-                               prefix path)))
-  (liece-clear-system))
-
-(defun* liece-handle-join-message (prefix rest)
-  (let (flag (xnick prefix) (nick prefix) (chnl rest))
-    (cond
-     ((string-match "\007[ov]" chnl)
-      (setq flag (aref (match-string 0 chnl) 1)
-           chnl (substring rest 0 (match-beginning 0))))
-     ((string-match " +$" chnl)
-      (setq chnl (substring chnl 0 (match-beginning 0)))))
-    (setq chnl (liece-channel-virtual chnl))
-    
-    (liece-nick-set-user-at-host nick liece-user-at-host)
-    
-    (if (liece-nick-equal nick liece-real-nickname)
-       (progn
-         (and liece-gather-channel-modes
-              (not (liece-channel-modeless-p (liece-channel-real chnl)))
-              (liece-send "MODE %s " (liece-channel-real chnl)))
-         (liece-channel-join chnl))
-      (liece-nick-join nick chnl))
-    
-    (cond
-     ((eq flag ?o)
-      (liece-channel-set-operator chnl xnick t)
-      (setq xnick (concat "@" xnick)))
-     ((eq flag ?v)
-      (liece-channel-set-voice chnl xnick t)
-      (setq xnick (concat "+" xnick))))
-    
-    (if (liece-handle-check-changes-ignored)
-       (return-from liece-handle-join-message))
-    
-    (when (and (liece-nick-member nick liece-current-chat-partners)
-              (get (intern nick liece-obarray) 'part))
-      (liece-insert-change (liece-pick-buffer nick)
-                           (format (_ "%s has come back as (%s)\n")
-                                   nick liece-user-at-host))
-      (liece-nick-unmark-as-apart nick))
-    
-    (cond
-     (liece-compress-changes
-      (let* ((text (format (_ " \\(has\\|have\\) joined channel %s")
-                          (regexp-quote chnl)))
-            (match (format "^%s%s.*%s$"
-                           (if liece-display-time
-                               liece-time-prefix-regexp "")
-                           (regexp-quote liece-change-prefix)
-                           (regexp-quote text)))
-            (default (format (_ "%s%s (%s) has joined channel %s\n")
-                             liece-change-prefix
-                             nick liece-user-at-host chnl)))
-       (liece-replace (liece-pick-buffer chnl)
-                       match default text
-                       (format (_ ", %s (%s) have joined channel %s")
-                               nick liece-user-at-host chnl))
-       (liece-replace (if (and liece-current-channel
-                                (liece-channel-equal chnl
-                                                      liece-current-channel))
-                           liece-D-buffer
-                         (append liece-D-buffer liece-O-buffer))
-                       match default text
-                       (format (_ ", %s (%s) have joined channel %s")
-                               nick liece-user-at-host chnl))))
-     (t
-      (liece-insert-change (liece-pick-buffer chnl)
-                           (format (_ "%s (%s) has joined channel %s\n")
-                                   nick liece-user-at-host chnl))
-      (liece-insert-change (if (liece-channel-equal chnl
-                                                     liece-current-channel)
-                               liece-D-buffer
-                             (append liece-D-buffer liece-O-buffer))
-                           (format (_ "%s (%s) has joined channel %s\n")
-                                   nick liece-user-at-host chnl))))))
-
-(defun* liece-handle-part-message (prefix rest)
-  (multiple-value-bind (chnl comment text match default buf) (liece-split-line rest)
-    (setq chnl (liece-channel-virtual chnl)
-         comment (liece-handle-prepare-comment comment))
-    
-    (if (liece-nick-equal prefix liece-real-nickname)
-       (liece-channel-part chnl)
-      (liece-nick-part prefix chnl))
-    
-    (if (liece-handle-check-changes-ignored)
-       (return-from liece-handle-part-message))
-    
-    (setq buf (append liece-D-buffer (liece-pick-buffer chnl)))
-    (unless (and liece-current-channel
-                (liece-channel-equal chnl liece-current-channel))
-      (setq buf (append buf liece-O-buffer)))
-    (cond
-     (liece-compress-changes
-      (setq text (format (_ " \\(has\\|have\\) left channel %s%s")
-                        (regexp-quote chnl) (regexp-quote comment))
-           match (format "^%s%s.*%s$"
-                         (if liece-display-time
-                             liece-time-prefix-regexp "")
-                         (regexp-quote liece-change-prefix)
-                         (regexp-quote text))
-           default (format (_ "%s%s has left channel %s%s\n")
-                           liece-change-prefix prefix chnl comment))
-      (liece-replace buf
-                     match default text
-                     (format (_ ", %s have left channel %s%s")
-                             prefix chnl comment)))
-     (t
-      (liece-insert-change buf
-                           (format (_ "%s has left channel %s%s\n")
-                                   prefix chnl comment))))))
-    
-(defun* liece-handle-silence-message (prefix rest)
-  (let* ((flag (aref rest 0)) (rest (substring rest 1)))
-    (liece-insert-info (append liece-D-buffer liece-O-buffer)
-                       (concat "User " rest
-                               (if (eq flag ?-) "unsilenced" "silenced")))))
-
-(provide 'liece-handle)
-
-;;; liece-handle.el ends here
diff --git a/lisp/liece-handler.el b/lisp/liece-handler.el
deleted file mode 100644 (file)
index b085fe9..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-;;; liece-handler.el --- function overloading facilities
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1999-06-05
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile (require 'cl))
-
-(eval-when-compile (require 'liece-inlines))
-
-(eval-when-compile (require 'liece-clfns))
-
-(defmacro liece-handler-make-obarray (backend)
-  `(defvar ,(intern (format "liece-handler-%s-obarray" backend))
-     (make-vector 107 0)))
-
-(defmacro liece-handler-obarray (backend)
-  `(symbol-value (intern-soft (format "liece-handler-%s-obarray" ,backend))))
-
-(defun liece-handler-override-function-definition (name backend args function)
-  (let ((ref (symbol-name (liece-gensym))))
-    (if (symbolp name)
-       (setq name (symbol-name name)))
-    (put (intern name (liece-handler-obarray backend)) 'unifiers
-        (nconc (get (intern name (liece-handler-obarray backend)) 'unifiers)
-               (list `(,(intern ref (liece-handler-obarray backend))
-                       ,@args))))
-    (fset (intern ref (liece-handler-obarray backend)) function)))
-
-(defun liece-handler-unify-argument-list-function (args unifiers)
-  (let ((index 0)
-       (unfs (copy-alist unifiers))
-       (len (length args))
-       type)
-    (setq unfs
-         (remove-if (lambda (unf) (/= (length (cdr unf)) len)) unfs))
-    (dolist (arg args)
-      (if (listp arg)
-         (setq unfs (remove-if-not
-                     (lambda (unf)
-                       (let ((spec (nth index (cdr unf))))
-                         (or (not (listp spec))
-                             (eq (car spec) (car arg)))))
-                     unfs)))
-      (incf index))
-    (if (caar unfs)
-       (symbol-function (caar unfs)))))
-
-(defmacro liece-handler-define-backend (type &optional parents)
-  `(liece-handler-make-obarray ,type))
-
-(defun liece-handler-find-function (name args backend)
-  (let* ((fsym (intern-soft name (liece-handler-obarray backend)))
-        (unifiers (if fsym (get fsym 'unifiers))))
-    (liece-handler-unify-argument-list-function args unifiers)))
-
-(defun liece-handler-define-function (name specs function)
-  (let ((args (butlast specs))
-       (backend (car (last specs))))
-    (liece-handler-override-function-definition name backend args function)))
-
-(provide 'liece-handler)
-
-;;; liece-handler.el ends here
diff --git a/lisp/liece-hilit.el b/lisp/liece-hilit.el
deleted file mode 100644 (file)
index b29e892..0000000
+++ /dev/null
@@ -1,448 +0,0 @@
-;;; liece-hilit.el --- coloring IRC buffers
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1998-11-25
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(require 'invisible)
-
-(eval-when-compile
-  (require 'liece-inlines)
-  (require 'font-lock))
-
-(autoload 'liece-url-add-buttons "liece-url")
-(autoload 'liece-channel-add-buttons "liece-channel")
-(autoload 'liece-nick-add-buttons "liece-nick")
-
-(defgroup liece-highlight nil
-  "Highlight your IRC buffer"
-  :tag "Highlight"
-  :prefix "liece-"
-  :group 'liece)
-
-(defgroup liece-highlight-faces nil
-  "Faces for highlight your IRC buffer"
-  :tag "Faces"
-  :prefix "liece-highlight-"
-  :group 'liece-highlight)
-
-(defcustom liece-change-face 'liece-change-face
-  "Face used for displaying \"*** Change:\" line."
-  :type 'face
-  :group 'liece-highlight-faces)
-
-(defcustom liece-notice-face 'liece-notice-face
-  "Face used for displaying \"*** Notice:\" line."
-  :type 'face
-  :group 'liece-highlight-faces)
-
-(defcustom liece-broadcast-face 'liece-broadcast-face
-  "Face used for displaying \"*** Broadcast:\" line."
-  :type 'face
-  :group 'liece-highlight-faces)
-
-(defcustom liece-wallops-face 'liece-wallops-face
-  "Face used for displaying \"*** Wallops:\" line."
-  :type 'face
-  :group 'liece-highlight-faces)
-  
-(defcustom liece-error-face 'liece-error-face
-  "Face used for displaying \"*** Error:\" line."
-  :type 'face
-  :group 'liece-highlight-faces)
-
-(defcustom liece-info-face 'liece-info-face
-  "Face used for displaying \"*** Info:\" line."
-  :type 'face
-  :group 'liece-highlight-faces)
-
-(defcustom liece-timestamp-face 'liece-timestamp-face
-  "Face used for displaying \"*** Time:\" line."
-  :type 'face
-  :group 'liece-highlight-faces)
-
-(defcustom liece-client-face 'liece-client-face
-  "Face used for displaying \"CLIENT@\" line."
-  :type 'face
-  :group 'liece-highlight-faces)
-
-(defcustom liece-dcc-face 'liece-dcc-face
-  "Face used for displaying \"*** DCC:\" line."
-  :type 'face
-  :group 'liece-highlight-faces)
-
-(defcustom liece-prefix-face 'liece-prefix-face
-  "Face used for displaying \"<nick>\" extent."
-  :type 'face
-  :group 'liece-highlight-faces)
-
-(defcustom liece-priv-prefix-face 'liece-priv-prefix-face
-  "Face used for displaying \"=nick\" line."
-  :type 'face
-  :group 'liece-highlight-faces)
-
-(defcustom liece-pattern-face 'liece-pattern-face
-  "Face used for displaying user defined pattern."
-  :type 'face
-  :group 'liece-highlight-faces)
-
-(defcustom liece-quoted-bold-face 'liece-quoted-bold-face
-  "Face used for displaying \002 quoted string."
-  :type 'face
-  :group 'liece-highlight-faces)
-
-(defcustom liece-quoted-inverse-face 'liece-quoted-inverse-face
-  "Face used for displaying \026 quoted string."
-  :type 'face
-  :group 'liece-highlight-faces)
-
-(defcustom liece-quoted-underline-face 'liece-quoted-underline-face
-  "Face used for displaying \037 quoted string."
-  :type 'face
-  :group 'liece-highlight-faces)
-
-(defcustom liece-quoted-colors-ircle
-  '("white" "black" "red" "orange" "yellow" "LightGreen" "DarkOliveGreen"
-    "cyan4" "turquoise" "blue" "black" "black" "black" "black" "black"
-    "DarkBlue" "purple1" "purple2" "purple3" "magenta")
-  "Color list for displaying \003 quoted string."
-  :type '(list (radio string face))
-  :group 'liece-highlight)
-
-(defcustom liece-quoted-colors-mirc
-  '("white" "black" "blue" "DarkOliveGreen" "red" "brown" "purple"
-    "orange" "yellow" "green" "cyan4" "turquoise" "RoyalBlue" "HotPink"
-    "gray50" "gray75" "black" "black" "black" "black")
-  "Color list for displaying \013 quoted string."
-  :type '(list (radio string face))
-  :group 'liece-highlight)
-  
-(defcustom liece-highlight-jingle-function nil
-  "Function playing jingles."
-  :type 'function
-  :group 'liece-highlight)
-
-(defface liece-change-face
-  '((((class color)
-      (background dark))
-     (:foreground "cyan" :bold t))
-    (((class color)
-      (background light))
-     (:foreground "RoyalBlue" :bold t))
-    (t
-     (:bold t)))
-  "Face used for displaying \"*** Change:\" line"
-  :group 'liece-highlight-faces)
-
-(defface liece-notice-face
-  '((((class color)
-      (background dark))
-     (:foreground "green2" :bold t))
-    (((class color)
-      (background light))
-     (:foreground "MidnightBlue" :bold t))
-    (t
-     (:bold t)))
-  "Face used for displaying \"*** Notice:\" line"
-  :group 'liece-highlight-faces)
-
-(defface liece-broadcast-face
-  '((((class color)
-      (background dark))
-     (:foreground "Plum1" :italic t))
-    (((class color)
-      (background light))
-     (:foreground "purple" :italic t))
-    (t
-     (:italic t)))
-  "Face used for displaying \"*** Broadcast:\" line"
-  :group 'liece-highlight-faces)
-
-(defface liece-wallops-face
-  '((((class color)
-      (background dark))
-     (:foreground "yellow" :bold t))
-    (((class color)
-      (background light))
-     (:foreground "blue4" :bold t))
-    (t
-     (:bold t)))
-  "Face used for displaying \"*** Wallops:\" line"
-  :group 'liece-highlight-faces)
-
-(defface liece-error-face
-  '((((class color)
-      (background dark))
-     (:foreground "cornflower blue" :bold t))
-    (((class color)
-      (background light))
-     (:foreground "DarkGreen"))
-    (t
-     (:bold t)))
-  "Face used for displaying \"*** Error:\" line"
-  :group 'liece-highlight-faces)
-
-(defface liece-info-face
-  '((((class color)
-      (background dark))
-     (:foreground "PaleTurquoise" :bold t))
-    (((class color)
-      (background light))
-     (:foreground "RoyalBlue"))
-    (t
-     (:bold t)))
-  "Face used for displaying \"*** Info:\" line"
-  :group 'liece-highlight-faces)
-
-(defface liece-timestamp-face
-  '((((class color)
-      (background dark))
-     (:foreground "yellow" :bold t))
-    (((class color)
-      (background light))
-     (:foreground "blue4" :bold t))
-    (t
-     (:bold t)))
-  "Face used for displaying \"*** Time:\" line"
-  :group 'liece-highlight-faces)
-
-(defface liece-client-face
-  '((((class color)
-      (background dark))
-     (:foreground "orange"))
-    (((class color)
-      (background light))
-     (:foreground "red"))
-    (t
-     (:bold nil)))
-  "Face used for displaying \"CLIENT@\" line"
-  :group 'liece-highlight-faces)
-
-(defface liece-dcc-face
-  '((((class color)
-      (background dark))
-     (:foreground "orange"))
-    (((class color)
-      (background light))
-     (:foreground "red"))
-    (t
-     (:bold nil)))
-  "Face used for displaying \"*** DCC:\" line"
-  :group 'liece-highlight-faces)
-
-(defface liece-prefix-face
-  '((((class color)
-      (background dark))
-     (:foreground "moccasin"))
-    (((class color)
-      (background light))
-     (:foreground "firebrick"))
-    (t
-     (:bold nil)))
-  "Face used for displaying \"<nick>\" extent"
-  :group 'liece-highlight-faces)
-
-(defface liece-priv-prefix-face
-  '((((class color)
-      (background dark))
-     (:foreground "orange"))
-    (((class color)
-      (background light))
-     (:foreground "grey40"))
-    (t
-     (:bold nil)))
-  "Face used for displaying \"=nick\" line"
-  :group 'liece-highlight-faces)
-
-(defface liece-pattern-face
-  '((((class color)
-      (background dark))
-     (:foreground "red"))
-    (((class color)
-      (background light))
-     (:foreground "red"))
-    (t
-     (:bold nil)))
-  "Face used for displaying user defined pattern"
-  :group 'liece-highlight-faces)
-
-(defface liece-quoted-bold-face
-  '((t (:bold t)))
-  "Face used for displaying \002 quoted string"
-  :group 'liece-highlight-faces)
-
-(defface liece-quoted-inverse-face
-  '((t (:inverse-video t)))
-  "Face used for displaying \026 quoted string"
-  :group 'liece-highlight-faces)
-
-(defface liece-quoted-underline-face
-  '((t (:underline t)))
-  "Face used for displaying \037 quoted string"
-  :group 'liece-highlight-faces)
-
-(defcustom liece-highlight-font-lock-keywords
-  (append
-   ;; setting property occurred once
-   (list
-    `(,(concat
-       "^\\(" liece-time-prefix-regexp "\\)?"
-       "\\(\\([][<>(-][][<>(-]?[^ <>)]*[][<>)-][][<>)-]?\\)\\|"
-       "\\(=[^ ]*=\\|\\*\\*[^ \*]*\\*\\*\\)\\) ")
-      (3 liece-prefix-face append t)
-      (4 liece-priv-prefix-face append t)
-      ("\\(\002\\)\\([^\002\026\037\003]*\\)" nil nil
-       (2 liece-quoted-bold-face t t))
-      ("\\(\026\\)\\([^\002\026\037\003]*\\)" nil nil
-       (2 liece-quoted-inverse-face t t))
-      ("\\(\037\\)\\([^\002\026\037\003]*\\)" nil nil
-       (2 liece-quoted-underline-face t t))))
-   ;; set property whole line
-   (mapcar
-    (lambda (line)
-      (cons
-       (concat
-       "^\\(" liece-time-prefix-regexp "\\)?\\("
-       (regexp-quote
-        (symbol-value (intern (format "liece-%s-prefix" line))))
-       ".*\\)$")
-       (list 2 (intern (format "liece-%s-face" line)) t t)))
-    '(change notice broadcast wallops error info timestamp client dcc))
-   '((eval . (cons liece-highlight-pattern liece-pattern-face))))
-  "Normal and deformed faces for IRC normal line."
-  :type '(repeat (list string))
-  :group 'liece-highlight)
-
-(put 'liece-channel-mode 'font-lock-defaults
-     '(liece-highlight-font-lock-keywords t))
-(put 'liece-others-mode 'font-lock-defaults
-     '(liece-highlight-font-lock-keywords t))
-(put 'liece-dialogue-mode 'font-lock-defaults
-     '(liece-highlight-font-lock-keywords t))
-
-;;; This is a kludge for fontifying buffer whose name starts with a space.
-;;; Font-lock isn't responsible for (maybe) invisible buffers.
-(defadvice font-lock-mode
-  (around liece-replace-space-in-buffer-name activate)
-  (if (char-equal (aref (buffer-name) 0) ? )
-      (unwind-protect
-         (progn
-           (aset (buffer-name) 0 ?_)
-           ad-do-it)
-       (aset (buffer-name) 0 ? ))
-    ad-do-it))
-
-(add-hook 'liece-after-load-startup-hook
-         'liece-highlight-maybe-turn-on-font-lock)
-
-(defun liece-highlight-maybe-turn-on-font-lock ()
-  (when liece-highlight-mode
-    (add-hook 'liece-channel-mode-hook
-             'liece-highlight-turn-on-font-lock)
-    (add-hook 'liece-others-mode-hook
-             'liece-highlight-turn-on-font-lock)
-    (add-hook 'liece-dialogue-mode-hook
-             'liece-highlight-turn-on-font-lock)
-    (add-hook 'liece-after-insert-functions 'liece-url-add-buttons)
-    (add-hook 'liece-after-insert-functions 'liece-channel-add-buttons)
-    ;;(add-hook 'liece-after-insert-functions 'liece-nick-add-buttons)
-    ))
-
-(defun liece-highlight-turn-on-font-lock ()
-  (make-local-variable 'font-lock-defaults)
-  (setq font-lock-defaults '(liece-highlight-font-lock-keywords t))
-  (make-local-variable 'font-lock-verbose)
-  (setq font-lock-verbose nil)
-  (make-local-variable 'font-lock-support-mode)
-  (setq font-lock-support-mode nil)
-  (make-local-hook 'font-lock-mode-hook)
-  (setq font-lock-mode-hook nil)
-  (turn-on-font-lock)
-  (make-local-hook 'after-change-functions)
-  (or liece-display-prefix-tag
-      (add-hook 'after-change-functions
-               'liece-highlight-maybe-hide-prefix nil 'local))
-  (add-hook 'after-change-functions
-           'liece-highlight-colorize-quote nil 'local)
-  (add-hook 'after-change-functions
-           'liece-highlight-maybe-hide-quote 'append 'local)
-  (when (and (eq major-mode 'liece-dialogue-mode)
-            (liece-functionp liece-highlight-jingle-function))
-    (add-hook 'after-change-functions
-             'liece-highlight-maybe-play-jingle 'append 'local)))
-
-(defun liece-highlight-maybe-hide-prefix (st nd len)
-  (save-excursion
-    (goto-char st)
-    (if (looking-at liece-generic-prefix-tag-regexp)
-       (invisible-region
-        (match-beginning 1) (match-end 1)))))
-
-(defun liece-highlight-maybe-hide-quote (st nd len)
-  (save-excursion
-    (goto-char st)
-    (while (re-search-forward "[\002\026\037]\\|[\003\013][0-9:;<=]+" nd t)
-      (invisible-region
-       (match-beginning 0) (match-end 0)))))
-
-(defun liece-highlight-maybe-play-jingle (st nd len)
-  (save-excursion
-    (goto-char st)
-    (when (re-search-forward
-          (if (listp liece-highlight-pattern)
-              (car liece-highlight-pattern)
-            liece-highlight-pattern)
-          nd t)
-      (funcall liece-highlight-jingle-function))))
-
-(defun liece-highlight-colorize-quote (st nd len)
-  (save-excursion
-    (goto-char st)
-    (let (num face faces vender name ovl)
-      (while (re-search-forward "\\([\003\013][0-9:;<=]+\\)\\([^\002\026\037\003\013]*\\)" nd t)
-       (setq ovl (make-overlay (match-beginning 2) (match-end 2))
-             num (match-string 1)
-             vender (cond ((eq ?\003 (aref num 0)) 'ircle)
-                          ((eq ?\013 (aref num 0)) 'mirc))
-             num (if (< 57 (char-int (aref num 1)))
-                     (- (char-int (aref num 1)) 43)
-                   (string-to-int (substring num 1)))
-             faces (nthcdr num (symbol-value
-                                (intern (format "liece-quoted-colors-%s"
-                                                vender))))
-             face (car faces))
-       (when (stringp face)
-         (setq face (make-face (intern (format "liece-quoted-color-%s-%d"
-                                               vender num))))
-         (set-face-foreground face (car faces))
-         (setcar faces face))
-       (overlay-put ovl 'face face)))))
-
-(provide 'liece-hilit)
-
-;;; liece-hilit.el ends here
diff --git a/lisp/liece-inlines.el b/lisp/liece-inlines.el
deleted file mode 100644 (file)
index c73a7f4..0000000
+++ /dev/null
@@ -1,207 +0,0 @@
-;;; liece-inlines.el --- Inline macros for various use.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1998-11-25
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(require 'liece-globals)
-(require 'liece-compat)
-(require 'liece-setup)
-(require 'liece-vars)
-
-(eval-when-compile (require 'liece-clfns))
-
-;;; @ string functions
-;;;
-(defmacro string-times (str n)
-  `(apply #'concat (make-list ,n ,str)))
-
-(defmacro string-join (strlst &optional del)
-  `(mapconcat #'identity ,strlst ,del))
-
-(static-if (subr-fboundp 'compare-strings)
-    (defmacro string-equal-ignore-case (s1 s2)
-      `(eq t (compare-strings ,s1 0 nil ,s2 0 nil 'ignore-case)))
-  (defmacro string-equal-ignore-case (s1 s2)
-    `(string-equal (upcase ,s1) (upcase ,s2))))
-
-(static-if (fboundp 'member-ignore-case)
-    (defalias 'string-list-member-ignore-case
-      'member-ignore-case)
-  (defsubst string-list-member-ignore-case (thing list)
-    "Returns t if thing is member of list, not funcallable"
-    (member-if
-     (lambda (item)
-       (and (stringp item) (string-equal-ignore-case thing item)))
-     list)))
-
-(defsubst string-list-remove-ignore-case (thing list)
-  (let ((element (string-list-member-ignore-case thing list)))
-    (if element
-       (remq (car element) list)
-      list)))
-
-(defsubst string-list-delete-ignore-case (thing list)
-  (let ((element (string-list-member-ignore-case thing list)))
-    (if element
-       (delq (car element) list)
-      list)))
-
-(defsubst string-list-remove (thing list)
-  (let ((element (member thing list)))
-    (if element
-       (remq (car element) list)
-      list)))
-
-(defsubst string-list-delete (thing list)
-  (let ((element (member thing list)))
-    (if element
-       (delq (car element) list)
-      list)))
-
-(defsubst string-list-modify-ignore-case (modifiers list)
-  (dolist (modifier modifiers)
-    (let ((p list))
-      (while p
-       (if (string-equal-ignore-case (car modifier) (car p))
-           (setcar p (cdr modifier)))
-       (setq p (cdr p)))))
-  list)
-
-(static-if (fboundp 'assoc-ignore-case)
-    (defalias 'string-assoc-ignore-case 'assoc-ignore-case)
-  (defsubst string-assoc-ignore-case (key list)
-    (assoc-if
-     (lambda (item) (string-equal-ignore-case item key))
-     list)))
-
-(defsubst regexp-assoc-ignore-case (key list)
-  "Assoc with REGEXP-KEY from LIST."
-  (save-match-data
-    (assoc-if
-     (lambda (item)
-       (string-match (concat "^" (upcase key)) "$") (upcase item))
-     list)))
-
-(defsubst regexp-rassoc-ignore-case (key list)
-  "Assoc with KEY from LIST, in which keys are regexps."
-  (rassoc-if
-   (lambda (item)
-     (string-match (concat "^" (upcase key) "$") (upcase item)))
-   list))
-
-(defmacro list-to-alist (list)
-  `(mapcar #'list ,list))
-
-(put 'filter-elements 'lisp-indent-function 2)
-
-(defmacro filter-elements (element list condition)
-  `(let (result tail ,element)
-     (setq tail ,list)
-     (while tail
-       (setq ,element (car tail))
-       (if ,condition
-          (setq result (cons ,element result)))
-       (setq tail (cdr tail)))
-     (nreverse result)))
-
-\f
-;;; @ helper functions
-;;;
-(defmacro liece-functionp (form)
-  `(or (and (symbolp ,form) (fboundp ,form))
-       (and (listp ,form) (eq (car ,form) 'lambda))
-       (byte-code-function-p ,form)))
-
-(defun liece-eval-form (form)
-  (cond
-   ((and (listp form) (liece-functionp (car form)))
-    (eval form))
-   ((and (symbolp form) (boundp form))
-    (symbol-value form))
-   (t form)))
-
-(defun liece-or (&rest elems)
-  "Return non-nil if any of the elements are non-nil."
-  (catch 'found
-    (while elems
-      (when (pop elems)
-        (throw 'found t)))))
-
-(defun liece-and (&rest elems)
-  "Return non-nil if all of the elements are non-nil."
-  (catch 'found
-    (while elems
-      (unless (pop elems)
-        (throw 'found nil)))
-    t))
-
-(defun liece-locate-path (subdir &optional filename)
-  (let ((dir (liece-locate-data-directory
-             (downcase (product-name (product-find 'liece-version))))))
-    (when (and dir (file-directory-p dir))
-      (if filename
-         (expand-file-name filename (concat dir subdir))
-       (concat dir subdir)))))
-
-(defun liece-locate-icon-file (filename)
-  (if (null liece-icon-directory)
-      (setq liece-icon-directory (liece-locate-path "icons")))
-  (setq filename (expand-file-name filename liece-icon-directory))
-  (if (and filename (file-exists-p filename))
-      filename))
-
-(defmacro liece-next-line (arg)
-  `(let ((i 0))
-     (while (< i ,arg)
-       (if (eobp) (newline)(next-line 1))
-       (setq i (1+ i)))))
-
-;; Borrowed from `edebug.el'.
-(defvar liece-gensym-index 0
-  "Integer used by `liece-gensym' to produce new names.")
-
-(defun liece-gensym (&optional prefix)
-  "Generate a fresh uninterned symbol.
-There is an  optional argument, PREFIX.  PREFIX is the
-string that begins the new name. Most people take just the default,
-except when debugging needs suggest otherwise."
-  (if (null prefix)
-      (setq prefix "G"))
-  (let ((newsymbol nil)
-        (newname   ""))
-    (while (not newsymbol)
-      (setq newname (concat prefix (int-to-string liece-gensym-index))
-           liece-gensym-index (1+ liece-gensym-index))
-      (if (not (intern-soft newname))
-          (setq newsymbol (make-symbol newname))))
-    newsymbol))
-
-(provide 'liece-inlines)
-
-;;; liece-inlines.el ends here
diff --git a/lisp/liece-intl.el b/lisp/liece-intl.el
deleted file mode 100644 (file)
index 78b9f66..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-;;; liece-intl.el --- Localized messages for IRC.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-12-30
-;; Revised: 1999-09-03
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile
-  (require 'cl)
-  (require 'liece-compat))
-
-(require 'gettext)
-
-(defgroup liece-intl nil
-  "Convert messages to localized them"
-  :group 'liece-vars)
-
-(defcustom liece-intl-catalogue-directory nil
-  "Normal position of PO files."
-  :type 'directory
-  :group 'liece-intl)
-
-(defcustom liece-intl-use-localized-messages t
-  "If non-nil display localized messages."
-  :type 'boolean
-  :group 'liece-intl)
-  
-(defvar liece-intl-message-alist nil)
-(defvar liece-intl-default-mime-charset 'x-ctext)
-(defvar liece-intl-mime-charset nil)
-(defvar liece-intl-domain "liece")
-
-;;;###liece-autoload
-(defmacro liece-intl-get-msgstr (msgid)
-  `(if liece-intl-use-localized-messages
-       (dgettext liece-intl-domain ,msgid)
-     ,msgid))
-
-;;;###liece-autoload
-(defalias '_ 'liece-intl-get-msgstr)
-
-(defun liece-intl-load-catalogue ()
-  (if (null liece-intl-catalogue-directory)
-      (setq liece-intl-catalogue-directory
-           (liece-locate-path "po")))
-  (bind-text-domain liece-intl-domain liece-intl-catalogue-directory))
-
-(provide 'liece-intl)
-
-;;; liece-intl.el ends here
diff --git a/lisp/liece-mail.el b/lisp/liece-mail.el
deleted file mode 100644 (file)
index 645c934..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-;;; liece-mail.el --- Message composing and sending utility.
-;; Copyright (C) 1999 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1998-12-29
-;; Keywords: IRC, liece, Gnus
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(require 'liece-version)
-
-(defgroup liece-mail nil
-  "Compose and send mail in IRC buffer"
-  :group 'liece-vars)
-
-(defcustom liece-mail-draft-buffer " *mail*"
-  "Generic draft buffer."
-  :group 'liece-mail
-  :type 'string)
-
-(defcustom liece-maintainer-address
-  "liece@unixuser.org (Liece developers)"
-  "The mail address of the Liece maintainers."
-  :group 'liece-mail
-  :type 'string)
-
-(defun liece-command-mail-compose (nick)
-  (interactive
-   (let ((completion-ignore-case t))
-     (list
-      (liece-minibuffer-completing-read
-       "To whom: " liece-nick-alist nil nil nil nil liece-current-chat-partner))))
-  (let ((composefunc (get mail-user-agent 'composefunc)) (to nick)
-       (user-agent (liece-version)) uah)
-    (if (setq uah (liece-nick-get-user-at-host nick))
-       (setq to (concat to " <" uah ">")))
-    (if (fboundp composefunc)
-       (funcall composefunc to nil (` (("User-Agent" . (, user-agent))))))))
-
-(defun liece-command-submit-bug-report ()
-  "Send a bug report to the Gnus maintainers."
-  (interactive)
-  (require 'reporter)
-  
-  (reporter-submit-bug-report
-   liece-maintainer-address
-   (liece-version)
-   (let ((base (list 'window-system
-                    'liece-highlight-mode
-                    'liece-detect-coding-system)))
-     base)))
-  
-(provide 'liece-mail)
-
-;;; liece-mail.el ends here
diff --git a/lisp/liece-make.el b/lisp/liece-make.el
deleted file mode 100644 (file)
index b96100c..0000000
+++ /dev/null
@@ -1,202 +0,0 @@
-;;; liece-make.el --- Generic make procedures.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1999-03-02
-;; Keywords: IRC, liece, APEL
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(require 'cl)
-
-(defun install-just-print-p ()
-  (let ((flag (getenv "MAKEFLAGS"))
-       case-fold-search)
-    (princ (format "%s\n" flag))
-    (if flag
-       (string-match "^\\(\\(--[^ ]+ \\)+-\\|[^ =-]\\)*n" flag))))
-
-(defun config-liece ()
-  (let (prefix exec-prefix lisp-dir version-specific-lisp-dir)
-    (and (setq prefix (car command-line-args-left))
-         (or (string-equal "NONE" prefix)
-             (setq PREFIX prefix)))
-    (setq command-line-args-left (cdr command-line-args-left))
-    (and (setq lisp-dir (car command-line-args-left))
-         (or (string-equal "NONE" lisp-dir)
-             (setq LISPDIR lisp-dir)))
-    (setq command-line-args-left (cdr command-line-args-left))
-    (and (setq version-specific-lisp-dir (car command-line-args-left))
-         (or (string-equal "NONE" version-specific-lisp-dir)
-             (progn
-               (defvar VERSION_SPECIFIC_LISPDIR version-specific-lisp-dir)
-               (princ (format "VERSION_SPECIFIC_LISPDIR=%s\n"
-                              VERSION_SPECIFIC_LISPDIR)))))
-    (setq command-line-args-left (cdr command-line-args-left))
-    (setq load-path (cons (expand-file-name ".") load-path))
-    (load "liece-config")
-    (or (boundp 'liece-modules-to-compile)
-       (load "liece-modules"))
-    (princ (format "PREFIX=%s\tLISPDIR=%s\n" PREFIX LISPDIR))))
-
-(defun compile-liece ()
-  ;;(setq byte-compile-dynamic t)
-  (config-liece)
-  (compile-elisp-modules liece-modules-to-compile "."))
-
-(defun install-liece ()
-  (compile-liece)
-  (let ((just-print (install-just-print-p))
-       (dir (expand-file-name "liece" LISPDIR)))
-    (princ (format "%s\n" emacs-version))
-    (install-elisp-modules liece-modules "." dir just-print)))
-
-(defun install-update-manifest-file (package dir &optional just-print)
-  (message "Generating MANIFEST.%s for the package..." package)
-  (unless just-print
-    (with-temp-buffer
-      (insert "pkginfo/MANIFEST." package "\n"
-             "lisp/" package "/"
-             (mapconcat #'identity
-                        (sort
-                         (mapcar (lambda (symbol)
-                                   (format "%s.el\nlisp/%s/%s.elc"
-                                           symbol package symbol))
-                                 liece-modules-to-compile)
-                         #'string-lessp)
-                        (concat "\nlisp/" package "/"))
-             "\n")
-      (when (file-directory-p "../doc")
-       (insert "info/"
-               (mapconcat #'identity
-                          (sort
-                           (directory-files
-                            "../doc" nil liece-config-info-file-regexp)
-                           #'string-lessp)
-                          "\ninfo/")
-               "\n"))
-      (let ((dirs '("icons" "po" "styles")))
-       (dolist (dir dirs)
-         (when (file-directory-p (concat "../etc/" dir))
-           (insert "etc/" package "/" dir "/"
-                   (mapconcat #'identity
-                              (sort (directory-files (concat "../etc/" dir)
-                                                     nil nil nil t)
-                                    #'string-lessp)
-                              (concat "\netc/" package "/" dir "/"))
-                   "\n"))))
-      (write-file (expand-file-name (concat "MANIFEST." package) dir)))))
-
-(defun install-update-package-files (package dir &optional just-print)
-  (cond (just-print
-        (princ (format "Updating autoloads in directory %s..\n\n" dir))
-          
-        (princ (format "Processing %s\n" dir))
-        (princ "Generating custom-load.el...\n\n")
-           
-        (princ (format "Compiling %s...\n"
-                       (expand-file-name "auto-autoloads.el" dir)))
-        (princ (format "Wrote %s\n"
-                       (expand-file-name "auto-autoloads.elc" dir)))
-          
-        (princ (format "Compiling %s...\n"
-                       (expand-file-name "custom-load.el" dir)))
-        (princ (format "Wrote %s\n"
-                       (expand-file-name "custom-load.elc" dir))))
-       (t
-        (setq autoload-package-name package)
-        (add-to-list 'command-line-args-left dir)
-        (batch-update-directory)
-       
-        (add-to-list 'command-line-args-left dir)
-        (Custom-make-dependencies)
-          
-        (byte-compile-file (expand-file-name "auto-autoloads.el" dir))
-        (byte-compile-file (expand-file-name "custom-load.el" dir)))))
-
-(defun config-liece-package-directory ()
-  (if (boundp 'early-packages)
-      (let ((dirs (append (if early-package-load-path
-                             early-packages)
-                         (if late-package-load-path
-                             late-packages)
-                         (if last-package-load-path
-                             last-packages)))
-           dir)
-       (while (not (file-exists-p
-                    (setq dir (car dirs))))
-         (setq dirs (cdr dirs)))
-       (defvar PACKAGEDIR dir)
-       (princ (format "PACKAGEDIR=%s\n" PACKAGEDIR)))))
-
-(defun config-liece-package ()
-  (let (package-dir)
-    (and (setq package-dir (car command-line-args-left))
-        (or (string= "NONE" package-dir)
-            (defvar PACKAGEDIR package-dir)))
-    (config-liece)
-    (config-liece-package-directory)
-    (setq command-line-args-left (cdr command-line-args-left))))
-
-(defun compile-liece-package ()
-  (config-liece-package)
-  (compile-elisp-modules liece-modules-to-compile "."))
-
-(defun install-liece-package ()
-  (config-liece-package)
-  (let ((just-print (install-just-print-p))
-       (dir (expand-file-name "lisp/liece" PACKAGEDIR))
-       (pkginfo-dir (expand-file-name "pkginfo" PACKAGEDIR)))
-    (install-elisp-modules liece-modules "." dir just-print)
-    (install-update-package-files "liece" dir just-print)
-    (install-update-manifest-file "liece" pkginfo-dir just-print)))
-
-(defun autoload-liece ()
-  (config-liece)
-  (require 'autoload)
-  (let* ((generated-autoload-file "liece-setup.el")
-        (generate-autoload-cookie ";;;###liece-autoload")
-        (buf (find-file-noselect generated-autoload-file))
-        make-backup-files)
-    (set-buffer buf)
-    (delete-region (point-min) (point-max))
-    (insert-string
-     (format "(if (not (featurep '%s)) (progn\n"
-            (file-name-sans-extension generated-autoload-file)))
-    (mapcar
-     (function
-      (lambda (file)
-       (generate-file-autoloads
-        (concat (symbol-name file) ".el"))))
-     liece-modules-to-compile)
-    (goto-char (point-max))
-    (insert-string
-     (format "(provide '%s)))\n"
-            (file-name-sans-extension generated-autoload-file)))
-    (save-buffer)))
-
-(provide 'liece-make)
-
-;;; liece-make.el ends here
diff --git a/lisp/liece-menu.el b/lisp/liece-menu.el
deleted file mode 100644 (file)
index 43738f3..0000000
+++ /dev/null
@@ -1,295 +0,0 @@
-;;; liece-menu.el --- Define menus.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1999-09-06
-;; Revised: 1999-09-06
-;; Keywords: menu, easymenu
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile
-  (require 'easymenu)
-  (require 'advice)
-  (require 'liece-compat)
-  (require 'liece-commands)
-  (require 'liece-intl)
-  (require 'liece-nick))
-
-(defvar liece-use-localized-menu (featurep 'meadow))
-
-(defvar liece-nick-popup-menu
-  '("Liece"
-    ["Finger" liece-menu-callback-finger
-     liece-nick-region-nicks]
-    "----"
-    ["CTCP VERSION" liece-menu-callback-ctcp-version
-     liece-nick-region-nicks]
-    ["CTCP USERINFO" liece-menu-callback-ctcp-userinfo
-     liece-nick-region-nicks]
-    ["CTCP HELP" liece-menu-callback-ctcp-help
-     liece-nick-region-nicks]
-    ["CTCP CLIENTINFO" liece-menu-callback-ctcp-clientinfo
-     liece-nick-region-nicks]
-    ["CTCP PING" liece-menu-callback-ctcp-ping
-     liece-nick-region-nicks]
-    "----"
-    ["Set Channel Operator(s)" liece-menu-callback-mode+o
-     liece-nick-region-nicks]
-    ["Set Channel Voice(s)" liece-menu-callback-mode+v
-     liece-nick-region-nicks]
-    ["Unset Channel Operator(s)" liece-menu-callback-mode-o
-     liece-nick-region-nicks]
-    ["Unset Channel Voice(s)" liece-menu-callback-mode-v
-     liece-nick-region-nicks]
-    "----"
-    ["Kick" liece-menu-callback-kick
-     liece-nick-region-nicks]))
-      
-(defvar liece-menu-url-menu '("URL" "----"))
-(defvar liece-menu-dcc-menu
-  '("DCC"
-    ["Send file" liece-command-dcc-send t]
-    ["Receive file" liece-command-dcc-receive t]
-    "----"
-    ["Send chat request" liece-command-dcc-chat-listen t]
-    ["Accept chat request" liece-command-dcc-chat-connect t]
-    "----"
-    ["List DCC request" liece-command-dcc-list t]
-    ["Dispatch stacked DCC requests" liece-command-dcc-accept t]))
-  
-(defvar liece-menu-private-menu
-  '("Private"
-    ["Toggle private conversation" liece-command-toggle-private
-     (liece-server-opened)]
-    ["IsON" liece-command-ison (liece-server-opened)]
-    ["Register friends" liece-command-activate-friends t]
-    ["Unregister friends" liece-command-deactivate-friends t]
-    ["Display userhost" liece-command-userhost (liece-server-opened)]
-    ["Ignore nicks / regexp" liece-command-kill t]
-    ["Compose mail" liece-command-mail-compose t]))
-  
-(defvar liece-menu-ctcp-menu
-  '("CTCP"
-    ["ACTION" liece-command-client-action
-     liece-current-channel]
-    ["VERSION" liece-command-client-version
-     liece-current-channel]
-    ["USERINFO" liece-command-client-userinfo
-     liece-current-channel]
-    ["HELP" liece-command-client-help
-     liece-current-channel]
-    ["CLIENTINFO" liece-command-client-clientinfo
-     liece-current-channel]
-    ["PING" liece-command-client-ping
-     liece-current-channel]
-    "----"
-    ["Request X-Face" liece-command-client-x-face
-     liece-current-channel]
-    ["Set my X-Face" liece-command-client-x-face-from-xbm-file
-     liece-current-channel]))
-
-(defvar liece-menu-channel-menu
-  (nconc
-   '("Channel"
-     ["Join channel" liece-command-join
-      (liece-server-opened)]
-     ["Part channel" liece-command-part
-      (or liece-current-channels liece-current-chat-partners)]
-     ["Go to next channel" liece-command-next-channel
-      (or liece-current-channels liece-current-chat-partners)]
-     ["Go to previous channel" liece-command-previous-channel
-      (or liece-current-channels liece-current-chat-partners)]
-     ["Rotate left channels" liece-command-pop
-      (or liece-current-channels liece-current-chat-partners)]
-     ["Rotate right channels" liece-command-push
-      (or liece-current-channels liece-current-chat-partners)]
-     "----"
-     ["Invite to this channel" liece-command-invite
-      liece-current-channel]
-     ["Kick out from this channel" liece-command-kick
-      liece-current-channel]
-     "----"
-     ["Set mode of this channel" liece-command-modec
-      liece-current-channel]
-     ["Set topic of this channel" liece-command-topic
-      liece-current-channel]
-     "----"
-     ["Toggle freeze of this channel" liece-command-freeze
-      liece-current-channel]
-     ["Toggle own freeze of this channel" liece-command-own-freeze
-      liece-current-channel]
-     ["Toggle beep notice of this channel" liece-dialogue-beep
-      liece-current-channel]
-     "----"
-     ["List channel" liece-command-list
-      (liece-server-opened)]
-     ["Display names of channel" liece-command-names
-      (liece-server-opened)]
-     ["Display who are on the channel" liece-command-names
-      (liece-server-opened)]
-     "----"
-     ["Set default key of this channel" liece-command-set-default-key
-      (or liece-current-channel liece-current-chat-partner)]
-     "----")
-   (list liece-menu-ctcp-menu)))
-
-(defvar liece-menu-IRC-menu
-  '("IRC"
-    ["Load variables file" liece-command-load-vars t]
-    ["Save variables file" liece-command-save-vars t]
-    "----"
-    ["Change window style" liece-command-set-window-style t]
-    ["Reload style file" liece-command-reload-window-style t]
-    ["Reconfigure windows" liece-command-reconfigure-windows t]
-    ["Toggle channel buffer display state"
-     liece-command-toggle-channel-buffer-mode t]
-    ["Toggle nick buffer display state"
-     liece-command-toggle-nick-buffer-mode t]
-    "----"
-    ["Enter debug mode" liece-command-debug t]
-    ["Quit IRC" liece-command-quit t]))
-
-(defvar liece-menu-alist
-  '(
-    (liece-menu-IRC-menu "IRC Menu.")
-    (liece-menu-channel-menu "Channel Menu.")
-    (liece-menu-private-menu "Private Menu.")
-    (liece-menu-dcc-menu "DCC Menu.")
-    (liece-menu-url-menu "URL Menu.")))
-
-(defvar liece-menu-IRC-menu-map)
-(defvar liece-menu-channel-menu-map)
-(defvar liece-menu-private-menu-map)
-(defvar liece-menu-dcc-menu-map)
-(defvar liece-menu-url-menu-map)
-
-;;; @ popup menus
-;;;
-(defmacro liece-menu-bogus-filter-constructor (name menu)
-  `(let (x y)
-     (setq x (x-popup-menu t ,menu)
-           y (and x (lookup-key ,menu (apply #'vector x))))
-     (if (and x y)
-         (funcall y))))
-
-(defmacro liece-menu-popup-menu (event menu)
-  (if (featurep 'xemacs)
-      `(popup-menu ,menu)
-    `(let (bogus-menu)
-       (easy-menu-define bogus-menu nil nil ,menu)
-       (liece-menu-bogus-filter-constructor "Popup" bogus-menu))))
-
-(defun liece-nick-popup-menu (widget &optional event)
-  (let ((menu (copy-sequence liece-nick-popup-menu))
-       (pos (widget-event-point event)))
-    (when pos
-      (goto-char pos)
-      (if (eq major-mode 'liece-nick-mode)
-         (liece-nick-update-region))
-      (liece-menu-popup-menu event menu))))
-
-;;; @ initialize menus
-;;;
-(when (or (featurep 'menubar); XEmacs
-         (featurep 'menu-bar))
-  (add-hook 'liece-command-mode-hook 'liece-command-define-menus)
-  (add-hook 'liece-command-mode-hook 'liece-command-add-menus 'append)
-  (add-hook 'liece-add-url-functions 'liece-menu-add-url))
-
-(defun liece-menu-define (menu)
-  (eval (list 'easy-menu-define
-             (intern (concat (symbol-name (car menu)) "-map"))
-             'liece-command-mode-map (cadr menu)
-             '(symbol-value (car menu)))))
-
-(defun liece-command-define-menus-1 (value)
-  (dolist (spec value)
-    (cond
-     ((stringp spec))
-     ((vectorp spec)
-      (when liece-use-localized-menu
-       (aset spec 0 (liece-intl-get-msgstr (aref spec 0)))))
-     ((listp spec)
-      (liece-command-define-menus-1 spec)))))
-
-(defun liece-command-define-menus ()
-  (dolist (menu (reverse liece-menu-alist))
-    (let ((value (symbol-value (car menu))))
-      (liece-command-define-menus-1 value)
-      (liece-menu-define menu))))
-
-(defun liece-command-add-menus ()
-  (dolist (menu liece-menu-alist)
-    (easy-menu-add (symbol-value (car menu)) liece-command-mode-map)))
-
-(defun liece-menu-add-url (url)
-  (when (boundp 'liece-menu-url-menu-map)
-    (easy-menu-add-item
-     liece-menu-url-menu-map nil
-     (vector url (list 'liece-command-browse-url url) t))))
-
-;;; @ menu callbacks
-;;;
-(autoload 'liece-menu-callback-ctcp-version "liece-ctcp" nil t)
-(autoload 'liece-menu-callback-ctcp-userinfo "liece-ctcp" nil t)
-(autoload 'liece-menu-callback-ctcp-help "liece-ctcp" nil t)
-(autoload 'liece-menu-callback-ctcp-clientinfo "liece-ctcp" nil t)
-(autoload 'liece-menu-callback-ctcp-ping "liece-ctcp" nil t)
-
-(defun liece-menu-callback-finger ()
-  (interactive)
-  (dolist (nick liece-nick-region-nicks)
-    (liece-command-finger nick)))
-
-(defun liece-menu-callback-kick ()
-  (interactive)
-  (dolist (nick liece-nick-region-nicks)
-    (liece-command-kick nick)))
-
-(defun liece-menu-callback-mode+o ()
-  (interactive)
-  (dolist (oper liece-nick-region-opers)
-    (setq liece-nick-region-nicks
-         (string-list-remove-ignore-case oper liece-nick-region-nicks)))
-  (liece-command-mode+o liece-nick-region-nicks))
-
-(defun liece-menu-callback-mode+v ()
-  (interactive)
-  (dolist (voice liece-nick-region-voices)
-    (setq liece-nick-region-nicks
-         (string-list-remove-ignore-case voice liece-nick-region-nicks)))
-  (liece-command-mode+v liece-nick-region-nicks))
-
-(defun liece-menu-callback-mode-o ()
-  (interactive)
-  (liece-command-mode-o liece-nick-region-opers))
-
-(defun liece-menu-callback-mode-v ()
-  (interactive)
-  (liece-command-mode-v liece-nick-region-voices))
-
-(provide 'liece-menu)
-
-;;; liece-menu.el ends here
diff --git a/lisp/liece-message.el b/lisp/liece-message.el
deleted file mode 100644 (file)
index de35c33..0000000
+++ /dev/null
@@ -1,181 +0,0 @@
-;;; liece-message.el --- generate and display message line
-;; Copyright (C) 1999 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1999-05-30
-;; Keywords: message
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(defgroup liece-message nil
-  "Messages"
-  :tag "Message"
-  :prefix "liece-"
-  :group 'liece)
-
-(defcustom liece-message-brackets
-  '(((type notice)
-     ("-" "-"))
-    ((and (type action) (direction outgoing))
-     ("]" "["))
-    ((type action)
-     ("[" "]"))
-    ((and (range private) (direction incoming))
-     ("=" "="))
-    ((direction outgoing)
-     (">" "<"))
-    ((range external)
-     ("(" ")"))
-    (t
-     ("<" ">")))
-  "Brackets."
-  :group 'liece-message)
-
-(defcustom liece-message-tags
-  '(((and (direction outgoing) (range private))
-     (liece-message-target liece-message-target))
-    ((range private)
-     (liece-message-speaker liece-message-speaker))
-    (t
-     (liece-message-speaker
-      (concat liece-message-target ":" liece-message-speaker))))
-  "Primary tags."
-  :group 'liece-message)
-
-(defcustom liece-message-empty-predicate
-  (function (lambda (message) (string-equal "" message)))
-  "Return non-nil if message is regarded as empty string."
-  :group 'liece-message)
-     
-(defvar liece-message-type nil)
-(defvar liece-message-target nil)
-(defvar liece-message-speaker nil)
-(defvar liece-message-direction nil)
-
-(defun liece-message-predicate (val)
-  (cond
-   ((null val)
-    nil)
-   ((eq val t)
-    t)
-   ((listp val)
-    (let ((pred (pop val)))
-      (cond
-       ((eq pred 'or)
-       (apply 'liece-or (mapcar 'liece-message-predicate val)))
-       ((eq pred 'and)
-       (apply 'liece-and (mapcar 'liece-message-predicate val)))
-       ((eq pred 'not)
-       (not (liece-message-predicate (car val))))
-       ((eq pred 'type)
-       (eq liece-message-type (car val)))
-       ((eq pred 'direction)
-       (cond
-        ((eq (car val) 'outgoing)
-         liece-message-direction)
-        ((eq (car val) 'incoming)
-         (not liece-message-direction))))
-       ((eq pred 'mode)
-       (eq liece-command-buffer-mode (car val)))
-       ((eq pred 'range)
-       (cond
-        ((eq (car val) 'private)
-         (not (liece-channel-p (liece-channel-real liece-message-target))))
-        ((eq (car val) 'external)
-         (not (liece-channel-member
-               liece-message-target (liece-nick-get-joined-channels
-                                      liece-message-speaker))))))
-       ((liece-functionp pred)
-       (liece-eval-form (cons pred val)))
-       (t
-       (liece-message-predicate pred)))))
-   (t
-    (liece-eval-form val))))
-
-(defun liece-message-brackets-function ()
-  (let* ((specs liece-message-brackets) spec
-        (brackets
-         (catch 'found
-           (while specs
-             (setq spec (pop specs))
-             (if (liece-message-predicate (car spec))
-                 (throw 'found (cadr spec)))))))
-    brackets))
-  
-(defun liece-message-tags-function ()
-  (let* ((specs liece-message-tags) spec
-        (tags
-         (catch 'found
-           (while specs
-             (setq spec (pop specs))
-             (if (liece-message-predicate (car spec))
-                 (throw 'found (cadr spec)))))))
-    (list (eval (car tags)) (eval (cadr tags)))))
-
-(defun liece-message-buffer-function ()
-  (let* ((target (if (liece-message-predicate
-                     '(and (range private) (direction incoming)))
-                    liece-message-speaker
-                  liece-message-target))
-        (buffer (liece-pick-buffer target)))
-    (cond
-     ((car buffer) buffer)
-     (liece-auto-join-partner
-      (liece-channel-prepare-partner target)
-      (liece-pick-buffer target)))))
-
-(defun liece-message-parent-buffer (cbuffer)
-  (if (or (and (car cbuffer) (liece-frozen (car cbuffer)))
-         (and (eq liece-command-buffer-mode 'channel)
-              liece-current-channel
-              (not (liece-channel-equal liece-message-target
-                                        liece-current-channel)))
-         (and (eq liece-command-buffer-mode 'chat)
-              liece-current-chat-partner
-              (not (eq liece-message-direction 'outgoing))
-              (or
-               (not (liece-nick-equal liece-message-speaker
-                                      liece-current-chat-partner))
-               (not (liece-nick-equal liece-message-target
-                                      (liece-current-nickname))))))
-      (append liece-D-buffer liece-O-buffer)
-    liece-D-buffer))
-
-;;;###liece-autoload
-(defun liece-display-message (temp)
-  (let* ((brackets (liece-message-brackets-function))
-        (tags (liece-message-tags-function))
-        (buffer (liece-message-buffer-function))
-        (parent (liece-message-parent-buffer buffer)))
-    (liece-insert buffer
-                  (concat (car brackets) (car tags) (cadr brackets)
-                          " " temp "\n"))
-    (liece-insert parent
-                 (concat (car brackets) (cadr tags) (cadr brackets)
-                         " " temp "\n"))
-    (run-hook-with-args 'liece-display-message-hook temp)))
-   
-(provide 'liece-message)
-
-;;; liece-message.el ends here
diff --git a/lisp/liece-minibuf.el b/lisp/liece-minibuf.el
deleted file mode 100644 (file)
index 1f44d85..0000000
+++ /dev/null
@@ -1,233 +0,0 @@
-;;; liece-minibuf.el --- Minibuffer custom completion.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1999-02-02
-;; Revised: 1999-02-02
-;; Keywords: minibuffer, completion
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(require 'liece-compat)
-(require 'liece-intl)
-(require 'liece-nick)
-
-(defvar liece-minibuffer-map nil)
-(defvar liece-minibuffer-complete-function nil)
-
-(autoload 'completing-read-multiple "crm")
-(defvar crm-separator)
-
-(unless liece-minibuffer-map
-  (setq liece-minibuffer-map
-       (let ((map (make-sparse-keymap)))
-         (set-keymap-parent map minibuffer-local-map)
-         (define-key map " " nil)
-         (define-key map "\t" 'liece-minibuffer-complete)
-         (define-key map "\r" 'exit-minibuffer)
-         (define-key map "\n" 'exit-minibuffer)
-         map)))
-
-(defun liece-minibuffer-complete ()
-  (interactive)
-  (if (and liece-minibuffer-complete-function
-          (fboundp liece-minibuffer-complete-function))
-      (funcall liece-minibuffer-complete-function)))
-
-(defun liece-minibuffer-parse-modes ()
-  (save-excursion
-    (let (preceding-char (state 'flag) type)
-      (beginning-of-buffer)
-      (while (not (eobp))
-       (forward-char)
-       (setq preceding-char (char-before))
-       (cond
-        ((and (memq state '(flag arg))
-              (or (char-equal preceding-char ?+)
-                  (char-equal preceding-char ?-)))
-         (setq state 'mode
-               type nil))
-        ((and (eq state 'mode) (char-equal preceding-char ? ))
-         (setq state 'arg))
-        ((and (eq state 'mode) (memq preceding-char '(?o ?v)))
-         (setq type (nconc type (list 'nick preceding-char
-                                      (char-before (1- (point)))))))
-        ((and (eq state 'mode) (eq preceding-char ?b))
-         (setq type (nconc type (list 'ban (char-before (1- (point)))))))))
-      (cons state type))))
-       
-(defun liece-minibuffer-prepare-candidate ()
-  (let ((point (point)))
-    (skip-syntax-backward "^ ")
-    (prog1 (buffer-substring (point) point)
-      (goto-char point))))
-
-(defun liece-minibuffer-delete-candidate ()
-  (let ((point (point)))
-    (skip-syntax-backward "^ ")
-    (delete-region (point) point)))
-
-(defun liece-minibuffer-finalize-completion (completion pattern all)
-  (cond
-   ((eq completion t))
-   ((null completion)
-    (temp-minibuffer-message (_ "[No match]")))
-   ((not (string= pattern completion))
-    (liece-minibuffer-delete-candidate)
-    (insert completion))
-   (t
-    (with-output-to-temp-buffer "*Completions*"
-      (funcall completion-display-completion-list-function
-              (sort all (function (lambda (x y)
-                                    (string-lessp
-                                     (or (car-safe x) x)
-                                     (or (car-safe y) y))))))))))
-
-(defun liece-minibuffer-complete-channel-modes ()
-  (let* ((preceding-char (char-before)) completion candidate all
-        (modes (mapconcat
-                (function car)
-                liece-supported-channel-mode-alist ""))
-        (nicks (liece-channel-get-nicks))
-        uahs
-        (context (liece-minibuffer-parse-modes))
-        (state (car context)) (type (cdr context)))
-    (cond
-     ((memq state '(flag mode))
-      (temp-minibuffer-message
-       (format (_ "[Modes are: %s]") modes)))
-     ((and (eq state 'arg) (memq 'ban type))
-      (if (memq ?- type)
-         (setq uahs (list-to-alist (liece-channel-get-bans)))
-       (setq uahs (mapcar
-                   (function
-                    (lambda (nick)
-                      (list (concat nick "!"
-                                    (liece-nick-get-user-at-host nick)))))
-                   nicks)))
-      (setq candidate (liece-minibuffer-prepare-candidate)
-           completion (try-completion candidate uahs)
-           all (all-completions candidate uahs)))
-     ((and (eq state 'arg) (memq 'nick type))
-      (let* ((masks (cond ((memq ?o type) (liece-channel-get-operators))
-                         ((memq ?v type) (liece-channel-get-voices))))
-            (nicks
-             (if (memq ?- type)
-                 masks
-               (remove-if
-                (` (lambda (item)
-                     (and (stringp item)
-                          (string-list-member-ignore-case item '(, masks)))))
-                nicks))))
-       (setq nicks (mapcar (function list) nicks)
-             candidate (liece-minibuffer-prepare-candidate)
-             completion (try-completion candidate nicks)
-             all (all-completions candidate nicks)))))
-    (liece-minibuffer-finalize-completion completion candidate all)))
-
-(defun liece-minibuffer-complete-user-modes ()
-  (temp-minibuffer-message
-   (format
-    (_ "[Modes are: %s]")
-    (mapconcat (function car) liece-supported-user-mode-alist ""))))
-
-(defun liece-minibuffer-completing-read
-  (prompt table &optional predicate require-match initial-input history default)
-  (completing-read
-   (if default
-       (format "%s(default %s) " prompt default)
-     prompt)
-   table predicate require-match initial-input history default))
-
-(defvar liece-minibuffer-completion-separator ","
-  "Separator used for separating strings in `liece-minibuffer-completing-read-multiple'.
-It should be regular expression which doesn't match word-continuent characters.")
-
-(defvar liece-minibuffer-completion-table nil)
-  
-(defun liece-minibuffer-completing-read-multiple-1 (string predicate flag)
-  "Function used by `liece-minibuffer-completing-read-multiple'.
-The value of STRING is the string to be completed.
-
-The value of PREDICATE is a function to filter possible matches, or
-nil if none.
-
-The value of FLAG is used to specify the type of completion operation.
-A value of nil specifies `try-completion'.  A value of t specifies
-`all-completions'.  A value of lambda specifes a test for an exact match.
-
-For more information on STRING, PREDICATE, and FLAG, see the Elisp
-Reference sections on 'Programmed Completion' and 'Basic Completion
-Functions'."
-  (let ((except
-        (butlast
-         (split-string string liece-minibuffer-completion-separator)))
-       (table
-        (copy-sequence liece-minibuffer-completion-table))
-       lead)
-    (when (string-match
-          (concat ".*" liece-minibuffer-completion-separator)
-          string)
-      (setq lead (substring string 0 (match-end 0))
-           string (substring string (match-end 0))))
-    (while except
-      (setq table (remassoc (car except) table)
-           except (cdr except)))
-    (if (null flag)
-       (progn
-         (setq string (try-completion string table predicate))
-         (or (eq t string)
-             (concat lead string)))
-      (if (eq flag 'lambda)
-         (eq t (try-completion string table predicate))
-       (if flag
-           (all-completions string table predicate))))))
-
-(defun liece-minibuffer-completing-read-multiple
-  (prompt table &optional predicate require-match initial-input
-         history default multiple-candidate)
-  "Execute `completing-read' consequently.
-
-See the documentation for `completing-read' for details on the arguments:
-PROMPT, TABLE, PREDICATE, REQUIRE-MATCH, INITIAL-INPUT, HISTORY, DEFAULT."
-  (let ((prompt
-        (format "%s(punctuate by \"%s\") "
-                prompt liece-minibuffer-completion-separator)))
-    (if multiple-candidate
-       (let ((crm-separator
-              liece-minibuffer-completion-separator))
-         (completing-read-multiple
-          prompt table predicate require-match initial-input
-          history default))
-      (let ((liece-minibuffer-completion-table
-            table))
-       (split-string
-        (completing-read
-         prompt #'liece-minibuffer-completing-read-multiple-1
-         predicate require-match initial-input history default)
-        liece-minibuffer-completion-separator)))))
-
-(provide 'liece-minibuf)
-
-;;; liece-minibuf.el ends here
diff --git a/lisp/liece-misc.el b/lisp/liece-misc.el
deleted file mode 100644 (file)
index 79f6cea..0000000
+++ /dev/null
@@ -1,508 +0,0 @@
-;;; liece-misc.el --- Miscellaneous routines.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1998-11-25
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-and-compile
-  (require 'broken)
-  (require 'pccl)
-  (require 'invisible)
-  (require 'liece-inlines)
-  (require 'liece-coding))
-
-(eval-when-compile
-  (autoload '_ "liece-intl" nil nil 'macro))
-
-(defun liece-toggle-command-buffer-mode (&optional mode)
-  "Toggle command buffer MODE."
-  (let ((mode
-        (or mode
-            (if (eq liece-command-buffer-mode 'chat)
-                'channel
-              'chat)))
-       (hide (get 'liece-nick-buffer-mode 'hide)))
-    (cond
-     ((eq mode 'chat)
-      (put 'liece-nick-buffer-mode 'hide t)
-      (setq liece-private-indicator "P"))
-     (t
-      (put 'liece-nick-buffer-mode 'hide nil)
-      (setq liece-private-indicator "-")))
-    (and (not (eq liece-command-buffer-mode mode))
-        (not (eq hide (get 'liece-nick-buffer-mode 'hide)))
-        liece-nick-window-auto-hide
-        (liece-configure-windows))
-    (setq liece-command-buffer-mode mode)
-    liece-command-buffer-mode))
-
-(defsubst liece-set-frame-title-format ()
-  "Inline function for modifying `frame-title-format'."
-  (let ((frame-indicator liece-channel-indicator))
-    (when (eq liece-command-buffer-mode 'channel)
-      (if liece-display-status-on-channel-indicator
-         (setq frame-indicator liece-channel-indicator)
-       (setq frame-indicator
-             (format "%s: %s [%s]"
-                     liece-channel-indicator
-                     (or (and liece-current-channel
-                              (liece-channel-get-topic))
-                         "")
-                     (or (and liece-current-channel
-                              (liece-channel-get-modes))
-                         "")))))
-    (setq liece-channel-status-indicator frame-indicator)))
-
-(defsubst liece-set-channel-indicator ()
-  "Inline-function for modifying `liece-channel-indicator'."
-  (if (eq liece-command-buffer-mode 'chat)
-      (setq liece-channel-indicator
-           (if liece-current-chat-partner
-               (format (_ "Chatting with %s")
-                       liece-current-chat-partner)
-             (_ "No partner")))
-    (setq liece-channel-indicator
-         (if liece-current-channel
-             (concat liece-current-channel
-                     (if liece-display-status-on-channel-indicator
-                         (format ": %s [%s]"
-                                 (or (and liece-current-channel
-                                          (liece-channel-get-topic))
-                                     "")
-                                 (or (and liece-current-channel
-                                          (liece-channel-get-modes))
-                                     ""))
-                       ""))
-           (_ "No channel"))))
-  (with-current-buffer liece-command-buffer
-    (force-mode-line-update))
-  (if liece-display-frame-title
-      (liece-set-frame-title-format)))
-
-(defun liece-set-beep (buffer &optional arg)
-  (with-current-buffer buffer
-    (setq liece-beep (if arg (plusp arg) (not liece-beep))
-          liece-beep-indicator (if liece-beep "B" "-"))
-    (force-mode-line-update)))
-
-(defmacro liece-beep (&optional arg)
-  (list 'funcall 'liece-beep-function arg))
-
-(defun liece-freeze (buffer &optional arg)
-  (with-current-buffer buffer
-    (setq liece-freeze (if arg (plusp arg) (not liece-freeze))
-         liece-freeze-indicator (if liece-freeze "F" "-"))
-    (force-mode-line-update)))
-
-(defmacro liece-frozen (buffer)
-  (list 'with-current-buffer buffer 'liece-freeze))
-
-(defun liece-own-freeze (buffer &optional arg)
-  (with-current-buffer buffer
-    (setq liece-own-freeze (if arg (plusp arg) (not liece-own-freeze))
-         liece-own-freeze-indicator (if liece-own-freeze "M" "-"))
-    (force-mode-line-update)))
-
-(defmacro liece-own-frozen (buffer)
-  (list 'with-current-buffer buffer 'liece-own-freeze))
-
-(defun liece-ignore-this-p (nick user-at-host)
-  ;; Remove entries which are expired.
-  (let ((time (current-time)) expire-time)
-    (dolist (kill liece-kill-nickname)
-      (setq expire-time (if (cdr kill)
-                           (liece-time-difference time (cdr kill))
-                         1))
-      (when (< expire-time 0)
-       (if (zerop (cadddr kill))
-           (liece-insert-info liece-D-buffer
-                              (format (_ "Ignore timeout for %s expired.\n")
-                                      (car kill))))
-       (when (setq kill (string-assoc-ignore-case
-                         (car kill) liece-kill-nickname))
-         (setq liece-kill-nickname (delq kill liece-kill-nickname)
-               liece-save-variables-are-dirty t)))))
-  ;; Search on `liece-kill-nickname' and return non-nil if matches.
-  (unless (run-hook-with-args-until-success
-          'liece-custom-ignore-this-p nick user-at-host)
-    (let ((case-fold-search t))
-      (member-if
-       (lambda (kill)
-        (or (liece-nick-equal (car kill) nick)
-            (string-match (concat "\\<" (car kill) "\\>") nick)
-            (and (string-match "@" (car kill))
-                 (or (string-equal-ignore-case
-                      (car kill) user-at-host)
-                     (string-match (concat "^" (car kill) "$")
-                                   user-at-host)))))
-       liece-kill-nickname))))
-
-(defun liece-split-line (line)
-  (cond
-   ((eq ?: (aref line 0))
-    (list (substring line 1)))
-   (t
-    (let (args)
-      (catch 'done
-       (while (string-match "^\\([^ ]+\\) +" line)
-         (setq args (nconc args (list (match-string 1 line)))
-               line (substring line (match-end 0)))
-         (and (not (string= "" line)) (eq ?: (aref line 0))
-              (setq line (substring line 1))
-              (throw 'done nil))))
-      (or (string= "" line)
-         (setq args (nconc args (list line))))
-      args))))
-
-(defmacro liece-message (&rest message)
-  `(message "%s: %s"
-           (product-name (product-find 'liece-version))
-           (format ,@message)))
-
-(defmacro liece-insert-change (buffer msg)
-  `(liece-insert ,buffer (concat liece-change-prefix ,msg)))
-
-(defmacro liece-insert-notice (buffer msg)
-  `(liece-insert ,buffer (concat liece-notice-prefix ,msg)))
-
-(defmacro liece-insert-broadcast (buffer msg)
-  `(liece-insert ,buffer (concat liece-broadcast-prefix ,msg)))
-
-(defmacro liece-insert-wallops (buffer msg)
-  `(liece-insert ,buffer (concat liece-wallops-prefix ,msg)))
-
-(defmacro liece-insert-error (buffer msg)
-  `(liece-insert ,buffer (concat liece-error-prefix ,msg)))
-
-(defmacro liece-insert-info (buffer msg)
-  `(liece-insert ,buffer (concat liece-info-prefix ,msg)))
-
-(defmacro liece-insert-timestamp (buffer msg)
-  `(liece-insert ,buffer (concat liece-timestamp-prefix ,msg)))
-
-(defmacro liece-insert-dcc (buffer msg)
-  `(liece-insert ,buffer (concat liece-dcc-prefix ,msg)))
-
-(defmacro liece-insert-client (buffer msg)
-  `(liece-insert ,buffer (concat liece-client-prefix ,msg)))
-
-(defmacro liece-own-message (message)
-  `(if (eq liece-command-buffer-mode 'channel)
-       (liece-own-channel-message ,message)
-     (liece-own-channel-message ,message)))
-
-(defmacro liece-own-channel-message (message &optional chnl)
-  `(let* ((chnl (or ,chnl (liece-current-channel)))
-         (liece-message-target chnl)
-         (liece-message-speaker (liece-current-nickname))
-         (liece-message-direction 'outgoing))
-     (liece-display-message ,message)))
-
-(defmacro liece-own-private-message (message &optional partner)
-  `(let* ((partner (or ,partner liece-current-chat-partner))
-         (liece-message-target partner)
-         (liece-message-speaker (liece-current-nickname))
-         (liece-message-direction 'outgoing))
-     (liece-display-message ,message)))
-
-(defmacro liece-convert-received-input (input)
-  "Convert input before it is processed"
-  `(let ((conv-list liece-receive-convert-list)
-        (input ,input)
-        i f s s1 s2)
-     (while (and conv-list (not liece-polling))
-       (setq i (car conv-list)
-            f (car i)
-            s (cadr i)
-            s1 (if (stringp f) f (funcall f input))
-            s2 (if (stringp s) s (funcall s s1))
-            input (replace-in-string input s1 s2)
-            conv-list (cdr conv-list)))
-     input))
-
-(defun liece-send (&rest args)
-  "Send message to IRC server."
-  (liece-reset-idle)
-  (let ((string (apply #'format args)) send-string len)
-    (dolist (convert liece-send-convert-list)
-      (setq string (apply #'replace-in-string string convert)))
-    (with-current-buffer liece-command-buffer
-      (setq send-string (liece-coding-encode-charset-string string)
-           send-string (if (string-match "\r$" send-string) send-string
-                         (concat send-string "\r\n"))
-           len (length send-string)))
-    (if (< len 512)
-       (process-send-string liece-server-process send-string)
-      (message "Protocol message too long (%d).  Truncated." len)
-      (if liece-beep-on-bells (beep)))
-    (if (string-match "^list\\s-*" (setq string (downcase string)))
-       (setq liece-channel-filter (substring string (match-end 0))))))
-
-(defmacro liece-send-pong ()
-  '(liece-send "PONG :%s" liece-tmp-server-name))
-
-(defmacro liece-increment-long-reply-count ()
-  '(incf liece-long-reply-count))
-
-(defmacro liece-reset-long-reply-count ()
-  '(setq liece-long-reply-count 0))
-
-(defmacro liece-check-long-reply-count ()
-  '(when (> liece-long-reply-count liece-long-reply-max)
-     (liece-reset-long-reply-count)
-     (liece-send-pong)))
-
-(defmacro liece-server-host ()
-  '(if (listp liece-server)
-       (plist-get liece-server ':host)
-     (if (or (string-match "^\\[\\([^]]+\\)\\]:?[0-9]*" liece-server)
-            (string-match "^\\([^:]+\\):?[0-9]*" liece-server))
-         (match-string 1 liece-server)
-       liece-server)))
-
-(defmacro liece-clean-hostname (hostname)
-  "Return the arg HOSTNAME, but if is a dotted-quad, put brackets around it."
-  `(save-match-data
-     (if (string-match "[0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+" ,hostname)
-        (concat "[" ,hostname "]")
-       ,hostname)))
-
-(defmacro liece-current-nickname ()
-  "Our current nickname."
-  'liece-real-nickname)
-
-(defmacro liece-current-channel ()
-  "Out current channel."
-  'liece-current-channel)
-
-(defmacro liece-current-channels ()
-  "Out current channels."
-  'liece-current-channels)
-
-(defmacro liece-current-chat-partner ()
-  "Out current chat partner."
-  'liece-current-chat-partner)
-
-(defmacro liece-current-chat-partners ()
-  "Out current chat partners."
-  'liece-current-chat-partners)
-
-(defmacro liece-scroll-if-visible (window)
-  `(if ,window (set-window-point ,window (point-max))))
-
-(defmacro liece-pick-buffer-1 (chnl)
-  `(cdr (string-assoc-ignore-case ,chnl liece-channel-buffer-alist)))
-
-(defun liece-pick-buffer (chnl)
-  (cond
-   ((stringp chnl)
-    (let ((buf (liece-pick-buffer-1 chnl)))
-      (if buf (list buf))))
-   ((and chnl (listp chnl))
-    (let ((buf (liece-pick-buffer-1 (car chnl))))
-      (if buf (cons buf (liece-pick-buffer (cdr chnl))))))
-   (t nil)))
-
-\f
-;;; Date and time handling functions
-(defun liece-compose-time-string (time)
-  (format-time-string "%A %B %e %Y %R" time))
-
-(defun liece-convert-seconds (time)
-  "Convert seconds to printable string."
-  (let* ((seconds (string-to-int time))
-        (minutes (/ seconds 60))
-        (seconds (if minutes (% seconds 60) seconds))
-        (hours (/ minutes 60))
-        (minutes (if hours (% minutes 60) minutes))
-        (days (/ hours 24))
-        (hours (if days (% hours 24) hours))
-        (ds (and (/= 0 days)
-                 (format "%d day%s, " days
-                         (if (> days 1) "s" ""))))
-        (hs (and (/= 0 hours)
-                 (format "%d hour%s, " hours
-                         (if (> hours 1) "s" ""))))
-        (ms (and (/= 0 minutes)
-                 (format "%d minute%s " minutes
-                         (if (> minutes 1) "s" ""))))
-        (ss (format "%d seconds" seconds)))
-    (concat ds hs ms (if seconds ss ""))))
-
-(defmacro liece-insert-time-string ()
-  '(insert (substring (current-time-string) 11 16) " "))
-
-(defvar liece-idle-point nil "Timestamp of last idle reset.")
-
-(defmacro liece-reset-idle ()
-  "Reset idle counter and return last idle."
-  '(prog1 (liece-idle) (setq liece-idle-point (current-time))))
-
-(defmacro liece-idle ()
-  "How long has liece been idle."
-  '(if liece-idle-point
-       (liece-time-difference liece-idle-point (current-time))
-     9999999))
-
-(defmacro liece-ping-if-idle (&optional limit)
-  `(if (<= (liece-idle) (or ,limit 120))
-       nil
-     (liece-command-ping)
-     t))
-
-(defmacro liece-maybe-poll ()
-  '(liece-send "PING %s" (system-name)))
-
-(defun liece-get-buffer-create (name)
-  "Get or create buffer, keep track on its NAME so we can kill it."
-  (let ((buffer (get-buffer-create name)))
-    (or (memq buffer liece-buffer-list)
-       (push buffer liece-buffer-list))
-    buffer))
-
-(defmacro liece-message-from-ignored (prefix rest)
-  `(save-excursion
-     (liece-insert liece-I-buffer (concat ,prefix "::" ,rest "\n"))
-     t))
-
-(defmacro liece-is-message-ignored (string buffer)
-  `(let (found (case-fold-search t) msg str msgstr who)
-     (catch 'ignore
-       (when (member ,buffer liece-no-ignore-buffers)
-        (throw 'ignore t))
-       (dolist (ignore-entry liece-ignore-list)
-        ;; Check message type
-        (cond
-         ((consp (car ignore-entry))
-          (setq msg (caar ignore-entry)
-                str (cdar ignore-entry)))
-         ((fboundp (car ignore-entry))
-          (setq msgstr (apply (car ignore-entry) (list ,string))
-                msg (car msgstr)
-                str (cdr msgstr)))
-         (t
-          (liece-message
-           (_ "Malformed ignore-list, no msg+str function."))))
-        ;; Check message from whom
-        (cond
-         ((listp (cadr ignore-entry))
-          (setq who (cadr ignore-entry)))
-         ((fboundp (cadr ignore-entry))
-          (setq who (apply (cadr ignore-entry) (list ,string))))
-         ((not (cadr ignore-entry))
-          (liece-message
-           (_ "Malformed ignore-list, no user function."))))
-        ;; Handle regexp
-        (save-match-data
-          (when (and (or msg str)
-                     (and msg
-                          (string-match
-                           msg (cadr liece-current-function)))
-                     (and str (string-match str ,string)))
-            (while who
-              (when (string-match (car who) (car liece-current-function))
-                (setq found t)
-                (throw 'ignore t))
-              (setq who (cdr who)))))))
-     found))
-
-(defmacro liece-time-difference (t0 t1)
-  "Difference in seconds between T0 and T1.
-Both T0 and T1 are in the encoded time format."
-  `(+ (* (- (car ,t1) (car ,t0)) 65536)
-      (- (cadr ,t1)) (cadr ,t0)))
-
-(defmacro liece-time-add (t0 t1)
-  "Add T0 seconds to time T1.
-t0 is in `three integer lists'-format  returned by `current-time' function."
-  `(list (+ (car ,t0) (/ (+ (cadr ,t0) ,t1) 65536))
-        (% (+ (cadr ,t0) ,t1) 65536)
-        0))
-
-(defun liece-seconds-to-time (seconds)
-  "Convert SECONDS (a floating point number) to an Emacs time structure."
-  (list (floor seconds 65536)
-       (floor (mod seconds 65536))
-       (floor (* (- seconds (ffloor seconds)) 1000000))))
-
-(defmacro liece-generate-hex-timestamp (&optional time)
-  "Generate timestamp string as hexadecimal.
-If optional argument TIME is nil, calculate timestamp using current time."
-  `(let ((time (or ,time (current-time))))
-     (format "%04x%04x" (car time) (cadr time))))
-
-(defmacro liece-hex-timestamp-valid (timestamp limit)
-  "Is TIMESTAMP valid within LIMIT?"
-  `(let (t1 t2 diff (timestamp ,timestamp))
-     (if (not (and (stringp timestamp)
-                  (string-match
-                   "^[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]$" timestamp)))
-        nil
-       (setq t1 (liece-hex-string-to-integer (substring timestamp 0 4))
-            t2 (liece-hex-string-to-integer (substring timestamp 4 8))
-            diff (liece-time-difference
-                  (list t1 t2 0) (current-time)))
-       (or (>= ,limit 0)
-          (and (< diff ,limit) (> diff (- 0 ,limit)))))))
-
-(defmacro liece-hex-char-to-integer (character)
-  "Convert single hex digit CHARACTER to integer."
-  `(if (and (>= ,character ?0) (<= ,character ?9))
-       (- ,character ?0)
-     (let ((ch (logior ,character 32)))
-       (if (and (>= ch ?a) (<= ch ?f))
-          (- ch (- ?a 10))
-        (error "Invalid hex digit `%c'" ch)))))
-
-(defmacro liece-hex-string-to-integer (hex-string)
-  "Convert a HEX-STRING like ffff to the decimal integer."
-  `(let ((hex-string ,hex-string) (hex-num 0))
-     (while (not (equal hex-string ""))
-       (setq hex-num (+ (* hex-num 16)
-                       (liece-hex-char-to-integer
-                        (string-to-char hex-string))))
-       (setq hex-string (substring hex-string 1)))
-     hex-num))
-
-(defmacro liece-remove-properties-region (start end)
-  (unless (fboundp 'make-extent)
-    `(save-excursion
-       (save-restriction
-        (narrow-to-region ,start ,end)
-        (goto-char (point-min))
-        (let (start)
-          (while (setq start (next-single-property-change
-                              (point) 'invisible))
-            (when (invisible-p start)
-              (delete-region start (next-visible-point start))
-              (goto-char start))
-            (remove-text-properties (point-min)(point-max) '(face))))))))
-
-(provide 'liece-misc)
-
-;;; liece-misc.el ends here
diff --git a/lisp/liece-modules.el b/lisp/liece-modules.el
deleted file mode 100644 (file)
index a5d1222..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-;;; liece-modules.el --- Module definitions.
-;; Copyright (C) 1999 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1999-04-12
-;; Revised: 1999-03-02
-;; Keywords: IRC, liece, APEL
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(defvar liece-modules-to-compile
-  '(queue-m
-    gettext
-    liece-clfns
-    liece-handler
-    liece-compat
-    liece-version
-    liece-vars
-    liece-globals
-    liece-inlines
-    liece-filter
-    liece-dcc
-    liece-menu
-    liece-000
-    liece-200
-    liece-300
-    liece-400
-    liece-500
-    liece-nick
-    liece-channel
-    liece-commands
-    liece-ctcp
-    liece-q-el
-    liece-message
-    liece-handle
-    liece-hilit
-    liece-intl
-    liece-mail
-    liece-minibuf
-    liece-misc
-    liece-tcp
-    liece-url
-    liece-x-face
-    liece-window
-    liece))
-
-(require 'emu)
-(if (featurep 'xemacs)
-    (add-to-list 'liece-modules-to-compile 'liece-xemacs)
-  (add-to-list 'liece-modules-to-compile 'liece-emacs)
-  (if (fboundp 'set-face-stipple)
-      (add-to-list 'liece-modules-to-compile 'bitmap-stipple)))
-
-(when (featurep 'mule)
-  (add-to-list 'liece-modules-to-compile 'liece-coding))
-
-(condition-case ()
-    (progn
-      (require 'pccl)
-      (require 'ccl))
-  (error nil))
-
-(require 'broken)
-
-(unless-broken ccl-usable
-  (add-to-list 'liece-modules-to-compile 'liece-q-ccl))
-
-(condition-case ()
-    (require 'cus-face)
-  (file-error nil))
-
-(setq liece-modules (cons 'liece-setup
-                         (delq 'queue-m liece-modules-to-compile)))
-
-(provide 'liece-modules)
-
-;;; liece-modules.el ends here
diff --git a/lisp/liece-nick.el b/lisp/liece-nick.el
deleted file mode 100644 (file)
index 247728d..0000000
+++ /dev/null
@@ -1,370 +0,0 @@
-;;; liece-nick.el --- Various facility for nick operation.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1998-11-25
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(require 'liece-hilit)
-
-(defalias 'liece-nick-set-operator 'liece-channel-set-operator)
-(defalias 'liece-nick-set-voice 'liece-channel-set-voice)
-(defalias 'liece-nick-equal 'string-equal-ignore-case)
-
-(defun liece-nick-member (nick nicks)
-  "Return non-nil if NICK is member of NICKS."
-  (member-if
-   (lambda (item)
-     (and (stringp item) (liece-nick-equal nick item)))
-   nicks))
-
-(defvar liece-nick-insert-hook nil)
-(defvar liece-nick-replace-hook nil)
-
-(define-widget 'liece-nick-push-button 'push-button
-  "A nick button."
-  :action 'liece-nick-popup-menu)
-
-(defcustom liece-nick-sort-nicks nil
-  "If t, sort nick list in each time."
-  :type 'boolean
-  :group 'liece-vars)
-
-(defcustom liece-nick-sort-predicate 'string-lessp
-  "Function for sorting nick buffers."
-  :type 'function
-  :group 'liece-vars)
-
-;;; @ internal access methods
-;;;
-(defmacro liece-nick-get-joined-channels (nick)
-  "Return channels as list NICK is joined."
-  `(get (intern ,nick liece-obarray) 'chnl))
-
-(defmacro liece-nick-get-user-at-host (nick)
-  "Return user-at-host as string NICK is joined."
-  `(get (intern ,nick liece-obarray) 'user-at-host))
-
-(defmacro liece-nick-set-user-at-host (nick uah)
-  "Set user at host as string NICK is joined."
-  `(put (intern ,nick liece-obarray) 'user-at-host ,uah))
-
-(defmacro liece-nick-mark-as-apart (nick)
-  "Mark NICK is temporary apart."
-  `(put (intern ,nick liece-obarray) 'part t))
-
-(defmacro liece-nick-unmark-as-apart (nick)
-  "Mark NICK is temporary apart."
-  `(put (intern ,nick liece-obarray) 'part nil))
-
-(defmacro liece-nick-get-modes (nick)
-  "Return modes as string NICK is joined."
-  `(get (intern ,nick liece-obarray) 'mode))
-
-(defmacro liece-nick-add-mode (mode &optional nick)
-  "Add MODE as char to NICK."
-  `(let* ((n (intern ,nick liece-obarray))
-         (modes (string-to-char-list (or (get n 'mode) ""))))
-     (put n 'mode (mapconcat #'char-to-string
-                            (or (memq ,mode modes)
-                                (cons ,mode modes)) ""))))
-
-(defmacro liece-nick-remove-mode (mode &optional nick)
-  "Remove MODE as char to NICK."
-  `(let* ((n (intern ,nick liece-obarray))
-         (modes (string-to-char-list (or (get n 'mode) ""))))
-     (delq ,mode modes)
-     (put n 'mode (mapconcat #'char-to-string modes ""))))
-
-(defmacro liece-nick-set-mode (val mode &optional nick)
-  "Set MODE as char to CHNL."
-  `(if ,val
-       (liece-nick-add-mode ,mode ,nick)
-     (liece-nick-remove-mode ,mode ,nick)))
-
-(defmacro liece-nick-strip (nick)
-  `(if (and ,nick (memq (aref ,nick 0) '(?@ ?+ ? )))
-       (substring ,nick 1)
-     ,nick))
-
-(defmacro liece-nick-normalize (nick)
-  `(if (and ,nick (memq (aref ,nick 0) '(?@ ?+ ? )))
-       ,nick
-     (concat " " ,nick)))
-
-;;; @ display
-;;;
-(defun liece-nick-insert (nick)
-  ;; Find sorted position
-  (cond
-   ((and (eq liece-nick-sort-nicks t)
-        (liece-functionp liece-nick-sort-predicate))
-    (let (nicks found)
-      (goto-char (point-min))
-      (while (and (not (eobp)) (not found))
-       (if (condition-case nil
-               (funcall liece-nick-sort-predicate
-                        (liece-nick-strip nick)
-                        (widget-value (widget-at (1+ (point)))))
-             (void-function nil))
-           (setq found t)
-         (beginning-of-line 2)))))
-    ((eq liece-nick-sort-nicks 'reverse)
-     (goto-char (point-min)))
-    (t (goto-char (point-max))))
-
-  (insert (substring nick 0 1))
-  (let ((st (point)) (nick (liece-nick-strip nick)))
-    (insert nick)
-    (when liece-highlight-mode
-      (liece-widget-convert-button
-       'liece-nick-push-button st (point) nick))
-    (insert "\n")
-    (run-hook-with-args 'liece-nick-insert-hook st (point))))
-
-(defun liece-nick-replace (old new &optional limit regexp)
-  (if regexp
-      (setq old (concat "^\\(" old "\\)$"))
-    (setq old (concat "^\\([ @+]\\)\\(" (regexp-quote old) "\\)$")))
-  (let (case-fold-search beg end)
-    (when (re-search-forward old limit t)
-      (unless regexp
-       (setq new (concat (match-string 1) new)))
-      (if (and (eq liece-nick-sort-nicks t)
-              (liece-functionp liece-nick-sort-predicate))
-         (progn
-           (delete-region (match-beginning 0)
-                          (progn (goto-char (match-end 0))
-                                 (forward-char) (point)))
-           (liece-nick-insert new))
-       (condition-case nil
-           (widget-delete (widget-at (1+ (point))))
-         (void-function nil))
-       (replace-match new t t)
-       (setq end (point)
-             beg (progn (beginning-of-line) (1+ (point))))
-       (when liece-highlight-mode
-         (liece-widget-convert-button
-          'liece-nick-push-button beg end (substring new 1)))
-       (run-hook-with-args 'liece-nick-replace-hook beg end)))))
-
-;;;###liece-autoload
-(defun liece-command-toggle-nick-buffer-mode ()
-  (interactive)
-  (when (and (eq liece-command-buffer-mode 'channel)
-            (get-buffer liece-nick-buffer))
-    (setq liece-nick-buffer-mode (not liece-nick-buffer-mode)))
-  (liece-configure-windows))
-
-(defmacro liece-nick-buffer-create (chnl)
-  `(with-current-buffer
-       (liece-get-buffer-create (format liece-nick-buffer-format ,chnl))
-     (unless (eq major-mode 'liece-nick-mode)
-       (liece-nick-mode))
-     (set-alist 'liece-nick-buffer-alist ,chnl (current-buffer))
-     (current-buffer)))
-
-(defun liece-change-nick-of-1 (old new nicks)
-  (if new
-      (do ((nicks nicks (cdr nicks)))
-         ((or (null nicks)
-              (if (liece-nick-equal (caar nicks) old)
-                  (setcar (car nicks) new))))
-       nil)
-    (delete-if
-     `(lambda (nick) (liece-nick-equal (car nick) ,old))
-     nicks)))
-  
-(defun liece-change-nick-of-2 (old new nicks)
-  (if new
-      (do ((nicks nicks (cdr nicks)))
-         ((or (not nicks)
-              (if (liece-nick-equal (car nicks) old)
-                  (setcar nicks new))))
-       nil)
-    (delete-if
-     `(lambda (nick) (liece-nick-equal nick ,old))
-     nicks)))
-
-(defun liece-change-nick-of (old new)
-  (liece-change-nick-of-1 old new liece-nick-alist)
-  (let ((chnls (liece-nick-get-joined-channels old)))
-    (dolist (chnl chnls)
-      (liece-change-nick-of-2 old new (liece-channel-get-nicks chnl))
-      (liece-change-nick-of-2 old new (liece-channel-get-operators chnl))
-      (liece-change-nick-of-2 old new (liece-channel-get-voices chnl)))))
-
-(defmacro liece-nick-join-1 (user chnl)
-  "Add CHNL to list of channels USER belongs to."
-  `(let* ((flag (string-to-char user))
-         (user (liece-nick-strip ,user))
-         (u (intern user liece-obarray))
-         (c (intern ,chnl liece-obarray)))
-     (or (string-assoc-ignore-case user liece-nick-alist)
-        (push (list user) liece-nick-alist))
-     (cond
-      ((char-equal flag ?@)
-       (liece-channel-set-operator ,chnl user t))
-      ((char-equal flag ?+)
-       (liece-channel-set-voice ,chnl user t)))
-     (or (string-list-member-ignore-case ,chnl (get u 'chnl))
-        (put u 'chnl (cons ,chnl (get u 'chnl))))
-     (or (string-list-member-ignore-case user (get c 'nick))
-        (put c 'nick (cons user (get c 'nick))))))
-               
-(defmacro liece-nick-part-1 (user chnl)
-  "Remove USER information from his CHNL."
-  `(let ((u (intern ,user liece-obarray))
-        (c (intern ,chnl liece-obarray)))
-     (liece-channel-set-operator ,chnl ,user nil)
-     (liece-channel-set-voice ,chnl ,user nil)
-     (put u 'chnl (string-list-remove-ignore-case ,chnl (get u 'chnl)))
-     (put c 'nick (string-list-remove-ignore-case ,user (get c 'nick)))))
-
-;;;###liece-autoload
-(defun liece-nick-join (user chnl)
-  (liece-nick-join-1 user chnl)
-  (let ((nbuf (cdr (string-assoc-ignore-case chnl liece-nick-buffer-alist))))
-    (with-current-buffer nbuf
-      (let (buffer-read-only)
-       (liece-nick-insert (liece-nick-normalize user))))))
-
-;;;###liece-autoload
-(defun liece-nick-part (user chnl)
-  (let ((nbuf (cdr (string-assoc-ignore-case chnl liece-nick-buffer-alist))))
-    (setq user (liece-nick-strip user))
-    (with-current-buffer nbuf
-      (let ((case-fold-search t) buffer-read-only)
-       (goto-char (point-min))
-       (when (re-search-forward (concat "^." (regexp-quote user) "$") nil t)
-         (delete-region (match-beginning 0)
-                        (progn (goto-char (match-end 0))
-                               (forward-char) (point)))
-         (liece-nick-part-1 user chnl))))))
-
-;;;###liece-autoload
-(defun liece-nick-change (old new)
-  (let* ((old (liece-nick-strip old)) (new (liece-nick-strip new))
-        (chnls (get (intern old liece-obarray) 'chnl)) chnl nbuf)
-    (liece-change-nick-of old new)
-    (if new
-       (put (intern new liece-obarray) 'chnl chnls))
-    (unintern old liece-obarray)
-    (dolist (chnl chnls)
-      (if (null new)
-         (liece-nick-part old chnl)
-       (setq nbuf (cdr (string-assoc-ignore-case
-                        chnl liece-nick-buffer-alist)))
-       (with-current-buffer nbuf
-         (let (buffer-read-only)
-           (goto-char (point-min))
-           (liece-nick-replace old new)))))))
-
-;;;###liece-autoload
-(defun liece-nick-update (chnl users)
-  (let ((c (intern chnl liece-obarray))
-       (nbuf (cdr (string-assoc-ignore-case chnl liece-nick-buffer-alist))))
-    (mapcar (lambda (prop) (put c prop nil)) '(nick oper voice))
-    (with-current-buffer nbuf
-      (let (buffer-read-only)
-       (liece-kill-all-overlays)
-       (erase-buffer)))
-    (when (and liece-nick-sort-nicks
-              (liece-functionp liece-nick-sort-predicate))
-      (setq users (sort users
-                       (lambda (s1 s2)
-                         (funcall liece-nick-sort-predicate
-                                  (liece-nick-strip s1)
-                                  (liece-nick-strip s2))))))
-    (let (liece-nick-sort-predicate)
-      (dolist (user users)
-       (liece-nick-join user chnl)))))
-
-(defvar liece-nick-region-nicks nil)
-(defvar liece-nick-region-opers nil)
-(defvar liece-nick-region-voices nil)
-
-;;;###liece-autoload
-(defun liece-nick-update-region ()
-  (setq liece-nick-region-nicks nil
-       liece-nick-region-opers nil
-       liece-nick-region-voices nil)
-  (save-excursion
-    (let (region nick)
-      (if (not (region-active-p))
-         (setq region (cons (line-beginning-position)
-                            (line-beginning-position 2)))
-       (setq region (cons (region-beginning) (region-end)))
-       (goto-char (car region))
-       (setcar region (line-beginning-position))
-       (goto-char (cdr region))
-       (if (eobp)
-           (setcdr region (line-beginning-position))
-         (setcdr region (line-beginning-position 2))))
-      (save-restriction
-       (narrow-to-region (car region) (cdr region))
-       (goto-char (point-min))
-       (while (not (eobp))
-         (setq nick (widget-value (widget-at (1+ (point)))))
-         (push nick liece-nick-region-nicks)
-         (if (memq (char-after) '(?@ ?+))
-             (push nick liece-nick-region-voices))
-         (if (eq ?@ (char-after))
-             (push nick liece-nick-region-opers))
-         (beginning-of-line 2))))))
-
-(defun liece-nick-add-buttons (start end)
-  (save-excursion
-    (goto-char start)
-    (while (re-search-forward
-           (eval-when-compile
-             (concat "^\\(" liece-time-prefix-regexp "\\)?"
-                     "[][=<>(][][=<>(]?\\([^:]*:\\)?\\([^][=<>(]+\\)"))
-           end t)
-      (let* ((nick-start (match-beginning 3))
-            (nick-end (match-end 3))
-            (nick (buffer-substring nick-start nick-end)))
-       (when liece-highlight-mode
-         (liece-widget-convert-button
-          'liece-nick-push-button nick-start nick-end nick))))))
-
-;;;###liece-autoload
-(defun liece-nick-redisplay-buffer (chnl)
-  (let ((buffer
-        (cdr (string-assoc-ignore-case
-              chnl liece-nick-buffer-alist)))
-       (window (liece-get-buffer-window liece-nick-buffer)))
-    (and buffer window
-        (with-current-buffer buffer
-          (set-window-buffer window buffer)
-          (unless (liece-frozen buffer)
-            (set-window-start window (point-min)))
-          (setq liece-nick-buffer buffer)))))
-
-(provide 'liece-nick)
-
-;;; liece-nick.el ends here
diff --git a/lisp/liece-q-ccl.el b/lisp/liece-q-ccl.el
deleted file mode 100644 (file)
index 4ac9cba..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-;;; liece-q-ccl.el --- CTCP binary data quotation in CCL.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1999-01-31
-;; Revised: 1999-01-31
-;; Keywords: IRC, liece, CTCP
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(require 'broken)
-(require 'pccl)
-
-(eval-and-compile
-  (defconst liece-quote-ccl-256-table
-    '(  0   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15
-       16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31
-       32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47
-       48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63
-       64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79
-       80  81  82  83  84  85  86  87  88  89  90  91  92  93  94  95
-       96  97  98  99 100 101 102 103 104 105 106 107 108 109 110 111
-      112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
-      128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
-      144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
-      160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175
-      176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191
-      192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207
-      208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223
-      224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239
-      240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255)))
-
-(broken-facility ccl-cascading-write
-  "Emacs CCL write command does not accept more than 2 arguments."
-  (condition-case nil
-      (progn
-       (define-ccl-program cascading-read-test
-         '(1
-           (write r0 r1 r2)))
-       t)
-    (error nil)))
-(define-ccl-program liece-quote-ccl-decode
-  `(1
-    (loop
-      (read-if
-       (r0 == ?\\)
-       ((read-if
-        (r1 == ?\\)
-        (write r1)
-        (branch
-         r1
-         ,@(mapcar
-            (lambda (r1)
-              (cond
-               ((= r1 (char-int ?a))
-                `(write ?\x01))
-               ((= r1 (char-int ?n))
-                `(write ?\n))
-               ((= r1 (char-int ?r))
-                `(write ?\r))
-               (t
-                (if-broken ccl-cascading-write
-                    `((write r0)
-                      (write r1))
-                  `(write r0 r1)))))
-            liece-quote-ccl-256-table))))
-       (write r0))
-      (repeat))))
-
-(define-ccl-program liece-quote-ccl-encode
-  `(2
-    (loop
-      (read-branch
-       r0
-       ,@(mapcar
-         (lambda (r0)
-           (cond
-            ((= r0 (char-int ?\\))
-             `(write-repeat "\\\\"))
-            ((= r0 (char-int ?\x01))
-             `(write-repeat "\\a"))
-            ((= r0 (char-int ?\n))
-             `(write-repeat "\\n"))
-            ((= r0 (char-int ?\r))
-             `(write-repeat "\\r"))
-            (t
-             `(write-repeat r0))))
-         liece-quote-ccl-256-table)))))
-
-(make-ccl-coding-system
- 'liece-quote-ccl-cs ?Q "CTCP Quote Decoder/Encoder"
- 'liece-quote-ccl-decode 'liece-quote-ccl-encode)
-
-(defun liece-quote-ccl-decode-string (string-to-decode)
-  (decode-coding-string string-to-decode 'liece-quote-ccl-cs))
-
-(defun liece-quote-ccl-encode-string (string-to-encode)
-  (encode-coding-string string-to-encode 'liece-quote-ccl-cs))
-
-(defun liece-quote-ccl-decode-region (min max)
-  (decode-coding-region min max 'liece-quote-ccl-cs))
-
-(defun liece-quote-ccl-encode-region (min max)
-  (encode-coding-region min max 'liece-quote-ccl-cs))
-
-(defalias 'liece-quote-decode-string 'liece-quote-ccl-decode-string)
-(defalias 'liece-quote-encode-string 'liece-quote-ccl-encode-string)
-
-(defalias 'liece-quote-decode-region 'liece-quote-ccl-decode-region)
-(defalias 'liece-quote-encode-region 'liece-quote-ccl-encode-region)
-
-(provide 'liece-q-ccl)
-
-;;; liece-q-ccl.el ends here
diff --git a/lisp/liece-q-el.el b/lisp/liece-q-el.el
deleted file mode 100644 (file)
index dce861e..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-;;; liece-q-el.el --- CTCP binary data quotation in emacs-lisp.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1999-01-31
-;; Revised: 1999-01-31
-;; Keywords: IRC, liece, CTCP
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(defconst liece-quote-strings
-  '(("\\\\" . "\\") ("\\a" . "\ 1") ("\\n" . "\n") ("\\r" . "\r")))
-  
-(defun liece-quote-el-decode-region (start end)
-  "Decode binary data between START and END."
-  (interactive "r")
-  (save-restriction
-    (narrow-to-region start end)
-    (dolist (pair liece-quote-strings)
-      (goto-char (point-min)) (replace-string (car pair) (cdr pair)))))
-
-(defun liece-quote-el-decode-string (string)
-  "Decode binary data from STRING."
-  (interactive)
-  (save-excursion
-    (with-temp-buffer
-      (insert string)
-      (liece-quote-el-decode-string (point-min) (point-max))
-      (buffer-substring (point-min) (point-max)))))
-
-(defun liece-quote-el-encode-region (start end)
-  "Encode binary data between START and END."
-  (interactive "r")
-  (save-restriction
-    (narrow-to-region start end)
-    (goto-char (point-min))
-    (while (search-forward "\\" nil t) (insert "\\"))
-    (goto-char (point-min))
-    (while (search-forward "\ 1" nil t)
-      (backward-delete-char 1)
-      (insert "\\a"))
-    (goto-char (point-min))
-    (while (search-forward "\n" nil t)
-      (backward-delete-char 1)
-      (insert "\\n"))
-    (goto-char (point-min))
-    (while (search-forward "\r" nil t)
-      (backward-delete-char 1)
-      (insert "\\r"))))
-
-(defun liece-quote-el-encode-string (string)
-  "Encode binary data from STRING."
-  (interactive)
-  (save-excursion
-    (with-temp-buffer
-      (erase-buffer)
-      (insert string)
-      (liece-quote-el-encode-region (point-min) (point-max))
-      (buffer-substring (point-min) (point-max)))))
-
-(defalias 'liece-quote-decode-string 'liece-quote-el-decode-string)
-(defalias 'liece-quote-encode-string 'liece-quote-el-encode-string)
-
-(defalias 'liece-quote-decode-region 'liece-quote-el-decode-region)
-(defalias 'liece-quote-encode-region 'liece-quote-el-encode-region)
-
-(provide 'liece-q-el)
-
-;;; liece-q-el.el ends here
-
diff --git a/lisp/liece-tcp.el b/lisp/liece-tcp.el
deleted file mode 100644 (file)
index 837c903..0000000
+++ /dev/null
@@ -1,181 +0,0 @@
-;;; liece-tcp.el --- TCP/IP stream emulation.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Masanobu Umeda <umerin@mse.kyutech.ac.jp>
-;;         Daiki Ueno <ueno@unixuser.org>
-;; Created: 1999-03-16 renamed from tcp.el
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-;;; Commentary:
-
-;; Notes on TCP package:
-;;
-;; This package provides a TCP/IP stream emulation for GNU Emacs. If
-;; the function `open-network-stream' is not defined in Emacs, but
-;; your operating system has a capability of network stream
-;; connection, this tcp package can be used for communicating with
-;; NNTP server.
-;;
-;; The tcp package runs inferior process which actually does the role
-;; of `open-network-stream'.  The program `tcp' provided with this
-;; package can be used for such purpose.  Before loading the package,
-;; compile `tcp.c' and install it as `tcp' in a directory in the emacs
-;; search path. If you modify `tcp.c', please send diffs to the author
-;; of GNUS.  I'll include some of them in the next releases.
-
-;;; Code:
-
-(require 'poe)
-(require 'poem)
-
-(eval-when-compile
-  (require 'liece-compat)
-  (require 'liece-globals))
-
-(defgroup liece-tcp nil
-  "TCP/IP Emulation"
-  :tag "TCP"
-  :prefix "liece-"
-  :group 'liece-server)
-
-(defcustom liece-tcp-program "ltcp"
-  "The name of the program emulating `open-network-stream' function."
-  :type 'file
-  :group 'liece-tcp)
-
-(defcustom liece-tcp-default-connection-type 'network
-  "TCP/IP Connection type."
-  :type '(choice
-         (const :tag "Network" network)
-         (const :tag "Program" program)
-         (const :tag "SSLeay" ssl)
-         (const :tag "rlogin" rlogin))
-  :group 'liece-tcp)
-
-(defvar liece-tcp-connection-type liece-tcp-default-connection-type)
-
-(eval-and-compile
-  (autoload 'open-ssl-stream "ssl")
-  (defvar ssl-program-arguments))
-
-(defcustom liece-tcp-ssl-protocol-version "3"
-  "SSL protocol version."
-  :type 'integer
-  :group 'liece-tcp)
-
-(defcustom liece-tcp-ssl-default-service 993
-  "Default SSL service."
-  :type 'liece-service-spec
-  :group 'liece-tcp)
-
-(defcustom liece-tcp-rlogin-program "rsh"
-  "Program used to log in on remote machines.
-The default is \"rsh\", but \"ssh\" is a popular alternative."
-  :type 'file
-  :group 'liece-tcp)
-
-(defcustom liece-tcp-relay-host "localhost"
-  "Remote host address."
-  :type 'file
-  :group 'liece-tcp)
-
-(defcustom liece-tcp-rlogin-parameters '("socket" "-q")
-  "Parameters to `liece-tcp-open-rlogin'."
-  :type 'list
-  :group 'liece-tcp)
-
-(defcustom liece-tcp-rlogin-user-name nil
-  "User name on remote system when using the rlogin connect method."
-  :type 'string
-  :group 'liece-tcp)
-
-(defvar liece-tcp-stream-alist
-  '((network open-network-stream)
-    (program liece-tcp-open-program-stream)
-    (ssl liece-tcp-open-ssl-stream)
-    (rlogin liece-tcp-open-rlogin-stream)))
-
-\f
-;;;###liece-autoload
-(defun liece-open-network-stream (name buffer host service)
-  (let ((method
-        (nth 1 (assq liece-tcp-connection-type
-                     liece-tcp-stream-alist))))
-    (or method
-       (error "Invalid stream"))
-    (funcall method name buffer host service)))
-
-(defun liece-tcp-open-program-stream (name buffer host service)
-  "Open a TCP connection for a service to a host.
-Returns a subprocess-object to represent the connection.
-Input and output work as for subprocesses; `delete-process' closes it.
-Args are NAME BUFFER HOST SERVICE.
-NAME is name for process.  It is modified if necessary to make it unique.
-BUFFER is the buffer (or `buffer-name') to associate with the process.
- Process output goes at end of that buffer, unless you specify
- an output stream or filter function to handle the output.
- BUFFER may be also nil, meaning that this process is not associated
- with any buffer
-Third arg is name of the host to connect to.
-Fourth arg SERVICE is name of the service desired, or an integer
- specifying a service number to connect to."
-  (let ((proc (start-process name buffer
-                            liece-tcp-program
-                            host
-                            (if (stringp service)
-                                service
-                              (int-to-string service)))))
-    (process-kill-without-query proc)
-    ;; Return process
-    proc))
-
-(defun liece-tcp-open-ssl-stream-1 (name buffer server service extra-arg)
-  (let* ((service (or service liece-tcp-ssl-default-service))
-         (ssl-program-arguments (list extra-arg "-connect"
-                                      (format "%s:%d" server service)))
-         (process (open-ssl-stream name buffer server service)))
-    (and process (memq (process-status process) '(open run))
-        process)))
-
-(defun liece-tcp-open-ssl-stream (name buffer server service)
-  (if (string-equal liece-tcp-ssl-protocol-version "2")
-      (liece-tcp-open-ssl-stream-1
-       name buffer server service "-ssl2")
-    (or (liece-tcp-open-ssl-stream-1
-        name buffer server service "-ssl3")
-       (liece-tcp-open-ssl-stream-1
-        name buffer server service "-ssl2"))))
-
-(defun liece-tcp-open-rlogin-stream (name buffer server service)
-  "Open a connection to SERVER using rsh."
-  (let* ((service (if (stringp service)
-                     service
-                   (int-to-string service)))
-        (args `(,liece-tcp-rlogin-program
-                ,@(if liece-tcp-rlogin-user-name
-                      (list "-l" liece-tcp-rlogin-user-name))
-                ,liece-tcp-relay-host
-                ,@liece-tcp-rlogin-parameters ,server ,service))
-        (process-connection-type nil))
-    (apply #'start-process-shell-command name buffer args)))
-
-(provide 'liece-tcp)
-
-;;; liece-tcp.el ends here
diff --git a/lisp/liece-url.el b/lisp/liece-url.el
deleted file mode 100644 (file)
index d7d3abe..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-;;; liece-url.el --- URL browsing.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1998-11-25
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile
-  (require 'liece-inlines)
-  (require 'liece-intl)
-  (require 'liece-menu))
-
-(defvar browse-url-browser-function)
-
-(defgroup liece-url nil
-  "URL Browsing in IRC buffer."
-  :group 'liece-vars)
-
-(defcustom liece-url-regexp  "\\b\\(s?https?\\|ftp\\|file\\|gopher\\|news\\|telnet\\|wais\\|mailto\\):\\(//[-a-zA-Z0-9_.]+:[0-9]*\\)?[-a-zA-Z0-9_=?#$@~`%&*+|\\/.,]*[-a-zA-Z0-9_=#$@~`%&*+|\\/]"
-  "Regular expression that matches URLs."
-  :group 'liece-url
-  :type 'regexp)
-
-(defcustom liece-url-browser-function browse-url-browser-function
-  "Default URL Browser."
-  :group 'liece-url)
-
-(defcustom liece-url-alist nil
-  "Alist for URL completion."
-  :type 'alist
-  :group 'liece-url)
-
-(define-widget 'liece-url-link 'link
-  "A link to an www page."
-  :help-echo 'widget-url-link-help-echo
-  :action 'liece-url-link-action)
-
-(defun liece-url-link-action (widget &optional event)
-  (let ((browse-url-browser-function liece-url-browser-function))
-    (browse-url (widget-value widget))))
-
-(defvar liece-add-url-functions nil)
-
-(defun liece-url-add-buttons (start end)
-  (save-excursion
-    (goto-char start)
-    (while (re-search-forward liece-url-regexp end t)
-      (let ((url (match-string 0)))
-       (if liece-highlight-mode
-           (liece-widget-convert-button
-            'url-link (match-beginning 0)(match-end 0) url))
-       (unless (assoc url liece-url-alist)
-         (push (list url) liece-url-alist)
-         (run-hook-with-args 'liece-add-url-functions url))))))
-
-(defun liece-command-browse-url (&optional url)
-  (interactive
-   (let (url)
-     (if (and current-prefix-arg (eq current-prefix-arg '-))
-        (setq url (caar liece-url-alist))
-       (setq url (completing-read (_ "Open URL:") liece-url-alist)))
-     (list url)))
-  (let ((browse-url-browser-function liece-url-browser-function))
-    (browse-url url)))
-
-(defun url-irc-liece (host port channel user password)
-  (let ((liece-server
-        `(:host ,host :service ,port :password ,password))
-       (liece-startup-channel channel))
-    (liece)))
-
-(provide 'liece-url)
-
-;;; liece-url.el ends here
diff --git a/lisp/liece-vars.el b/lisp/liece-vars.el
deleted file mode 100644 (file)
index 0f15e44..0000000
+++ /dev/null
@@ -1,930 +0,0 @@
-;;; liece-vars.el --- Customization.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1998-11-25
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile
-  (require 'liece-compat)
-  (require 'liece-globals))
-
-;; User modifiable variables.
-(defgroup liece nil
-  "liece specific customize group")
-
-(defgroup liece-vars nil
-  "liece user customizable variables"
-  :tag "Variables"
-  :prefix "liece-"
-  :group 'liece)
-
-(defcustom liece-saved-forms
-  (purecopy
-   '(liece-kill-nickname
-     liece-server-alist
-     liece-channel-buffer-mode
-     liece-nick-buffer-mode
-     liece-friends))
-  "Variables whose values are saved via command liece-command-save-vars."
-  :type 'string
-  :group 'liece-vars)
-
-(defgroup liece-look nil
-  "Look & Feels"
-  :tag "Look"
-  :prefix "liece-"
-  :group 'liece)
-
-(defcustom liece-command-window-height 4
-  "How large should command window be on startup."
-  :type 'integer
-  :group 'liece-look)
-
-(defcustom liece-truncate-partial-width-windows t
-  "If non-nil, truncate lines in splitting windows such as others buffer."
-  :type 'boolean
-  :group 'liece-look)
-
-(defcustom liece-use-full-window t
-  "If non-nil, IRCHAT will use whole Emacs window."
-  :type 'boolean
-  :group 'liece-look)
-
-(defcustom liece-display-frame-title t
-  "If non-nil, IRCHAT displays channel information on frame title."
-  :type 'boolean
-  :group 'liece-look)
-
-(defcustom liece-display-unread-mark nil
-  "If non-nil, display unread mark as XEmacs glyphs or character to channel
-list buffer."
-  :type 'boolean
-  :group 'liece-look)
-
-(defcustom liece-channel-unread-character "!"
-  "Channel unread character."
-  :type 'character
-  :group 'liece-look)
-
-(defcustom liece-tab-stop-list '(2 4 6 8 10 12 14 16)
-  "List of tab stop positions in dialogue buffer."
-  :type '(repeat integer)
-  :group 'liece-look)
-
-(defcustom liece-icon-directory nil
-  "Normal position of liece icons."
-  :type 'directory
-  :group 'liece-look)
-
-(defcustom liece-nick-image-alist
-  '((?@ . "ball.red.xpm")
-    (?  . "ball.blank.xpm")
-    (?+ . "ball.gray.xpm"))
-  "Normal and deformed faces for operators and voices."
-  :type '(repeat (list (character :tag "Mark")
-                      (string :tag "Image")))
-  :group 'liece-look)
-
-(defcustom liece-inhibit-startup-message nil
-  "If non-nil, the startup message will not be displayed.
-This variable is used before `.liece/init.el' is loaded, so it should
-be set in `.emacs' instead."
-  :group 'liece-look
-  :type 'boolean)
-
-(defcustom liece-want-traditional nil
-  "Do we want /commands."
-  :type 'boolean
-  :group 'liece-vars)
-
-(defcustom liece-command-window-on-top nil
-  "If non-nil, the command window will be put at the top of the screen."
-  :type 'boolean
-  :group 'liece-look)
-
-(defcustom liece-one-buffer-mode nil
-  "When non-nil, liece will put up only a dialogue buffer.
-Useful for those (perverts) who use 24 line terminals."
-  :type 'boolean
-  :group 'liece-look)
-
-(defcustom liece-display-status-on-channel-indicator nil
-  "When non-nil, liece will display channel topic on modeline."
-  :type 'boolean
-  :group 'liece-look)
-
-(defcustom liece-directory "~/.liece"
-  "Where to look for data files."
-  :type 'directory
-  :group 'liece-vars)
-  
-(defcustom liece-variables-file (expand-file-name "init.el" liece-directory)
-  "Where to look for variables.  Helps to remove clutter from your .emacs.
-This feature is most likely to dissappear in near future.  The preferred
-way is to put liece variables on .emacs or file loaded from there."
-  :type 'file
-  :group 'liece-vars)
-
-(defcustom liece-variables-files
-  (list liece-variables-file)
-  "Where to look for variables.  Helps to remove clutter from your .emacs.
-This feature is most likely to dissappear in near future.  The preferred
-way is to put liece variables on .emacs or file loaded from there."
-  :type '(repeat (file :tag "Initialization File"))
-  :group 'liece-vars)
-
-;; Where to connect.
-(defgroup liece-server nil
-  "Server Settings"
-  :tag "Server"
-  :prefix "liece-"
-  :group 'liece)
-
-(defgroup liece-channel nil
-  "Channel Settings"
-  :tag "Channel"
-  :prefix "liece-"
-  :group 'liece)
-
-(define-widget 'liece-service-spec 'radio
-  "Edit service spec entries"
-  :convert-widget 'liece-service-spec-convert)
-
-(defun liece-service-spec-convert (widget)
-  (widget-put widget :args '((integer :tag "Port Number")
-                            (string :tag "Name")))
-  widget)
-
-(define-widget 'liece-server-spec 'repeat
-  "Edit server spec entries"
-  :match (lambda (widget value)
-          (eval
-           (` (and
-               (,@ (mapcar
-                    (lambda (entry)
-                      (or (stringp (cdr entry))
-                          (listp (cdr entry))))
-                    value))))))
-  :convert-widget 'liece-server-spec-convert)
-
-(defun liece-server-spec-convert (widget)
-  (let* ((host '(const :format "" :value :host))
-        (service '(const :format "" :value :service))
-        (host
-         (` (group :inline t (, host) (string :tag "Host"))))
-        (service
-         (` (group :inline t (, service) liece-service-spec)))
-        (spec
-         (` (cons
-             (string :tag "Name")
-             (radio (string :tag "Host")
-                    (list (, host) (, service))))))
-        (args (` ((, spec)))))
-    (widget-put widget :args args)
-    widget))
-  
-(defcustom liece-server-alist
-  '(("WIDE Project Kyoto NOC, Japan" . "irc.kyoto.wide.ad.jp")
-    ("WIDE Project Tokyo NOC, Japan" . "irc.tokyo.wide.ad.jp")
-    ("TDI RCAC / 6660" :host "irc.rcac.tdi.co.jp" :service 6660)
-    ("TDI RCAC / 6661" :host "irc.rcac.tdi.co.jp" :service 6661)
-    ("TDI RCAC / 6662" :host "irc.rcac.tdi.co.jp" :service 6662)
-    ("TDI RCAC / 6663" :host "irc.rcac.tdi.co.jp" :service 6663)
-    ("TDI RCAC / 6664" :host "irc.rcac.tdi.co.jp" :service 6664)
-    ("TDI RCAC / 6665" :host "irc.rcac.tdi.co.jp" :service 6665)
-    ("TDI RCAC / 6666" :host "irc.rcac.tdi.co.jp" :service 6666)
-    ("TDI RCAC" . "irc.rcac.tdi.co.jp")
-    ("TDI RCAC, 6Bone" . "irc6.rcac.tdi.co.jp")
-    ("RACE, University of Tokyo" . "irc.race.u-tokyo.ac.jp")
-    ("Hokkaido University, Sapporo, Japan" . "irc.huie.hokudai.ac.jp")
-    ("KARRN Hakozaki NOC" . "irc.karrn.ad.jp")
-    ("Tohoku University, Japan" . "irc.tohoku.ac.jp")
-    ("DTI, Akasaka Tokyo, Japan" . "irc.dti.ne.jp"))
-  "IRC server assoc-list which is used for input IRC server."
-  :type 'liece-server-spec
-  :group 'liece-server)
-
-(defcustom liece-server (or (getenv "IRCSERVER") nil)
-  "Name of the host running the IRC server.
-Value initialized from the IRCSERVER environment variable if one is set"
-  :type 'string
-  :group 'liece-server)
-
-(defcustom liece-service
-  (let ((ircport-env (getenv "IRCPORT")))
-    (if ircport-env
-       (if (> (string-to-int ircport-env) 0)
-           (string-to-int ircport-env)
-         ircport-env)
-      6667))
-  "IRC service name or (port) number."
-  :type 'liece-service-spec
-  :group 'liece-server)
-
-(defcustom liece-my-userhost nil
-  "You can explicitly indicate own hostname here."
-  :type '(radio (string :tag "Hostname")
-               (const :tag "Autodetect" nil))
-  :group 'liece-server)
-
-(defcustom liece-password (or (getenv "IRCPASSWORD") nil)
-  "Your password when connecting to server."
-  :type '(radio (string :tag "Password")
-               (const :tag "No" nil))
-  :group 'liece-server)
-
-(defcustom liece-name (or (getenv "IRCNAME") (user-real-login-name))
-  "The nickname you want to use in IRC.
-Default is the environment variable IRCNICK, or your login name."
-  :type 'string
-  :group 'liece-server)
-
-(defcustom liece-nickname (or (getenv "IRCNICK") (user-real-login-name))
-  "The nickname you want to use in IRC.
-Default is the environment variable IRCNICK, or your login name."
-  :type 'string
-  :group 'liece-server)
-
-(defcustom liece-nick-max-length 9
-  "Maximum length of the nickname."
-  :type 'integer
-  :group 'liece-server)
-
-(defvar liece-real-nickname nil)
-
-(defcustom liece-startup-channel nil
-  "The channel to join automatically at startup.
-If nil, do not join any channel."
-  :type '(radio (string :tag "Channels")
-               (const nil))
-  :group 'liece-channel)
-
-(defcustom liece-startup-channel-list nil
-  "The channel list to join automatically at startup.
-If nil, do not join any channel."
-  :type '(repeat (string :tag "Startup Channel"))
-  :group 'liece-channel)
-
-(defcustom liece-auto-join-partner t
-  "Whether join automatically at arriving private message."
-  :type 'boolean
-  :group 'liece-channel)
-
-(defcustom liece-reconnect-automagic nil
-  "Automatic reconnection, default is disabled."
-  :type 'boolean
-  :group 'liece-server)
-
-(defcustom liece-ask-for-nickname nil
-  "Ask for nickname if liece was entered with \\[universal-argument]."
-  :type 'boolean
-  :group 'liece-server)
-
-(defcustom liece-ask-for-password nil
-  "Ask for password when connecting to server."
-  :type 'boolean
-  :group 'liece-server)
-
-(defcustom liece-ask-for-channel-password nil
-  "Ask for channel password when joining channel with password."
-  :type 'boolean
-  :group 'liece-server)
-
-(defcustom liece-reconnect-with-password nil
-  "Auto recconect to server with password after incorrect password."
-  :type 'boolean
-  :group 'liece-server)
-
-(defcustom liece-grow-tail "_"
-  "Add liece-grow-tail to nick when reconnecting.
-Otherwise you might get killed again if automagic reconnect is too fast."
-  :type 'string
-  :group 'liece-server)
-
-(defcustom liece-auto-iterate-nick nil
-  "When nickname has already been in use, grow-tail automagically."
-  :type 'boolean
-  :group 'liece-server)
-
-(defvar liece-after-registration nil
-  "After my registration.")
-
-(defvar liece-status-message-string nil)
-
-(defvar liece-channel-unread-list nil)
-
-;; Hooks.
-(defgroup liece-hook nil
-  "Hooks"
-  :tag "Hooks"
-  :prefix "liece-"
-  :group 'liece)
-  
-(defcustom liece-command-mode-hook nil
-  "A hook for IRCHAT command mode."
-  :type 'hook
-  :group 'liece-hook)
-
-(defcustom liece-dialogue-mode-hook nil
-  "A hook for IRCHAT dialogue mode."
-  :type 'hook
-  :group 'liece-hook)
-
-(defcustom liece-others-mode-hook nil
-  "A hook for IRCHAT others mode."
-  :type 'hook
-  :group 'liece-hook)
-
-(defcustom liece-channel-mode-hook nil
-  "A hook for IRCHAT Channel mode."
-  :type 'hook
-  :group 'liece-hook)
-
-(defcustom liece-nick-mode-hook nil
-  "A hook for IRCHAT nick mode."
-  :type 'hook
-  :group 'liece-hook)
-
-(defcustom liece-exit-hook nil
-  "A hook executed when signing off IRC."
-  :type 'hook
-  :group 'liece-hook)
-
-(defcustom liece-before-kill-emacs-hook nil
-  "A hook executed when exitting Emacs."
-  :type 'hook
-  :group 'liece-hook)
-
-;; Channel buffers.
-(defcustom liece-channel-buffer-mode nil
-  "When non-nil, liece will display a channel buffer."
-  :type 'boolean
-  :group 'liece-look)
-
-(defcustom liece-channel-window-height-percent 63
-  "How large percent should Current channel window be on startup."
-  :type 'integer
-  :group 'liece-look)
-
-(defcustom liece-default-beep nil
-  "If non nil, channel buffer local beep flag is on at starting."
-  :type 'boolean
-  :group 'liece-look)
-
-(defcustom liece-default-freeze nil
-  "If non nil, channel buffer local freeze flag is on at starting."
-  :type 'boolean
-  :group 'liece-look)
-
-(defcustom liece-default-own-freeze nil
-  "If non nil, channel buffer local own freeze flag is on at starting."
-  :type 'boolean
-  :group 'liece-look)
-
-(defcustom liece-default-channel-binding nil
-  "The channel list to bind the channel number when joining."
-  :type '(repeat (radio (string :tag "Bound Channel")
-                       (const nil)))
-  :group 'liece-channel)
-
-(defcustom liece-default-partner-binding nil
-  "The chat partner list to bind the partner's number."
-  :type '(repeat (radio (string :tag "Bound Partner")
-                       (const nil)))
-  :group 'liece-partner)
-
-;; Nick buffers.
-(defcustom liece-nick-buffer-mode nil
-  "When non-nil, liece will display a nick list buffer."
-  :type 'boolean
-  :group 'liece-look)
-
-(defcustom liece-nick-window-width-percent 18
-  "How large percent should Current nick list window be on startup."
-  :type 'integer
-  :group 'liece-look)
-
-(defcustom liece-nick-window-auto-hide t
-  "Hide nick window in priv buffer automatically."
-  :type 'boolean
-  :group 'liece-look)
-
-;; Channel list buffer.
-(defcustom liece-channel-list-buffer-mode nil
-  "When non-nil, liece will display a channel list buffer."
-  :type 'boolean
-  :group 'liece-look)
-
-(defcustom liece-channel-list-window-width-percent 18
-  "How large percent should Current channel list window be on startup."
-  :type 'integer
-  :group 'liece-look)
-  
-;; Highlight.
-(defcustom liece-highlight-mode nil
-  "If non nil, IRC buffer is highlighted by specific rule."
-  :type 'boolean
-  :group 'liece-highlight)
-
-(defcustom liece-highlight-pattern "$^"
-  "If non nil, this pattern used for user defined highlight rule."
-  :type '(regexp :tag "Highlighting Pattern")
-  :group 'liece-highlight)
-
-;; DCC
-(defgroup liece-dcc nil
-  "DCC Settings"
-  :tag "DCC"
-  :prefix "liece-"
-  :group 'liece)
-
-(defcustom liece-dcc-program "ldcc"
-  "Name of the external dcc-program.
-Current version takes the one which is earlier in path \(if many\)."
-  :type '(file :tag "DCC program path")
-  :group 'liece-dcc)
-
-(defcustom liece-dcc-directory "~/tmp"
-  "Directory where liece-dcc puts its files."
-  :type 'directory
-  :group 'liece-dcc)
-
-(defcustom liece-dcc-port 0
-  "Default port for DCC operations."
-  :type 'integer
-  :group 'liece-dcc)
-
-(defcustom liece-dcc-resolve-server nil
-  "Resolve IRC server FQDN with external DCC command."
-  :type 'boolean
-  :group 'liece-dcc)
-
-;; Prefix strings for various messages.
-(defgroup liece-prefix nil
-  "Various message prefix"
-  :tag "Prefix"
-  :prefix "liece-"
-  :group 'liece)
-
-(defgroup liece-prefix-string nil
-  "Various prefix string"
-  :tag "Prefix string"
-  :prefix "liece-"
-  :group 'liece-prefix)
-
-(defcustom liece-change-prefix "*** Change: "
-  "String to add before changing messages."
-  :type 'string
-  :group 'liece-prefix-string)
-
-(defcustom liece-notice-prefix "*** Notice: "
-  "String to add before any notice message."
-  :type 'string
-  :group 'liece-prefix-string)
-
-(defcustom liece-broadcast-prefix "*** Broadcast: "
-  "String to add before any Broadcast message."
-  :type 'string
-  :group 'liece-prefix-string)
-
-(defcustom liece-wallops-prefix "*** Notice: "
-  "String to add before any WALLOPS message."
-  :type 'string
-  :group 'liece-prefix-string)
-
-(defcustom liece-error-prefix "*** Error: "
-  "String to add before any ERROR message."
-  :type 'string
-  :group 'liece-prefix-string)
-
-(defcustom liece-info-prefix "*** Info: "
-  "String to add before any informational message."
-  :type 'string
-  :group 'liece-prefix-string)
-
-(defcustom liece-timestamp-prefix "*** Time: "
-  "String to add before any timestamp message."
-  :type 'string
-  :group 'liece-prefix-string)
-
-(defcustom liece-client-prefix "*** Client: "
-  "String to add before any CTCP message."
-  :type 'string
-  :group 'liece-prefix-string)
-
-(defcustom liece-dcc-prefix "*** DCC: "
-  "String to add before any DCC message."
-  :type 'string
-  :group 'liece-prefix-string)
-
-(defcustom liece-time-prefix-regexp "[0-9][0-9]:[0-9][0-9] "
-  "Time prefix regexp."
-  :type 'regexp
-  :group 'liece-prefix)
-
-(defcustom liece-display-time t
-  "If non-nil, print time prefix on each line in channel buffer."
-  :type 'boolean
-  :group 'liece-prefix)
-
-(defcustom liece-display-prefix-tag nil
-  "If non-nil, print prefix tag on each line in channel buffer."
-  :type 'boolean
-  :group 'liece-prefix)
-
-(defcustom liece-generic-prefix-tag-regexp "\\*\\*\\* \\([^:]+: \\)"
-  "Regular expression for generic prefix tag."
-  :type 'regexp
-  :group 'liece-prefix)
-
-;; Misc.
-(defcustom liece-blink-parens nil
-  "Should we blink matching parenthesis in liece command buffer?"
-  :type 'boolean
-  :group 'liece-vars)
-
-(defcustom liece-show-wallops t
-  "Show wallops messages if usermode +ws."
-  :type 'boolean
-  :group 'liece-vars)
-
-(defcustom liece-ignore-extra-notices t
-  "Don't show any notice unless they come from the local server."
-  :type 'boolean
-  :group 'liece-vars)
-
-(defcustom liece-shorten-kills t
-  "Shorten KILL messages to about one line."
-  :type 'boolean
-  :group 'liece-vars)
-
-(defcustom liece-ignore-changes nil
-  "Ignore changes? Good in topic-wars/link troubles."
-  :type 'boolean
-  :group 'liece-vars)
-
-(defcustom liece-ignore-fakes nil
-  "If non nil, ignore fake notices if receiving them."
-  :type 'boolean
-  :group 'liece-vars)
-
-(defcustom liece-signoff-message nil
-  "Default signoff message."
-  :type '(radio (string :tag "Signoff message"))
-  :group 'liece-vars)
-
-(defcustom liece-away-message ""
-  "Default away message."
-  :type 'string
-  :group 'liece-vars)
-
-(defcustom liece-beep-on-bells 'always
-  "If non-nil, and the IRC dialogue buffer is not selected in a window,
-an IRC message arriving containing a bell character, will cause you
-to be notified.
-If value is 'always, an arriving bell will always cause a beep (or flash)."
-  :type '(radio (const :tag "Always" always) (const :tag "No" nil))
-  :group 'liece-vars)
-
-(defcustom liece-beep-function (function ding)
-  "Function to beep."
-  :type 'function
-  :group 'liece-vars)
-
-(defcustom liece-beep-when-invited nil
-  "If non-nil, beep when invited."
-  :type 'boolean
-  :group 'liece-vars)
-
-(defcustom liece-beep-when-privmsg nil
-  "If non-nil, beep when received privmsg."
-  :type 'boolean
-  :group 'liece-vars)
-
-(defcustom liece-beep-words-list nil
-  "This list used for user defined beep rules."
-  :type '(repeat (string :tag "Beep Rules List"))
-  :group 'liece-vars)
-
-(defcustom liece-system-fqdname (system-name)
-  "The fully qualified domain name of the system.
-Default is what (system-name) returns."
-  :type 'string
-  :group 'liece-vars)
-
-(defcustom liece-gather-channel-modes t
-  "Gather channel modes when joining channels."
-  :type 'boolean
-  :group 'liece-vars)
-
-(defcustom liece-use-x-face nil
-  "Display X-Face in dialogue buffer."
-  :type 'boolean
-  :group 'liece-look)
-
-;; Send/Receive files.
-(defcustom liece-file-accept nil
-  "Do we accept files."
-  :type 'boolean
-  :group 'liece-ctcp)
-
-(defcustom liece-file-confirm-save nil
-  "Do we want confirmation on saving files."
-  :type 'boolean
-  :group 'liece-ctcp)
-
-;; Userinfos.
-(defgroup liece-ctcp nil
-  "CTCP Settings"
-  :tag "CTCP"
-  :prefix "liece-"
-  :group 'liece)
-
-(defcustom liece-ctcp-userinfo "No user information given."
-  "Userinfo message given to anyone asking."
-  :type 'string
-  :group 'liece-ctcp)
-
-(defcustom liece-ctcp-x-face ""
-  "X-Face message given to anyone asking.  Proper form is \"X-Face: ....\"."
-  :type 'string
-  :group 'liece-ctcp)
-
-(static-when (featurep 'xemacs)
-  (define-obsolete-variable-alias 'liece-client-userinfo
-    'liece-ctcp-userinfo)
-  (define-obsolete-variable-alias 'liece-client-x-face
-    'liece-ctcp-x-face))
-
-(defcustom liece-timers
-  '((liece-command-poll-names liece-poll-names-interval)
-    (liece-command-keepalive liece-keepalive-interval)
-    (liece-command-poll-friends liece-poll-friends-interval))
-  "Symbol name to store timer, timer-function and timer-interval."
-  :type 'list
-  :group 'liece-server)
-
-(defcustom liece-friends nil
-  "Friends to be checked consequently."
-  :type '(repeat (string :tag "Nick"))
-  :group 'liece-vars)
-
-(defcustom liece-display-friends-function 'liece-303-display-friends
-  "Function to display friends status."
-  :type 'function
-  :group 'liece-vars)
-
-(defcustom liece-poll-friends-interval 30
-  "Interval on seconds the existence of friends."
-  :type '(repeat
-         (integer :tag "Polling Interval in Seconds")
-         (const :tag "No" nil))
-  :group 'liece-server)
-
-(defcustom liece-keepalive-interval nil
-  "Interval on seconds the existence of server connection is checked."
-  :type '(radio
-         (integer :tag "Seconds"
-                  :doc "Connection Interval in Seconds")
-         (const :tag "No" nil))
-  :group 'liece-server)
-
-(defcustom liece-poll-names-interval nil
-  "Interval the names are polled from server."
-  :type '(radio
-         (integer :tag "Seconds"
-                  :doc "NAMES Polling Interval in Seconds")
-         (const :tag "No" nil))
-  :group 'liece-server)
-
-(defcustom liece-timestamp-interval (* 60 10)
-  "Interval in seconds between timestamps in dialogue-buffer, nil for none."
-  :type '(radio
-         (integer :tag "Seconds"
-                  :doc "Timestamp Interval in Seconds")
-         (const "No" nil))
-  :group 'liece-server)
-
-(defcustom liece-connection-timeout 60
-  "Default timeout interval."
-  :type 'integer
-  :group 'liece-server)
-  
-(defcustom liece-timestamp-format (concat liece-timestamp-prefix "%s")
-  "Format-string for timestamp."
-  :type 'string
-  :group 'liece-format-string)
-
-;; Conversions: Not used.
-(defcustom liece-send-convert-list nil
-  "Convert characters before sending to server."
-  :type '(repeat (character :tag "Character"
-                           :doc "Convert Character"))
-  :group 'liece-vars)
-
-(defcustom liece-receive-convert-list nil
-  "Convert characters after receiving from server."
-  :type '(repeat (character :tag "Character"
-                           :doc "Convert Character"))
-  :group 'liece-vars)
-
-;; Ignores
-(defgroup liece-ignore nil
-  "Ignore Settings"
-  :tag "Ignore"
-  :prefix "liece-"
-  :group 'liece-vars)
-
-(defcustom liece-kill-nickname nil
-  "List of nicknames to be ignored.
-Messages from these people won't be displayed."
-  :type '(repeat (string :tag "Nick" :doc "Ignore Nick"))
-  :group 'liece-ignore)
-
-(defcustom liece-kill-realname nil
-  "List of real names to be ignored.
-Messages from them won't be displayed."
-  :type '(repeat (string :tag "Realname" :doc "Ignore Realname"))
-  :group 'liece-ignore)
-
-(defcustom liece-kill-logon nil
-  "List of logon names (user@host.dom.ain) to be ignored.
-Messages from them won't be displayed."
-  :type '(repeat (string :tag "Logon" :doc "Ignore Logon Name"))
-  :group 'liece-ignore)
-
-;; New style ignore.
-(defcustom liece-no-ignore-buffers nil
-  "A list of buffers that don't adhere to ignore-list."
-  :type '(repeat (string :tag "Buffer" :doc "Don't Ignore Buffer Names"))
-  :group 'liece-ignore)
-
-(define-widget 'liece-ignore-spec 'repeat
-  "Edit server spec entries"
-  :convert-widget 'liece-ignore-spec-convert)
-
-(defun liece-ignore-spec-convert (widget)
-  (let* ((type
-         '(radio
-           (string :tag "Type" :doc "Match for messagetype")
-           (const nil)))
-        (match
-         '(radio
-           (string :tag "Match" :doc "Match for string-in-message")
-           (const nil)))
-        (info-func
-         '(function :doc "Function whose return value is ignore info"))
-        (user-func
-         '(function :doc "Function whose return value is ignore user list"))
-        (name
-         '(repeat :tag "Name" (string :doc "Ignore user name")))
-        (spec
-         (` (list :value (nil nil)
-                  (choice :tag "Message"
-                   (cons (, type) (, match)) (const nil) (, info-func))
-                  (choice :tag "User" (const nil) (, user-func) (, name)))))
-        (args (` ((, spec)))))
-    (widget-put widget :args args)
-    widget))
-
-(defcustom liece-ignore-list nil
-  "A list of buffers that don't adhere to ignore-list."
-  :type 'liece-ignore-spec
-  :group 'liece-ignore)
-
-(defcustom liece-compress-changes t
-  "Set to t if we want instant compressed messages in the old format."
-  :type 'boolean
-  :group 'liece-vars)
-
-(defcustom liece-compress-treshold 1
-  "Number of lines to search back for a previous matching join/part/quit/mode."
-  :type 'integer
-  :group 'liece-vars)
-
-(defcustom liece-compress-mode-length 3
-  "Number of mode compression length."
-  :type 'integer
-  :group 'liece-vars)
-
-(defcustom liece-buffer-max-size 4242424
-  "Maximum size (in bytes) of any liece buffer."
-  :type 'integer
-  :group 'liece-vars)
-
-(defcustom liece-buffer-default-size 4042424
-  "Size to shrink buffer if it grows too big."
-  :type 'integer
-  :group 'liece-vars)
-
-(defcustom liece-buffer-check-interval (* 60 10)
-  "Interval between `buffer-size' checks."
-  :type 'integer
-  :group 'liece-vars)
-
-(static-when (featurep 'xemacs)
-  (define-obsolete-variable-alias 'liece-buffer-maxsize
-    'liece-buffer-max-size)
-  (define-obsolete-variable-alias 'liece-buffer-defsize
-    'liece-buffer-default-size)
-  (define-obsolete-variable-alias 'liece-checkbuffer-interval
-    'liece-buffer-check-interval))
-
-(defcustom liece-buffer-dispose-function (function bury-buffer)
-  "Function called after the buffer was disposed of."
-  :type 'function
-  :group 'liece-vars)
-
-(defcustom liece-private-window-height 4
-  "How tall is the window for private messages when shown."
-  :type 'integer
-  :group 'liece-vars)
-
-(defcustom liece-format-time-function
-  'liece-compose-time-string
-  "Function to convert `current-time-string' to the human readable form.
-If you like to have the short format, set this to nil or to a
-funtion (defun my-format (s) s)."
-  :type 'function
-  :group 'liece-vars)
-
-(defcustom liece-keep-buffers t
-  "When (re)starting IRC, erase contents of old buffers."
-  :type 'boolean
-  :group 'liece-vars)
-
-(defcustom liece-scroll-step nil
-  "The number of lines to try scrolling a window by when point moves out."
-  :type '(radio (integer :tag "Scroll Step")
-               (const nil))
-  :group 'liece-look)
-
-(defcustom liece-swap-private nil
-  "When showing private is it between under dialogue or not."
-  :type 'boolean
-  :group 'liece-vars)
-
-(defcustom liece-buffer-preferences
-  (list
-   (cons ".*" liece-D-buffer))
-  "List of lists that contain regexp to match and `buffer-list' to insert.
-Setting this as
-(list
- (cons \"#report\" (list \"*report-buffer*\"))
- (cons \".*\" liece-D-buffer))
-would cause messages from and to channel #report to be displayed on
-buffer named *report-buffer* and all other messages are displayed on
-dialogue-buffer."
-  :type '(repeat (cons (string :tag "Channel Name")
-                       (list (variable :tag "Buffe or Name"))))
-  :group 'liece-vars)
-
-(defcustom liece-channel-conversion-map nil
-  "The map of channel conversion."
-  :type '(repeat (cons (string :tag "Channel Name")
-                      (string :tag "Channel Name (After Conversion)")))
-  :group 'liece-vars)
-
-(defcustom liece-channel-conversion-default-mask "*.jp"
-  "The default mask of channel conversion."
-  :type 'string
-  :group 'liece-vars)
-
-(defcustom liece-channel-id-length 5
-  "Length of channel ID for ! channels."
-  :type 'integer
-  :group 'liece-vars)
-
-(defcustom liece-insert-environment-version nil
-  "If non-nil, display version description of current environment."
-  :type 'boolean
-  :group 'liece-vars)
-  
-(provide 'liece-vars)
-
-;;; liece-vars.el ends here
diff --git a/lisp/liece-version.el b/lisp/liece-version.el
deleted file mode 100644 (file)
index 742f28b..0000000
+++ /dev/null
@@ -1,113 +0,0 @@
-;;; liece-version.el --- Version information for Liece.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1999-12-23
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-;;; @ version number constants
-;;;
-
-(require 'product)
-(provide 'liece-version)
-
-(product-provide 'liece-version
-  (product-define "Liece" nil '(1 4 4)))
-
-(defconst liece-environment-version
-  (concat
-   (if (fboundp 'apel-version)
-       (concat (apel-version) " ")
-     nil)
-   (if (featurep 'xemacs)
-       (concat (cond
-               ((featurep 'utf-2000)
-                (concat "UTF-2000-MULE/" utf-2000-version))
-               ((featurep 'mule) "MULE"))
-              " XEmacs"
-              (if (string-match "^[0-9]+\\(\\.[0-9]+\\)" emacs-version)
-                  (concat
-                   "/"
-                   (substring emacs-version 0 (match-end 0))
-                   (cond ((and (boundp 'xemacs-betaname)
-                               xemacs-betaname)
-                          ;; It does not exist in XEmacs
-                          ;; versions prior to 20.3.
-                          (concat " " xemacs-betaname))
-                         ((and (boundp 'emacs-patch-level)
-                               emacs-patch-level)
-                          ;; It does not exist in FSF Emacs or in
-                          ;; XEmacs versions earlier than 21.1.1.
-                          (format " (patch %d)" emacs-patch-level))
-                         (t ""))
-                   " (" xemacs-codename ") ("
-                   system-configuration ")")
-                " (" emacs-version ")"))
-     (let ((ver (if (string-match "\\.[0-9]+$" emacs-version)
-                   (substring emacs-version 0 (match-beginning 0))
-                 emacs-version)))
-       (if (featurep 'mule)
-          (if (boundp 'enable-multibyte-characters)
-              (concat "Emacs/" ver
-                      " (" system-configuration ")"
-                      (if enable-multibyte-characters
-                          (concat " MULE/" mule-version)
-                        " (with unibyte mode)")
-                      (if (featurep 'meadow)
-                          (let ((mver (Meadow-version)))
-                            (if (string-match "^Meadow-" mver)
-                                (concat " Meadow/"
-                                        (substring mver
-                                                   (match-end 0))))))
-                      (if (boundp 'NEMACS)
-                          (let ((nemacs-version
-                                 (condition-case ()
-                                     (eval '(nemacs-version))
-                                   (error ""))))
-                            (when (string-match
-                                   "Nemacs version \\([^ ]*\\)"
-                                   nemacs-version)
-                              (setq nemacs-version
-                                    (match-string 1 nemacs-version)))
-                            (concat " NEmacs/" nemacs-version))))
-            (concat "MULE/" mule-version
-                    " (based on Emacs " ver ")"))
-        (concat "Emacs/" ver " (" system-configuration ")"))))))
-
-(defun liece-version ()
-  "Print Liece version."
-  (interactive)
-  (let ((product-info
-        (concat (product-string-1 'liece-version t)
-                (if liece-insert-environment-version
-                    (concat " " liece-environment-version)
-                  nil))))
-    (if (interactive-p)
-       (message "%s" product-info)
-      product-info)))
-
-;;; liece-version.el ends here
diff --git a/lisp/liece-window.el b/lisp/liece-window.el
deleted file mode 100644 (file)
index 5ae23c8..0000000
+++ /dev/null
@@ -1,330 +0,0 @@
-;;; liece-window.el --- Window configuration style utility.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1999-01-08
-;; Revised: 1999-07-05
-;; Keywords: window, window configuration
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(require 'liece-misc)
-(require 'liece-intl)
-
-(require 'calist)
-(eval-when-compile (require 'cl))
-
-(defgroup liece-window nil
-  "Window configuration"
-  :tag "Window configuration"
-  :group 'liece)
-
-(defcustom liece-window-min-width 2
-  "Minimal width of liece window."
-  :type 'integer
-  :group 'liece-window)
-
-(defcustom liece-window-min-height 2
-  "Minimal height of liece window."
-  :type 'integer
-  :group 'liece-window)
-
-(defcustom liece-window-style-directory nil
-  "Normal position of style configuration files."
-  :type 'directory
-  :group 'liece-window)
-
-(defcustom liece-window-default-style "bottom"
-  "Default style."
-  :type 'string
-  :group 'liece-window)
-
-(defcustom liece-window-to-buffer
-  '((channel . liece-channel-buffer)
-    (others . liece-others-buffer)
-    (dialogue . liece-dialogue-buffer)
-    (command . liece-command-buffer)
-    (channel-list . liece-channel-list-buffer)
-    (nick . liece-nick-buffer))
-  "Window abbreviation to buffer alist."
-  :type '(repeat
-         (cons (symbol :tag "Abbrev")
-               (symbol :tag "Buffer")))
-  :group 'liece-window)
-
-(defconst liece-window-split-types '(horizontal vertical))
-
-(defvar liece-window-style-configuration-alist nil)
-(defvar liece-window-current-style nil)
-(defvar liece-window-configuration-stack nil)
-
-(defun liece-window-field-match-method-as-default-rule
-  (calist field-type field-value)
-  (let* ((field (assq field-type calist)) (value (cdr field)))
-    (cond ((null field)
-          (cons (cons field-type field-value) calist))
-         ((and (symbolp field-value) (eq field-value 'any))
-          calist)
-         ((and (symbolp value) (eq field-value value))
-          calist))))
-
-(define-calist-field-match-method
-  'command-buffer-mode
-  'liece-window-field-match-method-as-default-rule)
-
-(define-calist-field-match-method
-  'channel-buffer-mode
-  'liece-window-field-match-method-as-default-rule)
-
-(define-calist-field-match-method
-  'nick-buffer-mode
-  'liece-window-field-match-method-as-default-rule)
-
-(define-calist-field-match-method
-  'channel-list-buffer-mode
-  'liece-window-field-match-method-as-default-rule)
-
-(defmacro liece-window-add-style (&rest calist)
-  `(ctree-set-calist-strictly 'liece-window-style-configuration-alist
-                             ',calist))
-
-(defmacro liece-window-define-reconfiguration-predicate (name &rest body)
-  `(defun-maybe ,name ,@body))
-  
-(put 'liece-window-define-reconfiguration-predicate
-     'lisp-indent-function 'defun)
-
-(defmacro liece-window-set-default-style ()
-  "Set window configuration with fallback style."
-  '(liece-window-add-style
-    (command-buffer-mode . any)
-    (channel-buffer-mode . any)
-    (nick-buffer-mode . any)
-    (channel-list-buffer-mode . any)
-    (configuration
-     (vertical
-      1.0
-      (dialogue 1.0)
-      (command 4 point)))))
-     
-(defsubst liece-window-load-style-file (style)
-  "Load style file."
-  (condition-case nil
-      (progn
-       (if (null liece-window-style-directory)
-           (setq liece-window-style-directory
-                 (liece-locate-path "styles")))
-       (setq liece-window-style-configuration-alist nil)
-       (load (expand-file-name style liece-window-style-directory))
-       (setq liece-window-current-style style))
-    (error
-     (liece-message "Style file load failed.")
-     (liece-window-set-default-style))))
-
-(defmacro liece-window-percent-to-rate (percent)
-  `(/ ,percent 100.0))
-
-(defmacro liece-window-to-buffer-helper (window)
-  `(cond ((symbolp ,window)
-         (symbol-value ,window))
-        (t ,window)))
-
-(defmacro liece-window-safe-select-window (window)
-  `(if ,window (select-window ,window)))
-
-;;;###liece-autoload
-(defun liece-command-set-window-style (style)
-  (interactive
-   (let ((styles (directory-files liece-window-style-directory)))
-     (list
-      (liece-minibuffer-completing-read
-       "Window style: " (list-to-alist styles) nil t nil nil
-       liece-window-current-style))))
-  (liece-window-load-style-file style))
-
-(defun liece-command-reload-window-style ()
-  (interactive)
-  (liece-window-load-style-file
-   (or liece-window-current-style
-       liece-window-default-style)))
-
-(defmacro liece-window-default-reconfiguration-predicate ()
-  '(or (one-window-p t)
-       (null (liece-get-buffer-window liece-command-buffer))
-       (and (not liece-channel-buffer-mode)
-           (null (liece-get-buffer-window liece-dialogue-buffer)))
-       (and liece-channel-buffer-mode
-           (null (liece-get-buffer-window liece-channel-buffer))
-           (null (liece-get-buffer-window liece-others-buffer)))
-       (and liece-channel-buffer-mode
-           (if liece-nick-buffer-mode
-               (null (liece-get-buffer-window liece-nick-buffer))
-             (not (null (liece-get-buffer-window liece-nick-buffer)))))
-       (if liece-channel-list-buffer-mode
-          (null (liece-get-buffer-window liece-channel-list-buffer))
-        (not (null (liece-get-buffer-window liece-channel-list-buffer))))))
-
-;;;###liece-autoload
-(defun liece-configure-windows ()
-  (let ((liece-nick-buffer-mode liece-nick-buffer-mode)
-       (liece-channel-buffer-mode liece-channel-buffer-mode)
-       situation calist split predicate)
-    (if (and (get 'liece-nick-buffer-mode 'hide)
-            liece-nick-window-auto-hide)
-       (setq liece-nick-buffer-mode nil))
-    (if (not (liece-channel-last
-             (if (eq liece-command-buffer-mode 'chat)
-                 liece-current-chat-partners
-               liece-current-channels)))
-       (setq liece-channel-buffer-mode nil))
-    (setq situation
-         `((channel-buffer-mode . ,liece-channel-buffer-mode)
-           (nick-buffer-mode . ,liece-nick-buffer-mode)
-           (channel-list-buffer-mode . ,liece-channel-list-buffer-mode)
-           (command-buffer-mode . ,liece-command-buffer-mode)))
-    (or liece-window-current-style
-       (liece-command-set-window-style liece-window-default-style))
-    (setq calist (ctree-match-calist liece-window-style-configuration-alist
-                                    situation)
-         split (cadr (assq 'configuration calist))
-         predicate (cdr (assq 'reconfiguration-predicate calist)))
-    (when (and split
-              (or (null predicate)
-                  (and predicate
-                       (liece-functionp predicate)
-                       (funcall predicate))))
-      (setq truncate-partial-width-windows
-           (not liece-truncate-partial-width-windows))
-      (if liece-use-full-window (delete-other-windows))
-      (save-excursion
-       (switch-to-buffer liece-command-buffer) ;; u-mu.
-       (liece-window-configure-frame split)))))
-
-(defun liece-window-configure-frame (split &optional window)
-  (or window
-      (setq window (get-buffer-window (current-buffer))))
-  (liece-window-safe-select-window window)
-  (while (and (not (assq (car split) liece-window-to-buffer))
-              (liece-functionp (car split)))
-    (setq split (eval split)))
-  (let* ((type (car split))
-        (subs (cddr split))
-        (len (if (eq type 'horizontal) (window-width) (window-height)))
-        (total 0)
-        (window-min-width
-         (or liece-window-min-width window-min-width))
-        (window-min-height
-         (or liece-window-min-height window-min-height))
-        s result new-win rest comp-subs size sub)
-    (cond
-     ;; Nothing to do here.
-     ((null split))
-     ;; Don't switch buffers.
-     ((null type)
-      (and (memq 'point split) window))
-     ;; This is a buffer to be selected.
-     ((not (memq type '(horizontal vertical)))
-      (let ((buffer (cond ((stringp type) type)
-                         (t (cdr (assq type liece-window-to-buffer))))))
-       (unless buffer
-         (error "Illegal buffer type: %s" type))
-       (switch-to-buffer
-        (liece-window-to-buffer-helper buffer))
-       ;; We return the window if it has the `point' spec.
-       (and (memq 'point split) window)))
-     (t
-      (when (> (length subs) 0)
-       ;; First we have to compute the sizes of all new windows.
-       (while subs
-         (setq sub (append (pop subs) nil))
-         (while (and (not (assq (car sub) liece-window-to-buffer))
-                     (liece-functionp (car sub)))
-           (setq sub (eval sub)))
-         (when sub
-           (push sub comp-subs)
-           (setq size (cadar comp-subs))
-           (cond ((equal size 1.0)
-                  (setq rest (car comp-subs))
-                  (setq s 0))
-                 ((floatp size)
-                  (setq s (floor (* size len))))
-                 ((integerp size)
-                  (setq s size))
-                 ((symbolp size)
-                  (setq s
-                        (floor
-                         (* (liece-window-percent-to-rate
-                             (symbol-value size))
-                            len))))
-                 (t
-                  (error "Illegal size: %s" size)))
-           ;; Try to make sure that we are inside the safe limits.
-           (cond ((zerop s))
-                 ((eq type 'horizontal)
-                  (setq s (max s window-min-width)))
-                 ((eq type 'vertical)
-                  (setq s (max s window-min-height))))
-           (setcar (cdar comp-subs) s)
-           (incf total s)))
-       ;; Take care of the "1.0" spec.
-       (if rest
-           (setcar (cdr rest) (- len total))
-         (error "No 1.0 specs in %s" split))
-       ;; The we do the actual splitting in a nice recursive
-       ;; fashion.
-       (setq comp-subs (nreverse comp-subs))
-       (while comp-subs
-         (if (null (cdr comp-subs))
-             (setq new-win window)
-           (setq new-win
-                 (split-window window (cadar comp-subs)
-                               (eq type 'horizontal))))
-         (setq result (or (liece-window-configure-frame
-                           (car comp-subs) window)
-                          result))
-         (liece-window-safe-select-window new-win)
-         (setq window new-win)
-         (setq comp-subs (cdr comp-subs))))
-      ;; Return the proper window, if any.
-      (liece-window-safe-select-window result)))))
-
-(defun liece-window-configuration-push ()
-  (let ((frame (selected-frame))
-       (config (current-window-configuration)))
-    (push (list frame config)
-         liece-window-configuration-stack)))
-
-(defun liece-window-configuration-pop ()
-  (let* ((frame (selected-frame))
-         (triple (assq frame liece-window-configuration-stack)))
-    (when (and triple (window-configuration-p (cadr triple)))
-      (set-window-configuration (cadr triple))
-      (if (setq frame (assq frame liece-window-configuration-stack))
-         (setq liece-window-configuration-stack
-               (delq frame liece-window-configuration-stack))))
-    liece-window-configuration-stack))
-
-(provide 'liece-window)
-
-;;; liece-window.el ends here
diff --git a/lisp/liece-x-face.el b/lisp/liece-x-face.el
deleted file mode 100644 (file)
index 4403619..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-;;; liece-x-face.el --- X-Face wrappers.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1998-11-25
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile (require 'liece-compat))
-
-(require 'path-util)
-
-(defvar liece-x-face-insert-function
-  (when (and (module-installed-p 'bitmap) (module-installed-p 'x-face))
-    (function liece-x-face-insert-with-bitmap)))
-
-(eval-and-compile
-  (autoload 'x-face-encode "x-face")
-  (autoload 'x-face-read-existing-file-name "x-face")
-  (autoload 'x-face-icons-to-xbm "x-face")
-  (autoload 'x-face-x-face-encoded-string-to-icon-string "x-face")
-  (autoload 'bitmap-insert-xbm-buffer "bitmap")
-  (autoload 'bitmap-decode-xbm "bitmap")
-  (autoload 'bitmap-read-xbm-buffer "bitmap")
-  (autoload 'bitmap-compose "bitmap"))
-  
-(defalias 'liece-x-face-encode 'x-face-encode)
-(defalias 'liece-x-face-read-existing-file-name
-  'x-face-read-existing-file-name)
-
-(defun liece-x-face-insert-with-bitmap (buffer str nick)
-  (save-excursion
-    (set-buffer buffer)
-    (goto-char (point-max))
-    (let* (buffer-read-only
-          (buf (x-face-icons-to-xbm
-                nick 1 1
-                (x-face-x-face-encoded-string-to-icon-string str)))
-          (cmp (bitmap-decode-xbm (bitmap-read-xbm-buffer buf)))
-          (len (length cmp)) (col (current-column))
-          (prefix (buffer-substring
-                   (line-beginning-position) (point))) pt)
-      (delete-region (line-beginning-position) (point))
-      (dotimes (i len)
-       (insert ?\n)
-       (if (= i (/ len 2))
-           (insert prefix)
-         (move-to-column col t))
-       (setq pt (point))
-       (insert (bitmap-compose (aref cmp i)))
-       (overlay-put
-        (make-overlay pt (point)) 'face 'liece-client-face)))))
-  
-(defun liece-x-face-insert (buffers str nick)
-  (cond
-   ((or (not buffers) (listp buffers))
-    (dolist (buffer buffers)
-      (liece-x-face-insert buffer str nick)))
-   ((fboundp liece-x-face-insert-function)
-    (funcall liece-x-face-insert-function buffers str nick))))
-
-(provide 'liece-x-face)
-
-;;; liece-x-face.el ends here
diff --git a/lisp/liece-xemacs.el b/lisp/liece-xemacs.el
deleted file mode 100644 (file)
index c30b265..0000000
+++ /dev/null
@@ -1,631 +0,0 @@
-;;; liece-xemacs.el --- XEmacs specific routines.
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 1999-08-22
-;; Keywords: emulation
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(eval-when-compile
-  (require 'liece-inlines)
-  (require 'liece-misc)
-  (require 'liece-commands))
-
-(autoload 'liece-command-dcc-send "liece-dcc")
-(defvar liece-nick-popup-menu)
-
-(defgroup liece-toolbar nil
-  "Toolbar of your XEmacs"
-  :tag "Toolbar"
-  :group 'liece)
-
-(defgroup liece-toolbar-icons nil
-  "Toolbar Icons of your XEmacs"
-  :tag "Toolbar Icons"
-  :prefix "liece-toolbar-"
-  :group 'liece)
-
-(defmacro liece-xemacs-icon-path (file)
-  "Search icon FILE and return absolete path of the file."
-  `(or (and liece-icon-directory
-           (expand-file-name ,file liece-icon-directory))
-       (let ((path (liece-find-path ,file "icons")))
-        (when path
-          (setq liece-icon-directory
-                (file-name-directory path)))
-        path)))
-
-(define-widget 'liece-toolbar-icon 'list
-  "Edit toolbar spec entries"
-  :match (lambda (widget value)
-          (valid-plist-p value))
-  :convert-widget 'liece-toolbar-icon-convert)
-
-(eval-and-compile
-  (defconst liece-toolbar-icon-states
-    '(:up :down :disabled :cap-up :cap-down :cap-disabled)
-    "toolbar event states")
-
-  (defun liece-toolbar-icon-convert-1 (state)
-    (list 'group :inline t :format "%t: %v"
-         :tag (capitalize (substring (symbol-name state) 1))
-         (list 'const :format "" :value state
-               (list 'radio '(const :tag "none" nil) 'file)))))
-
-(defun liece-toolbar-icon-convert (widget)
-  "Widget converter of the WIDGET `liece-toolbar-icon'."
-  (apply #'widget-put widget :args
-        (eval-when-compile
-          (mapcar #'liece-toolbar-icon-convert-1
-                  liece-toolbar-icon-states)))
-  widget)
-
-(defcustom liece-use-toolbar (if (featurep 'toolbar)
-                                'default-toolbar
-                              nil)
-  "*If nil, do not use a toolbar.
-If it is non-nil, it must be a toolbar.  The five valid values are
-`default-toolbar', `top-toolbar', `bottom-toolbar',
-`right-toolbar', and `left-toolbar'."
-  :type '(choice (const default-toolbar)
-                 (const top-toolbar) (const bottom-toolbar)
-                 (const left-toolbar) (const right-toolbar)
-                 (const :tag "no toolbar" nil))
-  :group 'liece-toolbar)
-
-(defcustom liece-toolbar-back-icon '(:up "back.xpm")
-  "Back button."
-  :type 'liece-toolbar-icon
-  :group 'liece-toolbar-icons)
-
-(defcustom liece-toolbar-forward-icon '(:up "forward.xpm")
-  "Forward button."
-  :type 'liece-toolbar-icon
-  :group 'liece-toolbar-icons)
-
-(defcustom liece-toolbar-reload-icon '(:up "reload.xpm")
-  "Reload button."
-  :type 'liece-toolbar-icon
-  :group 'liece-toolbar-icons)
-
-(defcustom liece-toolbar-home-icon '(:up "home.xpm")
-  "Home button."
-  :type 'liece-toolbar-icon
-  :group 'liece-toolbar-icons)
-
-(defcustom liece-toolbar-search-icon '(:up "search.xpm")
-  "Search button."
-  :type 'liece-toolbar-icon
-  :group 'liece-toolbar-icons)
-
-(defcustom liece-toolbar-location-icon '(:up "location.xpm")
-  "Location button."
-  :type 'liece-toolbar-icon
-  :group 'liece-toolbar-icons)
-
-(defcustom liece-toolbar-stop-icon '(:up "stop.xpm")
-  "Stop button."
-  :type 'liece-toolbar-icon
-  :group 'liece-toolbar-icons)
-
-(defcustom liece-xemacs-unread-icon "balloon.xpm"
-  "Unread icon."
-  :type 'file
-  :group 'liece-look)
-
-;;; @ internal variables
-;;; 
-(defvar liece-glyph-cache nil)
-(defvar liece-toolbar-position (if (featurep 'toolbar)
-                                  (default-toolbar-position)
-                                nil))
-
-(defvar liece-toolbar-back-glyph nil)
-(defvar liece-toolbar-forward-glyph nil)
-(defvar liece-toolbar-reload-glyph nil)
-(defvar liece-toolbar-home-glyph nil)
-(defvar liece-toolbar-search-glyph nil)
-(defvar liece-toolbar-location-glyph nil)
-(defvar liece-toolbar-stop-glyph nil)
-
-(defvar liece-toolbar-spec-list
-  '([liece-toolbar-back-glyph
-     liece-command-previous-channel t "Previous Channel"]
-    [liece-toolbar-forward-glyph
-     liece-command-next-channel t "Next Channel"]
-    [liece-toolbar-reload-glyph
-     liece-command-list t "List Channel"]
-    [liece-toolbar-home-glyph
-     liece-switch-to-channel-no-1 t "Go Home Channel"]
-    [liece-toolbar-search-glyph
-     liece-command-finger t "Finger"]
-    [liece-toolbar-location-glyph
-     liece-command-join t "Join Channel"]
-    [liece-toolbar-stop-glyph
-     liece-command-quit t "Quit IRC"]))
-
-;;; @ toolbar icons
-;;; 
-(defun liece-toolbar-icon-plist-get (spec prop)
-  "Return absolete path of icon file which SPEC has PROP."
-  (let ((icon (plist-get spec prop)))
-    (if icon (liece-locate-icon-file icon))))
-
-(defun liece-toolbar-map-button-list (plist)
-  "Make toolbar icon list based on status PLIST."
-  (apply #'toolbar-make-button-list
-        (mapcar
-         (lambda (prop)
-           (liece-toolbar-icon-plist-get plist prop))
-         liece-toolbar-icon-states)))
-
-(defun liece-xemacs-setup-toolbar (bar &optional force)
-  "Prepare icons of toolbar BAR.
-If optional argument FORCE is non-nil, always update toolbar."
-  (let (icon plist)
-    (set-default-toolbar-position liece-toolbar-position)
-    (dolist (spec bar)
-      (setq icon (aref spec 0)
-           plist (symbol-value
-                  (intern (concat
-                           (substring (prin1-to-string icon) -5 0)
-                           "icon"))))
-      (when (or force
-               (not (symbol-value icon)))
-       (set icon (liece-toolbar-map-button-list plist))))
-    (run-hooks 'liece-xemacs-setup-toolbar-hook)))
-
-;;; @ modeline decoration
-;;; 
-(defun liece-xemacs-hide-modeline ()
-  "Remove modeline from current window."
-  (set-specifier has-modeline-p nil (current-buffer)))
-
-(when (featurep 'scrollbar)
-  (defun liece-xemacs-hide-scrollbars ()
-    (static-cond
-     ((boundp 'horizontal-scrollbar-visible-p)
-      (set-specifier horizontal-scrollbar-visible-p nil (current-buffer)))
-     ((boundp 'scrollbar-height)
-      (set-specifier scrollbar-height 0 (current-buffer)))))
-  (add-hook 'liece-nick-mode-hook 'liece-xemacs-hide-scrollbars)
-  (add-hook 'liece-channel-list-mode-hook 'liece-xemacs-hide-scrollbars))
-
-(add-hook 'liece-nick-mode-hook 'liece-xemacs-hide-modeline)
-(add-hook 'liece-channel-list-mode-hook 'liece-xemacs-hide-modeline)
-
-(defvar liece-xemacs-modeline-left-extent
-  (let ((ext (copy-extent modeline-buffer-id-left-extent)))
-    ext))
-
-(defvar liece-xemacs-modeline-right-extent
-  (let ((ext (copy-extent modeline-buffer-id-right-extent)))
-    ext))
-
-(add-hook 'liece-command-mode-hook 'liece-setup-toolbar)
-
-(defun liece-setup-toolbar ()
-  "Prepare toolbar if wanted."
-  (when liece-use-toolbar
-    (liece-xemacs-setup-toolbar liece-toolbar-spec-list)
-    (set-specifier (symbol-value liece-use-toolbar) liece-toolbar-spec-list
-                  (current-buffer))))
-
-(defun liece-xemacs-modeline-glyph ()
-  "Return a glyph of modeline pointer."
-  (let ((glyph
-        (let (file)
-          (make-glyph
-           (nconc
-            (if (setq file (liece-locate-icon-file
-                            "liece-pointer.xpm"))
-                (list (vector 'xpm :file file)))
-            (if (setq file (liece-locate-icon-file
-                            "liece-pointer.xbm"))
-                (list (vector 'xbm :file file)))
-            '([string :data "Liece:"]))))))
-    (set-glyph-face glyph 'modeline-buffer-id)
-    glyph))
-
-(defun liece-xemacs-mode-line-buffer-identification (line)
-  "Decorate 1st        element of `mode-line-buffer-identification' LINE.
-Modify whole identification by side effect."
-  (let ((id (car line)) chop)
-    (if (and (stringp id) (string-match "^Liece:" id))
-       (progn
-         (setq chop (match-end 0))
-         (nconc
-          (list
-           (let ((glyph (liece-xemacs-modeline-glyph)))
-             (if glyph
-                 (cons liece-xemacs-modeline-left-extent glyph)
-               (cons liece-xemacs-modeline-left-extent
-                     (substring id 0 chop))))
-           (cons liece-xemacs-modeline-right-extent
-                 (substring id chop)))
-          (cdr line)))
-      line)))
-
-(defun liece-xemacs-suppress-modeline-format ()
-  "Remove unnecessary information from `modeline-format'."
-  (setq modeline-format
-       (remrassq 'modeline-modified
-                 (delq 'modeline-multibyte-status
-                       (copy-sequence mode-line-format)))))
-
-;;; @ menus
-;;; 
-(defun liece-xemacs-nick-popup-menu (widget &optional event)
-  "Trigger function for popup menu."
-  (let ((pos (widget-event-point event)))
-    (when pos
-      (goto-char pos)
-      (if (eq major-mode 'liece-nick-mode)
-         (liece-nick-update-region))
-      (let ((menu (cdr liece-nick-popup-menu)))
-       (setq menu (nconc (list "IRCHAT" ; title: not displayed
-                               "     IRC commands"
-                               "--:shadowDoubleEtchedOut")
-                         (mapcar (lambda (spec)
-                                   (if (stringp spec)
-                                       "--:shadowEtchedOut"
-                                     spec))
-                                 menu)))
-       (let (popup-menu-titles)
-         (popup-menu menu))))))
-
-(fset 'liece-nick-popup-menu 'liece-xemacs-nick-popup-menu)
-
-;;; @ nick buffer decoration
-;;; 
-(defun liece-xemacs-create-nick-glyph (file &optional string)
-  "Return a glyph of nick indicator from FILE or STRING."
-  (or
-   (cdr-safe (assoc file liece-glyph-cache))
-   (let ((glyph
-         (make-glyph
-          (nconc
-           (if (setq file (liece-locate-icon-file file))
-               (list (vector 'xpm :file file)))
-           (if string
-               (list (vector 'string :data string)))))))
-     (push (cons file glyph) liece-glyph-cache)
-     (set-glyph-face glyph 'default)
-     glyph)))
-
-(defun liece-xemacs-glyph-nick-region (start end)
-  "Decorate nick buffer between START and END."
-  (save-excursion
-    (setq start (progn (goto-char start)(beginning-of-line)(point))
-         end (progn (goto-char end)(beginning-of-line 2)(point)))
-    (save-restriction
-      (narrow-to-region start end)
-      (let ((buffer-read-only nil)
-           (inhibit-read-only t)
-           (case-fold-search nil)
-           mark file glyph ext ant)
-       (map-extents
-        (lambda (e void)
-          (when (or
-                 (extent-property
-                  e 'liece-xemacs-glyph-nick-extent)
-                 (extent-property
-                  e 'liece-xemacs-glyph-nick-annotation))
-            (delete-extent e)))
-        (current-buffer) start end)
-       (dolist (entry liece-nick-image-alist)
-         (setq mark (car entry)
-               file (cdr entry)
-               glyph (liece-xemacs-create-nick-glyph
-                      file (char-to-string mark)))
-         (when glyph
-           (goto-char start)
-           (while (not (eobp))
-             (when (eq (char-after) mark)
-               (mapcar 'delete-annotation
-                       (annotations-at (1+ (point))))
-               (setq ext (make-extent (point) (1+ (point)))
-                     ant (make-annotation glyph (1+ (point)) 'text))
-               (set-extent-property ext 'end-open t)
-               (set-extent-property ext 'start-open t)
-               (set-extent-property ext 'invisible t)
-               (set-extent-property ext 'intangible t)
-               (set-extent-property
-                ant 'liece-xemacs-glyph-nick-extent ext)
-               (set-extent-property
-                ext 'liece-xemacs-glyph-nick-annotation ant))
-             (beginning-of-line 2))))))))
-
-(defun liece-xemacs-set-drop-functions (start end)
-  "Initialize drag and drop in DCC between START and END.
-This function needs window system independent drag and drop
-support (21.0 b39 or later)"
-  (interactive "r")
-  (liece-xemacs-set-drop-functions-buffer
-   (current-buffer) start end)
-  (goto-char end))
-
-(defun liece-xemacs-set-drop-functions-buffer (&optional buffer start end)
-  "Initialize BUFFER drag and drop DCC settings between START and END.
-This function needs window system independent drag and drop
-support (21.0 b39 or later)"
-  (interactive)
-  (when (and (featurep 'x) (featurep 'dragdrop))
-    (save-excursion
-      (when buffer
-       (set-buffer buffer))
-      (setq start (or start (point-min))
-           end (or end (point-max)))
-      (goto-char start)
-      (setq start (line-beginning-position))
-      (goto-char end)
-      (setq end (line-beginning-position))
-      (goto-char end)
-      (when (not (eobp))
-       (beginning-of-line 2)
-       (setq end (point)))
-      (save-restriction
-       (narrow-to-region start end)
-       (let (buffer-read-only case-fold-search)
-         (map-extents
-          (function
-           (lambda (e void)
-             (when (extent-property e 'liece-xemacs-drop-extent)
-               (delete-extent e))))
-          buffer start end)
-         (goto-char start)
-         (let (st nd nick func)
-           (while (not (eobp))
-             (forward-char)
-             (setq st (point)
-                   nd (line-end-position)
-                   nick (buffer-substring st nd))
-             (mapcar 'delete-annotation (annotations-at nd))
-             (setq func (intern (concat "liece-xemacs-drop-function-" nick)))
-             (fset func
-                   (list 'lambda (list 'object)
-                         (list 'liece-xemacs-drop-function 'object nick)))
-             (let ((ext (make-extent st nd)))
-               (set-extent-property ext 'liece-xemacs-drop-extent t)
-               (set-extent-property ext 'dragdrop-drop-functions (list func)))
-             (beginning-of-line 2))))))))
-
-(defun liece-xemacs-drop-function (object nick)
-  "Drag and drop handler.
-Always two arguments are passed, OBJECT and NICK."
-  (if (and (eq (car object) 'dragdrop_URL)
-          (stringp (cdr object))
-          (string-match "^[^:]*:\\(.*\\)" (cdr object)))
-      (let ((filename (match-string 1 (cdr object))))
-       (liece-command-dcc-send filename nick))))
-
-(defadvice easy-menu-add-item
-  (around liece-fix-menu-path-switch-buffer activate)
-  "Advice for XEmacs 20.4 or earlier."
-  (save-excursion
-    (set-buffer liece-command-buffer)
-    (add-menu-button
-     (cons (car (ad-get-arg 0)) (ad-get-arg 1))
-     (ad-get-arg 2) (ad-get-arg 3))))
-
-(eval-and-compile
-  (setq liece-x-face-insert-function
-       (function liece-x-face-insert-with-xemacs))
-
-  (defun liece-x-face-insert-with-xemacs (buffer str nick)
-    (save-excursion
-      (let ((glyph (cdr-safe (assoc nick liece-glyph-cache))))
-       (unless glyph
-         (setq glyph (make-glyph
-                      (list (vector 'xface :data str)
-                            (vector 'string :data str))))
-         (when glyph
-           (push (cons nick glyph) liece-glyph-cache)
-           (set-glyph-face glyph 'default)))
-       (set-buffer buffer)
-       (goto-char (point-max))
-       (when glyph
-         (set-extent-end-glyph (make-extent (point) (point)) glyph))))))
-
-;;; @ startup splash
-;;; 
-(eval-when-compile
-  (defvar filename)
-  (setq load-path
-       `(,(if (and (boundp 'filename)
-                   (stringp filename)
-                   (file-exists-p filename))
-              (file-name-directory filename)
-            default-directory)
-         ,@load-path)))
-
-(when (featurep 'xpm)
-  (eval-when-compile
-    (defmacro liece-xemacs-logo ()
-      (let ((logo "liece.xpm")
-           (dir (if (and (boundp 'filename)
-                         (stringp filename)
-                         (file-exists-p filename))
-                    (file-name-directory filename)
-                  default-directory)))
-       (setq logo (expand-file-name logo dir))
-       (if (file-exists-p logo)
-           (let ((buffer (generate-new-buffer " *liece-logo*"))
-                 (coding-system-for-read (quote binary))
-                 buffer-file-format format-alist
-                 insert-file-contents-post-hook
-                 insert-file-contents-pre-hook)
-             (prog1
-                 (save-excursion
-                   (set-buffer buffer)
-                   (insert-file-contents logo)
-                   (buffer-string))
-               (kill-buffer buffer)))
-         (progn
-           (byte-compile-warn
-            "Warning: file \"%s\" not found." logo)
-           (sit-for 2)
-           nil))))))
-
-(defconst liece-xemacs-logo
-  (when (featurep 'xpm)
-    (liece-xemacs-logo)))
-
-(defun liece-xemacs-splash-at-point (&optional height)
-  "Display splash logo in HEIGHT."
-  (or (bolp) (insert "\n"))
-  (let ((bow (point))
-       (glyph (make-glyph
-               (list (vector 'xpm :data liece-xemacs-logo)
-                     [nothing])))
-       (lh (/ (window-pixel-height) (window-height)))
-       (lw (/ (window-pixel-width) (window-width)))
-       (liece-insert-environment-version nil)
-        bov)
-    
-    (insert-char ?\n (max 0 (/ (- (or height (window-height))
-                                 (/ (glyph-height glyph) lh))
-                              2)))
-    (insert-char ?\  (max 0 (/ (- (window-width)
-                                 (/ (glyph-width glyph) lw))
-                              2)))
-    (set-extent-end-glyph
-     (make-extent (point) (point))
-     glyph)
-    (insert "\n")
-    (insert-char ?\  (max 0 (/ (- (window-width) (length (liece-version))) 2)))
-    (setq bov (point))
-    (insert (liece-version))
-    (and (find-face 'bold-italic)
-         (put-text-property bov (point) 'face 'bold-italic))
-    (goto-char bow)
-    (set-window-start (get-buffer-window (current-buffer)) (point))
-    (redisplay-frame)))
-
-(defun liece-xemacs-splash (&optional arg)
-  "Display splash logo interactively.
-If ARG is given, don't hide splash buffer."
-  (interactive "P")
-  (and liece-xemacs-logo
-       (let ((frame (selected-frame))
-             config buffer
-            (liece-insert-environment-version nil))
-         (and frame
-              (unwind-protect
-                  (progn
-                    (setq config (current-window-configuration))
-                   (setq buffer (generate-new-buffer
-                                 (concat (if arg "*" " *")
-                                         (liece-version) "*")))
-                    (switch-to-buffer buffer)
-                    (delete-other-windows)
-                    (liece-xemacs-splash-at-point)
-                    (set-buffer-modified-p nil)
-                    (or arg (sleep-for 2)))
-                (unless arg
-                  (kill-buffer buffer)
-                  (set-window-configuration config)
-                  (redisplay-frame frame)))))))
-
-(unless (or liece-inhibit-startup-message
-           (eq 'stream (device-type)))
-  (liece-xemacs-splash))
-
-;;; @ unread mark
-;;; 
-(defun liece-xemacs-unread-mark (chnl)
-  (if liece-display-unread-mark
-      (with-current-buffer liece-channel-list-buffer
-        (let* ((buffer-read-only nil)
-              (file (liece-xemacs-icon-path
-                     liece-xemacs-unread-icon))
-              (glyph (make-glyph
-                      (list (vector 'xpm :file file)
-                            (vector 'string
-                                    :data liece-channel-unread-character))))
-              ext)
-         (goto-char (point-min))
-         (when (re-search-forward (concat "^ ?[0-9]+: " chnl "$") nil t)
-            (goto-char (match-end 0))
-           (insert " ")
-           (setq ext (make-extent (match-end 0) (1+ (match-end 0))))
-           (set-extent-end-glyph ext glyph))))))
-
-(defun liece-xemacs-read-mark (chnl)
-  (if liece-display-unread-mark
-      (with-current-buffer liece-channel-list-buffer
-        (let ((buffer-read-only nil))
-         (goto-char (point-min))
-         (when (re-search-forward (concat "^ ?[0-9]+: " chnl " $") nil t)
-            (goto-char (1- (match-end 0)))
-           (delete-char 1))))))
-
-(defun liece-xemacs-redisplay-unread-mark ()
-  (if liece-display-unread-mark
-      (dolist (chnl liece-channel-unread-list)
-        (liece-xemacs-unread-mark chnl))))
-
-\f
-;;; @ emulation functions
-;;; 
-(defun liece-xemacs-map-extents (function)
-  "Map FUNCTION over the extents which overlap the current buffer."
-  (map-extents (lambda (extent ignore)
-                (if (overlayp extent) (funcall function extent)))))
-
-(defun liece-xemacs-kill-all-overlays ()
-  "Delete all extents in the current buffer."
-  (liece-xemacs-map-extents #'delete-extent))
-
-(defun liece-xemacs-overlays-at (pos)
-  "Return a list of the overlays that contain position POS."
-  (let ((ext (extent-at pos)))
-    (and ext (overlayp ext) (list ext))))
-      
-(fset 'liece-mode-line-buffer-identification
-      'liece-xemacs-mode-line-buffer-identification)
-
-(fset 'liece-suppress-mode-line-format
-      'liece-xemacs-suppress-modeline-format)
-
-(fset 'liece-kill-all-overlays 'liece-xemacs-kill-all-overlays)
-(fset 'liece-map-overlays 'liece-xemacs-map-extents)
-(fset 'liece-locate-data-directory 'locate-data-directory)
-
-(add-hook 'liece-nick-insert-hook 'liece-xemacs-glyph-nick-region)
-(add-hook 'liece-nick-insert-hook 'liece-xemacs-set-drop-functions)
-
-(add-hook 'liece-nick-replace-hook 'liece-xemacs-glyph-nick-region)
-(add-hook 'liece-nick-replace-hook 'liece-xemacs-set-drop-functions)
-
-(fset 'liece-redisplay-unread-mark 'liece-xemacs-redisplay-unread-mark)
-(add-hook 'liece-channel-unread-functions 'liece-xemacs-unread-mark)
-(add-hook 'liece-channel-read-functions 'liece-xemacs-read-mark)
-
-(provide 'liece-xemacs)
-
-;;; liece-xemacs.el ends here
-
diff --git a/lisp/liece.el b/lisp/liece.el
deleted file mode 100644 (file)
index 81bbe9e..0000000
+++ /dev/null
@@ -1,1001 +0,0 @@
-;;; liece.el --- IRC client for Emacsen
-;; Copyright (C) 1998-2000 Daiki Ueno
-
-;; Author: Daiki Ueno <ueno@unixuser.org>
-;; Created: 1998-09-28
-;; Revised: 2000-03-20
-;; Keywords: IRC, liece
-
-;; This file is part of Liece.
-
-;; 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, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-
-;;; Commentary:
-;; 
-
-;;; Code:
-
-(require 'liece-inlines)
-(require 'liece-handle)
-(require 'liece-filter)
-(require 'liece-hilit)
-(require 'liece-intl)
-(require 'liece-menu)
-(require 'liece-window)
-(require 'liece-tcp)
-(if (featurep 'xemacs)
-    (require 'liece-xemacs)
-  (require 'liece-emacs))
-(require 'liece-commands)
-
-(autoload 'mule-caesar-region "mule-caesar" nil t)
-(autoload 'liece-command-browse-url "liece-url" nil t)
-(autoload 'liece-command-dcc-send "liece-dcc" nil t)
-(autoload 'liece-command-dcc-receive "liece-dcc" nil t)
-(autoload 'liece-command-dcc-list "liece-dcc" nil t)
-(autoload 'liece-command-dcc-chat-listen "liece-dcc" nil t)
-(autoload 'liece-command-dcc-chat-connect "liece-dcc" nil t)
-(autoload 'liece-command-dcc-accept "liece-dcc" nil t)
-(autoload 'liece-command-mail-compose "liece-mail" nil t)
-(autoload 'liece-command-submit-bug-report "liece-mail" nil t)
-
-(eval-and-compile
-  (defvar liece-server-keyword-map
-    '((:host (getenv "IRCSERVER"))
-      (:service liece-service)
-      (:password liece-password)
-      (:prescript)
-      (:prescript-delay)
-      (:type liece-tcp-connection-type)
-      (:relay))
-    "Mapping from keywords to default values.
-All keywords that can be used must be listed here."))
-
-(defadvice save-buffers-kill-emacs
-  (before liece-save-buffers-kill-emacs activate)
-  "Prompt user to quit IRC explicitly."
-  (run-hooks 'liece-before-kill-emacs-hook) )
-
-(add-hook 'liece-before-kill-emacs-hook 'liece-command-quit)
-
-(defvar liece-tmp-server-name nil "Temporaly server name.")
-(defvar liece-buffer-last-check-time nil)
-(defvar liece-timers-list-initialized-p nil
-  "Are liece internal timers in place?")
-
-(defconst liece-obarray-size 1327
-  "The size of obarray used by liece on channelname and username space.
-For efficiency this should be prime.  See documentation of intern and
-`make-vector' for more information.  Here is a list of some small primes...
-
-13, 29, 37, 47, 59, 71, 89, 107, 131, 163, 197, 239, 293, 353, 431, 521,
-631, 761, 919, 1103, 1327, 1597, 1931, 2333, 2801, 3371, 4049, 4861, 5839,
-7013, 8419, 10103, 12143, 14591, 17519, 21023, 25229, 30293, 36353,
-43627, 52361, 62851, 75431, 90523, 108631, 130363, 156437, 187751,
-225307, 270371, 324449, 389357, 467237, 560689, 672827, 807403, 968897,
-1162687, 1395263, 1674319, 2009191, 2411033, 2893249.")
-
-(defvar liece-channel-list-mode-map (make-sparse-keymap))
-(defvar liece-nick-mode-map (make-sparse-keymap))
-(defvar liece-client-query-map (make-sparse-keymap))
-(defvar liece-dcc-map (make-sparse-keymap))
-(defvar liece-friends-map (make-sparse-keymap))
-
-(defvar liece-dialogue-mode-map
-  (let ((keymap (make-keymap)))
-    (suppress-keymap keymap 'nodigit)
-    keymap))
-
-(defvar liece-command-mode-map (make-keymap))
-(defvar liece-command-map (make-sparse-keymap))
-
-(defvar liece-command-mode-syntax-table nil)
-
-(put 'liece-command-mode 'mode-class 'special)
-(put 'liece-dialogue-mode 'mode-class 'special)
-(put 'liece-channel-list-mode 'mode-class 'special)
-(put 'liece-nick-mode 'mode-class 'special)
-(put 'liece-channel-mode 'derived-mode-parent 'liece-dialogue-mode)
-(put 'liece-others-mode 'derived-mode-parent 'liece-dialogue-mode)
-
-(defvar liece-buffer-mode-alist
-  '((liece-dialogue-buffer liece-dialogue-mode)
-    (liece-others-buffer liece-others-mode)
-    (liece-channel-list-buffer liece-channel-list-mode)
-    (liece-private-buffer liece-dialogue-mode)
-    (liece-KILLS-buffer)
-    (liece-IGNORED-buffer)
-    (liece-WALLOPS-buffer)))
-    
-(eval-and-compile
-  (dotimes (n 20)
-    (fset (intern (format "liece-switch-to-channel-no-%d" (1+ n)))
-         `(lambda ()
-            (interactive)
-            (funcall #'liece-switch-to-channel-no ,n)))))
-
-(defvar liece-select-keys
-  '("1" liece-switch-to-channel-no-1
-    "2" liece-switch-to-channel-no-2
-    "3" liece-switch-to-channel-no-3
-    "4" liece-switch-to-channel-no-4
-    "5" liece-switch-to-channel-no-5
-    "6" liece-switch-to-channel-no-6
-    "7" liece-switch-to-channel-no-7
-    "8" liece-switch-to-channel-no-8
-    "9" liece-switch-to-channel-no-9
-    "0" liece-switch-to-channel-no-10
-    "\C-c1" liece-switch-to-channel-no-11
-    "\C-c2" liece-switch-to-channel-no-12
-    "\C-c3" liece-switch-to-channel-no-13
-    "\C-c4" liece-switch-to-channel-no-14
-    "\C-c5" liece-switch-to-channel-no-15
-    "\C-c6" liece-switch-to-channel-no-16
-    "\C-c7" liece-switch-to-channel-no-17
-    "\C-c8" liece-switch-to-channel-no-18
-    "\C-c9" liece-switch-to-channel-no-19
-    "\C-c0" liece-switch-to-channel-no-20))
-
-;;; Keymap macros. -- borrowd from `gnus-util.el'.
-
-(defmacro liece-local-set-keys (&rest plist)
-  "Set the keys in PLIST in the current keymap."
-  `(liece-define-keys-1 (current-local-map) ',plist))
-
-(defmacro liece-define-keys (keymap &rest plist)
-  "Assign KEYMAP keys from PLIST."
-  `(liece-define-keys-1 ',keymap ',plist))
-
-(defmacro liece-define-keys-safe (keymap &rest plist)
-  "Assign KEYMAP keys from PLIST without overwriting previous definitions."
-  `(liece-define-keys-1 ',keymap ',plist t))
-
-(put 'liece-define-keys 'lisp-indent-function 1)
-(put 'liece-define-keys-safe 'lisp-indent-function 1)
-(put 'liece-local-set-keys 'lisp-indent-function 1)
-
-(defun liece-define-keys-1 (keymap plist &optional safe)
-  "Assign KEYMAP keys from PLIST.
-If optional argument SAFE is nil, overwrite previous definitions."
-  (unless keymap
-    (error "Can't set keys in a null keymap"))
-  (cond
-   ((symbolp keymap)
-    (setq keymap (symbol-value keymap)))
-   ((keymapp keymap))
-   ((listp keymap)
-    (set (car keymap) nil)
-    (define-prefix-command (car keymap))
-    (define-key (symbol-value (caddr keymap)) (cadr keymap) (car keymap))
-    (setq keymap (symbol-value (car keymap)))))
-  (let (key)
-    (while plist
-      (when (symbolp (setq key (pop plist)))
-       (setq key (symbol-value key)))
-      (if (or (not safe)
-             (eq (lookup-key keymap key) 'undefined))
-         (define-key keymap key (pop plist))
-       (pop plist)))))
-
-(when t
-  (liece-define-keys liece-dialogue-mode-map
-    "\177" scroll-down
-    [delete] scroll-down
-    [backspace] scroll-down
-    [return] scroll-up
-    " " scroll-up
-    "$" end-of-buffer
-    "/" liece-command-generic
-    ">" end-of-buffer
-    "<" beginning-of-buffer
-    "!" liece-command-exec
-    "|" liece-command-show-last-kill
-    "a" liece-command-away
-    "b" liece-command-submit-bug-report
-    "B" liece-dialogue-beep
-    "c" liece-command-point-back-to-command-buffer
-    "f" liece-command-finger
-    "F" liece-dialogue-freeze
-    "O" liece-dialogue-own-freeze
-    "i" liece-command-invite
-    "j" liece-command-join
-    "k" liece-command-kill
-    "\C-k" liece-command-kick
-    "l" liece-command-list
-    "L" liece-command-load-vars
-    "S" liece-command-save-vars
-    "m" liece-dialogue-enter-message
-    "M" liece-command-modec
-    "n" liece-command-nickname
-    "o" other-window
-    "p" liece-command-mta-private
-    "P" liece-command-toggle-private
-    "q" liece-command-quit
-    "r" liece-command-reconfigure-windows
-    "x" liece-command-tag-region
-    "t" liece-command-topic
-    "T" liece-command-timestamp
-    "\C-t" liece-command-find-timestamp
-    "u" liece-command-lusers
-    "U" liece-command-userhost
-    "v" liece-command-browse-url
-    "w" liece-command-who)
-
-  (liece-define-keys (liece-client-query-map "\C-c" liece-dialogue-mode-map)
-    "a" liece-command-ctcp-action
-    "v" liece-command-ctcp-version
-    "u" liece-command-ctcp-userinfo
-    "h" liece-command-ctcp-help
-    "c" liece-command-ctcp-clientinfo
-    "g" liece-command-ctcp-generic
-    "p" liece-command-ctcp-ping
-    "t" liece-command-ctcp-time
-    "x" liece-command-ctcp-x-face
-    "X" liece-command-ctcp-x-face-from-xbm-file
-    "U" liece-command-ctcp-userinfo-from-minibuffer)
-
-  (liece-define-keys (liece-dcc-map "\C-d" liece-dialogue-mode-map)
-    "s" liece-command-dcc-send
-    "r" liece-command-dcc-receive
-    "l" liece-command-dcc-list
-    "cl" liece-command-dcc-chat-listen
-    "cc" liece-command-dcc-chat-connect
-    "g" liece-command-dcc-accept)
-
-  (liece-define-keys (liece-friends-map "\C-i" liece-dialogue-mode-map)
-    " " liece-command-ison
-    "a" liece-command-activate-friends
-    "d" liece-command-deactivate-friends
-    "s" liece-command-display-friends)
-
-  (liece-define-keys liece-command-mode-map
-    "\r" liece-command-enter-message
-    [tab] liece-command-complete
-    [(meta control c) >] liece-command-push
-    [(meta control c) <] liece-command-pop
-    [(meta control c) o] liece-command-mode+o
-    [(meta control c) O] liece-command-mode-o
-    [(meta control c) v] liece-command-mode+v
-    [(meta control c) V] liece-command-mode-v)
-
-  (liece-define-keys (liece-command-map "\C-c" liece-command-mode-map)
-    "\177" liece-command-scroll-down
-    [delete] liece-command-scroll-down
-    [backspace] liece-command-scroll-down
-    " " liece-command-scroll-up
-    "$" liece-command-end-of-buffer
-    ">" liece-command-next-channel
-    "<" liece-command-previous-channel
-    "a" liece-command-away
-    "c" liece-command-inline
-    "\C-a" liece-command-previous-channel
-    "\C-f" liece-command-freeze
-    "\C-j" liece-command-next-channel
-    "\C-n" liece-command-names
-    "\C-u" liece-command-unread-channel
-    "l" liece-command-list
-    "L" liece-command-load-vars
-    "M" liece-command-own-freeze
-    "\C-m" liece-command-modec
-    "o" liece-command-mode+o
-    "O" liece-command-toggle-nick-buffer-mode
-    "\C-o" liece-command-toggle-channel-buffer-mode
-    "\C-p" liece-command-part
-    "r" liece-command-reconfigure-windows
-    "\C-r" mule-caesar-region
-    "s" liece-command-set-window-style
-    "S" liece-command-save-vars
-    "v" liece-command-mode+v
-    "\C-v" liece-command-browse-url
-    "\C-y" liece-command-yank-send)
-  (set-keymap-parent liece-command-map liece-dialogue-mode-map)
-
-  (liece-define-keys liece-nick-mode-map
-    "o" liece-command-mode+o
-    "O" liece-command-mode-o
-    "v" liece-command-mode+v
-    "V" liece-command-mode-v
-    "f" liece-command-finger
-    " " liece-command-nick-scroll-up
-    "\177" liece-command-nick-scroll-down
-    [delete] liece-command-nick-scroll-down
-    [backspace] liece-command-nick-scroll-down
-    "m" liece-command-mail-compose
-    "c" liece-command-point-back-to-command-buffer)
-
-  (liece-define-keys liece-channel-list-mode-map
-    ">" liece-command-next-channel
-    "<" liece-command-previous-channel
-    "u" liece-command-unread-channel
-    "o" other-window
-    "c" liece-command-point-back-to-command-buffer)
-
-  (liece-define-keys-1 liece-dialogue-mode-map liece-select-keys)
-  (liece-define-keys-1 liece-channel-list-mode-map liece-select-keys))
-
-;;;###liece-autoload
-(defmacro liece-server-opened ()
-  "Return server process status.
-Return non-nil if stream is opened."
-  '(and liece-server-process
-       (memq (process-status liece-server-process)
-             '(open run))))
-
-(defun liece-start-server (&optional confirm)
-  "Open network stream to remote irc server.
-If optional argument CONFIRM is non-nil, ask the host that the server
-is running on."
-  (if (liece-server-opened)
-      ;; Stream is already opened.
-      nil
-    ;; Open IRC server.
-    (when (or confirm (null liece-server))
-      (setq liece-server
-           (completing-read (_ "IRC server: ") liece-server-alist)))
-    (and confirm
-        liece-ask-for-nickname
-        (setq liece-nickname
-              (read-string (_ "Enter your nickname: ") liece-nickname)))
-    ;; If no server name is given, local host is assumed.
-    (and
-     (stringp liece-server)
-     (string-equal liece-server "")
-     (setq liece-server (system-name)))
-    (let ((host (liece-server-host)))
-      (liece-message
-       (_ "Connecting to IRC server on %s...") host)
-      (cond
-       ((liece-open-server liece-server liece-service))
-       ((and (stringp liece-status-message-string)
-            (> (length liece-status-message-string) 0))
-       ;; Show valuable message if available.
-       (error liece-status-message-string))
-       (t (error (_ "Cannot open IRC server on %s") host))))))
-
-(defun liece-close-server-internal ()
-  "Close connection to chat server."
-  (if (liece-server-opened)
-      (delete-process liece-server-process))
-  (if liece-server-buffer
-      (kill-buffer liece-server-buffer))
-  (setq liece-server-buffer nil
-       liece-server-process nil
-       liece-server nil))
-
-;;;###liece-autoload
-(defun liece-close-server (&optional quit-string)
-  "Close chat server."
-  (unwind-protect
-      (progn
-       ;; Unset default sentinel function before closing connection.
-       (when (and liece-server-process
-                  (eq 'liece-sentinel
-                      (process-sentinel liece-server-process)))
-         (set-process-sentinel liece-server-process nil))
-       ;; We cannot send QUIT command unless the process is running.
-       (when (liece-server-opened)
-         (if quit-string
-             (liece-send "QUIT :%s" quit-string)
-           (liece-send "QUIT"))))
-    (liece-close-server-internal)))
-
-(defmacro liece-server-keyword-bind (plist &rest body)
-  "Return a `let' form that binds all variables in PLIST.
-After this is done, BODY will be executed in the scope
-of the `let' form.
-
-The variables bound and their default values are described by
-the `liece-server-keyword-map' variable."
-  `(let ,(mapcar
-         (lambda (keyword)
-           (list (intern (substring (symbol-name (car keyword)) 1))
-                 (if (cadr keyword)
-                     `(or (plist-get plist ',(car keyword))
-                          ,(cadr keyword))
-                   `(plist-get plist ',(car keyword)))))
-         liece-server-keyword-map)
-     ,@body))
-
-(put 'liece-server-keyword-bind 'lisp-indent-function 1)
-(put 'liece-server-keyword-bind 'edebug-form-spec '(form body))
-
-(defun liece-server-parse-string (string)
-  "Convert a STRING set as `liece-server' and return a property list."
-  (when (or (string-match "^\\[\\([^]]+\\)\\]:?\\([0-9]*\\)" string)
-           (string-match "^\\([^:]+\\):?\\([0-9]*\\)" string))
-    (let ((host (match-string 1 string))
-         (service (match-string 2 string))
-         (password (substring string (match-end 0)))
-         plist)
-      (push `(:host ,host) plist)
-      (unless (string= service "")
-       (push `(:service ,(string-to-int service)) plist))
-      (cond
-       ((string= password ":")
-       (setq liece-ask-for-password t))
-       ((string= password ""))
-       (t (push `(:password ,(substring password 1)) plist)))
-      (apply #'nconc plist))))
-
-(defun liece-open-server (host &optional service)
-  "Open chat server on HOST.
-If HOST is nil, use value of environment variable \"IRCSERVER\".
-If optional argument SERVICE is non-nil, open by the service name."
-  (let* ((host (or host (getenv "IRCSERVER")))
-        (plist
-         (if (listp host)
-             host
-           (or (cdr (string-assoc-ignore-case host liece-server-alist))
-               (liece-server-parse-string host))))
-        status)
-    (setq liece-status-message-string "")
-    (when (stringp plist) ;; Old style server entry...
-      (setq plist (liece-server-parse-string host)))
-    (when (and (stringp host)
-              (null (string-assoc-ignore-case host liece-server-alist)))
-      (push (cons host plist) liece-server-alist)
-      (setq liece-save-variables-are-dirty t))
-    (liece-server-keyword-bind plist
-      ;; Execute preconnecting script
-      (when prescript
-       (if (fboundp prescript)
-           (funcall prescript)
-         (call-process shell-file-name nil nil nil
-                       shell-command-switch prescript))
-       (when prescript-delay
-         (sleep-for prescript-delay)))
-      (if password
-         (setq liece-ask-for-password nil
-               liece-password password))
-      (if (and (memq type '(rlogin telnet)) relay)
-         (setq liece-tcp-relay-host relay))
-      (setq liece-tmp-server-name host);; temporary
-      (liece-message (_ "Connecting to IRC server %s...") host)
-      (cond
-       ((null host)
-       (setq liece-status-message-string
-             (_ "IRC server is not specified.")))
-       ((liece-open-server-internal host service type)
-       (setq liece-after-registration nil)
-       (liece-maybe-poll)
-       (setq status (liece-wait-for-response "^:[^ ]+ [4P][5O][1N][ G]"))
-       (if (null status)
-           (progn
-             (setq liece-status-message-string
-                   (format (_ "Connection to %s timed out") host))
-             ;; We have to close connection here, since the function
-             ;;  `liece-server-opened' may return incorrect status.
-             (liece-close-server-internal))
-         (setq liece-after-registration t)
-         (set-process-sentinel liece-server-process 'liece-sentinel)
-         (set-process-filter liece-server-process 'liece-filter)
-         (if (or liece-ask-for-password liece-reconnect-with-password)
-             (let ((passwd-echo ?*) password)
-               (setq password (read-passwd (_ "Server Password: ")))
-               (or (string= password "")
-                   (setq liece-password password))))
-         (if liece-password
-             (liece-send "PASS %s" liece-password))
-         (setq liece-reconnect-with-password nil)
-         (liece-send "USER %s * * :%s"
-                     (or (user-real-login-name) "Nobody")
-                     (if (and liece-name (not (string= liece-name "")))
-                         liece-name
-                       "No Name"))
-         (or liece-real-nickname
-             (setq liece-real-nickname liece-nickname))
-         (setq liece-real-nickname
-               (truncate-string liece-real-nickname liece-nick-max-length)
-               liece-nickname-last liece-real-nickname
-               liece-nick-accepted 'sent
-               liece-after-registration t)
-         (liece-send "NICK %s" liece-real-nickname)))))
-    status))
-
-(defun liece-open-server-internal (host &optional service type)
-  "Open connection to chat server on HOST by SERVICE (default is irc).
-Optional argument TYPE specifies connection types such as `program'."
-  ;; canonicalize host representation
-  (unless (string-match "^[^\\[]" host)
-    (setq host (substring host 1 (1- (length host)))))
-  (condition-case error
-      (save-excursion
-       (let ((liece-tcp-connection-type type))
-         (as-binary-process
-          (setq liece-server-process
-                (liece-open-network-stream
-                 "IRC" " *IRC*" host (or service "irc"))))
-         (setq liece-server-buffer (process-buffer liece-server-process))
-         (set-buffer liece-server-buffer)
-         (set-buffer-multibyte nil)
-         (kill-all-local-variables)
-         (buffer-disable-undo)
-         (erase-buffer)
-         (setq liece-server-name host)
-         (run-hooks 'liece-server-hook)
-         ;; return the server process
-         liece-server-process))
-    (error
-     (setq liece-status-message-string (cadr error)
-          liece-server-process nil))))
-
-(defun liece-initialize-timers ()
-  "Initialise internal timers."
-  (dolist (timer liece-timers)
-    (if (caddr timer)
-       (cancel-timer (caddr timer))
-      (let ((handler (car timer)) (interval (cadr timer)))
-       (and (liece-functionp handler)
-            (symbolp interval) (boundp interval)
-            (setq interval (symbol-value interval))
-            (setcdr (cdr timer)
-                    (list (run-at-time 1 interval handler)))))))
-  (setq liece-timers-list-initialized-p t))
-
-(defun liece-read-variables-files (&optional file)
-  "Read variables FILEs."
-  (and (not (file-directory-p liece-directory))
-       (file-exists-p liece-directory)
-       (yes-or-no-p "Upgrade the location of the data files? ")
-       (let ((file
-             (expand-file-name
-              (make-temp-name "liece") temporary-file-directory)))
-        (unwind-protect
-            (progn
-              (rename-file liece-directory file 'ok-if-exists)
-              (make-directory liece-directory)
-              (copy-file file (expand-file-name
-                               (file-name-nondirectory liece-variables-file)
-                               liece-directory)))
-          (ignore-errors (delete-file file)))))
-  (or (file-directory-p liece-directory)
-      (make-directory liece-directory))
-  (let ((files (if file
-                  (progn
-                    (setq liece-variables-file file
-                          liece-variables-files (list file)))
-                liece-variables-files)))
-    (dolist (file files)
-      (if (file-readable-p (expand-file-name file))
-         (load (expand-file-name file) t)))))
-
-;;;###autoload
-(defun liece (&optional confirm)
-  "Connect to the IRC server and start chatting.
-If optional argument CONFIRM is non-nil, ask which IRC server to connect.
-If already connected, just pop up the windows."
-  (interactive "P")
-  (liece-read-variables-files
-   (car command-line-args-left))
-  (pop command-line-args-left)
-  (run-hooks 'liece-after-load-startup-hook)
-  ;; Save initial state of window configuration.
-  (when (interactive-p)
-    (liece-window-configuration-push))
-  (unless liece-intl-message-alist
-    (liece-intl-load-catalogue))
-  (if (liece-server-opened)
-      (liece-configure-windows)
-    (unwind-protect
-       (progn
-         (switch-to-buffer
-          (liece-get-buffer-create liece-command-buffer))
-         (unless (eq major-mode 'liece-command-mode)
-           (liece-command-mode))
-         (liece-start-server confirm))
-      (if (not (liece-server-opened))
-         (liece-command-quit)
-       ;; IRC server is successfully open.
-       (with-current-buffer liece-command-buffer
-         (setq mode-line-process (concat " " (liece-server-host))))
-       (let (buffer-read-only)
-         (unless liece-keep-buffers
-           (erase-buffer))
-         (sit-for 0))
-
-       (liece-initialize-buffers)
-       (liece-configure-windows)
-       (setq liece-current-channels nil)
-       (cond
-        (liece-current-channel
-         (liece-command-join liece-current-channel))
-        (liece-startup-channel
-         (liece-command-join liece-startup-channel))
-        (liece-startup-channel-list
-         (dolist (chnl liece-startup-channel-list)
-           (if (listp chnl)
-               (liece-command-join (car chnl) (cadr chnl))
-             (liece-command-join chnl)))))
-       (unless (string-equal liece-away-message "")
-         (liece-command-away liece-away-message))
-       (run-hooks 'liece-startup-hook)
-       (setq liece-obarray
-             (or liece-obarray (make-vector liece-obarray-size nil)))
-       (unless liece-timers-list-initialized-p
-         (liece-initialize-timers))
-       (liece-command-timestamp)
-       (message (substitute-command-keys
-                 "Type \\[describe-mode] for help"))))))
-
-;;;###liece-autoload
-(defun liece-command-mode ()
-  "Major mode for Liece.  Normal edit function are available.
-Typing Return or Linefeed enters the current line in the dialogue.
-The following special commands are available:
-For a list of the generic commands type \\[liece-command-generic] ? RET.
-\\{liece-command-mode-map}"
-  (interactive)
-  (kill-all-local-variables)
-
-  (setq liece-nick-alist (list (list liece-nickname))
-       major-mode 'liece-command-mode
-       mode-name "Commands"
-       liece-privmsg-partner nil
-       liece-private-indicator nil
-       liece-away-indicator "-"
-       liece-beep-indicator "-"
-       liece-freeze-indicator "-"
-       liece-own-freeze-indicator "-"
-       mode-line-buffer-identification
-       (liece-mode-line-buffer-identification
-        '("Liece: "
-          mode-line-modified
-          liece-private-indicator
-          liece-away-indicator
-          "-- " liece-current-channel " " liece-real-nickname)))
-  (liece-suppress-mode-line-format)
-  (use-local-map liece-command-mode-map)
-
-  (when liece-display-frame-title
-    (make-local-variable 'frame-title-format)
-    (setq frame-title-format 'liece-channel-status-indicator))
-  
-  (unless liece-blink-parens
-    (make-local-variable 'blink-matching-paren)
-    (setq blink-matching-paren nil))
-  
-  (unless liece-command-mode-syntax-table
-    (setq liece-command-mode-syntax-table
-         (copy-syntax-table (syntax-table)))
-    (set-syntax-table liece-command-mode-syntax-table)
-    (mapcar
-     (function (lambda (c) (modify-syntax-entry c "w")))
-     "^[]{}'`"))
-
-  (run-hooks 'liece-command-mode-hook))
-  
-;;;###liece-autoload
-(defun liece-dialogue-mode ()
-  "Major mode for displaying the IRC dialogue.
-All normal editing commands are turned off.
-Instead, these commands are available:
-\\{liece-dialogue-mode-map}"
-  (kill-all-local-variables)
-
-  (make-local-variable 'liece-beep)
-  (make-local-variable 'liece-beep-indicator)
-  (make-local-variable 'liece-freeze)
-  (make-local-variable 'liece-freeze-indicator)
-  (make-local-variable 'liece-own-freeze)
-  (make-local-variable 'liece-own-freeze-indicator)
-  (make-local-variable 'tab-stop-list)
-
-  (setq liece-beep liece-default-beep
-       liece-beep-indicator (if liece-beep "B" "-")
-       liece-freeze liece-default-freeze
-       liece-freeze-indicator (if liece-freeze "F" "-")
-       liece-own-freeze liece-default-own-freeze
-       liece-own-freeze-indicator (if liece-own-freeze "M" "-")
-
-       major-mode 'liece-dialogue-mode
-       mode-name "Dialogue"
-       mode-line-buffer-identification
-       (liece-mode-line-buffer-identification
-        '("Liece: "
-          mode-line-modified
-          liece-away-indicator
-          liece-beep-indicator
-          liece-freeze-indicator
-          liece-own-freeze-indicator
-          " " liece-channels-indicator " "))
-       buffer-read-only t
-       tab-stop-list liece-tab-stop-list)
-  (liece-suppress-mode-line-format)
-  (use-local-map liece-dialogue-mode-map)
-  (buffer-disable-undo)
-
-  (unless liece-keep-buffers
-    (erase-buffer))
-  
-  (run-hooks 'liece-dialogue-mode-hook))
-
-;;;###liece-autoload
-(define-derived-mode liece-others-mode liece-dialogue-mode
-  "Others"
-  "Major mode for displaying the IRC others message except current channel.
-All normal editing commands are turned off.
-Instead, these commands are available:
-\\{liece-others-mode-map}")
-
-;;;###liece-autoload
-(define-derived-mode liece-channel-mode liece-dialogue-mode
-  "Channel"
-  "Major mode for displaying the IRC current channel buffer.
-All normal editing commands are turned off.
-Instead, these commands are available:
-\\{liece-channel-mode-map}"
-  (setq mode-line-buffer-identification
-       (liece-mode-line-buffer-identification
-        '("Liece: "
-          mode-line-modified
-          liece-away-indicator
-          liece-beep-indicator
-          liece-freeze-indicator
-          liece-own-freeze-indicator
-          " "
-          liece-channel-indicator))))
-
-;;;###liece-autoload
-(defun liece-channel-list-mode ()
-  "Major mode for displaying channel list.
-All normal editing commands are turned off."
-  (kill-all-local-variables)
-  (setq major-mode 'liece-channel-list-mode
-        mode-name "Channels"
-       mode-line-buffer-identification
-       (liece-mode-line-buffer-identification
-        '("Liece: " liece-command-buffer-mode-indicator " "))
-       truncate-lines t
-       buffer-read-only t)
-  (use-local-map liece-channel-list-mode-map)
-  (run-hooks 'liece-channel-list-mode-hook))
-
-;;;###liece-autoload
-(defun liece-nick-mode ()
-  "Major mode for displaying members in the IRC current channel buffer.
-All normal editing commands are turned off.
-Instead, these commands are available:
-\\{liece-nick-mode-map}"
-  (kill-all-local-variables)
-  (setq mode-line-modified "--- "
-        major-mode 'liece-nick-mode
-        mode-name "Liece Channel member"
-       mode-line-buffer-identification
-       (liece-mode-line-buffer-identification
-        '("Liece: " liece-channel-indicator " "))
-       truncate-lines t
-       buffer-read-only t)
-  (if (boundp 'transient-mark-mode)
-      (set (make-local-variable 'transient-mark-mode) t))
-  (use-local-map liece-nick-mode-map)
-  (run-hooks 'liece-nick-mode-hook))
-
-(fset 'liece-dialogue-beep 'liece-command-beep)
-(fset 'liece-dialogue-freeze 'liece-command-freeze)
-(fset 'liece-dialogue-own-freeze 'liece-command-own-freeze)
-
-(defun liece-initialize-buffers ()
-  "Initialize buffers."
-  (dolist (spec liece-buffer-mode-alist)
-    (let ((buffer (symbol-value (car spec)))
-         (mode (cadr spec)))
-      (or (get-buffer buffer)
-         (save-excursion
-           (set-buffer (liece-get-buffer-create buffer))
-           (or (eq major-mode mode)
-               (null mode)
-               (funcall mode)))))))
-
-;;;###liece-autoload
-(defun liece-clear-system ()
-  "Clear all Liece variables and buffers."
-  (interactive)
-  (dolist (buffer liece-buffer-list)
-    (when (and (get-buffer buffer) (buffer-live-p buffer))
-      (funcall liece-buffer-dispose-function buffer)))
-  (if (vectorp liece-obarray)
-      (dotimes (i liece-obarray-size)
-       (aset liece-obarray i nil)))
-  (dolist (timer liece-timers)
-    (if (caddr timer)
-       (cancel-timer (caddr timer)))
-    (if (cdr timer)
-       (setcdr (cdr timer) nil)))
-  (setq liece-channel-buffer-alist nil
-       liece-nick-buffer-alist nil
-       liece-current-channels nil
-       liece-current-channel nil
-       liece-current-chat-partners nil
-       liece-current-chat-partner nil
-       liece-timers-list-initialized-p nil
-       liece-friends-last nil
-       liece-polling 0
-       liece-channel-indicator "No channel"))
-
-(defun liece-wait-for-response (regexp &optional timeout)
-  "Wait for server response which match REGEXP.
-Optional argument TIMEOUT specifies connection timeout."
-  (save-excursion
-    (let ((status t) (wait t) (timeout (or timeout liece-connection-timeout)))
-      (set-buffer liece-server-buffer)
-      (with-timeout (timeout nil)
-       (while wait
-         (liece-accept-response)
-         (goto-char (point-min))
-         (cond ((looking-at "ERROR") (setq status nil wait nil))
-               ((looking-at ".") (setq wait nil))))
-       ;; Save status message.
-       (end-of-line)
-       (setq liece-status-message-string
-             (buffer-substring (point-min) (point)))
-       (when status
-         (while wait
-           (goto-char (point-max))
-           (forward-line -1)
-           (if (looking-at regexp)
-               (setq wait 0)
-             (liece-message (_ "Reading..."))
-             (liece-accept-response))))
-       ;; Successfully received server response.
-       t))))
-
-(defun liece-accept-process-output (process &optional timeout)
-  "Wait for output from PROCESS and message some dots.
-Optional argument TIMEOUT specifies connection timeout."
-  (save-excursion
-    (set-buffer liece-server-buffer)
-    (accept-process-output process (or timeout 1))))
-
-(defun liece-accept-response ()
-  "Read response of server.  Only used at startup time."
-  (unless (liece-server-opened)
-    (cond
-     ((not liece-reconnect-automagic)
-      (error "Liece: Connection closed"))
-     (liece-grow-tail
-      (let ((liece-nickname (concat liece-nickname liece-grow-tail)))
-       (liece)))
-     (t (liece))))
-  (condition-case code
-      (liece-accept-process-output liece-server-process)
-    (error
-     (or (string-equal "select error: Invalid argument" (nth 1 code))
-        (signal (car code) (cdr code))))))
-
-(defmacro liece-replace-internal (buffer match defstring oldstring newstring)
-  "Helper function only used from `liece-replace'.
-
-Replace in buffer or list of buffers BUFFER with matching MATCH.
-Argument DEFSTRING used when no matches are there.
-Argument OLDSTRING is replaced with NEWSTRING."
-  `(save-excursion
-     (set-buffer (get-buffer ,buffer))
-     (let (buffer-read-only (inhibit-read-only t))
-       (goto-char (point-max))
-       (previous-line liece-compress-treshold)
-       (save-match-data
-        (if (not (re-search-forward ,match nil t))
-            (liece-insert ,buffer ,defstring)
-          (while (re-search-forward ,match nil t))
-          (beginning-of-line)
-          (if (re-search-forward ,oldstring nil t)
-              (replace-match ,newstring nil t)
-            (liece-insert ,buffer ,defstring))
-          (liece-insert ,buffer ""))))))
-
-;;;###liece-autoload
-(defun liece-replace (buffer match defstring oldstring newstring)
-  "Replace in buffer or list of buffers BUFFER with matching MATCH.
-Argument DEFSTRING used when no matches are there.
-Argument OLDSTRING is replaced with NEWSTRING."
-  (unless (listp buffer)
-    (setq buffer (list buffer)))
-  (dolist (buf buffer)
-    (when (get-buffer buf)
-      (liece-replace-internal buf match defstring oldstring newstring))))
-
-(defun liece-check-buffers ()
-  "Check if there is a buffer larger than `liece-buffer-max-size'.
-If such a buffer is found, shrink it."
-  (let ((liece-buffer-check-interval 0))
-    (when (> liece-buffer-max-size 0)
-      (save-excursion
-       (dolist (buffer liece-channel-buffer-alist)
-         (set-buffer (cdr buffer))
-         (when (< liece-buffer-max-size (buffer-size))
-           (let ((inhibit-read-only t)
-                 buffer-read-only)
-             (delete-region (point-min)
-                            (progn
-                              (goto-char (- (buffer-size)
-                                            liece-buffer-default-size))
-                              (beginning-of-line -1)
-                              (point)))
-             (garbage-collect)
-             (setq liece-buffer-last-check-time (current-time)))))))))
-
-(defun liece-check-buffers-if-interval-expired ()
-  "Timer handler for `liece-check-buffers'.
-Only used from `liece-before-insert-functions'."
-  (and (> liece-buffer-check-interval 0)
-       (or (null liece-buffer-last-check-time)
-          (> (liece-time-difference liece-buffer-last-check-time
-                                    (current-time))
-             liece-buffer-check-interval))
-       (liece-check-buffers)))
-
-(defun liece-refresh-buffer-window (buffer)
-  "Center point in window of BUFFER and redisplay frame."
-  (let ((window (liece-get-buffer-window buffer)))
-    (when (and window (not (pos-visible-in-window-p (point-max) window)))
-      (save-selected-window
-       (select-window window)
-       (goto-char (point-max))
-       (if (null liece-scroll-step)
-           (recenter (- (liece-window-height window) 1))
-         (vertical-motion
-          (- (or liece-scroll-step
-                 (1+ (/ (liece-window-height window) 2)))
-             (liece-window-height window)))
-         (set-window-start window (point))
-         (goto-char (point-max)))))))
-
-(defmacro liece-save-point (&rest body)
-  "Execute BODY, then goto the point that was around before BODY."
-  (let ((liece-save-point (liece-gensym "lsp")))
-    `(let ((,liece-save-point (point-marker)))
-       (unwind-protect
-          (progn ,@body)
-        (goto-char ,liece-save-point)
-        (set-marker ,liece-save-point nil)))))
-
-(defvar liece-before-insert-functions
-  '(liece-check-buffers-if-interval-expired
-    liece-command-timestamp-if-interval-expired))
-
-(defun liece-insert-internal (buffer string)
-  "Helper function only used from `liece-insert'.
-
-Insert before point of BUFFER STRING with decorating."
-  (run-hooks 'liece-before-insert-functions)
-  (with-current-buffer (liece-get-buffer-create buffer)
-    (or (eq (derived-mode-class major-mode) 'liece-dialogue-mode)
-       (liece-dialogue-mode))
-    (liece-save-point
-     (let ((inhibit-read-only t)
-          buffer-read-only
-          (from (goto-char (point-max))))
-       (unless (liece-is-message-ignored string (current-buffer))
-        (and liece-display-time (not (string-equal string ""))
-             (liece-insert-time-string))
-        (insert string)
-        (run-hook-with-args 'liece-after-insert-functions from (point)))))
-    (unless (liece-frozen (current-buffer))
-      (liece-refresh-buffer-window (current-buffer)))))
-
-;;;###liece-autoload
-(defun liece-insert (buffer string)
-  "Insert before point of BUFFER STRING with decorating."
-  (or (listp buffer)
-      (setq buffer (list buffer)))
-  (dolist (buf buffer)
-    (when (get-buffer buf)
-      (liece-insert-internal buf string))))
-
-(provide 'liece)
-
-;;; liece.el ends here
diff --git a/lisp/liece.xbm b/lisp/liece.xbm
deleted file mode 100644 (file)
index 3ad70c9..0000000
+++ /dev/null
@@ -1,843 +0,0 @@
-#define noname_width 500
-#define noname_height 200
-static char noname_bits[] = {
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x0d,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,
- 0x1a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0xc0,0x1b,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x8a,0x25,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x0e,0x29,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0x1b,0x5d,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x6a,
- 0xd2,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0xc0,0xf6,0x6e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0xad,0x9d,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x86,0x31,0xdb,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0x1a,0xee,0x9d,0x03,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x1d,0x2b,
- 0xfb,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0xb8,0x6b,0x54,0x95,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x66,0x4c,0xb6,0xd3,0x0c,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0xaa,0xd3,0x68,0xde,0x07,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7b,0x6e,0x88,0x2e,0x1c,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x55,0x96,0xf1,
- 0x56,0x13,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1e,
- 0xfa,0x28,0x29,0xf7,0x5c,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x0b,0xb6,0xdc,0xa3,0xa2,0x2d,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0xc0,0x34,0x4a,0x61,0x66,0xcd,0x6a,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x4a,0x34,0x5b,0x85,0x12,0x5b,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x6d,0x74,0x51,0xcd,
- 0x1b,0x15,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0d,0x92,
- 0x98,0x56,0x0d,0x27,0x0a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x80,0x12,0xef,0xb8,0xa6,0x9a,0x6d,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x60,0x6f,0xdc,0x61,0xcd,0x15,0x56,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x04,0x00,0x00,0x98,0x28,0xa6,0xb2,0x4a,0x1a,0x32,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x71,0x00,0x00,0xa4,0xd6,0xd4,0x22,0xa9,0x2d,
- 0x1c,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xde,0x00,0x00,0xea,0x6a,0x68,
- 0xc3,0x9b,0x32,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0xbb,0x07,0x00,
- 0x56,0x1c,0x90,0x4c,0x66,0x0b,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,
- 0xef,0x12,0x00,0x6e,0x01,0x70,0x8b,0xaa,0x35,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0xd0,0xba,0x0f,0x00,0xec,0x08,0xd0,0x86,0xbb,0x15,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0xe0,0xef,0x2a,0x3d,0x92,0x57,0x60,0x19,0x55,0x07,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xa8,0xba,0xdf,0xcd,0x54,0xd5,0x43,
- 0x25,0x54,0x0a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0x77,0x55,0x5d,
- 0x6c,0xbb,0x4f,0x3a,0xfa,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x74,
- 0xdd,0xff,0xd2,0x59,0x97,0x80,0x67,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0xda,0x77,0x7d,0xab,0xb0,0x59,0x9f,0x6a,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x74,0xdd,0xef,0xbb,0x43,0xb7,0x34,0xb7,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0xde,0x77,0xb5,0x4a,0xa2,0x7a,0x35,
- 0x4b,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf6,0xba,0x7f,0xb3,
- 0x06,0x80,0x4d,0xea,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0xdb,
- 0xef,0xfa,0xcb,0x02,0x28,0x5d,0x14,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x80,0xbf,0xba,0xf7,0xb6,0x03,0x34,0xce,0x28,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0xc8,0xea,0xef,0x7e,0x97,0x0f,0x5b,0x2e,0x08,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0xff,0xba,0xef,0xb9,0x15,0xb3,0x5a,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd4,0xd5,0xef,0x7a,0x5b,
- 0x2a,0xc5,0x25,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x7f,
- 0x75,0xff,0xb6,0x6d,0xba,0x3d,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x80,0xde,0xd5,0xdf,0xdd,0x39,0x55,0x24,0x15,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x20,0xf4,0x7e,0x75,0xfb,0x56,0xd7,0x58,0x07,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xaf,0xeb,0xdf,0xdf,0x36,0x6e,0x60,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x48,0xfb,0x7e,0xf5,0xbd,0xe9,
- 0x52,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf2,0x6d,0xeb,
- 0xaf,0x5e,0xb7,0x4c,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,
- 0x68,0xdf,0xbf,0xfa,0x3f,0xf6,0xd9,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x08,0xbf,0x75,0xf5,0xaf,0x2f,0x86,0x59,0x01,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0xe2,0xee,0xdf,0x5f,0xf5,0x4f,0x74,0x52,0x01,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x49,0xfd,0xbb,0x7a,0xf5,0xdf,0x0b,0x68,
- 0x27,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xb5,0x5b,0xdd,0xaf,0xbf,
- 0xf5,0x2f,0x58,0x0b,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0xee,
- 0x77,0xfd,0xea,0xfe,0x8e,0x92,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0xac,0x7b,0xdd,0x57,0xbf,0xff,0xb5,0xa5,0x01,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x74,0xef,0xbb,0xfe,0xf5,0x6e,0xf7,0x53,0x00,0x00,0x00,
- 0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd8,0xba,0xee,0x57,0xdf,0xdf,0x16,0x0c,
- 0x00,0x00,0x00,0x00,0x44,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xf7,0xbb,0xfe,0xfa,
- 0x57,0xbb,0x03,0x00,0x00,0x00,0x00,0xf0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x5d,
- 0xdd,0xab,0xff,0xad,0xc4,0x05,0x00,0x00,0x00,0x00,0x60,0x05,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0xb0,0xf7,0x77,0xff,0xbf,0x8b,0x75,0x01,0x00,0x00,0x00,0x00,0xfd,0x11,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0xe8,0x59,0xdd,0xf5,0xf7,0x0d,0x5e,0x00,0x00,0x00,0x00,
- 0x40,0xbc,0x0b,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xb0,0xf0,0xfb,0xdf,0xbe,0x0e,0x2a,0x00,
- 0x00,0x00,0x00,0x00,0xf7,0x26,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xa1,0xb5,0x7e,0xed,0x6b,
- 0x19,0x04,0x00,0x00,0x00,0x00,0x80,0xde,0x1f,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xa0,0x67,0xf8,
- 0xfd,0x15,0xbb,0x1f,0x00,0x00,0x00,0x00,0x00,0x80,0x7b,0xbf,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0xb0,0x08,0x5a,0x57,0x4a,0xaa,0x3c,0x00,0x00,0x00,0x00,0x00,0x80,0xee,0x6b,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0xa8,0x1a,0xee,0x5f,0x01,0x55,0x19,0x00,0x00,0x00,0x00,0x00,
- 0x80,0xbf,0xbf,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x56,0x95,0x7a,0x3f,0x00,0xac,0x0e,0x00,0x00,
- 0x00,0x00,0x00,0x00,0xeb,0x76,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xed,0x1a,0xd7,0x4b,0x10,0x38,
- 0x03,0x00,0x00,0x00,0x00,0x00,0x00,0xfe,0x5f,0x01,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2d,0x4b,0xfd,
- 0x1f,0x00,0xf0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xb8,0xfd,0x04,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,
- 0x95,0x82,0xeb,0x3f,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xea,0x57,
- 0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x9c,0x6a,0xd4,0xbe,0x35,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x50,0xad,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x17,0x6d,0xe1,0xeb,0x5b,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0xa4,0x2a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0x6a,0xd3,0x52,0xed,0xd6,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xa0,0x33,0x6a,0xf8,0x9b,
- 0x25,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x50,0x10,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x1e,
- 0x9a,0x50,0xb7,0xbe,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0xcc,0x06,0x24,0xfe,0x5d,0xd6,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x73,0x0e,0x5c,0x5a,0x2f,0x94,0x02,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xa0,0x16,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x50,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0x5a,0x0b,0x00,0xef,0x1f,0xbc,0x01,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x40,0x01,0x00,0x00,0x00,0x80,0xf4,0x3f,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xea,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd0,0xa5,0x92,0x91,0xba,0x35,
- 0x68,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x5e,0x00,0x00,0x00,0x00,0xdd,
- 0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0xfe,0xff,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2c,0xed,0xf6,
- 0xc1,0xd7,0x1f,0x28,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0xd0,0x3f,0x00,0x00,
- 0x00,0xa8,0xff,0xf6,0x00,0x00,0x00,0x00,0x48,0x05,0x00,0x00,0xc8,0xff,0x7b,
- 0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x52,0xc7,0xae,0x4b,0xed,0x3b,0x00,0x00,0x00,0x00,0x00,0x00,0x0c,0x00,0xa0,
- 0x6f,0x02,0x00,0x00,0xc2,0xde,0xff,0x05,0x00,0x00,0x00,0xe2,0x3f,0x00,0x00,
- 0xf1,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x80,0x48,0x81,0x49,0xe0,0x5b,0x25,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x2d,0x00,0xe4,0xba,0x00,0x00,0x00,0xf8,0xfb,0xde,0x12,0x00,0x00,0x20,0xfd,
- 0x7f,0x00,0x00,0xfc,0xff,0x7f,0x05,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x20,0x24,0x40,0x55,0xf5,0xbe,0x3b,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x9c,0x00,0xb1,0xff,0x0a,0x00,0x00,0xfd,0xff,0xf7,0x0b,0x00,
- 0x00,0x88,0xff,0xfe,0x02,0x40,0xfe,0xef,0xfe,0x0a,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xa9,0xff,0x0b,0xbb,0xa8,0xfd,0x0b,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x0a,0x00,0xfc,0xb6,0x02,0x00,0x20,0x9f,0xb6,
- 0x7f,0x03,0x00,0x00,0xf1,0xff,0xff,0x02,0x00,0x9f,0xfe,0xf7,0x05,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfa,0xab,0x5d,0x26,
- 0xb8,0x57,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0xbc,0x02,0xd8,0xef,0x01,0x00,
- 0x88,0x47,0xf9,0xfd,0x17,0x00,0x40,0xbc,0xdd,0xef,0x09,0xd0,0x47,0xf9,0xff,
- 0x13,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xa0,0xad,
- 0x7e,0xf7,0x28,0x4f,0xad,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x4c,0x40,0x7f,
- 0x7b,0x05,0x00,0xc0,0xa9,0xea,0xb7,0x05,0x00,0x10,0x47,0xf4,0xfd,0x02,0xe0,
- 0xa9,0xfa,0x7f,0x05,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x48,0xfb,0xd7,0xbd,0x87,0x5a,0x7f,0x05,0x00,0x00,0x00,0x00,0x00,0x00,
- 0xbc,0x02,0xda,0xff,0x02,0x00,0xe8,0xaa,0x72,0xff,0x2b,0x00,0xc4,0x13,0x52,
- 0xff,0x17,0xf4,0x52,0xf9,0xfe,0x0b,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0xe0,0xaf,0x7e,0xf7,0x9e,0x63,0xed,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x15,0xa0,0x7f,0xbb,0x02,0x00,0x72,0x94,0xf0,0xff,0x02,0x00,
- 0xf8,0x40,0xd5,0xb6,0x04,0x79,0x94,0xf0,0x77,0x01,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0xf5,0xd7,0xad,0xf7,0x7e,0x11,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x5c,0x89,0xd6,0x7f,0x01,0x00,0xb8,0x4a,0xe4,
- 0xb6,0x0b,0x40,0xfe,0x94,0x90,0x7a,0x43,0xbc,0x4a,0xfa,0xff,0x0a,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xdd,0x5f,0xbd,0x7f,0xdd,
- 0xb9,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x56,0xc2,0x7f,0xaf,0x08,0x80,
- 0xbe,0x12,0xf1,0xff,0x02,0x00,0x3f,0x4a,0x44,0x4a,0x09,0x1e,0x25,0xf0,0xdf,
- 0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe8,0xea,
- 0xef,0xd5,0xb7,0xe6,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xac,0xe0,0xed,
- 0x5b,0x00,0x00,0x2c,0x25,0xb0,0x7b,0x09,0xa0,0x5b,0x05,0x00,0xa0,0x02,0x5f,
- 0x09,0xf9,0x7e,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x60,0xbe,0xbf,0xba,0xbe,0xfe,0xab,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0xae,0xa8,0xff,0x27,0x01,0x20,0x5f,0x01,0xfd,0xaf,0x02,0xc4,0xaf,0x12,0x00,
- 0x09,0xa0,0x4f,0x05,0xfc,0xb7,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x20,0xad,0xd5,0xdf,0xeb,0xab,0xbe,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x4e,0xf2,0x6b,0x15,0x00,0x40,0xaf,0x2a,0xb4,0xdd,0x00,0xf0,
- 0xbf,0x02,0x00,0x00,0x80,0x57,0x01,0xfd,0x5f,0x04,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x30,0xfe,0xbf,0x6a,0x5f,0xff,0x55,0x01,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x40,0x2b,0xb8,0xfe,0x0a,0x00,0x80,0x4b,0x80,0x7e,
- 0x37,0x00,0xf9,0x6d,0x01,0x00,0x40,0xc8,0xab,0x28,0x5f,0x95,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0xd7,0x56,0xfd,0xf5,0x55,
- 0xff,0x0a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x56,0xed,0xbf,0x02,0x00,0xa0,
- 0x17,0x89,0xaf,0x9a,0x00,0xf8,0xbf,0x08,0x00,0x00,0x40,0x07,0xc0,0x5f,0x2b,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x81,0xfd,0x4b,
- 0xab,0xdf,0xfe,0xda,0x27,0x00,0x00,0x00,0x00,0x00,0x00,0xa0,0x27,0xbc,0x6d,
- 0x01,0x00,0xc0,0x85,0xf4,0xd3,0x05,0x80,0xde,0xab,0x02,0x00,0x00,0xe8,0x93,
- 0xfe,0xe3,0x0a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,
- 0x23,0xb7,0x2d,0xd4,0xb5,0xaf,0x77,0x9d,0x00,0x00,0x00,0x00,0x00,0x00,0x80,
- 0x55,0xee,0x5f,0x00,0x00,0xe8,0xf7,0xbf,0xa8,0x2a,0x00,0x7e,0x7f,0x00,0x00,
- 0x00,0xe0,0xf7,0x7f,0x94,0x12,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x38,0x05,0xfd,0x8e,0x50,0xff,0xfa,0xde,0x77,0x00,0x00,0x00,0x00,
- 0x00,0x00,0xd0,0x2b,0x7b,0x2b,0x01,0x00,0x60,0xbf,0x0b,0x92,0x00,0x40,0xfb,
- 0xaf,0x00,0x00,0x00,0xf4,0xff,0x05,0x29,0x01,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0xd8,0x42,0xdb,0x15,0x04,0x54,0x5f,0xb7,0xdd,0x0b,
- 0x00,0x00,0x00,0x00,0x00,0xc4,0x12,0xde,0x1f,0x00,0x00,0xe8,0xdb,0xa0,0x4a,
- 0x04,0x00,0xff,0x5f,0x00,0x00,0x00,0xf0,0x5b,0xa0,0x54,0x02,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x51,0x05,0xb7,0x2a,0x20,0xfe,0xf5,
- 0xfd,0x76,0x47,0x00,0x00,0x00,0x00,0x00,0x70,0x8d,0x7b,0x23,0x00,0x00,0x70,
- 0x2f,0x95,0x24,0x01,0x90,0xdf,0x3d,0x01,0x00,0x00,0xf9,0xad,0x96,0x02,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0x53,0x0d,0xbb,0x6a,
- 0x00,0xab,0xbe,0xae,0xdf,0x3d,0x00,0x00,0x00,0x00,0x00,0xd2,0x92,0xee,0x1d,
- 0x00,0x00,0xf2,0xfb,0x24,0x09,0x00,0x80,0xf7,0x5f,0x00,0x00,0x40,0xf8,0x7f,
- 0x21,0x28,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xb0,0xd2,
- 0x0f,0xbb,0x75,0xc8,0xfe,0xeb,0x7b,0x7d,0xf7,0x02,0x00,0x00,0x00,0x00,0x7c,
- 0x8d,0xbf,0x03,0x00,0x00,0xd8,0x2f,0x09,0x00,0x00,0xa4,0x7f,0xb7,0x00,0x00,
- 0x00,0xde,0x2b,0x8a,0x00,0x00,0xc0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x98,0xa6,0x38,0x6e,0x8a,0x82,0x6b,0x7d,0xdd,0xd7,0x5d,0x2b,0x00,0x00,
- 0x00,0x80,0xba,0xa6,0xed,0x5f,0x00,0x00,0x72,0x5b,0x82,0x00,0x00,0xc1,0xfd,
- 0x5f,0x00,0x00,0x10,0xfb,0x5f,0x01,0x00,0x00,0x31,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x50,0x62,0x1b,0x55,0xd5,0xe8,0xaa,0xd7,0x77,0x7d,0xf7,
- 0x2d,0x01,0x00,0x00,0x28,0x6f,0x89,0xbf,0x02,0x00,0x10,0xfc,0xaf,0x00,0x00,
- 0x00,0xf8,0xef,0xbf,0x00,0x00,0xc5,0xfd,0x26,0x10,0x00,0x00,0x18,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x8d,0x2c,0xae,0x0b,0xf4,0xd4,0xba,
- 0xdd,0xd7,0x7d,0xff,0x10,0x00,0x00,0xc0,0xbb,0x85,0xeb,0x27,0x00,0x04,0xef,
- 0x3d,0x11,0x00,0x80,0xd8,0xff,0xbd,0x04,0x40,0x70,0xf8,0x9f,0x02,0x00,0x40,
- 0x8e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xa0,0x61,0xc9,0x6a,0x9a,0x20,
- 0x1b,0x15,0xd4,0x76,0x7f,0xd7,0xd5,0x97,0x10,0x90,0xfa,0xaf,0xd2,0x7e,0x9f,
- 0x52,0xd0,0xb9,0x77,0x04,0x00,0x08,0xce,0xbe,0x6f,0x02,0x04,0x9e,0xfc,0x7f,
- 0x00,0x00,0x04,0x27,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xa0,0xc7,0x96,
- 0xad,0x74,0xc8,0x5e,0x4a,0xa9,0xdf,0xd5,0x7d,0xbf,0x7d,0x85,0x84,0xb6,0x6a,
- 0x85,0xef,0xf6,0x00,0xfd,0xf8,0xff,0x43,0x24,0xc2,0xc7,0xf7,0xff,0x20,0xa1,
- 0x2f,0xdc,0xff,0x4b,0x12,0xd1,0x85,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x5c,0x24,0xe9,0xd2,0xac,0xff,0x4b,0x09,0xa0,0xba,0x7f,0xb7,0xf5,0xb6,0x7f,
- 0xfb,0xff,0x57,0xe0,0xbe,0xdf,0xff,0x77,0x6d,0xdb,0x1f,0x81,0xe8,0xe9,0xff,
- 0xfd,0x05,0xfc,0x47,0xfd,0xff,0x17,0x40,0xf8,0x11,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x27,0xcd,0xaa,0x6c,0xd9,0x57,0xad,0x22,0x88,0xee,0xd5,0xef,
- 0xbf,0xef,0xdb,0x7e,0xdb,0xba,0x82,0xeb,0x77,0xff,0xbe,0xf8,0xff,0xfd,0x55,
- 0xfe,0xc5,0xbd,0xdf,0xff,0xf7,0x53,0xf8,0x7d,0xff,0x2d,0xff,0x25,0x01,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0xc0,0xdd,0x8e,0xbe,0xdb,0x74,0xf5,0x15,0x04,0x40,
- 0xb8,0xbe,0xba,0xf6,0xbe,0xee,0xeb,0x7d,0x57,0xc0,0x7f,0xfd,0xdd,0xab,0xb2,
- 0xbb,0xef,0xff,0x7f,0xd4,0xff,0xff,0xff,0xbf,0x94,0xfa,0xff,0xff,0xff,0x3f,
- 0x0a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0xf2,0x19,0x45,0x57,0xb3,0x4d,
- 0x49,0x01,0x00,0xca,0xef,0xef,0xbb,0xeb,0xfb,0x7e,0xd7,0x2d,0x80,0xda,0xbf,
- 0xf7,0x5f,0xf9,0xee,0x7e,0xff,0xb7,0x8a,0xef,0xfb,0xbb,0xff,0x4a,0xf8,0xef,
- 0xff,0xff,0xbf,0x52,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x95,0x2e,0xd5,
- 0x54,0x75,0xa7,0x22,0x00,0x00,0x50,0xbd,0xbe,0xef,0xbe,0xaf,0xdb,0x7f,0x93,
- 0x80,0x7f,0xdb,0x5f,0x6b,0xf5,0xff,0xfb,0x6d,0x5f,0xe5,0x7e,0xdf,0xfe,0xaf,
- 0x2a,0xbc,0xff,0xfb,0xff,0x57,0x05,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,
- 0x33,0x29,0xb6,0xd1,0xaa,0x15,0x08,0x00,0x00,0x80,0xee,0xeb,0xba,0x6f,0xfb,
- 0x7f,0xfb,0x0d,0x00,0xdb,0xff,0xfa,0xbf,0xa0,0xfb,0xef,0xff,0xdf,0x8a,0xfb,
- 0xff,0xff,0xbb,0x05,0xf0,0xff,0xff,0xff,0xef,0x12,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0xc0,0x65,0x55,0x94,0x29,0xb5,0x47,0x02,0x00,0x00,0x24,0xb9,0xbf,
- 0xef,0xfa,0x5d,0xf5,0xaf,0x02,0x00,0xff,0xf6,0xef,0x56,0xf2,0x6f,0x7f,0xff,
- 0xba,0x80,0xdf,0xf7,0xef,0x6e,0x15,0xf0,0xbf,0xbf,0xbb,0x5b,0x01,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0xc0,0x01,0x7b,0x6e,0xb4,0xd3,0xae,0x00,0x00,0x00,0x00,
- 0x00,0xd2,0xea,0xbb,0x6f,0xf7,0xbf,0xbb,0x00,0x00,0xb6,0xbf,0xfd,0x2f,0xc0,
- 0xfd,0xff,0xb7,0xdf,0x0a,0xff,0xfe,0xff,0x5f,0x01,0xc0,0xf7,0xff,0xff,0xbf,
- 0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xa8,0x81,0x55,0x6b,0xcc,0xe4,0x4a,0x01,
- 0x00,0x00,0x00,0x00,0xa8,0xbf,0xfe,0xfe,0xdf,0xf6,0x4d,0x02,0x00,0xfa,0xf6,
- 0x77,0x95,0x80,0xdf,0xed,0xfd,0x37,0x01,0xfe,0xbf,0xfd,0x5b,0x04,0xe0,0xfe,
- 0xfd,0xff,0x26,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xa8,0x02,0xa5,0x35,0xb0,
- 0x25,0x19,0x20,0x00,0x00,0x00,0x00,0x40,0xea,0xaf,0x57,0xb5,0x7f,0x2b,0x00,
- 0x00,0xbc,0xdf,0xfe,0x05,0x40,0xf7,0xbf,0xff,0x4d,0x00,0xec,0xfb,0xff,0xaa,
- 0x00,0x80,0xff,0xef,0xff,0x5b,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x5c,0x03,
- 0xb4,0x2e,0x98,0xcd,0x06,0x00,0x00,0x00,0x00,0x00,0x21,0x6d,0xfd,0xfe,0xff,
- 0xef,0x02,0x00,0x00,0xf0,0xfe,0x5f,0x09,0x00,0xbd,0xfb,0xb7,0x2b,0x00,0xf9,
- 0xff,0xb7,0x0b,0x00,0x40,0xff,0x7f,0xb7,0x05,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0xb0,0x0c,0x74,0x39,0x60,0x4d,0x05,0x00,0x00,0x00,0x00,0x00,0x00,0xa8,
- 0xb7,0xdb,0xfe,0x3a,0x49,0x00,0x00,0xc8,0xeb,0xb7,0x02,0x00,0xfa,0xff,0xfe,
- 0x0a,0x00,0x74,0xbf,0xff,0x12,0x00,0x08,0xbd,0xff,0xff,0x2a,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x20,0xa8,0x05,0x94,0x0a,0x20,0x91,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0xa1,0xfa,0xff,0xeb,0x45,0x00,0x00,0x00,0x50,0xbf,0x2a,0x00,0x80,
- 0x6c,0xef,0x5f,0x05,0x00,0xd0,0xfb,0x96,0x08,0x00,0x00,0xfa,0xff,0xad,0x02,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x70,0xb0,0x0d,0xb8,0x03,0xc0,0x1d,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x4a,0xb5,0x5d,0x2a,0x02,0x00,0x00,0x82,0xea,
- 0x16,0x01,0x00,0xa8,0xfb,0x6b,0x11,0x00,0xa0,0xee,0x55,0x02,0x00,0x80,0xa4,
- 0xbb,0xb7,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x4e,0xa0,0x0f,0xa8,0x04,0xa0,
- 0x0a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x88,0xa8,0xaa,0xaa,0x00,0x00,0x00,
- 0x00,0x20,0x55,0x21,0x00,0x00,0x50,0xaf,0x16,0x00,0x00,0x88,0x5a,0x0b,0x00,
- 0x00,0x00,0x68,0xed,0x4a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xad,0x81,0x30,
- 0x50,0x0d,0xc0,0x16,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x49,0x05,
- 0x12,0x00,0x00,0x00,0x00,0x48,0x04,0x00,0x00,0x84,0xb4,0x49,0x01,0x00,0x20,
- 0xa5,0x44,0x00,0x00,0x00,0x10,0x5b,0x15,0x04,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,
- 0x76,0xe1,0x16,0xb0,0x06,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x24,0x24,0x10,0x00,0x00,0x00,0x00,0x80,0x24,0x00,0x00,0x00,0x20,0x49,0x02,
- 0x00,0x00,0x00,0x08,0x10,0x00,0x00,0x00,0x40,0xaa,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0xc0,0x4d,0x87,0x6d,0xa0,0x1d,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x00,
- 0x00,0x92,0x10,0x00,0x00,0x00,0x42,0x01,0x00,0x00,0x00,0x00,0x01,0x0a,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x40,0x52,0x85,0xad,0x40,0x19,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x00,
- 0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x6d,0x0b,0x59,0xc0,0x3d,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0x75,0x0b,0xad,
- 0x80,0x22,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0xcb,0x3a,0x9a,0x81,0x6a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x6d,0x53,0x6c,0x29,0xad,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x69,0x75,0xca,0x76,0x3a,0x00,0x00,0x00,0x00,
- 0x00,0x28,0x0a,0x00,0x00,0x50,0x01,0x00,0x00,0x40,0x01,0x00,0x00,0xa0,0x16,
- 0x00,0x00,0x30,0x04,0x03,0x00,0x00,0x00,0x28,0x14,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x02,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0xa0,0x02,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x4b,0x8b,0x18,0x4f,0x06,0x00,
- 0x00,0x00,0x00,0x00,0x08,0x04,0x00,0x01,0xa0,0x00,0x00,0x00,0x81,0x00,0x00,
- 0x00,0x40,0x29,0x00,0x00,0x08,0x80,0x00,0x00,0x00,0x00,0x10,0x14,0x00,0x00,
- 0x00,0x00,0x00,0x80,0x00,0x00,0x00,0xa0,0x00,0x40,0x00,0x00,0x40,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd6,0xb4,0xd4,
- 0xea,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x42,0x45,0x05,0x90,0x20,0x85,0x42,
- 0x45,0x0a,0x2a,0x54,0x40,0x10,0x2a,0x54,0x21,0x16,0x50,0x42,0x50,0x01,0x54,
- 0x0a,0x28,0xa8,0x50,0xa1,0x82,0x0a,0x21,0x05,0x15,0x40,0x88,0x90,0x80,0x20,
- 0x22,0x90,0x40,0x02,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x6c,0x76,0x59,0xb6,0x00,0x00,0x00,0x00,0x00,0x00,0x28,0x21,0x89,0x04,0x48,
- 0xa8,0x62,0x85,0xa4,0x94,0x12,0x12,0x40,0x10,0x29,0x28,0x89,0x88,0xa2,0xaa,
- 0x48,0x02,0x28,0x04,0x25,0x24,0x24,0x90,0xa2,0x8a,0x50,0xa1,0x12,0xa0,0x50,
- 0x21,0x29,0x41,0xd5,0x20,0x83,0xa4,0x0a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0xca,0x54,0xa3,0x56,0x00,0x00,0x00,0x00,0x00,0x00,0x90,0x42,
- 0x44,0x01,0x48,0x11,0x14,0x48,0x81,0x08,0x41,0x04,0x40,0x28,0x42,0x80,0x90,
- 0x86,0x10,0x89,0x14,0x01,0x08,0x2a,0xa2,0x04,0x08,0x00,0x51,0x08,0x21,0x8a,
- 0x08,0x20,0x14,0x55,0x10,0x45,0x20,0x81,0x50,0x41,0x04,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0xac,0x9a,0x65,0x2f,0x00,0x00,0x00,0x00,0x00,
- 0x00,0xa0,0x10,0x44,0x00,0x84,0x08,0x21,0x44,0x20,0x48,0x30,0x05,0xa0,0x92,
- 0x20,0x40,0x14,0x01,0x21,0x42,0x04,0x01,0x32,0x89,0x40,0x02,0x04,0x20,0x22,
- 0x44,0x09,0x62,0x14,0x40,0x00,0x22,0x04,0x12,0x08,0x10,0x25,0x10,0x08,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd0,0x67,0x5a,0x02,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x40,0xa8,0x8a,0x00,0x84,0x10,0x15,0x94,0x40,0x94,0x0d,
- 0x02,0xa0,0x0a,0x55,0x5a,0x09,0x81,0x10,0x84,0xaa,0x02,0x84,0x12,0x2d,0x2a,
- 0x54,0xac,0x12,0x0a,0x28,0x14,0x08,0x50,0x18,0x11,0x74,0x51,0x30,0x48,0x11,
- 0x60,0x05,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x28,0xb4,0xd2,
- 0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x90,0xa0,0x00,0x55,0x09,0x12,0x48,
- 0x50,0x48,0x10,0x01,0x10,0x42,0x09,0x45,0x84,0x40,0x08,0xa1,0x44,0x00,0x52,
- 0x89,0x20,0x54,0xa8,0x10,0x09,0xc4,0x10,0x21,0x04,0x20,0x84,0x28,0x08,0x21,
- 0x00,0x94,0x12,0x88,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0xd8,0x56,0x3f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xa0,0x10,0x40,0x00,0x92,
- 0x14,0x11,0x44,0x20,0x84,0x00,0x04,0x40,0x84,0x00,0x81,0x10,0x81,0x28,0x45,
- 0x02,0x00,0x42,0x50,0x01,0x40,0x40,0x04,0x29,0x04,0x08,0x15,0x08,0x50,0x08,
- 0x09,0x04,0x10,0x18,0x04,0x11,0x28,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0xb0,0x6a,0x09,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x50,0x08,
- 0x10,0x80,0x40,0x88,0x0a,0x22,0x10,0xa8,0x80,0x02,0x28,0x42,0x00,0xa1,0x8c,
- 0x40,0x08,0x22,0x04,0x00,0xa1,0x88,0x00,0x20,0x80,0x8a,0x10,0xa1,0x04,0x12,
- 0x0a,0x00,0x8a,0x10,0x0a,0x10,0x10,0x82,0x08,0x10,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x8b,0x16,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x10,0x50,0xc5,0x80,0x42,0x85,0x20,0x45,0x21,0x44,0x14,0x01,0x20,0x4a,
- 0x25,0x4a,0x40,0xa5,0x14,0x41,0x95,0x00,0x42,0x90,0x2a,0x40,0x41,0x84,0x52,
- 0x86,0x10,0x61,0x05,0x50,0x04,0x29,0x24,0x21,0x08,0x2a,0x51,0x28,0x02,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x8e,0x05,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x20,0x50,0x22,0x03,0x81,0x04,0xa9,0x50,0x12,0x82,0x89,
- 0x00,0x28,0x14,0x95,0x2a,0x86,0x48,0x08,0x21,0x54,0x80,0x22,0x88,0x12,0x55,
- 0x5a,0xaa,0x50,0x21,0x8c,0x90,0x00,0x28,0x42,0xa4,0x48,0x08,0x04,0x94,0xa8,
- 0xa1,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x1a,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x80,0x40,0x40,0x00,0x09,0x00,0x00,
- 0x01,0x04,0x02,0x02,0x00,0x80,0x00,0x40,0x00,0x02,0x80,0x00,0x00,0x00,0x40,
- 0x10,0x04,0x09,0x04,0x10,0x00,0x84,0x00,0x02,0x06,0x00,0x00,0x11,0x90,0x20,
- 0x10,0x00,0x01,0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x40,0x0b,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x54,0x01,0x00,0xa8,0x04,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x80,0x2e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x48,0x01,0x00,0x50,
- 0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};
diff --git a/lisp/liece.xpm b/lisp/liece.xpm
deleted file mode 100644 (file)
index e98ebb1..0000000
+++ /dev/null
@@ -1,228 +0,0 @@
-/* XPM */
-static char * liece_xpm[] = {
-"500 200 25 1",
-"      c None",
-".     c #2B050D",
-"+     c #AFAEAC",
-"@     c #818180",
-"#     c #B3082C",
-"$     c #5F595B",
-"%     c #DE6A7C",
-"&     c #969493",
-"*     c #E3DBDB",
-"=     c #820B24",
-"-     c #C9606E",
-";     c #3E3637",
-">     c #9E9E9C",
-",     c #C2C2C0",
-"'     c #5C051A",
-")     c #AF5460",
-"!     c #E3717F",
-"~     c #EDC2C8",
-"{     c #E99EA4",
-"]     c #262221",
-"^     c #8D454C",
-"/     c #BA485D",
-"(     c #F2EFEF",
-"_     c #D496A3",
-":     c #B54159",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                          >*                                                                                                                                                                                                                                        ",
-"                                                                                                                                                                                                                                                                        +;;+(                                                                                                                                                                                                                                       ",
-"                                                                                                                                                                                                                                                                     (>;-!-$,                                                                                                                                                                                                                                       ",
-"                                                                                                                                                                                                                                                                     ,$!!!!]@*                                                                                                                                                                                                                                      ",
-"                                                                                                                                                                                                                                                                   ( *@;]]!]$,                                                                                                                                                                                                                                      ",
-"                                                                                                                                                                                                                                                                *@@>*(,$]%!-!@*(                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                              ,>$];;&((&$%!%!;+*                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                             ,@]]];];>*,$!!];!@*                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                             ,$]%!!-!]@*>]!%]-;>*                                                                                                                                                                                                                                   ",
-"                                                                                                                                                                                                                                                             *@])!]!]]]@,@]%%!]@,                                                                                                                                                                                                                                   ",
-"                                                                                                                                                                                                                                                       (***   *$-%;-!;!]$@;])%-$&*                                                                                                                                                                                                                                  ",
-"                                                                                                                                                                                                                                                      (>@$@>(  @;-!!!;!!]$$];!!];+(                                                                                                                                                                                                                                 ",
-"                                                                                                                                                                                                                                                    ,@;%-%$;@* *$)]!!;]-]!]]]!-]!@*                                                                                                                                                                                                                                 ",
-"                                                                                                                                                                                                                                                  +$;]!!;%!];&* +;;]!]!!]]!];]];%;+(                                                                                                                                                                                                                                ",
-"                                                                                                                                                                                                                                                 *@;]]!);--$-;+(*@]!!!!!-!%%!!%]%$$,                                                                                                                                                                                                                                ",
-"                                                                                                                                                                                                                                                *@]!!!])%!!;!!$+ +;!!;!%]]%%!-!]%%]>(                                                                                                                                                                                                                               ",
-"                                                                                                                                                                                                                                                +]!!!-$@]!%!!-]@*(>;%]!%!]]]]!];]!]@,                                                                                                                                                                                                                               ",
-"                                                                                                                                                                                                                                           *(  (@]!%]]$(@]]]!!;$> *$%%%%%]]]!!!!!!%]@*                                                                                                                                                                                                                              ",
-"                                                                                                                                                                                                                                          *@&  (&^%!]-$>,;%-!-!!$( >;]^!-;;$%%%%%!-!;+(                                                                                                                                                                                                                             ",
-"                                                                                                                                                                                                                                        +@]%]   @;%%]]]$,>!%!!!%;>(,@;)!];;,$]];!!]]]@,                                                                                                                                                                                                                             ",
-"                                                                                                                                                                                                                                      ,&$]!]-&( +$]%]]!;,*;]-!;]!$,(+;%!%!!@+$-]%!])!;+*                                                                                                                                                                                                                            ",
-"                                                                                                                                                                                                                                     (&]!%%!!;, *$%-%!%%$,+!!!]!!]&(*@;!-!%]*,$]%%!]%)$*                                                                                                                                                                                                                            ",
-"                                                                                                                                                                                                                                     (,;!!-!-!&**&;!]]!!]>(;!%$%!!$+(*$!!]!!&*+@]!);!;$*                                                                                                                                                                                                                            ",
-"                                                                                                                                                                                                                                 *((   @]!!]!%;+(*@%];%!;@,>;!]%%%]$( @]];!%;+(,@%!-;@,(                                                                                                                                                                                                                            ",
-"                                                                                                                                                                                                                                +@$@,((+$%!-!!-$((+]!%!%!]@,@%!%]!;$+(,$];]!!$*(,$$@,*                                                                                                                                                                                                                              ",
-"                                                                                                                                                                                                                              +$!;!!$>((&]]]!!]]>(*@;]%%%!;+,;!!%-!]$( >;;]!!;&  *,*                                                                                                                                                                                                                                ",
-"                                                                                                                                                                                                (**,(                      (>$;!;;]!)$,(,$;;]);];( ,$]-!;;;@,>]]!!!!;+(,@]!%%!]   (                                                                                                                                                                                                                                 ",
-"                                                                                                                                                                                               ,~~~~~~* (                 ,@]!!!!%!%!]$,(>;!!%!%%&**@;!-!%!;+(;-!%$%]@((,$-!;$@*                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                              ~~~~_-::_*(*((             *$%!!!%!-%%$!;+ ($%%!]!!;,(,@!!!!!)@,>]]-];!@( *&$$@,*                                                                                                                                                                                                                                     ",
-"                                                                                                                                                                                             ,~~{:######>**(*(           @$-%]]$@$!%-;@,( ,$%!]%-;@((+]!]]!!;>*$!!!!-$*  ,@>*(                                                                                                                                                                                                                                      ",
-"                                                                                                                                                                                            ~~~{#########@,**((         *$]%!%]&,@]);@,(  (@]%%!-%]> *$!!]!!!$+>]!%!!@(   *(                                                                                                                                                                                                                                        ",
-"                                                                                                                                                                                           *~~{:##########>,,*((        *;;]!-;&,,@&,*(    ,$)]!!$%;  +;!]!%!]$;]%!!]>(                                                                                                                                                                                                                                             ",
-"                                                                                                                                                                                          (~~~############=>+,*(( ,+**  ,$;;!]];>(,*(((    (&;;];;!!+(*@;;!];%);-!!)$,                                                                                                                                                                                                                                              ",
-"                                                                                                                                                                                          ~~~/#######=#####$&+,,>@;;;$,*(@!!!!!!]$$@@>&,,(  ,$;%!%%!$,(,$!%!;%!!]];@,                                                                                                                                                                                                                                               ",
-"                                                                                                                                                                                         *~~!###########=##=@&@$;-!;!!;>(+]!%!!!];!!;!];$@+((>;%%!-%^&((+$%%]!%!!]$+(                                                                                                                                                                                                                                               ",
-"                                                                                                                                                                                        (~~{###############=$$;))%-;]!]@,(@)!]^%]]!!;$%]]]]@ (@-!]!!]$+ (,$);;];$@*                                                                                                                                                                                                                                                 ",
-"                                                                                                                                                                                        ~~~-########=######=.]]$--%%-!-]$ *]%!%!]]!%]%%!%!!%>*+;!]%!!;$   *&&@&+,*                                                                                                                                                                                                                                                  ",
-"                                                                                                                                                                                       *~~!############=####'].^);-!!!!]%,(>;]-!];!%]%-!%!;];+,&]])%!;]>    (( (                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                      (~~~##################=]]^]@$;]-!]%$*(>$;!]]%%;]%^%%)$!$,,$]]!-]!;*                                                                                                                                                                                                                                                           ",
-"                                                                                                                                                                                      {~~/##############=###=];^]@+$]!!!!], (,+@$@$;$]]-!!]!!;&,&;%%!!!!+(                                                                                                                                                                                                                                                          ",
-"                                                                                                                                                                                     ~~~!###########=####=##=..^^;(>;!%]!;+(  (*((**++>$]!;]-!$(*$!%!]]$,(                                                                                                                                                                                                                                                          ",
-"                                                                                                                                                                                    *~~{####################'.];^]>+@!!;!$,      (,&&+*,@%;]!!;, +;!]@>,(                                                                                                                                                                                                                                                           ",
-"                                                                                                                                                                                   ~~~~###############=#####'].^^]$&$-!;;$,*(    ,$!;$, +]]!!!;& (@$@,(                                                                                                                                                                                                                                                             ",
-"                                                                                                                                                                                  *~~~/#################=###'..;^]]$;!!;];$$>( ,@-!!;$&*,$]]%!$,  ,,((                                                                                                                                                                                                                                                              ",
-"                                                                                                                                                                                 *~~~/#############=#####=##'].;^)-;;%!];@;-],(,$]!-;%$>&]%]%!$,   (                                                                                                                                                                                                                                                                ",
-"                                                                                                                                                                                *~~~/######################='..^^)-%]-!-!%%!!$,*@;!!!%!]]!%%!;>(                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                              (~~~~/##################=####=]]].^]--];$;^%]]%]& *$%%;)!;]!];;>*                                                                                                                                                                                                                                                                     ",
-"                                                                                                                                                                             *~~~~:################=####=##'.]];))%!];,>;-!!%!$,(+;!!!!%!%]$@*                                                                                                                                                                                                                                                                      ",
-"                                                                                                                                                                            ~~~~{##########################.];;]))-%;%+,$;;-%!]$ (+]%%%%];$>(                                                                                                                                                                                                                                                                       ",
-"                                                                                                                                                                          *,~~~!#####################=###==.];$;)];%;;$++$;;!]]!,  +>$$@++(                                                                                                                                                                                                                                                                         ",
-"                                                                                                                                                                       (*~~~~{:###################=######=..]$@$]--%;]^@*@^!-!%_$*  ((**((                                                                                                                                                                                                                                                                          ",
-"                                                                                                                                                                     (*~~~~{%#########################=##'...;&>$]%%]]-],,;)%%%-^>                                                                                                                                                                                                                                                                                  ",
-"                                                                                                                                                                  (*~~~~~{%#############################=..]]$>,>;]%;;];$*&$]!]]-@*                                                                                                                                                                                                                                                                                 ",
-"                                                                                                                                                              (**~~~~~~{/#######################=##=###=...]$@+*,@]!!!!;],,$;!!^;&*                                                                                                                                                                                                                                                                                 ",
-"                                                                                                                                                      *****,~~~~~~~~_%################################=...];@+,*(,$!%%%%!$,&;%]@+*(                                                                                                                                                                                                                                                                                 ",
-"                                                                                                                                                      *~~~~~~~~~!%:#################################=#....]$>,*(((&;!]]%]]&*>@+*                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                       *!%/:::##################################=###=.....];>,((((*$!%!!]%$,(,(                                                                                                                                                                                                                                                                                     ",
-"                                                                                                                                                        !##########################################'..]]];^]@*(+@>(>;%!%!;@*                                                                                                                                                                                                                                                                                        ",
-"                                                                                                                                                        (-#######################################=.....;;^^)$+&$;$+,@;!]@,*                                (*                                                                                                                                                                                                                                                       ",
-"                                                                                                                                                        ((/#####################################'.]]]];;.])-;;];]]$*,@@>,                                  ,~~                                                                                                                                                                                                                                                      ",
-"                                                                                                                                                        ((*/#################################='...];$$]^)]--]!%!!!;>*,*(                                  ~~~_@*((((                                                                                                                                                                                                                                                ",
-"                                                                                                                                                        ((*~:##############################='.....];@@@^);!-]-!;;!$+( (                                 (,~~{==:*((((                                                                                                                                                                                                                                               ",
-"                                                                                                                                                         (*~{%###########################=....].]]]@>>,$-%-!-!-]$$+*                                   (~~~~#='=@*,**((                                                                                                                                                                                                                                             ",
-"                                                                                                                                                         ((*&;:=######################='......]];^^$+,*>;%!%]]]$&*(                                   (~~~!======&,,*((                                                                                                                                                                                                                                             ",
-"                                                                                                                                                          (,$]^.=%%/##############='......]]].;^.^]$+(((&;]%]$@,*                                     ~~~!========&+,,((                                                                                                                                                                                                                                            ",
-"                                                                                                                                                         ( *$]/))~~{########'...]]];]]]]]];;]]^^^))]>(  ,$!;&,*                                      *~~!=='==='===>+,**(                                                                                                                                                                                                                                           ",
-"                                                                                                                                                       ,,,*(+;-]_~~%#######..]];;;;$$$;];=^^:;)))--]$,  (,$>,                                        ~~{============&+,**(                                                                                                                                                                                                                                          ",
-"                                                                                                                                                    *>@;$$$,(@$>~~{#######=]]];$$$@@@@&@;^^^];-];]];;+    *(                                         *~-========'=='=$+,*((                                                                                                                                                                                                                                         ",
-"                                                                                                                                                  (@;]-%%!!$+,,~~~:######'.]]$$@@&&>>++,@;-/-;%-%!]]]@(                                              (~:====='========$+,*((                                                                                                                                                                                                                                        ",
-"                                                                                                                                                  ,]!]!!-!!]$,~~~%#######..];$@>+,,,,*,*,&]%-%%%%%!];>(                                               *:========'==='=^>+**((                                                                                                                                                                                                                                       ",
-"                                                                                                                                                +$;!!!)!!--!${~~{#######].]]$@&,,**((((((,$]-]%%!-]@>,                                                 {=========='==;$@>+*((                                                                                                                                                                                                                                       ",
-"                                                                                                                                               *$!]!!];]!-!%$,~~:######'.]]]$>,**((((((( (,$%;%!]$&,(                                                 ((&===='====='];$@&,**(                                                                                                                                                                                                                                       ",
-"                                                                                                                                              (,;!]]!$>@;]!;~~~%######...]];],,((((       (,]]^;&,*                                                    (*>)=====''.]];$@>+*((                                                                                                                                                                                                                                       ",
-"                                                                                                                                           >,( @]!!!$@*,@;@~~~_######=]]..;.]@(((          (@@$+(                                                     ((*,>@$;;];]];;$$@+,*(                                                                                                                                                                                                                                        ",
-"                                                                                                                                        *&$;$,*@^!%%%;+,,>,~~{######^]].];^^];,             (,**                                                       ((*,>&$$;$;$$$@&>,,(((                                                                                                                                                                                                                                       ",
-"                                                                                                                                      (+@$;-;+(+;%;;%]$@+,~~~/#####:$;]].]^)]-@*                                                                       ((*,,>&@@@$@@@&+,**(                                                                                                                                                                                                                                         ",
-"                                                                                                                                      >;;$!!!$,,;!!%!!;^!{~~%#####^$$;$];^)--!;+                                                                        ((**,++>>>>++,,*(((                                                                                                                                                                                                                                         ",
-"                                                                                                                                   *>$^%];%!]$+*&!%)!!]!~~~!######$;;$@$])--%%!$(                                                                        (((**,*,,,,**((((                                                                                                                                                                                                                                          ",
-"                                                                                                                                  ,@;;]%%;]]@+( *;!]!!;&~~~#####=]]$$$@&@;]]]!!;>                                                                         (((((**((*((((                     *((**(                                                                                 (((**(                                                                                                                          ",
-"                                                                                                                                 ,,;!%]%!]]@,(  (>;%%!{~~~######';.;$&>,>$]-;!%]$(                                                                          (((((((((                    (**,~~~~~~~* (                                                                          (,~~~~~~~~*( (                                                                                                                     ",
-"                                                                                                                              *&$]*&]!]!%;]@      @$:_~~~/#####;;;];$&,*,&;-]!!%-+(                                                           *,~,*              (                    (*~~~~~~~__!:&_**(((                                                                    *~~~~~~~+!&^-&,*((((                                                                                                                  ",
-"                                                                                                                            ,&$]!!@>$;%!%]%]   *,((+&~~~-#####^=.;;]$>**(*$!;]!]@+                                      *(                   ,~~~~~~(((                             (*~~~~~_%='''''''=>**(((                                   ((                           *,~~~~{!^........$**(((                                                                                                                 ",
-"                                                                                                                           ,@;]]-!]&>]!%!-!!@,>@$+ (~~~!####=];]]=;]]>*(((>;-]$>,(                                     (~,                 (~~~{/==')(**((                        (~~~~~{-=''='''''''''&,,*((                             (*~,~~,~,*(                    (*~~~~~-;............$,,*((                                                                                                                ",
-"                                                                                                                         (@;-!!!]!;@,@;]!]]!;@$]]@*~~~!####/@$.;.^^]]@((  (@$@,(                                       (~~!, ( (          *~~~{#======***(((                     *~~~~_:'''=''''''''''''+,***(                        (*,~~~~~~~~__~~((((               **~~~{)................@+,**(                                                                                                               ",
-"                                                                                                                       ,+$@$!!]!];@,(,;]!]]!!]$];;~~~~####=;$$;]]^^]]$(    *,*(                                        *~!==**(((        (~~~_======'=$,,,((                   (~~~~_:''=''''=''''''''''$>+**(                      *~~~~~~{!^='.'..]),(*((            ~~~~{)..................;&+,*((                                                                                                              ",
-"                                                                                                                  (*,~~~~~~~~~+&@+((  $]-!!-!%!%!~~~{####:^.;@$;]^-)%@*     (                                           ~!==_***((       ~~~!=========^&+,*((                 *~~~{)'''''=''''''='''''''$@&,*((                  (,~~~~~_)'.'....'.'...,***((        (,~~~-]...................]@&+,((                                                                                                              ",
-"                                                                                                               (*~~~~~~~~!_!_!{~~~~*((+$-!-!!!!!&~~{:####^];]$@;])--]@(                                                 ~!==),*,*((     ~~~{===========@>+,*(                ~~~~{=='='=''''=''''''''''';$@+,*(                *~~~~*,!='.'.'.'.'..'.'.],,**(       ~~~~{^.....................]$@>,*((                                                                                                             ",
-"                                                                                                             (,~~~~~!%:##########/!_~~*&;;^%];%&~~~:###=);];.;$]]]-;$,                                                  ~~#=:,,,**(    *~~{#=========';$@>,*((              ,~~~)''''=@))^'='''''''''''';$@>,*(              *,~**(~^'...'..'..'..'...'.&+,*((     *~~~_.....$@$;].............];@&+*((                                                                                                             ",
-"                                                                                                            *~~~~{%##################/{~&;-%%;{~~~/###&;.^^^^^)--%-]>(                                                  ~{==^+++,*((  *~~~============;;@&,*(             (~~~~='''-++&@@@{=''=''''''''.;;$>,*(           (*~~~* _''.'^^^^.'.'..'...'...@@+,*((  (~~~~^...;&+&@@@_;............];$@,,*                                                                                                              ",
-"                                                                                                           ,~~~{########################!~@--_~~{/###~>$];=$^))--];>(                                                   ~~#=^&>>,*(( (~~~/===========.];$&,,((           (~~~~=='={++&@@$@+-'''''''''''.;$@>,*((         *~~~~*-.''&~*,,+>>@^''..'.'...'$@&,,((  ,~~~)...&,_>&@@$&~............];$&+*((                                                                                                             ",
-"                                                                                                          ~~~~%###########################-~{~~{####_+@@$]]])];);@>*                                                   (~~==^&>>,,(((~~~%=#=========.];$@>,*(           (~~{_=''),+>@&@&@@{~'='=''''''.]];@>,*(        (~~~~~-'.'&*,,,+++>&@@$$;''...']]$$@,,(( ~~~~]..]_+>&@@@&@&~;..........]]$$>+*(                                                                                                              ",
-"                                                                                                         ,~~{###############################-{~:##/~@$;@@$;]]];$@,(                                                    (~~#=:@&>+**(*~~!===========.]];$@>,*(           ~~~_''=:,+>&@&&&+>,~:''''''''']];$@+**(       *~~~~)'.'',,,,,,+++>>&@@@$$;;;]];;$@&+*((*~~{'..'+++&&&&>&>,~!..........]]$@>,*(                                                                                                              ",
-"                                                                                                        ~~~~######################################$@;.]$&,>&@+,*(                                                      *~_==^&@>,,(~~~{#========='.]];$@>,*((          ~~~_'='^,>&&&&>+,,,~~:''''''''.];;@&,*((     (~~~~!=.'.=+++++++,++,++>&&@@@$$;$;$$@>,*(*~~~;..'++&&@&&++,,~~@.........]];$&+**(                                                                                                              ",
-"                                                                                                       *~~{######################################{$]];^;@+*(((                                                         ~~!=#)&&>+,*~~~==========..]];$@@+,*((         *~~{=='=>>&@@>++,**~~~^'''''''..];$@+,((     (,~~{^'.'''+++&>>,+,,,*,*,,++>@@@@$@@@>+,(*~~~^...@+&&&&>+,**~~~-........]]]$@>,*((                                                                                                              ",
-"                                                                                                      ,~~~:#######################################%_^;^]$+*(                                                          (~~-==@@&>+*~~~/#======='.]];;$@&+,(((         *~~~=''=&>@@&&+,,*(~~~_''''''']]];$@>,,((    *~~~_=.''.'@&&@>>+,*****(****,,,++>>&>>,,*(~~~)...)>&@@&++,***~~~]........]]$@@+**(                                                                                                               ",
-"                                                                                                    ,@@~~-##########################################_!^;@,((                                                          *~~:#=&&@>,~~~!====#===']]];;@@&+,*((          ~~~/===)>&@@&+,***~~~~:'''''']]];$@&+*((    *~~~!''.'.'^@@@@&>,,**(((((((((***,,,,,,*((~~~!...'+&@@&&+**(~~~~-......]]];;@@+,*((                                                                                                               ",
-"                                                                                                   *@]_~{#####:;;;^;;################################:_>+*(((                                                         ~~{===>@&>~~~_========]]];;$$@>,,*((          *~~!'''=>@@@&>,,*~~~~{:'''=';;]];$$&,,*((   (~~~)'.'''.'$$$@@&,,*((( ( ( ((((*((*****(((~~~'...@@@@@>,,*~~~~~@.....]]]];$$@+,*((                                                                                                                ",
-"                                                                                                    @]~~!####'..];;$$;$;=##############################-{,**((                                                       *~~-=#)>@@+~~{#=======]]];;$@>+,*(((           ~~{=='=)&@@@+,~~~~~~!=''''^^;;;$$@&+,*((   (~~~:.''.''.;$$$$&+,*(((         (((((((((((*~~^...;&@@@>+~~~~~~{;.....$$;;;$$&+,*((                                                                                                                 ",
-"                                                                                              (,,( (+@~~####^^;];];@$@$@$$:##############################!,,*(((                                                     ~~~#==@&&&~~~-======#];];$$@>+,**((           *~~-'='=+_~~~~~~~~~_=''''^$@$$;$$@&,,(((   (~~~!'.''.''';;$$@>,*((               (  (  (~~_.'.._+{~~~~~~~~_^.....$@$$$$$@&>,**(                                                                                                                  ",
-"                                                                                             *>@$,  *&~~###']];.^.;@>>&@@@$$:##############################!~,*(((                                                  ,~~%==#>&@>~~_=======];];$$&>,,((((            ~~{'='=)~~~~{~__^:''''=)>&&$$$@@@>,,*((    *~~!.''.''.''];;@&+,(((                     ~~~=...'~~~~~{,_)$.....;&>&@$$$$@&+,*(((                                                                                                                  ",
-"                                                                                            ,$$];@( (+~{###^].;.^^;$+,,,++&@@)##############################:!,,*(((                                               *~~{#==)&@&{~~#==#====]];$@@+,**((             *~~)='=':^^=^'''''''^)>,+>&@&$@@>+,,(((    (~~~='''.'''.'];;@>,*(                      (~~_....;^^;=........^@,+>&@@@@&&>,,*((                                                                                                                    ",
-"                                                                                          ,@]!%!%$+  ,~!##:;;].]^)]]@,**,,,+&@@%###############################{,**(((                                            (~~~:==#+@@&~~{=======;];;$@+,,(((              ~~{='=''''''''==)-&,,,+>>&&@&@>>,,*(((     *~~^.'.''.'.''];$@+,*(                      *~~;'..'........^^&+,,++>&@@@@&>+,*(((                                                                                                                     ",
-"                                                                                       (* ,$;-]]!;@(  ~!##^.;;;;)-;%],*((**,,+~~~-##############################:-~,*(((                                         (~~{-===)&@@+~~:#======];;$@>,*((               (~~)=''='===^^@+++++++>+>>&>>>+,,**((      (~~_'''''''''..];$@,,((                      ~~_.....';';^$>++,++++>+>>>>>+,,,*(((                                                                                                                      ",
-"                                                                                       >@+*@!!!-!!;+( ~!##)^]$$))--%%$+((((**~~~~-########################=########!~***((                                      *~~~_#===>@@@~~{========]]$$>,**((               *~~=='=''$;$$$@>>++>>+>+>+++,,,,(*((       *~~='.'..'.'.''];$&+*((                    *~~~).....;;;$@@>>>>+>+>>>++++,,,((((        ,(                                                                                                              ",
-"                                                                                     +$);$ *]%!!!%]@, ~~##^;^;@;^-%%!!$*( ((~~{~:###############################=##=#-~,**(((                                  ~~~~!==##@&@@&~~)========];$@>,*(                 *~_='='=';;;$@&&+>++++++,,,,,*(((((       ~~~~''''''.''.'.];$&,,(                   (~~*~~'.....;;;$$@&>+++++,+,,,,,*(*(((       (~*  *                                                                                                            ",
-"                                                                                  (+@;!;;]+(&%]]]^];&((~##:^.]@+$%!%%];&( *~~~~:####''=####################=##=#######=-_~,*((                               *~~~~-====)&@@@_~~#========';$@+,((                ,~~%'=''''^];$@@>+++,,,,,***((((((       (,~~~-.'.'.''.''.'';$&+*((                (,~( *)...'..'';;$$@>+++,,,,,*,(*(((((        *~( *]>( (                                                                                                         ",
-"                                                                                  *@]!!%%!;(*;!%%%];$,(~%##^^^$,&]%%!!!]&~~~~~####/@;;=;###############=###########=#####:!{~,*(((                         *~~~~{:#=#=:@@$@&{~{==#======;;$@+,((             (*~*~~:'='='='$;$@>+,,,**(***(((((         *~~(~:''''''.''.''..]$@+,((              (~~~* {';-.......;;$@&+,,,,***(*((((((        (~~* >.+(((((                                                                                                        ",
-"                                                                                  *&]!!!!%!+(@;)-!%]]&((_##)^^;>+$-!%!!@~~~~!####!&@$$$$$^######################=#####=##=#=/!~,~**(                    (**~~~~%======@@@@@&,~_==========:>@+,(*           *,~~* {:'='='''='_&@+,,(**(((((((          (,~~ ~'''.'.'.''.'.''']$@>,((            (,~~*(~;.)~)........^&@&+,**(*(((((((          ,~~*($.>(**((((                                                                                                       ",
-"                                                                             (***  *$]]!-!-$,*$!!%!]!;,*+)##!@);$]!-_{~~~~{:###:+>@@@@$@@$$:#############=##=###=##=########=##/!~~,~,**(           (**~~~~~~%#=#=#=#@@$$@&+~~-=========='^,,,**((    ((*~~~~~*~:':'=''='=''')~++**((((((           (~~~*(-'=_''.''''.''.'.'.$@&,,*(        (*~~~~*,^.=+~~^.........;{,,,**((((((          (*~~~(_].>******((                                                                                                       ",
-"                                                                            ,+@$@+( &$]!!!!-@ +]-!!^!]@**$:##{~&&_{~~~~~!/####!{+&@@@@>>>>@@$:#####=###=#####=####=##=#=#=####=#=#:-!~~~~,~~,*****,~~~~~~~_-#======#$$$@@@>,~~:=============){~,~~,~,~~~~~~~~!^'=)~='='=''='='=!~~,*((((          *,~~~*{;''~!.'''.'.''.''.''.@>+,(((   (**,~~~~~{^..^,~~~^...........){~~*((((          (,~~~~*^..&**,,***((                                                                                                       ",
-"                                                                           ,$!-;];>(*$;%!]!!;>+$]!;]%%$+*>;###-{~~~~~{^#####/++>&@&&>+,,,,+&@@$=###############=####=#####=#=###=#=#=#::_!{~~~~~~~~~~~{!:#=#=#=#=#=$@$$$@&,*~~:==============':)_{~~~~~~__/:'=='_~!='''='=''''''=){~~~**(***(***~~~~~~_^''^,~_'.'.'''.'.'.'.''.)~~,,*,~~~~~~~~_-'...),,,~~..............^_,~~******(***~~~~~~{@..]>*,,,,,**((                                                                                                       ",
-"                                                                        *>$$%-!!-!;+(+$-!!!-!;$]!!%!%!]$,,$-:####:########:;@+&&&&&>+,*****,+&@@$=######=#=######=###=#=#=##=#=##=###=#=#=#=##::::::#=#=#=========$$$$$&>+***~:#=========='=========='='=='='==&,~_'='='''='='=''''=)_~~~~~~~~~~~~~{!='''^*,~%'''.'.'.''.''.'.'.'!~~~~~~~~_-^'....'+,,++,~'................^!{,~~~~~~~~~~~~!;....,,,+,,,**((                                                                                                        ",
-"                                                                      *+$;%%!!!!!!;$,*&]%%!!%!!]%%!]%%];&(>)]::#########::;$@>&&>>+,***(((**,,+&@$^=#=######=#=##=#=######=###=#=#=#=#=##=#==#=###=#==#===##=#=#=$$$$$@&,,*((~:=============='=='='===='=='='=&>&{~''''='=''''''='''''''^^!_!_!_-:='''''^++>~&'.'''''''.'.'.'.'...'.^:^^'.'....'.^++>>>++~^....................;^-&!&!&!^;......+++++,,,*(((                                                                                                        ",
-"                                                                     (@$;;^;;);;%!;;@ *$!]]];]!]]-!]])]-$,+$.]^:]:^@-$];;$@&>&>>+,,**((( ((((*,,+&@$^#####=#########=#=#=##==##=#=#=#=#==#=##=#==#=#=#=#=#=====;$;;$$@>+,*(((~!========'======'==='='='='==':@@@&>~:='='''='='''''''''''''''.'''''''.'.-+>>>+~''.'...'.'.'.'.'.''..'.......'.'.]@>&&&>>+,~-...................................;+>>&>++,*(((                                                                                                         ",
-"                                                                    ($!-!!!%;$$]!!!$;,(&]%%!!%%!]]%%%!)%]@,@^])^.^;&+@$$@&>>>>+,,,*(((     (((**,,>@@$==###=##=#=#=###=##=###=#=#=##=#=##=#==#=#=#=#=======#=#;;;$$$@&,,((( (({==========='===='==='===='='^$$@@@&_)''''='''='='='''''''''''''''''''''$&@&@&>~=.'''''.'.'.'.'.'.'.'.'.''.'.'..^@@@@@&>+,,*_..................................;&&@&&>+,**((                                                                                                          ",
-"                                                                    (@!!!%!!;+>$$%]]!$ ($!%%!!%]$&$)!-]!%$,&;]))]^;$+>&@&>++,,,**((((        (((**,++&@$;###=######=###=##=#=#=###=#=#=#==#=#=#===#==#=#=#==';;;;$$&>+,*((   (~:========'==='==='==='='==';;$$$@@>+{='=''=''''''''='''''''''''''.'.''@$@@@@>+~)'.'.'.''.''.'.'..'..'....'...'$$$@@@&&+,,**~;................................$$@@@@&+,**((                                                                                                           ",
-"                                                                     *]!]%!!;@+&$%^]!!*(>$)%]%%;$(*^!!]%!]@+$;--])]@+++,+,,,,,**(((            (((**,+&&$$==#=#=#=##=#=#=##=##=#==#=##=#=#=#=#=#=#==#====#']]];;$@@>,*(((    (*-==='========='==='==='='=;;;$$@&>,,~/''=''='='='''''=''''''''''''''=$$$$@@>+,,{''.'''.'.'.'.'.'.'.'.''.'..';;$$$$@@>+,*(*(*_...............................;$$$$@&+,,*((                                                                                                            ",
-"                                                               +,     @]]!!%%]@*$%%!%%@**@]%%!%];, $!!!!-!$&+;--];$>,,,,~,**(((((               (((**,,+>@@$==###=#=##=##=##=#=##=#===#=#=#==#=#==#==#=#']]];;$$@&+,,(*(      (*:====='========'==''===']];;$$&>+***+==''='''''''=''''''''''''.''';;;$$$@>+,**,)'.'.''.'.'.'.'.'..'...'.'';;;$$$@@>,,**((((*^............................];;$$$@&>,*(((                                                                                                             ",
-"                                                            *&;]@*    *$]]%!;]$,>;]]!]$, ,$%]%!]]$(*;%;]!];$,$%]@+,**(**(*(((((                    ((***,+>@@$;=####=##=#=#=#=#==#=##=#=#==#=#==#=#=#='.]]];$$@@&,,**(        **_========'=='==='===''.]];;$@&>,,*(**_''''='''=''''''''''''''''''];;;$$@&+,**(*,'''.'.'''.'.'.'.'.'.'...]]];;$$@&+,**((( ((*+'..........................]];;;$@&>,,*((                                                                                                              ",
-"                                                          *>@]!]$>(    >]$%-]%]@>]^;!]$* *&]^!!;%!+(&]]%%!%]@&$&,*(((((((((((                        ((**,,+&@@$;;#=#=#=#=#=##=##=#==#=#=#==#===#==='.]]];$$$@&+,,(((         ((,@===='==='=='=='='=..]];;$@&>,*((((*,-'=''='''''''''''''''''''..]];$$&>+***(((*&'.''...'.'.'.'.'..'.'.]]];$$@@&+,,*((   (((*>]........................]]];;@@@+,*(((                                                                                                               ",
-"                                                          +]%!!)!$,(   ($%!!!!!];%!%!;@*  ,$-%%]%!$,,$%%!!!]@,*(   ( ( (((                            (((**,,>>@@$$;==###=#=#=#==#=#=#==#=#=#=#=='..]]];;$$@&>+***(((          (*,)=========='====..]];;$@@>,,**( (((*,)''''='='''='''''''''''.]];;$@@>+,*((((((,-'.'''.'.'.'.'..'....]];;$$@&+,**(((      (*,&........................]];$$@&+,*(((                                                                                                                ",
-"                                                         (>]]!!!!;&*    *!-!];%))!];%$+    &;-%]]%]&(,;-!;;@*(                                          (((**,,+>@@$$$]==##=#=###=#=#=#=#==#=''..]]];;$$@@&>,,*(((             ((*+@=='=='='=='''.]]];$$@&+,,(((    (**+@'='''''''''''''''''.]]];;$@@+,*((((  ((*,@''.'.'.'..'.'.'.].]];$$@@>+,**((        ((*,@]....................]];;$$@>,,*(((                                                                                                                 ",
-"                                                     *    *$$;!;!!$,     @%%^]!-%%%];&*    *&]%%%%]$,($%;@+**                                             ((((*,,+>&@@$$;;;''===#==#=#==='..]]]];]$;$$@@&>,,**(((              (((,+&^======''.]]]];;$@@>+,*(((     ((*,+@^'''''''''''''''..]];;$@@>+,**((     ((,+@;'.'.''.'.'...]];;;$@@>+,**((          ((**+&$.................]]];$$@&+,**(((                                                                                                                  ",
-"                                                    ,&+   (>$%!]!-]@*    ,;!%!!!!%%$,       +;!!!%%%$ *$>,(                                                  (((**,,+&&@@$$$;;;]]]]]]]]]]];];;;;$$$@@@>>,,**((((                ((*,+&@$;;]]]];];$$$@@>+,**(((       ((*,+@$^''='''''''..]]]];$$@&>,,((((      (((,+&$^''.''.].]]];;$$@@&+,,(*(((            (*,+&@;............]]]];$$@@>,,**((                                                                                                                    ",
-"                                                  *&]]$*   *@]!];%!;+     @]];!]]]&         *&;]%%!];* *(                                                     ((((**,,++>&@@@$$$$$;;;;;;;$;$$$$@@@@>+,,,**(((                    ((*,+&@@$$$;$;$$$@@>+,,**((          (**,+@@$$=;]'.]]]]]];$$$@&>+,**((         ((*,+&@$$;;;;];;;$$$@@>+,,**((               ((*,+&@@;;]].].]]]]];;$$$@>+,,((((                                                                                                                     ",
-"                                                ,&$]!!-@,( (,$!;]$]]&*    *$)]!%!!$*         ,$]%%%]@*                                                           (((***,,++>>&&@@@@$@$@$@$@@@@&&>+,,,**((((                       ((*,,>@@@@@$@@@>>+,,*(((             ((*,+>@@$$;$;;;;;$$$$@@>+,**(((           ((*,+>@@$$$$$$$$@@&++,,*((((                 (((,,>@@$$;$;;;;;;$$$@@>+,,*(((                                                                                                                       ",
-"                                              ,>$]]!-!!]@*  *&!!!%!%;>*    ,!!%!!!]@*        (&]!]$,,(                                                             (((((***,,,+>&&>>>&&>>>>>++,,,,***(((((                        (((**,,+>>>>>++,,***(((              (((**++&@@@$$$$@$$@@>>,,**(((              (((,,+>&@@@@@&&>++,***((                      (**,+>&@@$$$$$@$@@@++,,**((                                                                                                                         ",
-"                                             (@]!!;]!;]!;>(  ,$]%%!-!$*    *@]!-%%]$+         ,@$>,                                                                   ((((*(*,*,*,,,,,,,,,,,,***(((((((                             (((***,,,,,,***(((                   ((**,,+>>>&&@&&>>+,,***(((                (((*,,,++>+++,,,***(((                       (((**,+>>>&&&@&>>+,,,(((((                                                                                                                          ",
-"                                             +]]!!]!!-;!]$>  (>;]!]]!;@*    *]%]]-];@,         ,*((                                                                     ( ((((((*(*(******(((((((((                                  ((((*(*(((*(((((                     ((((***,+,+,+,,,***((((                    (((*,*,*,**,((((((                           ((***,,+,+,+,,,,**((((                                                                                                                            ",
-"                                             *;$%%-!!!!!!];*  ,$]!%]%!$,     @]!!!%-;&          (                                                                           ((((((((((((((((((                                          ((((((((((                           ((**********(*((((                       ((((((*(*(((((                               ((((((***,(**((((((                                                                                                                              ",
-"                                             (@$]!]]!;]!];-@*((+$%%]!-;&*    ,$-]!]]]$*                                                                                            ( ( ( (                                                 ( (                                 (((((((((((((                            ( ((((((                                      ((((((((((((((                                                                                                                                ",
-"                                             (+$;!!!!;]!!]!]@* *&-!]!!!;+(    &^%%!!!;>(                                                                                                                                                                                         (  (  (                                                                                ( ( ( ( (                                                                                                                                   ",
-"                                              *$;%-!!;;]%^!-;&*(,;!]!!!-@,  ((,$!-!)!!;,                                                                                                                                                                                                                                                                                                                                                                                                                            ",
-"                                              (+;!];%;@$^]!!;$& (>^;%-;!;>*,+>,*]!!;%]&*                                                                                                                                                                             (                                                                                                                                                                                                                                              ",
-"                                               (;!!!!;@@;%!!]-]* ,$]!!;!!$>$;]&($%!;$>,                                           ~-%+   _%-*           ,*          _%-%+                       ,*    !-_                            ,%-!-%-%+                     _%-    +    {-_                                 !%-*  *-%-                                                  {-_                           ,!-_             ,*                    (!%-%%,                                                         ",
-"                                                @]!%%!$>@]!%!!!$,*>;!!!%!]]]!%$+,;$&,((                                            %!!  (!!{           (!*         (!!%!{                      (!*   *!!~                            ~!!!!!!!%                     _%!   ,!    ,{~                                (%!!~  ,!!%                                                  ,{~                           ~%!{            (!*                    ,!!_{{(                                                         ",
-"                                                *;]-!%$@+@]!]]!;+*,@]%;%-;]%-]]@*,,((                                              {!-( _!!  *+___+* *{!%{_,       {%_!%_  ~_+(___,  *_-%-_( *{!%_{, ~%%~___,  (~____,   __~+__(     {!-   {%%* *+___+*   ______,  !!_ ~_!!__(({_* (__*~__, *__+   *____,(        {!!!,  !%!-(  (~____,   *_____*  ~_____  *______(  (~_____, ({{* *__({__+   *+_____(       {!!, *__({__+ *{!%{_, (~____,   __,{_{~_%!~*( *______(  *_____* *+___+*                                ",
-"                                                *@;!!%]$*,]!]]!!$&,+$!!%!]]%!;;@*(                                                 ,!!~~%%* *!!!!!%! _%!%!!~      *%%*!%{  _!%!!!!! *%%!{!!! _!!!!!~ _!%!!!!%* !!!!!!!~ (!%!!!!      %!!   _!% *!!!!!%!   !!!!!!! *!%~(%!!!!! (!!~  !%!!!%%{!!!%{ +%!!!!%{        _%-!{ ,!!!%*  !!!!!!!~ *!!!!!%( +%!!!!_  *%!!!!%{ (!!!!!!!{ (%%~ *%!!!!!%~ ,!!!!!!%~       %!%  *%!!!!!%~_!!%!!~ !!!!!!!~ (!!!!!!!!%!!%* *%!!!!%{ ,!!!!!%~*!!!!!%!                                ",
-"                                                (>$-!!]!, $!!-!-!;&*@%!-!%]%]$>,                                                   *!%_!!+  {%!*~~%%~~!!!~*(      !!{ %!_  !!!~~!!- !!!( (!!~~%!!~*( !!!~*!%%(~!%~~*!!_ ~!!{~**     *%!_  (!-_ {%!*~~%%,  (*~*!!! ~%!~({!%{*, ~!!( ~%!{{_!!!{_!!{(%!{*~{%-       *%%_%_ _%%%%, ~!%~~*!!_ !%_     *!%~       **~~!!+ !!%{{{!!+ ~%!( {!%~~{%!**!!!{{_!!*      *!!!  {!%~~{!!~~!!!~*(~%!~~*!!_ ~!!{~*~{%%_{{   **~~!!{(!!!~~** {!!*~~%%,                               ",
-"                                                 *$;!%;;@>$!]!%!]!],,$;!%];;@,((                                                    !%!!!  *%%~  (%%*~!!*        ,%!( %!{ *!!~  _%_*%!~   %!~*%!*   (!!~  {!! !%_   _%{ _!!(        *%%!%-!%%~*%%~  (!!* *~*~*!!{ _%%  _!%    {!%  _!%( ~!!~ (%%{~%%(  ~%!       {!!{!{*!%{%!~ !!_   _!{ !%{     ~!!~      ,*~*~%!~~!!~  ~!%~ +!%  !!_  ~%%({%!(  _-!       ,!%_  !!_  {!!(~!!*   !%_   _%{ _!!(   ~!%*    ,*~*~!!*~%!~    *%%~  (!!*                               ",
-"                                                  >;%%$]]$]%!]%%-!!$,@]!!;@,*                                                       {%!%*  {%!%%%!!! {%%(       (!!{  -%_ ~%!*  %%{{!!    %!~{%%(   ~%!*  !%_*!%%-%!%!* !!!         {!%%!%%!{ {%%%%%%%% {!!!!!!%, !!!  !-_    _!_  !%_  {%!  ~!!~!%!%%%%!_       !!~{!!_!{{%!**%%%-%%%%* %!-!_*  ~!%%_+(  !!!!%!%!(_%!   {%%  {!_ (!%+  {%%(%!{   !!_       {-!, (!%+  {!% {%%(  *!%%-%!%!* !!!    {%%    !!!!%%%%({%%     {%%%%%%%%                                ",
-"                                                  ,;!!%!!%-!%]!%%!%!@+$;$&,                                                         *%%{   _!!{{{_{{ _!!        {%!{_{!!! _%!  ,!%~!!{   ,!! _%!    _!!   %!~~!!{{{{_{( %!{         !!! _%!   {!!{{{{{{ !!!~~{%%~ %!_ (%!{    -!{ (!!{  !!_  {!! %!!{{{{{~      ,!!(~%%!%(~!%~*!!{{{{_{( +!!!%%* (_%!%%!(*%%{~~!%% %%{   %!_  -!{ *%!~  %!{~!!~  ,!!~       %!!( ~!!~  %!{ _%!   *%!{{{{_{( %!{    !%{   ,!!!*~!%! %%{     _!!{{{{{{                                ",
-"                                                   @]%]]!^!!;$%%]];];@++*(                                                          {%!,   !%{       %%_       *!!%%!!!!- !%_  ~!!(!!,   _!! !!_    !!_  ~!!~{%%       ~!!,        (!!_ {%!,  !!{      *%!*  {!% *!%, ~%!,   *!!* ~%%,  !%+  !%_~!!~            {!_ ~!!%_ ~!!~{!%          ~_%%_   (~!!%~{%!   %%{~!!,  *!%+ *!!, {%%  (%%~{%%   {%%*      (!!!  {!%  (%%, !!_   {!%       ~!!,   (!!,   {!!   %%{(%%+     !!{                                      ",
-"                                                   ,;%!%!]%;&&]!%%!;$>((                                                            !!!    %!{    * ,!!~  (    _%_~*~*%!!(!!~  _!! !!~  *%!{*%%~  ((!!~  {!! {!%    (* +!!*        ,!%{ *%%{  -%{    * {!%   -!! ,!%* _!%(  (~%%( _!!( ,!!~ (%%{*!%*    *      (%-~ ~!%%* ~!!~{%%    (*     (%!{     ~%!~!!{  ,!%~~!%_ (_!%~ ~%!( _!_  *%%*{!%~ *!!%       ~!!{  _!!  *%%*~%%~  (_!-    (* +!!*   ~%!*   !!{  ,!!~~!%{    (%!{    *                                 ",
-"                                                   (@!%%!^!$**>]--;@+*                                                             (!%_    !-%__{__ ~!%{~,*   ~%%*    %%!~!-*  !!_ %!{((_%%(~%!+~~*~%%*  _%_ {%%____!  {!%         {!!,  %%%, !%%__{__ {%%_{{!!_ {!%  _!%*~+ {!-  !!!  {%%  ~!!*~%!!____,      ~%%( ~!!!  ~!%*{%%_____ ,   ({!!~,   *!!! !!%{{_!!~(!%%%!!!%  {%%  %%+  {%! {%%%%_!!_       {%!,  !!+  {!% ~!!+~~*{%%____!  {!%    {%%    !!%{{_%%*~!!!,~_{*!%-__{__                                 ",
-"                                                    >]]!%]]], *@$$&,(                                                              *%%_    _!!!!%!~ _!%!!%    !!{     %%%{!!  *%%* +!%%%%!* _%%!!! ,%!   %-{ *%%%!!!{  -%{         !!!   _%!! _!%!!!!~ +!%%%{%!~ %%_  %%%!!{ !!{ *!!{  _!_  _!%( %%!!!!!       !!_  (!!~  *%!~*%%%!!%{ _%-%!%!!(!%-!!%!{ !!%%!_!%  {%%%~!!!  !!{ ,!%~  !!{ (!!%!~%%~       !!%( ,!!~  !%{ _%%!!! ~!%%!!!{  -%{    !%{    !!%%!{%%  !!%%!%! _!!!!%!~                                 ",
-"                                                    (+!%%!!]@*(,+,(                                                                ~{{,    ({{{{{+  ~{{{{,   ({{,     {{{~{_  *{{~  *{{{~   ~{{{{, ~{_   {{*  ~{{{{_(  {{,         {{_   ~{{, ({{{{{+  ({{{~*{{* {{+  {{{{{* {{, ({{,  {{+  ~{{( *{{{{{,       {{,   {_   *{{~ ~{{{{_( {{{{{{~ ({{{{{{*  *{{{({{_ *    *!!+  ~_~ *{{*  {{+ *    {%%*       {{{( *{{*  {{+ ~{{{_~  ~{{{{_(  {{,    {{,    *{{{({{_  ({{{{{* ({{{{{+                                  ",
-"                                                      $-!]!!$, ((                                                                                                                                                                                                                                                                                                 %%-!%%%!*               *%%-%%!-!                                                                                                                 ",
-"                                                      +]%];;@*                                                                                                                                                                                                                                                                                                    !!%%!%!~                *!!%%!!!(                                                                                                                 ",
-"                                                       ^!!;>*(                                                                                                                                                                                                                                                                                                    (*~*~*                   **~*~(                                                                                                                   ",
-"                                                       @;>,*                                                                                                                                                                                                                                                                                                                                                                                                                                                        ",
-"                                                       (,(                                                                                                                                                                                                                                                                                                                                                                                                                                                          ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ",
-"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    "};
diff --git a/lisp/queue-m.el b/lisp/queue-m.el
deleted file mode 100644 (file)
index 3a8be04..0000000
+++ /dev/null
@@ -1,141 +0,0 @@
-;;;; $Id: queue-m.el,v 1.1 1999/02/13 20:29:15 daiki Exp $
-;;;; This file implements a simple FIFO queue using macros.
-
-;; Copyright (C) 1991-1995 Free Software Foundation
-
-;; Author: Inge Wallin <inge@lysator.liu.se>
-;; Maintainer: elib-maintainers@lysator.liu.se
-;; Created: before 12 May 1991
-;; Keywords: extensions, lisp
-
-;;;;
-;;;; This file is part of the GNU Emacs lisp library, Elib.
-;;;;
-;;;; GNU Elib 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 Elib 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 Elib; see the file COPYING.  If not, write to
-;;;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;;;; Boston, MA 02111-1307, USA
-;;;;
-;;;; Author: Inge Wallin
-;;;; 
-
-;;; Commentary:
-
-;;; The queue is implemented as a two cons cell list, the first 
-;;; containing the tag 'QUEUE.  The car of the the second cons
-;;; cell points at the first element of the queue and the cdr points
-;;; at the last.  All entries and removals are done using destructive
-;;; functions.
-;;;
-;;; This file implements the short functions as macros for speed in 
-;;; compiled code.
-;;;
-
-
-;;; Code:
-
-;; Provide the function version and remove the macro version
-(provide 'queue-m)
-(setq features (delq 'queue-f features))
-
-
-;;; ================================================================
-
-
-(defmacro queue-create ()
-  "Create an empty fifo queue."
-  (` (cons 'QUEUE (cons nil nil))))
-
-
-(defmacro queue-p (queue)
-  "Return t if QUEUE is a queue, otherwise return nil."
-  (` (eq (car-safe (, queue)) 'QUEUE)))
-
-
-(defun queue-enqueue (queue element)
-  "Enter an element into a queue.
-Args: QUEUE ELEMENT"
-  (let ((elementcell (cons element nil)))
-    (if (null (car (cdr queue)))
-       ;; QUEUE is empty
-       (setcar (cdr queue)
-               (setcdr (cdr queue) 
-                       elementcell))
-      (setcdr (cdr (cdr queue))
-             elementcell)
-      (setcdr (cdr queue)
-             elementcell))))
-
-
-(defun queue-dequeue (queue)
-  "Remove the first element of QUEUE and return it.
-If QUEUE is empty, return nil and do nothing."
-  (if (not (null (car (cdr queue))))
-      (prog1
-         (car (car (cdr queue)))
-       (setcar (cdr queue)
-               (cdr (car (cdr queue))))
-       (if (null (car (cdr queue)))
-           (setcdr (cdr queue) nil)))))
-
-
-(defmacro queue-empty (queue)
-  "Return t if QUEUE is empty, otherwise return nil."
-  (` (null (car (cdr (, queue))))))
-
-
-(defmacro queue-first (queue)
-  "Return the first element of QUEUE or nil if it is empty.
-The element is not removed."
-  (` (car-safe (car (cdr (, queue))))))
-
-
-(defmacro queue-nth (queue n)
-  "Return the nth element of a queue, but don't remove it.
-Args: QUEUE N
-If the length of the queue is less than N, return nil.
-
-The oldest element (the first one) has number 0."
-  (` (nth (, n) (car (cdr (, queue))))))
-
-
-(defmacro queue-last (queue)
-  "Return the last element of QUEUE or nil if it is empty."
-  (` (car-safe (cdr (cdr (, queue))))))
-
-
-(defmacro queue-all (queue)
-  "Return a list of all elements of QUEUE or nil if it is empty.
-The oldest element in the queue is the first in the list."
-  (` (car (cdr (, queue)))))
-
-
-(defun queue-copy (queue)
-  "Return a copy of QUEUE.  All entries in QUEUE are also copied."
-  (let* ((first  (copy-sequence (car (cdr queue))))
-        (last first))
-    (while (cdr last)
-      (setq last (cdr last)))
-    (cons 'QUEUE (cons first last))))
-
-
-(defmacro queue-length (queue)
-  "Return the number of elements in QUEUE."
-  (` (length (car (cdr (, queue))))))
-
-
-(defmacro queue-clear (queue)
-  "Remove all elements from QUEUE."
-  (` (setcdr (, queue) (cons nil nil))))
-
-;;; queue-m.el ends here
diff --git a/sample.dot.emacs.in b/sample.dot.emacs.in
deleted file mode 100644 (file)
index 991cc7e..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-;;; -*- emacs-lisp -*-
-
-(setq liece-intl-catalogue-directory "@pkgdatadir@/po"
-      liece-window-style-directory "@pkgdatadir@/styles"
-      liece-window-style-directory "@pkgdatadir@/icons")