初めて zenity を使ってみたので、例によって動作の保証はありません。
スクリプトは読むだけにして、使わないでください。
- #!/bin/bash
- #mouse_setting_lz01
- #ユーザの確認及びパスの設定
- current_user=$(whoami)
- rc_path="/home/""$current_user""/.gtkrc-2.0"
- ini_path="/home/""$current_user""/.config/gtk-3.0/settings.ini"
- #ユーザのホームディレクトリに.gtkrc-2.0が存在するかを確認し、無ければ作成して値を書き込み
- if [ ! -e "$rc_path" ];then
- echo -n > $rc_path
- echo "gtk-double-click-time=250" > $rc_path
- fi
- def_time_str=$(grep "gtk-double-click-time" $rc_path)
- if [ "$def_time_str" = "" ];then
- echo "gtk-double-click-time=250" >> $rc_path
- def_time_str=$(grep "gtk-double-click-time" $rc_path)
- fi
- def_time_value=$(echo $def_time_str | cut -c 23-${#def_time_str})
- #ユーザの.config/gtk-3.0ディレクトリにsettings.iniが存在するかを確認し、無ければ作成して値を書き込み
- if [ ! -e "$ini_path" ];then
- echo -n > $ini_path
- echo "[Settings] " > $ini_path
- echo "gtk-double-click-time=250" >> $ini_path
- fi
- def_time_str_ini=$(grep "gtk-double-click-time" $ini_path)
- if [ "$def_time_str_ini" = "" ];then
- echo "gtk-double-click-time=250" >> $ini_path
- fi
- #zenityのscaleを使って値を変更
- new_time_value=$(zenity --scale --text="ダブルクリックの間隔を設定(ミリ秒)" --min-value=250 --max-value=1500 --value=$def_time_value)
- #ダブルクリック間隔変更、設定
- if [ "$?" = "0" ];then
- new_time_str="gtk-double-click-time=""$new_time_value"
- if [ "$def_time_str" != "$new_time_str" ];then
- sed --in-place --expression=s/$def_time_str/$new_time_str/ $rc_path
- sed --in-place --expression=s/$def_time_str/$new_time_str/ $ini_path
- zenity --info --text="設定を変更しました。再起動してください"
- else
- zenity --info --text="設定の変更はありません"
- fi
- else
- zenity --info --text="キャンセルしました"
- fi
0 件のコメント :
コメントを投稿