İnönü Üniversitesi Devlet Konservatuvarı Yayınları - No:1. GNU / LilyPond. Özgür Bir Nota Yazma Programı. Prof. Server ACİM



Benzer belgeler
I. Oturum: GNU/LINUX A GİRİŞ

Linux un Temel Bileşenleri. Linux Nedir? Aydın ÜSTÜN (Selçuk Üniversitesi) e-posta:

Akademik Dünyada Özgür Yazılım. Akademik Dünyada. Onur Tolga Şehitoğlu

Açık Kaynak Kodlu Yazılım

1.Debian. 2.Ubuntu. Şekil 1. Güncel logosu

Özgür Yazılım ve GNU/Linux'a Giriş

Linux ve Özgür Yazılım Nedir?

Yrd. Doç. Server ACİM İnönü Üniversitesi Güzel Sanatlar Fakültesi. Bir Besteci'nin Gözünden Özgür Yazılım ve Özgür Yaşam

Pardus. Erkan Tekman, T. Barış Metin. 18 Mayıs Ulusal Dağıtım Projesi Ulusal Elektronik ve Kriptoloji Enstitüsü. Pardus için 10 Neden

EYLÜL 2012 İŞLETİM SİSTEMLERİ. Enformatik Bölümü

Finans Dünyasında Linux ve Özgür Yazılımlar

Efe Çiftci Çankaya Üniversitesi Bilgisayar Mühendisliği Bölümü Kasım 2012 CENG 191 Computer Engineering Orientation Özel Sunumu

Pardus 2013 te Metin Editörleri

Pardus. S.Çağlar Onur, 21 Aralık Pardus Projesi [TÜBİTAK / UEKAE] Linux Kullanıcıları Derneği

Uludağ Projesi, İlk Adımlar (Kalite Takımı)

Pardus. A. Murat Eren, 25 Mart Pardus Geliştiricisi. Pardus Yenilikleri Sık Sorulan Sorular

İşletim Sistemleri; İÇERİK. Yazılım BİLGİ TEKNOLOJİLERİ VE UYGULAMALARI Yazılım Türleri

Özgür Yazılım ve Pardus. Erkan Tekman TÜBİTAK UEKAE 7 Aralık 2006

Nasıl Pardus Geliştiricisi Olunur?

İŞLETİM SİSTEMLERİ. Enformatik Bölümü

Turquaz. Açık kodlu muhasebe yazılımı Turquaz Proje Grubu

GNU/Linux'un Tarihi ve Önemi

Linux İşletim Sistemi. EnderUnix Çekirdek Takımı Üyesi afsin ~ enderunix.org

İnönü Üniversitesi Kütüphanesi Müzik Veritabanları

Pardus Temel Seviye Kullanıcı Eğitimi. Sürüm Ağustos 2012 Pardus K Fatih Akıllı Tahta sürümüne göre hazırlanmıştır.

BİLGİ İŞLEM DERS 1. Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ MSGSU FİZİK BÖLÜMÜ

EK 1:NAMIK KEMAL ÜNİVERSİTESİ YAYIN ÖNERİ FORMU

Ulusal Dağıtım Projesi ve Pardus

Bağlantı Kılavuzu. Desteklenen işletim sistemleri. Yazıcıyı Yazılım ve Belgeler CD'sini kullanarak kurma. Bağlantı Kılavuzu

A. Murat Eren. VI. Linux ve Özgür Yazılım Şenliği

Sanal Makine Üzerine Linux(Pardus) Kurulumu ve Özellikleri. Proje Grubu Ramazan TUNÇ Bilge BAHÇECİ Selma GÖĞÜŞ Ayşe ALP

PAROLA GÜVENLİĞİ. İlker Korkmaz. homes.ieu.edu.tr/ikorkmaz 08/06 UBE

Metin Editörleri YRD. DOÇ. DR. ENGİN CEMAL MENGÜÇ. ALINTI:

Linux Nedir, Neden Önemlidir

Bilgisayar Yazılımları

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş

Dersin Konusu ve Amaçları: Ders P lanı: Bölüm 1: Bilgi Teknolojilerinde Temel Kavramlar

Efe Çiftci Çankaya Üniversitesi Bilgisayar Mühendisliği Bölümü Kasım 2012 CENG 191 Computer Engineering Orientation Özel Sunumu

Bir Birim Yöneticisinin Gözünden PARDUS Kurumsal 2. Doç. Dr. Server ACİM İnönü Üniversitesi

Barış Metin A. Murat Eren 12 Ağustos 2005

Debian. Debian projesi, 1993 de Ian Murdock tarafından ticari olmayan bir proje

LKD Kendi İlacını Kullanıyor

Özgür Yazılım Nedir? Özgür Yazılım Tarihçesi Ve Sektörde İş Olanakları

