寬銀幕之下應用WMCTRL控制視窗
最近入手了21:9高解析寬銀幕整體不錯但是,有個痛點,就是太寬。
視窗放大之後無寬,大部份狀況不習慣阿,自己調整之後,視窗layout最好是:
- 常用的左邊,比例約70%
- 不常用但需要注意的右邊,比例約30%
Linux Mint 指令 有快捷鍵,ALT+up/down/left/right ,但是比例一般都是50%。
搜尋一下之後,看到 WMCTRL 不錯用,可以參考這兩篇用法(控制窗口應用範例、[Linux] 使用 wmctrl 指令,列出現有的視窗並關閉),或是 WMCTRL MAN PAGE。
share 一下我的腳本:
two-thirds-app.sh:
#!/bin/bash
current_active_window=$(xprop -id $(xprop -root 32x '\t$0' _NET_ACTIVE_WINDOW | cut -f 2) _NET_WM_NAME|sed s/.*=\ //g|sed s/\"//g)
wmctrl -r $current_active_window -e "0,0,0,2200,1440"
one-thirds-app.sh
#!/bin/bash
current_active_window=$(xprop -id $(xprop -root 32x '\t$0' _NET_ACTIVE_WINDOW | cut -f 2) _NET_WM_NAME|sed s/.*=\ //g|sed s/\"//g)
wmctrl -r $current_active_window -e "0,2200,0,1240,1440"
上述可以將 active 視窗,依指令上的數字調整大小。這邊寫死,懶得寫成自動。
再用 mint 介面增加 custom shortcuts
然後,就可以愉快的讓視窗layout符合習慣使用!
最後,又寫了一個自動調整所以常用視窗的layout如下:
#!/bin/bash
### help to get current app, location and size
## wmctrl -Gl |awk '{print $8,$2,$3,$4,$5,$6}'|sed -e "s/ /,/g"
## wmctrl -Gl |awk '{printf "wmctrl -r \"%s\" -e \"%s,%s,%s,%s,%s\"\n",$8,$2,$3,$4,$5,$6;}'
## setting current app, location and size
wmctrl -r "LINE" -e "0,2465,0,984,1300"
wmctrl -r "Skype" -e "0,2394,100,1055,1334"
wmctrl -r "Messenger" -e "0,2297,110,1152,1250"
wmctrl -r "Caprine" -e "0,2297,110,1152,1250"
wmctrl -r "Telegram" -e "0,2212,200,1237,1235"
wmctrl -r "Mattermost" -e "0,2127,250,1322,1181"
wmctrl -r "Slack" -e "0,2021,300,1428,1125"
wmctrl -a "Mattermost"
wmctrl -a "Telegram"
wmctrl -a "Slack"
wmctrl -a "Messenger"
wmctrl -a "Caprine"
wmctrl -a "Skype"
wmctrl -a "LINE"
這樣可以把指定的應用程式排列整齊。
歐 之前其實有用過 xtile 之類的工具,但是,總是找錯視窗,大小搞亂之類的,有點可惜。