/vim-colors-pencil

Light (& dark) color scheme inspired by iA Writer

Primary LanguageVim ScriptOtherNOASSERTION

vim-colors-pencil

A light (and dark) color scheme for Vim inspired by iA Writer

markdown-example

Features

The pencil color scheme takes its inspiration from iA Writer, an elegant word processor available on the iOS and OSX platforms.

This Vim color scheme features:

  • Subtle indicators of changes in the gutter for Signify, gitgutter, etc.
  • Use for both code and prose, though it’s definitely geared towards the latter
  • Light and dark background variants
  • iTerm color scheme available for using this color scheme with terminal-based Vim
  • Support for tpope/vim-markdown, preservim/vim-markdown (aka plasticboy/vim-markdown), and gabrielelana/vim-markdown
  • Support for the bling/vim-airline status bar plugin
  • Support for Vim’s Conceal feature to hide _ and * markup for _italic_, **bold** and ***bold italic*** styled text in Markdown

Requirements

Currently requires vim >= 7.0

Installation

For a basic install simply copy the color scheme file to your ~/.vim/colors directory.

For full support in which the airline theme is available, install using Pathogen, Vundle, Neobundle, or your favorite Vim package manager. For more recent versions of vim and neovim, use your pack directory. (See :help packages for more information.)

Configuration

Contrast

If you’re looking for greater contrast, set the following global in your .vimrc:

let g:pencil_higher_contrast_ui = 0   " 0=low (def), 1=high

It currently only affects the blacks and grays.

Headings color

When using a filetype of markdown, the ‘#’ heading text is shaded dark blue by default. This compensates for the lack of a visual cue found in iA Writer where the heading indicators are inside the left margin.

If you’re looking for neutral heading colors:

let g:pencil_neutral_headings = 1   " 0=blue (def), 1=normal

Code background color

Similar to the rendered markdown found on GitHub, inline and fenced code blocks will have a subtle gray background.

If you’re looking for neutral code background:

let g:pencil_neutral_code_bg = 1   " 0=gray (def), 1=normal

See g:pencil_higher_contrast_ui above for adjusting the code background contrast.

Gutter Color

For users of Signify or gitgutter, indicators will be subtle monochrome by default. If you prefer colored indicators, set the following global:

let g:pencil_gutter_color = 1      " 0=mono (def), 1=color

Curled Underline for Spelling Highlights

You can choose between undercurl and underline in highlighting misspelled words.

let g:pencil_spell_undercurl = 1       " 0=underline, 1=undercurl (def)

Non-spell underlines remain non-curled.

Terminal Italics

If you're using Vim in the terminal and your terminal supports italics, you can opt-in to italic support for some syntax highlighting, such as comments, by setting the following global:

let g:pencil_terminal_italics = 1

Airline Theme

airline-example

A matching theme for the Airline status bar plugin is available. Enable by adding to your .vimrc:

let g:airline_theme = 'pencil'

Concealing __styling markup__ in Markdown

The pencil color scheme supports the highlighting groups in the tpope/vim-markdown syntax plugin, to take advantage of Vim’s Conceal feature to hide _ and * markup for _italic_, **bold** and ***bold italic*** styled text in Markdown

See the vim-pencil plugin for details on automatically enabling this feature.

For more details on Vim’s Conceal feature, see:

:help conceallevel
:help concealcursor

Usage

Just like any other color scheme:

:colorscheme pencil

You can toggle between the light and dark variants:

:set background=dark
:set background=light

Like any other color scheme, you can add these commands to your .vimrc.

Font choices

iA Writer uses a typeface called ‘Nitti Light’ by Blue Monday. ($)

Free alternatives with bold and italic support include:

Cousine is a good match for Nitti Light.

See also

If you find this colorscheme useful, you may want to check out these plugins originally by @reedes:

The README in thematic has more details on setting up emulation of iA Writer.

Contributors

Thanks to those who have helped improve the pencil color scheme:

Future development

If you’ve spotted a problem or have an idea on improving this color scheme, please post it to the GitHub project issue page.