;; Author: Hrvoje Niksic <hniksic@xemacs.org>
;; Keywords: minibuffer
-;; Version: 23
+;; Version: 24
;; This file is part of GNU Emacs.
:type 'integer
:group 'savehist)
+(defcustom savehist-mode-hook nil
+ "Hook called when `savehist-mode' is turned on."
+ :type 'hook)
+
(defcustom savehist-save-hook nil
"Hook called by `savehist-save' before saving the variables.
You can use this hook to influence choice and content of variables to
along with minibuffer history. You can change its value off
`savehist-save-hook' to influence which variables are saved.")
-;; Coding system without any conversion, used for calculating an
-;; internal checksum. Should be as fast as possible, ideally simply
-;; exposing the internal representation of buffer text.
-(defconst savehist-no-conversion (if (featurep 'xemacs) 'binary 'no-conversion))
+(defconst savehist-no-conversion (if (featurep 'xemacs) 'binary 'no-conversion)
+ "Coding system without any conversion.
+This is used for calculating an internal checksum. Should be as fast
+as possible, ideally simply exposing the internal representation of
+buffer text.")
-;; Whether the history has already been loaded. This prevents
-;; toggling savehist-mode from destroying existing minibuffer history.
-(defvar savehist-loaded nil)
+(defvar savehist-loaded nil
+ "Whether the history has already been loaded.
+This prevents toggling savehist-mode from destroying existing
+minibuffer history.")
(when (featurep 'xemacs)
;; Must declare this under XEmacs, which doesn't have built-in
(setq savehist-mode nil)
(savehist-uninstall)
(signal (car errvar) (cdr errvar)))))
- (savehist-install))
+ (savehist-install)
+ (run-hooks 'savehist-mode-hook))
;; Return the new setting.
savehist-mode)
(add-minor-mode 'savehist-mode "")
(savehist-save t)))
(defun savehist-trim-history (value)
- ;; Retain only the first history-length items in VALUE. Only used
- ;; under XEmacs, which doesn't (yet) implement automatic trimming of
- ;; history lists to history-length items.
+ "Retain only the first history-length items in VALUE.
+Only used under XEmacs, which doesn't (yet) implement automatic
+trimming of history lists to history-length items."
(if (and (featurep 'xemacs)
(natnump history-length)
(> (length value) history-length))