Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Pierre Theme

Light and dark themes for Visual Studio Code, Cursor, and Shiki. Built for [Diffs.com](https://diffs.com) by [The Pierre Computer Company](https://pierre.computer).
Light and dark themes for Visual Studio Code, Cursor, Zed, and Shiki. Built for [Diffs.com](https://diffs.com) by [The Pierre Computer Company](https://pierre.computer).

## Preview

Expand Down Expand Up @@ -29,6 +29,14 @@ From the menu in Cursor:

You can also install or download from the [Open VSX registry](https://open-vsx.org/extension/pierrecomputer/pierre-theme).

### Zed

From the menu in Zed:

- Zed > Extensions (or hit Command+Shift+X or Control+Shift+X)
- Search for `Pierre`
- Click install

## Vibrant themes (Display P3)

> [!NOTE]
Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "@pierre/theme",
"displayName": "Pierre Theme",
"description": "Pierre theme for Shiki, VS Code, and more",
"version": "0.0.20",
"version": "0.0.21",
"publisher": "pierrecomputer",
"icon": "icon.png",
"galleryBanner": {
Expand Down
20 changes: 18 additions & 2 deletions src/build.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,38 @@
import { writeFileSync, mkdirSync } from "node:fs";
import { light as rolesLight, dark as rolesDark } from "./palette";
import { makeTheme } from "./theme";
import { makeZedThemeFamily } from "./zed-theme";
import { convertRolesToP3 } from "./color-p3";

mkdirSync("themes", { recursive: true });
mkdirSync("zed/themes", { recursive: true });

// Convert palettes to Display P3 color space
const rolesLightP3 = convertRolesToP3(rolesLight);
const rolesDarkP3 = convertRolesToP3(rolesDark);

const out = [
// ============================================
// VS Code Themes
// ============================================
const vscodeThemes = [
{ file: "themes/pierre-light.json", theme: makeTheme("Pierre Light", "light", rolesLight) },
{ file: "themes/pierre-dark.json", theme: makeTheme("Pierre Dark", "dark", rolesDark) },
{ file: "themes/pierre-light-vibrant.json", theme: makeTheme("Pierre Light Vibrant", "light", rolesLightP3) },
{ file: "themes/pierre-dark-vibrant.json", theme: makeTheme("Pierre Dark Vibrant", "dark", rolesDarkP3) }
];

for (const {file, theme} of out) {
for (const {file, theme} of vscodeThemes) {
writeFileSync(file, JSON.stringify(theme, null, 2), "utf8");
console.log("Wrote", file);
}

// ============================================
// Zed Theme Family
// ============================================
const zedTheme = makeZedThemeFamily("Pierre", "pierrecomputer", [
{ name: "Pierre Light", appearance: "light", roles: rolesLight },
{ name: "Pierre Dark", appearance: "dark", roles: rolesDark },
]);

writeFileSync("zed/themes/pierre.json", JSON.stringify(zedTheme, null, 2), "utf8");
console.log("Wrote zed/themes/pierre.json");
8 changes: 4 additions & 4 deletions src/palette.ts
Original file line number Diff line number Diff line change
Expand Up @@ -318,11 +318,11 @@ export const dark: Roles = {
},
border: {
window: gray["1040"],
editor: gray["920"],
indentGuide: gray["940"],
editor: gray["980"],
indentGuide: gray["980"],
indentGuideActive: gray["960"],
inset: gray["920"],
elevated: gray["960"]
inset: gray["980"],
elevated: gray["980"]
},
accent: {
primary: blue["500"],
Expand Down
Loading