diff --git a/lwfs.conf b/lwfs.conf index 1af2688..1cf1ac0 100644 --- a/lwfs.conf +++ b/lwfs.conf @@ -3,6 +3,7 @@ // global/static settings "REMOTE_SERVER": null, "BIRD_WATCHER_SERVER": null, + "REMOTE_SERVER_SYNC_METHOD": "rsync", "IGNORED_PATTERN": "[,#].*|.*\.sw[op]|.*~", "ALLOWED_PREFIX_PATTERN": "", "TARGETS": diff --git a/lwfs.rb b/lwfs.rb index 1ef3eaa..86588ca 100644 --- a/lwfs.rb +++ b/lwfs.rb @@ -80,6 +80,7 @@ def getLWFSConf(name) $lwfsconf = { # global/static settings 'REMOTE_SERVER' => nil, + 'REMOTE_SERVER_SYNC_METHOD' => nil, 'BIRD_WATCHER_SERVER' => nil, 'IGNORED_PATTERN' => '[,#].*|.*\.sw[op]|.*~', 'ALLOWED_PREFIX_PATTERN' => '', @@ -219,19 +220,22 @@ def needUpdate?(src, dst) AUTO_CENTERING = $lwfsconf['AUTO_CENTERING'] SCREEN_SIZE = $lwfsconf['SCREEN_SIZE'] REMOTE_SERVER = $lwfsconf['REMOTE_SERVER'] + REMOTE_SERVER_SYNC_METHOD = $lwfsconf['REMOTE_SERVER_SYNC_METHOD'] BIRD_WATCHER_SERVER = $lwfsconf['BIRD_WATCHER_SERVER'] TARGETS = $lwfsconf['TARGETS'] STATS_DISPLAY = $lwfsconf['STATS_DISPLAY'] RUBY_COMMAND = (RUBY_PLATFORM =~ /java/) ? 'jruby' : 'ruby' if RbConfig::CONFIG['host_os'].downcase =~ /darwin/ prefix = ENV['HOME'] - updateJSFL(glob(prefix + '/Library/Application Support/Adobe/Flash C[CS]*/*/Configuration/Commands')) + updateJSFL(glob([prefix + '/Library/Application Support/Adobe/Animate CC*/*/Configuration/Commands', + prefix + '/Library/Application Support/Adobe/Flash C[CS]*/*/Configuration/Commands'])) OPEN_COMMAND = 'open' WATCH_SCRIPT = 'lib/watch.rb' LOG_FILE = '/dev/null' elsif RbConfig::CONFIG['host_os'].downcase =~ /mswin(?!ce)|mingw|cygwin|bccwin/ prefix = ENV['USERPROFILE'].gsub(/\\/, '/') - updateJSFL(glob([prefix + '/AppData/Local/Adobe/Flash C[CS]*/*/Configuration/Commands', + updateJSFL(glob([prefix + '/AppData/Local/Adobe/Animate CC*/*/Configuration/Commands', + prefix + '/AppData/Local/Adobe/Flash C[CS]*/*/Configuration/Commands', prefix + '/Local Settings/Application Data/Adobe/Flash C[CS]*/*/Configuration/Commands'])) OPEN_COMMAND = 'start' WATCH_SCRIPT = 'lib/watch.rb' @@ -334,7 +338,7 @@ def needUpdate?(src, dst) path = File.join(settings.public_folder, path) end begin - if path =~ /\.(html|status|loading)$/ + if path =~ /\.(html|status|loading)(\?.*)?$/ $mutex_p.synchronize do begin last_modified File.mtime(path) @@ -409,9 +413,7 @@ def needUpdate?(src, dst) end end else - $mutex_p.synchronize do - updateLoadingStatus("#{DST_DIR}/", true) - end + updateLoadingStatus("#{DST_DIR}/", true) rsync(true) unless REMOTE_SERVER.nil? end $is_start = false @@ -420,9 +422,7 @@ def needUpdate?(src, dst) checkInterruptionWait = 0.0 while is_in_progress catch :restart do - $mutex_p.synchronize do - updateLoadingStatus("#{DST_DIR}/", true) - end + updateLoadingStatus("#{DST_DIR}/", true) checkInterruptionWait += 0.5 checkInterruptionWait = 3.0 if checkInterruptionWait > 3.0 t1 = Time.now @@ -566,9 +566,7 @@ def sync() # added/updated folders changes = $changes.dup changes.each do |name| - $mutex_p.synchronize do - updateLoadingStatus("#{DST_DIR}/#{name}/", true); - end + updateLoadingStatus("#{DST_DIR}/#{name}/", true); end rsync() unless REMOTE_SERVER.nil? updates = [] @@ -1111,7 +1109,7 @@ def outputNG(lwfsconf, update_time, folder, name, prefix, commandline, msg) relative = '../' * (name.split('/').count + 1) content = <<-"EOF" - +
#{HEAD_COMMON}