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

View File

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

View File

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

View File

@ -3,4 +3,4 @@
import ../default.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 ../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
countAttrs = pred: attrs:
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;
in cfg.disableLimit || (enabledThemes <= 1);
in
cfg.disableLimit || (enabledThemes <= 1);
message = "Can't have more than one theme enabled at any given time.";
}];
};

View File

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

View File

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

View File

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

View File

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

View File

@ -8,7 +8,7 @@ let
mkBaseAttr = hex: "base${lib.hex.pad maxDigitLength hex}";
schemeNames = builtins.map mkBaseAttr (lib.hex.range 0 (i - 1));
in
(pkgs.lib.count (name: pkgs.lib.elem name schemeNames) paletteNames) == i;
(pkgs.lib.count (name: pkgs.lib.elem name schemeNames) paletteNames) == i;
in
{
# 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"
'';
in
pkgs.lib.importJSON dataDrv.outPath;
pkgs.lib.importJSON dataDrv;
/* Convert a given decimal number to a specified base digit with the set of
glyphs for each digit as returned from lib.toBaseDigits.
@ -34,11 +34,13 @@
Example:
toBaseDigitWithGlyphs 24 267 {
"0" = "0";
"1" = "1";
"2" = "2";
# ...
"22" = "L";
"23" = "M";
"24" = "N";
"22" = "O";
"23" = "P";
}
=>
*/
toBaseDigitsWithGlyphs = base: i: glyphs:
let
@ -55,10 +57,20 @@
Example:
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:
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
pkgs.lib.foldl (acc: glyph: acc // glyph) { } glyphsList';
pkgs.lib.foldl (acc: glyph: acc // glyph) { } glyphsList';
}

View File

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

View File

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