Code Villain

VS Code, Cursor, Neovim, WezTerm, and the Starship prompt, in Nightshade’s colours for code.

Night and day · built from the apps’ own tokens

TypeScript from Layer's diff parser in the night theme: keywords in violet, functions in blue, strings in green, numbers in amber, comments in grey italics.
Night · Layer’s diff parser

Night and day.

Two themes from one palette. The cursor line, a selection, search matches with the current one in poison, and the bracket under the cursor read the same in both.

Three lines of code in the night theme, with the cursor line, a selection, a search match and the matching bracket marked. The same three lines in the day theme.

Diffs you can read.

Added and removed lines tinted, the code inside them still coloured, and the changed words marked. As Layer draws them, and as the editors do.

A diff in the night theme: a removed line tinted red and its replacement tinted green, with the changed words marked and the code still highlighted.

Every language it meets.

Treesitter and LSP semantic tokens in Neovim, TextMate scopes in VS Code and Cursor, so Rust, TypeScript, Python and Markdown get the same colours everywhere.

Rust from Layer's git module in the day theme.