Compare commits

...

5 commits

Author SHA1 Message Date
Protesilaos Stavrou d1921204c1
Release the first version of the 'standard-themes' 2022-11-30 15:05:57 +02:00
Protesilaos Stavrou b77d364305
Remove some links that are not yet relevant 2022-11-30 14:41:54 +02:00
Protesilaos Stavrou 5acab93f85
Address inconsistencies in the manual 2022-11-30 14:28:00 +02:00
Protesilaos Stavrou f40d1adace
Make minor corrections to documentation 2022-11-30 05:53:28 +02:00
Protesilaos Stavrou 6f859ccb20
Tweak Commentary header in files 2022-11-30 05:33:28 +02:00
4 changed files with 53 additions and 67 deletions

View file

@ -5,7 +5,7 @@
#+options: ':t toc:nil author:t email:t num:t
#+startup: content
#+macro: stable-version 1.0.0
#+macro: release-date N/A
#+macro: release-date 2022-11-30
#+macro: development-version 1.1.0-dev
#+export_file_name: standard-themes.texi
#+texinfo_filename: standard-themes.info
@ -32,8 +32,6 @@ Current development target is {{{development-version}}}.
+ Package name (GNU ELPA): =standard-themes=
+ Official manual: <https://protesilaos.com/emacs/standard-themes>
+ Change log: <https://protesilaos.com/emacs/standard-themes-changelog>
+ Sample pictures: <https://protesilaos.com/emacs/standard-themes-pictures>
+ Git repo on SourceHut: <https://git.sr.ht/~protesilaos/standard-themes>
- Mirrors:
+ GitHub: <https://github.com/protesilaos/standard-themes>
@ -306,7 +304,7 @@ With ~intense~, use a more pronounced gray background color.
#+vindex: standard-themes-links
The user option ~standard-themes-links~ controls the style of links.
The value is a list of properties, each designated by a symbol. The
default (a nil value or an empty list) is a prominent text color,
default (a ~nil~ value or an empty list) is a prominent text color,
typically blue, with an underline of the same color.
For the style of the underline, a ~neutral-underline~ property
@ -354,25 +352,24 @@ Please refer to their documentation strings.
The user option ~standard-themes-prompts~ controls the style of all
prompts, such as those of the minibuffer and REPLs.
The value is a list of properties, each designated by a symbol.
The default (a nil value or an empty list) means to only use a
subtle accented foreground color.
The value is a list of properties, each designated by a symbol. The
default (a ~nil~ value or an empty list) means to only use an accented
foreground color.
The property ~background~ applies a background color to the
prompt's text. By default, this is a subtle accented value.
The property ~background~ applies a background color to the prompt's
text and adjusts the foreground accordingly.
The property ~bold~ makes the text use a bold typographic weight.
Similarly, ~italic~ adds a slant to the font's forms (italic or
oblique forms, depending on the typeface).
Combinations of any of those properties are expressed as a list,
like in these examples:
Combinations of any of those properties are expressed as a list, like
in these examples:
#+begin_src emacs-lisp
(intense)
(bold intense)
(intense bold gray)
(intense background gray bold)
(background)
(bold italic)
(background bold italic)
#+end_src
The order in which the properties are set is not significant.
@ -380,7 +377,7 @@ 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 standard-themes-prompts '(background gray))
(setq standard-themes-prompts '(background bold))
#+end_src
** Option for headings
@ -392,17 +389,18 @@ In user configuration files the form may look like this:
The user option ~standard-themes-headings~ provides support for individual
heading styles for levels 0 through 8.
This is an alist that accepts a =(key . list-of-values)= combination.
The key is either a number, representing the heading's level (0
through 8) or =t=, which pertains to the fallback style.
This is an alist that accepts a =(KEY . LIST-OF-VALUES)= combination.
The =KEY= is either a number, representing the heading's level (0-8)
or ~t~, which pertains to the fallback style. The fallback applies to
all heading levels that are not customized.
Level 0 is a special heading: it is used for what counts as a document
title or equivalent, such as the =#+title= construct we find in Org
title or equivalent, such as the =#+TITLE= construct we find in Org
files. Levels 1-8 are regular headings.
The list of values covers symbols that refer to properties, as described
below. Here is a complete sample, followed by a presentation of all
available properties:
The list of values covers symbols that refer to properties, as
described below. Here is a complete sample, followed by a
presentation of all available properties:
#+begin_src emacs-lisp
(setq standard-themes-headings
@ -412,7 +410,7 @@ available properties:
(t . (variable-pitch))))
#+end_src
By default (a ~nil~ value for this variable), all headings have a bold
By default (a ~nil~ value for this variable), all headings have a normal
typographic weight, a font family that is the same as the ~default~ face
(typically monospaced), and a height that is equal to the ~default~
face's height.
@ -654,7 +652,8 @@ This function is added to the `standard-themes-post-load-hook'."
`(font-lock-variable-name-face ((,c :foreground ,variable))))))
;; Using the hook lets our changes persist when we use the commands
;; `standard-themes-toggle', `standard-themes-select', and `standard-themes-load-random'.
;; `standard-themes-toggle', `standard-themes-load-dark',
;; `standard-themes-load-light'.
(add-hook 'standard-themes-post-load-hook #'my-standard-themes-custom-faces)
#+end_src
@ -675,7 +674,7 @@ This function is added to the `standard-themes-post-load-hook'."
;; Using the hook lets our changes persist when we use the commands
;; `standard-themes-toggle', `standard-themes-load-dark',
;; `standard-themes-load-light'
;; `standard-themes-load-light'.
(add-hook 'standard-themes-post-load-hook #'my-standard-themes-custom-faces)
#+end_src
@ -694,7 +693,8 @@ This function is added to the `standard-themes-post-load-hook'."
`(font-lock-variable-name-face ((,c :inherit standard-themes-italic :foreground ,comment))))))
;; Using the hook lets our changes persist when we use the commands
;; `standard-themes-toggle', `standard-themes-select', and `standard-themes-load-random'.
;; `standard-themes-toggle', `standard-themes-load-dark',
;; `standard-themes-load-light'.
(add-hook 'standard-themes-post-load-hook #'my-standard-themes-custom-faces)
;; Load the theme and run `standard-themes-post-load-hook'
@ -818,7 +818,7 @@ it means for a construct to be bold/italic, by tweaking the ~bold~ and
~italic~ faces. Cases where that can be useful include:
+ The default typeface does not have a variant with slanted glyphs
(e.g. Fira Mono/Code as of this writing on 2022-08-23), so the user
(e.g. Fira Mono/Code as of this writing on 2022-11-30), so the user
wants to add another family for the italics, such as Hack.
+ The typeface of choice provides a multitude of weights and the user
@ -1157,26 +1157,6 @@ unwillingness to be good Emacs citizens:
The above list is non-exhaustive though you get the idea.
* Acknowledgements
:PROPERTIES:
:CUSTOM_ID: h:9db21121-577d-43e5-8787-62739bfa5d83
:END:
#+cindex: Contributors
This project is meant to be a collective effort. Every bit of help
matters.
+ Author/maintainer :: Protesilaos Stavrou.
+ Contributions to code or the manual :: Alex Lu, Christopher League,
Philip Kaludercic, Walheimat.
+ Ideas and/or user feedback :: Alan Schmitt, Anthony Chavez, Benjamin
(zealotrush), Daniel Mendler, Federico Stilman, Iris Garcia,
Jean-Philippe Gagné Guay, Jonas Collberg, Saša Janiška, Spike-Leung,
Steve Molitor, Summer Emacs, Sven Seebeck, Zoltán Király.
* GNU Free Documentation License
:PROPERTIES:
:CUSTOM_ID: h:255fa624-6e3c-4118-9618-17cc25a801bd