Bağlantı Kılavuzu. Yazıcıyı yerel olarak yükleme (Windows) Yerel yazdırma nedir? Yazıcıyı Yazılım ve Belgeler CD'sini kullanarak kurma

AÇIK KAYNAK KODLU İŞLETİM SİSTEMLERİ DERS NOTLARI 1-İşletim Sisteminin görevi nedir? En çok kullanılan işletim sistemleri nelerdir?

Atılım Üniversitesi Bilgi & Đletişim Teknolojileri Müdürlüğü. AKTS Veri Girişi, CMS - Yönetim Paneli Kullanıcı Kılavuzu

Linux İşletim Sistemi Tanıtımı

Hızlı Başlangıç Kılavuzu

Bilgisayar Yazılımları

ÖZGÜR YAZILIM & GNU/LINUX

ENFORMATİK Dersin Amacı

Linux nasıl savunulmaz?

Özgür Yazılım Proje Yönetimi

USE IMPROVE EVANGELIZE. OpenSolaris. Afşin TAŞKIRAN EnderUNIX Yazılım Geliştirme Ekibi Türkiye OpenSolaris Kullanıcıları Grubu afsin ~ enderunix.

Temel Linux Eğitimi 1., 2. ve 3. Bölümler

1.5. Başvuru formundaki bilgileri aşağıdaki şekilde doldurunuz. Kart Okuyucu Tipi: Mini Kart Okuyucu Sertifika Süresi: 3 Yıl

Linux Çekirdek Geliştirme Süreci

e-imzatr Kurulum Klavuzu

Google Dokümanları Kullanmak

Elektronik Belge Yönetim Sistemi Kullanım Kılavuzu

2-Hafta Temel İşlemler

EKLER EK 12UY0106-5/A4-1:

Eğitimde Yeni Teknolojiler

2KiloMavi de. Misafir Yazarlık. Eylül kilomavi.wordpress.com

Gpl Nedir? Açık Kaynak Kod Nedir?

DÜZENLEME Ders Notu - 1

İnternet Uygulamaları. FATİH Projesi PARDUS Temel Eğitim Kursu

Ders İ zlencesi. Ders Başlığı. Dersin amacı. Önceden sahip olunması gereken beceri ve bilgiler. Önceden alınması gereken ders veya dersler

AÇIK KAYNAK İŞLETİM SİSTEMİ KURULUMU MODÜLÜ

Özgür Yazılım Nedir?GPL, GNU...

tarih ve 06 sayılı Akademik Kurul tutanağının I nolu ekidir. İSTANBUL BİLGİ ÜNİVERSİTESİ SOSYAL BİLİMLER ENSTİTÜSÜ TEZ YAZIM KILAVUZU

VAN EDREMİT İLÇE MİLLİ EĞİTİM MÜDÜRLÜĞÜ

VIRTUALIZATION SANALLAŞTIRMA

Moodle-IST Kullanım Klavuzu


2. HTML Temel Etiketleri

AUTODESK PORTALI İÇİN AKADEMİK HESAP OLUŞTURULMASI

1.Debian. 2.Ubuntu. Şekil 1. Güncel logosu

Akor Şifreleri Doğrultusunda Yaratıcı İcra Teknikleri

Hızlı Başlangıç Kılavuzu

Doğu Akdeniz Üniversitesi Bilgisayar ve Teknoloji Yüksek Okulu Bilgi teknolojileri ve Programcılığı Bölümü DERS 1 - BİLGİSAYAR VE ÇEVRE ÜNİTELERİ

Compiere Açık kodlu ERP + CRM yazılımı. Hüseyin Ergün Önsel Armağan Serkan Demir

Akdeniz Üniversitesi

Pardus Projesi ve Topluluk süreçleri. Ali Işıngör Akın Ömeroğlu

Samsun Çocuk Hizmetleri İ l Koordinasyon Sekretarya Birimi

Bağlantı Kılavuzu. Desteklenen işletim sistemleri. Yazıcıyı Yazılım ve Belgeler CD'sini kullanarak kurma. Bağlantı Kılavuzu

YRD. DOÇ. DR. AGÂH TUĞRUL KORUCU

Özgür Yazılım Lisansları

INTERNET SİTESİ KULLANIM KILAVUZU

idealonline Elektronik veri tabanı tanıtımı

GOOGLE DRIVE KULLANIMI Google Drive Kullanmak için öncelikle bir Gmail hesabınız olması ve onunla giriş yapmanız gerekiyor.

Ders Tanıtım Sunumu. Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı. 26 Şub Öğr. Gör.

Eğitimde Yeni Teknolojiler

PERKON PDKS Kurulum ve hızlı başlangıç rehberi

e-imzatr Kurulum Klavuzu

