From dad03e3be5b0a7c1159e0207cce11540ca830359 Mon Sep 17 00:00:00 2001 From: "Thomas F. K. Jorna" Date: Mon, 3 Jan 2022 17:21:18 +0100 Subject: feat(filter): add option to filter by subdirectory (#190) --- components/TagMenu.tsx | 2 +- components/Tweaks/Behavior/BehaviorPanel.tsx | 170 ++++++++++++ components/Tweaks/BehaviorPanel.tsx | 170 ------------ components/Tweaks/CitationsPanel.tsx | 102 ------- components/Tweaks/ColorMenu.tsx | 88 ------- components/Tweaks/ColorsPanel.tsx | 237 ----------------- components/Tweaks/Filter/FilterPanel.tsx | 245 +++++++++++++++++ components/Tweaks/Filter/TagColorPanel.tsx | 139 ++++++++++ components/Tweaks/FilterPanel.tsx | 220 ---------------- components/Tweaks/GraphColorSelect.tsx | 64 ----- components/Tweaks/HighlightingPanel.tsx | 116 -------- components/Tweaks/LabelsPanel.tsx | 162 ------------ components/Tweaks/NodesNLinks/CitationsPanel.tsx | 102 +++++++ components/Tweaks/NodesNLinksPanel.tsx | 131 --------- components/Tweaks/OptionPanel.tsx | 74 ++++++ components/Tweaks/Physics/PhysicsPanel.tsx | 143 ++++++++++ components/Tweaks/PhysicsPanel.tsx | 143 ---------- components/Tweaks/TagColorPanel.tsx | 140 ---------- components/Tweaks/TagPanel.tsx | 70 ----- components/Tweaks/ThemeSelect.tsx | 63 ----- components/Tweaks/Visual/ColorMenu.tsx | 88 +++++++ components/Tweaks/Visual/ColorsPanel.tsx | 237 +++++++++++++++++ components/Tweaks/Visual/GraphColorSelect.tsx | 64 +++++ components/Tweaks/Visual/HighlightingPanel.tsx | 116 ++++++++ components/Tweaks/Visual/LabelsPanel.tsx | 162 ++++++++++++ components/Tweaks/Visual/NodesNLinksPanel.tsx | 131 +++++++++ components/Tweaks/Visual/ThemeSelect.tsx | 63 +++++ components/Tweaks/Visual/VisualsPanel.tsx | 121 +++++++++ components/Tweaks/VisualsPanel.tsx | 122 --------- components/Tweaks/index.tsx | 8 +- components/config.ts | 2 + org-roam-ui.el | 41 ++- pages/index.tsx | 321 ++++++++++++----------- themeObjects.json | 185 +++++++++++++ util/variablesContext.tsx | 12 + 35 files changed, 2264 insertions(+), 1990 deletions(-) create mode 100644 components/Tweaks/Behavior/BehaviorPanel.tsx delete mode 100644 components/Tweaks/BehaviorPanel.tsx delete mode 100644 components/Tweaks/CitationsPanel.tsx delete mode 100644 components/Tweaks/ColorMenu.tsx delete mode 100644 components/Tweaks/ColorsPanel.tsx create mode 100644 components/Tweaks/Filter/FilterPanel.tsx create mode 100644 components/Tweaks/Filter/TagColorPanel.tsx delete mode 100644 components/Tweaks/FilterPanel.tsx delete mode 100644 components/Tweaks/GraphColorSelect.tsx delete mode 100644 components/Tweaks/HighlightingPanel.tsx delete mode 100644 components/Tweaks/LabelsPanel.tsx create mode 100644 components/Tweaks/NodesNLinks/CitationsPanel.tsx delete mode 100644 components/Tweaks/NodesNLinksPanel.tsx create mode 100644 components/Tweaks/OptionPanel.tsx create mode 100644 components/Tweaks/Physics/PhysicsPanel.tsx delete mode 100644 components/Tweaks/PhysicsPanel.tsx delete mode 100644 components/Tweaks/TagColorPanel.tsx delete mode 100644 components/Tweaks/TagPanel.tsx delete mode 100644 components/Tweaks/ThemeSelect.tsx create mode 100644 components/Tweaks/Visual/ColorMenu.tsx create mode 100644 components/Tweaks/Visual/ColorsPanel.tsx create mode 100644 components/Tweaks/Visual/GraphColorSelect.tsx create mode 100644 components/Tweaks/Visual/HighlightingPanel.tsx create mode 100644 components/Tweaks/Visual/LabelsPanel.tsx create mode 100644 components/Tweaks/Visual/NodesNLinksPanel.tsx create mode 100644 components/Tweaks/Visual/ThemeSelect.tsx create mode 100644 components/Tweaks/Visual/VisualsPanel.tsx delete mode 100644 components/Tweaks/VisualsPanel.tsx create mode 100644 themeObjects.json create mode 100644 util/variablesContext.tsx diff --git a/components/TagMenu.tsx b/components/TagMenu.tsx index 4841cbf..3108b34 100644 --- a/components/TagMenu.tsx +++ b/components/TagMenu.tsx @@ -14,7 +14,7 @@ import { import React from 'react' import { colorList, initialFilter, TagColors } from './config' import { Collapse } from './Sidebar/Collapse' -import { ColorMenu } from './Tweaks/ColorMenu' +import { ColorMenu } from './Tweaks/Visual/ColorMenu' export interface TagMenuProps { setTagColors: any diff --git a/components/Tweaks/Behavior/BehaviorPanel.tsx b/components/Tweaks/Behavior/BehaviorPanel.tsx new file mode 100644 index 0000000..8b39c93 --- /dev/null +++ b/components/Tweaks/Behavior/BehaviorPanel.tsx @@ -0,0 +1,170 @@ +import { ChevronDownIcon } from '@chakra-ui/icons' +import { + Button, + Flex, + Menu, + MenuButton, + MenuItem, + MenuList, + Portal, + StackDivider, + VStack, + Text, + Box, + Switch, +} from '@chakra-ui/react' +import React from 'react' +import { initialBehavior, initialMouse } from '../../config' +import { InfoTooltip } from '../InfoTooltip' +import { SliderWithInfo } from '../SliderWithInfo' + +export interface BehaviorPanelProps { + behavior: typeof initialBehavior + setBehavior: any + mouse: typeof initialMouse + setMouse: any +} +export const BehaviorPanel = (props: BehaviorPanelProps) => { + const { behavior, setBehavior, mouse, setMouse } = props + return ( + } + align="stretch" + paddingLeft={7} + color="gray.800" + > + + Preview node + + } colorScheme="" color="black"> + + {mouse.preview ? mouse.preview[0]!.toUpperCase() + mouse.preview!.slice(1) : 'Never'} + + + + {' '} + + setMouse({ ...mouse, preview: '' })}>Never + setMouse({ ...mouse, preview: 'click' })}>Click + setMouse({ ...mouse, preview: 'double' })}> + Double Click + + + + + + + + Expand Node + + + + } colorScheme="" color="black"> + + {mouse.local ? mouse.local[0]!.toUpperCase() + mouse.local!.slice(1) : 'Never'} + + + + {' '} + + setMouse({ ...mouse, local: '' })}>Never + setMouse({ ...mouse, local: 'click' })}>Click + setMouse({ ...mouse, local: 'double' })}> + Double Click + + setMouse({ ...mouse, local: 'right' })}> + Right Click + + + + + + + Open in Emacs + + } colorScheme="" color="black"> + + {mouse.follow ? mouse.follow[0]!.toUpperCase() + mouse.follow!.slice(1) : 'Never'} + + + + {' '} + + setMouse({ ...mouse, follow: '' })}>Never + setMouse({ ...mouse, follow: 'click' })}>Click + setMouse({ ...mouse, follow: 'double' })}> + Double Click + + setMouse({ ...mouse, follow: 'right' })}> + Right Click + + + + + + + Follow Emacs by... + + } colorScheme="" color="black"> + {behavior.follow[0].toUpperCase() + behavior.follow.slice(1)} + + + {' '} + + setBehavior({ ...behavior, follow: 'color' })}> + Just coloring the currently opened node + + setBehavior({ ...behavior, follow: 'local' })}> + Opening the local graph + + setBehavior({ ...behavior, follow: 'zoom' })}> + Zooming to the current node + + + + + + + + Local graph + + + + } colorScheme="" color="black"> + {behavior.localSame === 'add' ? 'Add' : 'Replace'} + + + {' '} + + setBehavior({ ...behavior, localSame: 'replace' })}> + Open that nodes graph + + setBehavior({ ...behavior, localSame: 'add' })}> + Add node to local graph + + + + + + setBehavior({ ...behavior, zoomSpeed: value })} + /> + setBehavior({ ...behavior, zoomPadding: value })} + infoText="How much to zoom out to accomodate all nodes when changing the view." + /> + + ) +} diff --git a/components/Tweaks/BehaviorPanel.tsx b/components/Tweaks/BehaviorPanel.tsx deleted file mode 100644 index 5d61730..0000000 --- a/components/Tweaks/BehaviorPanel.tsx +++ /dev/null @@ -1,170 +0,0 @@ -import { ChevronDownIcon } from '@chakra-ui/icons' -import { - Button, - Flex, - Menu, - MenuButton, - MenuItem, - MenuList, - Portal, - StackDivider, - VStack, - Text, - Box, - Switch, -} from '@chakra-ui/react' -import React from 'react' -import { initialBehavior, initialMouse } from '../config' -import { InfoTooltip } from './InfoTooltip' -import { SliderWithInfo } from './SliderWithInfo' - -export interface BehaviorPanelProps { - behavior: typeof initialBehavior - setBehavior: any - mouse: typeof initialMouse - setMouse: any -} -export const BehaviorPanel = (props: BehaviorPanelProps) => { - const { behavior, setBehavior, mouse, setMouse } = props - return ( - } - align="stretch" - paddingLeft={7} - color="gray.800" - > - - Preview node - - } colorScheme="" color="black"> - - {mouse.preview ? mouse.preview[0]!.toUpperCase() + mouse.preview!.slice(1) : 'Never'} - - - - {' '} - - setMouse({ ...mouse, preview: '' })}>Never - setMouse({ ...mouse, preview: 'click' })}>Click - setMouse({ ...mouse, preview: 'double' })}> - Double Click - - - - - - - - Expand Node - - - - } colorScheme="" color="black"> - - {mouse.local ? mouse.local[0]!.toUpperCase() + mouse.local!.slice(1) : 'Never'} - - - - {' '} - - setMouse({ ...mouse, local: '' })}>Never - setMouse({ ...mouse, local: 'click' })}>Click - setMouse({ ...mouse, local: 'double' })}> - Double Click - - setMouse({ ...mouse, local: 'right' })}> - Right Click - - - - - - - Open in Emacs - - } colorScheme="" color="black"> - - {mouse.follow ? mouse.follow[0]!.toUpperCase() + mouse.follow!.slice(1) : 'Never'} - - - - {' '} - - setMouse({ ...mouse, follow: '' })}>Never - setMouse({ ...mouse, follow: 'click' })}>Click - setMouse({ ...mouse, follow: 'double' })}> - Double Click - - setMouse({ ...mouse, follow: 'right' })}> - Right Click - - - - - - - Follow Emacs by... - - } colorScheme="" color="black"> - {behavior.follow[0].toUpperCase() + behavior.follow.slice(1)} - - - {' '} - - setBehavior({ ...behavior, follow: 'color' })}> - Just coloring the currently opened node - - setBehavior({ ...behavior, follow: 'local' })}> - Opening the local graph - - setBehavior({ ...behavior, follow: 'zoom' })}> - Zooming to the current node - - - - - - - - Local graph - - - - } colorScheme="" color="black"> - {behavior.localSame === 'add' ? 'Add' : 'Replace'} - - - {' '} - - setBehavior({ ...behavior, localSame: 'replace' })}> - Open that nodes graph - - setBehavior({ ...behavior, localSame: 'add' })}> - Add node to local graph - - - - - - setBehavior({ ...behavior, zoomSpeed: value })} - /> - setBehavior({ ...behavior, zoomPadding: value })} - infoText="How much to zoom out to accomodate all nodes when changing the view." - /> - - ) -} diff --git a/components/Tweaks/CitationsPanel.tsx b/components/Tweaks/CitationsPanel.tsx deleted file mode 100644 index 93e923c..0000000 --- a/components/Tweaks/CitationsPanel.tsx +++ /dev/null @@ -1,102 +0,0 @@ -import { Box, StackDivider, VStack } from '@chakra-ui/react' -import React from 'react' -import { ColorMenu } from './ColorMenu' -import { colorList, initialVisuals } from '../config' -import { EnableSection } from './EnableSection' -import { SliderWithInfo } from './SliderWithInfo' - -export interface CitationsPanelProps { - visuals: typeof initialVisuals - setVisuals: any -} -export const CitationsPanel = (props: CitationsPanelProps) => { - const { visuals, setVisuals } = props - return ( - } - align="stretch" - color="gray.800" - > - - setVisuals({ ...visuals, citeDashes: !visuals.citeDashes })} - > - setVisuals({ ...visuals, citeDashLength: value * 10 })} - /> - setVisuals({ ...visuals, citeGapLength: value * 5 })} - /> - - - - - setVisuals({ ...visuals, refDashes: !visuals.refDashes })} - > - setVisuals({ ...visuals, refDashLength: value * 10 })} - /> - setVisuals({ ...visuals, refGapLength: value * 5 })} - /> - - - - - - - ) -} diff --git a/components/Tweaks/ColorMenu.tsx b/components/Tweaks/ColorMenu.tsx deleted file mode 100644 index b87f76b..0000000 --- a/components/Tweaks/ColorMenu.tsx +++ /dev/null @@ -1,88 +0,0 @@ -import { ChevronDownIcon } from '@chakra-ui/icons' -import { - Text, - Box, - Button, - Flex, - Menu, - MenuButton, - MenuItem, - MenuList, - Portal, - PopoverTrigger, - PopoverContent, - Popover, -} from '@chakra-ui/react' -import React, { useCallback } from 'react' -import { initialVisuals } from '../config' - -export interface ColorMenuProps { - label: string - colorList: string[] - value: string - visValue: string - setVisuals?: any - noEmpty?: boolean -} - -export const ColorMenu = (props: ColorMenuProps) => { - const { label, colorList, value, visValue, setVisuals, noEmpty } = props - - const clickCallback = useCallback( - (color) => - setVisuals((curr: typeof initialVisuals) => { - return { - ...curr, - [value]: color, - } - }), - [], - ) - return ( - - {label} - - - - - - - - {!noEmpty && ( - clickCallback('')} - justifyContent="space-between" - alignItems="center" - display="flex" - m={1} - > - - - )} - {colorList.map((color: string) => ( - clickCallback(color)} - justifyContent="space-between" - alignItems="center" - display="flex" - > - - - ))} - - - - - - ) -} diff --git a/components/Tweaks/ColorsPanel.tsx b/components/Tweaks/ColorsPanel.tsx deleted file mode 100644 index de0a2b8..0000000 --- a/components/Tweaks/ColorsPanel.tsx +++ /dev/null @@ -1,237 +0,0 @@ -import { ArrowRightIcon, ChevronDownIcon, RepeatIcon } from '@chakra-ui/icons' -import { - Text, - Box, - Flex, - IconButton, - StackDivider, - Tooltip, - VStack, - MenuButton, - Menu, - Portal, - MenuList, - MenuOptionGroup, - MenuItemOption, - Button, - MenuItem, -} from '@chakra-ui/react' -import React from 'react' -import { ColorMenu } from './ColorMenu' -import { colorList, initialVisuals } from '../config' - -export interface ColorsPanelProps { - visuals: typeof initialVisuals - setVisualsCallback: any - highlightColor: string - setHighlightColor: any -} - -export const ColorsPanel = (props: ColorsPanelProps) => { - const { visuals, setVisualsCallback, highlightColor, setHighlightColor } = props - - return ( - } - align="stretch" - color="gray.800" - > - - - Nodes - - } - variant="ghost" - onClick={() => { - const arr = visuals.nodeColorScheme ?? [] - setVisualsCallback({ - ...visuals, - //shuffle that guy - //definitely thought of this myself - nodeColorScheme: arr - .map((x: any) => [Math.random(), x]) - .sort(([a], [b]) => a - b) - .map(([_, x]) => x), - }) - }} - /> - - - } - size="sm" - variant="ghost" - onClick={() => { - const arr = visuals.nodeColorScheme ?? [] - setVisualsCallback({ - ...visuals, - nodeColorScheme: [...arr.slice(1, arr.length), arr[0]], - }) - }} - /> - - - } - > - - {visuals.nodeColorScheme.map((color) => ( - - ))} - - - - {' '} - - { - if (!colors.length) { - return - } - setVisualsCallback({ ...visuals, nodeColorScheme: colors }) - }} - > - {colorList.map((color) => ( - c === color)} - value={color} - isDisabled={ - visuals.nodeColorScheme.length === 1 && visuals.nodeColorScheme[0] === color - } - > - - - - - ))} - - - - - - - Links - - }> - - {visuals.linkColorScheme ? ( - - ) : ( - - {visuals.nodeColorScheme.map((color) => ( - - ))} - - )} - - - - {' '} - - setVisualsCallback({ ...visuals, linkColorScheme: '' })} - justifyContent="space-between" - alignItems="center" - display="flex" - > - - {visuals.nodeColorScheme.map((color) => ( - - ))} - - - {colorList.map((color) => ( - - setVisualsCallback({ - ...visuals, - linkColorScheme: color, - }) - } - justifyContent="space-between" - alignItems="center" - display="flex" - > - - - ))} - - - - - - Accent - - }> - {} - - - {' '} - - {colorList.map((color) => ( - setHighlightColor(color)} - justifyContent="space-between" - alignItems="center" - display="flex" - > - - - ))} - - - - - - - - - - - ) -} diff --git a/components/Tweaks/Filter/FilterPanel.tsx b/components/Tweaks/Filter/FilterPanel.tsx new file mode 100644 index 0000000..55ff3e5 --- /dev/null +++ b/components/Tweaks/Filter/FilterPanel.tsx @@ -0,0 +1,245 @@ +import { ChevronDownIcon } from '@chakra-ui/icons' +import { + Text, + Box, + Button, + Flex, + Menu, + MenuButton, + StackDivider, + VStack, + Portal, + MenuList, + MenuItem, + Switch, + Accordion, + AccordionItem, + AccordionButton, + AccordionIcon, + AccordionPanel, +} from '@chakra-ui/react' +import React, { useContext } from 'react' +import { OptionPanel } from '../OptionPanel' +import { initialFilter, initialLocal, TagColors } from '../../config' +import { TagColorPanel } from './TagColorPanel' +import { SliderWithInfo } from '../SliderWithInfo' +import { VariablesContext } from '../../../util/variablesContext' + +export interface FilterPanelProps { + filter: typeof initialFilter + setFilter: any + tagColors: TagColors + setTagColors: any + highlightColor: string + colorList: string[] + tags: string[] + local: typeof initialLocal + setLocal: any +} + +const FilterPanel = (props: FilterPanelProps) => { + const { + filter, + setFilter, + local, + setLocal, + tagColors, + setTagColors, + highlightColor, + colorList, + tags, + } = props + const { roamDir, subDirs } = useContext(VariablesContext) + return ( + + } + align="stretch" + paddingLeft={7} + color="gray.800" + > + + Link children to + + } + colorScheme="" + color="black" + size="sm" + > + {(() => { + switch (filter.parent) { + case 'parent': + return File + case 'heading': + return Heading + default: + return Nothing + } + })()} + + + + + setFilter((curr: typeof initialFilter) => ({ ...curr, parent: '' })) + } + > + Nothing + + + setFilter((curr: typeof initialFilter) => ({ + ...curr, + parent: 'parent', + })) + } + > + Parent file node + + + setFilter((curr: typeof initialFilter) => ({ + ...curr, + parent: 'heading', + })) + } + > + Next highest heading node + + + + + + + Orphans + { + setFilter((curr: typeof initialFilter) => { + return { ...curr, orphans: !curr.orphans } + }) + }} + isChecked={filter.orphans} + > + + + Dailies + { + setFilter((curr: typeof initialFilter) => { + return { ...curr, dailies: !curr.dailies } + }) + }} + isChecked={filter.dailies} + > + + + Org-noter pages + { + setFilter((curr: typeof initialFilter) => { + return { ...curr, noter: !curr.noter } + }) + }} + isChecked={filter.noter} + > + + + Citations without note files + { + setFilter({ ...filter, filelessCites: !filter.filelessCites }) + }} + isChecked={filter.filelessCites} + > + + + Non-existent nodes + { + setTagColors({ ...tagColors, bad: 'white' }) + setFilter({ ...filter, bad: !filter.bad }) + }} + isChecked={filter.bad} + > + + setLocal({ ...local, neighbors: v })} + min={1} + max={5} + step={1} + /> + + + + + Directory filters + + + + + + + + + + Tag filters + + + + + + + + + + Tag colors + + + + + + + + + ) +} + +export default FilterPanel diff --git a/components/Tweaks/Filter/TagColorPanel.tsx b/components/Tweaks/Filter/TagColorPanel.tsx new file mode 100644 index 0000000..eb458dc --- /dev/null +++ b/components/Tweaks/Filter/TagColorPanel.tsx @@ -0,0 +1,139 @@ +import { DeleteIcon } from '@chakra-ui/icons' +import { + Text, + Box, + Flex, + IconButton, + Menu, + MenuButton, + MenuItem, + MenuList, + Portal, + StackDivider, + VStack, + Button, +} from '@chakra-ui/react' +import { CUIAutoComplete } from 'chakra-ui-autocomplete' +import React, { useState } from 'react' +import { TagColors } from '../../config' + +export interface TagColorPanelProps { + tags: string[] + highlightColor: string + colorList: string[] + tagColors: TagColors + setTagColors: any +} +export const TagColorPanel = (props: TagColorPanelProps) => { + const { colorList, tagColors, setTagColors, highlightColor, tags } = props + const tagArray = tags.map((tag) => { + return { value: tag, label: tag } + }) + + const [selectedItems, setSelectedItems] = useState( + Object.keys(tagColors).map((tag) => { + return { value: tag, label: tag } + }), + ) + + return ( + + { + if (changes.selectedItems) { + setSelectedItems(Array.from(new Set(changes.selectedItems))) + setTagColors( + Object.fromEntries( + Array.from(new Set(changes.selectedItems)).map((item) => { + return [item.label, tagColors[item.label] ?? 'gray.600'] + }), + ), + ) + } + }} + listItemStyleProps={{ overflow: 'hidden' }} + highlightItemBg="gray.400" + toggleButtonStyleProps={{ variant: 'outline' }} + inputStyleProps={{ + height: 8, + focusBorderColor: highlightColor, + color: 'gray.800', + borderColor: 'gray.500', + }} + tagStyleProps={{ + display: 'none', + rounded: 'full', + bg: highlightColor, + height: 8, + paddingLeft: 4, + fontWeight: 'bold', + }} + hideToggleButton + itemRenderer={(selected) => selected.label} + /> + } + align="stretch" + color="gray.800" + > + {Object.keys(tagColors).map((tag) => { + return ( + + + {tag} + + + + {} + + + + {colorList.map((color: string) => ( + + setTagColors({ + ...tagColors, + [tag]: color, + }) + } + justifyContent="space-between" + alignItems="center" + display="flex" + > + + + ))} + + + + } + onClick={() => { + setTagColors( + Object.fromEntries( + Array.from(new Set(selectedItems)).map((item) => { + return [item.label, tagColors[item.label] ?? 'gray.600'] + }), + ), + ) + setSelectedItems(selectedItems.filter((item) => item.value !== tag)) + }} + /> + + ) + })} + + + ) +} diff --git a/components/Tweaks/FilterPanel.tsx b/components/Tweaks/FilterPanel.tsx deleted file mode 100644 index ad0c5e4..0000000 --- a/components/Tweaks/FilterPanel.tsx +++ /dev/null @@ -1,220 +0,0 @@ -import { ChevronDownIcon } from '@chakra-ui/icons' -import { - Text, - Box, - Button, - Flex, - Menu, - MenuButton, - StackDivider, - VStack, - Portal, - MenuList, - MenuItem, - Switch, - Accordion, - AccordionItem, - AccordionButton, - AccordionIcon, - AccordionPanel, -} from '@chakra-ui/react' -import React from 'react' -import { TagPanel } from './TagPanel' -import { initialFilter, initialLocal, TagColors } from '../config' -import { TagColorPanel } from './TagColorPanel' -import { SliderWithInfo } from './SliderWithInfo' - -export interface FilterPanelProps { - filter: typeof initialFilter - setFilter: any - tagColors: TagColors - setTagColors: any - highlightColor: string - colorList: string[] - tags: string[] - local: typeof initialLocal - setLocal: any -} - -const FilterPanel = (props: FilterPanelProps) => { - const { - filter, - setFilter, - local, - setLocal, - tagColors, - setTagColors, - highlightColor, - colorList, - tags, - } = props - return ( - - } - align="stretch" - paddingLeft={7} - color="gray.800" - > - - Link children to - - } - colorScheme="" - color="black" - size="sm" - > - {(() => { - switch (filter.parent) { - case 'parent': - return File - case 'heading': - return Heading - default: - return Nothing - } - })()} - - - {' '} - - - setFilter((curr: typeof initialFilter) => ({ ...curr, parent: '' })) - } - > - Nothing - - - setFilter((curr: typeof initialFilter) => ({ - ...curr, - parent: 'parent', - })) - } - > - Parent file node - - - setFilter((curr: typeof initialFilter) => ({ - ...curr, - parent: 'heading', - })) - } - > - Next highest heading node - - - - - - - Orphans - { - setFilter((curr: typeof initialFilter) => { - return { ...curr, orphans: !curr.orphans } - }) - }} - isChecked={filter.orphans} - > - - - Dailies - { - setFilter((curr: typeof initialFilter) => { - return { ...curr, dailies: !curr.dailies } - }) - }} - isChecked={filter.dailies} - > - - - Org-noter pages - { - setFilter((curr: typeof initialFilter) => { - return { ...curr, noter: !curr.noter } - }) - }} - isChecked={filter.noter} - > - - - Citations without note files - { - setFilter({ ...filter, filelessCites: !filter.filelessCites }) - }} - isChecked={filter.filelessCites} - > - - - Non-existent nodes - { - setTagColors({ ...tagColors, bad: 'white' }) - setFilter({ ...filter, bad: !filter.bad }) - }} - isChecked={filter.bad} - > - - setLocal({ ...local, neighbors: v })} - min={1} - max={5} - step={1} - /> - - - - - Tag filters - - - - - - - - - - Tag colors - - - - - - - - - ) -} - -export default FilterPanel diff --git a/components/Tweaks/GraphColorSelect.tsx b/components/Tweaks/GraphColorSelect.tsx deleted file mode 100644 index 60fd8cf..0000000 --- a/components/Tweaks/GraphColorSelect.tsx +++ /dev/null @@ -1,64 +0,0 @@ -import React, { useContext } from 'react' -import { - Box, - Button, - Flex, - Menu, - MenuButton, - MenuItem, - MenuList, - Portal, - Text, -} from '@chakra-ui/react' -import { ChevronDownIcon } from '@chakra-ui/icons' -import { initialColoring } from '../config' - -export interface GraphColorSelectProps { - coloring: typeof initialColoring - setColoring: any -} - -export const GraphColorSelect = (props: GraphColorSelectProps) => { - type Theme = { [key: string]: string } - const { coloring, setColoring } = props - return ( - - Graph coloring - - } - > - {coloring.method === 'degree' ? 'Links' : 'Communities'} - - - - - setColoring((curr: typeof initialColoring) => ({ ...curr, method: 'degree' })) - } - justifyContent="space-between" - alignItems="center" - display="flex" - > - Number of links - - - setColoring((curr: typeof initialColoring) => ({ ...curr, method: 'community' })) - } - justifyContent="space-between" - alignItems="center" - display="flex" - > - Communities - - - - - - ) -} diff --git a/components/Tweaks/HighlightingPanel.tsx b/components/Tweaks/HighlightingPanel.tsx deleted file mode 100644 index 6f71268..0000000 --- a/components/Tweaks/HighlightingPanel.tsx +++ /dev/null @@ -1,116 +0,0 @@ -import { Box, Select, StackDivider, VStack } from '@chakra-ui/react' -import React from 'react' -import { initialVisuals } from '../config' -import { EnableSection } from './EnableSection' -import { SliderWithInfo } from './SliderWithInfo' - -export interface HighlightingPanelProps { - visuals: typeof initialVisuals - setVisuals: any -} -export const HighlightingPanel = (props: HighlightingPanelProps) => { - const { visuals, setVisuals } = props - return ( - } - align="stretch" - color="gray.800" - > - - - setVisuals((visuals: typeof initialVisuals) => ({ - ...visuals, - highlight: !visuals.highlight, - })) - } - value={visuals.highlight} - > - } - align="stretch" - paddingLeft={0} - > - - setVisuals((visuals: typeof initialVisuals) => ({ - ...visuals, - highlightLinkSize: value, - })) - } - /> - - setVisuals((visuals: typeof initialVisuals) => ({ - ...visuals, - highlightNodeSize: value, - })) - } - /> - - setVisuals((visuals: typeof initialVisuals) => ({ - ...visuals, - highlightFade: value, - })) - } - /> - { - setVisuals((visuals: typeof initialVisuals) => ({ - ...visuals, - highlightAnim: !visuals.highlightAnim, - })) - }} - value={visuals.highlightAnim} - > - - setVisuals((visuals: typeof initialVisuals) => ({ - ...visuals, - animationSpeed: v, - })) - } - value={visuals.animationSpeed} - infoText="Slower speed has a chance of being buggy" - min={50} - max={1000} - step={10} - /> - - - - - - - ) -} diff --git a/components/Tweaks/LabelsPanel.tsx b/components/Tweaks/LabelsPanel.tsx deleted file mode 100644 index 2b66e85..0000000 --- a/components/Tweaks/LabelsPanel.tsx +++ /dev/null @@ -1,162 +0,0 @@ -import { ChevronDownIcon } from '@chakra-ui/icons' -import { - Box, - Button, - Collapse, - Flex, - Menu, - MenuButton, - MenuItem, - MenuList, - Portal, - StackDivider, - VStack, - Text, -} from '@chakra-ui/react' -import React from 'react' -import { ColorMenu } from './ColorMenu' -import { colorList, initialVisuals } from '../config' -import { SliderWithInfo } from './SliderWithInfo' - -export interface LabelsPanelProps { - visuals: typeof initialVisuals - setVisuals: any -} -export const LabelsPanel = (props: LabelsPanelProps) => { - const { visuals, setVisuals } = props - return ( - } - align="stretch" - color="gray.800" - > - - Show labels - - }> - {!visuals.labels ? 'Never' : visuals.labels < 2 ? 'On Highlight' : 'Always'} - - - {' '} - - setVisuals({ ...visuals, labels: 0 })}>Never - setVisuals({ ...visuals, labels: 1 })}> - On Highlight - - setVisuals({ ...visuals, labels: 2 })}>Always - setVisuals({ ...visuals, labels: 3 })}> - Always (even in 3D) - - - - - - 1} animateOpacity> - - setVisuals({ ...visuals, labelScale: value / 2 })} - /> - - - - setVisuals((curr: typeof initialVisuals) => ({ - ...curr, - labelDynamicStrength: value, - })) - } - /> - 0}> - - setVisuals((curr: typeof initialVisuals) => ({ - ...curr, - labelDynamicDegree: value, - })) - } - /> - - - - - - - - - { - console.log(visuals.labelBackgroundOpacity) - setVisuals({ ...visuals, labelBackgroundOpacity: value }) - }} - min={0} - max={1} - step={0.01} - /> - - - - setVisuals({ ...visuals, labelFontSize: value })} - /> - setVisuals({ ...visuals, labelLength: value })} - /> - setVisuals({ ...visuals, labelWordWrap: value })} - /> - setVisuals({ ...visuals, labelLineSpace: value })} - /> - - ) -} diff --git a/components/Tweaks/NodesNLinks/CitationsPanel.tsx b/components/Tweaks/NodesNLinks/CitationsPanel.tsx new file mode 100644 index 0000000..aebddca --- /dev/null +++ b/components/Tweaks/NodesNLinks/CitationsPanel.tsx @@ -0,0 +1,102 @@ +import { Box, StackDivider, VStack } from '@chakra-ui/react' +import React from 'react' +import { ColorMenu } from '../Visual/ColorMenu' +import { colorList, initialVisuals } from '../../config' +import { EnableSection } from '../EnableSection' +import { SliderWithInfo } from '../SliderWithInfo' + +export interface CitationsPanelProps { + visuals: typeof initialVisuals + setVisuals: any +} +export const CitationsPanel = (props: CitationsPanelProps) => { + const { visuals, setVisuals } = props + return ( + } + align="stretch" + color="gray.800" + > + + setVisuals({ ...visuals, citeDashes: !visuals.citeDashes })} + > + setVisuals({ ...visuals, citeDashLength: value * 10 })} + /> + setVisuals({ ...visuals, citeGapLength: value * 5 })} + /> + + + + + setVisuals({ ...visuals, refDashes: !visuals.refDashes })} + > + setVisuals({ ...visuals, refDashLength: value * 10 })} + /> + setVisuals({ ...visuals, refGapLength: value * 5 })} + /> + + + + + + + ) +} diff --git a/components/Tweaks/NodesNLinksPanel.tsx b/components/Tweaks/NodesNLinksPanel.tsx deleted file mode 100644 index 3321ae3..0000000 --- a/components/Tweaks/NodesNLinksPanel.tsx +++ /dev/null @@ -1,131 +0,0 @@ -import { Box, StackDivider, VStack } from '@chakra-ui/react' -import React from 'react' -import { ColorMenu } from './ColorMenu' -import { colorList, initialVisuals } from '../config' -import { EnableSection } from './EnableSection' -import { SliderWithInfo } from './SliderWithInfo' - -export interface NodesNLinksPanelProps { - visuals: typeof initialVisuals - setVisuals: any - threeDim: boolean -} - -export const NodesNLinksPanel = (props: NodesNLinksPanelProps) => { - const { visuals, setVisuals, threeDim } = props - return ( - } - align="stretch" - color="gray.800" - > - - setVisuals({ ...visuals, nodeRel: value })} - /> - setVisuals({ ...visuals, nodeSizeLinks: value })} - /> - - setVisuals((prev: typeof initialVisuals) => ({ - ...prev, - nodeZoomSize: value, - })) - } - /> - {threeDim && ( - <> - setVisuals({ ...visuals, nodeOpacity: value })} - /> - setVisuals({ ...visuals, nodeResolution: value })} - /> - - )} - setVisuals({ ...visuals, linkWidth: value })} - /> - {threeDim && ( - setVisuals({ ...visuals, linkOpacity: value })} - /> - )} - setVisuals({ ...visuals, arrows: !visuals.arrows })} - > - setVisuals({ ...visuals, arrowsLength: 10 * value })} - /> - setVisuals({ ...visuals, arrowsPos: value })} - /> - - - setVisuals({ ...visuals, particles: !visuals.particles })} - > - setVisuals({ ...visuals, particlesNumber: value })} - /> - setVisuals({ ...visuals, particlesWidth: value })} - /> - - - - ) -} diff --git a/components/Tweaks/OptionPanel.tsx b/components/Tweaks/OptionPanel.tsx new file mode 100644 index 0000000..870028b --- /dev/null +++ b/components/Tweaks/OptionPanel.tsx @@ -0,0 +1,74 @@ +import { CUIAutoComplete } from 'chakra-ui-autocomplete' +import React, { useContext, useState } from 'react' +import { ThemeContext } from '../../util/themecontext' +import { initialFilter } from '../config' + +export interface OptionPanelProps { + options: string[] + filter: typeof initialFilter + setFilter: any + listName: 'tagsBlacklist' | 'tagsWhitelist' | 'dirsAllowlist' | 'dirsBlocklist' + displayName: string + labelFilter?: string +} + +export const OptionPanel = (props: OptionPanelProps) => { + const { filter, listName, labelFilter, displayName, setFilter, options = [] } = props + const { highlightColor } = useContext(ThemeContext) + const optionArray = options.map((option) => { + return { value: option, label: labelFilter ? option.replace(labelFilter, '') : option } + }) + + const [selectedItems, setSelectedItems] = useState( + filter[listName].map((option) => { + return { + value: option, + label: labelFilter ? (option as string)?.replace(labelFilter, '') : option, + } + }), + ) + + return ( + null} + disableCreateItem={true} + selectedItems={selectedItems} + onSelectedItemsChange={(changes) => { + if (changes.selectedItems) { + setSelectedItems(changes.selectedItems) + setFilter({ ...filter, [listName]: changes.selectedItems.map((item) => item.value) }) + } + }} + listItemStyleProps={{ overflow: 'hidden' }} + highlightItemBg="gray.400" + toggleButtonStyleProps={{ variant: 'outline' }} + inputStyleProps={{ + mt: 2, + height: 8, + focusBorderColor: highlightColor, + color: 'gray.800', + borderColor: 'gray.500', + }} + tagStyleProps={{ + justifyContent: 'flex-start', + //variant: 'subtle', + fontSize: 10, + borderColor: highlightColor, + borderWidth: 1, + borderRadius: 'md', + color: highlightColor, + bg: '', + height: 4, + mb: 2, + //paddingLeft: 4, + //fontWeight: 'bold', + }} + hideToggleButton + itemRenderer={(selected) => selected.label} + /> + ) +} diff --git a/components/Tweaks/Physics/PhysicsPanel.tsx b/components/Tweaks/Physics/PhysicsPanel.tsx new file mode 100644 index 0000000..82dd6b7 --- /dev/null +++ b/components/Tweaks/Physics/PhysicsPanel.tsx @@ -0,0 +1,143 @@ +import { + Text, + Accordion, + AccordionButton, + AccordionIcon, + AccordionItem, + AccordionPanel, + Box, + Flex, + StackDivider, + Switch, + VStack, +} from '@chakra-ui/react' +import React, { useCallback } from 'react' +import { initialPhysics } from '../../config' +import { EnableSection } from '../EnableSection' +import { SliderWithInfo } from '../SliderWithInfo' + +export interface PhysicsPanelProps { + physics: typeof initialPhysics + setPhysics: any +} + +export const PhysicsPanel = (props: PhysicsPanelProps) => { + const { physics, setPhysics } = props + const setPhysicsCallback = useCallback((val: number, phys: string, scale: number) => { + setPhysics((curr: typeof initialPhysics) => { + return { ...curr, [phys]: val / scale } + }) + }, []) + return ( + + } + align="stretch" + paddingLeft={7} + color="gray.800" + > + setPhysics({ ...physics, gravityOn: !physics.gravityOn })} + > + + Also in local + { + setPhysics((curr: typeof initialPhysics) => { + return { ...curr, gravityLocal: !curr.gravityLocal } + }) + }} + isChecked={physics.gravityLocal} + > + + setPhysicsCallback(v, 'gravity', 10)} + /> + + setPhysicsCallback(v, 'charge', -1 / 100)} + label="Repulsive Force" + /> + setPhysicsCallback(v, 'linkStrength', 5)} + label="Link Force" + /> + setPhysicsCallback(v, 'alphaDecay', 50)} + /> + + + + + + Advanced + + + + } + align="stretch" + paddingLeft={3} + color="gray.800" + > + setPhysics({ ...physics, collision: !physics.collision })} + > + setPhysicsCallback(v, 'collisionStrength', 1 / 5)} + label="Collision Radius" + infoText="Easy with this one, high values can lead to a real jiggly mess" + /> + + setPhysicsCallback(v, 'linkIts', 1)} + min={0} + max={6} + step={1} + infoText="How many links down the line the physics of a single node affects (Slow)" + /> + setPhysicsCallback(v, 'velocityDecay', 10)} + /> + setPhysics({ ...physics, centering: !physics.centering })} + infoText="Keeps the nodes in the center of the viewport. If disabled you can drag the nodes anywhere you want." + > + setPhysicsCallback(v, 'centeringStrength', 1)} + /> + + + + + + + + ) +} diff --git a/components/Tweaks/PhysicsPanel.tsx b/components/Tweaks/PhysicsPanel.tsx deleted file mode 100644 index cd18f03..0000000 --- a/components/Tweaks/PhysicsPanel.tsx +++ /dev/null @@ -1,143 +0,0 @@ -import { - Text, - Accordion, - AccordionButton, - AccordionIcon, - AccordionItem, - AccordionPanel, - Box, - Flex, - StackDivider, - Switch, - VStack, -} from '@chakra-ui/react' -import React, { useCallback } from 'react' -import { initialPhysics } from '../config' -import { EnableSection } from './EnableSection' -import { SliderWithInfo } from './SliderWithInfo' - -export interface PhysicsPanelProps { - physics: typeof initialPhysics - setPhysics: any -} - -export const PhysicsPanel = (props: PhysicsPanelProps) => { - const { physics, setPhysics } = props - const setPhysicsCallback = useCallback((val: number, phys: string, scale: number) => { - setPhysics((curr: typeof initialPhysics) => { - return { ...curr, [phys]: val / scale } - }) - }, []) - return ( - - } - align="stretch" - paddingLeft={7} - color="gray.800" - > - setPhysics({ ...physics, gravityOn: !physics.gravityOn })} - > - - Also in local - { - setPhysics((curr: typeof initialPhysics) => { - return { ...curr, gravityLocal: !curr.gravityLocal } - }) - }} - isChecked={physics.gravityLocal} - > - - setPhysicsCallback(v, 'gravity', 10)} - /> - - setPhysicsCallback(v, 'charge', -1 / 100)} - label="Repulsive Force" - /> - setPhysicsCallback(v, 'linkStrength', 5)} - label="Link Force" - /> - setPhysicsCallback(v, 'alphaDecay', 50)} - /> - - - - - - Advanced - - - - } - align="stretch" - paddingLeft={3} - color="gray.800" - > - setPhysics({ ...physics, collision: !physics.collision })} - > - setPhysicsCallback(v, 'collisionStrength', 1 / 5)} - label="Collision Radius" - infoText="Easy with this one, high values can lead to a real jiggly mess" - /> - - setPhysicsCallback(v, 'linkIts', 1)} - min={0} - max={6} - step={1} - infoText="How many links down the line the physics of a single node affects (Slow)" - /> - setPhysicsCallback(v, 'velocityDecay', 10)} - /> - setPhysics({ ...physics, centering: !physics.centering })} - infoText="Keeps the nodes in the center of the viewport. If disabled you can drag the nodes anywhere you want." - > - setPhysicsCallback(v, 'centeringStrength', 1)} - /> - - - - - - - - ) -} diff --git a/components/Tweaks/TagColorPanel.tsx b/components/Tweaks/TagColorPanel.tsx deleted file mode 100644 index d20b540..0000000 --- a/components/Tweaks/TagColorPanel.tsx +++ /dev/null @@ -1,140 +0,0 @@ -import { DeleteIcon } from '@chakra-ui/icons' -import { - Text, - Box, - Flex, - IconButton, - Menu, - MenuButton, - MenuItem, - MenuList, - Portal, - StackDivider, - VStack, - Button, -} from '@chakra-ui/react' -import { CUIAutoComplete } from 'chakra-ui-autocomplete' -import React, { useState } from 'react' -import { TagColors } from '../config' - -export interface TagColorPanelProps { - tags: string[] - highlightColor: string - colorList: string[] - tagColors: TagColors - setTagColors: any -} -export const TagColorPanel = (props: TagColorPanelProps) => { - const { colorList, tagColors, setTagColors, highlightColor, tags } = props - const tagArray = tags.map((tag) => { - return { value: tag, label: tag } - }) - - const [selectedItems, setSelectedItems] = useState( - Object.keys(tagColors).map((tag) => { - return { value: tag, label: tag } - }), - ) - - return ( - - { - if (changes.selectedItems) { - setSelectedItems(Array.from(new Set(changes.selectedItems))) - setTagColors( - Object.fromEntries( - Array.from(new Set(changes.selectedItems)).map((item) => { - return [item.label, tagColors[item.label] ?? 'gray.600'] - }), - ), - ) - } - }} - listItemStyleProps={{ overflow: 'hidden' }} - highlightItemBg="gray.400" - toggleButtonStyleProps={{ variant: 'outline' }} - inputStyleProps={{ - height: 8, - focusBorderColor: highlightColor, - color: 'gray.800', - borderColor: 'gray.500', - }} - tagStyleProps={{ - display: 'none', - rounded: 'full', - bg: highlightColor, - height: 8, - paddingLeft: 4, - fontWeight: 'bold', - }} - hideToggleButton - itemRenderer={(selected) => selected.label} - /> - } - align="stretch" - color="gray.800" - > - {Object.keys(tagColors).map((tag) => { - return ( - - - {tag} - - - - {} - - - {' '} - - {colorList.map((color: string) => ( - - setTagColors({ - ...tagColors, - [tag]: color, - }) - } - justifyContent="space-between" - alignItems="center" - display="flex" - > - - - ))} - - - - } - onClick={() => { - setTagColors( - Object.fromEntries( - Array.from(new Set(selectedItems)).map((item) => { - return [item.label, tagColors[item.label] ?? 'gray.600'] - }), - ), - ) - setSelectedItems(selectedItems.filter((item) => item.value !== tag)) - }} - /> - - ) - })} - - - ) -} diff --git a/components/Tweaks/TagPanel.tsx b/components/Tweaks/TagPanel.tsx deleted file mode 100644 index 58f4b7d..0000000 --- a/components/Tweaks/TagPanel.tsx +++ /dev/null @@ -1,70 +0,0 @@ -import { CUIAutoComplete } from 'chakra-ui-autocomplete' -import React, { useState } from 'react' -import { initialFilter } from '../config' - -export interface TagPanelProps { - tags: string[] - filter: typeof initialFilter - setFilter: any - highlightColor: string - mode: string -} - -export const TagPanel = (props: TagPanelProps) => { - const { filter, setFilter, tags, highlightColor, mode } = props - const tagArray = tags.map((tag) => { - return { value: tag, label: tag } - }) - - const currentTags = mode === 'blacklist' ? 'tagsBlacklist' : 'tagsWhitelist' - const name = mode === 'blacklist' ? 'blocklist' : 'allowlist' - const [selectedItems, setSelectedItems] = useState( - filter[currentTags].map((tag) => { - return { value: tag, label: tag } - }), - ) - - return ( - null} - disableCreateItem={true} - selectedItems={selectedItems} - onSelectedItemsChange={(changes) => { - if (changes.selectedItems) { - setSelectedItems(changes.selectedItems) - setFilter({ ...filter, [currentTags]: changes.selectedItems.map((item) => item.value) }) - } - }} - listItemStyleProps={{ overflow: 'hidden' }} - highlightItemBg="gray.400" - toggleButtonStyleProps={{ variant: 'outline' }} - inputStyleProps={{ - mt: 2, - height: 8, - focusBorderColor: highlightColor, - color: 'gray.800', - borderColor: 'gray.500', - }} - tagStyleProps={{ - justifyContent: 'flex-start', - //variant: 'subtle', - fontSize: 10, - borderColor: highlightColor, - borderWidth: 1, - borderRadius: 'md', - color: highlightColor, - bg: '', - height: 4, - mb: 2, - //paddingLeft: 4, - //fontWeight: 'bold', - }} - hideToggleButton - itemRenderer={(selected) => selected.label} - /> - ) -} diff --git a/components/Tweaks/ThemeSelect.tsx b/components/Tweaks/ThemeSelect.tsx deleted file mode 100644 index d5a7f54..0000000 --- a/components/Tweaks/ThemeSelect.tsx +++ /dev/null @@ -1,63 +0,0 @@ -import React, { useContext } from 'react' -import { - Box, - Button, - Flex, - Menu, - MenuButton, - MenuItem, - MenuList, - Portal, - Text, -} from '@chakra-ui/react' - -import { themes } from '../themes' -import { ChevronDownIcon } from '@chakra-ui/icons' -import { ThemeContext } from '../../util/themecontext' - -export const ThemeSelect = () => { - type Theme = { [key: string]: string } - const { emacsTheme, setEmacsTheme, highlightColor } = useContext(ThemeContext) - return ( - - Theme - - } - > - {emacsTheme[0]} - - - ''} - justifyContent="space-between" - alignItems="center" - display="flex" - > - - - {Object.keys(themes).map((theme: string, i: number) => ( - setEmacsTheme([theme, themes[theme]])} - justifyContent="space-between" - alignItems="center" - display="flex" - > - {theme} - - {Object.values(themes[theme as string]).map((color: string) => { - return - })} - - - ))} - - - - ) -} diff --git a/components/Tweaks/Visual/ColorMenu.tsx b/components/Tweaks/Visual/ColorMenu.tsx new file mode 100644 index 0000000..a792f12 --- /dev/null +++ b/components/Tweaks/Visual/ColorMenu.tsx @@ -0,0 +1,88 @@ +import { ChevronDownIcon } from '@chakra-ui/icons' +import { + Text, + Box, + Button, + Flex, + Menu, + MenuButton, + MenuItem, + MenuList, + Portal, + PopoverTrigger, + PopoverContent, + Popover, +} from '@chakra-ui/react' +import React, { useCallback } from 'react' +import { initialVisuals } from '../../config' + +export interface ColorMenuProps { + label: string + colorList: string[] + value: string + visValue: string + setVisuals?: any + noEmpty?: boolean +} + +export const ColorMenu = (props: ColorMenuProps) => { + const { label, colorList, value, visValue, setVisuals, noEmpty } = props + + const clickCallback = useCallback( + (color) => + setVisuals((curr: typeof initialVisuals) => { + return { + ...curr, + [value]: color, + } + }), + [], + ) + return ( + + {label} + + + + + + + + {!noEmpty && ( + clickCallback('')} + justifyContent="space-between" + alignItems="center" + display="flex" + m={1} + > + + + )} + {colorList.map((color: string) => ( + clickCallback(color)} + justifyContent="space-between" + alignItems="center" + display="flex" + > + + + ))} + + + + + + ) +} diff --git a/components/Tweaks/Visual/ColorsPanel.tsx b/components/Tweaks/Visual/ColorsPanel.tsx new file mode 100644 index 0000000..fe4cd7b --- /dev/null +++ b/components/Tweaks/Visual/ColorsPanel.tsx @@ -0,0 +1,237 @@ +import { ArrowRightIcon, ChevronDownIcon, RepeatIcon } from '@chakra-ui/icons' +import { + Text, + Box, + Flex, + IconButton, + StackDivider, + Tooltip, + VStack, + MenuButton, + Menu, + Portal, + MenuList, + MenuOptionGroup, + MenuItemOption, + Button, + MenuItem, +} from '@chakra-ui/react' +import React from 'react' +import { ColorMenu } from './ColorMenu' +import { colorList, initialVisuals } from '../../config' + +export interface ColorsPanelProps { + visuals: typeof initialVisuals + setVisualsCallback: any + highlightColor: string + setHighlightColor: any +} + +export const ColorsPanel = (props: ColorsPanelProps) => { + const { visuals, setVisualsCallback, highlightColor, setHighlightColor } = props + + return ( + } + align="stretch" + color="gray.800" + > + + + Nodes + + } + variant="ghost" + onClick={() => { + const arr = visuals.nodeColorScheme ?? [] + setVisualsCallback({ + ...visuals, + //shuffle that guy + //definitely thought of this myself + nodeColorScheme: arr + .map((x: any) => [Math.random(), x]) + .sort(([a], [b]) => a - b) + .map(([_, x]) => x), + }) + }} + /> + + + } + size="sm" + variant="ghost" + onClick={() => { + const arr = visuals.nodeColorScheme ?? [] + setVisualsCallback({ + ...visuals, + nodeColorScheme: [...arr.slice(1, arr.length), arr[0]], + }) + }} + /> + + + } + > + + {visuals.nodeColorScheme.map((color) => ( + + ))} + + + + {' '} + + { + if (!colors.length) { + return + } + setVisualsCallback({ ...visuals, nodeColorScheme: colors }) + }} + > + {colorList.map((color) => ( + c === color)} + value={color} + isDisabled={ + visuals.nodeColorScheme.length === 1 && visuals.nodeColorScheme[0] === color + } + > + + + + + ))} + + + + + + + Links + + }> + + {visuals.linkColorScheme ? ( + + ) : ( + + {visuals.nodeColorScheme.map((color) => ( + + ))} + + )} + + + + {' '} + + setVisualsCallback({ ...visuals, linkColorScheme: '' })} + justifyContent="space-between" + alignItems="center" + display="flex" + > + + {visuals.nodeColorScheme.map((color) => ( + + ))} + + + {colorList.map((color) => ( + + setVisualsCallback({ + ...visuals, + linkColorScheme: color, + }) + } + justifyContent="space-between" + alignItems="center" + display="flex" + > + + + ))} + + + + + + Accent + + }> + {} + + + {' '} + + {colorList.map((color) => ( + setHighlightColor(color)} + justifyContent="space-between" + alignItems="center" + display="flex" + > + + + ))} + + + + + + + + + + + ) +} diff --git a/components/Tweaks/Visual/GraphColorSelect.tsx b/components/Tweaks/Visual/GraphColorSelect.tsx new file mode 100644 index 0000000..5b49672 --- /dev/null +++ b/components/Tweaks/Visual/GraphColorSelect.tsx @@ -0,0 +1,64 @@ +import React, { useContext } from 'react' +import { + Box, + Button, + Flex, + Menu, + MenuButton, + MenuItem, + MenuList, + Portal, + Text, +} from '@chakra-ui/react' +import { ChevronDownIcon } from '@chakra-ui/icons' +import { initialColoring } from '../../config' + +export interface GraphColorSelectProps { + coloring: typeof initialColoring + setColoring: any +} + +export const GraphColorSelect = (props: GraphColorSelectProps) => { + type Theme = { [key: string]: string } + const { coloring, setColoring } = props + return ( + + Graph coloring + + } + > + {coloring.method === 'degree' ? 'Links' : 'Communities'} + + + + + setColoring((curr: typeof initialColoring) => ({ ...curr, method: 'degree' })) + } + justifyContent="space-between" + alignItems="center" + display="flex" + > + Number of links + + + setColoring((curr: typeof initialColoring) => ({ ...curr, method: 'community' })) + } + justifyContent="space-between" + alignItems="center" + display="flex" + > + Communities + + + + + + ) +} diff --git a/components/Tweaks/Visual/HighlightingPanel.tsx b/components/Tweaks/Visual/HighlightingPanel.tsx new file mode 100644 index 0000000..357d137 --- /dev/null +++ b/components/Tweaks/Visual/HighlightingPanel.tsx @@ -0,0 +1,116 @@ +import { Box, Select, StackDivider, VStack } from '@chakra-ui/react' +import React from 'react' +import { initialVisuals } from '../../config' +import { EnableSection } from '../EnableSection' +import { SliderWithInfo } from '../SliderWithInfo' + +export interface HighlightingPanelProps { + visuals: typeof initialVisuals + setVisuals: any +} +export const HighlightingPanel = (props: HighlightingPanelProps) => { + const { visuals, setVisuals } = props + return ( + } + align="stretch" + color="gray.800" + > + + + setVisuals((visuals: typeof initialVisuals) => ({ + ...visuals, + highlight: !visuals.highlight, + })) + } + value={visuals.highlight} + > + } + align="stretch" + paddingLeft={0} + > + + setVisuals((visuals: typeof initialVisuals) => ({ + ...visuals, + highlightLinkSize: value, + })) + } + /> + + setVisuals((visuals: typeof initialVisuals) => ({ + ...visuals, + highlightNodeSize: value, + })) + } + /> + + setVisuals((visuals: typeof initialVisuals) => ({ + ...visuals, + highlightFade: value, + })) + } + /> + { + setVisuals((visuals: typeof initialVisuals) => ({ + ...visuals, + highlightAnim: !visuals.highlightAnim, + })) + }} + value={visuals.highlightAnim} + > + + setVisuals((visuals: typeof initialVisuals) => ({ + ...visuals, + animationSpeed: v, + })) + } + value={visuals.animationSpeed} + infoText="Slower speed has a chance of being buggy" + min={50} + max={1000} + step={10} + /> + + + + + + + ) +} diff --git a/components/Tweaks/Visual/LabelsPanel.tsx b/components/Tweaks/Visual/LabelsPanel.tsx new file mode 100644 index 0000000..b0044f1 --- /dev/null +++ b/components/Tweaks/Visual/LabelsPanel.tsx @@ -0,0 +1,162 @@ +import { ChevronDownIcon } from '@chakra-ui/icons' +import { + Box, + Button, + Collapse, + Flex, + Menu, + MenuButton, + MenuItem, + MenuList, + Portal, + StackDivider, + VStack, + Text, +} from '@chakra-ui/react' +import React from 'react' +import { ColorMenu } from './ColorMenu' +import { colorList, initialVisuals } from '../../config' +import { SliderWithInfo } from '../SliderWithInfo' + +export interface LabelsPanelProps { + visuals: typeof initialVisuals + setVisuals: any +} +export const LabelsPanel = (props: LabelsPanelProps) => { + const { visuals, setVisuals } = props + return ( + } + align="stretch" + color="gray.800" + > + + Show labels + + }> + {!visuals.labels ? 'Never' : visuals.labels < 2 ? 'On Highlight' : 'Always'} + + + {' '} + + setVisuals({ ...visuals, labels: 0 })}>Never + setVisuals({ ...visuals, labels: 1 })}> + On Highlight + + setVisuals({ ...visuals, labels: 2 })}>Always + setVisuals({ ...visuals, labels: 3 })}> + Always (even in 3D) + + + + + + 1} animateOpacity> + + setVisuals({ ...visuals, labelScale: value / 2 })} + /> + + + + setVisuals((curr: typeof initialVisuals) => ({ + ...curr, + labelDynamicStrength: value, + })) + } + /> + 0}> + + setVisuals((curr: typeof initialVisuals) => ({ + ...curr, + labelDynamicDegree: value, + })) + } + /> + + + + + + + + + { + console.log(visuals.labelBackgroundOpacity) + setVisuals({ ...visuals, labelBackgroundOpacity: value }) + }} + min={0} + max={1} + step={0.01} + /> + + + + setVisuals({ ...visuals, labelFontSize: value })} + /> + setVisuals({ ...visuals, labelLength: value })} + /> + setVisuals({ ...visuals, labelWordWrap: value })} + /> + setVisuals({ ...visuals, labelLineSpace: value })} + /> + + ) +} diff --git a/components/Tweaks/Visual/NodesNLinksPanel.tsx b/components/Tweaks/Visual/NodesNLinksPanel.tsx new file mode 100644 index 0000000..40072fb --- /dev/null +++ b/components/Tweaks/Visual/NodesNLinksPanel.tsx @@ -0,0 +1,131 @@ +import { Box, StackDivider, VStack } from '@chakra-ui/react' +import React from 'react' +import { ColorMenu } from './ColorMenu' +import { colorList, initialVisuals } from '../../config' +import { EnableSection } from '../EnableSection' +import { SliderWithInfo } from '../SliderWithInfo' + +export interface NodesNLinksPanelProps { + visuals: typeof initialVisuals + setVisuals: any + threeDim: boolean +} + +export const NodesNLinksPanel = (props: NodesNLinksPanelProps) => { + const { visuals, setVisuals, threeDim } = props + return ( + } + align="stretch" + color="gray.800" + > + + setVisuals({ ...visuals, nodeRel: value })} + /> + setVisuals({ ...visuals, nodeSizeLinks: value })} + /> + + setVisuals((prev: typeof initialVisuals) => ({ + ...prev, + nodeZoomSize: value, + })) + } + /> + {threeDim && ( + <> + setVisuals({ ...visuals, nodeOpacity: value })} + /> + setVisuals({ ...visuals, nodeResolution: value })} + /> + + )} + setVisuals({ ...visuals, linkWidth: value })} + /> + {threeDim && ( + setVisuals({ ...visuals, linkOpacity: value })} + /> + )} + setVisuals({ ...visuals, arrows: !visuals.arrows })} + > + setVisuals({ ...visuals, arrowsLength: 10 * value })} + /> + setVisuals({ ...visuals, arrowsPos: value })} + /> + + + setVisuals({ ...visuals, particles: !visuals.particles })} + > + setVisuals({ ...visuals, particlesNumber: value })} + /> + setVisuals({ ...visuals, particlesWidth: value })} + /> + + + + ) +} diff --git a/components/Tweaks/Visual/ThemeSelect.tsx b/components/Tweaks/Visual/ThemeSelect.tsx new file mode 100644 index 0000000..eed6daf --- /dev/null +++ b/components/Tweaks/Visual/ThemeSelect.tsx @@ -0,0 +1,63 @@ +import React, { useContext } from 'react' +import { + Box, + Button, + Flex, + Menu, + MenuButton, + MenuItem, + MenuList, + Portal, + Text, +} from '@chakra-ui/react' + +import { themes } from '../../themes' +import { ChevronDownIcon } from '@chakra-ui/icons' +import { ThemeContext } from '../../../util/themecontext' + +export const ThemeSelect = () => { + type Theme = { [key: string]: string } + const { emacsTheme, setEmacsTheme, highlightColor } = useContext(ThemeContext) + return ( + + Theme + + } + > + {emacsTheme[0]} + + + ''} + justifyContent="space-between" + alignItems="center" + display="flex" + > + + + {Object.keys(themes).map((theme: string, i: number) => ( + setEmacsTheme([theme, themes[theme]])} + justifyContent="space-between" + alignItems="center" + display="flex" + > + {theme} + + {Object.values(themes[theme as string]).map((color: string) => { + return + })} + + + ))} + + + + ) +} diff --git a/components/Tweaks/Visual/VisualsPanel.tsx b/components/Tweaks/Visual/VisualsPanel.tsx new file mode 100644 index 0000000..82b365f --- /dev/null +++ b/components/Tweaks/Visual/VisualsPanel.tsx @@ -0,0 +1,121 @@ +import { + Text, + Accordion, + AccordionButton, + AccordionItem, + Flex, + VStack, + AccordionIcon, + AccordionPanel, + MenuButton, + Menu, + Button, + Box, + Portal, + MenuList, + MenuItem, +} from '@chakra-ui/react' +import React, { useCallback } from 'react' +import { HighlightingPanel } from './HighlightingPanel' +import { ColorsPanel } from './ColorsPanel' +import { initialColoring, initialVisuals } from '../../config' +import { NodesNLinksPanel } from './NodesNLinksPanel' +import { LabelsPanel } from './LabelsPanel' +import { ThemeSelect } from './ThemeSelect' +import { CitationsPanel } from '../NodesNLinks/CitationsPanel' +import { GraphColorSelect } from './GraphColorSelect' + +export interface VisualsPanelProps { + visuals: typeof initialVisuals + setVisuals: any + highlightColor: string + setHighlightColor: any + threeDim: boolean + coloring: typeof initialColoring + setColoring: any +} + +export const VisualsPanel = (props: VisualsPanelProps) => { + const { + coloring, + setColoring, + visuals, + setVisuals, + highlightColor, + setHighlightColor, + threeDim, + } = props + const setVisualsCallback = useCallback((val) => setVisuals(val), []) + return ( + + + + + + + + Colors + + + + + + + + + + + Nodes & Links + + + + + + + + + + + Labels + + + + + + + + + + + Highlighting + + + + + + + + + + + Citations + + + + + + + + + + ) +} diff --git a/components/Tweaks/VisualsPanel.tsx b/components/Tweaks/VisualsPanel.tsx deleted file mode 100644 index f364c4f..0000000 --- a/components/Tweaks/VisualsPanel.tsx +++ /dev/null @@ -1,122 +0,0 @@ -import { - Text, - Accordion, - AccordionButton, - AccordionItem, - Flex, - VStack, - AccordionIcon, - AccordionPanel, - MenuButton, - Menu, - Button, - Box, - Portal, - MenuList, - MenuItem, -} from '@chakra-ui/react' -import React, { useCallback } from 'react' -import { HighlightingPanel } from './HighlightingPanel' -import { ColorsPanel } from './ColorsPanel' -import { initialColoring, initialVisuals } from '../config' -import { NodesNLinksPanel } from './NodesNLinksPanel' -import { LabelsPanel } from './LabelsPanel' -import { CitationsPanel } from './CitationsPanel' -import { ColorMenu } from './ColorMenu' -import { ThemeSelect } from './ThemeSelect' -import { GraphColorSelect } from './GraphColorSelect' - -export interface VisualsPanelProps { - visuals: typeof initialVisuals - setVisuals: any - highlightColor: string - setHighlightColor: any - threeDim: boolean - coloring: typeof initialColoring - setColoring: any -} - -export const VisualsPanel = (props: VisualsPanelProps) => { - const { - coloring, - setColoring, - visuals, - setVisuals, - highlightColor, - setHighlightColor, - threeDim, - } = props - const setVisualsCallback = useCallback((val) => setVisuals(val), []) - return ( - - - - - - - - Colors - - - - - - - - - - - Nodes & Links - - - - - - - - - - - Labels - - - - - - - - - - - Highlighting - - - - - - - - - - - Citations - - - - - - - - - - ) -} diff --git a/components/Tweaks/index.tsx b/components/Tweaks/index.tsx index a07559a..039885c 100644 --- a/components/Tweaks/index.tsx +++ b/components/Tweaks/index.tsx @@ -26,13 +26,13 @@ import { initialColoring, } from '../config' -import FilterPanel from './FilterPanel' +import FilterPanel from './Filter/FilterPanel' import { ThemeContext } from '../../util/themecontext' import { usePersistantState } from '../../util/persistant-state' -import { PhysicsPanel } from './PhysicsPanel' -import { VisualsPanel } from './VisualsPanel' -import { BehaviorPanel } from './BehaviorPanel' +import { PhysicsPanel } from './Physics/PhysicsPanel' +import { BehaviorPanel } from './Behavior/BehaviorPanel' +import { VisualsPanel } from './Visual/VisualsPanel' export interface TweakProps { physics: typeof initialPhysics diff --git a/components/config.ts b/components/config.ts index d61e416..cbcb880 100644 --- a/components/config.ts +++ b/components/config.ts @@ -39,6 +39,8 @@ export const initialFilter = { filelessCites: false, tagsBlacklist: [], tagsWhitelist: [], + dirsBlocklist: [], + dirsAllowlist: [], bad: true, nodes: [], links: [], diff --git a/org-roam-ui.el b/org-roam-ui.el index 1544e75..169927a 100644 --- a/org-roam-ui.el +++ b/org-roam-ui.el @@ -36,6 +36,7 @@ (require 'simple-httpd) (require 'org-roam) (require 'websocket) +(require 'org-roam-dailies) (defgroup org-roam-ui nil "UI in Org-roam." @@ -312,6 +313,7 @@ node, as it's much faster to do that on the UI side." TODO: Make this only send the changes to the graph data, not the complete graph." (when (org-roam-buffer-p) + (org-roam-ui--send-variables org-roam-ui-ws-socket) (org-roam-ui--send-graphdata))) (defun org-roam-ui--check-orb-keywords () @@ -571,23 +573,30 @@ from all other links." (defun org-roam-ui--send-variables (ws) "Send miscellaneous org-roam variables through the websocket WS." - (when (boundp 'org-roam-dailies-directory) - (let ((daily-dir (if (file-name-absolute-p org-roam-dailies-directory) - (expand-file-name org-roam-dailies-directory) - (expand-file-name - org-roam-dailies-directory - org-roam-directory))) - (attach-dir (if (boundp 'org-attach-id-dir) org-attach-id-dir (expand-file-name ".attach/" org-directory)))) - (websocket-send-text ws + (let ((daily-dir (if (boundp 'org-roam-dailies-dir) + (if (file-name-absolute-p org-roam-dailies-directory) + (expand-file-name org-roam-dailies-directory) + (expand-file-name + org-roam-dailies-directory + org-roam-directory)) + "/dailies")) + (attach-dir (if (boundp 'org-attach-id-dir) + org-attach-id-dir + (expand-file-name ".attach/" org-directory))) + (sub-dirs (org-roam-ui-find-subdirectories))) + (message "im doing something") + (websocket-send-text org-roam-ui-ws-socket (json-encode `((type . "variables") (data . - (("dailyDir" . + (("subDirs". + ,sub-dirs) + ("dailyDir" . ,daily-dir) ("attachDir" . ,attach-dir) ("roamDir" . ,org-roam-directory) - ("katexMacros" . ,org-roam-ui-latex-macros))))))))) + ("katexMacros" . ,org-roam-ui-latex-macros)))))))) (defun org-roam-ui-sql-to-alist (column-names rows) "Convert sql result to alist for json encoding. @@ -620,6 +629,18 @@ ROWS is the sql result, while COLUMN-NAMES is the columns to use." `(violet . ,(face-foreground font-lock-constant-face)) `(magenta . ,(face-foreground font-lock-preprocessor-face)))) +(defun org-roam-ui-find-subdirectories () + "Find all the subdirectories in the org-roam directory. +TODO: Exclude org-attach dirs." + (seq-filter + (lambda (file) (and (file-directory-p file) (org-roam-ui-allowed-directory-p file))) + (directory-files-recursively org-roam-directory + ".*" t #'org-roam-ui-allowed-directory-p))) + +(defun org-roam-ui-allowed-directory-p (dir) + "Check whether a DIR should be listed as a filterable dir. +Hides . directories." + (not (string-match-p "\\(\/\\|\\\\\\)\\..*?" dir))) ;;;; interactive commands diff --git a/pages/index.tsx b/pages/index.tsx index cf54e92..9b21f7b 100644 --- a/pages/index.tsx +++ b/pages/index.tsx @@ -56,6 +56,7 @@ import { usePersistantState } from '../util/persistant-state' import { ThemeContext, ThemeContextProps } from '../util/themecontext' import { openNodeInEmacs } from '../util/webSocketFunctions' import { drawLabels } from '../components/Graph/drawLabels' +import { VariablesContext } from '../util/variablesContext' const d3promise = import('d3-force-3d') @@ -78,6 +79,7 @@ export interface EmacsVariables { dailyDir?: string katexMacros?: { [key: string]: string } attachDir?: string + subDirs: string[] } export type Tags = string[] export type Scope = { @@ -144,7 +146,7 @@ export function GraphPage() { const nodeByCiteRef = useRef({}) const tagsRef = useRef([]) const graphRef = useRef(null) - const variablesRef = useRef({}) + const [emacsVariables, setEmacsVariables] = useState({} as EmacsVariables) const clusterRef = useRef<{ [id: string]: number }>({}) const currentGraphDataRef = useRef({ nodes: [], links: [] }) @@ -433,8 +435,8 @@ export function GraphPage() { case 'graphdata': return updateGraphData(message.data) case 'variables': - variablesRef.current = message.data - console.log(message.data) + setEmacsVariables(message.data) + console.log(message) return case 'theme': return setEmacsTheme(['custom', message.data]) @@ -545,160 +547,169 @@ export function GraphPage() { windowWidth, ) + console.log(emacsVariables) return ( - - - - {graphData && ( - - )} - - - - - {/* - * - * {mainItem.icon} - * - * {mainItem.title} - * */} - - {scope.nodeIds.length > 0 && ( - + + + + + {graphData && ( + + )} + + + + + {/* + * + * {mainItem.icon} + * + * {mainItem.title} + * */} + + {scope.nodeIds.length > 0 && ( + + } + aria-label="Exit local mode" + onClick={() => + setScope((currentScope: Scope) => ({ + ...currentScope, + nodeIds: [], + })) + } + variant="subtle" + /> + + )} + } - aria-label="Exit local mode" - onClick={() => - setScope((currentScope: Scope) => ({ - ...currentScope, - nodeIds: [], - })) - } + // eslint-disable-next-line react/jsx-no-undef + icon={} + aria-label="Close file-viewer" variant="subtle" + onClick={isOpen ? onClose : onOpen} /> - )} - - } - aria-label="Close file-viewer" - variant="subtle" - onClick={isOpen ? onClose : onOpen} - /> - + - - + - - - - {contextMenu.isOpen && ( -
- + -
- )} - + + {contextMenu.isOpen && ( +
+ +
+ )} + + ) } @@ -842,6 +853,22 @@ export const Graph = function (props: GraphProps) { const filteredNodes = graphData?.nodes ?.filter((nodeArg) => { const node = nodeArg as OrgRoamNode + //dirs + if ( + filter.dirsBlocklist.length && + filter.dirsBlocklist.some((dir) => node?.file?.includes(dir)) + ) { + hiddenNodeIdsRef.current = { ...hiddenNodeIdsRef.current, [node.id]: node } + return false + } + if ( + filter.dirsAllowlist.length > 0 && + !filter.dirsAllowlist.some((dir) => node?.file?.includes(dir)) + ) { + hiddenNodeIdsRef.current = { ...hiddenNodeIdsRef.current, [node.id]: node } + return false + } + if ( filter.tagsBlacklist.length && filter.tagsBlacklist.some((tag) => node?.tags?.indexOf(tag) > -1) diff --git a/themeObjects.json b/themeObjects.json new file mode 100644 index 0000000..130d386 --- /dev/null +++ b/themeObjects.json @@ -0,0 +1,185 @@ +[ + { + "doom-1337-theme": "((bg '(\"#191919\" \"#191919\" nil)) (bg-alt '(\"#252526\" \"#222222\" nil)) (base0 '(\"#171F24\" \"#111122\" \"black\")) (base1 '(\"#1C1C1C\" \"#1C1C1C\" \"brightblack\")) (base2 '(\"#121212\" \"#626262\" \"brightblack\")) (base3 '(\"#3D3D3D\" \"#3D3D3D\" \"brightblack\")) (base4 '(\"#4b474c\" \"#444444\" \"brightblack\")) (base5 '(\"#515151\" \"#515151\" \"brightblack\")) (base6 '(\"#6D6D6D\" \"#6D6D6D\" \"brightblack\")) (base7 '(\"#777778\" \"#767676\" \"brightblack\")) (base8 '(\"#f4f4f4\" \"#a8a8a8\" \"white\")) (fg '(\"#d4d4d4\" \"#d4d4d4\" \"brightwhite\")) (fg-alt '(\"#AEAFAD\" \"#bcbcbc\" \"white\")) (grey base7) (white '(\"#FFFFFF\" \"#FFFFFF\" \"white\")) (red '(\"#FF5E5E\" \"#FF5E5E\" \"red\")) (orange '(\"#FC9354\" \"#FC9354\" \"brightred\")) (green '(\"#468800\" \"#468800\" \"green\")) (light-green '(\"#B5CEA8\" \"#BBCCAA\" \"green\")) (teal '(\"#35CDAF\" \"#33CCAA\" \"brightgreen\")) (yellow '(\"#E9FDAC\" \"#E9FDAC\" \"brightyellow\")) (light-yellow '(\"#FBE3BF\" \"#FBE3BF\" \"brightyellow\")) (blue '(\"#8CDAFF\" \"#8CDAFF\" \"brightblue\")) (dark-blue '(\"#6699CC\" \"#6699CC\" \"blue\")) (magenta '(\"#C586C0\" \"#CC88CC\" \"brightmagenta\")) (violet '(\"#BB80B3\" \"#BB88BB\" \"magenta\")) (dark-violet '(\"#68217A\" \"#662277\" \"magenta\")) (cyan '(\"#85DDFF\" \"#5FD7FF\" \"brightcyan\")) (dark-cyan '(\"#207FA1\" \"#2277AA\" \"cyan\")) (bottomline-blue '(\"#2467D0\" \"#2467D0\" \"blue\")) (vcmodified-blue '(\"#007B9F\" \"#007B9F\" \"blue\")) (vcdeleted-red '(\"#9D0012\" \"#9D0012\" \"red\")) (highlight white) (vertical-bar base2) (selection base5) (builtin dark-blue) (comments base6) (doc-comments base6) (constants orange) (functions blue) (keywords red) (methods dark-blue) (operators red) (type yellow) (strings light-yellow) (variables yellow) (numbers orange) (region (doom-darken base5 0.5)) (error red) (warning yellow) (success green) (vc-modified vcmodified-blue) (vc-added green) (vc-deleted red))" + }, + { + "doom-Iosvkem-theme": "((bg '(\"#1b1d1e\" \"#1b1d1e\" nil)) (bg-alt '(\"#262829\" \"#262829\" nil)) (base0 '(\"#1b1d1e\" \"#1b1d1e\" \"black\")) (base1 '(\"#202020\" \"#202020\" \"brightblack\")) (base2 '(\"#303030\" \"#303030\" \"brightblack\")) (base3 '(\"#303030\" \"#303030\" \"brightblack\")) (base4 '(\"#505050\" \"#505050\" \"brightblack\")) (base5 '(\"#505050\" \"#505050\" \"brightblack\")) (base6 '(\"#808080\" \"#808080\" \"brightblack\")) (base7 '(\"#808080\" \"#808080\" \"brightblack\")) (base8 '(\"#DFDFDF\" \"#dfdfdf\" \"white\")) (fg '(\"#dddddd\" \"#dddddd\" \"white\")) (fg-alt '(\"#5B6268\" \"#2d2d2d\" \"white\")) (grey base4) (red '(\"#d02b61\" \"#d02b61\" \"red\")) (orange '(\"#da8548\" \"#dd8844\" \"brightred\")) (green '(\"#60aa00\" \"#60aa00\" \"green\")) (teal '(\"#4db5bd\" \"#44b9b1\" \"brightgreen\")) (yellow '(\"#d08928\" \"#d08928\" \"yellow\")) (blue '(\"#6c9ef8\" \"#6c9ef8\" \"brightblue\")) (dark-blue '(\"#6688aa\" \"#6688aa\" \"blue\")) (magenta '(\"#b77fdb\" \"#b77fdb\" \"magenta\")) (violet '(\"#a9a1e1\" \"#a9a1e1\" \"brightmagenta\")) (cyan '(\"#00aa80\" \"#00aa80\" \"brightcyan\")) (dark-cyan '(\"#5699AF\" \"#5699AF\" \"cyan\")) (urlblue '(\"#57aadd\" \"#57aadd\" \"blue\")) (iolime '(\"#bbfc20\" \"#bbfc20\" \"green\")) (iopurple '(\"#bb20fc\" \"#bb20fc\" \"magenta\")) (iocyan '(\"#20bbfc\" \"#20bbfc\" \"cyan\")) (iopink '(\"#fc20bb\" \"#fc20bb\" \"red\")) (ioteal '(\"#20fcbb\" \"#20fcbb\" \"brightgreen\")) (highlight iopink) (vertical-bar base2) (selection bg-alt) (builtin magenta) (comments (if doom-Iosvkem-brighter-comments dark-cyan base6)) (doc-comments (doom-lighten (if doom-Iosvkem-brighter-comments dark-cyan base6) 0.25)) (constants green) (functions magenta) (keywords blue) (methods teal) (operators blue) (type cyan) (strings yellow) (variables dark-cyan) (numbers green) (region `(,(doom-lighten (car bg-alt) 0.15) ,@(doom-lighten (cdr base0) 0.35))) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-acario-dark-theme": "((bg '(\"#0D0E16\" \"color-233\" \"black\" )) (bg-alt '(\"#040408\" \"color-232\" \"brightblack\" )) (base0 '(\"#0F1019\" \"color-234\" \"black\" )) (base1 '(\"#121212\" \"color-233\" \"brightblack\" )) (base2 '(\"#1E1E33\" \"color-236\" \"brightblack\" )) (base3 '(\"#464A56\" \"color-240\" \"brightblack\" )) (base4 '(\"#585C6C\" \"color-60\" \"brightblack\" )) (base5 '(\"#767676\" \"color-243\" \"brightblack\" )) (base6 '(\"#959EA5\" \"color-109\" \"white\" )) (base7 '(\"#B2B2B2\" \"color-249\" \"white\" )) (base8 '(\"#D0D0D0\" \"color-252\" \"brightwhite\" )) (fg '(\"#CEDBE5\" \"color-152\" \"brightwhite\" )) (fg-alt '(\"#E5F4FF\" \"color-195\" \"brightwhite\" )) (grey base5) (red '(\"#D83441\" \"color-167\" \"red\" )) (green '(\"#79D836\" \"color-113\" \"green\" )) (yellow '(\"#D8B941\" \"color-179\" \"yellow\" )) (blue '(\"#3679D8\" \"color-68\" \"blue\" )) (magenta '(\"#8041D8\" \"color-98\" \"magenta\" )) (cyan '(\"#36D8BD\" \"color-79\" \"cyan\" )) (orange '(\"#D85F00\" \"color-166\" \"brightred\" )) (teal '(\"#2D9574\" \"color-29\" \"brightcyan\" )) (violet '(\"#AB11D8\" \"color-128\" \"brightmagenta\")) (bg-blue '(\"#0C213E\" \"color-17\" \"brightblack\" )) (dark-blue bg-blue) (bg-cyan '(\"#092D27\" \"color-23\" \"brightblack\" )) (dark-cyan bg-cyan) (highlight orange) (vertical-bar base0) (selection bg-blue) (builtin blue) (comments (if doom-acario-dark-brighter-comments bg-cyan grey)) (doc-comments (doom-lighten (if doom-acario-dark-brighter-comments bg-cyan green) 0.25)) (constants magenta) (functions yellow) (keywords red) (methods cyan) (operators blue) (type blue) (strings green) (variables (doom-lighten cyan 0.4)) (numbers orange) (region base2) (error red) (warning orange) (success green) (vc-modified yellow) (vc-added green) (vc-deleted red))" + }, + { + "doom-acario-light-theme": "((bg '(\"#F5F5F9\" \"color-255\" \"black\" )) (bg-alt '(\"#E9E9F2\" \"color-254\" \"brightblack\" )) (base0 '(\"#D0D0E3\" \"color-188\" \"black\" )) (base1 '(\"#D0D0E3\" \"color-188\" \"brightblack\" )) (base2 '(\"#C0CCD0\" \"color-152\" \"brightblack\" )) (base3 '(\"#9EA6B0\" \"color-103\" \"brightblack\" )) (base4 '(\"#585C6C\" \"color-60\" \"brightblack\" )) (base5 '(\"#4E4E4E\" \"color-239\" \"brightblack\" )) (base6 '(\"#3A3A3A\" \"color-237\" \"white\" )) (base7 '(\"#303030\" \"color-236\" \"white\" )) (base8 '(\"#1E1E33\" \"color-236\" \"brightwhite\" )) (fg '(\"#0F1019\" \"color-234\" \"brightwhite\" )) (fg-alt '(\"#0D0E16\" \"color-233\" \"brightwhite\" )) (grey base5) (red '(\"#D70000\" \"color-160\" \"red\" )) (green '(\"#005F00\" \"color-22\" \"green\" )) (yellow '(\"#AF8700\" \"color-136\" \"yellow\" )) (blue '(\"#1F55A0\" \"color-25\" \"blue\" )) (magenta '(\"#AF005F\" \"color-125\" \"magenta\" )) (cyan '(\"#007687\" \"color-30\" \"cyan\" )) (orange '(\"#D75F00\" \"color-166\" \"brightred\" )) (teal '(\"#009B7C\" \"color-36\" \"brightgreen\" )) (violet '(\"#8700AF\" \"color-91\" \"brightmagenta\")) (bg-blue '(\"#DEEAF8\" \"color-189\" \"blue\" )) (dark-blue bg-blue) (bg-cyan '(\"#D5FAFF\" \"color-195\" \"cyan\" )) (dark-cyan bg-cyan) (highlight teal) (vertical-bar base0) (selection bg-blue) (builtin blue) (comments (if doom-acario-light-brighter-comments cyan grey)) (doc-comments (doom-darken (if doom-acario-light-brighter-comments cyan green) 0.25)) (constants magenta) (functions yellow) (keywords red) (methods cyan) (operators blue) (type blue) (strings green) (variables (doom-darken cyan 0.4)) (numbers orange) (region base2) (error red) (warning orange) (success green) (vc-modified yellow) (vc-added green) (vc-deleted red))" + }, + { + "doom-ayu-light-theme": " ((common-accent '(\"#ff9940\" \"orange\" \"orange\" )) (common-bg '(\"#fafafa\" \"black\" \"black\" )) (common-fg '(\"#575f66\" \"grey\" \"grey\" )) (common-ui '(\"#ba9199\" \"grey\" \"grey\" )) (test '(\"#2ea8e6\" \"grey\" \"grey\" )) (syntax-tag '(\"#55b4d4\" \"cyan\" \"blue\" )) (syntax-func '(\"#f2ae49\" \"yellow\" \"yellow\" )) (syntax-entity '(\"#399ee6\" \"blue\" \"blue\" )) (syntax-string '(\"#86b300\" \"green\" \"green\" )) (syntax-regexp '(\"#4cbf99\" \"teal\" \"green\" )) (syntax-markup '(\"#f07171\" \"red\" \"red\" )) (syntax-keyword '(\"#fa8d3e\" \"orange\" \"orange\" )) (syntax-special '(\"#e6ba7e\" \"yellow\" \"yellow\" )) (syntax-comment '(\"#abb0b6\" \"grey\" \"grey\" )) (syntax-constant '(\"#a37acc\" \"magenta\" \"purple\" )) (syntax-operator '(\"#ed9366\" \"orange\" \"orange\" )) (syntax-error '(\"#f51818\" \"red\" \"red\" )) (ui-line (doom-darken common-bg 0.07)) (ui-panel-shadow (doom-lighten common-bg 0.35)) (ui-panel-border (doom-lighten common-bg 0.45)) (ui-gutter-normal (doom-lighten common-ui 0.45)) (ui-gutter-active common-ui) (ui-selection-bg (doom-blend common-bg test 0.7)) (ui-selection-inactive (doom-lighten test 0.93)) (ui-selection-border (doom-lighten test 0.93)) (ui-guide-active (doom-lighten common-ui 0.75)) (ui-guide-normal (doom-lighten common-ui 0.35)) (ui-org-block (doom-lighten test 0.95)) (elscreen-bg (doom-lighten common-fg 0.65)) (elscreen-fg (doom-darken common-fg 0.85)) (vcs-added '(\"#99bf4d\" \"green\" \"green\" )) (vcs-modified '(\"#709ecc\" \"blue\" \"blue\" )) (vcs-removed '(\"#f27983\" \"red\" \"red\" )) (bg common-bg) (bg-alt common-bg) (base0 ui-gutter-normal) (base1 ui-gutter-active) (base2 ui-selection-bg) (base3 ui-selection-border) (base4 ui-selection-inactive) (base5 ui-guide-active) (base6 ui-guide-normal) (base7 ui-panel-shadow) (base8 ui-panel-border) (fg common-fg) (fg-alt common-ui) (grey syntax-comment) (red syntax-markup) (orange syntax-keyword) (green syntax-string) (teal syntax-regexp) (yellow syntax-func) (blue syntax-entity) (dark-blue (doom-darken syntax-entity 0.2)) (magenta syntax-constant) (violet (doom-lighten syntax-constant 0.2)) (cyan syntax-tag) (dark-cyan (doom-darken syntax-tag 0.2)) (highlight common-accent) (vertical-bar ui-panel-border) (selection ui-selection-inactive) (builtin syntax-func) (comments (if doom-ayu-light-brighter-comments syntax-comment elscreen-bg)) (doc-comments (doom-lighten (if doom-ayu-light-brighter-comments syntax-comment elscreen-bg) 0.25)) (constants syntax-constant) (functions syntax-func) (keywords syntax-keyword) (methods syntax-func) (operators syntax-operator) (type syntax-special) (strings syntax-string) (variables common-fg) (numbers syntax-func) (region ui-selection-bg) (error syntax-error) (warning yellow) (success green) (vc-modified vcs-modified) (vc-added vcs-added) (vc-deleted vcs-removed))" + }, + { + "doom-ayu-mirage-theme": " ( (common-accent '(\"#ffcc66\" \"orange\" \"orange\" )) (common-bg '(\"#1f2430\" \"black\" \"black\" )) (common-fg '(\"#cbccc6\" \"grey\" \"grey\" )) (common-ui '(\"#707a8c\" \"grey\" \"grey\" )) (test '(\"#7399e6\" \"grey\" \"grey\" )) (syntax-tag '(\"#5ccfe6\" \"cyan\" \"blue\" )) (syntax-func '(\"#ffd580\" \"yellow\" \"yellow\" )) (syntax-entity '(\"#73d0ff\" \"blue\" \"blue\" )) (syntax-string '(\"#bae67e\" \"green\" \"green\" )) (syntax-regexp '(\"#95e6cb\" \"teal\" \"green\" )) (syntax-markup '(\"#f28779\" \"red\" \"red\" )) (syntax-keyword '(\"#ffa759\" \"orange\" \"orange\" )) (syntax-special '(\"#ffe6b3\" \"yellow\" \"yellow\" )) (syntax-comment '(\"#5c6773\" \"grey\" \"grey\" )) (syntax-constant '(\"#d4bfff\" \"magenta\" \"purple\" )) (syntax-operator '(\"#f29e74\" \"orange\" \"orange\" )) (syntax-error '(\"#ff3333\" \"red\" \"red\" )) (ui-line (doom-darken common-bg 0.25)) (ui-panel-shadow (doom-darken common-bg 0.35)) (ui-panel-border (doom-darken common-bg 0.45)) (ui-gutter-normal (doom-darken common-ui 0.45)) (ui-gutter-active common-ui) (ui-selection-bg (doom-blend common-bg test 0.8)) (ui-selection-inactive (doom-lighten test 0.93)) (ui-selection-border (doom-lighten test 0.93)) (ui-guide-normal (doom-darken common-ui 0.35)) (ui-guide-active (doom-darken common-ui 0.75)) (ui-org-block (doom-darken common-bg 0.10)) (elscreen-bg (doom-darken common-ui 0.55)) (elscreen-fg ui-line) (vcs-added '(\"#a6cc70\" \"green\" \"green\" )) (vcs-modified '(\"#77a8d9\" \"blue\" \"blue\" )) (vcs-removed '(\"#f27983\" \"red\" \"red\" )) (bg common-bg) (bg-alt ui-line) (base0 ui-gutter-normal) (base1 ui-gutter-active) (base2 ui-selection-bg) (base3 ui-org-block) (base4 ui-selection-border) (base5 ui-guide-normal) (base6 ui-guide-normal) (base7 ui-panel-shadow) (base8 ui-panel-border) (fg common-fg) (fg-alt common-ui) (grey ui-line) (red syntax-markup) (orange syntax-keyword) (green syntax-string) (teal syntax-regexp) (yellow syntax-func) (blue syntax-entity) (dark-blue (doom-darken syntax-entity 0.2)) (magenta syntax-constant) (violet (doom-lighten syntax-constant 0.2)) (cyan syntax-tag) (dark-cyan test) (highlight common-accent) (vertical-bar ui-panel-border) (selection nil) (builtin nil) (comments (if doom-ayu-mirage-brighter-comments dark-cyan base5)) (doc-comments (doom-lighten (if doom-ayu-mirage-brighter-comments dark-cyan base5) 0.25)) (constants syntax-constant) (functions syntax-func) (keywords syntax-keyword) (methods syntax-func) (operators syntax-operator) (type syntax-special) (strings syntax-string) (variables common-fg) (numbers syntax-func) (region ui-selection-bg) (error syntax-error) (warning yellow) (success green) (vc-modified vcs-modified) (vc-added vcs-added) (vc-deleted vcs-removed))" + }, + { + "doom-badger-theme": "((bg '(\"#171717\" nil nil )) (bg-alt '(\"#2f2f2f\" nil nil )) (base0 '(\"#1D1D1D\" \"black\" \"black\" )) (base1 '(\"#1c1f24\" \"#1e1e1e\" \"brightblack\" )) (base2 '(\"#202328\" \"#2e2e2e\" \"brightblack\" )) (base3 '(\"#23272e\" \"#262626\" \"brightblack\" )) (base4 '(\"#433F4f\" \"#3f3f3f\" \"brightblack\" )) (base5 '(\"#635770\" \"#525252\" \"brightblack\" )) (base6 '(\"#656868\" \"#6b6b6b\" \"brightblack\" )) (base7 '(\"#9ca0a4\" \"#979797\" \"brightblack\" )) (base8 '(\"#DFDFDF\" \"#dfdfdf\" \"white\" )) (fg '(\"#F6F3E8\" \"#bfbfbf\" \"brightwhite\" )) (fg-alt '(\"#FBF9F3\" \"#2d2d2d\" \"white\" )) (grey base4) (red '(\"#E2434C\" \"#ff6655\" \"red\" )) (orange '(\"#EA9847\" \"#dd8844\" \"brightred\" )) (green '(\"#86B187\" \"#99bb66\" \"green\" )) (teal '(\"#65A399\" \"#44b9b1\" \"brightgreen\" )) (yellow '(\"#E0D063\" \"#ECBE7B\" \"yellow\" )) (blue '(\"#8AC6F2\" \"#51afef\" \"brightblue\" )) (dark-blue '(\"#2257A0\" \"#2257A0\" \"blue\" )) (magenta '(\"#E18Cbb\" \"#c678dd\" \"brightmagenta\")) (violet '(\"#BF93C3\" \"#a9a1e1\" \"magenta\" )) (cyan '(\"cyan\" \"#46D9FF\" \"brightcyan\" )) (dark-cyan '(\"#5699AF\" \"#5699AF\" \"cyan\" )) (olive '(\"#9AA68E\")) (lime '(\"#84C452\")) (link '(\"#8ACDAA\")) (dull-red '(\"#A55662\")) (brown '(\"#AC8952\")) (sand '(\"#C7B299\")) (salmon '(\"#F28B86\")) (dark-violet '(\"#635770\")) (highlight blue) (vertical-bar (doom-darken base4 0.1)) (selection dark-blue) (builtin salmon) (comments (if doom-badger-brighter-comments base7 base6)) (doc-comments (doom-lighten (if doom-badger-brighter-comments base7 base6) 0.25)) (constants dark-violet) (functions orange) (keywords blue) (methods cyan) (operators sand) (type sand) (strings green) (variables violet) (numbers fg) (region `(,(doom-lighten (car bg-alt) 0.1) ,@(doom-lighten (cdr base0) 0.1))) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-challenger-deep-theme": "((bg '(\"#1E1C31\" \"#121212\" nil )) (bg-alt '(\"#12111E\" \"#111111\" nil )) (base0 '(\"#100E23\" \"#080808\" \"black\" )) (base1 '(\"#292F37\" \"#262626\" \"brightblack\" )) (base2 '(\"#3D4551\" \"#3A3A3A\" \"brightblack\" )) (base3 '(\"#4C4B68\" \"#444466\" \"brightblack\" )) (base4 '(\"#565575\" \"#555577\" \"brightblack\" )) (base5 '(\"#858FA5\" \"#8888AA\" \"brightblack\" )) (base6 '(\"#9BA7BF\" \"#99AABB\" \"brightblack\" )) (base7 '(\"#B0BED8\" \"#BBBBDD\" \"brightblack\" )) (base8 '(\"#BAC9E4\" \"#BBCCEE\" \"white\" )) (fg-alt '(\"#B2B2B2\" \"#BBBBBB\" \"brightwhite\" )) (fg '(\"#CBE3E7\" \"#CCEEEE\" \"white\" )) (grey base4) (red '(\"#FF8080\" \"#FF8888\" \"red\" )) (orange '(\"#FFB378\" \"#FFBB77\" \"brightred\" )) (green '(\"#95FFA4\" \"#99FFAA\" \"green\" )) (teal '(\"#63F2F1\" \"#66FFFF\" \"brightgreen\" )) (yellow '(\"#FFE9AA\" \"#FFEEAA\" \"yellow\" )) (blue '(\"#91DDFF\" \"#99DDFF\" \"brightblue\" )) (dark-blue '(\"#65B2FF\" \"#66BBFF\" \"blue\" )) (magenta '(\"#C991E1\" \"#CC99EE\" \"magenta\" )) (violet '(\"#906CFF\" \"#9966FF\" \"brightmagenta\")) (cyan '(\"#AAFFE4\" \"#AAFFEE\" \"brightcyan\" )) (dark-cyan '(\"#62D196\" \"#66DD99\" \"cyan\" )) (highlight violet) (vertical-bar base1) (selection violet) (builtin magenta) (comments (if doom-challenger-deep-brighter-comments dark-blue base4)) (doc-comments (if doom-challenger-deep-brighter-comments (doom-darken dark-cyan 0.3) base5) ) (constants cyan) (functions magenta) (keywords red) (methods magenta) (operators teal) (type blue) (strings yellow) (variables yellow) (numbers orange) (region base2) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-city-lights-theme": "((bg '(\"#1D252C\" nil nil )) (bg-alt '(\"#181E24\" nil nil )) (base0 '(\"#10151C\" \"black\" \"black\" )) (base1 '(\"#171D22\" \"#111122\" \"brightblack\" )) (base2 '(\"#20282F\" \"#222222\" \"brightblack\" )) (base3 '(\"#28323B\" \"#223333\" \"brightblack\" )) (base4 '(\"#384551\" \"#334455\" \"brightblack\" )) (base5 '(\"#56697A\" \"#556677\" \"brightblack\" )) (base6 '(\"#688094\" \"#668899\" \"brightblack\" )) (base7 '(\"#7FA0B7\" \"#77AABB\" \"brightblack\" )) (base8 '(\"#9CAABB\" \"#99AABB\" \"white\" )) (fg-alt '(\"#728CA0\" \"#7788AA\" \"brightwhite\" )) (fg '(\"#A0B3C5\" \"#AABBCC\" \"white\" )) (grey '(\"#41505E\" \"#ff6655\" \"red\" )) (red '(\"#D95468\" \"#ff6655\" \"red\" )) (orange '(\"#D98E48\" \"#dd8844\" \"brightred\" )) (green '(\"#8BD49C\" \"#99bb66\" \"green\" )) (teal '(\"#33CED8\" \"#33CCDD\" \"brightgreen\" )) (yellow '(\"#EBBF83\" \"#EEBB88\" \"yellow\" )) (blue '(\"#5EC4FF\" \"#55CCFF\" \"brightblue\" )) (bright-blue '(\"#539AFC\" \"#5599FF\" \"blue\" )) (dark-blue '(\"#718CA1\" \"#7788AA\" \"blue\" )) (magenta '(\"#E27E8D\" \"#EE7788\" \"magenta\" )) (violet '(\"#B62D65\" \"#BB2266\" \"brightmagenta\")) (cyan '(\"#70E1E8\" \"#77EEEE\" \"brightcyan\" )) (dark-cyan '(\"#008B94\" \"#008899\" \"cyan\" )) (highlight blue) (vertical-bar (doom-darken base1 0.5)) (selection dark-blue) (builtin blue) (comments (if doom-city-lights-brighter-comments dark-cyan grey)) (doc-comments (doom-lighten (if doom-city-lights-brighter-comments dark-cyan grey) 0.25)) (constants magenta) (functions teal) (keywords blue) (methods cyan) (operators blue) (type yellow) (strings bright-blue) (variables dark-blue) (numbers magenta) (region base3) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-dark+-theme": "((bg '(\"#1e1e1e\" \"#1e1e1e\" nil)) (bg-alt '(\"#252526\" \"#222222\" nil)) (base0 '(\"#171F24\" \"#111122\" \"black\")) (base1 '(\"#1C1C1C\" \"#1C1C1C\" \"brightblack\")) (base2 '(\"#121212\" \"#626262\" \"brightblack\")) (base3 '(\"#313131\" \"#3a3a3a\" \"brightblack\")) (base4 '(\"#4b474c\" \"#444444\" \"brightblack\")) (base5 '(\"#37474F\" \"#585858\" \"brightblack\")) (base6 '(\"#237AD3\" \"#2277DD\" \"brightblack\")) (base7 '(\"#777778\" \"#767676\" \"brightblack\")) (base8 '(\"#f4f4f4\" \"#a8a8a8\" \"white\")) (fg '(\"#d4d4d4\" \"#e4e4e4\" \"brightwhite\")) (fg-alt '(\"#AEAFAD\" \"#bcbcbc\" \"white\")) (grey base7) (red '(\"#D16969\" \"#DD6666\" \"red\")) (orange '(\"#DB8E73\" \"#DD8877\" \"brightred\")) (green '(\"#579C4C\" \"#559944\" \"green\")) (light-green '(\"#B5CEA8\" \"#BBCCAA\" \"green\")) (teal '(\"#35CDAF\" \"#33CCAA\" \"brightgreen\")) (yellow '(\"#D7BA7D\" \"#DDBB77\" \"brightyellow\")) (light-yellow '(\"#D9DAA2\" \"#DDDDAA\" \"brightyellow\")) (blue '(\"#339CDB\" \"#3399DD\" \"brightblue\")) (dark-blue '(\"#124F7B\" \"#114477\" \"blue\")) (magenta '(\"#C586C0\" \"#CC88CC\" \"brightmagenta\")) (violet '(\"#BB80B3\" \"#BB88BB\" \"magenta\")) (dark-violet '(\"#68217A\" \"#662277\" \"magenta\")) (cyan '(\"#85DDFF\" \"#5FD7FF\" \"brightcyan\")) (dark-cyan '(\"#207FA1\" \"#2277AA\" \"cyan\")) (highlight base6) (vertical-bar bg-alt) (selection base4) (builtin magenta) (comments green) (doc-comments base7) (constants blue) (functions light-yellow) (keywords blue) (methods light-yellow) (operators cyan) (type teal) (strings orange) (variables cyan) (numbers light-green) (region (doom-darken base6 0.5)) (error red) (warning yellow) (success green) (vc-modified blue) (vc-added green) (vc-deleted red))" + }, + { + "doom-dracula-theme": "((bg '(\"#282a36\" \"#262626\" \"black\" )) (bg-alt '(\"#1E2029\" \"#1c1c1c\" \"black\" )) (base0 '(\"#1E2029\" \"#1c1c1c\" \"black\" )) (base1 '(\"#282a36\" \"#1e1e1e\" \"brightblack\" )) (base2 '(\"#373844\" \"#2e2e2e\" \"brightblack\" )) (base3 '(\"#44475a\" \"#262626\" \"brightblack\" )) (base4 '(\"#565761\" \"#3f3f3f\" \"brightblack\" )) (base5 '(\"#6272a4\" \"#525252\" \"brightblack\" )) (base6 '(\"#b6b6b2\" \"#bbbbbb\" \"brightblack\" )) (base7 '(\"#ccccc7\" \"#cccccc\" \"brightblack\" )) (base8 '(\"#f8f8f2\" \"#dfdfdf\" \"white\" )) (fg '(\"#f8f8f2\" \"#ffffff\" \"white\" )) (fg-alt '(\"#e2e2dc\" \"#bfbfbf\" \"brightwhite\" )) (grey base4) (red '(\"#ff5555\" \"#ff6655\" \"red\" )) (orange '(\"#ffb86c\" \"#ffbb66\" \"brightred\" )) (green '(\"#50fa7b\" \"#55ff77\" \"green\" )) (teal '(\"#0189cc\" \"#0088cc\" \"brightgreen\" )) (yellow '(\"#f1fa8c\" \"#ffff88\" \"yellow\" )) (blue '(\"#61bfff\" \"#66bbff\" \"brightblue\" )) (dark-blue '(\"#0189cc\" \"#0088cc\" \"blue\" )) (magenta '(\"#ff79c6\" \"#ff77cc\" \"magenta\" )) (violet '(\"#bd93f9\" \"#bb99ff\" \"brightmagenta\")) (cyan '(\"#8be9fd\" \"#88eeff\" \"brightcyan\" )) (dark-cyan '(\"#8be9fd\" \"#88eeff\" \"cyan\" )) (highlight violet) (vertical-bar (doom-darken base1 0.1)) (selection dark-blue) (builtin orange) (comments (if doom-dracula-brighter-comments dark-cyan base5)) (doc-comments (doom-lighten (if doom-dracula-brighter-comments dark-cyan base5) 0.25)) (constants cyan) (functions green) (keywords magenta) (methods teal) (operators violet) (type violet) (strings yellow) (variables (doom-lighten magenta 0.6)) (numbers violet) (region `(,(car base3) ,@(cdr base1))) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-ephemeral-theme": "((bg '(\"#323f4e\" \"#000000\" \"black\" )) (fg '(\"#f8f8f2\" \"#f8f8f2\" \"white\" )) (bg-alt '(\"#28323e\" \"#000000\" \"black\" )) (fg-alt '(\"#fdfdfd\" \"#fdfdfd\" \"brightwhite\" )) (base0 '(\"#181e26\" \"black\" \"black\" )) (base1 '(\"#1e262d\" \"#1e262f\" \"brightblack\" )) (base2 '(\"#242d39\" \"#242d39\" \"brightblack\" )) (base3 '(\"#2a3542\" \"#2a3542\" \"brightblack\" )) (base4 '(\"#323f4e\" \"#323f4e\" \"brightblack\" )) (base5 '(\"#364455\" \"#364455\" \"brightblack\" )) (base6 '(\"#505d6f\" \"#505d6f\" \"brightblack\" )) (base7 '(\"#77818f\" \"#77818f\" \"brightblack\" )) (base8 '(\"#ebedef\" \"#ebedef\" \"white\" )) (grey '(\"#3d4c5f\" \"#3d4c5f\" \"grey\" )) (red '(\"#f48fb1\" \"#f48fb1\" \"red\" )) (orange '(\"#f2a272\" \"#f2a272\" \"brightred\" )) (green '(\"#53e2ae\" \"#53e2ae\" \"green\" )) (teal '(\"#a1efd3\" \"#a1efd3\" \"brightgreen\" )) (yellow '(\"#f1fa8c\" \"#f1fa8c\" \"yellow\" )) (blue '(\"#92b6f4\" \"#92b6f4\" \"brightblue\" )) (dark-blue '(\"#9f92f4\" \"#9f92f4\" \"blue\" )) (magenta '(\"#BD99FF\" \"#c574dd\" \"magenta\" )) (violet '(\"#8897f4\" \"#8897f4\" \"brightmagenta\")) (dark-violet '(\"#985EFF\" \"#8897f4\" \"brightmagenta\")) (cyan '(\"#79e6f3\" \"#87dfeb\" \"brightcyan\" )) (dark-cyan '(\"#24d1e7\" \"#24d1e7\" \"cyan\" )) (pink '(\"#c574dd\" \"#c574dd\" \"grey\" )) (light-pink (doom-lighten pink 0.6)) (dark-grey (doom-darken grey 0.3) ) (light-grey '(\"#56687e\" \"#56687e\" \"grey\" )) (alt-blue '(\"#87DFEB\" \"#87dfeb\" \"brightblue\" )) (highlight alt-blue) (vertical-bar bg-alt) (selection blue) (builtin yellow) (comments light-grey) (doc-comments light-grey) (constants dark-violet) (functions alt-blue) (keywords yellow) (methods teal) (operators blue) (type cyan) (strings red) (variables light-pink) (numbers green) (region base1) (error orange) (warning yellow) (success green) (vc-modified teal) (vc-added blue) (vc-deleted orange))" + }, + { + "doom-fairy-floss-theme": "((bg '(\"#5a5475\" nil nil )) (bg-alt '(\"#343145\" nil nil )) (base0 '(\"#464258\" \"black\" \"black\" )) (base1 '(\"#514C66\" \"#1e1e1e\" \"brightblack\" )) (base2 '(\"#6A6483\" \"#2e2e2e\" \"brightblack\" )) (base3 '(\"#9673D3\" \"#262626\" \"brightblack\" )) (base4 '(\"#A0A0C0\" \"#3f3f3f\" \"brightblack\" )) (base5 '(\"#B8A2CE\" \"#525252\" \"brightblack\" )) (base6 '(\"#726C8A\" \"#6b6b6b\" \"brightblack\" )) (base7 '(\"#5B576C\" \"#979797\" \"brightblack\" )) (base8 '(\"#716799\" \"#dfdfdf\" \"white\" )) (fg-alt '(\"#B5B2Bd\" \"#2d2d2d\" \"white\" )) (fg '(\"#F8F8F0\" \"#bfbfbf\" \"brightwhite\" )) (grey '(\"#656565\" \"#515154\" \"brightblack\" )) (red '(\"#CC6666\" \"#CC6666\" \"red\" )) (orange '(\"#E6C000\" \"#E6C000\" \"brightred\" )) (green '(\"#C2FFDF\" \"#C2FFDF\" \"green\" )) (yellow '(\"#FFEA00\" \"#FFEA00\" \"yellow\" )) (blue '(\"#55b3cc\" \"#55b3cc\" \"brightblue\" )) (teal '(\"#8295D6\" \"#8295D6\" \"brightgreen\" )) (dark-blue '(\"#167be2\" \"#3F88AD\" \"blue\" )) (magenta '(\"#FFB8D1\" \"#FFB8D1\" \"magenta\" )) (violet '(\"#C5A3FF\" \"#C5A3FF\" \"brightmagenta\")) (cyan '(\"#96CBFE\" \"#C2FFDF\" \"brightcyan\" )) (dark-cyan '(\"#204052\" \"#204052\" \"cyan\" )) (highlight violet) (vertical-bar (doom-darken base1 0.5)) (selection dark-blue) (builtin blue) (comments (if doom-fairy-floss-brighter-comments cyan orange)) (doc-comments violet) (constants violet) (functions green) (keywords cyan) (methods green) (operators orange) (type cyan) (strings yellow) (variables magenta) (numbers violet) (region base0) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-flatwhite-theme": "( (fw-base1 '(\"#605a52\" \"#666666\" \"black\")) (fw-base2 '(\"#93836c\" \"#999966\" \"brightblack\")) (fw-base3 '(\"#b9a992\" \"#cc9999\" \"brightblack\")) (fw-base4 '(\"#dcd3c6\" \"#cccccc\" \"brightblack\")) (fw-base5 '(\"#e4ddd2\" \"#cccccc\" \"brightblack\")) (fw-base6 '(\"#f1ece4\" \"#ffffcc\" \"brightblack\")) (fw-base7 '(\"#f7f3ee\" \"#ffffff\" \"brightblack\")) (fw-accent '(\"#6a4dff\" \"#6666ff\" \"brightblue\")) (fw-orange-text '(\"#5b5143\" \"#666633\" \"brightblack\")) (fw-orange-text-sec '(\"#957f5f\" \"#996666\" \"brightblack\")) (fw-orange '(\"#f08c00\" \"#ff9900\" \"orange\")) (fw-orange-blend '(\"#f7e0c3\" \"#ffcccc\" \"brightorange\")) (fw-red-text '(\"#5b4343\" \"#663333\" \"brightblack\")) (fw-red-text-sec '(\"#955f5f\" \"#996666\" \"brightblack\")) (fw-red '(\"#f00000\" \"#ff0000\" \"red\")) (fw-red-blend '(\"#f6cfcb\" \"#ffcccc\" \"brightred\")) (fw-green-text '(\"#525643\" \"#666633\" \"brightblack\")) (fw-green-text-sec '(\"#81895d\" \"#999966\" \"brightblack\")) (fw-green '(\"#84bd00\" \"#99cc00\" \"green\")) (fw-green-blend '(\"#e2e9c1\" \"#ccffcc\" \"brightgreen\")) (fw-teal-text '(\"#465953\" \"#336666\" \"brightblack\")) (fw-teal-text-sec '(\"#5f8c7d\" \"#669966\" \"brightblack\")) (fw-teal '(\"#00bda4\" \"#00cc99\" \"cyan\")) (fw-teal-blend '(\"#d2ebe3\" \"#ccffcc\" \"brightcyan\")) (fw-blue-text '(\"#4c5361\" \"#336666\" \"brightblack\")) (fw-blue-text-sec '(\"#7382a0\" \"#669999\" \"brightblack\")) (fw-blue '(\"#75a3ff\" \"#6699ff\" \"blue\")) (fw-blue-blend '(\"#dde4f2\" \"#ccccff\" \"brightblue\")) (fw-purple-text '(\"#614c61\" \"#663366\" \"brightblack\")) (fw-purple-text-sec '(\"#9c739c\" \"#996699\" \"brightblack\")) (fw-purple '(\"#ce5cff\" \"#cc66ff\" \"purple\")) (fw-purple-blend '(\"#f1ddf1\" \"#ffccff\" \"brightpurple\")) (bg `(,(car fw-base7) nil nil )) (bg-alt `(,(car fw-base6) nil nil )) (base0 fw-base6) (base1 fw-base5 ) (base2 fw-base4 ) (base3 fw-base3 ) (base4 fw-base2 ) (base5 fw-base1 ) (base6 '(\"#202328\" nil \"brightblack\" )) (base7 '(\"#1c1f24\" nil \"brightblack\" )) (base8 '(\"#1b2229\" nil \"black\" )) (fg `(,(car fw-base1) nil \"black\" )) (fg-alt `(,(car fw-base2) nil \"brightblack\" )) (grey base3) (red fw-red-text-sec) (orange fw-orange-text-sec) (green fw-green-text-sec) (teal fw-teal-text-sec) (yellow fw-orange-text-sec) (blue fw-blue-text-sec) (dark-blue fw-blue-text-sec) (magenta fw-purple-text-sec) (violet fw-purple-text-sec) (cyan fw-teal-text-sec) (dark-cyan fw-teal-text-sec) (fw--light-accent (doom-lighten fw-accent 0.85)) (highlight blue) (vertical-bar (doom-darken base2 0.1)) (selection dark-blue) (builtin magenta) (comments base3) (doc-comments (doom-darken comments 0.15)) (constants violet) (functions magenta) (keywords red) (methods cyan) (operators blue) (type orange) (strings green) (variables (doom-darken magenta 0.36)) (numbers orange) (region `(,(doom-darken (car bg-alt) 0.1) ,@(doom-darken (cdr base0) 0.3))) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-gruvbox-light-theme": "((bg (cond ((equal doom-gruvbox-light-variant \"hard\") '(\"#f9f5d7\" \"#ffffd7\" nil)) ((equal doom-gruvbox-light-variant \"soft\") '(\"#f2e5bc\" \"#ffffd7\" nil)) (t '(\"#fbf1c7\" \"#ffffd7\" nil)))) (bg-alt (cond ((equal doom-gruvbox-light-variant \"hard\") '(\"#fbf1c7\" \"#ffffd7\" nil)) ((equal doom-gruvbox-light-variant \"soft\") '(\"#ebdbb2\" \"#ffffaf\" nil)) (t '(\"#f2e5bc\" \"#ffffd7\" nil)))) (base0 '(\"#f0f0f0\" \"#f0f0f0\" \"white\" )) (base1 '(\"#ebdbb2\" \"#ffffaf\" \"brightblack\" )) (base2 '(\"#d5c4a1\" \"#d7d6af\" \"brightblack\" )) (base3 '(\"#bdae93\" \"#afaf87\" \"brightblack\" )) (base4 '(\"#a89984\" \"#afafaf\" \"brightblack\" )) (base5 '(\"#504945\" \"#4e4e4e\" \"brightblack\" )) (base6 '(\"#3c3836\" \"#3a3a3a\" \"brightblack\" )) (base7 '(\"#282828\" \"#262626\" \"brightblack\" )) (base8 '(\"#1d2021\" \"#1c1c1c\" \"black\" )) (fg '(\"#282828\" \"#262626\" \"black\" )) (fg-alt '(\"#1c1c1c\" \"#1c1c1c\" \"brightblack\" )) (grey '(\"#928374\" \"#8a8a8a\" \"grey\" )) (red '(\"#9d0006\" \"#870000\" \"red\" )) (orange '(\"#af3a03\" \"#af5f00\" \"brightred\" )) (green '(\"#79740e\" \"#878700\" \"green\" )) (teal '(\"#4db5bd\" \"#44b9b1\" \"brightgreen\" )) (yellow '(\"#b57614\" \"#af8700\" \"yellow\" )) (blue '(\"#076678\" \"#005f87\" \"brightblue\" )) (dark-blue '(\"#2b3c44\" \"#000087\" \"blue\" )) (magenta '(\"#b16286\" \"#d75f87\" \"magenta\" )) (violet '(\"#8f3f71\" \"#875f87\" \"brightmagenta\" )) (cyan '(\"#427b58\" \"#5f8787\" \"brightcyan\" )) (dark-cyan '(\"#36473a\" \"#005f5f\" \"cyan\" )) (delimiter-3 '(\"#8ec07c\" \"#87af87\" )) (light3 '(\"#665c54\" \"#626262\" \"grey\" )) (light4 '(\"#7c6f64\" \"#767676\" \"grey\" )) (faded-red '(\"#cc241d\" \"#d75f5f\" \"red\" )) (faded-green '(\"#98971a\" \"#afaf00\" \"green\" )) (faded-yellow '(\"#d79921\" \"#ffaf00\" \"yellow\" )) (faded-blue '(\"#458588\" \"#87afaf\" \"blue\" )) (faded-orange '(\"#d65d0e\" \"#ff8700\" \"brightorange\" )) (faded-aqua '(\"#689d6a\" \"#87af87\" \"brightcyan\" )) (dark-red '(\"#421E1E\" \"#5f0000\" )) (dark-blue '(\"#2B3C44\" \"#000087\" )) (dark-aqua '(\"#36473A\" \"#005f5f\" )) (sienna '(\"#dd6f48\" \"d7875f\" )) (lightblue4 '(\"#66999D\" \"#5fafaf\" \"brightblue\" )) (burlywood4 '(\"#BBAA97\" \"#aafaf87\" )) (aquamarine4 '(\"#83af98\" \"#87af87\" )) (turquoise4 '(\"#61ACBB\" \"#5fafaf\" \"brightblue\" )) (highlight base4) (vertical-bar (doom-darken base1 0.1)) (selection base3) (builtin orange) (comments (if doom-gruvbox-light-brighter-comments base5 base4)) (doc-comments green) (constants violet) (functions yellow) (keywords red) (methods cyan) (operators blue) (type violet) (strings green) (variables blue) (numbers violet) (region `(,(doom-darken (car bg-alt) 0.1) ,@(doom-darken (cdr base0) 0.3))) (error red) (warning orange) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-gruvbox-theme": "((bg (cond ((equal doom-gruvbox-dark-variant \"hard\") '(\"#1d2021\" \"#1e1e1e\" nil)) ((equal doom-gruvbox-dark-variant \"soft\") '(\"#32302f\" \"#323232\" nil)) (t '(\"#282828\" \"#282828\" nil)))) (bg-alt (cond ((equal doom-gruvbox-dark-variant \"hard\") '(\"#0d1011\" \"black\" nil)) ((equal doom-gruvbox-dark-variant \"soft\") '(\"#282828\" \"#282828\" nil)) (t '(\"#1d2021\" \"#1e1e1e\" nil)))) (bg-alt2 '(\"#504945\" \"#504945\" \"brown\" )) (base0 '(\"#0d1011\" \"black\" \"black\" )) (base1 '(\"#1d2021\" \"#1d1d1d\" \"brightblack\")) (base2 '(\"#282828\" \"#282828\" \"brightblack\")) (base3 '(\"#3c3836\" \"#383838\" \"brightblack\")) (base4 '(\"#665c54\" \"#5c5c5c\" \"brightblack\")) (base5 '(\"#7c6f64\" \"#6f6f6f\" \"brightblack\")) (base6 '(\"#928374\" \"#909090\" \"brightblack\")) (base7 '(\"#d5c4a1\" \"#cccccc\" \"brightblack\")) (base8 '(\"#fbf1c7\" \"#fbfbfb\" \"brightwhite\")) (fg '(\"#ebdbb2\" \"#dfdfdf\" \"brightwhite\")) (fg-alt '(\"#d5c4a1\" \"#cccccc\" \"brightwhite\")) (grey '(\"#928374\" \"#909090\" \"brightblack\")) (red '(\"#fb4934\" \"#e74c3c\" \"red\")) (magenta '(\"#cc241d\" \"#cc241d\" \"magenta\")) (violet '(\"#d3869b\" \"#d3869b\" \"brightmagenta\")) (orange '(\"#fe8019\" \"#fd971f\" \"orange\")) (yellow '(\"#fabd2f\" \"#fabd2f\" \"yellow\")) (dark-yellow '(\"#d79921\" \"#fabd2f\" \"yellow\")) (teal '(\"#8ec07c\" \"#8ec07c\" \"green\")) (green '(\"#b8bb26\" \"#b8bb26\" \"green\")) (dark-green '(\"#98971a\" \"#98971a\" \"green\")) (blue '(\"#83a598\" \"#83a598\" \"brightblue\")) (dark-blue '(\"#458588\" \"#458588\" \"blue\")) (cyan '(\"#8ec07c\" \"#8ec07c\" \"brightcyan\")) (dark-cyan '(\"#689d6a\" \"#689d6a\" \"cyan\")) (highlight yellow) (vertical-bar bg-alt2) (selection bg-alt2) (builtin orange) (comments (if doom-gruvbox-brighter-comments magenta grey)) (doc-comments (if doom-gruvbox-brighter-comments (doom-lighten magenta 0.2) (doom-lighten fg-alt 0.25))) (constants violet) (functions green) (keywords red) (methods green) (operators fg) (type yellow) (strings green) (variables blue) (numbers violet) (region bg-alt2) (error red) (warning yellow) (success green) (vc-modified (doom-darken cyan 0.15)) (vc-added (doom-darken green 0.15)) (vc-deleted (doom-darken red 0.15))" + }, + { + "doom-henna-theme": "((bg '(\"#21272e\" nil nil )) (bg-alt '(\"#1B1F23\" nil nil )) (base0 '(\"#10151a\" \"black\" \"black\" )) (base1 '(\"#181A1F\" \"#2e2e2e\" \"brightblack\" )) (base2 '(\"#1B1F23\" \"#262626\" \"brightblack\" )) (base3 '(\"#262D35\" \"#3f3f3f\" \"brightblack\" )) (base4 '(\"#282C34\" \"#525252\" \"brightblack\" )) (base5 '(\"#2c313a\" \"#6b6b6b\" \"brightblack\" )) (base6 '(\"#3B4048\" \"#979797\" \"brightblack\" )) (base7 '(\"#495162\" \"#dfdfdf\" \"white\" )) (base8 '(\"#606F73\" \"#1e1e1e\" \"brightblack\" )) (fg '(\"#f8f8f0\" \"#bfbfbf\" \"brightwhite\" )) (fg-alt '(\"#6B717D\" \"#979797\" \"white\" )) (grey '(\"#737c8c\")) (red '(\"#e74c3c\" \"#ff6655\" \"red\" )) (green '(\"#53df83\" \"#99bb66\" \"green\" )) (teal '(\"#1abc9c\" \"#44b9b1\" \"brightgreen\" )) (blue '(\"#56b5c2\" \"#51afef\" \"brightblue\" )) (cyan '(\"#56b6c2\" \"#46D9FF\" \"brightcyan\" )) (orange red) (yellow '(\"#ECBE7B\" \"#ECBE7B\" \"yellow\" )) (magenta '(\"#FFB8D1\" \"#FFB8D1\" \"magenta\" )) (violet '(\"#C5A3FF\" \"#C5A3FF\" \"brightmagenta\")) (dark-blue '(\"#2257A0\" \"#2257A0\" \"blue\" )) (dark-cyan '(\"#2e4a54\" \"#204052\" \"cyan\" )) (green-alt '(\"#9cd230\" )) (green-dark '(\"#30c965\" )) (highlight red) (vertical-bar (doom-darken base1 0.1)) (selection cyan) (builtin teal) (comments base8) (doc-comments base8) (constants teal) (functions red) (keywords teal) (methods red) (operators red) (type red) (strings green) (variables fg) (numbers teal) (region dark-cyan) (error red) (warning yellow) (success green) (vc-modified blue) (vc-added green-alt) (vc-deleted (doom-darken red 0.2))" + }, + { + "doom-homage-black-theme": "((bg '(\"#000000\" nil nil )) (bg-alt '(\"#000000\" nil nil )) (base0 '(\"#1B2229\" \"black\" \"black\" )) (base1 '(\"#1c1f24\" \"#1e1e1e\" \"brightblack\" )) (base2 '(\"#202328\" \"#2e2e2e\" \"brightblack\" )) (base3 '(\"#23272e\" \"#262626\" \"brightblack\" )) (base4 '(\"#3f444a\" \"#3f3f3f\" \"brightblack\" )) (base5 '(\"#5B6268\" \"#525252\" \"brightblack\" )) (base6 '(\"#73797e\" \"#6b6b6b\" \"brightblack\" )) (base7 '(\"#9ca0a4\" \"#979797\" \"brightblack\" )) (base8 '(\"#DFDFDF\" \"#dfdfdf\" \"white\" )) (fg '(\"#bbc2cf\" \"#bfbfbf\" \"brightwhite\" )) (fg-alt '(\"#5B6268\" \"#2d2d2d\" \"white\" )) (grey base5) (red '(\"#ff6c6b\" \"#ff6655\" \"red\" )) (orange '(\"#b4916d\" \"#b4916d\" \"brightred\" )) (green '(\"#98be65\" \"#99bb66\" \"green\" )) (teal '(\"#4db5bd\" \"#44b9b1\" \"brightgreen\" )) (yellow '(\"#ECBE7B\" \"#ECBE7B\" \"yellow\" )) (blue '(\"#0170bf\" \"#0170bf\" \"brightblue\" )) (dark-blue '(\"#003c64\" \"#0170bf\" \"blue\" )) (magenta '(\"#c678dd\" \"#c678dd\" \"brightmagenta\")) (violet '(\"#a9a1e1\" \"#a9a1e1\" \"magenta\" )) (cyan '(\"#46D9FF\" \"#46D9FF\" \"brightcyan\" )) (dark-cyan '(\"#5699AF\" \"#5699AF\" \"cyan\" )) (highlight blue) (vertical-bar (doom-darken base2 0.1)) (selection dark-blue) (builtin fg) (comments green) (doc-comments (doom-darken comments 0.15)) (constants fg) (functions blue) (keywords fg) (methods fg) (operators fg) (type fg) (strings orange) (variables fg) (numbers orange) (region `(,(doom-darken (car dark-blue) 0.1) ,@(doom-darken (cdr base0) 0.3))) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-homage-white-theme": "((bg '(\"#fafafa\" nil nil )) (bg-alt '(\"#f0f0f0\" nil nil )) (base0 '(\"#f0f0f0\" \"#f0f0f0\" \"white\" )) (base1 '(\"#e7e7e7\" \"#e7e7e7\" \"brightblack\" )) (base2 '(\"#dfdfdf\" \"#dfdfdf\" \"brightblack\" )) (base3 '(\"#c6c7c7\" \"#c6c7c7\" \"brightblack\" )) (base4 '(\"#9ca0a4\" \"#9ca0a4\" \"brightblack\" )) (base5 '(\"#383a42\" \"#424242\" \"brightblack\" )) (base6 '(\"#202328\" \"#2e2e2e\" \"brightblack\" )) (base7 '(\"#1c1f24\" \"#1e1e1e\" \"brightblack\" )) (base8 '(\"#1b2229\" \"black\" \"black\" )) (fg '(\"#383a42\" \"#424242\" \"black\" )) (fg-alt '(\"#c6c7c7\" \"#c7c7c7\" \"brightblack\" )) (grey base5) (red '(\"#e45649\" \"#e45649\" \"red\" )) (orange '(\"#8a3b3c\" \"#dd8844\" \"brightred\" )) (green '(\"#556b2f\" \"#556b2f\" \"green\" )) (teal '(\"#4db5bd\" \"#44b9b1\" \"brightgreen\" )) (yellow '(\"#986801\" \"#986801\" \"yellow\" )) (yellow-alt '(\"#fafadd\" \"#fafadd\" \"yellow\" )) (blue '(\"#014980\" \"#014980\" \"brightblue\" )) (dark-blue '(\"#030f64\" \"#030f64\" \"blue\" )) (magenta '(\"#a626a4\" \"#a626a4\" \"magenta\" )) (violet '(\"#b751b6\" \"#b751b6\" \"brightmagenta\")) (cyan '(\"#0184bc\" \"#0184bc\" \"brightcyan\" )) (dark-cyan '(\"#005478\" \"#005478\" \"cyan\" )) (highlight blue) (vertical-bar (doom-darken base2 0.1)) (selection base3) (builtin fg) (comments green) (doc-comments (doom-darken comments 0.15)) (constants fg) (functions blue) (keywords fg) (methods fg) (operators fg) (type fg) (strings orange) (variables fg) (numbers orange) (region `(,(doom-darken (car bg-alt) 0.1) ,@(doom-darken (cdr base0) 0.3))) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-horizon-theme": "((bg '(\"#232530\" nil nil )) (bg-alt '(\"#1c1e26\" nil nil )) (base0 '(\"#16161c\" \"black\" \"black\" )) (base1 '(\"#1a1c23\" \"#111111\" \"brightblack\" )) (base2 '(\"#1d1f27\" \"#333333\" \"brightblack\" )) (base3 '(\"#232530\" \"#555555\" \"white\" )) (base4 '(\"#6a6a6a\" \"#6a6a6a\" \"white\" )) (base5 '(\"#f9cec3\" \"#f9cec3\" \"white\" )) (base6 '(\"#f9cbbe\" \"#f9cbbe\" \"white\" )) (base7 '(\"#fadad1\" \"#fadad1\" \"white\" )) (base8 '(\"#fdf0ed\" \"#fdf0ed\" \"white\" )) (fg-alt '(\"#fdf0ed\" \"#fdf0ed\" \"brightwhite\" )) (fg '(\"#c7c9cb\" \"#c7c9cb\" \"white\" )) (grey base4) (red '(\"#e95678\" \"#e95678\" \"red\" )) (orange '(\"#f09383\" \"#f09383\" \"brightred\" )) (green '(\"#09f7a0\" \"#09f7a0\" \"green\" )) (teal '(\"#87ceeb\" \"#87ceeb\" \"brightgreen\" )) (yellow '(\"#fab795\" \"#fab795\" \"yellow\" )) (blue '(\"#21bfc2\" \"#21bfc2\" \"brightblue\" )) (dark-blue '(\"#25b2bc\" \"#25b2bc\" \"blue\" )) (magenta '(\"#6c6f93\" \"#6c6f93\" \"magenta\" )) (violet '(\"#b877db\" \"#b877db\" \"brightmagenta\")) (cyan '(\"#59e3e3\" \"#59e3e3\" \"brightcyan\" )) (dark-cyan '(\"#27d797\" \"#27d797\" \"cyan\" )) (hor-highlight `(,(doom-lighten (car base3) 0.05) ,@(cdr base2))) (hor-highlight-selected (doom-lighten base3 0.1)) (hor-highlight-bright (doom-lighten base3 0.2)) (hor-highlight-brighter (doom-lighten base3 0.5)) (highlight red) (vertical-bar base0) (selection violet) (builtin violet) (comments (if doom-horizon-brighter-comments magenta hor-highlight-bright)) (doc-comments yellow) (constants orange) (functions teal) (keywords violet) (methods magenta) (operators teal) (type teal) (strings yellow) (variables red) (numbers orange) (region hor-highlight) (error red) (warning dark-cyan) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-ir-black-theme": "((bg '(\"#000000\" \"black\" \"black\" )) (fg '(\"#f6f3e8\" \"#f6f3e8\" \"brightwhite\" )) (bg-alt '(\"#121212\" \"black\" \"black\" )) (fg-alt '(\"#5B6268\" \"#2d2d2d\" \"white\" )) (base0 '(\"#1B2229\" \"black\" \"black\" )) (base1 '(\"#1c1f24\" \"#1e1e1e\" \"brightblack\" )) (base2 '(\"#202328\" \"#2e2e2e\" \"brightblack\" )) (base3 '(\"#23272e\" \"#262626\" \"brightblack\" )) (base4 '(\"#3f444a\" \"#3f3f3f\" \"brightblack\" )) (base5 '(\"#5B6268\" \"#525252\" \"brightblack\" )) (base6 '(\"#73797e\" \"#6b6b6b\" \"brightblack\" )) (base7 '(\"#9ca0a4\" \"#979797\" \"brightblack\" )) (base8 '(\"#DFDFDF\" \"#dfdfdf\" \"white\" )) (white '(\"#ffffff\" \"#ffffff\" \"white\")) (grey base4) (red '(\"#ff6c60\" \"#ff6c60\" \"red\" )) (orange '(\"#E9C062\" \"#E9C062\" \"brightred\" )) (orange-alt '(\"#FFD2A7\" \"#FFD2A7\" \"brightred\" )) (green '(\"#A8FF60\" \"#A8FF60\" \"green\" )) (green-alt '(\"#99CC99\" \"#99CC99\" \"green\" )) (teal '(\"#00A0A0\" \"#00A0A0\" \"brightgreen\" )) (yellow '(\"#FFFFB6\" \"#FFFFB6\" \"yellow\" )) (blue '(\"#96CBFE\" \"#96CBFE\" \"brightblue\" )) (dark-blue '(\"#2257A0\" \"#2257A0\" \"blue\" )) (magenta '(\"#FF73FD\" \"#FF73FD\" \"magenta\" )) (violet '(\"#a9a1e1\" \"#a9a1e1\" \"brightmagenta\")) (cyan '(\"#C6C5FE\" \"#C6C5FE\" \"brightcyan\" )) (dark-cyan '(\"#5699AF\" \"#5699AF\" \"cyan\" )) (highlight blue) (vertical-bar base5) (selection cyan) (builtin magenta) (comments (if doom-ir-black-brighter-comments dark-cyan base5)) (doc-comments (doom-lighten (if doom-ir-black-brighter-comments dark-cyan base5) 0.25)) (constants green-alt) (functions orange-alt) (keywords blue) (methods cyan) (operators white) (type yellow) (strings green) (variables (doom-lighten magenta 0.4)) (numbers magenta) (region `(,(doom-lighten (car bg-alt) 0.15) ,@(doom-lighten (cdr base0) 0.35))) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-laserwave-theme": "((bg '(\"#27212E\" nil nil )) (bg-alt '(\"#1B1720\" nil nil )) (base0 '(\"#222228\" \"black\" \"black\" )) (base1 '(\"#24262D\" \"#222222\" \"brightblack\" )) (base2 '(\"#282b33\" \"#222233\" \"brightblack\" )) (base3 '(\"#3E3549\" \"#333344\" \"brightblack\" )) (base4 '(\"#4E415C\" \"#444455\" \"brightblack\" )) (base5 '(\"#544863\" \"#554466\" \"brightblack\" )) (base6 '(\"#ED60BA\" \"#EE66BB\" \"brightblack\" )) (base7 '(\"#91889B\" \"#998899\" \"brightblack\" )) (base8 '(\"#ECEFF4\" \"#EEEEFF\" \"white\" )) (fg-alt '(\"#EEEEEE\" \"#EEEEEE\" \"brightwhite\" )) (fg '(\"#FFFFFF\" \"#FFFFFF\" \"white\" )) (grey base4) (red '(\"#964C7B\" \"#964477\" \"red\" )) (orange '(\"#FFB85B\" \"#FFBB55\" \"brightred\" )) (green '(\"#74DFC4\" \"#77DDCC\" \"green\" )) (teal '(\"#4D8079\" \"#448877\" \"brightgreen\" )) (yellow '(\"#FFE261\" \"#FFEE66\" \"yellow\" )) (blue '(\"#40B4C4\" \"#44BBCC\" \"brightblue\" )) (dark-blue '(\"#336A79\" \"#336677\" \"blue\" )) (magenta '(\"#EB64B9\" \"#EE66BB\" \"brightmagenta\")) (violet '(\"#B381C5\" \"#BB88CC\" \"magenta\" )) (cyan '(\"#B4DCE7\" \"#BBDDEE\" \"brightcyan\" )) (dark-cyan '(\"#6D7E8A\" \"#667788\" \"cyan\" )) (highlight magenta) (vertical-bar (doom-darken base1 0.2)) (selection dark-blue) (builtin magenta) (comments base7) (doc-comments (doom-lighten dark-cyan 0.25)) (constants violet) (functions magenta) (keywords blue) (methods cyan) (operators blue) (type yellow) (strings cyan) (variables fg) (numbers orange) (region `(,(doom-blend (car bg) (car magenta) 0.8) ,@(doom-lighten (cdr base1) 0.35))) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-manegarm-theme": " ( (-bg '(\"#1c1408\" nil nil )) (-bg-alt '(\"#181107\" nil nil )) (bg (if doom-manegarm-darker-background -bg-alt -bg)) (bg-alt (if doom-manegarm-darker-background -bg -bg-alt)) (base0 '(\"#1B2229\" \"black\" \"black\" )) (base1 '(\"#1c1f24\" \"#1c1f24\" \"brightblack\" )) (base2 '(\"#202328\" \"#202328\" \"brightblack\" )) (base3 '(\"#23272e\" \"#23272e\" \"brightblack\" )) (base4 '(\"#3f444a\" \"#3f444a\" \"brightblack\" )) (base5 '(\"#95836f\" \"#95836f\" \"brightblack\" )) (base6 '(\"#73797e\" \"#73797e\" \"brightblack\" )) (base7 '(\"#9ca0a4\" \"#9ca0a4\" \"brightblack\" )) (base8 '(\"#dfdfdf\" \"#dfdfdf\" \"white\" )) (fg '(\"#5b8512\" \"#5b8512\" \"brightwhite\" )) (fg-alt '(\"#4f7410\" \"#4f7410\" \"white\" )) (grey '(\"#707a6a\" \"#707a6a\" \"brightblack\" )) (red '(\"#ff4e00\" \"#ff4e00\" \"red\" )) (orange '(\"#ff7000\" \"#ff7000\" \"brightred\" )) (green '(\"#7cb518\" \"#7cb518\" \"green\" )) (teal '(\"#dbc077\" \"#dbc077\" \"brightgreen\" )) (yellow '(\"#ffbf00\" \"#ffbf00\" \"yellow\" )) (blue '(\"#0075c4\" \"#0075c4\" \"brightblue\" )) (dark-blue '(\"#0060a1\" \"#0060a1\" \"blue\" )) (magenta '(\"#d72638\" \"#d72638\" \"brightmagenta\")) (violet '(\"#76597b\" \"#76597b\" \"magenta\" )) (cyan '(\"#898989\" \"#898989\" \"brightcyan\" )) (dark-cyan '(\"#4f7410\" \"#4f7410\" \"cyan\" )) (highlight yellow) (vertical-bar (doom-darken grey 0.4)) (selection (doom-darken dark-cyan 0.8)) (builtin yellow) (comments grey) (doc-comments grey) (constants orange) (functions orange) (keywords red) (methods red) (operators yellow) (type green) (strings (doom-darken teal 0.1)) (variables green) (numbers teal) (region (doom-darken dark-cyan 0.7)) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red) )" + }, + { + "doom-material-theme": "((bg '(\"#263238\" nil nil)) (bg-alt '(\"#1C262B\" nil nil)) (base0 '(\"#171F24\" \"black\" \"black\")) (base1 '(\"#1C262B\" \"#262626\" \"brightblack\")) (base2 '(\"#222D32\" \"#303030\" \"brightblack\")) (base3 '(\"#171F24\" \"#3a3a3a\" \"brightblack\")) (base4 '(\"#314048\" \"#444444\" \"brightblack\")) (base5 '(\"#37474F\" \"#585858\" \"brightblack\")) (base6 '(\"#556369\" \"#626262\" \"brightblack\")) (base7 '(\"#737E84\" \"#767676\" \"brightblack\")) (base8 '(\"#9BA3A7\" \"#a8a8a8\" \"white\")) (fg '(\"#EEFFFF\" \"#e4e4e4\" \"brightwhite\")) (fg-alt '(\"#BFC7D5\" \"#bcbcbc\" \"white\")) (grey base5) (red '(\"#ff5370\" \"#ff0000\" \"red\")) (orange '(\"#f78c6c\" \"#ff5f00\" \"brightred\")) (green '(\"#c3e88d\" \"#afff00\" \"green\")) (teal '(\"#44b9b1\" \"#00d7af\" \"brightgreen\")) (yellow '(\"#ffcb6b\" \"#ffd700\" \"brightyellow\")) (blue '(\"#82aaff\" \"#5fafff\" \"brightblue\")) (dark-blue '(\"#7986E7\" \"#d7ffff\" \"blue\")) (magenta '(\"#c792ea\" \"#d787d7\" \"brightmagenta\")) (violet '(\"#bb80b3\" \"#d787af\" \"magenta\")) (cyan '(\"#89DDFF\" \"#5fd7ff\" \"brightcyan\")) (dark-cyan '(\"#80cbc4\" \"#00d7af\" \"cyan\")) (highlight magenta) (vertical-bar base2) (selection base4) (builtin blue) (comments base6) (doc-comments base6) (constants orange) (functions blue) (keywords cyan) (methods blue) (operators cyan) (type magenta) (strings green) (variables yellow) (numbers orange) (region base3) (error red) (warning yellow) (success green) (vc-modified blue) (vc-added green) (vc-deleted red))" + }, + { + "doom-miramare-theme": "((bg '(\"#2a2426\" \"#2a2426\" nil )) (bg-alt '(\"#242021\" \"#242021\" nil )) (bg-alt2 '(\"#504945\" \"#504945\" \"brown\" )) (for region, selection etc.) (base0 '(\"#0d1011\" \"black\" \"black\" )) (base1 '(\"#1d2021\" \"#1d1d1d\" \"brightblack\")) (base2 '(\"#282828\" \"#282828\" \"brightblack\")) (base3 '(\"#3c3836\" \"#383838\" \"brightblack\")) (base4 '(\"#5b5b5b\" \"#5c5c5c\" \"brightblack\")) (base5 '(\"#7c6f64\" \"#6f6f6f\" \"brightblack\")) (base6 '(\"#928374\" \"#909090\" \"brightblack\")) (base7 '(\"#d5c4a1\" \"#cccccc\" \"brightblack\")) (base8 '(\"#fbf1c7\" \"#fbfbfb\" \"brightwhite\")) (fg '(\"#e6d6ac\" \"#e6d6ac\" \"brightwhite\")) (fg-alt '(\"#d8caac\" \"#d8caac\" \"brightwhite\")) (grey '(\"#5b5b5b\" \"#5b5b5b\" \"brightblack\")) (red '(\"#e68183\" \"#e68183\" \"red\")) (magenta '(\"#e68183\" \"#e68183\" \"magenta\")) (violet '(\"#d3a0bc\" \"#d3a0bc\" \"brightmagenta\")) (orange '(\"#e39b7b\" \"#e39b7b\" \"orange\")) (yellow '(\"#d9bb80\" \"#d9bb80\" \"yellow\")) (teal '(\"#87af87\" \"#87af87\" \"green\")) (green '(\"#87af87\" \"#87af87\" \"green\")) (dark-green '(\"#678f67\" \"#678f67\" \"green\")) '(\"#89beba\" \"#89beba\" \"brightblue\")) (dark-blue '(\"#458588\" \"#458588\" \"blue\")) (cyan '(\"#87c095\" \"#87c095\" \"brightcyan\")) (dark-cyan '(\"#67a075\" \"#67a075\" \"cyan\")) (highlight yellow) (vertical-bar grey) (selection bg-alt2) (builtin orange) (comments (if doom-miramare-brighter-comments magenta grey)) (doc-comments (if doom-miramare-brighter-comments (doom-lighten magenta 0.2) (doom-lighten fg-alt 0.25))) (constants violet) (functions cyan) (keywords red) (methods cyan) (operators cyan) (type yellow) (strings green) (variables cyan) (numbers violet) (region bg-alt2) (error red) (warning yellow) (success green) (vc-modified (doom-darken blue 0.15)) (vc-added (doom-darken green 0.15)) (vc-deleted (doom-darken red 0.15))" + }, + { + "doom-molokai-theme": "((bg '(\"#1c1e1f\" \"black\" \"black\" )) (fg '(\"#d6d6d4\" \"#dfdfdf\" \"brightwhite\" )) (bg-alt '(\"#222323\" \"black\" \"black\" )) (fg-alt '(\"#556172\" \"#4d4d4d\" \"white\" )) (base0 '(\"#1B2229\" \"black\" \"black\" )) (base1 '(\"#151617\" \"#101010\" \"brightblack\" )) (base2 '(\"#1d1f20\" \"#191919\" \"brightblack\" )) (base3 '(\"#2d2e2e\" \"#252525\" \"brightblack\" )) (base4 '(\"#4e4e4e\" \"#454545\" \"brightblack\" )) (base5 '(\"#555556\" \"#6b6b6b\" \"brightblack\" )) (base6 '(\"#767679\" \"#7b7b7b\" \"brightblack\" )) (base7 '(\"#cfc0c5\" \"#c1c1c1\" \"brightblack\" )) (base8 '(\"#ffffff\" \"#ffffff\" \"brightwhite\" )) (grey '(\"#525254\" \"#515154\" \"brightblack\" )) (red '(\"#e74c3c\" \"#e74c3c\" \"red\" )) (orange '(\"#fd971f\" \"#fd971f\" \"brightred\" )) (green '(\"#b6e63e\" \"#b6e63e\" \"green\" )) (teal green) (yellow '(\"#e2c770\" \"#e2c770\" \"yellow\" )) (blue '(\"#268bd2\" \"#2686D6\" \"brightblue\" )) (dark-blue '(\"#727280\" \"#727280\" \"blue\" )) (magenta '(\"#fb2874\" \"#fb2874\" \"magenta\" )) (violet '(\"#9c91e4\" \"#9c91e4\" \"brightmagenta\")) (cyan '(\"#66d9ef\" \"#66d9ef\" \"brightcyan\" )) (dark-cyan '(\"#8fa1b3\" \"#8FA1B3\" \"cyan\" )) (highlight orange) (vertical-bar (doom-lighten bg 0.1)) (selection base5) (builtin orange) (comments (if doom-molokai-brighter-comments violet base5)) (doc-comments (if doom-molokai-brighter-comments (doom-lighten violet 0.1) (doom-lighten base5 0.25))) (constants orange) (functions green) (keywords magenta) (methods cyan) (operators violet) (type cyan) (strings yellow) (variables orange) (numbers violet) (region base4) (error red) (warning yellow) (success green) (vc-modified cyan) (vc-added (doom-darken green 0.15)) (vc-deleted red))" + }, + { + "doom-monokai-classic-theme": "((bg '(\"#272822\" nil nil )) (bg-alt '(\"#1D1E19\" nil nil )) (base0 '(\"#1B2229\" \"black\" \"black\" )) (base1 '(\"#161613\" \"#101010\" \"brightblack\")) (base2 '(\"#1D1F20\" \"#191919\" \"brightblack\")) (base3 '(\"#2D2E2E\" \"#252525\" \"brightblack\")) (base4 '(\"#4E4E4E\" \"#454545\" \"brightblack\")) (base5 '(\"#555556\" \"#6B6B6B\" \"brightblack\")) (base6 '(\"#767679\" \"#7B7B7B\" \"brightblack\")) (base7 '(\"#CFC0C5\" \"#C1C1C1\" \"brightblack\")) (base8 '(\"#FFFFFF\" \"#FFFFFF\" \"brightwhite\")) (fg '(\"#F8F8F2\" \"#DFDFDF\" \"brightwhite\")) (fg-alt '(\"#556172\" \"#4D4D4D\" \"white\")) (grey '(\"#525254\" \"#525254\" \"brightblack\")) (red '(\"#E74C3C\" \"#E74C3C\" \"red\")) (orange '(\"#FD971F\" \"#FD971F\" \"brightred\")) (green '(\"#A6E22E\" \"#A6E22E\" \"green\")) (teal green) (yellow '(\"#E6DB74\" \"#E6DB74\" \"yellow\")) (blue '(\"#268bd2\" \"#268bd2\" \"brightblue\")) (dark-blue '(\"#727280\" \"#727280\" \"blue\")) (magenta '(\"#F92660\" \"#F92660\" \"magenta\")) (violet '(\"#9C91E4\" \"#9C91E4\" \"brightmagenta\")) (cyan '(\"#66D9EF\" \"#66D9EF\" \"brightcyan\")) (dark-cyan '(\"#8FA1B3\" \"#8FA1B3\" \"cyan\")) (highlight orange) (vertical-bar (doom-lighten bg 0.1)) (selection base5) (builtin orange) (comments (if doom-monokai-classic-brighter-comments violet base5)) (doc-comments (if doom-monokai-classic-brighter-comments (doom-lighten violet 0.1) (doom-lighten base5 0.25))) (constants violet) (functions green) (keywords magenta) (methods green) (operators magenta) (type cyan) (strings yellow) (variables fg) (numbers violet) (region base4) (error red) (warning yellow) (success green) (vc-modified cyan) (vc-added (doom-darken green 0.15)) (vc-deleted red))" + }, + { + "doom-monokai-machine-theme": "((bg '(\"#273136\" nil nil )) (bg-alt '(\"#1E2528\" nil nil )) (base0 '(\"#131313\" \"#121212\" \"black\" )) (base1 '(\"#161b1e\" \"#1c1c1c\" \"black\" )) (base2 '(\"#2e363b\" \"#262626\" \"brightblack\" )) (base3 '(\"#3a4449\" \"#3a3a3a\" \"brightblack\" )) (base4 '(\"#545f62\" \"#585858\" \"brightblack\" )) (base5 '(\"#5a6568\" \"#585858\" \"brightblack\" )) (base6 '(\"#6b7678\" \"#6c6c6c\" \"brightblack\" )) (base7 '(\"#8b9798\" \"#8a8a8a\" \"brightblack\" )) (base8 '(\"#b4c1c0\" \"#bcbcbc\" \"white\" )) (fg '(\"#f2fffc\" \"#ffffff\" \"brightwhite\" )) (fg-alt '(\"#c6c6c6\" \"#c6c6c6\" \"white\" )) (grey base4) (red '(\"#ff6d7e\" \"#ff69bf\" \"red\" )) (orange '(\"#ffb270\" \"#ff7f50\" \"brightred\" )) (green '(\"#a2e57b\" \"#90ee90\" \"green\" )) (yellow '(\"#ffed72\" \"#f0e68c\" \"yellow\" )) (violet '(\"#baa0f8\" \"#9370db\" \"magenta\" )) (cyan '(\"#7cd5f1\" \"#40e0d0\" \"brightcyan\" )) (magenta cyan) (blue cyan) (dark-blue cyan) (teal cyan) (dark-cyan cyan) (highlight yellow) (vertical-bar (doom-lighten bg 0.1)) (selection base2) (builtin violet) (comments (if doom-monokai-machine-brighter-comments violet base6)) (doc-comments (if doom-monokai-machine-brighter-comments (doom-lighten violet 0.1) (doom-lighten base6 0.25))) (constants violet) (functions green) (keywords magenta) (methods green) (operators red) (type cyan) (strings yellow) (variables fg) (numbers violet) (region base3) (error red) (warning orange) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-monokai-octagon-theme": "((bg '(\"#282a3a\" nil nil )) (bg-alt '(\"#1E1F2B\" nil nil )) (base0 '(\"#131313\" \"#121212\" \"black\" )) (base1 '(\"#161821\" \"#1c1c1c\" \"black\" )) (base2 '(\"#2e313d\" \"#262626\" \"brightblack\" )) (base3 '(\"#3a3d4b\" \"#3a3a3a\" \"brightblack\" )) (base4 '(\"#535763\" \"#585858\" \"brightblack\" )) (base5 '(\"#595d68\" \"#585858\" \"brightblack\" )) (base6 '(\"#696d77\" \"#6c6c6c\" \"brightblack\" )) (base7 '(\"#888d94\" \"#8a8a8a\" \"brightblack\" )) (base8 '(\"#afb5b9\" \"#bcbcbc\" \"white\" )) (fg '(\"#eaf2f1\" \"#ffffff\" \"brightwhite\" )) (fg-alt '(\"#c6c6c6\" \"#c6c6c6\" \"white\" )) (grey base4) (red '(\"#ff657a\" \"#ff69bf\" \"red\" )) (orange '(\"#ff95be\" \"#ff7f50\" \"brightred\" )) (green '(\"#bad761\" \"#90ee90\" \"green\" )) (yellow '(\"#ffd76d\" \"#f0e68c\" \"yellow\" )) (violet '(\"#c39ac9\" \"#9370db\" \"magenta\" )) (cyan '(\"#9cd1bb\" \"#40e0d0\" \"brightcyan\" )) (magenta cyan) (blue cyan) (dark-blue cyan) (teal cyan) (dark-cyan cyan) (highlight yellow) (vertical-bar (doom-lighten bg 0.1)) (selection base2) (builtin violet) (comments (if doom-monokai-octagon-brighter-comments violet base6)) (doc-comments (if doom-monokai-octagon-brighter-comments (doom-lighten violet 0.1) (doom-lighten base6 0.25))) (constants violet) (functions green) (keywords magenta) (methods green) (operators red) (type cyan) (strings yellow) (variables fg) (numbers violet) (region base3) (error red) (warning orange) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-monokai-pro-theme": "((bg '(\"#2D2A2E\" nil nil )) (bg-alt '(\"#221F22\" nil nil )) (base0 '(\"#19181A\" \"black\" \"black\" )) (base1 '(\"#1B1B1B\" \"#1B1B1B\" )) (base2 '(\"#212122\" \"#212122\" )) (base3 '(\"#2B2B2B\" \"#2B2B2B\" \"brightblack\")) (base4 '(\"#383539\" \"#3F4040\" \"brightblack\")) (base5 '(\"#4C4A4D\" \"#5C5E5E\" \"brightblack\")) (base6 '(\"#727072\" \"#757878\" \"brightblack\")) (base7 '(\"#c1c0c0\" \"#969896\" \"brightblack\")) (base8 '(\"#FCFCFA\" \"#FCFCFA\" \"white\" )) (fg '(\"#FCFCFA\" \"#939293\" \"white\")) (fg-alt '(\"#939293\" \"#A3A2A3\" \"white\")) (grey '(\"#727072\" \"#727072\" \"brightblack\")) (red '(\"#CC6666\" \"#CC6666\" \"red\")) (orange '(\"#FC9867\" \"#FC9867\" \"orange\")) (green '(\"#A9DC76\" \"#A9DC76\" \"green\")) (teal green) (yellow '(\"#FFD866\" \"#FFD866\" \"yellow\")) (blue '(\"#78DCE8\" \"#78DCE8\" \"blue\")) (dark-blue '(\"#81A2BE\" \"#81A2BE\" \"blue\")) (magenta '(\"#FF6188\" \"#FF6188\" \"violet\")) (violet '(\"#AB9DF2\" \"#AB9DF2\" \"violet\")) (cyan blue) (dark-cyan dark-blue) (highlight base8) (vertical-bar (doom-lighten bg 0.1)) (selection base5) (builtin blue) (comments grey) (doc-comments yellow) (constants violet) (functions green) (keywords magenta) (methods green) (operators magenta) (type blue) (strings yellow) (variables base8) (numbers violet) (region selection) (error red) (warning yellow) (success green) (vc-modified fg-alt) (vc-added green) (vc-deleted red))" + }, + { + "doom-monokai-ristretto-theme": "((bg '(\"#2c2525\" nil nil )) (bg-alt '(\"#201C1C\" nil nil )) (base0 '(\"#131313\" \"#121212\" \"black\" )) (base1 '(\"#191515\" \"#1c1c1c\" \"black\" )) (base2 '(\"#332c2c\" \"#262626\" \"brightblack\" )) (base3 '(\"#403838\" \"#3a3a3a\" \"brightblack\" )) (base4 '(\"#5b5353\" \"#585858\" \"brightblack\" )) (base5 '(\"#615959\" \"#585858\" \"brightblack\" )) (base6 '(\"#72696a\" \"#6c6c6c\" \"brightblack\" )) (base7 '(\"#948a8b\" \"#8a8a8a\" \"brightblack\" )) (base8 '(\"#bfb3b5\" \"#bcbcbc\" \"white\" )) (fg '(\"#fff1f3\" \"#ffffff\" \"brightwhite\" )) (fg-alt '(\"#c6c6c6\" \"#c6c6c6\" \"white\" )) (grey base4) (red '(\"#fd6883\" \"#ff69bf\" \"red\" )) (orange '(\"#f38d70\" \"#ff7f50\" \"brightred\" )) (green '(\"#adda78\" \"#90ee90\" \"green\" )) (yellow '(\"#f9cc6c\" \"#f0e68c\" \"yellow\" )) (violet '(\"#a8a9eb\" \"#9370db\" \"magenta\" )) (cyan '(\"#85dacc\" \"#40e0d0\" \"brightcyan\" )) (magenta cyan) (blue cyan) (dark-blue cyan) (teal cyan) (dark-cyan cyan) (highlight yellow) (vertical-bar (doom-lighten bg 0.1)) (selection base2) (builtin violet) (comments (if doom-monokai-ristretto-brighter-comments violet base6)) (doc-comments (if doom-monokai-ristretto-brighter-comments (doom-lighten violet 0.1) (doom-lighten base6 0.25))) (constants violet) (functions green) (keywords magenta) (methods green) (operators red) (type cyan) (strings yellow) (variables fg) (numbers violet) (region base3) (error red) (warning orange) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-monokai-spectrum-theme": "((bg '(\"#222222\" nil nil )) (bg-alt '(\"#191919\" nil nil )) (base0 '(\"#131313\" \"#121212\" \"black\" )) (base1 '(\"#191919\" \"#1c1c1c\" \"black\" )) (base2 '(\"#2c2c2d\" \"#262626\" \"brightblack\" )) (base3 '(\"#363537\" \"#3a3a3a\" \"brightblack\" )) (base4 '(\"#525053\" \"#585858\" \"brightblack\" )) (base5 '(\"#585659\" \"#585858\" \"brightblack\" )) (base6 '(\"#69676c\" \"#6c6c6c\" \"brightblack\" )) (base7 '(\"#8b888f\" \"#8a8a8a\" \"brightblack\" )) (base8 '(\"#b6b2bc\" \"#bcbcbc\" \"white\" )) (fg '(\"#f7f1ff\" \"#ffffff\" \"brightwhite\" )) (fg-alt '(\"#c6c6c6\" \"#c6c6c6\" \"white\" )) (grey base4) (red '(\"#fc618d\" \"#ff69bf\" \"red\" )) (orange '(\"#fd9353\" \"#ff7f50\" \"brightred\" )) (green '(\"#7bd88f\" \"#90ee90\" \"green\" )) (yellow '(\"#fce566\" \"#f0e68c\" \"yellow\" )) (violet '(\"#948ae3\" \"#9370db\" \"magenta\" )) (cyan '(\"#5ad4e6\" \"#40e0d0\" \"brightcyan\" )) (magenta cyan) (blue cyan) (dark-blue cyan) (teal cyan) (dark-cyan cyan) (highlight yellow) (vertical-bar (doom-lighten bg 0.1)) (selection base2) (builtin violet) (comments (if doom-monokai-spectrum-brighter-comments violet base6)) (doc-comments (if doom-monokai-spectrum-brighter-comments (doom-lighten violet 0.1) (doom-lighten base6 0.25))) (constants violet) (functions green) (keywords magenta) (methods green) (operators red) (type cyan) (strings yellow) (variables fg) (numbers violet) (region base3) (error red) (warning orange) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-moonlight-theme": "((bg '(\"#212337\" \"#212337\" \"black\")) (bg-alt '(\"#191a2a\" \"#191a2a\" \"black\")) (base0 '(\"#161a2a\" \"#161a2a\" \"black\")) (base1 '(\"#191a2a\" \"#191a2a\" \"brightblack\")) (base2 '(\"#1e2030\" \"#1e2030\" \"brightblack\")) (base3 '(\"#222436\" \"#222436\" \"brightblack\")) (base4 '(\"#2f334d\" \"#2f334d\" \"brightblack\")) (base5 '(\"#444a73\" \"#444a73\" \"brightblack\")) (base6 '(\"#828bb8\" \"#828bb8\" \"brightblack\")) (base7 '(\"#a9b8e8\" \"#a9b8e8\" \"brightblack\")) (base8 '(\"#b4c2f0\" \"#b4c2f0\" \"white\")) (indigo '(\"#7a88cf\" \"#7a88cf\" \"brightblack\")) (region '(\"#383e5c\" \"#383e5c\" \"brightblack\")) (fg '(\"#c8d3f5\" \"#c8d3f5\" \"brightwhite\")) (fg-alt '(\"#b4c2f0\" \"#b4c2f0\" \"white\")) (grey base5) (dark-red '(\"#ff5370\" \"#ff5370\" \"red\")) (red '(\"#ff757f\" \"#ff757f\" \"red\")) (light-red '(\"#ff98a4\" \"#ff98a4\" \"brightred\")) (orange '(\"#ff995e\" \"#ff995e\" \"brightred\")) (green '(\"#c3e88d\" \"#c3e88d\" \"green\")) (dark-teal '(\"#4fd6be\" \"#4fd6be\" \"green\")) (teal '(\"#77e0c6\" \"#77e0c6\" \"brightgreen\")) (light-teal '(\"#7af8ca\" \"#7af8ca\" \"brightgreen\")) (yellow '(\"#ffc777\" \"#ffc777\" \"brightyellow\")) (blue '(\"#82aaff\" \"#82aaff\" \"brightblue\")) (dark-blue '(\"#4976eb\" \"#4976eb\" \"brightblue\")) (light-blue '(\"#50c4fa\" \"#50c4fa\" \"blue\")) (light-magenta '(\"#baacff\" \"#baacff\" \"brightmagenta\")) (magenta '(\"#c099ff\" \"#c099ff\" \"brightmagenta\")) (violet '(\"#f989d3\" \"#f989d3\" \"magenta\")) (light-pink '(\"#fca7ea\" \"#fca7ea\" \"magenta\")) (pink '(\"#f3c1ff\" \"#f3c1ff\" \"magenta\")) (cyan '(\"#b4f9f8\" \"#b4f9f8\" \"brightcyan\")) (dark-cyan '(\"#86e1fc\" \"#86e1fc\" \"cyan\")) (highlight blue) (vertical-bar base0) (line-highlight base4) (selection region) (builtin magenta) (comments indigo) (doc-comments (doom-lighten comments 0.25)) (constants orange) (functions blue) (keywords magenta) (methods red) (operators dark-cyan) (type yellow) (strings green) (variables light-red) (numbers orange) (region region) (error red) (warning yellow) (success green) (vc-modified blue) (vc-added teal) (vc-deleted red))" + }, + { + "doom-nord-light-theme": "((bg '(\"#E5E9F0\" nil nil)) (bg-alt '(\"#D8DEE9\" nil nil)) (base0 '(\"#F0F4FC\" \"black\" \"black\")) (base1 '(\"#E3EAF5\" \"#1e1e1e\" \"brightblack\")) (base2 '(\"#D8DEE9\" \"#2e2e2e\" \"brightblack\")) (base3 '(\"#C2D0E7\" \"#262626\" \"brightblack\")) (base4 '(\"#B8C5DB\" \"#3f3f3f\" \"brightblack\")) (base5 '(\"#AEBACF\" \"#525252\" \"brightblack\")) (base6 '(\"#A1ACC0\" \"#6b6b6b\" \"brightblack\")) (base7 '(\"#60728C\" \"#979797\" \"brightblack\")) (base8 '(\"#485163\" \"#dfdfdf\" \"white\")) (fg '(\"#3B4252\" \"#2d2d2d\" \"white\")) (fg-alt '(\"#2E3440\" \"#bfbfbf\" \"brightwhite\")) (grey base4) (red '(\"#99324B\" \"#ff6655\" \"red\")) (orange '(\"#AC4426\" \"#dd8844\" \"brightred\")) (green '(\"#4F894C\" \"#99bb66\" \"green\")) (teal '(\"#29838D\" \"#44b9b1\" \"brightgreen\")) (yellow '(\"#9A7500\" \"#ECBE7B\" \"yellow\")) (blue '(\"#3B6EA8\" \"#51afef\" \"brightblue\")) (dark-blue '(\"#5272AF\" \"#2257A0\" \"blue\")) (magenta '(\"#97365B\" \"#c678dd\" \"magenta\")) (violet '(\"#842879\" \"#a9a1e1\" \"brightmagenta\")) (cyan '(\"#398EAC\" \"#46D9FF\" \"brightcyan\")) (dark-cyan '(\"#2C7088\" \"#5699AF\" \"cyan\")) (highlight (doom-blend blue bg 0.8)) (vertical-bar (doom-darken bg 0.15)) (selection (doom-blend blue bg 0.5)) (builtin teal) (comments (if doom-nord-light-brighter-comments dark-cyan (doom-darken base5 0.2))) (doc-comments (doom-darken (if doom-nord-light-brighter-comments dark-cyan base5) 0.25)) (constants magenta) (functions teal) (keywords blue) (methods teal) (operators blue) (type yellow) (strings green) (variables violet) (numbers magenta) (region (pcase doom-nord-light-region-highlight ((\\` frost) (doom-lighten teal 0.5)) ((\\` snowstorm) base0) (_ base4))) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-nord-theme": "((bg '(\"#2E3440\" nil nil )) (bg-alt '(\"#272C36\" nil nil )) (base0 '(\"#191C25\" \"black\" \"black\" )) (base1 '(\"#242832\" \"#1e1e1e\" \"brightblack\" )) (base2 '(\"#2C333F\" \"#2e2e2e\" \"brightblack\" )) (base3 '(\"#373E4C\" \"#262626\" \"brightblack\" )) (base4 '(\"#434C5E\" \"#3f3f3f\" \"brightblack\" )) (base5 '(\"#4C566A\" \"#525252\" \"brightblack\" )) (base6 '(\"#9099AB\" \"#6b6b6b\" \"brightblack\" )) (base7 '(\"#D8DEE9\" \"#979797\" \"brightblack\" )) (base8 '(\"#F0F4FC\" \"#dfdfdf\" \"white\" )) (fg '(\"#ECEFF4\" \"#ECECEC\" \"white\" )) (fg-alt '(\"#E5E9F0\" \"#bfbfbf\" \"brightwhite\" )) (grey base4) (red '(\"#BF616A\" \"#ff6655\" \"red\" )) (orange '(\"#D08770\" \"#dd8844\" \"brightred\" )) (green '(\"#A3BE8C\" \"#99bb66\" \"green\" )) (teal '(\"#8FBCBB\" \"#44b9b1\" \"brightgreen\" )) (yellow '(\"#EBCB8B\" \"#ECBE7B\" \"yellow\" )) (blue '(\"#81A1C1\" \"#51afef\" \"brightblue\" )) (dark-blue '(\"#5E81AC\" \"#2257A0\" \"blue\" )) (magenta '(\"#B48EAD\" \"#c678dd\" \"magenta\" )) (violet '(\"#5D80AE\" \"#a9a1e1\" \"brightmagenta\")) (cyan '(\"#88C0D0\" \"#46D9FF\" \"brightcyan\" )) (dark-cyan '(\"#507681\" \"#5699AF\" \"cyan\" )) (highlight blue) (vertical-bar (doom-darken base1 0.2)) (selection dark-blue) (builtin blue) (comments (if doom-nord-brighter-comments dark-cyan (doom-lighten base5 0.2))) (doc-comments (doom-lighten (if doom-nord-brighter-comments dark-cyan base5) 0.25)) (constants blue) (functions cyan) (keywords blue) (methods cyan) (operators blue) (type teal) (strings green) (variables base7) (numbers magenta) (region (pcase doom-nord-region-highlight (`frost teal) (`snowstorm base7) (_ base4))) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-nova-theme": "((bg '(\"#3c4c55\" nil nil )) (fg '(\"#c5d4dd\" \"#c5c6c6\" \"white\" )) (bg-alt '(\"#44545d\" \"#445566\" \"black\" )) (fg-alt '(\"#c5c8c6\" \"#c5c8c6\" \"white\" )) (base0 '(\"#0d0f11\" \"#0d0f11\" \"black\" )) (base1 '(\"#1e272c\" \"#1b1b1b\" \"black\" )) (base2 '(\"#212122\" \"#1e1e1e\" \"black\" )) (base3 '(\"#2f3f48\" \"#292929\" \"brightblack\" )) (base4 '(\"#3c4c55\" \"#3f3f3f\" \"brightblack\" )) (base5 '(\"#556873\" \"#525252\" \"brightblack\" )) (base6 '(\"#6A7D89\" \"#6b6b6b\" \"brightblack\" )) (base7 '(\"#899BA6\" \"#878797\" \"brightblack\" )) (base8 '(\"#e6eef3\" \"#efefef\" \"brightwhite\" )) (grey base7) (red '(\"#DF8C8C\")) (orange '(\"#F2C38F\")) (yellow '(\"#DADA93\")) (green '(\"#A8CE93\")) (blue '(\"#83AFE5\")) (dark-blue '(\"#759DCE\")) (teal '(\"#95BEBC\")) (magenta '(\"#D18EC2\")) (violet '(\"#9A93E1\")) (cyan '(\"#7FC1CA\")) (dark-cyan '(\"#659AA1\")) (highlight cyan) (vertical-bar (doom-lighten bg 0.1)) (selection highlight) (builtin blue) (comments grey) (doc-comments (doom-lighten grey 0.1)) (constants highlight) (functions blue) (keywords violet) (methods blue) (operators green) (type green) (strings cyan) (variables red) (numbers highlight) (region selection) (error red) (warning yellow) (success green) (vc-modified violet) (vc-added green) (vc-deleted red))" + }, + { + "doom-oceanic-next-theme": "((bg '(\"#1B2B34\" nil nil )) (bg-alt '(\"#14232D\" nil nil )) (base0 '(\"#1B2B34\" \"black\" \"black\" )) (base1 '(\"#343D46\" \"#1e1e1e\" \"brightblack\" )) (base2 '(\"#4F5B66\" \"#2e2e2e\" \"brightblack\" )) (base3 '(\"#65737E\" \"#262626\" \"brightblack\" )) (base4 '(\"#A7ADBA\" \"#3f3f3f\" \"brightblack\" )) (base5 '(\"#C0C5CE\" \"#525252\" \"brightblack\" )) (base6 '(\"#CDD3DE\" \"#6b6b6b\" \"brightblack\" )) (base7 '(\"#D8DEE9\" \"#979797\" \"white\" )) (base8 base7) (fg-alt base6) (fg base8) (grey base4) (red '(\"#EC5f67\" \"#EC5f67\" \"red\" )) (orange '(\"#F99157\" \"#F99157\" \"brightred\" )) (green '(\"#99C794\" \"#99bb66\" \"green\" )) (teal '(\"#5FB3B3\" \"#44b9b1\" \"brightgreen\" )) (yellow '(\"#FAC863\" \"#ECBE7B\" \"yellow\" )) (blue '(\"#6699CC\" \"#51afef\" \"brightblue\" )) (dark-blue blue) (magenta '(\"#E27E8D\" \"#c678dd\" \"magenta\" )) (violet '(\"#C594C5\" \"#a9a1e1\" \"brightmagenta\")) (cyan teal) (dark-cyan cyan) (highlight yellow) (vertical-bar (doom-darken base1 0.5)) (selection base2) (builtin red) (comments (if doom-oceanic-next-brighter-comments dark-cyan base3)) (doc-comments (doom-lighten (if doom-oceanic-next-brighter-comments dark-cyan base3) 0.25)) (constants orange) (functions blue) (keywords violet) (methods blue) (operators teal) (type yellow) (strings green) (variables orange) (numbers orange) (region base2) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-old-hope-theme": "((bg '(\"#1c1d20\" \"#1c1d20\" nil)) (bg-alt '(\"#151619\" \"#151619\" nil)) (base0 '(\"#1B2229\" \"black\" \"black\")) (base1 '(\"#1c1f24\" \"#1e1e1e\" \"brightblack\")) (base2 '(\"#202328\" \"#2e2e2e\" \"brightblack\")) (base3 '(\"#23272e\" \"#262626\" \"brightblack\")) (base4 '(\"#3f444a\" \"#3f3f3f\" \"brightblack\")) (base5 '(\"#5B6268\" \"#525252\" \"brightblack\")) (base6 '(\"#686b78\" \"#686b78\" \"brightblack\")) (base7 '(\"#9ca0a4\" \"#979797\" \"brightblack\")) (base8 '(\"#DFDFDF\" \"#dfdfdf\" \"white\")) (fg '(\"#cbccd1\" \"#cbccd1\" \"brightwhite\")) (fg-alt '(\"#5B6268\" \"#2d2d2d\" \"white\")) (grey base4) (red '(\"#ea3d54\" \"#ea3d54\" \"red\")) (orange '(\"#ee7b29\" \"#ee7b29\" \"brightred\")) (green '(\"#78bd65\" \"#78bd65\" \"green\")) (teal '(\"#78bd65\" \"#78bd65\" \"brightgreen\")) (yellow '(\"#fedd38\" \"#fedd38\" \"yellow\")) (blue '(\"#4fb3d8\" \"#4fb3d8\" \"brightblue\")) (dark-blue '(\"#5689f0\" \"#5689f0\" \"blue\")) (magenta '(\"#b978ab\" \"#b978ab\" \"brightmagenta\")) (violet '(\"#b978ab\" \"#b978ab\" \"brightmagenta\")) (cyan '(\"#4fb3d8\" \"#4fb3d8\" \"brightcyan\")) (dark-cyan '(\"#4fb3d8\" \"#4fb3d8\" \"cyan\")) (highlight yellow) (vertical-bar (doom-darken base4 0.2)) (selection red) (builtin yellow) (comments base5) (doc-comments (doom-lighten blue 0.25)) (constants orange) (functions yellow) (keywords red) (methods yellow) (operators green) (type orange) (strings blue) (variables fg) (numbers orange) (region `(,(doom-lighten (car bg-alt) 0.15) ,@(doom-lighten (cdr base1) 0.35))) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-one-light-theme": "((bg '(\"#fafafa\" \"white\" \"white\" )) (fg '(\"#383a42\" \"#424242\" \"black\" )) (bg-alt '(\"#f0f0f0\" \"white\" \"white\" )) (fg-alt '(\"#c6c7c7\" \"#c7c7c7\" \"brightblack\" )) (base0 '(\"#f0f0f0\" \"#f0f0f0\" \"white\" )) (base1 '(\"#e7e7e7\" \"#e7e7e7\" \"brightblack\" )) (base2 '(\"#dfdfdf\" \"#dfdfdf\" \"brightblack\" )) (base3 '(\"#c6c7c7\" \"#c6c7c7\" \"brightblack\" )) (base4 '(\"#9ca0a4\" \"#9ca0a4\" \"brightblack\" )) (base5 '(\"#383a42\" \"#424242\" \"brightblack\" )) (base6 '(\"#202328\" \"#2e2e2e\" \"brightblack\" )) (base7 '(\"#1c1f24\" \"#1e1e1e\" \"brightblack\" )) (base8 '(\"#1b2229\" \"black\" \"black\" )) (grey base4) (red '(\"#e45649\" \"#e45649\" \"red\" )) (orange '(\"#da8548\" \"#dd8844\" \"brightred\" )) (green '(\"#50a14f\" \"#50a14f\" \"green\" )) (teal '(\"#4db5bd\" \"#44b9b1\" \"brightgreen\" )) (yellow '(\"#986801\" \"#986801\" \"yellow\" )) (blue '(\"#4078f2\" \"#4078f2\" \"brightblue\" )) (dark-blue '(\"#a0bcf8\" \"#a0bcf8\" \"blue\" )) (magenta '(\"#a626a4\" \"#a626a4\" \"magenta\" )) (violet '(\"#b751b6\" \"#b751b6\" \"brightmagenta\")) (cyan '(\"#0184bc\" \"#0184bc\" \"brightcyan\" )) (dark-cyan '(\"#005478\" \"#005478\" \"cyan\" )) (highlight blue) (vertical-bar (doom-darken base2 0.1)) (selection dark-blue) (builtin magenta) (comments (if doom-one-light-brighter-comments cyan base4)) (doc-comments (doom-darken comments 0.15)) (constants violet) (functions magenta) (keywords red) (methods cyan) (operators blue) (type yellow) (strings green) (variables (doom-darken magenta 0.36)) (numbers orange) (region `(,(doom-darken (car bg-alt) 0.1) ,@(doom-darken (cdr base0) 0.3))) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-one-theme": "((bg '(\"#282c34\" \"black\" \"black\" )) (fg '(\"#bbc2cf\" \"#bfbfbf\" \"brightwhite\" )) (bg-alt '(\"#21242b\" \"black\" \"black\" )) (fg-alt '(\"#5B6268\" \"#2d2d2d\" \"white\" )) (base0 '(\"#1B2229\" \"black\" \"black\" )) (base1 '(\"#1c1f24\" \"#1e1e1e\" \"brightblack\" )) (base2 '(\"#202328\" \"#2e2e2e\" \"brightblack\" )) (base3 '(\"#23272e\" \"#262626\" \"brightblack\" )) (base4 '(\"#3f444a\" \"#3f3f3f\" \"brightblack\" )) (base5 '(\"#5B6268\" \"#525252\" \"brightblack\" )) (base6 '(\"#73797e\" \"#6b6b6b\" \"brightblack\" )) (base7 '(\"#9ca0a4\" \"#979797\" \"brightblack\" )) (base8 '(\"#DFDFDF\" \"#dfdfdf\" \"white\" )) (grey base4) (red '(\"#ff6c6b\" \"#ff6655\" \"red\" )) (orange '(\"#da8548\" \"#dd8844\" \"brightred\" )) (green '(\"#98be65\" \"#99bb66\" \"green\" )) (teal '(\"#4db5bd\" \"#44b9b1\" \"brightgreen\" )) (yellow '(\"#ECBE7B\" \"#ECBE7B\" \"yellow\" )) (blue '(\"#51afef\" \"#51afef\" \"brightblue\" )) (dark-blue '(\"#2257A0\" \"#2257A0\" \"blue\" )) (magenta '(\"#c678dd\" \"#c678dd\" \"brightmagenta\")) (violet '(\"#a9a1e1\" \"#a9a1e1\" \"magenta\" )) (cyan '(\"#46D9FF\" \"#46D9FF\" \"brightcyan\" )) (dark-cyan '(\"#5699AF\" \"#5699AF\" \"cyan\" )) (highlight blue) (vertical-bar (doom-darken base1 0.1)) (selection dark-blue) (builtin magenta) (comments (if doom-one-brighter-comments dark-cyan base5)) (doc-comments (doom-lighten (if doom-one-brighter-comments dark-cyan base5) 0.25)) (constants violet) (functions magenta) (keywords blue) (methods cyan) (operators blue) (type yellow) (strings green) (variables (doom-lighten magenta 0.4)) (numbers orange) (region `(,(doom-lighten (car bg-alt) 0.15) ,@(doom-lighten (cdr base1) 0.35))) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-opera-light-theme": "((bg '(\"#fafafa\" nil nil )) (bg-alt '(\"#eeeeee\" nil nil )) (base0 '(\"#fafafa\" \"#dfdfdf\" nil )) (base1 '(\"#f5f5f5\" \"#979797\" nil )) (base2 '(\"#eeeeee\" \"#6b6b6b\" nil )) (base3 '(\"#e0e0e0\" \"#525252\" nil )) (base4 '(\"#bdbdbd\" \"#3f3f3f\" nil )) (base5 '(\"#9e9e9e\" \"#262626\" nil )) (base6 '(\"#757575\" \"#2e2e2e\" nil )) (base7 '(\"#616161\" \"#1e1e1e\" nil )) (base8 '(\"#424242\" \"black\" nil )) (fg '(\"#2a2a2a\" \"#2a2a2a\" nil )) (fg-alt '(\"#454545\" \"#757575\" nil )) (grey base4) (red '(\"#99324b\" \"#ff6655\" nil )) (orange '(\"#ac4426\" \"#dd8844\" nil )) (green '(\"#4f894c\" \"#99bb66\" nil )) (teal '(\"#29838d\" \"#44b9b1\" nil )) (yellow '(\"#9a7500\" \"#ECBE7B\" nil )) (blue '(\"#3b6ea8\" \"#51afef\" nil )) (dark-blue '(\"#5272AF\" \"#2257A0\" nil )) (magenta '(\"#97365b\" \"#c678dd\" nil )) (violet '(\"#842879\" \"#a9a1e1\" nil )) (cyan '(\"#398eac\" \"#46D9FF\" nil )) (dark-cyan '(\"#2c7088\" \"#5699AF\" nil )) (highlight blue) (vertical-bar (doom-darken base1 0.2)) (selection dark-blue) (builtin teal) (comments (if doom-opera-light-brighter-comments dark-cyan (doom-lighten base5 0.2))) (doc-comments (doom-lighten (if doom-opera-light-brighter-comments dark-cyan base5) 0.25)) (constants magenta) (functions teal) (keywords blue) (methods teal) (operators blue) (type yellow) (strings green) (variables (doom-lighten magenta 0.5)) (numbers magenta) (region base4) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-opera-theme": "((bg '(\"#323334\" nil nil )) (bg-alt '(\"#222224\" nil nil )) (base0 '(\"#000000\" \"black\" \"black\" )) (base1 '(\"#1e1e1e\" \"#1e1e1e\" \"brightblack\" )) (base2 '(\"#2e2e2e\" \"#2e2e2e\" \"brightblack\" )) (base3 '(\"#262626\" \"#262626\" \"brightblack\" )) (base4 '(\"#3f3f3f\" \"#3f3f3f\" \"brightblack\" )) (base5 '(\"#525252\" \"#525252\" \"brightblack\" )) (base6 '(\"#6b6b6b\" \"#6b6b6b\" \"brightblack\" )) (base7 '(\"#979797\" \"#979797\" \"brightblack\" )) (base8 '(\"#dfdfdf\" \"#dfdfdf\" \"white\" )) (fg '(\"#eceff4\" \"#dfdfdf\" \"white\" )) (fg-alt '(\"#727269\" \"#bfbfbf\" \"brightwhite\" )) (grey base4) (red '(\"#C16069\" \"#ff6655\" \"red\" )) (orange '(\"#D2876D\" \"#dd8844\" \"brightred\" )) (green '(\"#A2BF8A\" \"#99bb66\" \"green\" )) (teal '(\"#8EBCBB\" \"#44b9b1\" \"brightgreen\" )) (yellow '(\"#ECCC87\" \"#ECBE7B\" \"yellow\" )) (blue '(\"#80A0C2\" \"#51afef\" \"brightblue\" )) (dark-blue '(\"#5C748E\" \"#2257A0\" \"blue\" )) (magenta '(\"#B58DAE\" \"#c678dd\" \"magenta\" )) (violet '(\"#5D80AE\" \"#a9a1e1\" \"brightmagenta\")) (cyan '(\"#86C0D1\" \"#46D9FF\" \"brightcyan\" )) (dark-cyan '(\"#507681\" \"#5699AF\" \"cyan\" )) (highlight blue) (vertical-bar (doom-darken base1 0.2)) (selection dark-blue) (builtin teal) (comments (if doom-opera-brighter-comments dark-cyan (doom-lighten base5 0.2))) (doc-comments (doom-lighten (if doom-opera-brighter-comments dark-cyan base5) 0.25)) (constants magenta) (functions teal) (keywords blue) (methods teal) (operators blue) (type yellow) (strings green) (variables (doom-lighten magenta 0.5)) (numbers magenta) (region base4) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-outrunectric-theme": "((bg '(\"#0c0a20\" \"#0c0a20\" nil )) (bg-alt '(\"#090819\" \"#090819\" nil )) (base0 '(\"#131033\" \"#131033\" \"black\" )) (base1 '(\"#1f1147\" \"#161130\" \"brightblack\" )) (base2 '(\"#110d26\" \"#110d26\" \"brightblack\" )) (base3 '(\"#3b4167\" \"#3b4167\" \"brightblack\" )) (base4 '(\"#2d2844\" \"#2d2844\" \"brightblack\" )) (base5 '(\"#BA45A3\" \"#BA45A3\" \"brightblack\" )) (base6 '(\"#6A6EA3\" \"#6A6EA3\" \"brightblack\" )) (base7 '(\"#6564D1\" \"#6564D1\" \"brightblack\" )) (base8 '(\"#919ad9\" \"#919ad9\" \"white\" )) (fg-alt '(\"#7984D1\" \"#7984D1\" \"white\" )) (fg '(\"#f2f3f7\" \"#f2f3f7\" \"brightwhite\" )) (grey '(\"#546A90\" \"#546A90\" \"gray\" )) (red '(\"#e61f44\" \"#e61f44\" \"red\" )) (orange '(\"#cf433e\" \"#ff9b50\" \"brightred\" )) (green '(\"#a7da1e\" \"#a7da1e\" \"green\" )) (teal '(\"#A875FF\" \"#A875FF\" \"brightgreen\" )) (yellow '(\"#ffd400\" \"#ffd400\" \"yellow\" )) (blue '(\"#1ea8fc\" \"#1ea8fc\" \"brightblue\" )) (dark-blue '(\"#3F88AD\" \"#3F88AD\" \"blue\" )) (magenta '(\"#ff2afc\" \"#ff2afc\" \"magenta\" )) (violet '(\"#df85ff\" \"#df85ff\" \"brightmagenta\")) (cyan '(\"#42c6ff\" \"#42c6ff\" \"brightcyan\" )) (dark-cyan '(\"#204052\" \"#204052\" \"cyan\" )) (highlight blue) (vertical-bar (doom-darken base1 0.5)) (selection dark-blue) (builtin blue) (comments (if doom-outrun-electric-brighter-comments blue grey)) (doc-comments teal) (constants violet) (functions cyan) (keywords magenta) (methods cyan) (operators magenta) (type yellow) (strings fg-alt) (variables violet) (numbers yellow) (region base1) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-palenight-theme": "((bg '(\"#292D3E\" nil nil)) (bg-alt '(\"#242837\" nil nil)) (base0 '(\"#1c1f2b\" \"black\" \"black\")) (base1 '(\"#1e212e\" \"#262626\" \"brightblack\")) (base2 '(\"#232635\" \"#303030\" \"brightblack\")) (base3 '(\"#3C435E\" \"#3a3a3a\" \"brightblack\")) (base4 '(\"#4E5579\" \"#444444\" \"brightblack\")) (base5 '(\"#676E95\" \"#585858\" \"brightblack\")) (base6 '(\"#697098\" \"#626262\" \"brightblack\")) (base7 '(\"#717CB4\" \"#767676\" \"brightblack\")) (base8 '(\"#A6Accd\" \"#a8a8a8\" \"white\")) (fg '(\"#EEFFFF\" \"#e4e4e4\" \"brightwhite\")) (fg-alt '(\"#BFC7D5\" \"#bcbcbc\" \"white\")) (grey base5) (red '(\"#ff5370\" \"#ff0000\" \"red\")) (orange '(\"#f78c6c\" \"#ff5f00\" \"brightred\")) (green '(\"#c3e88d\" \"#afff00\" \"green\")) (teal '(\"#44b9b1\" \"#00d7af\" \"brightgreen\")) (yellow '(\"#ffcb6b\" \"#ffd700\" \"brightyellow\")) (blue '(\"#82aaff\" \"#5fafff\" \"brightblue\")) (dark-blue '(\"#7986E7\" \"#d7ffff\" \"blue\")) (magenta '(\"#c792ea\" \"#d787d7\" \"brightmagenta\")) (violet '(\"#bb80b3\" \"#d787af\" \"magenta\")) (cyan '(\"#89DDFF\" \"#5fd7ff\" \"brightcyan\")) (dark-cyan '(\"#80cbc4\" \"#00d7af\" \"cyan\")) (highlight magenta) (vertical-bar base2) (selection base4) (builtin blue) (comments base5) (doc-comments (doom-lighten base5 0.25)) (constants orange) (functions blue) (keywords cyan) (methods blue) (operators cyan) (type magenta) (strings green) (variables yellow) (numbers orange) (region base3) (error red) (warning yellow) (success green) (vc-modified blue) (vc-added green) (vc-deleted red))" + }, + { + "doom-peacock-theme": "((bg '(\"#2b2a27\" nil nil )) (bg-alt '(\"#1F1E1D\" nil nil )) (base0 '(\"#2b2a27\" \"black\" \"black\" )) (base1 '(\"#1c1f24\" \"#1e1e1e\" \"brightblack\" )) (base2 '(\"#202328\" \"#2e2e2e\" \"brightblack\" )) (base3 '(\"#23272e\" \"#262626\" \"brightblack\" )) (base4 '(\"#3f444a\" \"#3f3f3f\" \"brightblack\" )) (base5 '(\"#5B6268\" \"#525252\" \"brightblack\" )) (base6 '(\"#73797e\" \"#6b6b6b\" \"brightblack\" )) (base7 '(\"#9ca0a4\" \"#979797\" \"brightblack\" )) (base8 '(\"#DFDFDF\" \"#dfdfdf\" \"white\" )) (fg '(\"#ede0ce\" \"#bfbfbf\" \"brightwhite\" )) (fg-alt '(\"#5B6268\" \"#2d2d2d\" \"white\" )) (grey base4) (white '(\"#f8f8f0\" \"base4\" \"base4\" )) (red '(\"#ff5d38\" \"#ff6655\" \"red\" )) (orange '(\"#cb4b16\" \"#dd8844\" \"brightred\" )) (green '(\"#98be65\" \"#99bb66\" \"green\" )) (teal '(\"#26a6a6\" \"#44b9b1\" \"brightgreen\" )) (yellow '(\"#bcd42a\" \"#ECBE7B\" \"yellow\" )) (blue '(\"#51afef\" \"#51afef\" \"brightblue\" )) (dark-blue '(\"#2257A0\" \"#2257A0\" \"blue\" )) (magenta '(\"#c678dd\" \"#c678dd\" \"magenta\" )) (violet '(\"#a9a1e1\" \"#a9a1e1\" \"brightmagenta\")) (cyan '(\"#46D9FF\" \"#46D9FF\" \"brightcyan\" )) (dark-cyan '(\"#5699AF\" \"#5699AF\" \"cyan\" )) (coral-popup '(\"#a60033\" \"#f6bfbc\" \"coral-popup\" )) (highlight red) (vertical-bar (doom-lighten bg 0.1)) (selection coral-popup) (builtin red) (comments (if doom-peacock-brighter-comments dark-cyan base5)) (doc-comments (doom-lighten (if doom-peacock-brighter-comments dark-cyan base5) 0.25)) (constants red) (functions yellow) (keywords teal) (methods yellow) (operators red) (type white) (strings yellow) (variables white) (numbers red) (region `(,(doom-lighten (car bg-alt) 0.15) ,@(doom-lighten (cdr base0) 0.35))) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-plain-dark-theme": "((bg '(\"#222222\" nil nil )) (bg-alt (doom-lighten bg 0.15)) (base0 '(\"#838083\" nil nil )) (base1 '(\"#0e0c0a\" nil nil )) (base2 '(\"#bbbbbb\" nil nil )) (base3 '(\"#444444\" nil nil )) (base4 '(\"#202020\" nil nil )) (base5 '(\"#545053\" nil nil )) (base6 '(\"#050505\" nil nil )) (base7 '(\"#ffdddd\" nil nil )) (base8 '(\"#050505\" nil nil )) (fg '(\"#d7d5d1\" nil nil )) (fg-alt '(\"#e7e5e3\" nil nil )) (grey fg) (red fg) (blue fg) (dark-blue fg) (orange fg) (green fg) (teal fg) (yellow fg) (magenta fg) (violet fg) (cyan fg) (dark-cyan fg) (highlight base2) (vertical-bar fg) (selection base1) (builtin base0) (comments base5) (doc-comments base5) (constants base0) (functions fg) (keywords fg) (methods fg) (operators fg) (type fg) (strings base0) (variables base0) (numbers base0) (region base1) (error red) (warning yellow) (success green) (vc-modified (doom-darken fg 0.4)) (vc-added (doom-lighten fg 0.4)) (vc-deleted red))" + }, + { + "doom-plain-theme": "((bg '(\"#ffffff\")) (bg-alt '(\"#f3f3f3\")) (base0 '(\"#969896\")) (base1 '(\"#f1f3f5\")) (base2 '(\"#444444\")) (base3 '(\"#cccccc\")) (base4 '(\"#e7e7e7\")) (base5 '(\"#c5c8c6\")) (base6 '(\"#fafafa\")) (base7 '(\"#dfdfdf\")) (base8 '(\"#fafafa\")) (fg '(\"#282a2e\")) (fg-alt (doom-lighten fg 0.15)) (grey fg) (red fg) (blue fg) (dark-blue fg) (orange fg) (green fg) (teal fg) (yellow fg) (magenta fg) (violet fg) (cyan fg) (dark-cyan fg) (highlight base2) (vertical-bar base5) (selection base1) (builtin base0) (comments base5) (doc-comments base5) (constants base0) (functions fg) (keywords fg) (methods fg) (operators fg) (type fg) (strings base0) (variables base0) (numbers base0) (region base4) (error (doom-blend fg \"#ff0000\" 0.4)) (warning base2) (success green) (vc-modified base5) (vc-added (doom-lighten fg 0.7)) (vc-deleted base2))" + }, + { + "doom-rouge-theme": "((bg '(\"#172030\" nil nil )) (bg-alt '(\"#172030\" nil nil )) (base0 '(\"#070A0E\" \"black\" \"black\" )) (base1 '(\"#0E131D\" \"#1e1e1e\" \"brightblack\" )) (base2 '(\"#151D2B\" \"#2e2e2e\" \"brightblack\" )) (base3 '(\"#1F2A3F\" \"#262626\" \"brightblack\" )) (base4 '(\"#5D636E\" \"#3f3f3f\" \"brightblack\" )) (base5 '(\"#64727d\" \"#64727d\" \"brightblack\" )) (base6 '(\"#B16E75\" \"#6b6b6b\" \"brightblack\" )) (base7 '(\"#E8E9EB\" \"#979797\" \"brightblack\" )) (base8 '(\"#F0F4FC\" \"#dfdfdf\" \"white\" )) (fg '(\"#FAFFF6\" \"#bbb\" \"white\" )) (fg-alt '(\"#A7ACB9\" \"#bfbfbf\" \"brightwhite\" )) (grey base5) (red '(\"#c6797e\" \"#c6797e\" \"red\" )) (light-red '(\"#DB6E8F\" \"#DB6E8F\" \"red\" )) (orange '(\"#eabe9a\" \"#eabe9a\" \"brightred\" )) (green '(\"#A3B09A\" \"#A3B9A4\" \"green\" )) (teal '(\"#7ea9a9\" \"#7ea9a9\" \"brightgreen\" )) (yellow '(\"#F7E3AF\" \"#F7E3AF\" \"yellow\" )) (blue '(\"#6e94b9\" \"#6e94b9\" \"brightblue\" )) (dark-blue '(\"#1E6378\" \"#1E6378\" \"blue\" )) (magenta '(\"#b18bb1\" \"#b18bb1\" \"magenta\" )) (salmon '(\"#F9B5AC\" \"#F9B5AC\" \"orange\" )) (violet '(\"#5D80AE\" \"#5D80AE\" \"brightmagenta\")) (cyan '(\"#88C0D0\" \"#88C0D0\" \"brightcyan\" )) (dark-cyan '(\"#507681\" \"#507681\" \"cyan\" )) (highlight base6) (vertical-bar (doom-darken base1 0.2)) (selection base4) (builtin light-red) (comments grey) (doc-comments green) (constants red) (functions salmon) (keywords magenta) (methods light-red) (operators magenta) (type red) (strings green) (variables red) (numbers orange) (region base4) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-shades-of-purple-theme": "((bg '(\"#2d2b55\" \"#2d2b55\" \"black\")) (bg-alt '(\"#1e1e3f\" \"#1e1e3f\" \"black\")) (base0 '(\"#161a2a\" \"#161a2a\" \"black\")) (base1 '(\"#191a2a\" \"#191a2a\" \"brightblack\")) (base2 '(\"#1e2030\" \"#1e2030\" \"brightblack\")) (base3 '(\"#222436\" \"#222436\" \"brightblack\")) (base4 '(\"#a599e9\" \"#a599e9\" \"brightblack\")) (base5 '(\"#444a73\" \"#444a73\" \"brightblack\")) (base6 '(\"#828bb8\" \"#828bb8\" \"brightblack\")) (base7 '(\"#a9b8e8\" \"#a9b8e8\" \"brightblack\")) (base8 '(\"#b4c2f0\" \"#b4c2f0\" \"white\")) (indigo '(\"#7a88cf\" \"#7a88cf\" \"brightblack\")) (region '(\"#b362ff\" \"#b362ff\" \"brightblack\")) (selection '(\"#b362ff\" \"#b362ff\" \"brightblack\")) (fg '(\"#e3e9fa\" \"#e3e9fa\" \"brightwhite\")) (fg-alt '(\"#b4c2f0\" \"#b4c2f0\" \"white\")) (grey base5) (dark-red '(\"#ff5370\" \"#ff5370\" \"red\")) (red '(\"#ff000d\" \"#ff000d\" \"red\")) (light-red '(\"#ff98a4\" \"#ff98a4\" \"brightred\")) (orange '(\"#ff9d00\" \"#ff9d00\" \"brightred\")) (light-green '(\"#a5ff90\" \"#a5ff90\" \"green\")) (green '(\"#3ad900\" \"#3ad900\" \"green\")) (dark-green '(\"#00ff00\" \"#00ff00\" \"green\")) (dark-teal '(\"#37fea1\" \"#37fea1\" \"green\")) (teal '(\"#ff628c\" \"#ff628c\" \"brightgreen\")) (light-teal '(\"#7af8ca\" \"#7af8ca\" \"brightgreen\")) (yellow '(\"#fad000\" \"#fad000\" \"brightyellow\")) (blue '(\"#82aaff\" \"#82aaff\" \"brightblue\")) (dark-blue '(\"#4976eb\" \"#4976eb\" \"brightblue\")) (light-blue '(\"#50c4fa\" \"#50c4fa\" \"blue\")) (light-magenta '(\"#baacff\" \"#baacff\" \"brightmagenta\")) (magenta '(\"#ff9d00\" \"#ff9d00\" \"brightmagenta\")) (violet '(\"#f989d3\" \"#f989d3\" \"magenta\")) (light-pink '(\"#fb94ff\" \"#fb94ff\" \"magenta\")) (pink '(\"#ff628c\" \"#ff628c\" \"magenta\")) (cyan '(\"#ff628c\" \"#ff628c\" \"brightcyan\")) (dark-cyan '(\"#9effff\" \"#9effff\" \"cyan\")) (purple '(\"#b362ff\" \"#b362ff\" \"magenta\")) (highlight blue) (vertical-bar bg-alt) (line-highlight bg-alt) (selection selection) (builtin magenta) (comments purple) (doc-comments (doom-lighten comments 0.25)) (constants light-pink) (functions (doom-lighten yellow 0.15)) (keywords orange) (methods yellow) (operators orange) (type green) (strings light-green) (variables dark-teal) (numbers orange) (region region) (error red) (warning yellow) (success green) (vc-modified blue) (vc-added dark-green) (vc-deleted red))" + }, + { + "doom-snazzy-theme": "((bg '(\"#282a36\" \"#282a36\" nil )) (bg-alt '(\"#242631\" \"#242631\" nil )) (base0 '(\"#282a36\" \"#282a36\" \"black\" )) (base1 '(\"#34353e\" \"#34353e\" \"brightblack\")) (base2 '(\"#43454f\" \"#43454f\" \"brightblack\")) (base3 '(\"#78787e\" \"#78787e\" \"brightblack\")) (base4 '(\"#a5a5a9\" \"#a5a5a9\" \"brightblack\")) (base5 '(\"#e2e4e5\" \"#e2e4e5\" \"brightblack\")) (base6 '(\"#eff0eb\" \"#eff0eb\" \"brightblack\")) (base7 '(\"#f1f1f0\" \"#f1f1f0\" \"brightblack\")) (base8 '(\"#ff5c57\" \"#ff5c57\" \"white\" )) (fg '(\"#f9f9f9\" \"#f9f9f9\" \"white\" )) (fg-alt '(\"#d1d1d1\" \"#d1d1d1\" \"brightwhite\")) (ui0 '(\"#848688\" \"#848688\" \"grey\")) (ui1 '(\"#606580\" \"#606580\" \"grey\")) (ui2 '(\"#3a3d4d\" \"#3a3d4d\" \"grey\")) (ui3 '(\"#1c1e27\" \"#1c1e27\" \"black\")) (grey ui0) (red '(\"#ff5c57\" \"#ff5c57\" \"red\" )) (green '(\"#5af78e\" \"#5af78e\" \"brightred\" )) (yellow '(\"#f3f99d\" \"#f3f99d\" \"green\" )) (blue '(\"#57c7ff\" \"#57c7ff\" \"brightgreen\" )) (dark-blue '(\"#459fcc\" \"#459fcc\" \"yellow\" )) (magenta '(\"#ff6ac1\" \"#ff6ac1\" \"brightblue\" )) (cyan '(\"#9aedfe\" \"#9aedfe\" \"blue\" )) (violet '(\"#bd93f9\" \"#bd93f9\" \"magenta\" )) (orange '(\"#ffb86c\" \"#ffb86c\" \"brightmagenta\")) (teal '(\"#aad4d3\" \"#aad4d3\" \"brightcyan\" )) (dark-cyan '(\"#82c9d7\" \"#82c9d7\" \"cyan\" )) (highlight blue) (vertical-bar (doom-darken base1 0.1)) (selection dark-blue) (builtin magenta) (comments ui1) (doc-comments (doom-lighten yellow 0.25)) (constants green) (functions blue) (keywords orange) (methods blue) (operators magenta) (type cyan) (strings yellow) (variables red) (numbers yellow) (region `(,(doom-lighten (car bg-alt) 0.15) ,@(doom-lighten (cdr base0) 0.35))) (error red) (warning yellow) (success green) (vc-modified yellow) (vc-added green) (vc-deleted red))" + }, + { + "doom-solarized-dark-high-contrast-theme": "((bg '(\"#002732\" \"#002732\" \"black\" )) (fg '(\"#8d9fa1\" \"#8d9fa1\" \"brightwhite\")) (bg-alt '(\"#00212B\" \"#00212B\" \"black\" )) (fg-alt '(\"#60767e\" \"#60767e\" \"white\" )) (base0 '(\"#01323d\" \"#01323d\" \"black\" )) (base1 '(\"#03282F\" \"#03282F\" \"brightblack\" )) (base2 '(\"#00212C\" \"#00212C\" \"brightblack\" )) (base3 '(\"#13383C\" \"#13383C\" \"brightblack\" )) (base4 '(\"#56697A\" \"#56697A\" \"brightblack\" )) (base5 '(\"#62787f\" \"#62787f\" \"brightblack\" )) (base6 '(\"#96A7A9\" \"#96A7A9\" \"brightblack\" )) (base7 '(\"#788484\" \"#788484\" \"brightblack\" )) (base8 '(\"#626C6C\" \"#626C6C\" \"white\" )) (grey base4) (red '(\"#ec423a\" \"#ec423a\" \"red\" )) (orange '(\"#db5823\" \"#db5823\" \"brightred\" )) (green '(\"#93a61a\" \"#93a61a\" \"green\" )) (teal '(\"#35a69c\" \"#33aa99\" \"brightgreen\" )) (yellow '(\"#c49619\" \"#c49619\" \"yellow\" )) (blue '(\"#3c98e0\" \"#3c98e0\" \"brightblue\" )) (dark-blue '(\"#3F88AD\" \"#2257A0\" \"blue\" )) (magenta '(\"#e2468f\" \"#e2468f\" \"magenta\" )) (violet '(\"#7a7ed2\" \"#7a7ed2\" \"brightmagenta\")) (cyan '(\"#3cafa5\" \"#3cafa5\" \"brightcyan\" )) (dark-cyan '(\"#03373f\" \"#03373f\" \"cyan\" )) (highlight blue) (vertical-bar (doom-darken base1 0.5)) (selection dark-blue) (builtin blue) (comments base5) (doc-comments teal) (constants blue) (functions blue) (keywords green) (methods cyan) (operators orange) (type yellow) (strings green) (variables fg) (numbers violet) (region base0) (error red) (warning yellow) (success green) (vc-modified blue) (vc-added \"#119e44\") (vc-deleted red))" + }, + { + "doom-solarized-dark-theme": "((bg '(\"#002b36\" \"#002b36\" \"brightwhite\" )) (fg (if doom-solarized-dark-brighter-text '(\"#BBBBBB\" \"#BBBBBB\" \"brightwhite\") '(\"#839496\" \"#839496\" \"brightwhite\"))) (bg-alt '(\"#00212B\" \"#00212B\" \"white\" )) (fg-alt '(\"#657b83\" \"#657b83\" \"white\" )) (base0 '(\"#073642\" \"#073642\" \"black\" )) (base1 '(\"#03282F\" \"#03282F\" \"brightblack\" )) (base2 '(\"#00212C\" \"#00212C\" \"brightblack\" )) (base3 '(\"#13383C\" \"#13383C\" \"brightblack\" )) (base4 '(\"#56697A\" \"#56697A\" \"brightblack\" )) (base5 '(\"#405A61\" \"#405A61\" \"brightblack\" )) (base6 '(\"#96A7A9\" \"#96A7A9\" \"brightblack\" )) (base7 '(\"#788484\" \"#788484\" \"brightblack\" )) (base8 '(\"#626C6C\" \"#626C6C\" \"white\" )) (grey base4) (red '(\"#dc322f\" \"#ff6655\" \"red\" )) (orange '(\"#cb4b16\" \"#dd8844\" \"brightred\" )) (green '(\"#859900\" \"#99bb66\" \"green\" )) (teal '(\"#35a69c\" \"#33aa99\" \"brightgreen\" )) (yellow '(\"#b58900\" \"#ECBE7B\" \"yellow\" )) (blue '(\"#268bd2\" \"#51afef\" \"brightblue\" )) (dark-blue '(\"#3F88AD\" \"#2257A0\" \"blue\" )) (magenta '(\"#d33682\" \"#c678dd\" \"magenta\" )) (violet '(\"#6c71c4\" \"#a9a1e1\" \"brightmagenta\")) (cyan '(\"#2aa198\" \"#46D9FF\" \"brightcyan\" )) (dark-cyan '(\"#204052\" \"#5699AF\" \"cyan\" )) (highlight blue) (vertical-bar (doom-darken base1 0.5)) (selection dark-blue) (builtin blue) (comments (if doom-solarized-dark-brighter-comments blue base5)) (doc-comments teal) (constants magenta) (functions blue) (keywords green) (methods cyan) (operators orange) (type yellow) (strings cyan) (variables violet) (numbers magenta) (region base0) (error red) (warning yellow) (success green) (vc-modified yellow) (vc-added green) (vc-deleted red))" + }, + { + "doom-solarized-light-theme": "((bg '(\"#FDF6E3\" \"#FDF6E3\" \"white\" )) (fg '(\"#556b72\" \"#556b72\" \"black\" )) (bg-alt '(\"#EEE8D5\" \"#EEE8D5\" \"white\" )) (fg-alt '(\"#7B8787\" \"#7B8787\" \"brightwhite\" )) (base0 '(\"#FFFBF0\" \"#FFFBF0\" \"white\" )) (base1 '(\"#FCF8ED\" \"#FCF8ED\" \"brightblack\" )) (base2 '(\"#FCF7E8\" \"#FCF7E8\" \"brightblack\" )) (base3 '(\"#F2E6CE\" \"#F2E6CE\" \"brightblack\" )) (base4 '(\"#E1DBCD\" \"#E1DBCD\" \"brightblack\" )) (base5 '(\"#D6D6D6\" \"#D6D6D6\" \"brightblack\" )) (base6 '(\"#96A7A9\" \"#96A7A9\" \"brightblack\" )) (base7 '(\"#788484\" \"#788484\" \"brightblack\" )) (base8 '(\"#626C6C\" \"#626C6C\" \"black\" )) (grey base4) (red '(\"#dc322f\" \"#dc322f\" \"red\" )) (orange '(\"#cb4b16\" \"#cb4b16\" \"brightred\" )) (green '(\"#859900\" \"#859900\" \"green\" )) (teal '(\"#35a69c\" \"#35a69c\" \"brightgreen\" )) (yellow '(\"#b58900\" \"#b58900\" \"yellow\" )) (blue '(\"#268bd2\" \"#268bd2\" \"brightblue\" )) (dark-blue '(\"#3F88AD\" \"#3F88AD\" \"blue\" )) (magenta '(\"#d33682\" \"#d33682\" \"magenta\" )) (violet '(\"#6c71c4\" \"#6c71c4\" \"brightmagenta\")) (cyan '(\"#2aa198\" \"#2aa198\" \"brightcyan\" )) (dark-cyan '(\"#204052\" \"#204052\" \"cyan\" )) (highlight blue) (vertical-bar base4) (selection dark-blue) (builtin magenta) (comments (if doom-solarized-light-brighter-comments (doom-lighten teal 0.25) base6)) (doc-comments teal) (constants violet) (functions magenta) (keywords green) (methods cyan) (operators blue) (type yellow) (strings cyan) (variables blue) (numbers violet) (region `(,(doom-darken (car bg-alt) 0.1) ,@(doom-darken (cdr base0) 0.1))) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-sourcerer-theme": "((bg '(\"#171717\")) (bg-alt '(\"#222222\")) (base0 '(\"#1d2127\")) (base1 '(\"#1d2127\")) (base2 '(\"#272727\")) (base3 '(\"#32353f\")) (base4 '(\"#494952\")) (base5 '(\"#62686E\")) (base6 '(\"#757B80\")) (base7 '(\"#9ca0a4\")) (base8 '(\"#faf4c6\")) (fg '(\"#c2c2b0\")) (fg-alt '(\"#5D656B\")) (grey '(\"#686858\")) (red '(\"#aa4450\")) (orange '(\"#ff9800\")) (green '(\"#87875f\")) (green-br '(\"#719611\")) (teal '(\"#578F8F\" \"#44b9b1\" )) (yellow '(\"#cc8800\" )) (blue '(\"#87AFD7\" )) (dark-blue '(\"#6688aa\" )) (magenta '(\"#8787AF\" )) (violet '(\"#8181a6\" )) (cyan '(\"#87ceeb\" )) (dark-cyan '(\"#528b8b\" )) (highlight cyan) (vertical-bar base0) (selection base5) (builtin blue) (comments (if doom-sourcerer-brighter-comments dark-cyan grey)) (doc-comments (if doom-sourcerer-brighter-comments (doom-lighten dark-cyan 0.15) (doom-darken grey 0.1))) (constants teal) (functions base8) (keywords blue) (methods magenta) (operators green-br) (type violet) (strings green) (variables base8) (numbers yellow) (region base3) (error red) (warning orange) (success green) (vc-modified yellow) (vc-added green) (vc-deleted red))" + }, + { + "doom-spacegrey-theme": "((bg '(\"#2b303b\" nil nil )) (bg-alt '(\"#232830\" nil nil )) (base0 '(\"#1B2229\" \"black\" \"black\" )) (base1 '(\"#1c1f24\" \"#1e1e1e\" \"brightblack\" )) (base2 '(\"#202328\" \"#2e2e2e\" \"brightblack\" )) (base3 '(\"#2F3237\" \"#2F3237\" \"brightblack\" )) (base4 '(\"#4f5b66\" \"#4f5b66\" \"brightblack\" )) (base5 '(\"#65737E\" \"#65737E\" \"brightblack\" )) (base6 '(\"#73797e\" \"#6b6b6b\" \"brightblack\" )) (base7 '(\"#9ca0a4\" \"#979797\" \"brightblack\" )) (base8 '(\"#DFDFDF\" \"#dfdfdf\" \"white\" )) (fg '(\"#c0c5ce\" \"#c0c5ce\" \"brightwhite\" )) (fg-alt '(\"#c0c5ce\" \"#c0c5ce\" \"white\" )) (grey base4) (red '(\"#BF616A\" \"#BF616A\" \"red\" )) (orange '(\"#D08770\" \"#D08770\" \"brightred\" )) (green '(\"#A3BE8C\" \"#A3BE8C\" \"green\" )) (blue '(\"#8FA1B3\" \"#8FA1B3\" \"brightblue\" )) (violet '(\"#b48ead\" \"#b48ead\" \"brightmagenta\")) (teal '(\"#4db5bd\" \"#44b9b1\" \"brightgreen\" )) (yellow '(\"#ECBE7B\" \"#ECBE7B\" \"yellow\" )) (dark-blue '(\"#2257A0\" \"#2257A0\" \"blue\" )) (magenta '(\"#c678dd\" \"#c678dd\" \"magenta\" )) (cyan '(\"#46D9FF\" \"#46D9FF\" \"brightcyan\" )) (dark-cyan '(\"#5699AF\" \"#5699AF\" \"cyan\" )) (highlight orange) (vertical-bar (doom-darken bg 0.25)) (selection base4) (builtin orange) (comments (if doom-spacegrey-brighter-comments dark-cyan base5)) (doc-comments (doom-lighten (if doom-spacegrey-brighter-comments dark-cyan base5) 0.25)) (constants orange) (functions blue) (keywords violet) (methods blue) (operators fg) (type yellow) (strings green) (variables red) (numbers orange) (region selection) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-tomorrow-day-theme": "((bg '(\"#ffffff\" \"white\" \"white\" )) (bg-alt '(\"#f2f2f2\" nil nil )) (base0 '(\"#f2f2f2\" \"white\" \"white\" )) (base1 '(\"#e4e4e4\" \"#e4e4e4\" )) (base2 '(\"#dedede\" \"#cccccc\" )) (base3 '(\"#d6d4d4\" \"#cccccc\" \"silver\")) (base4 '(\"#C0bfbf\" \"#c0c0c0\" \"silver\")) (base5 '(\"#a3a1a1\" \"#adadad\" \"silver\")) (base6 '(\"#8a8787\" \"#949494\" \"silver\")) (base7 '(\"#696769\" \"#6b6b6b\" \"silver\")) (base8 '(\"#000000\" \"#000000\" \"black\" )) (fg '(\"#4d4d4c\" \"#3a3a3a\" \"black\")) (fg-alt (doom-darken fg 0.6)) (grey '(\"#8e908c\" \"#999999\" \"silver\")) (red '(\"#c82829\" \"#cc3333\" \"red\")) (orange '(\"#f5871f\" \"#ff9933\" \"brightred\")) (yellow '(\"#eab700\" \"#ffcc00\" \"yellow\")) (green '(\"#718c00\" \"#669900\" \"green\")) (blue '(\"#4271ae\" \"#339999\" \"brightblue\")) (dark-blue (doom-darken blue 0.25)) (teal '(\"#3e999f\" \"#339999\" \"brightblue\")) (magenta '(\"#c678dd\" \"#c9b4cf\" \"magenta\")) (violet '(\"#8959a8\" \"#996699\" \"brightmagenta\")) (cyan '(\"#8abeb7\" \"#8abeb7\" \"cyan\")) (dark-cyan (doom-lighten cyan 0.4)) (highlight blue) (vertical-bar base3) (selection base1) (builtin blue) (comments grey) (doc-comments grey) (constants orange) (functions blue) (keywords violet) (methods blue) (operators fg) (type (doom-darken yellow 0.2)) (strings green) (variables red) (numbers orange) (region selection) (error red) (warning yellow) (success green) (vc-modified (doom-lighten yellow 0.4)) (vc-added (doom-lighten green 0.4)) (vc-deleted red))" + }, + { + "doom-tomorrow-night-theme": "((bg '(\"#1d1f21\" nil nil )) (bg-alt '(\"#161719\" nil nil )) (base0 '(\"#0d0d0d\" \"black\" \"black\" )) (base1 '(\"#1b1b1b\" \"#1b1b1b\" )) (base2 '(\"#212122\" \"#1e1e1e\" )) (base3 '(\"#292b2b\" \"#292929\" \"brightblack\")) (base4 '(\"#3f4040\" \"#3f3f3f\" \"brightblack\")) (base5 '(\"#5c5e5e\" \"#525252\" \"brightblack\")) (base6 '(\"#757878\" \"#6b6b6b\" \"brightblack\")) (base7 '(\"#969896\" \"#979797\" \"brightblack\")) (base8 '(\"#ffffff\" \"#ffffff\" \"white\" )) (fg '(\"#c5c8c6\" \"#c5c5c5\" \"white\")) (fg-alt (doom-darken fg 0.4)) (grey '(\"#5a5b5a\" \"#5a5a5a\" \"brightblack\")) (red '(\"#cc6666\" \"#cc6666\" \"red\")) (orange '(\"#de935f\" \"#dd9955\" \"brightred\")) (yellow '(\"#f0c674\" \"#f0c674\" \"yellow\")) (green '(\"#b5bd68\" \"#b5bd68\" \"green\")) (blue '(\"#81a2be\" \"#88aabb\" \"brightblue\")) (dark-blue '(\"#41728e\" \"#41728e\" \"blue\")) (teal blue) (magenta '(\"#c9b4cf\" \"#c9b4cf\" \"magenta\")) (violet '(\"#b294bb\" \"#b294bb\" \"brightmagenta\")) (cyan '(\"#8abeb7\" \"#8abeb7\" \"cyan\")) (dark-cyan (doom-darken cyan 0.4)) (highlight blue) (vertical-bar base0) (selection `(,(car (doom-lighten bg 0.1)) ,@(cdr base4))) (builtin blue) (comments grey) (doc-comments (doom-lighten grey 0.14)) (constants orange) (functions blue) (keywords violet) (methods blue) (operators fg) (type yellow) (strings green) (variables red) (numbers orange) (region selection) (error red) (warning yellow) (success green) (vc-modified fg-alt) (vc-added green) (vc-deleted red))" + }, + { + "doom-vibrant-theme": "((bg '(\"#242730\" \"black\" \"black\" )) (fg '(\"#bbc2cf\" \"#bfbfbf\" \"brightwhite\" )) (bg-alt '(\"#2a2e38\" \"black\" \"black\" )) (fg-alt '(\"#5D656B\" \"#5d5d5d\" \"white\" )) (base0 '(\"#1c1f24\" \"#101010\" \"black\" )) (base1 '(\"#1c1f24\" \"#1e1e1e\" \"brightblack\" )) (base2 '(\"#21272d\" \"#21212d\" \"brightblack\" )) (base3 '(\"#23272e\" \"#262626\" \"brightblack\" )) (base4 '(\"#484854\" \"#5e5e5e\" \"brightblack\" )) (base5 '(\"#62686E\" \"#666666\" \"brightblack\" )) (base6 '(\"#757B80\" \"#7b7b7b\" \"brightblack\" )) (base7 '(\"#9ca0a4\" \"#979797\" \"brightblack\" )) (base8 '(\"#DFDFDF\" \"#dfdfdf\" \"white\" )) (grey base4) (red '(\"#ff665c\" \"#ff6655\" \"red\" )) (orange '(\"#e69055\" \"#dd8844\" \"brightred\" )) (green '(\"#7bc275\" \"#99bb66\" \"green\" )) (teal '(\"#4db5bd\" \"#44b9b1\" \"brightgreen\" )) (yellow '(\"#FCCE7B\" \"#ECBE7B\" \"yellow\" )) (blue '(\"#51afef\" \"#51afef\" \"brightblue\" )) (dark-blue '(\"#1f5582\" \"#2257A0\" \"blue\" )) (magenta '(\"#C57BDB\" \"#c678dd\" \"brightmagenta\" )) (violet '(\"#a991f1\" \"#a9a1e1\" \"magenta\" )) (cyan '(\"#5cEfFF\" \"#46D9FF\" \"brightcyan\" )) (dark-cyan '(\"#6A8FBF\" \"#5699AF\" \"cyan\" )) (highlight blue) (vertical-bar base0) (selection dark-blue) (builtin magenta) (comments (if doom-vibrant-brighter-comments dark-cyan base5)) (doc-comments (if doom-vibrant-brighter-comments (doom-lighten dark-cyan 0.15) (doom-lighten base4 0.3))) (constants violet) (functions cyan) (keywords blue) (methods violet) (operators magenta) (type yellow) (strings green) (variables base8) (numbers orange) (region \"#3d4451\") (error red) (warning yellow) (success green) (vc-modified yellow) (vc-added green) (vc-deleted red))" + }, + { + "doom-wilmersdorf-theme": "((bg '(\"#282b33\" \"#282b33\" nil )) (bg-alt '(\"#1f2024\" \"#1f2024\" nil )) (base0 '(\"#222228\" \"#222228\" \"black\" )) (base1 '(\"#282b33\" \"#282b33\" \"brightblack\" )) (base2 '(\"#34373e\" \"#34373e\" \"brightblack\" )) (base3 '(\"#41454b\" \"#41454b\" \"brightblack\" )) (base4 '(\"#515462\" \"#515462\" \"brightblack\" )) (base5 '(\"#888395\" \"#888395\" \"brightblack\" )) (base6 '(\"#929292\" \"#929292\" \"brightblack\" )) (base7 '(\"#727269\" \"#727269\" \"brightblack\" )) (base8 '(\"#eceff4\" \"#eceff4\" \"white\" )) (fg-alt '(\"#c9d9ff\" \"#c9d9ff\" \"brightwhite\" )) (fg '(\"#c6c6c6\" \"#c6c6c6\" \"white\" )) (grey base4) (red '(\"#e1c1ee\" \"#e1c1ee\" \"red\" )) (orange '(\"#a6c1e0\" \"#a6c1e0\" \"brightred\" )) (green '(\"#5b94ab\" \"#5b94ab\" \"green\" )) (teal '(\"#7ebebd\" \"#7ebebd\" \"brightgreen\" )) (yellow '(\"#cfcf9c\" \"#cfcf9c\" \"yellow\" )) (blue '(\"#819cd6\" \"#819cd6\" \"brightblue\" )) (light-blue '(\"#90a6db\" \"#90a6db\" \"yellow\" )) (dark-blue '(\"#616c96\" \"#616c96\" \"blue\" )) (magenta '(\"#a6c1e0\" \"#a6c1e0\" \"magenta\" )) (violet '(\"#b0a2e7\" \"#b0a2e7\" \"brightmagenta\")) (cyan '(\"#7289bc\" \"#7289bc\" \"brightcyan\" )) (dark-cyan '(\"#6e7899\" \"#6e7899\" \"cyan\" )) (highlight blue) (vertical-bar (doom-darken base1 0.5)) (selection dark-blue) (builtin teal) (comments dark-cyan) (doc-comments (doom-lighten dark-cyan 0.25)) (constants magenta) (functions teal) (keywords blue) (methods cyan) (operators blue) (type violet) (strings green) (variables magenta) (numbers magenta) (region base3) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + }, + { + "doom-xcode-theme": "((bg '(\"#292A30\" nil nil )) (bg-alt '(\"#252629\" nil nil )) (base0 '(\"#0d0d0d\" \"black\" \"black\" )) (base1 '(\"#1b1b1b\" \"#1b1b1b\" )) (base2 '(\"#212122\" \"#1e1e1e\" )) (base3 '(\"#292b2b\" \"#292929\" \"brightblack\")) (base4 '(\"#3f4040\" \"#3f3f3f\" \"brightblack\")) (base5 '(\"#5c5e5e\" \"#525252\" \"brightblack\")) (base6 '(\"#757878\" \"#6b6b6b\" \"brightblack\")) (base7 '(\"#969896\" \"#979797\" \"brightblack\")) (base8 '(\"#ffffff\" \"#ffffff\" \"white\" )) (fg '(\"#FFFFFF\" \"#ffffff\" \"white\")) (fg-alt (doom-darken fg 0.4)) (red '(\"#FC6A5D\" \"#FC6A5D\" \"red\")) (orange '(\"#FD8F3F\" \"#FD8F3F\" \"orange\")) (yellow '(\"#D0BF68\" \"#D0BF68\" \"yellow\")) (green '(\"#67B7A4\" \"#67B7A4\" \"green\")) (blue '(\"#5DD8FF\" \"#5DD8FF\" \"brightblue\")) (teal '(\"#59B0CF\" \"#59B0CF\" \"brightblue\")) (magenta '(\"#D0A8FF\" \"#D0A8FF\" \"magenta\")) (cyan '(\"#8abeb7\" \"#8abeb7\" \"cyan\")) (dark-cyan (doom-darken cyan 0.4)) (grey '(\"#6C7986\" \"#6C7986\" \"brightblack\")) (light-green'(\"#9EF1DD\" \"#9EF1DD\" \"lightgreen\")) (violet '(\"#A167E6\" \"#A167E6\" \"brightmagenta\")) (dark-blue '(\"#41A1C0\" \"#41A1C0\" \"darkblue\")) (pink '(\"#FC5FA3\" \"#FC5FA3\" \"pink\")) (highlight blue) (vertical-bar `(\"#161616\" ,@base0)) (selection `(,(car (doom-lighten bg 0.1)) ,@(cdr base4))) (builtin light-green) (comments grey) (doc-comments (doom-lighten grey 0.14)) (constants violet) (functions dark-blue) (keywords pink) (methods dark-blue) (operators orange) (type blue) (strings red) (variables dark-blue) (numbers yellow) (region selection) (error red) (warning yellow) (success green) (vc-modified fg-alt) (vc-added green) (vc-deleted red))" + }, + { + "doom-zenburn-theme": "((bg '(\"#3F3F3F\" nil nil )) (bg-alt '(\"#383838\" nil nil )) (base0 '(\"#000000\" \"black\" \"black\" )) (base1 '(\"#2B2B2B\" \"#1e1e1e\" \"brightblack\" )) (base2 '(\"#303030\" \"#2e2e2e\" \"brightblack\" )) (base3 '(\"#383838\" \"#262626\" \"brightblack\" )) (base4 '(\"#494949\" \"#3f3f3f\" \"brightblack\" )) (base5 '(\"#4F4F4F\" \"#525252\" \"brightblack\" )) (base6 '(\"#5F5F5F\" \"#6b6b6b\" \"brightblack\" )) (base7 '(\"#6F6F6F\" \"#979797\" \"brightblack\" )) (base8 '(\"#FFFFEF\" \"#dfdfdf\" \"white\" )) (fg '(\"#DCDCDC\" \"#bfbfbf\" \"brightwhite\" )) (fg-alt '(\"#989890\" \"#2d2d2d\" \"white\" )) (grey base4) (red '(\"#CC9393\" \"#ff6655\" \"red\" )) (orange '(\"#DFAF8F\" \"#dd8844\" \"brightred\" )) (green '(\"#7F9F7F\" \"#99bb66\" \"green\" )) (teal '(\"#4db5bd\" \"#44b9b1\" \"brightgreen\" )) (yellow '(\"#F0DFAF\" \"#ECBE7B\" \"yellow\" )) (blue '(\"#8CD0D3\" \"#51afef\" \"brightblue\" )) (dark-blue '(\"#2257A0\" \"#2257A0\" \"blue\" )) (magenta '(\"#DC8CC3\" \"#c678dd\" \"brightmagenta\")) (violet '(\"#a9a1e1\" \"#a9a1e1\" \"magenta\" )) (cyan '(\"#93E0E3\" \"#46D9FF\" \"brightcyan\" )) (dark-cyan '(\"#5699AF\" \"#5699AF\" \"cyan\" )) (fg-1 '(\"#656555\")) (fg+2 '(\"#FFFFFD\")) (red-4 '(\"#8C5353\")) (red-1 '(\"#BC8383\")) (red+1 '(\"#DCA3A3\")) (yellow-2 '(\"#D0BF8F\")) (yellow-1 '(\"#E0CF9F\")) (green-2 '(\"#5F7F5F\")) (green+1 '(\"#8FB28F\")) (green+2 '(\"#9FC59F\")) (green+3 '(\"#AFD8AF\")) (green+4 '(\"#BFEBBF\")) (blue+1 '(\"#94BFF3\")) (blue-1 '(\"#7CB8BB\")) (blue-2 '(\"#6CA0A3\")) (blue-3 '(\"#5C888B\")) (blue-4 '(\"#4C7073\")) (blue-5 '(\"#366060\")) (highlight blue) (vertical-bar (doom-darken base1 0.1)) (selection dark-blue) (builtin fg) (comments green) (doc-comments green+2) (constants green+4) (functions cyan) (keywords yellow) (methods cyan) (operators blue) (type blue-1) (strings red) (variables orange) (numbers fg) (region base1) (error red) (warning yellow) (success green) (vc-modified orange) (vc-added green) (vc-deleted red))" + } +] diff --git a/util/variablesContext.tsx b/util/variablesContext.tsx new file mode 100644 index 0000000..5fd34b8 --- /dev/null +++ b/util/variablesContext.tsx @@ -0,0 +1,12 @@ +import { createContext } from 'react' +import { EmacsVariables } from '../pages' + +type Theme = [name: string, themeObject: { [color: string]: string }] + +const VariablesContext = createContext({ + subDirs: ['dailies', '.attach'], + attachDir: '.attach', + roamDir: '~/org', + dailyDir: 'dailies', +}) +export { VariablesContext } -- cgit v1.2.3