配置文件位置: ~/.config/i3/config。这些行直接复制到配置文件末尾,按Mod+Shift+R重启i3即可。检查快捷键可以用 showkey 或者 xev 。
锁屏和休眠快捷键
需要安装 i3lock ,需要处理图片则还需安装 imagemagick ,自动锁屏需要安装 xautolock 。
1 2 3 4 5 6 7 8 9 10 11 |
# 只是锁屏 bindsym $mod+l exec i3lock # 锁屏 + 休眠 bindsym $mod+Shift+s exec "i3lock && systemctl suspend" # 锁屏带模糊的截图 bindsym $mod+Shift+s exec "scrot /tmp/lockscreen.png && mogrift -scale 50% -gaussian-blur 0x4 -gamma 0.8 -scale 200% /tmp/lockscreen.png && i3lock -i /tmp/lockscreen.png" # 5 分钟不活动自动锁屏 # 这里用了 kdialog 弹出提示;非 KDE 环境可以用 notify-send xautolock -time 5 -locker 'scrot /tmp/lockscreen.png && mogrift -scale 50% -gaussian-blur 0x4 -gamma 0.8 -scale 200% /tmp/lockscreen.png && i3lock -i /tmp/lockscreen.png' -notify 5 -notifier 'kdialog --passivepopup \"Screen is to be locked in 5 secs\" 4' # 如果觉得图片处理延迟太高,可以在锁屏触发以后弹个提示 bindsym $mod+Control+Shift+s exec "scrot /tmp/lockscreen.png && (kdialog --passivepopup '现在您可以安全地关闭计算机了' 5&) && mogrify -scale 50% -gaussian-blur 0x4 -gamma 0.8 -scale 200% /tmp/lockscreen.png && i3lock -i /tmp/lockscreen.png && systemctl suspend" |
截屏并复制到剪贴板
需要安装 scrot 和 xclip 。
1 2 3 4 5 6 7 8 |
# 全屏截图 bindsym --release Print exec "scrot -b -m /tmp/screenshot.png && xclip -selection clipoard -t 'image/png' /tmp/screenshot.png" # 截取当前窗口 bindsym --release $mod+Print exec "scrot -u -b -m /tmp/screenshot.png && xclip -selection clipoard -t 'image/png' /tmp/screenshot.png" # 鼠标选择区域 bindsym --release $mod+Shift+Print exec "scrot -s -b -m /tmp/screenshot.png && xclip -selection clipoard -t 'image/png' /tmp/screenshot.png" # QQ 风格的截屏快捷键 bindsym --release Control+Mod1+A exec "scrot -s -b -m /tmp/screenshot.png && xclip -selection clipoard -t 'image/png' /tmp/screenshot.png" |
特殊窗口状态处理
1 2 3 4 5 6 7 8 |
for_window [window_role="pop-up"] floating enable for_window [window_role="task_dialog"] floating enable for_window [class="TeamViewer"] floating enable for_window [title="Preference$"] floating enable for_window [title="Pages Unresponsive"] floating enable for_window [class="Calise"] floating enable for_window [class="whatpulse"] floating enable no_focus [class="fcitx"] |
开机启动时设置壁纸和正确的鼠标指针
下面是纯色背景,需要壁纸的话 xsetroot 也支持传位图进去。
1 2 |
exec --no-startup-id "xsetroot -cursor_name left_ptr" exec --no-startup-id "xsetroot -solid '#333333'" |
应用显示器颜色配置文件
需要安装 Argyll CMS ,因为这个操作需要root权限,可以先事先 sudo chmod +s `which dispwin`。
1 |
exec "dispwin -Sl -v -d1 -c -I path/to/your/icc_profile.icm" |
音量控制
提供了两种方法,分别依赖 alsamixer 和 pulseaudio 。数字1是播放设备ID,可以运行 alsamixer 命令按F6查看,或者运行 pactl list sinks 。注意PulseAudio可能把音量调到超过100%造成物理损害。
1 2 3 4 5 6 7 8 9 |
# alsamixer bindsym XF86AudioRaiseVolume exec --no-startup-id "amixer -c 1 -q sset Master 5%+" bindsym XF86AudioLowerVolume exec --no-startup-id "amixer -c 1 -q sset Master 5%-" bindsym XF86AudioMute exec --no-startup-id "amixer -c 1 -q sset Master toggle" # pulseaudio bindsym XF86AudioRaiseVolume exec --no-startup-id "pactl set-sink-volume 1 +5%" bindsym XF86AudioLowerVolume exec --no-startup-id "pactl set-sink-volume 1 -5%" bindsym XF86AudioMute exec --no-startup-id "pactl set-sink-mute 1 toggle" |
亮度控制
不一定有用,视设备而定。
1 2 |
bindsym XF86MonBrightnessUp exec "xbacklight -inc 20" bindsym XF86MonBrightnessDown exec "xbacklight -dec 20" |
播放器控制
需要安装 playerctl 。
1 2 3 4 |
bindsym XF86AudioPlay exec "playerctl play" bindsym XF86AudioPause exec "playerctl pause" bindsym XF86AudioNext exec "playerctl next" bindsym XF86AudioPrev exec "playerctl previous" |