Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Announcement and breaking changes #260

Closed
nullchilly opened this issue Aug 27, 2022 · 11 comments
Closed

Announcement and breaking changes #260

nullchilly opened this issue Aug 27, 2022 · 11 comments

Comments

@nullchilly
Copy link
Contributor

nullchilly commented Aug 27, 2022

If you want to know ahead of time about any changes or breakage, please subscribe to this issue.

Simply tag the previous plugin's version if you don't have time to update. For example:

use {
  "catppuccin/nvim",
  as = "catppuccin",
  tag = "v0.2"
}
@catppuccin catppuccin locked and limited conversation to collaborators Aug 27, 2022
@nullchilly
Copy link
Contributor Author

nullchilly commented Aug 27, 2022

12/7/2022 Invalid key: bold,italic after #176
Long overdue neovim 0.7 api update

The way highlights are handled changed, most notably the style property of the highlights. Instead of using commas to separate them (e.g. style = "italic,bold,underline"), please use a Lua table:

styles = {
	comments = { "italic", "bold" },
	conditionals = { "italic" },
	loops = {},
},

Please refer to catppuccin/nvim#configuration for more info

@nullchilly
Copy link
Contributor Author

nullchilly commented Aug 27, 2022

14/7/2022 c41a627: the code-base was refactored and now:

  • palettes: holds the palettes and the interface to fetch them
  • utils: general utilities for handling data and color properties
  • groups: holds the highlights groups and integrations
  • lib: main code. Holds the compiler, highlighter, mapper, ui and hsluv

So please don't forget to change your calls to any of Catppuccin's modules!

Fetch colors with api: require("catppuccin.api.colors").get_colors() to require("catppuccin.palettes").get_palette()
Overwriting colors vim.g.catppuccin_override_colors to require("catppuccin").setup { custom_highlights = {} }

@nullchilly
Copy link
Contributor Author

nullchilly commented Aug 27, 2022

17/7/2022 Users are now able to pre-compile their configs to improve startup speed. Check it out!

  • Startuptime stat: 0.7ms
012.793  000.096  000.096: require('catppuccin')
012.835  000.035  000.035: require('catppuccin.config')
013.356  000.005  000.005: require('vim.F')
014.246  000.669  000.669: sourcing /home/nullchilly/.local/share/nvim/site/pack/packer/start/theme/colors/catppuccin.lua

@nullchilly
Copy link
Contributor Author

nullchilly commented Aug 27, 2022

27/8/2022 5726b64 bufferline.nvim colorscheme guidelines are now respected

Which means integration now move to special integration (integrations.bufferline option is deprecated):
Update your bufferline config to use the Catppuccin components:

bufferline.setup { highlights = require("catppuccin.groups.integrations.bufferline").get() }

See special-integration#bufferline.nvim for more configuration options

@nullchilly nullchilly pinned this issue Aug 27, 2022
@nullchilly
Copy link
Contributor Author

nullchilly commented Aug 27, 2022

27/8/2022 We are looking for new maintainers!

Refer to #261 for more info

@nullchilly
Copy link
Contributor Author

nullchilly commented Aug 27, 2022

27/8/2022 Breaking change in the neovim repo: neovim/neovim#14090 (comment)

As a result we split nvim-treesitter integration to support 0.7 and 0.8 separately catppuccin/groups/integrations/treesitter.lua

Please update to the latest version of neovim nightly before opening an issue

@nullchilly
Copy link
Contributor Author

nullchilly commented Sep 2, 2022

2/9/2022 a064543 We only enable treesitter, lspconfig, cmp, telescope, gitsigns, nvimtree, indent blankline, dashboard, markdown, notify by default

The plan is to enable compile by default in the future but this will do startuptime justice for now.

@nullchilly
Copy link
Contributor Author

nullchilly commented Oct 7, 2022

7/10/2022 Compile is now enabled by default (With more optimization), configuration moved to compile_path

require("catppuccin").setup({
	compile_path = vim.fn.stdpath "cache" .. "/catppuccin"
})

autocmd and post install/update hook is no longer required as catppuccin can automatically detect when user's setup table changed or if the plugin is updated

@nullchilly
Copy link
Contributor Author

nullchilly commented Oct 22, 2022

22/10/2022 You can now set flavour inside the setup table and Match :set background=light/dark with :Catppuccin background.light/dark. Keep in mind that this change should be fully backward compatible

require("catppuccin").setup({
	flavour = "mocha", -- latte, frappe, macchiato, mocha
	background = { -- :h background
		light = "latte",
		dark = "mocha",
	},
})

@nullchilly
Copy link
Contributor Author

23/10/2022 You can now pass a function to custom_highlights instead of a table

require("catppuccin").setup {
  custom_highlights = function(colors)
    return {
      Comment = { fg = colors.flamingo },
      ["@constant.builtin"] = { fg = colors.peach, style = {} },
      ["@comment"] = { fg = colors.surface2, style = { "italic" }
    }
  end
}

This will remove the need of calling get_palette, see https://github.com/catppuccin/nvim/#overwriting-highlight-groups for more info.

@nullchilly
Copy link
Contributor Author

@nullchilly nullchilly unpinned this issue Feb 10, 2023
@catppuccin catppuccin unlocked this conversation Feb 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant