Files
emacs/lisp
Stéphane Marks 0bee754a72 system-sleep sleep blocker and sleep/wake event package (bug#80348)
This package provides platform-neutral interfaces to block your
system from entering idle sleep and a hook to process pre-sleep
and post-wake events.

Implementations are for D-Bus on GNU/Linux, macOS/GNUstep, and
MS-Windows.

* lisp/system-sleep.el: New package.
* src/fns.c: Qpre_sleep, Qpost_wake: New DEFSYM.
* src/nsfns.m (Fns_block_system_sleep, Fns_unblock_system_sleep)
(syms_of_nsfns): New functions.
* src/nsterm.m (applicationDidFinishLaunching): Subscribe to
pre-sleep and post-wake notifications.
(systemWillSleep, systemDidWake): New function.
* src/w32fns.c (Fw32_block_system_sleep)
(Fw32_unblock_system_sleep, Fw32_system_sleep_block_count)
(sleep_notification_callback)
(w32_register_for_sleep_notifications): New function.
(syms_of_w32fns): Sw32_unblock_system_sleep
Sw32_block_system_sleep Sw32_system_sleep_block_count: New
defsubr.
* src/w32term.h (Fw32_block_system_sleep): New extern.
* src/w32term.c (w32_initialize): Call
w32_register_for_sleep_notifications.
* doc/lispref/os.texi: Document the system-sleep package.
* doc/lispref/commands.texi: Update sleep-event special
documentation.
* etc/NEWS: Announce the new package.
2026-02-11 09:52:38 +01:00
..
2026-02-08 23:39:13 -05:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-02-05 10:56:51 +02:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-26 14:29:47 +02:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-10 12:38:05 +01:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-24 19:37:30 +01:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-02-02 17:42:40 -05:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-18 14:36:51 +02:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-24 13:32:44 +02:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00
2026-01-01 12:54:34 +00:00

This directory contains source code for the parts of Emacs that are
written in Emacs Lisp.  *.el files are Emacs Lisp source, and the
corresponding *.elc files are byte-compiled versions.  Byte-compiled
files are architecture-independent.

The term subdirectory contains Lisp files that customize Emacs for
certain terminal types.  When Emacs starts, it checks the TERM
environment variable to get the terminal type and loads
'term/${TERM}.el' if it exists.

The other subdirectories hold Lisp packages grouped by their general
purpose.