diff options
| author | Cameron Desautels | 2014-12-14 06:49:06 -0500 |
|---|---|---|
| committer | Ted Zlatanov | 2014-12-14 06:51:17 -0500 |
| commit | 4c4f970c8d10b346acc6d231f3755c1d1f5827fb (patch) | |
| tree | 201898796452a831786f584abfe67dd54ed42365 /lisp | |
| parent | f7572b72fd448c8ab6002bc6a545dfb765bbc520 (diff) | |
| download | emacs-4c4f970c8d10b346acc6d231f3755c1d1f5827fb.tar.gz emacs-4c4f970c8d10b346acc6d231f3755c1d1f5827fb.zip | |
Provide custom-prompt-customize-unsaved-options.
* doc/emacs/custom.texi (Saving Customizations): Mention
`custom-prompt-customize-unsaved-options'.
* etc/NEWS: Mention `custom-prompt-customize-unsaved-options'.
* etc/TODO: Remove its entry.
* lisp/cus-edit.el (custom-prompt-customize-unsaved-options): Add a
mechanism for prompting user about unsaved customizations.
(Bug#19328)
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/ChangeLog | 6 | ||||
| -rw-r--r-- | lisp/cus-edit.el | 29 |
2 files changed, 29 insertions, 6 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 75e84765320..f97a887b821 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2014-12-14 Cameron Desautels <camdez@gmail.com> | ||
| 2 | |||
| 3 | * cus-edit.el (custom-prompt-customize-unsaved-options): Add a | ||
| 4 | mechanism for prompting user about unsaved customizations. | ||
| 5 | (Bug#19328) | ||
| 6 | |||
| 1 | 2014-12-14 Dmitry Gutov <dgutov@yandex.ru> | 7 | 2014-12-14 Dmitry Gutov <dgutov@yandex.ru> |
| 2 | 8 | ||
| 3 | * fringe.el (fringe-bitmap-p): Fix 2014-12-05 breakage. | 9 | * fringe.el (fringe-bitmap-p): Fix 2014-12-05 breakage. |
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el index c8e9b90437d..a6da50e13ae 100644 --- a/lisp/cus-edit.el +++ b/lisp/cus-edit.el | |||
| @@ -1356,12 +1356,10 @@ suggest to customize that face, if it's customizable." | |||
| 1356 | (or (face-at-point t t) "all faces") t))) | 1356 | (or (face-at-point t t) "all faces") t))) |
| 1357 | (customize-face face t)) | 1357 | (customize-face face t)) |
| 1358 | 1358 | ||
| 1359 | (defalias 'customize-customized 'customize-unsaved) | 1359 | (defun custom-unsaved-options () |
| 1360 | 1360 | "List of options and faces set in this session but not saved. | |
| 1361 | ;;;###autoload | 1361 | Each entry is of the form (SYMBOL TYPE), where TYPE is one of the |
| 1362 | (defun customize-unsaved () | 1362 | symbols `custom-face' or `custom-variable'." |
| 1363 | "Customize all options and faces set in this session but not saved." | ||
| 1364 | (interactive) | ||
| 1365 | (let ((found nil)) | 1363 | (let ((found nil)) |
| 1366 | (mapatoms (lambda (symbol) | 1364 | (mapatoms (lambda (symbol) |
| 1367 | (and (or (get symbol 'customized-face) | 1365 | (and (or (get symbol 'customized-face) |
| @@ -1372,6 +1370,15 @@ suggest to customize that face, if it's customizable." | |||
| 1372 | (get symbol 'customized-variable-comment)) | 1370 | (get symbol 'customized-variable-comment)) |
| 1373 | (boundp symbol) | 1371 | (boundp symbol) |
| 1374 | (push (list symbol 'custom-variable) found)))) | 1372 | (push (list symbol 'custom-variable) found)))) |
| 1373 | found)) | ||
| 1374 | |||
| 1375 | (defalias 'customize-customized 'customize-unsaved) | ||
| 1376 | |||
| 1377 | ;;;###autoload | ||
| 1378 | (defun customize-unsaved () | ||
| 1379 | "Customize all options and faces set in this session but not saved." | ||
| 1380 | (interactive) | ||
| 1381 | (let ((found (custom-unsaved-options))) | ||
| 1375 | (if (not found) | 1382 | (if (not found) |
| 1376 | (error "No user options are set but unsaved") | 1383 | (error "No user options are set but unsaved") |
| 1377 | (custom-buffer-create (custom-sort-items found t nil) | 1384 | (custom-buffer-create (custom-sort-items found t nil) |
| @@ -1477,6 +1484,16 @@ If TYPE is `groups', include only groups." | |||
| 1477 | (interactive (list (apropos-read-pattern "groups"))) | 1484 | (interactive (list (apropos-read-pattern "groups"))) |
| 1478 | (customize-apropos regexp 'groups)) | 1485 | (customize-apropos regexp 'groups)) |
| 1479 | 1486 | ||
| 1487 | ;;;###autoload | ||
| 1488 | (defun custom-prompt-customize-unsaved-options () | ||
| 1489 | "Prompt user to customize any unsaved customization options. | ||
| 1490 | Return non-nil if user chooses to customize, for use in | ||
| 1491 | `kill-emacs-query-functions'." | ||
| 1492 | (not (and (custom-unsaved-options) | ||
| 1493 | (yes-or-no-p "Some customized options have not been saved; Examine? ") | ||
| 1494 | (customize-unsaved) | ||
| 1495 | t))) | ||
| 1496 | |||
| 1480 | ;;; Buffer. | 1497 | ;;; Buffer. |
| 1481 | 1498 | ||
| 1482 | (defcustom custom-buffer-style 'links | 1499 | (defcustom custom-buffer-style 'links |