[GNU ELPA] Spacious-Padding version 0.8.0
ELPA update <[email protected]>
| Newsgroups | gmane.emacs.sources |
|---|---|
| Message-ID | <[email protected]> |
Version 0.8.0 of package Spacious-Padding has just been released in GNU ELPA.
You can now find it in M-x list-packages RET.
Spacious-Padding describes itself as:
==================================================
Increase the padding/spacing of frames and windows
==================================================
More at https://elpa.gnu.org/packages/spacious-padding.html
## Summary:
# spacious-padding for GNU Emacs
DEMO IMAGES:
- <https://protesilaos.com/codelog/2023-06-03-emacs-spacious-padding/>
- <https://protesilaos.com/codelog/2023-11-15-spacious-padding-extra-ui-dev/>
This package provides a global minor mode to increase the
spacing/padding of Emacs windows and frames. The idea is to make
editing and reading feel more comfortable. Enable the mode with `M-x
spacious-padding-mode`. Adjust the exact spacing values by modifying
the user option `spacious-padding-widths`.
Inspiration for this package comes from [Nicolas Rougier's impressive
designs](https://github.com/rougier) and [Daniel Mendler's
`org-modern` package](https://github.com/minad/org-modern).
## Recent NEWS:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
CHANGE LOG OF SPACIOUS-PADDING
Protesilaos Stavrou
[email protected]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
This document contains the release notes for each tagged commit on the
project’s main git repository:
<https://github.com/protesilaos/spacious-padding>.
The newest release is at the top. For further details, please consult
the manual: <https://protesilaos.com/emacs/spacious-padding>.
Table of Contents
─────────────────
1. Version 0.8.0 on 2025-12-13
1 Version 0.8.0 on 2025-12-13
═════════════════════════════
This release introduces some nice refinements and fixes a couple of
subtle bugs.
1.1 Subtle mode and header line
───────────────────────────────
The new user option `spacious-padding-subtle-frame-lines' supersedes
the `~spacious-padding-subtle-mode-line'. It does the same thing,
namely, of making the mode lines use only a thin line instead of a
background. Though it extends this feature to header lines as well.
The documentation string of `spacious-padding-subtle-frame-lines'
describes the technicalities and includes examples. In short, we can
associate a keyword with either a face that has a foreground color or
a color value directly. For the convenience of the user, the package
also defines the faces `spacious-padding-line-active' and
`spacious-padding-line-inactive'. Here is a sample configuration:
┌────
│ ;; Read the doc string of `spacious-padding-subtle-mode-line' as it
│ ;; is very flexible. Here we make the mode lines be a single
│ ;; overline, while header lines have an underline.
│ (setq spacious-padding-subtle-frame-lines
│ '( :mode-line-active spacious-padding-line-active
│ :mode-line-inactive spacious-padding-line-inactive
│ :header-line-active spacious-padding-line-active
│ :header-line-inactive spacious-padding-line-inactive))
└────
In the future, we might decide that other elements can benefit from
this style.
1.2 The header line underline is spaced further away from the text
──────────────────────────────────────────────────────────────────
As noted above, when `spacious-padding-subtle-frame-lines' is
configured to cover header lines, those will be drawn with an
underline. This will not intersect with the text of the header line.
Normally, underlines cut through letters that descend below the
baseline, such as the letters `g' and `y'. We choose to avoid that
because it makes for a cleaner interface (though I personally think it
is not a good style for paragraph text, because of the rivers of
negative space it introduces).
This specific design is available for Emacs version 29 or higher.
Users of Emacs 28 must set `x-underline-at-descent-line' to a
non-`nil' value. Though note that this has a global effect: we cannot
limit it to a single face.
Thanks to Steven Allen for covering this in pull request 37:
<https://github.com/protesilaos/spacious-padding/pull/37>. Steven has
assigned copyright to the Free Software Foundation.
1.3 The `spacious-padding-widths' can affect Custom buttons
───────────────────────────────────────────────────────────
This is about the buttons we find in buffers of the Custom system. For
example, we get such a buffer after we do `M-x customize'.
The relevant keyword is `:custom-button-width'. It is set to a number
of spaces for padding. Here is the default value and, as always, the
documentation cover the details:
┌────
│ (setq spacious-padding-widths
│ '( :internal-border-width 15
│ :header-line-width 4
│ :mode-line-width 6
│ :custom-button-width 3 ; the new one
│ :tab-width 4
│ :right-divider-width 30
│ :scroll-bar-width 8
│ :fringe-width 8))
└────
1.4 Fixes for the Emacs daemon
──────────────────────────────
There were reports about incorrect face specifications that could … …