Skip to main content

formatting tool complient with 42 school's norm

Project description

PyPI version


c_formatter_42

C language prettier that conforms to 42 norm v3. I know you are already a good human norm. It's just for convenience.

Installation

Requires Python3.8+ (3.9, 3.10, 3.11, 3.12)

From PyPI

pip3 install c-formatter-42
pip3 install --user c-formatter-42  # If you don't have root privileges

From source

git clone https://github.com/cacharle/c_formatter_42
cd c_formatter_42
pip3 install -e .

Usage

Command line

c_formatter_42 < file.c
python3 -m c_formatter_42 < file.c  # If you get 'command not found' with the previous one

c_formatter_42 --help
usage: c_formatter_42 [-h] [-c] [FILE [FILE ...]]

Format C source according to the norm

positional arguments:
  FILE           File to format inplace, if no file is provided read STDIN

optional arguments:
  -h, --help     show this help message and exit
  -c, --confirm  Ask confirmation before overwriting any file

Plugins / Extensions

Vim

Check out the c_formatter_42.vim plugin. This plugin automatically installs the c_formatter_42 package using pip.

Visual Studio Code

  1. Install c_formatter_42
  2. Install the keyhr.42-c-format extension
  3. Set keyhr.42-c-format as the default formatter for C files in .vscode/settings.json
{
  "[c]": {
    "editor.defaultFormatter": "keyhr.42-c-format"
  }
}

Contributing

Feel free to report issues or contribute. :)

Run the tests

pip3 install tox
tox
tox -e py311  # for a specific python version

Deploy a new version

pip3 install bumpversion
bumpversion [major|minor|patch]
git push
git push --tags

Go to: https://github.com/dawnbeen/c_formatter_42/tags and click on the tag you just created. Then click on Create release from tag, the pipeline will build and deploy that version for you.

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

c_formatter_42-0.2.8.tar.gz (4.0 MB view details)

Uploaded Source

Built Distribution

c_formatter_42-0.2.8-py3-none-any.whl (4.0 MB view details)

Uploaded Python 3

File details

Details for the file c_formatter_42-0.2.8.tar.gz.

File metadata

  • Download URL: c_formatter_42-0.2.8.tar.gz
  • Upload date:
  • Size: 4.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.21

File hashes

Hashes for c_formatter_42-0.2.8.tar.gz
Algorithm Hash digest
SHA256 da31b1ab4cdc92dd363ae791244cf063982e29c9fc54dbde0f22fce20a2b057b
MD5 e50d12f37b25c045db3e1c528ae2f00f
BLAKE2b-256 77faedee608023d6adc567d1060b4b889b6279e0f99ff3b3cc58bfa4eda069dd

See more details on using hashes here.

File details

Details for the file c_formatter_42-0.2.8-py3-none-any.whl.

File metadata

  • Download URL: c_formatter_42-0.2.8-py3-none-any.whl
  • Upload date:
  • Size: 4.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.21

File hashes

Hashes for c_formatter_42-0.2.8-py3-none-any.whl
Algorithm Hash digest
SHA256 9a507a02676243d4f58fe42e8d5c6aaea8a21a6f77f3c553db61a574e12ec806
MD5 3c319280b32c7278bff03c1bef3b620b
BLAKE2b-256 d5d2a5529d6d5fdf3c94609826c27564e8927fef95ae1c0fa8b099f978a1d736

See more details on using hashes here.

Supported by

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