diff --git a/README.md b/README.md index 162e4ef0..c7643319 100644 --- a/README.md +++ b/README.md @@ -53,16 +53,19 @@ This port of Catppuccin is special ## Installation [lazy.nvim](https://github.com/folke/lazy.nvim) + ```lua { "catppuccin/nvim", name = "catppuccin", priority = 1000 } ``` [mini.deps](https://github.com/echasnovski/mini.nvim/blob/main/readmes/mini-deps.md) + ```lua add({ source = "catppuccin/nvim", name = "catppuccin" }) ``` [packer.nvim](https://github.com/wbthomason/packer.nvim) + ```lua use { "catppuccin/nvim", as = "catppuccin" } ``` @@ -77,6 +80,8 @@ vim.pack.add({ src = "https://github.com/catppuccin/nvim", name = "catppuccin" } Support for vim is provided through the `vim` branch. +[vim-plug](https://github.com/junegunn/vim-plug) + ```vim Plug 'catppuccin/nvim', { 'branch': 'vim', 'as': 'catppuccin' } ``` @@ -307,14 +312,19 @@ Below is a list of supported plugins and their corresponding integration module. > If you'd like to see the full list of highlight groups modified by Catppuccin, see the [`lua/catppuccin/groups/integrations/`](https://github.com/catppuccin/nvim/tree/main/lua/catppuccin/groups/integrations) directory. + + - - + - + - + - + @@ -400,9 +420,12 @@ require("barbecue").setup { - - + - + - + - + @@ -479,9 +512,12 @@ require("blink.pairs").setup { - - + - + - + - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
Plugin Default
aerial.nvim + +aerial.nvim + + ```lua @@ -326,9 +336,12 @@ aerial = false -
alpha-nvim + +alpha-nvim + + ```lua @@ -356,9 +369,12 @@ artio = true -
barbar.nvim + +barbar.nvim + + ```lua @@ -370,9 +386,12 @@ barbar = false -
barbecue.nvim + +barbecue.nvim + + ```lua @@ -393,6 +412,7 @@ require("barbecue").setup { theme = "catppuccin-nvim", -- catppuccin-latte, catppuccin-frappe, catppuccin-macchiato, catppuccin-mocha } ``` +
beacon.nvim + +beacon.nvim + + ```lua @@ -414,9 +437,12 @@ beacon = false -
blink.cmp + +blink.cmp + + ```lua @@ -430,9 +456,12 @@ blink_cmp = { -
blink.indent + +blink.indent + + ```lua @@ -444,9 +473,12 @@ blink_indent = true -
blink.pairs + +blink.pairs + + ```lua @@ -472,6 +504,7 @@ require("blink.pairs").setup { }, } ``` +
bufferline.nvim + +bufferline.nvim + +
Special @@ -531,9 +567,12 @@ bufferline.setup { -
buffon.nvim + +buffon.nvim + + ```lua @@ -545,9 +584,12 @@ buffon = false -
coc.nvim + +coc.nvim + + ```lua @@ -561,6 +603,7 @@ Setting `enabled` to `true` enables this integration. ```lua coc_nvim = true, ``` + > [!Note] > coc.nvim by default link to native lsp highlight groups so `lsp_styles` options will also apply to coc @@ -595,9 +638,11 @@ lsp_styles = { -
colorful-winsep.nvim + + +colorful-winsep.nvim + @@ -607,14 +652,18 @@ colorful_winsep = { color = "red", } ``` +
dashboard-nvim + +dashboard-nvim + + ```lua @@ -626,9 +675,12 @@ dashboard = true -
diffview.nvim + +diffview.nvim + + ```lua @@ -640,9 +692,12 @@ diffview = false -
dropbar.nvim + +dropbar.nvim + + ```lua @@ -657,9 +712,12 @@ dropbar = { -
feline.nvim + +feline.nvim + + @@ -776,9 +834,12 @@ vim.api.nvim_create_autocmd("ColorScheme", { -
fern.vim + +fern.vim + + ```lua @@ -790,9 +851,12 @@ fern = false -
fidget.nvim + +fidget.nvim + + ```lua @@ -820,20 +884,27 @@ require("fidget").setup { -
flash.nvim + +flash.nvim + + ```lua flash = true ``` + -
fzf-lua + +fzf-lua + + ```lua @@ -845,20 +916,27 @@ fzf = true -
gitgraph.nvim + +gitgraph.nvim + + ```lua gitgraph = false ``` + -
gitsigns.nvim + +gitsigns.nvim + + ```lua @@ -873,59 +951,78 @@ gitsigns = { -- align with the transparent_background option by default transparent = false, } - ``` +``` -
grug-far.nvim + +grug-far.nvim + + ```lua grug_far = false ``` + -
harpoon + +harpoon + + ```lua harpoon = false ``` + -
headlines.nvim + +headlines.nvim + + ```lua headlines = false ``` + -
hop.nvim + +hop.nvim + + ```lua hop = false ``` + -
indent-blankline.nvim + +indent-blankline.nvim + + ```lua @@ -946,20 +1043,27 @@ indent_blankline = { -
leap.nvim + +leap.nvim + + ```lua leap = false ``` + -
lightline.vim + +lightline.vim + +
Special @@ -972,20 +1076,27 @@ let g:lightline = {'colorscheme': 'catppuccin'} -
lightspeed.nvim + +lightspeed.nvim + + ```lua lightspeed = false ``` + -
lir.nvim + +lir.nvim + + ```lua @@ -994,12 +1105,16 @@ lir = { git_status = false } ``` + -
lspsaga.nvim + +lspsaga.nvim + + ```lua @@ -1024,7 +1139,11 @@ require("lspsaga").setup {
lualine.nvim + +lualine.nvim + + ```lua @@ -1069,8 +1188,9 @@ lualine = {
Special To implement color overrides in the `integrations.lualine` spec: + ```lua --- In your catppuccin config (integrations): +-- In your catppuccin config (integrations): lualine = { -- lualine color overrides in the following hierarchy: Catppuccin Flavor -> Mode -> Lualine Section -- The Catppuccin flavor entry can be any Catpuccin flavor or "all" to apply to all flavors @@ -1079,15 +1199,15 @@ lualine = { ---@type CtpIntegrationLualineOverride return { -- Specifying a normal-mode status line override for section a's background and b's foreground to use lavender like the main Catppuccin theme - normal = { + normal = { a = { bg = colors.lavender, gui = "italic" }, b = { fg = colors.lavender }, } } end, -- A macchiato-specific override, which takes priority over 'all'. Also using the direct table syntax instead of function in case you do not rely on dynamic palette colors - macchiato = { - normal = { + macchiato = { + normal = { a = { bg = "#abcdef" }, } }, @@ -1095,7 +1215,7 @@ lualine = { -- And in your lualine config: require('lualine').setup { options = { - -- lualine will integrate with catppuccin by name or automatically via `vim.g.colors_name` by setting this to "auto" + -- lualine will integrate with catppuccin by name or automatically via `vim.g.colors_name` by setting this to "auto" theme = "catppuccin-nvim" -- ... the rest of your lualine config } @@ -1107,9 +1227,12 @@ require('lualine').setup { -
markview.nvim + +markview.nvim + + ```lua @@ -1121,9 +1244,12 @@ markview = false -
mason.nvim + +mason.nvim + + ```lua @@ -1135,9 +1261,12 @@ mason = false -
mini.nvim + +mini.nvim + + ```lua @@ -1152,9 +1281,12 @@ mini = { -
neo-tree.nvim + +neo-tree.nvim + + ```lua @@ -1166,9 +1298,12 @@ neotree = true -
neogit + +neogit + + ```lua @@ -1180,9 +1315,12 @@ neogit = true -
neotest + +neotest + + ```lua @@ -1194,9 +1332,12 @@ neotest = false -
noice.nvim + +noice.nvim + + ```lua @@ -1208,9 +1349,12 @@ noice = false -
notifier.nvim + +notifier.nvim + + ```lua @@ -1222,9 +1366,12 @@ notifier = false -
nvim-cmp + +nvim-cmp + + ```lua @@ -1236,9 +1383,12 @@ cmp = true -
copilot.vim + +copilot.vim + + ```lua @@ -1250,9 +1400,12 @@ copilot_vim = false, -
nvim-dap + +nvim-dap + + ```lua @@ -1276,9 +1429,12 @@ sign("DapLogPoint", { text = "◆", texthl = "DapLogPoint", linehl = "", numhl = -
nvim-dap-ui + +nvim-dap-ui + + ```lua @@ -1290,9 +1446,12 @@ dap_ui = true -
navic + +navic + + ```lua @@ -1302,6 +1461,7 @@ navic = { }, ``` +
Special ```lua @@ -1318,9 +1478,12 @@ require("nvim-navic").setup { -
nvim-notify + +nvim-notify + + ```lua @@ -1332,9 +1495,12 @@ notify = false -
nvim-surround + +nvim-surround + + ```lua @@ -1346,9 +1512,12 @@ nvim_surround = false -
nvim-tree.lua + +nvim-tree.lua + + ```lua @@ -1360,9 +1529,12 @@ nvimtree = true -
nvim-treesitter-context + +nvim-treesitter-context + + ```lua @@ -1374,9 +1546,12 @@ treesitter_context = true -
nvim-ts-rainbow2 + +nvim-ts-rainbow2 + + ```lua @@ -1388,9 +1563,12 @@ ts_rainbow2 = false -
nvim-ts-rainbow + +nvim-ts-rainbow + + ```lua @@ -1402,9 +1580,12 @@ ts_rainbow = false -
nvim-ufo + +nvim-ufo + + ```lua @@ -1416,20 +1597,27 @@ ufo = true -
nvim-window-picker + +nvim-window-picker + + ```lua window_picker = false ``` + -
octo.nvim + +octo.nvim + + ```lua @@ -1441,9 +1629,12 @@ octo = false -
overseer.nvim + +overseer.nvim + + ```lua @@ -1455,9 +1646,12 @@ overseer = false -
pounce.nvim + +pounce.nvim + + ```lua @@ -1469,9 +1663,12 @@ pounce = false -
rainbow-delimiters.nvim + +rainbow-delimiters.nvim + + ```lua @@ -1483,9 +1680,12 @@ rainbow_delimiters = true -
reactive.nvim + +reactive.nvim + +
Special @@ -1509,9 +1709,12 @@ To use another flavour just replace `mocha` with the one you want to use. -
render-markdown.nvim + +render-markdown.nvim + + ```lua @@ -1523,9 +1726,12 @@ render_markdown = true -
snacks.nvim + +snacks.nvim + + ```lua @@ -1540,9 +1746,12 @@ snacks = { -
symbols-outline.nvim + +symbols-outline.nvim + + > [!NOTE] @@ -1557,9 +1766,12 @@ symbols_outline = false -
telekasten.nvim + +telekasten.nvim + + ```lua @@ -1571,9 +1783,12 @@ telekasten = false -
telescope.nvim + +telescope.nvim + + ```lua @@ -1587,9 +1802,12 @@ telescope = { -
trouble.nvim + +trouble.nvim + + ```lua @@ -1601,9 +1819,12 @@ lsp_trouble = false -
vim-airline + +vim-airline + +
Special @@ -1619,9 +1840,12 @@ let g:airline_theme = 'catppuccin' -
vim-clap + +vim-clap + +
Special @@ -1639,9 +1863,12 @@ let g:clap_theme = 'catppuccin' -
vim-dadbod-ui + +vim-dadbod-ui + + ```lua @@ -1653,9 +1880,12 @@ dadbod_ui = false -
vim-gitgutter + +vim-gitgutter + + ```lua @@ -1667,9 +1897,12 @@ gitgutter = false -
vim-illuminate + +vim-illuminate + + ```lua @@ -1684,9 +1917,12 @@ illuminate = { -
vim-sandwich + +vim-sandwich + + ```lua @@ -1698,9 +1934,12 @@ sandwich = false -
vim-signify + +vim-signify + + ```lua @@ -1712,9 +1951,12 @@ signify = false -
vim-sneak + +vim-sneak + + ```lua @@ -1726,9 +1968,12 @@ vim_sneak = false -
vimwiki + +vimwiki + + ```lua @@ -1740,9 +1985,12 @@ vimwiki = false -
which-key.nvim + +which-key.nvim + + ```lua diff --git a/doc/catppuccin.txt b/doc/catppuccin.txt index d2e6cd2e..ad2f1b67 100644 --- a/doc/catppuccin.txt +++ b/doc/catppuccin.txt @@ -54,6 +54,8 @@ VIM SUPPORT ~ Support for vim is provided through the `vim` branch. +vim-plug + >vim Plug 'catppuccin/nvim', { 'branch': 'vim', 'as': 'catppuccin' } < @@ -301,19 +303,27 @@ module. by Catppuccin, see the `lua/catppuccin/groups/integrations/` directory. -PluginDefaultaerial.nvim>lua +aerial.nvim + +>lua aerial = false < -alpha-nvim>lua +alpha-nvim + +>lua alpha = true < -barbar.nvim>lua +barbar.nvim + +>lua barbar = false < -barbecue.nvim>lua +barbecue.nvim + +>lua barbecue = { dim_dirname = true, -- directory name is dimmed by default bold_basename = true, @@ -332,21 +342,29 @@ Use this to set it up: } < -beacon.nvim>lua +beacon.nvim + +>lua beacon = false < -blink.cmp>lua +blink.cmp + +>lua blink_cmp = { style = 'bordered', } < -blink.indent>lua +blink.indent + +>lua blink_indent = true < -blink.pairs>lua +blink.pairs + +>lua blink_pairs = true < @@ -370,7 +388,9 @@ Use this to set it up: } < -bufferline.nvimSpecial ~ +bufferline.nvim + +Special ~ Update your bufferline config to use the Catppuccin components: @@ -411,11 +431,15 @@ explanations: } < -buffon.nvim>lua +buffon.nvim + +>lua buffon = false < -coc.nvim>lua +coc.nvim + +>lua coc_nvim = false < @@ -456,29 +480,39 @@ directly at the thing (e.g. an error)). }, < -colorful-winsep.nvim>lua +colorful-winsep.nvim + +>lua colorful_winsep = { enabled = false, color = "red", } < -dashboard-nvim>lua +dashboard-nvim + +>lua dashboard = true < -diffview.nvim>lua +diffview.nvim + +>lua diffview = false < -dropbar.nvim>lua +dropbar.nvim + +>lua dropbar = { enabled = false, color_mode = false, -- enable color for kind's texts, not just kind's icons }, < -feline.nvimSpecial ~ +feline.nvim + +Special ~ Update your Feline config to use the Catppuccin components: @@ -586,11 +620,15 @@ Here are the defaults: }) < -fern.vim>lua +fern.vim + +>lua fern = false < -fidget.nvim>lua +fidget.nvim + +>lua fidget = false < @@ -609,19 +647,27 @@ Set `notification.window.winblend` to `0`: } < -flash.nvim>lua +flash.nvim + +>lua flash = true < -fzf-lua>lua +fzf-lua + +>lua fzf = true < -gitgraph.nvim>lua +gitgraph.nvim + +>lua gitgraph = false < -gitsigns.nvim>lua +gitsigns.nvim + +>lua gitsigns = true < @@ -635,23 +681,33 @@ Special ~ } < -grug-far.nvim>lua +grug-far.nvim + +>lua grug_far = false < -harpoon>lua +harpoon + +>lua harpoon = false < -headlines.nvim>lua +headlines.nvim + +>lua headlines = false < -hop.nvim>lua +hop.nvim + +>lua hop = false < -indent-blankline.nvim>lua +indent-blankline.nvim + +>lua indent_blankline = { enabled = true, scope_color = "", -- catppuccin color (eg. `lavender`) Default: text @@ -666,28 +722,38 @@ instructions here to set the latter up. -leap.nvim>lua +leap.nvim + +>lua leap = false < -lightline.vimSpecial ~ +lightline.vim + +Special ~ >vim let g:lightline = {'colorscheme': 'catppuccin'} < -lightspeed.nvim>lua +lightspeed.nvim + +>lua lightspeed = false < -lir.nvim>lua +lir.nvim + +>lua lir = { enabled = false, git_status = false } < -lspsaga.nvim>lua +lspsaga.nvim + +>lua lsp_saga = false < @@ -703,7 +769,9 @@ For custom Lsp Kind Icon and Color } < -lualine.nvim>lua +lualine.nvim + +>lua -- transparent_bg = opts.transparent_background and "NONE" or C.mantle lualine = { normal = { @@ -747,7 +815,7 @@ Special ~ To implement color overrides in the `integrations.lualine` spec: >lua - -- In your catppuccin config (integrations): + -- In your catppuccin config (integrations): lualine = { -- lualine color overrides in the following hierarchy: Catppuccin Flavor -> Mode -> Lualine Section -- The Catppuccin flavor entry can be any Catpuccin flavor or "all" to apply to all flavors @@ -756,15 +824,15 @@ To implement color overrides in the `integrations.lualine` spec: ---@type CtpIntegrationLualineOverride return { -- Specifying a normal-mode status line override for section a's background and b's foreground to use lavender like the main Catppuccin theme - normal = { + normal = { a = { bg = colors.lavender, gui = "italic" }, b = { fg = colors.lavender }, } } end, -- A macchiato-specific override, which takes priority over 'all'. Also using the direct table syntax instead of function in case you do not rely on dynamic palette colors - macchiato = { - normal = { + macchiato = { + normal = { a = { bg = "#abcdef" }, } }, @@ -772,57 +840,79 @@ To implement color overrides in the `integrations.lualine` spec: -- And in your lualine config: require('lualine').setup { options = { - -- lualine will integrate with catppuccin by name or automatically via `vim.g.colors_name` by setting this to "auto" + -- lualine will integrate with catppuccin by name or automatically via `vim.g.colors_name` by setting this to "auto" theme = "catppuccin-nvim" -- ... the rest of your lualine config } } < -markview.nvim>lua +markview.nvim + +>lua markview = false < -mason.nvim>lua +mason.nvim + +>lua mason = false < -mini.nvim>lua +mini.nvim + +>lua mini = { enabled = true, indentscope_color = "", -- catppuccin color (eg. `lavender`) Default: text }, < -neo-tree.nvim>lua +neo-tree.nvim + +>lua neotree = true < -neogit>lua +neogit + +>lua neogit = true < -neotest>lua +neotest + +>lua neotest = false < -noice.nvim>lua +noice.nvim + +>lua noice = false < -notifier.nvim>lua +notifier.nvim + +>lua notifier = false < -nvim-cmp>lua +nvim-cmp + +>lua cmp = true < -copilot.vim>lua +copilot.vim + +>lua copilot_vim = false, < -nvim-dap>lua +nvim-dap + +>lua dap = true < @@ -836,11 +926,15 @@ Special ~ sign("DapLogPoint", { text = "◆", texthl = "DapLogPoint", linehl = "", numhl = ""}) < -nvim-dap-ui>lua +nvim-dap-ui + +>lua dap_ui = true < -navic>lua +navic + +>lua navic = { enabled = false, custom_bg = "NONE", -- "lualine" will set background to mantle @@ -856,55 +950,81 @@ Special ~ } < -nvim-notify>lua +nvim-notify + +>lua notify = false < -nvim-surround>lua +nvim-surround + +>lua nvim_surround = false < -nvim-tree.lua>lua +nvim-tree.lua + +>lua nvimtree = true < -nvim-treesitter-context>lua +nvim-treesitter-context + +>lua treesitter_context = true < -nvim-ts-rainbow2>lua +nvim-ts-rainbow2 + +>lua ts_rainbow2 = false < -nvim-ts-rainbow>lua +nvim-ts-rainbow + +>lua ts_rainbow = false < -nvim-ufo>lua +nvim-ufo + +>lua ufo = true < -nvim-window-picker>lua +nvim-window-picker + +>lua window_picker = false < -octo.nvim>lua +octo.nvim + +>lua octo = false < -overseer.nvim>lua +overseer.nvim + +>lua overseer = false < -pounce.nvim>lua +pounce.nvim + +>lua pounce = false < -rainbow-delimiters.nvim>lua +rainbow-delimiters.nvim + +>lua rainbow_delimiters = true < -reactive.nvimSpecial ~ +reactive.nvim + +Special ~ There’re 2 available presets (`cursor` and `cursorline`) for every flavour. @@ -918,11 +1038,15 @@ Here is how you can use them. To use another flavour just replace `mocha` with the one you want to use. -render-markdown.nvim>lua +render-markdown.nvim + +>lua render_markdown = true < -snacks.nvim>lua +snacks.nvim + +>lua snacks = { enabled = false, indent_scope_color = "", -- catppuccin color (eg. `lavender`) Default: overlay2 @@ -930,33 +1054,45 @@ snacks.nvim>lua < symbols-outline.nvim + + [!NOTE] This plugin has been archived by the author, consider using outline.nvim >lua symbols_outline = false < -telekasten.nvim>lua +telekasten.nvim + +>lua telekasten = false < -telescope.nvim>lua +telescope.nvim + +>lua telescope = { enabled = true, } < -trouble.nvim>lua +trouble.nvim + +>lua lsp_trouble = false < -vim-airlineSpecial ~ +vim-airline + +Special ~ >vim let g:airline_theme = 'catppuccin' < -vim-clapSpecial ~ +vim-clap + +Special ~ Use this to set it up: @@ -964,38 +1100,54 @@ Use this to set it up: let g:clap_theme = 'catppuccin' < -vim-dadbod-ui>lua +vim-dadbod-ui + +>lua dadbod_ui = false < -vim-gitgutter>lua +vim-gitgutter + +>lua gitgutter = false < -vim-illuminate>lua +vim-illuminate + +>lua illuminate = { enabled = true, lsp = false } < -vim-sandwich>lua +vim-sandwich + +>lua sandwich = false < -vim-signify>lua +vim-signify + +>lua signify = false < -vim-sneak>lua +vim-sneak + +>lua vim_sneak = false < -vimwiki>lua +vimwiki + +>lua vimwiki = false < -which-key.nvim>lua +which-key.nvim + +>lua which_key = false <