mirror of
https://github.com/protesilaos/modus-themes.git
synced 2026-09-10 07:16:30 -04:00
Add user option modus-themes-box-buttons
This controls the overall style of buttons in the Custom UI, EWW web forms, and related. Thanks to Daniel Mendler for the feedback in issue 282: <https://gitlab.com/protesilaos/modus-themes/-/issues/282>.
This commit is contained in:
parent
e49c509257
commit
d12bbe4c7e
|
|
@ -97,6 +97,7 @@ Customization Options
|
|||
* Syntax styles:: Choose the overall aesthetic of code syntax
|
||||
* Mixed fonts:: Toggle mixing of font families
|
||||
* Link styles:: Choose among several styles, with or without underline
|
||||
* Box buttons:: Choose among several styles for buttons
|
||||
* Command prompts:: Choose among plain, subtle, or intense prompts
|
||||
* Mode line:: Choose among several styles, with or without borders
|
||||
* Tab style:: Toggle accented background for tabs
|
||||
|
|
@ -643,6 +644,7 @@ of this manual.
|
|||
* Syntax styles:: Choose the overall aesthetic of code syntax
|
||||
* Mixed fonts:: Toggle mixing of font families
|
||||
* Link styles:: Choose among several styles, with or without underline
|
||||
* Box buttons:: Choose among several styles for buttons
|
||||
* Command prompts:: Choose among plain, subtle, or intense prompts
|
||||
* Mode line:: Choose among several styles, with or without borders
|
||||
* Tab style:: Toggle accented background for tabs
|
||||
|
|
@ -867,7 +869,7 @@ perhaps because a purpose-specific package has extra functionality. Two
|
|||
possible options are ‘org-variable-pitch’ and ‘mixed-pitch’.
|
||||
|
||||
|
||||
File: modus-themes.info, Node: Link styles, Next: Command prompts, Prev: Mixed fonts, Up: Customization Options
|
||||
File: modus-themes.info, Node: Link styles, Next: Box buttons, Prev: Mixed fonts, Up: Customization Options
|
||||
|
||||
4.7 Option for links
|
||||
====================
|
||||
|
|
@ -936,9 +938,91 @@ controlled by ‘x-use-underline-position-properties’,
|
|||
to their documentation strings.
|
||||
|
||||
|
||||
File: modus-themes.info, Node: Command prompts, Next: Mode line, Prev: Link styles, Up: Customization Options
|
||||
File: modus-themes.info, Node: Box buttons, Next: Command prompts, Prev: Link styles, Up: Customization Options
|
||||
|
||||
4.8 Option for command prompt styles
|
||||
4.8 Option for box buttons
|
||||
==========================
|
||||
|
||||
[ Part of 2.1.0-dev ]
|
||||
|
||||
Brief: Control the style of buttons in the Custom UI and related.
|
||||
|
||||
Symbol: ‘modus-themes-box-buttons’ (‘choice’ type, list of
|
||||
properties)
|
||||
|
||||
Possible values are expressed as a list of properties (default is
|
||||
‘nil’ or an empty list). The list can include any of the following
|
||||
symbols:
|
||||
|
||||
• ‘flat’
|
||||
• ‘accented’
|
||||
• ‘faint’
|
||||
• ‘variable-pitch’
|
||||
• ‘underline’
|
||||
• A font weight, which must be supported by the underlying typeface:
|
||||
• ‘thin’
|
||||
• ‘ultralight’
|
||||
• ‘extralight’
|
||||
• ‘light’
|
||||
• ‘semilight’
|
||||
• ‘regular’
|
||||
• ‘medium’
|
||||
• ‘semibold’
|
||||
• ‘bold’
|
||||
• ‘heavy’
|
||||
• ‘extrabold’
|
||||
• ‘ultrabold’
|
||||
• A floating point as a height multiple of the default (e.g. ‘0.9’)
|
||||
|
||||
The default (a nil value or an empty list) is a gray background
|
||||
combined with a pseudo three-dimensional effect.
|
||||
|
||||
The ‘flat’ property makes the button two dimensional.
|
||||
|
||||
The ‘accented’ property changes the background from gray to an accent
|
||||
color.
|
||||
|
||||
The ‘faint’ property reduces the overall coloration.
|
||||
|
||||
The ‘variable-pitch’ property applies a proportionately spaced
|
||||
typeface to the button~s text.
|
||||
|
||||
*note Font configurations for Org and others::.
|
||||
|
||||
The ‘underline’ property draws a line below the affected text and
|
||||
removes whatever box effect. This is optimal when Emacs runs inside a
|
||||
terminal emulator (*note More accurate colors in terminal emulators::).
|
||||
If ‘flat’ and ‘underline’ are defined together, the latter takes
|
||||
precedence.
|
||||
|
||||
The symbol of a weight attribute adjusts the font of the button
|
||||
accordingly, such as ‘light’, ‘semibold’, etc. Valid symbols are
|
||||
defined in the variable ‘modus-themes-weights’.
|
||||
|
||||
*note Configure bold and italic faces::.
|
||||
|
||||
A number, expressed as a floating point (e.g. ‘0.9’), adjusts the
|
||||
height of the button’s text to that many times the base font size. The
|
||||
default height is the same as ‘1.0’, though it need not be explicitly
|
||||
stated.
|
||||
|
||||
Combinations of any of those properties are expressed as a list, like
|
||||
in these examples:
|
||||
|
||||
(flat)
|
||||
(variable-pitch flat)
|
||||
(variable-pitch flat 0.9 semibold)
|
||||
|
||||
The order in which the properties are set is not significant.
|
||||
|
||||
In user configuration files the form may look like this:
|
||||
|
||||
(setq modus-themes-box-buttons '(variable-pitch flat 0.9))
|
||||
|
||||
|
||||
File: modus-themes.info, Node: Command prompts, Next: Mode line, Prev: Box buttons, Up: Customization Options
|
||||
|
||||
4.9 Option for command prompt styles
|
||||
====================================
|
||||
|
||||
Brief: Control the style of command prompts (e.g. minibuffer, shell,
|
||||
|
|
@ -992,8 +1076,8 @@ in these examples:
|
|||
|
||||
File: modus-themes.info, Node: Mode line, Next: Tab style, Prev: Command prompts, Up: Customization Options
|
||||
|
||||
4.9 Option for mode line presentation
|
||||
=====================================
|
||||
4.10 Option for mode line presentation
|
||||
======================================
|
||||
|
||||
Brief: Control the style of the mode lines.
|
||||
|
||||
|
|
@ -1088,7 +1172,7 @@ option.
|
|||
|
||||
File: modus-themes.info, Node: Tab style, Next: Completion UIs, Prev: Mode line, Up: Customization Options
|
||||
|
||||
4.10 Option for accented background in tab interfaces
|
||||
4.11 Option for accented background in tab interfaces
|
||||
=====================================================
|
||||
|
||||
Brief: Toggle accent colors for tabbed interfaces.
|
||||
|
|
@ -1110,7 +1194,7 @@ as the Centaur tabs package.
|
|||
|
||||
File: modus-themes.info, Node: Completion UIs, Next: Mail citations, Prev: Tab style, Up: Customization Options
|
||||
|
||||
4.11 Option for completion framework aesthetics
|
||||
4.12 Option for completion framework aesthetics
|
||||
===============================================
|
||||
|
||||
Brief: Set the overall style of completion framework interfaces.
|
||||
|
|
@ -1159,7 +1243,7 @@ spend some time with every one of those presets.
|
|||
|
||||
File: modus-themes.info, Node: Mail citations, Next: Fringes, Prev: Completion UIs, Up: Customization Options
|
||||
|
||||
4.12 Option for mail citations
|
||||
4.13 Option for mail citations
|
||||
==============================
|
||||
|
||||
Brief: Set the overall style of citations/quotes when composing emails.
|
||||
|
|
@ -1193,7 +1277,7 @@ not touch.
|
|||
|
||||
File: modus-themes.info, Node: Fringes, Next: Language checkers, Prev: Mail citations, Up: Customization Options
|
||||
|
||||
4.13 Option for fringe visibility
|
||||
4.14 Option for fringe visibility
|
||||
=================================
|
||||
|
||||
Brief: Control the overall coloration of the fringes.
|
||||
|
|
@ -1217,7 +1301,7 @@ their names imply.
|
|||
|
||||
File: modus-themes.info, Node: Language checkers, Next: Line highlighting, Prev: Fringes, Up: Customization Options
|
||||
|
||||
4.14 Option for language checkers
|
||||
4.15 Option for language checkers
|
||||
=================================
|
||||
|
||||
Brief: Control the style of in-buffer warnings and errors produced by
|
||||
|
|
@ -1283,7 +1367,7 @@ variables ‘flymake-fringe-indicator-position’ and
|
|||
|
||||
File: modus-themes.info, Node: Line highlighting, Next: Line numbers, Prev: Language checkers, Up: Customization Options
|
||||
|
||||
4.15 Option for line highlighting
|
||||
4.16 Option for line highlighting
|
||||
=================================
|
||||
|
||||
Brief: Control the style of the current line of ‘hl-line-mode’.
|
||||
|
|
@ -1332,7 +1416,7 @@ as ‘elfeed’, ‘notmuch’, and ‘mu4e’.
|
|||
|
||||
File: modus-themes.info, Node: Line numbers, Next: Markup, Prev: Line highlighting, Up: Customization Options
|
||||
|
||||
4.16 Option for line numbers
|
||||
4.17 Option for line numbers
|
||||
============================
|
||||
|
||||
Brief: Toggle subtle line numbers.
|
||||
|
|
@ -1361,7 +1445,7 @@ are updated to accommodate this aesthetic.
|
|||
|
||||
File: modus-themes.info, Node: Markup, Next: Matching parentheses, Prev: Line numbers, Up: Customization Options
|
||||
|
||||
4.17 Option for markup style in Org and others
|
||||
4.18 Option for markup style in Org and others
|
||||
==============================================
|
||||
|
||||
[ Introduced as part of 2.1.0-dev. Supersedes the
|
||||
|
|
@ -1414,7 +1498,7 @@ in these examples:
|
|||
|
||||
File: modus-themes.info, Node: Matching parentheses, Next: Active region, Prev: Markup, Up: Customization Options
|
||||
|
||||
4.18 Option for parenthesis matching
|
||||
4.19 Option for parenthesis matching
|
||||
====================================
|
||||
|
||||
Brief: Control the style of matching delimiters produced by
|
||||
|
|
@ -1462,7 +1546,7 @@ and the ‘smartparens’ package.
|
|||
|
||||
File: modus-themes.info, Node: Active region, Next: Diffs, Prev: Matching parentheses, Up: Customization Options
|
||||
|
||||
4.19 Option for active region
|
||||
4.20 Option for active region
|
||||
=============================
|
||||
|
||||
Brief: Control the style of the region.
|
||||
|
|
@ -1506,7 +1590,7 @@ in these examples:
|
|||
|
||||
File: modus-themes.info, Node: Diffs, Next: Org mode blocks, Prev: Active region, Up: Customization Options
|
||||
|
||||
4.20 Option for diff buffer looks
|
||||
4.21 Option for diff buffer looks
|
||||
=================================
|
||||
|
||||
Brief: Set the overall style of diffs.
|
||||
|
|
@ -1552,7 +1636,7 @@ contrast threshold.
|
|||
|
||||
File: modus-themes.info, Node: Org mode blocks, Next: Org agenda, Prev: Diffs, Up: Customization Options
|
||||
|
||||
4.21 Option for org-mode block styles
|
||||
4.22 Option for org-mode block styles
|
||||
=====================================
|
||||
|
||||
Brief: Set the overall style of Org code blocks, quotes, and the like.
|
||||
|
|
@ -1603,7 +1687,7 @@ aliases for ‘gray-background’ and ‘tinted-background’, respectively.
|
|||
|
||||
File: modus-themes.info, Node: Org agenda, Next: Heading styles, Prev: Org mode blocks, Up: Customization Options
|
||||
|
||||
4.22 Option for Org agenda constructs
|
||||
4.23 Option for Org agenda constructs
|
||||
=====================================
|
||||
|
||||
Brief: Control the style of the Org agenda. Multiple parameters are
|
||||
|
|
@ -1638,9 +1722,9 @@ those properties:
|
|||
height (a value of 1.15).
|
||||
• The symbol of a weight attribute adjusts the font of the heading
|
||||
accordingly, such as ‘light’, ‘semibold’, etc. Valid symbols are
|
||||
defined in the internal variable ‘modus-themes--heading-weights’.
|
||||
The absence of a weight means that bold will be used by virtue of
|
||||
inheriting the ‘bold’ face.
|
||||
defined in the variable ‘modus-themes-weights’. The absence of a
|
||||
weight means that bold will be used by virtue of inheriting the
|
||||
‘bold’ face.
|
||||
|
||||
*note Configure bold and italic faces::.
|
||||
|
||||
|
|
@ -1788,7 +1872,7 @@ Deuteranopia style.
|
|||
|
||||
File: modus-themes.info, Node: Heading styles, Next: UI typeface, Prev: Org agenda, Up: Customization Options
|
||||
|
||||
4.23 Option for the headings’ overall style
|
||||
4.24 Option for the headings’ overall style
|
||||
===========================================
|
||||
|
||||
Brief: Control the style of headings. This can be particularised for
|
||||
|
|
@ -1828,7 +1912,7 @@ followed by a presentation of all available properties:
|
|||
• ‘extrabold’
|
||||
• ‘ultrabold’
|
||||
• ‘no-bold’ (deprecated alias of a ‘regular’ weight)
|
||||
• A floating point as a height multiple of the default
|
||||
• A floating point as a height multiple of the default (e.g. ‘1.1’)
|
||||
|
||||
By default (a ‘nil’ value for this variable), all headings have a
|
||||
bold typographic weight and use a desaturated text color.
|
||||
|
|
@ -1851,11 +1935,10 @@ typeface).
|
|||
|
||||
The symbol of a weight attribute adjusts the font of the heading
|
||||
accordingly, such as ‘light’, ‘semibold’, etc. Valid symbols are
|
||||
defined in the internal variable ‘modus-themes--heading-weights’. The
|
||||
absence of a weight means that bold will be used by virtue of inheriting
|
||||
the ‘bold’ face. For backward compatibility, the ‘no-bold’ value is
|
||||
accepted, though users are encouraged to specify a ‘regular’ weight
|
||||
instead.
|
||||
defined in the variable ‘modus-themes-weights’. The absence of a weight
|
||||
means that bold will be used by virtue of inheriting the ‘bold’ face.
|
||||
For backward compatibility, the ‘no-bold’ value is accepted, though
|
||||
users are encouraged to specify a ‘regular’ weight instead.
|
||||
|
||||
*note Configure bold and italic faces::.
|
||||
|
||||
|
|
@ -1902,7 +1985,7 @@ others, such as ‘org-fontify-done-headline’.
|
|||
|
||||
File: modus-themes.info, Node: UI typeface, Prev: Heading styles, Up: Customization Options
|
||||
|
||||
4.24 Option for variable-pitch font in UI elements
|
||||
4.25 Option for variable-pitch font in UI elements
|
||||
==================================================
|
||||
|
||||
Brief: Toggle the use of proportionately spaced (‘variable-pitch’) fonts
|
||||
|
|
@ -5772,6 +5855,7 @@ B.2 Variable index
|
|||
|
||||
* modus-themes-after-load-theme-hook: Enable and load. (line 6)
|
||||
* modus-themes-bold-constructs: Bold constructs. (line 6)
|
||||
* modus-themes-box-buttons: Box buttons. (line 6)
|
||||
* modus-themes-completions: Completion UIs. (line 6)
|
||||
* modus-themes-deuteranopia: Deuteranopia style. (line 6)
|
||||
* modus-themes-diffs: Diffs. (line 6)
|
||||
|
|
@ -5879,111 +5963,112 @@ B.3 Concept index
|
|||
|
||||
Tag Table:
|
||||
Node: Top860
|
||||
Node: Overview7075
|
||||
Node: How do the themes look like9199
|
||||
Node: Learn about the latest changes9713
|
||||
Node: Installation10101
|
||||
Node: Install manually from source10582
|
||||
Node: Install from the archives11407
|
||||
Node: Install on GNU/Linux12184
|
||||
Node: Debian 11 Bullseye12632
|
||||
Node: GNU Guix12942
|
||||
Node: Enable and load13225
|
||||
Node: Sample configuration with and without use-package16172
|
||||
Node: Differences between loading and enabling18124
|
||||
Node: Customization Options20079
|
||||
Node: Custom reload theme26565
|
||||
Node: Deuteranopia style27355
|
||||
Node: Bold constructs28786
|
||||
Node: Italic constructs29620
|
||||
Node: Syntax styles30387
|
||||
Node: Mixed fonts32519
|
||||
Node: Link styles33783
|
||||
Node: Command prompts36261
|
||||
Node: Mode line38082
|
||||
Node: Tab style42573
|
||||
Node: Completion UIs43236
|
||||
Node: Mail citations45329
|
||||
Node: Fringes46513
|
||||
Node: Language checkers47253
|
||||
Node: Line highlighting49695
|
||||
Node: Line numbers51292
|
||||
Node: Markup52360
|
||||
Node: Matching parentheses54053
|
||||
Node: Active region55430
|
||||
Node: Diffs56843
|
||||
Node: Org mode blocks58494
|
||||
Node: Org agenda60884
|
||||
Node: Heading styles69344
|
||||
Node: UI typeface73769
|
||||
Node: Advanced customization74668
|
||||
Node: More accurate colors in terminal emulators76215
|
||||
Node: Visualize the active Modus theme's palette77460
|
||||
Node: Per-theme customization settings78460
|
||||
Node: Case-by-case face specs using the themes' palette79816
|
||||
Node: Face specs at scale using the themes' palette84364
|
||||
Node: Remap face with local value89165
|
||||
Node: Cycle through arbitrary colors91590
|
||||
Node: Override colors98018
|
||||
Node: Override color saturation102883
|
||||
Node: Override colors through blending108562
|
||||
Node: Font configurations for Org and others111419
|
||||
Ref: Font configurations for Org and others-Footnote-1114235
|
||||
Node: Configure bold and italic faces114422
|
||||
Node: Custom Org todo keyword and priority faces118570
|
||||
Node: Custom Org emphasis faces122243
|
||||
Node: Update Org block delimiter fontification127044
|
||||
Node: Measure color contrast128961
|
||||
Node: Load theme depending on time of day131684
|
||||
Node: Backdrop for pdf-tools132677
|
||||
Node: Decrease mode line height135529
|
||||
Node: A theme-agnostic hook for theme loading139654
|
||||
Node: Diffs with only the foreground142045
|
||||
Node: Ediff without diff color-coding145159
|
||||
Node: Face coverage147254
|
||||
Node: Supported packages147706
|
||||
Node: Indirectly covered packages154354
|
||||
Node: Notes on individual packages155374
|
||||
Node: Note on avy hints156438
|
||||
Node: Note on calendarel weekday and weekend colors157606
|
||||
Node: Note on underlines in compilation buffers158789
|
||||
Node: Note on inline Latex in Org buffers159636
|
||||
Node: Note on dimmerel160246
|
||||
Node: Note on display-fill-column-indicator-mode161731
|
||||
Node: Note on highlight-parenthesesel163294
|
||||
Node: Note on mmm-modeel background colors169283
|
||||
Node: Note for prism171598
|
||||
Node: Note for god-mode174752
|
||||
Node: Note on company-mode overlay pop-up176356
|
||||
Ref: Note on company-mode overlay pop-up-Footnote-1177046
|
||||
Ref: Note on company-mode overlay pop-up-Footnote-2177113
|
||||
Node: Note on ERC escaped color sequences177168
|
||||
Ref: Note on ERC escaped color sequences-Footnote-1178596
|
||||
Node: Note on powerline or spaceline178706
|
||||
Node: Note on SHR colors179120
|
||||
Node: Note on SHR fonts179532
|
||||
Node: Note on Ement colors and fonts180165
|
||||
Node: Note on Helm grep181690
|
||||
Node: Note on vc-annotate-background-mode183167
|
||||
Node: Note on pdf-tools link hints184052
|
||||
Node: Frequently Asked Questions186484
|
||||
Node: Is the contrast ratio about adjacent colors?187115
|
||||
Node: What does it mean to avoid exaggerations?188622
|
||||
Node: Why are colors mostly variants of blue magenta cyan?190451
|
||||
Node: What is the best setup for legibility?194764
|
||||
Node: Are these color schemes?197409
|
||||
Node: Port the Modus themes to other platforms?201129
|
||||
Node: Contributing203913
|
||||
Node: Sources of the themes204310
|
||||
Node: Issues you can help with204946
|
||||
Node: Patches require copyright assignment to the FSF206146
|
||||
Node: Acknowledgements208441
|
||||
Node: Meta211428
|
||||
Node: GNU Free Documentation License213907
|
||||
Node: Indices239259
|
||||
Node: Function index239438
|
||||
Node: Variable index240961
|
||||
Node: Concept index243102
|
||||
Node: Overview7148
|
||||
Node: How do the themes look like9272
|
||||
Node: Learn about the latest changes9786
|
||||
Node: Installation10174
|
||||
Node: Install manually from source10655
|
||||
Node: Install from the archives11480
|
||||
Node: Install on GNU/Linux12257
|
||||
Node: Debian 11 Bullseye12705
|
||||
Node: GNU Guix13015
|
||||
Node: Enable and load13298
|
||||
Node: Sample configuration with and without use-package16245
|
||||
Node: Differences between loading and enabling18197
|
||||
Node: Customization Options20152
|
||||
Node: Custom reload theme26711
|
||||
Node: Deuteranopia style27501
|
||||
Node: Bold constructs28932
|
||||
Node: Italic constructs29766
|
||||
Node: Syntax styles30533
|
||||
Node: Mixed fonts32665
|
||||
Node: Link styles33929
|
||||
Node: Box buttons36403
|
||||
Node: Command prompts39097
|
||||
Node: Mode line40918
|
||||
Node: Tab style45411
|
||||
Node: Completion UIs46074
|
||||
Node: Mail citations48167
|
||||
Node: Fringes49351
|
||||
Node: Language checkers50091
|
||||
Node: Line highlighting52533
|
||||
Node: Line numbers54130
|
||||
Node: Markup55198
|
||||
Node: Matching parentheses56891
|
||||
Node: Active region58268
|
||||
Node: Diffs59681
|
||||
Node: Org mode blocks61332
|
||||
Node: Org agenda63722
|
||||
Node: Heading styles72165
|
||||
Node: UI typeface76589
|
||||
Node: Advanced customization77488
|
||||
Node: More accurate colors in terminal emulators79035
|
||||
Node: Visualize the active Modus theme's palette80280
|
||||
Node: Per-theme customization settings81280
|
||||
Node: Case-by-case face specs using the themes' palette82636
|
||||
Node: Face specs at scale using the themes' palette87184
|
||||
Node: Remap face with local value91985
|
||||
Node: Cycle through arbitrary colors94410
|
||||
Node: Override colors100838
|
||||
Node: Override color saturation105703
|
||||
Node: Override colors through blending111382
|
||||
Node: Font configurations for Org and others114239
|
||||
Ref: Font configurations for Org and others-Footnote-1117055
|
||||
Node: Configure bold and italic faces117242
|
||||
Node: Custom Org todo keyword and priority faces121390
|
||||
Node: Custom Org emphasis faces125063
|
||||
Node: Update Org block delimiter fontification129864
|
||||
Node: Measure color contrast131781
|
||||
Node: Load theme depending on time of day134504
|
||||
Node: Backdrop for pdf-tools135497
|
||||
Node: Decrease mode line height138349
|
||||
Node: A theme-agnostic hook for theme loading142474
|
||||
Node: Diffs with only the foreground144865
|
||||
Node: Ediff without diff color-coding147979
|
||||
Node: Face coverage150074
|
||||
Node: Supported packages150526
|
||||
Node: Indirectly covered packages157174
|
||||
Node: Notes on individual packages158194
|
||||
Node: Note on avy hints159258
|
||||
Node: Note on calendarel weekday and weekend colors160426
|
||||
Node: Note on underlines in compilation buffers161609
|
||||
Node: Note on inline Latex in Org buffers162456
|
||||
Node: Note on dimmerel163066
|
||||
Node: Note on display-fill-column-indicator-mode164551
|
||||
Node: Note on highlight-parenthesesel166114
|
||||
Node: Note on mmm-modeel background colors172103
|
||||
Node: Note for prism174418
|
||||
Node: Note for god-mode177572
|
||||
Node: Note on company-mode overlay pop-up179176
|
||||
Ref: Note on company-mode overlay pop-up-Footnote-1179866
|
||||
Ref: Note on company-mode overlay pop-up-Footnote-2179933
|
||||
Node: Note on ERC escaped color sequences179988
|
||||
Ref: Note on ERC escaped color sequences-Footnote-1181416
|
||||
Node: Note on powerline or spaceline181526
|
||||
Node: Note on SHR colors181940
|
||||
Node: Note on SHR fonts182352
|
||||
Node: Note on Ement colors and fonts182985
|
||||
Node: Note on Helm grep184510
|
||||
Node: Note on vc-annotate-background-mode185987
|
||||
Node: Note on pdf-tools link hints186872
|
||||
Node: Frequently Asked Questions189304
|
||||
Node: Is the contrast ratio about adjacent colors?189935
|
||||
Node: What does it mean to avoid exaggerations?191442
|
||||
Node: Why are colors mostly variants of blue magenta cyan?193271
|
||||
Node: What is the best setup for legibility?197584
|
||||
Node: Are these color schemes?200229
|
||||
Node: Port the Modus themes to other platforms?203949
|
||||
Node: Contributing206733
|
||||
Node: Sources of the themes207130
|
||||
Node: Issues you can help with207766
|
||||
Node: Patches require copyright assignment to the FSF208966
|
||||
Node: Acknowledgements211261
|
||||
Node: Meta214248
|
||||
Node: GNU Free Documentation License216727
|
||||
Node: Indices242079
|
||||
Node: Function index242258
|
||||
Node: Variable index243781
|
||||
Node: Concept index245995
|
||||
|
||||
End Tag Table
|
||||
|
||||
|
|
|
|||
|
|
@ -784,6 +784,91 @@ controlled by ~x-use-underline-position-properties~,
|
|||
~x-underline-at-descent-line~, ~underline-minimum-offset~. Please refer to
|
||||
their documentation strings.
|
||||
|
||||
** Option for box buttons
|
||||
:properties:
|
||||
:alt_title: Box buttons
|
||||
:description: Choose among several styles for buttons
|
||||
:custom_id: h:8b85f711-ff40-45b0-b7fc-4727503cd2ec
|
||||
:end:
|
||||
#+vindex: modus-themes-box-buttons
|
||||
|
||||
[ Part of {{{development-version}}} ]
|
||||
|
||||
Brief: Control the style of buttons in the Custom UI and related.
|
||||
|
||||
Symbol: ~modus-themes-box-buttons~ (=choice= type, list of properties)
|
||||
|
||||
Possible values are expressed as a list of properties (default is ~nil~ or
|
||||
an empty list). The list can include any of the following symbols:
|
||||
|
||||
+ ~flat~
|
||||
+ ~accented~
|
||||
+ ~faint~
|
||||
+ ~variable-pitch~
|
||||
+ ~underline~
|
||||
+ A font weight, which must be supported by the underlying typeface:
|
||||
- ~thin~
|
||||
- ~ultralight~
|
||||
- ~extralight~
|
||||
- ~light~
|
||||
- ~semilight~
|
||||
- ~regular~
|
||||
- ~medium~
|
||||
- ~semibold~
|
||||
- ~bold~
|
||||
- ~heavy~
|
||||
- ~extrabold~
|
||||
- ~ultrabold~
|
||||
+ A floating point as a height multiple of the default (e.g. =0.9=)
|
||||
|
||||
The default (a nil value or an empty list) is a gray background combined
|
||||
with a pseudo three-dimensional effect.
|
||||
|
||||
The ~flat~ property makes the button two dimensional.
|
||||
|
||||
The ~accented~ property changes the background from gray to an accent
|
||||
color.
|
||||
|
||||
The ~faint~ property reduces the overall coloration.
|
||||
|
||||
The ~variable-pitch~ property applies a proportionately spaced typeface
|
||||
to the button~s text.
|
||||
|
||||
[[#h:defcf4fc-8fa8-4c29-b12e-7119582cc929][Font configurations for Org and others]].
|
||||
|
||||
The ~underline~ property draws a line below the affected text and
|
||||
removes whatever box effect. This is optimal when Emacs runs inside a
|
||||
terminal emulator ([[#h:fbb5e254-afd6-4313-bb05-93b3b4f67358][More accurate colors in terminal emulators]]). If
|
||||
~flat~ and ~underline~ are defined together, the latter takes
|
||||
precedence.
|
||||
|
||||
The symbol of a weight attribute adjusts the font of the button
|
||||
accordingly, such as ~light~, ~semibold~, etc. Valid symbols are
|
||||
defined in the variable ~modus-themes-weights~.
|
||||
|
||||
[[#h:2793a224-2109-4f61-a106-721c57c01375][Configure bold and italic faces]].
|
||||
|
||||
A number, expressed as a floating point (e.g. =0.9=), adjusts the height
|
||||
of the button's text to that many times the base font size. The default
|
||||
height is the same as =1.0=, though it need not be explicitly stated.
|
||||
|
||||
Combinations of any of those properties are expressed as a list,
|
||||
like in these examples:
|
||||
|
||||
#+begin_src emacs-lisp
|
||||
(flat)
|
||||
(variable-pitch flat)
|
||||
(variable-pitch flat 0.9 semibold)
|
||||
#+end_src
|
||||
|
||||
The order in which the properties are set is not significant.
|
||||
|
||||
In user configuration files the form may look like this:
|
||||
|
||||
#+begin_src emacs-lisp
|
||||
(setq modus-themes-box-buttons '(variable-pitch flat 0.9))
|
||||
#+end_src
|
||||
|
||||
** Option for command prompt styles
|
||||
:properties:
|
||||
:alt_title: Command prompts
|
||||
|
|
|
|||
150
modus-themes.el
150
modus-themes.el
|
|
@ -5,7 +5,7 @@
|
|||
;; Author: Protesilaos Stavrou <info@protesilaos.com>
|
||||
;; URL: https://gitlab.com/protesilaos/modus-themes
|
||||
;; Version: 2.0.0
|
||||
;; Last-Modified: <2022-02-13 09:26:33 +0200>
|
||||
;; Last-Modified: <2022-02-14 12:07:07 +0200>
|
||||
;; Package-Requires: ((emacs "27.1"))
|
||||
;; Keywords: faces, theme, accessibility
|
||||
|
||||
|
|
@ -44,6 +44,7 @@
|
|||
;; modus-themes-mixed-fonts (boolean)
|
||||
;; modus-themes-subtle-line-numbers (boolean)
|
||||
;; modus-themes-variable-pitch-ui (boolean)
|
||||
;; modus-themes-box-buttons (choice)
|
||||
;; modus-themes-completions (choice)
|
||||
;; modus-themes-diffs (choice)
|
||||
;; modus-themes-fringes (choice)
|
||||
|
|
@ -1630,6 +1631,16 @@ The actual styling of the face is done by `modus-themes-faces'."
|
|||
The actual styling of the face is done by `modus-themes-faces'."
|
||||
:group 'modus-themes-faces)
|
||||
|
||||
(defface modus-themes-box-button nil
|
||||
"Face for widget buttons (e.g. in the Custom UI).
|
||||
The actual styling of the face is done by `modus-themes-faces'."
|
||||
:group 'modus-themes-faces)
|
||||
|
||||
(defface modus-themes-box-button-pressed nil
|
||||
"Face for pressed widget buttons (e.g. in the Custom UI).
|
||||
The actual styling of the face is done by `modus-themes-faces'."
|
||||
:group 'modus-themes-faces)
|
||||
|
||||
|
||||
|
||||
;;; Customization variables
|
||||
|
|
@ -2930,6 +2941,74 @@ as the Centaur tabs package."
|
|||
:initialize #'custom-initialize-default
|
||||
:link '(info-link "(modus-themes) Tab style"))
|
||||
|
||||
(defcustom modus-themes-box-buttons nil
|
||||
"Control the style of buttons in the Custom UI and related.
|
||||
|
||||
The value is a list of properties, each designated by a symbol.
|
||||
The default (a nil value or an empty list) is a gray background
|
||||
combined with a pseudo three-dimensional effect.
|
||||
|
||||
The `flat' property makes the button two dimensional.
|
||||
|
||||
The `accented' property changes the background from gray to an
|
||||
accent color.
|
||||
|
||||
The `faint' property reduces the overall coloration.
|
||||
|
||||
The `variable-pitch' property applies a proportionately spaced
|
||||
typeface to the button's text.
|
||||
|
||||
The `underline' property draws a line below the affected text and
|
||||
removes whatever box effect. This is optimal when Emacs runs
|
||||
inside a terminal emulator. If `flat' and `underline' are
|
||||
defined together, the latter takes precedence.
|
||||
|
||||
The symbol of a weight attribute adjusts the font of the button
|
||||
accordingly, such as `light', `semibold', etc. Valid symbols are
|
||||
defined in the variable `modus-themes-weights'.
|
||||
|
||||
A number, expressed as a floating point (e.g. 0.9), adjusts the
|
||||
height of the button's text to that many times the base font
|
||||
size. The default height is the same as 1.0, though it need not
|
||||
be explicitly stated.
|
||||
|
||||
Combinations of any of those properties are expressed as a list,
|
||||
like in these examples:
|
||||
|
||||
(flat)
|
||||
(variable-pitch flat)
|
||||
(variable-pitch flat 0.9 semibold)
|
||||
|
||||
The order in which the properties are set is not significant.
|
||||
|
||||
In user configuration files the form may look like this:
|
||||
|
||||
(setq modus-themes-box-buttons (quote (variable-pitch flat 0.9)))"
|
||||
:group 'modus-themes
|
||||
:package-version '(modus-themes . "2.1.0")
|
||||
:version "29.1"
|
||||
:type '(set :tag "Properties" :greedy t
|
||||
(const :tag "Two-dimensional button" flat)
|
||||
(const :tag "Accented background instead of gray" accented)
|
||||
(const :tag "Proportionately spaced font (variable-pitch)" variable-pitch)
|
||||
(const :tag "Underline instead of a box effect" underline)
|
||||
(choice :tag "Font weight (must be supported by the typeface)"
|
||||
(const :tag "Thin" thin)
|
||||
(const :tag "Ultra-light" ultralight)
|
||||
(const :tag "Extra-light" extralight)
|
||||
(const :tag "Light" light)
|
||||
(const :tag "Semi-light" semilight)
|
||||
(const :tag "Regulat (default)" nil)
|
||||
(const :tag "Medium" medium)
|
||||
(const :tag "Bold" bold)
|
||||
(const :tag "Semi-bold" semibold)
|
||||
(const :tag "Extra-bold" extrabold)
|
||||
(const :tag "Ultra-bold" ultrabold))
|
||||
(float :tag "Number (float) to adjust height by" :value 0.9))
|
||||
:set #'modus-themes--set-option
|
||||
:initialize #'custom-initialize-default
|
||||
:link '(info-link "(modus-themes) Box buttons"))
|
||||
|
||||
|
||||
|
||||
;;; Internal functions
|
||||
|
|
@ -3806,6 +3885,56 @@ application of a variable-pitch font."
|
|||
:foreground (or foreground 'unspecified)
|
||||
:box (if box-p (list :line-width 2 :color background) 'unspecified))))
|
||||
|
||||
(defun modus-themes--button (bg bgfaint bgaccent bgaccentfaint border &optional pressed-button-p)
|
||||
"Apply `modus-themes-box-buttons' styles.
|
||||
|
||||
Work in progress. BG BGFAINT BGACCENT BGACCENTFAINT BORDER PRESSED-BUTTON-P."
|
||||
(let* ((properties modus-themes-box-buttons)
|
||||
(weight (modus-themes--weight properties)))
|
||||
(list :inherit
|
||||
(cond
|
||||
((and (memq 'variable-pitch properties)
|
||||
(eq weight 'bold))
|
||||
(list 'bold 'variable-pitch))
|
||||
((memq 'variable-pitch properties)
|
||||
'variable-pitch)
|
||||
((eq weight 'bold)
|
||||
'bold)
|
||||
('unspecified))
|
||||
:background
|
||||
(cond
|
||||
((and (memq 'accented properties)
|
||||
(memq 'faint properties)
|
||||
bgaccentfaint))
|
||||
((memq 'faint properties)
|
||||
bgfaint)
|
||||
((memq 'accented properties)
|
||||
bgaccent)
|
||||
(bg))
|
||||
:box
|
||||
(cond
|
||||
((memq 'underline properties)
|
||||
'unspecified)
|
||||
((memq 'flat properties)
|
||||
(list :line-width -1 :color border))
|
||||
((list :line-width -1
|
||||
:style (if pressed-button-p
|
||||
'pressed-button
|
||||
'released-button)
|
||||
:color border)))
|
||||
:weight
|
||||
(cond
|
||||
((eq weight 'bold)
|
||||
'unspecified) ; we :inherit the `bold' face above
|
||||
(weight weight)
|
||||
('unspecified))
|
||||
:height
|
||||
(seq-find #'floatp properties 'unspecified)
|
||||
:underline
|
||||
(if (memq 'underline properties)
|
||||
t
|
||||
'unspecified))))
|
||||
|
||||
|
||||
|
||||
;;;; Utilities for DIY users
|
||||
|
|
@ -4250,6 +4379,13 @@ by virtue of calling either of `modus-themes-load-operandi' and
|
|||
((,class ,@(if (null modus-themes-completions)
|
||||
(list :foreground magenta-alt-other)
|
||||
(list :inherit 'modus-themes-key-binding)))))
|
||||
;;;;; buttons
|
||||
`(modus-themes-box-button
|
||||
((,class ,@(modus-themes--button bg-active bg-main bg-active-accent
|
||||
bg-special-cold bg-region))))
|
||||
`(modus-themes-box-button-pressed
|
||||
((,class ,@(modus-themes--button bg-active bg-main bg-active-accent
|
||||
bg-special-cold bg-region t))))
|
||||
;;;;; typography
|
||||
`(modus-themes-bold ((,class ,@(modus-themes--bold-weight))))
|
||||
`(modus-themes-fixed-pitch ((,class ,@(modus-themes--fixed-pitch))))
|
||||
|
|
@ -4734,12 +4870,9 @@ by virtue of calling either of `modus-themes-load-operandi' and
|
|||
;;;;; cursor-flash
|
||||
`(cursor-flash-face ((,class :inherit modus-themes-intense-blue)))
|
||||
;;;;; custom (M-x customize)
|
||||
`(custom-button ((,class :box (:line-width 2 :color nil :style released-button)
|
||||
:background ,bg-active :foreground ,fg-main)))
|
||||
`(custom-button-mouse ((,class :box (:line-width 2 :color nil :style released-button)
|
||||
:background ,bg-active :foreground ,fg-active)))
|
||||
`(custom-button-pressed ((,class :box (:line-width 2 :color nil :style pressed-button)
|
||||
:background ,bg-active :foreground ,fg-main)))
|
||||
`(custom-button ((,class :inherit modus-themes-box-button)))
|
||||
`(custom-button-mouse ((,class :inherit (highlight custom-button))))
|
||||
`(custom-button-pressed ((,class :inherit modus-themes-box-button-pressed)))
|
||||
`(custom-changed ((,class :inherit modus-themes-subtle-cyan)))
|
||||
`(custom-comment ((,class :inherit shadow)))
|
||||
`(custom-comment-tag ((,class :background ,bg-alt :foreground ,yellow-alt-other)))
|
||||
|
|
@ -5251,8 +5384,7 @@ by virtue of calling either of `modus-themes-load-operandi' and
|
|||
`(eww-form-checkbox ((,class :inherit eww-form-text)))
|
||||
`(eww-form-file ((,class :inherit eww-form-submit)))
|
||||
`(eww-form-select ((,class :inherit eww-form-submit)))
|
||||
`(eww-form-submit ((,class :box (:line-width 2 :style released-button)
|
||||
:background ,bg-active)))
|
||||
`(eww-form-submit ((,class :inherit modus-themes-box-button)))
|
||||
`(eww-form-text ((,class :box ,bg-active :background ,bg-alt)))
|
||||
`(eww-form-textarea ((,class :background ,bg-alt)))
|
||||
;;;;; eyebrowse
|
||||
|
|
|
|||
Loading…
Reference in a new issue