VERİ YAPILARI VE PROGRAMLAMA (BTP104)

ÇANKAYA ÜNİVERSİTESİ WEBMAIL KULLANIM KLAVUZU

Windows Live ID ve parolanızı giriniz.

Transkript:

İnönü Üniversitesi Devlet Konservatuvarı Yayınları - No:1 GNU / LilyPond Özgür Bir Nota Yazma Programı 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: Tasarım-Dizgi: 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

İÇINDEKILER v 9 Tartımsal Yapı 49 9.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 59 10.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 65 11.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ı 71 12.1 Basit Anlamda Çoklu Dizek Yapısı................... 71 12.2 Dizek Gruplandırmaları......................... 73 13 Tek Dizekte Çokseslilik 75 13.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 81 14.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

vi İÇINDEKILER 15 LilyPond Şablonları 87 15.1 Barok Öncesi Dönem Notasyonu.................... 88 16 Frescobaldi - LilyPond Editörü 89 16.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 101 17.1 Türk Sanat Müziği Ses Sistemi Notasyonu............... 102 17.2 Arap Müziği............................... 105 18 Farklı Dosyaları Birleştirmek 107 18.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

Ö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.

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 olanaklara 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 Bilimler Enstitüsü - Müzik Ana Bilim Dalı - Müzik Bilimleri ve Teknolojisi Bilim Dalı nda vermeye başladığım Açık Kaynak Kodlu Müzik Yazılımları ve İşletim Sistemleri 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.

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 Not Unix" 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ılması 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 Lisansı 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üğü,

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 lisanslayarak dağıtabilme özgürlüğü. Yukarıdaki özgürlüklere sahip olan ve GNU GPL - GNU General Public License (GNU Genel 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 (buradaki "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 kullanı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 istiyorsanız, bu web sayfalarında yazılanlara "öylesine!" göz atmak yerine, lütfen zaman ayırınız ve sabırla okuyunuz. 1 Genel Kamu Lisansı nın üçüncü versiyonunun İngilizce metnine, Free Software Foundation (Özgür Yazılım Vakfı) sayfasından ulaşabilirsiniz. Link adresi: http://www.gnu.org/copyleft/gpl.html

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 bulunmaktadı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...

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. "Özgü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."

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çları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 Jan Nieuwenhuizen 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 Ubuntu 1 http://distrowatch.com/dwres.php?resource=major

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.

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üncellemesi Yazılımın yeni sürümü çıktığında yapılan güncellemeler, Güvenlik Güncellemesi Yazı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 Beta etiketi 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ı (Release Candidate) 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.

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ülememiş 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.

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 Topluluğ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 bulunmaktadı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. 1 http://tr.pardus-wiki.org/pardus

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 Topluluğ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örevlerinden 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ştirilmesi, 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üm geliştirilme çalışmalarının topluluğa bırakılacağı ancak TÜBİTAK un PARDUS - Kurumsal 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 2 http://www.pisilinux.org/

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 Ubuntu 5 ve Linux Mint 6 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ından 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. 3 https://www.pardus.org.tr/anasayfa 4 https://www.pardus.org.tr/etkinlikler 5 http://www.ubuntu.com 6 http://www.linuxmint.com

BÖLÜM 5 TEX ve L A TEX 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ırları, 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" şeklinde ç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 matbaalarda 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 her zaman ö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 sayfası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] ile lisanslanmış olan bir Özgür Yazılım dır. Özgürdür, çünkü: Ücretsizdir, özgürce indirilebilir ve kullanılabilir,

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

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ğlantı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

BÖLÜM 6 Kitabımızdaki İşletim Sistemi Bu kitabın yazarı, Özgür Yazılım Felsefesini benimsemiş ve bu felsefe doğrultusunda 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.

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. 1 http://www.xfce.org/ 2 http://www.xubuntu.org/

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) 3 http://pages.uoregon.edu/koch/texshop/

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 4 http://www.pardus.org.tr/ 5 http://www.frescobaldi.org/ 6 http://jedit.org/ 7 http://lilypondtool.organum.hu/

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öylece 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 öğrenebilirsiniz. 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. 8 http://www.denemo.org/ 9 http://lilypond.org/easier-editing.html

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ırken 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

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ı LA Sİ DO RE Mİ FA SOL Harf Karşılığı a b c d e f g

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 piyanonun 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, sistemimizin temel yapısı İngilizce dir. Oluşturduğumuz dosyayı bir terminal açarak derlemek için aşağıdaki komutu veriyoruz.

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. Notation Yazılımın kullanımı hakkında daha detaylı bilgiler bu belgede yer almaktadır. Usage Yazılımın kullanımının daha da derinlemesine detaylarla anlatıldığı belgedir. Music glossary Bu belgeler yukarıda ilk üç metnin okunmasının bitirilmesinden sonra seçeneklioptional 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. Essay Bu belgede ise, nota yazım tipografisi ve bu bağlamda bilgisayarların rolü irdelenmiştir. Opsiyonel belgedir. Snippets Bu 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.

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 bulunmamaktadı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.

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 platformlarda hazırlanması ve çıktı dosyalarının elde edilmesi işlemleri örneklerle, birbirinden

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ğimizde, 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. 1 http://lilypond.org/doc/v2.14/documentation/learning/entering-input

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.

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.

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ğinizde "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ğı

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 parantez kapatarak 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.

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.

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.

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. 3 5 4 2 1 4 3 1 Ş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.

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. p f Ş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

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, crescendo 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\! p f Şekil 8.12: Crescendo ve decrescendo işaretlerinin diğer gürlük ve stacatto artikülasyonu ile 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.

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üziksel iç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.

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. 5 f p Ş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.

8.8 Anahtarlar 47 Kodları yazarken \clef girdisinden sonra tırnak içinde hangi ses grubunu kullanacağı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

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 13 f f Şekil 8.16: Parça içinde anahtar değişimi

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) kategorisinde 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. 4 2 4 3 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.

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: 8 6 4 6 5 4 6 8 9 9 8 9 4 9 13 4 9 14 Şekil 9.2: Bileşik Ölçü Yapısı Örneği

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. 8 5 5 Şekil 9.3: Aksak Ölçü Yapısı Örneği

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çindeki 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.

