aboutsummaryrefslogtreecommitdiff
path: root/generic/proof-menu.el
diff options
context:
space:
mode:
authorDavid Aspinall2011-01-31 08:56:12 +0000
committerDavid Aspinall2011-01-31 08:56:12 +0000
commit17c414438339c4edc9fabc2a1f751ddbb1a685c6 (patch)
tree0fbc7cbbb2a886242ac7862f63f70ce457d280da /generic/proof-menu.el
parente482a7dc259dc63c0404dd3c38649317524cd721 (diff)
Improve handling of dynamic preferences. Addresses Trac #387.
Diffstat (limited to 'generic/proof-menu.el')
-rw-r--r--generic/proof-menu.el15
1 files changed, 11 insertions, 4 deletions
diff --git a/generic/proof-menu.el b/generic/proof-menu.el
index 741fab64..5c0bfeda 100644
--- a/generic/proof-menu.el
+++ b/generic/proof-menu.el
@@ -1,6 +1,6 @@
;;; proof-menu.el --- Menus, keymaps, misc commands for Proof General
;;
-;; Copyright (C) 2000,2001,2009,2010 LFCS Edinburgh.
+;; Copyright (C) 2000,2001,2009,2010,2011 LFCS Edinburgh.
;; Authors: David Aspinall
;; License: GPL (GNU GENERAL PUBLIC LICENSE)
;;
@@ -920,9 +920,16 @@ KEY is the optional key binding."
)))
(defun proof-maybe-askprefs ()
- "If `proof-use-pgip-askprefs' is non-nil, try to issue <askprefs>."
- (if (and proof-use-pgip-askprefs proof-shell-issue-pgip-cmd)
- (pg-pgip-askprefs)))
+ "If `proof-use-pgip-askprefs' is non-nil, try to issue <askprefs>.
+This will configure dynamic settings used in the current prover session
+and extend `proof-assistant-settings'.
+We first clear the dynamic settings from `proof-assistant-settings'."
+ (when (and proof-use-pgip-askprefs proof-shell-issue-pgip-cmd)
+ (dolist (setting proof-assistant-settings)
+ (let ((name (car setting)))
+ (if (get name 'pgdynamic)
+ (undefpgcustom name))))
+ (pg-pgip-askprefs)))
(defun proof-assistant-settings-cmd (setting)