erc-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Erc-commit] [commit][emacs22] Merged from erc--rel--5.1.


From: mwolson
Subject: [Erc-commit] [commit][emacs22] Merged from erc--rel--5.1.
Date: Sun, 14 Oct 2007 00:48:19 -0400

commit aebff1d14bafe43c5c611ec7656fc443a609bc5d
Author: Michael Olson <address@hidden>
Date:   Mon Jul 10 04:25:50 2006 +0000

    Merged from erc--rel--5.1.
    
    Patches applied:
    
     * address@hidden/erc--rel--5.1--patch-9
       Remove some unusable functions.
    
     * address@hidden/erc--rel--5.1--patch-10
       Turn erc-identd into a real module.
    
     * address@hidden/erc--rel--5.1--patch-11
       erc-identd: Improve header documentation.
    
     * address@hidden/erc--rel--5.1--patch-12
       Manual: Update instructions for Savannah and GNU Arch.
    
     * address@hidden/erc--rel--5.1--patch-13
       Update history information.
    
     * address@hidden/erc--rel--5.1--patch-14
       erc-identd: Avoid XEmacs error message.
    
     * address@hidden/erc--rel--5.1--patch-16
       Document `list' and `page' modules.
    
     * address@hidden/erc--rel--5.1--patch-18
       Document the "completion" module.
    git-archimport-id: address@hidden/erc--main--0--patch-19

diff --git a/ChangeLog b/ChangeLog
index 6e741a3..97e20ee 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -15,9 +15,19 @@
        ERC buffer.
        (log): Use the aforementioned options.
 
+       * erc.texi (Modules): Document the "completion" module.
+
        * erc-pcomplete.el (pcomplete-erc-nicks): Make sure that we don't
        have a nil element in the list when ignore-self is non-nil.
 
+2006-07-05  Michael Olson  <address@hidden>
+
+       * erc.el (erc-modules): Add the `page' module to the list.
+
+       * erc.texi (Modules): Add entries for `list' and `page' modules.
+       Change "spell" to "spelling".
+       (History): Use past tense throughout.
+
 2006-07-02  Michael Olson  <address@hidden>
 
        * erc-backend.el (erc-call-hooks): Fix (stringp nil) error that
@@ -30,8 +40,25 @@
        is given, and no matches are found, use our default reason instead
        of "nil".
 
+2006-07-01  Michael Olson  <address@hidden>
+
+       * erc-identd.el (erc-identd-start): XEmacs defines neither
+       `make-network-process' nor `open-network-stream-server', so just
+       fail silently.
+
 2006-06-30  Michael Olson  <address@hidden>
 
+       * HISTORY: Update.
+
+       * erc.texi (Modules): Mention identd.
+       (Releases): Update mailing list address and download location.
+       (Development): Refactor.  Provide updated directions for Arch.
+       Make URLs clickable.
+       (Keystroke Summary): Typo fix.  Use more Texinfo syntax.
+       (Getting Started): Give simpler example.  We do not need to
+       explicitly load every module.
+       (History): Update.
+
        * erc-autoaway.el, erc-join.el, erc-backend.el, erc-bbdb.el:
        erc-button.el, erc-chess.el, erc-compat.el, erc-hecomplete.el:
        erc-dcc.el, erc-ezbounce.el, erc-fill.el, erc-ibuffer.el:
@@ -43,13 +70,20 @@
 
        * erc.el (erc-cmd-SMV): Remove, since we do not have meaningful
        module versions anymore.
+       (erc-version-modules): Remove, since we do not use this function
+       anymore.
+       (erc-latest-version, erc-ediff-latest-version): Remove, since this
+       was only useful back when ERC consisted of one file.
+       (erc-modules): Add line for identd.
+       (erc-get-channel-mode-from-keypress): Typo fix.
 
        * erc-imenu.el: Remove unnecessary lines in header.
 
        * erc-goodies.el (erc-handle-irc-url): Docfix.
 
-       * erc-identd.el (erc-identd-start): Do not prompt the user about
-       killing the identd process on exit.
+       * erc-identd.el: Define an ERC module for this.
+       (erc-identd-start): Don't create a process buffer if possible.
+       Otherwise, use conventional hidden names for process buffers.
 
 2006-06-29  Michael Olson  <address@hidden>
 
