Sonho theme

Sonho is a medium-to-high contrast theme that conveys a relaxed, rather playful mood. It comes in light and dark variants, while using a single 16-colour palette.

Packages or ports of it are available for Vim and Atom, as well as the Xfce4, RXVT-Unicode (urxvt), and XTERM terminal emulators.


Dark base

4a3638 5a4648 8A7668 99aabc

Light base

fff0f2 efe0e2 8896bb 677468

Accent values

cd4679 d9766d 11bf8c 479cb5
dd619f d9a652 38a8b9 a77ccf

Base values from left to right: background, background highlight, secondary text, primary text.

Vim themes

All Prot16 themes (including Sonho) are available as a plugin for Vim. To install them, use your favourite plugin manager. With vim-plug:

Plug 'protesilaos/prot16-vim'

Then specify your choice in .vimrc. Use either the light or dark variant:

" the light variant
colorscheme sonho_light

" or the dark variant
colorscheme sonho_dark

Atom packages

Sonho light available at

Atom GitHub Or run the command apm install sonho-syntax

Sonho dark available at

Atom GitHub Or run the command apm install sonho-dark-syntax

Atom and Vim colour mapping




Primary: Class names, variables, functions, etc.
Secondary: Measurement units, strings, support functions, etc.
Tertiary: Cursor, support classes, etc.

Terminal emulators

For Sonho, the following terminal emulators are supported thus far:

Below are the specs to copy-paste into a terminal that is not supported yet.

4a3638 cd4679 11bf8c d9a652 479cb5 dd619f 38a8b9 efe0e2 5a4648 d9766d 677468 8A7668 8896bb a77ccf 99aabc fff0f2

Terminal Base values (light theme)
Background: fff0f2
Foreground: 677468
Cursor: 677468
Bold colour: 677468

Terminal Base values (dark theme)
Background: 4a3638
Foreground: 99aabc
Cursor: 99aabc
Bold colour: 99aabc

Palette specs

# Palette variables and values

dbg=4a3638 # Dark background
dhl=5a4648 # Dark background highlight
dt2=8A7668 # Dark background secondary text
dt1=99aabc # Dark background primary text

lbg=fff0f2 # Light background
lhl=efe0e2 # Light background highlight
lt2=8896bb # Light background secondary text
lt1=677468 # Light background primary text

red=cd4679 # Red variant
ora=d9766d # Orange variant
yel=d9a652 # Yellow variant
gre=11bf8c # Green variant

cya=38a8b9 # Cyan variant
blu=479cb5 # Blue variant
vio=a77ccf # Violet variant
mag=dd619f # Magenta variant
# Terminal colour codes
# corresponding to the palette
# followed by termcol description

dbg=0      # black
red=1      # red
gre=2      # green
yel=3      # yellow
blu=4      # blue
mag=5      # magenta
cya=6      # cyan
lhl=7      # white
dhl=8      # brblack
ora=9      # brred
lt1=10     # brgreen
dt2=11     # bryellow
lt2=12     # brblue
vio=13     # brmagenta
dt1=14     # brcyan
lbg=15     # brwhite

Related projects

Note that this theme is part of the wider Prot16 collection. The Prot16 git repo includes all files (except the Atom packages) for each and every item.

Wish to contribute? Work can be done to port the themes to other applications. The program that handles the process is the Prot16 Generator (a bash script to build themes on demand or to work with other scripts in automating the process).

Application-specific Prot16 repositories:

Protesilaos profile photo

Protesilaos Stavrou

EU policy analyst. Philosopher. Web developer.
Full profile