Markdown Tables
by rust-works
Formats markdown tables with fixed-width columns for consistent alignment. Use when creating tables, reformatting existing tables, or ensuring table readability. Triggers on terms like "format table", "align table", "fix table", "table columns", "markdown table".
Skill Details
Repository Files
1 file in this skill directory
name: markdown-tables description: Formats markdown tables with fixed-width columns for consistent alignment. Use when creating tables, reformatting existing tables, or ensuring table readability. Triggers on terms like "format table", "align table", "fix table", "table columns", "markdown table".
Markdown Table Formatting Skill
Markdown tables MUST use fixed-width columns with space padding. This is mandatory for readability in plain text editors and diffs.
Correct vs Incorrect Format
Correct: Fixed-width columns with padding
| Size | succinctly | jq | Speedup |
|----------|---------------------|---------------------|------------|
| **10KB** | 2.2 ms (4.3 MiB/s) | 4.1 ms (2.3 MiB/s) | **1.86x** |
| **1MB** | 24.5 ms (33 MiB/s) | 44 ms (18 MiB/s) | **1.79x** |
Incorrect: Unpadded columns
| Size | succinctly | jq | Speedup |
|------|------------|-----|---------|
| **10KB** | 2.2 ms (4.3 MiB/s) | 4.1 ms (2.3 MiB/s) | **1.86x** |
Column Width Rules
- Measure the widest content in each column (including header)
- Pad all cells to match the widest cell in that column
- Use spaces for alignment, not tabs
- Align text left, numbers can be right-aligned for decimals
- Leave one space after
|and before|for readability in data rows - Separator row has NO spaces - format as
|------|---------|with dashes matching column widths - Empty cells use single dash "-" padded with spaces:
| - |
Formatting Algorithm
For each column:
1. width = max(len(cell) for cell in column)
2. width = max(width, 3) # Minimum 3 chars for separator
For each row:
1. For each cell:
- Pad content to column width
- Add single space before and after content
2. Join cells with '|' delimiter
3. Add '|' at start and end
Bold Text in Tables
When using bold (**text**) in table cells:
Spaces must be OUTSIDE the bold markers, not inside:
<!-- CORRECT: Spaces outside ** -->
| **59.6ms** |
<!-- WRONG: Spaces inside ** (markdown won't render bold) -->
| ** 59.6ms** |
This is important for right-aligned numeric columns where padding is added.
Alignment Markers
| Alignment | Separator Format | Example |
|---|---|---|
| Left | ` | ---------- |
| Right | ` | ---------: |
| Center | ` | :--------: |
Complex Tables
For tables with many columns or very long content:
| Name | Type | Size | Description |
|------------|--------|---------|--------------------------------------|
| ib | Vec | ~N bits | Interest bits marking structural |
| | | | characters and value starts |
| bp | Vec | ~N bits | Balanced parens encoding tree |
| | | | structure |
Consider:
- Splitting into multiple smaller tables
- Using a different format (bullet lists, nested structure)
- Rotating the table (rows become columns)
Why Fixed-Width Tables Matter
- Readability in Git Diffs: Variable-width tables are hard to review in diff views
- Text Editor Alignment: Most code reviews happen in monospace fonts
- Terminal Display: Tables render correctly in terminal viewers
- Professional Appearance: Shows attention to detail
- Easier Maintenance: Clear structure makes updates simpler
Instructions
When formatting tables:
- Read the table - Identify all rows and columns
- Calculate widths - Find max content width per column
- Format header - Apply consistent width with padding
- Format separator - Match column widths with dashes
- Format data rows - Apply same widths to all cells
- Preserve alignment - Keep
:markers for right/center alignment
Related Skills
Attack Tree Construction
Build comprehensive attack trees to visualize threat paths. Use when mapping attack scenarios, identifying defense gaps, or communicating security risks to stakeholders.
Grafana Dashboards
Create and manage production Grafana dashboards for real-time visualization of system and application metrics. Use when building monitoring dashboards, visualizing metrics, or creating operational observability interfaces.
Matplotlib
Foundational plotting library. Create line plots, scatter, bar, histograms, heatmaps, 3D, subplots, export PNG/PDF/SVG, for scientific visualization and publication figures.
Scientific Visualization
Create publication figures with matplotlib/seaborn/plotly. Multi-panel layouts, error bars, significance markers, colorblind-safe, export PDF/EPS/TIFF, for journal-ready scientific plots.
Seaborn
Statistical visualization. Scatter, box, violin, heatmaps, pair plots, regression, correlation matrices, KDE, faceted plots, for exploratory analysis and publication figures.
Shap
Model interpretability and explainability using SHAP (SHapley Additive exPlanations). Use this skill when explaining machine learning model predictions, computing feature importance, generating SHAP plots (waterfall, beeswarm, bar, scatter, force, heatmap), debugging models, analyzing model bias or fairness, comparing models, or implementing explainable AI. Works with tree-based models (XGBoost, LightGBM, Random Forest), deep learning (TensorFlow, PyTorch), linear models, and any black-box model
Pydeseq2
Differential gene expression analysis (Python DESeq2). Identify DE genes from bulk RNA-seq counts, Wald tests, FDR correction, volcano/MA plots, for RNA-seq analysis.
Query Writing
For writing and executing SQL queries - from simple single-table queries to complex multi-table JOINs and aggregations
Pydeseq2
Differential gene expression analysis (Python DESeq2). Identify DE genes from bulk RNA-seq counts, Wald tests, FDR correction, volcano/MA plots, for RNA-seq analysis.
Scientific Visualization
Meta-skill for publication-ready figures. Use when creating journal submission figures requiring multi-panel layouts, significance annotations, error bars, colorblind-safe palettes, and specific journal formatting (Nature, Science, Cell). Orchestrates matplotlib/seaborn/plotly with publication styles. For quick exploration use seaborn or plotly directly.
