Este porto de catppccin é especial porque foi o primeiro e o que originou o próprio projeto. Diante disso, é importante reconhecer que tudo não passou a ser o que está agora do nada. Portanto, se você estiver interessado em saber mais sobre os estágios iniciais do tema, poderá encontrá -lo sob a tag v0.1
Asse seu próprio sabor! Aqui estão alguma configuração da nossa comunidade : (fonte de fundo)
preguiçoso.nvim
{ " catppuccin/nvim " , name = " catppuccin " , priority = 1000 }
Mini.Deps
add ({ source = " catppuccin/nvim " , name = " catppuccin " })
packer.nvim
use { " catppuccin/nvim " , as = " catppuccin " }
vim-plug
Plug ' catppuccin/nvim ' , { ' as ' : ' catppuccin ' }
colorscheme catppuccin " catppuccin-latte, catppuccin-frappe, catppuccin-macchiato, catppuccin-mocha
vim . cmd . colorscheme " catppuccin "
Não há necessidade de ligar para setup
se você não deseja alterar as opções e configurações padrão.
require ( " catppuccin " ). setup ({
flavour = " auto " , -- latte, frappe, macchiato, mocha
background = { -- :h background
light = " latte " ,
dark = " mocha " ,
},
transparent_background = false , -- disables setting the background color.
show_end_of_buffer = false , -- shows the '~' characters after the end of buffers
term_colors = false , -- sets terminal colors (e.g. `g:terminal_color_0`)
dim_inactive = {
enabled = false , -- dims the background color of inactive window
shade = " dark " ,
percentage = 0.15 , -- percentage of the shade to apply to the inactive window
},
no_italic = false , -- Force no italic
no_bold = false , -- Force no bold
no_underline = false , -- Force no underline
styles = { -- Handles the styles of general hi groups (see `:h highlight-args`):
comments = { " italic " }, -- Change the style of comments
conditionals = { " italic " },
loops = {},
functions = {},
keywords = {},
strings = {},
variables = {},
numbers = {},
booleans = {},
properties = {},
types = {},
operators = {},
-- miscs = {}, -- Uncomment to turn off hard-coded styles
},
color_overrides = {},
custom_highlights = {},
default_integrations = true ,
integrations = {
cmp = true ,
gitsigns = true ,
nvimtree = true ,
treesitter = true ,
notify = false ,
mini = {
enabled = true ,
indentscope_color = " " ,
},
-- For more plugins integrations please scroll down (https://github.com/catppuccin/nvim#integrations)
},
})
-- setup must be called before loading
vim . cmd . colorscheme " catppuccin "
local latte = require ( " catppuccin.palettes " ). get_palette " latte "
local frappe = require ( " catppuccin.palettes " ). get_palette " frappe "
local macchiato = require ( " catppuccin.palettes " ). get_palette " macchiato "
local mocha = require ( " catppuccin.palettes " ). get_palette " mocha "
Retorna uma tabela onde a chave é o nome da cor e o valor é o valor hexadecimal correspondente a cada sabor.
As cores podem ser substituídas usando color_overrides
na configuração, check -out #323 para inspirações:
require ( " catppuccin " ). setup {
color_overrides = {
all = {
text = " #ffffff " ,
},
latte = {
base = " #ff0000 " ,
mantle = " #242424 " ,
crust = " #474747 " ,
},
frappe = {},
macchiato = {},
mocha = {},
}
}
Observação
Para mais informações, consulte nosso guia de estilo
Grupos de destaque global podem ser substituídos no cenário, por exemplo:
require ( " catppuccin " ). setup {
custom_highlights = function ( colors )
return {
Comment = { fg = colors . flamingo },
TabLineSel = { bg = colors . pink },
CmpBorder = { fg = colors . surface2 },
Pmenu = { bg = colors . none },
}
end
}
Os grupos de destaque de sabor também podem ser substituídos no ambiente, por exemplo:
require ( " catppuccin " ). setup {
highlight_overrides = {
all = function ( colors )
return {
NvimTreeNormal = { fg = colors . none },
CmpBorder = { fg = " #3e4145 " },
}
end ,
latte = function ( latte )
return {
Normal = { fg = latte . base },
}
end ,
frappe = function ( frappe )
return {
[ " @comment " ] = { fg = frappe . surface2 , style = { " italic " } },
}
end ,
macchiato = function ( macchiato )
return {
LineNr = { fg = macchiato . overlay1 },
}
end ,
mocha = function ( mocha )
return {
Comment = { fg = mocha . flamingo },
}
end ,
},
}
O Catppuccin fornece suporte ao tema para outros plugins no ecossistema Neovim e na funcionalidade Neovim estendida por meio de integrações .
Para ativar/desativar uma integração, você só precisa configurá -lo como true/false, por exemplo:
require ( " catppuccin " ). setup ({
integrations = {
cmp = true ,
gitsigns = true ,
nvimtree = true ,
treesitter = true ,
notify = false ,
mini = {
enabled = true ,
indentscope_color = " " ,
},
}
})
Algumas integrações são ativadas por padrão, você pode controlar esse comportamento com a opção default_integrations
.
require ( " catppuccin " ). setup ({
default_integrations = false ,
})
Abaixo está uma lista de plugins suportados e seu módulo de integração correspondente.
Importante
Se você quiser saber quais grupos de destaque estão sendo afetados pela Catppccin, consulte este diretório: lua/catppuccin/groups/integrations/
.
Plugin | Padrão |
Aerial.nvim | aerial = false |
alfa-nvim | alpha = true |
Barbar.nvim | barbar = false |
churrasco.nvim | barbecue = {
dim_dirname = true , -- directory name is dimmed by default
bold_basename = true ,
dim_context = false ,
alt_background = false ,
}, EspecialUse isso para configurá -lo: require ( " barbecue " ). setup {
theme = " catppuccin " , -- catppuccin-latte, catppuccin-frappe, catppuccin-macchiato, catppuccin-mocha
} |
beacon.nvim | beacon = false |
BLINK.CMP | blink_cmp = false |
bufferline.nvim | EspecialAtualize sua configuração de bufferline para usar os componentes Catppuccin:
use " akinsho/bufferline.nvim " {
after = " catppuccin " ,
config = function ()
require ( " bufferline " ). setup {
highlights = require ( " catppuccin.groups.integrations.bufferline " ). get ()
}
end
} As configurações são auto-explicativas, consulte local mocha = require ( " catppuccin.palettes " ). get_palette " mocha "
bufferline . setup {
highlights = require ( " catppuccin.groups.integrations.bufferline " ). get {
styles = { " italic " , " bold " },
custom = {
all = {
fill = { bg = " #000000 " },
},
mocha = {
background = { fg = mocha . text },
},
latte = {
background = { fg = " #000000 " },
},
},
},
} |
coc.nvim | coc_nvim = false Especial A configuração coc_nvim = true ,
Nas tabelas internas, você pode definir o estilo para os diagnósticos, ambos native_lsp = {
enabled = true ,
virtual_text = {
errors = { " italic " },
hints = { " italic " },
warnings = { " italic " },
information = { " italic " },
ok = { " italic " },
},
underlines = {
errors = { " underline " },
hints = { " underline " },
warnings = { " underline " },
information = { " underline " },
ok = { " underline " },
},
inlay_hints = {
background = true ,
},
}, |
colorido winsep.nvim | colorful_winsep = {
enabled = false ,
color = " red " ,
} |
Painel-NVIM | dashboard = true |
DiffView.nvim | diffview = false |
dropbar.nvim | dropbar = {
enabled = false ,
color_mode = false , -- enable color for kind's texts, not just kind's icons
}, |
Feline.nvim | EspecialAtualize sua configuração felina para usar os componentes Catppuccin: local ctp_feline = require ( ' catppuccin.groups.integrations.feline ' )
ctp_feline . setup ()
require ( " feline " ). setup ({
components = ctp_feline . get (),
}) Observe que a chamada Aqui estão os padrões: local clrs = require ( " catppuccin.palettes " ). get_palette ()
local ctp_feline = require ( ' catppuccin.groups.integrations.feline ' )
local U = require " catppuccin.utils.colors "
ctp_feline . setup ({
assets = {
left_separator = " " ,
right_separator = " " ,
mode_icon = " " ,
dir = " ? " ,
file = " ? " ,
lsp = {
server = " ? " ,
error = " " ,
warning = " " ,
info = " " ,
hint = " " ,
},
git = {
branch = " " ,
added = " " ,
changed = " " ,
removed = " " ,
},
},
sett = {
text = U . vary_color ({ latte = latte . base }, clrs . surface0 ),
bkg = U . vary_color ({ latte = latte . crust }, clrs . surface0 ),
diffs = clrs . mauve ,
extras = clrs . overlay1 ,
curr_file = clrs . maroon ,
curr_dir = clrs . flamingo ,
show_modified = false -- show if the file has been modified
show_lazy_updates = false -- show the count of updatable plugins from lazy.nvim
-- need to set checker.enabled = true in lazy.nvim first
-- the icon is set in ui.icons.plugin in lazy.nvim
},
mode_colors = {
[ " n " ] = { " NORMAL " , clrs . lavender },
[ " no " ] = { " N-PENDING " , clrs . lavender },
[ " i " ] = { " INSERT " , clrs . green },
[ " ic " ] = { " INSERT " , clrs . green },
[ " t " ] = { " TERMINAL " , clrs . green },
[ " v " ] = { " VISUAL " , clrs . flamingo },
[ " V " ] = { " V-LINE " , clrs . flamingo },
[ " � " ] = { " V-BLOCK " , clrs . flamingo },
[ " R " ] = { " REPLACE " , clrs . maroon },
[ " Rv " ] = { " V-REPLACE " , clrs . maroon },
[ " s " ] = { " SELECT " , clrs . maroon },
[ " S " ] = { " S-LINE " , clrs . maroon },
[ " � " ] = { " S-BLOCK " , clrs . maroon },
[ " c " ] = { " COMMAND " , clrs . peach },
[ " cv " ] = { " COMMAND " , clrs . peach },
[ " ce " ] = { " COMMAND " , clrs . peach },
[ " r " ] = { " PROMPT " , clrs . teal },
[ " rm " ] = { " MORE " , clrs . teal },
[ " r? " ] = { " CONFIRM " , clrs . mauve },
[ " ! " ] = { " SHELL " , clrs . green },
},
view = {
lsp = {
progress = true , -- if true the status bar will display an lsp progress indicator
name = false , -- if true the status bar will display the lsp servers name, otherwise it will display the text "Lsp"
exclude_lsp_names = {}, -- lsp server names that should not be displayed when name is set to true
separator = " | " , -- the separator used when there are multiple lsp servers
},
}
})
vim . api . nvim_create_autocmd ( " ColorScheme " , {
pattern = " * " ,
callback = function ()
package.loaded [ " feline " ] = nil
package.loaded [ " catppuccin.groups.integrations.feline " ] = nil
require ( " feline " ). setup {
components = require ( " catppuccin.groups.integrations.feline " ). get (),
}
end ,
}) |
Fern.vim | fern = false |
fidget.nvim | fidget = false EspecialDefinir `notification.window.winblend` para` 0`: require ( " fidget " ). setup {
notification = {
window = {
winblend = 0 ,
},
}
-- ... the rest of your fidget config
} |
flash.nvim | flash = true |
fzf-lua | fzf = true |
gitsigns.nvim | gitsigns = true |
GRUG-FAR.NVIM | grug_far = false |
arpão | harpoon = false |
manchetes.nvim | headlines = false |
hop.nvim | hop = false |
Recado-Blankline.nvim | indent_blankline = {
enabled = true ,
scope_color = " " , -- catppuccin color (eg. `lavender`) Default: text
colored_indent_levels = false ,
},
Especial |
leap.nvim | leap = false |
Lightline.vim | Especial let g: lightline = { ' colorscheme ' : ' catppuccin ' } |
LightSpeed.nvim | lightspeed = false |
lir.nvim | lir = {
enabled = false ,
git_status = false
} |
lspsaga.nvim | lsp_saga = false EspecialPara ícone e cor do tipo LSP personalizado require ( " lspsaga " ). setup {
ui = {
kind = require ( " catppuccin.groups.integrations.lsp_saga " ). custom_kind (),
},
} |
Lualine.nvim | Especial require ( ' lualine ' ). setup {
options = {
theme = " catppuccin "
-- ... the rest of your lualine config
}
} |
Markdown | markdown = true |
Mason.nvim | mason = false |
mini.nvim | mini = {
enabled = true ,
indentscope_color = " " , -- catppuccin color (eg. `lavender`) Default: text
}, |
neo-tree.nvim | neotree = true |
Neogit | neogit = true |
neotest | neotest = false |
Noice.nvim | noice = false |
Normalnvim | NormalNvim = false |
notificador.nvim | notifier = false |
NVIM-CMP | cmp = true |
NVIM-DAP | dap = true Especial local sign = vim . fn . sign_define
sign ( " DapBreakpoint " , { text = " ● " , texthl = " DapBreakpoint " , linehl = " " , numhl = " " })
sign ( " DapBreakpointCondition " , { text = " ● " , texthl = " DapBreakpointCondition " , linehl = " " , numhl = " " })
sign ( " DapLogPoint " , { text = " ◆ " , texthl = " DapLogPoint " , linehl = " " , numhl = " " }) |
NVIM-DAP-UI | dap_ui = true |
nvim-lspconfig | native_lsp = {
enabled = true ,
virtual_text = {
errors = { " italic " },
hints = { " italic " },
warnings = { " italic " },
information = { " italic " },
ok = { " italic " },
},
underlines = {
errors = { " underline " },
hints = { " underline " },
warnings = { " underline " },
information = { " underline " },
ok = { " underline " },
},
inlay_hints = {
background = true ,
},
}, Especial Nas tabelas internas, você pode definir o estilo para os diagnósticos, ambos |
Navic | navic = {
enabled = false ,
custom_bg = " NONE " , -- "lualine" will set background to mantle
},
Especial -- You NEED to enable highlight in nvim-navic setting or it won't work
require ( " nvim-navic " ). setup {
highlight = true
} |
nvim-não | notify = false |
nvim-semântico-tokens | semantic_tokens = true |
NVIM-Surround | nvim_surround = false |
nvim-tree.lua | nvimtree = true |
NVIM-Treesitter-Contexto | treesitter_context = true |
NVIM-Treesitter | treesitter = true |
NVIM-TS-RAINBOW2 | ts_rainbow2 = false |
NVIM-TS-RAINBOW | ts_rainbow = false |
nvim-ufo | ufo = true |
NVIM-Window-Picker | window_picker = false |
Octo.nvim | octo = false |
supervisor.nvim | overseer = false |
Pounce.nvim | pounce = false |
arco-íris-delimiters.nvim | rainbow_delimiters = true |
reativo.nvim | Especial Existem 2 predefinições disponíveis ( Aqui está como você pode usá -los. require ( ' reactive ' ). setup {
load = { ' catppuccin-mocha-cursor ' , ' catppuccin-mocha-cursorline ' }
} Para usar outro sabor, substitua |
render-markdown.nvim | render_markdown = true |
símbolos-outline.nvim | Observação Este plug -in foi arquivado pelo autor, considere usar o contorno.nvim symbols_outline = false |
Telekasten.nvim | telekasten = false |
Telescope.nvim | telescope = {
enabled = true ,
-- style = "nvchad"
} |
Trouble.nvim | lsp_trouble = false |
vim-airline | Especial let g: airline_theme = ' catppuccin ' |
vim clap | EspecialUse isso para configurá -lo: let g: clap_theme = ' catppuccin ' |
Vim-Dadbod-Ui | dadbod_ui = false |
Vim-Gitgutter | gitgutter = false |
vim-iluminado | illuminate = {
enabled = true ,
lsp = false
} |
Vim-Sandwich | sandwich = false |
vim-sneak | vim_sneak = false |
Vimwiki | vimwiki = false |
qual key.nvim | which_key = false |
IMPORTANTE A partir de 10/10/2022, a catpppuccin deve ser capaz de recompilar automaticamente quando a tabela de configuração foi alterada.
O catpppuccin é um lixo de cores altamente personalizável e configurável. No entanto, isso ocorre à custa da complexidade e do tempo de execução. O Catppuccin pode pré -calcular os resultados da sua configuração e armazenar os resultados em um arquivo Lua compilado. Usamos esses valores precaches para definir seus destaques.
Por padrão, o catpppuccin grava os resultados compilados no diretório de cache do sistema. Você pode alterar o diretor de cache usando:
require ( " catppuccin " ). setup ({ -- Note: On windows we replace `/` with `` by default
compile_path = vim . fn . stdpath " cache " .. " /catppuccin "
})
Desative additional_vim_regex_highlighting
require ( " nvim-treesitter.configs " ). setup {
highlight = {
enable = true ,
additional_vim_regex_highlighting = false
},
}
Catpppuccin requer suporte de cor verdadeiro, também conhecido como terminais, suporta toda a gama de 16 milhões de cores
Lista completa dos terminais de suporte pode ser encontrada aqui: https://github.com/termstandard/colors#truecolor-support-in-astput-dvecises
Lista completa de terminais não suportados pode ser encontrada aqui: https://github.com/termstandard/colors#not-supporting-truecolor
Copyright © 2021-presente Catpppuccin Org