Ce port de Catppuccin est spécial car c'était le premier et celui qui a créé le projet lui-même. Compte tenu de cela, il est important de reconnaître que tout n'est pas devenu ce qu'il est maintenant de nulle part. Donc, si vous êtes intéressé à en savoir plus sur les étapes initiales du thème, vous pouvez la trouver sous la balise V0.1
Cuire votre propre saveur! Voici une configuration de notre communauté : (source de fond)
paresseux.nvim
{ " catppuccin/nvim " , name = " catppuccin " , priority = 1000 }
mini.
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 "
Il n'est pas nécessaire de setup
des appels si vous ne souhaitez pas modifier les options et les paramètres par défaut.
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 "
Renvoie un tableau où la clé est le nom de la couleur et la valeur est sa valeur hexadécimale correspondant à chaque saveur.
Les couleurs peuvent être écrasées à l'aide color_overrides
dans le paramètre, vérifiez # 323 pour les inspirations:
require ( " catppuccin " ). setup {
color_overrides = {
all = {
text = " #ffffff " ,
},
latte = {
base = " #ff0000 " ,
mantle = " #242424 " ,
crust = " #474747 " ,
},
frappe = {},
macchiato = {},
mocha = {},
}
}
Note
Pour plus d'informations, consultez notre guide de style
Les groupes de surbrillance globale peuvent être écrasés dans le cadre, par exemple:
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
}
Par exemple, les groupes de pillages peuvent également être écrasés dans le cadre, par exemple:
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 ,
},
}
CatPpuccin fournit une prise en charge du thème pour d'autres plugins dans l'écosystème Neovim et une fonctionnalité Neovim étendue à travers des intégrations .
Pour activer / désactiver une intégration, vous avez juste besoin de le définir sur True / False, par exemple:
require ( " catppuccin " ). setup ({
integrations = {
cmp = true ,
gitsigns = true ,
nvimtree = true ,
treesitter = true ,
notify = false ,
mini = {
enabled = true ,
indentscope_color = " " ,
},
}
})
Certaines intégrations sont activées par défaut, vous pouvez contrôler ce comportement avec l'option default_integrations
.
require ( " catppuccin " ). setup ({
default_integrations = false ,
})
Vous trouverez ci-dessous une liste de plugins pris en charge et de leur module d'intégration correspondant.
Important
Si vous souhaitez savoir quels groupes de surbrillance sont affectés par CatPpuccine, consultez ce répertoire: lua/catppuccin/groups/integrations/
.
Plugin | Défaut |
aérien.NVIM | aerial = false |
alpha-nvim | alpha = true |
Barbar.nvim | barbar = false |
barbecue.nvim | barbecue = {
dim_dirname = true , -- directory name is dimmed by default
bold_basename = true ,
dim_context = false ,
alt_background = false ,
}, SpécialUtilisez-le pour le configurer: require ( " barbecue " ). setup {
theme = " catppuccin " , -- catppuccin-latte, catppuccin-frappe, catppuccin-macchiato, catppuccin-mocha
} |
beacon.nvim | beacon = false |
blink.cmp | blink_cmp = false |
bufferline.nvim | SpécialMettez à jour votre configuration de tampon pour utiliser les composants CatPpuccine:
use " akinsho/bufferline.nvim " {
after = " catppuccin " ,
config = function ()
require ( " bufferline " ). setup {
highlights = require ( " catppuccin.groups.integrations.bufferline " ). get ()
}
end
} Les configurations sont explicites, voir 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 Spécial Le paramètre coc_nvim = true ,
Dans les tables Inners, vous pouvez définir le style des diagnostics, à la fois 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 ,
},
}, |
coloré-winsep.nvim | colorful_winsep = {
enabled = false ,
color = " red " ,
} |
Tableau de bord-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 | SpécialMettez à jour votre configuration féline pour utiliser les composants CatPpuccine: local ctp_feline = require ( ' catppuccin.groups.integrations.feline ' )
ctp_feline . setup ()
require ( " feline " ). setup ({
components = ctp_feline . get (),
}) Remarquez que l'appel Voici les valeurs par défaut: 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 SpécialDéfinissez `notification.window.winblend` à` 0`: require ( " fidget " ). setup {
notification = {
window = {
winblend = 0 ,
},
}
-- ... the rest of your fidget config
} |
flash.nvim | flash = true |
FZF-lua | fzf = true |
Gitsigs.nvim | gitsigns = true |
grog-far.nvim | grug_far = false |
harpon | harpoon = false |
Titres.NVIM | headlines = false |
hop.nvim | hop = false |
indent-blankline.nvim | indent_blankline = {
enabled = true ,
scope_color = " " , -- catppuccin color (eg. `lavender`) Default: text
colored_indent_levels = false ,
},
Spécial |
leap.nvim | leap = false |
lightline.vim | Spécial let g: lightline = { ' colorscheme ' : ' catppuccin ' } |
LightSpeed.nvim | lightspeed = false |
lir.nvim | lir = {
enabled = false ,
git_status = false
} |
lspsaga.nvim | lsp_saga = false SpécialPour l'icône et la couleur du type LSP personnalisé require ( " lspsaga " ). setup {
ui = {
kind = require ( " catppuccin.groups.integrations.lsp_saga " ). custom_kind (),
},
} |
Lumine.nvim | Spécial require ( ' lualine ' ). setup {
options = {
theme = " catppuccin "
-- ... the rest of your lualine config
}
} |
réduction | markdown = true |
Mason.nvim | mason = false |
mini.nvim | mini = {
enabled = true ,
indentscope_color = " " , -- catppuccin color (eg. `lavender`) Default: text
}, |
néo-arche.nvim | neotree = true |
néogit | neogit = true |
néotest | neotest = false |
noice.nvim | noice = false |
Normalnvim | NormalNvim = false |
notifier.nvim | notifier = false |
nvim-cmp | cmp = true |
nvim-dap | dap = true Spécial 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 ,
},
}, Spécial Dans les tables Inners, vous pouvez définir le style des diagnostics, à la fois |
navic | navic = {
enabled = false ,
custom_bg = " NONE " , -- "lualine" will set background to mantle
},
Spécial -- You NEED to enable highlight in nvim-navic setting or it won't work
require ( " nvim-navic " ). setup {
highlight = true
} |
nvim-notify | notify = false |
nvim-sémantique-tokens | semantic_tokens = true |
entrave au nvim | nvim_surround = false |
nvimree.lua | nvimtree = true |
nvim-treetter-context | treesitter_context = true |
NVIM-Treeitter | 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 |
surveillant.nvim | overseer = false |
pounce.nvim | pounce = false |
arc-en-ciel-délimiter.nvim | rainbow_delimiters = true |
réactif.nvim | Spécial Il y a 2 préréglages disponibles ( Voici comment vous pouvez les utiliser. require ( ' reactive ' ). setup {
load = { ' catppuccin-mocha-cursor ' , ' catppuccin-mocha-cursorline ' }
} Pour utiliser une autre saveur, remplacez simplement |
render-markdown.nvim | render_markdown = true |
symboles-outline.nvim | Note Ce plugin a été archivé par l'auteur, envisagez d'utiliser Outline.nvim symbols_outline = false |
telekasten.nvim | telekasten = false |
télescope.nvim | telescope = {
enabled = true ,
-- style = "nvchad"
} |
Trouble.nvim | lsp_trouble = false |
vim-air | Spécial let g: airline_theme = ' catppuccin ' |
vim-clap | SpécialUtilisez-le pour le configurer: let g: clap_theme = ' catppuccin ' |
vim-dadbod-ui | dadbod_ui = false |
vim-gitgutter | gitgutter = false |
vim-illuminé | illuminate = {
enabled = true ,
lsp = false
} |
vim-sandwich | sandwich = false |
vim-newak | vim_sneak = false |
vimwiki | vimwiki = false |
Who-key.nvim | which_key = false |
Depuis le 7/10/2022, CATPPUCCIN devrait être en mesure de se recompiler automatiquement lorsque la table de configuration a changé.
CatPpuccine est un coloriage hautement personnalisable et configurable. Cela se fait cependant au prix de la complexité et du temps d'exécution. CatPpuccin peut préalable les résultats de votre configuration et stocker les résultats dans un fichier LUA compilé. Nous utilisons ces valeurs pré-muettes pour définir ses points forts.
Par défaut, CatPpuccin écrit les résultats compilés dans le répertoire de cache du système. Vous pouvez modifier le Dir de cache en utilisant:
require ( " catppuccin " ). setup ({ -- Note: On windows we replace `/` with `` by default
compile_path = vim . fn . stdpath " cache " .. " /catppuccin "
})
Veuillez désactiver additional_vim_regex_highlighting
require ( " nvim-treesitter.configs " ). setup {
highlight = {
enable = true ,
additional_vim_regex_highlighting = false
},
}
Catppuccin nécessite un véritable support de couleurs, alias les terminaux soutiennent toute la gamme de 16 millions de couleurs
La liste complète des terminaux d'assistance peut être trouvée ici: https://github.com/termstandard/colors#truecolor-support-in-output-devices
La liste complète des terminaux non pris en charge peut être trouvée ici: https://github.com/termstandard/colors#not-supporting-truecolor
Copyright © 2021-présent Catppuccin Org