Commit graph

112 commits

Author SHA1 Message Date
Sean Whitton
c31f6adc31 ; Add 2026 to copyright years. 2026-01-01 12:54:34 +00:00
Eli Zaretskii
8fc068a15d ; Fix a recent documentation change
* doc/lispref/customize.texi (Variable Definitions): Restore
description of 'custom-initialize-delay'.  Fix indexing.
2025-10-23 07:46:12 +03:00
Stefan Monnier
287fb2fbad (custom-initialize-after-file): New function
Some global minor modes require initialization.  Those that are preloaded
currently abuse `custom-initialize-delay` for that, but it's suboptimal
and doesn't help those that aren't preloaded.
So introduce a new function to fill that need.
While at it, make `define-globalized-minor-mode` use it
automatically when useful.

* lisp/custom.el (custom-initialize-after-file-load): New function.
* lisp/tooltip.el (tooltip-mode):
* lisp/paren.el (show-paren-mode):
* lisp/rfn-eshadow.el (file-name-shadow-mode):
* lisp/epa-hook.el (auto-encryption-mode):
* lisp/minibuffer.el (minibuffer-regexp-mode, minibuffer-nonselected-mode):
* lisp/electric.el (electric-indent-mode): Use it instead of
`custom-initialize-delay` since the value does not depend on the
runtime context.
(electric-quote-mode): Don't use `custom-initialize-delay` since
the default value is nil anyway.

* lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
Automatically add `:initialize` if needed.
* lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Remove `:initialize`,
now provided automatically.

