chore: reformat codebase

This commit is contained in:
Gabriel Arazas 2024-02-25 18:20:13 +08:00
parent 947f1da754
commit 15a43cd1e5
No known key found for this signature in database
GPG Key ID: ADE0C41DAB221FCC
15 changed files with 458 additions and 417 deletions

View File

@ -83,6 +83,6 @@
bark-on-a-tree = bark-on-a-tree =
bahaghariLib.importYAML ./files/tinted-theming/base16/bark-on-a-tree.yaml; bahaghariLib.importYAML ./files/tinted-theming/base16/bark-on-a-tree.yaml;
albino-bark-on-a-tree = albino-bark-on-a-tree =
bahaghariLib.importYAML ./files/tinted-theming/base16/albino-bark-on-a-tree.yaml; bahaghariLib.importYAML ./files/tinted-theming/base16/albino-bark-on-a-tree.yaml;
}; };
} }

View File

@ -24,339 +24,341 @@ in
local hsluv = lush.hsluv local hsluv = lush.hsluv
''; '';
themes = themes =
lib.mapAttrs (name: metadata: { lib.mapAttrs
extraConfigLua = '' (name: metadata: {
${lib.foldlAttrs initLushBase16 "" metadata.palette} extraConfigLua = ''
${lib.foldlAttrs initLushBase16 "" metadata.palette}
-- Set the background. -- Set the background.
vim.o.background = '${metadata.variant}' vim.o.background = '${metadata.variant}'
vim.g.terminal_color_0 = base00.hex vim.g.terminal_color_0 = base00.hex
vim.g.terminal_color_1 = base08.hex vim.g.terminal_color_1 = base08.hex
vim.g.terminal_color_2 = base0B.hex vim.g.terminal_color_2 = base0B.hex
vim.g.terminal_color_3 = base0A.hex vim.g.terminal_color_3 = base0A.hex
vim.g.terminal_color_4 = base0D.hex vim.g.terminal_color_4 = base0D.hex
vim.g.terminal_color_5 = base0E.hex vim.g.terminal_color_5 = base0E.hex
vim.g.terminal_color_6 = base0C.hex vim.g.terminal_color_6 = base0C.hex
vim.g.terminal_color_7 = base05.hex vim.g.terminal_color_7 = base05.hex
vim.g.terminal_color_8 = base03.hex vim.g.terminal_color_8 = base03.hex
vim.g.terminal_color_9 = base08.hex vim.g.terminal_color_9 = base08.hex
vim.g.terminal_color_10 = base0B.hex vim.g.terminal_color_10 = base0B.hex
vim.g.terminal_color_11 = base0A.hex vim.g.terminal_color_11 = base0A.hex
vim.g.terminal_color_12 = base0D.hex vim.g.terminal_color_12 = base0D.hex
vim.g.terminal_color_13 = base0E.hex vim.g.terminal_color_13 = base0E.hex
vim.g.terminal_color_14 = base0C.hex vim.g.terminal_color_14 = base0C.hex
vim.g.terminal_color_15 = base07.hex vim.g.terminal_color_15 = base07.hex
vim.g.terminal_color_background = base00.hex vim.g.terminal_color_background = base00.hex
vim.g.terminal_color_foreground = base0E.hex vim.g.terminal_color_foreground = base0E.hex
''; '';
highlights = lib.mkMerge [ highlights = lib.mkMerge [
rec { rec {
Normal = { fg = mkRaw "base05"; bg = mkRaw "base00"; }; Normal = { fg = mkRaw "base05"; bg = mkRaw "base00"; };
NormalFloat = { NormalFloat = {
fg = mkRaw "Normal.fg.saturate(15).lighten(5)"; fg = mkRaw "Normal.fg.saturate(15).lighten(5)";
bg = mkRaw "Normal.bg.saturate(15).lighten(5)"; bg = mkRaw "Normal.bg.saturate(15).lighten(5)";
}; };
Bold.gui = "bold"; Bold.gui = "bold";
Debug.fg = mkRaw "base08"; Debug.fg = mkRaw "base08";
Directory.fg = mkRaw "base0D"; Directory.fg = mkRaw "base0D";
Error = { fg = mkRaw "base01"; bg = mkRaw "base08"; }; Error = { fg = mkRaw "base01"; bg = mkRaw "base08"; };
ErrorMsg.fg = mkRaw "base08"; ErrorMsg.fg = mkRaw "base08";
Exception.fg = mkRaw "base08"; Exception.fg = mkRaw "base08";
FoldColumn.fg = mkRaw "base03"; FoldColumn.fg = mkRaw "base03";
Folded = { Folded = {
fg = mkRaw "base03"; fg = mkRaw "base03";
bg = mkRaw "base01"; bg = mkRaw "base01";
}; };
Italic.gui = "italic"; Italic.gui = "italic";
Macro.fg = mkRaw "base08"; Macro.fg = mkRaw "base08";
ModeMsg.fg = mkRaw "base0B"; ModeMsg.fg = mkRaw "base0B";
MoreMsg.fg = mkRaw "base0B"; MoreMsg.fg = mkRaw "base0B";
Question.fg = mkRaw "base0D"; Question.fg = mkRaw "base0D";
Search = { Search = {
fg = mkRaw "base00"; fg = mkRaw "base00";
bg = mkRaw "base04"; bg = mkRaw "base04";
}; };
IncSearch = { IncSearch = {
fg = mkRaw "base00"; fg = mkRaw "base00";
bg = mkRaw "base09"; bg = mkRaw "base09";
}; };
Substitute = { Substitute = {
fg = mkRaw "base01"; fg = mkRaw "base01";
bg = mkRaw "base0A"; bg = mkRaw "base0A";
}; };
TooLong.fg = mkRaw "base08"; TooLong.fg = mkRaw "base08";
Underlined = { fg = mkRaw "base08"; }; Underlined = { fg = mkRaw "base08"; };
WarningMsg = { fg = mkRaw "base08"; }; WarningMsg = { fg = mkRaw "base08"; };
WildMenu = { fg = mkRaw "base08"; bg = mkRaw "base0A"; }; WildMenu = { fg = mkRaw "base08"; bg = mkRaw "base0A"; };
Title.fg = mkRaw "base0D"; Title.fg = mkRaw "base0D";
Conceal.fg = mkRaw "base0D"; Conceal.fg = mkRaw "base0D";
Cursor = { fg = mkRaw "base00"; bg = mkRaw "base05"; }; Cursor = { fg = mkRaw "base00"; bg = mkRaw "base05"; };
NonText = { fg = mkRaw "base03"; }; NonText = { fg = mkRaw "base03"; };
LineNr = { fg = mkRaw "base02.lighten(25)"; bg = mkRaw "base00"; }; LineNr = { fg = mkRaw "base02.lighten(25)"; bg = mkRaw "base00"; };
LineNrNC = { fg = mkRaw "base02.lighten(25)"; bg = mkRaw "base01"; }; LineNrNC = { fg = mkRaw "base02.lighten(25)"; bg = mkRaw "base01"; };
SignColumn = { fg = mkRaw "base01.lighten(40)"; }; SignColumn = { fg = mkRaw "base01.lighten(40)"; };
StatusLine = { fg = mkRaw "base02"; bg = mkRaw "base01.darken(60)"; }; StatusLine = { fg = mkRaw "base02"; bg = mkRaw "base01.darken(60)"; };
StatusLineNC = { fg = mkRaw "base02"; bg = mkRaw "base01.darken(30)"; }; StatusLineNC = { fg = mkRaw "base02"; bg = mkRaw "base01.darken(30)"; };
VertSplit = { fg = mkRaw "base02"; bg = mkRaw "base00"; }; VertSplit = { fg = mkRaw "base02"; bg = mkRaw "base00"; };
ColorColumn = { fg = mkRaw "base01.lighten(25)"; bg = mkRaw "base01.darken(25)"; }; ColorColumn = { fg = mkRaw "base01.lighten(25)"; bg = mkRaw "base01.darken(25)"; };
CursorLine = { bg = mkRaw "base01.saturate(-5).darken(15)"; }; CursorLine = { bg = mkRaw "base01.saturate(-5).darken(15)"; };
CursorColumn = CursorLine; CursorColumn = CursorLine;
CursorLineNr.fg = mkRaw "base0A"; CursorLineNr.fg = mkRaw "base0A";
Visual = { Visual = {
fg = mkRaw "base03.lighten(15)"; fg = mkRaw "base03.lighten(15)";
bg = mkRaw "CursorColumn.bg.darken(15)"; bg = mkRaw "CursorColumn.bg.darken(15)";
}; };
VisualNOS = { fg = mkRaw "base08"; }; VisualNOS = { fg = mkRaw "base08"; };
QuickFixLine = { bg = mkRaw "base00"; }; QuickFixLine = { bg = mkRaw "base00"; };
QFFileName = { fg = mkRaw "base0A"; }; QFFileName = { fg = mkRaw "base0A"; };
QFLineNr = { fg = mkRaw "base04"; }; QFLineNr = { fg = mkRaw "base04"; };
PMenu = { fg = mkRaw "base05"; bg = mkRaw "base01"; }; PMenu = { fg = mkRaw "base05"; bg = mkRaw "base01"; };
PMenuSel = { fg = mkRaw "base01"; bg = mkRaw "base05"; }; PMenuSel = { fg = mkRaw "base01"; bg = mkRaw "base05"; };
TabLineSel = { fg = mkRaw "base00"; bg = mkRaw "base0A"; }; TabLineSel = { fg = mkRaw "base00"; bg = mkRaw "base0A"; };
TabLine = { fg = mkRaw "base03"; bg = mkRaw "base00.darken(15)"; }; TabLine = { fg = mkRaw "base03"; bg = mkRaw "base00.darken(15)"; };
TabLineFill = { fg = mkRaw "base03"; bg = mkRaw "base00.darken(25)"; }; TabLineFill = { fg = mkRaw "base03"; bg = mkRaw "base00.darken(25)"; };
EndOfBuffer = { fg = mkRaw "base01.lighten(20)"; bg = mkRaw "base01.darken(20)"; }; EndOfBuffer = { fg = mkRaw "base01.lighten(20)"; bg = mkRaw "base01.darken(20)"; };
# Standard syntax highlighting # Standard syntax highlighting
Boolean = { fg = mkRaw "base09"; }; Boolean = { fg = mkRaw "base09"; };
Character = { fg = mkRaw "base08"; }; Character = { fg = mkRaw "base08"; };
Comment = { fg = mkRaw "base03"; gui = "italic"; }; Comment = { fg = mkRaw "base03"; gui = "italic"; };
Conditional = { fg = mkRaw "base0E"; }; Conditional = { fg = mkRaw "base0E"; };
Constant = { fg = mkRaw "base09"; }; Constant = { fg = mkRaw "base09"; };
Define = { fg = mkRaw "base0E"; }; Define = { fg = mkRaw "base0E"; };
Delimiter = { fg = mkRaw "base0F.lighten(10)"; }; Delimiter = { fg = mkRaw "base0F.lighten(10)"; };
Float = { fg = mkRaw "base09"; }; Float = { fg = mkRaw "base09"; };
Function = { fg = mkRaw "base0D"; }; Function = { fg = mkRaw "base0D"; };
Identifier = { fg = mkRaw "base0A"; }; Identifier = { fg = mkRaw "base0A"; };
Include = { fg = mkRaw "base0D"; }; Include = { fg = mkRaw "base0D"; };
Keyword = { fg = mkRaw "base0E"; }; Keyword = { fg = mkRaw "base0E"; };
Label = { fg = mkRaw "base0A"; }; Label = { fg = mkRaw "base0A"; };
Number = { fg = mkRaw "base03"; }; Number = { fg = mkRaw "base03"; };
Operator = { fg = mkRaw "base03"; }; Operator = { fg = mkRaw "base03"; };
PreProc = { fg = mkRaw "base0A"; }; PreProc = { fg = mkRaw "base0A"; };
Repeat = { fg = mkRaw "base0A"; }; Repeat = { fg = mkRaw "base0A"; };
Special = { fg = mkRaw "base0C"; }; Special = { fg = mkRaw "base0C"; };
SpecialChar = { fg = mkRaw "base0F.lighten(15).saturate(10)"; }; SpecialChar = { fg = mkRaw "base0F.lighten(15).saturate(10)"; };
Statement = { fg = mkRaw "base08"; }; Statement = { fg = mkRaw "base08"; };
StorageClass = { fg = mkRaw "base0A"; }; StorageClass = { fg = mkRaw "base0A"; };
String = { fg = mkRaw "base0B"; }; String = { fg = mkRaw "base0B"; };
Structure = { fg = mkRaw "base0E"; }; Structure = { fg = mkRaw "base0E"; };
Tag = { fg = mkRaw "base0A"; }; Tag = { fg = mkRaw "base0A"; };
Todo = { fg = mkRaw "base0A"; bg = mkRaw "base01"; }; Todo = { fg = mkRaw "base0A"; bg = mkRaw "base01"; };
Type = { fg = mkRaw "base0A"; }; Type = { fg = mkRaw "base0A"; };
Typedef = { fg = mkRaw "base0A"; }; Typedef = { fg = mkRaw "base0A"; };
# Help # Help
HelpDoc = { fg = mkRaw "base05"; bg = mkRaw "base0D"; gui = "bold;italic"; }; HelpDoc = { fg = mkRaw "base05"; bg = mkRaw "base0D"; gui = "bold;italic"; };
HelpIgnore = { fg = mkRaw "base0B"; gui = "bold;italic"; }; HelpIgnore = { fg = mkRaw "base0B"; gui = "bold;italic"; };
# C highlighting # C highlighting
cOperator = { fg = mkRaw "base0C"; }; cOperator = { fg = mkRaw "base0C"; };
cPreCondit = { fg = mkRaw "base0E"; }; cPreCondit = { fg = mkRaw "base0E"; };
# C# highlighting # C# highlighting
csClass = { fg = mkRaw "base0A"; }; csClass = { fg = mkRaw "base0A"; };
csAttribute = { fg = mkRaw "base0A"; }; csAttribute = { fg = mkRaw "base0A"; };
csModifier = { fg = mkRaw "base0E"; }; csModifier = { fg = mkRaw "base0E"; };
csType = { fg = mkRaw "base08"; }; csType = { fg = mkRaw "base08"; };
csUnspecifiedStatement = { fg = mkRaw "base0D"; }; csUnspecifiedStatement = { fg = mkRaw "base0D"; };
csContextualStatement = { fg = mkRaw "base0E"; }; csContextualStatement = { fg = mkRaw "base0E"; };
csNewDecleration = { fg = mkRaw "base08"; }; csNewDecleration = { fg = mkRaw "base08"; };
# CSS highlighting # CSS highlighting
cssBraces = { fg = mkRaw "base05"; }; cssBraces = { fg = mkRaw "base05"; };
cssClassName = { fg = mkRaw "base0E"; }; cssClassName = { fg = mkRaw "base0E"; };
cssColor = { fg = mkRaw "base0C"; }; cssColor = { fg = mkRaw "base0C"; };
# Diff highlighting # Diff highlighting
DiffAdd = { fg = mkRaw "base0B"; bg = mkRaw "base0B.darken(80)"; }; DiffAdd = { fg = mkRaw "base0B"; bg = mkRaw "base0B.darken(80)"; };
DiffAdded = { fg = mkRaw "base0B"; bg = mkRaw "base0B.darken(80)"; }; DiffAdded = { fg = mkRaw "base0B"; bg = mkRaw "base0B.darken(80)"; };
DiffNewFile = { fg = mkRaw "base0B"; bg = mkRaw "base0B.darken(80)"; }; DiffNewFile = { fg = mkRaw "base0B"; bg = mkRaw "base0B.darken(80)"; };
DiffDelete = { fg = mkRaw "base08"; bg = mkRaw "base08.darken(80)"; }; DiffDelete = { fg = mkRaw "base08"; bg = mkRaw "base08.darken(80)"; };
DiffRemoved = { fg = mkRaw "base08"; bg = mkRaw "base08.darken(80)"; }; DiffRemoved = { fg = mkRaw "base08"; bg = mkRaw "base08.darken(80)"; };
DiffChange = { fg = mkRaw "base03"; bg = mkRaw "base03.darken(60)"; }; DiffChange = { fg = mkRaw "base03"; bg = mkRaw "base03.darken(60)"; };
DiffFile = { fg = mkRaw "base03"; bg = mkRaw "base03.darken(60)"; }; DiffFile = { fg = mkRaw "base03"; bg = mkRaw "base03.darken(60)"; };
DiffLine = { fg = mkRaw "base03"; bg = mkRaw "base03.darken(60)"; }; DiffLine = { fg = mkRaw "base03"; bg = mkRaw "base03.darken(60)"; };
DiffText = { fg = mkRaw "base03"; bg = mkRaw "base03.darken(60)"; }; DiffText = { fg = mkRaw "base03"; bg = mkRaw "base03.darken(60)"; };
# Git highlighting # Git highlighting
gitcommitOverflow = { fg = mkRaw "base08"; }; gitcommitOverflow = { fg = mkRaw "base08"; };
gitcommitSummary = { fg = mkRaw "base0B"; }; gitcommitSummary = { fg = mkRaw "base0B"; };
gitcommitComment = { fg = mkRaw "base03"; }; gitcommitComment = { fg = mkRaw "base03"; };
gitcommitUntracked = { fg = mkRaw "base03"; }; gitcommitUntracked = { fg = mkRaw "base03"; };
gitcommitDiscarded = { fg = mkRaw "base03"; }; gitcommitDiscarded = { fg = mkRaw "base03"; };
gitcommitSelected = { fg = mkRaw "base03"; }; gitcommitSelected = { fg = mkRaw "base03"; };
gitcommitHeader = { fg = mkRaw "base0E"; }; gitcommitHeader = { fg = mkRaw "base0E"; };
gitcommitSelectedType = { fg = mkRaw "base0D"; }; gitcommitSelectedType = { fg = mkRaw "base0D"; };
gitcommitUnmergedType = { fg = mkRaw "base0D"; }; gitcommitUnmergedType = { fg = mkRaw "base0D"; };
gitcommitDiscardedType = { fg = mkRaw "base0D"; }; gitcommitDiscardedType = { fg = mkRaw "base0D"; };
gitcommitBranch = { fg = mkRaw "base09"; gui = "bold"; }; gitcommitBranch = { fg = mkRaw "base09"; gui = "bold"; };
gitcommitUntrackedFile = { fg = mkRaw "base0A"; }; gitcommitUntrackedFile = { fg = mkRaw "base0A"; };
gitcommitUnmergedFile = { fg = mkRaw "base08"; gui = "bold"; }; gitcommitUnmergedFile = { fg = mkRaw "base08"; gui = "bold"; };
gitcommitDiscardedFile = { fg = mkRaw "base08"; gui = "bold"; }; gitcommitDiscardedFile = { fg = mkRaw "base08"; gui = "bold"; };
gitcommitSelectedFile = { fg = mkRaw "base0B"; gui = "bold"; }; gitcommitSelectedFile = { fg = mkRaw "base0B"; gui = "bold"; };
# HTML highlighting # HTML highlighting
htmlBold = { fg = mkRaw "base0A"; }; htmlBold = { fg = mkRaw "base0A"; };
htmlItalic = { fg = mkRaw "base0E"; }; htmlItalic = { fg = mkRaw "base0E"; };
htmlEndTag = { fg = mkRaw "base05"; }; htmlEndTag = { fg = mkRaw "base05"; };
htmlTag = { fg = mkRaw "base05"; }; htmlTag = { fg = mkRaw "base05"; };
# JavaScript highlighting # JavaScript highlighting
javaScript = { fg = mkRaw "base05"; }; javaScript = { fg = mkRaw "base05"; };
javaScriptBraces = { fg = mkRaw "base05"; }; javaScriptBraces = { fg = mkRaw "base05"; };
javaScriptNumber = { fg = mkRaw "base09"; }; javaScriptNumber = { fg = mkRaw "base09"; };
# pangloss/vim-javascript highlighting # pangloss/vim-javascript highlighting
jsOperator = { fg = mkRaw "base0D"; }; jsOperator = { fg = mkRaw "base0D"; };
jsStatement = { fg = mkRaw "base0E"; }; jsStatement = { fg = mkRaw "base0E"; };
jsReturn = { fg = mkRaw "base0E"; }; jsReturn = { fg = mkRaw "base0E"; };
jsThis = { fg = mkRaw "base08"; }; jsThis = { fg = mkRaw "base08"; };
jsClassDefinition = { fg = mkRaw "base0A"; }; jsClassDefinition = { fg = mkRaw "base0A"; };
jsFunction = { fg = mkRaw "base0E"; }; jsFunction = { fg = mkRaw "base0E"; };
jsFuncName = { fg = mkRaw "base0D"; }; jsFuncName = { fg = mkRaw "base0D"; };
jsFuncCall = { fg = mkRaw "base0D"; }; jsFuncCall = { fg = mkRaw "base0D"; };
jsClassFuncName = { fg = mkRaw "base0D"; }; jsClassFuncName = { fg = mkRaw "base0D"; };
jsClassMethodType = { fg = mkRaw "base0E"; }; jsClassMethodType = { fg = mkRaw "base0E"; };
jsRegexpString = { fg = mkRaw "base0C"; }; jsRegexpString = { fg = mkRaw "base0C"; };
jsGlobalObjects = { fg = mkRaw "base0A"; }; jsGlobalObjects = { fg = mkRaw "base0A"; };
jsGlobalNodeObjects = { fg = mkRaw "base0A"; }; jsGlobalNodeObjects = { fg = mkRaw "base0A"; };
jsExceptions = { fg = mkRaw "base0A"; }; jsExceptions = { fg = mkRaw "base0A"; };
jsBuiltins = { fg = mkRaw "base0A"; }; jsBuiltins = { fg = mkRaw "base0A"; };
# Mail highlighting # Mail highlighting
mailQuoted1 = { fg = mkRaw "base0A"; }; mailQuoted1 = { fg = mkRaw "base0A"; };
mailQuoted2 = { fg = mkRaw "base0B"; }; mailQuoted2 = { fg = mkRaw "base0B"; };
mailQuoted3 = { fg = mkRaw "base0E"; }; mailQuoted3 = { fg = mkRaw "base0E"; };
mailQuoted4 = { fg = mkRaw "base0C"; }; mailQuoted4 = { fg = mkRaw "base0C"; };
mailQuoted5 = { fg = mkRaw "base0D"; }; mailQuoted5 = { fg = mkRaw "base0D"; };
mailQuoted6 = { fg = mkRaw "base0A"; }; mailQuoted6 = { fg = mkRaw "base0A"; };
mailURL = { fg = mkRaw "base0D"; }; mailURL = { fg = mkRaw "base0D"; };
mailEmail = { fg = mkRaw "base0D"; }; mailEmail = { fg = mkRaw "base0D"; };
# Markdown highlighting # Markdown highlighting
markdownh1 = { fg = mkRaw "base0D"; gui = "bold"; }; markdownh1 = { fg = mkRaw "base0D"; gui = "bold"; };
markdownh2 = { fg = mkRaw "base0D"; gui = "bold"; }; markdownh2 = { fg = mkRaw "base0D"; gui = "bold"; };
markdownh3 = { fg = mkRaw "base0D"; gui = "bold"; }; markdownh3 = { fg = mkRaw "base0D"; gui = "bold"; };
markdownh4 = { fg = mkRaw "base0D"; gui = "bold"; }; markdownh4 = { fg = mkRaw "base0D"; gui = "bold"; };
markdownh5 = { fg = mkRaw "base0D"; gui = "bold"; }; markdownh5 = { fg = mkRaw "base0D"; gui = "bold"; };
markdownh6 = { fg = mkRaw "base0A"; gui = "bold"; }; markdownh6 = { fg = mkRaw "base0A"; gui = "bold"; };
markdownRule = { fg = mkRaw "markdownh2.bg"; gui = "bold"; }; markdownRule = { fg = mkRaw "markdownh2.bg"; gui = "bold"; };
markdownItalic = { fg = mkRaw "base05"; gui = "italic"; }; markdownItalic = { fg = mkRaw "base05"; gui = "italic"; };
markdownBold = { fg = mkRaw "base05"; gui = "bold"; }; markdownBold = { fg = mkRaw "base05"; gui = "bold"; };
markdownBoldItalic = { fg = mkRaw "base05"; gui = "bold;italic"; }; markdownBoldItalic = { fg = mkRaw "base05"; gui = "bold;italic"; };
markdownCodeDelimiter = { fg = mkRaw "base0B"; gui = "bold"; }; markdownCodeDelimiter = { fg = mkRaw "base0B"; gui = "bold"; };
markdownCode = { fg = mkRaw "base07"; bg = mkRaw "base00"; }; markdownCode = { fg = mkRaw "base07"; bg = mkRaw "base00"; };
markdownCodeBlock = { fg = mkRaw "base0B"; }; markdownCodeBlock = { fg = mkRaw "base0B"; };
markdownFootnoteDefinition = { fg = mkRaw "base05"; gui = "italic"; }; markdownFootnoteDefinition = { fg = mkRaw "base05"; gui = "italic"; };
markdownListMarker = { fg = mkRaw "base05"; gui = "bold"; }; markdownListMarker = { fg = mkRaw "base05"; gui = "bold"; };
markdownLineBreak = { fg = mkRaw "base08"; gui = "underline"; }; markdownLineBreak = { fg = mkRaw "base08"; gui = "underline"; };
markdownError = { fg = mkRaw "base05"; bg = mkRaw "base00"; }; markdownError = { fg = mkRaw "base05"; bg = mkRaw "base00"; };
markdownHeadingDelimiter = { fg = mkRaw "base0D"; }; markdownHeadingDelimiter = { fg = mkRaw "base0D"; };
markdownUrl = { fg = mkRaw "base09"; }; markdownUrl = { fg = mkRaw "base09"; };
markdownFootnote = { fg = mkRaw "base0E"; gui = "italic"; }; markdownFootnote = { fg = mkRaw "base0E"; gui = "italic"; };
markdownBlockquote = { fg = mkRaw "base0C"; gui = "bold"; }; markdownBlockquote = { fg = mkRaw "base0C"; gui = "bold"; };
markdownLinkText = { fg = mkRaw "base08"; gui = "italic"; }; markdownLinkText = { fg = mkRaw "base08"; gui = "italic"; };
# PHP highlighting # PHP highlighting
phpMemberSelector = { fg = mkRaw "base05"; }; phpMemberSelector = { fg = mkRaw "base05"; };
phpComparison = { fg = mkRaw "base05"; }; phpComparison = { fg = mkRaw "base05"; };
phpParent = { fg = mkRaw "base05"; }; phpParent = { fg = mkRaw "base05"; };
phpMethodsVar = { fg = mkRaw "base0C"; }; phpMethodsVar = { fg = mkRaw "base0C"; };
# Python highlighting # Python highlighting
pythonOperator = { fg = mkRaw "base0E"; }; pythonOperator = { fg = mkRaw "base0E"; };
pythonRepeat = { fg = mkRaw "base0E"; }; pythonRepeat = { fg = mkRaw "base0E"; };
pythonInclude = { fg = mkRaw "base0E"; }; pythonInclude = { fg = mkRaw "base0E"; };
pythonStatement = { fg = mkRaw "base0E"; }; pythonStatement = { fg = mkRaw "base0E"; };
# Ruby highlighting # Ruby highlighting
rubyAttribute = { fg = mkRaw "base0D"; }; rubyAttribute = { fg = mkRaw "base0D"; };
rubyConstant = { fg = mkRaw "base0A"; }; rubyConstant = { fg = mkRaw "base0A"; };
rubyInterpolationDelimiter = { fg = mkRaw "base0F"; }; rubyInterpolationDelimiter = { fg = mkRaw "base0F"; };
rubyRegexp = { fg = mkRaw "base0C"; }; rubyRegexp = { fg = mkRaw "base0C"; };
rubySymbol = { fg = mkRaw "base0B"; }; rubySymbol = { fg = mkRaw "base0B"; };
rubyStringDelimiter = { fg = mkRaw "base0B"; }; rubyStringDelimiter = { fg = mkRaw "base0B"; };
# SASS highlighting # SASS highlighting
sassidChar = { fg = mkRaw "base08"; }; sassidChar = { fg = mkRaw "base08"; };
sassClassChar = { fg = mkRaw "base09"; }; sassClassChar = { fg = mkRaw "base09"; };
sassInclude = { fg = mkRaw "base0E"; }; sassInclude = { fg = mkRaw "base0E"; };
sassMixing = { fg = mkRaw "base0E"; }; sassMixing = { fg = mkRaw "base0E"; };
sassMixinName = { fg = mkRaw "base0D"; }; sassMixinName = { fg = mkRaw "base0D"; };
# Spelling highlighting # Spelling highlighting
SpellBad = { gui = "undercurl"; }; SpellBad = { gui = "undercurl"; };
SpellCap = { gui = "undercurl"; }; SpellCap = { gui = "undercurl"; };
SpellRare = { gui = "undercurl"; }; SpellRare = { gui = "undercurl"; };
# Java highlighting # Java highlighting
javaOperator = { fg = mkRaw "base0D"; }; javaOperator = { fg = mkRaw "base0D"; };
# XML highlighting # XML highlighting
xmlTagName = { fg = mkRaw "base0D"; }; xmlTagName = { fg = mkRaw "base0D"; };
xmlCdatastart = { fg = mkRaw "base0A"; }; xmlCdatastart = { fg = mkRaw "base0A"; };
xmlEndTag = { fg = mkRaw "xmlTagName.bg"; }; xmlEndTag = { fg = mkRaw "xmlTagName.bg"; };
xmlCdataCdata = { fg = mkRaw "xmlCdatastart.bg"; }; xmlCdataCdata = { fg = mkRaw "xmlCdatastart.bg"; };
# MatchParen # MatchParen
MatchParen = { fg = mkRaw "base07"; bg = mkRaw "base08"; }; MatchParen = { fg = mkRaw "base07"; bg = mkRaw "base08"; };
# CodeQL # CodeQL
CodeqlAstFocus = { fg = mkRaw "base00"; bg = mkRaw "base03"; }; CodeqlAstFocus = { fg = mkRaw "base00"; bg = mkRaw "base03"; };
# Diff highlighting # Diff highlighting
GitSignsAdd = { fg = mkRaw "base0B"; }; GitSignsAdd = { fg = mkRaw "base0B"; };
GitSignsDelete = { fg = mkRaw "base08"; }; GitSignsDelete = { fg = mkRaw "base08"; };
GitSignsChange = { fg = mkRaw "base03"; }; GitSignsChange = { fg = mkRaw "base03"; };
# Indent-Blank-Lines # Indent-Blank-Lines
IndentGuide = { fg = mkRaw "base01"; bg = mkRaw "base05"; }; IndentGuide = { fg = mkRaw "base01"; bg = mkRaw "base05"; };
} }
(lib.mkIf config.plugins.telescope.enable { (lib.mkIf config.plugins.telescope.enable {
TelescopeNormal = { fg = mkRaw "base05"; bg = mkRaw "base01"; }; TelescopeNormal = { fg = mkRaw "base05"; bg = mkRaw "base01"; };
TelescopeBorder = { fg = mkRaw "base00"; bg = mkRaw "base01"; }; TelescopeBorder = { fg = mkRaw "base00"; bg = mkRaw "base01"; };
TelescopePromptPrefix = { fg = mkRaw "base0A"; bg = mkRaw "base01"; }; TelescopePromptPrefix = { fg = mkRaw "base0A"; bg = mkRaw "base01"; };
TelescopeMatching = { fg = mkRaw "base0D"; bg = mkRaw "base01"; }; TelescopeMatching = { fg = mkRaw "base0D"; bg = mkRaw "base01"; };
TelescopeSelection = { fg = mkRaw "base0A"; bg = mkRaw "base01"; }; TelescopeSelection = { fg = mkRaw "base0A"; bg = mkRaw "base01"; };
TelescopeSelectionCaret = { fg = mkRaw "base0A"; bg = mkRaw "base01"; }; TelescopeSelectionCaret = { fg = mkRaw "base0A"; bg = mkRaw "base01"; };
}) })
# See `rb-delimiters-colors` help section for more details. # See `rb-delimiters-colors` help section for more details.
(lib.mkIf config.plugins.rainbow-delimiters.enable { (lib.mkIf config.plugins.rainbow-delimiters.enable {
RainbowDelimiterRed = { fg = mkRaw "base09"; }; RainbowDelimiterRed = { fg = mkRaw "base09"; };
RainbowDelimiterYellow = { fg = mkRaw "base0A"; }; RainbowDelimiterYellow = { fg = mkRaw "base0A"; };
RainbowDelimiterBlue = { fg = mkRaw "base0B"; }; RainbowDelimiterBlue = { fg = mkRaw "base0B"; };
RainbowDelimiterOrange = { fg = mkRaw "base0C"; }; RainbowDelimiterOrange = { fg = mkRaw "base0C"; };
RainbowDelimiterGreen = { fg = mkRaw "base0D"; }; RainbowDelimiterGreen = { fg = mkRaw "base0D"; };
RainbowDelimiterViolet = { fg = mkRaw "base0E"; }; RainbowDelimiterViolet = { fg = mkRaw "base0E"; };
RainbowDelimiterCyan = { fg = mkRaw "base0F"; }; RainbowDelimiterCyan = { fg = mkRaw "base0F"; };
}) })
# See `lsp-highlight` help section for more details. # See `lsp-highlight` help section for more details.
(lib.mkIf config.plugins.lsp.enable { (lib.mkIf config.plugins.lsp.enable {
LspDiagnosticsDefaultError = { fg = mkRaw "base08"; }; LspDiagnosticsDefaultError = { fg = mkRaw "base08"; };
LspDiagnosticsDefaultWarning = { fg = mkRaw "base09"; }; LspDiagnosticsDefaultWarning = { fg = mkRaw "base09"; };
LspDiagnosticsDefaultHint = { fg = mkRaw "base0A"; }; LspDiagnosticsDefaultHint = { fg = mkRaw "base0A"; };
LspDiagnosticsDefaultInformation = { fg = mkRaw "base0B"; }; LspDiagnosticsDefaultInformation = { fg = mkRaw "base0B"; };
}) })
# See `treesitter-highlight-groups` help section for more details. # See `treesitter-highlight-groups` help section for more details.
(lib.mkIf config.plugins.treesitter.enable { (lib.mkIf config.plugins.treesitter.enable {
"${sym "@variable"}" = { __unkeyed = mkRaw "Normal"; }; "${sym "@variable"}" = { __unkeyed = mkRaw "Normal"; };
"${sym "@tag.delimiter"}" = { fg = mkRaw "base0A"; }; "${sym "@tag.delimiter"}" = { fg = mkRaw "base0A"; };
"${sym "@text.emphasis"}" = { __unkeyed = mkRaw "Italic"; }; "${sym "@text.emphasis"}" = { __unkeyed = mkRaw "Italic"; };
"${sym "@text.underline"}" = { __unkeyed = mkRaw "Underlined"; }; "${sym "@text.underline"}" = { __unkeyed = mkRaw "Underlined"; };
"${sym "@text.strike"}" = { gui = "strikethrough"; }; "${sym "@text.strike"}" = { gui = "strikethrough"; };
"${sym "@text.uri"}" = { fg = mkRaw "base0C"; }; "${sym "@text.uri"}" = { fg = mkRaw "base0C"; };
}) })
]; ];
}) config.bahaghari.tinted-theming.schemes; })
config.bahaghari.tinted-theming.schemes;
}; };
} }