View file

@ -29,6 +29,9 @@
;; Emacs. They emulate the out-of-the-box looks of Emacs (which
;; technically do NOT constitute a theme) while bringing to them
;; thematic consistency, customizability, and extensibility.
;;
;; Why call them "standard"? Obviously because: Standard Themes Are
;; Not Derivatives but the Affectionately Reimagined Default ... themes.
;;; Code:

View file

@ -29,6 +29,9 @@
;; Emacs. They emulate the out-of-the-box looks of Emacs (which
;; technically do NOT constitute a theme) while bringing to them
;; thematic consistency, customizability, and extensibility.
;;
;; Why call them "standard"? Obviously because: Standard Themes Are
;; Not Derivatives but the Affectionately Reimagined Default ... themes.
;;; Code:

View file

@ -6,7 +6,7 @@
;; Maintainer: Standard-Themes Development <~protesilaos/standard-themes@lists.sr.ht>
;; URL: https://git.sr.ht/~protesilaos/standard-themes
;; Mailing-List: https://lists.sr.ht/~protesilaos/standard-themes
;; Version: 1.0.0
;; Version: 1.0.1
;; Package-Requires: ((emacs "27.1"))
;; Keywords: faces, theme, accessibility
@ -33,8 +33,7 @@
;; thematic consistency, customizability, and extensibility.
;;
;; Why call them "standard"? Obviously because: Standard Themes Are
;; Not Derivatives but the Affectionately Reimagined Default
;; ... themes.
;; Not Derivatives but the Affectionately Reimagined Default ... themes.
;;; Code:
@ -106,14 +105,16 @@ This affects comments, doc strings, and some other minor elements."
This is a helper variable intended for internal use.")
(defcustom standard-themes-headings nil
"Heading styles with optional list of values for levels 0-8.
"Set heading style with optional list of values for levels 0-8.
This is an alist that accepts a (key . list-of-values)
combination. The key is either a number, representing the
This is an alist that accepts a (KEY . LIST-OF-VALUES)
combination. The KEY is either a number, representing the
heading's level (0-8) or t, which pertains to the fallback style.
The fallback applies to all heading levels that are not
customized.
Level 0 is a special heading: it is used for what counts as a
document title or equivalent, such as the #+title construct we
document title or equivalent, such as the #+TITLE construct we
find in Org files. Levels 1-8 are regular headings.
The list of values covers symbols that refer to properties, as
@ -127,7 +128,7 @@ presentation of all available properties:
(t . (variable-pitch)))))
By default (a nil value for this variable), all headings have a
bold typographic weight, a font family that is the same as the
normal typographic weight, a font family that is the same as the
`default' face (typically monospaced), and a height that is equal
to the `default' face's height.
@ -254,7 +255,7 @@ Other examples:
:type '(set :tag "Properties" :greedy t
(const :tag "Do not extend to the edge of the window" no-extend)
(const :tag "More neutral/gray background" neutral)
(const :tag "More intense background (also override text color)" accented))
(const :tag "More intense background (also override text color)" intense))
:link '(info-link "(standard-themes) Style of region highlight"))
(defcustom standard-themes-fringes 'subtle
@ -268,7 +269,6 @@ visible yet close to the main background color.
With `intense', use a more pronounced gray background color."
:group 'standard-themes
:package-version '(standard-themes . "1.0.0")
:version "29.1"
:type '(choice
(const :format "[%v] %t\n" :tag "No visible fringes" nil)
(const :format "[%v] %t\n" :tag "Subtle gray background" subtle)
@ -331,11 +331,11 @@ Please refer to their documentation strings."
"Control the style of prompts (e.g. minibuffer, REPL).
The value is a list of properties, each designated by a symbol.
The default (a nil value or an empty list) means to only use a
subtle accented foreground color.
The default (a nil value or an empty list) means to only use an
accented foreground color.
The property `background' applies a background color to the
prompt's text. By default, this is a subtle accented value.
prompt's text and adjusts the foreground accordingly.
The property `bold' makes the text use a bold typographic weight.
Similarly, `italic' adds a slant to the font's forms (italic or
@ -344,16 +344,15 @@ oblique forms, depending on the typeface).
Combinations of any of those properties are expressed as a list,
like in these examples:
(intense)
(bold intense)
(intense bold gray)
(intense background gray bold)
(background)
(bold italic)
(background bold italic)
The order in which the properties are set is not significant.
In user configuration files the form may look like this:
(setq standard-themes-prompts (quote (background gray)))"
(setq standard-themes-prompts (quote (background bold)))"
:group 'standard-themes
:package-version '(standard-themes . "1.0.0")
:type '(set :tag "Properties" :greedy t
@ -363,7 +362,8 @@ In user configuration files the form may look like this:
:link '(info-link "(standard-themes) Option for command prompts"))
(defcustom standard-themes-mode-line-accented nil
"When non-nil, use accented background for the active mode line."
"When non-nil, use accented background for the active mode line.
The default is a gray background color."
:group 'standard-themes
:package-version '(standard-themes . "1.0.0")
:type 'boolean