μ΅κ·Όμ λ³ν©λ #156μ κΈ°λ°μΌλ‘ λ€μ κΈ°λ₯μ μ μνκ³ μΆμ΅λλ€. --max-wait
μ΅μ
μ μ΅λ λκΈ° λ²μμ μνμ€λ₯Ό μ·¨ν μ μμ΅λλ€(λλ μ΄μ λν λ€λ₯Έ μ΅μ
μ΄ μμ μ μμ). μλ₯Ό λ€μ΄:
asciinema rec -w 0.4 0.8 1 3
(νμμ λν΄ λ
Όμν μ μμ΅λλ€. μλ§λ κ³΅λ°±μ΄ μλ κ΅¬λΆ κΈ°νΈκ° μλ κ²μ΄ ꡬ문 λΆμνκΈ° λ μ’κ±°λ λ μ¬μΈ κ²μ
λλ€: 0.4,0.8,1,3
)
μ΄κ²μ μλ―Έν©λλ€
max-wait
μ²λΌ).μ΄λ κ² νλ©΄ νμ΄ν μ§μ°μ μ΅μν(λ μ μ°½νκ² λ§λ€κΈ°)νλ κ²κ³Ό κ°μ΄ λ Ήμμ μκ° νλ¦μ μ’ λ μ‘°μ ν μ μμΌλ©° μ¬μ ν μ§§κ³ κΈ΄ μΌμ μ€μ§(λκ°λ₯Ό μ§μ νκΈ° μν΄)λ₯Ό ν μ μμ΅λλ€.
μ΄ κΈ°λ₯μ λν΄ μ΄λ»κ² μκ°νμΈμ? μ΄λ ΅μ§ μκ³ μ€μ²ν μ μμ κ² κ°μμ.
@sickill μ΄μ λν μκ²¬μ΄ μμ΅λκΉ?
ν₯λ―Έλ‘μ΄ μμ΄λμ΄λ€μ. λλ μ΄κ²μ΄ λ§€μ° μ μ μμ μ¬μ©μμκ² μ¬μ©λ κ²μ΄λΌκ³ μκ°ν©λλ€. -w
λ μ΄λ―Έ λ§€μ° μ μ©νμ§λ§ λ§μ μ¬λλ€μ΄ μ¬μ©νμ§ μλ κ²μΌλ‘ μκ³ μμ΅λλ€. μ¬λλ€μ κΈ°λ³Έκ°μ μ¬μ©ν©λλ€.
μ λ μ¬κΈ° μΈν리μ μμ΅λλ€... ννΈμΌλ‘λ μ΄ μμ΄λμ΄κ° μ λ§ λ§μμ λ€κ³ , λ€λ₯Έ ννΈμΌλ‘λ μλΉν μμ μ½λ, μ¬μ©μμ 1%μ λν΄ μ μ§ κ΄λ¦¬ν΄μΌ νλ μ½λκ° μΆκ°λλ€λ κ²μ μκ³ μμ΅λλ€. μ¬κΈ°μ 견μ μ κ΄ν΄μλ ;))
μ΄κ²μ μ΄λ»μ΅λκΉ?
λλ ascicastsλ₯Ό μ²λ¦¬νκΈ° μν λ³λμ λꡬ μΈνΈλ₯Ό λ§λ€λ €λ μμ΄λμ΄λ₯Ό νλμ κ°μ§κ³ μμμ΅λλ€. μλλ₯Ό 2λ°° λμ΄κ³ , μ΄λ―Έ λ
Ήμλ ASCIIcast νμΌμ -w
μκ³ λ¦¬μ¦μ μ μ©νκ³ , μμμ ν
μ€νΈ(λΉλ°λ²νΈ νμ) μ°ΎκΈ°+μ§μ°κΈ°μ κ°μ μμ
μ μνν©λλ€.
μ°λ¦¬λ μ¬λΆ λͺ
λ Ήμ μΆκ°νκΈ°μν λ©μ»€λμ¦μ κ°μ§ μ asciinema
κ°μ λ°©μμΌλ‘ μν, git
- μ€νν λ asciinema foo
μ΄ κ²μ¬λ₯Όνλ κ²½μ° foo
μμ¬μ λ΄λΆ λͺ
λ Ήμ΄ μμΌλ©΄ $PATH
μμ asciinema-foo
λ°μ΄λ리λ₯Ό μ°Ύμ λμ μ€νν©λλ€. λͺ¨λ μΈμ΄λ‘ μΆκ° λͺ
λ Ήμ μμ±ν μ μμ΅λλ€.
μμ κ°μ΄ asciinema-quantize
λλ λ³΄λ€ μΌλ°μ μΈ asciinema-process
λ₯Ό λ§λ€ μ μμ΅λλ€. μ΄λ λ€μν μ€μμΉλ₯Ό μ§μν μ μμ΅λλ€(μ: ν₯μλ -w
, μλ§λ -s
μλ λ³κ²½ μ 체 λ
Ήμ). μ
λ ₯ jsonμ μ½κ³ μ΅μ
μ λ°λΌ μ²λ¦¬νκ³ μΆλ ₯ jsonμ μμ±ν©λλ€. μΈκΈ° μλ λͺ
λ ΉμΈ κ²½μ° λ΄λΆ λͺ
λ ΉμΌλ‘ μΉκ²©λ μ μμ΅λλ€(λλ asciinema-*
λ°μ΄λλ¦¬λ‘ asciinema ν¨ν€μ§λ‘ μ 곡λ¨).
λλ λ€λ₯Έ μ μμ μ΄λ € μμ΅λλ€!
μ¬μ€ λλ κ°μ μκ°μ νκ³ μμλ€. μΈλΆμμ νλ κ², λ μ½λ json νμΌμ μ²λ¦¬νλ κ²λΏμ΄λ€. λ€λ₯Έ νλλ λ΄κ° μ§κΈ λ°λμ λ°°μΈ μκ°μ΄ λ§μ§ μλ€λ κ²μ λλ€. νμ§λ§ μ΄ μΈλΆ λͺ λ Ή ν΅ν©μ΄ κ·μΉμ λ°λΌ λͺ λͺ λ μ€ν νμΌκ³Ό ν¨κ» μλνλ©΄ asciinemaλ₯Ό ν¨μ¬ μ½κ² νμ₯ν μ μμ΅λλ€.
Btw, λλ λΉμ μ΄ μμ£Ό μ μ©νκ³ μλνλ asciinema2gif μ λν΄ μκ³ μλ€κ³ μκ°ν©λλ€. μ¬κΈ°μμ gif λ³νμ λν λͺ κ°μ§ ν λ‘ μ 보μκ³ κ³νμ ν¬ν¨λμ§ μμμΌλ©° μλ²½νκ² μ΄ν΄νμ§λ§ μ¬μ ν μ¬μ©μμ μꡬ μ¬νμ΄ λ€λ₯Ό μ μμΌλ―λ‘ μ΄λ¬ν νμ₯μ±μ μ¬μ©μκ° νΉμ μꡬ μ¬νμ μ€μ€λ‘ μΆ©μ‘±ν μ μλλ‘ νλ λ§€μ° μ’μ λ°©λ²μ΄ λ μ μμ΅λλ€.
λΉμ·ν μ견μ λ£κ² λμ΄ κΈ°μ©λλ€. νμ΄μ¬μ΄ λ μ΅μν©λκΉ? μ΄κ²μ ꡬνν μΈμ΄λ 무μμ λκΉ?
@sickill κΈμ, μ€μ λ‘ λλ μ§κΈκΉμ§ λͺ κ°μ§ κΈ°λ³Έ νν°μ ν¨κ» jq λ₯Ό μ¬μ©νκ³ μμμ΅λλ€. μλ₯Ό λ€μ΄:
jq '.stdout |= map(.[0] *= 0.5)' record.json > record.twice-faster.json
asciinema play
λ λ°° λ λΉ λ₯΄κ² μ¬μλλ jsonμ μμ±ν©λλ€. λλ
jq '.stdout |= map(.[0] |= ([., 1.234] | min))' record.json > record.cut.json
max-wait
time μ 1.234
λ‘ μ€μ νλ κ²κ³Ό κ°μ΅λλ€. λλ jq-guruκ° μλλ―λ‘ λ μ½κ² ν μ μμ§λ§ μ΄κ²μ λ§€μ° κ°λ¨νλ©°(μΌλ°μ μΌλ‘ jqμ μ΅μνλ€λ©΄) μλν©λλ€. μ μλ μκ° μμν κΈ°λ₯μ μ΄λ° λ°©μμΌλ‘ ꡬννλ κ²μ μ’ λ 볡μ‘νμ§λ§ κ°λ¨ν©λλ€.
λ¬Όλ‘ μ΄κ²μ μ§μ λ μ΅μ μ΄ μλ λͺ¨λ μ’ λ₯μ μ Έ μ€ν¬λ¦½νΈλ‘ λνλ μ μμ΅λλ€. κ·Έλ¬λ λ λ§μ ν΅ν©μ μνλ©΄ Python λ° Goλ₯Ό λΉλ‘―ν λ€μν ꡬν μ΄ μλ JMESPathλ₯Ό μ¬μ©νμ¬
μλ νμΈμ @laughedelic ,
λλ λΉμ κ³Ό κ±°μ κ°μ μꡬ μ¬νμ κ°μ§κ³ μμκΈ° λλ¬Έμ μ΄κ²μ https://github.com/cirocosta/asciinema-edit λ§λ€μμ΅λλ€.
κ·Έκ²μ asciinema μΊμ€νΈ(v2)λ₯Ό μ·¨ν λ€μ νμν κ²μ λ°λΌ μ΄λ²€νΈ μ€νΈλ¦Όμ λ³κ²½ν©λλ€.
λ°©κΈ μ€λͺ ν λ°©μμΌλ‘ μμν μΆκ°λ₯Ό μλ£νμ΅λλ€. btw π
κ·Έκ²μ΄ λΉμ μκ² μ μ©νκΈ°λ₯Ό λ°λλλ€!
κ³ λ§μ!
μλ νμΈμ @cirocostaμ λλ€! νν΄μ€μ κ³ λ§μ! λΉμ μ΄ κ·Έκ²μ λκ΅¬λ‘ λ§λ€κ³ v2 νμκ³Ό ν¨κ» μλνλ€λ κ²μ΄ λλ¨ν©λλ€. λ€μμ asciinema μΊμ€νΈλ₯Ό λ Ήμν λ μλν΄ λ³΄κ² μ΅λλ€.
κ°μ₯ μ μ©ν λκΈ
μλ νμΈμ @laughedelic ,
λλ λΉμ κ³Ό κ±°μ κ°μ μꡬ μ¬νμ κ°μ§κ³ μμκΈ° λλ¬Έμ μ΄κ²μ https://github.com/cirocosta/asciinema-edit λ§λ€μμ΅λλ€.
κ·Έκ²μ asciinema μΊμ€νΈ(v2)λ₯Ό μ·¨ν λ€μ νμν κ²μ λ°λΌ μ΄λ²€νΈ μ€νΈλ¦Όμ λ³κ²½ν©λλ€.
λ°©κΈ μ€λͺ ν λ°©μμΌλ‘ μμν μΆκ°λ₯Ό μλ£νμ΅λλ€. btw π
κ·Έκ²μ΄ λΉμ μκ² μ μ©νκΈ°λ₯Ό λ°λλλ€!
κ³ λ§μ!