I3 (简体中文)

From ArchWiki
Revision as of 15:12, 6 June 2013 by Acgtyrant (Talk | contribs) (Fix typo)

Jump to: navigation, search


i3是一套动态平铺式窗口管理器,灵感来于主要面向开发者或高级用户的wmii

一棵包含容器的树形数据结构组织在一起就变成了客户端(桌面)。树枝由水平或垂直分割而产生,且容器可以被布局成分页式(Tabbed),或叠放式(Stacked)。当窗口的平铺式效果不太好时,可以改为浮动式窗口,不过会被放到独立于平铺式窗口之外的分层上。

安装

请通过Official Repositories (简体中文)安装i3 多程序包 from the official repositories,其中包含了i3locki3statusi3-wm程序包。i3-wm是一套独立的桌面管理器,i3status则是用于通过stdout向i3bar写入一条状态行,i3lock专门加强锁屏功能。

Arch User Repository中还有若干额外的程序包。i3-gitAUR是开发者专用的版本,i3-gnomeAUR则可添加一项GNOME会话。

设置

请编辑~/.xinitrc,首先添加:

exec i3

如果您打算让i3记录它所有的输出,可以添加以下,在排错时会很有用:

exec i3 -V >> ~/.i3/i3log 2>&1

如果您在使用Nvidia闭源驱动 <302.17,您得在~/.xinitrc中添加--force-xinerama标志。在i3wm.org上可找到一条相关的详细解释。

exec i3 --force-xinerama

状态栏

在i3的版本v4.0中,原本内置的状态栏i3-wsbar已废止,改换为i3bar。

新方案:i3bar

不像需要额外安装dzen2的i3-wsbar,i3bar除了i3-wm之外就没有其他依赖。它还可以接收由conky或i3status输出的信息。示例(版本为4.1):

~/.i3/config
bar {
    output            LVDS1
    status_command    i3status
    position          top
    mode              hide
    workspace_buttons yes
    tray_output       none
    
    font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1

    colors {
        background #000000
        statusline #ffffff

        focused_workspace  #ffffff #285577
        active_workspace   #ffffff #333333
        inactive_workspace #888888 #222222
        urgent_workspace   #ffffff #900000
    }
}

更多细节,请在官方用户指南查询Configuring i3bar条目。

i3bar与dzen2的比较

这两者只能在对来自conky或i3status的输出的处理效果上加以比较。

程序 有无可设置颜色的代码 能否设置格式 是否支持特殊字体 是否支持Dock 能否支持托盘
i3bar 否,默认对齐在右边 否(只支持UTF8)
dzen2 否,默认对齐在左边 是(SVN版本)

尽管i3bar的开发非常活跃,且已宣布支持对格式和字体的定制,但到8月7号为止,dzen2-svn仍远胜于前者。

可代替方案

  • i3pystatus - i3status可代替扩展,有更多的模块以及更灵活的设置。且为多线程,可快速锁屏。
  • py3status – 用Python编写成的i3status扩展

在窗口之间快速跳转

  • quickswitch-for-i3 – 一把可在i3的窗口之间快速跳转,定位的Python实现。
  • i3-wm-scripts – 用正则表达式在窗口之间进行搜索并跳转
  • winmenupy 启动dmenu时就会依次列出工作空间上的一系列客户端,选定其中一个并跳转即可

使用i3lock

您需要在在以下文件中添加一段代码,并通过# systemctl enable suspend@<user>.service来激活它。

/etc/systemd/system/suspend@.service
[Unit]
Description=Starts i3lock at suspend time
Before=sleep.target

[Service]
User=%I
Type=forking
Environment=DISPLAY=:0
ExecStartPre= 
ExecStart=/usr/bin/i3lock

[Install]
WantedBy=sleep.target

使用

请阅读official documentation以查询更多相关的信息:i3 User’s Guide

i3目前把dmenu作为一条程序启动器,默认热键为Template:Keypress+Template:Keypress

剪贴板疑难

一般来说,当您关闭了一张窗口时,剪贴板上的缓冲区也会随之消失。您需要专门的剪贴板管理器以避免这麻烦,例如clipit

参见

Arch Linux Forums