A Python tool to tidy and format CSS files
Project description
CSS Tidy
A Python tool to tidy and format CSS files.
Features
- CSS Formatting: Automatically format CSS code to make it more readable
- Syntax Validation: Check CSS syntax errors
- Batch Processing: Support batch processing of multiple CSS files
- Custom Options: Customize indentation, line breaks, and other formatting options
- Selector Grouping: Automatically group related CSS selectors by prefix
- Command Line Tool: Provide simple and easy-to-use command line interface
Installation
pip install css-tidy
Usage
css-tidy [css-file-path] [options]
Command Line Usage
# Format a single CSS file
css-tidy style.css
# Format and output to a new file
css-tidy input.css -o output.css
# Batch process all CSS files in a directory
css-tidy *.css
# Use custom indentation
css-tidy style.css --indent 4
# Minify CSS
css-tidy style.css --minify
# Group selectors
css-tidy style.css --group
Command Line Options
| Option | Description |
|---|---|
| [Output Control] | |
-o, --output TEXT |
Output file path |
-m, --minify |
Minify CSS output |
| [Formatting Options] | |
-i, --indent INTEGER |
Indentation size (default: 2) |
-s, --sort |
Sort CSS properties |
| [Content Processing] | |
-c, --remove-comments |
Remove CSS comments |
-g, --group |
Group CSS selectors by prefix |
-d, --remove-duplicates |
Remove duplicate CSS rules |
--duplicate-report |
Generate JSON report of duplicate rules |
| [Validation & Info] | |
--validate-only |
Only validate CSS, do not format |
-v, --verbose |
Enable verbose output |
--version |
Show version and exit |
--help |
Show this message and exit |
Python API Usage
from css_tidy import CSSFormatter
# Create formatter
formatter = CSSFormatter()
# Format CSS string
css_code = """
body{margin:0;padding:0}div{color:red}
"""
formatted_css = formatter.format(css_code)
print(formatted_css)
# Format file
formatter.format_file('input.css', 'output.css')
# Use custom options
formatter = CSSFormatter(indent_size=4, max_line_length=80)
formatted_css = formatter.format(css_code)
# Group selectors
formatter = CSSFormatter(group_selectors=True)
formatted_css = formatter.format(css_code)
Contributing
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Support
If you have questions or need help, please open an issue on GitHub.
Thank you to all contributors and the open-source community for your support.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file css_tidy-0.1.7.tar.gz.
File metadata
- Download URL: css_tidy-0.1.7.tar.gz
- Upload date:
- Size: 26.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e713c6a5e9cda2a76adf77c18572f1fe35537f8fc0309ae877b413ce78c86fec
|
|
| MD5 |
06bffc92b20391895d81c812511e155c
|
|
| BLAKE2b-256 |
2e0e6d7460677ea91a42c9884082f36f69abd0ed623232ec6e9702192433402e
|
File details
Details for the file css_tidy-0.1.7-py3-none-any.whl.
File metadata
- Download URL: css_tidy-0.1.7-py3-none-any.whl
- Upload date:
- Size: 18.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
55465f2e5768c18cfcc2b61e83cf4bccdad50b58d83832576016dddabd99bd49
|
|
| MD5 |
895d9defd1c625a699da258a4dd9883c
|
|
| BLAKE2b-256 |
c7b07eccf89a5a6b9c60955e4bd5e8230a3b453f1a34f04accd874480b22c6db
|