* doc/lispref/customize.texi (Variable Definitions):
* doc/lispref/modes.texi (Defining Minor Modes): Document and Suggest
`custom-initialize-after-file-load` instead of `custom-initialize-delay`.
2025-10-22 17:12:10 -04:00
Eli Zaretskii
ade511e316 ; Improve documentation of 'defcustom' types
* doc/lispref/customize.texi (Simple Types): Document the
'buffer-predicate' type.  (Bug#79496)
2025-09-27 12:34:25 +03:00
Eli Zaretskii
0f75a01acd ; Fix cross-references in Texinfo manuals 2025-01-19 08:23:23 +02:00
Eli Zaretskii
2a314666e4 Revert "Revert "Use @xref more consistently; "See @ref" -> "@xref"""
This reverts commit 59167e2de8.
TRT to use reference in Texinfo is to place some punctuation
character after a reference.  This is common both to @ref and
to @xref.  So this is what should be done to fix the changeset,
not to revert it.
2025-01-19 08:06:48 +02:00
Po Lu
59167e2de8 Revert "Use @xref more consistently; "See @ref" -> "@xref""
This reverts commit e54b94c28c,
which prevented building Emacs on a number of my machine(s).
2025-01-19 08:59:28 +08:00
Stefan Kangas
e54b94c28c Use @xref more consistently; "See @ref" -> "@xref"
* doc/lispref/commands.texi (Using Interactive):
* doc/lispref/customize.texi (Type Keywords):
* doc/lispref/edebug.texi (Using Edebug, Specification List):
* doc/lispref/frames.texi (Frame Layout):
* doc/lispref/functions.texi (What Is a Function, Related Topics):
* doc/lispref/keymaps.texi (Controlling Active Maps, Key Lookup):
* doc/lispref/minibuf.texi (Completion Variables):
* doc/lispref/os.texi (Terminal Input):
* doc/lispref/text.texi (JSONRPC Overview):
* doc/misc/calc.texi (More About Embedded Mode, Customizing Calc):
* doc/misc/cc-mode.texi (Movement Commands, Auto-newlines)
(Config Basics, Custom Auto-newlines):
* doc/misc/gnus.texi (Email Based Diary):
* doc/misc/htmlfontify.texi (Interactive, Non-interactive):
(Variables):
* doc/misc/idlwave.texi (Using the Shell):
* doc/misc/srecode.texi (Quick Start, User Templates)
(Parts of SRecode, Compound Variable Values, Template Macros):
* doc/misc/tramp.texi (Inline methods, FUSE-based methods)
(Predefined connection information, Remote shell setup)
(Frequently Asked Questions):
* doc/misc/transient.texi (Configuration, Technical Introduction):
(Binding Suffix and Infix Commands, Transient State):
(Prefix Slots, Predicate Slots):
* doc/misc/wisent.texi (Example, Compiling a grammar, Conflicts):
(Grammar Debugging, Error recovery):
2025-01-19 01:34:44 +01:00
Stephen Gildea
c98d9e8bf5 Lisp Reference Manual: Index standard symbol properties.
* doc/lispref/symbols.texi (Standard Properties):
* doc/lispref/commands.texi:
* doc/lispref/customize.texi (Variable Definitions):
* doc/lispref/help.texi:
* doc/lispref/keymaps.texi:
* doc/lispref/minibuf.texi (Minibuffer History):
* doc/lispref/modes.texi (Setting Hooks):
* doc/lispref/sequences.texi (Char-Tables):
* doc/lispref/text.texi (Undo):
* doc/lispref/variables.texi: Each standard symbol property has exactly
one index entry, uniformly formatted as "(symbol property)".
2025-01-12 20:16:00 -08:00
Mauro Aranda
99b85e116f Emphasize the use of :tag for new customization types
* doc/lispref/customize.texi (Type Keywords): Name important use
cases of the :tag keyword.
(Defining New Types): Emphasize the use of the :tag keyword when
using the lazy widget.  (Bug#74409)
2025-01-12 15:19:40 -03:00
Paul Eggert
4da38c6321 Update copyright year to 2025
Run "TZ=UTC0 admin/update-copyright".
2025-01-01 07:39:17 +00:00
Stefan Kangas
9ad73f9261 New value 'permanent-only' for defcustom :local keyword
* lisp/custom.el (custom-declare-variable): Make the :local keyword
accept the symbol 'permanent-local', meaning that the variable is
permanent but not marked as automatically buffer-local.
(defcustom):
* doc/lispref/customize.texi (Variable Definitions): Document the
above change.

* test/lisp/custom-tests.el
(custom-tests-defcustom-:local-keyword): New test.
2024-10-02 01:25:50 +02:00
Po Lu
8e1c56ae46 ; Add 2024 to copyright years 2024-01-02 09:47:10 +08:00
Shynur
1b8b2cf61b Fix typo and inaccuracy in the ELisp Reference manual
* doc/lispref/loading.texi (Dynamic Modules): Fix a typo.
* doc/lispref/customize.texi (Group Definitions): Faces are also
in the 'custom-group' property of a customization group.
(Bug#62887)

Copyright-paperwork-exempt: yes
2023-04-18 15:03:32 +03:00
Eli Zaretskii
9b32bc134c Improve documentation of 'defcustom's :set keyword
* lisp/custom.el (defcustom):
* doc/lispref/customize.texi (Variable Definitions): Improve the
documentation of the :set keyword in 'defcustom'.
2023-03-30 09:09:43 +03:00
Eli Zaretskii
cae528457c ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
Philip Kaludercic
da2e6da722
Tag themes with properties
* doc/emacs/custom.texi (Custom Themes): Document 'theme-choose-variant'.
* doc/lispref/customize.texi (Custom Themes): Document the new
optional argument to 'deftheme'.
(Autoload): Mention that 'deftheme' is not copied verbatim.
* etc/themes/adwaita-theme.el (adwaita): Add properties.
* etc/themes/deeper-blue-theme.el (deeper-blue): Add properties.
* etc/themes/dichromacy-theme.el (dichromacy): Add properties.
* etc/themes/light-blue-theme.el (light-blue): Add properties.
* etc/themes/manoj-dark-theme.el (manoj-dark): Add properties.
* etc/themes/misterioso-theme.el (misterioso): Add properties.
* etc/themes/tango-dark-theme.el (tango-dark): Add properties.
* etc/themes/tango-theme.el (tango): Add properties.
* etc/themes/tsdh-dark-theme.el (tsdh-dark): Add properties.
* etc/themes/tsdh-light-theme.el (tsdh-light): Add properties.
* etc/themes/wheatgrass-theme.el (wheatgrass): Add properties.
* etc/themes/whiteboard-theme.el (whiteboard): Add properties.
* etc/themes/wombat-theme.el (wombat): Add properties.
* etc/themes/modus-operandi-theme.el: Add properties.
* etc/themes/modus-vivendi-theme.el: Add properties.
* etc/themes/leuven-dark-theme.el (leuven-dark): Add properties.
* etc/themes/leuven-theme.el (leuven): Add properties.
* lisp/custom.el (deftheme): Allow for optional arguments to set the
property list.
(custom-declare-theme): Accept the same optional arguments as 'deftheme'.
(theme-list-variants): Add new function.
(theme-choose-variant): Add new command for switching between members
of a theme family.
(toggle-theme): Add an alias for 'theme-choose-variant'.
* lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate--make-autoload):
Handle 'defcustom's by extracting the properties.  (Bug#57639)
2022-10-15 17:22:48 +02:00
Jim Porter
b87400c78b Make the bookmark fringe icon look like a bookmark
* src/fringe.c (large_circle_bits): New variable.
(standard_bitmaps): Add large_circle_bits.

* lisp/fringe.el (fringe-bitmaps): Add 'large-circle'.
(fringe-custom-set-bitmap): New function.

* lisp/cus-edit.el (widget-fringe-bitmap-prompt-value-history): New
variable.
(fringe-bitmap): New widget.

* lisp/bookmark.el (bookmark-set-fringe-mark): Obsolete in favor of...
(bookmark-fringe-mark): ... this.
(bookmark-fringe-mark): Rename this fringe bitmap to...
(bookmark-mark): ... and change it to look like a bookmark.
(bookmark-face): Don't set the ':background' of the face.  Instead,
set ':distant-foreground'.
(bookmark--set-fringe-mark, bookmark--remove-fringe-mark)
(bookmark-store, bookmark--jump-via): Consult the
'bookmark-fringe-mark' option.

* doc/lispref/customize.texi (Simple Types): Document 'fringe-bitmap'
type.

* doc/lispref/display.texi (Fringe Bitmaps): Mention 'large-circle'.

* etc/NEWS: Announce this change (bug#56896).
2022-08-15 21:15:42 -07:00
Ignacio Casso
071722e411 Fix issues with loading autoloaded defcustoms while bound
* doc/lispref/customize.texi (Variable Definitions)
(Variable Definitions): Update documentation.

* lisp/custom.el (custom-initialize-set)
(custom-initialize-reset): Update doc string.
(custom-initialize-changed): Use set-default-toplevel-value.  This
fixes issues with (let ((custom-variable ...))  (autoload-function ...)).
(custom-set-default): Ditto.

* src/data.c (Fdefault_boundp): Update doc string.
2022-06-10 11:13:20 +02:00
Stefan Kangas
984391a9dc New :type key for defcustom
As compared to the old type key-sequence that deals with raw key
sequences, this :type conforms to the format used by the new keymap-*
functions.
* lisp/wid-edit.el (key): New widget type.  (Bug#52523)
(widget-key-prompt-value-history): New variable.
(widget-key-validate): New function.
(key-sequence): Doc fix.
* doc/lispref/customize.texi (Simple Types): Document above new type.
2022-01-02 16:46:02 +01:00
Eli Zaretskii
dcd76bd48d Merge from origin/emacs-28
836be7a112 ; * etc/refcards/ru-refcard.tex: Update Copyright year.
86cbc6ee4a * lisp/net/tramp-sh.el: Adapt copyright year
ebe8772f65 ; Minor fixes related to copyright years
23c1ee6989 ; * test/manual/etags/ETAGS.good_N: Adjust to copyright ye...
8d3fc7ec89 * src/xfaces.c (face_for_font): Make 'hash' be uintptr_t.
19dcb237b5 ; Add 2022 to copyright years.

# Conflicts:
#	etc/NEWS
#	etc/refcards/ru-refcard.tex
#	lib/cdefs.h
#	lisp/erc/erc-dcc.el
#	lisp/erc/erc-imenu.el
#	lisp/erc/erc-replace.el
#	lisp/image-dired.el
#	lisp/progmodes/xref.el
#	m4/alloca.m4
#	m4/byteswap.m4
#	m4/errno_h.m4
#	m4/getopt.m4
#	m4/gnulib-common.m4
#	m4/inttypes.m4
#	m4/stddef_h.m4
#	m4/stdint.m4
#	m4/sys_socket_h.m4
2022-01-01 07:03:03 -05:00
Eli Zaretskii
19dcb237b5 ; Add 2022 to copyright years. 2022-01-01 02:45:51 -05:00
Eli Zaretskii
0854453ec2 Revert "Use @pxref when necessary"
This reverts commit b4f47d2ee2.
Cleanups should not be done on the release branch: that's
unnecessary risk.
2021-11-24 21:27:15 +02:00
Robert Pluim
b4f47d2ee2 Use @pxref when necessary
* doc/lispref/customize.texi (Composite Types):
* doc/lispref/edebug.texi (Specification List):
* doc/lispref/variables.texi (Local Variables):
* doc/misc/efaq.texi (Basic keys):
(Informational files for Emacs):
* doc/misc/flymake.texi (Locating a master file):
* doc/misc/gnus.texi (Don't Panic):
(Oort Gnus):
* doc/misc/htmlfontify.texi (Non-interactive):
* doc/misc/mh-e.texi (More About MH-E):
* doc/misc/pcl-cvs.texi (Entering PCL-CVS):
* doc/misc/tramp.texi (Remote processes):
* doc/misc/vhdl-mode.texi (Indentation Calculation):
(Custom Indentation Functions): Use @pxref when inside parens.
2021-11-24 17:55:27 +01:00
Stefan Kangas
f1071bf08e New :type natnum for defcustom
* lisp/wid-edit.el (natnum): New widget type.  (Bug#15809)
* doc/lispref/customize.texi (Simple Types): Document it.
2021-09-25 04:15:22 +02:00
Basil L. Contovounesios
8e759d60cc Decouple require-theme from load-theme
* lisp/custom.el (require-theme): Refashion after 'require', as a
function for loading only named features.  Do not call
load-theme (bug#45068).
* etc/NEWS: Update its announcement accordingly.
* doc/lispref/customize.texi (Custom Themes): Document it.

* etc/themes/modus-operandi-theme.el:
* etc/themes/modus-vivendi-theme.el: Remove redundant calls to
'provide'.

* test/lisp/custom-tests.el (custom-tests--with-temp-dir): New
macro.
(custom-theme--load-path): Use it.
(custom-tests-require-theme): New test.
2021-03-04 15:40:35 +00:00
Paul Eggert
ba05d005e5 Update copyright year to 2021
Run "TZ=UTC0 admin/update-copyright".
2021-01-01 01:13:56 -08:00
Lars Ingebrigtsen
635666e7bf Use a widget for the face link in Customize buffers
* doc/lispref/customize.texi (Common Keywords): Document it.

* lisp/cus-edit.el (custom-face-value-create): Use a widget
instead of a button so that TAB works (bug#20664).

* lisp/wid-edit.el (face-link): New widget.
(widget-face-link-action): New action.
2020-09-18 13:28:12 +02:00
Mauro Aranda
0f793b5658 Document :type-error property for customization types
* doc/lispref/customize.texi (Type Keywords): Document :type-error, so
Lisp programs can display a more correct message when the value of a
user option doesn't match its type (bug#23975).
2020-09-04 14:50:40 +02:00
Mauro Aranda
0996047476 Improve documentation for custom :options
* doc/lispref/customize.texi (Variable Definitions):
Mention that re-evaluating a defcustom form doesn't reset custom
options (bug#30101).
2020-09-01 17:00:58 +02:00
Basil L. Contovounesios
35661ef943 Fix typo in "(elisp) Type Keywords"
* doc/lispref/customize.texi (Type Keywords): Fix typo of 'choice'
composite type.  (Bug#41749)
2020-06-07 16:46:12 +01:00
Paul Eggert
365e01cc9f Update copyright year to 2020
Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
2020-01-01 00:59:52 +00:00
Glenn Morris
219d47893a Fixes for makeinfo 4.13
* doc/lispref/customize.texi (Variable Definitions): Fix xref.
* doc/lispref/internals.texi (Writing Emacs Primitives)
(Module Values): Follow xref with comma.
2019-12-29 15:41:52 -08:00
Eli Zaretskii
74261ff301 Rearrange NEWS, add missing documentation
* etc/NEWS: Rearrange and mark entries whether documented or not.

* doc/lispref/streams.texi (Output Variables): Document the new
default of 'print-quoted'.
* doc/lispref/keymaps.texi (Functions for Key Lookup): Document
that KEYMAP arg to 'lookup-key' can also be a list.
* doc/lispref/customize.texi (Variable Definitions): Document the
:local keyword of 'defcustom'.
* doc/lispref/numbers.texi (Float Basics): Document changes in
'logb'.
* doc/lispref/hooks.texi (Standard Hooks): Document
'comint-password-function'.

* doc/emacs/display.texi (Text Scale): Document text-size
adjustment using the mouse wheel.
* doc/emacs/frames.texi (Mouse Commands): Document image scaling
with the mouse wheel.
* doc/emacs/windows.texi (Window Convenience): Document
'global-tab-line-mode'.
* doc/emacs/search.texi (Repeat Isearch, Symbol Search)
(Isearch Yank): Document the new support for numeric arguments in
Isearch commands.
(Special Isearch): Document 'M-s M->' and 'M-s M-<'.
(Search Customizations): Document 'isearch-lazy-count'.  Improve
indexing.
(Not Exiting Isearch): Document the new value of
'isearch-allow-scroll'.
* doc/emacs/maintaining.texi (Xref Commands): Document the new 'g'
key binding.
* doc/emacs/package.texi (Package Installation): Document changes
in 'package-check-signature'.
* doc/emacs/maintaining.texi (VC Change Log): Document
'vc-log-search'.
* doc/emacs/dired.texi (Operating on Files): Document
'dired-vc-rename'.
2019-12-28 15:19:05 +02:00
Lars Ingebrigtsen
adb9dc4bff Document :match-inline widget elements
* doc/lispref/customize.texi (Type Keywords): Document
:match-inline (bug#8716).
(Splicing into Lists): Mention :match-inline.
2019-10-12 06:40:49 +02:00
Paul Eggert
02a74ed315 * doc/lispref/customize.texi: Fix typo. 2019-08-31 14:48:57 -07:00
Lars Ingebrigtsen
d084fd4741 Mention `themed-value' in Variable Definitions node
* doc/lispref/customize.texi (Variable Definitions): Mention
`themed-value' (bug#17996).
2019-08-03 22:23:47 +02:00
Basil L. Contovounesios
4430a9b54f Improve pure and side-effect-free docs
For discussion, see thread starting at:
https://lists.gnu.org/archive/html/emacs-devel/2019-04/msg00316.html
* doc/lispref/customize.texi (Composite Types): Do not overspecify
:match-alternatives predicates.
* doc/lispref/eval.texi (Intro Eval): Anchor definition of "side
effect" for cross-referencing...
* doc/lispref/functions.texi (What Is a Function): ...from here.
Define what a pure function is.
* doc/lispref/internals.texi (Writing Emacs Primitives): Describe
currently preferred approach to marking primitives as pure and
side-effect-free.
* doc/lispref/symbols.texi (Standard Properties): Expand description
of pure and side-effect-free properties.
2019-04-22 13:48:20 +01:00
Paul Eggert
26bed8ba10 Update copyright year to 2019
Run 'TZ=UTC0 admin/update-copyright $(git ls-files)'.
2019-01-01 01:01:13 +00:00
Eli Zaretskii
c9c9756d21 Don't use obsolete variable 'save-place' in documentation
* doc/lispref/customize.texi (Variable Definitions): Replace
example of saveplace defcustom with a fictitious one, which
will not bit-rot with time.  (Bug#32741)
2018-09-22 10:54:58 +03:00
Eli Zaretskii
fdd7e7d8a8 Improve indexing of 'eval-defun' in ELisp manual
* doc/lispref/display.texi (Defining Faces):
* doc/lispref/debugging.texi (Explicit Debug):
* doc/lispref/customize.texi (Variable Definitions):
* doc/lispref/variables.texi (Defining Variables): Add index
entries for 'eval-defun'.  (Bug#32066)
2018-07-07 11:37:43 +03:00
Eli Zaretskii
0b1a2ae84a Delete description of deleted Customize functions
* doc/lispref/customize.texi (Variable Definitions): Remove the
description of 'custom-initialize-safe-set' and
'custom-initialize-safe-default', which were deleted in Emacs
23.2, and replace with the description of
'custom-initialize-delay'.
2018-06-15 10:32:45 +03:00
Eli Zaretskii
7ddcc9ab1a Document 'custom-group'
* doc/lispref/customize.texi (Group Definitions): Document the
'custom-group' property.
2018-05-04 18:00:02 +03:00
Basil L. Contovounesios
59344c43a9 * doc/lispref/customize.texi (Custom Themes): Clarify .el preference.
Copyright-paperwork-exempt: yes

https://lists.gnu.org/archive/html/emacs-devel/2018-01/msg00824.html.
2018-02-02 09:22:53 -05:00
Paul Eggert
5c7dd8a783 Update copyright year to 2018
Run admin/update-copyright.
2018-01-01 00:57:59 -08:00
Paul Eggert
743b95cc63 Be more consistent about "directory name" in manual
This clarifies the documentation, partly in response to the
discussion in Bug#27986.
2017-09-09 13:41:20 -07:00
Paul Eggert
5badc81c1c Update copyright year to 2017
Run admin/update-copyright.
2016-12-31 19:42:26 -08:00
Lars Ingebrigtsen
93703c547a (Common Keywords): Correct what missing :group means
* doc/lispref/customize.texi (Common Keywords): Correct what
missing :group means.
2016-05-03 19:06:36 +02:00
Lars Ingebrigtsen
805204f3ef Mention what a missing :group does
* doc/lispref/customize.texi (Common Keywords): Document that
a missing :group reuses the group from the preceding item (bug#21601).
2016-05-03 00:03:20 +02:00
Lars Ingebrigtsen
351c079cf6 Add some concept index entries for custom types
* doc/lispref/customize.texi (Composite Types): Add concept
index entries for restricted-sexp, radio and choice (bug#7385).

(cherry picked from commit 388bb723fa)
2016-05-01 19:27:07 +02:00