forked from technomancy/emacs-starter-kit
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
cd23f0c
commit b6f578c
Showing
53 changed files
with
11,353 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
Developers: | ||
Tom Berger | ||
Magnus Henoch | ||
|
||
Contributors: | ||
Mathias Dahl | ||
Mario Domenech Goulart | ||
Nolan Eakins | ||
François Fleuret | ||
Justin Kirby | ||
Carl Henrik Lunde | ||
Andrey Slusar | ||
|
||
|
||
arch-tag: 15700144-3BD9-11D9-871C-000A95C2FCD0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,92 @@ | ||
-*- mode: outline -*- | ||
|
||
* New features in jabber.el 0.7 | ||
|
||
** SSL connections possible | ||
See variable `jabber-connection-type'. | ||
|
||
** Chat buffers rewritten | ||
New modular design gives increased extensibility. | ||
*** Received URLs are displayed | ||
*** Long lines are filled | ||
See jabber-chat-fill-long-lines. | ||
*** Rare timestamps are printed by default | ||
See jabber-print-rare-time and jabber-rare-time-format. | ||
|
||
** MUC features | ||
*** Different default nicknames for different MUC rooms | ||
See jabber-muc-default-nicknames. | ||
*** Autojoin MUC rooms on connection | ||
See jabber-muc-autojoin. | ||
*** Change nickname | ||
Actually simply an alias from jabber-muc-nick to jabber-groupchat-join. | ||
*** Invitations | ||
Both sending and receiving invitiations is supported. | ||
*** Basic affiliation change support | ||
(Not finished) | ||
*** Private MUC messages | ||
*** Support for setting and displaying topic | ||
|
||
** Global key bindings | ||
Global keymap under C-x C-j. | ||
|
||
** Vcard viewer and editor | ||
|
||
** Roster export | ||
|
||
** Message events (JEP-0022) | ||
|
||
** Easy way to define external notifiers | ||
See define-jabber-alert. Alerts for Festival (speech synthesis), | ||
Sawfish, and xmessage added. | ||
|
||
** Activity mode improved | ||
Can now display count in frame title. Update hook added. | ||
|
||
** Roster display optimized | ||
|
||
** Optionally use per-contact history files | ||
|
||
** Jabber menu in menubar not enabled by default | ||
Call jabber-menu to have it there. | ||
|
||
** Flyspell in chat buffers | ||
Flyspell will only spell check what you're currently writing. | ||
|
||
** Different time formats for instant and delayed messages | ||
See `jabber-chat-time-format' and `jabber-chat-delayed-time-format'. | ||
You can see the complete timestamp in a tooltip by holding the mouse | ||
over the prompt. | ||
|
||
** Chat buffers in inactive windows are scrolled | ||
|
||
** Roster is sorted by name also | ||
|
||
* New features in jabber.el 0.6.1 | ||
|
||
** Message history | ||
Set jabber-history-enabled to t to activate it. | ||
|
||
** Backlogs | ||
If you have history enabled, the last few messages are inserted when | ||
you open a new chat buffer. | ||
|
||
** Activity tracking on the mode line | ||
Activate it with M-x jabber-activity-mode. | ||
|
||
** Receive an alert when a specific person goes online | ||
Use it with M-x jabber-watch-add. | ||
|
||
** Support for /me in chats | ||
As in "/me laughs" etc. | ||
|
||
** Message alerts for current buffer can be disabled | ||
Set jabber-message-alert-same-buffer to nil to do that. | ||
|
||
** Basic moderation support in MUC | ||
|
||
** MUC alerts are separated from ordinary message alerts | ||
Customize jabber-alert-muc-hooks to get your desired behaviour. | ||
|
||
|
||
arch-tag: 1CE20E4E-3BD9-11D9-8D64-000A95C2FCD0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,104 @@ | ||
This is jabber.el 0.7, a Jabber client for Emacs. If you don't know | ||
what Jabber is, see http://www.jabber.org . | ||
|
||
Home page: http://emacs-jabber.sourceforge.net | ||
Project page: http://sourceforge.net/projects/emacs-jabber | ||
Wiki page: http://www.emacswiki.org/cgi-bin/wiki/JabberEl | ||
Mailing list: http://lists.sourceforge.net/lists/listinfo/emacs-jabber-general | ||
and: http://dir.gmane.org/gmane.emacs.jabber.general | ||
|
||
GNU Emacs | ||
========= | ||
|
||
jabber.el depends on GNU Emacs 21, in particular xml.el, and some | ||
files from Gnus 5.10. If you don't have Gnus 5.10 (M-x gnus-version | ||
will tell), you can download sha1.el and hex-util.el from Gnus CVS | ||
at http://quimby.gnus.org/cgi-bin/cvsweb.cgi/gnus/lisp/ . For your | ||
convenience, these files are included in the tarball. | ||
|
||
XEmacs | ||
====== | ||
|
||
You need an XEmacs with Mule support, and recent versions of the gnus, | ||
net-utils and mule-ucs packages. jabber.el basically works on XEmacs, | ||
but some features are missing (in particular mouse support). Testing | ||
and patches are very welcome. | ||
|
||
SASL | ||
==== | ||
jabber.el will use the SASL library of FLIM (Faithful Library about | ||
Internet Message; it is also included in newer versions of Gnus) if | ||
it's present. If not, it will fall back to JEP-0077 authentication. | ||
|
||
TLS/SSL | ||
======= | ||
To get an encrypted connection, you need either tls.el (from Gnus) or | ||
ssl.el. These are interfaces to GnuTLS and OpenSSL, respectively; use | ||
the appropriate one. Recent versions of tls.el support both programs, | ||
though. The version of ssl.el distributed with Gnus is outdated; use | ||
the one from W3 CVS instead: | ||
http://cvs.savannah.gnu.org/viewcvs/w3/lisp/ssl.el?root=w3 | ||
|
||
To actually use encryption, customize the variables | ||
jabber-connection-type and jabber-connection-ssl-program. | ||
|
||
Note that only the connection from you to the server is encrypted; | ||
there is no guarantee of other connections being encrypted. | ||
|
||
StartTLS is not supported in this version of jabber.el. | ||
|
||
Installation | ||
============ | ||
To install, put all .el files somewhere in your load-path (or have | ||
your load-path include the directory they're in) and put | ||
(require 'jabber) in your .emacs file. To install the Info | ||
documentation, copy jabber.info to /usr/local/info and run | ||
"install-info /usr/local/info/jabber.info". | ||
|
||
If you've been using a post-0.6 CVS version of jabber.el, you might | ||
need to remove some redundant hook functions. Make sure that | ||
jabber-alert-message-hooks doesn't contain jabber-message-history, and | ||
that jabber-alert-presence-hooks doesn't contain | ||
jabber-presence-watch. | ||
|
||
Usage | ||
===== | ||
To start using it, type M-x jabber-customize and set your username and | ||
server. Then, type C-x C-j C-c (or equivalently M-x jabber-connect) | ||
to connect (with prefix argument, register new account). | ||
|
||
Your roster is displayed in a buffer called *-jabber-*. To | ||
disconnect, type C-x C-j C-d or M-x jabber-disconnect. | ||
|
||
You may want to use the menu bar to execute Jabber commands. To | ||
enable the Jabber menu, type M-x jabber-menu. | ||
|
||
For a less terse description, read the enclosed manual. | ||
|
||
For bug reports, help requests and other feedback, use the trackers | ||
and forums at the project page mentioned above. | ||
|
||
Configuration | ||
============= | ||
All available configuration options are described in the manual. This | ||
section only serves to point out the most important ones. | ||
|
||
To change how you are notified about incoming events, type M-x | ||
customize-group RET jabber-alerts. | ||
|
||
To activate logging of all chats, set jabber-history-enabled to t. By | ||
default, history will be saved in ~/.jabber_global_message_log; make | ||
sure that this file has appropriate permissions. Type M-x | ||
customize-group RET jabber-history for more options. | ||
|
||
By default, jabber.el will send a confirmation when messages sent to | ||
you are delivered and displayed, and also send "contact is typing" | ||
notifications. To change this, type M-x customize-group RET | ||
jabber-events, and set the three jabber-events-confirm-* variables to | ||
nil. | ||
|
||
File transfer | ||
============= | ||
This release of jabber.el contains experimental support for file | ||
transfer. It is not enabled by default. See the file | ||
filetransfer.txt for details. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
-*- outline -*- | ||
* File transfer | ||
|
||
This release of jabber.el contains some support for file transfer. | ||
Both sending and receiving files are supported. Since this feature | ||
needs more testing, it is not enabled by default. To enable it, add | ||
|
||
(require 'jabber-ft-server) | ||
(require 'jabber-ft-client) | ||
(require 'jabber-socks5) | ||
|
||
to your .emacs file. Please share your experiences - does it work for | ||
you? Can you suggest any improvements? | ||
|
||
** Sending files | ||
|
||
Sending files over Jabber normally requires the ability to listen on a | ||
network port. As of Emacs 21.3 and XEmacs 21.4, elisp programs can't | ||
do this, so you have to specify a JEP-0065 proxy. The variable | ||
jabber-socks5-proxies is a list of proxies to use. "proxy.jabber.org" | ||
and "proxy65.jabber.ccc.de" are the only proxies I know of. | ||
|
||
After you have specified one or more proxies, jabber.el needs to know | ||
their network addresses. Type M-x jabber-socks5-query-all-proxies, | ||
and watch the progress in the echo area. Note that you have to be | ||
connected when you do this, and that you have to do this every | ||
session. | ||
|
||
To send a file, type M-x jabber-ft-send. You will be asked for which | ||
file to send, and whom to send it to. You have to specify a complete | ||
JID with resource, such as user@domain/resource - only user@domain | ||
will not work. To see the resources of your contacts, set | ||
jabber-show-resources to t and type M-x jabber-display-roster. | ||
|
||
While the file is being sent, your Emacs will be locked up and you | ||
can't do anything else. Hopefully, this will be fixed some time. | ||
|
||
** Receiving files | ||
|
||
When someone tries to send a file to you, you will get a message | ||
either in the echo area or in a dialog box, asking you to confirm. | ||
You will also be asked for where to save the file. | ||
|
||
Receiving a file should not cause any interruption to your work. If | ||
it does, please tell. | ||
|
||
** Protocol details | ||
|
||
See JEPs 95, 96 and 65. | ||
|
||
SOCKS5 (JEP-0065) is the only stream method currently supported by | ||
jabber.el, in conflict with JEP-0096, which requires that In-Band | ||
Bytestreams be supported as well. | ||
|
||
Range requests are not supported, neither in sending nor in receiving. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,75 @@ | ||
;;; hex-util.el --- Functions to encode/decode hexadecimal string. | ||
|
||
;; Copyright (C) 1999, 2001, 2002, 2003, 2004, | ||
;; 2005 Free Software Foundation, Inc. | ||
|
||
;; Author: Shuhei KOBAYASHI <shuhei@aqua.ocn.ne.jp> | ||
;; Keywords: data | ||
|
||
;; This file is part of FLIM (Faithful Library about Internet Message). | ||
|
||
;; This program is free software; you can redistribute it and/or | ||
;; modify it under the terms of the GNU General Public License as | ||
;; published by the Free Software Foundation; either version 2, or | ||
;; (at your option) any later version. | ||
|
||
;; This program is distributed in the hope that it will be useful, | ||
;; but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
;; GNU General Public License for more details. | ||
|
||
;; You should have received a copy of the GNU General Public License | ||
;; along with this program; see the file COPYING. If not, write to | ||
;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
;; Boston, MA 02110-1301, USA. | ||
|
||
;;; Commentary: | ||
|
||
;;; Code: | ||
|
||
(eval-when-compile | ||
(defmacro hex-char-to-num (chr) | ||
(` (let ((chr (, chr))) | ||
(cond | ||
((and (<= ?a chr)(<= chr ?f)) (+ (- chr ?a) 10)) | ||
((and (<= ?A chr)(<= chr ?F)) (+ (- chr ?A) 10)) | ||
((and (<= ?0 chr)(<= chr ?9)) (- chr ?0)) | ||
(t (error "Invalid hexadecimal digit `%c'" chr)))))) | ||
(defmacro num-to-hex-char (num) | ||
(` (aref "0123456789abcdef" (, num))))) | ||
|
||
(defun decode-hex-string (string) | ||
"Decode hexadecimal STRING to octet string." | ||
(let* ((len (length string)) | ||
(dst (make-string (/ len 2) 0)) | ||
(idx 0)(pos 0)) | ||
(while (< pos len) | ||
;;; logior and lsh are not byte-coded. | ||
;;; (aset dst idx (logior (lsh (hex-char-to-num (aref string pos)) 4) | ||
;;; (hex-char-to-num (aref string (1+ pos))))) | ||
(aset dst idx (+ (* (hex-char-to-num (aref string pos)) 16) | ||
(hex-char-to-num (aref string (1+ pos))))) | ||
(setq idx (1+ idx) | ||
pos (+ 2 pos))) | ||
dst)) | ||
|
||
(defun encode-hex-string (string) | ||
"Encode octet STRING to hexadecimal string." | ||
(let* ((len (length string)) | ||
(dst (make-string (* len 2) 0)) | ||
(idx 0)(pos 0)) | ||
(while (< pos len) | ||
;;; logand and lsh are not byte-coded. | ||
;;; (aset dst idx (num-to-hex-char (logand (lsh (aref string pos) -4) 15))) | ||
(aset dst idx (num-to-hex-char (/ (aref string pos) 16))) | ||
(setq idx (1+ idx)) | ||
;;; (aset dst idx (num-to-hex-char (logand (aref string pos) 15))) | ||
(aset dst idx (num-to-hex-char (% (aref string pos) 16))) | ||
(setq idx (1+ idx) | ||
pos (1+ pos))) | ||
dst)) | ||
|
||
(provide 'hex-util) | ||
|
||
;;; arch-tag: fe8aaa79-6c86-400e-813f-5a8cc4cb3859 | ||
;;; hex-util.el ends here |
Oops, something went wrong.