Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

1.3.0-beta.3 #929

Merged
merged 2 commits into from
Oct 25, 2024
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
✨ Tweaked group count style
- Fixed scripture changing in some cases
- Fixed some issues with split in two
- Split in two will also split text content
- Fixed global group drop added to wrong index if dropped at the end
- UI tweaks
- Updated languages
  • Loading branch information
vassbo committed Oct 24, 2024
commit e6dc5f3e106f41f73f086cd27fb8b20a5ab0b023
50 changes: 44 additions & 6 deletions public/lang/en_GB.json
Original file line number Diff line number Diff line change
Expand Up @@ -94,15 +94,17 @@
"search_web": "Search for song on the web",
"search_results": "Search results",
"more_options": "More options",
"auto_groups": "Auto assign groups",
"format_new_show": "Format text",
"format_new_show_tip": "Improve text format with auto capitalise, split text, assign groups & more.",
"split_lines": "Numbers of lines",
"format_new_show_tip": "Improve text format with auto capitalise, trim/split text & more.",
"split_lines": "Max lines per slide",
"split_lines_tip": "Numbers of lines allowed per slide before auto splitting",
"quick_lyrics": "Quick lyrics",
"quick_lyrics_tip": "Paste text or enter manually",
"quick_lyrics_example_tip": "Enter lyrics or any text here",
"quick_lyrics_example_text": "Line",
"empty": "Empty show"
"empty": "Empty show",
"exists": "Found an existing show with the same name"
},
"preview": {
"_previous_show": "Previous show",
Expand Down Expand Up @@ -381,6 +383,7 @@
"transition": "Transition",
"delete_show": "Delete show",
"delete_show_confirmation": "Are you sure you want to delete",
"delete_duplicated_shows": "Delete duplicated shows",
"change_name": "Change name on",
"choose_screen": "Choose screen",
"choose_output": "Choose output type",
Expand Down Expand Up @@ -431,6 +434,7 @@
"less_than_minute": "in less than a minute.",
"less_than_seconds": "in less than {} seconds.",
"now": "now!",
"unsupported_video": "Unsupported video!",
"no_video_id": "No video ID",
"no_name": "No name",
"reverting_setting": "Reverting this change in {} seconds, enable again to make the change stay!",
Expand Down Expand Up @@ -485,7 +489,11 @@
"slide_template": "Slide template",
"source": "Source",
"artist": "Artist",
"song": "Song"
"song": "Song",
"delete_manual": "Manual check",
"delete_match": "Delete if exact match",
"delete_keep_last_modified": "Delete all except last modified",
"delete_keep_first_created": "Delete all except first created"
},
"actions": {
"rename": "Rename",
Expand Down Expand Up @@ -863,7 +602,10 @@
"play_on_midi_tip": "Activate this specific slide when receiving chosen MIDI signal",
"send_midi": "Send MIDI signal",
"delete_shows_not_indexed": "Delete shows in 'Shows' folder that are not indexed",
"delete_empty_shows": "Delete empty shows",
"delete_thumbnail_cache": "Delete thumbnail cache",
"export_usage_log": "Export usage log",
"reset_usage_log": "Reset usage log",
"open_log_file": "Open log file",
"open_cache_folder": "Open cache folder",
"refresh_all_shows": "Get all shows in 'Shows' folder",
Expand Down Expand Up @@ -644,6 +655,8 @@
"activate_slide_clicked": "Activate on slide click",
"activate_video_starting": "Activate when video is starting",
"activate_video_ending": "Activate when video is ending",
"activate_audio_starting": "Activate when audio is starting",
"activate_audio_ending": "Activate when audio is ending",
"activate_timer_ending": "Activate when timer is ending",
"activate_scripture_start": "Activate when scripture is started",
"activate_slide_cleared": "Activate when slide is cleared",
Expand Down Expand Up @@ -719,6 +732,7 @@
"addToProject": "Add to project",
"add_to_show": "Add to show",
"lockForChanges": "Lock for editing",
"use_as_archive": "Mark as archive",
"newCategory": "New category",
"changeIcon": "Change icon",
"changeGroup": "Change group",
Expand Down Expand Up @@ -1015,7 +1029,7 @@
"select_display": "Click on the screen where you want to display the output window.",
"manual_input_hint": "Can't find the display? Click here to manually change the position.",
"manual_drag_hint": "You can also hold ctrl/cmd over an active output window to manually drag it around.",
"allow_main_screen": "Allow output on main screen",
"allow_main_screen": "Allow custom output position & size",
"identify_screens": "Identify screens",
"new_output": "New output",
"normal": "Normal",
Expand Down Expand Up @@ -1064,7 +1078,7 @@
"show_location": "Show location",
"data_location": "Data location",
"user_data_location": "Save user settings at 'Data location'",
"popup_before_close": "Always display popup before closing",
"popup_before_close": "Enable close confirmation popup",
"disable_hardware_acceleration": "Disable hardware acceleration",
"restart_for_change": "You have to restart the program for the change to take effect!",
"font": "Font",
Expand Down Expand Up @@ -1095,6 +1109,7 @@
"restore_started": "Restoring...",
"backup_finished": "Backup complete!",
"restore_finished": "Restore complete!",
"auto_backup": "Auto backup",
"preview_frame_rate": "Preview frame rate",
"auto": "Auto",
"optimized": "Optimised",
Expand Down Expand Up @@ -1242,22 +1257,45 @@
"6": "Saturday",
"7": "Sunday"
},
"interval": {
"daily": "Daily",
"weekly": "Weekly",
"mothly": "Monthly"
},
"info": {
"created": "Created",
"modified": "Modified",
"used": "Used",
"changed": "Changed",
"recently_used": "Recently used",
"extension": "File extension",
"size": "Size",
"slides": "Slides",
"words": "Words",
"template": "Template",
"category": "Category",
"codecs": "Codecs",
"mimeType": "MIME type",
"photoUrl": "Photo URL",
"likes": "Likes",
"artist": "Artist",
"artistUrl": "Artist page"
},
"guide_description": {
"start": "This is a short walkthrough of some basic features! (You can skip in the bottom right corner.)",
"project_manage": "Manage all of your projects in one place.",
"project_create": "Create folders to keep it organised, and create new projects.",
"project_list": "After opening a project you get a list of all the items here on the left side, drag & drop from the drawer to add more.",
"drawer": "Find all of your shows, media, overlays, etc. in one place.",
"drawer_shows": "Manage all of your different shows by organising them in different categories. Drag & drop any selected show to move them.",
"create_show_button": "Click this to create a new show (song, presentation, etc.)",
"create_show_popup": "Fill in the main details of the show, you can also auto find lyrics on the web from the name, or paste the lyrics manually.",
"show": "A show is the main presentation, click on any slide to present, and use the arrow keys to navigate. You can also drag & drop media files on a slide to set as background.",
"show_slide": "After a slide is clicked, it will show in the output and you will see a preview on the right, here you'll also find some extra actions like pausing a video.",
"output_clear": "Clear individual output layers, or clear all layers in the output.",
"edit": "Open slide editing with one click at the top.",
"end": "You can always look on the web if you need help with other features."
},
"songbeamer_import": {
"options": "Options",
"encoding": "Encoding",
Expand Down
50 changes: 44 additions & 6 deletions public/lang/en_ZM.json
Original file line number Diff line number Diff line change
Expand Up @@ -94,15 +94,17 @@
"search_web": "Search for song on the web",
"search_results": "Search results",
"more_options": "More options",
"auto_groups": "Auto assign groups",
"format_new_show": "Format text",
"format_new_show_tip": "Improve text format with auto capitalise, split text, assign groups & more.",
"split_lines": "Numbers of lines",
"format_new_show_tip": "Improve text format with auto capitalise, trim/split text & more.",
"split_lines": "Max lines per slide",
"split_lines_tip": "Numbers of lines allowed per slide before auto splitting",
"quick_lyrics": "Quick lyrics",
"quick_lyrics_tip": "Paste text or enter manually",
"quick_lyrics_example_tip": "Enter lyrics or any text here",
"quick_lyrics_example_text": "Line",
"empty": "Empty show"
"empty": "Empty show",
"exists": "Found an existing show with the same name"
},
"preview": {
"_previous_show": "Previous show",
Expand Down Expand Up @@ -381,6 +383,7 @@
"transition": "Transition",
"delete_show": "Delete show",
"delete_show_confirmation": "Are you sure you want to delete",
"delete_duplicated_shows": "Delete duplicated shows",
"change_name": "Change name on",
"choose_screen": "Choose screen",
"choose_output": "Choose output type",
Expand Down Expand Up @@ -431,6 +434,7 @@
"less_than_minute": "in less than a minute.",
"less_than_seconds": "in less than {} seconds.",
"now": "now!",
"unsupported_video": "Unsupported video!",
"no_video_id": "No video ID",
"no_name": "No name",
"reverting_setting": "Reverting this change in {} seconds, enable again to make the change stay!",
Expand Down Expand Up @@ -485,7 +489,11 @@
"slide_template": "Slide template",
"source": "Source",
"artist": "Artist",
"song": "Song"
"song": "Song",
"delete_manual": "Manual check",
"delete_match": "Delete if exact match",
"delete_keep_last_modified": "Delete all except last modified",
"delete_keep_first_created": "Delete all except first created"
},
"actions": {
"rename": "Rename",
Expand Down Expand Up @@ -863,7 +602,10 @@
"play_on_midi_tip": "Activate this specific slide when receiving chosen MIDI signal",
"send_midi": "Send MIDI signal",
"delete_shows_not_indexed": "Delete shows in 'Shows' folder that are not indexed",
"delete_empty_shows": "Delete empty shows",
"delete_thumbnail_cache": "Delete thumbnail cache",
"export_usage_log": "Export usage log",
"reset_usage_log": "Reset usage log",
"open_log_file": "Open log file",
"open_cache_folder": "Open cache folder",
"refresh_all_shows": "Get all shows in 'Shows' folder",
Expand Down Expand Up @@ -644,6 +655,8 @@
"activate_slide_clicked": "Activate on slide click",
"activate_video_starting": "Activate when video is starting",
"activate_video_ending": "Activate when video is ending",
"activate_audio_starting": "Activate when audio is starting",
"activate_audio_ending": "Activate when audio is ending",
"activate_timer_ending": "Activate when timer is ending",
"activate_scripture_start": "Activate when scripture is started",
"activate_slide_cleared": "Activate when slide is cleared",
Expand Down Expand Up @@ -719,6 +732,7 @@
"addToProject": "Add to project",
"add_to_show": "Add to show",
"lockForChanges": "Lock for editing",
"use_as_archive": "Mark as archive",
"newCategory": "New category",
"changeIcon": "Change icon",
"changeGroup": "Change group",
Expand Down Expand Up @@ -1015,7 +1029,7 @@
"select_display": "Click on the screen where you want to display the output window.",
"manual_input_hint": "Can't find the display? Click here to manually change the position.",
"manual_drag_hint": "You can also hold ctrl/cmd over an active output window to manually drag it around.",
"allow_main_screen": "Allow output on main screen",
"allow_main_screen": "Allow custom output position & size",
"identify_screens": "Identify screens",
"new_output": "New output",
"normal": "Normal",
Expand Down Expand Up @@ -1064,7 +1078,7 @@
"show_location": "Show location",
"data_location": "Data location",
"user_data_location": "Save user settings at 'Data location'",
"popup_before_close": "Always display popup before closing",
"popup_before_close": "Enable close confirmation popup",
"disable_hardware_acceleration": "Disable hardware acceleration",
"restart_for_change": "You have to restart the program for the change to take effect!",
"font": "Font",
Expand Down Expand Up @@ -1095,6 +1109,7 @@
"restore_started": "Restoring...",
"backup_finished": "Backup complete!",
"restore_finished": "Restore complete!",
"auto_backup": "Auto backup",
"preview_frame_rate": "Preview frame rate",
"auto": "Auto",
"optimized": "Optimised",
Expand Down Expand Up @@ -1242,22 +1257,45 @@
"6": "Saturday",
"7": "Sunday"
},
"interval": {
"daily": "Daily",
"weekly": "Weekly",
"mothly": "Monthly"
},
"info": {
"created": "Created",
"modified": "Modified",
"used": "Used",
"changed": "Changed",
"recently_used": "Recently used",
"extension": "File extension",
"size": "Size",
"slides": "Slides",
"words": "Words",
"template": "Template",
"category": "Category",
"codecs": "Codecs",
"mimeType": "MIME type",
"photoUrl": "Photo URL",
"likes": "Likes",
"artist": "Artist",
"artistUrl": "Artist page"
},
"guide_description": {
"start": "This is a short walkthrough of some basic features! (You can skip in the bottom right corner.)",
"project_manage": "Manage all of your projects in one place.",
"project_create": "Create folders to keep it organised, and create new projects.",
"project_list": "After opening a project you get a list of all the items here on the left side, drag & drop from the drawer to add more.",
"drawer": "Find all of your shows, media, overlays, etc. in one place.",
"drawer_shows": "Manage all of your different shows by organising them in different categories. Drag & drop any selected show to move them.",
"create_show_button": "Click this to create a new show (song, presentation, etc.)",
"create_show_popup": "Fill in the main details of the show, you can also auto find lyrics on the web from the name, or paste the lyrics manually.",
"show": "A show is the main presentation, click on any slide to present, and use the arrow keys to navigate. You can also drag & drop media files on a slide to set as background.",
"show_slide": "After a slide is clicked, it will show in the output and you will see a preview on the right, here you'll also find some extra actions like pausing a video.",
"output_clear": "Clear individual output layers, or clear all layers in the output.",
"edit": "Open slide editing with one click at the top.",
"end": "You can always look on the web if you need help with other features."
},
"songbeamer_import": {
"options": "Options",
"encoding": "Encoding",
Expand Down
16 changes: 8 additions & 8 deletions public/lang/zh_CN.json
Original file line number Diff line number Diff line change
Expand Up @@ -188,10 +188,10 @@
"mute_when_video_plays": "视频播放时静音",
"pre_fader_volume_meter": "推子前音量表",
"metronome": "节拍器",
"toggle_metronome": "切换节拍器",
"tempo": "时间",
"bpm": "节拍数",
"beats": "节拍"
"toggle_metronome": "显示/隐藏节拍器",
"tempo": "节奏",
"bpm": "拍数",
"beats": "拍子"
},
"menu": {
"show": "演出",
Expand Down Expand Up @@ -530,7 +530,7 @@
"speech": "朗读",
"startSpeaking": "开始朗读",
"stopSpeaking": "停止朗读",
"focus_mode": "切换聚焦模式",
"focus_mode": "切换专注模式",
"fullscreen": "切换全屏",
"resetZoom": "重置缩放",
"zoom": "缩放",
Expand Down Expand Up @@ -1058,8 +1058,8 @@
"clear_media_when_finished": "播放完成时清除媒体",
"disable_presenter_controller_keys": "禁用演示者控制器按键",
"default_project_name": "默认项目名称",
"audio_fade_duration": "音频淡入淡出持续时间",
"audio_crossfade": "音频交叉淡入",
"audio_fade_duration": "音频淡化时长",
"audio_crossfade": "音频交叉淡化",
"clear_style_background_on_text": "幻灯片激活时清除样式背景",
"resolution": "分辨率",
"cropping": "裁剪",
Expand Down Expand Up @@ -1209,7 +1209,7 @@
"direction": "方向",
"type": "类型",
"none": "无",
"fade": "渐变",
"fade": "淡化",
"blur": "模糊",
"scale": "缩放",
"spin": "旋转",
Expand Down
10 changes: 6 additions & 4 deletions src/frontend/components/context/menuClick.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { get } from "svelte/store"
import { uid } from "uid"
import { EXPORT, MAIN, OUTPUT } from "../../../types/Channels"
import type { MediaStyle } from "../../../types/Main"
import type { Slide } from "../../../types/Show"
import type { Item, Slide } from "../../../types/Show"
import { changeSlideGroups, mergeSlides, mergeTextboxes, splitItemInTwo } from "../../show/slides"
import {
$,
Expand Down Expand Up @@ -63,7 +63,7 @@ import { stopMediaRecorder } from "../drawer/live/recorder"
import { playPauseGlobal } from "../drawer/timers/timers"
import { addChords } from "../edit/scripts/chords"
import { rearrangeItems } from "../edit/scripts/itemHelpers"
import { getSelectionRange } from "../edit/scripts/textStyle"
import { getItemText, getSelectionRange } from "../edit/scripts/textStyle"
import { exportProject } from "../export/project"
import { clone, removeDuplicates } from "../helpers/array"
import { copy, cut, deleteAction, duplicate, paste, selectAll } from "../helpers/clipboard"
Expand Down Expand Up @@ -962,9 +962,11 @@ const actions: any = {
if (!slideRef || previousSpiltIds.includes(slideRef.id)) return
previousSpiltIds.push(slideRef.id)

let slideItems = _show().slides([slideRef.id]).get("items")[0]
let slideItems: Item[] = _show().slides([slideRef.id]).get("items")[0]

let firstTextItemIndex = slideItems.findIndex((a) => a.lines) ?? -1
// check lines array & text array first, then text value
let firstTextItemIndex = slideItems.findIndex((a) => getItemText(a).length && ((a.lines?.length || 0) > 1 || (a.lines?.[0]?.text?.length || 0) > 1))
if (firstTextItemIndex < 0) firstTextItemIndex = slideItems.findIndex((a) => getItemText(a).length > 18)
if (firstTextItemIndex < 0) return

splitItemInTwo(slideRef, firstTextItemIndex)
Expand Down
3 changes: 2 additions & 1 deletion src/frontend/components/drawer/audio/MetronomeInputs.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import CombinedInput from "../../inputs/CombinedInput.svelte"
import NumberInput from "../../inputs/NumberInput.svelte"
import type { API_metronome } from "../../actions/api"
import { getLeftParenthesis, getRightParenthesis } from "../../../utils/language"

export let values: API_metronome = {}
export let volume: boolean = true
Expand All @@ -21,7 +22,7 @@
</script>

<CombinedInput>
<p><T id="audio.tempo" /> (<T id="audio.bpm" />)</p>
<p><T id="audio.tempo" /> {getLeftParenthesis()}<T id="audio.bpm" />{getRightParenthesis()}</p>
<NumberInput value={values.tempo || 120} min={1} decimals={1} fixed={Math.floor(values.tempo || 0) === (values.tempo || 0) ? 0 : 1} max={320} on:change={(e) => updateValue("tempo", e)} />
</CombinedInput>
<CombinedInput>
Expand Down
Loading