π κΈ°λ³Έ μλ΄
- λͺ¨λλ³ μ μ₯: λ‘컬μ λΈλΌμ°μ
localStorage μ€μ¬μΌλ‘ λμνκ³ , ν΄λΌμ°λλ λΌμ΄μ μ€λ³ μλ² JSON νμΌμ μ¬μλͺ©λ‘κ³Ό μμ²κΈ°λ‘μ μ μ₯ν©λλ€.
- λ§ν¬ μΆκ°: λ‘컬μ μλ²κ° λ§ν¬λ§ ν΄μν λ€ ν΄λΌμ΄μΈνΈκ° λͺ©λ‘μ λ°μνκ³ , ν΄λΌμ°λλ κ°μ νλ μ΄μ΄ UIλ₯Ό μ°λ μλ² JSON μ μ₯μμ λ°λ‘ λ°μν©λλ€.
- λͺ©λ‘ κ΄λ¦¬: λλκ·Έ μ¬μ λ ¬, νμ¬ νλͺ© κ°μ‘°, μμ ν λ€μ μ¬μ, μμ²κΈ°λ‘ 볡μ / μμ , κ²μ νν°κ° λ€μ΄ μμ΅λλ€.
- λκΈ°ν: κ°μ λΈλΌμ°μ λ΄ λ€λ₯Έ μ°½κ³Όλ
BroadcastChannelκ³Ό playlistSyncTickμ κ°μ΄ μ¨μ λͺ©λ‘ λ³κ²½μ λ§μΆ₯λλ€.
- νλ μ΄μ΄ μ μ΄: μν¬ ν μ μ₯ μ¬κ°, μ’
λ£ μ μλ λ€μ μ¬μ νλ¦μ΄ λ¬Άμ¬ μμ΅λλ€.
β¨οΈ λ¨μΆν€
S / Space: μ¬μ / μΌμμ μ§μ
λλ€. λͺ©λ‘ νλͺ© μμ λ§μ°μ€λ₯Ό μ¬λ¦° μνμμ Sλ κ·Έ νλͺ©μ λ°λ‘ μ¬μν©λλ€.
Q / E: μ΄μ μμ / λ€μ μμμΌλ‘ μ΄λν©λλ€.
A / D: 5μ΄ λ€λ‘ / μμΌλ‘ μ΄λνκ³ , Shift+A / Shift+Dλ 30μ΄ λ¨μλ‘ μ΄λν©λλ€.
0~9: μμ μ 체 κΈΈμ΄ κΈ°μ€ 0%~90% μ§μ μΌλ‘ μ ννκ³ , `λ μ ν μ μμΉλ‘ λλ립λλ€.
V / Shift+V: ν΄λ¦½λ³΄λ μΌλ° μΆκ° / μ¬μλͺ©λ‘ μ 체 μΆκ°μ
λλ€.
X / Shift+X: νμ¬ μμ λ§ν¬ λ³΅μ¬ / νμ¬ μκ° ν¬ν¨ λ§ν¬ 볡μ¬μ
λλ€.
C / Shift+C: λκΈ μ°½ μ΄κΈ° / μΌμμ μ§ ν λκΈ μ°½ μ΄κΈ°μ
λλ€.
W / F: Wλ μμ²κΈ°λ‘ ν κΈ, Fλ νμ¬ νλͺ© μμ ν λ€μ μ¬μμ
λλ€.
- λͺ©λ‘ hover: νλͺ© μμ λ§μ°μ€λ₯Ό μ¬λ € λ μνμμ
S, X, C, Dλ‘ ν΄λΉ νλͺ© μ¬μ / λ§ν¬λ³΅μ¬ / λκΈ / μμ λ₯Ό λ°λ‘ μ€νν μ μμ΅λλ€.
- μμ²κΈ°λ‘ hover: μμ²κΈ°λ‘ νλͺ© μμμ
Rμ λλ₯΄λ©΄ 볡μν©λλ€. κ²μμ°½μμλ Shift+Backspaceλ‘ κ²μμ΄λ₯Ό ν λ²μ λΉμλλ€.
π λͺ¨λ / 쿼리
?mode=local: μ§κΈ μ°μλ νλ μ΄μ΄ 본체λ₯Ό μ½λλ€. νλ μ΄μ΄ κ΄λ ¨ μ€ν¬λ¦½νΈμ λͺ©λ‘ UIλ μ΄ λͺ¨λμμλ§ μ¬λΌμ΅λλ€.
?mode=cloud: ν΄λΌμ°λ μ μ© μ£Όμμ
λλ€. μ μ₯λ λ‘κ·ΈμΈ μΏ ν€κ° μ ν¨νλ©΄ κ°μ νλ μ΄μ΄ 본체λ₯Ό μ΄κ³ , μ μ₯κ³Ό λΆλ¬μ€κΈ°λ₯Ό μλ² JSON κΈ°μ€μΌλ‘ μ²λ¦¬ν©λλ€.
- ν΄λΌμ°λ λ‘κ·ΈμΈ μΏ ν€: ν΄λΌμ°λ λ²νΌμΌλ‘ λΌμ΄μ μ€ νμΈμ΄ λλλ©΄ HttpOnly μΏ ν€μ μ μ₯λκ³ , λ€μλΆν°λ
?mode=cloud μ£Όμλ§μΌλ‘ κ°μ μ μ₯μμ λ°λ‘ μ°κ²°λ©λλ€.
- μλ¨ μ λͺ© / μμΈν: νλΈ νλ©΄μμλ§ λ³΄μ΄κ³ , λ‘컬 νλ μ΄μ΄ λ³Έμ²΄λ‘ λ€μ΄κ°λ©΄ μ¨κΉλλ€.