發現你可能從未嘗試過的終極 Linux 桌面自訂工具

發現你可能從未嘗試過的終極 Linux 桌面自訂工具

客製化 Linux 桌面為使用者提供了提升運算體驗的機會,而人們經常想到的流行工具就是 Conky,它以其係統監控功能而聞名。然而,另一款工具 EWW(ElKowar’s Wacky Widgets 的縮寫)也因其多功能性而備受關注。與 Conky 不同,EWW 擅長創建各種動態小部件,包括時鐘、系統監視器和天氣顯示,所有這些都透過圖形使用者介面 (GUI) 輕鬆實現。

了解 EWW

EWW是一個專為 Linux 桌面設計的強大小部件系統,可讓使用者製作和展示自訂小工具。這種靈活性使其能夠獨立於現有桌面環境顯示各種組件,例如天氣預報、音樂控制和其他個人化資訊。

EWW 使用 Rust 開發,並採用了其獨特的配置語言 Yuck,這種語言讓人聯想到 Lisp 的 S 表達式。這意味著,設計小工具佈局需要使用結構化的文字格式,對於習慣編輯 HTML 或 XML 檔案的人來說,這種格式可能很熟悉。

在 EWW 中,您可以將小部件定義為模板或元件,並將它們排列在充當容器的視窗中。在樣式方面,EWW 有效地運用了 CSS/SCSS,這種樣式語言也用於增強網頁的外觀。這種整合讓使用者能夠有效控製字體、顏色和間距等視覺屬性,從而充分利用 CSS 的多功能性。

Eww 儀表板運作中
圖片來源:Elkowar 的 GitHub

開始使用 EWW

雖然我最初接觸 EWW 時感到有些畏懼,但經過一番探索後,我發現它其實相當容易上手。安裝選項多種多樣;你可以透過發行版的倉庫取得 EWW,也可以從原始碼編譯。安裝完成後,設定 EWW 需要一些基本步驟。

第一步是配置一個指定目錄,其中包含至少兩個關鍵檔案:一個用於定義視窗小工具(通常命名為 eww.yuck),另一個用於樣式設定(命名為 eww.scss 或.css)。 Yuck 設定檔用於定義窗口小工具和窗口,而 SCSS/CSS 檔案則用於管理樣式設定。

噁心啊

一旦您看到具體的範例,理解 EWW 的配置語法就會變得直觀。例如,建立一個顯示使用率百分比的 CPU 監視器小工具或一個顯示目前時間的時脈非常簡單。 EWW 提供了各種 GUI 元素,例如框、標籤、圖像和按鈕,它們可以作為您自訂小工具的基礎建構塊。

呃,CSS

考慮定義一個名為「側邊欄」的窗口,垂直組織關鍵資訊。對應的 Yuck 語法可能類似於以下內容:

(defwindow sidebar : monitor 0 : geometry (geometry: x "0%":y "0%":width "200px":height "100%":anchor "top left") (box: orientation "vertical" (widget1...) (widget2...)...))

此範例指定了一個名為「sidebar」的窗口,該窗口位於顯示器 0 上,錨定在螢幕左上方,並指定了寬度和高度。在此視窗內,一個垂直框包含各種小部件,這些小部件的定義將位於配置的其他位置。

比較 EWW 和 Conky

Conky 是一款輕量級的系統監視器,自 21 世紀初問世以來一直是我們經驗豐富的夥伴。它使用 C/C++ 編寫,並具備 Lua 功能,主要專注於顯示即時系統狀態,例如 CPU、RAM、磁碟和網路使用情況。它主要充當被動角色,旨在顯示訊息。

EWW 的獨特之處在於它是一個功能全面的小部件工具包,其功能遠不止於單純的系統監控。它使用戶能夠開發互動式元素,例如媒體播放器、滑桿和應用程式啟動器,從而提供更廣泛的創意可能性。 Conky 主要專注於系統指標,而 EWW 則有助於建立多功能 UI 元件,並提供了根據需要顯示和隱藏元素的功能。

Eww 中心小工具

這兩款工具都使用基於文字的配置;然而,與 EWW 的結構化 Yuck 語言相比,Conky 對.conkyrc 或 Lua 檔案結構的依賴顯得有些過時。後者提供了更容易主題設定和組織的功能,儘管初始學習曲線比 Conky 更高,因為 Conky 受益於大量預先存在的主題。

就功能而言,Conky 擅長顯示各種統計數據,但缺乏互動性。而 EWW 支援按鈕、滑桿和文字輸入,允許使用能夠執行操作(例如音量調節或應用程式啟動)的互動式小工具。

我與 EWW 的旅程

我最初嘗試配置 EWW 時,發現它非常具有挑戰性,需要大量的實驗和研究。如果新手之前有使用過類似工具的經驗,學習起來可能會更輕鬆,但我的經驗是我在這個領域的第一次重大嘗試。

呃……小部件

儘管如此,努力終有回報。安裝完成後,我從一個簡單的「hello world」小工具開始,奠定了基礎。隨著時間的推移,我開始嘗試更複雜的項目,例如監控記憶體使用情況、顯示電池電量、添加時鐘以及追蹤媒體播放。隨著我對 EWW 的使用越來越熟練,每個新小工具都運作得非常順暢。

哇喔,升級版小工具

值得一提的是,EWW 的文檔非常詳盡,社群也提供了充足的支援。起初,Yuck 的語法讓我望而生畏,但透過範例配置,我逐漸清晰了思路,最終在一天之內就成功實現了我的第一個功能齊全的小部件。

自訂 Linux 桌面就像個人化 Windows 環境一樣簡單易行,而且回報豐厚。如果您正在尋找靈感來開啟您的客製化之旅,不妨考慮在線上或在專門的社群中探索客製化的 Linux 桌面。

來源和圖片

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *