formatting tool complient with 42 school's norm
Project description
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.6+ (3.7, 3.8, 3.9, 3.10)
from pypi (currently not working)
$ 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 overwritting any file
caution
We strongly recommend you to confirm that the binary works without exceptions before using the formatter's output to replace the file content destructively.
$ python3 -m c_formatter_42 < [file.c]
Vim
Checkout c_formatter_42.vim plugin. This plugin automatically installs the c_formatter_42 package using pip.
VSCode
- Install emeraldwalk.runonsave extension.
- Add Configuration to format with c_formatter_42 on save to vscode. (We recommend you to put it in
Workspace Preference
)
"emeraldwalk.runonsave": {
"commands": [{
"match": ".[ch]",
"cmd": "python3 -m c_formatter_42 < ${file} | tee _cfdump && cat _cfdump | tee ${file} && rm -f _cfdump"
}]
}
You can copy above and paste it in the .vscode/setting.json
.
Atom
Not supported yet, see related issue.
Feel free to report issues or contribute. :)
Project details
Release history Release notifications | RSS feed
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.1.3.4.tar.gz
(1.9 MB
view hashes)
Built Distribution
Close
Hashes for c_formatter_42-0.1.3.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 486cbf7190e15d23ce3bfb08466442fca87d7467d52e75dbcd9e187df1052f04 |
|
MD5 | c4459e61a4f1c39bda258bc16337b27d |
|
BLAKE2b-256 | 4a73985ddad166dfcc489c8f9e4d94187366d1957d94a56f6042dc56ba3e8270 |