experiments
Lokesh Krishna 3 years ago
commit 37c3a72336

@ -1,9 +1,16 @@
<h3 align="center">
<img src="https://raw.githubusercontent.com/catppuccin/catppuccin/dev/assets/logos/exports/1544x1544_circle.png" width="100" alt="Logo"/><br/>
<img src="https://raw.githubusercontent.com/catppuccin/catppuccin/dev/assets/misc/transparent.png" height="30" width="0px"/>
Catppuccin for NeoVim
<img src="https://raw.githubusercontent.com/catppuccin/catppuccin/dev/assets/misc/transparent.png" height="30" width="0px"/>
</h3>
<p align="center"> <p align="center">
<h2 align="center">😸 Catppuccin for NeoVim</h2> <a href="https://github.com/catppuccin/nvim/stargazers"><img src="https://img.shields.io/github/stars/catppuccin/nvim?colorA=1e1e28&colorB=c9cbff&style=for-the-badge&logo=starship style=for-the-badge"></a>
<a href="https://github.com/catppuccin/nvim/issues"><img src="https://img.shields.io/github/issues/catppuccin/nvim?colorA=1e1e28&colorB=f7be95&style=for-the-badge"></a>
<a href="https://github.com/catppuccin/nvim/contributors"><img src="https://img.shields.io/github/contributors/catppuccin/nvim?colorA=1e1e28&colorB=b1e1a6&style=for-the-badge"></a>
</p> </p>
<p align="center">Warm mid-tone dark theme to show off your vibrant self!</p>
<p align="center"> <p align="center">
<img src="https://raw.githubusercontent.com/catppuccin/nvim/dev/assets/ss.png"/> <img src="https://raw.githubusercontent.com/catppuccin/nvim/dev/assets/ss.png"/>
</p> </p>
@ -47,7 +54,7 @@ You can use your favorite plugin manager for this. Here are some examples with t
#### Vim-plug #### Vim-plug
```lua ```lua
Plug 'catppuccin/nvim' Plug 'catppuccin/nvim', {'as': 'catppuccin'}
``` ```
#### Packer.nvim #### Packer.nvim
@ -62,13 +69,7 @@ use({
#### Vundle #### Vundle
```lua ```lua
Plugin 'catppuccin/nvim' Plugin 'catppuccin/nvim', {'name': 'catppuccin'}
```
#### NeoBundle
```lua
NeoBundleFetch 'catppuccin/nvim'
``` ```
### Setup ### Setup

@ -1,25 +1,26 @@
local color_palette = { local color_palette = {
-- morning palette catppuccin21 = "#F5E0DC", -- Rosewater
catppuccin0 = "#B1E3AD", -- Green catppuccin2 = "#F2CDCD", -- Flamingo
catppuccin2 = "#F2CECF", -- Flamingo
catppuccin3 = "#C6AAE8", -- Magenta catppuccin3 = "#C6AAE8", -- Magenta
catppuccin4 = "#E5B4E2", -- Pink catppuccin4 = "#E5B4E2", -- Pink
catppuccin5 = "#E38C8F", -- Red catppuccin5 = "#E38C8F", -- Red
catppuccin6 = "#F9C096", -- Peach catppuccin19 = "#E49CB3", -- Maroon
catppuccin7 = "#BEE4ED", -- Teal catppuccin6 = "#F7BE95", -- Peach
catppuccin8 = "#EBDDAA", -- Yellow catppuccin8 = "#ECDDAA", -- Yellow
catppuccin9 = "#A4B9EF", -- Blue catppuccin0 = "#B1E1A6", -- Green
catppuccin7 = "#B7E5E6", -- Teal
-- night palette catppuccin20 = "#92D2E8", -- Sky
catppuccin13 = "#15121C", -- Black0 catppuccin9 = "#A3B9EF", -- Blue
catppuccin14 = "#1B1923", -- Black1 catppuccin18 = "#C9CBFF", -- Lavender
catppuccin1 = "#1E1E28", -- Black2 catppuccin10 = "#DFDEF1", -- White
catppuccin16 = "#332E41", -- Black3
catppuccin12 = "#575268", -- Black4
catppuccin11 = "#6E6C7E", -- Gray0
catppuccin17 = "#988BA2", -- Gray1
catppuccin15 = "#C3BAC6", -- Gray2 catppuccin15 = "#C3BAC6", -- Gray2
catppuccin10 = "#DADAE8", -- White catppuccin17 = "#988BA2", -- Gray1
catppuccin11 = "#6E6C7E", -- Gray0
catppuccin12 = "#575268", -- Black4
catppuccin16 = "#332E41", -- Black3
catppuccin1 = "#1E1E28", -- Black2
catppuccin14 = "#1B1923", -- Black1
catppuccin13 = "#15121C", -- Black0
} }
return color_palette return color_palette

@ -2,7 +2,8 @@ local M = {}
function M.get(cp) function M.get(cp)
local keywords = cp.catppuccin4 local keywords = cp.catppuccin4
local operators = cp.catppuccin7 local operators = cp.catppuccin19
local math_logic = cp.catppuccin18
return { return {
-- These groups are for the neovim tree-sitter highlights. -- These groups are for the neovim tree-sitter highlights.
-- As of writing, tree-sitter support is a WIP, group names may change. -- As of writing, tree-sitter support is a WIP, group names may change.
@ -11,32 +12,33 @@ function M.get(cp)
-- you explicitly want to support Treesitter's improved syntax awareness. -- you explicitly want to support Treesitter's improved syntax awareness.
TSField = { fg = cp.catppuccin2 }, -- For fields. TSField = { fg = cp.catppuccin2 }, -- For fields.
TSProperty = { fg = cp.catppuccin8, style = "italic" }, -- Same as TSField. TSProperty = { fg = cp.catppuccin8, style = "italic" }, -- Same as TSField.
TSInclude = { fg = cp.catppuccin5, style = "italic" }, -- For includes: #include in C, use or extern crate in Rust, or require in Lua. TSInclude = { fg = cp.catppuccin19, style = "italic" }, -- For includes: #include in C, use or extern crate in Rust, or require in Lua.
TSOperator = { fg = operators, style = "bold" }, -- For any operator: +, but also -> and * in cp. TSOperator = { fg = operators, style = "bold" }, -- For any operator: +, but also -> and * in cp.
TSKeywordOperator = { fg = operators, style = "bold" }, -- For new keyword operator TSKeywordOperator = { fg = operators, style = "bold" }, -- For new keyword operator
TSPunctSpecial = { fg = cp.catppuccin5 }, -- For special punctutation that does not fall in the catagories before. TSPunctSpecial = { fg = cp.catppuccin19, style = "bold" }, -- For special punctutation that does not fall in the catagories before.
TSFloat = { fg = cp.catppuccin6, style = "italic" }, -- For floats. TSFloat = { fg = math_logic, style = "bold,italic" }, -- For floats.
TSNumber = { fg = cp.catppuccin6, style = "italic" }, -- For all numbers TSNumber = { fg = math_logic, style = "bold,italic" }, -- For all numbers
TSBoolean = { fg = cp.catppuccin6, style = "italic" }, -- For booleans. TSBoolean = { fg = math_logic, style = "bold,italic" }, -- For booleans.
TSConstructor = { fg = cp.catppuccin9 }, -- For constructor calls and definitions: = { } in Lua, and Java constructors. TSConstructor = { fg = cp.catppuccin20 }, -- For constructor calls and definitions: = { } in Lua, and Java constructors.
TSConstant = { fg = cp.catppuccin2 }, -- For constants TSConstant = { fg = cp.catppuccin6 }, -- For constants
TSConditional = { fg = keywords, style = cnf.styles.keywords }, -- For keywords related to conditionnals. TSConditional = { fg = keywords, style = "bold" }, -- For keywords related to conditionnals.
TSRepeat = { fg = keywords, style = cnf.styles.keywords }, -- For keywords related to loops. TSRepeat = { fg = keywords, style = "bold" }, -- For keywords related to loops.
TSException = { fg = cp.catppuccin6, style = cnf.styles.keywords }, -- For exception related keywords. TSException = { fg = cp.catppuccin6, style = cnf.styles.keywords }, -- For exception related keywords.
-- builtin -- builtin
TSConstBuiltin = { fg = cp.catppuccin6, style = cnf.styles.keywords }, -- For constant that are built in the language: nil in Lua. TSConstBuiltin = { fg = cp.catppuccin20, style = cnf.styles.keywords }, -- For constant that are built in the language: nil in Lua.
TSFuncBuiltin = { fg = cp.catppuccin6, style = "italic" }, -- For builtin functions: table.insert in Lua. TSFuncBuiltin = { fg = cp.catppuccin6, style = "italic" }, -- For builtin functions: table.insert in Lua.
TSTypeBuiltin = { fg = cp.catppuccin5, style = "italic" }, -- For builtin types. TSTypeBuiltin = { fg = cp.catppuccin20, style = "italic" }, -- For builtin types.
TSVariableBuiltin = { fg = cp.catppuccin5, style = "italic" }, -- Variable names that are defined by the languages, like this or self. TSVariableBuiltin = { fg = cp.catppuccin5, style = "italic" }, -- Variable names that are defined by the languages, like this or self.
TSFunction = { fg = cp.catppuccin9, style = cnf.styles.functions }, -- For function (calls and definitions). TSFunction = { fg = cp.catppuccin9, style = cnf.styles.functions }, -- For function (calls and definitions).
TSFuncMacro = { fg = cp.catppuccin5 }, -- For macro defined functions (calls and definitions): each macro_rules in Ruscp. TSFuncMacro = { fg = cp.catppuccin5 }, -- For macro defined functions (calls and definitions): each macro_rules in Ruscp.
TSParameter = { fg = cp.catppuccin2, style = "italic" }, -- For parameters of a function. TSParameter = { fg = cp.catppuccin21, style = "italic" }, -- For parameters of a function.
TSKeywordFunction = { fg = cp.catppuccin4, style = cnf.styles.keywords }, -- For keywords used to define a fuction. TSKeywordFunction = { fg = cp.catppuccin4, style = cnf.styles.keywords }, -- For keywords used to define a fuction.
TSKeyword = { fg = keywords, style = cnf.styles.keywords }, -- For keywords that don't fall in previous categories. TSKeyword = { fg = keywords, style = cnf.styles.keywords }, -- For keywords that don't fall in previous categories.
TSKeywordReturn = { fg = cp.catppuccin5 },
-- TSAnnotation = { }; -- For C++/Dart attributes, annotations that can be attached to the code to denote some kind of meta information. -- TSAnnotation = { }; -- For C++/Dart attributes, annotations that can be attached to the code to denote some kind of meta information.
-- TSAttribute = { }; -- (unstable) TODO: docs -- TSAttribute = { }; -- (unstable) TODO: docs
-- TSCharacter = { }; -- For characters. -- TSCharacter = { }; -- For characters.
@ -45,7 +47,7 @@ function M.get(cp)
TSWarning = { fg = cp.catppuccin1, bg = cp.catppuccin8 }, TSWarning = { fg = cp.catppuccin1, bg = cp.catppuccin8 },
TSDanger = { fg = cp.catppuccin1, bg = cp.catppuccin5 }, TSDanger = { fg = cp.catppuccin1, bg = cp.catppuccin5 },
-- TSConstMacro = { }; -- For constants that are defined by macros: NULL in cp. -- TSConstMacro = { }; -- For constants that are defined by macros: NULL in cp.
TSError = { fg = cp.catppuccin5 }, -- For syntax/parser errors. -- TSError = { fg = cp.catppuccin5 }, -- For syntax/parser errors.
-- rustTSField = { fg = cp.catppuccin12 }, -- For fields. -- rustTSField = { fg = cp.catppuccin12 }, -- For fields.
TSLabel = { fg = cp.catppuccin9 }, -- For labels: label: in C and :label: in Lua. TSLabel = { fg = cp.catppuccin9 }, -- For labels: label: in C and :label: in Lua.
TSMethod = { fg = cp.catppuccin9, style = "italic" }, -- For method calls and definitions. TSMethod = { fg = cp.catppuccin9, style = "italic" }, -- For method calls and definitions.
@ -62,7 +64,7 @@ function M.get(cp)
TSVariable = { fg = cp.catppuccin10, style = cnf.styles.variables }, -- Any variable name that does not have another highlighcp. TSVariable = { fg = cp.catppuccin10, style = cnf.styles.variables }, -- Any variable name that does not have another highlighcp.
TSTagAttribute = { fg = cp.catppuccin3, style = "italic" }, -- Tags like html tag names. TSTagAttribute = { fg = cp.catppuccin3, style = "italic" }, -- Tags like html tag names.
TSTag = { fg = cp.catppuccin6 }, -- Tags like html tag names. TSTag = { fg = cp.catppuccin6 }, -- Tags like html tag names.
TSTagDelimiter = { fg = cp.catppuccin5 }, -- Tag delimiter like < > / TSTagDelimiter = { fg = cp.catppuccin19 }, -- Tag delimiter like < > /
TSText = { fg = cp.catppuccin10 }, -- For strings considerated text in a markup language. TSText = { fg = cp.catppuccin10 }, -- For strings considerated text in a markup language.
-- TSEmphasis = { }; -- For text to be represented with emphasis. -- TSEmphasis = { }; -- For text to be represented with emphasis.
-- TSUnderline = { }; -- For text to be represented with an underline. -- TSUnderline = { }; -- For text to be represented with an underline.
@ -72,17 +74,31 @@ function M.get(cp)
-- TSURI = { }; -- Any URI like a link or email. -- TSURI = { }; -- Any URI like a link or email.
-- --
-- Markdown tresitter parser support -- Markdown tresitter parser support
TSURI = { fg = cp.catppuccin2, style = "italic" }, -- urls TSURI = { fg = cp.catppuccin2, style = "italic,underline" }, -- urls, links and emails
TSLiteral = { fg = cp.catppuccin0 }, -- like inline code TSLiteral = { fg = cp.catppuccin0, style = "italic" }, -- used for inline code in markdown and for doc in python (""")
TSTextReference = { fg = cp.catppuccin7, style = "bold" }, -- references TSTextReference = { fg = cp.catppuccin7, style = "bold" }, -- references
TSTitle = { fg = cp.catppuccin9, style = "bold" }, -- titles like: # Example TSTitle = { fg = cp.catppuccin9, style = "bold" }, -- titles like: # Example
TSEmphasis = { fg = cp.catppuccin5, style = "bold" }, -- bold TSEmphasis = { fg = cp.catppuccin19, style = "italic" }, -- bold
TSStrong = { fg = cp.catppuccin4, style = "italic,bold" }, -- italic TSStrong = { fg = cp.catppuccin19, style = "bold" }, -- italic
TSStringEscape = { fg = cp.catppuccin4, style = cnf.styles.strings }, -- For escape characters within a string. TSStringEscape = { fg = cp.catppuccin4, style = cnf.styles.strings }, -- For escape characters within a string.
-- bash -- bash
bashTSFuncBuiltin = { fg = cp.catppuccin5, style = "italic" }, bashTSFuncBuiltin = { fg = cp.catppuccin5, style = "italic" },
bashTSParameter = { fg = cp.catppuccin8, style = "italic" }, bashTSParameter = { fg = cp.catppuccin8, style = "italic" },
-- lua
luaTSField = { fg = cp.catppuccin7 },
luaTSConstructor = { fg = cp.catppuccin18 }, -- For constructor calls and definitions: = { } in Lua, and Java constructors.
-- java
javaTSConstant = { fg = cp.catppuccin7 },
-- typescript
typescriptTSProperty = { fg = cp.catppuccin3, style = "italic" }, -- Same as TSField.
-- css
cssTSType = { fg = cp.catppuccin18 },
cssTSProperty = { fg = cp.catppuccin8, style = "italic" }, -- Same as TSField.
} }
end end

Loading…
Cancel
Save