# do not edit -- automatically generated by arch changelog # non-id: automatic-ChangeLog--steve@eicq.org--2005/eicq--main--0.7 # 2005-06-13 14:53:19 GMT Steve Youngs version-0 Summary: Eicq 0.7 is released! Revision: eicq--main--0.7--version-0 Just your normal release-day doc updates. * INSTALL: Update to include references to SXEmacs. * Makefile (superupgrade): Remove this target, I don't use it anymore. Also, update copyright notice. * NEWS: Update. * README: Update the "feature" section. Add some words about eicq-track and eicq-history. * TODO: Put a note in it saying that it is hideously out of date. Deleted a couple of items that have either been implemented or don't make sense anymore. * eicq-track.el: Add my name to copyright notice. * *.el: Update copyright notice. modified files: INSTALL Makefile NEWS README TODO eicq-buddy.el eicq-convert.el eicq-history.el eicq-menu.el eicq-meta.el eicq-report.el eicq-setup.el eicq-status.el eicq-toolbar.el eicq-track.el eicq-v8.el eicq-wharf.el eicq-world.el eicq.el 2005-06-12 12:02:47 GMT Steve Youngs patch-60 Summary: Merged from lg@xwem.org--2005 (patch 28) -- auto-reconnect/timeout Revision: eicq--main--0.7--patch-60 Patches applied: * lg@xwem.org--2005/eicq--lg--0.7--patch-28 fixes, fetching flaps changed My additions/tweaks to this changeset: * eicq.el (eicq-do-disconnect): Only attempt reconnect if the user has set `eicq-user-password' and `eicq-delete-offline-messages-flag' is _NOT_ set to "ask". This is so unattended reconnects won't wait for user input. modified files: eicq-v8.el eicq.el new patches: lg@xwem.org--2005/eicq--lg--0.7--patch-28 2005-06-10 10:19:27 GMT Steve Youngs patch-59 Summary: Fix Eicq buffer display on a TTY Revision: eicq--main--0.7--patch-59 * eicq.el (eicq-show-window): Don't try to create frames if we're on a TTY. modified files: eicq.el 2005-06-01 01:41:21 GMT Steve Youngs patch-58 Summary: Searching for ICQ users Revision: eicq--main--0.7--patch-58 This changeset implements searching. With this you can now search for ICQ users by: First Name, Last Name, Nick Name, Email Address. Searching by UIN is supported too, but that was implemented ages ago. There are 3 user search functions: `eicq-search-by-uin' -- search by UIN `eicq-search-by-email' -- search by email address `eicq-search' -- search by any of: first name, last name, nick name, email address * eicq-v8.el (eicq-v8-snac-srv-fromicqsrv): Handle type 2010/subtype 420 which is all search matches except the final match. The final match is subtype 430. (eicq-v8-snac-cli-searchbyemail): Handle SNAC 15,2/2000/1395 searching by email address. (eicq-v8-snac-cli-searchbypersinf): Handle SNAC 15,2/2000/1375 searching by first name, last name, nick name, email address. (eicq-v8-pack-llnts): New packer for data type LLNTS. * eicq.el (eicq-do-search-found): Modify to handle search results from subtype 420, ie, all matches except the final match. (eicq-do-search-found-last): New. Handle search result from subtype 430, ie, just the final match. (eicq-login): Add new incoming handler "search-found-last" for subtype 430. (eicq-search): Update to new v8 protocol search. (eicq-search-by-email): New. Search for users by email address. * eicq-toolbar.el (eicq-toolbar-search): Update to use new search function. * eicq-menu.el (eicq-main-map): Bind `F' to `eicq-search'. modified files: eicq-menu.el eicq-toolbar.el eicq-v8.el eicq.el 2005-05-28 02:21:32 GMT Steve Youngs patch-57 Summary: Another attempt at fixing eicq-history-directory being void Revision: eicq--main--0.7--patch-57 Third time lucky? Hopefully now eicq-history-directory won't be void for people not using eicq-history. * eicq.el (eicq-history): Moved from eicq-history.el to here. (eicq-history-enabled-flag): Ditto. (eicq-history-directory): Ditto. (eicq-history-mode-hook): Ditto. * eicq-history.el: Moved the defcustoms to eicq.el because of the crazy interdepencies of the Eicq libs. * eicq-report.el (eicq-report-debug): Remove eicq-history.el, there are no user configurable things in there anymore. modified files: eicq-history.el eicq-report.el eicq.el 2005-05-27 08:53:01 GMT Steve Youngs patch-56 Summary: Whee little doc fix Revision: eicq--main--0.7--patch-56 * eicq-history.el: Teeny tiny doc fix in commentary section modified files: eicq-history.el 2005-05-27 08:50:51 GMT Steve Youngs patch-55 Summary: Fix previous fix for eicq-history Revision: eicq--main--0.7--patch-55 * eicq-log.el (eicq-history-directory): Revert previous change. * eicq-buddy.el (require): Drag in eicq-history. modified files: eicq-buddy.el eicq-log.el 2005-05-26 22:12:29 GMT Steve Youngs patch-54 Summary: Fix eicq-history -- users not using it don't have to require it Revision: eicq--main--0.7--patch-54 * eicq-log.el (eicq-history-directory): Defvar it to nil so people _not_ wanting to use eicq-history don't have to require it in their set up. modified files: eicq-log.el 2005-05-26 10:12:10 GMT Steve Youngs patch-53 Summary: Fix prob with extra-buffers var containing killed buffers Revision: eicq--main--0.7--patch-53 * eicq.el (eicq-exit): Set `eicq-extra-buffers-to-kill' to nil after the extra buffers have been killed. modified files: eicq.el 2005-05-12 05:40:56 GMT Steve Youngs patch-52 Summary: Handle "invisible" correctly. Revision: eicq--main--0.7--patch-52 Up until now, Eicq has not handled the "invisible" status anywhere near correctly. In reality, "invisible" isn't really a status in it's own right. It's a "flag" to tack onto other statuses, much like the "web-aware" status is. With that in mind, Eicq now does "invisible" in the same manner as it does "web-aware". If you want to be "invisible" at login time, set `eicq-user-meta-invisible' to non-nil. If you want to change your visibility during your ICQ session, rat button2 on "[Invisible on/off]" in the status buffer. Alternatively, `b' in the log or status buffers. === New User Commands === eicq-toggle-invisibility === New User Variables === eicq-user-meta-invisible -- boolean eicq-user-meta-invisibility-indicator -- string === User Variables Changed Defaults === eicq-user-initial-status -- now defaults to "online" * eicq.el (eicq-login): Possibly set invisible with the initial status. * eicq-log.el (eicq-log-update-modeline): New. Updates the invisibility indicator in the modeline. (eicq-log-mode): Use it. * eicq-meta.el (eicq-meta): Give the group a prefix "eicq-user-meta-". (eicq-user-meta-invisible): New. Set to non-nil to be "invisible" at login. (eicq-user-meta-invisibility-indicator): New. The value of this, a string, displays in the modeline when you are "invisible". * eicq-status.el (eicq-valid-statuses): Remove "invisible", it isn't really a status in the truest sense of the word. (eicq-user-initial-status): Default to "online". If you want to be "invisible" at login, set `eicq-user-meta-invisible' to non-nil instead. (eicq-buddy-update-status): Work^Wkludge around `eicq-user-status' being set to "invisible"... it should never happen. (eicq-turn-on-invisibility): New. Add invisible to status. (eicq-turn-off-invisibility): New. Remove invisible from status. This is the opposite of `eicq-turn-on-invisibility'. (eicq-toggle-invisibility): Toggle between visible and invisible. (eicq-change-status): Possibly set invisible. (eicq-status-show-buffer): Use `eicq-toggle-invisibility' for the "Invisible" widget in the status buffer. Also, change the text in the "Invisible" widget to indicate that it is now a toggle. * eicq-menu.el (eicq-main-map): Bind `b' to `eicq-toggle-invisibility' in the log and status buffers. modified files: eicq-log.el eicq-menu.el eicq-meta.el eicq-status.el eicq.el 2005-05-04 08:20:40 GMT Steve Youngs patch-51 Summary: Extract and display `REASON' from SRV_AUTHREQ properly Revision: eicq--main--0.7--patch-51 * eicq-v8.el (eicq-v8-fetch-bstr): New. Fetch data type "bstr", as seen in SRV_AUTHREQ. (eicq-v8-snac-srv-authreq): Use it, instead of `eicq-v8-fetch-string'. * eicq.el (eicq-do-message-helper): Don't filter auth-request messages through `substring', the fetch function is DTRT now. modified files: eicq-v8.el eicq.el 2005-05-03 08:46:12 GMT Steve Youngs patch-50 Summary: Fix authorisation request reason messages Revision: eicq--main--0.7--patch-50 * eicq.el (eicq-do-message-helper): Parse authorisation request messages through `substring' to filter out some noise. modified files: eicq.el 2005-05-02 19:07:10 GMT Steve Youngs patch-49 Summary: Add SRV_AUTHREQ handler, fix SRV_ADDEDYOU handler Revision: eicq--main--0.7--patch-49 * eicq.el (eicq-login): Install incoming handlers for SRV_ADDEDYOU and SRV_AUTHREQ. (eicq-do-added-you): Handler function for SRV_ADDEDYOU. (eicq-do-auth-request): Handler function for SRV_AUTHREQ (eicq-do-message-helper): Log SRV_ADDEDYOU messages as system messages. (eicq-sound-alist): Add a "system" sound. * eicq-v8.el (eicq-v8-snac-srv-addedyou): Call `eicq-v8-ctx-run-incoming-handler' with the appropriate keyword pairs. * eicq-v8.el (eicq-v8-snac-srv-authreq): New. For SRV_AUTHREQ. modified files: eicq-v8.el eicq.el 2005-05-01 16:07:05 GMT Steve Youngs patch-48 Summary: The case of the disappearing smiley. Revision: eicq--main--0.7--patch-48 * eicq-log.el (eicq-log): Fill the message _before_ adding smilies. Without this, smilies that are at eol disappear. modified files: eicq-log.el 2005-05-01 09:26:57 GMT Steve Youngs patch-47 Summary: Small regex fix in eicq-history Revision: eicq--main--0.7--patch-47 This fixes a problem in the history buffers when the day portion of the date is a single digit starting in column 2. * eicq-history.el (eicq-history-outline-regexp): Fix regexp to handle the single digit dates of the month. (eicq-history-event-regexp): Ditto. modified files: eicq-history.el 2005-04-30 13:12:52 GMT Steve Youngs patch-46 Summary: Add hyperlinks to the log buffer. Revision: eicq--main--0.7--patch-46 Dust off your rat, because with this change, the Eicq log buffer has plenty of pointy-clicky things in it. URLs, email addresses, and even Unix manual page topics are all "hot". With your rat, button2, or with your keyboard, RET, on one of these links will have you browsing, composing, or reading lickedy split. * eicq-emphasis.el (eicq-emphasis-url-regexp): New. A regexp to match URLs. (eicq-emphasis-email-regexp): New. A regexp to match email addresses. (eicq-emphasis-man-regexp): New. A regexp to match Unix manual page topics. (eicq-emphasis-visit-hyperlink-at-point): New. Uses `browse-url' or `compose-mail' or `manual-entry' to follow links to URLs, email addresses or man pages. The links themselves are extents in the log buffer. (eicq-emphasis-visit-hyperlink-at-mouse): New. As above, but via a rat. (eicq-emphasis-hyperlink-message): New. "hyperlink-er-ise" messages in the log buffer. * eicq-log.el (eicq-log): Call `eicq-emphasis-hyperlink-message' on messages in the log buffer as they come in. * eicq-log.el (eicq-log-buddy-url): Use `eicq-hyperlink-map' instead of `eicq-url-map'. * eicq-menu.el (eicq-hyperlink-map): New. Replaces `eicq-url-map'. (eicq-url-map): Removed. modified files: eicq-emphasis.el eicq-log.el eicq-menu.el 2005-04-29 05:51:09 GMT Steve Youngs patch-45 Summary: Gnus-style text highlighting Revision: eicq--main--0.7--patch-45 With this change, the log buffer gets sexy! _text_ is underlined *text* is bold /text/ is italic _*text*_ is underlined and bold _*/text/*_ is underlined and bold and italic */text/* is bold and italic _/text/_ is underlined and italic And yes, it is customisable, so you can add others if you wish. Turn on this magic with: (setq eicq-emphasis-enabled-flag t) * eicq-log.el (eicq-log): Maybe call `eicq-emphasis-treat-message' to do Gnus-style text rendering. * Makefile (SOURCES): Add eicq-emphasis.el * eicq-report.el (eicq-report-debug): Add eicq-emphasis.el new files: .arch-ids/eicq-emphasis.el.id eicq-emphasis.el modified files: Makefile eicq-log.el eicq-report.el 2005-04-28 22:52:03 GMT Steve Youngs patch-44 Summary: Little tweaks and improvments to `eicq-log' Revision: eicq--main--0.7--patch-44 * eicq-log.el (eicq-log-buddy-url): Add balloon-help and a face to URLs. (eicq-log-update-history): New. Updates the history files and makes `eicq-log' shorter and simpler. (eicq-log-update-tracker): New. Updates the eicq-track modeline indicator and makes `eicq-log' shorter and simpler. (eicq-log-update-balloon): New. Updates the balloon-help extent property on the contact names in the log buffer and makes `eicq-log' shorter and simpler. (eicq-log): Use `eicq-log-update-{history,tracker,balloon}'. modified files: eicq-log.el 2005-04-28 05:20:17 GMT Steve Youngs patch-43 Summary: Add balloon-help coolness to contact names Revision: eicq--main--0.7--patch-43 * eicq-log.el (eicq-log): Set up balloon-help properties for the alias extents. * eicq-buddy.el (eicq-buddy-update-face): Set up balloon-help properties for the names in the buddy buffer. (eicq-buddy-show-buffer): Force a `eicq-buddy-update-face' on each name to update its balloon-help extent property. It it probably a bit of overkill to do it this way, but it works. Improvements very welcome. * eicq-world.el (eicq-add-new-user-to-buddy-buffer): Add balloon-help properties to the extent. modified files: eicq-buddy.el eicq-log.el eicq-world.el 2005-04-27 22:59:09 GMT Steve Youngs patch-42 Summary: Make all calls to play-sound-file consistent througout Revision: eicq--main--0.7--patch-42 * eicq.el (eicq-do-online): Use `eicq-maybe-play-sound'. * eicq-status.el (eicq-buddy-update-status): Ditto. modified files: eicq-status.el eicq.el 2005-04-24 06:27:48 GMT Steve Youngs patch-41 Summary: Add doc string to advice in `eicq-track-init'. Revision: eicq--main--0.7--patch-41 * eicq-track.el (eicq-track-init): Give the advice a doc string. modified files: eicq-track.el 2005-04-23 01:38:22 GMT Steve Youngs patch-40 Summary: Merged from lg@xwem.org--2005 (patch 23) Revision: eicq--main--0.7--patch-40 Patches applied: * lg@xwem.org--2005/eicq--lg--0.7--patch-23 commented buggy and unuseful code modified files: eicq-v8.el new patches: lg@xwem.org--2005/eicq--lg--0.7--patch-23 2005-04-23 01:30:27 GMT Steve Youngs patch-39 Summary: eicq-track clean up, add "Riece-style" modeline indicator Revision: eicq--main--0.7--patch-39 This patch cleans up the eicq-track code a bit. Plus it adds a Riece style modeline indicator for eicq-track. See `eicq-track-indicator-type'. The default tracking indicator style is like ERC... [name,name2,name3...] The Riece style is... [E] You can also filter out the debug, error, and system log messages so they don't update the indicator. See `eicq-track-events-type'. * eicq-track.el: Don't require eicq-log, instead just defvar eicq-log-buffer at compile-time. (eicq-track-visibility): Removed. (eicq-track-events-type): Update doc string. Add new type, "msg" which is for incoming user messages only. The "incoming" type also tracks system and debug log entries too. (eicq-track-shorten-to): Set custom type to integer. (eicq-log-buffer-visible-p): Removed. (eicq-track-clear-modeline): Use `redraw-modeline' instead of `force-mode-line-update'. (eicq-track-init): setq eicq-track-initialized instead of setf. (eicq-track-indicator-type): New. Choose either ERC style modeline indicator or Riece style. (eicq-short-nick): Rename to `eicq-track-truncate-nick'. (eicq-track-truncate-nick): New. (eicq-track-add-nick): Rewrite to cater for both ERC style and Riece style modeline indicators. Also, keep lines under 80 columns long. * eicq.el: Don't require eicq-track here. Do it in eicq-log.el instead. * eicq-log.el: Require eicq-track. * eicq-log.el (eicq-log): Update to allow for 'msg' type from `eicq-track-events-type'. * eicq-report.el (eicq-report-debug): Add eicq-track.el. modified files: eicq-log.el eicq-report.el eicq-track.el eicq.el 2005-04-22 20:40:17 GMT Steve Youngs patch-38 Summary: Merged from karma@sxemacs.org--2005 (patch 4) -- eicq-track Revision: eicq--main--0.7--patch-38 Patches applied: * karma@sxemacs.org--2005/eicq--karma--0.7--patch-4 introduces `eicq-track'feature new files: .arch-ids/eicq-track.el.id eicq-track.el modified files: Makefile eicq-log.el eicq.el new patches: karma@sxemacs.org--2005/eicq--karma--0.7--patch-4 2005-04-22 08:16:48 GMT Steve Youngs patch-37 Summary: History improvements, eicq-setup tweaks, minor build fixes Revision: eicq--main--0.7--patch-37 This patch makes a few improvements to eicq-history: - uniform `eicq-history-' naming throughout eicq-history.el - history files are only saved on logout - added a user command to explicitly save histories bound to `H' in buddy/log buffers and `s' in history buffers. - entries in history files are filled - minor regexp fix to catch strange nick names in the history files. - `eicq-history-here-other-window' restores the original window config on exit from eicq-history-mode. - the default directory for history files is now ~/.eicq/history/ There's also a couple of minor build related changes. * Makefile (SOURCES): List the files explicitly instead of using wildcards so we can control what gets compiled and in which order. (EXTRA_SRC): Add eicq-version.el because it isn't getting included in SOURCES anymore. * eicq-history.el (eicq-history): New custom group. * eicq-history.el (eicq-history-enabled-flag): New custom variable. This used to be `eicq-log-per-user'. * eicq-history.el (eicq-history-directory): New custom variable. This used to be `eicq-log-per-user-directory'. * eicq-history.el (eicq-history-mode-hook): Change custom group to eicq-history. * eicq-history.el (eicq-history-old-window-config): New. Holds the old window config so when quitting the history buffer things are reset to the state they were before. * eicq-history.el (eicq-history): Add a little error checking. Stop it from loading a dired buffer if the user just hits RET at the prompt for a user name. * eicq-history.el (eicq-history-here-other-window): Save the window config before doing anyting else so the user comes back to the way things were before he entered eicq-history-mode. * eicq-history.el (eicq-history-event-regexp): Fix regexp to catch weird nick names. * eicq-history.el (eicq-history-mode): Don't set the fill-column. Add the menu after setting the mode name, but before anything else. * eicq-history.el (eicq-history-bury-buffer): New. This used to be `eicq-history-kill-buffer'. By default it buries the buffer, with a prefix arg it kills the buffer. * eicq-history.el (eicq-history-save): New. Saves all the files in the history directory that are open. * eicq-log.el (eicq-extra-buffers-to-kill): New variable. Holds a list of extra buffers to be saved/killed. Primary use is for the history files. They are saved on logout and killed on exit. * eicq-log.el (eicq-log): Use eicq-history-enabled-flag and eicq-history-directory instead of the old "per-user" vars. Remove an unnecessary let and its local vars. Fill the entries in the history files. * eicq-menu.el (eicq-history-menu): Add menu item for `eicq-history-save'. Change "Quit" item to use `eicq-history-bury-buffer'. * eicq-menu.el (eicq-history-mode-map): Ditto. * eicq-menu.el (eicq-main-map): Define `H' to be `eicq-history-save'. * eicq-setup.el (eicq-setup): Require the needed libs if they aren't already loaded. Check to see if each directory is nonexistent before creating it. And don't use `format' with `message', it's not necessary. * eicq.el (eicq-directory): Autoload it. * eicq.el (eicq-exit): Kill all the buffers in `eicq-extra-buffers-to-kill'. * eicq.el (eicq-logout): Save all the buffers in `eicq-extra-buffers-to-kill'. modified files: Makefile eicq-history.el eicq-log.el eicq-menu.el eicq-setup.el eicq.el 2005-04-20 20:48:41 GMT Steve Youngs patch-36 Summary: Introduce `eicq-directory' and eicq-history improvements Revision: eicq--main--0.7--patch-36 * eicq-history.el: Pull in eicq so we can use `eicq-directory'. And add comments about using it. (eicq-log-per-user-directory): Set default with `expand-file-name' and `eicq-directory'. Set custom type to directory. (eicq-history-mode-hook): New hook. Run after entering `eicq-history-mode'. (eicq-history): Simplify. (eicq-history-event-regexp): Use concat and split the regexp to keep the source code under 80 columns. (eicq-history-mode): Move point back one line so it is on the last entry in the buffer. (eicq-history-kill-buffer): Don't try to swich back to the log buffer because it may not exist. Also make sure the buffer being killed is in `eicq-history-mode'. (eicq-history-timestamp-face): Don't check if it is bound. (eicq-history-event-type-face): Ditto. (eicq-history-nick-face): Ditto. * eicq-log.el (eicq-log-filename): Define with `expand-file-name' and hang it off `eicq-directory'. Set custom type to file. Defvar `eicq-log-per-user' and `eicq-log-per-user-directory' at compile time. (eicq-log): Use `expand-file-name' to get to the per-user history file. * eicq-report.el (eicq-report-debug): Include eicq-history.el in the list of files to check for changed variables. * eicq-setup.el (eicq-setup): Create the sound and logs directories. * eicq-world.el (eicq-world-rc-filename): Change to a defcustom. * eicq.el (eicq-directory): New custom variable. All Eicq support files, things like logs, histories, sound files, world file, go into this directory or subdirectories of it. (eicq-sound-directory): Hang it off `eicq-directory'. modified files: eicq-history.el eicq-log.el eicq-report.el eicq-setup.el eicq-toolbar.el eicq-world.el eicq.el 2005-04-19 21:29:00 GMT Steve Youngs patch-35 Summary: Merged from karma@sxemacs.org--2005 (patch 1-2) -- history Revision: eicq--main--0.7--patch-35 This gives us the option of having mICQ-style logging... a log file for each contact. You can view the history of any contact. And it makes way for implementing things like `eicq-last-seen' for showing the date/time you last had contact with someone. Patches applied: * karma@sxemacs.org--2005/eicq--karma--0.7--patch-1 introduces "per-user" logging and `eicq-history' feature * karma@sxemacs.org--2005/eicq--karma--0.7--patch-2 small fix in `eicq-history' new files: .arch-ids/eicq-history.el.id eicq-history.el modified files: eicq-log.el eicq-menu.el eicq.el new patches: karma@sxemacs.org--2005/eicq--karma--0.7--patch-1 karma@sxemacs.org--2005/eicq--karma--0.7--patch-2 2005-04-11 03:19:33 GMT Steve Youngs patch-34 Summary: List names in buddy buffer in the same order they are in world Revision: eicq--main--0.7--patch-34 * eicq-world.el (eicq-world-update): Reverse the list items in `eicq-world' so that the buddy buffer will display the buddies in the same order that they appear in the world file. modified files: eicq-world.el 2005-04-09 23:58:59 GMT Steve Youngs patch-33 Summary: Fix auto-online where someone has requested a online notify Revision: eicq--main--0.7--patch-33 * eicq.el (eicq-idle-reply): Don't set eicq-auto-reply-p here. (eicq-idle-reply-maybe): Set it here instead. modified files: eicq.el 2005-04-07 05:59:38 GMT Steve Youngs patch-32 Summary: Add a missing key binding for `eicq-exit' -- `X q' Revision: eicq--main--0.7--patch-32 * eicq-menu.el (eicq-main-map): Add binding for `eicq-exit', `X q'. modified files: eicq-menu.el 2005-04-06 13:43:48 GMT Steve Youngs patch-31 Summary: Remove =partner-version file, it wasn't such a crash hot idea Revision: eicq--main--0.7--patch-31 2005-04-05 18:15:08 GMT Steve Youngs patch-30 Summary: Fix bug with forwarding last message in log buffer Revision: eicq--main--0.7--patch-30 * eicq-log.el (eicq-log-around): If we're on the last message in the buffer, the end of the message is at point-max and not at the start of the next message. This fixes a bug that meant you couldn't forward the last message in the log buffer. modified files: eicq-log.el 2005-04-05 16:52:17 GMT Steve Youngs patch-29 Summary: add missing patch logs Revision: eicq--main--0.7--patch-29 Patches applied: * dev@xwem.org--2004-w/eicq--ckent--0.7--patch-3 merge from main * lg@xwem.org--2005/eicq--lg--0.7--patch-19 merge with main * lg@xwem.org--2005/eicq--lg--0.7--patch-20 helper fix for simple/normal messaging * lg@xwem.org--2005/eicq--lg--0.7--patch-21 merge from main new patches: dev@xwem.org--2004-w/eicq--ckent--0.7--patch-3 lg@xwem.org--2005/eicq--lg--0.7--patch-19 lg@xwem.org--2005/eicq--lg--0.7--patch-20 lg@xwem.org--2005/eicq--lg--0.7--patch-21 2005-04-02 16:56:11 GMT Steve Youngs patch-28 Summary: Guard against runaway online notifier registering/cancelling Revision: eicq--main--0.7--patch-28 * eicq.el (eicq-do-message-helper): Fix regexp in string-match for online notifiers so to Eicq's won't set/cancel notification requests between each other because of auto-response messages. modified files: eicq.el 2005-04-02 05:03:38 GMT Steve Youngs patch-27 Summary: Improve the global keybindings -- the prefix is customisable Revision: eicq--main--0.7--patch-27 This patch introduces a new prefix command, `eicq-prefix'. The default binding is "M-`". It is also customisable, see the new variable `eicq-prefix-key'. If you wish to change its value you _MUST_ do so via `customize-set-variable' and not `setq', otherwise the bindings won't be set. This change means that you will have to (require 'eicq) in your init file. If you don't you won't have any global bindings, the commands will be there, but no keys. * INSTALL: Add `(require 'eicq)' to the code snippet to go in ~/.sxemacs/init.el * eicq-menu.el (eicq-prefix): New prefix command Bind eicq-login, eicq-show-window, world-find with this prefix instead of globally binding them all separately. * eicq.el (eicq-install-bindings): New. Installs a key binding for `eicq-prefix'. (eicq-prefix-key): New customisable variable. Key for `eicq-prefix'. modified files: INSTALL eicq-menu.el eicq.el 2005-04-01 07:40:21 GMT Steve Youngs patch-26 Summary: Allow other ICQ users to request online notification Revision: eicq--main--0.7--patch-26 With this patch if someone sends you a message with ",,notify-me" in the message then Eicq will store their alias and when you go back online send out a "I'm back online" message. It only happens once. If the ICQ user wants to be notified the next time, they have to send another "notification request message". They can also cancel a request by sending you ",,cancel-notify". * eicq.el (eicq-auto-reply-away): Set default response to mention online notify requests. (eicq-auto-reply-occ): Ditto. (eicq-auto-reply-dnd): Ditto. (eicq-auto-reply-na): Ditto. (eicq-idle-reply-away): Ditto. (eicq-idle-reply-na): Ditto. (eicq-online-notifiers): New. Internal list of aliases who have requested to be notified when we go back online after being away, na, occ, or dnd. (eicq-do-message-helper): Handle setting up and cancelling online notifications. (eicq-auto-reply): Doc string typo. (eicq-idle-reply): Ditto. * eicq-status.el (eicq-change-status): Send out the online notifications if we are changing to "online". Then reset `eicq-online-notifiers' so people won't get notified a 2nd time. modified files: eicq-status.el eicq.el 2005-04-01 04:02:31 GMT Steve Youngs patch-25 Summary: Fix auto-away timer not being started Revision: eicq--main--0.7--patch-25 * eicq.el: Make sure the auto-away idle timer is started. modified files: eicq.el 2005-03-31 12:46:50 GMT Steve Youngs patch-24 Summary: Custom and keymap fixes Revision: eicq--main--0.7--patch-24 * eicq-menu.el (eicq-global-map-set): Remove. Not used anymore. (eicq-global-key-prefix): Ditto. These were removed so we don't pollute the global keymap with commands that really have no business having globally bound keys. What is needed globally has been set via a couple of calls to `global-set-key'. (eicq-main-menu): Add item for `eicq-change-idle-timeout'. Remove a stack of autoload cookies from this file. * eicq-report.el (eicq-report-debug): Don't look in eicq-menu.el, there are no customisable variables there. * eicq.el (eicq-auto-away-timeout): Fix custom type. (eicq-change-idle-timeout): New. To interactively change the auto-away timeout for the current session. (eicq-about-fields): Move to above the "Internal variables" marker so it is included in bug reports. (eicq-about-more-fields): Ditto. modified files: eicq-menu.el eicq-report.el eicq.el 2005-03-31 06:54:46 GMT Steve Youngs patch-23 Summary: Fix bug with incoming messages containing `%' chars Revision: eicq--main--0.7--patch-23 If someone sent you a message that contained a `%', eg "we have 80% of the work done", `format' would complain bitterly. This patch fixes that. * eicq-log.el (eicq-log-buddy-message): Add extra arg, FMT, for the format message to pass directly to `format'. * eicq.el (eicq-do-message-helper): Use FMT arg to eicq-log-buddy-message. modified files: eicq-log.el eicq.el 2005-03-30 05:53:13 GMT Steve Youngs patch-22 Summary: Improve auto-response message sending Revision: eicq--main--0.7--patch-22 With this, the auto-response messages are only sent once per contact per period of being not "online". It is also possible to define a list of contacts that never get sent the auto-response messages. See the new customisable variable: eicq-auto-response-never-send-to. * eicq.el (eicq-auto-response-never-send-to): New. Holds a list of alias names of people you don't want auto-response messages being sent to. (eicq-auto-reply-never): New. Internal list of people not to send auto-responses to. (eicq-auto-reply-maybe): New. Only send auto-response if the person isn't in `eicq-auto-reply-never'. (eicq-idle-reply-maybe): Ditto. (eicq-do-message-helper): Use `eicq-auto-reply-maybe' and `eicq-idle-reply-maybe'. (eicq-send-message-helper): Remove a nested `if' and change the outer `if' to a `when'. Just makes things a bit cleaner. :-) * eicq-status.el (eicq-change-status): Reset `eicq-auto-reply-never' when coming back online. modified files: eicq-status.el eicq.el 2005-03-29 10:01:41 GMT Steve Youngs patch-21 Summary: Prevent echo to stdout on (S)XEmacs start up. Revision: eicq--main--0.7--patch-21 * eicq.el (eicq-auto-away-timeout): Remove autoload cookie. * eicq-menu.el (eicq-global-key-prefix): Ditto. This stops things from echo'ing to stdout on (S)XEmacs start up. It is not really a problem, it just stops paranoid people from complaining. modified files: eicq-menu.el eicq.el 2005-03-29 07:11:18 GMT Steve Youngs patch-20 Summary: Improve typed message sending Revision: eicq--main--0.7--patch-20 * eicq-v8.el (eicq-v8-send-typed-message): Get the user's UIN from the etcx thing. modified files: eicq-v8.el 2005-03-29 00:36:56 GMT Steve Youngs patch-19 Summary: Fix bug in message sending Revision: eicq--main--0.7--patch-19 * eicq-v8.el (eicq-v8-send-typed-message): A "typed" message must contain the _sender's_ UIN in the packet. * eicq.el (eicq-send-message-helper): For "normal" messages use `eicq-v8-send-simple-message', and for "typed" messages use `eicq-v8-send-typed-message'. modified files: eicq-v8.el eicq.el 2005-03-28 07:34:01 GMT Steve Youngs patch-18 Summary: Remove unnecessary advice on `display-buffer' Revision: eicq--main--0.7--patch-18 * eicq-buddy.el: Don't advise `display-buffer'. modified files: eicq-buddy.el 2005-03-26 16:05:46 GMT Steve Youngs patch-17 Summary: Merged from lg@xwem.org--2005 (patch 18) -- URL msg sending Revision: eicq--main--0.7--patch-17 With this patch it is possible to send URL "type 4" messages. Command `u' and `U'. Patches applied: * lg@xwem.org--2005/eicq--lg--0.7--patch-18 Functionality to send typed messages added. modified files: eicq-log.el eicq-v8.el eicq.el new patches: lg@xwem.org--2005/eicq--lg--0.7--patch-18 2005-03-25 03:54:25 GMT Steve Youngs patch-16 Summary: Merged from lg@xwem.org--2005 (patch 14, 16) status fixes Revision: eicq--main--0.7--patch-16 Patches applied: * lg@xwem.org--2005/eicq--lg--0.7--patch-14 fixes, searching by uin, etc * lg@xwem.org--2005/eicq--lg--0.7--patch-16 web-awareness, initial state fixes My additions/tweaks: * eicq-status.el (eicq-webaware-p): Removed. It already exists as `eicq-user-meta-web-aware'. (eicq-status-v8): Update doc string. (eicq-change-status): Use `eicq-user-meta-web-aware' instead of `eicq-webaware-p'. * eicq.el (eicq-login): Ditto. (eicq-status-v8): Autoload it. modified files: eicq-status.el eicq-v8.el eicq-world.el eicq.el new patches: lg@xwem.org--2005/eicq--lg--0.7--patch-14 lg@xwem.org--2005/eicq--lg--0.7--patch-16 2005-03-22 01:45:16 GMT Steve Youngs patch-15 Summary: itimer fixes Revision: eicq--main--0.7--patch-15 * eicq.el (eicq-keep-alive-stop): You can't call `delete-itimer' on just an itimer name, you have to do it via `get-itimer'. (eicq-auto-away-timeout-set): Ditto. modified files: eicq.el 2005-03-20 06:59:21 GMT Steve Youngs patch-14 Summary: Merged from lg@xwem.org--2005 (patch 12-13) Revision: eicq--main--0.7--patch-14 Patches applied: * lg@xwem.org--2005/eicq--lg--0.7--patch-12 More support for advanced messages * lg@xwem.org--2005/eicq--lg--0.7--patch-13 Making eicq-about-fields and eicq-about-more-fields customizable modified files: eicq-v8.el eicq.el new patches: lg@xwem.org--2005/eicq--lg--0.7--patch-12 lg@xwem.org--2005/eicq--lg--0.7--patch-13 2005-03-19 06:37:58 GMT Steve Youngs patch-13 Summary: Toolbar fix, compiler warning fixes, Improve info queries. Revision: eicq--main--0.7--patch-13 * eicq-toolbar.el (eicq-toolbar-query-info-here): Call `eicq-query-info-alias-around' instead of `eicq-query-info-alias-here'. * eicq-log.el (eicq-log-show-buffer): Change the initial content of the log buffer... plug `eicq-donation' * eicq-v8.el (eicq-v8-snac-srv-replyinfo): setq count to itself to avoid a compiler warning. Ugly hack, fix properly later. (eicq-v8-snac-srv-recv-msg): Add a FIXME comment. This defun is spewing a "variable bound but not referenced" warning. The variable in question is `mrec'. I can't see why it is causing the warning because it it bound AND referenced. I think the byte-compiler is on drugs. * eicq.el (eicq-do-alist): Comment out the `eicq-do-info-*' they don't appear to be used anymore. (eicq-do-info-not-available): Comment out... not used. (eicq-do-info-ext-not-available): Ditto. (eicq-do-search-found): Ditto. (eicq-do-about-about): Set format width to 15. (eicq-do-about-more): Set format width to 15 and update to use `eicq-about-more-fields' being a simple alist instead of a complicated broken customisable variable. (eicq-do-about-general): Set format width to 15 and update to use `eicq-about-fields' being a simple alist instead of a complicated broken customisable variable. (eicq-format-field): Set format width to 15 and update to use `eicq-about-*-fields' being simple alists instead of a complicated broken customisable variables. (eicq-about-more-fields): Change to a simple alist instead of a complicated and badly broken customisable variable. (eicq-about-fields): Ditto. The major noticable change here is that the info query fields are no longer customisable. The defcustoms were totally screwed. They are now simple defconst alists. I'll make them customisable if anyone bitches about it, but I really can't see that happening. modified files: eicq-log.el eicq-toolbar.el eicq-v8.el eicq.el 2005-03-19 00:42:16 GMT Steve Youngs patch-12 Summary: Merged from lg@xwem.org--2005 (patch 9) Revision: eicq--main--0.7--patch-12 With this patch, the info query commands `i' & `I' now work. Patches applied: * lg@xwem.org--2005/eicq--lg--0.7--patch-9 about info fetching done, some fixes modified files: eicq-v8.el eicq.el new patches: lg@xwem.org--2005/eicq--lg--0.7--patch-9 2005-03-16 23:14:14 GMT Steve Youngs patch-11 Summary: Merged from lg@xwem.org--2005 (patch 8) Revision: eicq--main--0.7--patch-11 Fixes the "Invalid len" error on status change. And partially implements info queries. The info query code is far from finished, it doesn't actually do any querying yet. :-P Patches applied: * lg@xwem.org--2005/eicq--lg--0.7--patch-8 Fixes, addons modified files: eicq-v8.el eicq.el new patches: lg@xwem.org--2005/eicq--lg--0.7--patch-8 2005-03-06 06:21:18 GMT Steve Youngs patch-10 Summary: Code clean up, fix bug in exit stopping Eicq frame deletion. Revision: eicq--main--0.7--patch-10 * eicq.el (eicq-icq-client-id-string): Moved to eicq-v8.el where it is called `eicq-v8-client-id-string'. (eicq-disconnect): Only logout if we're connected. And don't try to kill the non-existent eicq-network-buffer. This was stopping the Eicq frame from being deleted if you start in a new frame. (eicq-connected-p): New. (eicq-disconnect): Rename it to `eicq-exit'. * eicq-v8.el (eicq-v8-client-id-string): New. (eicq-v8-login): Use it. * eicq-toolbar.el (eicq-exit): Autoload this instead of `eicq-disconnect'. (eicq-disconnect-icon): Rename to `eicq-exit-icon'. (eicq-toolbar-disconnect): Rename to `eicq-toolbar-disconnect'. (eicq-log-toolbar): disconnect -> exit. Move help icon to right side of frame. * eicq-menu.el (eicq-main-menu): Rename "disconnect" to "exit". * eicq-log.el (eicq-log-show-buffer): Change the header in log files to say (S)XEmacs. modified files: eicq-log.el eicq-menu.el eicq-toolbar.el eicq-v8.el eicq.el 2005-03-06 04:03:48 GMT Steve Youngs patch-9 Summary: Fix statuses and auto/idle responses Revision: eicq--main--0.7--patch-9 This fixes a bug that was causing Eicq to send the wrong auto-response message when you had "idle'd" away/na. * eicq-status.el (eicq-statuses): Lets just call "na99" "na" and "occ-mac" "occ". (eicq-status-idle-reply): Make it return idle responses instead of auto responses like it was. modified files: eicq-status.el eicq.el 2005-03-06 02:57:19 GMT Steve Youngs patch-8 Summary: General tidy up. Revision: eicq--main--0.7--patch-8 General all-purpose tidy up. Most of the stuff here is internal and should go pretty much unnoticed. One user-visible change is that `h', `eicq-hide-window', now hides _all_ Eicq windows. So when the boss walks in, hit `h' and all traces of Eicq will vanish from view. :-) `M-` w' brings it all back. The file eicq-comm.el has been removed. I'm not sure if make upgrade will delete it from the install dir, so you might have to rm it manually from the install dir. * eicq.el (eicq-logout): Remove KILL arg, it isn't used anymore. (eicq-disconnect): Call `eicq-logout' without any args. (eicq-do-kicked-out): Ditto. Hmm, does this function get used anymore? (eicq-hide-window): Don't try hiding eicq-network-buffer, it doesn't exist. Make it hide the buffers properly. It used to leave the log or buddy, whichever was current, now it hides em all! (eicq-dropped-packet-counter): Moved here from the old eicq-comm.el (eicq-resend-packet-counter): Ditto. (eicq-recent-packet): Ditto. (eicq-trimmed-packet-counter): Ditto. (eicq-error-packets): Ditto. (eicq-send-internal): Removed. Not used anymore. (eicq-user-password): Moved here from the old eicq-comm.el. (eicq-send-queue-start): Removed. (eicq-send-queue-stop): Removed. (eicq-logout): Don't try to stop the send queue, it doesn't exist. (eicq-disconnect): Don't call nonexistent `eicq-network-kill'. (eicq-auto-reply-away): Eicq is the _(S)XEmacs_ ICQ client! (eicq-auto-reply-occ): Ditto. (eicq-auto-reply-dnd): Ditto. (eicq-idle-reply-away): Ditto. (eicq-idle-reply-na): Ditto. * eicq-v8.el (eicq-debug-buffer): New. * eicq-v8.el (eicq-v8-debug): Use it. * eicq-menu.el (eicq-main-map): Don't define a key to switch to the "network" buffer... there is none. * eicq-menu.el (eicq-main-menu): No menu entry for switching to network buffer. * *: Remove all the "Last-Modified" headers and local variables section on all files. They were the source of too many merge conflicts. removed files: .arch-ids/eicq-comm.el.id eicq-comm.el modified files: eicq-buddy.el eicq-convert.el eicq-log.el eicq-menu.el eicq-meta.el eicq-report.el eicq-setup.el eicq-status.el eicq-toolbar.el eicq-v8.el eicq-wharf.el eicq-world.el eicq.el eicq.texi 2005-03-03 06:28:43 GMT Steve Youngs patch-7 Summary: Automatically mark incoming msg's read on reply Revision: eicq--main--0.7--patch-7 * eicq.el (eicq-send-message-alias-around): Mark incoming messages automatically when you reply to them with `m'. (eicq-send-url-alias-around): Same here with replying with `u'. modified files: eicq.el 2005-03-03 02:26:34 GMT Steve Youngs patch-6 Summary: Merged from lg@xwem.org--2005 (patch 5) Revision: eicq--main--0.7--patch-6 Patches applied: * lg@xwem.org--2005/eicq--lg--0.7--patch-5 merge from ckent, bug fixes, mark as read addon My additions... * eicq-toolbar.el (eicq-toolbar-disconnect): Don't call `eicq-logout' here because `eicq-disconnect' calls it anyway. * eicq.el (eicq-logout): Make sure we run `eicq-v8-close' modified files: eicq-log.el eicq-toolbar.el eicq-v8.el eicq.el new patches: lg@xwem.org--2005/eicq--lg--0.7--patch-5 2005-03-02 00:56:28 GMT Steve Youngs patch-5 Summary: log buffer fixes -- faces, fill-column, smilies. Revision: eicq--main--0.7--patch-5 * eicq-log.el (eicq-log-fill-column): Set to zero and make the custom type integer. The fill-column in the log buffer is now computed based on the width of the frame, but it can be overridden if this in non-zero. (eicq-log-mode): Calculate the fill-column based on the frame width. If `eicq-log-fill-column' is non-zero, use that instead. Also improve the modeline format for the log buffer. (eicq-log): Set the extent face for buddy names in the log buffer according to their status. Smilify messages here instead of in `eicq-log-buddy-message' and use `smiley-region' on the individual message rather than `smiley-buffer'. This gives a considerable speed up when you have huge log buffers. (eicq-log-buddy-message): Don't set smilies here. Do it in `eicq-log'. * eicq-status.el (eicq-face-invisible): New face. (eicq-face-offline): Removed. * eicq-status.el (eicq-statuses): Set the face for invisible to `eicq-face-invisible' and the face for offline to nil. * eicq-status.el (eicq-buddy-update-status): Set the status before logging it to ensure the correct face is used in the log buffer. * eicq-status.el (eicq-status-show-buffer): Use `eicq-log-face-invisible' for the "[Invisible]" widget. modified files: eicq-log.el eicq-status.el 2005-02-28 00:01:58 GMT Steve Youngs patch-4 Summary: Merged from lg@xwem.org--2005 (patch 2) Revision: eicq--main--0.7--patch-4 Patches applied: * lg@xwem.org--2005/eicq--lg--0.7--patch-2 send/recv fixes, world-update modified files: eicq-v8.el eicq-world.el eicq.el new patches: lg@xwem.org--2005/eicq--lg--0.7--patch-2 2005-02-27 07:35:24 GMT Steve Youngs patch-3 Summary: Remove the need to set `eicq-uin' Revision: eicq--main--0.7--patch-3 * eicq.el (eicq-login): Get eicq-uin from the world file like we did in the old days. This removes the requirement of setting eicq-uin. (eicq-uin): Remove. It isn't needed. modified files: eicq.el 2005-02-27 01:30:31 GMT Steve Youngs patch-2 Summary: Merged from dev@xwem.org--2004-w (patch 1-2), lg@xwem.org--2005 (patch 1) Revision: eicq--main--0.7--patch-2 This change should mean that Eicq is once again usable! You should be able to log in and send/receive at least basic messages. You _will_ need to (setq eicq-uin 123456789) for your UIN at this stage. That requirement will be removed in the very near future. Looks like we're back in business. :-) Patches applied: * dev@xwem.org--2004-w/eicq--ckent--0.7--patch-1 eicq-v8 addons and fixes * dev@xwem.org--2004-w/eicq--ckent--0.7--patch-2 minor fixes * lg@xwem.org--2005/eicq--lg--0.7--patch-1 fixes, little restructurisation modified files: Makefile eicq-log.el eicq-status.el eicq-v8.el eicq-world.el eicq.el new patches: dev@xwem.org--2004-w/eicq--ckent--0.7--patch-1 dev@xwem.org--2004-w/eicq--ckent--0.7--patch-2 lg@xwem.org--2005/eicq--lg--0.7--patch-1 2004-12-31 22:51:52 GMT Steve Youngs patch-1 Summary: Add ChangeLog from prev version, bump VER in Makefile Revision: eicq--main--0.7--patch-1 new files: ChangeLog.d/.arch-ids/=id ChangeLog.d/.arch-ids/ChangeLog-0.6.id ChangeLog.d/ChangeLog-0.6 modified files: Makefile new directories: ChangeLog.d ChangeLog.d/.arch-ids 2004-12-31 21:39:09 GMT Steve Youngs base-0 Summary: tag of steve@eicq.org--2004/eicq--main--0.6--patch-15 Revision: eicq--main--0.7--base-0 (automatically generated log message) new patches: steve@eicq.org--2004/eicq--main--0.6--base-0 steve@eicq.org--2004/eicq--main--0.6--patch-1 steve@eicq.org--2004/eicq--main--0.6--patch-2 steve@eicq.org--2004/eicq--main--0.6--patch-3 steve@eicq.org--2004/eicq--main--0.6--patch-4 steve@eicq.org--2004/eicq--main--0.6--patch-5 steve@eicq.org--2004/eicq--main--0.6--patch-6 steve@eicq.org--2004/eicq--main--0.6--patch-7 steve@eicq.org--2004/eicq--main--0.6--patch-8 steve@eicq.org--2004/eicq--main--0.6--patch-9 steve@eicq.org--2004/eicq--main--0.6--patch-10 steve@eicq.org--2004/eicq--main--0.6--patch-11 steve@eicq.org--2004/eicq--main--0.6--patch-12 steve@eicq.org--2004/eicq--main--0.6--patch-13 steve@eicq.org--2004/eicq--main--0.6--patch-14 steve@eicq.org--2004/eicq--main--0.6--patch-15