Author |
Message |
hannysabbagh
Joined: 14 Apr 2013 Posts: 17
|
Posted: Mon 03 Jun 2013, 11:03 Post subject:
problem when using ls in gtkdialog.. |
|
Hello.
i have wrote a command to list all gtk2 themes in /usr/share/themes:
ls -d /usr/share/themes/*/gtk-2.0 | awk -F"/gtk-2.0" '{print $1}'
the problem is when i try to put this command as an input command for comboboxtext, of course it will give me a Synatex error because of the '
so i tried to use a variable like $thing='{print $1}' , and in comboboxtext:
ls -d /usr/share/themes/*/gtk-2.0 | awk -F"/gtk-2.0" "$thing"
this way works very good on the terminal, but in gtkdialog it doesn't work, it gives me ls: write error: Broken pipe
any help ?
thanks.[/code]
|
Back to top
|
|
 |
seaside
Joined: 11 Apr 2007 Posts: 917
|
Posted: Mon 03 Jun 2013, 11:59 Post subject:
|
|
hannysabbagh,
You can do it with a function -
Code: | #!/bin/sh
theme_list() {
ls -d /usr/share/themes/*/gtk-2.0 | awk -F"/gtk-2.0" '{print $1}'
}
export -f theme_list
GTKDIALOG=gtkdialog
export MAIN_DIALOG='
<vbox>
<hbox>
<text>
<label>Combobox:</label>
</text>
<comboboxtext>
<variable>COMBOBOX</variable>
<input>theme_list</input>
</comboboxtext>
</hbox>
<hbox>
<button ok></button>
<button cancel></button>
</hbox>
</vbox>
'
$GTKDIALOG --program=MAIN_DIALOG |
Cheers,
s
|
Back to top
|
|
 |
hannysabbagh
Joined: 14 Apr 2013 Posts: 17
|
Posted: Mon 03 Jun 2013, 13:05 Post subject:
|
|
hello seaside.
i know that you can do that, but the problem is that i need only the theme name, not its full directory, like:"Crux,Adwitia.." not "/usr/share/themes/crux"...
thank you.
|
Back to top
|
|
 |
seaside
Joined: 11 Apr 2007 Posts: 917
|
Posted: Mon 03 Jun 2013, 15:12 Post subject:
|
|
hannysabbagh,
Perhaps this.
Code: | ls -d /usr/share/themes/*/gtk-2.0 | awk -F"/" '{print $5}' |
Cheers,
s
EDIT: I'm not really sure what you're looking for because you could do this by " ls /usr/share/themes/".
|
Back to top
|
|
 |
hannysabbagh
Joined: 14 Apr 2013 Posts: 17
|
Posted: Mon 03 Jun 2013, 16:08 Post subject:
|
|
Thank you my friend, it is now working correctly
Thanks.
|
Back to top
|
|
 |
|