View File

@ -1,10 +1,11 @@
{ config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
{ {
extraPlugins = builtins.map (path: extraPlugins = builtins.map
pkgs.runCommand "vim-plugin-bare" { } '' (path:
mkdir -p "$out" pkgs.runCommand "vim-plugin-bare" { } ''
cp -r ${path}/* "$out" mkdir -p "$out"
'') cp -r ${path}/* "$out"
'')
(with pkgs; [ (with pkgs; [
"${decker}/share/vim-plugins/decker" "${decker}/share/vim-plugins/decker"
"${fzf}/share/vim-plugins/fzf" "${fzf}/share/vim-plugins/fzf"

View File

@ -27,95 +27,96 @@ in
lua = true; lua = true;
} // settings; } // settings;
in in
lib.mapAttrsToList mkDAPBinding { lib.mapAttrsToList mkDAPBinding
"b" = { {
options.desc = "Toggle breakpoint"; "b" = {
action = "require('dap').toggle_breakpoint"; options.desc = "Toggle breakpoint";
}; action = "require('dap').toggle_breakpoint";
};
"B" = { "B" = {
options.desc = "Set breakpoint"; options.desc = "Set breakpoint";
action = "require('dap').set_breakpoint"; action = "require('dap').set_breakpoint";
}; };
"Bp" = { "Bp" = {
options.desc = "Set breakpoint with log message"; options.desc = "Set breakpoint with log message";
action = '' action = ''
function() function()
require('dap').set_breakpoint(nil, nil, vim.fn.input('Log point message: ')) require('dap').set_breakpoint(nil, nil, vim.fn.input('Log point message: '))
end end
''; '';
}; };
"n" = { "n" = {
options.desc = "Continue"; options.desc = "Continue";
action = "require('dap').continue"; action = "require('dap').continue";
}; };
# You know, like a comma is supposed to do. I got nothing on this one # You know, like a comma is supposed to do. I got nothing on this one
# but this is the best choice for now. # but this is the best choice for now.
"," = { "," = {
options.desc = "Pause"; options.desc = "Pause";
action = "require('dap').pause"; action = "require('dap').pause";
}; };
"d" = { "d" = {
options.desc = "Terminate"; options.desc = "Terminate";
action = "require('dap').terminate"; action = "require('dap').terminate";
}; };
"l" = { "l" = {
options.desc = "Step over"; options.desc = "Step over";
action = "require('dap').step_over"; action = "require('dap').step_over";
}; };
"j" = { "j" = {
options.desc = "Step into"; options.desc = "Step into";
action = "require('dap').step_into"; action = "require('dap').step_into";
}; };
"J" = { "J" = {
options.desc = "Go up"; options.desc = "Go up";
action = "require('dap').up"; action = "require('dap').up";
}; };
"k" = { "k" = {
options.desc = "Step out"; options.desc = "Step out";
action = "require('dap').step_out"; action = "require('dap').step_out";
}; };
"K" = { "K" = {
options.desc = "Go down"; options.desc = "Go down";
action = "require('dap').down"; action = "require('dap').down";
}; };
"rs" = { "rs" = {
options.desc = "Restart session"; options.desc = "Restart session";
action = "require('dap').restart"; action = "require('dap').restart";
}; };
"rr" = { "rr" = {
options.desc = "Open debugging REPL"; options.desc = "Open debugging REPL";
action = "require('dap').repl.open"; action = "require('dap').repl.open";
}; };
"rl" = { "rl" = {
options.desc = "Run last configuration"; options.desc = "Run last configuration";
action = "require('dap').run_last"; action = "require('dap').run_last";
}; };
"ph" = { "ph" = {
options.desc = "View the value under the cursor"; options.desc = "View the value under the cursor";
action = "require('dap.ui.widgets').hover"; action = "require('dap.ui.widgets').hover";
mode = [ "n" "v" ]; mode = [ "n" "v" ];
}; };
"pp" = { "pp" = {
options.desc = "See value in preview window"; options.desc = "See value in preview window";
action = "require('dap.ui.widgets').preview"; action = "require('dap.ui.widgets').preview";
mode = [ "n" "v" ]; mode = [ "n" "v" ];
}; };
} }
++ lib.mapAttrsToList mkDAPBinding { ++ lib.mapAttrsToList mkDAPBinding {
"<F5>" = { "<F5>" = {
options.desc = "Continue"; options.desc = "Continue";

View File

@ -3,4 +3,4 @@
import ../default.nix { inherit lib; } import ../default.nix { inherit lib; }
// import ../home-manager.nix { inherit lib; } // import ../home-manager.nix { inherit lib; }
// { sops-nix = import ../sops.nix { inherit lib; }; } // { sops-nix = import ../sops.nix { inherit lib; }; }

View File

@ -3,4 +3,4 @@
import ../default.nix { inherit lib; } import ../default.nix { inherit lib; }
// import ../nixos.nix { inherit lib; } // import ../nixos.nix { inherit lib; }
// { sops-nix = import ../sops.nix { inherit lib; }; } // { sops-nix = import ../sops.nix { inherit lib; }; }

View File

@ -26,9 +26,10 @@ in {
let let
countAttrs = pred: attrs: countAttrs = pred: attrs:
lib.count (attr: pred attr.name attr.value) lib.count (attr: pred attr.name attr.value)
(lib.mapAttrsToList lib.nameValuePair attrs); (lib.mapAttrsToList lib.nameValuePair attrs);
enabledThemes = countAttrs (_: theme: theme.enable) cfg.workflows; enabledThemes = countAttrs (_: theme: theme.enable) cfg.workflows;
in cfg.disableLimit || (enabledThemes <= 1); in
cfg.disableLimit || (enabledThemes <= 1);
message = "Can't have more than one theme enabled at any given time."; message = "Can't have more than one theme enabled at any given time.";
}]; }];
}; };

View File

@ -36,7 +36,7 @@ let
theme.highlights; theme.highlights;
in in
# This is based from rktjmp/lush-template. We'll improve on things from # This is based from rktjmp/lush-template. We'll improve on things from
# here whenever necessary. # here whenever necessary.
lib.nameValuePair "colors/${name}.lua" '' lib.nameValuePair "colors/${name}.lua" ''
${cfg.extraConfigLua} ${cfg.extraConfigLua}
${theme.extraConfigLua} ${theme.extraConfigLua}

View File

@ -1,15 +1,15 @@
# This is just kept for future compatiblity in case we require pkgs or something. # This is just kept for future compatiblity in case we require pkgs or something.
{ }: {}:
{ {
nixosModules = rec { nixosModules = rec {
bahaghari = ./modules; bahaghari = ./modules;
default = bahaghari; default = bahaghari;
}; };
homeModules.bahaghari = rec { homeModules.bahaghari = rec {
bahaghari = ./modules; bahaghari = ./modules;
default = bahaghari; default = bahaghari;
}; };
nixvimModules = rec { nixvimModules = rec {

View File

@ -8,8 +8,9 @@
outputs = inputs@{ self, nixpkgs, ... }: outputs = inputs@{ self, nixpkgs, ... }:
let systems = inputs.flake-utils.lib.defaultSystems; let systems = inputs.flake-utils.lib.defaultSystems;
in inputs.flake-utils.lib.eachSystem systems (system: { in inputs.flake-utils.lib.eachSystem systems
devShells.default = (system: {
import ./shell.nix { pkgs = import nixpkgs { inherit system; }; }; devShells.default =
}) // import ./default.nix { }; import ./shell.nix { pkgs = import nixpkgs { inherit system; }; };
}) // import ./default.nix { };
} }

View File

@ -9,18 +9,18 @@
pkgs.lib.makeExtensible pkgs.lib.makeExtensible
(self: (self:
let let
callLibs = file: import file { lib = self; inherit pkgs; }; callLibs = file: import file { lib = self; inherit pkgs; };
in in
{ {
trivial = callLibs ./trivial.nix; trivial = callLibs ./trivial.nix;
hex = callLibs ./hex.nix; hex = callLibs ./hex.nix;
# Dedicated module sets are not supposed to have any of its functions as # Dedicated module sets are not supposed to have any of its functions as
# a top-level attribute. # a top-level attribute.
tinted-theming = callLibs ./tinted-theming.nix; tinted-theming = callLibs ./tinted-theming.nix;
inherit (self.trivial) importYAML toYAML toBaseDigitsWithGlyphs inherit (self.trivial) importYAML toYAML toBaseDigitsWithGlyphs
generateGlyphSet; generateGlyphSet;
inherit (self.hex) toHexString isHexString; inherit (self.hex) toHexString isHexString;
}) })

View File

@ -8,7 +8,7 @@ let
mkBaseAttr = hex: "base${lib.hex.pad maxDigitLength hex}"; mkBaseAttr = hex: "base${lib.hex.pad maxDigitLength hex}";
schemeNames = builtins.map mkBaseAttr (lib.hex.range 0 (i - 1)); schemeNames = builtins.map mkBaseAttr (lib.hex.range 0 (i - 1));
in in
(pkgs.lib.count (name: pkgs.lib.elem name schemeNames) paletteNames) == i; (pkgs.lib.count (name: pkgs.lib.elem name schemeNames) paletteNames) == i;
in in
{ {
# TODO: Return a Nix object to generate a Tinted Theming color scheme from an # TODO: Return a Nix object to generate a Tinted Theming color scheme from an

View File

@ -24,7 +24,7 @@
${pkgs.lib.getExe' pkgs.yaml2json "yaml2json"} < "${path}" > "$out" ${pkgs.lib.getExe' pkgs.yaml2json "yaml2json"} < "${path}" > "$out"
''; '';
in in
pkgs.lib.importJSON dataDrv.outPath; pkgs.lib.importJSON dataDrv;
/* Convert a given decimal number to a specified base digit with the set of /* Convert a given decimal number to a specified base digit with the set of
glyphs for each digit as returned from lib.toBaseDigits. glyphs for each digit as returned from lib.toBaseDigits.
@ -34,11 +34,13 @@
Example: Example:
toBaseDigitWithGlyphs 24 267 { toBaseDigitWithGlyphs 24 267 {
"0" = "0"; "0" = "0";
"1" = "1";
"2" = "2";
# ... # ...
"22" = "L"; "22" = "O";
"23" = "M"; "23" = "P";
"24" = "N";
} }
=>
*/ */
toBaseDigitsWithGlyphs = base: i: glyphs: toBaseDigitsWithGlyphs = base: i: glyphs:
let let
@ -55,10 +57,20 @@
Example: Example:
generateGlyphSet [ "0" "1" "2" "3" "4" "5" "6" "7" "8 "9" "A" "B" "C" "D" "E" "F" ] generateGlyphSet [ "0" "1" "2" "3" "4" "5" "6" "7" "8 "9" "A" "B" "C" "D" "E" "F" ]
=> {
"0" = "0";
"1" = "1";
# ...
"14" = "E";
"15" = "F";
}
*/ */
generateGlyphSet = glyphsList: generateGlyphSet = glyphsList:
let let
glyphsList' = pkgs.lib.lists.imap0 (i: glyph: { "${builtins.toString i}" = glyph; }) glyphsList; glyphsList' =
pkgs.lib.lists.imap0
(i: glyph: { "${builtins.toString i}" = glyph; })
glyphsList;
in in
pkgs.lib.foldl (acc: glyph: acc // glyph) { } glyphsList'; pkgs.lib.foldl (acc: glyph: acc // glyph) { } glyphsList';
} }

View File

@ -6,7 +6,7 @@ in
rec { rec {
# Return a derivation containing all of the template output from the given # Return a derivation containing all of the template output from the given
# schemes. # schemes.
generateOutputFromSchemes = { schemes ? {}, template }: generateOutputFromSchemes = { schemes ? { }, template }:
let let
schemesDir = pkgs.runCommand "aggregate-schemes" { } schemesDir = pkgs.runCommand "aggregate-schemes" { }
'' ''

View File

@ -48,9 +48,32 @@ pkgs.lib.runTests {
testGenerateBase24GlyphSet = { testGenerateBase24GlyphSet = {
expr = expr =
lib.trivial.generateGlyphSet lib.trivial.generateGlyphSet
[ "0" "1" "2" "3" "4" "5" "6" "7" [
"8" "9" "A" "B" "C" "D" "E" "F" "0"
"G" "H" "I" "J" "M" "N" "O" "P" ]; "1"
"2"
"3"
"4"
"5"
"6"
"7"
"8"
"9"
"A"
"B"
"C"
"D"
"E"
"F"
"G"
"H"
"I"
"J"
"M"
"N"
"O"
"P"
];
expected = customBase24Glyphs; expected = customBase24Glyphs;
}; };