To install this package, run in Emacs:
M-x package-install RET compat RET
Compat is the Elisp forwards compatibility library, which provides definitions introduced in newer Emacs versions. The definitions are only installed if necessary for your current Emacs version. If Compat is compiled on a recent version of Emacs, all of the definitions are disabled at compile time, such that no negative performance impact is incurred. The provided compatibility implementations of functions and macros are at least subsets of the actual implementations. Be sure to read the documentation string and the Compat manual. Not every function provided in newer versions of Emacs is provided here. Some depend on new features from the C core, others cannot be implemented to a meaningful degree. Please consult the Compat manual for details regarding the usage of the Compat library and the provided functionality. The main audience for this library are not regular users, but package maintainers. Therefore no commands, user-facing modes or user options are implemented here.
compat-29.1.3.1.tar.lz | 2023-Jan-25 | 64.4 KiB |
compat-29.1.3.0.tar.lz | 2023-Jan-22 | 63.7 KiB |
compat-29.1.2.0.tar.lz | 2023-Jan-16 | 56.0 KiB |
compat-29.1.1.1.tar.lz | 2023-Jan-14 | 56.7 KiB |
compat-29.1.1.0.tar.lz | 2023-Jan-07 | 56.0 KiB |
compat-29.1.0.1.tar.lz | 2023-Jan-05 | 58.9 KiB |
compat-28.1.2.2.tar.lz | 2022-Aug-25 | 48.8 KiB |
compat-28.1.2.1.tar.lz | 2022-Aug-24 | 48.9 KiB |
compat-28.1.2.0.tar.lz | 2022-Jul-18 | 37.2 KiB |
compat-28.1.1.3.tar.lz | 2022-Jun-19 | 36.8 KiB |
compat-28.1.1.2.tar.lz | 2022-Jun-15 | 36.7 KiB |
compat-28.1.1.1.tar.lz | 2022-May-07 | 36.3 KiB |
compat-28.1.1.0.tar.lz | 2022-Apr-22 | 35.8 KiB |
compat-28.1.0.5.tar.lz | 2022-Apr-18 | 33.9 KiB |
compat-28.1.0.3.tar.lz | 2022-Apr-08 | 32.0 KiB |
compat-28.1.0.1.tar.lz | 2022-Apr-05 | 30.9 KiB |
compat-28.1.0.0.tar.lz | 2022-Apr-05 | 30.9 KiB |
make-temp-file
with optional argument TEXT.compat-call dired-get-marked-files
as obsolete. See the
section limitations in the Compat manual.funcall-with-delayed-message
and with-delayed-message
.ert-with-temp-file
and ert-with-temp-directory
.set-transient-map
with optional arguments MESSAGE and TIMEOUT.(Release
)file-name-unquote
.mark-thing-at-mouse
.string-lines
with version from Emacs 29, support optional
KEEP-NEWLINES argument.(Release
)hash-table-empty-p
.macroexp-parse-body
and macroexp-quote
.region-noncontiguous-p
.save-mark-and-excursion
.read-answer
.region-bounds
.date-ordinal-to-time
.file-size-human-readable-iec
.major-mode-suspend
and major-mode-restore
.make-decoded-time
.minibuffer-history-value
.read-char-from-minibuffer
.ring-resize
.color-dark-p
.directory-files-and-attributes
with COUNT argument.text-quoting-style
.with-window-non-dedicated
.buffer-local-set-state
and buffer-local-restore-state
.compiled-function-p
.count-sentences
.delete-line
.get-scratch-buffer-create
.list-of-strings-p
.plist-get
generalized variable.plistp
.read-multiple-choice
with LONG-FORM argument.readablep
.substitute-quotes
.use-region-beginning
, use-region-end
and use-region-noncontiguous-p
.with-narrowing
.(Release
)null-device
(unused downstream).unlock-buffer
(unused downstream).buffer-hash
.fixnump
and bignump
.with-minibuffer-selected-window
.decoded-time-*
.macroexp-warn-and-return
.subr-native-elisp-p
.bounds-of-thing-at-mouse
.with-buffer-unmodified-if-unchanged
.define-key
with REMOVE argument.(Release
)sort
.make-separator-line
.keymap-*
functions.with-memoization
.buttonize
and buttonize-region
.(Release
)compat-macs.el
have been rewritten and simplified. The
refactoring allows to further refine the criteria under which compatibility
aliases, functions, macros and variables are installed.compat-help
, compat-font-lock
and compat-24
.boundp
, fboundp
) to ensure that existing
definitions are never overridden, when Compat is loaded on a newer Emacs than… …