diff --git a/HISTORY b/HISTORY
index e4481a4..655e3b1 100644
--- a/HISTORY
+++ b/HISTORY
@@ -3,23 +3,31 @@ History of ERC development:
 
 ERC was originally written by Alexander L. Belikoff (address@hidden) and
 Sergey Berezin (address@hidden).  They stopped development
-around december 1999. Their last released version was ERC 2.0.
+around December 1999.  Their last released version was ERC 2.0.
 
 In June 2001, Mario Lang (address@hidden) and Alex Schroeder (address@hidden)
 took over development and created a ERC Project at sourceforge.net.
 
-In reaction to a mail about the new erc development,
+In reaction to a mail about the new ERC development effort,
 Sergey Berezin said, "First of all, I'm glad that my version of ERC is
-being used out there. The thing is, I do not have free time and
+being used out there.  The thing is, I do not have free time and
 enough incentive anymore to work on ERC, so I would be happy if
 you guys take over the project entirely."
 
-So we happily hacked away on ERC, and soon after (september 2001)
+So we happily hacked away on ERC, and soon after (September 2001)
 released the next "stable" version, 2.1.
 
 Most of the development of the new ERC happend on #emacs on
-irc.openprojects.net. Over time, many people contributed
-code, ideas, bugfixes. And not to forget alot of alpha/beta/gamma testing.
+irc.openprojects.net.  Over time, many people contributed code, ideas,
+bugfixes, and a lot of alpha/beta/gamma testing.
+
+In 2005, Michael Olson (address@hidden) became the release manager,
+and later, the maintainer.  After some discussion between him and the
+Emacs developers, it was decided to include ERC in Emacs.
+
+With the release of ERC 5.1, ERC was included with Emacs 22.  It
+became an official GNU project, and development moved to Savannah
+(http://sv.gnu.org/projects/erc).
 
 See the file CREDITS for a list of contributors.
 
diff --git a/erc-identd.el b/erc-identd.el
index e93b495..9e4a1f5 100644
--- a/erc-identd.el
+++ b/erc-identd.el
@@ -24,16 +24,30 @@
 
 ;;; Commentary:
 
-;; You can have a local identd server (running on port 8113; I use DNAT
-;; to bind 113->8113) if you add this to .emacs.el:
+;; This module allows you to run a local identd server on port 8113.
+;; You will need to set up DNAT to bind 113->8113, or use a proxy.
 
-;;    (add-hook 'erc-connect-pre-hook 'erc-identd-start)
-;;    (add-hook 'erc-disconnected-hook 'erc-identd-stop)
+;; To use this module, add identd to `erc-modules' and run
+;; `erc-update-modules'.
+
+;; Here is an example /etc/inetd.conf rule that forwards identd
+;; traffic to port 8113.  You will need simpleproxy installed for it
+;; to work.
+
+;; 113 stream tcp nowait nobody /usr/sbin/tcpd /usr/bin/simpleproxy 
simpleproxy -i -R 127.0.0.1:8113
 
 ;;; Code:
 
 (defvar erc-identd-process nil)
 
+;;;###autoload (autoload 'erc-identd-mode "erc-identd")
+(define-erc-module identd nil
+  "This mode launches an identd server on port 8113."
+  ((add-hook 'erc-connect-pre-hook 'erc-identd-start)
+   (add-hook 'erc-disconnected-hook 'erc-identd-stop))
+  ((remove-hook 'erc-connect-pre-hook 'erc-identd-start)
+   (remove-hook 'erc-disconnected-hook 'erc-identd-stop)))
+
 (defun erc-identd-filter (proc string)
   "This filter implements RFC1413 (identd authentication protocol)."
   (let ((erc-identd-process proc))
@@ -46,10 +60,6 @@
                             system-type (user-login-name)))
        (process-send-eof erc-identd-process)))))
 
