Fluxbox - Arch Linux 中文维基

跳至內容

# Fluxbox

出自 Arch Linux 中文维基
翻譯狀態：

- 本文（或部分內容）譯自 Fluxbox，最近一次同步於 2017-07-24，若英文版本有所更改，則您可以幫助同步與翻譯更改的內容。
- 您可以在 ArchWiki 的對應頁面找到本文翻譯的原始修訂歷史。
- 本文可能與英文原文存在出入。

Fluxbox 是一個 X11 下的窗口管理器。它基於 Blackbox（現在停止開發） 0.61.1 的代碼構建，現在依然在開發中，並且功能顯著增強。Fluxbox 占用資源少，速度快，並且提供切換和分組等有趣的窗口管理工具。配置文件簡單易懂，便於編輯，有上百種的美化桌面的「主題」。Arch Linux 和 Fluxbox 可以讓一台 Pentium 800 和 256M 內存的電腦煥發活力。

## 安裝

安裝 fluxbox包。

## 啟動 Fluxbox

圖形界面登錄

在顯示管理器的會話菜單中選擇 fluxbox。

手動

編輯 `~/.xinitrc` 並添加如下幾行:

    exec startfluxbox

查看 xinitrc 來獲取詳細信息，例如保存登錄會話。

## 配置

系統範圍的 Fluxbox 配置文件在 `/usr/share/fluxbox` 中，用戶個人配置文件在 `~/.fluxbox` 中，配置文件如下：

- init - 主要的 Fluxbox 資源配置文件。參閱編輯init文件。
- menu - Fluxbox 菜單配置文件。參閱下文和編輯menu文件。
- keys - Fluxbox 鍵盤快捷鍵（熱鍵）配置文件。參閱下文和這裡。
- startup - 編輯開機啟動程序，參閱下文中關於 .xinitrc 的部分和這裡。
- overlay - 重載主題元素的配置文件。參閱這裡。
- apps - 記憶具體應用程式窗口配置的文件。參閱這裡。
- windowmenu - 配置窗口菜單自身的文件。看這裡。

文件夾中有很多不太重要的配置文件。需要注意的有 init，menu，keys 和 startup。

### 菜單管理

第一次安裝 Fluxbox 時系統會在 `~/.fluxbox/menu` 中創建基本的程序菜單，在桌面上右擊滑鼠可以訪問該菜單。和其他輕量窗口管理器一樣，Fluxbox 在安裝新程序的時候並不自動升級其程序菜單。因此推薦先在系統上安裝需要的應用程式，然後再生成或編輯程序菜單。有四種基本方法來添加/編輯項目和增強菜單：

#### 使用 fluxbox-generate_menu

Fluxbox 提供一個內建的命令：

    $ fluxbox-generate_menu

該命令會根據系統中已安裝的程序來自動生成 `~/.fluxbox/menu` 文件。但是生成的菜單綜合性不如使用 MenuMaker 生成的菜單。

#### 使用 MenuMaker

MenuMaker 是一個為各種各樣的窗口管理器創建基於 XML 菜單的有力工具，支持 Fluxbox。MenuMaker 搜索計算機中所有的可執行程序，基於搜索結果創建程序菜單。如果需要的話，可以配置其排除 Legacy X，GNOME, KDE, 和 Xfce 的應用程式。

安裝 menumaker包，運行以下命令生成一個完整菜單並覆蓋默認菜單。

    $ mmaker -f FluxBox

可以在運行命令時加入以下開關來避免將基於命令行的程序——例如 alsamixer——加入菜單：`--no-legacy` 和 `--no-debian`。例如：

    $ mmaker -f --no-legacy --no-debian FluxBox

要查看更多 MenuMaker 選項：

     mmaker --help

#### 使用 Xdg-menu

可以使用 Xdg-menu 來生成菜單，參閱 Xdg-menu#FluxBox 章節。

#### 手動創建/編輯菜單

使用編輯器編輯 `~/.fluxbox/menu` 文件，一個菜單項目的基本語法類似：

    [exec] (name) {command} <path to icon>

"name" 是想要在菜單項目上顯示的文字，"command" 是程序所在的位置。"<path to icon>"是可選的。例如：

    [exec] (Firefox Browser) {/usr/bin/firefox} <path to firefox icon>

創建子菜單的語法如下：

    [submenu] (Name)
    ...
    ...
    [end]

編輯完成後，保存退出，不需要重啟 Fluxbox。更多的信息參閱編輯 Fluxbox 菜單。

### Init 文件

