####################################################################
#        Desktop Mascot Program for UNIX                           #
#      macopix : Mascot Constructive Pilot for X                   #
#						     ver 1.2.1     #
#                      Document in English : README                #
#                                                                  #
#                             2004.09.29  Kurumi Chimari           #
#                             chimari@kurumi.sakura.ne.jp          #
#                             http://kurumi.sakura.ne.jp/~chimari/ #
####################################################################

=============================================================
                  -- Table of Contents --
  - About this program
  - Environment
  - Install
  - How to Start
  - Creating files, necessary files
  - Mascots
  - Launcher Menu
  - Biff function
  - Time Signal
  - Socket Message
  - Duet Animation
  - Nokkari-Chara Support
  - To Do
  - Copyright
=============================================================


**About this program
  This is a desktop mascot program running under UNIX / X window
  systems.
  This program could be an evolved one from "ActX" (Activate X
  window system).

  Currently, you can make following types of mascots using MaCoPiX.
         - Focus follower (Window sitters : likely ActX)
         - Fix style      (Desktop wappen?)
  Furthermore, you can select with or without a digital clock for
  each types of mascots. So, MaCoPiX can be used as a sort of desktop clock
  applications. (But the clock function could be still poor.)
  And, the biff function is also avairable for POP/APOP/UNIX local
  spool/qmail Maildir environments.
  At once, users can create mascots and change their settings from GUI
  instead of editing mascot files directly.
  
  Please pay attention that the mascot file of MaCoPiX has no
  compatibility with that of ActX.


**Environment
  Basically, MaCoPiX needs UNIX / X window system.
  Furthermore, we needs
     - Gtk+        > ver1.2.0   (or Gtk+ > ver2.0.0)
     - gdk-pixbuf  > ver0.7.0   (or Gtk+ > ver2.0.0)
     - libpng .                 (or Gtk+ > ver2.0.0)
     - gettext     > ver0.10   
     
  MaCoPiX can be load all image types supported by gdk-pixbuf.
  But, you need libraries to support each types of images
  (ex. libtiff, libpng) in order to load each types of images. 
  The official MaCoPiX mascots are served in PNG files now.


**Install
  1. extract source archive, change directory to the created one.
  2. ./configure  (or ./configure --with-gtk2  for Gtk+2.0)
  3. make
  4. su
  5. make install
   (If you need to internationalize your menu message (using gettext),
    you have to do "make install" as a root.)

  The configure script makes Makefiles for Gtk+1.2 compiling.
  If you want to make with Gtk+2.x, you should run "./configure
  --with-gtk2" .


**How to start
  In anyway, you have to download one mascot file at least (at present).
  Without mascot files, you cannot do anything with MaCoPiX.

  If you have a mascot file (mascot.mcpx), please run the following command.
         % macopix mascot.mcpx
  After starting the application, you can change any settings from the
  pop-up GUI.

  Actually, each downloadable mascots archived with its menu.
  So you can install a series of mascots with a menu, following these
  sequences.
    - Download a mascot archive file (macopix-mascot-hogehoge-ja.tar.gz)
      from the official MaCoPiX web page.
    - Extracr the archive, change directory.
        % gzip -dc macopix-mascot-hogehoge-ja.tar.gz | tar xvf -
        % cd macopix-mascot-hogehoge-ja/
    - Install with its menu into User's directory
        % macopix --install-user-menu hogehoge.menu
    - run MaCoPiX
        % macopix
    - If you don't have any default menu in you resource, the launcher
       menu launcher will popup. And you can select your starting menu
       in it.

  And you can see the command line options, using -h (or --help) option.



**Creating files, necessary files
  MaCoPiX needs (and creates) the following files...
    a. Mascot file (*.mcpx)
            And a mascot includes images (and sound files, if necessary).
    b. Resource file (* .rc)
    c. Launcher Menu file (*.menu)

  Basically, these files are copied or created in the "User Directory"
  (HOME$/.macopix/ for each users).

  About a., please see the following item as "Mascots".

  b., the resource file is the file described the parameters kept all
  times regardless of changing mascots.
  If you do not appoint any files for the resource file (you can
  appoint the resource file which you want to load with "-r" option),
  the default one (HOME$/.macopix/macopix.rc) should be loaded.

  c. is the Launcher menu in which your favorite mascots are registered.
  Please see the following item "Launcher menu".
           


**Mascots
  The mascot of MaCoPiX is made up with 
     - a mascot file (*.mcpx)
     - image files   (You can use any image types loaded by
                      gdk-pixbuf)
  likely in the case of ActX.
  Of course, you can use shaped mascots, if you appoint the shaped
  images with alpha values (ex. png, gif, xpm).

  At the starting time of the application, the mascot file should be
  appointed as "% mascot mascot.mcpx".
  In such case, MaCoPiX automatically searches the mascot file
  according to the following priority.
      1. absolute path or relative path from the current directory
      2. User Directory ($HOME/.macopixrc/)
      3. Common Directory (/usr/share/macopix/ ?)
  User directory(2) should be automatically created at the first time
  for using MaCoPiX.
  Distribution Directory(3) will be determined by the installer 
  at the time of installation.

  Image files should be appointed in the mascot file.
  These files are also searched according to the following priority.
      1. same directory where the mascot file exists
      2. User Pixmap Directory ($HOME/.macopixrc/pixmap/)
      3. Common Pixmap Directory (/usr/share/macopix/pixmap/ ?)

  And, if you slected automatic install (option -a; saved in the
  resource file), mascot files are automatically installed at the time
  of loading.
  Starting with the -O (--over-write) option, the priority of loading
  will change to 1 > 3 > 2 in order to overwrite mascots in user 
  directory with ones in the distribution directory installed by
  RPM package etc.

  You should take care of tha locale of your system to use mascots.
  Mascot files should be written in one of the locale (in Gtk+1.2).
  If you use the mascot in the different locale environment, balloons
  and menus could not be presented correctly.
  The autohr of this application will release his mascots in "ja"
  (japanese-euc) locale. 
  If you interested in them, please transrate them for your environment.
  Furthermore, if there is a gettext message file (in po/ directory of
  the source tree) for your environment, you can change the dialog
  messages of GUI into your language.
  When you translated these files, please contact with the author.



**Launcher menu
  In the field "Mascot Launcher" of the popup menu, you can register
  your favorite mascot for easy changing.
  To use this function, you have to prepare the launcher menu file (*.menu).
  You can load and create it from the popup menu in every time.
  And you can also edit it in the configuration dialog.

  It is difference from the ActX one that the menu file has two levels
  as "Category" -> "Mascot".
  All "Mascots" have to be included in "Categories".

  Each resource file can appoint one menu file as its default menu file.
  If no menu files are apointed at the starting, this default menu
  should be loaded.
  If no mascot files are apointed at that time, a mascot selected at
  random from the menu file should be loaded.
  Furthermore, if you don't the appointment of the default menu in your
  resource file, the mneu selection dialog will appear in startup.
  

  If you apoint a menu file at the starting time, please use "-m" (or
  "--menu") option.
 

**Biff function
  MaCoPiX can be a mail checker for the following types of the mail 
  environment.
     1. local spool (UNIX mbox : /var/spool/mail/$USER etc)
     2. POP3
     3. POP3 (APOP auth)
     4. qmail (Maildir)
     5. MH + Procmail
  After preparing proper configuration, please start MaCoPiX with "-b"
  (or "--biff") ooption, or please check "Biff Check" on the popup
  menu.
  If you use the biff checker in POP, your password are saved in the
  resource file with plain text.
  So, please be careful for the management of the resource files.
  (Basically, the resource files can be seen only by yourself.)

  - for POP3/APOP
    In "Server information" of GUI, input "Address", "UserID", "Password",
    "POP3 Port No."(You should not change it in usual cases.).
    You don't need to edit "File" entry.

  - for qmail (Maildir)
    In "File" entry of "Server information" of GUI, input the
    Maildir directory in which newly arrived mails are stocked
    ( $HOME/Maildir/new in the most of cases ).

  - MH + Procmail
    In "File" entry of "Server information" of GUI, input the
    full-path of log file for procmail, "procmail.log". (In the most
    of cases, this file are appointed in "LGFILE=" entry of
    $HOME/.procmailrc )
    The mail directory for MH is automatically seached as the
    following order, (1) "MAILDIR" entry in $HOME/.procmailrc,
    (2) $HOME/Mail .
    If you want to poll to the mail server periodically via fetchmail
    or something else, you should input command for polling into
    "Polling" entry in "Operating Information of Biff GUI.



**Time signal function
  MaCoPix has a time signal function, which do some actions (external
  command, mascot changing ... etc.) every hour  on the hour (00 minute).
  After preparing proper configuration, please start MaCoPiX with "-s"
  (or "--signal") ooption, or please check "Time Signal" on the popup
  menu.
  The configurations for this function are saved in the resource file.
  "Mascot Random Change" cannot work, if you do not appoint any menu 
  files.
     

**Socket Message
  Now mascots can speak any messages appointed in command line externaly.
   1. Start MaCoPiX with --sockmsg option.
      You can start only one mascot at the same time.
   2. From terminal command line, type
       macopix --message "Hello!"
      You can see this message on your mascot balloon.
      You should change character code of the message following your locale.


**Duet Animation
   Using socket communication, some animation can be connected between
   two mascots.
   If you start Sachiko-sama and Yumi at the same time, and click one
   of them....
    - Each mascots makes /tmp/macopix-(userID)/macopix-(mascot file) temporal
      file. If MaCoPiX was stopped abnormaly these files can remain,
      but they will not affect the next time.
    - If the two or more same mascot start, the later will use this
      temporal pipe file.
      But, if the former is stopped or changed, this pipe should be closed.



**Nokkari-chara Support
  Now data conversion from/to Nokkari-Chara (an Window sitter
  application for MS Windows) is supported.
  But it is very experimental one and maybe for mascots developpers.
  Please read NKR.README.jp in this archive (sorry, only in Japanese).



**Difference between Gtk+2.x / Gtk+-1.2 version
  Now, there are some diffrence points between Gtk+2.x and Gtk+1.2
  version of MaCoPiX including anti-alias effects in their font display.
    - Character Code
       In Gtk+1.2, you should select same locale as the character code
       in  mascots/menus files for your environment.
       In the case of Gtk+2.x version, the character code of mascot
       file should be understood, according to the following priority.
          1. [General] code=xxxx  setting in .mcpx file
          2. current locale environment
          3. MaCoPiX default (EUC-JP)
       If MaCoPiX cannot understand the character code, you should
       find "Invalid Character Code" display in Gtk+2.x version.
    - Font selection
       Fonts to be selected is difference in each Gtk+ versions.
       If you find any allert, you should select suitable fonts for
       your systems, using the font selection dialog of MaCoPiX.
    - nkf output option as Biff filter
       If you using any MIME decoding filters for From/Subject display
       in Biff function, you should change the output option of the
       filter into UTF-8 instead of your locale coding under Gtk+2.x
       environment. (ex. For nkf, you should appoint "nkf -wum" instead
       of "nkf -eum".)
  Of course, Gtk+2.x version requires much memory area. compared with
  Gtk+1.2 version.


**To Do
  - Enhancement of the clock & alarm  function
         .............


**Copyright
   The code in this distribution is Copyright 2002-2004 by Kurumi Chimari.

   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.

  
