commit 4b33a48cd57c79dde3234fdb6f3d16eb37d6cf62
parent 9d5cc68e06b90505a1e4f9f75dac3e2d026387d1
Author: AsherMorgan <59518073+AsherMorgan@users.noreply.github.com>
Date: Wed, 22 Jul 2020 13:51:26 -0700
Implement slide-between-songs setting.
Diffstat:
4 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/Songs2Slides/config.py b/Songs2Slides/config.py
@@ -1,6 +1,7 @@
defaultSettings = {
# Parsing settings
"title-slides": True,
+ "slide-between-songs": True,
"lines-per-slide": 4,
"remove-parentheses": False,
diff --git a/Songs2Slides/core.py b/Songs2Slides/core.py
@@ -94,9 +94,11 @@ def ParseLyrics(title, artist, settings):
slides[-1] = slides[-1] + "\n" + rawLines[i]
slideSize += 1
- # Add blank slide
- if (slides[-1] != ""):
+ # Add/remove blank slide
+ if (slides[-1] != "" and settings["slide-between-songs"]):
slides += [""]
+ elif (slides[-1] == "" and not settings["slide-between-songs"]):
+ del slides[-1]
# Return parsed lyrics
return slides
diff --git a/Songs2Slides/static/settings.js b/Songs2Slides/static/settings.js
@@ -15,6 +15,7 @@ function onLoad() {
function loadSettings(settings) {
// Parsing settings
document.getElementById("title-slides").checked = settings["title-slides"];
+ document.getElementById("slide-between-songs").checked = settings["slide-between-songs"];
document.getElementById("lines-per-slide").value = settings["lines-per-slide"];
document.getElementById("remove-parentheses").checked = settings["remove-parentheses"];
@@ -50,6 +51,7 @@ function saveSettings() {
const settings = {
// Parsing settings
"title-slides": document.getElementById("title-slides").checked,
+ "slide-between-songs": document.getElementById("slide-between-songs").checked,
"lines-per-slide": Number(document.getElementById("lines-per-slide").value),
"remove-parentheses": document.getElementById("remove-parentheses").checked,
diff --git a/Songs2Slides/templates/settings.html b/Songs2Slides/templates/settings.html
@@ -14,6 +14,10 @@
<input type="checkbox" id="title-slides" onchange="saveSettings();"/>
</div>
<div>
+ Blank slide between songs:
+ <input type="checkbox" id="slide-between-songs" onchange="saveSettings();"/>
+ </div>
+ <div>
Default lines per slide:
<input type="number" min="1" step="1" id="lines-per-slide" onchange="saveSettings();"/>
</div>