Atelier allows you to update your current colorscheme while you are working, or you can create new colorschemes from scratch, and export them as a standalone plugin.
Atelier is based on my own experience of wishing it was easier to update a colorscheme on the fly while I am using it. Perhaps you find there is one color which is a little too bright, or one you wish was a different color altogether. This plugin allows you to open a window, tweak the color, and get back to work.
You can install atelier.nvim with your preferred package manager. Here is an example using lazy.nvim
{
"alistairjoelquinn/atelier.nvim",
lazy = false,
priority = 1000,
}You can then apply atelier, like you would apply any colorscheme in your Neovim setup.
When first loading the plugin, the dull-ish colorscheme is applied. This is a low-contrast, minimalistic colorscheme with a few subtle color highlights.
From here, if you wish to open the plugin window you can do so with :AtelierOpen, or <leader>at which is preconfigured. This will present you with the color editor for the dull-ish colorscheme.
There are 2 other views for this window. The help page, which can be accessed with ?.
And the library, which can be accessed with o (for "options").
We'll come back to these pages though.
You can navigate back to the color page for the currently selected colorscheme (dull-ish), with c.
From here you can navigate up and down between the hex codes with j & k, then simply change one, and press s to save. After changing a hex code, its background gives you immediate feedback as to what the color looks like, to make it easier to find a color which matches well with the rest of the palette. After saving you will see the colorscheme update immediately to reflect any changes. Below we have updated the hex code for functions and warnings. You can see that both the hex code and the functions in the background use the new color.
In order to simplify the creation and editing of colorschemes, the color highlights have been divided up into the 14 groups you can see in the window.
Now that we have managed to update the current colorscheme, let's try and create a new one. Navigate to the library by pressing o. In total atelier.nvim allows you to save up to 8 colorschemes.
From here you can select any one of the colorschemes by choosing its number. Currently all the other colorschemes are empty. The first time you choose an empty colorscheme you will be prompted to choose a name.
Let's call ours Muted Neon. Having entered the new name, you will be immediately navigated back to the color page, where the default dark colorscheme has been applied. The window title indicates that Muted Neon is currently selected.
Now we can repeat the process from before and update a hex code.
Again, after pressing s, for save, we will see the Neovim colorscheme update immediately.
Let's change a couple more.
We can return back to the library with o in order to change colorscheme again. Here we can press the number 1 to return back to dull-ish or we can pick another number to create another new colorscheme.
Once you've created a colorscheme you're happy with, you can export it as a standalone plugin. This allows you to share your colorscheme with others or use it with a plugin manager like any other Neovim colorscheme.
To export a colorscheme:
- Navigate to the library by pressing
o - Press
efollowed by the number of the colorscheme you want to export (e.g.,e2for the second colorscheme) - You'll be prompted to specify a location on your filesystem where the colorscheme will be exported
- The plugin will create a complete colorscheme plugin directory with all necessary files
The exported colorscheme will be ready to use and can be published directly to GitHub.
- The color page is an editable buffer, which makes it very easy to undo changes should you dislike an update you have applied. Simply undo any changes in the text and re-apply with
s.- This also means individual highlight groups can be deleted if desired.
- The plugin uses JSON to persist the hex codes for each colorscheme. One of the advantages of this is that the JSON file persisted at the root of the
nvimdirectory can be included in version control, should you wish to share your saved colorschemes across devices. The reverse also being true, if you wish to persist your colorschemes only on one machine, the file can be ignored from version control. - When troubleshooting, bear in mind that as last resort, if problems are arising, you can simply delete the json file from the root of your
nvimdirectory and start from scratch the next time you open the plugin (any colorschemes saved will be lost).