Awesome (pencere yöneticisi)

X Pencere Sistemi için pencere yöneticisi
(Awesome sayfasından yönlendirildi)

AwesomeWM, C ve Lua programlama dillerinde geliştirilmiş X Pencere Sistemi için tasarlanmış dinamik bir pencere yöneticisidir . Lua, pencere yöneticisini yapılandırmak ve genişletmek için de kullanılır. Gelişimi bir dwm çatalı olarak başladı.[3] Son derece küçük ve hızlı olmayı, ancak kapsamlı bir şekilde özelleştirilebilir olmayı hedefliyor. Kullanıcının klavyeyi kullanarak pencereleri yönetmesini mümkün kılar.

Awesome
Açık bir dizi uçbirim (terminal) ile awesome
Orijinal yazar(lar)Julien Danjou
İlk yayınlanma18 Eylül 2007 (17 yıl önce) (2007-09-18)[1]
Güncel sürüm4.3[2] Bunu Vikiveri'de düzenleyin / 28 Ocak 2019
Programlama diliC ve Lua
İşletim sistemiUnix benzeri
TürPencere yöneticisi
LisansGPL-2.0 veya üstü
Resmî sitesiawesomewm.org
Kod deposu Bunu Vikiveri'de düzenleyin

Çatal başlangıçta jdwm lakaplıydı, burada "jd" ana programcının baş harflerini ve dwm çatallandığı yazılım projesini ifade ediyordu. awesome'in ilk git deposu Eylül 2007'de kuruldu. jdwm, How I Met Your Mother karakteri Barney Stinson tarafından kullanılan aynı ifadeden sonra awesome (harika) olarak yeniden adlandırıldı.[4] awesome, 20 Eylül 2007'de dwm e-posta listesinde resmen ilan edildi.[3]

Projenin amacı

değiştir

Awesome, harici yapılandırma dosyaları aracılığıyla özelleştirme özelliğine sahip bir dwm çatalı olarak ortaya çıktı (aşağıdaki Yapılandırma ve özelleştirme bölümüne bakın). Oldukça genişletilebilir olmasına rağmen, pencere yöneticisinin varsayılan kurulumu kasıtlı olarak basitleştirilmiştir. Bunu yaparken, yazar, kullanıcıların kendi ihtiyaçlarına göre genişletmeleri ve uyarlamaları için bir çerçeve penceresi yöneticisi[4] dediği şeyi yarattı.

Özellikler

değiştir
  • Lua yapılandırma dosyası aracılığıyla yapılandırılır.
  • dwm ve wmii gibi, awesome da çalışma alanları yerine etiketler kullanır. Pencereler birkaç etikete atanabilir ve aynı anda birden çok etiket seçilebilir.
  • Bir dinamik pencere yöneticisi olarak, awesome her etiket için kayan, çeşitli dinamik döşeme düzenleri, büyütülmüş ve büyüteç dahil farklı düzenler arasında geçiş yapabilir.
  • Çeşitli widget'lar (metin ve simge kutuları, grafikler, ilerleme çubukları vb.) dahil olmak üzere çoklu ve ekran başına durum çubukları.
  • Her şey klavye ile yapılabilir, bu nedenle fare kullanımı isteğe bağlıdır.
  • Çoklu baş desteği (XRandR, Xinerama veya Zaphod modu).
  • EWMH, XDG Base Directory, XEmbed, Desktop Notification ve System Tray dahil olmak üzere freedesktop.org standartlarını uygular.
  • xcompmgr gibi harici bir oluşturucu aracılığıyla birleştirme ve gerçek şeffaflık desteği.
  • D-Bus (awesome-client) üzerinden uzaktan kumanda.
  • Pango biçimlendirme dilini destekler.

Yapılandırma ve özelleştirme

değiştir

En başından beri awesome, harici bir yapılandırma dosyasına sahip bir dwm çatalı olarak tasarlandı.[4] Bu nedenle, yapılandırma dosyası formatı ve yapılandırma sürecinin kendisi, yazarın özel ilgisine tabi tutulmuştur.

Erken yapılandırma dosya biçimleri

değiştir

Üçüncü büyük sürümden önce, awesome'nin özelliklerinden biri Danjou'nun 'karmaşık olmayan bir yapılandırma'[6] olarak adlandırdığı şeydi. awesome (1.x)'in ilk sürümleri, libconfig kullanan düz dosya yapılandırmasıyla dwm'nin basit modifikasyonuydu. 2.x dalında, Danjou, yapılandırma kitaplığını libconfig'den libconfuse'a değiştirdi, farklı bir düz dosya yapılandırma kitaplığı, biraz libconfig'e benziyor. 2.x sürümlerinin geliştirilmesi sırasında, başlık çubukları ve simge çizimi gibi awesome pencere yöneticisine birçok özelleştirme özelliği eklendi.[4]

Yeni yapılandırma dosyası

değiştir

20 Mayıs 2008'de Danjou, awesome posta listesine[7] gönderdiği bir e-postada, 3.0 sürümünde yapılandırma dosyası için yeni bir formatın kullanılacağını duyurdu. Yeni biçim ~/.awesomerc.lua dosyasına yerleştirildi ve daha sonra ~/.config/awesome/rc.lua'ya taşındı. Uzantının önerdiği gibi, yapılandırma dosyası Lua programlama dilinde yazılmıştır. Danjou, yeni formatın ve Lua entegrasyonunun awesome kullanıcıların daha önce imkansız olduğunu düşündüğü şekillerde awesome'i özelleştirmesine olanak sağlayacağını savundu: yapılandırma için bir programlama dili kullanmak, yapılandırma seçeneklerini dinamik olarak belirlemeyi mümkün kıldı.[7]

awesome Lua API'si artık awesome'in ana sayfasında barındırılıyor ve awesome Wiki'de harikaları yapılandırma hakkında öğretici tarzı bir makale yayınlanıyor.

Temalar ve widget'lar

değiştir

Pencere yöneticisinin Beautiful kitaplığını kullanarak awesome'i bir tema (veya kaplama) yapmak mümkündür. rc.lua yapılandırma dosyasına uygun olarak, Lua'da temalama da yapılır ve dinamik temaların oluşturulmasına izin verilir.

3.2.1 sürümünden itibaren varsayılan harika yapılandırmanın herhangi bir durum göstergesi olmamasına rağmen (kablosuz ağ durumu, pil göstergeleri vb.), kullanıcılar bu öğeleri widget'ları kullanarak ekleyebilir. Widget'lar ana yapılandırma dosyasında tanımlandığından, widget'lar için veriler rastgele Lua kodu kullanılarak sağlanır.

XCB'ye Geçiş

değiştir

18 Eylül 2008'de yayınlanan 3.0 sürümü, X sunucusuyla iletişim kurmak için XCB kitaplığını kullanır, bu kitaplığı Xlib yerine kullanan ilk pencere yöneticisini awesome yapar. XCB portu üzerindeki çalışmalar, şu anki Awesome geliştiricilerinden biri olan Arnaud Fontaine tarafından Ocak 2008'de başlatıldı.[4]

Arnaud Fontaine, 9 Nisan 2008'de XCB posta listesinde XCB'ye taşındığını duyurdu. Listeye gönderdiği mesajda, XCB kullanmanın başlıca avantajları olarak şunları vurguladı: "modüler mimari; protokollere doğrudan erişim; multithreading; asenkron istekler/cevaplar;". XCB limanı ertesi ay tamamlandı ve Danjou, XCB'ye dayalı yeni bir şube oluşturdu.[4]

Lua entegrasyonu

değiştir

awesome'in 3.0 öncesi sürümünde genişlemeyi ve özelleştirmeyi sınırlayan algılanan sorunlar nedeniyle, yazar Lua tabanlı konfigürasyonu awesome ile entegre etmeye karar verdi. Yeni Lua kodlu uygulamanın rc1'i Ağustos 2008'de duyuruldu. Eylül 2008'de, harika Lua API ile ilk sürümü, XCB uygulamasına paralel olarak tamamlandı.[6]

Dağıtım paketi kullanılabilirliği

değiştir

awesome, Arch Linux,[8] Debian,[9] Fedora Linux, Gentoo,[10] Ubuntu,[11] Source Mage, openSUSE,[12] Mageia, NixOS, FreeBSD, NetBSD ve OpenBSD dahil olmak üzere çok çeşitli Unix benzeri işletim sistemlerinde dağıtılır.,

Adlandırılmış sürümler

değiştir

AwesomeWM 1.0'dan 1.3'e kadar olan sürümler (Eylül-Ekim 2007) adlandırılmadı. İlk 2.0 sürüm adayıyla (Kasım 2007) başlayarak, awesome adlandırılmış sürümleri kullandı. Sürüm adları müzikle ilgilidir. AwesomeWM v4.x, Daft Punk'tan şarkı adını kullanır.

Ayrıca bakınız

değiştir

Kaynakça

değiştir
  1. ^ "1.0 release tag". 9 Nisan 2022 tarihinde kaynağından arşivlendi. Erişim tarihi: 2 Eylül 2022. 
  2. ^ "Release 4.3". 28 Ocak 2019. Erişim tarihi: 28 Ocak 2019. 
  3. ^ a b Danjou, Julien (20 Eylül 2007). "Project announcement from dwm mailing list". Gmane. 6 Nisan 2009 tarihinde kaynağından arşivlendi. Erişim tarihi: 13 Aralık 2008. 
  4. ^ a b c d e f Danjou, Julien (15 Nisan 2009). "Taking the other direction". 13 Temmuz 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 14 Ağustos 2011. 
  5. ^ "about - awesome window manager". 11 Ekim 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 6 Eylül 2016. 
  6. ^ a b "awesome 3: Lua integration". 10 Şubat 2009 tarihinde kaynağından arşivlendi. 
  7. ^ a b "News on awesome-3 and about latest commits (May 20, 2008)". 22 Ağustos 2009 tarihinde kaynağından arşivlendi. 
  8. ^ "awesome package in the Arch Linux community repository". 11 Eylül 2010 tarihinde kaynağından arşivlendi. 
  9. ^ Debian - Details of package awesome in squeeze 2 Şubat 2018 tarihinde Wayback Machine sitesinde arşivlendi..
  10. ^ Gentoo Packages /package/x11-wm/awesome 15 Ekim 2014 tarihinde Wayback Machine sitesinde arşivlendi..
  11. ^ "Ubuntu – Error". 24 Mart 2012 tarihinde kaynağından arşivlendi. 
  12. ^ "awesome - software.opensuse.org". 8 Mayıs 2014 tarihinde kaynağından arşivlendi. 

Dış bağlantılar

değiştir