-;; Ignore useless byte-compile warning
-(eval-when-compile
-  (put 'process-kill-without-query 'byte-compile nil))
-
 ;;;###autoload
 (defun erc-identd-start (&optional port)
   "Start an identd server listening to port 8113.
@@ -68,15 +78,14 @@ system."
   (setq erc-identd-process
        (if (fboundp 'make-network-process)
            (make-network-process :name "identd"
-                                 :buffer (generate-new-buffer "identd")
+                                 :buffer nil
                                  :host 'local :service port
-                                 :server t :noquery t
+                                 :server t :noquery t :nowait t
                                  :filter 'erc-identd-filter)
-         (open-network-stream-server "identd" (generate-new-buffer "identd")
-                                     port nil 'erc-identd-filter)))
-  (if (fboundp 'set-process-query-on-exit-flag)
-      (set-process-query-on-exit-flag erc-identd-process nil)
-    (process-kill-without-query erc-identd-process)))
+         (and (fboundp 'open-network-stream-server)
+              (open-network-stream-server
+               "identd" (generate-new-buffer " *erc-identd*")
+               port nil 'erc-identd-filter)))))
 
 ;;;###autoload
 (defun erc-identd-stop (&rest ignore)
diff --git a/erc.el b/erc.el
index f67dfaa..1bc71d6 100644
--- a/erc.el
+++ b/erc.el
@@ -1772,6 +1772,7 @@ removed from the list will be disabled."
      "Mark unidentified users on freenode and other servers supporting CAPAB"
      capab-identify)
     (const :tag "Wrap long lines" fill)
+    (const :tag "Launch an identd server on port 8113" identd)
     (const :tag "Highlight or remove IRC control characters"
           irccontrols)
     (const :tag "List channels in a separate buffer" list)
@@ -1786,6 +1787,7 @@ removed from the list will be disabled."
     (const :tag "Complete nicknames and commands (programmable)"
           completion)
     (const :tag "Complete nicknames and commands (old)" hecomplete)
+    (const :tag "Process CTCP PAGE requests from IRC" page)
     (const :tag "Make displayed lines read-only" readonly)
     (const :tag "Replace text in messages" replace)
     (const :tag "Enable an input history" ring)
@@ -5145,10 +5147,10 @@ This command is sent even if excess flood is detected."
 
 (defun erc-get-channel-mode-from-keypress (key)
   "Read a key sequence and call the corresponding channel mode function.
-After doing C-c C-o type in a channel mode letter.
+After doing C-c C-o, type in a channel mode letter.
 
 C-g means quit.
-RET let's you type more than one mode at a time.
+RET lets you type more than one mode at a time.
 If \"l\" is pressed, `erc-set-channel-limit' gets called.
 If \"k\" is pressed, `erc-set-channel-key' gets called.
 Anything else will be sent to `erc-toggle-channel-mode'."
@@ -5833,26 +5835,6 @@ If optional argument HERE is non-nil, insert version 
number at point."
          (message "%s" version-string)
        version-string))))
 
-(defun erc-version-modules (&optional here)
-  "Show the version numbers of all loaded ERC modules in the minibuffer.
-If optional argument HERE is non-nil, insert version number at point."
-  (interactive "P")
-  (let ((version-string
-        (mapconcat 'identity
-                   (let (versions (case-fold-search nil))
-                     (dolist (var (apropos-internal "^erc-.*version$"))
-                       (when (and (boundp var)
-                                  (stringp (symbol-value var)))
-                         (setq versions (cons (format "%S: %s"
-                                                      var (symbol-value var))
-                                              versions))))
-                     versions) ", ")))
-    (if here
-       (insert version-string)
-      (if (interactive-p)
-         (message "%s" version-string)
-       version-string))))
-
 (defun erc-modes (&optional here)
   "Show the active ERC modes in the minibuffer.
 If optional argument HERE is non-nil, insert version number at point."
@@ -5873,32 +5855,6 @@ If optional argument HERE is non-nil, insert version 
number at point."
          (message "%s" string)
        string))))
 
-(defun erc-latest-version ()
-  "Retrieve the latest erc.el version from CVS."
-  (interactive)
-  (if (ignore-errors (require 'url))
-      (progn
-       (switch-to-buffer (get-buffer-create "*erc.el latest version*"))
-       (delete-region (point-min) (point-max))
-       (kill-all-local-variables)
-       (url-insert-file-contents (concat
-                                  "http://cvs.sourceforge.net/viewcvs.py/";
-                                  "*checkout*/erc/erc/erc.el?content-type"
-                                  "=text%2Fplain&rev=HEAD"))
-       (emacs-lisp-mode)
-       (current-buffer))
-    (error "URL needs to be installed")))
-
-(defun erc-ediff-latest-version ()
-  "Ediff your installed erc.el with the latest CVS version.
-See also `erc-latest-version'."
-  (interactive)
-  (let ((current (locate-library "erc.el")))
-    (if current
-       (ediff-buffers (find-file current)
-                      (erc-latest-version))
-      (error "You do not appear to have the uncompiled erc.el file"))))
-
 (defun erc-trim-string (s)
   "Trim leading and trailing spaces off S."
   (cond
diff --git a/erc.texi b/erc.texi
index 2ce3095..ee2f699 100644
--- a/erc.texi
+++ b/erc.texi
@@ -119,7 +119,7 @@ comes with Emacs.
 Choose to install a release if you want to minimize risk.
 
 Errors are corrected in development first.  User-visible changes will be
-announced on the @email{erc-help@@lists.sourceforge.net} mailing list.
+announced on the @email{erc-discuss@@gnu.org} mailing list.
 @pxref{Getting Help and Reporting Bugs}.
 
 @cindex releases, Debian package
@@ -129,7 +129,7 @@ available in the official Debian repository.
 
 @cindex releases, from source
 Alternatively, you can download the latest release from
address@hidden://sourceforge.net/project/showfiles.php?group_id=30118}.
address@hidden://ftp.gnu.org/gnu/erc}.
 
 @node Development,  , Releases, Obtaining ERC
 @comment  node-name,  next,  previous,  up
@@ -139,43 +139,13 @@ Alternatively, you can download the latest release from
 Choose the development version if you want to live on the bleeding edge
 of ERC development or try out new features before release.
 
address@hidden Using CVS
address@hidden CVS, using
address@hidden GNU Arch
 
-ERC is primarily developed using a CVS repository on sourceforge.net.
-To check out a copy of the latest changes, do the following.
-
address@hidden
-cvs -d:pserver:anonymous@@cvs.sourceforge.net:/cvsroot/erc login
-cvs -z3 -d:pserver:anonymous@@cvs.sourceforge.net:/cvsroot/erc co -P erc
address@hidden example
-
address@hidden CVS snapshot
-Alternatively, the latest CVS snapshot may be downloaded in the
-following forms.
-
address@hidden @bullet
address@hidden http://mwolson.org/static/dist/erc-latest.tar.gz
address@hidden http://mwolson.org/static/dist/erc-latest.zip
address@hidden itemize
-
address@hidden Using the GNU Arch Revision Control System
address@hidden arch revision control system, using
-The Arch revision control system allows you to retrieve previous
-versions and select specific features and bug fixes.
-
-Michael Olson maintains an official Arch branch for ERC which stays
-current with the CVS repository for ERC.  If you would like to
-contribute to ERC development, and would prefer to use a modern Revision
-Control System, feel free to make your own branch.
-
-If you are new to Arch, you might find this tutorial helpful:
address@hidden://www.mwolson.org/projects/ArchTutorial.html}.
-
-Downloading ERC with Arch and staying up-to-date involves the following
-steps.
+ERC is developed using GNU Arch.  Downloading ERC with Arch and staying
+up-to-date involves the following steps.
 
 @enumerate
address@hidden GNU Arch, installing
 @item Install arch
 
 @itemize @bullet
@@ -183,15 +153,16 @@ steps.
 @item Other distributions: see @uref{ftp://ftp.gnu.org/gnu/gnu-arch/}.
 @end itemize
 
address@hidden GNU Arch, downloading ERC
 @item Register the archive.
 @example
-tla register-archive -f http://www.mwolson.org/archives/2006
+tla register-archive -f http://arch.sv.gnu.org/archives/erc/erc
 @end example
 
 @item Download the ERC source code.
 @example
 # Download ERC into the @file{erc} directory.
-tla get mwolson@@gnu.org--2006/erc--cvs--0 erc
+tla get erc@@sv.gnu.org/erc--main--0 erc
 @end example
 
 @item List upstream changes that are missing from your local copy.
@@ -206,24 +177,29 @@ cd erc/
 tla missing --summary
 @end example
 
address@hidden updating ERC with Arch
address@hidden GNU Arch, updating ERC
 @item Update to the latest version by replaying missing changes.
 @example
 cd erc
-tla replay
+tla update
 @end example
 
 @end enumerate
 
-There are other ways to interact with the ERC archive.
+If you are new to Arch and want to learn more about developing with it,
+you might find this tutorial helpful:
address@hidden://www.mwolson.org/projects/ArchTutorial.html}.
+
address@hidden Development snapshots
 
address@hidden
address@hidden Browse arch repository: @uref{http://www.mwolson.org/archives/}
address@hidden Latest development snapshot: 
@uref{http://www.mwolson.org/static/dist/erc-latest.tar.gz}
address@hidden itemize
address@hidden development snapshot
+Alternatively, the latest development snapshot may be downloaded in both
+``.tar.gz'' and ``.zip'' forms.
 
-The latest development snapshot will be kept up-to-date since it is
-updated at the same time as the Arch repository.
address@hidden @bullet
address@hidden @uref{http://www.mwolson.org/static/dist/erc-latest.tar.gz}
address@hidden @uref{http://www.mwolson.org/static/dist/erc-latest.zip}
address@hidden itemize
 
 
 @node Installation, Getting Started, Obtaining ERC, Top
@@ -287,15 +263,13 @@ locations that require this.
 
 To use ERC, add the directory containing its files to your
 @code{load-path} variable, in your @file{.emacs} file.  Then, load ERC
-itself along with any extra modules you desire.  An example follows.
+itself.  An example follows.
 
 @lisp
 (require 'erc)
-
-(require 'erc-spelling)
 @end lisp
 
-Once this is loaded, the command @kbd{M-x erc-select} will start ERC and
+Once ERC is loaded, the command @kbd{M-x erc-select} will start ERC and
 prompt for the server to connect to.
 
 @c PRE5_2: Sample session, including:
@@ -367,12 +341,12 @@ Run "/names #channel" in the current channel.
 
 @item C-c C-o (`erc-get-channel-mode-from-keypress')
 Read a key sequence and call the corresponding channel mode function.
-After doing C-c C-o type in a channel mode letter.
+After doing @kbd{C-c C-o}, type in a channel mode letter.
 
-C-g means quit.
-RET let's you type more than one mode at a time.
-If "l" is pressed, `erc-set-channel-limit' gets called.
-If "k" is pressed, `erc-set-channel-key' gets called.
address@hidden means quit.
address@hidden lets you type more than one mode at a time.
+If @kbd{l} is pressed, @code{erc-set-channel-limit} gets called.
+If @kbd{k} is pressed, @code{erc-set-channel-key} gets called.
 Anything else will be sent to `erc-toggle-channel-mode'.
 
 @item C-c C-p (`erc-part-from-channel')
@@ -411,7 +385,7 @@ The following is a list of available modules.
 
 @cindex modules, autoaway
 @item autoaway
-Set away status automatically.
+Set away status automatically
 
 @cindex modules, autojoin
 @item autojoin
@@ -425,14 +399,31 @@ Integrate with the Big Brother Database
 @item button
 Buttonize URLs, nicknames, and other text
 
address@hidden modules, completion
address@hidden pcomplete
+Complete nicknames and commands (programmable)
+
 @cindex modules, fill
 @item fill
 Wrap long lines
 
address@hidden modules, hecomplete
address@hidden completion
+Complete nicknames and commands (old).  This is the old module---you
+might prefer the ``completion'' module instead.
+
address@hidden modules, identd
address@hidden identd
+Launch an identd server on port 8113
+
 @cindex modules, irccontrols
 @item irccontrols
 Highlight or remove IRC control characters
 
address@hidden modules, list
address@hidden list
+List channels nicely in a separate buffer
+
 @cindex modules, log
 @item log
 Save buffers in logs
@@ -453,9 +444,9 @@ Don't display non-IRC commands after evaluation
 @item notify
 Notify when the online status of certain users changes
 
address@hidden modules, pcomplete
address@hidden pcomplete
-Complete nicknames and commands (programmable)
address@hidden modules, page
address@hidden page
+Process CTCP PAGE requests from IRC
 
 @cindex modules, readonly
 @item readonly
@@ -485,9 +476,9 @@ Convert smileys to pretty icons
 @item sound
 Play sounds when you receive CTCP SOUND requests
 
address@hidden modules, spell
address@hidden spell
-Check spelling
address@hidden modules, spelling
address@hidden spelling
+Check spelling of messages
 
 @cindex modules, stamp
 @item stamp
@@ -541,14 +532,24 @@ emacswiki.org page for ERC.  Anyone may add tips, hints, 
or bug
 descriptions to it.
 
 @item
-You can join the mailing list at @email{erc-help@@lists.sourceforge.net}
-using the subscription form at
address@hidden://lists.sourceforge.net/lists/listinfo/erc-help}.
+There are several mailing lists for ERC.  To subscribe, visit
address@hidden://savannah.gnu.org/mail/?group=erc}.
+
+The mailing lists are also available on Gmane.
+(@url{http://gmane.org/}).  Gmane provides additional methods for
+accessing the mailing lists, adding content to them, and searching them.
+
address@hidden
address@hidden gmane.emacs.erc.announce
+Announcements
 
-This mailing list is also available via Gmane
-(@url{http://gmane.org/}). The group is called
address@hidden  This provides additional methods for
-accessing the mailing list, adding content to it, and searching it.
address@hidden gmane.emacs.erc.discuss
+General discussion
+
address@hidden gmane.emacs.erc.cvs
+Log messages for changes to the ERC source code
+
address@hidden enumerate
 
 @item
 You can visit the IRC Freenode channel @samp{#emacs}. Many of the
@@ -566,7 +567,7 @@ questions.
 ERC was originally written by Alexander L. Belikoff
 @email{abel@@bfr.co.il} and Sergey Berezin
 @email{sergey.berezin@@cs.cmu.edu}.  They stopped development around
-December 1999. Their last released version was ERC 2.0.
+December 1999.  Their last released version was ERC 2.0.
 
 P.S.: If one of the original developers of ERC reads this, we'd like to
 receive additional information for this file and hear comments in
@@ -577,42 +578,46 @@ general.
 
 In June 2001, Mario Lang @email{mlang@@delysid.org} and Alex Schroeder
 @email{alex@@gnu.org} took over development and created a ERC Project at
-sourceforge.net.
address@hidden://sourceforge.net/projects/erc}.
 
-In reaction to a mail about the new erc development, Sergey Berezin
-said, "First of all, I'm glad that my version of ERC is being used out
-there. The thing is, I do not have free time and enough incentive
-anymore to work on ERC, so I would be happy if you guys take over the
-project entirely."
+In reaction to a mail about the new ERC development effort, Sergey
+Berezin said, ``First of all, I'm glad that my version of ERC is being
+used out there.  The thing is, I do not have free time and enough
+incentive anymore to work on ERC, so I would be happy if you guys take
+over the project entirely.''
 
 So we happily hacked away on ERC, and soon after (September 2001)
 released the next "stable" version, 2.1.
 
 Most of the development of the new ERC happened on #emacs on
-irc.openprojects.net. Over time, many people contributed code, ideas,
-bugfixes. And not to forget a lot of alpha/beta/gamma testing.
+irc.openprojects.net.  Over time, many people contributed code, ideas,
+bugfixes, and a lot of alpha/beta/gamma testing.
 
 See the @file{CREDITS} file for a list of contributors.
 
 @item 2003
 
-ERC 3.0 is released.
+ERC 3.0 was released.
 
 @item 2004
 
-ERC 4.0 is released.
+ERC 4.0 was released.
 
 @item 2005
 
-ERC 5.0 is released.  Michael Olson @email{mwolson@@gnu.org} becomes
+ERC 5.0 was released.  Michael Olson @email{mwolson@@gnu.org} became
 the release manager and eventually the maintainer.
 
-After some discussion between him and the Emacs developers, it is
+After some discussion between him and the Emacs developers, it was
 decided to include ERC in Emacs.
 
 @item 2006
 
-ERC 5.1 is released.  It is subsequently included in Emacs 22.
+ERC 5.1 was released.  It was subsequently included in Emacs 22.
+
+ERC became an official GNU project, and development moved to
address@hidden://sv.gnu.org/projects/erc}.  We switched to using GNU Arch as
+our revision control system.  Our mailing list address changed as well.
 
 @end itemize
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]