mixtape/readme.md

57 lines
1.5 KiB
Markdown
Raw Normal View History

2024-06-03 09:54:05 +02:00
My personal guitar chord-book written in [ChordPro](https://www.chordpro.org/).
2023-12-28 01:48:58 +01:00
## Requirements
2024-06-03 09:54:05 +02:00
- `docker`
- `ghostscript` (optional for `songbook` make target)
- `zola` (optional for web deployment)
2023-12-28 01:48:58 +01:00
2024-06-01 11:52:42 +02:00
The makefile uses Docker with the official iamge `chordpro/chordpro:latest`.
It can be seamlesly integrated with a shell alias in case you want to use
2024-06-03 09:54:05 +02:00
ChordPro directly in your shell outside of make:
2024-06-01 11:52:42 +02:00
```
alias chordpro="docker run -ti --rm --env HOME=\$HOME --env USER=\$USER --workdir \$(pwd) --volume \$HOME:\$HOME chordpro/chordpro:latest chordpro"
```
2023-12-28 01:48:58 +01:00
## Building
2024-06-03 09:54:05 +02:00
`make` defaults to `pdf` which builds individual PDF files for all songs.
2023-12-28 01:48:58 +01:00
2024-06-03 09:54:05 +02:00
Target | Description
-|-
`all` | `pdf`, `html`, `songbook`
`pdf` | Build individual PDF files
`html` | Build individual HTML files
`songbook` | Build one complete PDF songbook with all songs
`clean` | Remove all generated files
2023-12-28 01:48:58 +01:00
2024-01-08 09:01:22 +01:00
You can also build PDF for a specific page with:
```
chordpro --config=chordpro.json path/to/song.cho
```
or build HTML output with:
```
chordpro --config=chordpro.json -o path/to/song.html path/to/song.cho
```
2024-02-06 14:18:25 +01:00
### Static website output
Futhermore, the project is ready to be compiled into a static webpage using
[Zola](https://www.getzola.org/).
```
zola build
```
This is done by default during the deploy pipeline.
2024-05-30 09:11:15 +02:00
## Song management
The `manage` shell script lets you do basic song management and saves you some
manual labour. Simply run the script itself or invoke `help` to get a list of
all available commands.