From f33c3da0e3d5949932e007cf2ff2d87af6c6c3d7 Mon Sep 17 00:00:00 2001 From: Louis Date: Sun, 16 Mar 2014 14:30:23 +0100 Subject: [PATCH] Saucissonage des templates --- songbook_core/data/templates/default.tex | 73 +++-------------------- songbook_core/data/templates/layout.tex | 17 ++---- songbook_core/data/templates/patacrep.tex | 53 ++++++++++++++++ songbook_core/data/templates/songs.tex | 27 +++++++++ 4 files changed, 92 insertions(+), 78 deletions(-) create mode 100644 songbook_core/data/templates/patacrep.tex create mode 100644 songbook_core/data/templates/songs.tex diff --git a/songbook_core/data/templates/default.tex b/songbook_core/data/templates/default.tex index 73d9399e..c9d782be 100644 --- a/songbook_core/data/templates/default.tex +++ b/songbook_core/data/templates/default.tex @@ -1,47 +1,12 @@ -(% comment %) -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Template parameters -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%:[ -%%: {"name":"title", "description":"Title", "default":"Recueil de chansons pour guitare", "mandatory":true}, -%%: {"name":"author", "description":"Author", "default":"The Songbook Team", "mandatory":true}, -%%: {"name":"booktype", "description":"Type", "type":"enum", "values":["chorded","lyric"], "default":"chorded", "mandatory":true}, -%%: {"name":"lang", "description":"Language", "default":"english"}, -%%: {"name":"instruments", "description":"Instruments", "type":"flag", "values":["guitar","ukulele"], "join":",", "mandatory":true, "default":["guitar"]}, -%%: {"name":"bookoptions", "description":"Options", "type":"flag", "values":["diagram","importantdiagramonly","lilypond","pictures","tabs","repeatchords","onesongperpage"], "join":",", "mandatory":true, "default":["diagram","pictures"]}, -%%: {"name":"version", "description":"Version", "default":"unknown"}, -%%: {"name":"subtitle", "description":"Subtitle"}, -%%: {"name":"web", "description":"Web", "default":"http://www.patacrep.com"}, -%%: {"name":"mail", "description":"Email", "default":"crep@team-on-fire.com"}, -%%: {"name":"picture", "description":"Picture", "type":"file", "default":"treble_a"}, -%%: {"name":"picturecopyright", "description":"Copyright", "default":"Dbolton \\url{http://commons.wikimedia.org/wiki/User:Dbolton}"}, -%%: {"name":"footer", "description":"Footer", "default":"\\begin{flushright}Generated using Songbook (\\url{http://www.patacrep.com})\\end{flushright}"}, -%%: {"name":"mainfontsize", "description":"Font Size", "type":"font", "default":"10"}, -%%: {"name":"songnumberbgcolor", "description":"Number Shade", "type":"color", "default":"D1E4AE"}, -%%: {"name":"notebgcolor", "description":"Note Shade", "type":"color", "default":"D1E4AE"}, -%%: {"name":"indexbgcolor", "description":"Index Shade", "type":"color", "default":"D1E4AE"}, -%%: {"name":"titleprefixwords", "description":"Ignore some words in the beginning of song titles"}, -%%: {"name":"authwords", "descriptipn":"Set of options to process author string (LaTeX commands authsepword, authignoreword, authbyword)"}, -%%: {"name":"languages", "description":"List of languages used by songs", "default":"english"} -%%:] -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -(% endcomment %) +(* set indexes = "titleidx,authidx" *) -(* extends "layout.tex" *) +(* extends "songs.tex" *) + +(* block songbookpreambule *) + (( super() )) -(* block extrapackages *) - \usepackage[ - a4paper % paper size - ,includeheadfoot % include header and footer into text size - ,hmarginratio=1:1 % ratio between inner and outer margin (default) - ,outer=1.8cm % outer margin (right) - ,vmarginratio=1:1 % ratio between top and bottom margin - ,bmargin=1.3cm % bottom margin - ]{geometry} \usepackage{chords} -(* endblock extrapackages *) -(* block songbookpreambule *) \title{((title))} \author{((author))} \subtitle{((subtitle))} @@ -53,7 +18,6 @@ \picture{((picture))} \picturecopyright{((picturecopyright))} \footer{((footer))} - \lang{((mainlang))} \newindex{titleidx}{((filename))_title} \newauthorindex{authidx}{((filename))_auth} @@ -70,17 +34,10 @@ (* endif *) (* endfor *) (* endfor*) +(* endblock *) - \graphicspath{{((datadir))/img/}} - \pagestyle{empty} - - \definecolor{SongNumberBgColor}{HTML}{((songnumberbgcolor))} - \definecolor{NoteBgColor}{HTML}{((notebgcolor))} - \definecolor{IndexBgColor}{HTML}{((indexbgcolor))} - - \renewcommand{\snumbgcolor}{SongNumberBgColor} - \renewcommand{\notebgcolor}{NoteBgColor} - \renewcommand{\idxbgcolor}{IndexBgColor} +(* block title *) +\maketitle (* endblock *) (* block index *) @@ -110,17 +67,3 @@ \fi (* endblock *) -(* block content *) - \phantomsection - (* if mainlang==english *) - \addcontentsline{toc}{section}{Songs list} - (* else *) - \addcontentsline{toc}{section}{Liste des chansons} - (* endif *) - - \begin{songs}{titleidx,authidx} - (* for song in songlist.songs *) - \input{((song.path))} - (* endfor *) - \end{songs} -(* endblock *) diff --git a/songbook_core/data/templates/layout.tex b/songbook_core/data/templates/layout.tex index 112fa233..5b0fd76a 100644 --- a/songbook_core/data/templates/layout.tex +++ b/songbook_core/data/templates/layout.tex @@ -23,27 +23,19 @@ % Copyright (C) 2014 The Songbook team (www.patacrep.com) +(* block documentclass *) \documentclass[((booktype)), (* for option in bookoptions *)((option)), (* endfor *) (* for instrument in instruments *)((instrument)), (* endfor *) ((mainfontsize))pt]{crepbook} +(* endblock *) -(* block packages *) +(* block songbookpreambule *) \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{lmodern} - (* for lang in songlist.languages() *) - \PassOptionsToPackage{((lang))}{babel} - (* endfor *) - \usepackage{babel} - - (* block extrapackages *) - (* endblock extrapackages *) -(* endblock packages *) - -(* block songbookpreambule *) (* endblock songbookpreambule *) (* block preambule *) @@ -52,7 +44,6 @@ \begin{document} (* block title *) -\maketitle (* endblock *) (* block preface *) @@ -64,7 +55,7 @@ (* block chords *) (* endblock *) -(* block content *) +(* block songs *) (* endblock *) (* block postface *) diff --git a/songbook_core/data/templates/patacrep.tex b/songbook_core/data/templates/patacrep.tex new file mode 100644 index 00000000..33723475 --- /dev/null +++ b/songbook_core/data/templates/patacrep.tex @@ -0,0 +1,53 @@ +(% comment %) +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Template parameters +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%:[ +%%: {"name":"title", "description":"Title", "default":"Recueil de chansons pour guitare", "mandatory":true}, +%%: {"name":"author", "description":"Author", "default":"The Songbook Team", "mandatory":true}, +%%: {"name":"booktype", "description":"Type", "type":"enum", "values":["chorded","lyric"], "default":"chorded", "mandatory":true}, +%%: {"name":"lang", "description":"Language", "default":"english"}, +%%: {"name":"instruments", "description":"Instruments", "type":"flag", "values":["guitar","ukulele"], "join":",", "mandatory":true, "default":["guitar"]}, +%%: {"name":"bookoptions", "description":"Options", "type":"flag", "values":["diagram","importantdiagramonly","lilypond","pictures","tabs","repeatchords","onesongperpage"], "join":",", "mandatory":true, "default":["diagram","pictures"]}, +%%: {"name":"version", "description":"Version", "default":"unknown"}, +%%: {"name":"subtitle", "description":"Subtitle"}, +%%: {"name":"web", "description":"Web", "default":"http://www.patacrep.com"}, +%%: {"name":"mail", "description":"Email", "default":"crep@team-on-fire.com"}, +%%: {"name":"picture", "description":"Picture", "type":"file", "default":"treble_a"}, +%%: {"name":"picturecopyright", "description":"Copyright", "default":"Dbolton \\url{http://commons.wikimedia.org/wiki/User:Dbolton}"}, +%%: {"name":"footer", "description":"Footer", "default":"\\begin{flushright}Generated using Songbook (\\url{http://www.patacrep.com})\\end{flushright}"}, +%%: {"name":"mainfontsize", "description":"Font Size", "type":"font", "default":"10"}, +%%: {"name":"songnumberbgcolor", "description":"Number Shade", "type":"color", "default":"D1E4AE"}, +%%: {"name":"notebgcolor", "description":"Note Shade", "type":"color", "default":"D1E4AE"}, +%%: {"name":"indexbgcolor", "description":"Index Shade", "type":"color", "default":"D1E4AE"}, +%%: {"name":"titleprefixwords", "description":"Ignore some words in the beginning of song titles"}, +%%: {"name":"authwords", "descriptipn":"Set of options to process author string (LaTeX commands authsepword, authignoreword, authbyword)"}, +%%: {"name":"languages", "description":"List of languages used by songs", "default":"english"} +%%:] +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +(% endcomment %) + +(* extends "default.tex" *) + +(* block songbookpreambule *) + \usepackage[ + a4paper % paper size + ,includeheadfoot % include header and footer into text size + ,hmarginratio=1:1 % ratio between inner and outer margin (default) + ,outer=1.8cm % outer margin (right) + ,vmarginratio=1:1 % ratio between top and bottom margin + ,bmargin=1.3cm % bottom margin + ]{geometry} + + (( super() )) + + \pagestyle{empty} + + \definecolor{SongNumberBgColor}{HTML}{((songnumberbgcolor))} + \definecolor{NoteBgColor}{HTML}{((notebgcolor))} + \definecolor{IndexBgColor}{HTML}{((indexbgcolor))} + + \renewcommand{\snumbgcolor}{SongNumberBgColor} + \renewcommand{\notebgcolor}{NoteBgColor} + \renewcommand{\idxbgcolor}{IndexBgColor} +(* endblock *) diff --git a/songbook_core/data/templates/songs.tex b/songbook_core/data/templates/songs.tex new file mode 100644 index 00000000..afad1ef9 --- /dev/null +++ b/songbook_core/data/templates/songs.tex @@ -0,0 +1,27 @@ +(* extends "layout.tex" *) + +(* block songbookpreambule *) + (( super() )) + + (* for lang in songlist.languages() *) + \PassOptionsToPackage{((lang))}{babel} + (* endfor *) + \usepackage{babel} + + \graphicspath{{((datadir))/img/}} +(* endblock *) + +(* block songs *) + \phantomsection + (* if mainlang==english *) + \addcontentsline{toc}{section}{Songs list} + (* else *) + \addcontentsline{toc}{section}{Liste des chansons} + (* endif *) + + \begin{songs}{((indexes|default('')))} + (* for song in songlist.songs *) + \input{((song.path))} + (* endfor *) + \end{songs} +(* endblock *)