Run Git operations — commits, branches, merges, rebases, conflict resolution, and recovery — with safety rules enforced.
Documents
Code Formatter
Try itCode formatting best practices and quick references for Python, JavaScript, JSON, Markdown, and common languages with Prettier, Black, ESLint, and other form...
What it does
Quick references for code formatting tools and style best practices.
The skill document
Code Formatter & Style Guide
Quick references for code formatting tools and style best practices.
🐍 Python Formatting
Black (Opinionated Formatter)
# Install
pip install black
# Format file
black file.py
# Format directory
black src/
# Check without modifying
black --check file.py
# Configuration (pyproject.toml)
[tool.black]
line-length = 88
target-version = ['py310']
isort (Import Sorting)
# Install
pip install isort
# Sort imports
isort file.py
isort src/
# Black-compatible config
[tool.isort]
profile = "black"
flake8 (Linting)
# Install
pip install flake8
# Lint
flake8 file.py
flake8 src/
# Config (setup.cfg)
[flake8]
max-line-length = 88
extend-ignore = E203, W503
ruff (Fast Linter & Formatter)
# Install
pip install ruff
# Lint
ruff check file.py
# Fix automatically
ruff check --fix file.py
# Format
ruff format file.py
💛 JavaScript/TypeScript Formatting
Prettier
# Install
npm install -D prettier
# Format
npx prettier --write file.js
npx prettier --write src/
# Check
npx prettier --check file.js
# Config (.prettierrc)
{
"semi": true,
"singleQuote": true,
"tabWidth": 2,
"trailingComma": "es5",
"printWidth": 80
}
# Ignore (.prettierignore)
node_modules/
build/
dist/
ESLint
# Install
npm install -D eslint
# Initialize
npx eslint --init
# Lint
npx eslint file.js
npx eslint src/
# Fix
npx eslint --fix file.js
# Config (.eslintrc.js)
module.exports = {
extends: ['eslint:recommended'],
parserOptions: { ecmaVersion: 2022 },
rules: {
'no-unused-vars': 'warn',
'no-console': 'warn'
}
}
Format on Save (VS Code)
// settings.json
{
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnSave": true,
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[python]": {
"editor.defaultFormatter": "ms-python.black-formatter"
}
}
📋 JSON Formatting
jq
# Pretty print JSON
jq '.' file.json
# Compact (one line)
jq -c '.' file.json
# Sort keys
jq -S '.' file.json
Prettier for JSON
npx prettier --write file.json
npx prettier --write *.json
Python json.tool
python3 -m json.tool file.json
python3 -m json.tool file.json --sort-keys
📝 Markdown Formatting
Prettier
npx prettier --write README.md
npx prettier --write docs/
markdownlint
# Install
npm install -D markdownlint-cli
# Lint
npx markdownlint README.md
npx markdownlint docs/
# Fix
npx markdownlint --fix README.md
Common Rules
- Line length: 80-120 chars
- ATX headers:
# HeadernotHeader ===== - Consistent list indentation (2 spaces)
- One blank line between sections
- Trailing whitespace removal
🔧 EditorConfig (Cross-Editor)
Create .editorconfig in project root:
root = true
[*]
charset = utf-8
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
indent_style = space
indent_size = 2
[*.py]
indent_size = 4
[*.{json,yml,yaml}]
indent_size = 2
[*.md]
trim_trailing_whitespace = false
🚀 Quick Format Commands
| Language | Tool | Command |
|---|---|---|
| Python | black | black file.py |
| Python | ruff | ruff format file.py |
| JS/TS | Prettier | npx prettier --write file.js |
| JSON | jq | jq '.' file.json |
| Markdown | Prettier | npx prettier --write README.md |
| Shell | shfmt | shfmt -w script.sh |
| Go | gofmt | gofmt -w file.go |
| Rust | rustfmt | rustfmt file.rs |
💡 Best Practices
- Commit config files:
.prettierrc,.eslintrc,pyproject.toml,.editorconfig - Format on save: Set up your editor to auto-format
- Pre-commit hooks: Use
pre-commitorhuskyto enforce - Consistency: Pick one style and stick to it
- CI checks: Run formatters/lint in CI pipeline
Pre-commit Setup (.pre-commit-config.yaml)
repos:
- repo: https://github.com/psf/black
rev: 23.12.1
hooks:
- id: black
- repo: https://github.com/pycqa/isort
rev: 5.13.2
hooks:
- id: isort
- repo: https://github.com/pre-commit/mirrors-prettier
rev: v4.0.0-alpha.8
hooks:
- id: prettier
Related skills
Read and write Excel workbooks, worksheets, ranges, tables, and charts in OneDrive through Microsoft Graph with managed OAuth.
Query and manage Linear issues, projects, teams, cycles, labels, and comments through a managed OAuth GraphQL endpoint.
pptx
OfficialCreate, edit, and read .pptx and .potx files using bundled scripts and a pptxgenjs generator.
openai-docs
OfficialGet authoritative, current answers from OpenAI developer docs with citations.
doc-coauthoring
OfficialGuide users through a three-stage workflow for drafting documentation, proposals, specs, and decision docs.
More from terrycarter1985
Browse all skillsGrade English homework for Chinese primary students in grades 3–6 with consistent, age-appropriate feedback.
Analyze stocks and cryptocurrencies using Yahoo Finance data. Supports portfolio management (create, add, remove assets), crypto analysis (Top 20 by market c...
Control whole-house music scenes combining Spotify playback with Airfoil speaker routing. Quick presets for morning, party, chill modes.
Generate reusable, policy-aligned customer service replies for e-commerce aftersales scenarios. Use when support staff need fast, compliant Chinese responses...
Control whole-house music scenes combining Spotify playback with Airfoil speaker routing. Quick presets for morning, party, chill modes.
Comprehensive developer cheatsheets and quick references for Git, Docker, Kubernetes, jq, curl, and common Linux commands. Use when needing quick lookups for...