s/username/user name/
[riece] / lisp / riece-globals.el
index c7b74c7..5e80bc1 100644 (file)
 
 ;; 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.")
 (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 user name space.")
+
+(defvar riece-channel-obarray-size 103
+  "The size of obarray used by riece on channel name space.")
+
+(defvar riece-addon-dependencies nil)
 
 ;;; Variables local to the server buffers:
 (defvar riece-server-name nil
@@ -87,65 +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 user names.
+Local to the server buffers.")
 
 ;;; Variables local to the channel buffers:
 (defvar riece-freeze nil
-  "If non-nil, channel window is not scrolled.
+  "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-own-freeze nil
-  "If non-nil, channel window is not scrolled until you input.
+
+(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-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)