en:devmon:guidelines:tidy
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
en:devmon:guidelines:tidy [2021/08/12 08:03] – created Bruno Manzoni | en:devmon:guidelines:tidy [2021/08/22 14:35] (current) – [Tidy Document] adminw1k1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Tidy ====== | ====== Tidy ====== | ||
- | To make it easier to keep code clean, you can follow this guide | + | To make documents clean, we did automate reformatting with tools freely available |
+ | |||
+ | ==== Tidy Code ==== | ||
+ | |||
+ | To keep the code clean, | ||
+ | |||
+ | === Tools=== | ||
+ | *Tidy perl code, ... (perltidy) | ||
+ | *Follow best practice (perlcritic) | ||
+ | *Automate it (tidyall) | ||
+ | |||
+ | === Installation === | ||
+ | Cpan minus (cpanm) install the latest package, but this can break be in conflict with OS package manager. | ||
+ | |||
+ | < | ||
+ | cpanm install Perl:: | ||
+ | cpanm install Perl:: | ||
+ | cpanm install Code:: | ||
+ | </ | ||
+ | |||
+ | ==== Usage ==== | ||
+ | |||
+ | " | ||
+ | In the project folder, you will find a file called: **" | ||
+ | \\ | ||
+ | \\ | ||
+ | To simulate the result: | ||
+ | < | ||
+ | tidyall -a --check-only | ||
+ | </ | ||
+ | |||
+ | To make it work (perltidy will reformat files with an inplace reformatting, | ||
+ | |||
+ | < | ||
+ | tidyall -a | ||
+ | </ | ||
+ | |||
+ | And files are bakuped ind the **" | ||
+ | |||
+ | |||
+ | ==== Current Best Practice with Perltidy ==== | ||
+ | (Can change at any time: submit your proposal, critics) | ||
+ | \\ | ||
+ | Similar to arg -pbp (perl best practice), mainly: | ||
+ | |||
+ | * 4 chars | ||
+ | * no tabs | ||
+ | * Line lenght 0 (unlimited) | ||
+ | * Cuddle else ( else stay on the same line as the parenthesis) | ||
+ | |||
+ | |||
+ | |||
+ | ==== Best Practice for Critic ==== | ||
+ | (Wip, Not Implemented, | ||
+ | == Use modern default: == | ||
+ | * use strict; | ||
+ | * use warning; | ||
+ | * use utf8; | ||
+ | |||
+ | ==== Tidy Document ==== | ||
+ | |||
+ | To keep clean the other documents that are not code, follow this guide (but dont worry if you dont!) | ||
+ | |||
+ | |||
+ | === Tools=== | ||
+ | |||
+ | * Autoformat | ||
+ | |||
+ | === Current Best Practice with autoformat === | ||
+ | * 78 char per line | ||
+ | * (stating at pos 0) | ||
+ | |||
+ | === Installation === | ||
+ | Cpan minus (cpanm) install the latest package, but this can break be in conflict with OS package manager. | ||
+ | < | ||
+ | cpanm install Text:: | ||
+ | </ | ||
+ | |||
+ | Create the following script: (I named it: autoformat.pl) | ||
+ | < | ||
+ | # | ||
+ | # Minimal use: read from STDIN, format to STDOUT... | ||
+ | use strict; | ||
+ | use Text:: | ||
+ | my $str = do { local $/; < | ||
+ | my $out = autoformat $str, {left=> | ||
+ | print $out; | ||
+ | </ | ||
+ | |||
+ | And now you can format any text or markdown (this will not rendered in a Markdown reader, but Markdown files becomes more readable when they are read " | ||
+ | |||
+ | Make your script exectutable | ||
+ | < | ||
+ | chmod +x autoformat.pl | ||
+ | </ | ||
+ | |||
+ | And test it! | ||
+ | |||
+ | < | ||
+ | autoformat.pl < unformated.txt > formated.txt | ||
+ | autoformat.pl < unformated.md > formated.md | ||
+ | </ | ||
- | Objective: | ||
- | - Tidy perl code, ... | ||
- | - Follow best practice | ||
- | - Automate it | ||
- | Installation procedure | ||
- | Cpan minus install latest package, but this can break be in conflict with OS package manager. Make a backup if you can first | ||
- | - cpanm perltidy | ||
- | - cpanm pre |
en/devmon/guidelines/tidy.1628748222.txt.gz · Last modified: 2021/08/12 08:03 by Bruno Manzoni