Skip to content

ed9w2in6/wood-theme

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

wood-theme

lisp/wood-theme.el.svg

Previews

lisp/wood-theme.el.png

spotify-player/wood-theme.png

kitty/Wood.conf.png

Design Philosophy

A warm, wood-tone colour theme that aims to be gentle on the eyes.

Not sure if I can call this my design philosophy, but I have roughly followed these rules:

  • Warm wood
    • Use warm, wood-tone colour whenever possible
  • Low-saturation low-blue
  • Practical
    • break the rules sparingly if it does not work practically
    • e.g. use high-saturation red and green for highlights
    • e.g. allow blue for error or warning related contents

This theme suits best to people who need to stare at the screen for long periods. My testimony is that this seems to have fixed my eye strains.

Known issues and notes

Since I am only using Emacs in the terminal, some GUI elements may not be themed properly. I am also abusing face inheritance so some face will stick when switching from another theme. The intended usage is therefore loading on startup and not changing theme.

Installation and setup

Requires Github - jasonm23/autothemer, if you use straight.el do:

(use-package autothemer
 :straight (autothemer
   :type git
   :host github
   :repo "jasonm23/autothemer"))
(use-package wood-theme
  :straight (wood-theme
    :type git
    :host github
    :repo "ed9w2in6/wood-theme")
  :after autothemer
  :init
  ;; Change these accordingly, MUST be evaluated before load-theme
  (setq wood-tab-line-box-line-width (if (display-graphic-p)
                                         (/ (max 2 (line-pixel-height)) 2)
                                         -1)
        wood-default-face-height 180
        wood-default-face-font-family "VictorMono Nerd Font Mono"
        wood-variable-pitch-face-font-family "Source Sans Pro"
        )
  :config (load-theme 'wood t))

As of [2024-05-05 Sun], the only alternative is by manual installtion. You’ll have to clone this repo, put the relavent files to your Emacs home directory, or add the path the cloned repo to custom-theme-load-path.

Add the content of spotify-player/wood-theme.toml to your theme.toml file.

Your theme.toml file can be found at ~/.config/spotify-player/

As of [2025-04-27 Sun]:

Download kitty/Wood.conf to the ~/.config/kitty/themes/ directory. Then use the kitten themes command to choose the Wood theme.

Alternatively, at a new line in your config file (default at ~/.config/kitty/kitty.conf) write include themes/Wood.conf.

Workflow

As this was for personal use, the work flow is kept simple and manual:

  1. After commit, freeze all changes for at least 1 week
    • unless breaking issue
      • e.g. error (i.e. syntax), invisible char (i.e. logic)
    • annoyance (i.e. design) does NOT count as breaking
  2. Record all annoyance in this document
  3. Open for improvment after 1 week freeze

Annoyances

Nothing for now. ([2025-04-21 Mon])

Future Work

  • choose some modes for face review, ensure meaning are consistent
    • e.g. always gray when comment related
  • maybe use some orange / brown for some faces? Seems too few oranges.
    [2023-08-18 Fri]
    actually I can’t pin point any that annoys me.

Change Log

week of [2025-04-27 Sun]

  • add theme for kitty

week of [2025-04-21 Mon]

  • changes to palette upon feedback from reddit:
    • wood-rose
    • wood-rose-light
    • wood-lilac
    • wood-iris
    • wood-iris-light

week of [2025-03-12 Wed]

  • redo with https://github.com/jasonm23/autothemer
    • benefit is that common color uses same colour name.
    • pallete generation
    • auto generation for missing component using colour distance
    • easier maintenance and customisation
      • variance definition (e.g. wood-light)

week of [2024-03-21 Thu]

  • custom marginalia-key face for helm-like keybind hint face

from git log [2023-12-01 Fri]

  • migrate tab-line styling to the theme
  • migrate aw-leading-char-face styling to the theme
  • jupyter-repl related styling, make them follow my ANSI theme

from git log [2023-11-01 Wed]

  • change mode-line color to distinguish from mode-line-emphais
  • other mode line related styling

from git log [2023-09-12 Tue]

  • style header-line

week of [2023-08-13 Sun]

  • Better font definitions (fixed-pitch vs variable-pitch)
  • Better org mode appearance
    • These helped making org-present more usable (it actually look good now)
  • set ANSI colour (e.g. ugly blue for jupyter(ipython) help)
  • highlight colour (e.g. on match for isearch) should have more contrast to be easily visible

About

Relaxing warm theme inspired by wood and plants colours.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors