• Stars
    star
    203
  • Rank 192,890 (Top 4 %)
  • Language
    Vim Script
  • License
    MIT License
  • Created over 6 years ago
  • Updated over 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A dark, monochrome colorscheme for vim

m o n o t o n e

Another monochrome vim colorscheme. Inspired by various other monochrome colorschemes.

Monotone is a middle ground between a regular colorscheme and no syntax highlighting at all. The colorscheme differentiates comments, strings and keywords with different weights and shades of gray. It emphasizes errors, warnings and search highlighting as shown in the screenshots below.

Customization

Theme customizations require a GUI or a terminal emulator with termguicolors set. Otherwise monotone falls back to the default gray theme. Kitty is recommended for full support for customizations and special styling like underline/undercurl highlighting.

Customization variables must be set before colorscheme monotone is executed.

Monotone command

Monotone defines a g:Monotone function with a corresponding Monotone command, which can be used to load the colorscheme with user-defined settings without setting global config variables. This can be used e.g. for setting buffer-specific colors or adjusting colorscheme brightness based on the time of day. Examples can be found in the wiki.

Example usage:

" Monotone <h> <s> <l> <secondary-hue> <emphasize-comments> <emphasize-whitespace> <contrast-factor>
" Note: All positional arguments except h/s/l are optional
" Set the colorscheme to a monochrome beige color:
Monotone 10 25 80

Theme color

The theme color can be customized by setting g:monotone_color to an array of HSL values.

Secondary colors

Monotone highlights important information in bright colors. The default colors are bright red, yellow and blue, which are used to highlight stuff like cursors, search matches and messages. By setting g:monotone_secondary_hue_offset it's possible to offset the secondary colors to better match a theme color.

Emphasize comments

Comments are highlighted in a darker color by default. If you prefer to emphasize comments, set g:monotone_emphasize_comments to 1. This will highlight comments with the warning highlight color (yellow by default).

Emphasize whitespace

Whitespace (listchars) is highlighted in a darker color by default. If you prefer to emphasize whitespace (e.g. if you only use listchars to highlight trailing whitespace), set g:monotone_emphasize_whitespace to 1. This will highlight whitespace with the error highlight color (red by default).

Adjust contrast

You may adjust the colorscheme contrast to your liking by setting g:monotone_contrast_factor. The contrast factor only affects dark/background colors, i.e. different contrast levels are achieved by changing the background lightness.

The default contrast factor is 1.0. Recommended values are between 0.9 and 1.1.

Configuration example

let g:monotone_color = [120, 100, 70] " Sets theme color to bright green
let g:monotone_secondary_hue_offset = 200 " Offset secondary colors by 200 degrees
let g:monotone_emphasize_comments = 1 " Emphasize comments
colorscheme monotone

Screenshots

Screenshot of Kotlin and vimscript syntax examples in a split window

Screenshot of search and TODO highlighting examples

Screenshot of f.lux-like colors

Screenshot of custom theme color

More Repositories

1

vim-powerline

Moved to powerline/powerline.
Vim Script
2,863
star
2

git-man-page-generator-legacy

Git man page generator.
JavaScript
388
star
3

candybar

WebKit-based status bar for tiling window managers.
C
217
star
4

vim-distinguished

A dark vim color scheme for 256-color terminals.
Vim Script
210
star
5

baba-core

Mini-language for creating random text generators.
JavaScript
132
star
6

home

Lokaltog's home repo. Contains emacs config files and various local config files (for git, fish, bspwm, etc.)
Emacs Lisp
86
star
7

neoranger

Simple ranger wrapper for neovim.
Vim Script
38
star
8

vimfiles

Lokaltog's awesome vim configuration. Not maintained anymore, as I've switched to emacs+evil.
Vim Script
28
star
9

distinguished-theme

A dark and elegant theme for emacs.
Emacs Lisp
26
star
10

KeRD

Kerbal Remote Display.
JavaScript
14
star
11

monotone.nvim

Another monochrome neovim colorscheme.
Lua
10
star
12

lokaltog-fonts

Lokaltog's custom-made bitmap fonts.
Shell
10
star
13

candybar-theme-default

Default theme for candybar.
JavaScript
6
star
14

bind-adblocker

BIND ad blocker and personal caching DNS.
6
star
15

git-man-page-generator

5
star
16

vim-charbar

Lightweight single-character scrollbar.
Vim Script
5
star
17

dada-grammars

Random text generation grammars for the Dada Engine (http://dev.null.org/dadaengine/)
4
star
18

baba-grammar-git-man-page-generator

Git man page generator grammar for Baba.
3
star
19

baba-grammar-common

Common grammar files for Baba.
2
star
20

candybar-pkg-archlinux

Arch Linux PKGBUILDs for candybar.
Shell
2
star
21

tangle

Streamlined ComfyUI API and frontend wrapper.
1
star
22

vimfiles-new

1
star