`~/.fluxbox/init` 文件是 Fluxbox 的主要配置資源文件。可以用來改變 Fluxbox，窗口，工具欄，焦點等基本功能。一些選項也可以從Fluxbox配置菜單中找到。詳細內容參閱編輯 init 文件。

### 熱鍵

Fluxbox 提供基本的熱鍵功能。Fluxbox 熱鍵文件位於 `~/.fluxbox/keys`。 Control 鍵代表 "Control"。 `Mod1` 對應 Alt 鍵，`Mod4` 對應 Super 鍵（Super 鍵不是一個標準按鍵，經常被映射到 "Win" 鍵）。當 Fluxbox 安裝完成後第一次運行時，Fluxbox 提供一組幾乎完成的非常有用的熱鍵。細讀精研 `~/.fluxbox/keys` 文件可以增強 Fluxbox 體驗。

例子：快捷的方式來控制揚聲器音量：

    Control Mod1 Up :Exec amixer set Master,0 5%+
    Control Mod1 Down :Exec amixer set Master,0 5%-

#### 聲音

參考 Advanced Linux Sound Architecture#Keyboard volume control 和 PulseAudio#Keyboard volume control。

### 工作區

Fluxbox 默認提供四個工作區。可以通過 Ctrl+F1-F4 快捷鍵訪問，或者在工具欄上的箭頭單擊左鍵。也可以通過使用滑鼠中鍵在桌面上單擊，在工作區菜單上選擇工作區。

### 切換和分組

當桌面上有兩個以上窗口時，在一個窗口的上窗口標籤單擊 ctrl+滑鼠左鍵，然後拖動該窗口到另一個窗口，這兩個窗口會以標籤頁的形式集合在一起，現在執行一個窗口操作將影響到整個窗口「集合」。在標籤頁上單擊 ctrl+滑鼠左鍵，然後拖動到桌面空白位置將還原窗口。

### 壁紙

在 Fluxbox 種設置壁紙一直很複雜，特別是透明度問題。請參閱 Fluxbox wiki 中壁紙設置章節。

檢查計算機中是否有壁紙設置程序。

    $ fbsetbg -i

如果沒有，安裝 feh, esetroot 或者 wmsetbg。然後在 `~/.xinitrc` 文件中 "exec" 行之前添加 "fbsetbg" 行。例如：

    fbsetbg /path/to/my/image.image

如果該命令返回如下信息：

    $ /usr/bin/fbsetbg: line 153: xmessage: command not found

那麼需要安裝 xorg-xmessage 包。

#### 輕鬆切換多個壁紙

在 Fluxbox 菜單中添加子菜單如下：

    [submenu] (Backgrounds)
    [wallpapers] (~/.fluxbox/backgrounds) {feh --bg-scale}
    [wallpapers] (/usr/share/fluxbox/backgrounds) {feh --bg-scale}
    [end]

將壁紙放到 `~/.fluxbox/backgrounds` 中或者其他指定文件夾，壁紙將以同樣的方式在主題中顯示。

在沒有 'xinerama' 的系統上顯示雙屏幕壁紙和上述一樣，例如：

    [submenu] (Backgrounds)
    [wallpapers] (/path/to/your/backgrounds) {feh --bg-scale --no-xinerama }
    [end]

#### 使用 feh

安裝 feh包。

以下步驟確保 Fluxbox 下次啟動時會加載 feh 背景。

1. 確保 `.fehbg` 可執行:

    $ chmod 770 ~/.fehbg

2. 在 `~/.fluxbox/init` 文件中添加/修改以下行:

    session.screen0.rootCommand:	~/.fehbg

3. 在 `~/.fluxbox/startup` 文件中添加/修改以下行:

    ~/.fehbg

#### 使用 Nitrogen

也可以使用 Nitrogen。使用以下命令來運行圖形壁紙選擇軟體：

    $ nitrogen

添加包含圖片的文件夾，選擇圖片然後應用。當然可以更改圖片選項，例如壁紙居中或者放大。

添加如下行：

    nitrogen --restore &

到 `~/.fluxbox/startup` 文件中確保壁紙在登錄時使用。

如果重啟 Fluxbox 後，當前選擇主題的壁紙覆蓋了 Nitrogen 設置的壁紙。編輯使用的主題的 `theme.cfg` 文件，注釋或者刪除如下幾行來解決這個問題:

    background:
    background.color:
    background.colorTo:

### 主題

要安裝 Fluxbox 主題，將主題文件解壓縮到主題文件夾，默認的主題文件夾是

- 全局 - `/usr/share/fluxbox/styles`
- 僅用戶 - `~/.fluxbox/styles`

