feat: simplified themes module

This commit is contained in:
Nick 2025-01-18 03:50:54 -06:00
parent b0fdd1d958
commit a5ec879db0
119 changed files with 2045 additions and 4624 deletions

View file

@ -2,54 +2,69 @@ let
modulesPath = ./modules;
miscPath = modulesPath + "/misc";
moduleImport = path: nameTransform:
moduleImport =
path: nameTransform:
builtins.listToAttrs (
map
(name: {
name = nameTransform name;
value = import (path + "/${name}");
})
(
builtins.filter
(name: (builtins.readDir path).${name} == "regular" && builtins.match ".*\\.nix$" name != null)
(builtins.attrNames (builtins.readDir path))
)
);
modules =
moduleImport modulesPath (name:
builtins.replaceStrings [
".nix"
] [
""
]
name)
// moduleImport miscPath (name: "misc-${builtins.replaceStrings [
".nix"
] [
""
]
name}")
// (path:
builtins.listToAttrs (
map
(name: {
name = name;
name = nameTransform name;
value = import (path + "/${name}");
})
(
builtins.filter
(name: (builtins.readDir path).${name} == "directory" && name != "misc")
(builtins.attrNames (builtins.readDir path))
builtins.filter (
name: (builtins.readDir path).${name} == "regular" && builtins.match ".*\\.nix$" name != null
) (builtins.attrNames (builtins.readDir path))
)
))
modulesPath;
in {
);
modules =
moduleImport modulesPath (
name:
builtins.replaceStrings
[
".nix"
]
[
""
]
name
)
// moduleImport miscPath (
name:
"misc-${
builtins.replaceStrings
[
".nix"
]
[
""
]
name
}"
)
//
(
path:
builtins.listToAttrs (
map
(name: {
name = name;
value = import (path + "/${name}");
})
(
builtins.filter (name: (builtins.readDir path).${name} == "directory" && name != "misc") (
builtins.attrNames (builtins.readDir path)
)
)
)
)
modulesPath;
in
{
flake.homeModules = {
desktop = {
imports = builtins.attrValues {
inherit
(modules)
inherit (modules)
brave
flameshot
misc-android
@ -62,8 +77,7 @@ in {
entertainment = {
imports = builtins.attrValues {
inherit
(modules)
inherit (modules)
freetube
misc-entertainment
mpv
@ -74,8 +88,7 @@ in {
firefox = {
imports = builtins.attrValues {
inherit
(modules)
inherit (modules)
firefox
;
};
@ -83,8 +96,7 @@ in {
hyprland = {
imports = builtins.attrValues {
inherit
(modules)
inherit (modules)
gtk
dunst
easyEffects
@ -100,8 +112,7 @@ in {
};
productionArt = {
imports = builtins.attrValues {
inherit
(modules)
inherit (modules)
misc-productionArt
;
};
@ -109,8 +120,7 @@ in {
productionAudio = {
imports = builtins.attrValues {
inherit
(modules)
inherit (modules)
misc-productionAudio
;
};
@ -118,8 +128,7 @@ in {
productionCode = {
imports = builtins.attrValues {
inherit
(modules)
inherit (modules)
neovim
vscode
zed
@ -129,8 +138,7 @@ in {
productionVideo = {
imports = builtins.attrValues {
inherit
(modules)
inherit (modules)
misc-productionVideo
obs-studio
yt-dlp
@ -140,8 +148,7 @@ in {
productionWriting = {
imports = builtins.attrValues {
inherit
(modules)
inherit (modules)
misc-productionWriting
;
};
@ -149,9 +156,7 @@ in {
shared = {
imports = builtins.attrValues {
inherit
(modules)
bat
inherit (modules)
bottom
direnv
fastfetch

View file

@ -1,13 +0,0 @@
{
programs.bat = {
enable = true;
config.theme = "catppuccin-macchiato";
};
home = {
file = {
"./.config/bat/themes/macchiato.tmTheme" = {
source = ./macchiato.tmTheme;
};
};
};
}

View file

@ -1,959 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>name</key>
<string>Catppuccin</string>
<key>settings</key>
<array>
<dict>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#cad3f5</string>
<key>background</key>
<string>#24273a</string>
<key>caret</key>
<string>#b8c0e0</string>
<key>invisibles</key>
<string>#a5adcb</string>
<key>gutterForeground</key>
<string>#939ab7</string>
<key>gutterForegroundHighlight</key>
<string>#a6da95</string>
<key>lineHighlight</key>
<string>#5b6078</string>
<key>selection</key>
<string>#6e738d</string>
<key>selectionBorder</key>
<string>#24273a</string>
<key>activeGuide</key>
<string>#f5a97f</string>
<key>findHighlightForeground</key>
<string>#1e2030</string>
<key>findHighlight</key>
<string>#eed49f</string>
<key>bracketsForeground</key>
<string>#939ab7</string>
<key>bracketContentsForeground</key>
<string>#939ab7</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Comment</string>
<key>scope</key>
<string>comment</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#6e738d</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>String</string>
<key>scope</key>
<string>string</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#a6da95</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>String regex</string>
<key>scope</key>
<string>string.regexp</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f5a97f</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Number</string>
<key>scope</key>
<string>constant.numeric</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f5a97f</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Boolean</string>
<key>scope</key>
<string>constant.language.boolean</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f5a97f</string>
<key>fontStyle</key>
<string>bold italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Built-in constant</string>
<key>scope</key>
<string>constant.language</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#b7bdf8</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Built-in function</string>
<key>scope</key>
<string>support.function.builtin</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f5a97f</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>User-defined constant</string>
<key>scope</key>
<string>variable.other.constant</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f5a97f</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Variable</string>
<key>scope</key>
<string>variable</string>
<key>settings</key>
<dict></dict>
</dict>
<dict>
<key>name</key>
<string>Keyword</string>
<key>scope</key>
<string>keyword</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed8796</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Conditional/loop</string>
<key>scope</key>
<string>keyword.control.loop, keyword.control.conditional, keyword.control.c++</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#c6a0f6</string>
<key>fontStyle</key>
<string>bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Return</string>
<key>scope</key>
<string>keyword.control.return, keyword.control.flow.return</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f5bde6</string>
<key>fontStyle</key>
<string>bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Exception</string>
<key>scope</key>
<string>support.type.exception</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f5a97f</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Operator</string>
<key>scope</key>
<string>keyword.operator, punctuation.accessor</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#91d7e3</string>
<key>fontStyle</key>
<string>bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Punctuation separator</string>
<key>scope</key>
<string>punctuation.separator</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8bd5ca</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Punctuation terminator</string>
<key>scope</key>
<string>punctuation.terminator</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8bd5ca</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Punctuation bracket</string>
<key>scope</key>
<string>punctuation.section</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#939ab7</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Include</string>
<key>scope</key>
<string>keyword.control.import.include</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8bd5ca</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage</string>
<key>scope</key>
<string>storage</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed8796</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage type</string>
<key>scope</key>
<string>storage.type</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#eed49f</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage modifier</string>
<key>scope</key>
<string>storage.modifier</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed8796</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage type namespace</string>
<key>scope</key>
<string>entity.name.namespace, meta.path</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f4dbd6</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage type class</string>
<key>scope</key>
<string>storage.type.class</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f4dbd6</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Label</string>
<key>scope</key>
<string>entity.name.label</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8aadf4</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword class</string>
<key>scope</key>
<string>keyword.declaration.class</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed8796</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Class name</string>
<key>scope</key>
<string>entity.name.class, meta.toc-list.full-identifier</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#91d7e3</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Inherited class</string>
<key>scope</key>
<string>entity.other.inherited-class</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#91d7e3</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function name</string>
<key>scope</key>
<string>entity.name.function, variable.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8aadf4</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function macro</string>
<key>scope</key>
<string>entity.name.function.preprocessor</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed8796</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Macro directive - ifdef</string>
<key>scope</key>
<string>keyword.control.import</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed8796</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Constructor</string>
<key>scope</key>
<string>entity.name.function.constructor, entity.name.function.destructor</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#b7bdf8</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function argument</string>
<key>scope</key>
<string>variable.parameter.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f4dbd6</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function declaration</string>
<key>scope</key>
<string>keyword.declaration.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ee99a0</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Library function</string>
<key>scope</key>
<string>support.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#91d7e3</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Library constant</string>
<key>scope</key>
<string>support.constant</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8aadf4</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Library class/type</string>
<key>scope</key>
<string>support.type, support.class</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8aadf4</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Library variable</string>
<key>scope</key>
<string>support.other.variable</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Variable function</string>
<key>scope</key>
<string>variable.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8aadf4</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Variable parameter</string>
<key>scope</key>
<string>variable.parameter</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f4dbd6</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Variable other</string>
<key>scope</key>
<string>variable.other</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#cad3f5</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Variable field</string>
<key>scope</key>
<string>variable.other.member</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f4dbd6</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Variable language</string>
<key>scope</key>
<string>variable.language</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8bd5ca</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tag name</string>
<key>scope</key>
<string>entity.name.tag</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f5a97f</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tag attribute</string>
<key>scope</key>
<string>entity.other.attribute-name</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#c6a0f6</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tag delimiter</string>
<key>scope</key>
<string>punctuation.definition.tag</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ee99a0</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Markdown URL</string>
<key>scope</key>
<string>markup.underline.link.markdown</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f4dbd6</string>
<key>fontStyle</key>
<string>italic underline</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Markdown reference</string>
<key>scope</key>
<string>meta.link.inline.description</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#b7bdf8</string>
<key>fontStyle</key>
<string>bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Markdown literal</string>
<key>scope</key>
<string>comment.block.markdown, meta.code-fence, markup.raw.code-fence, markup.raw.inline</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8bd5ca</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Markdown title</string>
<key>scope</key>
<string>punctuation.definition.heading, entity.name.section</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8aadf4</string>
<key>fontStyle</key>
<string>bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Markdown emphasis</string>
<key>scope</key>
<string>markup.italic</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ee99a0</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Markdown strong</string>
<key>scope</key>
<string>markup.bold</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ee99a0</string>
<key>fontStyle</key>
<string>bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Escape</string>
<key>scope</key>
<string>constant.character.escape</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f5bde6</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Bash built-in function</string>
<key>scope</key>
<string>source.shell.bash meta.function.shell meta.compound.shell meta.function-call.identifier.shell</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f5bde6</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Bash parameter</string>
<key>scope</key>
<string>variable.language.shell</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed8796</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Lua field</string>
<key>scope</key>
<string>source.lua meta.function.lua meta.block.lua meta.mapping.value.lua meta.mapping.key.lua string.unquoted.key.lua</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#b7bdf8</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Lua constructor</string>
<key>scope</key>
<string>source.lua meta.function.lua meta.block.lua meta.mapping.key.lua string.unquoted.key.lua</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f0c6c6</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Java constant</string>
<key>scope</key>
<string>entity.name.constant.java</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8bd5ca</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>CSS property</string>
<key>scope</key>
<string>support.type.property-name.css</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f0c6c6</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>CSS constant</string>
<key>scope</key>
<string>support.constant.property-value.css</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#cad3f5</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>CSS suffix</string>
<key>scope</key>
<string>constant.numeric.suffix.css, keyword.other.unit.css</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8bd5ca</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>CSS variable property</string>
<key>scope</key>
<string>variable.other.custom-property.name.css, support.type.custom-property.name.css, punctuation.definition.custom-property.css</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8bd5ca</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>SCSS tag</string>
<key>scope</key>
<string>entity.name.tag.css</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#b7bdf8</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>SASS variable</string>
<key>scope</key>
<string>variable.other.sass</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8bd5ca</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Invalid</string>
<key>scope</key>
<string>invalid</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#cad3f5</string>
<key>background</key>
<string>#ed8796</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Invalid deprecated</string>
<key>scope</key>
<string>invalid.deprecated</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#cad3f5</string>
<key>background</key>
<string>#c6a0f6</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Diff header</string>
<key>scope</key>
<string>meta.diff, meta.diff.header</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#6e738d</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Diff deleted</string>
<key>scope</key>
<string>markup.deleted</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed8796</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Diff inserted</string>
<key>scope</key>
<string>markup.inserted</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#a6da95</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Diff changed</string>
<key>scope</key>
<string>markup.changed</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#eed49f</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Message error</string>
<key>scope</key>
<string>message.error</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed8796</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
</array>
<key>uuid</key>
<string>4d0379b5-ef82-467b-b8b8-365889420646</string>
<key>colorSpaceName</key>
<string>sRGB</string>
<key>semanticClass</key>
<string>theme.dark.Catppuccin</string>
<key>author</key>
<string>BrunDerSchwarzmagier</string>
</dict>
</plist>

View file

@ -1,44 +1,49 @@
{flake, ...}: let
inherit
(flake.config.aesthetics.themes.schemes.catppuccin-macchiato)
colours
{ flake, ... }:
let
inherit (flake.config.aesthetics.themes)
currentTheme
palettes
;
in {
el = palettes.${currentTheme}.colours;
in
{
colors = {
tableHeaderColor = colours.rosewater;
allCpuColor = colours.rosewater;
avgCpuColor = colours.maroon;
tableHeaderColor = el.base06;
allCpuColor = el.base06;
avgCpuColor = el.base12;
cpuCoreColors = [
colours.sapphire
colours.peach
colours.yellow
colours.green
colours.sky
colours.mauve
el.base07
el.base16
el.base09
el.base0A
el.base0B
el.base15
el.base0E
];
ramColor = colours.green;
swapColor = colours.peach;
rxColor = colours.green;
txColor = colours.red;
widgetTitleColor = colours.flamingo;
borderColor = colours.surface2;
highlightedBorderColor = colours.pink;
textColor = colours.text;
graphColor = colours.subtext0;
cursorColor = colours.pink;
selectedTextColor = colours.crust;
selectedBgColor = colours.mauve;
highBatteryColor = colours.green;
mediumBatteryColor = colours.yellow;
lowBatteryColor = colours.red;
ramColor = el.base0B;
swapColor = el.base09;
rxColor = el.base0B;
txColor = el.base08;
widgetTitleColor = el.base0F;
borderColor = el.base04;
highlightedBorderColor = el.base17;
textColor = el.base05;
graphColor = el.base05;
cursorColor = el.base17;
selectedTextColor = el.base11;
selectedBgColor = el.base0E;
highBatteryColor = el.base0B;
mediumBatteryColor = el.base0A;
lowBatteryColor = el.base08;
gpuCoreColors = [
colours.sky
colours.mauve
colours.red
colours.peach
colours.yellow
colours.green
el.base15
el.base0E
el.base08
el.base09
el.base0A
el.base0B
];
arcColor = colours.sky;
arcColor = el.base15;
};
}

View file

@ -1,13 +1,16 @@
{flake, ...}: {
programs.bottom = let
configPath = ./config;
settingsPath = import (configPath + /settings.nix) {
inherit
flake
;
{ flake, ... }:
{
programs.bottom =
let
configPath = ./config;
settingsPath = import (configPath + /settings.nix) {
inherit
flake
;
};
in
{
enable = true;
settings = settingsPath;
};
in {
enable = true;
settings = settingsPath;
};
}

View file

@ -1,22 +1,25 @@
{flake, ...}: let
inherit
(flake.config.aesthetics.themes.schemes.catppuccin-macchiato)
colours
;
inherit
(flake.config.aesthetics.themes)
{ flake, ... }:
let
inherit (flake.config.aesthetics.themes)
currentTheme
palettes
font
;
el = palettes.${currentTheme}.colours;
makeColor = c: "#" + c;
in {
in
{
global = {
font = "${font} 10";
background = makeColor colours.base;
font = "${font.name} 10";
background = makeColor el.base01;
frame_color = makeColor el.base0E;
foreground = makeColor el.base05;
corner_radius = 10;
fade_in_duration = 1000;
foreground = makeColor colours.text;
frame = 10000;
frame_color = makeColor colours.mauve;
frame_width = 1;
icon_corner_radius = 10;
monitor = 1;
@ -28,7 +31,7 @@ in {
};
urgency_critical = {
frame_color = makeColor colours.peach;
frame_color = makeColor el.base09;
timeout = 0;
};
}

View file

@ -2,16 +2,17 @@
flake,
pkgs,
...
}: let
inherit
(flake.config.aesthetics.themes)
}:
let
inherit (flake.config.aesthetics.themes)
font
;
in {
in
{
confirm-close-surface = false;
window-decoration = false;
font-size = 10;
font-family = font;
font-family = font.name;
window-padding-x = 10;
window-padding-y = 10;
copy-on-select = true;

View file

@ -1,32 +1,36 @@
{flake, ...}: let
inherit
(flake.config.aesthetics.themes.schemes.catppuccin-macchiato)
colours
{ flake, ... }:
let
inherit (flake.config.aesthetics.themes)
currentTheme
palettes
;
in {
catppuccin-macchiato = {
background = "${colours.base}";
cursor-color = "${colours.rosewater}";
foreground = "${colours.text}";
el = palettes.${currentTheme}.colours;
in
{
theme = {
background = el.base01;
cursor-color = el.base06;
foreground = el.base05;
palette = [
"0=${colours.surface1}"
"1=${colours.red}"
"2=${colours.green}"
"3=${colours.yellow}"
"4=${colours.blue}"
"5=${colours.pink}"
"6=${colours.teal}"
"7=${colours.subtext0}"
"8=${colours.surface2}"
"9=${colours.red}"
"10=${colours.green}"
"11=${colours.yellow}"
"12=${colours.blue}"
"13=${colours.pink}"
"14=${colours.teal}"
"15=${colours.subtext1}"
"0=${el.base03}"
"1=${el.base08}"
"2=${el.base0B}"
"3=${el.base0A}"
"4=${el.base0D}"
"5=${el.base17}"
"6=${el.base0C}"
"7=${el.base05}"
"8=${el.base04}"
"9=${el.base08}"
"10=${el.base03}"
"11=${el.base0A}"
"12=${el.base0D}"
"13=${el.base17}"
"14=${el.base0C}"
"15=${el.base05}"
];
selection-background = "${colours.surface2}";
selection-foreground = "${colours.text}";
selection-background = el.base04;
selection-foreground = el.base05;
};
}

View file

@ -2,7 +2,8 @@
flake,
pkgs,
...
}: let
}:
let
configPath = ./config;
settingsPath = import (configPath + /settings.nix) {
inherit
@ -15,7 +16,8 @@
flake
;
};
in {
in
{
programs.ghostty = {
enable = true;
package = flake.inputs.ghostty.packages.${pkgs.system}.default;

View file

@ -8,7 +8,7 @@
shadow = {
enabled = true;
color = "rgba(00000055)";
color = "rgba(00000000)";
ignore_window = true;
offset = "0 2";
range = 20;

View file

@ -1,7 +1,18 @@
{ flake, ... }:
let
inherit (flake.config.aesthetics.themes)
currentTheme
palettes
;
el = palettes.${currentTheme}.colours;
in
{
gaps_in = 5;
gaps_out = 5;
border_size = 2;
"col.active_border" = "rgb(c6a0f6)";
"col.inactive_border" = "0xff292a37";
"col.active_border" = "rgb(${el.base0E})";
"col.inactive_border" = "0xff${el.base02}";
}

View file

@ -3,13 +3,19 @@
flake,
config,
...
}: let
}:
let
# hostname = config.networking.hostName;
# inherit (flake.config.machines.devices) desktop laptop;
configPath = ./config;
configImports = {
animations = import (configPath + /animations.nix);
bind = import (configPath + /bind.nix) {inherit flake config;};
bind = import (configPath + /bind.nix) {
inherit
flake
config
;
};
bindm = import (configPath + /bindm.nix);
binds = import (configPath + /binds.nix);
# bindl =
@ -19,12 +25,17 @@
decoration = import (configPath + /decoration.nix);
dwindle = import (configPath + /dwindle.nix);
exec-once = import (configPath + /exec-once.nix);
general = import (configPath + /general.nix);
general = import (configPath + /general.nix) {
inherit
flake
;
};
input = import (configPath + /input.nix);
misc = import (configPath + /misc.nix);
windowrulev2 = import (configPath + /windowrulev2.nix);
};
in {
in
{
wayland.windowManager.hyprland = {
enable = true;
# package = flake.inputs.hyprland.packages.${pkgs.system}.hyprland;

View file

@ -2,23 +2,21 @@
flake,
lib,
...
}: let
inherit
(flake.config.aesthetics.themes.schemes.catppuccin-macchiato)
colours
}:
let
inherit (flake.config.aesthetics.themes)
currentTheme
palettes
;
makeColor = c:
"#"
+ c;
makeStyle = bg: fg:
"bg:"
+ bg
+ " fg:"
+ fg
+ " bold";
surround = fg: text:
el = palettes.${currentTheme}.colours;
makeColor = c: "#" + c;
makeStyle = bg: fg: "bg:" + bg + " fg:" + fg + " bold";
surround =
fg: text:
"[](fg:"
+ makeColor colours.base
+ makeColor el.base00
+ " bg:"
+ fg
+ ")"
@ -29,52 +27,52 @@
+ "[](fg:"
+ fg
+ ")";
in {
in
{
add_newline = false;
character = let
makeChar = bg: c:
surround (makeColor bg) ("["
+ c
+ "]("
+ makeStyle (makeColor bg) (makeColor colours.crust)
+ ")");
in {
error_symbol = makeChar colours.maroon "";
format = "$symbol";
success_symbol = makeChar colours.teal "λ";
};
character =
let
makeChar =
bg: c:
surround (makeColor bg) ("[" + c + "](" + makeStyle (makeColor bg) (makeColor el.base11) + ")");
in
{
error_symbol = makeChar el.base12 "";
format = "$symbol";
success_symbol = makeChar el.base0C "λ";
};
cmd_duration = {
format = surround (makeColor colours.mauve) "[ $duration]($style)";
format = surround (makeColor el.base0E) "[ $duration]($style)";
min_time = 0;
show_milliseconds = true;
style = makeStyle (makeColor colours.mauve) (makeColor colours.crust);
style = makeStyle (makeColor el.base0E) (makeColor el.base11);
};
directory = {
format = surround (makeColor colours.blue) "[󰉋 $path]($style)[$read_only]($read_only_style)";
format = surround (makeColor el.base0D) "[󰉋 $path]($style)[$read_only]($read_only_style)";
read_only = " ";
read_only_style = makeStyle (makeColor colours.blue) (makeColor colours.crust);
style = makeStyle (makeColor colours.blue) (makeColor colours.crust);
read_only_style = makeStyle (makeColor el.base0D) (makeColor el.base11);
style = makeStyle (makeColor el.base0D) (makeColor el.base11);
truncation_length = 1;
truncate_to_repo = false;
};
git_branch = {
format = surround (makeColor colours.peach) "[$symbol $branch]($style)";
style = makeStyle (makeColor colours.peach) (makeColor colours.crust);
format = surround (makeColor el.base09) "[$symbol $branch]($style)";
style = makeStyle (makeColor el.base09) (makeColor el.base11);
symbol = "";
};
git_status = {
format = "[ \\[$all_status$ahead_behind\\]]($style)";
style = makeStyle (makeColor colours.yellow) (makeColor colours.crust);
style = makeStyle (makeColor el.base0A) (makeColor el.base11);
};
hostname = {
format = surround (makeColor colours.sapphire) "[$ssh_symbol$hostname]($style)";
format = surround (makeColor el.base16) "[$ssh_symbol$hostname]($style)";
ssh_symbol = "󰖟 ";
style = makeStyle (makeColor colours.sapphire) (makeColor colours.crust);
style = makeStyle (makeColor el.base16) (makeColor el.base11);
};
pijul_channel = {
disabled = false;
format = surround (makeColor colours.peach) "[$symbol $channel]($style)";
style = makeStyle (makeColor colours.peach) (makeColor colours.crust);
format = surround (makeColor el.base09) "[$symbol $channel]($style)";
style = makeStyle (makeColor el.base09) (makeColor el.base11);
symbol = "";
};
format = lib.concatStrings [

View file

@ -2,7 +2,8 @@
flake,
lib,
...
}: let
}:
let
configPath = ./config;
settingsPath = import (configPath + /settings.nix) {
inherit
@ -10,7 +11,8 @@
lib
;
};
in {
in
{
programs.starship = {
enable = true;
settings = settingsPath;

View file

@ -1,49 +1,50 @@
{flake, ...}: let
inherit
(flake.config.aesthetics.themes.schemes.catppuccin-macchiato)
colours
;
inherit
(flake.config.aesthetics.themes)
{ flake, ... }:
let
inherit (flake.config.aesthetics.themes)
currentTheme
palettes
font
;
in {
font = font;
el = palettes.${currentTheme}.colours;
in
{
font = font.name;
indicator-idle-visible = true;
indicator-radius = 100;
indicator-thickness = 20;
show-failed-attempts = true;
bs-hl-color = colours.red;
color = colours.base;
key-hl-color = colours.mauve;
bs-hl-color = el.base08;
color = el.base01;
key-hl-color = el.base0E;
caps-lock-bs-hl-color = colours.red;
caps-lock-key-hl-color = colours.mauve;
caps-lock-bs-hl-color = el.base08;
caps-lock-key-hl-color = el.base0E;
inside-color = colours.base;
inside-clear-color = colours.base;
inside-caps-lock-color = colours.base;
inside-ver-color = colours.base;
inside-wrong-color = colours.base;
inside-color = el.base01;
inside-clear-color = el.base01;
inside-caps-lock-color = el.base01;
inside-ver-color = el.base01;
inside-wrong-color = el.base01;
line-color = colours.base;
line-clear-color = colours.base;
line-caps-lock-color = colours.base;
line-ver-color = colours.base;
line-wrong-color = colours.base;
line-color = el.base01;
line-clear-color = el.base01;
line-caps-lock-color = el.base01;
line-ver-color = el.base01;
line-wrong-color = el.base01;
ring-color = colours.crust;
ring-clear-color = colours.crust;
ring-caps-lock-color = colours.crust;
ring-ver-color = colours.crust;
ring-wrong-color = colours.crust;
ring-color = el.base00;
ring-clear-color = el.base00;
ring-caps-lock-color = el.base00;
ring-ver-color = el.base00;
ring-wrong-color = el.base00;
separator-color = "00000000";
text-color = colours.text;
text-clear-color = colours.text;
text-caps-lock-color = colours.text;
text-ver-color = colours.text;
text-wrong-color = colours.text;
text-color = el.base05;
text-clear-color = el.base05;
text-caps-lock-color = el.base05;
text-ver-color = el.base05;
text-wrong-color = el.base05;
}

View file

@ -1,11 +1,13 @@
{flake, ...}: let
{ flake, ... }:
let
configPath = ./config;
settingsPath = import (configPath + /settings.nix) {
inherit
flake
;
};
in {
in
{
programs.swaylock = {
enable = true;
settings = settingsPath;

View file

@ -1,26 +0,0 @@
font-size = 12
hint-font = true
background-color = #363a4f
outline-color = #c6a0f6
prompt-color = #8aadf4
input-color = #cdd6f4
default-result-color = #a6adc8
selection-color = #8bd5ca
prompt-text = "Summon: "
width = 400
height = 400
outline-width = 1
border-width = 0
padding-top = 10
padding-bottom = 10
padding-left = 10
padding-right = 10
corner-radius = 10
drun-launch = true

View file

@ -0,0 +1,35 @@
{ flake, ... }:
let
inherit (flake.config.aesthetics.themes)
currentTheme
palettes
;
el = palettes.${currentTheme}.colours;
in
{
font-size = 12;
hint-font = true;
background-color = "#${el.base02}";
outline-color = "#${el.base0E}";
prompt-color = "#${el.base0D}";
input-color = "#${el.base07}";
default-result-color = "#${el.base05}";
selection-color = "#${el.base0C}";
prompt-text = "Summon: ";
width = 400;
height = 400;
outline-width = 1;
border-width = 0;
padding-top = 10;
padding-bottom = 10;
padding-left = 10;
padding-right = 10;
corner-radius = 10;
drun-launch = true;
}

View file

@ -1,12 +1,16 @@
{pkgs, ...}: {
home.packages =
builtins.attrValues
{
inherit
(pkgs)
tofi
;
};
{
pkgs,
flake,
...
}:
let
configPath = ./config;
xdg.configFile = {"tofi/config".source = ./config;};
settingsPath = import (configPath + /settings.nix) { inherit flake; };
in
{
programs.tofi = {
enable = true;
settings = settingsPath;
};
}

View file

@ -3,12 +3,13 @@
pkgs,
flake,
...
}: let
inherit
(flake.config.aesthetics.themes)
}:
let
inherit (flake.config.aesthetics.themes)
font
;
in {
in
{
"git.confirmSync" = false;
"editor.insertSpaces" = false;
"files.autoSave" = "afterDelay";
@ -26,8 +27,8 @@ in {
"elmLS.elmReviewDiagnostics" = "warning";
"editor.wordWrap" = "on";
"editor.fontSize" = 14;
"editor.fontFamily" = "'${font}', 'monospace', monospace";
"editor.fontFamily" = "'${font.name}', 'monospace', monospace";
"terminal.integrated.fontSize" = 14;
"terminal.integrated.fontFamily" = "'${font}', 'monospace', monospace";
"terminal.integrated.fontFamily" = "'${font.name}', 'monospace', monospace";
"editor.fontLigatures" = true;
}

View file

@ -1,33 +1,27 @@
{ flake, ... }:
let
inherit (flake.config.aesthetics.themes.schemes.catppuccin-macchiato)
colours
;
inherit (flake.config.aesthetics.themes)
currentTheme
elements
schemes
palettes
font
;
el = elements;
theme = colour: schemes.${currentTheme}.colours.${colour};
el = palettes.${currentTheme}.colours;
custom = {
font = font;
font = font.name;
font_size = "12px";
font_weight = "bold";
text_color = theme el.keyword;
secondary_accent = theme el.link;
tertiary_accent = theme el.operator;
button_color = theme el.overlay2;
background_1 = colours.base;
background_2 = colours.crust;
background_3 = colours.surface2;
opacityBg = "0.90";
opacityBt = "1";
text_color = el.base0E;
secondary_accent = el.base07;
tertiary_accent = el.base15;
button_color = el.base04;
background_1 = el.base01;
background_2 = el.base00;
background_3 = el.base04;
};
in
''

View file

@ -1,13 +1,14 @@
{flake, ...}: let
inherit
(flake.config.aesthetics.themes)
{ flake, ... }:
let
inherit (flake.config.aesthetics.themes)
font
;
in ''
in
''
return {
color_scheme = "Catppuccin Macchiato",
font_size = 11,
font = wezterm.font('${font}'),
font = wezterm.font('${font.name}'),
enable_tab_bar = false,
window_close_confirmation = 'NeverPrompt',
term = 'wezterm',

View file

@ -1,6 +1,9 @@
[
"catppuccin"
"catppuccin-blur"
"cargo-appraiser"
"cargo-tom"
"markdown-oxide"
"material-dark"
"rose-pine-theme"
"material-theme"

View file

@ -1 +1,25 @@
{}
[
{
context = "Editor";
bindings = {
"ctrl-shift-d" = "editor::DeleteLine";
"ctrl-shift-f" = "editor::Format";
"ctrl-shift-c" = "editor::ToggleComments";
"ctrl-shift-w" = "editor::AddSelectionAbove";
"ctrl-shift-s" = "editor::AddSelectionBelow";
};
}
{
context = "Pane";
bindings = {
"alt-w" = "editor::MoveLineUp";
"alt-s" = "editor::MoveLineDown";
};
}
{
bindings = {
context = "Workspace";
"ctrl-s" = "workspace::SaveAll";
};
}
]

View file

@ -1,9 +1,8 @@
{
enabled = true;
default_model = {
provider = "zed.dev";
model = "claude-3-5-sonnet-latest";
};
version = "2";
# default_open_ai_model = null;
# default_model = {
# provider = "zed.dev";
# model = "claude-3-5-sonnet-latest";
# };
}

View file

@ -1,11 +1,12 @@
{flake, ...}: let
inherit
(flake.config.aesthetics.themes)
{ flake, ... }:
let
inherit (flake.config.aesthetics.themes)
font
;
in {
ui_font_family = font;
buffer_font_family = font;
in
{
ui_font_family = font.name;
buffer_font_family = font.name;
hour_format = "hour12";
vim_mode = false;
show_whitespaces = "none";

View file

@ -1,13 +1,14 @@
{flake, ...}: let
inherit
(flake.config.aesthetics.themes)
{ flake, ... }:
let
inherit (flake.config.aesthetics.themes)
font
;
in {
in
{
alternate_scroll = "off";
blinking = "off";
copy_on_select = true;
dock = "bottom";
dock = "right";
detect_venv = {
on = {
directories = [
@ -24,9 +25,9 @@ in {
TERM = "ghostty";
};
font_family = font;
font_family = font.name;
font_features = null;
font_size = 12;
font_size = 11;
line_height = "comfortable";
option_as_meta = false;
button = false;

View file

@ -0,0 +1,801 @@
{ flake, ... }:
let
inherit (flake.config.aesthetics.themes)
currentTheme
palettes
;
el = palettes.${currentTheme}.colours;
in
{
accents = [
"${el.base0E}66"
"${el.base07}66"
"${el.base16}66"
"${el.base0B}66"
"${el.base0A}66"
"${el.base09}66"
"${el.base08}66"
];
border = {
value = "#${el.base02}";
variant = "#${el.base0E}";
focused = "#${el.base07}";
selected = "#${el.base0E}";
transparent = "#${el.base0B}";
disabled = "#${el.base03}";
};
elevated_surface.background = "#${el.base01}";
surface.background = "#${el.base01}";
background = {
value = "#${el.base00}";
appearance = "opaque";
};
element = {
background = "#${el.base11}";
hover = "#${el.base03}4d";
active = "#${el.base04}4d";
selected = "#${el.base02}4d";
disabled = "#${el.base03}";
};
drop_target.background = "#${el.base02}66";
ghost_element = {
background = "#${el.base11}59";
hover = "#${el.base03}4d";
active = "#${el.base04}99";
selected = "#${el.base05}1a";
disabled = "#${el.base03}";
};
text = {
value = "#${el.base05}";
muted = "#${el.base05}";
placeholder = "#${el.base04}";
disabled = "#${el.base03}";
accent = "#${el.base0E}";
};
icon = {
value = "#${el.base05}";
muted = "#${el.base04}";
disabled = "#${el.base03}";
placeholder = "#${el.base04}";
accent = "#${el.base0E}";
};
status_bar.background = "#${el.base11}";
title_bar = {
background = "#${el.base11}";
inactive_background = "#${el.base11}d9";
};
toolbar.background = "#${el.base00}";
tab_bar.background = "#${el.base11}";
tab = {
inactive_background = "#${el.base11}";
active_background = "#${el.base00}";
};
search.match_background = "#${el.base0C}33";
panel = {
background = "#${el.base01}";
focused_border = "#${el.base05}";
indent_guide = "#${el.base02}99";
indent_guide_active = "#${el.base04}";
indent_guide_hover = "#${el.base0E}";
};
pane.focused_border = "#${el.base05}";
pane_group.border = "#${el.base02}";
scrollbar = {
thumb = {
background = "#${el.base0E}33";
hover_background = "#${el.base03}";
border = "#${el.base0E}";
scrollbar.track.background = null;
};
track.border = "#${el.base05}12";
};
editor = {
foreground = "#${el.base05}";
background = "#${el.base00}";
gutter.background = "#${el.base00}";
subheader.background = "#${el.base01}";
active_line.background = "#${el.base05}0d";
highlighted_line.background = null;
line_number = "#${el.base04}";
active_line_number = "#${el.base0E}";
invisible = "#${el.base05}66";
wrap_guide = "#${el.base04}";
active_wrap_guide = "#${el.base04}";
document_highlight = {
bracket_background = "#${el.base06}40";
read_background = "#${el.base05}29";
write_background = "#${el.base05}29";
};
indent_guide = "#${el.base02}99";
indent_guide_active = "#${el.base04}";
};
terminal = {
background = "#${el.base00}";
ansi.background = "#${el.base00}";
foreground = "#${el.base05}";
dim_foreground = "#${el.base04}";
bright_foreground = "#${el.base05}";
};
link_text.hover = "#${el.base15}";
conflict = {
value = "#${el.base0A}";
border = "#${el.base0A}";
background = "#${el.base01}";
};
created = {
value = "#${el.base0B}";
border = "#${el.base0B}";
background = "#${el.base01}";
};
deleted = {
value = "#${el.base08}";
border = "#${el.base08}";
background = "#${el.base01}";
};
hidden = {
value = "#${el.base03}";
border = "#${el.base03}";
background = "#${el.base01}";
};
hint = {
value = "#${el.base04}";
border = "#${el.base04}";
background = "#${el.base01}";
};
ignored = {
value = "#${el.base03}";
border = "#${el.base03}";
background = "#${el.base01}";
};
modified = {
value = "#${el.base0A}";
border = "#${el.base0A}";
background = "#${el.base01}";
};
predictive = {
value = "#${el.base03}";
border = "#${el.base07}";
background = "#${el.base01}";
};
renamed = {
value = "#${el.base16}";
border = "#${el.base16}";
background = "#${el.base01}";
};
info = {
value = "#${el.base0C}";
border = "#${el.base0C}";
background = "#${el.base05}33";
};
warning = {
value = "#${el.base0A}";
border = "#${el.base0A}";
background = "#${el.base0A}1f";
};
error = {
value = "#${el.base08}";
border = "#${el.base08}";
background = "#${el.base08}1f";
};
success = {
value = "#${el.base0B}";
border = "#${el.base0B}";
background = "#${el.base0B}1f";
};
unreachable = {
value = "#${el.base08}";
border = "#${el.base08}";
background = "#${el.base08}1f";
};
players = [
{
cursor = "#${el.base06}";
selection = "#${el.base04}80";
background = "#${el.base06}";
}
{
cursor = "#${el.base0E}";
selection = "#${el.base0E}33";
background = "#${el.base0E}";
}
{
cursor = "#${el.base07}";
selection = "#${el.base07}33";
background = "#${el.base07}";
}
{
cursor = "#${el.base16}";
selection = "#${el.base16}33";
background = "#${el.base16}";
}
{
cursor = "#${el.base0B}";
selection = "#${el.base0B}33";
background = "#${el.base0B}";
}
{
cursor = "#${el.base0A}";
selection = "#${el.base0A}33";
background = "#${el.base0A}";
}
{
cursor = "#${el.base09}";
selection = "#${el.base09}33";
background = "#${el.base09}";
}
{
cursor = "#${el.base08}";
selection = "#${el.base08}33";
background = "#${el.base08}";
}
];
syntax = {
variable = {
color = "#${el.base05}";
font_style = null;
font_weight = null;
};
variable.builtin = {
color = "#${el.base08}";
font_style = null;
font_weight = null;
};
variable.parameter = {
color = "#${el.base12}";
font_style = null;
font_weight = null;
};
variable.member = {
color = "#${el.base0D}";
font_style = null;
font_weight = null;
};
variable.special = {
color = "#${el.base17}";
font_style = "italic";
font_weight = null;
};
constant = {
color = "#${el.base09}";
font_style = null;
font_weight = null;
};
constant.builtin = {
color = "#${el.base09}";
font_style = null;
font_weight = null;
};
constant.macro = {
color = "#${el.base0E}";
font_style = null;
font_weight = null;
};
module = {
color = "#${el.base0A}";
font_style = "italic";
font_weight = null;
};
label = {
color = "#${el.base16}";
font_style = null;
font_weight = null;
};
string = {
color = "#${el.base0B}";
font_style = null;
font_weight = null;
};
string.documentation = {
color = "#${el.base0C}";
font_style = null;
font_weight = null;
};
string.regexp = {
color = "#${el.base09}";
font_style = null;
font_weight = null;
};
string.escape = {
color = "#${el.base17}";
font_style = null;
font_weight = null;
};
string.special = {
color = "#${el.base17}";
font_style = null;
font_weight = null;
};
string.special.path = {
color = "#${el.base17}";
font_style = null;
font_weight = null;
};
string.special.symbol = {
color = "#${el.base0F}";
font_style = null;
font_weight = null;
};
string.special.url = {
color = "#${el.base06}";
font_style = "italic";
font_weight = null;
};
character = {
color = "#${el.base0C}";
font_style = null;
font_weight = null;
};
character.special = {
color = "#${el.base17}";
font_style = null;
font_weight = null;
};
boolean = {
color = "#${el.base09}";
font_style = null;
font_weight = null;
};
number = {
color = "#${el.base09}";
font_style = null;
font_weight = null;
};
number.float = {
color = "#${el.base09}";
font_style = null;
font_weight = null;
};
type = {
color = "#${el.base0A}";
font_style = null;
font_weight = null;
};
type.builtin = {
color = "#${el.base0E}";
font_style = "italic";
font_weight = null;
};
type.definition = {
color = "#${el.base0A}";
font_style = null;
font_weight = null;
};
type.interface = {
color = "#${el.base0A}";
font_style = "italic";
font_weight = null;
};
type.super = {
color = "#${el.base0A}";
font_style = "italic";
font_weight = null;
};
attribute = {
color = "#${el.base09}";
font_style = null;
font_weight = null;
};
property = {
color = "#${el.base0D}";
font_style = null;
font_weight = null;
};
function = {
color = "#${el.base0D}";
font_style = null;
font_weight = null;
};
function.builtin = {
color = "#${el.base09}";
font_style = null;
font_weight = null;
};
function.call = {
color = "#${el.base0D}";
font_style = null;
font_weight = null;
};
function.macro = {
color = "#${el.base0C}";
font_style = null;
font_weight = null;
};
function.method = {
color = "#${el.base0D}";
font_style = null;
font_weight = null;
};
function.method.call = {
color = "#${el.base0D}";
font_style = null;
font_weight = null;
};
constructor = {
color = "#${el.base0F}";
font_style = null;
font_weight = null;
};
operator = {
color = "#${el.base15}";
font_style = null;
font_weight = null;
};
keyword = {
color = "#${el.base0E}";
font_style = null;
font_weight = null;
};
keyword.modifier = {
color = "#${el.base0E}";
font_style = null;
font_weight = null;
};
keyword.type = {
color = "#${el.base0E}";
font_style = null;
font_weight = null;
};
keyword.coroutine = {
color = "#${el.base0E}";
font_style = null;
font_weight = null;
};
keyword.function = {
color = "#${el.base0E}";
font_style = null;
font_weight = null;
};
keyword.operator = {
color = "#${el.base0E}";
font_style = null;
font_weight = null;
};
keyword.import = {
color = "#${el.base0E}";
font_style = null;
font_weight = null;
};
keyword.repeat = {
color = "#${el.base0E}";
font_style = null;
font_weight = null;
};
keyword.return = {
color = "#${el.base0E}";
font_style = null;
font_weight = null;
};
keyword.debug = {
color = "#${el.base0E}";
font_style = null;
font_weight = null;
};
keyword.exception = {
color = "#${el.base0E}";
font_style = null;
font_weight = null;
};
keyword.conditional = {
color = "#${el.base0E}";
font_style = null;
font_weight = null;
};
keyword.conditional.ternary = {
color = "#${el.base0E}";
font_style = null;
font_weight = null;
};
keyword.directive = {
color = "#${el.base17}";
font_style = null;
font_weight = null;
};
keyword.directive.define = {
color = "#${el.base17}";
font_style = null;
font_weight = null;
};
keyword.export = {
color = "#${el.base15}";
font_style = null;
font_weight = null;
};
punctuation = {
color = "#${el.base05}";
font_style = null;
font_weight = null;
};
punctuation.delimiter = {
color = "#${el.base05}";
font_style = null;
font_weight = null;
};
punctuation.bracket = {
color = "#${el.base05}";
font_style = null;
font_weight = null;
};
punctuation.special = {
color = "#${el.base17}";
font_style = null;
font_weight = null;
};
punctuation.special.symbol = {
color = "#${el.base0F}";
font_style = null;
font_weight = null;
};
punctuation.list_marker = {
color = "#${el.base0C}";
font_style = null;
font_weight = null;
};
comment = {
color = "#${el.base05}";
font_style = "italic";
font_weight = null;
};
comment.doc = {
color = "#${el.base05}";
font_style = "italic";
font_weight = null;
};
comment.documentation = {
color = "#${el.base05}";
font_style = "italic";
font_weight = null;
};
comment.error = {
color = "#${el.base08}";
font_style = "italic";
font_weight = null;
};
comment.warning = {
color = "#${el.base0A}";
font_style = "italic";
font_weight = null;
};
comment.hint = {
color = "#${el.base0D}";
font_style = "italic";
font_weight = null;
};
comment.todo = {
color = "#${el.base0F}";
font_style = "italic";
font_weight = null;
};
comment.note = {
color = "#${el.base06}";
font_style = "italic";
font_weight = null;
};
diff.plus = {
color = "#${el.base0B}";
font_style = null;
font_weight = null;
};
diff.minus = {
color = "#${el.base08}";
font_style = null;
font_weight = null;
};
tag = {
color = "#${el.base0D}";
font_style = null;
font_weight = null;
};
tag.attribute = {
color = "#${el.base0A}";
font_style = "italic";
font_weight = null;
};
tag.delimiter = {
color = "#${el.base0C}";
font_style = null;
font_weight = null;
};
parameter = {
color = "#${el.base12}";
font_style = null;
font_weight = null;
};
field = {
color = "#${el.base07}";
font_style = null;
font_weight = null;
};
namespace = {
color = "#${el.base0A}";
font_style = "italic";
font_weight = null;
};
float = {
color = "#${el.base09}";
font_style = null;
font_weight = null;
};
symbol = {
color = "#${el.base17}";
font_style = null;
font_weight = null;
};
string.regex = {
color = "#${el.base09}";
font_style = null;
font_weight = null;
};
text = {
color = "#${el.base05}";
font_style = null;
font_weight = null;
};
emphasis.strong = {
color = "#${el.base12}";
font_style = null;
font_weight = 700;
};
emphasis = {
color = "#${el.base12}";
font_style = "italic";
font_weight = null;
};
embedded = {
color = "#${el.base12}";
font_style = null;
font_weight = null;
};
text.literal = {
color = "#${el.base0B}";
font_style = null;
font_weight = null;
};
concept = {
color = "#${el.base16}";
font_style = null;
font_weight = null;
};
enum = {
color = "#${el.base0C}";
font_style = null;
font_weight = 700;
};
function.decorator = {
color = "#${el.base09}";
font_style = null;
font_weight = null;
};
type.class.definition = {
color = "#${el.base0A}";
font_style = null;
font_weight = 700;
};
hint = {
color = "#${el.base04}";
font_style = "italic";
font_weight = null;
};
link_text = {
color = "#${el.base0D}";
font_style = null;
font_weight = null;
};
link_uri = {
color = "#${el.base06}";
font_style = "italic";
font_weight = null;
};
parent = {
color = "#${el.base09}";
font_style = null;
font_weight = null;
};
predictive = {
color = "#${el.base03}";
font_style = null;
font_weight = null;
};
predoc = {
color = "#${el.base08}";
font_style = null;
font_weight = null;
};
primary = {
color = "#${el.base12}";
font_style = null;
font_weight = null;
};
tag.doctype = {
color = "#${el.base0E}";
font_style = null;
font_weight = null;
};
string.doc = {
color = "#${el.base0C}";
font_style = "italic";
font_weight = null;
};
title = {
color = "#${el.base05}";
font_style = null;
font_weight = 800;
};
variant = {
color = "#${el.base08}";
font_style = null;
font_weight = null;
};
};
}

View file

@ -3,7 +3,8 @@
lib,
pkgs,
...
}: let
}:
let
configPath = ./config;
assistantPath = import (configPath + /assistant);
@ -19,23 +20,34 @@
flake
;
};
experimentalPath = import (configPath + /theme) {
inherit
flake
;
};
gitPath = import (configPath + /git);
in
{
assistant = assistantPath;
git = gitPath;
languages = languagesPath;
lsp = lspPath;
terminal = terminalPath;
{
assistant = assistantPath;
git = gitPath;
languages = languagesPath;
lsp = lspPath;
terminal = terminalPath;
experimental.theme_overrides = experimentalPath;
node = {
path = lib.getExe pkgs.nodejs;
npm_path = lib.getExe' pkgs.nodejs "npm";
};
auto_update = false;
autosave_after_delay = 20;
load_direnv = "shell_hook";
base_keymap = "VSCode";
restore_on_startup = "last_session";
}
// interfacePath
node = {
path = lib.getExe pkgs.nodejs;
npm_path = lib.getExe' pkgs.nodejs "npm";
};
soft_wrap = "editor_width";
auto_update = false;
autosave = "on_focus_change";
load_direnv = "shell_hook";
base_keymap = "VSCode";
restore_on_startup = "last_session";
show_wrap_guides = true;
}
// interfacePath

View file

@ -3,7 +3,8 @@
lib,
pkgs,
...
}: let
}:
let
configPath = ./config;
extensionsPath = import (configPath + /extensions);
userKeymapsPath = import (configPath + /userKeymaps);
@ -20,14 +21,14 @@
;
};
in
# packagePath = flake.inputs.zed.packages.${pkgs.system}.default;
{
programs.zed-editor = {
enable = true;
# package = packagePath;
extraPackages = extraPackagesPath;
extensions = extensionsPath;
userKeymaps = userKeymapsPath;
userSettings = userSettingsPath;
};
}
# packagePath = flake.inputs.zed-editor.packages.${pkgs.system}.default;
{
programs.zed-editor = {
enable = true;
# package = packagePath;
extraPackages = extraPackagesPath;
extensions = extensionsPath;
userKeymaps = userKeymapsPath;
userSettings = userSettingsPath;
};
}