## 第?38?章?awesome
**目錄**
[](ch38.html#id3159187)
[Tiling window manager](ch38s02.html)
[優點](ch38s03.html)
[操作](ch38s04.html)
[配置](ch38s05.html)
## Tiling window manager
`Tiling window manager`,直譯為“瓦片窗口管理器”[[84](ch38s02.html#ftn.id3158868)],意譯為“平鋪式窗口管理器”。
假設你需要同時監視多個程序的狀態并進行操作,你就需要不停的按Alt+Tab切換,但是這會加速 Alt 尤其是 Tab 的磨損[[85](ch38s02.html#ftn.id3158880)]。
無奈之下,你可能會這樣作:

用鼠標拖放成這樣,絕對不是一件愉快的事,而且各個窗口的大小可能不太合適,窗口之間可能會有點縫隙,雖然不漏風,但是也影響注意力……
而在平鋪式窗口管理器中,無論打開多少個窗口,都會把整個屏幕占滿,不留一點兒縫隙(如果只有一個窗口,直接全屏)

窗口沒有標題欄(標題在狀態欄上),邊框盡可能的窄(可設置為0),最大程度的節約了桌面空間,如果你的顯示器比較大,或者有多個顯示器,平鋪式窗口管理器將是不二之選

常見的平鋪式窗口管理器有: awesome、xmonad、dwm、wmii、ion、ratpoison、larswm 等, 推薦使用 `awesome`
* * *
> [[84](ch38s02.html#id3158868)] 像屋頂的瓦片一樣平鋪開來
> [[85](ch38s02.html#id3158880)] 手的磨損忽略了,因為它是可再生的
## 優點
awesome 有以下優點:
穩定、快速、簡單
專注于效率
不需要為碼放窗口分心,不需要在多個窗口間來回切換,不需要經常把手挪開使用鼠標
完全的鍵盤控制
在普通的窗口管理器中,完全鍵盤控制是不現實的,因為調整窗口位置無論如何要用鼠標。
強大、靈活的配置文件
使用 Lua 腳本作為配置文件使得它的靈活性非常高
支持多種窗口布局
多顯示器支持
## 操作
awesome 中,所有的操作都可以用快捷鍵完成:
| | |
| --- | --- |
| 打開終端 | Mod4 + Return |
| 運行命令 | Mod4 + F1 |
| 關閉當前窗口 | Mod4 + Shift + c |
| 重啟awesome | Mod4 + Control + r |
| 退出awesome | Mod4 + Shift + q |
| 重繪當前窗口 | Mod4 + Shift + r |
| 窗口間切換 | Mod4 + j | Mod4 + k |
| 標簽間切換 | Mod4 + Left | Mod4 + Right |
| 切換到標簽 | Mod4 + [1-9] |
| 屏幕間切換 | Mod4 + Control + j | Mod4 + Control + k |
| 切換布局 | Mod4 + space | Mod4 + Shift + space |
| 切換為浮動窗口 | Mod4 + Control + space |
| 調整窗口位置 | Mod4 + Shift + j | Mod4 + Shift + k |
| 調整列大小 | Mod4 + h | Mod4 + l |
| 調整主區窗口數量 | Mod4 + Shift + h | Mod4 + Shift + l |
| 調整輔區窗口數量 | Mod4 + Control + h | Mod4 + Control + l |
## 配置
awesome 全局配置文件為 `/etc/xdg/awesome/rc.lua`,用戶配置文件為 `~/.config/awesome/rc.lua`,以下是一些配置選項:
**例?38.1.?awesome 配置**
```
-- 主題文件。awesome的主題非常簡單,只需要指明幾個顏色就可以了
theme_path = "/usr/local/share/awesome/themes/default"
-- 設置默認終端
terminal = "urxvt"
-- Mod4 對應“Win”鍵,可以改成其它的
modkey = "Mod4"
-- 不保留窗口間的縫隙
c.honorsizehints = false
-- 默認使用浮動窗口的程序
-- 在awesome下用Mod4 + Ctr + i 查看當前程序的instance和class名稱
floatapps =
{
["MPlayer"] = true,
["gimp"] = true,
["smplayer"] = true,
["mocp"] = true,
["Codeblocks"] = true,
-- 各種對話框
["Dialog"] = true,
-- firefox 的下載窗口
["Download"] = true,
["empathy"] = true
}
-- 程序啟動時自動發送到某個屏幕的某個tag里
apptags =
{
["smplayer"] = { screen = 1, tag = 7 },
["amarokapp"] = { screen = 1, tag = 8 },
["VirtualBox"] = { screen = 1, tag = 9 },
["Firefox"] = { screen = 1, tag = 1},
["Thunderbird-bin"] = { screen = 1, tag = 7 },
["Linux-fetion"] = { screen = 1, tag = 6 },
}
-- 顯示時間
-- 默認顯示的是從1970年1月1日到現在經過了多少秒
-- 查找awful.hooks.timer.register這一行,改為如下配置
awful.hooks.timer.register(1, function ()
mytextbox.text = " " .. os.date() .. " "
end)
```
- 開源世界旅行手冊
- 授權
- 致謝
- 序言
- 更新紀錄
- 導讀
- 如何寫作科技文檔
- 部分?I.?氣候
- 第?1?章?GUI? CLI?
- 第?2?章?UNIX 縮寫風格
- 第?3?章?版本號的迷霧
- 第?4?章???Vim 還是 Emacs
- 第?5?章???DocBook 還是 TeX
- 第?6?章?完全用 Gnu/Linux 工作
- 第?7?章?病毒
- 第?8?章?磁盤 分區
- 第?9?章?文件系統
- 第?10?章???發行版介紹
- 第?11?章???編程語言
- 第?12?章?無根的根:無名師的 Unix 心傳
- 部分?II.?地理
- 第?13?章?基礎知識
- 第?14?章?命令系統
- 第?15?章?基本系統
- 第?16?章?軟件管理
- 第?17?章?核心工具集
- 第?18?章?編譯工具鏈
- 第?19?章?圖形界面
- 第?20?章?國際化
- 第?21?章???內核
- 第?22?章?Grub
- 第?23?章?服務器
- 第?24?章?Vim 編輯器
- 第?25?章?Emacs 入門
- 第?26?章?正則表達式
- 第?27?章?docbook 指南
- 第?28?章?Git 版本控制系統
- 第?29?章?ConTeXt 入門指南
- 部分?III.?景觀
- 第?30?章?終極 Shell -- ZSH
- 第?31?章?完美工作站 Archlinux
- 第?32?章?組織你的意念:Emacs org mode
- 第?33?章???Zsh+screen
- 第?34?章???gentoo stage3
- 第?35?章???硬件問題
- 第?36?章???網絡設置
- 第?37?章???自制 LiveCD
- 第?38?章?awesome
- 第?39?章?openbox 工作環境
- 第?40?章???Emacs muse
- 第?41?章???寫作工具鏈
- 第?42?章?使用 lftp
- 第?43?章???Firefox 使用技巧
- 第?44?章???FVWM
- 部分?IV.?地質
- 第?45?章?Unix
- 第?46?章???Gnu
- 第?47?章?軟件業自由之神——Richard Stallman
- 第?48?章?Linux
- 第?49?章?GNOME與KDE的戰爭
- 第?50?章???Vim Emacs
- 第?51?章???年代紀
- 第?52?章?我的選擇
- 第?53?章???補遺