1 2003-06-23 Daiki Ueno <ueno@unixuser.org>
3 * riece-300.el: Rewrite using riece-decode-identity.
5 * riece-identity.el (riece-completing-read-identity): Signal an
6 error when the encoded channel name is not matched with
9 * riece-globals.el (riece-channel-regexp): Moved from
11 (riece-user-regexp): Moved form riece-user.el.
13 2003-06-23 Daiki Ueno <ueno@unixuser.org>
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.
22 * riece-commands.el (riece-command-part): Show the current channel
25 * riece-identity.el (riece-completing-read-identity): Accept
26 optional 5th argument `initial'.
28 * riece-unread.el (riece-unread-update-channel-list-buffer):
31 * riece-filter.el (riece-sentinel): Don't bind
32 riece-inhibit-update-buffers.
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.
39 * riece.el (riece-channel-list-mode): Make riece-redisplay-buffer
41 (riece-user-list-mode): Ditto.
43 2003-06-22 Daiki Ueno <ueno@unixuser.org>
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
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.
57 * riece-commands.el (riece-command-switch-to-channel): Call
58 riece-redisplay-buffers instead of riece-command-configure-windows.
60 * riece-identity.el (riece-completing-read-identity): Remove nil
61 from riece-current-channels before converting it to an alist.
63 2003-06-12 Daiki Ueno <ueno@unixuser.org>
65 * riece-naming.el (riece-naming-assert-join): Call
67 (riece-naming-assert-part): Ditto.
69 * riece-filter.el (riece-sentinel): Don't bind
70 riece-overriding-server-name; use riece-part-channel.
72 * riece-display.el (riece-switch-to-channel): Don't set
74 (riece-update-buffers): Set riece-channel-buffer here.
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.
80 2003-06-12 Daiki Ueno <ueno@unixuser.org>
82 * riece-doctor.el: Don't require 'doctor; autoload doctor-mode and
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.
96 2003-06-12 Daiki Ueno <ueno@unixuser.org>
98 * riece-message.el (riece-own-channel-message): Abolish.
100 * riece-commands.el (riece-command-send-message): Don't use
101 riece-own-channel-message.
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.
108 2003-06-11 Daiki Ueno <ueno@unixuser.org>
110 * riece-identity.el (riece-identity-member-no-server): Abolish.
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.
116 2003-06-11 Daiki Ueno <ueno@unixuser.org>
118 * riece-doctor.el: New add-on.
119 * COMPILE (riece-modules): Add riece-doctor.
120 * Makefile.am (EXTRA_DIST): Add riece-doctor.el
122 2003-06-11 Daiki Ueno <ueno@unixuser.org>
124 * riece-handle.el (riece-handle-nick-message): Follow the change
125 of riece-identity-member.
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.
131 2003-06-11 Daiki Ueno <ueno@unixuser.org>
133 * riece-identity.el (riece-completing-read-identity): Remove nil
134 from channels before completing-read.
136 * riece-message.el (riece-message-make-name): Fix condition for priv.
137 (riece-message-make-global-name): Ditto.
138 (riece-message-buffer): Ditto.
140 * riece-misc.el (riece-current-nickname): Use
141 riece-with-identity-buffer.
143 2003-06-11 Daiki Ueno <ueno@unixuser.org>
145 * riece-message.el (riece-message-parent-buffers): Regard message's
146 speaker as target when priv mode.
148 * riece-display.el (riece-update-channel-indicator): Decode
149 riece-current-channel even in priv mode.
151 * riece-identity.el (riece-decode-identity): Respect prefix-only.
152 (riece-completing-read-identity): Check if illegal characters in
155 2003-06-08 Daiki Ueno <ueno@unixuser.org>
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.
163 2003-06-08 Daiki Ueno <ueno@unixuser.org>
165 * riece-filter.el (riece-handle-numeric-reply): Don't decode messages.
166 (riece-handle-message): Ditto.
167 (riece-sentinel): Clear system here.
169 * riece-server.el (riece-server-process-name): New function.
170 (riece-server-process): New function.
171 (riece-close-server): Abolish.
173 * riece-identity.el: Adopt vector object representation for
175 (riece-with-identity-buffer): New macro.
176 (riece-decode-identity): New function.
177 (riece-encode-identity): New function.
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.
185 * riece-channel.el: Assume that we are already in the server buffer.
186 * riece-user.el: Likewise.
188 2003-06-06 OHASHI Akira <bg66@koka-in.org>
190 * riece-ndcc.el (riece-ndcc-server-sentinel): Close a parenthesis.
192 * riece-rdcc.el (riece-rdcc-insinuate): Don't use the 3rd argument of
195 2003-06-06 Daiki Ueno <ueno@unixuser.org>
197 * riece-channel.el (riece-forget-channel): Fixed.
198 (riece-channel-modeless-regexp): Abolish.
199 (riece-channel-modeless-p): Abolish.
201 2003-06-06 OHASHI Akira <bg66@koka-in.org>
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.
210 * riece.el (riece-channel-list-mode-map): Don't bind
211 `riece-command-unread-channel'.
213 2003-06-04 Yoichi NAKAYAMA <yoichi@geiin.org>
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.
220 2003-06-03 Daiki Ueno <ueno@unixuser.org>
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.
227 2003-06-03 Daiki Ueno <ueno@unixuser.org>
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.
238 * riece-inlines.el: Removed.
239 * COMPILE (riece-modules): Remove riece-inlines.
240 * Makefile.am (EXTRA_DIST): Remove riece-inlines.el.
242 2003-06-03 Daiki Ueno <ueno@unixuser.org>
244 * riece-rdcc.el (riece-rdcc-sentinel): Don't call delete-process
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.
250 2003-06-03 Daiki Ueno <ueno@unixuser.org>
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.
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.
266 2003-06-03 Daiki Ueno <ueno@unixuser.org>
268 * riece-rdcc.el: Require 'riece-ctcp.
269 (riece-rdcc-insinuate): Add "DCC" to
270 riece-ctcp-additional-clientinfo.
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.
278 * riece-server.el (riece-open-server): No need to use
279 get-buffer-create to reuse process buffer.
281 2003-06-03 Daiki Ueno <ueno@unixuser.org>
283 * riece-rdcc.el (riece-command-dcc-send): Generate new buffer for
285 (riece-command-dcc-receive): Likewise; don't set buffer-file-name.
287 * riece-server.el (riece-server-keyword-map): `:coding-system' ->
289 (riece-open-server): Follow the change.
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.
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
303 (riece-update-status-indicators): Set riece-user-indicator.
304 * riece-300.el (riece-handle-324-message): Update channel indicator.
306 2003-06-02 Daiki Ueno <ueno@unixuser.org>
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
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.
334 2003-06-02 Yoichi NAKAYAMA <yoichi@geiin.org>
336 * riece-commands.el (riece-command-next-channel): Circularly
337 follow the channel list.
338 (riece-command-previous-channel): Ditto.
340 2003-06-02 Daiki Ueno <ueno@unixuser.org>
342 * riece.el (riece-command-mode): Set default value of riece-freeze
344 * riece-options.el (riece-away-message): New user option.
345 * riece-commands.el (riece-command-toggle-away): Query user away
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.
353 2003-06-02 Daiki Ueno <ueno@unixuser.org>
355 * riece-rdcc.el: Require riece-globals, riece-misc, riece-channel,
357 (riece-command-dcc-receive): Check the existence of
358 set-buffer-multibyte.
360 2003-06-02 Daiki Ueno <ueno@unixuser.org>
362 * Riece: Version 0.0.3 released.
363 * riece-version.el (riece-version-number): Bump up to 0.0.3.
365 * riece-ctcp.el (riece-handle-ctcp-request): Catch errors occured
367 (riece-handle-ctcp-response): Ditto.
369 2003-06-01 Daiki Ueno <ueno@unixuser.org>
371 * riece-user.el (riece-rename-user): Don't modify entry when
372 old-name == new-name.
374 * riece-display.el (riece-configure-windows): Use window-buffer
375 instead of current-buffer.
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.
385 2003-06-01 Daiki Ueno <ueno@unixuser.org>
387 * riece-rdcc.el: New add-on.
389 * Makefile.am (EXTRA_DIST): Add riece-rdcc.el
391 2003-06-01 Daiki Ueno <ueno@unixuser.org>
393 * riece-ndcc.el: New add-on.
394 * Makefile.am (EXTRA_DIST): Add riece-ndcc.el
396 2003-05-31 Daiki Ueno <ueno@unixuser.org>
398 * riece-server.el (riece-open-server): Simplify message.
400 * riece-commands.el (riece-command-open-server): Throw an error
401 when the server is already opened.
403 * riece-filter.el (riece-sentinel): Simplified.
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.
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.
417 * riece-server.el (riece-start-server): Abolish.
418 (riece-open-server): Set riece-server-process-alist and
419 riece-server-process here.
421 2003-05-31 Daiki Ueno <ueno@unixuser.org>
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.
427 * riece-server.el (riece-open-server): Reuse server buffer.
428 (riece-close-server-process): Delete process even if process is
431 2003-05-31 Daiki Ueno <ueno@unixuser.org>
433 * riece-server.el (riece-open-server): No need to reset
434 riece-reconnect-with-password.
436 * riece-filter.el (riece-sentinel): Don't call riece when
437 riece-reconnect-with-password = t and process !=
438 riece-server-process.
440 * riece-url.el: Fix usage.
442 * riece-inlines.el (string-list-member-ignore-case): Remove docstring.
444 * riece-unread.el: New add-on.
445 * COMPILE (riece-modules): Add riece-unread.
446 * Makefile.am (EXTRA_DIST): Add riece-unread.el
448 * riece-300.el (riece-handle-322-message): New handler.
449 (riece-handle-323-message): New handler.
451 2003-05-30 Daiki Ueno <ueno@unixuser.org>
453 * riece-display.el (riece-configure-windows): Select other window
454 when minibuffer is active.
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.
461 * riece-server.el (riece-close-server): Skip nil when leaving
462 channels before closing server.
464 2003-05-30 Daiki Ueno <ueno@unixuser.org>
466 * Riece: Version 0.0.2 released.
467 * riece-version.el (riece-version-number): Bump up to 0.0.2.
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.
473 * riece-url.el: New add-on.
474 * COMPILE (riece-modules): Add riece-url.
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-".
480 * riece-highlight.el (riece-highlight-font-lock-keywords):
483 * riece-ctcp.el (riece-handle-ctcp-request): Don't bind user.
484 (riece-handle-ctcp-response): Ditto.
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.
492 * riece-display.el (riece-configure-windows-predicate): New function.
493 (riece-configure-windows-predicate): New user option.
494 (riece-redisplay-buffers): Use it.
496 * riece-complete.el: Require 'cl for butlast.
498 * Makefile.am (elc): Renamed from "compile".
500 * riece.el (riece-dialogue-mode-map): Bind
501 riece-command-toggle-channel-list-buffer-mode.
503 * riece-display.el (riece-configure-windows): Typo fixed.
505 * riece-user.el (riece-user-toggle-channel): Use member instead of
508 2003-05-29 Daiki Ueno <ueno@unixuser.org>
510 * riece-ctcp.el (riece-ctcp-insinuate): New function.
512 * riece-options.el (riece-addons): New user option.
513 (riece-addon-directory): New user option.
515 * riece.el (riece-load-and-build-addon-dependencies): New function.
516 (riece-insinuate-addons): New function.
517 (riece): Call riece-insinuate-addons.
519 * riece-misc.el (riece-get-users-on-server): Moved from
522 * riece-ctcp.el: New file.
523 * COMPILE (riece-modules): Add riece-ctcp.
524 * Makefile.am (EXTRA_DIST): Add riece-ctcp.el
526 2003-05-29 Daiki Ueno <ueno@unixuser.org>
528 * Riece: Version 0.0.1 released.
530 * riece-commands.el (riece-command-names): New command.
531 (riece-command-who): New command.
533 * riece.el (riece-dialogue-mode-map): Bind riece-command-names and
536 * riece-300.el (riece-handle-341-message): New handler.
537 (riece-handle-352-message): New handler.
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.