Commit graph

75 commits

Author SHA1 Message Date
Miles Bader
7faa3f8c0b Rcirc update from Ryan Yeske
2006-08-20  Ryan Yeske  <rcyeske@gmail.com>

   * lisp/net/rcirc.el (rcirc-show-maximum-output): New var.
   (rcirc-buffer-process): If no buffer argument is supplied, use
   current-buffer.
   (rcirc-complete-nick): Complete to the last completed nick first.
   (rcirc-mode): Preserve the value of `rcirc-urls' across
   connections.  Setup scroll function.
   (rcirc-scroll-to-bottom): New function.
   (rcirc-print): Use nick syntax around regexp work.  Notice
   dim-nicks speaking only if they say our nick.
   (rcirc-update-activity-string): Do not show the modeline indicator
   if there are no live rcirc processes.
   (rcirc-cmd-ignore): Ignore case.
   (rcirc-browse-url-at-point): Fix off-by-one error.

Revision: emacs@sv.gnu.org/emacs--devo--0--patch-403
2006-08-21 05:37:27 +00:00
Eli Zaretskii
18aa2c90a0 (rcirc-default-user-full-name): Default to `rcirc-default-user-name' instead
of `rcirc-user-name' (which no longer exists).
(rcirc-process-list): Check `buffer-live-p' before attempting to switch to a
buffer.
2006-06-23 13:33:47 +00:00
Eli Zaretskii
aac5d1fdce (rcirc-mode): Fix initialization of coding systems based on
rcirc-coding-system-alist.
2006-06-23 13:23:39 +00:00
Miles Bader
02f47e8630 Revision: emacs@sv.gnu.org/emacs--devo--0--patch-247
Rcirc patch from Ryan Yeske

2006-04-25  Ryan Yeske  <rcyeske@gmail.com>

   * lisp/net/rcirc.el (rcirc-print): Revert last change with ignored nicks.
   (rcirc-toggle-low-priority): Doc fix.
   (rcirc-handler-NOTICE): Remove beginning of line anchor in
   ChanServ regexp.
   (rcirc-startup-channels-alist): Connect to #rcirc by default, not
   #emacs.
   (rcirc-bright-nick-regexp, rcirc-dim-nick-regexp): Add variables.
   (rcirc-decode-coding-system): Use utf-8 as the default.
   (rcirc-multiline-minor-mode): Set the fill-column.
   (rcirc-format-response-string): Display bright and dim nicks.
   (rcirc-browse-url): Update interactive spec to fill ARG.
   (rcirc-bright-nick, rcirc-dim-nick): Add faces.
   (rcirc-print): Ignore dim-nick messages wrt modeline-activity.
