erc-commit
[Top][All Lists]
Advanced

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

[Erc-commit] [commit][emacs22] Add files from master to make merging eas


From: mwolson
Subject: [Erc-commit] [commit][emacs22] Add files from master to make merging easier
Date: Sun, 14 Oct 2007 00:49:12 -0400

commit d8604c2e1891a80e148ad5ea67311a7d711e3727
Author: Michael W. Olson <address@hidden>
Date:   Fri Sep 7 22:11:51 2007 -0400

    Add files from master to make merging easier

diff --git a/AUTHORS b/AUTHORS
new file mode 100644
index 0000000..41ec666
--- /dev/null
+++ b/AUTHORS
@@ -0,0 +1,21 @@
+algernon    Gergely Nagy <address@hidden>
+anaran      Adrian Aichner <address@hidden>
+antifuchs   Andreas Fuchs <address@hidden>
+benj2       Benjamin Drieu <address@hidden>
+bojohan     Johan Bockgard <address@hidden>
+bpalmer     Brian Palmer <address@hidden>
+disumu      Diane Murray <address@hidden>
+forcer      Jorgen Schaefer <address@hidden>
+franl       Francis Litterio <address@hidden>
+hober       Edward O'Connor <address@hidden>
+jbms        Jeremy Bertram Maitin-Shepard <address@hidden>
+jwiegley    John Wiegley <address@hidden>
+kensanata   Alex Schroeder <address@hidden>
+mlang       Mario Lang <address@hidden>
+mtoledo     Marcelo Toledo <address@hidden>
+mwolson     Michael Olson <address@hidden>
+plovre      Brian P Templeton <address@hidden>
+resolve     Damien Elmes <address@hidden>
+sachachua   Sandra Jean Chua <address@hidden>
+smoke       Tijs van Bakel <address@hidden>
+wence       Lawrence Mitchell <address@hidden>
diff --git a/HACKING b/HACKING
new file mode 100644
index 0000000..149bb4d
--- /dev/null
+++ b/HACKING
@@ -0,0 +1,99 @@
+* Hacking on ERC 101                                            -*- outline -*-
+
+* Function/variable naming conventions
+
+The Emacs Lisp manual has some good advice on coding conventions
+(info "(elisp)Tips").  Remember, above all, that Emacs does not have a
+package system, so prefix all global variables/functions with `erc-'.
+If you have a macro that follows the standard `with-foo' pattern, or
+`define-foo' pattern, you can probably get away with naming it without
+a prefix, should it not conflict with an existing symbol, it's
+probably a good idea to have `erc' somewhere in the name.  For
+example:
+
+  Good:
+   
+    (defun erc-foo-p (...) ...)
+
+    (defmacro with-erc-foo (...) ...)
+
+    (defmacro define-erc-foo (...) ...)
+
+    (defvar erc-frob-foo ...)
+
+  Bad:
+
+    (defun foo-p (...) ...)
+
+    (defmacro with-foo (...) ...)
+
+    (defmacro define-foo (...) ...)
+
+    (defvar frob-foo ...)
+
+* ChangeLog Entries
+
+ERC's ChangeLog entries are *no longer* generated automatically from
+the CVS logs.  As such, please try to update the `ChangeLog' file
+every time you commit a change.
+
+The GNU Coding Standards have some good tips for writing ChangeLog
+entries: http://www.gnu.org/prep/standards_40.html#SEC40
+
+Emacs has modes to alleviate the writing of entries, see the info
+nodes:
+  (info "(emacs)Change Log")
+and
+  (info "(emacs)Change Logs and VC")
+
+* NEWS entries
+
+We maintain a list of user-visible changes between versions in the
+file NEWS.  This should be of the same form as the Emacs NEWS file
+(viewable, as an example, via C-h n (view-emacs-news)).  This file
+should not document internal changes, only ones which show their faces
+to the outside world.
+
+* Documentation
+
+If you add a new function or variable, or change an existing one,
+please add a docstring describing what it does.  Again, there are
+certain conventions to follow which are detailed at length in:
+
+  (info "(elisp)Tips")
+
+The most important:
+
+** Docstrings
+
+Each function should have a docstring summarising what the function
+does.  The first line should be able to stand on its own (for
+apropos).  You should generally try and use the imperative form in
+docstrings.  e.g. "Return non-nil if...", rather than "Returns
+non-nil if..."
+Similarly, variables should have a docstring describing what the
+variable controls, and what different values mean.  User-visible
+variables should start the docstring with a "*".  Again, the first
+sentence should stand on its own as a description of the variable
+(for apropos and eldoc-mode).
+
+** Function arguments
+
+Arguments should, where possible, have descriptive names.  This is
+especially useful for those of us who use eldoc-mode.  Note also,
+that, since elisp is a lisp-2, we can call an argument which is a
+list "list", rather than "lst", or some other lisp-1ism.
+
+You can catch a lot of these problems if you use checkdoc.  M-x
+checkdoc-defun RET on a function will pick up on most errors.
+
+* Other conventions
+
+Compatibility functions for Emacs/XEmacsisms should go in erc-compat,
+and be prefixed with `erc-'.
+
+ERC modules should be defined with `define-erc-module'.
+
+Some of the code in ERC is rather crufty, and could do with cleaning
+up, don't necessarily take all of it as being a wonderful example of
+coding standards.
diff --git a/HISTORY b/HISTORY
new file mode 100644
index 0000000..655e3b1
--- /dev/null
+++ b/HISTORY
@@ -0,0 +1,35 @@
+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.
+
+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 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 happend on #emacs on
+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.
+
+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 general.
diff --git a/README b/README
new file mode 100644
index 0000000..6c56123
--- /dev/null
+++ b/README
@@ -0,0 +1,61 @@
+
+This is the README file for ERC.
+
+ERC is a powerful, modular, and extensible IRC client for Emacs.
+
+Installation
+------------
+
+Type `make install'.  This will compile all the emacs-lisp files and
+install them in the directory /usr/local/share/emacs/site-lisp/erc.
+The info manual will be installed to /usr/local/info.  You'll most
+likely need to be the root user to install to these locations.
+
+If you wish to install to someplace else, edit the PREFIX, ELISPDIR,
+and/or INFODIR options in Makefile.
+
+QuickStart
+-----------
+
+Put all the files in your load-path[0], and add the following to your
+~/.emacs:
+
+(require 'erc)
+
+[0] Don't know what a load path is? See:
+http://www.emacswiki.org/cgi-bin/wiki.pl?LoadPath
+
+Usage
+-----
+
+Use M-x erc to connect to a server.  You can connect to multiple
+servers.
+
+Customization
+-------------
+
+Use M-x customize-group RET erc RET to get an overview of all the
+variables you can tweak.
+
+Documentation
+-------------
+
+ERC comes with a manual.  Type `make doc' to get the HTML and Info
+versions of it.
+
+Additional documentation is kept on the Emacs Wiki, and may be added
+to by anyone.
+
+* http://www.emacswiki.org/cgi-bin/wiki/ERC
+
+License information
+-------------------
+
+ERC is available under the terms of the GNU General Public License.
+See the file `COPYING' for details.
+
+The following copyright notice applies to each of the images contained
+in the `images' directory.
+
+Copyright (C) 2006 Free Software Foundation.
+This image may be used, distributed, and modified without restriction.
diff --git a/erc-maint.el b/erc-maint.el
new file mode 100644
index 0000000..bae42bc
--- /dev/null
+++ b/erc-maint.el
@@ -0,0 +1,3 @@
+(add-to-list 'load-path ".")
+
+;; arch-tag: 977c5231-16c4-46d2-88f0-90abe5a79ba1
diff --git a/servers.pl b/servers.pl
new file mode 100755
index 0000000..2d3f8d2
--- /dev/null
+++ b/servers.pl
@@ -0,0 +1,50 @@
+#!/usr/bin/perl
+
+# Copyright (C) 2002 Free Software Foundation, Inc.
+
+# Convert mIRC's servers.ini to a elisp structure.
+# Get the file from http://www.mirc.co.uk/servers.ini
+
+# TODO: We need a separate file where we can store regexp/functions
+# to match a erc-server-announced-name against a erc-networks-alist entry.
+# For sanity, we'df need a lookup procedure here, and insert the
+# regexp/function instead of the nil value in the erc-networks-alist.
+#
+# There is a error somehow in the servers.ini. There are two
+# undernets, undernet and Undernet. They are the same though.
+# So we'd need to unify them somehow (change case)?
+
+print "(defcustom erc-server-alist\n'(\n";
+while (<>) {
+    if(($sname, $shost, $sport, $grp) = $_ =~ 
/^n\d+=(.*)SERVER:(.*):(.*)GROUP:(.*)/){
+  $groups{$grp}+=1;
+  @ports = split ",", $sport;
+  print "  (\"$sname\" '$grp \"$shost\" ";
+  if ($#ports==0) {
+      if (($p1,$p2)=$sport=~/(\d+)-(\d+)/) {
+         print "(($p1 $p2))";}
+      else {
+         print $sport;
+      }
+  }
+  else {
+      print "(";
+      foreach $port (@ports) {
+         if (($p1,$p2)=$port=~/(\d+)-(\d+)/) {
+             print "($p1 $p2) ";}
+         else {
+             print $port." ";
+         }
+      }
+      print ")";
+  }
+  print ")\n";
+}
+}
+print ")\n  \"Server Alist\"\n  :group 'erc\n  :type 'sexp)\n\n";
+
+print "(defcustom erc-networks-alist\n'(\n";
+foreach $grp (sort(keys(%groups))) {
+    print "  ($grp nil)\n";
+}
+print ")\n  \"Network alist\"\n  :group 'erc\n  :type 'sexp)\n";




reply via email to

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