c528ffae36dad4fc7d8403c29d8d1f7059677456
[elisp/riece.git] / lisp / ChangeLog
1 2003-06-23  Daiki Ueno  <ueno@unixuser.org>
2
3         * riece-300.el: Rewrite using riece-decode-identity.
4
5         * riece-identity.el (riece-completing-read-identity): Signal an
6         error when the encoded channel name is not matched with
7         riece-channel-regexp.
8
9         * riece-globals.el (riece-channel-regexp): Moved from
10         riece-channel.el.
11         (riece-user-regexp): Moved form riece-user.el.
12
13 2003-06-23  Daiki Ueno  <ueno@unixuser.org>
14
15         * riece-handle.el (riece-handle-join-message): Don't call
16         riece-switch-to-channel.
17         (riece-handle-part-message): Don't decode message if it is empty.
18         (riece-handle-kick-message): Ditto.
19         (riece-handle-quit-message): Ditto.
20         (riece-handle-kill-message): Ditto.
21
22         * riece-commands.el (riece-command-part): Show the current channel
23         as default candidate.
24
25         * riece-identity.el (riece-completing-read-identity): Accept
26         optional 5th argument `initial'.
27
28         * riece-unread.el (riece-unread-update-channel-list-buffer):
29         Simplified.
30
31         * riece-filter.el (riece-sentinel): Don't bind
32         riece-inhibit-update-buffers.
33
34         * riece-display.el (riece-redisplay-buffer): New variable.
35         (riece-inhibit-update-buffers): Abolish.
36         (riece-update-channel-list-buffer): Memorize
37         encoded identity as text property on each line. 
38
39         * riece.el (riece-channel-list-mode): Make riece-redisplay-buffer
40         buffer local.
41         (riece-user-list-mode): Ditto.
42
43 2003-06-22  Daiki Ueno  <ueno@unixuser.org>
44
45         * riece-display.el (riece-inhibit-update-buffers): New variable.
46         * riece-filter.el (riece-sentinel): Bind
47         riece-inhibit-update-buffers while removing channels from
48         riece-current-channels.
49         * riece-unread.el (riece-unread-display-message-function): Don't
50         update channel list buffer when riece-inhibit-update-buffers is
51         non-nil.
52         (riece-unread-channel-switch-hook): Ditto.
53         (riece-unread-insinuate): Add
54         riece-unread-update-channel-list-buffer to
55         riece-update-buffer-functions.
56
57         * riece-commands.el (riece-command-switch-to-channel): Call
58         riece-redisplay-buffers instead of riece-command-configure-windows.
59
60         * riece-identity.el (riece-completing-read-identity): Remove nil
61         from riece-current-channels before converting it to an alist.
62
63 2003-06-12  Daiki Ueno  <ueno@unixuser.org>
64
65         * riece-naming.el (riece-naming-assert-join): Call
66         riece-update-buffers.
67         (riece-naming-assert-part): Ditto.
68
69         * riece-filter.el (riece-sentinel): Don't bind
70         riece-overriding-server-name; use riece-part-channel.
71
72         * riece-display.el (riece-switch-to-channel): Don't set
73         riece-channel-buffer.
74         (riece-update-buffers): Set riece-channel-buffer here.
75
76         * riece-commands.el (riece-command-switch-to-channel-by-number): Fixed.
77         (riece-command-close-server): Fixed completion bug.
78         (riece-command-universal-server-name-argument): Ditto.
79
80 2003-06-12  Daiki Ueno  <ueno@unixuser.org>
81
82         * riece-doctor.el: Don't require 'doctor; autoload doctor-mode and
83         doctor-read-print.
84
85         * riece-handle.el (riece-handle-nick-message): Use
86         riece-decode-identity to decode user.
87         (riece-handle-join-message): Ditto.
88         (riece-handle-part-message): Ditto.
89         (riece-handle-kick-message): Ditto.
90         (riece-handle-quit-message): Ditto.
91         (riece-handle-kill-message): Ditto.
92         (riece-handle-invite-message): Ditto.
93         (riece-handle-topic-message): Ditto.
94         (riece-handle-mode-message): Ditto.
95
96 2003-06-12  Daiki Ueno  <ueno@unixuser.org>
97
98         * riece-message.el (riece-own-channel-message): Abolish.
99
100         * riece-commands.el (riece-command-send-message): Don't use
101         riece-own-channel-message.
102
103         * riece-doctor.el (riece-doctor-reply): Don't use
104         riece-own-channel-message.
105         (riece-doctor-hello-regexp): New user option.
106         (riece-doctor-bye-regexp): New user option.
107
108 2003-06-11  Daiki Ueno  <ueno@unixuser.org>
109
110         * riece-identity.el (riece-identity-member-no-server): Abolish.
111
112         * riece-doctor.el (riece-doctor-patients): Make it global variable.
113         (riece-doctor-after-privmsg-hook): Use riece-identity-member
114         instead of riece-identity-member-no-server.
115
116 2003-06-11  Daiki Ueno  <ueno@unixuser.org>
117
118         * riece-doctor.el: New add-on.
119         * COMPILE (riece-modules): Add riece-doctor.
120         * Makefile.am (EXTRA_DIST): Add riece-doctor.el
121
122 2003-06-11  Daiki Ueno  <ueno@unixuser.org>
123
124         * riece-handle.el (riece-handle-nick-message): Follow the change
125         of riece-identity-member.
126
127         * riece-commands.el (riece-command-next-channel): Use
128         riece-identity-member instead of riece-identity-member-no-server.
129         (riece-command-previous-channel): Ditto.
130
131 2003-06-11  Daiki Ueno  <ueno@unixuser.org>
132
133         * riece-identity.el (riece-completing-read-identity): Remove nil
134         from channels before completing-read.
135
136         * riece-message.el (riece-message-make-name): Fix condition for priv.
137         (riece-message-make-global-name): Ditto.
138         (riece-message-buffer): Ditto.
139
140         * riece-misc.el (riece-current-nickname): Use
141         riece-with-identity-buffer.
142
143 2003-06-11  Daiki Ueno  <ueno@unixuser.org>
144
145         * riece-message.el (riece-message-parent-buffers): Regard message's
146         speaker as target when priv mode.
147
148         * riece-display.el (riece-update-channel-indicator): Decode
149         riece-current-channel even in priv mode.
150
151         * riece-identity.el (riece-decode-identity): Respect prefix-only.
152         (riece-completing-read-identity): Check if illegal characters in
153         channel name.
154
155 2003-06-08  Daiki Ueno  <ueno@unixuser.org>
156
157         * riece.el (riece-buffer-mode-alist): Add riece-user-list-buffer.
158         * riece-globals.el (riece-user-buffer-format): Abolish.
159         (riece-user-list-buffer): Default to " *Users*".
160         * riece-display.el (riece-user-list-buffer-name): Abolish.
161         (riece-user-list-buffer-create): Abolish.
162
163 2003-06-08  Daiki Ueno  <ueno@unixuser.org>
164
165         * riece-filter.el (riece-handle-numeric-reply): Don't decode messages.
166         (riece-handle-message): Ditto.
167         (riece-sentinel): Clear system here.
168
169         * riece-server.el (riece-server-process-name): New function.
170         (riece-server-process): New function.
171         (riece-close-server): Abolish.
172
173         * riece-identity.el: Adopt vector object representation for
174         identity objects.
175         (riece-with-identity-buffer): New macro.
176         (riece-decode-identity): New function.
177         (riece-encode-identity): New function.
178
179         * riece-globals.el (riece-process-list): New variable.
180         (riece-server-process-alist): Abolish.
181         (riece-channel-buffer-alist): Abolish.
182         (riece-user-list-buffer-alist): Abolish.
183         (riece-short-channel-indicator): New variable.
184
185         * riece-channel.el: Assume that we are already in the server buffer.
186         * riece-user.el: Likewise.
187
188 2003-06-06  OHASHI Akira  <bg66@koka-in.org>
189
190         * riece-ndcc.el (riece-ndcc-server-sentinel): Close a parenthesis.
191
192         * riece-rdcc.el (riece-rdcc-insinuate): Don't use the 3rd argument of
193         `add-to-list'.
194
195 2003-06-06  Daiki Ueno  <ueno@unixuser.org>
196
197         * riece-channel.el (riece-forget-channel): Fixed.
198         (riece-channel-modeless-regexp): Abolish.
199         (riece-channel-modeless-p): Abolish.
200
201 2003-06-06  OHASHI Akira  <bg66@koka-in.org>
202
203         * riece-unread.el (riece-unread-display-message-function): Delete the
204         target before adding to list.
205         (riece-unread-switch-to-channel): New function.
206         (riece-unread-insinuate): Bind "\C-c\C-u" to riece-command-mode-map.
207         Bind "u" to riece-dialogue-mode-map.
208         Bind "u" to riece-channel-list-mode-map.
209
210         * riece.el (riece-channel-list-mode-map): Don't bind
211         `riece-command-unread-channel'.
212
213 2003-06-04  Yoichi NAKAYAMA  <yoichi@geiin.org>
214
215         * riece-000.el,riece-200.el,riece-300.el,riece-400.el,riece-500.el,
216         riece-commands.el,riece-filter.el,riece-handle.el,riece-highlight.el
217         riece-identity.el,riece-message.el,riece-misc.el,riece-naming.el,
218         riece.el: Don't require riece-inlines since it has been removed.
219
220 2003-06-03  Daiki Ueno  <ueno@unixuser.org>
221
222         * riece-display.el (riece-update-user-list-buffer): Rename from
223         riece-user-list-update-buffer.
224         (riece-update-channel-list-buffer): Rename from
225         riece-channel-list-update-buffer.
226
227 2003-06-03  Daiki Ueno  <ueno@unixuser.org>
228
229         * riece-identity.el (riece-identity-canonicalize-prefix): Moved
230         from riece-inlines.el; renamed from scandinavian-downcase.
231         (riece-identity-equal-no-server): Moved from riece-inlines.el;
232         renamed from scandinavian-equal-ignore-case.
233         (riece-identity-equal-no-server-safe): New function.
234         (riece-identity-member-no-server): Moved from riece-inlines.el;
235         renamed from scandinavian-member-ignore-case.
236         (riece-identity-member-no-server-safe): New function.
237
238         * riece-inlines.el: Removed.
239         * COMPILE (riece-modules): Remove riece-inlines.
240         * Makefile.am (EXTRA_DIST): Remove riece-inlines.el.
241
242 2003-06-03  Daiki Ueno  <ueno@unixuser.org>
243
244         * riece-rdcc.el (riece-rdcc-sentinel): Don't call delete-process
245         explicitly.
246         * riece-ndcc.el: Don't call delete-process explicitly.
247         * riece-server.el (riece-close-server-process): Don't call
248         delete-process explicitly unless riece-debug == t.
249
250 2003-06-03  Daiki Ueno  <ueno@unixuser.org>
251
252         * riece-inlines.el (scandinavian-downcase): New inline function.
253         (scandinavian-equal-ignore-case): Rename from
254         string-equal-ignore-case.
255         (scandinavian-member-ignore-case): Rename from
256         string-list-member-ignore-case.
257
258         * riece-identity.el (riece-identity-equal): Rename from
259         riece-identity-equal-no-server; use scandinavian-equal-ignore-case.
260         (riece-identity-equal-safe): Rename from riece-identity-equal.
261         (riece-identity-member): Rename from riece-identity-member-no-server.
262         (riece-identity-member-safe): Rename from riece-identity-member.
263         (riece-identity-assoc): Rename from riece-identity-assoc-no-server.
264         (riece-identity-assoc-safe): Rename from riece-identity-assoc.
265
266 2003-06-03  Daiki Ueno  <ueno@unixuser.org>
267
268         * riece-rdcc.el: Require 'riece-ctcp.
269         (riece-rdcc-insinuate): Add "DCC" to
270         riece-ctcp-additional-clientinfo.
271
272         * riece-ctcp.el (riece-ctcp-additional-clientinfo): New variable.
273         (riece-command-ctcp-clientinfo): New command.
274         (riece-ctcp-insinuate): Bind it in riece-dialogue-mode-map.
275         (riece-handle-ctcp-clientinfo-request): New handler.
276         (riece-handle-ctcp-clientinfo-response): New handler.
277
278         * riece-server.el (riece-open-server): No need to use
279         get-buffer-create to reuse process buffer.
280
281 2003-06-03  Daiki Ueno  <ueno@unixuser.org>
282
283         * riece-rdcc.el (riece-command-dcc-send): Generate new buffer for
284         DCC process.
285         (riece-command-dcc-receive): Likewise; don't set buffer-file-name.
286
287         * riece-server.el (riece-server-keyword-map): `:coding-system' ->
288         `:coding'.
289         (riece-open-server): Follow the change.
290
291         * riece-ctcp.el (riece-command-ctcp-action): New command.
292         (riece-ctcp-insinuate): Bind it in riece-dialogue-mode-map.
293         (riece-handle-ctcp-action-request): New handler.
294
295         * riece.el (riece-command-mode): Enclose status indicators with
296         `{}'; show riece-user-indicator.
297         (riece-channel-mode): Likewise.
298         (riece-dialogue-mode): Enclose status indicators with `{}'.
299         * riece-globals.el (riece-user-indicator): New indicator.
300         (riece-freeze-indicator): Default to "-".
301         * riece-display.el (riece-update-channel-indicator): Don't update
302         modeline.
303         (riece-update-status-indicators): Set riece-user-indicator.
304         * riece-300.el (riece-handle-324-message): Update channel indicator.
305
306 2003-06-02  Daiki Ueno  <ueno@unixuser.org>
307
308         * riece.el (riece-command-mode): Don't set riece-freeze-indicator.
309         (riece-dialogue-mode): Call riece-update-status-indicators.
310         (riece-channel-mode): Add riece-operator-indicator to
311         mode-line-buffer-identification.
312         * riece-user.el (riece-make-user): New attribute `operator'.
313         (riece-user-operator): New function.
314         (riece-user-set-operator): New function.
315         (riece-user-toggle-away): New function.
316         (riece-user-toggle-operator): New function.
317         * riece-misc.el (riece-own-frozen): Revive.
318         * riece-message.el (riece-display-message): Reset riece-freeze if
319         riece-freeze == 'own && (riece-message-own-p message).
320         * riece-globals.el (riece-own-freeze): Abolish; use riece-freeze.
321         (riece-operator-indicator): New variable.
322         * riece-display.el (riece-update-status-indicators): New function.
323         (riece-update-buffer-functions): Add it.
324         * riece-commands.el (riece-command-toggle-freeze): Don't call
325         riece-freeze.
326         (riece-command-toggle-own-freeze): Don't call riece-own-freeze.
327         * riece-300.el (riece-handle-302-message): Use
328         riece-user-toggle-away instead of riece-user-set-away.
329         (riece-handle-301-message): Ditto.
330         (riece-handle-305-message): Ditto.
331         (riece-handle-306-message): Ditto.
332         (riece-handle-352-message): Ditto.
333
334 2003-06-02  Yoichi NAKAYAMA  <yoichi@geiin.org>
335
336         * riece-commands.el (riece-command-next-channel): Circularly
337         follow the channel list.
338         (riece-command-previous-channel): Ditto.
339
340 2003-06-02  Daiki Ueno  <ueno@unixuser.org>
341
342         * riece.el (riece-command-mode): Set default value of riece-freeze
343         & riece-own-freeze.
344         * riece-options.el (riece-away-message): New user option.
345         * riece-commands.el (riece-command-toggle-away): Query user away
346         message.
347         * riece-300.el (riece-handle-301-message): Set user's away status.
348         (riece-handle-305-message): Ditto.
349         (riece-handle-306-message): Ditto.
350         (riece-handle-302-message): Ditto.
351         (riece-handle-352-message): Ditto.
352
353 2003-06-02  Daiki Ueno  <ueno@unixuser.org>
354
355         * riece-rdcc.el: Require riece-globals, riece-misc, riece-channel,
356         and riece-identity.
357         (riece-command-dcc-receive): Check the existence of
358         set-buffer-multibyte.
359
360 2003-06-02  Daiki Ueno  <ueno@unixuser.org>
361
362         * Riece: Version 0.0.3 released.
363         * riece-version.el (riece-version-number): Bump up to 0.0.3.
364
365         * riece-ctcp.el (riece-handle-ctcp-request): Catch errors occured
366         in hooks.
367         (riece-handle-ctcp-response): Ditto.
368
369 2003-06-01  Daiki Ueno  <ueno@unixuser.org>
370
371         * riece-user.el (riece-rename-user): Don't modify entry when
372         old-name == new-name.
373
374         * riece-display.el (riece-configure-windows): Use window-buffer
375         instead of current-buffer.
376
377         * riece-rdcc.el (riece-rdcc-server-address): Default to nil.
378         (riece-rdcc-ruby-command): New user option.
379         (riece-rdcc-send-program): New user option.
380         (riece-rdcc-decode-address-program): New user option.
381         (riece-rdcc-substitute-variables): New function.
382         (riece-command-dcc-send): Use it.
383         (riece-rdcc-decode-address): Use it.
384
385 2003-06-01  Daiki Ueno  <ueno@unixuser.org>
386
387         * riece-rdcc.el: New add-on.
388
389         * Makefile.am (EXTRA_DIST): Add riece-rdcc.el
390
391 2003-06-01  Daiki Ueno  <ueno@unixuser.org>
392
393         * riece-ndcc.el: New add-on.
394         * Makefile.am (EXTRA_DIST): Add riece-ndcc.el
395
396 2003-05-31  Daiki Ueno  <ueno@unixuser.org>
397
398         * riece-server.el (riece-open-server): Simplify message.
399
400         * riece-commands.el (riece-command-open-server): Throw an error
401         when the server is already opened.
402
403         * riece-filter.el (riece-sentinel): Simplified.
404
405         * riece-display.el (riece-user-list-update-buffer): Check the
406         existence of riece-user-list-buffer.
407         (riece-channel-list-update-buffer): Check the existence of
408         riece-channel-list-buffer.
409         (riece-set-window-points): Ditto.
410
411         * riece-commands.el (riece-command-open-server): Simplified.
412         (riece-command-toggle-channel-buffer-mode): Set
413         riece-save-variables-are-dirty to t.
414         (riece-command-toggle-user-list-buffer-mode): Ditto.
415         (riece-command-toggle-channel-list-buffer-mode): Ditto.
416
417         * riece-server.el (riece-start-server): Abolish.
418         (riece-open-server): Set riece-server-process-alist and
419         riece-server-process here.
420
421 2003-05-31  Daiki Ueno  <ueno@unixuser.org>
422
423         * riece-filter.el (riece-sentinel): Close process even if
424         riece-reconnect-with-password == t.
425         (riece-handle-message): Catch errors occured in hooks.
426
427         * riece-server.el (riece-open-server): Reuse server buffer.
428         (riece-close-server-process): Delete process even if process is
429         not running.
430
431 2003-05-31  Daiki Ueno  <ueno@unixuser.org>
432
433         * riece-server.el (riece-open-server): No need to reset
434         riece-reconnect-with-password.
435
436         * riece-filter.el (riece-sentinel): Don't call riece when
437         riece-reconnect-with-password = t and process !=
438         riece-server-process.
439
440         * riece-url.el: Fix usage.
441
442         * riece-inlines.el (string-list-member-ignore-case): Remove docstring.
443
444         * riece-unread.el: New add-on.
445         * COMPILE (riece-modules): Add riece-unread.
446         * Makefile.am (EXTRA_DIST): Add riece-unread.el
447
448         * riece-300.el (riece-handle-322-message): New handler.
449         (riece-handle-323-message): New handler.
450
451 2003-05-30  Daiki Ueno  <ueno@unixuser.org>
452
453         * riece-display.el (riece-configure-windows): Select other window
454         when minibuffer is active.
455
456         * riece-commands.el (riece-command-list): New command.
457         (riece-command-enter-message-as-notice): New command.
458         * riece.el (riece-command-mode-map): Bind
459         riece-command-enter-message-as-notice and riece-command-list.
460
461         * riece-server.el (riece-close-server): Skip nil when leaving
462         channels before closing server.
463
464 2003-05-30  Daiki Ueno  <ueno@unixuser.org>
465
466         * Riece: Version 0.0.2 released.
467         * riece-version.el (riece-version-number): Bump up to 0.0.2.
468
469         * riece.el (riece-load-and-build-addon-dependencies): Fixed.
470         * riece-url.el (riece-url-requires): Don't assert dependency on
471         riece-highlight unless it appears in riece-addons.
472
473         * riece-url.el: New add-on.
474         * COMPILE (riece-modules): Add riece-url.
475
476         * riece-message.el (riece-message-make-bracket): Abolish.
477         * riece-highlight.el (riece-highlight-font-lock-keywords):
478         Give up to fontify "-nick-" or "-nick server-".
479
480         * riece-highlight.el (riece-highlight-font-lock-keywords):
481         Simplified regexp.
482
483         * riece-ctcp.el (riece-handle-ctcp-request): Don't bind user.
484         (riece-handle-ctcp-response): Ditto.
485
486         * riece-highlight.el: Make it an add-on.
487         (riece-highlight-insinuate): New function.
488         * riece.el: Don't require 'riece-highlight.
489         * riece-options.el (riece-addons): Turn on riece-highlight and
490         riece-ctcp by default.
491
492         * riece-display.el (riece-configure-windows-predicate): New function.
493         (riece-configure-windows-predicate): New user option.
494         (riece-redisplay-buffers): Use it.
495
496         * riece-complete.el: Require 'cl for butlast.
497
498         * Makefile.am (elc): Renamed from "compile".
499
500         * riece.el (riece-dialogue-mode-map): Bind
501         riece-command-toggle-channel-list-buffer-mode.
502
503         * riece-display.el (riece-configure-windows): Typo fixed.
504
505         * riece-user.el (riece-user-toggle-channel): Use member instead of
506         memq.
507
508 2003-05-29  Daiki Ueno  <ueno@unixuser.org>
509
510         * riece-ctcp.el (riece-ctcp-insinuate): New function.
511
512         * riece-options.el (riece-addons): New user option.
513         (riece-addon-directory): New user option.
514
515         * riece.el (riece-load-and-build-addon-dependencies): New function.
516         (riece-insinuate-addons): New function.
517         (riece): Call riece-insinuate-addons.
518
519         * riece-misc.el (riece-get-users-on-server): Moved from
520         riece-commands.el.
521
522         * riece-ctcp.el: New file.
523         * COMPILE (riece-modules): Add riece-ctcp.
524         * Makefile.am (EXTRA_DIST): Add riece-ctcp.el
525
526 2003-05-29  Daiki Ueno  <ueno@unixuser.org>
527
528         * Riece: Version 0.0.1 released.
529
530         * riece-commands.el (riece-command-names): New command.
531         (riece-command-who): New command.
532
533         * riece.el (riece-dialogue-mode-map): Bind riece-command-names and
534         riece-command-who.
535
536         * riece-300.el (riece-handle-341-message): New handler.
537         (riece-handle-352-message): New handler.
538
539         * riece-commands.el (riece-command-invite): Don't accept channel
540         argument; throw an error when user is not on a channel.
541         (riece-command-kick): New command.