2003-11-03  Ludovic Courtes  <ludo@laas.fr>

	* guile/sorting.scm (sort-list): New command.

	* mutt.scm (scheme): Use split-argument-string (i.e. the argument
	now has to be quoted).

	* guile-bindings.c (s_smutt_parse_rc_line): New function.
	(smutt_cmd_parse_rc_line): New function.

	* extension.c (cmd_parse_rc_line): New function.

2003-10-31  Ludovic Courtes  <ludo@laas.fr>

	* guile-bindings.c (smutt_address_group_ref): New function.
	(smutt_address_group_set): New function.

	* mutt.scm (register-scheme-module!): New procedure.
	(mutt-module): Add support for a #:documentation keyword.

	* guile/make-doc.scm: New file.

2003-10-30  Ludovic Courtes  <ludo@laas.fr>

	* guile/helpers/misc.scm (strip-non-printable-chars): New function.

	* mutt.scm (define-aspect): Fixed so that it works with
	documentation-less functions too.

	* guile/helpers/misc.scm (command-output): New function.
	(pipe-file-through-command): New function.

	* guile/spam.scm: New module.

2003-10-28  Ludovic Courtes  <ludo@laas.fr>

	* mutt.h (M_TOKEN_KEEP_BACKSLASHES): New flag.
	(M_TOKEN_KEEP_QUOTES): New flag.

	* init.c (mutt_extract_token): Handle the M_TOKEN_KEEP* flags.
	(mutt_parse_rc_line): Don't weed backslashes/quotes when parsing
	the argument string.  This fixes a number of parsing bugs such as
	something like ':count ~f\ bob' which used to be broken.

	* mutt.scm (uptime): New command.

	* guile/helpers/misc.scm (full-address): New function.

	* guile/attribution.scm: New module.

	* guile-bindings.c (smutt_builtin_append_message_attribution): New
	function.
	(smutt_cmd_append_message_attribution): New function.

2003-10-27  Ludovic Courtes  <ludo@laas.fr>

	* guile-bindings.c (smutt_create_address): Handle calls without
	any argument.

	* guile/ping.scm (ping-reply): Include reply body.

	* guile-bindings.c (smutt_builtin_include_forward_body): New
	function.
	(s_smutt_builtin_include_reply_body): New function.

	* extension.c (cmd_include_reply_body): New function.
	(cmd_include_forward_body): New function.

	* guile-bindings.c (smutt_cmd_generate_forward_body): New function.
	(smutt_cmd_generate_reply_body): New function.
	(smutt_builtin_generate_reply_body): New function.

	* Makefile.am (scmdata_DATA): New variable.

	* guile-bindings.c (mutt_init_guile_extension): Get the global
	mutt.scm file from PKGDATADIR/guile rather than SYSCONFDIR.

2003-10-24  Ludovic Courtes  <ludo@laas.fr>

	* guile/mua-stats.scm (output-mua-stats): Pretty output.

	* guile/sorting.scm (auto-sort-initial-delay): New option.

2003-10-23  Ludovic Courtes  <ludo@laas.fr>

	* mutt.scm (scheme): Display the returned value.

	* guile/helpers/misc.scm: New file.
	* guile/helpers/send.scm: New file.
	* guile/ping.scm: New file.
	* guile/mua-stats.scm: New file.

2003-10-22  Ludovic Courtes  <ludo@laas.fr>

	* mutt.scm (boolean-option-setter): Verify the hint.
	(register-option!): This is a macro now.  For each new option, it
	records the module in which this option was defined.
	(set-option): Lookup and modify bindings in the option's module.
	(mutt-module): New macro.
	(reload-defaults): New function.

2003-10-21  Ludovic Courtes  <ludo@laas.fr>

	* mutt.scm (help): Added support for Scheme options documentation.

	* guile-bindings.c (mutt_init_guile_extension):
	Define %mutt-sysconfig-directory.

	* mutt.scm (register-function!): New procedure.
	(register-option!): New procedure.

	* guile-bindings.c (s_smutt_body_parameters_set): Cleaned up so
	that it use mutt_free_parameter () and mutt_set_parameter () and
	updates the `encoding' field when needed.
	(smutt_cmd_default_from_address): Return a copy of the address
	rather than the address itself.

2003-10-20  Ludovic Courtes  <ludo@laas.fr>

	* mutt.scm (address-personal): New accessor.
	(address-mailbox): New accessor.
	(aliases): New accessor (global alias list).

	* guile-bindings.c (run_idle_hook): New function; runs a Guile hook
	instead of just calling a procedure.
	
	* mutt.scm (define-aspect): New macro.
	(define-with-setter): New macro, submitted by Allister MacLeod 
	<amacleod@mv3d.com>.
	(error-format): New macro, submitted by Allister.

2003-10-17  Ludovic Courtes  <ludo@laas.fr>

	* extension.c (extension_idle_hook): New variable.
	* keymap.c (km_dokey): Call extension_idle_hook () when idle.
	* guile-bindings.c (smutt_idle_hook): New function.
	
2003-10-16  Ludovic Courtes  <ludo@laas.fr>

	* guile-bindings.c (call_scheme_procedure): New function.
	  (scheme_exception_handler): New function.
	  (SCM_CALL_PROCEDURE): New macro that performs safe Scheme procedure
	  calls.
	* init.c (mutt_init): Fixed the configuration file loading scheme.
	

