]>
Commit | Line | Data |
---|---|---|
6218e5cc | 1 | #/bin/sh |
2 | # | |
3 | # I could done it in perl - it would be much simpler then | |
4 | # But I wanted to be compatible with most systems | |
5 | # | |
6 | # usage: | |
7 | # kdelnk2wmconfig <package_name> <kdelnk_file> <wmconfig_file> <group> <language> | |
8 | # | |
9 | ||
10 | pkg="$1" | |
11 | kdelnk="$2" | |
12 | wmconfig="$3" | |
13 | grp="$4" | |
14 | lng="$5" | |
15 | ||
16 | if [ -in "$lng" ] ; then | |
17 | lng="\\[$lng\\]"; | |
18 | fi | |
19 | ||
20 | NAME=`egrep "^Name$lng=" "$kdelnk" | sed -e "s/^Name$lng=//"` | |
21 | if [ -z "$NAME" ] ; then | |
22 | NAME=`egrep "^Name=" "$kdelnk" | sed -e "s/^Name=//"` | |
23 | fi | |
24 | if [ -z "$NAME" ] ; then | |
25 | NAME=`echo \`basename $kdelnk\` | sed -e "s/.kdelnk\$//"` | |
26 | fi | |
27 | NAMEQUOTED=`echo $NAME | sed -e "s#/#\\\\\\/#"` | |
28 | ||
29 | ICON=`egrep "^Icon=" $kdelnk | sed -e "s/^Icon=//"` | |
30 | MINIICON=`egrep "^MiniIcon=" $kdelnk | sed -e "s/^MiniIcon=//"` | |
31 | if [ "x$MINIICON" = "x" ] ; then | |
32 | MINIICON="$ICON"; | |
33 | fi | |
34 | EXEC=`egrep "^Exec=" $kdelnk | sed -e "s/^Exec=//"` | |
35 | GROUP=`echo $grp | sed -e "s/\\\/\\\.\$//"` | |
36 | ||
37 | EXEC=`echo "$EXEC" | sed -e "s/\"/'/g"` | |
38 | EXEC=`echo "$EXEC" | sed -e "s/\\%c/$NAMEQUOTED/"` | |
39 | EXEC=`echo "$EXEC" | sed -e "s/\\%i/-icon $ICON/"` | |
40 | EXEC=`echo "$EXEC" | sed -e "s/\\%m/-miniicon $MINIICON/"` | |
41 | ||
42 | echo "$pkg name \"$NAME\"" > $wmconfig | |
43 | echo "$pkg icon \"$ICON\"" >> $wmconfig | |
44 | echo "$pkg mini-icon \"$MINIICON\"" >> $wmconfig | |
45 | echo "$pkg exec \"$EXEC\"" >> $wmconfig | |
46 | echo "$pkg group \"$GROUP\"" >> $wmconfig |