Awesome (pencere yöneticisi)
![]() | |
![]() Açık bir dizi uçbirim (terminal) ile awesome | |
Orijinal yazar(lar) | Julien Danjou |
---|---|
İlk yayınlanma | 18 Eylül 2007 (16 yıl önce) (2007-09-18)[1] |
Güncel sürüm | 4.3[2] ![]() |
Programlama dili | C ve Lua |
İşletim sistemi | Unix benzeri |
Tür | Pencere yöneticisi |
Lisans | GPL-2.0 veya üstü |
Resmî sitesi | awesomewm.org |
Kod deposu |
![]() |
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.
Ç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ı
“ | Bir pencere yöneticisi günlük işlerinizde muhtemelen Web tarayıcınız, e-posta okuyucusu ve metin editörünüz ile beraber en sık kullanılan yazılımlardandır. Yetkin kullanıcılar ve programcılar, günlük işler için büyük bir dizi araç kapsamına sahiptir. Bazıları yüksek derecede genişletilebilir ve yapılandırılabilir. awesome, bu araçları ihtiyaç duyduğumuz ile beraber tamamlamaya çalışıyor: genişletilebilir, yüksek derecede yapılandırılabilir bir pencere yöneticisi. Bu hedefe erişmek için, awesome framework pencere yöneticisi olarak tasarlandı. Aşırı hızlı, küçük, dinamik ve Lua programlama dilini kullanarak yüksek derecede genişletilebilir gibi özellikleri mevcuttur.[5] | ” |
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
- 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
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
Üçü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ı
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
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ş
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
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
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
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
- X pencere yöneticileri karşılaştırması
- dwm
- wmii
- i3 (pencere yöneticisi)
- Ion (pencere yöneticisi)
- İstiflenebilir pencere yöneticisi
- StumpWM
- Döşemeli Pencere Yöneticisi
- xmonad
Kaynakça
- ^ "1.0 release tag". 9 Nisan 2022 tarihinde kaynağından arşivlendi. Erişim tarihi: 2 Eylül 2022.
- ^ "Release 4.3". 28 Ocak 2019. Erişim tarihi: 28 Ocak 2019. Arşivlenmesi gereken bağlantıya sahip kaynak şablonu içeren maddeler (link)
- ^ 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.
- ^ 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.
- ^ "about - awesome window manager". 11 Ekim 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 6 Eylül 2016.
- ^ a b "awesome 3: Lua integration". 10 Şubat 2009 tarihinde kaynağından arşivlendi.
- ^ a b "News on awesome-3 and about latest commits (May 20, 2008)". 22 Ağustos 2009 tarihinde kaynağından arşivlendi.
- ^ "awesome package in the Arch Linux community repository". 11 Eylül 2010 tarihinde kaynağından arşivlendi.
- ^ Debian - Details of package awesome in squeeze 2 Şubat 2018 tarihinde Wayback Machine sitesinde arşivlendi..
- ^ Gentoo Packages /package/x11-wm/awesome 15 Ekim 2014 tarihinde Wayback Machine sitesinde arşivlendi..
- ^ "Ubuntu – Error". 24 Mart 2012 tarihinde kaynağından arşivlendi.
- ^ "awesome - software.opensuse.org". 8 Mayıs 2014 tarihinde kaynağından arşivlendi.
Dış bağlantılar
- Resmî site
- Wiki 10 Temmuz 2016 tarihinde Wayback Machine sitesinde arşivlendi.
- My first awesome 21 Haziran 2022 tarihinde Wayback Machine sitesinde arşivlendi. - tutorial
- Screenshots 17 Şubat 2009 tarihinde Wayback Machine sitesinde arşivlendi.
- Falko Benthin (1 Aralık 2008). "Herr der Fenster. Schlanker Windowmanager Awesome" [Lord of the window. Slim Awesome Window Manager]. Linux User (Almanca) (12/2008). ISSN 1615-4444. 18 Aralık 2008 tarihinde kaynağından arşivlendi. Erişim tarihi: 16 Mart 2010.
- Awesome Window Manager: How Can Your Environment Work For You? 31 Mart 2016 tarihinde Wayback Machine sitesinde arşivlendi. - wiki review article (in progress)
- Awesome window manager - brief blog review
- Comparison of extensible window managers 7 Ocak 2019 tarihinde Wayback Machine sitesinde arşivlendi. - Comparison of Sawfish, Awesome, Xmonad, StumpWM, and Qtile.