2006-04-26 03:09:31 +00:00
Eli Zaretskii
a2524d2695 (rcirc-default-server): Rename from rcirc-server.
(rcirc-default-port): Rename from rcirc-port.
(rcirc-default-nick): Rename from rcirc-nick.
(rcirc-default-user-name): Rename from rcirc-user-name.
(rcirc-default-user-full-name): Rename from rcirc-user-full-name.
(rcirc-low-priority-flag): New variable.
(rcirc-decode-coding-system): New defcustom.
(rcirc-encode-coding-system): New defcustom.
(rcirc-coding-system-alist): New defcustom.
(rcirc-multiline-major-mode): New defcustom.
(rcirc-nick): New internal variable.
(rcirc-process): Remove variable.
(rcirc-server-buffer): New variable.
(rcirc): Update to use rcirc-default-* variables above.
(rcirc-connect): Do not add window-configuration-hook-here.
(rcirc-server): New internal variable.
(rcirc-connect): Do not send keepalive pings if rcirc-keepalive-seconds is nil.
(with-rcirc-server-buffer): New macro.
(rcirc-send-string): Encode with rcirc-encode-coding-system.
(rcirc-server-name): Rename from rcirc-server.
(rcirc-buffer-process): New function.
(rcirc-buffer-nick): New function.
(rcirc-buffer-target): Remove function.
(set-rcirc-decode-coding-system, set-rcirc-encode-coding-system): New commands.
(rcirc-mode-map): Change binding of C-c C-l to rcirc-toggle-low-priority.
(rcirc-mode): Initialize coding system based on rcirc-coding-system-alist.
New change-major-mode-hook to part the channel on a mode change.
Make kill-buffer-hook buffer-local.
(rcirc-change-major-mode-hook): New function.
(rcirc-clean-up-buffer): Rename from rcirc-kill-buffer-hook-1.
(rcirc-last-post-time): New variable.
(rcirc-process-message): Store the last time user posted a message to this
target.
(rcirc-multiline-minor-mode): New mode.
(rcirc-multiline-minor-mode-map): New mode map.
(rcirc-edit-multiline): Put multiline-edit buffer in
rcirc-multiline-major-mode along with rcirc-multiline-minor-mode.
(rcirc-print): Any line starting with an ignored nick will be ignored.
(rcirc-print): Decode using rcirc-decode-coding-system.
(rcirc-track-minor-mode): Update global-mode-string when disabling this mode.
(minor-mode-alist): add LowPri indicator.
(rcirc-toggle-low-priority): New function.
(rcirc-last-non-irc-buffer): Prefix arg now no means switch to next low priority
buffer with activity.
(rcirc-record-activity): Sort buffers in rcirc-activity by the last time the
user posted a message in to the target.
(rcirc-update-activity-string): New formatting for low priority buffers.
(rcirc-split-activity): New function.
(rcirc-handler-PART, rcirc-handler-KICK)
(rcirc-handler-PART-or-KICK): Kick responses are printed properly.
(rcirc-nick-away-alist): New variable.
(rcirc-handler-301): New handler.  Away messages are printed once per change.
2006-04-08 10:23:53 +00:00
Romain Francoise
8d214091ef (rcirc-connect): Add autoload cookie. 2006-03-27 20:23:22 +00:00
Miles Bader
e8f10ddbda Revision: emacs@sv.gnu.org/emacs--devo--0--patch-156
rcirc.el update from Ryan Yeske

2006-03-13  Ryan Yeske  <rcyeske@gmail.com>

   * lisp/net/rcirc.el (rcirc) <defgroup>: Add link to manual.
   (rcirc-print): Mark the start of text at the end of the prompt.
   (rcirc-track-minor-mode): Add autoload cookie.
   (rcirc-update-activity-string): Add space to front of mode-line
   indicator.
2006-03-13 10:10:09 +00:00
Miles Bader
54aba1eec0 Revision: emacs@sv.gnu.org/emacs--devo--0--patch-155
Remove nick-abbrevs stuff from rcirc.el

2006-03-13  Miles Bader  <miles@gnu.org>

   * lisp/net/rcirc.el (rcirc-nick-abbrevs): Variable removed.
   (rcirc-abbrev-nick): Function removed.
   (rcirc-format-response-string): Don't call `rcirc-abbrev-nick'.
2006-03-13 10:01:06 +00:00
Eli Zaretskii
019ed9c702 (rcirc-url-regexp): Match entire url when it starts with "www". 2006-03-03 11:44:11 +00:00
Eli Zaretskii
2fbed782a0 (rcirc-connect): Make all arguments optional, and default to global variable
values for unsupplied args.
(rcirc-get-buffer-create): Fix bug with setting the target.
(rcirc-any-buffer): Rename from rcirc-get-any-buffer, and include test for
rcirc-always-use-server-buffer-flag here.
(rcirc-response-formats): Add %N, which is a facified nick.  %n uses the
default face.  Change the ACTION format string.  If the "nick" is the server,
don't print anything for that field.  Comment fixes.
(rcirc-target-buffer): Don't test rcirc-always-use-server-buffer-flag here.
(rcirc-print): Squeeze extra spaces out of the text before message.
(rcirc-put-nick-channel): Strip potential "@" char from nick before adding
them to nick table.
(rcirc-url-regexp): Improve to match address like "foo.com".
2006-02-17 11:19:00 +00:00
Miles Bader
3715419e9e Revision: emacs@sv.gnu.org/emacs--devo--0--patch-79
(rcirc-format-response-string): Fix small bugs
2006-02-13 01:59:00 +00:00
Miles Bader
324e4da7fb Revision: emacs@sv.gnu.org/emacs--devo--0--patch-69
rcirc: Add flexible response formatting; Add nick abbrevs

