Track local files
This commit is contained in:
62
readme.md
Normal file
62
readme.md
Normal file
@@ -0,0 +1,62 @@
|
||||
My personal guitar chord-book written in [ChordPro](https://www.chordpro.org/).
|
||||
|
||||
## Requirements
|
||||
|
||||
- `docker`
|
||||
- `ghostscript` (optional for `songbook` make target)
|
||||
- `zola` (optional for web deployment)
|
||||
|
||||
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
|
||||
ChordPro directly in your shell outside of make:
|
||||
|
||||
```
|
||||
alias chordpro="docker run -ti --rm --env HOME=\$HOME --env USER=\$USER --workdir \$(pwd) --volume \$HOME:\$HOME chordpro/chordpro:latest chordpro"
|
||||
```
|
||||
|
||||
## Building
|
||||
|
||||
`make` defaults to `pdf` which builds individual PDF files for all songs.
|
||||
|
||||
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
|
||||
|
||||
The makefile is ready for parallel building:
|
||||
|
||||
```
|
||||
make -j$(nproc)
|
||||
```
|
||||
|
||||
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
|
||||
```
|
||||
|
||||
### 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.
|
||||
|
||||
## 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.
|
||||
Reference in New Issue
Block a user