mirror of
https://github.com/ivuorinen/dotfiles.git
synced 2026-03-19 22:06:25 +00:00
chore: linting
This commit is contained in:
121
.serena/memories/suggested_commands.md
Normal file
121
.serena/memories/suggested_commands.md
Normal file
@@ -0,0 +1,121 @@
|
||||
# Essential Commands for .dotfiles Development
|
||||
|
||||
## Installation & Setup
|
||||
|
||||
```bash
|
||||
# Initial setup - install linting tools and dependencies
|
||||
yarn install
|
||||
|
||||
# Install/update all dotfiles configurations
|
||||
./install
|
||||
|
||||
# Update git submodules (multiple approaches)
|
||||
git submodule update --remote --merge
|
||||
git submodule update --init --recursive --force
|
||||
bash add-submodules.sh
|
||||
```
|
||||
|
||||
## Development Commands
|
||||
|
||||
```bash
|
||||
# Linting (run all linters - ALWAYS fix all issues)
|
||||
yarn lint
|
||||
|
||||
# Individual linting commands
|
||||
yarn lint:markdown # Markdownlint
|
||||
yarn lint:prettier # Prettier check
|
||||
yarn lint:ec # EditorConfig checker
|
||||
|
||||
# Auto-fixing (use these BEFORE manual linting)
|
||||
yarn fix # Fix all format issues
|
||||
yarn fix:markdown # Fix markdown formatting
|
||||
yarn fix:prettier # Fix prettier formatting
|
||||
|
||||
# Testing
|
||||
yarn test # Run all Bats tests
|
||||
bash test-all.sh # Alternative test runner
|
||||
```
|
||||
|
||||
## Pre-commit Hooks (Comprehensive)
|
||||
|
||||
Current pre-commit configuration includes:
|
||||
|
||||
- **Security**: detect-aws-credentials, detect-private-key
|
||||
- **File integrity**: check-case-conflict, check-merge-conflict, check-symlinks
|
||||
- **Shell scripts**: shellcheck, shfmt (formatting)
|
||||
- **YAML/JSON**: yamllint, check-yaml, check-toml, pretty-format-json
|
||||
- **Markdown**: markdownlint with auto-fix
|
||||
- **Lua**: stylua formatting for Neovim configs
|
||||
- **Fish**: fish_syntax, fish_indent for shell configs
|
||||
- **GitHub Actions**: actionlint validation
|
||||
- **Renovate**: renovate-config-validator
|
||||
- **General**: trailing-whitespace, end-of-file-fixer, mixed-line-ending
|
||||
|
||||
```bash
|
||||
# Run pre-commit manually
|
||||
pre-commit run --all-files
|
||||
```
|
||||
|
||||
## Version Management
|
||||
|
||||
```bash
|
||||
# Check current versions
|
||||
node --version # Managed by nvm (.nvmrc: v20.18.1)
|
||||
go version # Managed by asdf (.go-version)
|
||||
python --version # Managed by asdf (.python-version)
|
||||
```
|
||||
|
||||
## System Utilities (Darwin-specific)
|
||||
|
||||
```bash
|
||||
# Modern CLI tools available
|
||||
ls # aliased to eza with icons and git info
|
||||
grep # aliased to grep --color
|
||||
fd pattern # modern find alternative
|
||||
rg pattern # ripgrep for text search
|
||||
bat file # modern cat with syntax highlighting
|
||||
```
|
||||
|
||||
## Project-specific Scripts (100+ available)
|
||||
|
||||
```bash
|
||||
# Dotfiles management
|
||||
bash local/bin/dfm install all
|
||||
|
||||
# Git utilities
|
||||
git-dirty # Check for dirty git repositories
|
||||
git-fsck-dirs # Run fsck on git directories
|
||||
git-update-dirs # Update multiple git directories
|
||||
|
||||
# Development utilities
|
||||
x-pr-comments <pr> # Analyze GitHub PR comments (NEW)
|
||||
x-set-php-aliases # Generate PHP version aliases
|
||||
x-env-list # List environment variables
|
||||
x-open-ports # Check open network ports
|
||||
|
||||
# Backup utilities
|
||||
x-backup-folder # Backup directories
|
||||
x-backup-mysql-with-prefix # MySQL backup with prefix
|
||||
```
|
||||
|
||||
## Configuration Management
|
||||
|
||||
```bash
|
||||
# Load shell configurations
|
||||
source config/shared.sh # Cross-shell compatibility functions
|
||||
source x-set-php-aliases # PHP version management
|
||||
|
||||
# Host-specific configurations
|
||||
# Automatically applied: hosts/{hostname}/
|
||||
```
|
||||
|
||||
## Quality Assurance (CRITICAL)
|
||||
|
||||
**All linting errors are BLOCKING and must be fixed:**
|
||||
|
||||
- EditorConfig violations are considered blocking errors
|
||||
- ShellCheck warnings must be addressed
|
||||
- Prettier formatting must be consistent
|
||||
- Markdownlint rules must be followed
|
||||
- NEVER use --no-verify with git operations
|
||||
- ALWAYS run autofixers before manual intervention
|
||||
Reference in New Issue
Block a user