patacrep / patadata

Songs data for LaTeX songbooks
http:///www.patacrep.com
22 stars 37 forks source link

The `volume` books are not compilable #40

Open oliverpool opened 8 years ago

oliverpool commented 8 years ago

The volume-*.sb files are still using the old syntax (not supported anymore) and the song list is probably not up-to-date.

What should we do with them ?

cbernet commented 8 years ago

Just my two cents: I would remove them.

I don't really know the purpose of these volume books though. If the idea is to have smaller books e.g. from songbook_en.yaml, a low maintenance solution could be to simply add an option to the songbook script to split the book into volumes, something like:

songbook -n 5  songbook_en.yaml

to split into five volumes. The splitting could be done in such a way as to get roughly the same number of songs in each book.

oliverpool commented 8 years ago

low maintenance solution, maybe, but it is adding more options to the command-line, which I am not fond of.

The plugin proposition would create a new kind of content:

select_songs:
  offset: 10  # start with the 10th song
  limit: 150     # and include 150 items
  content: ...

One disadvantage, is that you need to manually write 5 .yaml files.

On the other hand you have complete flexibility if you want to adjust the number of songs in each volume (to roughly get the same number of pages for instance).

Adding such flexibility to the command line seems a bit more complex.

LaTruelle commented 8 years ago

What about an option in the yaml file max_songs_per_volume that would automagically split the songbook in an appropriate number of smaller songbooks?

cbernet commented 8 years ago

@LaTruelle I like that. Actually, this is better than a command line option since we have a configuration file anyway (the yaml file)

oliverpool commented 8 years ago

max_songs_per_volume

I like it better than a command line option. Actually a complete section could be made (for future options):

volumes:
  filename: "volume-*.pdf" # the star will be replaced by the volume number
  max_items: 150 # max number of items per volume
  counter: continue # or `reset` to start each volume with the number 1