mirror of https://github.com/01-edu/public.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nprimo
fb0b19c3b5
|
2 years ago | |
---|---|---|
.. | ||
README.md | 2 years ago | |
audit.md | 2 years ago |
README.md
ascii-art-justify
Objectives
You must follow the same instructions as in the first subject but the alignment can be changed.
We
will
explain!
To change the alignment of the output it must be possible to use a flag --align=<type>
, in which type
can be :
-
center
-
left
-
right
-
justify
-
You must adapt your representation to the terminal size. If you reduce the terminal window the graphical representation should be adapted to the terminal size.
-
Only text that fits the terminal size will be tested.
-
The flag must have exactly the same format as above, any other formats must return the following usage message:
Usage: go run . [STRING] [BANNER] [OPTION]
Example: go run . something standard --align=right
Instructions
- Your project must be written in Go.
- The code must respect the good practices.
- It is recommended to have test files for unit testing.
Usage
Assume the bars in the display below are the terminal borders:
|$ go run . "hello" standard --align=center |
| _ _ _ |
| | | | | | | |
| | |__ ___ | | | | ___ |
| | _ \ / _ \ | | | | / _ \ |
| | | | | | __/ | | | | | (_) | |
| |_| |_| \___| |_| |_| \___/ |
| |
| |
|$ go run . "Hello There" standard --align=left |
| _ _ _ _ _______ _ |
|| | | | | | | | |__ __| | | |
|| |__| | ___ | | | | ___ | | | |__ ___ _ __ ___ |
|| __ | / _ \ | | | | / _ \ | | | _ \ / _ \ | '__| / _ \ |
|| | | | | __/ | | | | | (_) | | | | | | | | __/ | | | __/ |
||_| |_| \___| |_| |_| \___/ |_| |_| |_| \___| |_| \___| |
| |
| |
|$ go run . "hello" shadow --align=right |
| |
| _| _| _| |
| _|_|_| _|_| _| _| _|_| |
| _| _| _|_|_|_| _| _| _| _| |
| _| _| _| _| _| _| _| |
| _| _| _|_|_| _| _| _|_| |
| |
| |
|$ go run . "how are you" shadow --align=justify |
| |
|_| |
|_|_|_| _|_| _| _| _| _|_|_| _| _|_| _|_| _| _| _|_| _| _| |
|_| _| _| _| _| _| _| _| _| _|_| _|_|_|_| _| _| _| _| _| _| |
|_| _| _| _| _| _| _| _| _| _| _| _| _| _| _| _| _| _| |
|_| _| _|_| _| _| _|_|_| _| _|_|_| _|_|_| _|_| _|_|_| |
| _| |
| _|_| |
|$ |
Allowed packages
- Only the standard Go packages are allowed.
This project will help you learn about :
- The Go file system(fs) API
- Data manipulation
- Terminal display