bug in read_from_yml fixed

This commit is contained in:
onyx-and-iris 2023-07-14 01:48:11 +01:00
parent 5dbf3e547c
commit 3e6fe5c443

View File

@ -29,13 +29,13 @@ module Voicemeeter
aouts = (0...@kind.phys_out).to_h { |i| ["A#{i + 1}", false] }
bouts = (0...@kind.virt_out).to_h { |i| ["B#{i + 1}", false] }
strip_bools = %w[mute mono solo].to_h { |param| [param, false] }
gain = ["gain"].to_h { |param| [param, 0.0] }
gain = [:gain].to_h { |param| [param, 0.0] }
phys_float =
%w[comp gate denoiser].to_h { |param| [param, { knob: 0.0 }] }
eq = ["eq"].to_h { |param| [param, { on: false }] }
eq = [:eq].to_h { |param| [param, { on: false }] }
overrides = { "B1" => true }
overrides = { B1: true }
# physical strip params
phys_strip =
@ -46,7 +46,7 @@ module Voicemeeter
]
end
overrides = { "A1" => true }
overrides = { A1: true }
# virtual strip params
virt_strip =
(@kind.phys_in...@kind.phys_in + @kind.virt_in).to_h do |i|
@ -56,7 +56,7 @@ module Voicemeeter
]
end
bus_bools = %w[mute mono].to_h { |param| [param, false] }
bus_bools = %i[mute mono].to_h { |param| [param, false] }
bus =
(0...@kind.num_bus).to_h do |i|
["bus-#{i}", { **bus_bools, **gain, **eq }]
@ -66,22 +66,26 @@ module Voicemeeter
def read_from_yml
#stree-ignore
filepaths = [
configpaths = [
Pathname.getwd.join("configs", @kind.name.to_s),
Pathname.new(Dir.home).join(".config", "voicemeeter-rb", @kind.name.to_s),
Pathname.new(Dir.home).join("Documents", "Voicemeeter", "configs", @kind.name.to_s)
]
filepaths.each do |pn|
if pn.exist?
logger.debug "checking #{pn} for configs"
configs = pn.glob("*.yml")
configs.each do |config|
filename = (config.basename.sub_ext "").to_s.to_sym
if @configs.key? filename
configpaths.each do |configpath|
if configpath.exist?
logger.debug "checking #{configpath} for configs"
filepaths = configpath.glob("*.yml")
filepaths.each do |filepath|
filename = (filepath.basename.sub_ext "").to_s.to_sym
if configs.key? filename
logger.debug "config with name '#{filename}' already in memory, skipping..."
next
end
@configs[filename] = YAML.load_file(config)
configs[filename] = YAML.load_file(
filepath,
symbolize_names: true
)
logger.info "#{@kind.name}/#{filename} loaded into memory"
end
end
@ -92,7 +96,7 @@ module Voicemeeter
def build
logger.debug "Running #{self}"
@configs[:reset] = build_reset_profile
configs[:reset] = build_reset_profile
read_from_yml
end
end