- 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
179 lines
4.4 KiB
Markdown
179 lines
4.4 KiB
Markdown
# Contributing to CargDev-Cyberpunk.nvim
|
|
|
|
Thank you for your interest in contributing to CargDev-Cyberpunk.nvim! This document provides guidelines for contributing to the project.
|
|
|
|
## Getting Started
|
|
|
|
### Prerequisites
|
|
|
|
- Neovim 0.8.0 or higher
|
|
- Git
|
|
- A GitHub account
|
|
|
|
### Fork and Clone
|
|
|
|
1. Fork the repository on GitHub
|
|
2. Clone your fork locally:
|
|
```bash
|
|
git clone https://github.com/YOUR_USERNAME/cargdev-cyberpunk.nvim.git
|
|
cd cargdev-cyberpunk.nvim
|
|
```
|
|
|
|
## Development Setup
|
|
|
|
### Local Development
|
|
|
|
1. Create a new branch for your changes:
|
|
```bash
|
|
git checkout -b feature/your-feature-name
|
|
```
|
|
|
|
2. Make your changes to the codebase
|
|
|
|
3. Test your changes:
|
|
```bash
|
|
# Test the color scheme in Neovim
|
|
nvim --headless -c "lua dofile('test/test_colors.lua')"
|
|
```
|
|
|
|
### Testing Your Changes
|
|
|
|
1. Open Neovim with your local version:
|
|
```bash
|
|
nvim -u NONE -c "set runtimepath+=/path/to/your/cargdev-cyberpunk.nvim"
|
|
```
|
|
|
|
2. Test with different file types:
|
|
```bash
|
|
nvim examples/sample.ts
|
|
```
|
|
|
|
3. Verify the colors are applied correctly
|
|
|
|
## Making Changes
|
|
|
|
### Code Style Guidelines
|
|
|
|
- Follow Lua best practices
|
|
- Use consistent indentation (2 spaces)
|
|
- Keep functions focused and concise
|
|
- Add comments for complex logic
|
|
- Maintain the cyberpunk aesthetic in color choices
|
|
|
|
### File Structure
|
|
|
|
```
|
|
lua/cargdev-cyberpunk/
|
|
├── init.lua # Main plugin entry point
|
|
├── colors.lua # Color palette definitions
|
|
├── config.lua # Configuration management
|
|
├── highlights.lua # Highlight group definitions
|
|
└── plugin.lua # Plugin metadata
|
|
|
|
colors/
|
|
└── cargdev-cyberpunk.lua # Colorscheme command file
|
|
|
|
test/
|
|
└── test_colors.lua # Test suite
|
|
```
|
|
|
|
### Color Guidelines
|
|
|
|
When adding new colors or modifying existing ones:
|
|
|
|
- Maintain high contrast for readability
|
|
- Use vibrant, neon colors that fit the cyberpunk theme
|
|
- Test colors in different lighting conditions
|
|
- Ensure accessibility standards are met
|
|
|
|
## Submitting Your Changes
|
|
|
|
### Commit Guidelines
|
|
|
|
1. Make atomic commits (one logical change per commit)
|
|
2. Use clear, descriptive commit messages
|
|
3. Follow conventional commit format:
|
|
```
|
|
type(scope): description
|
|
|
|
[optional body]
|
|
[optional footer]
|
|
```
|
|
|
|
Examples:
|
|
- `feat(colors): add new neon purple for decorators`
|
|
- `fix(highlights): correct function highlighting in TypeScript`
|
|
- `docs(readme): update installation instructions`
|
|
|
|
### Pull Request Process
|
|
|
|
1. **One Change Per PR**: Each pull request should contain only one logical change or feature
|
|
|
|
2. **Update Documentation**: If your change affects user experience, update the README.md
|
|
|
|
3. **Test Thoroughly**: Ensure your changes work across different file types and Neovim configurations
|
|
|
|
4. **Create Pull Request**:
|
|
- Go to your fork on GitHub
|
|
- Click "New Pull Request"
|
|
- Select the `master` branch as the base
|
|
- Provide a clear title and description
|
|
|
|
### Pull Request Template
|
|
|
|
```markdown
|
|
## Description
|
|
Brief description of the changes made.
|
|
|
|
## Type of Change
|
|
- [ ] Bug fix
|
|
- [ ] New feature
|
|
- [ ] Documentation update
|
|
- [ ] Code refactoring
|
|
|
|
## Testing
|
|
- [ ] Tested with TypeScript files
|
|
- [ ] Tested with other file types
|
|
- [ ] Verified colors are applied correctly
|
|
- [ ] No breaking changes introduced
|
|
|
|
## Screenshots (if applicable)
|
|
Add screenshots showing the visual changes.
|
|
|
|
## Checklist
|
|
- [ ] My code follows the project's style guidelines
|
|
- [ ] I have tested my changes thoroughly
|
|
- [ ] I have updated documentation if needed
|
|
- [ ] My changes generate no new warnings
|
|
- [ ] I have added tests if applicable
|
|
```
|
|
|
|
## Review Process
|
|
|
|
1. **Code Review**: All PRs will be reviewed by maintainers
|
|
2. **Testing**: Changes will be tested in different environments
|
|
3. **Feedback**: You may be asked to make adjustments
|
|
4. **Merge**: Once approved, your PR will be merged to master
|
|
|
|
## Getting Help
|
|
|
|
If you need help or have questions:
|
|
|
|
1. Check existing issues and discussions
|
|
2. Create a new issue with detailed information
|
|
3. Join the project discussions
|
|
|
|
## Code of Conduct
|
|
|
|
- Be respectful and inclusive
|
|
- Focus on constructive feedback
|
|
- Help others learn and grow
|
|
- Follow the project's coding standards
|
|
|
|
## License
|
|
|
|
By contributing to this project, you agree that your contributions will be licensed under the MIT License.
|
|
|
|
---
|
|
|
|
Thank you for contributing to CargDev-Cyberpunk.nvim! Your help makes the project better for everyone. |