私はVPN接続のリストを読み、dmenuを介して接続する「dmenu」シェルスクリプトを作成しています。ユーザーが適切な項目を選択した後、「nmcli」を呼び出します。
シェルはスクリプトです。
#!/bin/sh
export vpn_name=$(echo -e "OFF\n$(nmcli -f NAME,TYPE con show | awk '$2 == "vpn" {print $1}')" | dmenu -p "Connect to VPN:" -i -l 20)
if [ "$vpn_name" == "OFF" ]; then
nmcli -f NAME,TYPE,ACTIVE con show | awk '$2 == "vpn" && $3 == "yes" {print $1}' | xargs nmcli con down
else
echo "executing else" >> /tmp/vpn
i3-msg "exec --no-startup-id \"$TERM --hold -t 'Connect to VPN'\""
fi
今私の問題は、xbindkeysでスクリプトを実行しても何も起こらないということです。
bindsym $mod+Shift+v exec ~/.local/bin/dmenu/vpn.sh
ターミナルで正常に動作することをテストしましたが、すべてがうまく機能します。
xbindkeyショートカットを使用するときにi3がexecコマンドを実行しないのはなぜですか?
PS:私の環境は
i3 バージョン 4.23 Linux 6.7.9-arch1-1(x11)