/seabird

a vim and terminal theme based on hue 204 (blue, blue...)

Primary LanguageVim ScriptGNU General Public License v3.0GPL-3.0

Note: my colourscheme development efforts have shifted to vimspectr.

To load the vimspectr equivalent of a seabird theme, add the following to your vimrc:

  • seagull
let g:vimspectr210wcurve_light_MuteStatusLine = 'on'
let g:vimspectr210wcurve_light_MuteLineNr = 'on'
let g:vimspectr210wcurve_light_ItalicComment = 'on'
color vimspectr210wcurve-light
  • greygull
let g:vimspectr210wcurve_light_MuteAccents = 'on'
let g:vimspectr210wcurve_light_MuteStatusLine = 'on'
let g:vimspectr210wcurve_light_MuteLineNr = 'on'
let g:vimspectr210wcurve_light_ItalicComment = 'on'
color vimspectr210wcurve-light
  • petrel
let g:vimspectr210wcurve_dark_MuteStatusLine = 'on'
let g:vimspectr210wcurve_dark_MuteLineNr = 'on'
let g:vimspectr210wcurve_dark_ItalicComment = 'on'
color vimspectr210wcurve-dark
  • stormpetrel
let g:vimspectr210wcurve_dark_MuteAccents = 'on'
let g:vimspectr210wcurve_dark_MuteStatusLine = 'on'
let g:vimspectr210wcurve_dark_MuteLineNr = 'on'
let g:vimspectr210wcurve_dark_ItalicComment = 'on'
color vimspectr210wcurve-dark

.

.

.

seabird

seabird is a theme based on hue 204 .

seabird
variants

light theme

dark theme

high-saturation
seagull petrel

low-saturation
grey gull storm petrel

screenshots

SEAGULL







screenshot of seagull, the high-saturation light seabird themescreenshot of petrel, the high-saturation dark seabird theme
PETREL







GREY
GULL







screenshot of grey gull, the low-saturation light seabird themescreenshot of storm petrel, the low-saturation dark seabird theme
STORM
PETREL







Vim theme

step 1: download the colour scheme

option A: manually

Download the desired colourscheme files and place in directory ~/.vim/colors/ (Linux/Mac) or %userprofile%\vimfiles\colors\ (Windows).

option B: using a plugin manager

For easy management of Vim colour schemes (and other plugins), try a plugin manager. With vim-plug, for instance, just add Plug 'nightsense/seabird' to the list of plugins in vimrc, then run PlugUpdate.

step 2: activate the colour scheme

To activate the seagull theme, add colorscheme seagull to the vimrc file. Choose from among seagull, greygull, petrel, and stormpetrel.

For Neovim, add set termguicolors to enable truecolour support.

To assign themes to specific intervals of the day, try the night-and-day plugin.

step 3: configure terminal colours (if using Vim in a terminal)

In order for seabird to work properly in terminal Vim, set the terminal's colours to match those of the active Vim theme.

terminal themes

As of now, this repository provides the following terminal configuration files:

For GNOME Terminal, run the install script for the desired seabird theme to create a "profile" for it. Then select the profile with the right-click menu, or set the profile as default via Edit > Preferences > Profiles.

Configuration files for other terminals may be added if requested.

other themes (third-party)



how seabird took flight

step 1: choosing a principal hue

Hue 204 was chosen because:

  • a sky blue colour was desired
  • at 100% saturation and value, hue 204 features 3:1 contrast ratio (the ISO standard) with a white background

step 2: choosing base colours

The base colours, which are shared by the light and dark versions of seabird, were selected using the hue/saturation/value model of colour definition.

First, all base colours were assigned hue 204.

Second, saturation levels were assigned. The lightest colour, seagrey8, was assigned 0. For the remaining colours, an excerpt of the Fibonacci sequence was applied.

base colour role hue ° saturation %
seagrey1 regular background (petrel) 204 55
seagrey2 highlighted background (petrel) 204 34
seagrey3 subdued text (petrel) 204 21
seagrey4 regular text (seagull) 204 13
seagrey5 regular text (petrel) 204 8
seagrey6 subdued text (seagull) 204 5
seagrey7 highlighted background (seagull) 204 3
seagrey8 regular background (seagull) 204 0

