X-Git-Url: https://cgit.sxemacs.org/?p=riece;a=blobdiff_plain;f=lisp%2Friece-globals.el;h=0b19e109447046505b9f9e9383994438b3217603;hp=fbba31bcd1b14b957db80c2d1c96fb0ab4faddfa;hb=b51c9730dc2297168743bd6a79b9b359017610e3;hpb=30d51f630920fb7e215af86f2ab8e9fa3c534289 diff --git a/lisp/riece-globals.el b/lisp/riece-globals.el index fbba31b..0b19e10 100644 --- a/lisp/riece-globals.el +++ b/lisp/riece-globals.el @@ -19,21 +19,42 @@ ;; You should have received a copy of the GNU General Public License ;; along with GNU Emacs; see the file COPYING. If not, write to the -;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, -;; Boston, MA 02111-1307, USA. +;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +;; Boston, MA 02110-1301, USA. ;;; Code: -;;; Miscellaneous global variables: -(defvar riece-server-process nil - "Primary server process.") +(require 'riece-compat) ;riece-make-interval-regexp + +;;; Constants: +(defconst riece-strict-channel-regexp + (concat "\\([+&#]\\|!" + (riece-make-interval-regexp "[A-Z0-9]" 5) + "\\|!!\\)[^\0\7\r\n ,:]*\\(:[^\0\7\r\n ,:]*\\)?")) + +(defconst riece-strict-user-regexp + (concat "[][\\\\`_^{|}A-Za-z]" + (riece-make-interval-regexp "[][\\\\`_^{|}A-Za-z0-9-]" 0 8))) + +(defconst riece-laxed-channel-regexp + "[+&#!][^\0\7\r\n ,:]*\\(:[^\0\7\r\n ,:]*\\)?") + +(defconst riece-laxed-user-regexp + "[][\\\\`_^{|}A-Za-z][][\\\\`_^{|}A-Za-z0-9-]*") + +(defvar riece-channel-regexp riece-laxed-channel-regexp) +(defvar riece-user-regexp riece-laxed-user-regexp) + +;;; Global variables: (defvar riece-server-process-alist nil - "An alist mapping secondary server name to opened processes.") + "An alist mapping server names to processes.") (defvar riece-current-channel nil "The channel you currently have joined.") (defvar riece-current-channels nil "The channels you have currently joined.") +(defvar riece-join-channel-candidate nil + "The candidate for channel to be used with the next join command.") (defvar riece-save-variables-are-dirty nil "Non nil if the variables in `riece-saved-forms' are changed.") @@ -44,8 +65,13 @@ (defvar riece-reconnect-with-password nil "If non-nil, attempt to reconnect with password.") -(defvar riece-obarray-size 1327 - "The size of obarray used by riece on channelname and username space.") +(defvar riece-user-obarray-size 1327 + "The size of obarray used by riece on username space.") + +(defvar riece-channel-obarray-size 103 + "The size of obarray used by riece on channelname space.") + +(defvar riece-addon-dependencies nil) ;;; Variables local to the server buffers: (defvar riece-server-name nil @@ -87,64 +113,87 @@ Local to the server buffers.") (defvar riece-read-point nil "Point at the last input was seen. Local to the server buffers.") -(defvar riece-obarray nil - "Namespace of the IRC world. +(defvar riece-send-queue nil + "Send queue for avoiding client flood. +Local to the server buffers.") +(defvar riece-send-size nil + "Size of the last send. +Local to the server buffers.") +(defvar riece-last-send-time nil + "Timestamp of the last send. +Local to the server buffers.") +(defvar riece-user-obarray nil + "USER namespace of the IRC world. +Local to the server buffers.") +(defvar riece-channel-obarray nil + "Channel namespace of the IRC world. Local to the server buffers.") (defvar riece-coding-system nil "Coding system for process I/O. Local to the server buffers.") - -;;; Variables local to the command buffer: -(defvar riece-default-channel-candidate nil - "A channel name used as completion candidate. -Local to the command buffer.") -(defvar riece-last-channel nil - "The channel you joined the last time.") -(defvar riece-command-buffer-mode 'channel - "Command buffer mode. -Possible values are `chat' and `channel'. -Local to the command buffer.") +(defvar riece-channel-cache nil + "Cache of channel names. +Local to the server buffers.") +(defvar riece-user-cache nil + "Cache of usernames. +Local to the server buffers.") ;;; Variables local to the channel buffers: (defvar riece-freeze nil - "If t, channel window is not scrolled. -If 'own, channel window is not scrolled until you speak. + "If t, channel window is locked and will not be scrolled. +If 'own, channel window is locked until the user begins to speak. +Local to the channel buffers.") + +(defvar riece-freeze-indicator nil + "String displayed on the modeline to allow the user to tell if the +channel buffer is locked. +Local to the channel buffers.") + +(defvar riece-channel-buffer-window-point nil + "Last value of point in window which displayed the channel buffer. Local to the channel buffers.") ;;; Modeline indicators: +(defvar riece-mode-line-buffer-identification nil) (defvar riece-channel-indicator "None" - "A modeline indicator of the current channel.") + "String displayed on the modeline to indicate the current channel.") +(defvar riece-long-channel-indicator "None" + "String displayed on the modeline to indicate the current channel. +Generally, this string will contain more information than +riece-channel-indicator.") (defvar riece-channel-list-indicator "No channel" - "The current joined channels, \"pretty-printed.\".") - -(defvar riece-away-indicator "-") -(defvar riece-operator-indicator "-") -(defvar riece-freeze-indicator nil) -(defvar riece-own-freeze-indicator nil) + "String displayed on the modeline to show the joined channels.") +(defvar riece-user-indicator nil + "String displayed on the modeline to show the current nickname.") + +(defvar riece-away-indicator "-" + "String displayed on the modeline to allow the user to tell if the +user is away.") +(defvar riece-operator-indicator "-" + "String displayed on the modeline to allow the user to tell if the +user is an operator.") +(defvar riece-channel-status-indicator "-" + "String displayed on the modeline to allow the user to tell if the +user's status on the current channel.") ;;; Buffers: -(defvar riece-command-buffer "*Commands*" - "Name of command input buffer.") -(defvar riece-dialogue-buffer "*Dialogue*" - "Name of dialogue output buffer.") -(defvar riece-private-buffer "*Private*" - "Name of private message buffer.") -(defvar riece-others-buffer "*Others*" - "Name of others message buffer.") -(defvar riece-channel-buffer nil - "Name of channel message buffer.") -(defvar riece-channel-buffer-format "*Channel:%s*" - "Format of channel message buffer.") -(defvar riece-channel-list-buffer " *Channels*" - "Name of channel list buffer.") +(defvar riece-command-buffer nil + "The command buffer.") +(defvar riece-dialogue-buffer nil + "Buffer for whole conversation.") +(defvar riece-others-buffer nil + "Buffer for other messages.") +(defvar riece-channel-list-buffer nil + "Buffer for channel list.") (defvar riece-user-list-buffer nil - "Name of user list buffer.") -(defvar riece-user-list-buffer-format " *Users:%s*" - "Format of user list buffer.") -(defvar riece-wallops-buffer " *WALLOPS*") + "Buffer for user list.") +(defvar riece-channel-buffer nil + "Buffer for messages arrived in the current channel.") +(defvar riece-temp-buffer nil + "Buffer for temporally use.") +(defvar riece-debug-buffer nil + "Buffer for debug output.") -(defvar riece-channel-buffer-alist nil) -(defvar riece-user-list-buffer-alist nil) (defvar riece-buffer-list nil) (defvar riece-overriding-server-name nil)