Skip to main content

A CLI tool to clean up your source files

Project description

Cleany

tests GitHub issues last-commit Supported Versions

Cleany is a CLI tool to clean up your source files.

Install

Install via pip

$ pip install cleany

Invoke

Cleany is a command line tool. Once installed, invoke it from the command line:

$ cleany
> cleany -h for help

Remove emojis:

$ cleany --emoji

Cleany will attempt to remove all emojis from all valid UTF-8 text files it finds.

IF cleany removes at least one emoji from a .py file, it will attempt to refactor the file using Ruff. Since this can significantly change the shape of your source files, you can disable Ruff:

$ cleany --emoji --no-ruff

If cleany does not remove an emoji from a Python file, it will not run Ruff against it.

Change the path.

Cleany will search for files starting in your current directory and moving recursively down. If you would like to specify a directory, use --path:

$ cleany --emoji --path some-directory

Ignore directory

If you want Cleany to skip directory, use --ignore-dir:

$ cleany --emoji --ignore-dir some-directory

You can ignore multiple directories:

$ cleany --emoji --ignore-dir some-directory --ignore-dir another-directory

By default cleany will skip hidden directories (directory names which begin with .) It will also skip the following directories:

  • venv
  • add more here

Ignore file

If you want Cleany to skip a file, use --ignore-file:

$ cleany --nuke --ignore-file banana.js

You can ignore multiple files:

$ cleany --emoji --ignore-file banana.js --ignore-file palace.js

Do not include the full path to the file; just use the file name. Cleany will find and skip any file with that name.

Remove comments from Python files

If cleany finds .py files, it can remove all # comments from them. Does not remove docstrings.

$ cleany --nuke

IF cleany removes at least one comment from a .py file, it will attempt to refactor the file using Ruff. Since this can significantly change the shape of your source files, you can disable Ruff:

$ cleany --nuke --no-ruff

If cleany does not remove a comment from a Python file, it will not run Ruff against it.

Surpress Cleany's output

By default Cleany will provide output about the files it's cleaning up.

$ cleany --nuke
> ----- scanning comments in /src/main.py -----
> removing comment from line 85 of /src/main.py
> removing comment from line 115 of /src/main.py
> removed 2 comments from /src/main.py

If you want to surpress that output, use --quiet:

$ cleany --nuke --quiet
$ 

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

cleany-0.3.3.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cleany-0.3.3-py3-none-any.whl (6.6 kB view details)

Uploaded Python 3

File details

Details for the file cleany-0.3.3.tar.gz.

File metadata

  • Download URL: cleany-0.3.3.tar.gz
  • Upload date:
  • Size: 6.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cleany-0.3.3.tar.gz
Algorithm Hash digest
SHA256 d28bcab644f271ede36595456653193766e2bdeeb6735e299cf7c5942ed2b4ba
MD5 f6599f173fd7f6dd1a41831535e67893
BLAKE2b-256 7724cc124a6ce00032c66777e2b6a4a6952a84ede75aeda283e96fa6cb816fba

See more details on using hashes here.

Provenance

The following attestation bundles were made for cleany-0.3.3.tar.gz:

Publisher: cleany.yml on weddleben/cleany

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cleany-0.3.3-py3-none-any.whl.

File metadata

  • Download URL: cleany-0.3.3-py3-none-any.whl
  • Upload date:
  • Size: 6.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cleany-0.3.3-py3-none-any.whl
Algorithm Hash digest
SHA256 c4188dcbe1809e1e6cc8d0fa06b521a735f93fbdfc6a711a93a73b4907d54b9c
MD5 44d55e487ef13f42d4c0ac7a39cbe2a0
BLAKE2b-256 cdc55822d564e2135b75763dccd3e55da750ce008e0f3349175cf7cf3e999d84

See more details on using hashes here.

Provenance

The following attestation bundles were made for cleany-0.3.3-py3-none-any.whl:

Publisher: cleany.yml on weddleben/cleany

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page