Skip to content

Commit

Permalink
attempt to fix v2.0 and v2.5 routes
Browse files Browse the repository at this point in the history
  • Loading branch information
siduck committed Mar 9, 2024
1 parent 7777f73 commit f964908
Show file tree
Hide file tree
Showing 3 changed files with 200 additions and 1 deletion.
1 change: 0 additions & 1 deletion src/routes/news/test.mdx

This file was deleted.

115 changes: 115 additions & 0 deletions src/routes/news/v2-0.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
export const meta = {
title: "NvChad v2.0 released!",
desc:
"New UI features & using lazy.nvim. Improvements in startuptime, using base46 theme plugin as theme compiler",
cover: "v2.0.webp",
}

# Announcing NvChad v2.0

![v2.0 poster](/news/v2.0.webp)

## Changelog
```lua

## Added

- Lazy.nvim package manager
- NvDash (dashboard module)
- Multiple statusline themes : vscode, vscode_colored, minimal.
- Some cmp styles : flat_light, flat_dark, atom, atom_colored
- NvCheatsheet, a mappings cheatsheet with 2 themes (grid & simple)
- Ported 13 new themes to base46
- Made base46 generate compiled cache of highlight groups.
- Make some chadrc ui options auto-reloadable.
- Added types for chadrc options.


## Changed

- Made nvchad_ui options overridable from chadrc itself.
- Refactored our telescope extensions, made them more minimal.
- override_opts is renamed to opts (cuz lazy.nvim handles it now)
- M.plugins in chadrc now expects only a string


## Removed

- Alpha.nvim dashboard plugin
- Packer.nvim package manager
- Impatient.nvim as lazy.nvim handles cache part too.

```
<br/>


NvChad `v2.0`, a new release is now available, after all these months! From this release onwards, NvChad will take care about stability & exciting featuers at the same time.

Meaning that each release **(version like v3.0 v4.0 etc)** will be maintained in their own separate branches. New versions will release based on new features, bug fixes will still be done in older versions of NvChad.

So Whats new in this release?

## Using lazy.nvim

- Lazy.nvim is used as the package manager, replacing packer so obviously it has minor syntax changes.

## Cachifying base46

- Before base46 used to do some sort of computations like checking for user define highlight groups, highlight groups overrides, theme specific overrides i.e if user has changed colors in specific themes etc and then it would generate a final list of all highlight groups -> then load them.

- Now it base46 does all the computations beforehand (when its compile module runs) and then generates highlight group files in the form of bytecode which is faster to run.

- Now you can live-reload some parts of the UI table in chadrc.

<iframe src="https://www.youtube.com/embed/xytzreFq_us" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allow="fullscreen"></iframe>

<br/>

- 13 New themes have been added so now we in total have around 57 ~ themes! Check the [`theme page`](/themes) for more details

## NvDash

- Nvdash is NvChad's minimal dashboard module, It's very simple at this stage and will get more features in the future!
- <u>NvDash</u> is the command

![nvdash](/features/nvdash.webp)

## New cmp styles

- Now we have around 4-5 cmp styles, you can remove their icons, cmp_kind text directly from chadrc itself now.

![nvim-cmp](/features/cmp.webp)

## Statusline themes

- 3 new statusline themes have been added! (the first one is the default)

![NvChad statusline](/features/statuslines.webp)

## NvCheatsheet

- Auto-generated mappings cheatsheet module which has a similar layout to that of CSS's masonry layout.
- It will list both default & user keys and their descriptions.
- It has 2 themes (grid & simple)
- Command to toggle it : `NvCheatsheet` and mapping `leader + ch`

![nvcheatsheet](/features/nvcheatsheet.webp)

<iframe src="https://www.youtube.com/embed/IljDD4cjgKc" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allow='fullscreen;'></iframe>

## Chadrc completion

![chadrc types](/features/chadrc_types.webp)

- Big thanks to @Lucario387 for adding types to chadrc options. This will get you autocompletions for all NvChad options in the chadrc file!

## Example_config

- To have a custom config quickstart, you can check the [example_config](https://github.com/NvChad/example_config/). If you want something featureful, check its `v2.0_featureful` branch.


## Notice To v1.0 users

As there's lazy.nvim being used in this release so this might be a breaking change for you, but dont worry, you can still use old NvChad version and slowly migrate to v2.0.

- Migration changes are mentioned in this [section](/news/v2.0_migration).
85 changes: 85 additions & 0 deletions src/routes/news/v2-5.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
export const meta = {
title: "NvChad v2.5 released!",
desc: 'Minor NvChad release with standard neovim config structure, new 7 themes, UI Term module replacing nvterm.',
cover: "v2.5.webp",
}

# NvChad v2.5 Released!

![v2.0 poster](/news/v2.5.webp)

## Changelog

## Added

- Starter template for NvChad which lets users use NvChad as a plugin, thus not needing custom config stuff.

- 7 New themes for base46:
flexoki,
jabuti,
poimandres,
mito-laser
nano-light,
flexoki-light,
chadracula-evondev

- Minimal terminal module which replaces nvterm which lets you created any amount of toggleable terminals , change bg color / highlights of each window etc.

- term table ( config ) in ui table of chadrc.
- Integrations list of base46 so you can exclude/include integrations supported by base46.
- Default lspconfig now exports on_init function which you can include in your custom lspconfig
- All nvchad modules will start with `nvchad` , example : require('nvchad.options')

## Changed

- List of all defaults will be in lua/nvconfig instead of core/default_config
- Overriding modules for tabufline/statusline, its a lot easier now.
- Extended_integrations syntax for base46
- Mappings no longer use nvchad's custom syntax. It uses nvim's `vim.keymap.set`

## Removed
- Custom config structure handling.
- Nvterm plugin
- NvChad updater
- chadrc's cmp options: border_color , selected_item_bg
- tabufline, show_numbers


## Migration

- git clone [starter repo](https://github.com/NvChad/starter) as your nvim config.
- Go through the new [module structure of nvchad](https://github.com/NvChad/NvChad/tree/v2.5) which will be used as your plugin.
- You can use this [shell script](https://gist.github.com/siduck/048bed2e7570569e6b327b35d1715404) ( unix only ) to automate your migration.

<br/>
- For Manual Migration, do the following:
- Move All of your custom dir files to the `lua` dir of starter config
- Remove all instances of `custom.` word in all your files, example
`require('custom.options')` -> `require('options')`
- Check the new [mappings syntax](https://nvchad.com/docs/config/mappings) and the [pinned issue](https://github.com/NvChad/NvChad/issues/2688) for some recipes.
- replace `require "plugin.configs.lspconfig"` with `require('nvchad.configs.lspconfig').defaults()`
- Check the term module [docs](http://nvchad.com/docs/config/nvchad_ui#term)
- Check statusline/tabufline overriding syntax [docs](http://nvchad.com/docs/config/nvchad_ui#statusline___tabufline)

## New Themes

### Jabuti
![jabuti theme](/themes/jabuti.webp)

### flexoki
![flexoki theme](/themes/flexoki.webp)

### poimandres
![poimandres theme](/themes/poimandres.webp)

### mito-laser
![mito-laser theme](/themes/mito-laser.webp)

### chadracula-evondev
![chadracula-evondev theme](/themes/chadracula-evondev.webp)

### nano-light
![nano-light theme](/themes/nano-light.webp)

### flexoki-light
![flexoki-light theme](/themes/flexoki-light.webp)

0 comments on commit f964908

Please sign in to comment.