Renamed.
[riece] / doc / HACKING
index e367c61..882d835 100644 (file)
@@ -1,25 +1,23 @@
 -*- mode: text -*-
 
 This document is for Riece developers.  The information necessary for
-Riece development is explaind (i.e. its development process and the
+Riece development is explained (i.e. its development process and the
 internals.)
 
 * Development process
 
 ** Bug report
 
-You can create a bug report by clicking the "bug" button in a toolbar,
-or M-x riece-submit-bug-report.  It is necessary to set riece-debug to
-t before preparing a bug report.
+You can create a template of a bug report by clicking the "bug" button
+in a toolbar, or M-x riece-submit-bug-report.  It is necessary to set
+riece-debug to t before preparing a bug report.
 
 ** Debug output
 
 If the riece-debug variable is set to t, Riece begins to collect
-debugging information in *Debug* buffer.
-
-And also, interactions with IRC servers are stored in
-" *IRC*<IRC-server-name>" buffers.  Note that the buffer names start
-with a whitespace character (" ").
+debugging information in *Debug* buffer.  Interactions with IRC
+servers are stored in " *IRC*<IRC-server-name>" buffers.  Note that
+these buffers have names starting with a whitespace character (" ").
 
 ** Joining the development
 
@@ -28,9 +26,9 @@ To join the development, send us a patch or an add-on.
 ** CVS
 
 Development of Riece uses CVS.  Latest developing version is available
-at CVS.  Please note that the newest development version from CVS may
-_not_ be reliable.  You can only use it at your own risk.  We may
-ignore bug reports for that version.
+at CVS.  Please note that the version from CVS may NOT be reliable,
+and you can only use it at your own risk.  We may ignore bug reports
+for that version.  The instruction to access the CVS server is below.
 
 (1) logging in to anonymous CVS server
 
@@ -51,8 +49,8 @@ You will need newer version of GNU Automake.
 
 ** Modules
 
-Riece consists of elisp modules listed below, ordered by the number of
-dependencies.
+Riece consists of many elisp modules listed below, ordered by the
+number of dependencies they have.
 
 - riece-globals
   This module defines global variables.
@@ -64,12 +62,11 @@ dependencies.
   This module defines the version of Riece.
 
 - riece-coding
-  This module provides functions which support code conversions.
+  This module provides functions which support character code conversions.
 
 - riece-complete
-
-  This module provides functions which support tab completion in a
-  mini buffer.
+  This module provides functions which support tab completion feature
+  in a mini buffer.
 
 - riece-addon
   This module manages add-ons.
@@ -91,7 +88,8 @@ dependencies.
   This module provides miscellaneous functions.
 
 - riece-signal
-  This module manages routing display signals.
+  This module defines the riece-signal object type used to manage
+  display events.
 
 - riece-layout
   This module manages window layouts.
@@ -103,49 +101,49 @@ dependencies.
   This module manages connections to IRC servers.
 
 - riece-naming
-  This module is a so called Mediator pattern which knows relations of
-  channels and users.
+  This module is a so called the Mediator design pattern.  It knows
+  relationships of riece-channel/riece-user objects.
 
 - riece-message
   This module defines the riece-message object type.
 
 - riece-filter
-  This module defines the process filter.
+  This module only provides the process filter function.
 
 - riece-handle
-  This module provides handler definitions for IRC messages.  These
-  handlers are called from riece-filter.
+  This module provides handler functions for IRC messages.  These
+  functions are called from riece-filter.
 
 - riece-000
-  This module provides handler definitions for numeric replies whose
+  This module provides handler functions for numeric replies whose
   response codes are in 000 to 100 range.  These handlers are called
   from riece-filter.
 
 - riece-200
-  This module provides handler definitions for numeric replies whose
+  This module provides handler functions for numeric replies whose
   response codes are in 200 to 300 range.  These handlers are called
   from riece-filter.
 
 - riece-300
-  This module provides handler definitions for numeric replies whose
+  This module provides handler functions for numeric replies whose
   response codes are in 300 to 400 range.  These handlers are called
   from riece-filter.
 
 - riece-400
-  This module provides handler definitions for numeric replies whose
+  This module provides handler functions for numeric replies whose
   response codes are in 400 to 500 range.  These handlers are called
   from riece-filter.
 
 - riece-500
-  This module provides handler definitions for numeric replies whose
+  This module provides handler functions for numeric replies whose
   response codes are in 500 to 600 range.  These handlers are called
   from riece-filter.
 
 - riece-commands
-  This module provides commands.
+  This module provides user commands.
 
 - riece-irc
-  This module sets up process-filter for the IRC protocol.
+  This module provides the binding for the IRC protocol.
 
 - riece
   This module is the entry point of M-x riece.
@@ -165,7 +163,7 @@ needed to distinguish process object of each connection by its name.
 
 It can be known by:
 
-(1) checking the value of riece-overrinding-server-name,
+(1) checking the value of riece-overriding-server-name,
 
 (2) checking the value of riece-server-name,
     (If the variable riece-server-name is local to the current buffer,
@@ -307,7 +305,7 @@ riece-connect-signal.
   the fourth argument of riece-connect-signal.
 
   If the third argument filter-function is specified, the
-  slot-function is called conditionaly.  The filter-function gets the
+  slot-function is called conditionally.  The filter-function gets the
   signal object and returns nil or t.  If the return value is nil, the
   slot-function is not called.
 
@@ -386,28 +384,26 @@ Below is a list of signal names reserved.
 Elisp modules that satisfy add-on spec should provide the following
 functions.
 
-- <module-name>-requires
-  Return a list of names of other add-ons this add-on depends. (optional)
+- <module-name>-requires (optional)
+  Return a list of names of other add-ons this add-on depends.
 
 - <module-name>-insinuate
   Called on initialization of this module.
 
+- <module-name>-enable (optional)
+  Called when this add-on is enabled.
+
+- <module-name>-disable (optional)
+  Called when this add-on is disabled.
+
 It is recommended to set short explanation of the add-on to
 <module-name>-description variable which is displayed on add-on
 listing shown up by C-c ^ (M-x riece-command-list-addons).
 
-Add-ons that support enabling/disabling set the current status to
-<module-name>-enabled variable.  If this variable is nil, the add-on
-is regarded as currently disabled.  In addition, the add-on must
-provide the following two functions.
-
-- <module-name>-enable
-  Called to enable this add-on.
-
-- <module-name>-disable
-  Called to disable this add-on.
+To see the add-on's enabled/disabled status, check riece-addon-enabled
+property set on <module-name> symbol.
 
-Riece does the following process when startup.
+Riece does the following procedure on add-ons when startup.
 
 (1) Load add-ons listed in the riece-addons variable.