์ด๊ฒ์ Ubuntu Online, Fedora Online, Windows ์จ๋ผ์ธ ์๋ฎฌ๋ ์ดํฐ ๋๋ MAC OS ์จ๋ผ์ธ ์๋ฎฌ๋ ์ดํฐ์ ๊ฐ์ ์ฌ๋ฌ ๋ฌด๋ฃ ์จ๋ผ์ธ ์ํฌ์คํ ์ด์ ์ค ํ๋๋ฅผ ์ฌ์ฉํ์ฌ OnWorks ๋ฌด๋ฃ ํธ์คํ ๊ณต๊ธ์์์ ์คํํ ์ ์๋ ๋ช ๋ น midge์ ๋๋ค.
ํ๋ก๊ทธ๋จ:
์ด๋ฆ
midge - ์์ ์ ํ ์คํธ ์ค๋ช ์์ ๋ฏธ๋ ํ์ผ ์์ฑ
๊ฐ์
์์ ๊ณค์ถฉ [์ต์ ] [ํ์ผ๋ช ]
๊ธฐ์
์์ ๊ณค์ถฉ ์์ ์ ํ ์คํธ ์ค๋ช ์์ ์ ํ 1 ๋ฏธ๋ ํ์ผ์ ์์ฑํฉ๋๋ค. ์์ ๊ณค์ถฉ ๊ฐ์ ธ๊ฐ๋ค
๊ทธ๋ ์ง ์์ผ๋ฉด stdin์์ ์ ๋ ฅ ํ์ผ ์ด๋ฆ ์ด ์ง์ ๋ฉ๋๋ค.
์ต์
-h or --๋์
๋์๋ง ํ ์คํธ๋ฅผ ํ์ํฉ๋๋ค.
--๋ฒ์ญ or --๋ณด์ฆ ๋๋ --about
๋ฒ์ ๋ฐ ๋ผ์ด์ ์ค ์ ๋ณด๋ฅผ ํ์ํฉ๋๋ค.
-v or --๋ง ์๊ฐ ๋ง์
์์ธ ์ถ๋ ฅ์ stdout์ผ๋ก ์ธ์ํฉ๋๋ค.
-d or -๋๋ฒ๊ทธ
๋๋ฒ๊น ์ถ๋ ฅ์ stdout์ผ๋ก ์ธ์ํฉ๋๋ค(์์ธํ ์ ๋ณด ํ์ ๋ชจ๋๋ฅผ ์๋์ผ๋ก ์ค์ ํจ).
-q or --์กฐ์ฉํ
์กฐ์ฉํ. ํ์ค ์ถ๋ ฅ์ด ์์ต๋๋ค.
-o ํ์ผ or --์์ํ์ผ ํ์ผ
๋ฏธ๋ ์ถ๋ ฅ ํ์ผ. ๊ทธ๋ ์ง ์์ผ๋ฉด a.out.mid
-c or --ํ์ธํ๋ค
์ ๋ ฅ๋ง ํ์ธํ์ญ์์ค. ๋ฏธ๋ ์ถ๋ ฅ์ด ์์ต๋๋ค.
-u or --ํ๋ฆฐ ๋ฃจํ
ํ์ฑํ๊ธฐ ์ ์ ๋ชจ๋ ๋ฐ๋ณต ๋ธ๋ก์ ํ๊ณ ํ๋ฆฐ ์์ค ์ฝ๋๋ฅผ
์ ํ์ผ(*.long.mg). ํ์ํ ๊ฒฝ์ฐ ์๋์ผ๋ก ์ค์ ํด์ผ ํฉ๋๋ค.
-U or --๋ ธ-์ธ๋กค-์ ์ฅ
์ธ๋กค๋ง๋ ์์ค๋ฅผ ํ์ผ์ ์ ์ฅํ์ง ๋ง์ญ์์ค.
-R or --์ฌ์ค์ ์์
ํธ๋ ์์ ๋ถ๋ถ์ '๋ชจ๋ ์ปจํธ๋กค๋ฌ ์ฌ์ค์ ' ์ด๋ฒคํธ๋ฅผ ์ฝ์ ํ์ง ๋ง์ธ์.
-t BPM or --์๋ BPM
ํ ํฌ ์ค์ BPM ๋ถ๋น ๋นํธ, ์ ๋ ฅ ํ์ผ์ ์ค์ ๋ ๊ฐ๋ณด๋ค ์ฐ์ ํฉ๋๋ค.
-b ๋จ๊ณ or --๊ตฝํ ๋จ๊ณ ๋จ๊ณ
๋จ์ ๋ฒค๋ ๊ตฌ๋ฌธ์ ๋ํ XNUMX๋ถ์ํ๋น ๋จ๊ณ ์๋ฅผ ์ค์ ํฉ๋๋ค.
--์ํํ
๋ค์์์ Perl ์ฝ๋๋ฅผ ์คํํ๊ธฐ ์ํด Safe.pm์ ์ฌ์ฉํ์ง ๋ง์ญ์์ค. %ํ๊ฐ ๋ธ๋ก.
-s ๋ฒํธ or --์จ์ ๋ฒํธ
๋ฒํธ ๋์ ์์ฑ๊ธฐ์ ์๋๋ก.
-S [๊ท๋ชจ [๋ฟ๋ฆฌ]] or --์ผ ๊ท๋ชจ [๊ท๋ชจ [๋ฟ๋ฆฌ]]
๋ฉ๋ชจ ๋์ด ๊ท๋ชจ ~๋ถํฐ ์์ ๋ฟ๋ฆฌ. ๋ฉด ๋ฟ๋ฆฌ ์๋ต๋ ๊ฒฝ์ฐ c4๊ฐ ์ฌ์ฉ๋ฉ๋๋ค. ๋ง์ฝ์ ๊ท๋ชจ is
์๋ตํ๋ฉด ์ง์๋๋ ์ฒ๋ ๋ชฉ๋ก์ด ํ์๋ฉ๋๋ค.
-I ํต๋ก or --ํฌํจํ๋ค ํต๋ก
์ถ๊ฐ ํต๋ก ๊ฒฝ๋ก๋ฅผ ํฌํจํฉ๋๋ค. ์ฌ๋ฌ ๋ฒ ์ง์ ํ๊ฑฐ๋ ํต๋ก ๋ชฉ๋ก์ด ๋ ์ ์์ต๋๋ค
์ฝ๋ก ๋๋ ์ผํ๋ก ๊ตฌ๋ถ๋ฉ๋๋ค.
์ ๋ ฅ ์ธ์ด
E ์๊ณ๋ฅผ ์ฐ์ฃผํ๋ ์ํ ์์ค ํ์ผ์ ๋๋ค.
================ ํ์ผ ์์ ======================
# ์ด ์ค์ ์ฃผ์์ ๋๋ค
@๋จธ๋ฆฌ { # ์ ํํ 1๊ฐ์ @head ์น์ ์ด ์์ด์ผ ํฉ๋๋ค.
# ๋ฐ์ํ ์ค์
$time_sig 4/4
# BPM์์ ํ ํฌ ์ค์
$ํ ํฌ 120
} # @head ์น์ ๋
@๋ชธ { # ์ ํํ 1๊ฐ์ @body ์น์ ์ด ์์ด์ผ ํฉ๋๋ค.
# ์ฑ๋ 1์์ ์์ ํธ๋ ์์
# ์ฌ๋ฌ ํธ๋์ด ๋์ผํ ์ฑ๋์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
@์ฑ๋ ์ผ {
# ์ผ๋ ํธ๋ฆญ ๋ฒ ์ด์ค์ ํจ์น ์ค์
$ํจ์น 34
# ๋ ธํธ. ์ค๋ช ์ ์๋๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
/l4/e3 # ์ธ ๋ฒ์งธ ์ฅํ๋ธ์ XNUMX๋ถ ์ํ e
f+ # f ์คํ ๊ฐ์ ์ฅํ๋ธ ๊ฐ์ ๊ธธ์ด
# ์ฌ์ฉ `-' ํ๋ซ
g+ ab # ๋๋จธ์ง ์ํ
c+4 d+ e # c์์ ์ฅํ๋ธ ๋ณ๊ฒฝ
} # ํธ๋ ๋
} # @body ์น์ ์ ๋
====================== ํ์ผ ์ข ๋ฃ========================
์์นด์ด๋ธ์ examples/ ๋๋ ํ ๋ฆฌ์ ๋ ๋ง์ ์์ ๊ฐ ํฌํจ๋์ด ์์ต๋๋ค.
๋ค์์์, ๋ ํ์ ๋งค๊ฐ๋ณ์์ด๊ณ [name]์ ์ ํ์ ๋งค๊ฐ๋ณ์์ ๋๋ค.
๋ ธํธ.
๋ฉ๋ชจ์ ํ์์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. [/์ต์ /]<name>[+|-][์ฅํ๋ธ]
XNUMXD๋ดํ์ /์ต์ / ์น์ ์๋ ๋ค์์ด ํฌํจ๋ ์ ์์ต๋๋ค.
l[๋ถ์:]
์ํ์ ๊ธธ์ด๋ฅผ (๋ถ์ ๋๋ XNUMX)๋ก ๋๋ ๊ฐ ๋ถ๋ชจ. ์ฆ. l4 = ์ฟผํฐ
์ํ, l1 = ์จ์ํ, l3:4 = 3/4 ์ํ(3๋ถ์ํ ๋ฌถ์). ๋๋ฌธ์ `L' ์๋ง๋
๋์ `1'๊ณผ ๊ตฌ๋ณํ๊ธฐ ์ํด ์ฌ์ฉ๋ฉ๋๋ค.
r
๋ฉ๋ชจ๋ฅผ ๋ฐ๋ณตํ ํ์๋ฅผ ์ค์ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด
/l8r16 /
์ ๊ธธ์ด๋ฅผ 1/8๋ก ๋ง๋ค๊ณ ์ํ๋ฅผ 16๋ฒ ๋ฐ๋ณตํฉ๋๋ค.
a
๋ฒจ๋ก์ํฐ(์ดํ)์ ๋ ธํธ์ ๋ ธํธ๋ฅผ ์ค์ ํฉ๋๋ค.
d
๋ ธํธ์ ๋ ธํธ ์คํ ๋ฒจ๋ก์ํฐ ์ค์ (๋์ผ์ด)
z[+|-] [%]
๋ค์๊ณผ ๊ฐ์ด ๋ฉ๋ชจ๋ฅผ ์คํ์ ํฉ๋๋ค. ๋ฒํธ ๋ฏธ๋ ํด๋ฆญ. ์์ ๊ฐ์ ์์ ๋ฆ๊ฒ ์ฐ์ฃผํ๊ณ ์์
๊ฐ์น๋ ๊ทธ๊ฒ์ ์ผ์ฐ ์ฌ์ํฉ๋๋ค. ๋ง์ฝ์ ๋ฒํธ ๋ค์ `%ยด ๋ฌธ์๋ ๋ฐฑ๋ถ์จ๋ก ํ์๋ฉ๋๋ค.
ํ์ฌ ์ํ ๊ธธ์ด์ ์คํ์ ๊ฐ์ ์ง์ ํ์ ๋ฉ๋ชจ์ ์ํด ์์๋ฉ๋๋ค.
Z[+|-] [%]
์์ ๊ฐ์ด `zยด ์ต์ ์ด์ง๋ง ์์์ ๊ฐ์ด ์ฌ์ฉ๋ฉ๋๋ค. ๋ง์ฝ์ ๋ฒํธ ์์ ๋๋ ์์
(๋ํ๊ธฐ ๊ธฐํธ ํ์), XNUMX๊ณผ ์ฌ์ด์ ๊ฐ ๋ฒํธ ์ฌ์ฉ. ํ์๊ฐ ์์ผ๋ฉด a
ํ๋ฌ์ค์ ๋ง์ด๋์ค ์ฌ์ด์ ๊ฐ ๋ฒํธ ์ฌ์ฉ.
์คํ์ ์ต์ ์ r๋ ธํธ ์ต์ ์ ๋ฐ๋ณตํ์ง๋ง ๋์ผํ ํจ๊ณผ๋ฅผ ๋ผ ์ ์์ต๋๋ค.
๋ฅผ ์ฌ์ฉํ์ฌ ๋ฌ์ฑ %๋ฐ๋ณตํ๋ค ๋ธ๋ก.
์ผํ๊ฐ ์ ํ๋์ง ์๋ ํ ์ํ๋ ๋ค๋ก ์คํ์ (์ฆ, ์ผ์ฐ ์ฐ์ฃผ)๋ ์ ์์ต๋๋ค. ์๊ฒ
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ค๋ฉด ๋ค์์ ์ถ๊ฐํ์ต๋๋ค. $๋จ์ถ ์๋์ ์ค๋ช ๋ ํค์๋. ๋ํ๋ณด์ญ์์ค $unQuantize.
name ์ฆ ๋ ธํธ์ ์ด๋ฆ์ ๋๋ค. [ag] ํ์.
+ ๋ ์นด๋ก์ด.
- ํ๋ซ.
์ฅํ๋ธ ์ฆ ๋ฏธ๋ ์ฅํ๋ธ์ ๋๋ค. [1-11]. ๋๋ถ๋ถ์ ๋ฏธ๋ ์ํํธ์จ์ด๋ ๊ฐ์ฅ ๋ฎ์ ๊ฐ์ผ๋ก 0์ ์ฌ์ฉํ์ง๋ง
์ฅํ๋ธ, ๋ฏธ๋ ์ฑ๋ ๋ฐ ์ ๊ธฐ ์ด๋ฆ๊ณผ์ ์ผ๊ด์ฑ์ ์ํด 1์ ์ฌ์ฉํ์ต๋๋ค.
๋ ๋ค 1๋ถํฐ ๊ณ์ฐํฉ๋๋ค.
์ง์ ํ์ง ์์ผ๋ฉด ๊ธธ์ด, ์ฅํ๋ธ, ์ดํ ๋ฐ ๊ฐ์ ๊ฐ ์ด์ ์์ ์์๋ฉ๋๋ค.
๋ ธํธ.
๋๋ผ ํธ๋์์๋ ์ํ ์ด๋ฆ ๋์ ๋ณ์นญ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด,
` ๋์ ํ์ดํ์ ์ฝ๋๋ค.์ํ+3'๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.ใ ใ ใ '. ์ ์ฒด ๋ชฉ๋ก์ README.drums๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
๋ณ์นญ.
์ฌ๋ค.
๋๋จธ์ง๋ ๋ฉ๋ชจ๋ก ์์ฑ `r', ์ ํจ๊ป /์ต์ / ๋ ธํธ์ ๋์ผํ์ง๋ง
๊ธธ์ด ๋ฐ ๋ฐ๋ณต ์ต์ ์ด ์ฌ์ฉ๋์์ต๋๋ค. ๊ธธ์ด ๊ฐ์ ์์์ ์ผํ๋ก ์์๋๊ณ ๊ทธ ๋ฐ๋๋ก
๋ฐ๋๋ก
๋ฐ.
ํ์ดํ ๊ธฐํธ(`|')๋ฅผ ์ฌ์ฉํ์ฌ ๋ง๋๋ฅผ ๋ํ๋ผ ์ ์์ต๋๋ค. ๋ง๋์ ๊ธธ์ด๋ ํ์ธ๋์ง ์์ต๋๋ค.
์ด๋ ๋ ์ฝ๊ธฐ ์ฌ์ด ์์ค ํ์ผ์ ํ์ฉํ๊ธฐ ์ํ ๊ฒ์ ๋๋ค. ๋ง๋๋ ๋ค์์ ์ถ๊ฐํ์ฌ ๋ฒํธ๋ฅผ ๋งค๊ธธ ์ ์์ต๋๋ค.
ํ์ดํ ๊ธฐํธ์ ์ซ์. ๋ฐ์ค๋ก ๊ตฌ๋ถํ ์ ์์ง๋ง ๊ณต๋ฐฑ์ผ๋ก๋ ๊ตฌ๋ถํ ์ ์์ต๋๋ค.
๊ฐ๋จํ ๋ง๋ ์: | cdef | ๊ฐ๋ธ
๋ฒํธ๊ฐ ๋งค๊ฒจ์ง ๋ง๋ ์: |1 cdef |2 gabc
|_1 cdef |_2 gabc
๋ง๋์ ์ผ๊ด์ฑ์ ๋ค์์ ์ฌ์ฉํ์ฌ ํ์ธํ ์ ์์ต๋๋ค. $bar_strict ํค์๋ @๋จธ๋ฆฌ
๋ถ๋ถ. ๋ชจ๋ ํธ๋์ ๋ง๋ ์๊ฐ ๋์ผํ์ง ์์ผ๋ฉด ์ค๋ฅ ๋๋ ๊ฒฝ๊ณ ๊ฐ ํ์๋๋ฉฐ
๋ฒํธ๊ฐ ๋งค๊ฒจ์ง ๋ง๋๊ฐ ๊ฐ ํธ๋์ ๋์์ ๋ํ๋ฉ๋๋ค.
$bar_strict ๊ฒฝ๊ณ # ์ผ๊ด๋์ง ์์ ๋ง๋์ ๋ํ ๊ฒฝ๊ณ ๋ฉ์์ง๋ฅผ ์ธ์ํฉ๋๋ค.
$bar_strict ์ค๋ฅ # ์ผ์นํ์ง ์๋ ๋ง๋์ ๋ํ ์ค๋ฅ ๋ฉ์์ง์ ํจ๊ป ์ข ๋ฃํฉ๋๋ค.
์ต์์ ํค์๋.
@๋จธ๋ฆฌ { ์ฝํ ์ธ }
์ ํํ ํ๋ ์์ด์ผ ํฉ๋๋ค. @๋จธ๋ฆฌ ๋ถ๋ถ. ์ ๋ํ ์ค๋ช ์ ์๋ ์ฐธ์กฐ ํจ์ ๋.
@๋ชธ { ์ฝํ ์ธ }
์ ํํ ํ๋ ์์ด์ผ ํฉ๋๋ค. @๋ชธ ๋ถ๋ถ. ์ ๋ํ ์ค๋ช ์ ์๋ ์ฐธ์กฐ ํจ์ ๋.
์ ํค์๋ @๋จธ๋ฆฌ ์๋ด
$time_sig
XNUMXD๋ดํ์ b ๊ฐ์ 4, 8, 16, 32, 64 ์ค ํ๋์ฌ์ผ ํฉ๋๋ค.
$ํ ํฌ
t BPM์ ํ ํฌ์ ๋๋ค.
๋ชจ๋ $time_sig ๊ณผ $ํ ํฌ @channel ๋ธ๋ก ๋ด์์๋ ํ์ฉ๋ฉ๋๋ค(์๋ ์ค๋ช ์ฐธ์กฐ).
$์ ๋ชฉ
๋ ธ๋ ์ ๋ชฉ์ ๋ก ์ค์ ์ ๋ชฉ. ๋ฉด ์ ๋ชฉ ์ด์ค ๋ด๋ถ์ ๊ณต๋ฐฑ์ด ์์ด์ผ ํฉ๋๋ค.
์ธ์ฉ ๋ถํธ.
$ํด์๋
XNUMX๋ถ ์ํ๋น ๋ฏธ๋ ํด๋ฆญ ์๋ฅผ ๋ค์์ผ๋ก ์ค์ ํฉ๋๋ค. n. ๊ธฐ๋ณธ๊ฐ์ 96์ ๋๋ค.
์ ํค์๋ @๋ชธ ์๋ด
%์ ์ํ๋ค { ๋ ธํธ }
์ํ์ค ์ ์ ๋ ธํธ, ํ ๋น name ์์ ํธ๋์์ ๋ถ๋ฌ์ฌ ์ ์์ต๋๋ค. ํ์ ๋
์ํ์ค๋ ๋ค์์ ํฌํจํ์ฌ ์ฌ์ฉ๋ฉ๋๋ค.
~[/๋ฐ๊พธ์ด ๋๋ค/]
์ํ์ค๋ฅผ ํฌํจํ๋ ํธ๋ ๋ด name, ์ ์ํด ์ ์น๋จ ๋ฐ๊พธ์ด ๋๋ค ๋ฐ์. ์ด์ ์
์ ์๋ ์ํ์ค๋ ๋ค์์์ ์ฌ์ฉํ ์ ์์ต๋๋ค. %์ ์ํ๋ค ๋ธ๋ก. ์๋ฅผ ๋ค์ด:
%์ ์ํ๋ค a_riff { a3 a c4 d }
%์ ์ํ๋ค d_riff { d4 dfg }
%์ ์ํ๋ค ๋ฉ์ธ_๋ฆฌํ { ~a_riff ~d_riff }
์ฒซ ๋ฒ์งธ ๋ฆฌํ๋ฅผ ์กฐ์ฎ๊นํ์ฌ ๋์ผํ ๊ฒฐ๊ณผ๋ฅผ ์ป์ ์ ์์ง๋ง
๋์งธ:
%์ ์ํ๋ค a_riff { a3 a c4 d }
%์ ์ํ๋ค ๋ฉ์ธ_๋ฆฌํ { ~a_riff ~a_riff/ 5 / }
๋ฐํ๋ค ๋ธ๋ก์๋ ๋ฐ๋ณต ๋ธ๋ก, ๋ฒค๋ ๋ธ๋ก ๋ฐ $volume/patch/reverb ๋ฑ์ด ํฌํจ๋ ์๋ ์์ต๋๋ค.
@์ฑ๋ [์ด๋ฆ] { ๋ด์ฉ }
์ฑ๋์์ ๋ฏธ๋ ํธ๋ ์์ ๋ฒํธ, ์ ํ์ ์ผ๋ก ๊ณ์ธก๊ธฐ ์ด๋ฆ์ ๋ค์์ผ๋ก ์ค์ name. ๋ฉด
name ํฐ๋ฐ์ดํ ์์ ๊ณต๋ฐฑ์ด ์์ด์ผ ํฉ๋๋ค.
ํจ์ ๋ ์ํ, ์ผํ, ์ด์ ์ ์ ์๋ ์ํ์ค ๋ฐ ๋ค์์ ํฌํจํ ์ ์์ต๋๋ค.
ํค์๋ :
$time_sig
๋ ธ๋์ ๋ฐ์๋ฅผ ๋ณ๊ฒฝํฉ๋๋ค(๋ชจ๋ ํธ๋์ ์ํฅ์ ๋ฏธ์นจ). ๊ทธ๋งํผ b ๊ฐ์ ๋ค์ ์ค ํ๋์ฌ์ผ ํฉ๋๋ค.
4, 8, 16, 32, 64.
$ํ ํฌ
๋ ธ๋ ํ ํฌ๋ฅผ ๋ณ๊ฒฝํฉ๋๋ค(๋ชจ๋ ํธ๋์ ์ํฅ์ ๋ฏธ์นจ). t BPM์ ์์ต๋๋ค.
$ํจ์น [[bank_LSB,]bank_MSB,]
์ด ์ฑ๋์ ํจ์น ๋ฒํธ๋ฅผ ๋ค์์ผ๋ก ์ค์ ๋ฒํธ or name. ์ด๋์ ๋ฒํธ 1์์ 128๊น์ง์ด๊ณ
name README.patches์ ์ ์๋ ๋ณ์นญ์ ๋๋ค. ์ ํ์ ์ผ๋ก ์ํ ๋ฒํธ๋ฅผ ์ ํํ์ญ์์ค ์ํ_MSB.
์ ํ์ ์ผ๋ก ์ํ LSB ๋ฒํธ ์ ํ ์ํ_LSB (์ธ๋ถ ๋ฏธ๋ ํค๋ณด๋์ ์ฌ์ฉ). ๊ฐ ๊ฐ
1-128 ๋ฒ์์ ์์ด์ผ ํฉ๋๋ค.
$์ํ [LSB,]
์ํ ๋ฒํธ ์ ํ MSB. ์ ํ์ ์ผ๋ก LSB ๊ฐ ์ค์ (์ธ๋ถ ๋ฏธ๋์ ์ฌ์ฉ๋จ)
ํค๋ณด๋)์ LSB. ๋ ๊ฐ ๋ชจ๋ 1-128 ๋ฒ์์ ์์ด์ผ ํฉ๋๋ค.
$๊ธธ์ด [N:]
๊ธฐ๋ณธ ์ํ ๊ธธ์ด๋ฅผ ์ค์ ํฉ๋๋ค. ๊ฐ์ ๋ฉ๋ชจ ์ต์ ๊ณผ ๋์ผํ ํ์์ผ๋ก ์ง์ ๋ฉ๋๋ค.
$๋จ์ถ
๊ฐ ์ํ๋ฅผ ๋ค์๊ณผ ๊ฐ์ด ์ค์ ๋๋ค. ๋ฒํธ ๋ฏธ๋ ํด๋ฆญ, ๋ ธํธ๊ฐ ๋ค๋ก ์์๋ ๊ณต๊ฐ์ ํ์ฉํฉ๋๋ค.
$unQuantize [+|-] [%]
๊ฐ ์ํ์ ์์์ ์คํ์ ์ ์ ์ฉํฉ๋๋ค. ๋ฒํธ ์ ๊ฐ์ ์๋ฏธ๋ฅผ ๊ฐ๋๋ค. Z ์ฐธ๊ณ ์ต์
์.
$์ฅํ๋ธ
๊ธฐ๋ณธ ์ฅํ๋ธ๋ฅผ ๋ค์์ผ๋ก ์ค์ ๋ฒํธ
$๋ณผ๋ฅจ
ํธ๋ ๋ณผ๋ฅจ์ ๋ค์์ผ๋ก ์ค์ ๋ฒํธ
$๊ณต๊ฒฉ
๋ ธํธ์ ๊ณต๊ฒฉ์ ๋ค์์ผ๋ก ์ค์ ๋ฒํธ
$๋ถํจ
๋ ธํธ์ ๋์ผ์ด๋ฅผ ๋ค์์ผ๋ก ์ค์ ๋ฒํธ
$๋ฆฌ๋ฒ๋ธ
๋ฆฌ๋ฒ๋ธ ๊น์ด๋ฅผ ๋ค์์ผ๋ก ์ค์ ๋ฒํธ ํ์ฌ ์ฑ๋์์.
$์ฝ๋ฌ์ค
์ฝ๋ฌ์ค ๊น์ด๋ฅผ ๋ค์์ผ๋ก ์ค์ ๋ฒํธ ํ์ฌ ์ฑ๋์์.
$ํฌ
ํฌ ๊ฐ์ ๋ค์์ผ๋ก ์ค์ ๋ฒํธ. 0์ ์ผ์ชฝ 127์ ์ค๋ฅธ์ชฝ์ ๋๋ค.
๋ณผ๋ฅจ, ์ดํ, ๋์ผ์ด, ๋ฆฌ๋ฒ๋ธ, ์ฝ๋ฌ์ค ๋ฐ ํฌ ๊ฐ์ 0์์ 127 ์ฌ์ด์ ์ ์์ฌ์ผ ํฉ๋๋ค.
๋ฒ์๋ก ์ง์ ํ ์๋ ์์ต๋๋ค(์: `8-64'), ์ด ๊ฒฝ์ฐ
๋ฒ์๊ฐ ์ฌ์ฉ๋ฉ๋๋ค.
%pan_all { ์ํ ๊ฐ ... }
๊ฐ ํ์ ์ธ์คํด์ค์ ๋ํ ํฌ ๊ฐ์ ์ค์ ํฉ๋๋ค. ์ฃผ์ ํ์ฌ ํธ๋์์. ์ด๊ฒ์
์ฃผ๋ก ๋๋ผ ํคํธ๋ฅผ ํจ๋ํ๊ธฐ ์ํ ๊ฒ์ด์ง๋ง ๋ค๋ฅธ ํธ๋์์๋ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๊ฐ์น ๋ ์ ์์ต๋๋ค
์ ์ ๋๋ ๋ฒ์(์: `8-64'). ๋ค์์ ์ฃผ์ ๊ฐ์น ์์ด ํ์ฉ๋ฉ๋๋ค. ๋ ธํธ๊ฐ ๋ ๊ฐ์ธ ๊ฒฝ์ฐ
๋ค๋ฅธ pan_all ๊ฐ์ ์ฌ์ฉํ๋ฉด ์ด๋ค ์ผ์ด ๋ฐ์ํ ์ ์๋ ๋์์ ์ฌ์๋ฉ๋๋ค.
๋ฒ์๊ฐ ์๋ ์ฑ๋์ ๋ชจ๋ ์ํ์ ์ํฅ์ ๋ฏธ์น๋ ค๋ฉด `*' ๋๋ `์ด๋ค' ์์ํ ์ฃผ์. ๊ทธ๋งํผ
/r4/์ํ ๋ฐ๋ณต ๋ฐฉ๋ฒ์ ์ด ์ต์ ๊ณผ ํจ๊ป ์๋ํ์ง ์์ง๋ง ๋์ผํ ํจ๊ณผ๊ฐ ์์ต๋๋ค.
๋ฐ๋ณต ๋ธ๋ก์ ์ฌ์ฉํ์ฌ ๋ฌ์ฑํ ์ ์์ต๋๋ค.
$marker
๋ง์ปค ์ด๋ฒคํธ๋ฅผ ์ถ๊ฐํฉ๋๋ค. ๋ณธ๋ฌธ ๋ด์ฉ ๊ทธ๋๋ก. ๋ง์ฝ์ ๋ณธ๋ฌธ ๋ฐ์ดํ๋ก ๋ฌถ์ด์ผ ํ๋ ๊ณต๋ฐฑ์ด ํฌํจ๋์ด ์์ต๋๋ค.
ํฐ๋ฐ์ดํ ๋ฌธ์๋ฅผ ์ฌ์ฉํฉ๋๋ค.
%๋ฐ๋ณตํ๋ค { ๋ ธํธ }
๋ฐ๋ณต ๋ ธํธ ๋ฒํธ ์๊ฐ. ๋ ธํธ ์ํ, ์ผํ, ๋ฏธ๋ฆฌ ์ ์๋ ์ํ์ค ๋ฐ ๊ธฐํ๋ฅผ ํฌํจํ ์ ์์ต๋๋ค.
%๋ฐ๋ณตํ๋ค ๋ธ๋ก.
%๊ตฝํ๋ค { ์ด๋ฒคํธ ... }
์ฐ๊ทน ์ฃผ์ ์ฌ๋ฌ ๋ฒ ์ค๋ช ํ ๋ฐฉ์์ผ๋ก ํผ์น ํ ์ ์ด๋ํฉ๋๋ค. events, ๊ฐ์ง๊ณ ์๋
๋ค์ ํ์:
[N:] <+|->
์ด๋์ n ๊ณผ d ๋ฉ๋ชจ ์์ ๋๋ ์ด์ ์ด๋ฒคํธ์ ์๊ฐ์ ์ง์ ํฉ๋๋ค.
์ํ ๊ธธ์ด์ ๋์ผํ ํ์ ๊ฐ์น ์ํ๋ฅผ ๊ตฌ๋ถ๋ฆด ์(ํ๋ฌ์ค
๋๋ ๋นผ๊ธฐ ๊ธฐํธ๊ฐ ํ์ํจ). +/- 2 ๋ฐ์์ ๊ธฐ๋ณธ ํผ์น ํ ๋ฒ์์์ ๊ฐ
32์ XNUMX ๋ฐ์์ ํด๋นํฉ๋๋ค. ๋ฒค๋ ์์ ์๋์ ์ ๋๋ค. ์ต๋
๋์ ๋ฒค๋ ์์ ํ๋ฌ์ค ๋๋ ๋ง์ด๋์ค 64์ ๋๋ค.
์๋ฅผ ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
%bend a3 { 4+32 4-32 2+0 }
a3 ์ํ๋ฅผ 1/4์์ผ๋ก ์ฐ์ฃผํ๊ณ ์จ์์ 1/4์์ผ๋ก ๊ตฌ๋ถ๋ฆฐ ๋ค์ ๋ค์ a3๋ก ๋ฎ์ถ๊ณ
1/2 ์ํ๋ฅผ ์ ์งํฉ๋๋ค.
$bend_range
ํผ์น ํ ๋ฒ์๋ฅผ +/-๋ก ๋ณ๊ฒฝํฉ๋๋ค. ๋ฒํธ. ์ด๋ ๊ฒ ํ๋ฉด ์์๋๋ก ์ต๋ ๊ตฝํ์ด ์ค์ ๋๋ฏ๋ก
4๋ก ์ค์ ๋์ด ์๊ณ ๋ฒค๋ ๊ฐ 64๋ 4 ๋ฐ์ ์๋ก ๋ฒค๋๋๊ณ -64๋ 4 ๋ฐ์ ์๋๋ก ๋ฒค๋๋ฉ๋๋ค.
๋ฐ์. ๋๋ถ๋ถ์ ๋ฏธ๋ ์ฅ์น์ ๊ธฐ๋ณธ ๋ฒ์๋ 2๋ฐ์์ ๋๋ค.
$ํผ์น
ํผ์น ํ ๊ฐ์ ๋ค์์ผ๋ก ์ค์ ํ. ์ด๊ฒ์ ๋ณ๋์ ์ฐธ๊ณ ์ฌํญ๊ณผ ํจ๊ป ์ฌ์ฉํ ์ ์์ต๋๋ค.
๋ณต์กํ ๊ตฝํ์ ์์ฑํ๊ธฐ ์ํด ์ด๋ฒคํธ๋ฅผ ๊ธฐ๋กํฉ๋๋ค(์๋์ '๋์ ๋ฉ๋ชจ' ์ฐธ์กฐ).
ํจ๊ณผ. ๋ฌ๋ฆฌ %๊ตฝํ๋ค ์์ ๊ตฌ๋ฌธ์ ์ง์ ํผ์น ํ ์ ์ค๋ฆฝ์ผ๋ก ์ฌ์ค์
์์น (64)
๋ค์ ๊ตฌ๋ฌธ์ผ๋ก ๋ ๊ฐ๋จํ ํผ์น ๋ฒค๋๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค.
/l8/e4=>g4=>e4
์ด๊ฒ์ e4์์ g4๊น์ง ๊ทธ๋ฆฌ๊ณ ๋ค์ e4๊น์ง ์ ํ ๋จ๊ณ๋ก ๊ตฌ๋ถ๋ฌ์ง๋๋ค.
์ฌ๋ ๋ฒ์งธ ๋ฉ๋ชจ. ๊ธฐ๋ณธ์ ์ผ๋ก 16๋ถ ์ํ ๊ธธ์ด๋น 8๋จ๊ณ๊ฐ ์์ต๋๋ค.
์), `-b' ๋ช ๋ น์ค ์ค์์น๋ฅผ ์ฌ์ฉํ์ฌ ๋ค๋ฅธ ๊ฐ์ ์ค์ ํ ์ ์์ต๋๋ค. ์ด๋ค ์ซ์
์ ์ํ๋ฅผ ์ฌ์ฉํ ์ ์์ง๋ง ์ฒซ ๋ฒ์งธ ์ํ์๋ ๊ธธ์ด ๊ฐ์ด ์์ด์ผ ํ๋ฉฐ ๊ฐ ์ํ๋
์ฅํ๋ธ ๊ฐ์ ๊ฐ๋๋ค.
%์ ํํ๋ค [์๊ฐ] { ๊ฐ์ค ํญ๋ชฉ ... }
์ฌ๊ธฐ์ ์๊ฐ์ [n:] ํ์์ ๊ธธ์ด ๊ฐ์ ๋๋ค. ๊ธธ์ด ์ต์ ์์ ์ฌ์ฉ๋๋ ๊ฒ๊ณผ ๋์ผํฉ๋๋ค.
`l' ์๋ต.
If ์๊ฐ ์ง์ ๋์ง ์์:
ํ๋ ์ ํ ๋ชฉ ๋ชฉ๋ก์์ ๋ชฉ ์ํ, ์ผํ ๋๋ ๋ฏธ๋ฆฌ ์ ์๋ ๋ฆฌํ๊ฐ ๋ ์ ์์ผ๋ฉฐ
๊ฐ ํญ๋ชฉ์๋ ๊ฐ์ค์น ์ ํ๋ ๊ฐ๋ฅ์ฑ์ ์ ์ํฉ๋๋ค. ์๋ฅผ ๋ค์ด:
%์ ํ { 2 a3 4 c5 3 e4 1 g3 }
a3์๊ฒ 20% ํ๋ฅ , c5 - 40% ์ ๊ณต ; e4 - 30% ๋ฐ g3 - 10% ๊ฐ ํญ๋ชฉ ์ ๋๋ก ํ์ํ ๊ฒ ๊ฐ์ค์น๋ฅผ ๊ฐ๋๋ค.
์๋ ์ ์ธ๋ ์ฐธ์กฐํ์ญ์์ค.
if ์๊ฐ ์ง์ ๋จ :
์ฌ๋ฌ ๊ฐ ์ ํ ๋ชฉs ๋ชฉ๋ก์์ ์ต๋ ๊ธธ์ด ์๊ฐ. ๋ง์ฝ ๋ชจ๋ ๋ชฉs๊ฐ ๋๋ฌด ๊น๋๋ค
์ ํํ ๋ฆฌํ๋ฅผ ๋๋ด๋ ค๋ฉด ์๊ฐ, ๋๋จธ์ง๋ ๋๋จธ์ง๋ก ์ฑ์์ง๋๋ค. ์ ํ ์ฌ์ฉ ์
์ด๋ฐ ์์ผ๋ก ๊ฐ ์ํ ๋๋ ์ผํ์๋ ๊ธธ์ด ๊ฐ์ด ์์ด์ผ ํ๋ฉฐ ์ฌ์ฉ๋ ์ฌ์ ์ ์๋ ๋ฆฌํ๋ ๋ฐ๋์
๊ธธ์ด๊ฐ ๊ณ ์ ๋์ด ์๊ณ (์ฆ, ์ฒซ ๋ฒ์งธ ์์๋ ๊ธธ์ด ๊ฐ์ด ์์ด์ผ ํจ)
์ ์ฒด ๋ฆฌํ๋ ์ํ์ ๋์ผํ ํ์์ผ๋ก ์ ํ ๋ธ๋ก์ ์ง์ ๋์ด์ผ ํฉ๋๋ค. ~์ ์ํ
์:
%define riff_1 { /l2/a3 /l4/b c4 } # ๋ฆฌํ๋ 1๋ง๋ ๊ธธ์ด
%์ ํํ๋ค 4:1 { # 4๊ฐ์ ๋ง๋๋ฅผ ์ ํํฉ๋๋ค.
1 /l8/d4 3 /l8/e4 2 /l4/g4 1 /l1/~riff_1
}
If ์๊ฐ is 0 or - ๊ทธ๋ฐ ๋ค์ midge๋ ๋ค์ ํ์์ ๋ธ๋ก์ ์ฐพ์ต๋๋ค.
๋ฆฌ๋ฌ {n[:d] ... }
ํผ์น๊ฐ ์ ํ๋๋ ์ผ๋ จ์ ์ํ ๊ธธ์ด ๊ฐ์ผ๋ก ๊ฐ์ฃผ๋ฉ๋๋ค.
๋ชฉ๋ก. ๋ค๋ฅธ ํ ํฐ์ ํต๊ณผ๋๋ฏ๋ก ํน์ ์ํ, ๋ฏธ๋ฆฌ ์ ์๋ ๋ฆฌํ๋ฅผ ์ฝ์ ํ ์ ์์ต๋๋ค.
๋๋ ํด์. ๋ฐ์ค๋ก ์์ํ๋ ๋ธ๋ก์ ๋ชจ๋ ํ ํฐ์ ๋ค์๊ณผ ๊ฐ์ด ์ ๋ฌ๋ฉ๋๋ค.
๋ฐ์ค์ด ์ ๊ฑฐ๋์์ต๋๋ค. ์์ ๋ examples/tutorial/choose_scale.mg๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
์ํ/๊ฐ์ค์น ๋ชฉ๋ก์ ์ง์ ํ๋ ๋ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ ๊ท๋ชจ ์์ด:
๊ท๋ชจ ๊ฒฝ๋ฏธํ /l8/g4-6 [ ๋ฌด๊ฒ ... ]
์ด๊ฒ์ 4๋ฒ์งธ์์ 6๋ฒ์งธ ์ฅํ๋ธ(์ฆ, g4์์ g6๊น์ง)์์ G ๋ง์ด๋ ์ค์ผ์ผ์ ์ ํํฉ๋๋ค. ๊ธธ์ด ๊ฐ
๋ฆฌ๋ฌ ๋ธ๋ก์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ์๋ ํ์ํ์ง ์์ต๋๋ค. ๋ง์ฝ -6 ํ ์ฅํ๋ธ๊ฐ ์๋ต๋ ๊ฒฝ์ฐ
์ต์ํ.
๊ฐ์ค์น ๋ธ๋ก์ ์ํ ๊ฐ์ค์น๋ฅผ ์์๋๋ก ์ง์ ํฉ๋๋ค. ์๋ตํ๋ฉด ๋ชจ๋ ๊ฐ์ค์น๊ฐ
๋์ผํ. ์ํ๋ฅผ ๋ฌด์ํ๋ ค๋ฉด ๊ฐ์ค์น 0์ ์ฌ์ฉํ์ง๋ง ์ ๋๋ก ํ์ํ ๊ฒ ๊ฐ ์์ ๋ํ ๊ฐ์ค์น
๋ธ๋ก์ด ์ ํ ์กด์ฌํ์ง ์๋ ๊ฒฝ์ฐ.
XNUMXD๋ดํ์ -S ์ค์์น๋ฅผ ์ฌ์ฉํ์ฌ ์๊ณ์ ์ํ ๋๋ ์ง์๋๋ ์๊ณ ๋ชฉ๋ก์ ํ์ํ ์ ์์ต๋๋ค.
%์ฒด์ธ {
์์
note1 [ ๋ฌด๊ฒ ์ฐธ๊ณ ... ]
...
๋ฆฌ๋ฌ [ ๋ฌด๊ฒ ๊ธธ์ด ... ] or ๋ฆฌ๋ฌ { ๊ธธ์ด ... } }
๊ฐ ์ํ์ ๋ํด ๊ฐ์ค๋ ์ํ ๋ชฉ๋ก์ด ์๋ '์ฒด์ธ' ๊ตฌ์กฐ๋ฅผ ์ ์ํฉ๋๋ค.
์ด๊ฒ์ ๋ฐ๋ผ ๊ฐ๋ผ. ์์์ ์ ์ฌ์ฉ๋ ๋ชจ๋ ์ํ์์ ๋ฌด์์๋ก ์ ํ๋๊ฑฐ๋
์ ์, ์คํํธ ํค์๋, ๊ทธ๋ฆฌ๊ณ ํ์ ๋ ธํธ๋ ์ ์ ํ ๋ชฉ๋ก์์ ์ต๋
์ด ๊ธธ์ด ์๊ฐ.
XNUMXD๋ดํ์ ๋ฆฌ๋ฌ ํค์๋์๋ ๋ ๊ฐ์ง ํ์์ด ์์ต๋๋ค. ๋๊ดํธ `[]'๋ฅผ ์ฌ์ฉํ์ฌ ๋ฉ๋ชจ์ ๊ฐ์ค ๋ชฉ๋ก
๊ธธ์ด๋ฅผ ์ ์ํ ์ ์์ผ๋ฉฐ ์์๋ก ์ ํ๋ฉ๋๋ค. ์ค๊ดํธ `{}'๋ฅผ ์ฌ์ฉํ์ฌ
์์๋๋ก ์ฌ์ฉ๋ ๊ธธ์ด ๊ฐ์ ์ ์ํ ์ ์์ต๋๋ค(ํ์์ ๋ฐ๋ผ ๋ฐ๋ณต). ์๊ฒ
๋ฆฌ๋ฌ ๋ธ๋ก์ ํ ๋ฒ๋ง ์ฐ์ฃผํ๊ณ ์๊ฐ ์ 0 or -. ์ด ๋ ๋ฆฌ๋ฌ
์์์ ์ค๋ช ํ ๊ฒ๊ณผ ๋์ผํ ๋ฐฉ์์ผ๋ก ๋ธ๋ก์ ๊ตฌ๋ฌธ ๋ถ์ํฉ๋๋ค. %์ ํํ๋ค ์๊ฐ์ด XNUMX์ผ๋ก ์ค์ ๋ ์ํ์์. ๊ทธ๋งํผ
ํค์๋๋ ์๋ ์ ๋์์ด๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋ฆฌ๋ฌ.
XNUMXD๋ดํ์ ์คํํธ ํค์๋๋ ์ฒด์ธ์ ์ฌ์ฉํ ๋ ์์ํ ๋ ธํธ๋ฅผ ์ง์ ํฉ๋๋ค. ๋ง์ฝ์ ์คํํธ is
์๋ตํ๋ฉด ์์ ์์ด ๋ฌด์์๋ก ์ ํ๋ฉ๋๋ค.
๋ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ ์ฒด์ธ ๋ธ๋ก์ ๋ด์ฅ ์ ์ธ ์ค ํ๋๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค. ๊ทธ ๋ค์์
๊ฐ์ค์น๋ ๋งคํธ๋ฆญ์ค ํ์์ผ๋ก ์ง์ ๋๋ฉฐ ๊ฐ "์์" ์ํ(ํ๋
์๊ณ์ ๊ฐ ์ํ) ๋ฐ ๊ฐ "to" ์ํ์ ๋ํ ์ด. ์ด ์์์ ์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
examples/tutorial/chain_scale.mg ํ์ผ์์ ์ฐพ์ ์ ์์ต๋๋ค.
์ ํ ๋๋ ์ฒด์ธ ๋ธ๋ก์ ์ฌ์ฉํ๋ ค๋ฉด ํ์ผ์ unroll-loops ์ต์ ์ผ๋ก ์ปดํ์ผํด์ผ ํฉ๋๋ค.
(choose ๋๋ chain ๋ธ๋ก์ด ๋ฐ๊ฒฌ๋๋ฉด ์๋์ผ๋ก ์ค์ ๋ฉ๋๋ค). ์ด ์ต์ ์
์ ํ์ผ์ ์์ค ์ฝ๋๋ฅผ ํ์์ผ๋ฏ๋ก ํนํ ์ข์ ์ถ๋ ฅ์ ์์ฑํ๋ ๊ฒฝ์ฐ
์์ฑ๋ ํธ๋์ ์์ง ์๊ณ ๋ค๋ฅธ ๋ณ๊ฒฝ์ ํ ์ ์๋ ์ ํํ ์ฌ๋ณธ.
์ ํ ๋ฐ ์ฒด์ธ ๋ธ๋ก์ %define ๋๋ ๋ค๋ฅธ ์ ํ ๋๋ ๋ด๋ถ์ ์์ ์ ์์ต๋๋ค.
์ฒด์ธ ๋ธ๋ก.
%ํ๊ฐ { ํ ์ฝ๋ }
Perl ์ฝ๋ ๋ธ๋ก์ ์คํํ๊ณ %eval ๋ธ๋ก์ Perl์์ ๋ฐํ๋ ๊ฐ์ผ๋ก ๋ฐ๊ฟ๋๋ค.
์ํธ.
%ํ๊ฐ - { ํ ์ฝ๋ }
๋ฐํ ๊ฐ์ ์ฝ์ง ์๊ณ Perl ์ฝ๋ ๋ธ๋ก์ ์คํํฉ๋๋ค.
Perl ์ฝ๋๋ Safe ๋ชจ๋์ด ์๋ ๊ฒฝ์ฐ :base_core, :base_math ๋ฐ
:base_mem ํ์ฉ๋จ. Safe.pm์ ์ฌ์ฉํ ์ ์๊ฑฐ๋ ๋ ๋ง์ ๊ถํ์ด ํ์ํ ๊ฒฝ์ฐ --unsafe
์ต์ ์ midge๊ฐ ์์ฒด perl ํ๋ก์ธ์ค์์ %eval ๋ธ๋ก์ ์คํํ๋๋ก ํฉ๋๋ค.
์์ค์ ๋ชจ๋ ์ง์ ์์ ํค์๋๊ฐ ํ์ฉ๋ฉ๋๋ค.
%ํฌํจํ๋ค
์ ๋ด์ฉ์ด ํฌํจ๋์ด ์์ต๋๋ค. ํ์ผ ์์ค์ ํด๋น ์ง์ ์ ์์ฑ๋ ๊ฒ์ฒ๋ผ
ํ์ผ. ํด์ผ ์์ค ํ์ผ์์ ์์ ์ ์ค์ ์์ด์ผ ํฉ๋๋ค.
๋์ ๋ ธํธ.
๋์ ์ํ๋ฅผ ์ฐ์ฃผํ๋ ๊ฐ์ฅ ์ ์ฐํ ๋ฐฉ๋ฒ์ ๋ณ๋์ ํธ๋์ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค.
๋์ผํ ์ฑ๋/ํจ์น) ๋๋ ๋ณ๋์ ๋ ธํธ ์จ ๋ฐ ๋ ธํธ ์คํ ์ด๋ฒคํธ๋ฅผ ์ฌ์ฉํ์ฌ(์๋ ์ฐธ์กฐ).
๊ทธ๋ฌ๋ ๋ช ๊ฐ์ง ์ ํ ์ฌํญ์ด ์๋ ๋ ๊ฐ๋จํ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. ์๋ฅผ ๋ค์ด: ( c e g ) ์ฌ์๋ฉ๋๋ค
c, e ๋ฐ g ์์ด ๋์์ C ์ฝ๋๋ฅผ ๋ง๋ญ๋๋ค. ๋ชจ๋ ๋์ ๊ธธ์ด
notes๋ ์ฒซ ๋ฒ์งธ ๊ฒ๊ณผ ๋์ผํฉ๋๋ค(์์ฒด ๊ธธ์ด ๊ฐ ๋๋
์ด์ note, rest ๋๋ $length ์ ์ธ์์ ์์๋ฉ๋๋ค.
์ด๊ฒ์ ์ฌ์ฉํ์ฌ ์ฝ๋๋ฅผ ๋ง๋๋ ํ ๊ฐ์ง ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
%์ ์ํ๋ค ๋ฏธ์ฑ๋ ์ { ( c e- g ) } # ๋ง์ด๋๋ฅผ c-๋ง์ด๋๋ก ์ ์
%์ ์ํ๋ค ์ฃผ์ํ { ( c e g ) } # ์ ๊ณต์ c-major๋ก ์ ์
%์ ์ํ๋ค 7 ์ { ( c e g b- ) } # 7th๋ฅผ c-7th๋ก ์ ์
๊ทธ๋ฐ ๋ค์ ์์ ํธ๋์์ ๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
$length 4 $octave 4 # ๊ธฐ๋ณธ ๊ธธ์ด์ ์ฅํ๋ธ ์ค์
~์ ๊ณต # C ๋ฉ์ด์ ์ฐ์ฃผ
~๋ง์ด๋/9/ # a๋จ์กฐ ์ฐ์ฃผ
~7์ผ/5/ # f-7th ์ฐ์ฃผ
์ฝ๋๋ฅผ ์ณ์ ์๋ฆฌ๋ฅผ ๋ด๋ ค๋ฉด ์ ๋นํ ์ผ๊ธฐ ํค์๋๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค:
$์คํธ๋ผ 5
์ด๋ ๊ฒ ํ๋ฉด ํ์ ์ฝ๋์ ๊ฐ ์ํ ์ฌ์ด์ ๊ฐ๊ฒฉ์ด 5๊ฐ์ ๋ฏธ๋ ํด๋ฆญ์ผ๋ก ์ค์ ๋ฉ๋๋ค.
ํ๋์ ํธ๋์์ ๋์ ์ํ์ ๋ณต์กํ ํจํด์ ๋ง๋ค๋ ค๋ฉด ์ํ ์จ๊ณผ ์ํ๋ฅผ ๋ถ๋ฆฌํ์ญ์์ค.
์คํ ์ด๋ฒคํธ๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ผ๋ฐ ์ํ์ ๊ฐ์ ๋ฐฉ์์ผ๋ก ์ง์ ๋์ง๋ง +
์ฐธ๊ณ ์ฌํญ ๋ฐ - ๋ ธํธ ์คํ๋ฅผ ์ํด ์ถ๊ฐ๋์์ต๋๋ค. ๊ธธ์ด ๋ฐ ๋ฐ๋ณต ์ต์ ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์ฌ์ฉํ ์ ์์ต๋๋ค. ์ด๋ ๊ฒ ์ ๋ ฅํ ์ํ์ ๊ธธ์ด๋ ์ผํ๋ ๊ธฐํ
๋ ธํธ ์จ ์ด๋ฒคํธ์ ๋ ธํธ ์คํ ์ด๋ฒคํธ ์ฌ์ด์ ๋ ธํธ. ์:
+c4 /l4/r +์ด +g /l2/r -c -e -g
c4 ์ฐ์ฃผ ๋ฐ ์ ์ง, 1/4์ ์ฐ์ฃผ ํ e4 ์ฐ์ฃผ ๋ฐ ์ ์ง, ๋ ๋ค๋ฅธ 1/4์ ์ฐ์ฃผ ํ
๊ทธ๋ฆฌ๊ณ g4๋ฅผ ์ก๊ณ ์ถ๊ฐ 1/2 ์ํ ํ์ ์ธ ๊ฐ๋ฅผ ๋ชจ๋ ๋์ต๋๋ค.
ํํ๋ .
์ ์ ํ ์ํ ๊ธธ์ด๋ฅผ ์ ํํ์ฌ ํํ๋ฆฟ์ ์์ฑํ ์ ์์ง๋ง
๋ฅผ ์ฌ์ฉํ์ฌ ๋ณด๋ค ์ ํต์ ์ธ ๋ฐฉ์์ผ๋ก ์์ฑํด์ผ ํฉ๋๋ค. %tuplet ์์ด:
%tuplet n:d { ๋ฉ๋ชจ... }
์ฌ์ n ๊ณต๊ฐ์ ๋ฉ๋ชจ d. ๋ ธํธ @channel ๋ธ๋ก์์ ํ์ฉ๋๋ ๋ชจ๋ ๊ฒ์ ํฌํจํ ์ ์์ต๋๋ค.
๊ทธ๋ฐ ๋ค์ ์ํ ๊ฐ์ด ์๋์ผ๋ก ๋ณ๊ฒฝ๋์ด ํํ๋ฆฟ์ ์์ฑํฉ๋๋ค. ์๋ฅผ ๋ค์ด:
%tuplet 5:3 { /l8/e4 fgfe }
XNUMX์ ๊ณต๊ฐ์์ XNUMX๊ฐ์ XNUMX๋ถ ์ํ๋ฅผ ์ฐ์ฃผํฉ๋๋ค. Tuplets์ ๋ชจ๋ ๊น์ด์ ์ค์ฒฉ๋ ์ ์์ต๋๋ค. ๋ณด๋ค
examples/tutorial/tuplet.mg ์์ . ๋ฏธ์ง๋ ํ๋ค ์ง์ ์์ ๊ธธ์ด ํ์ธ
tuplet ๋ธ๋ก ๋ด๋ถ๊ฐ ์ ํํฉ๋๋ค.
์ด์ .
๋ฏธ๋ ํ์ผ์ ์ ๋ณด ํธ์ง๊ธฐ๋ก ๊ฐ์ ธ์ค๋ ค๋ฉด ํค๋ฅผ ์ค์ ํด์ผ ํฉ๋๋ค.
์ด๊ฒ์ ๋ค์๊ณผ ๊ฐ์ด ์ํ๋ฉ๋๋ค.
$ํค [+|-][์ ]
์ด๋์ name ๋ ag, +|-๋ ๋ ์นด๋กญ๊ณ ํํํ๋ฉฐ m์ ๋ง์ด๋์ ๋๋ค. ์ ์ฒด ์กฐ๊ฐ์ด ๋จ์ ์์ผ๋ฉด
๋์ผํ ํค๋ฅผ @head ์น์ ์์ ์ค์ ํ ์ ์์ต๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด
@channel ์น์ ์ด๋ฉฐ ๋ชจ๋ ํธ๋์ ์ํฅ์ ๋ฏธ์นฉ๋๋ค.
์ผ๋ฐ ์ ๋ณด์ ์ต์ํ๊ณ ์ํ๋ฅผ ์๋์ผ๋ก ๋ ์นด๋กญ๊ฒ ๋๋ ํํํ๊ฒ ๋ง๋ค๊ณ ์ถ์ ๊ฒฝ์ฐ
ํค์ ๋ฐ๋ผ $key_strict ๋์ ํค์๋. ์์ฐ์ค๋ฌ์ด ๋ ธํธ๋ฅผ ์ป์ผ๋ ค๋ฉด =
๊ธฐํธ(์: G), f= f ๋ด์ถ๋ด์ ์ฌ์ํฉ๋๋ค. ๊ทธ๋งํผ $key_strict ํค์๋๋
@ํค๋ ์น์ . ์ผ๋ฐ ํค๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ์ ํ ํค๋ฅผ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. $ํค ์์ด.
$ctrl
์ปจํธ๋กค๋ฌ ๋ฒํธ ์ค์ NUM ์ ํ.
$rpn [num-msb,] [,๋ฐ-lsb]
rpn ์ปจํธ๋กค๋ฌ ์ค์ NUM ์ ํ
$nrpn [num-msb,] [,๋ฐ-lsb]
nrpn ์ปจํธ๋กค๋ฌ ์ค์ NUM ์ ํ
%์ถ์ด { ๋ฐ์ดํธ๊ฐ... }
midi ํ์ผ์ ๋ฐ์ดํธ ๋ฌธ์์ด์ ์ฝ์ ํฉ๋๋ค. ๊ฐ ๋ฐ์ดํธ๊ฐ 0์ง์(255-XNUMX) ์ค ํ๋์ผ ์ ์์ต๋๋ค.
๋๋ 0์ง์(00x0-XNUMXxFF). ํค์๋ ๋ฐ์ดํธ ๋์ ์ ์ฌ์ฉ๋ ์ ์์ต๋๋ค ์ถ ์ด์ ์ผ๋ก.
$์ธ์
์ธ์ ๋ณธ๋ฌธ stdout์. ๋ง์ฝ์ ๋ณธ๋ฌธ ํฐ๋ฐ์ดํ(").
onworks.net ์๋น์ค๋ฅผ ์ฌ์ฉํ์ฌ ์จ๋ผ์ธ์ผ๋ก midge ์ฌ์ฉ