Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
İnönü Üniversitesi Devlet Konservatuvarı Yayınları - No:1
GNU / LilyPondÖzgür Bir Nota Yazma Programı
Prof. Server ACİM
Malatya - 2013
İnönü Üniversitesi Yönetim Kurulu’nun 06/11/2013 tarih ve 2013/17-37 nolu
kararı ile Elektronik Kitap olarak basılmıştır.
• İnönü Üniversitesi Devlet Konservatuvarı Yayınları No.1
• Bu kitabın basım, yayım ve satış hakları İnönü Üniversitesi’ne aittir. Bütün hakları
saklıdır.
• Kitabın tümü ya da bölümü/bölümleri İnönü Üniversitesi’nin yazılı izni olmadan
Elektronik, optik, mekanik ya da diğer yollarla basılamaz, çoğaltılmaz ve
dağıtılmaz.
• Copyright 2013 © by Inonu University. All rights reserved.
• No part of this book may be printed, Reproduced or distributed by any
electronical, optical, mechanical or other means without the written permission
of Inonu University.
• Kapak Düzeni: Prof. Server ACİM
• Tasarım-Dizgi: Prof. Server ACİM tarafından LATEX ile hazırlanmıştır.
• ISBN: 978-975-8573-16-5
• Birinci Baskı: 2013.
• Basımevi, Şehir, Yıl: Elektronik Kitap, Malatya, 2013.
İçindekiler
Önsöz 1
1 GİRİŞ 1
1.1 Neden Böyle Bir Kitap? . . . . . . . . . . . . . . . . . . . . . . . . . 1
2 LİNUX NEDİR? 3
2.1 Linux Hakkındaki Yüzeysel İzlenimler! . . . . . . . . . . . . . . . . . 3
2.2 İşin Doğrusu Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.3 GNU ve Richard M. Stallman . . . . . . . . . . . . . . . . . . . . . . 4
2.4 Lisanslar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.5 Free Software Kavramı . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.6 Okunması Tavsiye Edilen Bazı Bağlantılar . . . . . . . . . . . . . . . 5
3 NOTA YAZMA PROGRAMLARI 7
3.1 Sahipli Yazılımlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.2 Sahipli Nota Yazma Programları . . . . . . . . . . . . . . . . . . . . 8
3.3 GNU / LilyPond - Kısa Tarihçe . . . . . . . . . . . . . . . . . . . . . 8
3.4 Linux Dağıtımları . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4 Linux Dağıtımlarının Gelişimi 11
4.1 Yazılım Geliştirme Süreçleri . . . . . . . . . . . . . . . . . . . . . . . 12
4.2 Ülkemizde Geliştirilen Linux Dağıtımları . . . . . . . . . . . . . . . . 13
4.3 Pardus - Linux Dağıtımı Üzerine . . . . . . . . . . . . . . . . . . . . 13
4.4 Diğer dağıtımlar ve GNU / LilyPond . . . . . . . . . . . . . . . . . . 16
iii
iv İÇINDEKILER
5 TEX ve LATEX 17
5.1 MusiXTeX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
5.2 Nota Dizgisi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
5.3 GNU/LilyPond Özellikleri . . . . . . . . . . . . . . . . . . . . . . . . 18
5.4 Nasıl Kullanılır? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
5.5 Kullanımı Zor mudur? . . . . . . . . . . . . . . . . . . . . . . . . . . 19
5.6 GNU / LilyPond İndirme Adresleri . . . . . . . . . . . . . . . . . . . 19
5.7 Windows İçin İndirme Adresi . . . . . . . . . . . . . . . . . . . . . . 20
5.8 MAC OS X İçin İndirme Adresi . . . . . . . . . . . . . . . . . . . . . 20
5.9 Unix ve Linux İçin İndirme Adresi . . . . . . . . . . . . . . . . . . . . 20
6 Kitabımızdaki İşletim Sistemi 21
6.1 Platform Bağımsızlığı . . . . . . . . . . . . . . . . . . . . . . . . . . 21
6.2 Platform Bağımsız Ezginin Kaynak Kodları . . . . . . . . . . . . . . . 22
6.3 MAC OS X ile Derleme İşlemi . . . . . . . . . . . . . . . . . . . . . 24
6.4 PARDUS ile Derleme . . . . . . . . . . . . . . . . . . . . . . . . . . 25
6.5 LilyPond Düzenleyicileri . . . . . . . . . . . . . . . . . . . . . . . . . 25
7 LilyPond Kurulumu 27
7.1 Frescobaldi Kurulumu . . . . . . . . . . . . . . . . . . . . . . . . . . 27
7.2 Minik Bir LilyPond Dosyası Hazırlamaya Başlayalım! . . . . . . . . . . 27
7.3 LilyPond Belgelendirmeleri . . . . . . . . . . . . . . . . . . . . . . . 31
8 LilyPond - Dosya Yapısı 33
8.1 Sahanlık (Preamble) . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
8.2 Müziksel Yapı - Musical Expression . . . . . . . . . . . . . . . . . . . 34
8.3 Bağlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
8.4 Artikülasyon işaretleri . . . . . . . . . . . . . . . . . . . . . . . . . . 41
8.5 Parmak Numaraları . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
8.6 Gürlük İşaretleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
8.7 Arıza ve Donanımlar . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
8.8 Anahtarlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
İÇINDEKILER v
9 Tartımsal Yapı 499.1 Basit Ölçüler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
9.2 Bileşik Ölçüler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
9.3 Aksak Ölçüler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
9.4 Nota Kuyrukları (Beams) . . . . . . . . . . . . . . . . . . . . . . . . 54
9.5 Önel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
9.6 Üçleme (Triplet) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
9.7 Süsleme Notaları (Grace Notes) . . . . . . . . . . . . . . . . . . . . 56
10 Notaya Metin Eklemek 5910.1 Müziksel Duygu İfadeleri . . . . . . . . . . . . . . . . . . . . . . . . 59
10.2 Müziksel Hız İfadeleri . . . . . . . . . . . . . . . . . . . . . . . . . . 61
10.3 Eserin Başında Verilen Hız İfadeleri . . . . . . . . . . . . . . . . . . . 62
10.4 Diğer İşaretlerden Bazıları . . . . . . . . . . . . . . . . . . . . . . . . 62
11 Şarkı Notası Hazırlamak 6511.1 Çift Köşeli Parantezler (Double Angle Brackets) . . . . . . . . . . . . 65
11.2 Şarkı Sözünü Eklemek . . . . . . . . . . . . . . . . . . . . . . . . . . 65
12 Çoklu Dizek Yapısı ve Dizek Gruplamaları 7112.1 Basit Anlamda Çoklu Dizek Yapısı . . . . . . . . . . . . . . . . . . . 71
12.2 Dizek Gruplandırmaları . . . . . . . . . . . . . . . . . . . . . . . . . 73
13 Tek Dizekte Çokseslilik 7513.1 Birden Fazla Sesin Aynı Anda Yazılması . . . . . . . . . . . . . . . . 75
13.2 Birden Fazla Yatay Hareketin Aynı Dizeğe Yazılması . . . . . . . . . . 76
13.3 Bach - Füg Örneği . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
14 Akor Girişi 8114.1 Klasik Akor Yazımı . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
14.2 Şifreli Bas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
14.3 Chord Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
14.4 Hafif Müzik Şifreleri . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
14.5 Telli Çalgılar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
vi İÇINDEKILER
15 LilyPond Şablonları 8715.1 Barok Öncesi Dönem Notasyonu . . . . . . . . . . . . . . . . . . . . 88
16 Frescobaldi - LilyPond Editörü 8916.1 Frescobaldi - Tarihçe . . . . . . . . . . . . . . . . . . . . . . . . . . 90
16.2 Kurulum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
16.3 Frescobaldi Çalışma Ekranı . . . . . . . . . . . . . . . . . . . . . . . 91
16.4 İlk LilyPond Dosyamızı Oluşturuyoruz . . . . . . . . . . . . . . . . . 93
16.5 Frescobaldi Editör İle Notamızı Yazıyoruz . . . . . . . . . . . . . . . 98
17 Batı Müziği Ses Sistemi Dışındaki Sistemler 10117.1 Türk Sanat Müziği Ses Sistemi Notasyonu . . . . . . . . . . . . . . . 102
17.2 Arap Müziği . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
18 Farklı Dosyaları Birleştirmek 10718.1 Parçaları Ayrı Olarak Hazırlamak İşlemi - Aşama 1 . . . . . . . . . . . 107
18.2 Parçaları Birleştirme İşlemi - Aşama 2 . . . . . . . . . . . . . . . . . 109
19 SONUÇ ve SON SÖZLER 111
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
Önsöz
Genel olarak bir "müzikçi"nin yazacağı kitabın, hele bu kişi eğer bir de Besteci ise,
temel anlamda "müzik" ile ilgili olacağı düşünülecektır. Böyle düşünülmesinden daha
doğal bir durum da olamaz.
Ancak, benim Besteci kimliğimin yanı sıra bir de Bilişimci kimliğim de var.
Peki bu iki kimliğe birden sahip olmanın temelinde nasıl bir geçmiş bulunmaktadır?
Babam Mustafa Kâmi ACİM’in, TRT İstanbul Radyosu’ndan emekli bir şef teknisyen
olması nedeniyle benim çocukluk ve gençlik yıllarım diğer insanlara nazaran biraz farklı
geçmiştir. Evimizdeki ilk bilgisayar Amiga Commodore 64 olup, Türkiye’nin ilk özel ses
kayıt stüdyolarından birini (Stüdyo Elektronik) kurmuş birisi olarak babam, evde stüdyo
için çeşitli ses kayıt mikserlerinin elektronik devre şemalarını çizip, bu cihazları bizzat
imal ederdi. Bir yandan da 2000 yılında rahmetli olan değerli amcam Sıtkı ACİM’i de
bu stüdyo’da yetiştiren babam, bu stüdyo’da ikinci bir birim olarak "Altın Reklam"ın
radyo programlarının hazırlanması için mini bir stüdyo daha oluşturmuştu. Ben 1976’lı
yıllarda bir yandan Şişli Ortaokulu’na giderken, diğer yandan da bu minik birimde, 17
yaşlarımda, ilk tonmaysterlik tecrübelerimi yaşamaya başlamıştım. Gelen spikerlerin
anonslarını makara banda kaydeder, sonra bu kayıtların montajını yapar, müziklerle
birlikte miksajını yapardım. 1978 yılında "Mimar Sinan Güzel Sanatlar Üniversitesi -
Devlet Konservatuvarı"na girmemin ardından hayatımda yeni bir dönem başlamış oldu.
Bu okulun adı 1978 yılında "İstanbul Devlet Konservatuvarı" idi ve bağlı olduğu kurum
"T.C. Kültür Bakanlığı" idi. 1982 yılında Yüksek Öğretim Kurumu (YÖK) kurulmuş ve
tüm Konservatuvarlar Üniversitelere "Yüksekokul" statüsü altında bağlanmışlardır.
1988 yılında ilk IBM PS-1 bilgisayarımı almıştım. DOS ortamında çalışan bu bilgisayarı
kullanmaya başlarken, bir yandan da "DOS komutları"nı öğrenmeye başladım. O zamanlar
"SCORE" adını taşıyan ve tamamen metin girişleri ile notaların oluşturulduğu bir "nota
yazma programı" kullanmaya başlamıştım. Daha sonra Windows 3.1 çıktı. 7 veya 9
vii
viii Önsöz
floppy disk ile kurulum yaptığımı hayal-meyal hatırlıyorum. Ardından Windows 95, sonra
Windows 98, daha sonra Windows 2000 ve Windows XP.
2000 yılı civarında, "Linux" diye bir işletim sisteminin var olduğunu duymuş ve bunu
araştırmaya başlamıştım. İlk indirdiğim ve CD’ye yazdığım ISO dosyası "Gelecek Linux"
idi. O zamanki bilgimin eksikliğinden dolayı Linux’u bilgisayara kurmuş ama Windows’u
da silmiştim. Daha sonra 2002 yılında İstanbul’dan Malatya’ya geldikten sonra Fatih
AVCU’nun yardımıyla Red Hat Linux’u bilgisayarıma kurdum ve böylece Linux ile olan
maceram başlamış oldu. Artık Linux ile ilgili kitaplar almaya başlamış ve bol bol okuma
yapıp, Linux’un hem "felsefesi"ni, hem de "teknik yapısını" kavramak üzere çalışmaya
başlamıştım. Daha önce DOS komutlarını kullanmış olmam, Linux konsol komutlarını
öğrenirken bana çok yardımcı oldu.
Çeşitli Linux dağıtımlarını deneyip kullandıktan sonra Tübitak - BİLGEM ürünü
olan PARDUS ürününü 2007 yılından itibaren kullanmaya ve bu ürüne çeşitli şekillerde
katkı vermeye başladım. 2011 yılının Aralık ayında ise, Tübitak’ın yönetsel yapısındaki
değişiklikler sonucunda PARDUS’un geleceği konusunda duyduğum endişeler nedeniyle
bu ürünü kullanmaktan vazgeçtim. Bu kararımın ardından bilgisayarıma Ubuntu yazılım
kütüphanelerini kullanmakta olan ve Lisa sürüm adını taşıyan yeni sürümü yayınlanmış
bulunan Linux Mint - 12 kurdum. Aralık 2011 tarihinden beri, Linux Mint kullanmaya
devam ediyorum.
Daha önce SCORE yazılımı ile metin editöründe çeşitli kodlarla notaları oluşturmuş
olma tecrübesi, bana GNU/LilyPond nota yazım yazılımını daha hızlı kavramam ve
çözümlememde çok yardımcı oldu. Bu kitap aracılığı ile LilyPond hakkındaki bilgi ve
tecrübelerimi aktarmaya çalıştım.
Beni çalışmalarımda her zaman destekleyen değerli eşim Nuray ACİM’e ve sevgili
kızım İdil ACİM’e, çalışmalarıma verdikleri manevi destek için çok teşekkür ediyorum.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 1
GİRİŞ
1.1 Neden Böyle Bir Kitap?
Müzikçiler ve/veya müzikle uğraşan insanların, bilişim araçlarıyla ilişkisi genellikle
"sınırlı" düzeydedir. Buradaki "sınırlı" ifadesini biraz daha açalım.
Genel boyutuyla "Müzikçi" sıfatını taşıyan kişilerin, "Bilgisayar" denilen o devasa ola-
naklara sahip aygıtı kullanma alanları, internet sayfalarında dolaşma, sohbet yazılımlarını
kullanma, e-posta alma ve yazma, müzik ile ilgili "nota yazma" programı ve/veya "ses
kayıt ve düzenleme" programlarını kullanmak ile sınırlı kalmaktadır. Eğer bu "müzikçi"
bir yorumcu-icracı ise çalgısını çalışmaya günlük olarak en az 4-5 saatini ayırması; eğer
besteci ise günlük çalışmalarına yine en az 4-5 saatini ayırması gerekmektedir. Mü-
zikçinin bilgisayar ile ilişkisinin "sınırlı" olduğundan bahsederken, bir önceki cümlemde
detaylandırarak anlattığım bir "sınırlılıktan" bahsetmekteyim.
"Müzikçi" sıfatını yazının başından beri neden kullanmakta olduğumu biraz daha
açmam gerektiği düşüncesindeyim. Dikkat edilirse, "sanatçı" kelimesini kullanmaktan
özenle kaçınmaktayım. Çünkü, "sanatçı" sıfatına "gerçekten" sahip olabilmek için
çok uzun bir süre, o alanda verimli olmuş olmak ve emeklerinizin sonucunda ortaya
çıkan ürünlerin ulusal ve uluslararası çevreler tarafından takdir edilmesi sonucunda sizin
"SANATÇI" sıfatına değer bulunmuş olmanız gerekmektedir. Bu sebeple bu önsözde
bahsettiğim Müzikçi, Konservatuvar mezunu, Müzik Öğretmenliği mezunu, Müzikoloji
mezunu gibi "müziğin öğretildiği/müzik eğitiminin alındığı" bir eğitim kurumundan; veya
1
2 GİRİŞ
önce bir müzik kursuna "amatör" niyetle gitmeye başlamış ancak zamanla müziğe olan
"daha fazla öğrenme isteği" sonucunda kendine o anda hangi noktadan alabilecekse (Lise
veya Üniversite düzeyinde) bir okul aramaya başladıktan sonra bulması ve eğitimindeki
"geç kalmışlığı", çok yoğun bir şekilde çalışarak telafi etmek suretiyle kendini yetiştirmiş
kişilerden bahsetmekteyim.
Müzik öğrenimi hayat boyu süren bir eylemdir aslında. Okullardan mezun olmuş olmak
herşeyi biliyor olmak noktasından çok uzakta olmaktır bir anlamda. Mezuniyet sadece
bir sürecin bitmiş olma durumu ve yeni bir sürece doğru yol almaya başlama durumudur.
Lisansüstü eğitimi ise "bilimsel bakış açısı" kazanmak açısından çok önemli bir aşamadır.
Müzik ile çok yoğun mesai süreçleri yaşayan kişilerin 21. yüzyılın önemli kazanımlarından
olan "bilişim" faktörünü ilk paragrafta anlattığım sınırlı boyutta kullanmakta olmaları,
son derece doğal bir durumdur. Ancak, "Lisansüstü" düzeyde eğitim almaya hak kazanan
"müzik öğrencisi"nin, bu düzeye bakışında yıllar boyunca kazandığı alışkanlıkları üzerinde
"yeniden düşünme" zamanı gelmiş demektir.
Eğer gerçekten Sanata ve Müziğe Bilimsel Bakış Açısı Kazanmak isteğindeyse
öğrenci, bunun ilk adımının şimdiye kadar öğrendiklerinin doğruluğunu ve geçerliliğini
sorgulayabilmek olduğunu kavrayarak, Araştırma yapma, bulunan verileri derleyebilme ve
sunabilme becerisini kazanmak üzere yoğun bir çalışma temposuna girecektir. Lisansüstü
dersleri arasında ona yeni bakış açıları kazandıracak konuları içeren dersler bulunacaktır.
Bu kitabın yazılma fikri, 2007 yılından başlayarak İnönü Üniversitesi - Sosyal Bi-limler Enstitüsü - Müzik Ana Bilim Dalı - Müzik Bilimleri ve Teknolojisi BilimDalı’nda vermeye başladığım Açık Kaynak Kodlu Müzik Yazılımları ve İşletim Sis-temleri dersinde anlattığım, çoğu insan için ve özellikle müzik alanından mezun olanlar
için sıradışı sayılabilecek konuları hem öğrencilerim için bir ders kitabına dönüştürme
isteğine; hem de bu konulara ilgi duymasına rağmen yeterli kaynağa ulaşamayan kişilere
de faydalı olabilme temeline dayanmaktadır.
Ancak bu noktada bir yanlış anlaşılmaya neden olmamak için bir detayın altını çizmek
isterim. Bu kitap bir GNU/LilyPond Manual’inin birebir çevirisi değildir. Bu kitabı
okuyan kişinin böyle bir beklenti içinde olması yanlış olur. GNU/LilyPond yazılımının
kullanımı, tandığı olanaklar hakkında temel bilgileri örneklerle veren ve sonrasında
ise okuyucunun burada verilen kaynak linkleri detaylı bir biçimde inceleyerek kendini
geliştirmesini bekleyen bir yöntem içinde yazılmıştır bu kitap.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 2
LİNUX NEDİR?
2.1 Linux Hakkındaki Yüzeysel İzlenimler!
Müzik kökenli kişilerin "Linux"un ne olduğu konusunda biraz veya yalan-yanlış bilgilere
sahip oldukları kanısındayım. Bir şekilde bir yerlerden daha çok bilgisayarcıların kullandığı
bir program! gibi biraz çarpık yapıya sahip olan kulaktan dolma ve yüzeysel bilgiye sahip
olduklarına eminim. Ve bu çarpık bilgilerin içinde Linux kullanmanın "çok zor olduğu"
yönünde, onu kullanmanın herkesin harcı olmadığı doğrultusunda görüşler olduğunu da
düşünüyorum.
2.2 İşin Doğrusu Nedir?
Linux bir "program" değildir. Program veya yazılım denilen şey, belirli işlemleri
yapmak üzere çalıştırılan bir uygulamadır. Linux bir çekirdektir ve bu çekirdeği temel
alan çeşitli dağıtımlar vardır. Örnekse: Ubuntu, Linux çekirdeğini temel alan bir dağıtımdır.
Pardus, yine Linux çekirdeğini temel alan bir dağıtımdır. Bilgisayarın tüm donanımlarıyla
birlikte çalışmasını sağlayan bir yapıdan bahsetmekteyiz burada!
1991 yılında Finlandiya’daki Üniversite’de okuyan bir öğrenci olan Linus TORVALDS,
"Minix" çekirdeği üzerinde geliştirmeler yapmaya başlamış ve bu çekirdek kodları bir
e-posta listesinde paylaşmıştı. Bu paylaşımın ardından, bu çekirdek kodlara dünya
üzerindeki pek çok kişi (programcı) katkıda bulundu ve bir süre sonra bir bilgisayarın
3
4 LİNUX NEDİR?
tüm donanımlarını kullanmaya başlayan "İşletim Sistemi" sıfatını taşıyacak yeterlilikte
bir ortam ortaya çıktı. Ve ortaya çıkan bu yapıya bir isim vermek zamanı geldiğinde, bu
hareketi farkında olmadan başlatan TORVALDS’ın ön adından esinlenilerek "Linux" adı
verildi.
2.3 GNU ve Richard M. Stallman
Linux çekirdeği, dünyadaki tüm gönüllüler tarafından geliştirilmeye başlanırken ve
bir İşletim Sistemi olgunluğuna ulaşırken bir yandan da konunun "hukuksal" boyutu
konusundaki açıklığı giderecek bir hareket başladı. UNIX temelli bir işletim sistemi
oluşturmak amacıyla çeşitli arayışlara giren Richard M. Stallman, gelişmekte olan Linux
çekirdeğini benimseyen bir işletim sistemi üzerinde çalışmaya başladı. "GNU is NotUnix" cümlesinin baş harflerini alarak, bilgisayar programcılığındaki "döngü" mantığını
kullanan bir anlam yükleyen ve günümüzde GNU olarak bilinen bir "özgür yazılım"
felsefesi geliştirdi ve Linux çekirdeğine hukuksal bir boyut kazandırmış oldu. Bugün
artık Linux temelli dağıtımlardan bahsederken başına bir GNU ekleyerek, "özgür yazılım
felsefesi doğrultusunda üretilmiş bir Linux dağıtımı" vurgusunu yapmak amacıyla bu
dağıtımın GNU/Linux olduğu vurgusu yapılmaktadır.
2.4 Lisanslar
İnsan tarafından üretilmiş olan her şey, o ürünün başka bir insan tarafından kullanıl-
ması konusunda çeşitli kullanım haklarının sınırları konusunda hukuksal sınırların ortaya
çıkmasına neden olur. Bir ürünün kullanım haklarının sınırlarını ve şeklini hukuksal bir
dille belirleyen metne genel anlamıyla Lisans denmektedir. Eğer bu ürün bir yazılım ise,
bu yazılımı üreten kişi onun başkaları tarafından kullanılmasını çeşitli şartlara bağlayan
bir Lisans türü ile lisanslayarak kamuya, yani diğer insanların (-ki biz bu insanlara son
kullanıcı demekteyiz) kullanımına sunar. Richard M. Stallman GNU Genel Kamu Li-sansı metnini oluştururken, "Özgür Yazılım felsefesine" hukuksal bir boyut kazandırmış
oldu. Bu lisansın özünde bir yazılımı kullanma konusunda, kullanıcıya tanınan çeşitli
özgürlükler yer almaktadır. Bu özgürlükleri şöyle sıralayabiliriz:
• Yazılımın kaynak kodlarına ulaşabilme özgürlüğü,
• Yazılımı istenilen sayıda kopyalama ve dağıtma özgürlüğü,
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
2.5 Free Software Kavramı 5
• Yazılım üzerinde değişiklik yapabilme özgürlüğü,
• Yazılım üzerindeki değişiklikleri yaptıktan sonra, bu yazılımı yine GPL ile lisansla-
yarak dağıtabilme özgürlüğü.
Yukarıdaki özgürlüklere sahip olan ve GNU GPL - GNU General Public License (GNUGenel Kamu Lisansı) ile lisanslanmış olan tüm yazılımlara bu sebepten ötürü Free
Software - Özgür Yazılım denmektedir. GPL - GNU General Public License olarak
bilinen Genel Kamu Lisansı, ilk yazıldığı tarihten bugüne değin üç kez değiştirilmiş olup,
günümüzde üçüncü sürümüne ulaşmıştır. 1
2.5 Free Software Kavramı
Genel olarak, Free Software kavramının Linux hakkında çok detaylı bilgisi olmayan
kişilerde ilk anda sadece Ücretsiz Yazılım olarak algılandığı yönünde genel bir kanı
vardır. Ancak, söz konusu Linux ve felsefesi olduğunda, İngilizce’deki freedom kelimesi,
daha çok liberation kelimesi ile yakınlık içerisindedir. Örneğin bir yazılım ücretsiz olarak
dağıtılıyor olabilir ancak bu yazılımın kaynak kodları açık olmayabilir ve/veya Genel Kamu
Lisansı ile lisanslanmamış olabilir. Bu yüzden biz bu noktada Özgürlük kavramını "teknik
ve bilimsel" anlamda kullanmaktayız.
2.6 Okunması Tavsiye Edilen Bazı Bağlantılar
Artık günümüzde kağıda basılmış kitaplarda veya e-kitaplarda, başka yerlerden (bu-
radaki "yerler" terimi ile web sayfaları kastedilmektedir) kolaylıkla ulaşılabilecek olan
metinlerden alıntı yaparak, salt kitabın içini "dolu imiş" gibi göstermenin gereksizliğine
inanan bu satırların yazarı, siz okuyuculara bazı linkler tavsiye etmektedir. Burada kulla-
nılan "tavsiye" kelimesinin ardında yatan gerçek ifade aslında şudur:
Eğer "Özgür Yazılım ve Linux Felsefesi" konusunda gerçekten fikir sahibi olmak isti-
yorsanız, bu web sayfalarında yazılanlara "öylesine!" göz atmak yerine, lütfen zaman
ayırınız ve sabırla okuyunuz.
1Genel Kamu Lisansı’nın üçüncü versiyonunun İngilizce metnine, Free Software Foundation (ÖzgürYazılım Vakfı) sayfasından ulaşabilirsiniz. Link adresi: http://www.gnu.org/copyleft/gpl.html
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
6 LİNUX NEDİR?
Türkçe Kaynaklardan Bazıları:
Çağatay ÇEBİ - Microsoft EULA üzerine küçük bir inceleme:
http://www.cagataycebi.com/free_articles/freedom/eula_facts.html
Çağatay ÇEBİ - Özgür Yazılım Felsefesine Giriş:
http://www.cagataycebi.com/free_articles/freedom/freedom_brief.html
T-LKD - GNU Felsefesi ve Linux İşletim Sistemi:
http://www.linux.org.tr/linux-nedir/
İki Önemli İngilizce Web Sayfası
Free Software Foundation: http://www.fsf.org/
Free Software Directory: http://directory.fsf.org/
Ülkemizde, Özgür Yazılım Topluluğu olarak adlandırabileceğimiz bir kitle bulun-
maktadır. Bu kitleyi oluşturan kişiler, Linux kullanıcısı, Linux geliştiricisi, Linux katkıcısı
olmak üzere kendi içlerinde, kendilerine göre sınıflandırmalar oluşturacak bir yapılanma
içinde farklı eylemlerde bulunmaktadır. Bununla ilgili web sayfalarını inceleyerek, bu
topluluk hakkında daha fazla fikir sahibi olabilirsiniz.
Türkiye Linux Kullanıcıları Derneği: http://www.lkd.org.tr/
Linux Belgeleri: http://www.belgeler.org/
LibreOffice Türkiye: http://tr.libreoffice.org/
GNOME Türkiye: http://www.gnome.org.tr/
Debian Türkiye: http://www.debian.org.tr/Ana_sayfa
Linux Mint Türkiye: http://www.linuxmint.org.tr/
Google üzerinde arama yaparak, yukarıda son derece özet bir şekilde ağ bağlantılarını
verdiğimiz ağ sayfalarına şu ve benzeri anahtar kelimeleri kullanarak ulaşabilirsiniz: Linux,
Free-Software. . .
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 3
NOTA YAZMA PROGRAMLARI
3.1 Sahipli Yazılımlar
"Sahipli yazılım" denildiğinde, "özgür" olmayan yazılımlardan bahsedilmektedir. "Öz-
gür Yazılım"larda bulunan hiç bir "özgürlük kriteri" sahipli yazılımda bulunmamaktadır.
1. Sahipli Yazılımı "ücret karşılığında" indirebilirsiniz,
2. Sahipli Yazılımı kullanmak için bir ücret ödemeniz ve genel kimlik bilgilerinizi
yazılımı üreten firmaya bildirmeniz gerekmektedir,
3. Sahipli Yazılımın yeni sürümü çıktığında, üst sürüme yükseltmek için yine bir ücret
ödemeniz gerekmektedir.
4. Sahipli Yazılımın sahibi üretici firmadır ve yazılım üzerindeki her türlü değişikliği
sadece üretici firmada çalışan programcı-geliştiriciler yapabilir.
Sahipli yazılımlar dışında, aynı şekilde sahipli işletim sistemleri de bulunmaktadır.
Windows ve MAC OSX işletim sistemleri de sahipli yazılımlar kategorisine girmektedirler.
7
8 NOTA YAZMA PROGRAMLARI
3.2 Sahipli Nota Yazma Programları
Evrensel müzik dünyasında son zamanlarda en çok kullanılan sahipli nota yazma
programlarını şöyle sıralayabiliriz:
1. Finale http://www.finalemusic.com/default.aspx
2. Sibelius http://www.sibelius.com/home/index_flash.html
Bu iki yazılımın dışında da, yine sahipli yazılım olma özelliği taşıyan başka yazılımlar
bulunsa da, diğerleri bu ikisi kadar geniş kullanıcı sayısına ulaşamamışlardır.
3.3 GNU / LilyPond - Kısa Tarihçe
Yurt dışındaki müzikçilerden bazıları, bilgisayar programlama dillerini öğrenme ve
öğrendikleri bilgisayar programlama dilleriyle çeşitli yazılımlar geliştirme konusunda
oldukça verimli ürünler ortaya koymuşlardır. Örnek vermek gerekirse, sahipli "Sibelius"
yazılımını ortaya çıkaranlar Jonathan ve Ben Finn adındaki iki müzisyen kardeştir. Benzer
bir şekilde de, GNU / LilyPond müzik notası yazma programı iki müzisyen tarafından
ortaya çıkartılmıştır.
1995 yılında, Eindhoven Gençlik Orkestrası prova yapmaktayken viyolacı Jan, kornocu
Han-Wen’e yeni bir önemli proje üzerinde çalışmakta olduğunu söyledi. Bu proje, kökeni
MusiXTeX’e dayanan bir yazılım idi. Bu olaydan kısa bir süre sonra Han-Wen bir tesadüf
sonucu, bir orkestra partisyonundan orkestra partilerinin çıktısını almak istedi. Jan’ın
bahsettiği yazılıma göz attı ve çakılıp kaldı. Ardından Han-Wen Jan ile yaptıkları bir
sürü felsefi e-posta görüşmelerinden sonra, 1996 yılında Lilypond üzerinde çalışmaya
başladı ve Jan Han-Wen’in bu projesine katıldı.
"Bir anlamda, bir yazılım geliştirmek, bir çalgıyı öğrenmek gibidir. Başlangıçta
herşey çok eğlencelidir ancak ardından beceremediğiniz bir şeylerle mücadele etmeye
başlarsınız. Bu ilk heyecandan sonra sürekli pratik yapar durursunuz. Çalışmalar ve
gamlar çok sıkıcı gelebilir, eğer öğretmenleriniz, orkestra şefiniz ve dinleyiciler tarafından
cesaretlendirilmezseniz her şeyden vazgeçmeniz an meselesidir."
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
3.4 Linux Dağıtımları 9
Yukarıdaki paragraf 381 sayfalık lilypond kılavuzunun Preface-Önsöz kısmından
alınmıştır. Bu belgenin html biçimindeki ağ bağlantı adresi şöyledir:
http://lilypond.org/doc/v2.10/Documentation/user/lilypond/Preface#Preface
Hollanda Utrecht-Eindoven’den Han-Wen ve Jan’ın yazıp geliştirdikleri Lilypond
yazılımı, özünde yaygın olarak kullanılan Finale ve Sibelius gibi yazılımların çıktı sonuçla-
rındaki bazı tipografik hataların fark edilmesinden sonra, bu hataları içermeyen bir yapıyı
taşıyan bir yazılım oluşturma temel felsefesine dayanmaktadır.
GNU/LilyPond yazılımını geliştirmeye ilk başlayan Han Wen Nienhuys ile JanNieuwenhuizen adlarındaki iki müzikçi-programcı’nın bireysel web sayfası adreslerine
ve günümüzde bu yazılımı geliştirmeye devam eden kişilerin listesine aşağıda verdiğimiz
ağ bağlantılarından ulaşabilirsiniz.
Han Wen Nienhuys’ın Bireysel Web Sayfası:
http://www.xs4all.nl/~hanwen
Jan Nieuwenhuizen’in Bireysel Web Sayfası:
http://joyofsource.com/
Geliştiricilerin Listesini İçeren Web Sayfası:
http://lilypond.org/authors.html
3.4 Linux Dağıtımları
Linux çekirdeği temelli çeşitli dağıtımlar yıllardır geliştirilmekte ve son kullanıcıya
sunulmaktadır. Linux dağtımları özgür yazılım felsefesi gereği genel olarak GNU/GPL
Lisansı ile dağıtılmaktadır. Dünyada 2012 yılı itibarıyla yaygın olarak kullanılmakta olan
Linux çekirdeği temelli dağıtımları içinde en çok ilgi gören on dağıtımın güncel listesine
DistroWatch web sayfasından ulaşma imkanı bulunmaktadır. 1
Aşağıdaki listede en yaygın olarak kullanılmakta olan on Linux dağıtımı yer almaktadır:
Linux Mint
Ubuntu1http://distrowatch.com/dwres.php?resource=major
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
10 NOTA YAZMA PROGRAMLARI
Fedora
Debian
Open SUSE
Arch Linux
PC Linux OS
Cent OS
Mageia
Slackware Linux
Free BSD
Linux çekirdeği temelli dağıtımlarda farklı masaüstü ortamları kullanılmaktadır. Bu
masaüstü ortamlarının listesi ise aşağıdadır:
GNOME
KDE
XFCE
LXDE
Yukarıda listesini vermiş olduğumuz farklı masaüstü ortamları, kullanıcının beğenisine,
çalıştığı bilgisayarın konfigürasyonuna göre çeşitli seçenekler sunmaktadırlar.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 4
Linux Dağıtımlarının Gelişimi
Linux Dağıtımları, sürekli geliştirilmektedir. Her Linux dağıtımının kendine ait yazılım
paketi depoları bulunmaktadır. Bu depolardaki yazılımları temel alırsak, güncelleştirmeler
kendi içlerinde ikiye ayrılmaktadır.
Yazılım GüncellemesiYazılımın yeni sürümü çıktığında yapılan güncellemeler,
Güvenlik GüncellemesiYazılım/Yazılımlar ile ilgili güvenlik açıklarının kapatıldığı güncellemeler.
Özgür yazılımlar, geliştirilme süreçleri içinde çeşitli testlere tabii tutulurlar. Geliştirilme
süreçlerinde, o yazılıma çeşitli ek özellikler ilave edilmiş olabilir. Bu ek özelliklerin
doğru çalışıp çalışmadığını geliştiriciler denemektedirler. Ancak, testçi sıfatını taşıyan
ve geliştiriciler dışındaki kişiler de yazılımlardaki bu yeni özelliklerin çalışıp çalışmadığını
denemektedirler. Bu testler sırasındaki bazı aksaklıkları testçiler, geliştiricilere bildirirler
ve karşılıklı iletişim yoluyla yazılımın yeni sürümü için olabildiğince kusursuzca çalışan bir
üst sürüme doğru yolculuk, sürmeye devam eder. Yazılımın yeni özellikler taşıyan üst
sürümü, kamuya duyurulacak olgunluğa ulaştığında, geliştiriciler aracılığı ile bu duyuru
yapılır ve yazılım kullanıcıları üst sürümlere geçerler. Yazılımlara geliştirilme sürümleri
sürecinde çeşitli etiketler verilir.
11
12 Linux Dağıtımlarının Gelişimi
4.1 Yazılım Geliştirme Süreçleri
Örneğin henüz yazılımın yeni sürümünün ilk adımları atılmış ancak sorunları tam
olarak giderilmemiş ise, bu sürümün başına Alpha etiketi eklenir.
Yazılımın "Alpha" sürümünü deneyerek, geliştiricilere hata raporları gönderen testçiler
sayesinde yazılımdaki sorunların en aza indirildiği bir seviyeye ulaşan sürüme ise Betaetiketi verilir.
"Beta" sürümünü deneyerek, karşılaştıkları sorunları geliştiricilere bildiren testçilerin
hata raporları doğrultusunda yazılımı geliştiren geliştiriciler, hata raporları ile bildirilen
sorunları gidererek artık Kararlı (Stable) hale gelmeye başlamasına rağmen, yine de
bazı sorunlar içerebileceği olasılığını düşünerek bu sürüme Sürüm Adayı (ReleaseCandidate) etiketini verdikleri yeni bir sürüm daha yayınlarlar.
Aynı şekilde, bu sürümü deneyen testçilerden gelen raporlar üzerine, yazılımdaki
eksikleri kapatarak sorunsuz hale geldiğine inandıkları sürümü hazırlayan geliştiriciler
Kararlı (Stable) sürüm etiketini verdikleri sürümü yayınlarlar. Yazılımın geliştirilme sü-
reçlerinde sadece sorunlar raporlanmamaktadır geliştiricilere. Yazılıma eklenmesi önerilen
bazı yeni özellikler de bir anlamda hata raporu bildirmek kadar önemlidir. Bu yeni öneriler
içinde, mantıksal bir çerçeve taşıyan ve teknik anlamda imkanlar dahilinde eklenebilecek
durumda olan yeni özellikler elbette yazılıma eklenmektedir. Kararlı (Stable) sürüme
ulaşıldığında, önerilen özellikler arasından seçilenler yazılıma eklenmiş durumdadır.
Yukarıda özetlenmiş olan geliştirim süreci, sadece yazılımları kapsamamakta ve aynı
yöntem Linux Dağıtımları (Linux Distrubutions) için de uygulanmaktadır.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
4.2 Ülkemizde Geliştirilen Linux Dağıtımları 13
4.2 Ülkemizde Geliştirilen Linux Dağıtımları
Ülkemizde geçmiş yıllarda Linux çekirdeği temelli çeşitli dağıtımlar geliştirilmeye
çalışılmıştır. Bu dağıtımların genel listesini aşağıda sıralamaktayız:
• Boreas Linux
• Gelecek Linux
• IstanbulX
• Pratix Linux
• Turkix Linux
• Uludağ Ulusal Dağıtım / Pardus Linux
Yukarıda listelediğimiz dağıtımların geliştirilme süreçleri çeşitli nedenlerle sürdürüle-
memiş olsa da, ülkemizde Linux dağıtımı geliştirme anlamında, özgür yazılım araçları ile
sürüm ve yazılım geliştirme becerisi ve birikimi anlamında oldukça donanımlı bireylerin
varlığı azımsanmayacak derecede olup, ülke genelinde Özgür Yazılım ve Linux algısı
giderek artan bir ivme kazanmaya devam etmektedir.
4.3 Pardus - Linux Dağıtımı Üzerine
Pardus Panthera Tullina artık soyu tükenmiş olan bir Anadolu parsı’nın adıdır. Bu
tür ile ilgili daha geniş bilgiye ulaşmak için, lütfen aşağıdaki linki inceleyiniz:
http://tr.wikipedia.org/wiki/Anadolu_pars%C4%B1
Bu Anadolu parsı’nın Latince kökenli ismi, 2003 yılında Tübitak - BİLGEM (Bilişim
ve Bilgi Güvenliği İleri Teknolojiler Araştırma Merkezi) tarafından geliştirilmeye başlanan
Linux çekirdeği temelli bir ulusal dağıtım için ilham kaynağı olmuş ve bu dağıtıma
PARDUS adı verilmiştir.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
14 Linux Dağıtımlarının Gelişimi
4.3.1 PARDUS - Kısa Tarihçe
Pardus projesi, özgür yazılım yaklaşım ve yöntemlerini kullanarak, öncelikle kurumsal
kullanıcılar için rekabetçi ve yenilikçi bir Linux dağıtımı geliştirmeyi ve bu dağıtım üzerinde
kurumsal pazar için ürün ve çözümleri doğrudan ya da Türkiye özgür yazılım ekosistemi
eliyle üretmeyi hedefler. Pardus’un ilk sürümü, 26 Aralık 2005’te yayımlanmıştır. Pardus,
kullanıcılarına İnternet’te gezinme, e-posta okuma, güvenli iletişim sağlama, bilgisayarın
çoklu ortam özelliklerini kullanma, müzik dinleme ve film izleme gibi olanakların hepsini
sağlar. Pardus Projesi, 2009 yılına kadar BİLGEM’in özkaynakları ile finanse edilmiş ve
ilk defa 2009 yılında milli bütçeden 3 yıl süreyle kullanılacak kaynak ayrılmıştır. Pardus,
Türkiye’de yaklaşık 200-250 bin kişi tarafından kullanılmaktadır.1
4.3.2 PARDUS ve Topluluk Yapıları
Pardus’un yayılması ve daha geniş bireyler ve kurumlar tarafından kullanılmasını
desteklemek amacıyla çeşitli "topluluk" yapıları oluşmuş durumdadır. Bu bağlamda,
web siteleri üzerinden topluluk çalışmalarını yürüten iki ayrı oluşumdan bahsetmek
mümkündür.
4.3.3 Özgürlük İçin
Web sayfası adresi http://www.ozgurlukicin.com olan Özgürlük İçin Toplu-luğu’nun başlangıç sürecinde yönetişim yapısı, önce özel bir firma tarafından (Art
İstanbul) yürütülmeye başlanmış, ancak Nisan 2011’den itibaren Art İstanbul ile Tübitak
arasındaki sözleşmenin fesh edilmesinin ardından, bu web sitesinin yönetişim çalışmaları
benim de aralarında bulunduğum bir kısım Gönüllü Katkıcılar tarafından yürütülmeye
başlanmıştır. Bu web sayfasında, Haberler, Ajans, Temalar gibi alt kategoriler bu-
lunmaktadır. Bu web sayfası şu anda, gönüllü topluluk üyeleri tarafından yürütülen ve
topluluk haberlerini, güncel gelişmeleri duyuran bir yapıya dönüşmüştür. Ağ adresi ise
son ekteki farklılık ile küçük bir değişime uğramış bulunmaktadır. Özgürlük İçin web
sayfasının http://www.ozgurlukicin.org olarak yayındadır.
1http://tr.pardus-wiki.org/Pardus
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
4.3 Pardus - Linux Dağıtımı Üzerine 15
4.3.4 Pardus-Linux.Org
Web sayfası adresi http://www.pardus-linux.org/ olan Pardus-Linux.Org Top-luluğu, Pardus Kullanıcıları Derneği(http://www.pkd.org.tr/) üyelerinin de içinde
bulunduğu ve çoğunlukla GNU/Linux felsefesine daha taviz vermeyen bir yaklaşımla
bağlı olan kişilerden oluşan bir başka topluluktur.
4.3.5 GNU / LilyPond Yazılımı ve Pardus
GNU / LilyPond yazılımının Pardus paket deposuna eklenmesi yönündeki girişimim,
Pardus dağıtımının geliştirilmeye başlandığı ilk günlerden itibaren, Pardus geliştiricileri ile
yapmış olduğum yüz yüze görüşmelerde ve sonrasındaki e-posta yazışmaları neticesinde
sonuca ulaşmıştır. Daha sonra GNU / LilyPond dosyalarını KDE masaüstündeki KATE
metin düzenleyicisi yazılımına ilave edilen bir eklenti olan ’lilykde’ eklentisi ile hazırlama
olanağı kazanılmasının ardından, bu eklentinin de yaptığım girişimler sonucunda Pardus
deposunda eklenmesi olanağı olmuştur.
Pardus 2009 sürümü ile KDE 4 masaüstüne geçilmesinin ardından Frescobaldi
başlığını taşıyan müstakil bir yazılım haline gelen LilyPond dosyası hazırlama editörü,
Pardus depolarında yerini almaya başlamıştır.
Son masaüstü sürümü olan Pardus 2011.2’de şu anda GNU / LilyPond’un 2.4.10
nolu sürümü kullanılmaktadır.
TÜBİTAK’ta yapılan yönetici değişikliklerinin ardından, Pardus geliştiricileri görevle-
rinden istifa etmeye başlamışlar ve 27 Ocak 2012 tarihinde Pardus geliştiricisi Semen
CİRİT tarafından e-posta aracılığıyla yapılan bir duyuru ile Pardus 2011.2’nin geliştiril-
mesi, paketlerinin güncellemesi gibi yaşamsal desteğin durdurulduğu duyurulmuştur.
23 - 24 Mart 2012 tarihlerinde Tübitak - BİLGEM tarafından PARDUS’UN GE-LECEĞİ başlıklı bir çalıştay düzenlenmiştir. Bu çalıştay sonucunda, bireysel sürümgeliştirilme çalışmalarının topluluğa bırakılacağı ancak TÜBİTAK’un PARDUS - Ku-rumsal Sürüm’ünü geliştirmeye devam edeceği sonucu çıkmıştır.
Çalıştay sonrasında bu kitabın yazılım sürecinin sonlarına doğru, PARDUS’un bireysel
sürümünün geliştirilmesi ile ilgili olarak gönüllülerin kendi içlerinde Pisi Linux adını taşıyan
ve daha önce PARDUS’un pisi paket yapısını kullanan bir dağıtım olarak TÜBİTAK -
BİLGEM’den bağımsız bir sürüm geliştirmeye başladıkları gözlemlenmiştir. 2
2http://www.pisilinux.org/
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
16 Linux Dağıtımlarının Gelişimi
Diğer yandan ise, Tübitak - BİLGEM bünyesinde Pardus’un Kurumsal sürümünün
geliştirilmesine devam ederek Pardus 2013 adını taşıyan bir sürüm çıkardığını görebiliriz.3
PARDUS PORTAL adını taşıyan web sayfasında daha çok kurumsal sürüme ağırlık
verildiği ve bir yandan da aynı sayfada Pardus’un Topluluk Sürümü’nün yayınlandığı
haberi duyurulmuştur. 4
4.4 Diğer dağıtımlar ve GNU / LilyPond
Şu anda, dünyada ve ülkemizde kullanılan Linux dağıtımlarının paket depolarında
GNU / LilyPond yazılımının farklı sürümleri bulunmaktadır. Bu kitabın yazılma sü-
reci boyunca Ubuntu5 ve Linux Mint6 paket depolarında bu yazılımın 2.14.2 nolu
sürümü kullanılmakta iken, kitabın yazılma sürecinin tamamlanmasının hemen ardın-
dan GNU/LilyPond yazılımının kararlı sürümü olarak 2.16.2 sürümü kullanılmaya baş-
lanmıştır. Ayrıca, bu yazılım Windows ve MAC OSX gibi farklı işletim sistemlerine
kurulabilmekte ve sorunsuzca kullanılabilmektedir.
3https://www.pardus.org.tr/anasayfa4https://www.pardus.org.tr/etkinlikler5http://www.ubuntu.com6http://www.linuxmint.com
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 5
TEX ve LATEX
1978 yılında Donald KNUTH tarafından geliştirilmeye başlanmış bulunan ve bir bili-
şimsel dizgi dili olan TEX ile bir kitap dizgisi/tasarımı ve yazımı Unix temelli bilgisayarlarda
son derece ekonomik bir donanım yapısı aracılığı ile oldukça kaliteli dizgi sonuçları elde
edilmesini sağlamaktadır. Daha çok matematik, bilgi teknolojileri bölümleri, ekonomi,
mühendislik, fizik gibi dünyadaki Üniversitelerin Fen Bilimleri alanları tarafından daha
çok kullanılmaktadır. Detaylı bilgi için: [1]
1980 yılında matematikçi Leslie LAMPORT tarafından geliştirilmeye başlanan TEX
temelli bir yazılım olan LATEX ise, metin belgelerine matematik formüllerinin rahatça
yerleştirilmesi temel amacını güden bir yazılım olarak geliştirilmeye başlanmıştır. Daha
sonra LATEX kullanımı giderek tüm dünyada yaygınlaşmaya başlamış ve özellikle bireysel
ve kurumsal kullanım anlamında günümüzde ciddi bir seviyeye ulaşmıştır. Yurtdışındaki
bazı Üniversitelerin Lisansüstü tezleri LATEX ile yazılmaya başlanmış olup, ülkemizde
ise LATEX kullanımı daha çok Üniversitelerimizin Fen Bilimleri alanında eğitim verilen
birimlerinde kullanılmaktadır. Detaylı bilgi için: [2]
5.1 MusiXTeX
TEX programının devasa bir makrolar paketi olması, kendisi de aslında bir semboller
dizgesi olan müziksel yazım dili için önemli bir kaynaktır.
TEX ile müzik notalarının yazılabilme olanağı 1987 yılında ilk ortaya çıktığında sadece
17
18 TEX ve LATEX
tek dizekli notalar yazılabilmekteydi. [3]
1991 yılında Daniel Taupin MusiXTeX paketini oluşturdu ve böylece birden fazla
dizek satırı içeren müzik notaları yazılabilir hale geldi. Ancak, 1991 yılında MusiXTeX
paketi’nin yazarı olan Daniel Taupin’in 2003 yılında bir dağ tırmanışı sırasında geçirmiş
olduğu kaza neticesinde vefat etmesi nedeniyle günümüzde bu yazılım Don Simons ve
Hiroaki Morimoto tarafından geliştirilmektedir. [4]
5.2 Nota Dizgisi
Dizgi kelimesi Türk Dil Kurumu sözlüğünde "Basım için harfleri, kelimeleri, satır-ları, sayfalar oluşturacak biçimde düzenleme" şeklinde tanımlanmaktadır. İngilizce
dilindeki engrave kelimesi için sözlüklerde "oymak; kabartma yapmak; işlemek" şek-
linde çeviriler yer almaktadır. 1950’li yıllarda, bilgisayar denilen cihazlar henüz toplum
hayatına girmeden önce, müzik notaları da kitaplar, gazeteler ve dergiler gibi matba-
alarda basılmaktaydı. Kitap, gazete ve dergi için kullanılan dizgi tekniği, Avrupa’da
müzik notaları için de kullanıldığından, müzik notalarının basımında estetik kaygılar herzaman önem taşımaktaydı. Müzisyenler için daima notanın güzel ve okunaklı yazılmış
olanı makbuldu. Bu yüzden, klasik dizgi tekniği ile hazırlanmış olan notalarda da, güzel
ve okunaklı olma kaygısı her zaman bulunmaktaydı. GNU/LilyPond yazılımının web say-
fasında LilyPond Öyküsü [5] başlığı ile hazırlanan yazı dikkatle incelendiğinde, LilyPond
yazılımının oluşturulmasının arkaplanında, günümüzde çok kullanılmakta olan Finale ve
Sibelius gibi nota yazma programlarının çıktılarındaki tipografik hataların neden olduğu
olumsuzlukların sonucu olarak böylesi bir yazılım oluşturma ihtiyacının gündeme geldiği
anlaşılabilecektir.
5.3 GNU/LilyPond Özellikleri
GNU/LilyPond programı, nota çıktılarında zerafet ve okunaklı olmak kriterini ön
planda tutan bir amacı taşımaktadır. Bu yazılım GNU/Genel Kamu Lisansı [6] ilelisanslanmış olan bir Özgür Yazılım’dır.
Özgürdür, çünkü:Ücretsizdir, özgürce indirilebilir ve kullanılabilir,
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
5.4 Nasıl Kullanılır? 19
Özgürdür, çünkü:Herkesle paylaşılabilir,
Özgürdür, çünkü:Kaynak kodları açıktır,
Özgürdür, çünkü:Özgürce geliştirilebilir.
5.4 Nasıl Kullanılır?
GNU / LilyPond yazılımını Windows, MAC OSX ve Linux gibi tüm işletim sistemlerine
indirebilir ve kullanabilirsiniz. Tüm işletim sistemlerinde yer alan düz metin düzenleme
yazılımları ile LilyPond dosyanızı oluşturabilirsiniz.
Metin ve müzik notasının içi içe olduğu belgeler oluşturabilirsiniz.
5.5 Kullanımı Zor mudur?
Sibelius ve Finale gibi yazılımları kullanan kişiler için oldukça zor gelebilir. Bu kitabın
amacı ise, bu zorlukları adım adım aşma konusunda okuyucuya yardımcı olmak olacaktır.
Biraz sabırlı ve meraklı olmak, bu yazılımı kullanmaya başlamak için anahtar kelimeler
olma özelliği taşımaktadır.
5.6 GNU / LilyPond İndirme Adresleri
Bu kısımda, üç temel işletim sistemi için indirme adresleri verilecektir.
Bu kitabın hazırlandığı tarihlerde GNU / LilyPond yazılımının güncel ve kararlı sürüm
numarası 2.16.2 olarak tanınmakta idi. Aşağıda ağ adresi verilen indirme bağlantısında,
GNU / LilyPond yazılımını kullanmakta olduğunuz işletim sistemi için indirebileceğiniz
linkler yer almaktadır.
http://lilypond.org/download.html
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
20 TEX ve LATEX
5.7 Windows İçin İndirme Adresi
Windows için GNU / LilyPond yazılımını indirmek istiyorsanız, aşağıda ağ bağlantısını
verdiğimiz adresi web tarayıcınızda açabilirsiniz.
http://lilypond.org/windows.html
5.8 MAC OS X İçin İndirme Adresi
MAC OS X için GNU / LilyPond yazılımını indirmek istiyorsanız, aşağıda ağ bağlan-
tısını verdiğimiz adresi web tarayıcınızda açabilirsiniz.
http://lilypond.org/macos-x.html
5.9 Unix ve Linux İçin İndirme Adresi
Çoğu Linux dağıtımının paket deposunda GNU / LilyPond yazılımı yer almaktadır.
Bazı dağıtımların paket depolarında yer alan GNU / LilyPond yazılımının sürümü, şu
anki güncel sürüme göre biraz daha eski olabilir. Eğer, bazı Linux kullanıcıları GNU
/ LilyPond paketinin en son sürümününün kaynak kodunu indirerek kurmak isterlerse
aşağıdaki bağlantı adresini kullanabilirler.
http://lilypond.org/unix.html
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 6
Kitabımızdaki İşletim Sistemi
Bu kitabın yazarı, Özgür Yazılım Felsefesini benimsemiş ve bu felsefe doğrultu-
sunda bilgisayarında bir Linux dağıtımı kullanmakta olduğu için, bu kitabı oluştururken
de, vereceği örnekleri Linux dağıtımı/dağıtımları üzerinden verecektir. Ancak, GNU /
LilyPond yazılımı ile oluşturulan müzik notasının sonucu değişmeyeceği için, bu kitabın
ilerleyen bölümlerinde anlatılacak olan detaylar tüm platformlar için geçerlidir.
6.1 Platform Bağımsızlığı
GNU / LilyPond dosyası oluşturulurken hangi işletim sistemini kullanmakta oldu-
ğunuzun hiç bir önemi yoktur. Çünkü, hangi işletim sisteminizi kullanırsanız kullanın,
eğer kullandığınız yazılım bir Özgür Yazılım ise, elde etmek istediğiniz sonuca tüm
platformlarda ulaşabilirsiniz. Burada kullanılan platform ile, İşletim Sistemi Platformu
anlamına gönderme yapılmaktadır. Platform bağımsızlığını örneklemek amacıyla dört
ölçü süren kısa bir ezgi hazırlanmış ve bu ezgi MAC OS X işletim sistemine kurulmuş
olan GNU / LilyPond yazılımı ile derlenmiş ve aynı dosya üç ayrı Linux dağıtımında
derlenmiş ve hepsinde de aynı PDF dosyası elde edilmiştir.
21
22 Kitabımızdaki İşletim Sistemi
6.2 Platform Bağımsız Ezginin Kaynak Kodları
Platform bağımsız ezgi örneğimizin lilypond dosyasının kaynak kodlarını önce aşağıda
sunalım:
\version "2.12.3"
\header {
title = "Platform Independence Melody"
composer = "Server Acim"
}
global = {
\key c \major
\time 2/4
}
violin = \relative c’’ {
\global
c4 d e f | g e c2
}
\score {
\new Staff \with {
instrumentName = "Violin"
} \violin
\layout { }
}
Yukarıda kaynak kodlarını sunmuş olduğumuz bu dosyadaki kodlamaların ne anlama
geldiğini kitabımızın ilerleyen bölümlerinde açıklayacağız.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
6.2 Platform Bağımsız Ezginin Kaynak Kodları 23
Yukarıda kaynak kodlarını verdiğimiz LilyPond dosyasını ”platform_independence_melody.ly”
olarak kaydediyoruz. GNU / LilyPond dosyalarının ”extension” yani son ek olarak bilinen
dosya yapısı için ”.ly” ekini kullanmalıyız. Dosyayı kaydetmemizin ardından, terminal
veya konsole olarak bilinen komut ekranında derlemek üzere bir terminal açıyoruz ve
aşağıdaki komutu veriyoruz.
lilypond platform_independence_melody.ly
Ve dosya derlenmeye başlıyor.
Şekil 6.1: Dosyanın Derlenmesi (Linux)
Derleme işleminin ardından elimizde platform_independence_melody.pdf ve
platform_independence_melody.ps olmak üzere bir PDF(Portable Document Fıle)
ve Postscript dosyası oluşuyor.
Bu derleme işlemini, XFCE 1 masaüstünü kullanan XUbuntu 11.10 2 dağıtımını
kullanarak gerçekleştirdik.
1http://www.xfce.org/2http://www.xubuntu.org/
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
24 Kitabımızdaki İşletim Sistemi
6.3 MAC OS X ile Derleme İşlemi
Aynı dosyayı bu kez MAC OS X işletim sistemi üzerine kurulmuş bulunan GNU /
LilyPond ile derleyeceğiz. LaTeX dosyası oluşturma yazılımı olan TexShop yazılımına
kurulmuş olan LilyPond dosyası oluşturma eklentisi sayesinde TexShop 3 ile dosya
derlendi ve nota sonucunu gördüğümüz PDF dosyası elde edildi.
Şekil 6.2: Dosyanın Derlenmesi (MAC OS X)
3http://pages.uoregon.edu/koch/texshop/
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
6.4 PARDUS ile Derleme 25
6.4 PARDUS ile Derleme
Aynı dosya bu kez, Tübitak BİLGEM tarafından geliştirilen Pardus - Linux 4 işletim
sistemi ile, pardus paket deposunda yer alan GNU / LilyPond yazılımı ve bir LilyPond
dosya düzenleyicisi olan Frescobaldi 5 ile derlendi ve yine aynı PDF dosyası elde edildi.
Şekil 6.3: Dosyanın Derlenmesi (PARDUS)
6.5 LilyPond Düzenleyicileri
Windows ve MAC OS X işletim sistemlerine GNU / LilyPond yazılımını kurduğunuzda,
LilyPond dosyalarını oluşturabileceğiniz bir düzenleyiciye sahip olabiliyorsunuz. Ancak,
bunun yanı sıra başka düzenleyicilerle de çalışabilirsiniz.
Bunlardan biri de JEdit 6 yazılımıdır. Bu yazılımın LilyPond Tool 7 adını taşıyan
bir eklentisi bulunmaktadır. JEdit yazılımını kurduktan sonra bu eklentiyi de indirip
kurarak LilyPond dosyalarını oluşturma imkanınız bulunmaktadır. Ve özellikle kodların
4http://www.pardus.org.tr/5http://www.frescobaldi.org/6http://jedit.org/7http://lilypondtool.organum.hu/
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
26 Kitabımızdaki İşletim Sistemi
renklendirilmesi özelliği sayesinde (Syntax Highlighting) kodların oluşturulması daha da
kolaylaşmaktadır.
Şekil 6.4: Örnek Dosyanın JEdit Çalışma Penceresindeki Görünümü
Bir başka LilyPond düzenleyicisi ise Denemo 8 yazılımıdır. Kendine ait bir grafik
arayüzü bulunmayan LilyPond yazılımını kullanabileceğiniz bir başka alternatif olarak
karşımıza çıkan bu yazılım da GNU / Genel Kamu Lisansı ile lisanslandığı ve böy-
lece bir Özgür Yazılım olduğu için, Windows, MAC OS X ve Linux platformlarında
kullanılabilmektedir.
LilyPond dosyası oluşturma olanağı tanıyan diğer yazılımların veya eklentilerin neler
olduğunu, GNU / LilyPond sayfasının ”Easier Editing” 9 bağlantısına ulaşarak öğrenebi-
lirsiniz. Biz kitabımızda gelişimi sürdürülen ve her geçen gün daha da iyi bir seviyeye
ulaşan bir LilyPond düzenleyicisi, Frescobaldi hakkında ilerleyen bölümlerde daha geniş
bilgi vereceğiz.
8http://www.denemo.org/9http://lilypond.org/easier-editing.html
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 7
LilyPond Kurulumu
Her Linux dağıtımının kendine ait bir paket deposu vardır. Yazılımlar bu paket deposu
aracılığı ile kurulurlar. LilyPond yazılımını aramak için ”Software Manager” veya ”Software
Center” gibi bir aracı kullanarak önce LilyPond yazılımımızı arayalım.
Daha sonra da ”Yazılım Merkezi”mizden, LilyPond yazılımımızı kuralım.
7.1 Frescobaldi Kurulumu
Frescobaldi yazılımı son derece yetenekli bir LilyPond dosyası hazırlama yazılımıdır.
Bir önceki kısımda, yazılım merkezine girip sadece ”Frescobaldi” yazılımı araması da
yaparak ”Frescobaldi” ve ”LilyPond” yazılımını aynı anda da kurabilirdik. Böylesi daha
pratik olurdu. Ancak, biz burada yazılım yöneticisi ile paket deposundan yazılımı kurmayı
da örneklemek istedik.
7.2 Minik Bir LilyPond Dosyası Hazırlamaya Başlayalım!
Frescobaldi yazılımının LilyPond dosyası hazırlama işlemini ne kadar kolaylaştırdığını
anlayabilmek için, ”Frescobaldi yazılımı öncesi” LilyPond dosyalarının nasıl hazırlandığını
anlamakta yarar bulunmaktadır.
27
28 LilyPond Kurulumu
Şekil 7.1: ”LilyPond” paketi arama sonucu
7.2.1 Adım 1
Bir metin düzenleyicisi açalım ve ilk LilyPond dosyasını oluşturmaya başlayalım. İlk
yapacağımız şey, bilgisayarımızda kurulu olan LilyPond sürümünü eklemek olacaktır.
Bunun için version kodunu girerek programa sürüm numarasını gireceğimizi belirtmiş
olacağız. Ardından bir boşluk bırakarak, tırnak içinde sistemimize kurulu olan lilypond sü-
rümünün numarasını yazıyoruz. Burada örnek olarak "2.14.2" yazıyoruz. Tam kodumuz
şöyle olacak:
\version "2.14.2"
Ardından notaları girmeye başlayacağız. Ancak, çok önemli bir detaydan bahsetmek
zorundayız. LilyPond dosyası oluştururken kullandığımız bazı işaretlerin çok büyük önemi
vardır. Örneğin, { işaretinin İngilizce karşılığı curly brace olarak adlandırılmaktadır.
Programlama dilinde bu sembollerin çok büyük önemi vardır. LilyPond dosyaları yazılır-
ken ASCII adı verilen bir metin belgesi formatı kullanılır. Bu yüzden, notayı girmeye
başlamadan önce bir ”curly brace” açılır ve ardından notaların harf karşılıkları girilir ve
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
7.2 Minik Bir LilyPond Dosyası Hazırlamaya Başlayalım! 29
Şekil 7.2: ”LilyPond” paketi kurulumu
girdi işleminin bitmesinin ardından ”curly brace” kapatılır. Oluşturduğumuz dosyada
büyük harf ve küçük harfin önemi çok büyüktür. Notaların harf karşılıklarını aşağıdaki
tabloda görebilirsiniz.
Nota Adı Harf KarşılığıLA a
Sİ b
DO c
RE d
Mİ e
FA f
SOL g
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
30 LilyPond Kurulumu
Notaların süreleri için ise son derece basit bir işlem yapıyoruz ve sürenin numarasını
notanın harf karşılığını yazmamızın hemen ardından arasında boşluk bırakmadan ekliyoruz.
Burada yazacağımız nota örneğine başlamadan önce, birkaç bilgi vermek istiyorum.
• LilyPond yazılımında ön tanımlı ölçü birimi 4/4’lüktür.
• LilyPond yazılımında ön tanımlı nota süresi dörtlük’tür.
Bu bilgilerden sonra curly brace açıyoruz ve notaları giriyoruz. Nota girişimiz bitti-
ğinde ise parantezi kapatıyoruz.
{
c’ d’ e’ f’
}
Bu kodlamada bir detay dikkatinizi çekmiştir. Her bir notanın arasında bir boşluk
bıraktık. Notanın harf karşılığından sonra da tek tırnak işaretini yerleştirdik. Tek tırnak
işaretinin LilyPond kodlamasındaki anlamı, burada yazmakta olduğumuz notaların piya-
nonun ORTA DO dediğimiz ses bölgesi içinde olduğunu işaret ettiğidir. Bununla ilgili
detayları gelen kısımda anlacağız. Yukarıda kodlar ile dörtlük süre birimi içinde DO, RE,
Mİ, FA notalarını elde ediyoruz.
� � �� ��Şekil 7.3: Birinci Nota Örneği
7.2.2 Adım 2
Bir önceki bölümde ”platform bağımsız ezgi”yi oluştururken bunu anlatmıştık ancak
bu sonucu elde etmek için en basit düzeyde nasıl bir girdi metni oluşturduğumuzu ve
ardından ne yaptığımızı tekrar anlatalım.
Yukarıdaki kodları oluşturduğumuz dosyayı notaornegi1.ly adı ile kaydettik. Dosya
adlarını verirken Türkçe karakter kullanmamaya ve dosya adında boşluk bırakmamaya
dikkat ediyoruz. Çünkü kullandığımız sistem yapay bir şekilde Türkçe olsa bile, sistemi-
mizin temel yapısı İngilizce’dir. Oluşturduğumuz dosyayı bir terminal açarak derlemek
için aşağıdaki komutu veriyoruz.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
7.3 LilyPond Belgelendirmeleri 31
lilypond notaornegi1.ly
Derleme sonucunda notaornegi1.pdf adında bir dosyamız oluşuyor. Bu PDF
dosyasında yazdığımız kodların nota şekline dönüşmüş halini görüyoruz.
7.3 LilyPond Belgelendirmeleri
GNU / LilyPond web Ana sayfasından, son derece detaylı bir şekilde hazırlanmış
olan ve İngilizce karşılığı Manual olan, dilimize EL Kitabı olarak çevirebileceğimiz
belgelere ulaşabilirsiniz. [7] Bu belgeler ”İngilizce” dilinde hazırlanmıştır. Türkçe çevirileri
bulunmamaktadır. Bu İngilizce belgeleri okuyarak yazılım hakkındaki tüm kullanım
detaylarına ulaşılabilir. Bu belgeler farklı başlıklarla sınıflandırılarak oluşturmuştur. Bu
sınıflandırmalar hakkında birkaç bilgi verelim.
Learningİlk okunması gereken temel belge.
NotationYazılımın kullanımı hakkında daha detaylı bilgiler bu belgede yer almaktadır.
UsageYazılımın kullanımının daha da derinlemesine detaylarla anlatıldığı belgedir.
Music glossaryBu belgeler yukarıda ilk üç metnin okunmasının bitirilmesinden sonra ”seçenekli-
optional” olarak sunulmuştur. Bu belgede müzik terimlerinin bir listesi oluşturulmuş
ve bu terimlerin yazılım içindeki kullanımına referans verilmiştir. Bu belge de
”optisonel” yani isteğe bağlı olma özelliği göstermektedir.
EssayBu belgede ise, nota yazım tipografisi ve bu bağlamda bilgisayarların rolü irdelen-
miştir. Opsiyonel belgedir.
SnippetsBu sayfalarda, GNU / LilyPond yazılımının kullanım örnekleri ve bu örneklerin
nasıl oluşturulduğuna dair, bol örnekli sayfalar yer almaktadır.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
32 LilyPond Kurulumu
Bu belgeler, web sayfası (HTML) formatında okunabileceği gibi, yukarıdaki belgelerin
ayrıca PDF dosyaları da yer almaktadır. Böylece bu belgelere hem çevrimiçi (online)
olarak ulaşabileceğiniz gibi PDF dosyalarını da ayrıca indirerek kendi bilgisayarınızdaki
PDF okuyucusu üzerinden okuyabilirsiniz.
Bu web sayfasında, LilyPond yazılımının daha önceki sürümleri için hazırlanmış olan
El Kitaplarına da ulaşabilme olanağı bulunmaktadır.
El Kitapları Hakkında Birkaç Söz
Bazı kişiler ”Bu belgeleri okuyabilmek ve anlayabilmek için İngilizce bilgim yetersiz!”
gibi bazı bahaneler öne sürebilirler. Ancak, bu el kitaplarını okumak ve anlayabilmek
için ”filoloji” mezunu seviyesinde bir İngilizce okuryazarı olunması gibi bir ön şart bu-
lunmamaktadır. Tüm ”Nasıl?” sorularının cevapları bu belgelerin içinde yer almaktadır.
Belgeleri ”sabırla” okumak, ”anlamayı istemek” gibi kilit sözcükler başarıya giden yolun
anahtarı olma özelliği taşımaktadırlar.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 8
LilyPond - Dosya Yapısı
Kitabımızın bu bölümünden başlayarak, LilyPond dosya yapısı hakkında temel bilgileri
vermeye ve bu bilgileri yeni örnekler ile pekiştirmeye çalışacağız.
LilyPond dosyalarını hazırlarken Frescobaldi LilyPond düzenleyicisinin kullanıcının
işini ne denli kolaylaştırdığını daha net olarak ortaya çıkarmak için nota örneklerini
önce Frescobaldi yardımı olmadan hazırlayacağız ve sonrasında Frescobaldi ile notaları
hazırlamanın aşamalarını göstereceğiz. Ancak, örneklerimizi sunmaya başlamadan önce
bir detayın altını çizmemiz gerekmektedir.
Her ne kadar Frescobaldi yazılımının LilyPond dosyası hazırlama sürecinde kullanıcının
işini kolaylaştırdığını düşünsek de, LilyPond dosyası kodlama temelleri’nin iyi bilinmesi
gerekmektedir. Bu temel bilgilerin kazanılması için ise, bir önceki bölümün sonunda ağ
adresleri verilmiş olan kullanıcı el kitaplarının iyi okunması gerekmektedir.
8.1 Sahanlık (Preamble)
Bu terim LaTex dosya yapısı için de kullanılmaktadır. Gerek LaTex dosyasında metni
girmeye başlamadan önce, gerek ise LilyPond dosyasında müzik notalarını girmeye
başlamadan önce o belgenin özellikleriyle ilgili bilgiler girilmektedir. İşte bu bölmeye
Sahanlık (Preamble) denmektedir.
33
34 LilyPond - Dosya Yapısı
8.1.1 Sürüm Numarası (Version)
LilyPond dosyamızda ilk olarak girmemiz gereken parametre sürüm bilgisidir. Yani o
anda kullanmakta olunan LilyPond yazılımının sürüm numarasının girilmesi gereğidir. Bu
bir zorunluluktur. Eğer bilgisayarımızda LilyPond’un 2.14.2 sürüm numarasına sahip
versiyonu bulunuyorsa dosyamızın ilk satırına aşağıdaki kodu yazmak zorundayız.
\version "2.14.2"
8.1.2 Başlık Bilgileri (Header)
Bundan sonraki aşamada eğer gireceğimiz nota başlık, besteci adı, telif hakkı bildirimi
gibi bilgiler içerek ise tüm bu bilgileri \header parametresi ile başlayan bölmeye girmek
durumundayız.
header parametre girişinin ardından köşeli parantezi açarak tüm bilgileri girece-
ğiz ve gireceğimiz tüm bilgiler tamamlandıktan sonra ise köşeli parantezi kapatmayı
unutmayacağız.
Bu alanda eserin başlığı için title = ; besteci bilgisini yazmak için composer =
; telif hakkı bilgisi için copyright = yazdıktan sonra bir tırnak açıp gerekli bilgileri
girdikten sonra tırnağı kapatacağız.
\header {
title = "İlk Deneme"
composer = "Server ACİM"
copyright = "Copyright by Server ACİM"
}
8.2 Müziksel Yapı - Musical Expression
LilyPond El Kitapları arasında ilk okunması gereken belge Learning Manual baş-lığını taşımaktadır. Bu belgenin ilk bölümünde bir LilyPond dosyasını metin belgesi
şeklinde oluşturduktan sonra, bu dosyanın derlenmesi neticesinde elde edilecek dosyalar
anlatılmakta, basit bir örnek verilmekte ve sonrasında LilyPond yazılımının çeşitli plat-
formlarda hazırlanması ve çıktı dosyalarının elde edilmesi işlemleri örneklerle, birbirinden
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
8.2 Müziksel Yapı - Musical Expression 35
ayrı bölümlerde anlatılmaktadır. 1
Kitabımızın bir önceki bölümünde verdiğimiz ilk LilyPond notası hazırlama örneği-
mizde, her bir notanın yanına bir virgül işareti yerleştirmiş ve bu işaretin orta do ses
bölgesi anlamına geldiğini belirtmiştik. Ancak, her bir nota için bu işlemi gerçekleştirmek
oldukça yorucudur. Buna daha pratik bir çözüm bulunmuştur. Parantezler arasındaki
notaları yazmadan önce \relative c’ ibaresini yazarsak, bu yolla parantezin içindeki
notaların orta do ses sınırı ile başlayan yapıda olduğunu belirtmiş oluruz.
LilyPond nota kodlarını yazarken, yazdığımız notadan sonra gelecek olan notanın
uzaklığı eğer yukarı veya aşağı doğru dörtlü aralık uzaklığında ise herhangi bir işaret
koymamıza gerek bulunmamaktadır.
• Ancak, yukarı doğru dörtlü aralıktan daha uzak bir nota yazıyorsak, notanın hemen
sonrasına ’ (tek tırnak) işaretini yerleştirmeliyiz.
• Eğer, aşağıya doğru dörtlü aralıktan daha uzak bir nota yazıyorsak, notanın hemen
sonrasına , (virgül) işaretini yerleştirmemiz gerekmektedir.
• Eğer ses uzaklığı bir oktavı aşan bir yapıda ise, o zaman yukarı doğru ” (iki adet
tek tırnak); aşağı doğru „ (iki adet virgül) yerleştirmemiz gerekmektedir.
LilyPond kodlarının içine, kodlama sonucunu etkilemeyen ancak bu kodları paylaşan
kişilerin okuyabileceği ve comment-yorum olarak bilinen bir metin yazılır. Bu metnin
yazıldığı satırın başına (%) yüzde işareti eklenir. Yüzde işareti sadece bir satıra etki eder.
Eğer devam eden satırda da etki etmesi isteniyorsa o satırın başına da yüzde işareti
konulmalıdır. Ve genellikle yorum satırları, o satırı takip eden satırda yazılmış olan kodlar
ile ilişkilidir.
Yorum satırları, kodlar üzerinde çalışmakta olan kişilerin birbirlerine dosya içerisinde
mesaj iletmelerini sağlamak, kodları kullanacak olan kişilere yardımcı olacak kısa tanımlar
yazmak gibi imkanlar tanıdıkları için işleri kolaylaştırma açısından son derece faydalıdırlar.
LilyPond kodlarıyla çalışmaya yeni başlayan bir kişiye, dosyanın içine yorum mesajları
katılarak iletilen bir LilyPond dosyası daha faydalı olabilecektir.
\relative c’ { c4 d e
%üstteki sol notasına geçildiği için notanın yanına tek tırnak ekliyoruz.
1http://lilypond.org/doc/v2.14/Documentation/learning/entering-input
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
36 LilyPond - Dosya Yapısı
g’
}
LilyPond dosyası hazırlarken, notaları girdiğimiz kısımda her notanın metin karşılığı
olan harflerin arasında ne kadar uzaklık olduğunun bir önemi bulunmamaktadır. Ancak,
LilyPond yazılımı büyük harf ve küçük harflere karşı duyarlıdır. Ancak, kodların düzgün
okunabilmesi açısından, notaların harf karşılıklarının arasında birer boşluğun bulunması
estetik açıdan daha doğru bir davranıştır. Bir örnek vermek gerekirse aşağıdaki kodlama
YANLIŞ bir kodlamadır.
{C4 D E}
Bu kodlamanın doğrusu şöyle olmalıdır:
{c4 d e}
8.2.1 Nota Süreleri
Nota sürelerini belirtmek için notanın harf karşılığından hemen sonra yerleştireceğimiz
rakkamı girmek yeterlidir. İlk notanın harf karşılığından sonra rakkam ile girdiğimiz
süre değeri eğer gelen notalarda da değişmeyecek ise, bu taktirde süre rakkamını her
notadan sonra girmek zorunululuğumuz bulunmamaktadır. Aşağıdaki kod örneğinde
girilen birbirinden farklı dört notanın süre değeri dörtlük olduğu için sadece ilk notanın
harf karşılığının yanına süre rakkamını girmek yeterli olacaktır.
\relative c’{c4 d f e }
� � ��� �Şekil 8.1: Yazılan kodu nota sonucu.
Daha küçük nota sürelerinde kuyrukların farklı yapılarda bağlanması ile ilgili bir örnek
vermekte fayda bulunmaktadır. Aşağıdaki örneğe bir göz atalım. Önce kaynak koduna
bakalım.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
8.2 Müziksel Yapı - Musical Expression 37
\relative c’{
c4 d f e | f8 e d c f[ e] d[ c] |
f[ e d c f e d c] | f16 g f e f[ g] f[ e] f[g f e f g f e] |
\autoBeamOff
f16 g f e f g f e f g f e f g f e |
\autoBeamOn
f16 g f e f g f e f g f e f g f e |
}
Şimdi de yukarıdaki kaynak kodunun bize verdiği sonuca bakalım.
��� ����� ���� ��
� � �� � �� ��� � �� � � �3 � �� � � �� � �
���������� ����
������� ��5
����������
6 � ������� ��� ���� ��Şekil 8.2: Farklı sürelerde kuyrukların birleşim farklılıkları.
Notanın kaynak kodunu incelediğimizde şunları görmekteyiz.
• Sekizlik nota sürelerinde yazılımın dört adet sekizliğin kuyruklarını otomatik olarak
birbirine bağladığını fark ederiz.
• Kuyruğun bağlanmaya başlayacağı notanın sonrasına [ işaretini koyarak bağı
başlatıyoruz ve bağlantının bittiği notanın sonrasına da ] işaretini yerleştiriyoruz.
• Kuyrukların şan notalarında olduğu gibi bağlanmasını istemiyorsak \autoBeamOff
betiğini yerleştiriyoruz.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
38 LilyPond - Dosya Yapısı
• Kuyrukların otomatik olarak bağlanmasını istiyorsak, \autoBeamOn betiğini yerleş-
tiriyoruz.
Noktalı Süre
Nota sürelerine nokta eklendiğinde, o sürenin kendi değerinin yarısı oranında süre
eklendiği bilinmektedir. Örnek olarak ikilik notaya nokta eklendiğinde, o süreye ikilik
notanın yarı değeri olan dörtlük eklenmiş olur ve böylece noktalı ikilik sürenin içinde üç
adet dörtlük süre oluşmuş olur. Süreye nokta eklemek için rakkam ile yazdığımız süreye
de "nokta" ekleyerek işlemi tamamlarız. Bunu bir örnek ile açıklayalım.
Önce LilyPond kodlarımızı oluşturalım.
\relative c’ {
c2. d4 | e4. f8 g f4. |
e8. d16 c8. d16 e4. d8 | c2. r4 |
}
Ve bu kodların derlenmesinden sonra elde ettiğimiz sonucu görelim. Notayı incelediği-
nizde "noktalı ikilik, noktalı dörtlük, noktalı sekizlik" sürelerin örneklendiği görülecektir.
�� ��� ��� � � � � ��� �� � � ��� � �� �
Şekil 8.3: Noktalı süreler ile yazılan kodların dönüşüm sonucu.
8.3 Bağlar
Bağlar kendi içinde ikiye ayrılmaktadır. Uzatma bağı ve deyim bağı. Uzatma bağı
bir süreyi bir sonraki süreye bağlar ve aynı ses ile uygulanır. Uzatma bağı’nın İngilizce
karşılığı Tie olarak yazılır. Deyim bağı ise, birbirinden farklı süre ve sesleri birbirine bağlar.
Deyim bağı’nın İngilizce karşılığı Slur olarak yazılır.
8.3.1 Uzatma Bağı
LilyPond ile uzatma bağı yazmak için, bağın başlayacağı notanın kodunu yazmayı
tamamladıktan sonra tilda işaretini koda yerleştiririz. Böylece sürenin uzatma bağı
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
8.3 Bağlar 39
ile uzamasını sağlamış oluruz. Aşağıdaki örnek kod içinde iki adet farklı uzatma bağı
kullanımı verilmiştir.
\relative c’ {
c4 ~ c d2 | e2. f4 ~ | f1 |
}
Yukarıda yazdığımız LilyPond kodunun derlendiğinde elde ettiğimiz sonucunu görelim.
���� � � �� �Şekil 8.4: Uzatma bağı örneği.
8.3.2 Deyim Bağı
LilyPond kodu ile yazdığımız notanın adı ve süresinden oluşan kodun yazılması
tamamlandıktan sonra parantez açarak deyim bağını başlatırız. Deyim bağının biteceği
notanın adı ve süresinden oluşan kodun yazılması tamamlandıktan sonra parantezkapatarak deyim bağını bitiririz. Aşağıdaki örnek kod içinde farklı deyim bağı kullanımları
gösterilmiştir.
\relative c’ {
c4( d) r2 | c8( d c d e2) | g16( a g f) e( f e d) c2 |
}
Aşağıdaki örnekte yukarıdaki LilyPond kodunu derlediğimizde elde ettiğimiz sonucu
görmekteyiz.
� � ��� �� � � � �� �� � � �� �Şekil 8.5: Deyim bağı örneği.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
40 LilyPond - Dosya Yapısı
Cümle bağı
Cümle bağı, bir önceki verdiğimiz deyim bağına göre daha geniş müzik cümlelerinde
kullanılmaktadır. Cümle bağının başladığı yere sola yatık slash ve parantez açma işaretini;
bittiği yere ise sola yatık slash ve parantez kapama işaretini yerleştiririz. Önce kaynak
kodumuzu sunalım.
\relative c’ {
a8\( c e c f’4 e | d8 c b c b4 a \)
}
Şimdi de yukarıdakı kodun derlenmesinden sonra elde ettiğimiz sonucu görelim.
��� ���� �� � �� ��
Şekil 8.6: Cümle bağı örneği.
8.3.3 Uzatma bağı ve Deyim Bağı Birlikte
Bir müzik pasajında hem uzatma bağının ve hem de deyim bağının birlikte kullanıldığı
örneklere sıkça rastlanmaktadır. Aşağıda her zaman olduğu gibi önce kaynak kodumuzu
göreceğiz ancak burada bir detayı vurgulamak gerekiyor. Notanın harf karşılığı ve süresini
yazdıktan sonra önce uzatma bağı için tilda işaretini ve ardından da deyim bağı için
parantezi açıyoruz. Deyim bağı sonuna kadar parantezi kapatmıyoruz.
\relative c’ {
a4~( a8 b c d f e | d c b c d2)
}
Aşağıda ise, kodumuzun derlenmesi sonucunda elde ettiğimiz notayı görmekteyiz.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
8.4 Artikülasyon işaretleri 41
�� � ��� ��� �����
Şekil 8.7: Uzatma ve deyim bağının birlikte kullanıldığı bir örnek.
8.4 Artikülasyon işaretleri
Artikülasyon terimi akla daha çok diksiyon ile ilgili bir terim gibi gözükse de, müzik
artikülasyonu terimi bağ, vurgu, staccato ve legato gibi farklı çalgı çalma tekniklerinin
tümünü içermektedir. GNU/LilyPond betik yazımı içinde kullanılan bu teknikleri birlikte
ve tek örnekte vermek istiyorum. Bu tekniğin simgelerini yazmadan önce, mutlaka nota
harfi ve süre rakkamını girmemiz gerekiyor ve ardından - işaretini yani eksi işaretini
girmemiz ardından sonucu elde edeceğimiz artikülasyon işaretini girebiliriz. Önce kaynak
kodumuzu görelim.
\relative c’’ {
d4-^ e-+ c-- d-|
e4-> c-. d2-_ |
}
Şimdi de elde ettiğimiz sonucu görelim.
��� ��� �� � �����Şekil 8.8: Farklı artikülasyon işaretlerinin birlikte kullanıldığı bir örnek.
8.5 Parmak Numaraları
Çoğunlukla yaylı çalgılar ve tuşlu çalgılarda karşımıza çıkan parmak numaralarını
notaya eklemek için, artikülasyon işaretlerinde uyguladığımız gibi nota harfi ve süre
rakkamından sonra yine eksi işaretini ekledikten sonra, doğruca parmak numarasını
yazacağımız rakkamı girebiliyoruz. Önce kodumuzu verelim.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
42 LilyPond - Dosya Yapısı
\relative c’’ {
c4-3 d-5 b-2 a-1 |
}
Elde ettimiz sonucu görelim.
2�3 �5 �� � �1
Şekil 8.9: Parmak numaralarının kullanıldığı örnek.
Artikülasyon simgesi veya parmak numarasının eğer notanın yukarısında olmasını
istiyorsak, (^) işaretini (parantezi dikkate almadan), eğer altında yer almasını istiyorsak
(_) işaretini (parantezi dikkate almadan) kullanabiliriz. Şimdi vereceğimiz örnekte, eğer
notanın kuyruğu aşağıda ise parmak numaralarımız yukarıda; eğer notanın kuyruğu
yukarıda ise parmak numaralarımız aşağıda olacak şekilde ayarlayacağımız bir kullanımı
göreceksiniz. Önce kaynak kodunu görelim.
\relative c’’ {
c4-3 d-4 b-2 e-5 | a,_1 g_4 f_3 d_1 |
}
Elde ettimiz sonucu görelim.
� � 54�1
�3
�4
��3� �1
2�
Şekil 8.10: Parmak numaralarının konumunun nota kuyruğuna göre değiştirildiği örnek.
8.6 Gürlük İşaretleri
Gürlük işaretlerini nota ile ilişkilendirmek için notamızın harf karşılığını ve eğer
gerekiyorsa süre rakkamını girdikten sonra sola yatık bir slash işaretinin ardından gürlük
simgemizin kısaltmasının harfini doğrudan yazabiliyoruz. Aşağıda gürlüklerin kullanımını
madde haline getirdim.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
8.6 Gürlük İşaretleri 43
• piano= \p
• pianossimo= \pp
• piano pianossimo= \ppp
• mezzoforte= \mf
• forte= \f
• fortissimo= \ff
• forte fortissimo= \fff
• fortepiano= \fp
Şimdi size içinde staccato ve tenuto işaretleri ile birlikte kullanılan özgün bir örnek
vermek istiyorum. Örneğimizin son ölçüsünde forte gürlüğünün ve aksan artikülasyonunun
birlikte kullanıldığı kodu dikkatle incelemenizi öneririm. Her zaman olduğu gibi önce
kaynak kodunu göreceksiniz.
\relative c’’ {
e2\p f4-. d-. | c-. b-. a2-- | gis4-> f-. e-. d | c1->\f |
}
Bu kodumuzun sonucunu görelim.
�� �����f��� � ��
p� �� �����
��
Şekil 8.11: Bazı gürlük ve bazı artikülasyon simgelerinin birlkte kullanımı örneği.
8.6.1 Crescendo ve Decrescendo
Crescendo ve decrescendo işaretlerini notamıza yerleştirmek için crescendo işaretinin
başladığı notanın sonuna \< işaretini, cresendo’nun bittiği notanın sonuna ise sola
yatık çizgi ve ünlem işaretini \! yerleştiriyoruz. Aynı şekilde decrescendo simgesini
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
44 LilyPond - Dosya Yapısı
notaya yerleştirmek için gürlüğün başlayacağı notanın sonuna \> işaretini ve yine aynı
şekilde decresendo’nun bittiği notanın sonuna ise sola yatık çizgi ve ünlem işaretini \!
yerleştiriyoruz. Bu anlatımımızı bir örnekle destekleyelim.
Verdiğimiz örnekte forte ve piano gürlükleri ile staccato artikülasyon işareti, cres-
cendo ve decrescendo işaretleri ile birlikte kullanmıştır.
Önce yine kaynak kodumuzu görüyoruz.
\relative c’’ {
e2\p f4\< d-. | c-. b-. a2\f\! | gis4-.\> f-. e-. d-. | c1\! |
}
�� ������f� ���
����p ��
���
Şekil 8.12: Crescendo ve decrescendo işaretlerinin diğer gürlük ve stacatto artikülasyonuile birlikte kullanımı örneği.
8.7 Arıza ve Donanımlar
GNU/LilyPond yazılımında nota girdi biçimlerinde notanın diyez olmasını istiyorsak,
notanın harf karşılığından sonra bitişik olarak is ekini ve ardından nota süresini; notanın
bemol olmasını istiyorsak notanın harf karşılığından sonra es ekini ve ardından nota
süresini; notanın çift diyez olmasını istiyorsak notanın harf karşılığından sonra bitişik
olarak isis ekini ve ardından nota süresini; notanın çift bemol olmasını istiyorsak notanın
harf karşılığından sonra eses ekini ve ardından nota süresini girmemiz gerekmektedir.
Bu anlatımımıza bir örnek verelim.
\relative c’ {
c4 cis d2 | e4 fis2 ges4 | aeses2 aes | g2. fisis4 | gis1 |
}
Şimdi de elde ettiğimiz sonucu görelim.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
8.7 Arıza ve Donanımlar 45
�� � ������ � ��� ���� � ��Şekil 8.13: Arızalar
8.7.1 Donanımlar
Notamıza donanım eklemek için dosya kodumuza \key değişkenini eklememiz ve
böylece yazılıma tonalite işaretini yerleştireceğimizi bildirmemiz gerekmektedir. Daha
sonraki değişken ise tonumuzun harf karşılığı olan harf ve bir boşluktan sonra ise
tonumuzun majör veya minör olup olmadığıdır. Örneğin tonumuz Re Majör olsun.Bunun için \key yazdıktan sonra bir boşluk bırakarak d \major eklememiz yeterli. Ancak,
yazılımın yapısı gereği bemol, diyez gibi işaretler "musical content" yani "müzikseliçerik" kategorisindedir. Notanın önündeki dizey, bemol gibi simgeler ise "layout" yani
"görünüm-yerleşim" kategorisindedir. Bu yüzden donanımda gerekli değiştireçler yer
alsa da notayı yazarken bu arızaları yazmamız gereklidir. Anlatımımızı hemen örnekleyelim.
Önce kaynak kodumuzu görüyoruz.
\relative c’ {
\key d \major
d4\f( fis a2) | b8( a g fis e2) | cis4( e g2) | fis8( g fis e d2) |
}
Gürlük ve deyim bağının kullanımının da yer aldığı bu kaynak kodunu derlediğimizde
elde ettiğimiz sonucu görelim.
��� �� � ��� � �� ���f� �� ��
Şekil 8.14: Donanım Yerleştirme Kodu
Parça içinde tonumuzun değişmesi durumunda, yeni ölçümüzü yazmadan önce yeni
tonumuz için gereken kodları yerleştirmemiz yeterli olmaktadır. Hemen örnek kodumuzu
görelim.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
46 LilyPond - Dosya Yapısı
\relative c’ {
\key d \major
d4\f( fis a2) | b8( a g fis e2) | cis4( e g2) | fis8( g fis e d2) |
\key f \minor
f4\p( aes c2) | des8( c bes aes g2) | e4( g bes2) | aes8( bes aes g f2) |
}
Ve dosyayı derlediğimizde elde ettiğimiz sonucu görelim.
� �� �� � �� ����� ��� �� � ��� � �f� �
��p �� � ����� � � �� �� �����5
�Şekil 8.15: Parça içinde ton değişimi
8.8 Anahtarlar
İngilizce karşılığı clef olan ve notaların dizek üzerine farklı ses genişliğine sahip olan
çalgı ve insan sesi gruplarına göre nispeten daha rahat yerleştirilmesi amacını taşımak
amacıyla kullanılan ve dilimize anahtar terimiyle yerleşmiş olan kullanımın GNU/LilyPond
yazılımında uygulanması çok basittir.
Anahtarlar, insan sesi türlerine göre sıralanmaktadır.
• Soprano insan sesi için ve daha tiz ses bölgesini kullanan çalgılar için treble terimi,
sol anahtarı için kullanılır.
• Üçüncü çizgi do anahtarı için alto,
• Dördüncü çizgi do anahtarı için tenor,
• Fa anahtarı için bass terimi kullanılır.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
8.8 Anahtarlar 47
Kodları yazarken \clef girdisinden sonra tırnak içinde hangi ses grubunu kullana-
cağımızı belirtiriz. Bu kodu yerleştirdiğimiz yerden sonraki notalar, belirtilen anahtara
göre dizekteki yerlerini alırlar. Vereceğimiz örnekte, bir ezgi içinde dört ayrı anahtar
kullanacağız.
Bu arada notamızın belirli bir ölçüsünün yeni satırdan başlamasını istiyorsak \break
girdisini yerleştirmemiz yeterli olacaktır. Örneğimizde bu komutu da kullandık.
Parçanın bitişinde ölçü çizgimizin bitiş ölçü çizgisi yapısında gözükmesini istiyorsak
\bar"|." şeklinde bir kullanım yeterli olacaktır. Bu kullanıma örneğimizde yer verdik.
Önce kaynak kodumuzu görelim.
\relative c’ {
\key d \major
d4\f( fis a2) | b8( a g fis e2) | cis4( e g2) | fis8( g fis e d2) |
\break
\clef "alto"
\key f \minor
f4\p( aes c2) | des8( c bes aes g2) | e4( g bes2) | aes8( bes aes g f2) |
\break
\clef "bass"
\key d \major
d,4\f( fis a2) | b8( a g fis e2) | cis4( e g2) | fis8( g fis e d2) |
\break
\clef "baritone"
d4\f( fis a2) | b8( a g fis e2) | cis4( e g2) | fis8( g fis e d2) |
\bar"|."
}
Kodların yazımında bir detayın altını çizmek isterim. Genellikle programcıların özen
gösterdiği detaylardan biri de kodların yerleşimidir ve bu detay aslında gerçekten de çok
önemlidir. Yukarıda görmekte olduğunuz kaynak kodlarını yazarken notanın düzeneğine
paralel bir yerleşimi kodlara da yansıtmaya özen gösterdim.
Notanın her satırı için kaynak kodunda da yeni bir satıra geçilmiştir. Yeni tonu
belirten kodlardan sonra yeni bir satıra, yeni anahtarın kodu girildikten sonra yeni bir
satıra geçilmiştir. Bunların yapılmasındaki amaç kodları okuyan kişilerin onları daha rahat
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
48 LilyPond - Dosya Yapısı
anlamalarını sağlamaktır. Wordpress için kullanılan "Kod şiirdir" simge cümlesi boşuna
söylenmemiştir.
Ve derlediğimiz notamızı görelim.
� � �� � � � � ����� ��� �� � � ��f�� � ��
�� � � ���� �������5 � ��
p� ���� �� ���
�� �� � � ���9 �� � ��f
� �� � �
� ��� ��13 �� � �f� � � �� � � �Şekil 8.16: Parça içinde anahtar değişimi
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 9
Tartımsal Yapı
Bu bölümde GNU/LilyPond dosyamızdaki tartımsal yapılandırmayı detaylandırarak
anlatacağız. Tartımsal yapı teriminden kastımız ölçü yapıları ile önel, üçleme, süsleme
notaları gibi ek tartımsal yapılardır.
9.1 Basit Ölçüler
Ölçü simgeleri, notanın ilk satırına üst üste yerleştirilen iki ayrı sayıdan oluşmaktadır.
Alttaki sayı bir ölçü içinde yer alan nota süresinin değerini, üstteki sayı ise bu nota süre
değerinin ölçü içindeki sayısal varlığını belirmektedir.
Her bir vuruşu iki eşit parçaya bölünebilen ve Basit Ölçü (Simple Meter) kategori-sinde yer alan ölçüler alt alta yazılan ölçü simgelerinin üst kısmında 2, 3, 4 sayılarını
barındırır.
Ölçü biriminin kodu GNU/LilyPond uygulamasında \time olarak belirtildikten sonra
simgenin üstündeki sayı ve simgenin altındaki sayılar arasına sağa yatık bir bölme işareti
yerleştirilir. İki-dörtlük ölçü simgesi için giriş 2/4 olarak yapılır. Bu simgenin müzik
terminolojisindeki İngilizce karşılığı Time Signature olarak kullanılmaktadır.
Vereceğimiz örnekte ezgi içinde farklı zaman göstergeleri kullanılmıştır. Önce kaynak
kodumuzu görelim.
49
50 Tartımsal Yapı
\relative c’{
\time 2/4
c4 d | e f | g2 | g |
\time 3/4
g4 e f | d2. | f4 e d | c2. |
\time 4/4
f4 g a b | c a f2 | e2 d | c1 |
\bar "|."
}
Şimdi de derlediğimiz kaynak kodumuzun nota sonucunu görelim.
� 42 �� ��� �� ��� � �43� �8
� � ����� ��� �� ��Şekil 9.1: Basit Ölçü Yapısı Örneği
9.2 Bileşik Ölçüler
Her bir vuruşu üç eşit parçaya bölünebilen yapılara sahip ölçüler Bileşik Ölçü(Compound Meter) kategorisindedir. Bu ölçü simgelerinin üst kısmındaki sayılar 6, 9,12 sırasını takip ederler.
Vereceğimiz örnekte bu simgenin üstünde yer alana 6 ve 9 sayılarını bir arada
kullanmaya ve ölçü simgesinin altındaki nota sürelerini farklı yapıda kullanmaya özen
göstereceğiz.
Kaynak kodumuzu görelim:
\relative c’{
\time 6/8
c8 d e f4. | e8 f g a4. | c8 b a g f e | d2. |
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
9.2 Bileşik Ölçüler 51
\break
\time 6/4
c4 d e f2. | e4 f g a2. | c4 b a g f e | d1. |
\break
\time 9/8
a’8 c a g c g f a f | e4. d c | d2. e4. | f4. a2. |
\break
\time 9/4
a4 c a g c g f a f | e2. d c | d1. e2. | f2. a1. |
\bar "|."
}
Ve nota sonucumuzu görelim:
86 46�� � �� �� �� �� � � � ��� � �
� �� � � �� �� � 89465
� � �� � � � � �
� �� � � �� �� �� � ��� �899
� 49� � � � �� �
�13
49 �� � � � ����
������ ��14
� ���� � �Şekil 9.2: Bileşik Ölçü Yapısı Örneği
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
52 Tartımsal Yapı
9.3 Aksak Ölçüler
Bazı vuruşları ikiye, bazı vuruşları üçe bölünen ölçüler Aksak Ölçüler (Odd Meters)kategorisindedir. Ölçü simgesinin üstünde genel olarak 5, 7, 9, 10 sayıları yer almaktadır.
Tam bu noktada sizlere ek bir bilgi vermek isterim. Beş-sekizlik aksak ölçü yapısındaki
bir notayı yazarken ikişerli nota grubunun ilk vuruşta, üçerli nota grubunun ikinci
vuruşta yer almasını veya bunun tersini istiyorsak bunu vuruşu gruplamak olarak
dilimize çevirebileceğimiz bir kodlama ile yapabiliriz. Bunun için kodu yazarken yeni
bir satıra \set Timing.beatStructure = #’(2 3) kodunu ekliyoruz. Kod satırının
sonunda görmekte olduğunuz parantez içindeki (2 3) kullanımı alt bölünme gruplamasını
göstermektedir. Önce kaynak kodumuzu görelim.
\relative c’{
\time 5/8
\set Timing.beatStructure = #’(2 3)
a8 a a a a | c a c a a | ees’ d c b c | a4 a4. |
\break
\set Timing.beatStructure = #’(3 2)
a8 b c a a | b c d ees d | ees fis g a b | c b a a4 |
\bar "|."
}
Nota örneğimizin birinci satırında beş-sekizlik ölçünün (2+3) gruplama yapısında,
ikinci satırında ise (3+2) gruplama yapısında oluşturulduğunu göreceksiniz.
�85 �� �� � ��� �� � �� �� �� ��
� � �� � � � �� ����������
5
� � � �Şekil 9.3: Aksak Ölçü Yapısı Örneği
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
9.3 Aksak Ölçüler 53
Aksak ölçüler için bir örnek daha vermenin konunun daha da net anlaşılmasına
faydası bulunacaktır. Aksak ölçüler için oluşturduğumuz ikinci örneğimizde ölçü için-
deki nota değeri sayılarını değiştirerek kullanacağız. Bu kullanım sırasında kodu okuyan
kişiye comment denilen ve başına (%) yüzde işaretinin yerleştirildiği mesaj-yorum satı-
rını göreceksiniz. Bu satıra yazılan metinlerin kodun derlenmesine herhangi bir etkisi
bulunmamaktadır. Kodu biraz daha iyi anlamak adına yapılan bir uygulamadır bu.
\relative c’{
\time 5/8
\break
\set Timing.beatStructure = #’(3 2)
a8 b c a a | b c d ees d | ees fis g a b | c b a a4 |
\break
%Yeni satırda ölçü yapımız değişiyor.
\time 7/8
\set Timing.beatStructure = #’(2 3 2)
g8 fis g a g g e | g fis g a g b g |
\break
%Yeni satırda ölçü yapımız değişiyor.
\time 9/8
\set Timing.beatStructure = #’(2 2 3 2)
a8 a a a c d e e c | e e e c e d c c a |
\break
%Yeni satırda ölçü yapımız değişiyor.
\time 10/8
\set Timing.beatStructure = #’(2 3 3 2)
a8 gis a gis f f e d f d | d d f gis a a b c c a |
\bar "|."
}
Her satırda aksak ölçü yapısının ve süre gruplamasının değiştirildiği kaynak kodumuzun
derlenmesi sonucunda elde ettiğimiz notamızı görüyoruz.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
54 Tartımsal Yapı
� � � �� 87��� 85 � � ��� �� � �� �����
� �� �� 89�5
87 � ���� �� ����
� � � ��� � 810�7
89 � � �� � �� ��� �
� � ��� � � ��8109
� ��� �� � � �� � �� �Şekil 9.4: İkinci Aksak Ölçü Yapısı Örneği
9.4 Nota Kuyrukları (Beams)
İnsan sesi için yazılan notalarda yani şan partilerinin notalarında geleneksel olarak
kuyruklar bağlanmaz. Eğer bir şan notası yazıyorsak veya notamızın belirli bir yerinde
kuyrukların kullanılmasını istemiyorsak, buraya notaları yazmadan önce \autoBeamOff
kodunu yerleştiriyoruz. Notamızın belirli bir yerinde ise eskiye dönmek ve kuyrukların
otomatik olarak birleştirilmesini istiyorsak \autoBeamOn komutunu giriyoruz ve herşey
eski haline dönüyor. Örneğimizin kaynak koduna bakalım:
\relative c’{
\time 3/4
c8 c16 d e8 f g a | g16 a g f e2 |
\autoBeamOff
c8 c16 d e8 f g a | g16 a g f e2 |
\autoBeamOn
c8 c16 d e8 f g a | g16 a g f e2 |
}
Şimdi de elde ettiğimiz müziksel sonucu görelim:
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
9.5 Önel 55
� 43 �� � �� �� �� �� �� �
���� ��� ��� � �
� ��� �� ���� ���� � ��� ��4 � �
Şekil 9.5: Otomatik Kuyruk Birleştirmenin Açılıp Kapanması
9.5 Önel
Türkçemizde "önel" olarak kullanılan ancak farklı ekolden yetişen öğretmenlerin
auftakt veya anacrusis terimlerinden birini kullandıkları bu işlemi gerçekleştirmek için
\partial kodunu yazdıktan sonra önelin hangi nota süresinden alacağını belirtiyoruz ve
son olarak da önel notasının kendisini giriyoruz. Kaynak kodumuzu inceleyiniz:
\relative c’{
\time 3/4
\partial 8 g’8
c,8 c16 d e8 f g a | g16 a g f e2 |
}
Şimdi de kaynak kodunu derledikten sonra elde ettiğimiz müziksel sonucu görelim:
�� � �� ��� �43� �� ���
Şekil 9.6: Önel Örneği
9.6 Üçleme (Triplet)
Müzik eğitimi sistemimizdeki farklı ekollerden yetişmiş öğretmenlerin triolet teri-mini de kullanarak öğrettikleri bu işlemde bilindiği gibi her bir vuruşu iki eşit parçaya
bölünen basit ölçülerde bazı vuruşların geçici olarak üçe bölünmesi gerçekleşmektedir.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
56 Tartımsal Yapı
GNU/LilyPond kodlama sisteminde bunun için \times kodu kullanılmaktadır. Bu kodu
kullandıktan sonra ise 2/3 yazarak, yazılıma ikiye bölünen bir yapıya üç nota ekleneceğini
bildirmiş oluyoruz. Kaynak koduna dikkat edelim:
\relative c’{
\times 2/3 {c8 e g}
\times 2/3 {c g e}
\times 2/3 {a f d}
\times 2/3 {e c g}
}
Elde edilen sonucu görelim:
� � �3�
��� 3�� ��� �3
�3
Şekil 9.7: Üçleme Örneği
9.7 Süsleme Notaları (Grace Notes)
Bu bölümde üç adet süsleme notasının yazılışını anlatacağım. Önce bu terimlerin
kısaca tanımlarını yapmakta fayda var.
GraceVuruş başında duyulan notadan çok az önce yer alan notalar.
AppoggiaturaDaha çok Barok dönem eserlerinde görülen notalamada vuruş başında yazılan
notadan önceki nota değeri, vuruş başında yazılan notaya eklenmektedir.
AcciaccaturaMüzikçiler arasında "çarpma" olarak bilinen bu nota, vuruş başındaki notadan önce
çalınır ve vuruş başındaki notaya çok hızlı bir şekilde bağlanır. Çarpma notasının
kuyruğu üzerine bir çentik atılmıştır.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
9.7 Süsleme Notaları (Grace Notes) 57
9.7.1 Grace
Bu alt bölmede önce Grace başlığını taşıyan ve "süsleme" olarak dilimize çevirebile-
ceğimiz nota uygulamasını göstermek isterim. Kaynak kodumuzu görelim önce.
\relative c’{
c2 \grace {a32[ b c] } d2 | \grace {e32[ f] } g2 a |
}
Şimdi de elde ettiğimiz sonucu görelim.
�
�� ��
�� ���
�
Şekil 9.8: Grace Note Örneği
9.7.2 Appoggiatura
Aşağıda vereceğim örnekte dilimizdeki müzik öğretimi terimleri arasında "Basamak"
olarak bilinen bu uygulamayı daha iyi kavramak adına, ilk ölçü bu teknikle yazılmış
olup ikinci ölçüde bu yazım tekniği sonucunda duyulması gereken sonucun notasını
göreceksiniz.
Kaynak kodumuz şöyle:
\relative c’{
c4 d \appoggiatura e16 d8 c16 d e4 |
c4 d e16 d c d e4 |
}
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
58 Tartımsal Yapı
Sonucumuzu görelim:
� � � ��� � ��� �� ���� �
Şekil 9.9: Appoggiatura Örneği
9.7.3 Acciaccatura
"Çarpma" örneğimizin kaynak kodunu görüyoruz önce.
\relative c’{
c4 d \acciaccatura e8 d8 c16 d e4 |
\acciaccatura f8 e4 \acciaccatura d8 c4
\acciaccatura g8 c4 \acciaccatura f8 c4 |
}
Sonucu görelim:
� � � � ����� ������� �
����� � �
���
Şekil 9.10: Acciaccatura Örneği
Bu üç örnekte de dikkat edilmesi gereken detay, önce süsleme notasının kodunun ve
uygulanacak notaların girilmesi ve ardından da normal süre değerinin girilmesidir.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 10
Notaya Metin Eklemek
Müzik notamıza metin eklemek genel başlığı altında çeşitli alt başlıklarımız bulunmak-
tadır. Müzik notamızın başlık (header) bölmesine yapılan metin eklemelerini kitabımızın
sekizinci bölümünde anlatmıştık. Bunun dışındaki diğer metin ekleme işlemlerini maddeler
halinde görelim.
• Müziksel duygu ifadeleri,
• Müziksel hız ifadeleri,
• Eserin başında verilen hız ifadeleri,
• Çalma tekniği ile ilgili ifadeler.
10.1 Müziksel Duygu İfadeleri
Bestecinin icracılara yönelik olarak kullandığı İtalyanca ifade ve hız terimleri bulun-
maktadır. Notanın belirli bir pasajının daha yoğun bir duygusal ifadeyle seslendirilmesini
istiyorsak espressivo ifadesi kullanırız. Bu gibi bir kelimenin notanın üstünde yer almasını
istiyorsak kaynak kodumuzun içinde notadan sonra "^" işaretini, notanın altında yer
almasını istiyorsak yine notadan sonra "_" işaretini kullanırız. Aşağıdaki örneğimizde
espres. olarak kısalttık ve notanın üstüne yerleştirdik. İkinci ölçümüzde notanın daha
59
60 Notaya Metin Eklemek
bağlı bir yapıda çalınması için legato ifadesini bu kez notanın altına yerleştirdik. Kaynak
kodumuzda metnin tırnaklar içinde kullanıldığına dikkatinizi çekmek isterim.
\relative c’’{
g8^"espres." a g e c2 | c’8_"legato" d c a g2 |
}
Notamızı derledik ve aşağıdaki sonucu elde ettik.
� �espres.
�legato
� �� � ��� ��
Şekil 10.1: Notanın altına ve üstüne metin ekleme örneği.
Notamıza eklediğimiz metnin kalın-bold veya italik gibi yazı karakterlerine sahip
bir yapıda olmasını sağlamak için \mark kodunu kullanmamız gerekmektedir. Örnek
olarak notamızın üstünde yer alan müziksel duygu ifadesinin kalın yazı şeklinde olmasını
istiyorsak, kodumuzun şu şekilde oluşturulmuş olması gerekiyor.
c2^\markup { \bold espr }
Notamızın harf karşılığı ve süresinden sonra \markup kodumuzu yerleştiriyoruz ve
köşeli parantezimizin içine önce metnimizin kalın olması gerektiğini belirten \bold
kodunu yerleştirip bir boşluk bıraktıktan sonra metnimizi yazıyoruz ve ardından da köşeli
parantezimizi kapatıyoruz. Şimdi bu bilgiler ışığında notamızın üstüne kalın yapıda bir
metin ve notamızın altına italik yapıda bir metin ekleyelim. Her zaman olduğu gibi önce
kaynak kodumuzu görelim.
\relative c’’{
g8^\markup {\bold espres} a g e c2 |
c’8_\markup {\italic legato} d c a g2 |
}
Ve elde ettiğimiz sonucu görelim.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
10.2 Müziksel Hız İfadeleri 61
��legato
� ���espres
�� �� ��
Şekil 10.2: Notanın altına ve üstüne farklı yapıda metin ekleme örneği.
10.2 Müziksel Hız İfadeleri
Müziğin bazı yerlerinde aşama aşama hızın yükselmesi veya düşmesi gerektiği nok-
talarda İtalyanca yazılan belirteçten sonra ard arda tire işaretlerinin yerleştirilmesi bu
değişimin notada tamamlandığı noktayı göstermesi açısından önemlidir. Örneğin Ri-tardando olarak bilinen terim, müziğin yürümekte olan hızının yavaş yavaş düşmesi
anlamına gelmektedir ve notanın üstüne italik yapı tipi ile eklenir ve bu yazının arkasına
tire işareti eklenerek nota üzerinde bu işlemin bittiği yeri icracının kavraması sağlanır.
Ritardando işleminin tersi olan Accelerando eylemi için de aynı işlem uygulanır.
GNU/LilyPond programlama dili yapısında bu gibi işlemler text spanners denilen ka-
tegoriye girmektedir. Span kelimesi "karışlamak" gibi bir anlama geldiğine göre, metnin
arkasında onunla ilişkili olan bazı figürlerin yer almakta olabileceği ihtimalini düşündü-
ğümüzde ritardando ve accelerando gibi metni izleyen tire işaretlerinin uygulanması
farklı bir kodlamayı gerektirmektedir. Notayı girmeden, bir üst satıra aşağıdaki kodları
yerleştireceğiz önce.
\override TextSpanner #’(bound-details left text) = "rit."
Ardından notamızın harf karşılığını ve süresini girdikten sonra \startTextSpan
kodu ile işlemin başlamasını sağlıyoruz. Bu işlemin bittiği notanın harf karşılığı ve
süresinden sonra da \stopTextSpan kodunu yerleştirerek belirttiğimiz notada işlemin
tamamlanmasını sağlıyoruz. Bu anlatılanların kaynak kodunda nasıl uygulandığını görelim
önce.
\relative c’’{
\override TextSpanner #’(bound-details left text) = "rit."
a1\startTextSpan
gis
e\stopTextSpan
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
62 Notaya Metin Eklemek
}
Şimdi de derlediğimiz notamızın sonucunu görelim.
� �� �rit.��
Şekil 10.3: Yavaşlama ve hızlanma metin ve işaretlerinin uygulanması örneği.
10.3 Eserin Başında Verilen Hız İfadeleri
Genellikle eserin en başında ve notanın ilk ölçüsünün üstünde müziğin hızını icracıya
belirten İtalyanca bir terim yer alır. Bunun için de yine notadan sonra \mark kodunu
girdikten sonra tırnak içinde hangi ifadenin yer almasını istiyorsak onu yazabiliriz. Bu
kullanımı örnekleyelim ve önce kaynak kodunu görelim.
\relative c’’{
a4 \mark "Allegro"
c e a, | gis b d2 |
}
Şimdi de derlediğimiz notayı görüyoruz.
�� � �Allegro�� �� ��
Şekil 10.4: Eserin başında verilen hız ifadesi uygulaması örneği.
Çalma tekniği ile ilgili metinleri, duygu ifadelerini yazarken uyguladığımız yöntemle
gerçekleştirebiliriz.
10.4 Diğer İşaretlerden Bazıları
Bu bölümde gerek metin gerekse bazı simgelerin notaya yerleştirilmesini anlatacağız.
Fermata, Da Capo al Fine (Başa Dön ve Sonda Bitir)
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
10.4 Diğer İşaretlerden Bazıları 63
10.4.1 Fermata
Müziğin belirli bir ölçü ile diğeri arasında biraz duraklama yaşanması isteniyorsa
bu işaretin yerleştirildiğinizi biliyoruz. Fermata işaretini ölçü çizgisine yerleştirmek için
başka bir kod, notaya yerleştirmek için başka bir kod kullanıyoruz genel olarak. Aşağıdaki
kodu incelediğinizde fermata işaretinin hem notaya uygulanışını hem de ölçü çizgisine
uygulanışını göreceksiniz. Yorum işaretleriyle, kodu okuyana yardımcı olunduğuna da
dikkatinizi çekiyorum.
\relative c’’{
a4 c e2\fermata | %Notaya uygulandı.
f8 e d c b a g4 |
\mark \markup { \musicglyph #"scripts.ufermata" } %Ölçü çizgisine uygulandı
a16 a f8 g16 g e8 d2 |
}
Dosyamızı derledikten sonra elde ettiğimiz sonucu görüyoruz.
� ��� ��� � ��� �� � ���� �� �Şekil 10.5: Fermata uygulaması örneği.
10.4.2 Segno ve Coda İşaretleri
Segno ve Coda işaretlerini kodumuzu yerleştiriken, Fermata işaretini ölçü çizgisine
yerleştirme sırasında uyguladığımız kodlamanın benzerini kullanmaktayız. Simgemizin
kodunu notanın öncesine yerleştiriyoruz. Bunları hemen örnekleyelim. Önce kaynak
kodumuzu görelim.
\relative c’{
\mark \markup { \musicglyph #"scripts.segno" }
c2 e2 | g c | d4 b d b | c2 g |
\mark \markup { \musicglyph #"scripts.coda" }
}
Derlediğimiz kodumuzun müziksel sonucunu görelim.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
64 Notaya Metin Eklemek
� � ���
� � �� ��
�� �Şekil 10.6: Segno ve Coda uygulaması örneği.
10.4.3 Da Capo al Fine
Genellikle notanın sonunda "başa dön ve Fine yani "Son" yazan yerde bitir" anlamına
gelen bu kullanımı notamıza nasıl yerleştireceğimizin çözümünün kaynak kodlarını aşağıda
görebilirsiniz.
\relative c’’{
\once \override Score.RehearsalMark #’break-visibility = #end-of-line-visible
\once \override Score.RehearsalMark #’self-alignment-X = #RIGHT
c,2 e2 | g c | d4 b d b | c2 \mark "D.C. al Fine" g |
\bar "||"
}
Ve elde ettiğimiz sonucu görelim.
��� ��� �� �D.C. al Fine�� �
Şekil 10.7: Da Capo al Fine uygulaması örneği.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 11
Şarkı Notası Hazırlamak
Kitabımızın bu noktasına kadar sadece çalgısal yapıdaki müziklerin GNU/LilyPond
ile hazırlanmasını olabildiğince açıklamaya çalıştıktan sonra sıra, sözlü müziklerin yani
şan ve koro notalarının GNU/LilyPond ile hazırlanmasını anlatmaya geldi.
11.1 Çift Köşeli Parantezler (Double Angle Brackets)
Çift köşeli parantezlerin GNU/LilyPond kodlama sanatındaki önemi çok ama çok
büyüktür. İlerideki bölümlerde anlatacak olduğumuz konuların içinde bu konuya tekrar
döneceğiz ancak çift köşeli parantezin açıldığı yer ile kapandığı yer içindeki farklı unsurlar
bu kod sayesinde birleşmektedir. Sizleri çift köşeli parantezler hakkında sadece burada
anlattığımız kadarı ile bilgilendirdikten sonra bir müzik notasının altına şarkı sözlerini
nasıl yerleştireceğimizi anlatmaya başlayabiliriz.
11.2 Şarkı Sözünü Eklemek
Notamızı hazırladıktan sonra \addlyrics kodunu kullandığımız yeni bir kodu oluş-
turmaya başlıyoruz. Lyric İngilizce kelimesinin Şarkı Sözü olduğunu bildiğinize göre
buradaki koddan "şarkı sözü ekle" komutunu vermekte olduğumuzu anlayabiliriz. Ar-
dından yeni bir curly brace açıyoruz ve aralarında birer boşluk bırakarak şarkı sözlerini
buraya yazmaya başlıyoruz. İşimiz bittikten sonra da yine curly brace denilen simgeyi
65
66 Şarkı Notası Hazırlamak
kapatıyoruz. Biraz önce yukarıda bahsettiğimiz çift köşeli parantezi ise notamızın kodla-
rından öncesinde açıyoruz ve şarkı sözlerinin yer aldığı kodlamayı tamamladıktan sonra
da kapatıyoruz. Böylece nota ve şarkı sözlerini birleştiriyoruz.
Yukarıda anlattıklarımızı biraz daha iyi kavrabilmeniz adına şarkımızın sadece notasının
yer aldığı kodu ve sonucunu ayrı bir örnek olarak sunalım önce. Mozart’ın üzerine
çeşitleme yazmış olduğu temayı kullanıyoruz örnek ezgi olarak.
\relative c’{
\time 2/4
c8 c g’ g | a a g4 | f8 f e e | d d c4 |
}
Derlediğimiz kodun nota çıktısını görelim şimdi de:
�� �� �� �42� �� �� �� �Şekil 11.1: Şarkımızın sadece notası.
Tam bu noktada ezgimizin notasının altında \addlyrics kodunu kullandıktan sonra
{ işareti ile şarkı sözlerimizi her bir hecenin arasına bir boşluk bırarak yazıyoruz ve }
işareti ile sözlerin olduğu bölmeyi kapatıyoruz. Ancak nota ile sözlerin olduğu bölmeyi
birleştirmek için notanın başladığı bölmenin öncesine << işaretini yerleştirerek birleşimi
başlatıyoruz ve sözlerin bittiği bölmenin arkasına da >> karakterlerini yerleştirerek şarkı
ile sözlerin aynı notada yer almasını sağlıyoruz. Bu kodun tamamını sunalım:
<<
\relative c’{
\time 2/4
c8 c g’ g | a a g4 | f8 f e e | d d c4 |
}
\addlyrics {
Da ha dün an | ne mi zin | kol la rın da | ya şar ken |
}
>>
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
11.2 Şarkı Sözünü Eklemek 67
Ve elde ettiğimiz sonucu görelim:
ha��� ��
yazinmi�
neDa
� �dün
�42da� �
an kol şar kenrın�
la
� ��
Şekil 11.2: Şarkımızın sözlerle birleşmesi sonucu.
11.2.1 Ezgi ve şarkı sözünün ince ayarları
Bazı şarkı sözlerinde bir hece içinde birden fazla sesin deyim bağı ile bağlanması
durumunda uzayan seslerin altında hecenin devam etmekte olduğunu gösteren bir çizgi
yer almaktadır. Bunun gerçekleştirmek için kodumuzun şarkı sözlerinin yer aldığı kısıma
uzayan heceden sonra bir boşluk bırakarak iki adet alt çizgi ekleriz. Anlatımımızı bir
örnekle pekiştirelim. Her zaman olduğu gibi önce kaynak kodumuzu görelim.
<<
\relative c’’{
\time 2/2
\key f \major
a2 c | g4.( a8) bes2 | a4 a g8( f) e( f) | g2 c, |
}
\addlyrics {
U yu | yav __ rum | U yu kol __ la __ | rım da |
}
>>
Şimdi de elde ettiğimiz sonucu görelim.� � �U
� � �da
�yu
��kol
� �rum la rım
��yu
�yav
�U
���
Şekil 11.3: Şarkımızın sözünde bir hecede birden fazla notanın bulunması.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
68 Şarkı Notası Hazırlamak
Eğer iki nota birbirine bu kez uzatma bağı ile bağlanıyorsa, kodumuzda şarkı sözlerini
yazdığımız kısıma uzatma bağı ile bağlanan notada yer alan şarkı sözündeki heceden
sonra bir boşluk bırakarak ard arda iki adet tire işaretini yerleştirmemiz yeterli olacaktır.
Kaynak kodumuzu sunuyoruz önce.
<<
\relative c’’{
\time 4/4
\key f \major
a4 ~ a8 g f4 e | d8 f e4 d2 |
}
\addlyrics {
An -- nem An nem | ca nım an nem |
}
>>
Şimdi de derlediğimiz notanın sonucunu görüyoruz.
�an� �
nım
�An
����nemAn nem
�nem
��ca�
Şekil 11.4: Uzatma bağının yer aldığı şarkı sözünün kullanımı örneği.
11.2.2 Çoklu dizekte ezgi ve sözün yapısı
Bir şarkı notası birden fazla insan sesi grubu için oluşturulmak isteniyorsa, << işareti
ile açılan ve >> işareti ile kapanan gruplama arasına istediğimiz kadar ezgi ve şarkı sözü
yapısını ekleyerek bu istek gerçekleştirilebilir. Örneğimizdeki küçük bir detaya dikkat
çekmek istiyorum.
Tüm ölçüyü kaplayacak sus oluşturmak istiyorsak, notamızın koduna sus işaretimizi
oluşturan küçük "r" harfini değil, büyük "R" harfini yerleştirebiliriz.
Aşağıdaki kaynak kodunda iki adet insan sesi için oluşturulmuş küçük bir örnek yer
almaktadır.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
11.2 Şarkı Sözünü Eklemek 69
<<
\relative c’’{
\time 4/4
\key f \major
a4 ~ a8 g f4 e | d8 f e4 d4( a’) | bes8 d c4 c2 |
}
\addlyrics {
An -- nem An nem | ca nım an nem -- | ca nım an nem |
}
\relative c’’{
\time 4/4
\key f \major
R1 | a4 ~ a8 g f4 e | d8 f e4 d2 |
}
\addlyrics {
An -- nem an nem | ca nım an nem |
}
>>
Derlediğimiz notamızı görelim.
nem
nem
� �
�
�an
�an
�nem
�nem
�An
�nım
�nım
��
an
�
�ca
�ca
�ca
�An
�An
�nım
�nem
�nem an
��
� � �
� ��nem
�Şekil 11.5: Birden fazla nota satırına şarkı partisi yazma örneği.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
70 Şarkı Notası Hazırlamak
11.2.3 Değişken Atama
Programlama dilinde Variable olarak bilinen ve dilimize Değişken olarak çevrilen bir
tekniği GNU/LilyPond dosyalarını oluştururken de kullanabilme şansımız bulunmaktadır.
Ancak bu değişkeni oluştururken rakkam, tire veya alt tire gibi karakterler değil sadece
büyük veya küçük harf kullanmamız gerekmektedir.
Örneğin, motifA olarak atama yapacağımız değişkene {c4 d e2} kodunu atıyoruz.
Sonra da motifB olarak atama yapacağımız değişkene ise {c8 c d4 e2} kodunu atıyo-
ruz. Ve ardından \relative c’ yazıp normal bir nota giriyormuş gibi atama yaptığımız
değişken adlarının başına "taksim" diye bilinen şimgeyi ekliyoruz. Böyle atama yaptığı-
mız değişkenleri müziğin herhangi bir yerinde kullanma şansına sahip oluyoruz. Kaynak
kodumuzu sunuyoruz.
motifA = {c4 d e2}
motifB = {c8 c d4 e2}
\relative c’ {
\motifA \motifA \motifB \motifB
}
Elde ettiğimiz sonucu görüyoruz.
���� �� ����� � ��� �Şekil 11.6: Motiflere değişken atama.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 12
Çoklu Dizek Yapısı ve Dizek Gruplamaları
Kitabımızın bu bölümüne kadar anlatımlarımız ve verdiğimiz örnekler sadece tek
bir dizek satırı içinde yer almakta idi. Bu bölümde ise çoklu dizek yapısı ve dizeklerin
gruplandırılmalarını anlatacağız ve örnekleyeceğiz.
12.1 Basit Anlamda Çoklu Dizek Yapısı
Bir önceki bölümde anlatmaya başladığımız birden fazla müziksel dokunun birleşmesini
sağlamak için << açılış simgesi ile başladıktan sonra bu simge sonrasına curly braceolarak bilinen kıvrımlı parantezin içine çeşitli yapıdaki notaları yazdıktan sonra >> kapanış
simgesini yerleştirdiğimizde birden fazla dizek satırında müzik oluşturma olanağından
bahsetmiştik. Bu bölümde bu konuyu detaylandırarak anlatacağız. Bu önemli simgenin
işlevini daha da iyi anlamamız için aşağıdaki örnekte, \relative c’’ değişkeni ile do
notamızın orta do’nun bir oktav yukarıdaki nota olduğunu belirttiken sonra kıvrımlı
parantezi yerleştiriyoruz ve ardından da açılış simgemizi ekliyoruz ve ardından gelen
kodlarda yeniden kıvrımlı parantezler içinde üç adet nota örneğini giriyoruz. Ardından ise
kapanış simgemizi yerleştiriyoruz ve kodumuzu orta do’nun bir oktav yukarıda olduğunu
belirten değişkenimizin bitişini sağlayan kıvrımlı parantez kapanışı ile tamamlıyoruz. Her
zaman olduğu gibi önce müziksel sonucu elde etmemizi sağlayan kaynak kodumuzu
görüyoruz.
71
72 Çoklu Dizek Yapısı ve Dizek Gruplamaları
\relative c’’{
<<
{d4 c d2}
{f,4 g a2}
{d,4 a bes2}
>>
}
Elde ettiğimiz müziksel sonucu görüyoruz.
�� �
�
�
� �
�
�
�
�
��
�
�
�Şekil 12.1: Basit çoklu dizek örneği.
Yukarıda verdiğimiz örneği yeni bir unsur ekleyerek geliştirebiliriz. Eğer bir dizeğimizin
sol anahtarı ile onun altındaki dizeğin fa anahtarı ile oluşmasını istiyorsak, \Staff
değişkeninin başına \new değişkenini ekleyerek ve bu değişkenlerin içindeki ölçü ve
tonalite gibi unsurları kıvrımlı parantezlerin içine eklersek istediğimiz sonuca ulaşabiliriz.
Örneğimizin kaynak kodunu sunalım sizlere.
\relative c’’{
<<
\new Staff { \clef treble c4 d e2 }
\new Staff { \clef bass c,,4 g e2 }
>>
}
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
12.2 Dizek Gruplandırmaları 73
Müziksel sonucumuzu görelim.
���
�
���
�
�
�
Şekil 12.2: Biraz geliştirilmiş çoklu dizek örneği.
Bu kez aşağıdaki örnekte avant-garde müzik türünde kullanılan ve politonalite-çoktonluluk olarak bilinen tekniğin kullanıldığı bir örneği sunalım. Bu örnekte üstteki
partinin tonu Re Majör iken alt partinin tonu Fa minör olarak hazırlanmıştır. Kaynak
kodunu görüyoruz.
\relative c’’{
<<
\new Staff { \clef treble \key d \major \time 3/4 d8 e fis fis fis4}
\new Staff { \clef bass \key f \minor f,,4 c aes }
>>
}
Elde ettiğimiz müziksel sonucu görüyoruz.
�
�
��
43�����43
�����
�
�
Şekil 12.3: Politonal yapıdaki çoklu dizek örneği.
12.2 Dizek Gruplandırmaları
Piyano ve benzeri çalgıların notalarında, üst dizek satırının sağ el, alt dizek satırının
sol eli içerdiğini, her iki dizeği birleştiren dikey çizginin sol tarafında yer alan ve İngilizce
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
74 Çoklu Dizek Yapısı ve Dizek Gruplamaları
karşılığı "brace" olan bir büyük parantez ile ayrıca birleştirildiği dikkat çekmektedir. Bu-
nun kodlama da görülebilmesi için \new değişkeninin arkasına \PianoStaff değişkenini
de eklememiz gerekmektedir. Anlattıklarımızı destekleyen örneğimizin kaynak kodunu ve
ardından da müziksel sonucunu görelim.
\relative c’’ {
\new PianoStaff <<
\new Staff { \time 2/4 c8 d e e | e2 }
\new Staff { \clef bass c,,4 b | a2 }
>>
}
� �� �
�
�
42�42�� �
�
Şekil 12.4: Piyano düzeneği içindeki çoklu dizek örneği.
GNU/LilyPond uygulamasında iki tane daha çoklu dizek gruplandırması değişkeni
bulunmaktadır. Bu değişkenler ve kullanım alanları şöyledir:
\new GrandStaff
Orkestra eserlerinde kullanılmaktadır.
\new ChoirStaff
Koro eserlerinde kullanılmaktadır.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 13
Tek Dizekte Çokseslilik
Bu bölümde tek dizek içinde birden fazla yatay çizginin duyurulmasını çok kısa olarak
anlatacağız. Bu konu ile ilgili daha fazla detaya ulaşmak için GNU/LilyPond Learning
Manual 1 web sayfasında daha geniş bilgiye ulaşmanızda fayda bulunmaktadır.
13.1 Birden Fazla Sesin Aynı Anda Yazılması
Bu bölümde, birden fazla notanın aynı dizekte duyurulması için iki sesden bahsediyor
olmamız gerekiyor. Çünkü, aynı anda duyulan birden fazla üç adet sese "akor" adı
verildiği için bu konuya bir sonraki bölümde detaylarıyla gireceğiz.
İki sesin aynı anda duyurulması için notaları <notalarburayagelecek> arasına
yazmamız gerekecektir. Yani açılan bir < işareti ile kapanan bir > işareti arasına notaları
yazmamız gerekecektir. Bu anlatımımızı destekleyen ilk örneğimizin önce kaynak kodlarını
görelim.
\relative c’’{
<c e>4 <c f> <c e> <c g’> | <c fis>1 |
}
1http://lilypond.org/doc/v2.12/Documentation/user/lilypond-learning/Single-staff-polyphony#Single-staff-polyphony
75
76 Tek Dizekte Çokseslilik
Şimdi de derlediğimiz bu kaynak kodun müziksel sonucunu görelim. Örnekte de
gördüğünüz gibi karşınızda iki sesli bir notalama örneği var. Böyle bir nota, tuşlu bir
çalgı da veya sınırlı çoksesli olanaklar taşıyan yaylı çalgılardan birisi için yazılmış olabilir.
���� ����� ��� �Şekil 13.1: Tek dizekte basit çokseslilik örneği.
13.2 Birden Fazla Yatay Hareketin Aynı Dizeğe Yazılması
Aynı dizekte birden fazla yatay hareket, farkı sesler ve farklı tartımlar içinde karşımıza
daha çok "polifonik doku" dediğimiz ve çoğunlukla Barok dönemde bestelenmiş bulunan
"Envansiyon" veya "Füg" gibi eserlerde karşımıza çıkmaktadır.
Bu yapıdaki bir notayı oluştururken daha önce birden fazla dizek satırını oluşturup
bunları tek bir sistem içinde birleştirirken kullanmış olduğumuz yapıyı kullanmamız
gerekecektir. Önce kaynak kodumuzu sunalım ve ardından kaynak kodunu inceleyerek
çözümlemeyi gerçekleştirelim.
\relative c’’
{
\key d \minor
<< {
% Ses "1"
r4 c8 bes a bes c4 |
d8 d16 c d8 e c16 d bes c a4 |
a2. r4 |
} \\ {
% Ses "2"
d,4 e f4 f8 g16 a | bes4 g8 f16 e d8 e f8 e |
d2. r4 |
} >>
}
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
13.3 Bach - Füg Örneği 77
Kaynak kodumuza "referans Do" notamızın "orta DO"nun bir oktav yukarısında
olduğunu belirterek başlıyoruz. Sonra tonumuzun "re minör" olduğunu belirten kodu yer-
leştiriyoruz. Ve ardından iki sesi birleştirmemizi sağlayan tırnaklı çift-parantez’i ekliyoruz.
"Curly Brace"’i açarak ilk sesimizin notalarını girdikten sonra köşeli parantez kapanıyor.
Ve arasına ikinci ses olduğunu belirten \\ işaretini yerleştiriyoruz -ki bu işaret iki sesi
birleştirmemizi sağlıyor ve aynı yollarla ikinci sesi giriyoruz ve tırnaklı çift-parantez’i
kapatıyor ve orta do değişkeninin parantezini kapattıktan sonra da gereken kodlamayı
tamamlamış oluyoruz.
Bu arada her sesi yazmadan önce, bir programcı alışkanlığı ile her sesin bir üst
satırına yüzde işaretini yerleştirip kendimize comment yapmış olduk.
Artık bu kodlamamız nihayetinde elde edeceğimiz müziksel sonucu görebiliriz.
�� �� �� �� �� � ��� � �� � � �� ���� � ������ � � ��� ��
Şekil 13.2: Tek dizekte gelişmiş çokseslilik örneği.
13.3 Bach - Füg Örneği
Bu bölümde anlattığımız tek dizekte çokseslilik yapısına en güzel kodlama örneğini
bir Bach - Füg ile taçlandırmak istiyoruz. Burada size sadece Bach’ın Well-TemperedKlavier başlığını taşıyan ve iki defterden oluşan Prelüd ve Füg’lerinden ikinci defterde yer
alan, Re Majör tonundaki ve dört sesli beş numaralı Füg’ünün ilk on ölçüsünü sunacağız.
Her zaman olduğu gibi önce kaynak kodunu ve ardından da derleme sonucunu sizlere
sunuyoruz.
Kodlamayı oluştururken, programlama dilindeki "variable - değişken" kullanımını
LilyPond kodlarında da uyguladık. Üst dizek ve alt dizekteki her bir sese ayrı bir değişken
adı tanımlandı. \global değişkeni ile tüm partiler için geçerli olan tonalite ve tartım
yapısını oluşturduk. Aynı dizekte seslerin birleştirilme işlemlerini ise kodlarımızın son
bölmesinde yer alan parametreler ile ayarladık. Şimdi kaynak kodlarımızı görelim.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
78 Tek Dizekte Çokseslilik
global = {
\key d \major
\time 2/2
}
rightOne = \relative c’’ {
\global
R1 | R1 | R1 | R1 |
r8 d d d g,4 b ~ | b8 e, a g fis2 |
gis2 a4 r8 e | a g fis4 ~ fis e8 d |
cis4 d ~ d8 b’16 a b8 d, | cis4
}
rightTwo = \relative c’’ {
\global
R1 | r2 r8 a a a | d,4 fis ~ fis8 b, e d |
cis e a g fis4 a ~ | a8 d, g fis e fis g4 ~ |
g4 fis8 e d4 r | r r8 b e d cis4 ~ |
cis r8 a d cis b4 | a4 gis8 fis e2 |
}
leftOne = \relative c’ {
\global
r8 d d d g,4 b ~ | b8 e, a g fis4 d |
r8 fis b a gis2 | a4 cis r8 a d cis |
b2 r8 b e d | cis2 r8 a d cis |
b2 r8 e, a g | fis e d4 r8 d g fis |
e4 d8 cis b2 | e4
}
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
13.3 Bach - Füg Örneği 79
leftTwo = \relative c’ {
\global
R1 | R1 | R1 | R1 | R1 |
r8 a a a d,4 fis ~ | fis8 b, e d cis b a4 |
r8 a d cis b a g4 ~ | g8 fis b a gis2 | a4
}
\score {
\new PianoStaff \with {
} <<
\new Staff = "right" << \rightOne \\ \rightTwo >>
\new Staff = "left" { \clef bass << \leftOne \\ \leftTwo >> }
>>
\layout { }
}
Kaynak kodlarımızda notaları girdikten sonra dizeğimizin Piyano dizeği yapısında
olduğunu belirtiyoruz. \new Staff kodu sonrasında eşittir işaretinin arkasında yer alan
kodlar ile dizeğimizin sağ eldeki iki ayrı partiyi tek bir dizekte göstermesini sağlamış
oluyoruz.
Tek dizekte çoksesli dokuyu oluşturma olanağı Barok dönemde kalmış bir detay gibi
gözükse de aslında günümüzde usta bestecilerin elinde, farklı yapılarda tekrar ve yeni bir
anlayışla kullanılabilir.
Kaynak kodlarını derlediğimizde elde ettiğimiz sonucu görelim şimdi de.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
80 Tek Dizekte Çokseslilik
��
� ��
���
�
��� �
�
�� ��
�� �
� �� � � �� � �
���
��
�� �
����� �
�
� ��
� ����
��
����
��
���
���
�
��4
� � ���
�
���
����
���
����
��
���
������ ����
������
�����
����
��
7
�����
���
��� �
���
� �
��
�
�
�
����
�� �
��
�
����
��
��
�
���
����
��
����
�����
��
��
�
Şekil 13.3: Bach - Well Tempered Keyboard (İkinci Defter) - Re Majör Füg - İlk 10ölçü.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 14
Akor Girişi
Akorların GNU/LilyPond yazılımında nasıl yazıldığına dair ilk ipucunu geçmiş bölümde
iki ses yazımında verdik. Bu bölümümüzün tamamını akor girişlerine ayırmış bulunuyoruz.
14.1 Klasik Akor Yazımı
Klasik Batı Müziği ses sistemi içinde kalarak bir dizeğe en az üç sesten oluşan
akorları yazarken, kodlama sırasında seslerin harf karşılıklarını girmeden önce < simgesi
ile tırnağı açıyoruz ve sesleri giriyoruz. Eğer en az üç ses girmiş isek > simgesi ile tırnağı
kapatıyoruz. Ardından bu akorun süresini kapanmış tırnağın sonrasına rakkam olarak
yazıyoruz. Bu açıklamamızı hemen bir örnekle pekiştirelim. Her zaman olduğu gibi önce
kaynak kodumuzu görelim.
\relative c’{
<c e g >4 <c f a> <c e g> <c e gis> | <c f a>1 |
}
Şimdi de elte ettiğimiz müziksel sonucu görelim.
81
82 Akor Girişi
�� ������� ���� �� ���Şekil 14.1: Klasik akor yazımı örneği.
14.2 Şifreli Bas
İngilizce karşılığı Figured Bass olan ve dilimizde klasik armoni eğitimi ekolunda "bas
şifre" olarak bilinen ve Barok dönemde yazılan eserlerde klavsen çalan kişinin önündeki
notaya "sürekli bas - basso continuo" denilmekteydi. Klavsenist, buradaki şifrelerin
yönlendirmesine göre sağ eli oluşturmakta idi.
Ayrıca, Konservatuvar’larda ve diğer müzik okullarında öğretilen klasik armonide bas
partisinin altında yer alan şifreler, oluşturulacak olan akorun niteliğini belirlemekte idi. Bu
yöntem daha çok Fransız ekolü armoni eğitimi alan öğretmenler tarafından kullanılmakta
idi.
Bas şifre kodlamasında, akorların yazımında kullanılan koda benzeyen bir kod kulla-
nılmaktadır. Örneğin <6 4>2 kodunu yazdığınızda karşınıza ikilik süre boyunca devam
eden notaya eşdeğerdeki bir "4-6" akoru, yani ikinci çevrim akorunun bas şifresini elde
edersiniz.
LilyPond kodlamasında Figured Bass değişkeni ile şifreli basları elde etme olanağı
bulunmaktadır. Ayrıca giriş modunu \figuremode değişkeni ile bas şifre girişine ayarlama
olanağı bulunmaktadır. Aşağıdaki kodlama örneğinde sadece bas şifre girişlerini görüyoruz.
\new FiguredBass {
\figuremode {
<6 4>2 <6>2 |
}
}
Yukarıdaki kodlama örneğini derlediğimizde elde edeceğimiz sonucu görelim.
64
6
Şekil 14.2: Bas Şifre örneği.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
14.3 Chord Mode 83
Bu kısımda Figured Bass konusunu çok kısa geçiyoruz. Ama, konuyla ilgili çok daha
detaylı bilgilere Manual 1 sayfalarından ulaşabilirsiniz.
14.3 Chord Mode
GNU/LilyPond uygulamasında işleri çok kolaylaştıran ve \chordmode değişkeninin
kullanılması örneği bulunmaktadır. Hemen örneklerle açıkladığımızda daha iyi anlaşıla-
caktır.
Aşağıdaki kodlamada \chordmode değişkenini girdikten sonra curly brace ile sadece
akorların kök seslerini ve ardından sürelerini girdiğimizde daima Majör akor yapısınaulaşmaktayız.
\chordmode { c1 | f | a | d | g }
Kodu derlediğimizde karşımıza çıkan sonucu görüyoruz.
���� � ������ ���� ����Şekil 14.3: Birinci Chord Mode örneği.
Akor yapısının minör olması için, notadan sonra iki nokta üst üstü simgesini giriyor
ve küçük "m" harfini ekliyoruz. Akorun artık olması için "aug"; eksik olması için "dim";
yedili olması için "7"; minör yedili olması için "m7"; majör yedili için "maj7"; eksik
yedili için "dim7"; artık yedili için "aug7" kodunu girebiliyoruz. Bu anlatımı hemen
örnekleyelim.
\chordmode { c1:7 c:m7 c:maj7 c:dim7 c:aug7 }
Hemen elde ettiğimiz sonucumuzu görelim.
Chord Mode ile ilgili daha geniş bilgiler için yine sizlere web sayfası linkini veriyorum.
Bu web sayfası aracılığı ile daha detaylı bilgilere ulaşabilirsiniz. 2
1http://lilypond.org/doc/v2.14/Documentation/notation/figured-bass2http://lilypond.org/doc/v2.14/Documentation/notation/chord-mode
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
84 Akor Girişi
������ ��� �� ���������� �� �� ����Şekil 14.4: İkinci Chord Mode örneği.
14.4 Hafif Müzik Şifreleri
GNU/LilyPond yazılımında, hafif Müzik olarak bilinen ve günümüzde "pop, jazz,
rock" gibi farklı müzik türlerinde de kullanılan ancak esasen caz müziğinde kullanılan şifre-
lerin yazımında bu kez chordmode ile birlikte chordname değişkeni de kullanılmaktadır.
Bu anlatımı örnekle pekiştirelim.
\new ChordNames {
\chordmode {
c2 f4. g8
}
}
Bu kodlarla sadece akor şifrelerini görmekteyiz.
FC G
Şekil 14.5: Akor Şifresi örneği.
İkinci örneğimizde ise, iki ayrı unsuru birleştirdiğimiz << >> simgeleriyle, akorları
ve ezgiyi ayrı oluşturarak bu simgeyi başına ve sonuna eklediğimizde ezgiyi ve akor
şifresini görebiliriz. İstersek ayrıca bu notaya \addlyrics değişkeni ile şarkı sözlerini de
ekleyebiliriz.
<<
\chords{f1:maj7 | c1:min7}
\relative c’’{
a4 a8 e c e a4 | bes8 g ees g ~ g bes4. |
}
>>
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
14.5 Telli Çalgılar 85
� ��� �Cm
7
� ��� ���� ���F ��
Şekil 14.6: Ezgi ve akor şifresi birlikteliği örneği.
Daha detaylı bilgilere LilyPond Manual web sayfasının konuyla ilgili bölümünden 3
ulaşabilirsiniz.
14.5 Telli Çalgılar
Gitar, Lute, Ud ve benzeri çalgılara Fretted Instruments - Perdeli Çalgılar denil-mektedir. Bu çalgılar içinde örneğin Gitar çalgısı için yazılan notalarda tel numarası
yuvarlak içinde yazılmaktadır. Ayrıca, gitar çalgısına yazılan nota bir oktav aşağıdan
tınladığı için sol anahtarının altında "8" rakamının yazıldığını görürüz. Bu sonucu elde
etmek için kodumuzda \clef değişkeninden sonra tırnak içinde "treble 8" yazılır. Tel
numaralarını, birden fazla sesin aynı anda duyulması için kullandığımız < > simgelerini
kullanarak yazıyoruz. Notanın harf karşılığından sonra ve sola yatık çizgiden sonra gelen
numara, tel numaramızı göstermektedir. Simge sonrasına yazılan rakkam ise nota süre
değerimizi göstermektedir.
Açıklamaları hemen örnekleyelim. Önce kaynak kodlarımızı görüyoruz.
\relative c
{
\clef "treble_8"
<c\5>4 <e\4> <g\3>2
<c,\5 e\4 g\3>1
}
Şimdi de kaynak kodumuzu derlediğimizde elde ettiğimiz müziksel sonucu görelim.
3http://lilypond.org/doc/v2.14/Documentation/notation/displaying-chords
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
86 Akor Girişi
�8
� � �45 3
� ���5
3
4
Şekil 14.7: Gitar’da tel numaraları örneği.
Parmak numarası ve tel numarasının birlikte yazılması gerektiğinde ise, yukarıda
verilen kod kullanım tekniğinde küçük bir değişiklik yer almaktadır. Bu kullanım farkının
ne olduğunu, kaynak kodunu ve derleme sonucunu inceleyerek sizin bulmanızı tavsiye
ederim.
Bu ve bir önceki kod örneğimizi LilyPond web sayfasındaki el kitabı örneğinden aldık.
\relative c’
{
\clef "treble_8"
<g\3-0>2
<g-0\3>
}
Nota sonucumuzu görelim.
0
3
�8
� � �03
Şekil 14.8: Gitar’da tel ve parmak numaraları örneği.
Bu konuyla ilgili ve de özellikle Tablatura kullanımı ile ilgili daha detaylı bilgilere el
kitabının web sayfasına ulaşarak 4 göz gezdirebilirsiniz.
4http://lilypond.org/doc/v2.14/Documentation/notation/common-notation-for-fretted-strings#string-number-indications
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 15
LilyPond Şablonları
GNU/LilyPond web sayfasında, bazı şablon dosyaları yer almaktadır. İhtiyaca göre,
bu şablon dosyalarından herhangi birisini kullanmak isteyen bir LilyPond kullanıcısı,
bu anlamda şanslı sayılabilir. Kullanıcı arzu ederse bu şablonlardan faydalanarak, kendi
kullanım amacına göre bu şablonu özelleştirerek kendi kullanım şablonunu da oluşturabilir.
Bu şablonların yer aldığı web sayfasının ağ bağlantısı adresini aşağıda veriyoruz.
http://lilypond.org/doc/v2.14/Documentation/learning/templates
Bu web sayfasına ulaşıldığında karşınıza çıkan listede yer alan şablon dosyalarının
listesini sizlere verelim.
• Tek satır dizek,
• Piyano şablonları
• String Quartet (Yaylı Çalgılar Dörtlüsü)
• Vocal ensembles (İnsan sesi grupları)
• Orchestral templates (Çeşitli orkesra şablonları)
• Ancient notation templates (Barok öncesi dönem notalama şablonları)
• Other templates (Diğer şablonlar)
Yukarıda ağ bağlantı adresini, web tarayıcısında açtığınızda karşınıza çıkacak olan
ekran görüntüsünü aşağıda sunuyoruz.
87
88 LilyPond Şablonları
Şekil 15.1: Şablonlar Web Sayfası.
15.1 Barok Öncesi Dönem Notasyonu
İngilizce karşılığı Ancient Notation olan ve ortaçağ döneminde kullanılan notaları,
GNU/LilyPond ile yazma imkanı bulunmaktadır. Konu ile ilgili çok daha detaylı bilgilere
aşağıdaki ağ bağlantısı adresinden ulaşabilirsiniz.
http://lilypond.org/doc/v2.14/Documentation/notation/ancient-notation
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 16
Frescobaldi - LilyPond Editörü
GNU/LilyPond dosyalarını metin editörü denilen araçlarla hazırlama imkanımız
bulunmaktadır. Her işletim sisteminde mutlaka bir metin editörü, yani metin belgesi
düzenleme yazılımı bulunmaktadır. Burada kullanmakta olduğumuz editör kelimesini
doğru algılamak gerekmektedir. EDİTÖR kelimesini duyduklarında insanların aklına ilk
gelen düşünce-imge "yazılmış olan bir makale, kitap gibi bir çalışmayı yayına hazırlayan
kişi" olarak gelebilir. Ancak burada kullandığımız ve İngilizce kökeni "edit" olan ve anlamı
"değiştirme-yeniden düzenleme-hazırlama" anlamına gelen kelimeden türetilmiş olan
editör kelimesi ile LilyPond dosyasını hazırladığımız bir araçtan bahsetmekte olduğumuzu
anlamak daha doğru olacaktır.
GNU/LilyPond web sayfasında "easier editing" menüsü altında, LilyPond dosyasını
hazırlayabileceğimiz birbirinden farklı işletim sistemlerinde çalışan editörler tanıtılmakta-
dır. 1 Ancak, biz sizlere kitabımızın bu bölümünde kullanıcıya oldukça geniş olanaklar
tanıyan Frescobaldi - LilyPond Editörü-Hazırlayıcısı’ndan bahsetmek ve kullanım
olanaklarından bahsetmek istiyoruz.
Kitabımızın yedinci bölümünün başında çok kısa olarak Frescobaldi editöründen
bahsetmiş ve ardından LilyPond kurulumunu anlatmıştık. Ancak bu bölümde Frescobaldi
yazılımı ile ilgili detaylı bilgileri vermeye başlayacağız.
Günümüzde Frescobaldi yazılımını Windows, MAC OS X ve Linux gibi sistemlere
kurabilme şansı olsa da , yazılımın en kararlı çalıştığı sistem Linux’tur. Her bir Linux
1http://www.lilypond.org/easier-editing.html
89
90 Frescobaldi - LilyPond Editörü
dağıtımının kendi paket deposu bulunmakta ve yazılımlar bu paket depoları aracılığı ile
kurulmaktadırlar. Biz sizlere Ubuntu paket deposunu kullanan Linux Mint 14 dağıtımı
üzerinde örneklemeler yapacağız. Ancak, öncelikle Frescobaldi editörü’nün tarihçesi
hakkında kısa bilgiler vermek istiyoruz.
16.1 Frescobaldi - Tarihçe
2008 yılında, bir müzisyen (kilise organisti) ve bilgisayar programcısı olan Hollan-
dalı Wilbert BERENDSEN 2 , Linux masaüstülerinden biri olan KDE masaüstünde
kullanılan metin düzenleyicisi KATE için bir eklenti yazmaya başladı. Bu eklentinin adı
LilyKDE idi. Python programlama dili ile yazılan bu eklentiyi kurduktan sonra KATE
metin düzenleyicisi içinde kalarak LilyPond dosyalarının kodlarını yazmak ve sonrasında
PDF’ye dönüştürme ve sonucun önizlemesini yazılımı kapatmadan yapabilme imkanı
bulunmaktaydı.
Ancak, bu eklentiyi kurabilmek ve kullanabilmek için KDE masaüstünün kullanıldığı bir
Linux dağıtımı kullanmanız gerekmekteydi. KDE dışında GNOME veya XFCE gibi farklı
Linux masaüstü kullanan LilyPond kullanıcıları için ne yazık ki bu eklentiyi kullanabilme
imkanı olmakla birlikte yine de sorunlar çıkabiliyordu. Programı yazan BERENDSEN,
bir süre sonra yazılımın her türlü Linux masaüstünde kullanılmasına olanak tanıyan bir
sürüme yükseltti ve bu yazılıma geç rönesans dönemi kilise orgu virtüözü ve bestecisi
olan Girolama FRESCOBALDİ (1583 - 1643)’nin adından esinlenerek Frescobaldiadını verdi. Ve bu yazılımı GENEL KAMU LİSANSİ ile yayınlayarak, bu programın bir
Özgür Yazılım olmasını sağladı. Şu anda bu yazılım, MS Windows, MAC OS X ve Linux
dağıtımlarına kurulabilir ve kullanılabilir durumdadır.
16.2 Kurulum
Sizlere kurulumu Linux Mint 14 - Nadia üzerinden anlatacağız. Yazılım Yöneticisi -Sofware Manager adını taşıyan ve menüden Menu-Administration-Software Manager
yolunu izleyerek bu uygulamanın açılmasından sonra üstte ve sağda bulunan arama
kutusuna "frescobaldi" yazdığınızda karşınıza yazılımın adı ve kısa açıklaması çıkacak-
tır. Bunu seçtikten sonra "İnstall" düğmesine tıklayarak kurulmasını sağlayabilirsiniz.
2http://www.wilbertberendsen.nl/
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
16.3 Frescobaldi Çalışma Ekranı 91
Frescobaldi ile birlikte GNU/LilyPond yazılımı da birlikte kurulacaktır.
Ancak, sizlere çok daha kestirme bir yol önerebilirim. Aşağıdaki simge, farklı işletim
sistemlerinde farklı adlarla karşınıza çıkan ama hepsinde de aynı işe yarayan bir aracın
simgesidir.
Şekil 16.1: Terminal simgesi.
Windows işletim sisteminde MS-DOS Komut Satırı; MAC OS X’de Terminal vefarklı Linux çekirdeği temelli dağıtımlarda "Terminal" veya "Konsole" adıyla karşımıza
çıkan ve aslında "insan ile bilgisayar arasındaki iletişimi sağlayan" en temel araçtır
bu. Bu simgeye tıkladıktan sonra açılan pencerede aşağıdaki satırda verilen komutu
yazıp "enter" tuşuna bastıktan sonra sizden kullanıcı şifresini girmeniz istenecektir.
sudo apt-get install frescobaldi
Şifrenizi girip yine "enter" tuşuna bastıktan sonra terminalde size kurulacak paketlerin
listesi sunulacak ve onay istenecektir. Siz de onay verdikten sonra kurulum başlayacak
ve gerekli tüm paketler sisteminize kurulmuş olacaktır.
16.3 Frescobaldi Çalışma Ekranı
Frescobaldi yazılımı Linux Mint menümüzün Sound and Video kategorisi içine
kurulmuş olacaktır. Yazılımı açtıktan sonra karşınıza çıkan penceredeki unsurları aşama
aşama tanıtalım.
Uygulama açıldığında çalışma alanımızın üçe ayrıldığını görebiliriz. Soldaki alan, metin
girişlerini yapacağımız alandır. Burada, imleçin olduğu satırın arka rengi sarıdır. Henüz
dosyamızı kaydetmediğimiz için Untitled yani "İsimsiz" yazdığını görmekteyiz.
Sağda ve uygulama ilk açıldığında devrede olmayan Music View yani Müziksel
Görünüm olarak dilimize çevirebileceğimiz pencerede daha sonra derlediğimiz kodların
sonucunu göreceğiz.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
92 Frescobaldi - LilyPond Editörü
Sol aşağı köşede yer alan LilyPond Log adını taşıyan daha küçük pencerede ise,
derleme sırasında normalde terminalde görülen mesajları göreceğiz. Bu mesaj penceresi
aracılığı ile yazılım ile kullanıcı arasındaki haberleşme sağlanacaktır.
Şekil 16.2: Frescobaldi İlk Ekran.
GNU/LilyPond yazılımı ile oluşturacağımız notaları, bir tür programlama işlemiyle
önce kaynak kod olarak yazacağız ve yazılımdan çıkmadan derleme işlemlerini yapacağız.
Yazdığımız kodlarda, programın düzgün çalışmasını önleyecek hatalar olduğunda, bu
hataların kodun hangi satırının hangi sırasından kaynaklandığını, yazılım bize iletecektir.
İşte bu açıdan LilyPond Log penceresinde karşımıza çıkacak olan hata mesajlarını doğru
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
16.4 İlk LilyPond Dosyamızı Oluşturuyoruz 93
bir şekilde okuyup analiz ettiğimizde, yaptığımız hatanın ne olduğunu ve "nerede", "neyi
yanlış yaptığımızı" bulabiliriz.
16.4 İlk LilyPond Dosyamızı Oluşturuyoruz
Yazılımın menüsünde, soldan altıncı sıradaki Tools menüsünün altında yer alan
Setup New Score seçeneği ile (bu arada bu işlemin tuş kısayolunun Ctrl+Shift+N
olduğunu da belirtelim) yeni bir LilyPond belgesini detaylı bir biçimde oluşturmanın ilk
adımını atıyoruz.
Şekil 16.3: Yeni Belge Oluşturmanın İlk Adımı.
Ardından karşımıza yeni bir pencere açılıyor. Açılan bu pencerede ise üç adet sekme
bulunuyor. İlk sekmemin başlığı Title and Header adını taşıyor. Bu pencerenin sağında
karşımıza çıkan kutucuklardaki doldurulacak yerlerin notadaki görünümüzü sol tarafta
görüyoruz. Buradaki başlıklarıa teker teker açıklayalım.
• Dedication: Eseri ithaf ettiğimiz kişi veya topluluğun adını buraya yazacağız.
• Title: Eserimizin üst başlığını buraya yazmamız gerekecek. Biz buraya İlk Örnekyazıyoruz.
• Subtitle: Alt başlık
• Subsubtitle: Alt alt başlık
• Instrument: Eser, hangi çalgı/ses veya çalgı/ses topluluğu için yazılmış ise buraya
o bilgileri giriyoruz.
• Composer: Besteci’nin ad ve soyadını yazıyoruz.
• Arranger: Eğer eserin düzenlemesini yapan besteci dışında birisi ise, o bilgiyi
buraya yazmamız gerekiyor.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
94 Frescobaldi - LilyPond Editörü
• Poet: Eser bestelenen eserin bir şairi var ise, bu bilgiyi buraya girmemiz gerekiyor.
• Meter: Parçamızın ölçü yapısını buraya yazabiliriz.
• Piece: Parçamız ile ilgili çok kısa bilgiyi ekleyebiliriz.
• Opus: Bestecinin eserine verdiği sıra numarası buraya yazılacaktır.
• Copyright: Eserin telif haklarının ait olduğu kişi ve/veya kurumu belirtiyoruz.
• Tagline: Notamızın en altında etiket satırı olarak dilimize çevirebileceğimiz bir
kullanım yeri.
Şekil 16.4: Başlık Bilgileri Penceresi.
Penceremizin ikinci sekmesinde ise Parts başlığını taşıyan bir bölme var. Bu bölmede,
notada kullanacak olduğumuz çalgıları/ses gruplarını seçeceğiz. Biz bu örneğimiz için
Strings ailesinden Violin seçtik.
Penceremizin sol tarafında yer alan ve Available Parts başlığını taşıyan kısımda kulla-
nabileceğimiz çalgı/ses gruplarını seçip, aşağıdaki Add düğmesine tıklıyoruz. Eklediğimiz
öğe sağdaki Score kısmında yerini alıyor. Eğer notamız için seçtiğimiz çalgı/ses öğesini
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
16.4 İlk LilyPond Dosyamızı Oluşturuyoruz 95
kaldırmak istiyorsak, kaldırmak istediğimiz çalgıyı seçip alttaki Remove düğmesine
tıklıyoruz.
Şekil 16.5: Çalgı/Ses Ekleme/Çıkarma Penceresi.
Penceremizin üçüncü sekmesinde ise Score Settings başlığını taşıyan bir bölmeye
geçiyoruz. Burada notamız ile ilgili ince ayarları yapma şansımız bulunuyor. Pencerede
karşılaştığımız unsurları anlatalım.
• Score Settings: Sol tarafta partisyon ayarlarını yapıyoruz.
• Key Signature: Notamızını tonunu buradan ayarlıyoruz.
• Time Signature: Notamızın ölçü yapısını buradan ayarlıyoruz.
• Pickup Measure: Eğer, parçamız bir önel ile başlayacak ise, hangi süre ile önel
oluşturacağımızı buradan ayarlıyoruz.
• Metronome Mark: Metronom numaramız olacak ise buradan ayarlayabiliriz.
• Tempo Indication: Parçamızın hızını belirten metni buradan gireebiliriz.
• General Preferences: Genel Tercihler,
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
96 Frescobaldi - LilyPond Editörü
• Use typographical quotes: Tırnak işaretlerini olduğu gibi kullanabiliriz.
• Remove default tagline: Eğer, etiket satırına kendimiz bir şey yazmaz isek,
öntanımlı etiket satırını kullanabiliriz.
• Remove bar numbers: Ölçü numaralarınız kaldırabiliriz.
• Create MIDI Output: MIDI çıktısı oluşturabiliriz.
• Show metronome mark: Metronom işaretini göster/gösterme seçeneği.
• Paper Size: Sayfa yapısı. Default:Öntanımlı. Burada A4 kağıt boyutu ön tanımlı
olarak gelmektedir.
• Sol tarafta aşağıda ise nota adlandırmalarının dillerini farklı ayarlayabiliriz.
• Version: Sisteme kurulu LilyPond sürüm numarası.
• Instrument Names: Çalgı Adları, sağ alt tarafta yer almaktadır.
• First system-Long: İlk satırda çalgı adı tam olarak gözükecektir.
• Other system-Short: Sonraki satırlarda çalgı adı kısaltılmış olarak gözükecektir.
• Language: Yazılımın dil yapısını ayarlama imkanı bulunmaktadır. Burada öntanımlı
olarak İngilizce gelmektedir.
Şekil 16.6: Notamızın Diğer Ayarları.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
16.4 İlk LilyPond Dosyamızı Oluşturuyoruz 97
Artık, notamızın temel ayarlarını tamamlamış bulunuyoruz. Artık notamızı yaz-
mak üzere penceremizin en altında bulunan OK düğmesine tıkladıktan sonra ge-
riye sadece notaları girmek kalıyor. Ekran görüntüsünde imleci yaklaştırdığımız yerde
%music follows here yazan satıra notaları girmeye başlayabiliriz.
Şekil 16.7: Notamızı girmeye hazır hale gelen çalışma penceremiz.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
98 Frescobaldi - LilyPond Editörü
16.5 Frescobaldi Editör İle Notamızı Yazıyoruz
Notamızın kodlarını girme sırasında Auto-completion (otomatik tamamlama) olarak
bilinen özellik bizlere son derece yardımcı olacaktır. Örneğimizde, girdiğimiz notaların
belirli bir ölçüden sonra ikinci satırdan devam etmesi için \break kodunu girmek üzere
ilk iki harfi yazmaya başladığımızda, yazılım bize olasılıkları sıralayan seçenekleri sunuyor.
Şekil 16.8: Otomatik tamamlama özelliği.
Notamızı tamamladıktan çalışma penceremizdeki LilyPond simgesine tıkladıktan
sonra dosyamız derlenmeye başlıyor. İngilizce Lily kelimesi zambak anlamına gelmektedir.
Yani havuzdaki zambak, yazılımımızın simgesi haline gelmiştir.
Şekil 16.9: LilyPond simgesi.
Derleme işlemini LilyPond Log penceresinde görüyoruz ve derlemenin başarıyla
tamamlandığı bilgisini bu küçük pencerede gördükten sonra yazılımdan hiç çıkmadan
sağdaki Music View penceresinde notamızın sonucunu görebiliyoruz. Ayrıca, derleme
işleminin Frescobaldi yazılımındaki kısayolu Ctrl+M olarak kullanılmaktadır.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
16.5 Frescobaldi Editör İle Notamızı Yazıyoruz 99
Ayrıca, Point and Click denilen özellik ile, sağdaki pencerede gözüken notamızın
üzerine geldiğimizde imleç, o notaya ait olan kodun üzerinde sol pencerede yanıp sönmeye
başlıyor. Bunun tersini de yapabiliyoruz. Yani sol taraftaki kodun üzerine geldiğimizde,
bu kodun notadaki karşılığını sağdaki pencerede görebiliyoruz. Bu nota küçük olarak
seçilmiş oluyor.
Ayrıca, Midi player ile yazdığımız notanın nasıl tınladığını duyabilme şansını yakalaya-
biliriz.
Şimdi Frescobaldi çalışma penceremizde kodları girilmiş, derlenmiş ve müziksel
görünüme ulaşılmış olan sonucumuz ekran görüntümüzde görelim.
Şekil 16.10: Çalışma penceresinde ulaştığımız sonucumuz.
Frescobaldi - LilyPond editörü ile çok hızlı sonuca ulaşma imkanımız bulunmaktadır.
Ancak, daha önce de belirttiğimiz gibi yine de el kitaplarını okumak ve oradan bilgilere
ulaşmak imkanını her zaman kullanmak gerekecektir.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
100 Frescobaldi - LilyPond Editörü
Ayrıca, Frescobaldi yazılımının yazarı ve geliştirici, yazılımın web sayfasında bir UserGuide, yani Kullanıcı Rehberi3 oluşturmaya başlamıştır. Bu rehberi zamanla daha da
geliştirecek ve genişletecektir. Bu yazılım ile ilgili daha detaylı kullanım olanaklarını
öğrenmek istiyorsanız bu rehberi okumanızı tavsiye ederim.
Şekil 16.11: Frescobaldi - User Guide web sayfası görünümü.
3http://www.frescobaldi.org/uguide
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 17
Batı Müziği Ses Sistemi Dışındaki Sistemler
Kitabımızın bu bölümüne kadar, GNU/LilyPond yazılımının kullanımında sadece Batı
Müziği Ses Sistemi içinde kullanılan örnekleri okuyucularımıza sunduk. Ancak, bu yazılım
ile çeyrek sesleri de notada belirtme şansımız bulunmaktadır. Aşağıda önce kaynak
kodunu vereceğimiz ve ardından yapacağımız derleme sonrasında elde edeceğimiz notayı
incelerseniz ne demek istediğimizi daha iyi anlayabilirsiniz. Önce kaynak kodumuzu
sunalım.
\relative c’’{
ceseh1 ces ceh c cih cis cisih
}
Şimdi de elde ettiğimiz notamızı görelim.
�� �� ���� �� � �� � �Şekil 17.1: Çeyrek sesler örneği.
101
102 Batı Müziği Ses Sistemi Dışındaki Sistemler
17.1 Türk Sanat Müziği Ses Sistemi Notasyonu
Türk Müziği’nde iki ses arasındaki 1/9 oranındaki iç ses bölünmesinin karşılığı olarak
bu yazılımda Makam kelimesi kullanılmaktadır. LilyPond yazılımını sisteminize kurarken
makam.ly adını taşıyan dosya gerekli dosya sistemine kurulmaktadır. Bu dosyada,
bir takım yapılandırmalar yer almaktadır. Bu yapılandırmalar sayesinde kullanıcı nota
adlarında ve donanımlarda özel işaretler kullanabilme şansına sahip olmaktadır. Bu
konudaki geniş anlatımı, çevrimiçi olarak ağ üzerinden ulaşabileceğiniz LilyPond ElKitabında 1 bulabilirsiniz.
Ayrıca, LilyPond El Kitabı’nda Klasik Türk Müziği dağarı ve ses sistemindeki nota
adları konusunda bilgilerin yer aldığı bir bölüm bulunmaktadır. 2
Makamlara özel yapılandırmayı kullanmak için LilyPond dosyamıza notaları girmeye
başlamadan önce \include{makam.ly} parametresini yerleştirerek, bu dosyadaki kulla-
nım yapılandırmasını değiştirebiliyoruz.
Size önce LilyPond El Kitabı’nda da yer alan bir örneği sunmak istiyorum. Bu örnek-
teki kodu incelediğinizde de göreceğiniz gibi önce "makam.ly" dosyasını kullanacağımıza
dair bilgiyi verdikten sonra donanımın farklı yapıda olmasını sağlıyor ve notaları da özel
kodlama ile olması gerektiği gibi kullanıyoruz.
Önce kaynak kodumuzu görelim.
\include "makam.ly"
\relative c’ {
\set Staff.keySignature = #‘((6 . ,(- KOMA)) (3 . ,BAKIYE))
c4 cc db fk
gbm4 gfc gfb efk
fk4 db cc c
}
Şimdi de notamızı görelim.
1http://lilypond.org/doc/v2.14/Documentation/notation/common-notation-for-non_002dwestern-music
2http://lilypond.org/doc/v2.14/Documentation/notation/turkish-classical-music
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
17.1 Türk Sanat Müziği Ses Sistemi Notasyonu 103
� ��� � �� ����� � ��� ��� ��� � ��Şekil 17.2: Makam örneği.
Türk Sanat Müziği seslerinin nota adları için oluşturulan ve LilyPond yazılımını Linux
sisteminize kurduğunuzda makam.ly dosyanızı da kurmuş olduğunuzdan bu dosyanın
sisteminizdeki dizinler içindeki yerini bilgisayarınızda yapacağınız bir arama ile bulabilirsiniz.
Burada bazı nota adlarının kullanım bilgileri yer almaktadır.
Sizlere bu kitabın yazarının eserlerini çok sevdiği Türk Sanat Müziği’mizin kadın
bestekârlarından biri olan Neveser KÖKDEŞ’in Hüzzam makamındaki "Gül OlsamYa Sünbül Olsam Beni Koklar mısın?" şarkısının başlangıç kısmını örneklemek istedik.
Önce kaynak kodumuzu göreceğiz ve ardından da bu kodun derlenmesi neticesinde elde
edilmiş olan sonucu sizlere sunacağız.
\version "2.14.2"
\include "makam.ly"
<<
\new Staff {
\set Staff.keySignature = #‘((3 . ,BAKIYE) (6 . ,(- KOMA)) (9 . ,(- BAKIYE)))
\relative g’ {
\time 9/8
\tempo 8 = 216
%Aranağme
%fa diyez nota adı: fb
%la bemol nota adı: afb
%si bemol nota adı: bfc
g’8 fb16 g afb8[ fb] g e c d r | d bfc16 c d8[ bfc] g afb fb g r |
\bar ":|"
d16 g g g d[ g g g] d g g g d[ g g g g g ]
d g g g d[ g g g] d g g g d’[ e d c bfc c] |
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
104 Batı Müziği Ses Sistemi Dışındaki Sistemler
%Şarkı Başlar:
d4 bfc8[ c] d4 d4 r8 | e4 fb8[( g)] fb16( e d c) d4. |
r4 d8[ e] fb4( e8 d c) | d8([ c]) c([ bfc)] bfc4 c8 d4 |
}
\addlyrics {
Saz - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - -
- - - -
Gül ol sam ya sün bül ol sam
be ni kok___
lar mı sın a man
}
>>
LilyPond dosyamızın tamamında yer alan kaynak kodları inceledikten sonra bu dosyayı
derlememiz neticesinde elde ettiğimiz sonucu sizlere sunmak istiyorum.
���-
�� �-
�- -
�-
� �-
� �� � 89�� = 216
�--
�-Saz
�-
� �-
�-
�-
�-
�� �-
��-
�-
�-
��-
� �--
�-
3
�--
� �� � �-
�--
�-
� ��-
��- -
�- -
�-
�-
�-
�-
�-
�-
�-
4
� �--
� �� �-
�-
� �--
�-
� �-
�--
�-
�-
�-
�
�� � � �ol
�bül
5
sam
� �� � �ol
�sam-
�� ��Gül
�ya
� �sün
�sın
�a���
mı
���� ��mankok
�ni
� �7 � �be lar
���
Şekil 17.3: İkinci Makam örneği.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
17.2 Arap Müziği 105
17.2 Arap Müziği
GNU/LilyPond web sayfasında sadece makam ile ilgili yapılandırma bulunmamaktadır.
Ayrıca, Arabic Music, yani Arap Müziği başlığını taşıyan bir yapıdan da bahsedilmektedir.
Bu web sayfasına ulaşmak için aşağıda linkini verdiğimiz web sayfasına göz atmanızı
öneririm.
http://lilypond.org/doc/v2.14/Documentation/notation/arabic-music
Bu noktada da aynen makam.ly örneğinde olduğu gibi kodun başına "içer" anla-
mına gelen "include" komutunu verdikten sonra arabic.ly dosyasının adı yazılmaktadır.
Türk Müziği’nin içinde de arap müziğinden etkiler olduğu için ortak makam adları
kullanılabilmektedir. Aşağıda yine bu sayfada yer alan kısa bir örneği sizlere sunmak
istyorum.
\include "arabic.ly"
\score {
\relative re’ {
\set Staff.extraNatural = ##f
\set Staff.autoBeaming = ##f
\key re \bayati
\time 10/8
re4 re’8 re16 [misb re do] sisb [la sisb do] re4 r8
re16 [misb do re] sisb [do] la [sisb sol8] la [sisb] do [re] misb
fa4 fa16 [misb] misb8. [re16] re8 [misb] re [do] sisb
do4 sisb8 misb16 [re do sisb] la [do sisb la] la4 r8
}
\header {
title = "Semai Muhayer"
composer = "Jamil Bek"
}
}
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
106 Batı Müziği Ses Sistemi Dışındaki Sistemler
Şimdi yukarıdaki kodları derlediğimizde elde edecek olduğumuz sonucu görelim.
�� �810� �� � ��� ����������
2 � �� ��� ���� � � �� ��
���� � � �� � � � ��� � ��� � ��3 � �� �� � �� �Şekil 17.4: Arap Müziği örneği.
Kitabımızın bu bölümünde, GNU/LilyPond yazılımı ile Türk Sanat Müziği notaları
yazmak için kullanabileceğimiz olanaklarla ilgili bilgileri sizlere sunduk. Ayrıca, arap
müziğindeki kullanımdan da bahsettik. Elbette, makamlar sadece Türk Sanat Müziği
değil, Türk Halk Müziği’nde de yer almaktadır. Buradaki perde sistemlerinden bazıları
Türk Halk Müziği notalarını da GNU/LilyPond ile yazmak için kullanılabilir.
Her zaman olduğu gibi, bu kitapta vermiş olduğum linkler sizlere kaynaklık etmek-
tedirler. Daha fazlasını öğrenmek için bu linklerde yazan metinleri dikkatli okumanız
ve anlamaya çalışmanız gerekmektedir. Hatta belki de bu metinleri birden fazla defa
okumak durumunda kalabilirsiniz. Arada bazı detaylar gözden ve dikkatten kaçabilir
çünkü.
Bu kitabın farklı bölümlerinde tekrarladığım gibi, bu bir kullanıcı el kitabı değildir.
Yani sizlere tüm işlemleri adım adım anlatmak amacı güdülmemiştir bu kitapta. Bilinen
nota yazım programlarına karşı, özgür bir alternatifin sunduğu olanaklar anlatılmaktadır
burada. Okuyucunun buradaki bilgilerden faydalanarak, kendilerine sunulan alternatif
çözümler ile ilgili daha detaylı bilgiye ulaşması için çaba sarf etmesi beklenmektedir.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 18
Farklı Dosyaları Birleştirmek
GNU/LilyPond yazılımı bizlere LATEX dizgi sisteminde olduğu gibi, farklı dosyalar
olarak kaydedilmiş olan LilyPond dosyalarını tek bir dosya içinde birleştirmemize olanak
tanır.
18.1 Parçaları Ayrı Olarak Hazırlamak İşlemi - Aşama 1
Varsayalım bir Solfej kitabı yazmaktasınız. Her bir parçayı ayrı bir dosya adıyla
oluşturdunuz. Birinci parçayı yazdığınız dosyayı Türkçe karakter kullanmadan parca1.lyadıyla; ikinci parçayı parca2.ly adıyla ve üçüncü parçayı da parca3.ly adıyla kaydettiniz.
Önce bu kısa parçaların kaynak kodlarını ve ardından derlenmiş olan notaları sırasıyla
görelim.
18.1.1 Parça 1
\relative c’’{
\time 3/4
\key g \major
\tempo "Parça 1"
g4 b d | g2. | fis8 g a g fis e | d e d c b a | g2. ~ | g4 r2 |
\bar "|." }
107
108 Farklı Dosyaları Birleştirmek
�� �43Parça 1 � ��� � �� �� �� � �� ��� � ��
Şekil 18.1: Parça 1 Notası.
18.1.2 Parça 2
\relative c’{
\time 2/4
\key d \minor
\tempo "Parça 2"
d4 f | a2 | bes8 a g f | e2 | cis4 e | g2 | a16 bes a g f8 e | d4 r |
\bar "|."
}
� ��� � � �� � �� � �� � ��� � 42Parça 2
� � �Şekil 18.2: Parça 2 Notası.
18.1.3 Parça 3
\relative c’{
\time 4/4
\key a \major
\tempo "Parça 3"
a8 a cis cis e e a4 | gis8 a b gis e2 |
b8 b e e gis gis b4 | cis8 b a gis a4 r |
\bar "|."
}
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
18.2 Parçaları Birleştirme İşlemi - Aşama 2 109
� �� �� ��� � � �� �Parça 3����
�� ��� � �� � ����� ���3
Şekil 18.3: Parça 3 Notası.
18.2 Parçaları Birleştirme İşlemi - Aşama 2
Şimdi ayrı olarak hazırladığımız parçaları sadece \include parametresini kullanarak
birleştireceğiz. Bu ayrı dosyaları ornekler adını vererek yeni oluşturduğumuz bu dizinin
içinde oluşturduk. Bu yüzden komutları buna göre yazmaktayız. Şimdi bu üç dosyayı
birleştirdiğimiz kaynak kodu sunalım.
\include "./ornekler/parca1.ly"
\include "./ornekler/parca2.ly"
\include "./ornekler/parca3.ly"
Bu kaynak kodumuzu derlediğimizde elde ettiğimiz sonucu görelim. Böylece, farklı
yapılandırmaya sahip olan notaları tek bir dosyanın içinde birleştirme şansına sahip
olabiliyoruz.
Bu parametrenin yani \include parametresinin bizlere tanıdığı olanaklar hakkında
daha geniş bilgiye sahip olmak için ilgili web sayfasına göz atabilirsiniz. 1
1http://lilypond.org/doc/v2.14/Documentation/notation/including-lilypond-files
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
110 Farklı Dosyaları Birleştirmek
� � � � ��� �43Parça 1 � � �� �� �� � ���� ��
�� � � ��� 42Parça 2
� � � �� �� � �� �� �� �
� ��Parça 3 ����� � ����� ���
� ���3 ���� ��� ������
Şekil 18.4: Tek Dosyada Toplanan 3 Parça.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
BÖLÜM 19
SONUÇ ve SON SÖZLER
Bu kitabı yazmaya başladığımda GNU/LilyPond’un sürüm numarası 2.12 idi. Kitabı
bitirdiğimde ise yazılımın web sayfasında kararlı sürüm numarası 2.16.2 idi. GNU/LilyPond’un
oldukça geniş bir gönüllü geliştirici ekibi bulunmaktadır. Yani bu kişiler bu yazılıma ticari
bir gözle değil, imece ruhu ile destek vermektedirler.
LilyPond web sayfasında community, yani camia anlamında bu yazılıma katkı vermiş,
katkı veren kişiler ile ilgili, bu kişilere ulaşım bilgilerini içeren yani sözü özü GNU/LilyPond
camiası ile ilgili her türlü bilgiye ulaşabileceğiniz bir alt web sayfası 1 bulunmaktadır.
Ayrıca, LilyPond News başlığını taşıyan ve düzenli olarak LilyPond Raporu başlığı
altında LilyPond ile ilgili güncel haberleri kullanıcılarına duyuran bir sayfa oluşturulmuştur.2
Yukarıda linkini verdiğim sayfalar aracılığı ile ve ayrıca LilyPond web sayfasını iyice
inceleyerek pek çok bilgiye ulaşabilme şansınız bulunmaktadır. GNU/LilyPond web
sayfasının adresini bir kez daha verelim:
http://www.lilypond.org/
1http://lilypond.org/website/community.html2http://news.lilynet.net/
111
112 SONUÇ ve SON SÖZLER
Kitabımın başında belirttiklerimi kapanış bölmesinde yeniden hatırlatmak istiyorum.
Sabır, sebat ve azimle başarılamayacak hiç bir zorluk bulunmamaktadır. Gerek Linux
kullanmak, gerek ise GNU/LilyPond kullanmak için, içinizdeMERAK var ise, merakınızı
giderme isteğiniz size ihtiyacınız olan sabrı da, azmi de sağlayacaktır. Bıkmadan, yılmadan
ve karşınıza çıkan güçlükleri yenmek için aklınızı kullandığınızda başarmaya başladığınızı
göreceksiniz.
Bu kitabın okuyuculara faydalı olacağını umuyorum. Nota yazma yazılımları boyutunda
alternatif çözümler arayan kişilerin merakını bir nebze olsun giderebildiğimi ummak
istiyorum.
Tüm meraklı okuyuculara özgür yazılımlarla dolu bir ömür diliyorum.
Prof. Server ACİM GNU / LilyPond: Özgür Bir Nota Yazma Programı
Kaynakça
[1] http://en.wikipedia.org/wiki/TeX
[2] http://en.wikipedia.org/wiki/Leslie_Lamport
[3] http://ftp.ntua.gr/mirror/ctan/macros/musixtex/README
[4] http://en.wikipedia.org/wiki/MusiXTeX
[5] http://lilypond.org/doc/v2.14/Documentation/essay/
the-lilypond-story
[6] http://lilypond.org/gpl.html
[7] http://lilypond.org/manuals.html
113
Prof. Server ACİM - Özgeçmiş
22 Nisan 1961 yılında İstanbul’da doğan Server ACİM, Harbiye İlkokulu ve Şişli
Ortaokulu’nda aldığı temel eğitimin ardından 1978 yılında, Mimar Sinan Güzel Sanatlar
Üniversitesi Devlet Konservatuvarı’nın önce Kontrbas alanında ve 1980 yılında da Kom-
posizyon ve Orkestra Şefliği Ana Sanat Dalı’nda almaya başladığı eğitimi 1990 yılında
tamamladıktan sonra, aynı okulda Yüksek Lisans ve Sanatta Yeterlik eğitimini tamamla-
mıştır. Bu süreçte, Kompozisyon eğitimini on yıl boyunca Prof. İlhan USMANBAŞ’tan
alan besteci, Lisansüstü eğitiminde ise Prof. Cengiz TANÇ’ın öğrencisi olmuştur.
Beste çalışmalarına oyun müzikleri, televizyon müzikleri, oda müziği eserleri, orkestra
eserleri üreterek devam etmekte olan besteci, akademik kariyerini sırasıyla mezun olduğu
Mimar Sinan Güzel Sanatlar Üniversitesi - Devlet Konservatuvarı, Yıldız Teknik Üniver-
sitesi - Sanat ve Tasarım Fakültesi ve Malatya - İnönü Üniversitesi’ndeki farklı müzik
bölümlerinde çalışarak sürdürmüştür. Şu anda Malatya - İnönü Üniversitesi Devlet Kon-
servatuvarı’nda Kompozisyon ve Orkesta Şefliği alanında Profesör ünvanıyla çalışmakta
olup aynı zamanda Devlet Konservatuvarı Müdürlüğü görevini sürdürmektedir.
ISBN: 978-975-8573-16-5