Arch Linux AUR 中有一套很漂亮的 Fluxbox 主題——"fluxmod-styles"。從這裡獲得。正確安裝後將會在 Fluxbox 菜單中的 Fluxbox -> Styles section 中顯示。

想要創建自己的 Fluxbox 主題，請參閱 fluxbox-style(5)， Fluxbox/Style guide 和主題指南[失效連結 2022-09-17 ⓘ]。

如果使用

    $ mmaker -f FluxBox

創建菜單，那麼安裝完主題後將不會看到主題選擇菜單。 將下面幾行添加到 `~/.fluxbox/menu` 文件中的重啟菜單選項後來修正。

    [submenu] (System Styles) {Choose a style...}
          [stylesdir] (/usr/share/fluxbox/styles)
            [end]
    [submenu] (User Styles) {Choose a style...}
          [stylesdir] (~/.fluxbox/styles)
            [end]

### Slit

Fluxbox，WindowMaker 和一些輕量的窗口管理器都有 "Slit"，可以是所有程序 "dock" 化。一個 "dock" 化的程序可以錨定在任何工作區上，可以被輕鬆移動，並且不受任何窗口操作的影響，它基本上是一個小部件，將時鐘，系統監視器，天氣等 "dock" 化非常有用。參閱 dockapps.net。

### 自啟動程序

Fluxbox 本身提供了自啟動程序的功能。`~/.fluxbox/startup` 文件是一個像啟動 Fluxbox 一樣自啟動應用程式的腳本。`#` 標記是注釋。

一個簡單的例子：

    fbsetbg -l # sets the last background set, very useful and recommended.
    # In the below commands the ampersand symbol (&) is required on all applications that do not terminate immediately.
    # Failure to provide them will cause Fluxbox not to start.
    idesk &
    xterm &
    # exec is for starting Fluxbox itself, do not put an ampersand (&) after this or Fluxbox will exit immediately.
    exec /usr/bin/fluxbox
    # or if you want to keep a log, uncomment the below command and comment out the above command:
    # exec /usr/bin/fluxbox -log ~/.fluxbox/log

### 其他菜單

上面的 "菜單管理" 章節討論了主要菜單。這些菜單在 Fluxbox 行話中稱為"根"菜單。Fluxbox 也為用戶提供了一些其他的菜單。

- 工作區菜單：在桌面上點擊滑鼠中鍵。
- 配置菜單：位於"根"菜單的 "Fluxbox" 部分。
- 窗口菜單：在任何窗口或者最小化窗口的標題欄右擊滑鼠。可以編輯窗口菜單。參閱 fluxbox-menu man page。
- 工具欄菜單：在工具欄空白部分右擊滑鼠。也在配置菜單的子菜單中。
- Slit 菜單：在配置菜單的子菜單中。

### 桌面效果

想要在 Fluxbox 開啟桌面效果——透明或者陰影，需要安裝 X compositor，例如 Xcompmgr 或者 Compton。

### 通知

在 Fluxbox 中開啟桌面通知，需要安裝通知伺服器。參閱 desktop notifications。

### 沒有 xorg.conf 文件後的 Xorg 配置

Xorg 不再需要 xorg.conf 文件了，以前在 xorg.conf 文件中所做的關於鍵盤和省電模式的設定可以通過以下方式調整。

#### 在 Fluxbox 中設定鍵盤布局

將以下行添加到 `~/.fluxbox/startup` 文件中：

    setxkbmap us -variant intl & # 在 us 键盘中添加特殊字符支持 (类似 éóíáú)

可以添加自己的語言代碼來代替 'us'，並且移除 'variant' 選項。參閱 setxkbmap 手冊頁來獲得更多選項。

在 `~/.fluxbox/menu` 文件中添加以下行來獲得菜單中幫助功能:

    [submenu] (Keyboard)
          [exec] (normal) {setxkbmap us}
          [exec] (international) {setxkbmap us -variant intl}
    [end]

## 參閱

- Fluxbox Homepage
- Fluxbox wiki
- Gentoo Wiki about Fluxbox
- Themes for Fluxbox
- Narada's Fluxbox Guide
- The Fluxbox man pages: fluxbox, fluxbox-menu, fluxbox-style, fluxbox-keys, fluxbox-apps, fluxbox-remote, fbsetroot, fbsetbg, fbrun, startfluxbox.
- Arch Linux Fluxbox screenshots

分類：​

- 堆疊式窗口管理器
- 包含失效連結的頁面

Fluxbox
新增話題