fkie / multimaster_fkie

ROS stack with FKIE packages for multi-robot (discovering, synchronizing and management GUI)
BSD 3-Clause "New" or "Revised" License
268 stars 108 forks source link

Open node connected Terminal fails #13

Closed odel4y closed 9 years ago

odel4y commented 9 years ago

First off thank you for this great tool. With the current version there appears to be a bug when I want to view the connected terminal of a running node. When I press the terminal button it opens one but it only shows the introduction of the tool 'screen'. I resolved this by changing the method terminal_cmd in settings.py. I changed the last line to return '%s -T %s -e "%s"'%(self._terminal_emulator, title, ' '.join(cmd)) This way all the commands for the terminal get enclosed in quotation marks. I would suggest this for the terminal window title as well. For now the calling functions (e,g, openScreenTerminal) enclose the title manually.

atiderko commented 9 years ago

Thank you for using it ;-) and reporting the errors! I can not reproduce this issue. Which console do you use? You can use update-alternatives --display x-terminal-emulator to find it out. Which screen version are you use?

odel4y commented 9 years ago

I use the console /usr/bin/terminator. It probably works for you because you use xterm(?) These for example both work in xterm: xterm -e ping 127.0.0.1 xterm -e "ping 127.0.0.1" But only the version with quotation marks works in terminator, xfce4-terminal, gnome-terminal etc.

atiderko commented 9 years ago

In our group many people use konsole and konsole -e "ping 127.0.0.1" does not work :-( The problem is, that the different terminals use different args to execute a command with arguments. konsole, xterm use -e, terminator, gnome-terminal or xfce4-terminal use '-x'. I added a workaround and I hope it works in most cases.

odel4y commented 9 years ago

There are too many terminals out there ;) I guess this is the only way then. Thanks for including that.