-*- mode: text -*-
-This document is for Riece developers. The information necessary for
-Riece development is explained (i.e. its development process and the
-internals.)
+This document is for Riece developers or those who are interested in
+becoming a developer.
-* Development process
-
-** Bug report
+The main topics explained here are the development process and the
+internals.
-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.
+* Development process
-** Debug output
+** Reporting bugs
-If the riece-debug variable is set to t, Riece begins to collect
-debugging information in *Debug* buffer. Interactions with IRC
-servers are stored in " *IRC*<IRC-server-name>" buffers. Note that
-these buffer names start with a whitespace character (" ").
+If you find a bug, please file it at
+https://savannah.nongnu.org/bugs/?group=riece
-** Joining the development
+** Contributing code
-To join the development, send us a patch or an add-on.
+If you write an add-on or a patch, send it to us. If it is useful, we
+may incorporate it into the development source code.
-** CVS
+** Getting the development source code
-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. The instruction to access the CVS
-server is below.
+The development of Riece uses Git. The latest development version is
+available from git.sv.gnu.org.
-(1) logging in to anonymous CVS server
+NOTE: If you are a beginning user, who just wants to try the "newer"
+version, stick on the latest released version. Pointless complaints
+about development versions are unwelcome to us.
- cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/root login
- CVS password: [CR] # NULL string
+The instructions to obtain and build the source from Git are below.
-(2) checkout modules
+(1) checkout modules
- cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/root checkout riece
+ git clone git://git.sv.gnu.org/riece.git
-(3) generate configure script
+(2) generate configure script
autoreconf -f -i -v
-You will need newer version of GNU Automake.
+Note that "autoreconf" is not "autoconf".
* Internals
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>-uninstall (optional)
+ Called on uninstallation 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.