vojtechkral / bard Goto Github PK
View Code? Open in Web Editor NEWMarkdown-based songbook compiler.
Home Page: https://bard.md/
License: Apache License 2.0
Markdown-based songbook compiler.
Home Page: https://bard.md/
License: Apache License 2.0
WIP on the doc
branch, slightly out of date
Semi-blocked on: sunng87/handlebars-rust#387
Hello @vojtechkral !
I'm using your alpha release. Everything works great after adjusting the templates.
Except the multi column layout.
I get this error:
In the pdf.hbs I'm using the following code:
And in the song itself I enclose the text between:
<columns num=2>
and
</columns>
Can you please help me to make it work?
Hello @vojtechkral !
Thank you very much for developing this project! It's exactly what I've been looking for a long time.
Now I try to build my first songbook and I can't get it to work with a secondary chord set. One !-3
is working while transposing. As soon I set two !!-3
it doesn't work anymore with the following error while generating the pdf:
! Undefined control sequence.
I'm running Ubuntu 22.04 with texlive-xelatex (latexmk).
Hi @vojtechkral !
I made the songbook and I use your software regularly to add new songs. Again, I'm very happy with your solution! Thank you very much!
Do you have a solution to bring the chords without lyrics on the same line as the custom labels (to save space) like Solo and Intro parts? At the moment I have here some songs that have repeating Intro, Solo or Instrumental parts and there I add "x2" and the result looks like this (and I'm not quite happy with this):
I could just write the chords as text, but these wouldn't transpose then:
Maybe you have also a better idea to display repeating parts?
Hello,
I'm using your amazing program to generate songbook of A4 paper size, which results in lots of wasted space on some pages. I would like to set some parts of certain songs that have short lines to be in 2 columns to save space.
For example Pověste ho vejš has a few short verses at the end that on my layout just don't fit onto single page. I want to put these into 2 columns so that they would fit.
# Pověste ho vejš
## Harlej
Na dnešek jsem měl divnej sen
slunce pálilo a před salonem
stál v prachu dav, v tvářích cejch očekávání
uprostřed šibenice z hrubých klád
šerifův pomocník sejmul z hlavy odsouzenci kápi
a dav zašuměl překvapením
i já jsem zašuměl překvapením
ten odsouzenec jsem byl já
a šerif četl neúprosným hlasem rozsudek:
> Pověste ho `Ami`vejš, ať se houpá,
pověste ho `C`vejš, ať má `G`dost.
Pověste ho `Dmi`vejš, ať se `Ami`houpá,
že tu `G`byl nezvanej `Ami`host.
1. Pověste ho, že byl jinej,
že tu s námi dejchal stejnej vzduch.
Pověste ho, ze byl línej
a tak trochu dobrodruh.
2. Pověste ho za El Passo,
za snídani v trávě a lodní zvon.
Za to že neoplýval krásou,
že měl `F`country rád, že se `E7`uměl smát i `Ami`vám.
### :
Nad hlav`C`ou mi slunce p`G`álí konec m`Dmi`ůj nic neodd`C`ál`G`í,
do svejch `C`snů se dívám z `G`dáli.
A do `Dmi`uší mi stále zní tahle `E7`moje píseň poslední
> Pověste ho vejš....
(2 columns begin)
3. Pověste ho za tu banku,
v který zruinoval svůj vklad,
za to že nikdy nevydržel
na jednom místě stát.
4. Pověste ho za tu jistou,
který nesplnil svůj slib,
že byl zarputilým optimistou
a tak dělal spoustu chyb.
5. Pověste ho, že se koukal,
a že hodně jed a hodně pil,
že dal přednost jarním loukám
a pak se oženil a pak se usadil a žil
### :
Nad hlavou mi slunce pálí...
> Pověste ho vejš....
(2 columns end)
I've been thinking on how to mark it and my idea is to use three vertical lines followed by number of columns. Number of columns is reset at the end of each song. My proposal:
# Song title
1. single column
|||2
2. these verses will be
typeset in 2 columns
3. In LaTeX multicols will be used
in html I don't know yet
|||1
If the |||1
wasn't used, 2-column layout would be terminated anyway because the song ends.
Another idea I had was to use ||>
to start 2-column layout and ||<
to end it instead.
# Song title
1. single column
||>
2. these verses will be
typeset in 2 columns
3. In LaTeX multicols will be used
in html I don't know yet
||<
I would like to help on this as much as possible, but I have very little experience wirh rust.
Hi again @vojtechkral :-)
I have now translated a few Word documents into Markdown. It works really well!
Now it comes to formatting. A few questions:
!>
reference to bold?Thanks for your help.
Use more generic AST / closer to Md. Basically just Md with custom extensions (clef, transp.)
2.0 checklist:
tex
config optionbard.toml
v2 update, versioningbard.toml
migration guidesans_font
smart_punctuation
BARD_TEX
, Settings::tex
, Output::tex_runs
bard.toml
referenceAfter setting the variable sans_font
to true in bard.toml
the pagination is still serif. How do I correct this?
Hello @vojtechkral
Thanks for your continous work. I just updated my songbook to the latest version 2.0.1.
I have many songs that require a capo.
Until now I declared the capo like this:
# song1
## band
K:2
The problem is that the page size is limited and sometimes a page break occurs just because of this one line.
I would like to see a feature that handles this K:2
and places it to the top right of the page so it doesn't take up any more vertical space.
And maybe we can highlight that using a red bold font. What do you think?
Hello! This project is incredible. I was investigating using LaTex directly for creating a song book for a group with a few dozen songs. (50+) Somebody sent me a link to your project. Almost exactly what I was looking.
I am a veteran programmer but in Java and Golang. Never used Rust or LaTex, but I'm a quick study. Just need a nudge in the right direction.
Do you think it would be possible to have the table of contents contain links to each song? And then have a link in the footer of each page to be "link to the top" and have it jump back to the ToC?
UPDTATE: It took me some testing, but now have a much better idea of what you did with the TOML and the hbs. I see the the ToC already links to each song. My hat is off to you. This project is really nice.
I propose two three additional options in the ouput section of the TOML, and if you are interested I can craft up a PR.
I'm happy to craft up a PR, but will need a little help in which files I should dig into. I see that I would need to trace them through from the output.rs -> pdf.hbs (not sure about what to do with html one), and of course the documentation to show the new option.
(Reserved)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.