Aller hop je m'y mets aussi, un petit TapTempo en Crystal.
Personne ne l'a encore fait, donc ça va permettre de faire découvrir un peu plus ce langage.
Le code est disponible sur https://github.com/syrm/taptempo
Et sinon voici la classe complète :
require "option_parser"
class TapTempo
@taps = Array(Time::Span).new
@sample = 5
@resetTime = 5
@precision = 0
def initialize
generateHelp
end
def tap
currentTap = Time.monotonic
checkResetTime
@taps.shift
(…)