Code Monkey home page Code Monkey logo

toast.vim's Introduction

Toast!

Toast! A colorful, medium-contrast theme with full Vim and Neovim support, true color and 256-color support, and automatic light and dark variants. Easy to read without frying your retinae.

Toast Light Toast Dark

Toast is not meant to be a "color system" or anything fancy like that, although it does operate within a few parameters to make its development easier and to aim for some degree of theoretical color harmony.

  • All text has (or should have) a contrast ratio of at least 3:1, meeting WCAG level A. (Level AA across the board makes the colors too drab for my taste, but there will be an option for this in the future, because a11y is important.)
  • All hues are multiples of 15 degrees apart on the color wheel, because why not.
  • Within these parameters, saturation and luminance levels are chosen based on what I think looks good while dogfooding the themes.

See something that looks wrong or that you don't like? File an issue!

Much of the basis for this code and approach comes from Chris Kempson's venerable Tomorrow theme.

Installation

Vim:

mkdir -p ~/.vim/colors
curl -o ~/.vim/colors/toast.vim https://raw.githubusercontent.com/jsit/toast.vim/master/colors/toast.vim

Neovim:

mkdir -p ~/.config/nvim/colors
curl -o ~/.config/nvim/colors/toast.vim https://raw.githubusercontent.com/jsit/toast.vim/master/colors/toast.vim

Customization

To use the light version:

set background=light
colorscheme toast

To use the dark version:

set background=dark
colorscheme toast

If your terminal emulator and version of Vim support true color:

set termguicolors

Set up autocmd overrides to change the colors to your liking. For instance, if you don't want red to be used for constants and strings, you can link them to a different highlight group with something like this in your .vimrc (Vim) or init.vim (Neovim):

augroup toast
  autocmd colorscheme toast hi clear Constant | hi link Constant Type
augroup END

Colors

Colors

Red Green Yellow Blue Magenta Cyan
Normal #d12d00 #427b00 #b68200 #006fd1 #a53bce #119c97
Bright #e74d23 #7dc030 #ffc233 #5aa2e0 #b968d9 #15c1bb

Grays

Light Background #f4f3ef #eae8e1 #e4e2d8 #7f7757 #4f4a36 #423e2e #323434
Dark Background #c3d2df #b9cbda #acc1d3 #547d9c #253846 #1e2d38 #17222b

Et cetera

The font used in the screenshots is IBM Plex Mono.

License

Copyright (c) Jay Sitter. Distributed under the same terms as Vim itself. See :help license.

toast.vim's People

Contributors

jdhao avatar jsit avatar tannerwelsh avatar willmcpherson2 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

toast.vim's Issues

Airline Colorscheme to use

Can you please suggest/add the airline theme for this colorscheme

Btw, Colorscheme is easy on eyes.. Nice work! Thanks :)

switching to this color scheme will move the cursor

I installed several different color themes. I find that when I change to this colorscheme using command :color toast, the cursor will be moved to the first line of the buffer, which is really annoying.

To verify, use the following minimal config:

set runtimepath+=/path/to/toast.vim

Open neovim with:

nvim -u minimal.vim test.py

Put the cursor on other lines other than first line, active this colorscheme: :color toast. The cursor will be moved to the first line.

feat(golang): Improve Go syntax highlighting

Hej @jsit

I just stumbled upon your theme and it is exactly I was looking for (light theme but easy on my eyes). Thinking about using it for my productive setup (iTerm, tmux, vim) I encountered that the syntax highlighting looks boring to me when it comes to Go (I will append some screenshots later).

If you could maybe mention some articles, tutorials, etc to read about highlighting in vim (I never touched the configuration in this depth so far), I would be happy to contribute some improvements for this theme in this regard.

Cheers!

iTerm colorscheme

Hi,

