unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#38843: define-globalized-minor-mode enable boolean will prevent loading with :require
@ 2020-01-01  7:10 Paul W. Rankin
  2020-10-30 14:49 ` Lars Ingebrigtsen
  0 siblings, 1 reply; 4+ messages in thread
From: Paul W. Rankin @ 2020-01-01  7:10 UTC (permalink / raw)
  To: 38843

When defining a global minor mode with define-globalized-minor-mode, an
automatic custom option is created to enable that minor mode. If the
user wishes to enable this global minor mode at startup, he/she toggles
this boolean to "on" and saves his/her init. This should enable the
global minor mode upon startup (if available).

If a global minor modes is based on local minor modes, it may use a
:require keyword in the global minor mode definition, e.g. from
page-break-lines:

    ;;;###autoload
    (define-global-minor-mode global-page-break-lines-mode
      page-break-lines-mode page-break-lines-mode-maybe
      :require 'page-break-lines
      :group 'page-break-lines)

Toggling the option global-page-break-lines-mode in this case will add
the following to the user's init:

    '(global-page-break-lines-mode t nil (page-break-lines))

The problem occurs when page-break-lines is for whatever reason
unavailable, it will prevent Emacs from loading.

The customize system is designed not to prevent loading even when
libraries are unavailable, e.g.settings remain after uninstalling the
associated program/library because it makes sense if the user chooses to
reinstall. That is, the presence of settings pertaining to unavailable
programs/libraries should not prevent Emacs from loading.

So, what is the solution here? This feels to me like a bug with the way
define-globalized-minor-mode saves this boolean...





^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2020-11-01 12:16 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-01-01  7:10 bug#38843: define-globalized-minor-mode enable boolean will prevent loading with :require Paul W. Rankin
2020-10-30 14:49 ` Lars Ingebrigtsen
2020-10-30 15:25   ` Paul W. Rankin via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-11-01 12:16     ` Lars Ingebrigtsen

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).