X-Git-Url: https://cgit.sxemacs.org/?p=riece;a=blobdiff_plain;f=lisp%2Friece-options.el;h=c55dd332f99ca1b9ff11e02d55c9b73b0a129fdf;hp=e76b3bbc5df53a134c5c33f31550eef8f4c25bfc;hb=d5cc10797674780030a84d9d3b73fb80cc63ea57;hpb=14b2f20ab2cf572cdf1113747dbc9d52c5aee374 diff --git a/lisp/riece-options.el b/lisp/riece-options.el index e76b3bb..c55dd33 100644 --- a/lisp/riece-options.el +++ b/lisp/riece-options.el @@ -24,6 +24,7 @@ ;;; Code: +(require 'riece-version) (require 'riece-globals) ;; User modifiable variables. @@ -38,7 +39,8 @@ (defcustom riece-saved-forms '(riece-server-alist riece-channel-buffer-mode - riece-user-list-buffer-mode) + riece-user-list-buffer-mode + riece-layout) "Variables saved after each session is completed." :type 'string :group 'riece-options) @@ -48,27 +50,30 @@ :type 'boolean :group 'riece-options) +(defcustom riece-command-prefix "\C-c" + "Key sequence to be used as prefix for command mode key bindings." + :type 'string + :group 'riece-options) + (defgroup riece-looks nil "Related to look and feel" :prefix "riece-" :group 'riece) -(defcustom riece-truncate-partial-width-windows nil - "If non-nil, truncate lines in splitting windows such as others buffer." - :type 'boolean - :group 'riece-looks) - (defcustom riece-use-full-window t "If non-nil, whole Emacs window is used to display dialogue." :type 'boolean :group 'riece-looks) -(defcustom riece-tab-stop-list '(2 4 6 8 10 12 14 16) - "To override `tab-stop-list'." - :type '(repeat integer) +(defcustom riece-window-center-line -2 + "Line number of center point in window when scrolling. +If nil, erases the entire frame and then redraws with point in the +center of the window. Negative means relative to bottom of window. +See the document of the function `recenter'." + :type 'integer :group 'riece-looks) -(defcustom riece-directory "~/.riece" +(defcustom riece-directory (expand-file-name "~/.riece") "Where to look for data files." :type 'directory :group 'riece-options) @@ -78,7 +83,7 @@ "Where to look for add-on files." :type 'directory :group 'riece-options) - + (defcustom riece-variables-file (expand-file-name "init" riece-directory) "Where to look for variables." @@ -100,7 +105,20 @@ way is to put Riece variables on .emacs or file loaded from there." :type '(repeat (file :tag "Initialization File")) :group 'riece-options) -(defcustom riece-addons '(riece-highlight riece-ctcp) +(defcustom riece-addons '(riece-highlight + riece-ctcp + riece-guess + riece-unread + riece-history + riece-url + riece-button + riece-menu + riece-icon + riece-ignore + riece-log + riece-toolbar + riece-alias + riece-ctlseq) "Add-ons insinuated into Riece." :type '(repeat symbol) :group 'riece-options) @@ -148,7 +166,7 @@ way is to put Riece variables on .emacs or file loaded from there." (args (list spec))) (widget-put widget :args args) widget)) - + (defcustom riece-server-alist nil "An alist mapping server names to plist." :type 'riece-server-spec @@ -159,14 +177,28 @@ way is to put Riece variables on .emacs or file loaded from there." :type 'string :group 'riece-server) +(defcustom riece-protocol 'irc + "Protocol support." + :type 'symbol + :group 'riece-server) + +(defcustom riece-max-send-size 512 + "Maximum size of messages to be sent at a time." + :type 'integer + :group 'riece-server) + +(defcustom riece-send-delay 2 + "Duration of multiple send." + :type 'integer + :group 'riece-server) + (defcustom riece-default-password (getenv "IRCPASSWORD") "Your password." :type '(radio (string :tag "Password") (const :tag "No" nil)) :group 'riece-server) -(defcustom riece-username (or (getenv "IRCNAME") - (user-real-login-name)) +(defcustom riece-username nil "Your user name." :type 'string :group 'riece-server) @@ -177,14 +209,31 @@ way is to put Riece variables on .emacs or file loaded from there." :type 'string :group 'riece-server) +(defcustom riece-startup-channel-list nil + "A list of channels to join automatically at startup." + :type '(repeat (choice (string :tag "Channel") + (list (string :tag "Channel") (string :tag "Key")))) + :group 'riece-channel) + +(defcustom riece-startup-server-list nil + "A list of servers to connect automatically at startup." + :type '(repeat (string :tag "Server")) + :group 'riece-server) + (defcustom riece-retry-with-new-nickname nil "When nickname has already been in use, grow-tail automatically." :type 'boolean :group 'riece-server) -(defcustom riece-quit-timeout 60 +(defcustom riece-quit-timeout 10 "Quit timeout when there is no response from server." - :type 'integer + :type '(radio (integer :tag "Seconds") + (const nil)) + :group 'riece-server) + +(defcustom riece-default-open-connection-function #'open-network-stream + "Default function used for connecting to an IRC server." + :type 'function :group 'riece-server) (defcustom riece-channel-buffer-mode t @@ -218,31 +267,48 @@ way is to put Riece variables on .emacs or file loaded from there." :type 'boolean :group 'riece-options) -(defcustom riece-quit-message nil +(defcustom riece-quit-message (riece-extended-version) "Default quit message." - :type '(radio (string :tag "Quit message")) + :type '(string :tag "Quit message") :group 'riece-options) -(defcustom riece-away-message nil +(defcustom riece-part-message nil + "Default part message." + :type '(choice (const :tag "No message" nil) + (string :tag "Part message")) + :group 'riece-options) + +(defcustom riece-away-message "Gone" "Default away message." - :type '(radio (string :tag "Away message")) + :type '(string :tag "Away message") :group 'riece-options) -(defcustom riece-gather-channel-modes t +(defcustom riece-gather-channel-modes nil "If non-nil, gather channel modes when we join a channel." :type 'boolean :group 'riece-options) -(defcustom riece-connection-timeout 60 - "Default timeout interval." - :type 'integer - :group 'riece-server) - -(defcustom riece-buffer-dispose-function #'bury-buffer +(defcustom riece-buffer-dispose-function #'kill-buffer "Function called after the buffer was disposed." :type 'function :group 'riece-options) +(defcustom riece-shrink-buffer-idle-time-delay 5 + "Number of idle seconds to wait before shrinking channel buffers." + :type 'integer + :group 'riece-options) + +(defcustom riece-max-buffer-size nil + "Maximum size of channel buffers." + :type '(radio (integer :tag "Number of characters") + (const nil)) + :group 'riece-options) + +(defcustom riece-shrink-buffer-remove-chars (/ riece-max-send-size 2) + "Number of chars removed when shrinking channel buffers." + :type 'integer + :group 'riece-options) + (defcustom riece-format-time-function #'current-time-string "Function to convert the specified time to the human readable form." :type 'function