Этот порт Catppuccin особенный, потому что он был первым, и тот, который создал сам проект. Учитывая это, важно признать, что все это не стало тем, что сейчас из ниоткуда. Итак, если вы заинтересованы в том, чтобы узнать больше о начальных этапах темы, вы можете найти ее под тегом v0.1
Выпекать свой собственный вкус! Вот некоторая конфигурация из нашего сообщества : (Источник фонового происхождения)
Lazy.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 "
Не нужно вызовать setup
если вы не хотите менять параметры и настройки по умолчанию.
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 "
Возвращает таблицу, где ключ - это название цвета, а значение - его шестигранное значение, соответствующее каждому вкусу.
Цвета могут быть перезаписаны, используя color_overrides
в настройке, Checkout #323 для вдохновения:
require ( " catppuccin " ). setup {
color_overrides = {
all = {
text = " #ffffff " ,
},
latte = {
base = " #ff0000 " ,
mantle = " #242424 " ,
crust = " #474747 " ,
},
frappe = {},
macchiato = {},
mocha = {},
}
}
Примечание
Для получения дополнительной информации ознакомьтесь с нашим стилем
Глобальные группы выделения могут быть перезаписаны в настройке, например:
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
}
Например, в обстановке также могут быть перезаписаны группы.
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 обеспечивает поддержку темы для других плагинов в экосистеме Neovim и расширенных функциональности Neovim с помощью интеграции .
Чтобы включить/отключить интеграцию, вам просто нужно установить ее на True/false, например:
require ( " catppuccin " ). setup ({
integrations = {
cmp = true ,
gitsigns = true ,
nvimtree = true ,
treesitter = true ,
notify = false ,
mini = {
enabled = true ,
indentscope_color = " " ,
},
}
})
Некоторые интеграции включены по умолчанию, вы можете управлять этим поведением с помощью опции default_integrations
.
require ( " catppuccin " ). setup ({
default_integrations = false ,
})
Ниже приведен список поддерживаемых плагинов и их соответствующий модуль интеграции.
Важный
Если вы хотите узнать, какие группы подчеркивают группы, влияют на Catppuccin, ознакомьтесь с этим каталогом: lua/catppuccin/groups/integrations/
.
Плагин | По умолчанию |
Aerial.nvim | aerial = false |
альфа-нвим | alpha = true |
Barbar.nvim | barbar = false |
барбекю | barbecue = {
dim_dirname = true , -- directory name is dimmed by default
bold_basename = true ,
dim_context = false ,
alt_background = false ,
}, ОсобенныйИспользуйте это, чтобы настроить: require ( " barbecue " ). setup {
theme = " catppuccin " , -- catppuccin-latte, catppuccin-frappe, catppuccin-macchiato, catppuccin-mocha
} |
Beacon.nvim | beacon = false |
Blink.cmp | blink_cmp = false |
Bufferline.nvim | ОсобенныйОбновите свою конфигурацию буфере, чтобы использовать компоненты Catppuccin:
use " akinsho/bufferline.nvim " {
after = " catppuccin " ,
config = function ()
require ( " bufferline " ). setup {
highlights = require ( " catppuccin.groups.integrations.bufferline " ). get ()
}
end
} Конфигурации являются самоочемительными, см. См 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 Особенный Настройка coc_nvim = true ,
В таблицах Inners вы можете установить стиль для диагностики, как 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 ,
},
}, |
Красочный выигрыш. Нвим | colorful_winsep = {
enabled = false ,
color = " red " ,
} |
Приборная панель-нвим | 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 | ОсобенныйОбновите свою конфигурацию кошачьих, чтобы использовать компоненты Catppuccin: local ctp_feline = require ( ' catppuccin.groups.integrations.feline ' )
ctp_feline . setup ()
require ( " feline " ). setup ({
components = ctp_feline . get (),
}) Обратите внимание, что вызов Вот значения по умолчанию: 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 = false |
Fidget.nvim | fidget = false ОсобенныйУстановите `natification.window.winblend` на` 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 |
гарпун | harpoon = false |
Заголовки. NVIM | headlines = false |
Hop.nvim | hop = false |
adpent-blankline.nvim | indent_blankline = {
enabled = true ,
scope_color = " " , -- catppuccin color (eg. `lavender`) Default: text
colored_indent_levels = false ,
},
Особенный |
прыжок | leap = false |
Lightline.vim | Особенный let g: lightline = { ' colorscheme ' : ' catppuccin ' } |
LightSpeed.nvim | lightspeed = false |
lir.nvim | lir = {
enabled = false ,
git_status = false
} |
lspsaga.nvim | lsp_saga = false ОсобенныйДля индивидуальной значки LSP Kind и цвета require ( " lspsaga " ). setup {
ui = {
kind = require ( " catppuccin.groups.integrations.lsp_saga " ). custom_kind (),
},
} |
Lualine.nvim | Особенный require ( ' lualine ' ). setup {
options = {
theme = " catppuccin "
-- ... the rest of your lualine config
}
} |
отметка | markdown = true |
Мейсон. Нвим | mason = false |
mini.nvim | mini = {
enabled = true ,
indentscope_color = " " , -- catppuccin color (eg. `lavender`) Default: text
}, |
Neo-tree.nvim | neotree = true |
Неогит | neogit = true |
неотест | neotest = false |
noice.nvim | noice = false |
Нормальный | NormalNvim = false |
уведомлятель.nvim | notifier = false |
NVIM-CMP | cmp = true |
NVIM-DAP | dap = true Особенный 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 ,
},
}, Особенный В таблицах Inners вы можете установить стиль для диагностики, как |
навигация | navic = {
enabled = false ,
custom_bg = " NONE " , -- "lualine" will set background to mantle
},
Особенный -- 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-SEMANCY-TOKENS | semantic_tokens = true |
NVIM-Surround | nvim_surround = false |
nvim-tree.lua | nvimtree = true |
nvim-treesitter-context | 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 |
надзиратель.nvim | overseer = false |
Pounce.nvim | pounce = false |
Rainbow-delimiters.nvim | rainbow_delimiters = true |
Reactive.nvim | Особенный Доступны 2 предварительных набора ( Вот как вы можете их использовать. require ( ' reactive ' ). setup {
load = { ' catppuccin-mocha-cursor ' , ' catppuccin-mocha-cursorline ' }
} Чтобы использовать другой аромат, просто замените |
render-markdown.nvim | render_markdown = true |
Symbols-outline.nvim | Примечание Этот плагин был заархивирован автором, рассмотрите возможность использования intline.nvim symbols_outline = false |
Telekasten.nvim | telekasten = false |
Телескоп.nvim | telescope = {
enabled = true ,
-- style = "nvchad"
} |
press.nvim | lsp_trouble = false |
Vim-Airline | Особенный let g: airline_theme = ' catppuccin ' |
Vim-Clop | ОсобенныйИспользуйте это, чтобы настроить: let g: clap_theme = ' catppuccin ' |
Vim-Dadbod-Ui | dadbod_ui = false |
Вим-Гитгуттер | gitgutter = false |
Вим-Иллуминат | illuminate = {
enabled = true ,
lsp = false
} |
Вим-Сэндвич | sandwich = false |
Vim-Sneak | vim_sneak = false |
Вимвики | vimwiki = false |
Какой ключ.nvim | which_key = false |
Важно с 7/10/2022, Catppuccin должен быть в состоянии автоматически перекомпилировать при изменении таблицы настроек.
Catppuccin - это очень настраиваемая и настраиваемая Colorscheme. Однако это происходит за счет сложности и времени исполнения. Catppuccin может предварительно вычислять результаты вашей конфигурации и сохранить результаты в скомпилированном файле Lua. Мы используем эти предварительные значения, чтобы установить его основные моменты.
По умолчанию Catppuccin записывает скомпилированные результаты в каталоге кэша системы. Вы можете изменить режиме Cache, используя:
require ( " catppuccin " ). setup ({ -- Note: On windows we replace `/` with `` by default
compile_path = vim . fn . stdpath " cache " .. " /catppuccin "
})
Пожалуйста, отключите additional_vim_regex_highlighting
require ( " nvim-treesitter.configs " ). setup {
highlight = {
enable = true ,
additional_vim_regex_highlighting = false
},
}
Catppuccin требует истинного цвета поддержки, известной как терминалы, поддерживают весь диапазон 16 миллионов цветов
Полный список терминалов поддержки можно найти здесь: https://github.com/mermstandard/colors#truecolor-support-in-put-devices
Полный список неподдерживаемых терминалов можно найти здесь: https://github.com/mermstandard/colors#not-supporting-truecolor
Copyright © 2021-Present Catppuccin org