这里写自定义目录标题
- 桌面环境安装
- Xorg安装
- 安装I3WM
- Xinit设置
- 自体和终端的安装
- i3,启动!
- 必要软件安装
- fcitx
- rofi
- ranger
- 软件列表(待完善)
- I3配置简单介绍
- i3 按键绑定
- for_window
- 自定义软件与i3交互
- URXVT 配置
- 颜色
桌面环境安装
Xorg安装
安装桌面环境,首先需要安装xorg-server以及xorg-xinit。这是目前大多数桌面环境的依赖库
为了方便起见,直接安装xorg软件包组(注意,xorg-xinit并不包含在其中)
1 | $ sudo pacman -S xorg xorg-xinit |
这里我没有安装显示管理器(Display manager)
显示管理器和Xinit两者取其一即可
关于显示管理器详细参考 ArchWiki-显示管理器
安装I3WM
软件包组i3包含了所有的可选包,其中包含的i3-gaps和i3-wm是互斥的。i3-gaps包含了额外的参数(窗口之间间隔的设定),所以我选择i3-gaps。其他方面的区别,我了解的不是很多。
本软件包组的其他可选依赖凭自己的喜好安装。
1 | $ sudo pacman -S i3 |
Xinit设置
先拷贝默认配置文件到用户家目录
1 | $ cp /etc/X11/xinit/xinitrc ~/.xinitrc |
修改 .xinitrc 最后几行
- 将twm,xclock,xterm的执行语句都注释掉(或者直接删掉)
- 加上i3的执行语句
- 例子中的最后一行是 i3的执行语句并将日志输出到文件
1 2 3 4 5 6 7 | #twm & #xclock -geometry 50x50-1+1 & #xterm -geometry 80x50+494+51 & #xterm -geometry 80x20+494-0 & #exec xterm -geometry 80x66+0+0 -name login exec i3 #exec i3 -V >> ~/i3logs/$(date + '%F-%k-%M-%S') 2>&1 |
自体和终端的安装
理论上这个时候桌面已经可以运行,但是我们还需要安装字体和虚拟终端
1 2 | $ sudo pacman -S wqy-microhei adobe-source-code-pro-fonts $ sudo pacman -S rxvt-unicode |
i3,启动!
1 | $ startx |
必要软件安装
fcitx
记得安装软件包组fcitx-im而不是单个软件包fcitx
1 2 3 4 | #安装输入法框架 $ sudo pacman -S fcitx-im #安装输入法引擎 $ sudo pacman -S fcitx-sunpinyin |
关于具体的输入法引擎参见:ArchWiki-fcitx
之后会用i3的自启动配置,不用再额外配置
rofi
gruvbox配色: git仓库
ranger
生成默认配置
1 | $ ranger --copy-config=all |
设置环境变量
1 | RANGER_LOAD_DEFAULT_RC=FALSE |
来防止ranger同时读取你的配置和默认配置
安装w3m来预览图片
1 | $ sudo pacman -S w3m |
同时修改配置文件 .config/ranger/rc.conf
将preview_images的值改为true
1 | set preview_images true |
软件列表(待完善)
软件名 | 功能 |
---|---|
feh | 查看静态图片/壁纸 |
sxiv | 查看gif图片 |
urxvt(rxvt-unicode) | 终端 |
ranger | 文件管理器 |
rofi | 程序启动器 |
polybar | bar |
picom(原compton) | 窗口视觉效果 |
I3配置简单介绍
i3 按键绑定
1 | bindsym [--release] [<Group>+][<Modifiers>+]<keysym> command |
其中
按键对应的名称查询:
1 | xmodmap -pke |
Modifiers按键查询:
1 | xmodmap -pm |
这里列出我电脑的modifiers,供参考
KeyName | Function(KeyCode) |
---|---|
Shift | Shift_L(0x32) Shift_R(0x3e) |
lock | Caps_Lock(0x42) |
control | Control_L(0x25) Control_R(0x69) |
mod1 | Alt_L(0x40) Alt_R(0x6c) Meta_L(0xcd) |
mod2 | Num_Lock(0x4d) |
mod3 | (无) |
mod4 | Super_L(0x85) Super_R(0x86) |
mod4(续) | Super_L(0xce) Hyper_L(0xcf) |
mod5 | ISO_Level3_Shift(0x5c) Mode_switch(0xcb) |
因未对其键值做深入了解,不做具体解释。
for_window
获取应用class
1 | xprop |
然后点击其他的应用,xporp就会输出应用相关信息,其中WM_CLASS就是应用的class
1 | WM_CLASS(STRING) = "chromium", "Chromium" |
1 | for_window [class="netease-cloud-music"] floating enable |
自定义软件与i3交互
i3wm 使用Unix Socket提供IPC接口.该功能默认开启。
启用后,会在
其中
该目录可以通过环境变量
也可以在配置文件中设置:
1 | ipc-socket ~/.i3/i3-ipc.sock |
i3也用
另外,
1 | $ i3-msg boder none #设置当前窗口无边框 |
具体的命令可查阅 i3wm user guide:List of commands
URXVT 配置
wiki:rxvt-unicode
颜色
常用的颜色大概有:前景(foreground)、背景(background)、游标颜色(cursorColor),color0-15
前三个颜色都好理解,color0-15是什么呢?
Linux终端有16个 基础颜色,其中八个背景色(color0-7),八个前景色(color8-15)。
默认颜色 | 前景 | 背景 |
---|---|---|
黑色 | Color0 | color8 |
红色 | Color1 | color9 |
绿色 | Color2 | color10 |
黄色 | Color3 | color11 |
蓝色 | Color4 | color12 |
洋红色 | Color5 | color13 |
青色 | Color6 | color14 |
白色 | Color7 | color15 |
这里分享一个测试颜色的脚本,脚本来自这里
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | T='gYw' # The test text echo -e "\n 40m 41m 42m 43m\ 44m 45m 46m 47m"; for FGs in ' m' ' 1m' ' 30m' '1;30m' ' 31m' '1;31m' ' 32m' \ '1;32m' ' 33m' '1;33m' ' 34m' '1;34m' ' 35m' '1;35m' \ ' 36m' '1;36m' ' 37m' '1;37m'; do FG=${FGs// /} echo -en " $FGs \033[$FG $T " for BG in 40m 41m 42m 43m 44m 45m 46m 47m; do echo -en "$EINS \033[$FG\033[$BG $T \033[0m"; done echo; done echo |
至于具体配色,我直接使用的Gruvbox的配色,github上可以直接搜索到
这里直接放出来https://pastebin.ubuntu.com/p/gds3C6rJBH
具体用法是,将其复制到家目录下的 .Xresource 文件下(没有就创建)。然后
1 | $ xrdb .Xresource #或者重新登陆 |
就可看到效果啦