1 2003-08-09 Daiki Ueno <ueno@unixuser.org>
3 * riece-xemacs.el: Don't require 'riece-compat.
5 2003-08-06 Daiki Ueno <ueno@unixuser.org>
7 * riece-unread.el (riece-unread-update-channel-list-buffer): Call
10 2003-08-04 Daiki Ueno <ueno@unixuser.org>
12 * riece-server.el (riece-find-server-name): Abolish.
14 * riece-alias.el: Add usage.
16 2003-08-04 Daiki Ueno <ueno@unixuser.org>
18 * riece-mini.el (riece-mini-send-message): Use
19 riece-completing-read-identity; don't use riece-own-channel-message.
21 * riece-identity.el: Require 'riece-compat.
22 (riece-identity-prefix-case-table): New variable.
23 (riece-abbrev-identity-string-function): New variable.
24 (riece-expand-identity-string-function): New variable.
25 (riece-format-identity): Rename from riece-decode-identity.
26 (riece-parse-identity): Rename from riece-encode-identity.
27 (riece-with-identity-buffer): Abolish.
28 (riece-identity-canonicalize-prefix): Use case-table.
30 * riece-filter.el (riece-handle-numeric-reply): Decode messages.
31 (riece-handle-message): Ditto.
33 * riece-alias.el: New add-on.
34 * COMPILE (riece-modules): Add riece-alias.
35 * Makefile.am (EXTRA_DIST): Add riece-alias.el.
37 * riece-emacs.el (riece-set-case-syntax-pair): New alias.
38 * riece-xemacs.el (riece-set-case-syntax-pair): New alias.
39 * riece-identity.el (riece-identity-canonicalize-prefix): Simplified.
41 2003-08-03 Daiki Ueno <ueno@unixuser.org>
43 * Riece: Version 0.0.4 released.
44 * riece-version.el (riece-version-number): Bump up to 0.0.4.
46 2003-06-24 OHASHI Akira <bg66@koka-in.org>
48 * riece-unread.el (riece-unread-display-message-function): Don't check
49 `selected-window'. It doesn't work as expected.
51 2003-06-23 Daiki Ueno <ueno@unixuser.org>
53 * riece-misc.el (riece-channel-p): Moved from riece-channel.el.
55 * riece-300.el: Rewrite using riece-decode-identity.
57 * riece-identity.el (riece-completing-read-identity): Signal an
58 error when the encoded channel name is not matched with
61 * riece-globals.el (riece-channel-regexp): Moved from
63 (riece-user-regexp): Moved form riece-user.el.
65 2003-06-23 Daiki Ueno <ueno@unixuser.org>
67 * riece-handle.el (riece-handle-join-message): Don't call
68 riece-switch-to-channel.
69 (riece-handle-part-message): Don't decode message if it is empty.
70 (riece-handle-kick-message): Ditto.
71 (riece-handle-quit-message): Ditto.
72 (riece-handle-kill-message): Ditto.
74 * riece-commands.el (riece-command-part): Show the current channel
77 * riece-identity.el (riece-completing-read-identity): Accept
78 optional 5th argument `initial'.
80 * riece-unread.el (riece-unread-update-channel-list-buffer):
83 * riece-filter.el (riece-sentinel): Don't bind
84 riece-inhibit-update-buffers.
86 * riece-display.el (riece-redisplay-buffer): New variable.
87 (riece-inhibit-update-buffers): Abolish.
88 (riece-update-channel-list-buffer): Memorize
89 encoded identity as text property on each line.
91 * riece.el (riece-channel-list-mode): Make riece-redisplay-buffer
93 (riece-user-list-mode): Ditto.
95 2003-06-22 Yoichi NAKAYAMA <yoichi@geiin.org>
97 * riece-log.el, riece-mini.el, riece-unread.el, riece-url.el:
98 Fix example setting, don't use 3rd arg of add-to-list.
100 * riece-coding.el (riece-default-coding-system): Fix default value.
102 2003-06-22 Daiki Ueno <ueno@unixuser.org>
104 * riece-display.el (riece-inhibit-update-buffers): New variable.
105 * riece-filter.el (riece-sentinel): Bind
106 riece-inhibit-update-buffers while removing channels from
107 riece-current-channels.
108 * riece-unread.el (riece-unread-display-message-function): Don't
109 update channel list buffer when riece-inhibit-update-buffers is
111 (riece-unread-channel-switch-hook): Ditto.
112 (riece-unread-insinuate): Add
113 riece-unread-update-channel-list-buffer to
114 riece-update-buffer-functions.
116 * riece-commands.el (riece-command-switch-to-channel): Call
117 riece-redisplay-buffers instead of riece-command-configure-windows.
119 * riece-identity.el (riece-completing-read-identity): Remove nil
120 from riece-current-channels before converting it to an alist.
122 2003-06-17 OHASHI Akira <bg66@koka-in.org>
124 * riece-unread.el (riece-unread-display-message-function): Check a
127 * riece-mini.el: New add-on.
128 * COMPILE (riece-modules): Add `riece-mini'.
129 * Makefile.am (EXTRA_DIST): Add `riece-mini.el'.
131 * riece-display.el (riece-channel-buffer-create): Add new hook.
132 * riece-log.el: New add-on for saving irc logs.
133 * COMPILE (riece-modules): Add `riece-log'.
134 * Makefile.am (EXTRA_DIST): Add `riece-log.el'.
136 * riece-commands.el (riece-command-join): Use `let*' instead of `let'.
137 (riece-command-part): Ditto.
139 2003-06-12 Daiki Ueno <ueno@unixuser.org>
141 * riece-naming.el (riece-naming-assert-join): Call
142 riece-update-buffers.
143 (riece-naming-assert-part): Ditto.
145 * riece-filter.el (riece-sentinel): Don't bind
146 riece-overriding-server-name; use riece-part-channel.
148 * riece-display.el (riece-switch-to-channel): Don't set
149 riece-channel-buffer.
150 (riece-update-buffers): Set riece-channel-buffer here.
152 * riece-commands.el (riece-command-switch-to-channel-by-number): Fixed.
153 (riece-command-close-server): Fixed completion bug.
154 (riece-command-universal-server-name-argument): Ditto.
156 2003-06-12 Daiki Ueno <ueno@unixuser.org>
158 * riece-doctor.el: Don't require 'doctor; autoload doctor-mode and
161 * riece-handle.el (riece-handle-nick-message): Use
162 riece-decode-identity to decode user.
163 (riece-handle-join-message): Ditto.
164 (riece-handle-part-message): Ditto.
165 (riece-handle-kick-message): Ditto.
166 (riece-handle-quit-message): Ditto.
167 (riece-handle-kill-message): Ditto.
168 (riece-handle-invite-message): Ditto.
169 (riece-handle-topic-message): Ditto.
170 (riece-handle-mode-message): Ditto.
172 2003-06-12 Daiki Ueno <ueno@unixuser.org>
174 * riece-message.el (riece-own-channel-message): Abolish.
176 * riece-commands.el (riece-command-send-message): Don't use
177 riece-own-channel-message.
179 * riece-doctor.el (riece-doctor-reply): Don't use
180 riece-own-channel-message.
181 (riece-doctor-hello-regexp): New user option.
182 (riece-doctor-bye-regexp): New user option.
184 2003-06-11 Daiki Ueno <ueno@unixuser.org>
186 * riece-identity.el (riece-identity-member-no-server): Abolish.
188 * riece-doctor.el (riece-doctor-patients): Make it global variable.
189 (riece-doctor-after-privmsg-hook): Use riece-identity-member
190 instead of riece-identity-member-no-server.
192 2003-06-11 Daiki Ueno <ueno@unixuser.org>
194 * riece-doctor.el: New add-on.
195 * COMPILE (riece-modules): Add riece-doctor.
196 * Makefile.am (EXTRA_DIST): Add riece-doctor.el
198 2003-06-11 Daiki Ueno <ueno@unixuser.org>
200 * riece-handle.el (riece-handle-nick-message): Follow the change
201 of riece-identity-member.
203 * riece-commands.el (riece-command-next-channel): Use
204 riece-identity-member instead of riece-identity-member-no-server.
205 (riece-command-previous-channel): Ditto.
207 2003-06-11 Daiki Ueno <ueno@unixuser.org>
209 * riece-identity.el (riece-completing-read-identity): Remove nil
210 from channels before completing-read.
212 * riece-message.el (riece-message-make-name): Fix condition for priv.
213 (riece-message-make-global-name): Ditto.
214 (riece-message-buffer): Ditto.
216 * riece-misc.el (riece-current-nickname): Use
217 riece-with-identity-buffer.
219 2003-06-11 Daiki Ueno <ueno@unixuser.org>
221 * riece-message.el (riece-message-parent-buffers): Regard message's
222 speaker as target when priv mode.
224 * riece-display.el (riece-update-channel-indicator): Decode
225 riece-current-channel even in priv mode.
227 * riece-identity.el (riece-decode-identity): Respect prefix-only.
228 (riece-completing-read-identity): Check if illegal characters in
231 2003-06-08 Daiki Ueno <ueno@unixuser.org>
233 * riece.el (riece-buffer-mode-alist): Add riece-user-list-buffer.
234 * riece-globals.el (riece-user-buffer-format): Abolish.
235 (riece-user-list-buffer): Default to " *Users*".
236 * riece-display.el (riece-user-list-buffer-name): Abolish.
237 (riece-user-list-buffer-create): Abolish.
239 2003-06-08 Daiki Ueno <ueno@unixuser.org>
241 * riece-filter.el (riece-handle-numeric-reply): Don't decode messages.
242 (riece-handle-message): Ditto.
243 (riece-sentinel): Clear system here.
245 * riece-server.el (riece-server-process-name): New function.
246 (riece-server-process): New function.
247 (riece-close-server): Abolish.
249 * riece-identity.el: Adopt vector object representation for
251 (riece-with-identity-buffer): New macro.
252 (riece-decode-identity): New function.
253 (riece-encode-identity): New function.
255 * riece-globals.el (riece-process-list): New variable.
256 (riece-server-process-alist): Abolish.
257 (riece-channel-buffer-alist): Abolish.
258 (riece-user-list-buffer-alist): Abolish.
259 (riece-short-channel-indicator): New variable.
261 * riece-channel.el: Assume that we are already in the server buffer.
262 * riece-user.el: Likewise.
264 2003-06-06 OHASHI Akira <bg66@koka-in.org>
266 * riece-ndcc.el (riece-ndcc-server-sentinel): Close a parenthesis.
268 * riece-rdcc.el (riece-rdcc-insinuate): Don't use the 3rd argument of
271 2003-06-06 Daiki Ueno <ueno@unixuser.org>
273 * riece-channel.el (riece-forget-channel): Fixed.
274 (riece-channel-modeless-regexp): Abolish.
275 (riece-channel-modeless-p): Abolish.
277 2003-06-06 OHASHI Akira <bg66@koka-in.org>
279 * riece-unread.el (riece-unread-display-message-function): Delete the
280 target before adding to list.
281 (riece-unread-switch-to-channel): New function.
282 (riece-unread-insinuate): Bind "\C-c\C-u" to riece-command-mode-map.
283 Bind "u" to riece-dialogue-mode-map.
284 Bind "u" to riece-channel-list-mode-map.
286 * riece.el (riece-channel-list-mode-map): Don't bind
287 `riece-command-unread-channel'.
289 2003-06-04 Yoichi NAKAYAMA <yoichi@geiin.org>
291 * riece-000.el,riece-200.el,riece-300.el,riece-400.el,riece-500.el,
292 riece-commands.el,riece-filter.el,riece-handle.el,riece-highlight.el
293 riece-identity.el,riece-message.el,riece-misc.el,riece-naming.el,
294 riece.el: Don't require riece-inlines since it has been removed.
296 2003-06-03 Daiki Ueno <ueno@unixuser.org>
298 * riece-display.el (riece-update-user-list-buffer): Rename from
299 riece-user-list-update-buffer.
300 (riece-update-channel-list-buffer): Rename from
301 riece-channel-list-update-buffer.
303 2003-06-03 Daiki Ueno <ueno@unixuser.org>
305 * riece-identity.el (riece-identity-canonicalize-prefix): Moved
306 from riece-inlines.el; renamed from scandinavian-downcase.
307 (riece-identity-equal-no-server): Moved from riece-inlines.el;
308 renamed from scandinavian-equal-ignore-case.
309 (riece-identity-equal-no-server-safe): New function.
310 (riece-identity-member-no-server): Moved from riece-inlines.el;
311 renamed from scandinavian-member-ignore-case.
312 (riece-identity-member-no-server-safe): New function.
314 * riece-inlines.el: Removed.
315 * COMPILE (riece-modules): Remove riece-inlines.
316 * Makefile.am (EXTRA_DIST): Remove riece-inlines.el.
318 2003-06-03 Daiki Ueno <ueno@unixuser.org>
320 * riece-rdcc.el (riece-rdcc-sentinel): Don't call delete-process
322 * riece-ndcc.el: Don't call delete-process explicitly.
323 * riece-server.el (riece-close-server-process): Don't call
324 delete-process explicitly unless riece-debug == t.
326 2003-06-03 Daiki Ueno <ueno@unixuser.org>
328 * riece-inlines.el (scandinavian-downcase): New inline function.
329 (scandinavian-equal-ignore-case): Rename from
330 string-equal-ignore-case.
331 (scandinavian-member-ignore-case): Rename from
332 string-list-member-ignore-case.
334 * riece-identity.el (riece-identity-equal): Rename from
335 riece-identity-equal-no-server; use scandinavian-equal-ignore-case.
336 (riece-identity-equal-safe): Rename from riece-identity-equal.
337 (riece-identity-member): Rename from riece-identity-member-no-server.
338 (riece-identity-member-safe): Rename from riece-identity-member.
339 (riece-identity-assoc): Rename from riece-identity-assoc-no-server.
340 (riece-identity-assoc-safe): Rename from riece-identity-assoc.
342 2003-06-03 Daiki Ueno <ueno@unixuser.org>
344 * riece-rdcc.el: Require 'riece-ctcp.
345 (riece-rdcc-insinuate): Add "DCC" to
346 riece-ctcp-additional-clientinfo.
348 * riece-ctcp.el (riece-ctcp-additional-clientinfo): New variable.
349 (riece-command-ctcp-clientinfo): New command.
350 (riece-ctcp-insinuate): Bind it in riece-dialogue-mode-map.
351 (riece-handle-ctcp-clientinfo-request): New handler.
352 (riece-handle-ctcp-clientinfo-response): New handler.
354 * riece-server.el (riece-open-server): No need to use
355 get-buffer-create to reuse process buffer.
357 2003-06-03 Daiki Ueno <ueno@unixuser.org>
359 * riece-rdcc.el (riece-command-dcc-send): Generate new buffer for
361 (riece-command-dcc-receive): Likewise; don't set buffer-file-name.
363 * riece-server.el (riece-server-keyword-map): `:coding-system' ->
365 (riece-open-server): Follow the change.
367 * riece-ctcp.el (riece-command-ctcp-action): New command.
368 (riece-ctcp-insinuate): Bind it in riece-dialogue-mode-map.
369 (riece-handle-ctcp-action-request): New handler.
371 * riece.el (riece-command-mode): Enclose status indicators with
372 `{}'; show riece-user-indicator.
373 (riece-channel-mode): Likewise.
374 (riece-dialogue-mode): Enclose status indicators with `{}'.
375 * riece-globals.el (riece-user-indicator): New indicator.
376 (riece-freeze-indicator): Default to "-".
377 * riece-display.el (riece-update-channel-indicator): Don't update
379 (riece-update-status-indicators): Set riece-user-indicator.
380 * riece-300.el (riece-handle-324-message): Update channel indicator.
382 2003-06-02 Daiki Ueno <ueno@unixuser.org>
384 * riece.el (riece-command-mode): Don't set riece-freeze-indicator.
385 (riece-dialogue-mode): Call riece-update-status-indicators.
386 (riece-channel-mode): Add riece-operator-indicator to
387 mode-line-buffer-identification.
388 * riece-user.el (riece-make-user): New attribute `operator'.
389 (riece-user-operator): New function.
390 (riece-user-set-operator): New function.
391 (riece-user-toggle-away): New function.
392 (riece-user-toggle-operator): New function.
393 * riece-misc.el (riece-own-frozen): Revive.
394 * riece-message.el (riece-display-message): Reset riece-freeze if
395 riece-freeze == 'own && (riece-message-own-p message).
396 * riece-globals.el (riece-own-freeze): Abolish; use riece-freeze.
397 (riece-operator-indicator): New variable.
398 * riece-display.el (riece-update-status-indicators): New function.
399 (riece-update-buffer-functions): Add it.
400 * riece-commands.el (riece-command-toggle-freeze): Don't call
402 (riece-command-toggle-own-freeze): Don't call riece-own-freeze.
403 * riece-300.el (riece-handle-302-message): Use
404 riece-user-toggle-away instead of riece-user-set-away.
405 (riece-handle-301-message): Ditto.
406 (riece-handle-305-message): Ditto.
407 (riece-handle-306-message): Ditto.
408 (riece-handle-352-message): Ditto.
410 2003-06-02 Yoichi NAKAYAMA <yoichi@geiin.org>
412 * riece-commands.el (riece-command-next-channel): Circularly
413 follow the channel list.
414 (riece-command-previous-channel): Ditto.
416 2003-06-02 Daiki Ueno <ueno@unixuser.org>
418 * riece.el (riece-command-mode): Set default value of riece-freeze
420 * riece-options.el (riece-away-message): New user option.
421 * riece-commands.el (riece-command-toggle-away): Query user away
423 * riece-300.el (riece-handle-301-message): Set user's away status.
424 (riece-handle-305-message): Ditto.
425 (riece-handle-306-message): Ditto.
426 (riece-handle-302-message): Ditto.
427 (riece-handle-352-message): Ditto.
429 2003-06-02 Daiki Ueno <ueno@unixuser.org>
431 * riece-rdcc.el: Require riece-globals, riece-misc, riece-channel,
433 (riece-command-dcc-receive): Check the existence of
434 set-buffer-multibyte.
436 2003-06-02 Daiki Ueno <ueno@unixuser.org>
438 * Riece: Version 0.0.3 released.
439 * riece-version.el (riece-version-number): Bump up to 0.0.3.
441 * riece-ctcp.el (riece-handle-ctcp-request): Catch errors occured
443 (riece-handle-ctcp-response): Ditto.
445 2003-06-01 Daiki Ueno <ueno@unixuser.org>
447 * riece-user.el (riece-rename-user): Don't modify entry when
448 old-name == new-name.
450 * riece-display.el (riece-configure-windows): Use window-buffer
451 instead of current-buffer.
453 * riece-rdcc.el (riece-rdcc-server-address): Default to nil.
454 (riece-rdcc-ruby-command): New user option.
455 (riece-rdcc-send-program): New user option.
456 (riece-rdcc-decode-address-program): New user option.
457 (riece-rdcc-substitute-variables): New function.
458 (riece-command-dcc-send): Use it.
459 (riece-rdcc-decode-address): Use it.
461 2003-06-01 Daiki Ueno <ueno@unixuser.org>
463 * riece-rdcc.el: New add-on.
465 * Makefile.am (EXTRA_DIST): Add riece-rdcc.el
467 2003-06-01 Daiki Ueno <ueno@unixuser.org>
469 * riece-ndcc.el: New add-on.
470 * Makefile.am (EXTRA_DIST): Add riece-ndcc.el
472 2003-05-31 Daiki Ueno <ueno@unixuser.org>
474 * riece-server.el (riece-open-server): Simplify message.
476 * riece-commands.el (riece-command-open-server): Throw an error
477 when the server is already opened.
479 * riece-filter.el (riece-sentinel): Simplified.
481 * riece-display.el (riece-user-list-update-buffer): Check the
482 existence of riece-user-list-buffer.
483 (riece-channel-list-update-buffer): Check the existence of
484 riece-channel-list-buffer.
485 (riece-set-window-points): Ditto.
487 * riece-commands.el (riece-command-open-server): Simplified.
488 (riece-command-toggle-channel-buffer-mode): Set
489 riece-save-variables-are-dirty to t.
490 (riece-command-toggle-user-list-buffer-mode): Ditto.
491 (riece-command-toggle-channel-list-buffer-mode): Ditto.
493 * riece-server.el (riece-start-server): Abolish.
494 (riece-open-server): Set riece-server-process-alist and
495 riece-server-process here.
497 2003-05-31 Daiki Ueno <ueno@unixuser.org>
499 * riece-filter.el (riece-sentinel): Close process even if
500 riece-reconnect-with-password == t.
501 (riece-handle-message): Catch errors occured in hooks.
503 * riece-server.el (riece-open-server): Reuse server buffer.
504 (riece-close-server-process): Delete process even if process is
507 2003-05-31 Daiki Ueno <ueno@unixuser.org>
509 * riece-server.el (riece-open-server): No need to reset
510 riece-reconnect-with-password.
512 * riece-filter.el (riece-sentinel): Don't call riece when
513 riece-reconnect-with-password = t and process !=
514 riece-server-process.
516 * riece-url.el: Fix usage.
518 * riece-inlines.el (string-list-member-ignore-case): Remove docstring.
520 * riece-unread.el: New add-on.
521 * COMPILE (riece-modules): Add riece-unread.
522 * Makefile.am (EXTRA_DIST): Add riece-unread.el
524 * riece-300.el (riece-handle-322-message): New handler.
525 (riece-handle-323-message): New handler.
527 2003-05-30 Daiki Ueno <ueno@unixuser.org>
529 * riece-display.el (riece-configure-windows): Select other window
530 when minibuffer is active.
532 * riece-commands.el (riece-command-list): New command.
533 (riece-command-enter-message-as-notice): New command.
534 * riece.el (riece-command-mode-map): Bind
535 riece-command-enter-message-as-notice and riece-command-list.
537 * riece-server.el (riece-close-server): Skip nil when leaving
538 channels before closing server.
540 2003-05-30 Daiki Ueno <ueno@unixuser.org>
542 * Riece: Version 0.0.2 released.
543 * riece-version.el (riece-version-number): Bump up to 0.0.2.
545 * riece.el (riece-load-and-build-addon-dependencies): Fixed.
546 * riece-url.el (riece-url-requires): Don't assert dependency on
547 riece-highlight unless it appears in riece-addons.
549 * riece-url.el: New add-on.
550 * COMPILE (riece-modules): Add riece-url.
552 * riece-message.el (riece-message-make-bracket): Abolish.
553 * riece-highlight.el (riece-highlight-font-lock-keywords):
554 Give up to fontify "-nick-" or "-nick server-".
556 * riece-highlight.el (riece-highlight-font-lock-keywords):
559 * riece-ctcp.el (riece-handle-ctcp-request): Don't bind user.
560 (riece-handle-ctcp-response): Ditto.
562 * riece-highlight.el: Make it an add-on.
563 (riece-highlight-insinuate): New function.
564 * riece.el: Don't require 'riece-highlight.
565 * riece-options.el (riece-addons): Turn on riece-highlight and
566 riece-ctcp by default.
568 * riece-display.el (riece-configure-windows-predicate): New function.
569 (riece-configure-windows-predicate): New user option.
570 (riece-redisplay-buffers): Use it.
572 * riece-complete.el: Require 'cl for butlast.
574 * Makefile.am (elc): Renamed from "compile".
576 * riece.el (riece-dialogue-mode-map): Bind
577 riece-command-toggle-channel-list-buffer-mode.
579 * riece-display.el (riece-configure-windows): Typo fixed.
581 * riece-user.el (riece-user-toggle-channel): Use member instead of
584 2003-05-29 Daiki Ueno <ueno@unixuser.org>
586 * riece-ctcp.el (riece-ctcp-insinuate): New function.
588 * riece-options.el (riece-addons): New user option.
589 (riece-addon-directory): New user option.
591 * riece.el (riece-load-and-build-addon-dependencies): New function.
592 (riece-insinuate-addons): New function.
593 (riece): Call riece-insinuate-addons.
595 * riece-misc.el (riece-get-users-on-server): Moved from
598 * riece-ctcp.el: New file.
599 * COMPILE (riece-modules): Add riece-ctcp.
600 * Makefile.am (EXTRA_DIST): Add riece-ctcp.el
602 2003-05-29 Daiki Ueno <ueno@unixuser.org>
604 * Riece: Version 0.0.1 released.
606 * riece-commands.el (riece-command-names): New command.
607 (riece-command-who): New command.
609 * riece.el (riece-dialogue-mode-map): Bind riece-command-names and
612 * riece-300.el (riece-handle-341-message): New handler.
613 (riece-handle-352-message): New handler.
615 * riece-commands.el (riece-command-invite): Don't accept channel
616 argument; throw an error when user is not on a channel.
617 (riece-command-kick): New command.