# About This port of Catppuccin is special because it was the first one and the one that originated the project itself. Given this, it's important to acknowledge that it all didn't come to be what it is now out of nowhere. So, if you are interested in knowing more about the initial stages of the theme, you can find it under the [`old-catppuccino`](https://github.com/catppuccin/nvim/tree/old-catppuccino) branch. # 🎁 Features - Handy CLI. - Extensible for many use cases. - Integrations with a bunch of plugins: - [Treesitter](https://github.com/tree-sitter/tree-sitter) - [Native LSP](https://github.com/neovim/nvim-lspconfig) - [Telescope](https://github.com/nvim-telescope/telescope.nvim) - [LSP Saga](https://github.com/glepnir/lspsaga.nvim) - [Trouble](https://github.com/folke/trouble.nvim) - [WhichKey](https://github.com/folke/which-key.nvim) - [Git signs](https://github.com/lewis6991/gitsigns.nvim) - [BarBar](https://github.com/romgrk/barbar.nvim) - [NvimTree](https://github.com/kyazdani42/nvim-tree.lua) - [Lualine](https://github.com/hoob3rt/lualine.nvim) - [Git Gutter](https://github.com/airblade/vim-gitgutter) - [Fern](https://github.com/lambdalisue/fern.vim) - [Lightline](https://github.com/itchyny/lightline.vim) - [Dashboard](https://github.com/glepnir/dashboard-nvim) - [Markdown](https://www.markdownguide.org/) - [Lightspeed](https://github.com/ggandor/lightspeed.nvim) - [Nvim-ts-Rainbow](https://github.com/p00f/nvim-ts-rainbow) - [Sneak](https://github.com/justinmk/vim-sneak) - [Hop](https://github.com/phaazon/hop.nvim) - [Neogit](https://github.com/TimUntersberger/neogit) - [Indent Blankline](https://github.com/lukas-reineke/indent-blankline.nvim) - [Nvim-cmp](https://github.com/hrsh7th/nvim-cmp) ## Usage You can use your favorite plugin manager for this. Here are some examples with the most popular ones: #### Vim-plug ```lua Plug 'catppuccin/nvim', {'as': 'catppuccin'} ``` #### Packer.nvim ```lua use({ "catppuccin/nvim", as = "catppuccin" }) ``` #### Vundle ```lua Plugin 'catppuccin/nvim', {'name': 'catppuccin'} ``` #### NeoBundle ```lua NeoBundleFetch 'catppuccin/nvim' ``` ### Setup There are already some sane defaults that you may like, however you can change them to match your taste. These are the defaults: ```lua transparent_background = false, term_colors = false, styles = { comments = "italic", functions = "italic", keywords = "italic", strings = "NONE", variables = "NONE", }, integrations = { treesitter = true, native_lsp = { enabled = true, virtual_text = { errors = "italic", hints = "italic", warnings = "italic", information = "italic", }, underlines = { errors = "underline", hints = "underline", warnings = "underline", information = "underline", }, }, lsp_trouble = false, lsp_saga = false, gitgutter = false, gitsigns = false, telescope = false, nvimtree = { enabled = false, show_root = false, }, which_key = false, indent_blankline = { enabled = false, colored_indent_levels = false, }, dashboard = false, neogit = false, vim_sneak = false, fern = false, barbar = false, bufferline = false, markdown = false, lightspeed = false, ts_rainbow = false, hop = false, cmp = false, }, ``` The way you setup the settings on your configuration varies on whether you are using vimL for this or Lua.
```lua
local catppuccin = require("catppuccin")
-- configure it
catppuccin.setup(
{
transparent_background = false,
term_colors = false,
styles = {
comments = "italic",
functions = "italic",
keywords = "italic",
strings = "NONE",
variables = "NONE",
},
integrations = {
treesitter = true,
native_lsp = {
enabled = true,
virtual_text = {
errors = "italic",
hints = "italic",
warnings = "italic",
information = "italic",
},
underlines = {
errors = "underline",
hints = "underline",
warnings = "underline",
information = "underline",
},
},
lsp_trouble = false,
lsp_saga = false,
gitgutter = false,
gitsigns = false,
telescope = false,
nvimtree = {
enabled = false,
show_root = false,
},
which_key = false,
indent_blankline = {
enabled = false,
colored_indent_levels = false,
},
dashboard = false,
neogit = false,
vim_sneak = false,
fern = false,
barbar = false,
bufferline = false,
markdown = false,
lightspeed = false,
ts_rainbow = false,
hop = false,
},
}
)
```
```lua
lua << EOF
local catppuccin = require("catppuccin")
-- configure it
catppuccin.setup(
{
transparent_background = false,
term_colors = false,
styles = {
comments = "italic",
functions = "italic",
keywords = "italic",
strings = "NONE",
variables = "NONE",
},
integrations = {
treesitter = true,
native_lsp = {
enabled = true,
virtual_text = {
errors = "italic",
hints = "italic",
warnings = "italic",
information = "italic",
},
underlines = {
errors = "underline",
hints = "underline",
warnings = "underline",
information = "underline",
},
},
lsp_trouble = false,
lsp_saga = false,
gitgutter = false,
gitsigns = false,
telescope = false,
nvimtree = {
enabled = false,
show_root = false,
},
which_key = false,
indent_blankline = {
enabled = false,
colored_indent_levels = false,
},
dashboard = false,
neogit = false,
vim_sneak = false,
fern = false,
barbar = false,
bufferline = false,
markdown = false,
lightspeed = false,
ts_rainbow = false,
hop = false,
},
}
)
EOF
```