2006-02-12  Miles Bader  <miles@gnu.org>

   * lisp/net/rcirc.el (rcirc-nick-abbrevs, rcirc-response-formats):
   New variables.
   (rcirc-abbrev-nick): New function.
   (rcirc-format-response-string): Rewrite to use the formats in
   `rcirc-response-formats' and expand escape sequences therein.
   A text-property `rcirc-text' is added over the actual response
   text to make easy to find inside the returned string.
   (rcirc-print): When filling, just look for the `rcirc-text'
   text-property to find the appropriate fill prefix, instead of
   using hardwired patterns.
2006-02-11 21:42:23 +00:00
Eli Zaretskii
db58efbf51 (rcirc-startup-channels-alist): Add irc.freenode.net and #emacs as defaults.
(rcirc-ignore-all-activity-flag): Remove variable.
(rcirc-authinfo): New variable.
(rcirc-authinfo-filename): Remove variable.
(rcirc-always-use-server-buffer-flag): New flag.
(rcirc): M-x rcirc will automatically connect without prompting.
C-u M-x rcirc will prompt.  Use rcirc-connect to create a
connection in lisp.
(rcirc-process-server-response-1): Remove everything but the nick
portion of the sender so it doesn't need to be done everywhere
else.  Update related code.
(global-map): Remove global keybindings.
(rcirc-get-buffer-create): Make sure rcirc-topic is set.
(rcirc-send-input): Split into several functions.
(rcirc-process-input-line, rcirc-process-message, rcirc-process-command):
New functions.
(rcirc-target-buffer): Add function to determine where to route messages.
(rcirc-user-nick): Save match data.
(rcirc-toggle-ignore-buffer-activity)
(rcirc-update-activity-string): Remove global ignore
functionality, which can be done now by toggling rcirc-track-minor-mode.
(rcirc-track-minor-mode-map): New keymap.
(rcirc-track-minor-mode): New minor-mode.
(ignore): Make the ignore output nicer.  Always print it when adding or
removing nicks.
(rcirc-url-regexp): Improve.
(rcirc-mangle-text): Remove properties before using text in the modeline.
(rcirc-authenticate): Authentication data comes from rcirc-authinfo, not
the file pointed to by rcirc-authinfo-file.
(rcirc-server-prefix): Inherit from rcirc-server.
2006-02-08 17:39:10 +00:00
Thien-Thi Nguyen
ceb4c4d303 Update years in copyright notice; nfc. 2006-02-06 12:31:40 +00:00
Juanma Barranquero
f161b0795c (rcirc-cmd-join): Improve argument/docstring consistency. 2006-02-02 16:49:58 +00:00
Juanma Barranquero
2e39877180 (rcirc-debug): Fix docstring.
(rcirc-fill-column, rcirc-receive-message-hooks, rcirc-browse-url-map,
rcirc-read-only-flag, rcirc-prompt, rcirc-mode, rcirc-generate-new-buffer-name,
rcirc-startup-channels, rcirc-ignore-update-automatic, rcirc-cmd-ignore,
rcirc-browse-url, rcirc-url-regexp): Fix typos in docstrings.
(rcirc-print): "?\ " -> "?\s".
2006-02-02 11:47:17 +00:00
Alex Schroeder
2c8abe907f (rcirc-ignore-list): New option.
(rcirc-ignore-list-automatic): New variable.
(rcirc-print): Take rcirc-ignore-list into account.
(rcirc-cmd-ignore): New command.
(rcirc-ignore-update-automatic): New function.
(rcirc-handler-PART, rcirc-handler-QUIT): Use it to maintain the
list if ignored nicks.
(rcirc-handler-NICK): Ditto, and also ignore the new nick.
2006-01-07 02:51:45 +00:00
Alex Schroeder
53f831f3cb (rcirc-send-input): No longer check whether the
process is open, since not all commands need an open process.
(rcirc-send-string): Check whether the process is open before
sending anything.
2006-01-07 02:29:14 +00:00
Eli Zaretskii
ad8121fe5d (rcirc-mangle-text): Add bold face property without replacing existing
properties.
(rcirc-my-nick, rcirc-other-nick, rcirc-server)
(rcirc-nick-in-message, rcirc-prompt): Use min-colors and remove tty specs.
(rcirc-server-prefix, rcirc-server): New faces.
(rcirc-url-regexp): Generate with rx macro.
(rcirc-last-server-message-time): New variable.
(rcirc-filter): Record time of last message.
(rcirc-keepalive): Kill processes that did not send a message
since the last ping.
(rcirc-mode): Give rcirc-topic a local binding here.
2005-11-19 13:12:05 +00:00
Eli Zaretskii
adf794e4a4 Use split-string OMIT-NULLS argument.
(rcirc-print): Force redisplay before running hooks.  Do long
buffer truncation after making new text read-only.  Deal with nil
text when decoding strings.  If TARGET is nil, use either the
currently selected buffer, if it is an rcirc buffer and of the
same process or the process buffer.
(rcirc-mode): Remove header-line.  Recompute short buffer names.
Initialize rcirc-buffer-alist here instead of rcirc-get-buffer-create.
(rcirc-short-buffer-name): Add variable.
(rcirc-kill-buffer-hook): Recompute short buffer names.  Remove
nick from private channel.
(rcirc-send-input): Send command text to current-buffer.  Don't
clear overlay arrow here.
(rcirc-short-buffer-name): Return a short buffer name.
(rcirc-update-short-buffer-names, rcirc-abbreviate)
(rcirc-rebuild-tree, rcirc-make-trees): Add functions to generate
buffer-name abbreviations.
(rcirc-kill-buffer-hook-1): Split to make debugging easier.  Do
not touch nick-table when killing a parted channel.
(rcirc-window-configuration-change): Rename from
rcirc-update-activity.  Clear arrow from current buffer if it is now hidden.
(rcirc-current-buffer): Add variable.
(rcirc-my-nick, rcirc-other-nick, rcirc-server)
(rcirc-nick-in-message, rcirc-prompt, rcirc-mode-line-nick):
Remove -face from names.
(rcirc-update-activity-string): Print "DND" when globally ignoring activity.
(rcirc-ignore-buffer-activity-flag): Rename from rcirc-ignore-channel-activity.
(rcirc-ignore-all-activity-flag): Doc fix.
(rcirc-channels): Remove variable.
(rcirc-kill-buffer-hook):
(rcirc-get-buffer-create): Add nick to private channel.
(rcirc-multiline-edit-submit): Remove tabs.
(rcirc-put-nick-channel, rcirc-channel-nicks): Look up nicks case folded.
(rcirc-remove-nick-channel): Bug fix.
(rcirc-toggle-ignore-buffer-activity): Rename from
rcirc-toggle-ignore-channel-activity.
(rcirc-record-activity): Add buffers to the front of the list.
(rcirc-update-activity): Remove killed buffers from list.
(rcirc-process-server-response-1): Remove last argument if it is
null before calling handler.
(rcirc): Add "rcirc" defcustom prefix.
(rcirc-prompt): Simplify default prompt.  Use custom-initialize-default.
(rcirc-private-chats): Remove variable.
(rcirc-prompt): Change initialization.
(rcirc-version): Remove function.
(rcirc-id-string): Add constant.
(rcirc-last-buffer): Remove variable.
(rcirc-buffer-alist): Add variable.
(rcirc-connect): Update variable setup.
(rcirc-sentinel, rcirc-update-prompt): Use `rcirc-buffer-alist'.
(rcirc-trap-errors-flag): Rename from `rcirc-trap-errors' change default.
(rcirc-handler-generic): Trigger activity.
(rcirc-send-message): Create the buffor of the target.
(rcirc-generate-new-buffer-name): Rename from
`rcirc-get-buffer-name'.
(rcirc-get-buffer): Just return nil if there is no matching buffer.
(rcirc-multiline-edit-cancel): Remove function.
(rcirc-set-last-buffer): Remove function.
(rcirc-get-any-buffer): Add function.
(rcirc-join-channels): Don't print /join text.
(rcirc-toggle-ignore-channel-activity): Add and update echo area messages.
(rcirc-cmd-ctcp): Use rcirc-send-string to send request.
(rcirc-handler-NOTICE): Recognize CTCP responses.
(rcirc-handler-332, rcirc-handler-332): Use a temp buffer for
constructing TOPIC string for buffers we are not JOINed.
(rcirc-handler-CTCP-response): Add handler.
(rcirc-multiline-edit-submit): Restore the window-configuration
before adjusting point.
(rcirc): Add customization group.
(rcirc-server, rcirc-port, rcirc-nick, rcirc-user-name)
(rcirc-user-full-name, rcirc-startup-channels-alist)
(rcirc-fill-flag, rcirc-fill-column, rcirc-fill-prefix)
(rcirc-ignore-all-activity-flag, rcirc-time-format)
(rcirc-input-ring-size, rcirc-read-only-flag)
(rcirc-buffer-maximum-lines, rcirc-authinfo-file-name)
(rcirc-auto-authenticate-flag, rcirc-prompt, rcirc-print-hooks):
Change defvar to defcustom.
(rcirc-update-prompt): Add optional ALL arg, which will update
prompts in all rcirc buffers.  Regexp quote replacement text.
(rcirc-fill-column): Accept 'frame-width as a value.
(rcirc-set-changed): Add function.
(rcirc-next-active-buffer): Write more meaningful messages.
(rcirc-faces): Add customization group.
(rcirc-my-nick-face, rcirc-other-nick-face, rcirc-server-face)
(rcirc-nick-in-message-face, rcirc-prompt-face)
(rcirc-mode-line-nick-face): Move into rcirc-faces group.
(with-rcirc-process-buffer): Move before first usage.
(rcirc-debug-buffer): Rename from `rcirc-log-buffer'.
(rcirc-debug-flag): Rename from `rcirc-log-p'.
(rcirc-debug): Rename from `rcirc-log'.
(rcirc-format-response-string): Do not print '-' chars for a
NOTICE with no sender.  Simplify output of server responses.
(rcirc-browse-url-map, rcirc-browse-url-at-point)
(rcirc-browse-url-at-mouse, rcirc-mangle-text): Make urls
mouse and RET clickable.
2005-11-04 15:05:11 +00:00
Romain Francoise
b71cef5c98 Now part of GNU Emacs. Update FSF's address. 2005-10-21 07:56:50 +00:00
Miles Bader
e636ae1531 Add arch tagline 2005-10-20 23:02:18 +00:00
Romain Francoise
c18a54de65 (with-rcirc-process-buffer): Move above its first user. 2005-10-20 18:28:20 +00:00
Richard M. Stallman
baa4adc699 Comment changes. 2005-10-20 16:53:55 +00:00
Richard M. Stallman
bd43c9908b New file. 2005-10-20 16:51:41 +00:00