54 Tartımsal Yapı 8 5 8 7 5 8 7 8 9 7 8 9 10 8 9 10 8 Ş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:

9.5 Önel 55 4 4 3 Ş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: 4 3 Şekil 9.6: Önel Örneği 9.6 Üçleme (Triplet) Müzik eğitimi sistemimizdeki farklı ekollerden yetişmiş öğretmenlerin triolet terimini 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.

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. Grace Vuruş başında duyulan notadan çok az önce yer alan notalar. Appoggiatura Daha ç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. Acciaccatura Mü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.

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 çevirebileceğ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

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.

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 bulunmaktadı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 bulunmaktadı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.

10.2 Müziksel Hız İfadeleri 61 espres legato Ş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 noktalarda İ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 Ritardando 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 kategoriye 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

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)

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.

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.

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. Ardı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 kodları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: 4 2 Ş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 >>

11.2 Şarkı Sözünü Eklemek 67 Ve elde ettiğimiz sonucu görelim: 4 2 Da ha dün an ne mi zin kol la rın da ya şar ken Ş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 yu yav rum U yu kol la rım da Şekil 11.3: Şarkımızın sözünde bir hecede birden fazla notanın bulunması.

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 nem An nem ca nım an nem Ş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.

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. An nem An nem ca An nım an nem nem an nem ca nım an nem ca nım an nem Şekil 11.5: Birden fazla nota satırına şarkı partisi yazma örneği.

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ıyoruz. 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.

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 brace olarak 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 >>

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. 4 3 4 3 Ş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

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. Bunun 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 >> 4 2 4 2 Ş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.

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 1 http://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 >>

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 yerleş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-Tempered Klavier 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.

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

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.

80 Tek Dizekte Çokseslilik 4 7 Şekil 13.3: Bach - Well Tempered Keyboard (İkinci Defter) - Re Majör Füg - İlk 10 ölçü.

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 kullanı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. 6 4 Şekil 14.2: Bas Şifre örneği. 6

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şılacaktı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ına ulaş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 1 http://lilypond.org/doc/v2.14/documentation/notation/figured-bass 2 http://lilypond.org/doc/v2.14/documentation/notation/chord-mode

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 şifrelerin 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. C F 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. >>

14.5 Telli Çalgılar 85 F Cm 7 Ş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 denilmektedir. 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. 3 http://lilypond.org/doc/v2.14/documentation/notation/displaying-chords

86 Akor Girişi 8 5 4 3 3 4 5 Ş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. 8 0 3 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. 4 http://lilypond.org/doc/v2.14/documentation/notation/common-notation-for-fretted-strings# string-number-indications

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

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ılmaktadı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 1 http://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 Hollandalı 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 Frescobaldi adı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ı çıkacaktır. Bunu seçtikten sonra "İnstall" düğmesine tıklayarak kurulmasını sağlayabilirsiniz. 2 http://www.wilbertberendsen.nl/

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 ve farklı 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.

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

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 Örnek yazı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.

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 kullanabileceğ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

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,

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ı.

16.4 İlk LilyPond Dosyamızı Oluşturuyoruz 97 Artık, notamızın temel ayarlarını tamamlamış bulunuyoruz. Artık notamızı yazmak üzere penceremizin en altında bulunan OK düğmesine tıkladıktan sonra geriye 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.

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.