initial
This commit is contained in:
commit
d14fcd084e
21
colors/shades_of_purple.lua
Normal file
21
colors/shades_of_purple.lua
Normal file
|
@ -0,0 +1,21 @@
|
|||
-- You probably always want to set this in your vim file
|
||||
vim.opt.background = 'dark'
|
||||
vim.g.colors_name = 'shades_of_purple'
|
||||
|
||||
-- By setting our module to nil, we clear lua's cache,
|
||||
-- which means the require ahead will *always* occur.
|
||||
--
|
||||
-- This isn't strictly required but it can be a useful trick if you are
|
||||
-- incrementally editing your config a lot and want to be sure your themes
|
||||
-- changes are being picked up without restarting neovim.
|
||||
--
|
||||
-- Note if you're working in on your theme and have :Lushify'd the buffer,
|
||||
-- your changes will be applied with our without the following line.
|
||||
--
|
||||
-- The performance impact of this call can be measured in the hundreds of
|
||||
-- *nanoseconds* and such could be considered "production safe".
|
||||
package.loaded['lush_theme.shades_of_purple'] = nil
|
||||
|
||||
-- include our theme file and pass it to lush to apply
|
||||
require('lush')(require('lush_theme.shades_of_purple'))
|
||||
|
319
lua/shades_of_purple/shades_of_purple.lua
Normal file
319
lua/shades_of_purple/shades_of_purple.lua
Normal file
|
@ -0,0 +1,319 @@
|
|||
--
|
||||
-- Built with,
|
||||
--
|
||||
-- ,gggg,
|
||||
-- d8" "8I ,dPYb,
|
||||
-- 88 ,dP IP'`Yb
|
||||
-- 8888888P" I8 8I
|
||||
-- 88 I8 8'
|
||||
-- 88 gg gg ,g, I8 dPgg,
|
||||
-- ,aa,_88 I8 8I ,8'8, I8dP" "8I
|
||||
-- dP" "88P I8, ,8I ,8' Yb I8P I8
|
||||
-- Yb,_,d88b,,_ ,d8b, ,d8b,,8'_ 8) ,d8 I8,
|
||||
-- "Y8P" "Y888888P'"Y88P"`Y8P' "YY8P8P88P `Y8
|
||||
--
|
||||
|
||||
-- This is a starter colorscheme for use with Lush,
|
||||
-- for usage guides, see :h lush or :LushRunTutorial
|
||||
|
||||
--
|
||||
-- Note: Because this is a lua file, vim will append it to the runtime,
|
||||
-- which means you can require(...) it in other lua code (this is useful),
|
||||
-- but you should also take care not to conflict with other libraries.
|
||||
--
|
||||
-- (This is a lua quirk, as it has somewhat poor support for namespacing.)
|
||||
|
||||
local lush = require('lush')
|
||||
local hsl = lush.hsl
|
||||
|
||||
local base00 = "#191830"
|
||||
local base06 = "#ffffff"
|
||||
local base09 = "#78a9ff"
|
||||
local colors = {
|
||||
base00 = base00,
|
||||
base01 = base00,
|
||||
base02 = "#FFFFFF",
|
||||
base03 = "#FFFFFF",
|
||||
base04 = "#FFFFFF",
|
||||
base05 = "#FFFFFF",
|
||||
base06 = "#FFFFFF",
|
||||
base07 = "#fad000",
|
||||
base08 = "#3ddbd9",
|
||||
base09 = base09,
|
||||
base10 = "#ee5396",
|
||||
base11 = "#33b1ff",
|
||||
base12 = "#ff7eb6",
|
||||
base13 = "#42be65",
|
||||
base14 = "#be95ff",
|
||||
base15 = "#82cfff",
|
||||
blend = "#131313",
|
||||
|
||||
string = "#A5FF90",
|
||||
keyword = "#ff9d00",
|
||||
type = "#fad000",
|
||||
error = "#EC3A37F5",
|
||||
storage = "#FB94FF",
|
||||
macro = "#fad000",
|
||||
fg = "#FFFFFF",
|
||||
lineNumber = "#7870ab",
|
||||
bg = "#191830",
|
||||
|
||||
white = "#FFFFFF",
|
||||
|
||||
meta = "#9efff",
|
||||
|
||||
none = "NONE"
|
||||
|
||||
}
|
||||
|
||||
-- LSP/Linters mistakenly show `undefined global` errors in the spec, they may
|
||||
-- support an annotation like the following. Consult your server documentation.
|
||||
---@diagnostic disable: undefined-global
|
||||
local theme = lush(function(injected_functions)
|
||||
local sym = injected_functions.sym
|
||||
return {
|
||||
|
||||
ColorColumn {fg = colors.none, bg = colors.bg },
|
||||
Cursor {fg = colors.base00, bg = colors.base04},
|
||||
CursorLine {fg = colors.none, bg = colors.base01},
|
||||
CursorColumn {fg = colors.none, bg = colors.base01},
|
||||
CursorLineNr {fg = colors.base04, bg = colors.none},
|
||||
QuickFixLine {fg = colors.none, bg = colors.base01},
|
||||
Error {fg = colors.error, bg = colors.base01},
|
||||
LineNr {fg = colors.lineNumber, bg = colors.base00},
|
||||
NonText {fg = colors.fg, bg = colors.none},
|
||||
Normal {fg = colors.fg, bg = colors.base00},
|
||||
Pmenu {fg = colors.base04, bg = colors.base01},
|
||||
PmenuSbar {fg = colors.base04, bg = colors.base01},
|
||||
PmenuSel {fg = colors.base08, bg = colors.base02},
|
||||
PmenuThumb {fg = colors.base08, bg = colors.base02},
|
||||
SpecialKey {fg = colors.base03, bg = colors.none},
|
||||
Visual {fg = colors.none, bg = colors.base02},
|
||||
VisualNOS {fg = colors.none, bg = colors.base02},
|
||||
TooLong {fg = colors.none, bg = colors.base02},
|
||||
Debug {fg = colors.white, bg = colors.none},
|
||||
Macro {fg = colors.macro, bg = colors.none},
|
||||
MatchParen {fg = colors.none, bg = colors.base02, underline = true},
|
||||
Bold {fg = colors.none, bg = colors.none, bold = true},
|
||||
Italic {fg = colors.none, bg = colors.none, italic = true},
|
||||
Underlined {fg = colors.none, bg = colors.none, underline = true},
|
||||
DiagnosticWarn {fg = colors.base14, bg = colors.none},
|
||||
DiagnosticError {fg = colors.base10, bg = colors.none},
|
||||
DiagnosticInfo {fg = colors.base09, bg = colors.none},
|
||||
DiagnosticHint {fg = colors.base04, bg = colors.none},
|
||||
DiagnosticUnderlineWarn {fg = colors.base14, bg = colors.none, undercurl = true},
|
||||
DiagnosticUnderlineError {fg = colors.base10, bg = colors.none, undercurl = true},
|
||||
DiagnosticUnderlineInfo {fg = colors.base04, bg = colors.none, undercurl = true},
|
||||
DiagnosticUnderlineHint {fg = colors.base04, bg = colors.none, undercurl = true},
|
||||
HealthError {fg = colors.base10, bg = colors.none},
|
||||
HealthWarning {fg = colors.base14, bg = colors.none},
|
||||
HealthSuccess {fg = colors.base13, bg = colors.none},
|
||||
|
||||
LspCodeLens {fg = colors.none, bg = colors.base03},
|
||||
LspReferenceText {fg = colors.none, bg = colors.base03},
|
||||
LspReferenceread {fg = colors.none, bg = colors.base03},
|
||||
LspReferenceWrite {fg = colors.none, bg = colors.base03},
|
||||
LspSignatureActiveParameter {fg = colors.base08, bg = colors.none},
|
||||
|
||||
Folded {fg = colors.base02, bg = colors.base01},
|
||||
FoldColumn {fg = colors.base01, bg = colors.base00},
|
||||
SignColumn {fg = colors.base01, bg = colors.base00},
|
||||
Directory {fg = colors.base08, bg = colors.none},
|
||||
EndOfBuffer {fg = colors.base01, bg = colors.none},
|
||||
ErrorMsg {fg = colors.error, bg = colors.none},
|
||||
ModeMsg {fg = colors.base04, bg = colors.none},
|
||||
MoreMsg {fg = colors.base08, bg = colors.none},
|
||||
Question {fg = colors.base04, bg = colors.none},
|
||||
Substitute {fg = colors.base01, bg = colors.base08},
|
||||
WarningMsg {fg = colors.base14, bg = colors.none},
|
||||
WildMenu {fg = colors.base08, bg = colors.base01},
|
||||
helpHyperTextJump {fg = colors.base08, bg = colors.none},
|
||||
helpSpecial {fg = colors.base09, bg = colors.none},
|
||||
helpHeadline {fg = colors.base10, bg = colors.none},
|
||||
helpHeader {fg = colors.base15, bg = colors.none},
|
||||
DiffAdded {fg = colors.base07, bg = colors.none},
|
||||
DiffChanged {fg = colors.base09, bg = colors.none},
|
||||
DiffRemoved {fg = colors.base10, bg = colors.none},
|
||||
DiffAdd {bg = "#122f2f", fg = colors.none},
|
||||
DiffChange {bg = "#222a39", fg = colors.none},
|
||||
DiffText {bg = "#2f3f5c", fg = colors.none},
|
||||
DiffDelete {bg = "#361c28", fg = colors.none},
|
||||
IncSearch {fg = colors.base06, bg = colors.base10},
|
||||
Search {fg = colors.base01, bg = colors.base08},
|
||||
TabLine {link = "StatusLineNC"},
|
||||
TabLineFill {link = "TabLine"},
|
||||
TabLineSel {link = "StatusLine"},
|
||||
Title {fg = colors.base04, bg = colors.none},
|
||||
VertSplit {fg = colors.base01, bg = colors.base00},
|
||||
WinSeparator {fg = colors.base01, bg = colors.base00},
|
||||
Boolean {fg = colors.base09, bg = colors.none},
|
||||
Character {fg = colors.base14, bg = colors.none},
|
||||
Comment {fg = colors.base03, bg = colors.none, italic = true},
|
||||
Conceal {fg = colors.none, bg = colors.none},
|
||||
Conditional {fg = colors.base09, bg = colors.none},
|
||||
Constant {fg = colors.base04, bg = colors.none},
|
||||
Decorator {fg = colors.base12, bg = colors.none},
|
||||
Define {fg = colors.storage, bg = colors.none},
|
||||
Delimeter {fg = colors.base06, bg = colors.none},
|
||||
Exception {fg = colors.base09, bg = colors.none},
|
||||
Float {link = "Number"},
|
||||
Function {fg = colors.type, bg = colors.none},
|
||||
Identifier {fg = colors.type, bg = colors.none},
|
||||
Include {fg = colors.macro, bg = colors.none},
|
||||
Keyword {fg = colors.keyword, bg = colors.none},
|
||||
Label {fg = colors.type, bg = colors.none},
|
||||
Number {fg = colors.base15, bg = colors.none},
|
||||
Operator {fg = colors.base09, bg = colors.none},
|
||||
PreProc {fg = colors.meta, bg = colors.none},
|
||||
Repeat {fg = colors.base09, bg = colors.none},
|
||||
Special {fg = colors.base04, bg = colors.none},
|
||||
SpecialChar {fg = colors.base04, bg = colors.none},
|
||||
SpecialComment {fg = colors.base08, bg = colors.none},
|
||||
Statement {fg = colors.type, bg = colors.none},
|
||||
StorageClass {fg = colors.keyword, bg = colors.none},
|
||||
String {fg = colors.string, bg = colors.none},
|
||||
Structure {fg = colors.base09, bg = colors.none},
|
||||
Tag {fg = colors.base04, bg = colors.none},
|
||||
Todo {fg = colors.base13, bg = colors.none},
|
||||
Type {fg = colors.type, bg = colors.none},
|
||||
markdownBlockquote {fg = colors.base08, bg = colors.none},
|
||||
markdownBold {link = "Bold"},
|
||||
markdownItalic {link = "Italic"},
|
||||
markdownBoldItalic {fg = colors.none, bg = colors.none, bold = true, italic = true},
|
||||
markdownRule {link = "Comment"},
|
||||
markdownH1 {fg = colors.base10, bg = colors.none},
|
||||
markdownH2 {link = "markdownH1"},
|
||||
markdownH3 {link = "markdownH1"},
|
||||
markdownH4 {link = "markdownH1"},
|
||||
markdownH5 {link = "markdownH1"},
|
||||
markdownH6 {link = "markdownH1"},
|
||||
markdownHeadingDelimiter {link = "markdownH1"},
|
||||
markdownHeadingRule {link = "markdownH1"},
|
||||
markdownCode {link = "String"},
|
||||
markdownCodeBlock {link = "markdownCode"},
|
||||
markdownCodeDelimiter {link = "markdownCode"},
|
||||
markdownUrl {link = "String"},
|
||||
markdownListMarker {fg = colors.base08, bg = colors.none},
|
||||
markdownOrderedListMarker {fg = colors.base08, bg = colors.none},
|
||||
asciidocAttributeEntry {fg = colors.base15, bg = colors.none},
|
||||
asciidocAttributeList {link = "asciidocAttributeEntry"},
|
||||
asciidocAttributeRef {link = "asciidocAttributeEntry"},
|
||||
|
||||
NvimInternalError {fg = colors.base00, bg = colors.base08},
|
||||
NormalFloat {fg = colors.base05, bg = colors.blend},
|
||||
FloatBorder {fg = colors.blend, bg = colors.blend},
|
||||
NormalNC {fg = colors.base05, bg = colors.base00},
|
||||
TermCursor {fg = colors.base00, bg = colors.base04},
|
||||
TermCursorNC {fg = colors.base00, bg = colors.base04},
|
||||
StatusLine {fg = colors.base04, bg = colors.base00},
|
||||
StatusLineNC {fg = colors.base04, bg = colors.base01},
|
||||
StatusReplace {fg = colors.base00, bg = colors.base08},
|
||||
StatusInsert {fg = colors.base00, bg = colors.base12},
|
||||
StatusVisual {fg = colors.base00, bg = colors.base14},
|
||||
StatusTerminal {fg = colors.base00, bg = colors.base11},
|
||||
StatusNormal {fg = colors.base00, bg = colors.base15},
|
||||
StatusCommand {fg = colors.base00, bg = colors.base13},
|
||||
StatusLineDiagnosticWarn {fg = colors.base14, bg = colors.base00, bold = true},
|
||||
StatusLineDiagnosticError {fg = colors.base10, bg = colors.base00, bold = true},
|
||||
TelescopeBorder {fg = colors.blend, bg = colors.blend},
|
||||
TelescopePromptBorder {fg = colors.base02, bg = colors.base02},
|
||||
TelescopePromptNormal {fg = colors.base05, bg = colors.base02},
|
||||
TelescopePromptPrefix {fg = colors.base08, bg = colors.base02},
|
||||
TelescopeNormal {fg = colors.none, bg = colors.blend},
|
||||
TelescopePreviewTitle {fg = colors.base02, bg = colors.base12},
|
||||
TelescopePromptTitle {fg = colors.base02, bg = colors.base11},
|
||||
TelescopeResultsTitle {fg = colors.blend, bg = colors.blend},
|
||||
TelescopeSelection {fg = colors.none, bg = colors.base02},
|
||||
TelescopePreviewLine {fg = colors.none, bg = colors.base01},
|
||||
TelescopeMatching {fg = colors.base08, bg = colors.none, bold = true, italic = true},
|
||||
NotifyERRORBorder {fg = colors.base08, bg = colors.none},
|
||||
NotifyWARNBorder {fg = colors.base14, bg = colors.none},
|
||||
NotifyINFOBorder {fg = colors.base05, bg = colors.none},
|
||||
NotifyDEBUGBorder {fg = colors.base13, bg = colors.none},
|
||||
NotifyTRACEBorder {fg = colors.base13, bg = colors.none},
|
||||
NotifyERRORIcon {fg = colors.base08, bg = colors.none},
|
||||
NotifyWARNIcon {fg = colors.base14, bg = colors.none},
|
||||
NotifyINFOIcon {fg = colors.base05, bg = colors.none},
|
||||
NotifyDEBUGIcon {fg = colors.base13, bg = colors.none},
|
||||
NotifyTRACEIcon {fg = colors.base13, bg = colors.none},
|
||||
NotifyERRORTitle {fg = colors.base08, bg = colors.none},
|
||||
NotifyWARNTitle {fg = colors.base14, bg = colors.none},
|
||||
NotifyINFOTitle {fg = colors.base05, bg = colors.none},
|
||||
NotifyDEBUGTitle {fg = colors.base13, bg = colors.none},
|
||||
NotifyTRACETitle {fg = colors.base13, bg = colors.none},
|
||||
CmpItemAbbr {fg = "#adadad", bg = colors.none},
|
||||
CmpItemAbbrMatch {fg = colors.base05, bg = colors.none, bold = true},
|
||||
CmpItemAbbrMatchFuzzy {fg = colors.base04, bg = colors.none, bold = true},
|
||||
CmpItemMenu {fg = colors.base04, bg = colors.none, italic = true},
|
||||
CmpItemKindInterface {fg = colors.white, bg = colors.macro},
|
||||
CmpItemKindColor {fg = colors.base01, bg = colors.base08},
|
||||
CmpItemKindTypeParameter {fg = colors.base01, bg = colors.base08},
|
||||
CmpItemKindText {fg = colors.macro, bg = colors.bg},
|
||||
CmpItemKindEnum {fg = colors.base01, bg = colors.base09},
|
||||
CmpItemKindKeyword {fg = colors.base01, bg = colors.base09},
|
||||
CmpItemKindConstant {fg = colors.base01, bg = colors.base10},
|
||||
CmpItemKindConstructor {fg = colors.base01, bg = colors.base10},
|
||||
CmpItemKindReference {fg = colors.base01, bg = colors.base10},
|
||||
CmpItemKindFunction {fg = colors.base01, bg = colors.base11},
|
||||
CmpItemKindStruct {fg = colors.base01, bg = colors.base11},
|
||||
CmpItemKindClass {fg = colors.base01, bg = colors.base11},
|
||||
CmpItemKindModule {fg = colors.base01, bg = colors.base11},
|
||||
CmpItemKindOperator {fg = colors.base01, bg = colors.base11},
|
||||
CmpItemKindField {fg = colors.base01, bg = colors.base12},
|
||||
CmpItemKindProperty {fg = colors.base01, bg = colors.base12},
|
||||
CmpItemKindEvent {fg = colors.base01, bg = colors.base12},
|
||||
CmpItemKindUnit {fg = colors.base01, bg = colors.base13},
|
||||
CmpItemKindSnippet {fg = colors.base01, bg = colors.base13},
|
||||
CmpItemKindFolder {fg = colors.base01, bg = colors.base13},
|
||||
CmpItemKindVariable {fg = colors.base01, bg = colors.base14},
|
||||
CmpItemKindFile {fg = colors.base01, bg = colors.base14},
|
||||
CmpItemKindMethod {fg = colors.base01, bg = colors.base15},
|
||||
CmpItemKindValue {fg = colors.base01, bg = colors.base15},
|
||||
CmpItemKindEnumMember {fg = colors.base01, bg = colors.base15},
|
||||
NvimTreeImageFile {fg = colors.base12, bg = colors.none},
|
||||
NvimTreeFolderIcon {fg = colors.base12, bg = colors.none},
|
||||
NvimTreeWinSeparator {fg = colors.base00, bg = colors.base00},
|
||||
NvimTreeFolderName {fg = colors.base09, bg = colors.none},
|
||||
NvimTreeIndentMarker {fg = colors.base02, bg = colors.none},
|
||||
NvimTreeEmptyFolderName {fg = colors.base15, bg = colors.none},
|
||||
NvimTreeOpenedFolderName {fg = colors.base15, bg = colors.none},
|
||||
NvimTreeNormal {fg = colors.base04, bg = colors.base00},
|
||||
NeogitBranch {fg = colors.base10, bg = colors.none},
|
||||
NeogitRemote {fg = colors.base09, bg = colors.none},
|
||||
NeogitHunkHeader {fg = colors.base04, bg = colors.base02},
|
||||
NeogitHunkHeaderHighlight {fg = colors.base04, bg = colors.base03},
|
||||
HydraRed {fg = colors.base12, bg = colors.none},
|
||||
HydraBlue {fg = colors.base09, bg = colors.none},
|
||||
HydraAmaranth {fg = colors.base10, bg = colors.none},
|
||||
HydraTeal {fg = colors.base08, bg = colors.none},
|
||||
HydraHint {fg = colors.none, bg = colors.blend},
|
||||
alpha1 {fg = colors.base03, bg = colors.none},
|
||||
alpha2 {fg = colors.base04, bg = colors.none},
|
||||
alpha3 {fg = colors.base03, bg = colors.none},
|
||||
CodeBlock {fg = colors.none, bg = colors.base01},
|
||||
BufferLineDiagnostic {fg = colors.base10, bg = colors.none, bold = true},
|
||||
BufferLineDiagnosticVisible {fg = colors.base10, bg = colors.none, bold = true},
|
||||
htmlH1 {link = "markdownH1"},
|
||||
mkdRule {link = "markdownRule"},
|
||||
mkdListItem {link = "markdownListMarker"},
|
||||
mkdListItemCheckbox {link = "markdownListMarker"},
|
||||
VimwikiHeader1 {link = "markdownH1"},
|
||||
VimwikiHeader2 {link = "markdownH1"},
|
||||
VimwikiHeader3 {link = "markdownH1"},
|
||||
VimwikiHeader4 {link = "markdownH1"},
|
||||
VimwikiHeader5 {link = "markdownH1"},
|
||||
VimwikiHeader6 {link = "markdownH1"},
|
||||
VimwikiHeaderChar {link = "markdownH1"},
|
||||
VimwikiList {link = "markdownListMarker"},
|
||||
VimwikiCode {link = "markdownCode"},
|
||||
|
||||
-- Language specific stuff
|
||||
-- rustModPath {fg = "#fad000" },
|
||||
|
||||
}
|
||||
end)
|
||||
|
||||
-- Return our parsed theme for extension or use elsewhere.
|
||||
return theme
|
||||
|
||||
-- vi:nowrap
|
Loading…
Reference in a new issue