feat(v1.1.0): major refactor with modular architecture and plugin support

- Add config.lua for comprehensive configuration options
  (transparent, italic_comments, bold_keywords, bold_functions, bold_types, terminal_colors)
- Add highlights.lua with 500+ highlight groups for 30+ plugins
  (Telescope, NvimTree, Neo-tree, GitSigns, nvim-cmp, Lazy.nvim, Mason, etc.)
- Add colors/ directory for :colorscheme command support
- Add terminal colors (16-color palette for :terminal)
- Add test suite (test/test_colors.lua)
- Add development tools (selene.toml, stylua.toml, vim.toml)
- Add CHANGELOG.md following Keep a Changelog format

- Fix colors.lua not being used by init.lua
- Fix setup(opts) not applying configuration options
- Fix README referencing non-existent files

- Update documentation with accurate file structure and API docs
This commit is contained in:
Carlos Gutierrez
2026-01-10 22:13:00 -05:00
parent eb684d4ff4
commit 555718c010
15 changed files with 1626 additions and 334 deletions

View File

@@ -5,7 +5,8 @@ This guide will help you install and configure the CargDev-Cyberpunk.nvim color
## Prerequisites
- Neovim 0.8.0 or higher
- A plugin manager (Packer, Lazy.nvim, vim-plug, etc.)
- A plugin manager (Lazy.nvim, Packer, vim-plug, etc.)
- `termguicolors` support (automatically enabled by the plugin)
## Quick Installation
@@ -14,22 +15,24 @@ This guide will help you install and configure the CargDev-Cyberpunk.nvim color
Add this to your Neovim configuration:
```lua
-- In your init.lua or plugins.lua
-- In your plugins.lua or init.lua
{
'cargdev-cyberpunk.nvim',
config = true,
priority = 1000, -- Load early
"yourusername/cargdev-cyberpunk.nvim",
lazy = false, -- Load during startup
priority = 1000, -- Load before other plugins
config = function()
require("cargdev-cyberpunk").setup()
end,
}
```
### Using Packer
```lua
-- In your init.lua or plugins.lua
use {
'cargdev-cyberpunk.nvim',
"yourusername/cargdev-cyberpunk.nvim",
config = function()
require('cargdev-cyberpunk').setup()
require("cargdev-cyberpunk").setup()
end
}
```
@@ -38,39 +41,115 @@ use {
```vim
" In your .vimrc or init.vim
Plug 'cargdev-cyberpunk.nvim'
Plug 'yourusername/cargdev-cyberpunk.nvim'
```
Then in your Neovim configuration:
Then in your Neovim Lua configuration:
```lua
require('cargdev-cyberpunk').setup()
require("cargdev-cyberpunk").setup()
```
## Manual Installation
1. Clone the repository:
```bash
git clone https://github.com/yourusername/cargdev-cyberpunk.nvim ~/.local/share/nvim/site/pack/plugins/start/cargdev-cyberpunk.nvim
git clone https://github.com/yourusername/cargdev-cyberpunk.nvim \
~/.local/share/nvim/site/pack/plugins/start/cargdev-cyberpunk.nvim
```
2. Add to your Neovim configuration:
```lua
require('cargdev-cyberpunk').setup()
require("cargdev-cyberpunk").setup()
```
## Using Colorscheme Command
After installation, you can also load the colorscheme with the standard command:
```vim
:colorscheme cargdev-cyberpunk
```
This is useful if you want to switch colorschemes dynamically.
## Configuration
### Basic Configuration
```lua
require('cargdev-cyberpunk').setup()
require("cargdev-cyberpunk").setup()
```
### Advanced Configuration
```lua
require('cargdev-cyberpunk').setup({
-- Configuration options will be added in future versions
require("cargdev-cyberpunk").setup({
-- Enable transparent background (useful for terminal transparency)
transparent = false,
-- Typography styles
italic_comments = true, -- Italicize comments
bold_keywords = true, -- Bold keywords (if, for, function, etc.)
bold_functions = true, -- Bold function names
bold_types = true, -- Bold type names
-- Terminal integration
terminal_colors = true, -- Set colors for :terminal
-- Custom color overrides
colors = {
bg = {
primary = "#000000", -- Pure black background
},
syntax = {
keyword = "#FF00FF", -- Custom keyword color
},
},
})
```
### Transparent Background
If you use a terminal with transparency, enable the transparent option:
```lua
require("cargdev-cyberpunk").setup({
transparent = true,
})
```
### Customizing Colors
Override any color in the palette:
```lua
require("cargdev-cyberpunk").setup({
colors = {
-- Background colors
bg = {
primary = "#1a1a2e",
secondary = "#16213e",
},
-- Foreground colors
fg = {
primary = "#ffffff",
accent = "#00ffff",
},
-- Syntax colors
syntax = {
keyword = "#ff6b6b",
["function"] = "#4ecdc4",
string = "#ffe66d",
},
-- Diagnostic colors
special = {
error = "#ff4757",
warning = "#ffa502",
},
},
})
```
@@ -79,45 +158,85 @@ require('cargdev-cyberpunk').setup({
To verify the installation:
1. Open Neovim
2. Open a TypeScript file (like the example in `examples/sample.ts`)
3. You should see vibrant colors applied to different syntax elements
2. Check that colors are applied: `:hi Normal`
3. Open a TypeScript file (like `examples/sample.ts`)
4. Verify syntax highlighting is working
### Test the Installation
### Run Tests
You can run the test file to verify everything is working:
You can run the test suite to verify everything works:
```lua
-- In Neovim, run:
```bash
nvim --headless -c "lua dofile('test/test_colors.lua')"
```
Or from within Neovim:
```vim
:lua dofile('test/test_colors.lua')
```
## Troubleshooting
### Colors not appearing
### Colors not appearing correctly
1. Make sure you have Treesitter installed and configured
2. Ensure LSP is properly set up for TypeScript
3. Check that the plugin is loaded correctly
1. Ensure `termguicolors` is supported by your terminal
2. Check that the plugin is loaded: `:lua print(vim.inspect(package.loaded['cargdev-cyberpunk']))`
3. Try reloading: `:lua require('cargdev-cyberpunk').load()`
### Plugin not found
1. Verify the plugin is installed in the correct directory
2. Check your plugin manager configuration
2. Run `:checkhealth` to diagnose issues
3. Restart Neovim after installation
### Performance issues
### Treesitter highlights not working
1. The color scheme is optimized for performance
2. If you experience issues, try disabling other color schemes
3. Ensure you're using Neovim 0.8.0 or higher
1. Ensure Treesitter is installed: `:TSInstallInfo`
2. Install parsers: `:TSInstall typescript tsx`
3. Restart Neovim
### LSP semantic tokens not working
1. Ensure your LSP supports semantic tokens
2. Check LSP status: `:LspInfo`
3. Verify LSP is attached: `:lua print(vim.inspect(vim.lsp.get_active_clients()))`
### Terminal colors look wrong
1. Verify `terminal_colors` is enabled in config
2. Open a new terminal buffer: `:terminal`
3. Check terminal colors are set: `:lua print(vim.g.terminal_color_0)`
## Updating
### With Lazy.nvim
```vim
:Lazy update cargdev-cyberpunk.nvim
```
### With Packer
```vim
:PackerUpdate cargdev-cyberpunk.nvim
```
### Manual
```bash
cd ~/.local/share/nvim/site/pack/plugins/start/cargdev-cyberpunk.nvim
git pull
```
## Uninstallation
To remove the color scheme:
1. Remove the plugin from your plugin manager
2. Remove any configuration lines from your Neovim config
3. Restart Neovim
1. Remove the plugin from your plugin manager configuration
2. Remove any setup calls from your Neovim config
3. Run your plugin manager's clean/sync command
4. Restart Neovim
## Support
@@ -125,11 +244,11 @@ If you encounter issues:
1. Check the [Issues](https://github.com/yourusername/cargdev-cyberpunk.nvim/issues) page
2. Create a new issue with:
- Your Neovim version
- Your Neovim version (`:version`)
- Plugin manager and configuration
- Error messages
- Steps to reproduce
## Contributing
See the main README.md for contribution guidelines.
See [CONTRIBUTING.md](CONTRIBUTING.md) for contribution guidelines.