diff --git a/base-system/dotfiles/helix/config.nix b/base-system/dotfiles/helix/config.nix new file mode 100644 index 0000000..800b65b --- /dev/null +++ b/base-system/dotfiles/helix/config.nix @@ -0,0 +1,26 @@ +{ + theme = "rosepine"; + + editor = { + line-number = "relative"; + cursorline = true; + auto-format = true; + soft-wrap.enable = true; + + whitespace.render = "all"; + + cursor-shape = { + insert = "bar"; + normal = "block"; + select = "underline"; + }; + + }; + + keys.normal = { + h = "move_char_left"; + t = "move_line_up"; + n = "move_line_down"; + s = "move_char_right"; + }; +} diff --git a/base-system/dotfiles/helix/config.toml b/base-system/dotfiles/helix/config.toml deleted file mode 100644 index 9c0ed4f..0000000 --- a/base-system/dotfiles/helix/config.toml +++ /dev/null @@ -1,23 +0,0 @@ -theme = "rosepine" - -[editor] -line-number = "relative" -cursorline = true -auto-format = true - -[editor.cursor-shape] -insert = "bar" -normal = "block" -select = "underline" - -[editor.whitespace] -render = "all" - -[editor.soft-wrap] -enable = true - -[keys.normal] -h = "move_char_left" -t = "move_line_up" -n = "move_line_down" -s = "move_char_right" diff --git a/base-system/dotfiles/helix/rosepine.nix b/base-system/dotfiles/helix/rosepine.nix new file mode 100644 index 0000000..83dcfe6 --- /dev/null +++ b/base-system/dotfiles/helix/rosepine.nix @@ -0,0 +1,194 @@ +# Author: Rosé Pine +# Upstream: https://github.com/rose-pine/helix +# Contributing: +# Please submit changes to https://github.com/rose-pine/helix. +# The Rosé Pine team will update Helix, including you as a co-author. +{ + rosepine = let + base = "#191724"; + surface = "#1f1d2e"; + overlay = "#26233a"; + muted = "#6e6a86"; + subtle = "#908caa"; + text = "#e0def4"; + love = "#eb6f92"; + love_10 = "#311f30"; + gold = "#f6c177"; + gold_10 = "#30282c"; + rose = "#ebbcba"; + rose_10 = "#2f2834"; + pine = "#31748f"; + pine_10 = "#1a2030"; + foam = "#9ccfd8"; + foam_10 = "#252937"; + iris = "#c4a7e7"; + iris_10 = "#2b2539"; + highlight_low = "#21202e"; + highlight_med = "#403d52"; + highlight_high = "#524f67"; + in { + + "ui.background" = { bg = base; }; + "ui.background.separator" = { bg = base; }; + + "ui.cursor" = { fg = text; bg = highlight_high; }; + # "ui.cursor.select" = {}; + "ui.cursor.match" = { fg = text; bg = highlight_med; }; + "ui.cursor.primary" = { fg = text; bg = muted; }; + + # "ui.gutter" = {}; + # "ui.gutter.selected" = {}; + + "ui.linenr" = { fg = muted; }; + "ui.linenr.selected" = { fg = text; }; + + "ui.statusline" = { fg = subtle; bg = surface; }; + "ui.statusline.inactive" = { fg = muted; bg = surface; }; + "ui.statusline.normal" = { fg = rose; bg = rose_10; }; + "ui.statusline.insert" = { fg = foam; bg = foam_10; }; + "ui.statusline.select" = { fg = iris; bg = iris_10; }; + # "ui.statusline.separator" = {}; + + "ui.popup" = { bg = surface; }; + "ui.popup.info" = { bg = surface; }; + + "ui.window" = { fg = overlay; bg = base; }; + "ui.help" = { fg = subtle; bg = overlay; }; + + "ui.text" = { fg = text; }; + "ui.text.focus" = { bg = overlay; }; + "ui.text.info" = { fg = subtle; }; + + "ui.virtual.ruler" = { bg = overlay; }; + "ui.virtual.whitespace" = { fg = highlight_high; }; + "ui.virtual.indent-guide" = { fg = muted; }; + "ui.virtual.inlay-hint" = { fg = subtle; }; + + "ui.menu" = { fg = subtle; bg = surface; }; + "ui.menu.selected" = { fg = text; }; + "ui.menu.scroll" = { fg = muted; bg = highlight_med; }; + + "ui.selection" = { bg = overlay; }; + "ui.selection.primary" = { bg = highlight_med; }; + + "ui.cursorline.primary" = { bg = highlight_low; }; + "ui.cursorline.secondary" = { bg = surface; }; + + "warning" = gold; + "error" = love; + "info" = foam; + "hint" = iris; + "debug" = rose; + + "diagnostic" = { underline = { color = subtle; style = curl; }; }; + "diagnostic.hint" = { underline = { color = iris; style = curl; }; }; + "diagnostic.info" = { underline = { color = foam; style = curl; }; }; + "diagnostic.warning" = { underline = { color = gold; style = curl; }; }; + "diagnostic.error" = { underline = { color = love; style = curl; }; }; + "special" = rose; + + "attribute" = "iris"; + + "type" = foam; + # "type.builtin" = ""; + + "constructor" = foam; + + "constant" = foam; + "constant.builtin" = rose; + # "constant.builtin.boolean" = ""; + "constant.character" = gold; + "constant.character.escape" = pine; + "constant.numeric" = gold; + # "constant.numeric.integer" = ""; + # "constant.numeric.float" = ""; + + "string" = gold; + # "string.regexp" = ""; + # "string.special" = ""; + # "string.special.path" = ""; + # "string.special.url" = ""; + # "string.special.symbol" = ""; + + "comment" = { fg = muted; modifiers = ["italic"];}; + # "comment.line" = ""; + # "comment.block" = ""; + # "comment.block.documenation" = ""; + + "variable" = text; + "variable.builtin" = love; + "variable.parameter" = iris; + # "variable.other" = ""; + # "variable.other.member" = ""; + + "label" = foam; + + "punctuation" = subtle; + # "punctuation.delimiter" = ""; + # "punctuation.bracket" = ""; + # "punctuation.special" = ""; + + "keyword" = pine; + # "keyword.control" = ""; + # "keyword.control.conditional" = ""; + # "keyword.control.repeat" = ""; + # "keyword.control.import" = ""; + # "keyword.control.return" = ""; + # "keyword.control.exception" = ""; + "keyword.operator" = subtle; + # "keyword.directive" = ""; + # "keyword.function" = ""; + # "keyword.storage" = ""; + # "keyword.storage.type" = ""; + # "keyword.storage.modifier" = ""; + + "operator" = subtle; + + "function" = rose # maybe pine; + "function.builtin" = love; + # "function.method" = ""; + # "function.macro" = ""; + # "function.special" = ""; + + "tag" = foam; + + "namespace" = iris; + + "markup.heading.marker" = muted; + "markup.heading" = { fg = iris; modifiers = ["bold"]; }; + "markup.heading.1" = { fg = "iris"; modifiers = ["bold"]; }; + "markup.heading.2" = { fg = foam; modifiers = ["bold"]; }; + "markup.heading.3" = { fg = rose; modifiers = ["bold"]; }; + "markup.heading.4" = { fg = gold; modifiers = ["bold"]; }; + "markup.heading.5" = { fg = pine; modifiers = ["bold"]; }; + "markup.heading.6" = { fg = foam; modifiers = ["bold"]; }; + # "markup.heading.completion" = ""; + # "markup.heading.hover" = ""; + "markup.list" = muted; + # "markup.list.unnumbered" = ""; + # "markup.list.numbered" = ""; + "markup.bold" = { modifiers = ["bold"]; }; + "markup.italic" = { modifiers = ["italic"]; }; + "markup.link" = iris; + "markup.link.url" = { fg = iris, underline = { color = iris, style = "line" }; } ; + "markup.link.label" = subtle; + "markup.link.text" = text; + "markup.quote" = subtle; + "markup.raw" = subtle; + # "markup.raw.inline" = {}; + # "markup.raw.inline.completion" = {}; + # "markup.raw.inline.hover" = {}; + # "markup.raw.block" = {}; + # "markup.normal" = ""; + # "markup.normal.completion" = ""; + # "markup.normal.hover" = ""; + + "diff" = overlay; + "diff.plus" = foam; + "diff.minus" = love; + "diff.delta" = highlight_high; + # "diff.delta.moved" = ""; + + } + +} diff --git a/base-system/dotfiles/helix/themes/rosepine.toml b/base-system/dotfiles/helix/themes/rosepine.toml deleted file mode 100644 index dec7c3f..0000000 --- a/base-system/dotfiles/helix/themes/rosepine.toml +++ /dev/null @@ -1,189 +0,0 @@ -# Author: Rosé Pine -# Upstream: https://github.com/rose-pine/helix -# Contributing: -# Please submit changes to https://github.com/rose-pine/helix. -# The Rosé Pine team will update Helix, including you as a co-author. - -"ui.background" = { bg = "base" } -"ui.background.separator" = { bg = "base" } - -"ui.cursor" = { fg = "text", bg = "highlight_high" } -# "ui.cursor.select" = {} -"ui.cursor.match" = { fg = "text", bg = "highlight_med" } -"ui.cursor.primary" = { fg = "text", bg = "muted"} - -# "ui.gutter" = {} -# "ui.gutter.selected" = {} - -"ui.linenr" = { fg = "muted" } -"ui.linenr.selected" = { fg = "text" } - -"ui.statusline" = { fg = "subtle", bg = "surface" } -"ui.statusline.inactive" = { fg = "muted", bg = "surface" } -"ui.statusline.normal" = { fg = "rose", bg = "rose_10" } -"ui.statusline.insert" = { fg = "foam", bg = "foam_10" } -"ui.statusline.select" = { fg = "iris", bg = "iris_10" } -# "ui.statusline.separator" = {} - -"ui.popup" = { bg = "surface" } -"ui.popup.info" = { bg = "surface" } - -"ui.window" = { fg = "overlay", bg = "base" } -"ui.help" = { fg = "subtle", bg = "overlay" } - -"ui.text" = { fg = "text" } -"ui.text.focus" = { bg = "overlay" } -"ui.text.info" = { fg = "subtle" } - -"ui.virtual.ruler" = { bg = "overlay" } -"ui.virtual.whitespace" = { fg = "highlight_high" } -"ui.virtual.indent-guide" = { fg = "muted" } -"ui.virtual.inlay-hint" = { fg = "subtle" } - -"ui.menu" = { fg = "subtle", bg = "surface" } -"ui.menu.selected" = { fg = "text" } -"ui.menu.scroll" = { fg = "muted", bg = "highlight_med" } - -"ui.selection" = { bg = "overlay" } -"ui.selection.primary" = { bg = "highlight_med" } - -"ui.cursorline.primary" = { bg = "highlight_low" } -"ui.cursorline.secondary" = { bg = "surface" } - -"warning" = "gold" -"error" = "love" -"info" = "foam" -"hint" = "iris" -"debug" = "rose" - -"diagnostic" = { underline = { color = "subtle", style = "curl" } } -"diagnostic.hint" = { underline = { color = "iris", style = "curl" } } -"diagnostic.info" = { underline = { color = "foam", style = "curl" } } -"diagnostic.warning" = { underline = { color = "gold", style = "curl" } } -"diagnostic.error" = { underline = { color = "love", style = "curl" } } -"special" = "rose" - -"attribute" = "iris" - -"type" = "foam" -# "type.builtin" = "" - -"constructor" = "foam" - -"constant" = "foam" -"constant.builtin" = "rose" -# "constant.builtin.boolean" = "" -"constant.character" = "gold" -"constant.character.escape" = "pine" -"constant.numeric" = "gold" -# "constant.numeric.integer" = "" -# "constant.numeric.float" = "" - -"string" = "gold" -# "string.regexp" = "" -# "string.special" = "" -# "string.special.path" = "" -# "string.special.url" = "" -# "string.special.symbol" = "" - -"comment" = { fg = "muted", modifiers = ["italic"]} -# "comment.line" = "" -# "comment.block" = "" -# "comment.block.documenation" = "" - -"variable" = "text" -"variable.builtin" = "love" -"variable.parameter" = "iris" -# "variable.other" = "" -# "variable.other.member" = "" - -"label" = "foam" - -"punctuation" = "subtle" -# "punctuation.delimiter" = "" -# "punctuation.bracket" = "" -# "punctuation.special" = "" - -"keyword" = "pine" -# "keyword.control" = "" -# "keyword.control.conditional" = "" -# "keyword.control.repeat" = "" -# "keyword.control.import" = "" -# "keyword.control.return" = "" -# "keyword.control.exception" = "" -"keyword.operator" = "subtle" -# "keyword.directive" = "" -# "keyword.function" = "" -# "keyword.storage" = "" -# "keyword.storage.type" = "" -# "keyword.storage.modifier" = "" - -"operator" = "subtle" - -"function" = "rose" # maybe pine -"function.builtin" = "love" -# "function.method" = "" -# "function.macro" = "" -# "function.special" = "" - -"tag" = "foam" - -"namespace" = "iris" - -"markup.heading.marker" = "muted" -"markup.heading" = { fg = "iris", modifiers = ["bold"] } -"markup.heading.1" = { fg = "iris", modifiers = ["bold"] } -"markup.heading.2" = { fg = "foam", modifiers = ["bold"] } -"markup.heading.3" = { fg = "rose", modifiers = ["bold"] } -"markup.heading.4" = { fg = "gold", modifiers = ["bold"] } -"markup.heading.5" = { fg = "pine", modifiers = ["bold"] } -"markup.heading.6" = { fg = "foam", modifiers = ["bold"] } -# "markup.heading.completion" = "" -# "markup.heading.hover" = "" -"markup.list" = "muted" -# "markup.list.unnumbered" = "" -# "markup.list.numbered" = "" -"markup.bold" = { modifiers = ["bold"] } -"markup.italic" = { modifiers = ["italic"] } -"markup.link" = "iris" -"markup.link.url" = { fg = "iris", underline = { color = "iris", style = "line" } } -"markup.link.label" = "subtle" -"markup.link.text" = "text" -"markup.quote" = "subtle" -"markup.raw" = "subtle" -# "markup.raw.inline" = {} -# "markup.raw.inline.completion" = {} -# "markup.raw.inline.hover" = {} -# "markup.raw.block" = {} -# "markup.normal" = "" -# "markup.normal.completion" = "" -# "markup.normal.hover" = "" - -"diff" = "overlay" -"diff.plus" = "foam" -"diff.minus" = "love" -"diff.delta" = "highlight_high" -# "diff.delta.moved" = "" - -[palette] -base = "#191724" -surface = "#1f1d2e" -overlay = "#26233a" -muted = "#6e6a86" -subtle = "#908caa" -text = "#e0def4" -love = "#eb6f92" -love_10 = "#311f30" -gold = "#f6c177" -gold_10 = "#30282c" -rose = "#ebbcba" -rose_10 = "#2f2834" -pine = "#31748f" -pine_10 = "#1a2030" -foam = "#9ccfd8" -foam_10 = "#252937" -iris = "#c4a7e7" -iris_10 = "#2b2539" -highlight_low = "#21202e" -highlight_med = "#403d52" -highlight_high = "#524f67" diff --git a/base-system/home.nix b/base-system/home.nix index ab04bdd..213b098 100644 --- a/base-system/home.nix +++ b/base-system/home.nix @@ -19,7 +19,8 @@ helix = { enable = true; defaultEditor = true; - settings = import ./dotfiles/helix/config.toml; + settings = import ./dotfiles/helix/config.nix; + themes = import ./dotfiles/helix/rosepine.nix; }; };