myron-themes icon indicating copy to clipboard operation
myron-themes copied to clipboard

THEMES

#+html:

  • ~Myron Themes~ 🟠 🔴 🟡 🟤 🟢 🟣 🔵

Yet more artisanal light themes for [[https://emacs.sexy/][emacs]].

  • Bootstraps [[https://github.com/base16-project/base16-emacs][base16-emacs]] for wide emacs package coverage
  • Constant contrast across different [[#Emphasis][emphasis]] contexts
  • Conformity of markup texts to look like org mode (markdown, rst, adoc)
  • Built with [[https://github.com/neeasade/ct.el][ct.el]] (macro technology!!)

** Screenshots

| mcfay [[https://i.imgur.com/Fk4VBkP.png]] | | struan [[https://i.imgur.com/xxCuyoT.png]] | | dogman [[https://i.imgur.com/RlpnKZe.png]] |

There may be other themes in this repo, but these are the flagship themes.

** Installation

Install with [[https://github.com/raxod502/straight.el][straight.el]]:

#+begin_src emacs-lisp (straight-use-package '(myron-themes :host github :repo "neeasade/myron-themes" :files (".el" "themes/.el"))) #+end_src

** Colors

Myron colorschemes come flavored against different backgrounds, for different levels of emphasis. This can be used to ensure the same contrast level across different contexts. The schemes are stored in a nested hash table, with a helper to access them -- EG ~(myron-get :primary :strong)~ to get the primary foreground color meant to be used against the strong background (which you could get with ~(myron-get :background :strong)~). The available background keys are: ~:normal :weak :strong :focused~. For each of those, the following foregrounds are available:

| label | meaning (foreground) | example | |-------------+------------------------+----------------------------------------------| | :foreground | default | | | :faded | faded | comments | | :primary | identity | functions, variables | | :assumed | assumptions/core stuff | builtins, key words | | :alt | accent | types, matching string within search results | | :strings | strings | strings |

Some thoughts on my general theme opinions:

  • Strings are important enough to get their own color for emphasis because they often represent the edges or barriers at which things communicate
  • Identity between functions and variables can be blended (lisp-1 type of feel)
  • The focused background is important/should be used to show what's highlighted or where interactive focus is
  • It appears I hate the color red generally (in thin lines it looks the same as black to me), except magenta/pinkish tones for the identity foreground
  • I generally lean higher contrast
  • note: I'm colorblind

** Contrast dumping

Calling ~myron-show-contrasts~ will show the contrast ratios of all the foregrounds against all the backgrounds.

** Terminal usage

Use these themes in a terminal supporting truecolors, and set the following before loading the themes:

#+begin_src emacs-lisp (setq base16-theme-256-color-source 'colors) #+end_src

** Thanks/Previous inspo

  • [[https://github.com/MetroWind/lab-theme][lab-theme]]
  • [[https://github.com/waymondo/apropospriate-theme][aproprospriate]]
  • [[https://github.com/belak/base16-emacs][base16-emacs]]