You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
asciinema.org/app/services/asciicast_snapshot_updater.rb

18 lines
442 B
Ruby

class AsciicastSnapshotUpdater
def update(asciicast, at_seconds = nil)
at_seconds ||= asciicast.snapshot_at || asciicast.duration / 2
snapshot = generate_snapshot(asciicast, at_seconds)
asciicast.update_attribute(:snapshot, snapshot)
end
private
def generate_snapshot(asciicast, at_seconds)
asciicast.with_terminal do |terminal|
Film.new(asciicast.stdout, terminal).snapshot_at(at_seconds)
end
end
end