home *** CD-ROM | disk | FTP | other *** search
/ PCNET 2006 September - Disc 1 / PCNET_CD_2006_09.iso / linux / puppy-barebones-2.01r2.iso / pup_201.sfs / usr / local / jwmconfig / confirmKey < prev    next >
Encoding:
Text File  |  2006-05-06  |  3.3 KB  |  149 lines

  1. #!/bin/sh
  2.  
  3. #########################
  4. #
  5. # confirms the keyboard shortcut changes and saves them
  6. #
  7. # for use with the jwmConfigMgr & keyboard scripts
  8. #
  9. # author: thoughtjourney
  10. # date: 18/08/2005
  11. #########################
  12.  
  13. ##--------variables---------->>
  14. TMP1="/tmp/confmask.tmp.$$"
  15. TMP2="/tmp/maskkey.tmp.$$"
  16. DEL="NO"
  17. NEWKEY=$KY
  18. ACTION=$A
  19. MASKKEY=
  20. OLDKEY=
  21. OLDMASK=
  22. OLD=
  23. OLDFILE="/tmp/short"
  24. CHANGE_SED=
  25. DEL_SED=
  26. CONF_FILE=/root/.jwm/jwmrc-personal
  27. CONF_FILE2=/root/.jwm/jwmrc-personal2
  28. TEST=
  29.  
  30. ##------confirmation--------->>
  31.  
  32. #xmessage -buttons Exit -bg black -fg green -name "New Shortcut" -nearmouse "KEY: $KY MASK: $MSK ACTION: $A DELETE: $CHECK" 
  33.  
  34. ##------preparation---------->>
  35.  
  36. OLDMASK=`awk -F\| '/old/ {print $2}' $OLDFILE`
  37. OLDKEY=`awk -F\| '/old/ {print $3}' $OLDFILE`
  38.  
  39. if [ "$MSK" = "mask" ];then
  40.    MASKKEY=
  41. else
  42.   echo "$MSK" > $TMP1
  43.   sed -e "s#ALT#1#i" \
  44.       -e "s#CTRL#2#i" \
  45.       -e "s#HYPER#3#i" \
  46.       -e "s#META#4#i" \
  47.       -e "s#SHIFT#5#i" \
  48.       -e "s#SUPER#6#i" \
  49.       -e "s#A#1#i" \
  50.       -e "s#C#2#i" \
  51.       -e "s#H#3#i" \
  52.       -e "s#M#4#i" \
  53.       -e "s#S#5#i" \
  54.       -e "s#P#6#i" \
  55.       -e "s#[^123456]##g" \
  56.       -e "s#1#A#" \
  57.       -e "s#2#C#" \
  58.       -e "s#3#H#" \
  59.       -e "s#4#M#" \
  60.       -e "s#5#S#" \
  61.       -e "s#6#P#" $TMP1 > $TMP2
  62.  
  63.   MASKKEY=`cat $TMP2`
  64.   rm -f $TMP1
  65.   rm -f $TMP2
  66. fi
  67.  
  68. #-------delete??------->
  69. if [ $CHECK = "true" ]; then
  70.  
  71.    #-----mask and key---->
  72.    if [ -z $OLDMASK ];then 
  73.      DEL=`Xdialog --title "Delete Shortcut?"\
  74.                   --yesno "KEY: $OLDKEY\n\
  75. ACTION: $A\n\n\
  76. Are you sure you wish to delete this shortcut?\n\n" 0 0`
  77.  
  78.       if [ $DEL = "NO" ]; then
  79.          exit 0
  80.       else
  81.          DEL_SED=/y\ key=\"$OLDKEY\"\>/d
  82.       fi
  83.  
  84.    #-------key only----->
  85.    else
  86.       DEL=`Xdialog --title "Delete Shortcut?"\
  87.                   --yesno "MASK: $OLDMASK
  88. KEY: $OLDKEY
  89. ACTION: $A\n\n
  90. Are you sure you wish to delete this shortcut?\n\n" 0 0`
  91.  
  92.       if [ $DEL = "NO" ]; then       
  93.          exit 0
  94.       else
  95.          DEL_SED=/Key\ mask=\"$OLDMASK\"\ key=\"$OLDKEY\"\>/d
  96.       fi
  97.    fi
  98.  
  99.  sed "$DEL_SED" $CONF_FILE > $CONF_FILE2
  100.  mv $CONF_FILE2 $CONF_FILE
  101.  exit 0
  102.  
  103. #------change---------->
  104. else
  105.   #---previous shortcut had no mask--->
  106.   if [ -z $OLDMASK ]; then
  107.  
  108.      echo NEWMASK: $MSK
  109.      if [ -z $MASKKEY ];then 
  110.  
  111.         #--new shortcut doesn't have mask-->
  112.         GAP="y key="
  113.         CHANGE_SED=s!y\ key=\"$OLDKEY\"\>!y\ key=\"$NEWKEY\"\>!g
  114.         sed -e "$CHANGE_SED" $CONF_FILE > $CONF_FILE2
  115.  
  116.      else
  117.         #--new shortcut has mask-->
  118.         CHANGE_SED=s!Key\ key=\"$OLDKEY\"\>!Key\ mask=\"$MASKKEY\"\ key=\"$NEWKEY\"\>!g
  119.         sed -e "$CHANGE_SED" $CONF_FILE > $CONF_FILE2
  120.      fi
  121.  
  122.    else #---previous shortcut had mask--->
  123.      if [ -z $MASKKEY ];then 
  124.  
  125.         #--new shortcut doesn't have mask-->
  126.         CHANGE_SED=s!y\ mask=\"$OLDMASK\"\ key=\"$OLDKEY\"\>!y\ key=\"$NEWKEY\"\>!g
  127.         sed -e "$CHANGE_SED" $CONF_FILE > $CONF_FILE2
  128.  
  129.      else
  130.         #--new shortcut has mask-->
  131.         CHANGE_SED=s!Key\ mask=\"$OLDMASK\"\ key=\"$OLDKEY\"\>!Key\ mask=\"$MASKKEY\"\ key=\"$NEWKEY\"\>!g
  132.         sed -e "$CHANGE_SED" $CONF_FILE > $CONF_FILE2
  133.      fi
  134.   fi
  135.  
  136. fi
  137.  
  138.  
  139. #---------confirm-------->
  140. cp $CONF_FILE2 $CONF_FILE
  141.  
  142. Xdialog --title "Shortcut_Changed" --msgbox "The following shortcut has been added\n\n 
  143. $MASKKEY+$NEWKEY $A\n\n" 0 0
  144.  
  145. sync
  146.  
  147.  
  148.