Gelişmiş Tema Düzenlemesi

Bu kısmın büyük bölümü Fluxbox 0.1.13 ün yardım sayfalarından (man) etkilenmiştir. Genellikle yardım sayfaları (man) bu konu hakkında kesin otoritedir, fakat bu doküman yeni başlayan biçem yazarları için daha aydınlatıcıdır.

Biçem mekanizmasının nasıl işlediğini anlamak için biraz X11 bilmeniz çok iyi olur.

X11 kaynak kodları bir anahtar ve değerinden oluşur. Anahtar (.) 'larla ayrılmış daha küçük anahtarlardan oluşur (bazen child denir). Anahtarlar joker sembol olarak kullanılmak üzere (*) da içerebilir. Bu sadece bir veya iki renk kullanılan biçemler için kullanışlıdır.

Fluxbox üç ana bileşenini konfigure etmenize olanak sağlar: Araç çubuğu, menüler ve pencere dekorasyonları. Slit otomatik olarak kendi biçemini araç çubuğundan alır fakat ihtiyaç olduğunda farklı şekilde biçemlenebilir. Pencereleri sürüklerken x-y pozisyonlarını gösteren küçük pencere de biçemini pencerenin başlık çubuğundan ödünç alır.

Temel söz dizimini örneklemek için bazı örnekler:

Örnek 10-1. Araç çubuğu Saat biçemi

    toolbar.clock.color:  green

Bu araç çubuğundaki saatin renk değişkenini green olarak ayarlar. Başka bir örnek:

Örnek 10-2. Menü biçemi

    menu*color: rgb:3/4/5

Bu menünün renk değişkenini ve bütün alt özelliklerini rgb:3/4/5 olarak ayarlar. Renk isimlerinin açıklamaları için X11 yardım (man) sayfalarına bakınız. Öyleyse, bu menu.title.color ve menu.frame.color a da etki eder. Ve bununla da:

Örnek 10-3. Yazı tipi biçemi

    *font: -b&h-lucida-medium-r-normal-*-*-140-*

bütün anahtarların yazıtipi ismini tek seferde ayarlarsınız. Sisteminizde kurulu bulunan yazıtipleri hakkında bilgi almak için xfontsel, gfontsel, yada xlsfonts gibi programlar kullanabilirsiniz.

Şimdi, Fluxbox'ı bu kadar muhteşem yapan şey, dokuları anında icra edebilme yeteneğidir. Doku açıklamaları uygulanmaları gereken anahtarca belirlenmiştir, örn:

Örnek 10-4. Doku biçemi

    toolbar.clock:   Raised Gradient Diagonal Bevel1
    toolbar.clock.color: rgb:8/6/4
    toolbar.clock.colorTo: rgb:4/3/2

Endişelenmeyin, bu yönergelerin nasıl çalıştığını açıklayacağız. Bir doku tanımı beş taneye kadar alan içerir ve şu şekildedir:

Tablo 10-1. Doku tanımları

YönergeTanım
Flat / Raised / Sunken / Tiled

Bileşeni düz, kabartmalı veya döşenmiş görünümlü olarak ver.

Döşeme sadece pixmaplere etki eder ve boyutlandırılmaz.

Gradient / Solid Eğimli veya düz doku olarak çiz.
Horizontal / Vertical / Diagonal / Crossdiagonal / Pipecross / Elliptic / Rectangle / PyramidBu doku tiplerinden birini seç. Bunlar sadece Eğimli (Gradient) seçiliyken çalışır.
InterlacedDokuyu karıştır (bir sonraki her satırı koyulaştırarak). Bu seçenek çoğunlukla eğimli (Gradiented) dokularda kullanılır fakat Blackbox 0.60.3 ten sonra ( ve bu yüzden Fluxbox 'ın tüm versiyonlarında) düz dokularda da çalışır.
Bevel1 / Bevel2Kullanılacak kenar (bevel) tipi. Bevel1 varsayılan kenar tipidir. Gölgelendirme köşelere koyulmuştur. Bevel2 de bir alternatiftir. Gölgelendirme köşelerden bir pixel içeriye koyulmuştur.

Doku açıklaması sayılmazsa da , bileşeni ebeveyninin (parent) bir parçası gibi gösteren ParentRelative seçeneği de kullanılabilir.

Bütün eğimli (Gradient) dokular iki renk değerinden oluşur: color ve colorTo. Interlaced Solid modda kullanıldığında, colorTo değeri birbirine geçme rengi olarak kullanılır.

Bileşenlerin tümü ve hangi tip değer alabilecekleri Ek C da bulunabilir.

Şimdi uzun bir liste gibi görünüyor ama kendi biçeminizi yarattığınız zaman tek bir komutta bir çok anahtarı ayarlayabilirsiniz, örn:

Örnek 10-5. Tipik kısa biçem

    *color:             slategrey
    *colorTo:           darkslategrey
    *unfocus.color:     darkslategrey
    *unfocus.colorTo:   black
    *textColor:         white
    *unfocus.textColor: lightgrey
    *font:              lucidasans-10