Awesome colorscheme! I took the liberty of creating an iTerm colorscheme. Use it if you want ๐Ÿ‘

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>Ansi 0 Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.2196078431372549</real>
		<key>Green Component</key>
		<real>0.17647058823529413</real>
		<key>Red Component</key>
		<real>0.11764705882352941</real>
	</dict>
	<key>Ansi 1 Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0</real>
		<key>Green Component</key>
		<real>0.17647058823529413</real>
		<key>Red Component</key>
		<real>0.8196078431372549</real>
	</dict>
	<key>Ansi 10 Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.18823529411764706</real>
		<key>Green Component</key>
		<real>0.7529411764705882</real>
		<key>Red Component</key>
		<real>0.49019607843137253</real>
	</dict>
	<key>Ansi 11 Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.2</real>
		<key>Green Component</key>
		<real>0.7607843137254902</real>
		<key>Red Component</key>
		<real>1</real>
	</dict>
	<key>Ansi 12 Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.8784313725490196</real>
		<key>Green Component</key>
		<real>0.6352941176470588</real>
		<key>Red Component</key>
		<real>0.35294117647058826</real>
	</dict>
	<key>Ansi 13 Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.8509803921568627</real>
		<key>Green Component</key>
		<real>0.40784313725490196</real>
		<key>Red Component</key>
		<real>0.7254901960784313</real>
	</dict>
	<key>Ansi 14 Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.7333333333333333</real>
		<key>Green Component</key>
		<real>0.7568627450980392</real>
		<key>Red Component</key>
		<real>0.08235294117647059</real>
	</dict>
	<key>Ansi 15 Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.8549019607843137</real>
		<key>Green Component</key>
		<real>0.796078431372549</real>
		<key>Red Component</key>
		<real>0.7254901960784313</real>
	</dict>
	<key>Ansi 2 Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0</real>
		<key>Green Component</key>
		<real>0.4823529411764706</real>
		<key>Red Component</key>
		<real>0.25882352941176473</real>
	</dict>
	<key>Ansi 3 Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0</real>
		<key>Green Component</key>
		<real>0.5098039215686274</real>
		<key>Red Component</key>
		<real>0.7137254901960784</real>
	</dict>
	<key>Ansi 4 Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.8196078431372549</real>
		<key>Green Component</key>
		<real>0.43529411764705883</real>
		<key>Red Component</key>
		<real>0</real>
	</dict>
	<key>Ansi 5 Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.807843137254902</real>
		<key>Green Component</key>
		<real>0.23137254901960785</real>
		<key>Red Component</key>
		<real>0.6470588235294118</real>
	</dict>
	<key>Ansi 6 Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.592156862745098</real>
		<key>Green Component</key>
		<real>0.611764705882353</real>
		<key>Red Component</key>
		<real>0.06666666666666667</real>
	</dict>
	<key>Ansi 7 Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.8274509803921568</real>
		<key>Green Component</key>
		<real>0.7568627450980392</real>
		<key>Red Component</key>
		<real>0.6745098039215687</real>
	</dict>
	<key>Ansi 8 Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.27450980392156865</real>
		<key>Green Component</key>
		<real>0.2196078431372549</real>
		<key>Red Component</key>
		<real>0.1450980392156863</real>
	</dict>
	<key>Ansi 9 Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.13725490196078433</real>
		<key>Green Component</key>
		<real>0.30196078431372547</real>
		<key>Red Component</key>
		<real>0.9058823529411765</real>
	</dict>
	<key>Background Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.16862745098039217</real>
		<key>Green Component</key>
		<real>0.13333333333333333</real>
		<key>Red Component</key>
		<real>0.09019607843137255</real>
	</dict>
	<key>Bold Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.8745098039215686</real>
		<key>Green Component</key>
		<real>0.8235294117647058</real>
		<key>Red Component</key>
		<real>0.7647058823529411</real>
	</dict>
	<key>Cursor Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.8745098039215686</real>
		<key>Green Component</key>
		<real>0.8235294117647058</real>
		<key>Red Component</key>
		<real>0.7647058823529411</real>
	</dict>
	<key>Cursor Text Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.16862745098039217</real>
		<key>Green Component</key>
		<real>0.13333333333333333</real>
		<key>Red Component</key>
		<real>0.09019607843137255</real>
	</dict>
	<key>Foreground Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.8745098039215686</real>
		<key>Green Component</key>
		<real>0.8235294117647058</real>
		<key>Red Component</key>
		<real>0.7647058823529411</real>
	</dict>
	<key>Selected Text Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.8745098039215686</real>
		<key>Green Component</key>
		<real>0.8235294117647058</real>
		<key>Red Component</key>
		<real>0.7647058823529411</real>
	</dict>
	<key>Selection Color</key>
	<dict>
		<key>Color Space</key>
		<string>sRGB</string>
		<key>Blue Component</key>
		<real>0.16862745098039217</real>
		<key>Green Component</key>
		<real>0.13333333333333333</real>
		<key>Red Component</key>
		<real>0.09019607843137255</real>
	</dict>
</dict>
</plist>

How do I enable the light version?

Is there something I don't know about Vim? How can the dark and light version be automatic if the colors come from this plugin in the first place?

Thanks

Not getting the correct colors

Hi!

I'm on a Mac and not getting the expected colors.

image

Loading this via Plug:
Plug 'jsit/toast.vim'

Here's the relevant settings:
set t_Co=256 set bg=dark colorscheme toast

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.