본문으로 이동

미디어위키 1.45 안정화가 거의 끝났습니다. 다만 Flow 확장 기능 관련 이슈가 있어서 대체하는 작업을 수행할 계획입니다.

  1. 큰숲백과:청사진에서 위키 발전의 대략적인 방향성을 제시했습니다. 의견이 있으신 분은 큰숲백과토론:청사진에서 의견을 남겨주시면 좋겠습니다.
  2. 기능상의 오류로 지원하지 않고 있는 기능에 대해서는 큰숲백과토론:이슈 트래커에 요약했습니다. 참고하시기 바랍니다.
  3. 데이터베이스 덤프 받고싶으신 분은 큰숲백과 가입 후에 사용자토론:Bigforest에 의견 남겨주시면 ftp 주소, 계정, 비밀번호를 특수:EmailUser를 통해서 공개할 예정입니다.

작은숲:공책/음악/악보를 그려보자

큰숲백과, 나무를 보지 말고 큰 숲을 보라.

악보를 컴퓨터를 이용해서 그리고 싶을 때가 있습니다. 그러나 막상 그래픽 프로그램을 사용하기엔 복잡하고 시간도 많이 걸린다고 생각하실 겁니다. 그래서 프로그래밍 하듯이 악보를 그릴 수 있는 프로그램을 생각하실 수도 있을텐데요. 바로 LilyPond를 이용하면 글 쓰듯이 악보를 그릴 수 있습니다. LilyPond 사용법에 대해 알아봅시다.

기능

LilyPond는 텍스트 기반으로 악보를 그릴 수 있는 소프트웨어로 다음과 같은 기능을 제공하고 있습니다.

  • 악보 그리기
  • 그린 악보를 PDF 파일로 저장

참고로 위키백과에서 악보를 그리는 확장기능도 Lilypond 기반으로 구성되어 있습니다. 따라서 Lilypond를 배우시면 위키백과에서도 악보를 손쉽게 그릴 수 있습니다.

설치하기

Lilypond 홈페이지에 들어간 뒤 OS버전에 맞는 파일을 고르고, 설치하면 됩니다. 링크는 이곳을 누르면 됩니다. 그러나 Lilypond는 GUI(그래픽 인터페이스)를 지원하지 않으므로 추가적으로 Frescobaldi 소프트웨어를 설치하는 것이 편리합니다. 다음 링크에서 다운로드받을 수 있습니다.

문법

Lilypond는 미디어위키LaTeX처럼 특정한 문법에 따라 텍스트를 입력하면 그 텍스트를 파싱해서 악보를 보여주는 방식으로 출력합니다. 따라서 Lilypond의 문법을 익히는 것이 악보를 그리는데 도움이 됩니다.

문서 구성 요소

Lilypond의 악보 그리는 파일의 확장자는 "ly"로 LaTeX 파일의 "tex"파일처럼 일반 텍스트 파일과 유사한 형태로 구성되어 있습니다. 즉 텍스트 에디터로 읽을 수 있는 형태라는 이야기죠. 크게 봐서는 다음과 같은 형식으로 구성되어 있습니다.

% 테스트 악보 작성

% Lilypond 버전 - 명시 필요합니다.
\version "2.22.1"
% 악보 제목 등 표시하는 부분
\header {
    title = "An exemplar scale"
    subtitle = "London bridge is falling down."
}
% 악보 내용 표시
<<
    % 코드 표시
    \chords {
        c1 c g1 c1 c1 c g1 c1
    }
    % 악보 내용 표시
    \relative c'' { % 기준음 표시. 가운도 기준음을 할 때 c'로 표시. 
        \key c \major % 조성. 다장조면 생략 가능.
        \time 4/4 % 박자. 4/4박자면 생략 가능.
        \clef "treble" % 음자리표. 높은음자리표면 생략 가능.
        
        g4. a8 g4 f4 e4 f4 g2 % 음 표시. 
        d4 e4 f2 e4 f4 g2
        g4. a8 g4 f4 e4 f4 g2 
        d2 g2 e4 c2 r4
    }

    % 가사 표시하기
    \addlyrics {
        Lon don bridge is fall ing down,
        fall ing down, fall ing down.
        Lon don bridge is fall ing down,
        my fair la dy.
    }

>>

자세한 내용은 LilyPond Documentation 페이지를 참조해보세요. 여기서는 간단한 기능들에 대해서만 소개하고자 합니다.

출력 결과

악보 출력 결과

주석

한 줄 짜리 주석은 %기호를 사용하면 되고, 여러 줄을 사용하는 긴 주석은 "%{}"사이에 표현하시면 됩니다.

코드 표시

\chords{} 안에 표시하면 됩니다. (기본음+길이):(옵션) 형태로 표시하면 됩니다.

음표 표시

\relative{} 안에 표시하면 됩니다. 알파벳은 음이름(도는 c, 레는 d 등)을 표현합니다. 쉼표를 표시할 때에는 r 기호를 사용합니다. 반올림일 때에는 음이름+is(fis 등), 반내림일 때에는 음이름+es(bes)라고 붙이면 됩니다. 그 다음 '표시 혹은 ,표시는 앞의 음 기준으로 상대적 음높이를 표현합니다. 다음 음이 앞의 음에 비해 4도 이내에 표시되는 경우 음높이 기호인 ' 혹은 ,를 표시하지 않으며, 그보다 한 옥타브 높은 음을 표시해야 하는 경우는 '표시, 한 옥타브 아래 음을 표시해야 하는 경우는 ,표시를 붙여줍니다. 마지막으로 숫자는 음표의 길이를 표시합니다.

  • 예를 들면 가운데 솔(G) - 가운데 도(C)는 5도 차이가 납니다. 따라서 LilyPond에서는 g4때 가운데 솔이 입력되었을 때 다음 음에 c4라고 입력하면 가운데 도가 아닌 4도 차이가 나는 높은 도가 입력됩니다. 따라서 가운데 솔 - 가운데 도를 입력하고 싶으면 "g4 c,4"라고 입력해야 합니다.

가사 표시하기

\addlyrics {} 안에 표시하면 됩니다. 기본적으로 공백 문자로 띄울 때 음표 하나에 대응합니다. 만약 음절 하나를 여러 음표에 대응하고 싶으면 음표 작도하는 부분에 음절 하나에 연결해주고 싶은 음 뒷부분을 괄호로 묶어주면 됩니다. 예를 들면 솔미를 가사의 한 음절에 표현하고 싶으면 relative 부분에 "g4( e4)" 같이 표현하면 됩니다.