Third, value levels were assigned. seagrey8 was set to 100% value. The rest were assigned values based on contrast ratios with other base colours.

this colour was assigned... ...this value... ...to meet this contrast ratio... ...with this colour
seagrey1 10 18½:1 seagrey8
seagrey2 17 1⅕:1 seagrey1
seagrey3 48 3:1 seagrey2
seagrey4 49 4½:1 seagrey8
seagrey5 51 4½:1 seagrey1
seagrey6 53 3:1 seagrey7
seagrey7 93 1⅕:1 seagrey8
seagrey8 100 - -
  • the 18½:1 ratio ensures a 10% value background for the dark theme: a "soft black" good for long-term readability
  • the 1⅕:1 ratio provides background highlights that stand out clearly from the regular background
  • the 3:1 ratio ensures that subdued text on highlighted background is ISO "standard" readable
  • the 4½:1 ratio ensures that regular text on regular background is W3C "AA accessible" readable

The resulting colours:

seabird base colour hex hue ° saturation % value %
 seagrey1 0b141a 204 55 10
 seagrey2 1d252b 204 34 17
 seagrey3 61707a 204 21 48
 seagrey4 6d767d 204 13 49
 seagrey5 787e82 204 8 51
 seagrey6 808487 204 5 53
 seagrey7 e6eaed 204 3 93
 seagrey8 ffffff 204 0 100

step 3: choosing accent colours

Accent colour hues were selected from around the (30°-divided) colour wheel: hue 204 plus seven companions.

colour hue ° contrast level
red 354 high
orange 24 medium
yellow 54 low
green 114 low
teal 174 low
blue 204 medium
purple 264 high
pink 324 high

All hues were initially set to 100% saturation and value. Then:

  • the low-contrast colours were reduced in value (yellow by ¼, green and teal by ⅓)
  • the high-contrast colours were reduced in saturation (red by ¼, purple and pink by ⅓)
  • the mid-contrast colours (orange and blue) were left alone

The goal contrast ratio was 3:1 (the ISO standard), prompting a few small hue adjustments.

seagull accent colour hex hue ° saturation % value %
 red ff4053 354 75 100
 orange ff6200 23 100 100
 yellow bf8c00 44 100 75
 green 11ab00 114 100 67
 teal 00a5ab 182 100 67
 blue 0099ff 204 100 100
 purple 9854ff 264 67 100
 pink ff549b 335 67 100

For grey gull, each seagull accent colour was reduced in saturation by 38.2% (by applying the golden ratio), then reduced in value to a contrast ratio of 3:1.

grey gull accent colour hex hue ° saturation % value %
 red db7681 354 46 86
 orange d1814f 23 62 82
 yellow ad9142 44 62 68
 green 4aa840 114 62 66
 teal 3fa2a6 182 62 65
 blue 4e9bcf 204 62 81
 purple a783de 264 41 87
 pink cf7a9d 335 41 81

For petrel, each grey gull accent colour was reduced in value to a contrast ratio of 4½:1 (the W3C AA minimum).

petrel accent colour hex hue ° saturation % value %
 red ba656d 354 46 73
 orange b06d43 23 62 69
 yellow 947b38 44 62 58
 green 3f8f36 114 62 56
 teal 35898c 182 62 55
 blue 4384b0 204 62 69
 purple 8e6fbd 264 41 74
 pink b06886 335 41 69

For storm petrel, each petrel accent colour was reduced in saturation by 38.2% (by applying the golden ratio), then reduced in value to a contrast ratio of 4½:1.

storm petrel accent colour hex hue ° saturation % value %
 red 9e7276 354 28 62
 orange 9c7760 23 38 61
 yellow 8a7c55 44 38 54
 green 5b8a55 114 38 54
 teal 548587 182 38 53
 blue 5f8299 204 38 60
 purple 86779e 264 25 62
 pink 997383 335 25 60

notes

The seabird colour scheme files are generated by modifying those of the flattened colour scheme by Romain Lafourcade, which is in turn derived from the Solarized colour scheme by Ethan Schnoonover.

Colour adjustment was performed with the GnuIMP colour selection tool. Contrast ratios were calculated with these formulas.

Actual contrast ratios may be slightly higher than those listed, due to discrete jumps in digital colour values.

Photo credits: