[WIKI] Интерфейс Gmoccapy с нуля.

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Georg_kai
Кандидат
Сообщения: 53
Зарегистрирован: 26 янв 2012, 11:16
Репутация: 2
Откуда: Новосибирск
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение Georg_kai »

Возникла проблема Gmoccapy и виртуальной клавиатуры. Установил matchbox-keyboard ( как рекомендовано в доке) и в поле где должна отображаться виртуальная клавиатура чистый экран - для пояснения прикладываю картинку - это экран MDI.
Вложения
virtual.jpg (2890 просмотров) <a class='original' href='./download/file.php?id=44980&mode=view' target=_blank>Загрузить оригинал (91.18 КБ)</a>
Аватара пользователя
verser
Мастер
Сообщения: 1903
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение verser »

А в логах запуска gmoccapy смотрели какие есть ошибки?
Georg_kai
Кандидат
Сообщения: 53
Зарегистрирован: 26 янв 2012, 11:16
Репутация: 2
Откуда: Новосибирск
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение Georg_kai »

В логах имеем вот это:

**** GMOCCAPY ERROR ****
**** Error with launching virtual keyboard,
**** is onboard or matchbox-keyboard installed? ****
Traceback (most recent call last):
File "/usr/bin/gmoccapy", line 1069, in _init_keyboard
close_fds = True )
File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1259, in _execute_child
raise child_exception
OSError: [Errno 2] Нет такого файла или каталога

странно, хотя файл в \usr\bin\matchbox-keyboard имеется.
Аватара пользователя
verser
Мастер
Сообщения: 1903
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение verser »

Еще для полной ясности покажите Вашу строку запуска gmoccapy

вот место в gmoccapy, которое дает ошибку, думаю, он не может запустить найденную клавиатуру (строка 1073) и вываливается в Exception (строка 1090)

Код: Выделить всё

1055 # =============================================================
1056 # Onboard keybord handling Start
1057 
1058     # shows "Onboard" virtual keyboard if available
1059     # else error message
1060     def _init_keyboard( self, args = "", x = "", y = "" ):
1061         self.onboard = False
1062 
1063         # now we check if onboard or matchbox-keyboard is installed
1064         try:
1065             if os.path.isfile( "/usr/bin/onboard" ):
1066                 self.onboard_kb = subprocess.Popen( ["onboard", "--xid", args, x, y],
1067                                                    stdin = subprocess.PIPE,
1068                                                    stdout = subprocess.PIPE,
1069                                                    close_fds = True )
1070                 print ( _( "**** GMOCCAPY INFO ****" ) )
1071                 print ( _( "**** virtual keyboard program found : <onboard>" ) )
1072             elif os.path.isfile( "/usr/bin/matchbox-keyboard" ):
1073                 self.onboard_kb = subprocess.Popen( ["matchbox-keyboard", "--xid"],
1074                                                    stdin = subprocess.PIPE,
1075                                                    stdout = subprocess.PIPE,
1076                                                    close_fds = True )
1077                 print ( _( "**** GMOCCAPY INFO ****" ) )
1078                 print ( _( "**** virtual keyboard program found : <matchbox-keyboard>" ) )
1079             else:
1080                 print ( _( "**** GMOCCAPY INFO ****" ) )
1081                 print ( _( "**** No virtual keyboard installed, we checked for <onboard> and <matchbox-keyboard>." ) )
1082                 self._no_virt_keyboard()
1083                 return
1084             sid = self.onboard_kb.stdout.readline()
1085             socket = gtk.Socket()
1086             socket.show()
1087             self.widgets.key_box.add( socket )
1088             socket.add_id( long( sid ) )
1089             self.onboard = True
1090         except Exception, e:
1091             print ( _( "**** GMOCCAPY ERROR ****" ) )
1092             print ( _( "**** Error with launching virtual keyboard," ) )
1093             print ( _( "**** is onboard or matchbox-keyboard installed? ****" ) )
1094             traceback.print_exc()
1095             self._no_virt_keyboard()
Georg_kai
Кандидат
Сообщения: 53
Зарегистрирован: 26 янв 2012, 11:16
Репутация: 2
Откуда: Новосибирск
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение Georg_kai »

Да я как раз этот фрагмент и просматривал. самое интересное что если набираю в командной строке matchbox-keyboard - то сама виртуальная клавиатура запускается.
Строка запуска такая- /usr/bin/linuxcnc '/home/georg/linuxcnc/configs/sim.gmoccapy-1/gmoccapy.ini'
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение Serg »

Вообще-то оно пытается запустить onboard, судя по номеру строки, видимо нашло её...

P.S. А вообще странный способ писать программы...
verser писал(а):1065 if os.path.isfile( "/usr/bin/onboard" ):
1066 self.onboard_kb = subprocess.Popen( ["onboard", "--xid", args, x, y],
Если уж проверять наличие файла по полному пути, то почему и не запускать тоже с полным путём?..
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Georg_kai
Кандидат
Сообщения: 53
Зарегистрирован: 26 янв 2012, 11:16
Репутация: 2
Откуда: Новосибирск
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение Georg_kai »

Такс... интересно. У меня вроде еще florence стоит виртуалная.
Сейчас попробую ее удалить и переустановить matchbox.
Georg_kai
Кандидат
Сообщения: 53
Зарегистрирован: 26 янв 2012, 11:16
Репутация: 2
Откуда: Новосибирск
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение Georg_kai »

Переустановил ,
сейчас логи такие:
**** GMOCCAPY INFO ****
**** virtual keyboard program found : <matchbox-keyboard>
**** GMOCCAPY INFO ****
**** no valid probe config in INI File ****
**** disabled tool measurement ****
**** GMOCCAPY INFO: Gcode.lang found ****

но все равно поле виртуальной клавиатуры пустое как в посте #201 - т.е кнопки не отображаются. :thinking:
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение Serg »

Ubuntu или Debian?

florence никому не мешает.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Georg_kai
Кандидат
Сообщения: 53
Зарегистрирован: 26 янв 2012, 11:16
Репутация: 2
Откуда: Новосибирск
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение Georg_kai »

Установлен Дебиан
georg@d-2:~$ uname -a
Linux d-2 3.12.5-rt7mah #2 SMP PREEMPT RT Thu Dec 19 19:20:11 CET 2013 x86_64 GNU/Linux
просто установлена плата 7i76E которая хочет preempt-rt ядро.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение Serg »

Судя по версии ядра это не официальная сборка?
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Georg_kai
Кандидат
Сообщения: 53
Зарегистрирован: 26 янв 2012, 11:16
Репутация: 2
Откуда: Новосибирск
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение Georg_kai »

да - ядро патчено чтоб поддерживало плату.
Аватара пользователя
verser
Мастер
Сообщения: 1903
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение verser »

Georg_kai писал(а):Переустановил ,сейчас логи такие:**** GMOCCAPY INFO ******** virtual keyboard program found : <matchbox-keyboard>
Это при начальном запуске так, а когда открываешь экран с клавиатурой, то в логах наверно опять
Georg_kai писал(а):**** GMOCCAPY ERROR ******** Error with launching virtual keyboard,**** is onboard or matchbox-keyboard installed? ****
Georg_kai
Кандидат
Сообщения: 53
Зарегистрирован: 26 янв 2012, 11:16
Репутация: 2
Откуда: Новосибирск
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение Georg_kai »

Нет - в логах все чисто:
georg@d-2:~$ /usr/bin/linuxcnc '/home/georg/linuxcnc/configs/sim.gmoccapy-1/gmoccapy.ini'
LINUXCNC - 2.8.0-pre1-548-geaff4f0
Machine configuration directory is '/home/georg/linuxcnc/configs/sim.gmoccapy-1'
Machine configuration file is 'gmoccapy.ini'
Starting LinuxCNC...
Found file:/usr/share/linuxcnc/hallib/core_sim.hal
Note: Using POSIX realtime
Found file:./spindle_sim.hal
Found file:/usr/share/linuxcnc/hallib/simulated_home.hal
Invalid on color value: greeen
**** GMOCCAPY GETINIINFO ****
Preference file path: /home/georg/linuxcnc/configs/sim.gmoccapy-1/gmoccapy.pref
[]
/usr/bin/gmoccapy:239: GtkWarning: Invalid icon size 48

self.widgets.window1.show()
**** GMOCCAPY INFO ****
**** gmoccapy screen 2 found ****
**** GMOCCAPY INFO ****
**** Invalid embeded tab configuration ****
**** No tabs will be added! ****
**** GMOCCAPY INFO ****
**** audio available! ****
**** GMOCCAPY INFO ****
**** virtual keyboard program found : <matchbox-keyboard>
**** GMOCCAPY INFO ****
**** no valid probe config in INI File ****
**** disabled tool measurement ****
**** GMOCCAPY INFO: Gcode.lang found ****

(gmoccapy:3921): GtkSourceView-CRITICAL **: gtk_source_language_manager_set_search_path: assertion `lm->priv->ids == NULL' failed
**** GMOCCAPY INFO : inifile = /home/georg/linuxcnc/configs/sim.gmoccapy-1/gmoccapy.ini ****:
**** GMOCCAPY INFO : postgui halfile = gmoccapy_postgui.hal ****:
Emit interp-run
1 2
Emit interp-run
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение Serg »

Я б заменил matchbox-keyboard скриптом и посмотрел как её вызывают, попробовал-бы руками...
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Georg_kai
Кандидат
Сообщения: 53
Зарегистрирован: 26 янв 2012, 11:16
Репутация: 2
Откуда: Новосибирск
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение Georg_kai »

просто я не настолько силен в питоне.. и написании скриптов :oops:
если сбросите пример .
Аватара пользователя
verser
Мастер
Сообщения: 1903
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение verser »

Georg_kai писал(а):просто я не настолько силен в питоне.. и написании скриптов :oops:
если сбросите пример .

Код: Выделить всё

#!/bin/bash
echo "hello, world"
:) и обозвать его matchbox-keyboard
Georg_kai
Кандидат
Сообщения: 53
Зарегистрирован: 26 янв 2012, 11:16
Репутация: 2
Откуда: Новосибирск
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение Georg_kai »

таксс - и куда это внедрить? :wtf:
Georg_kai
Кандидат
Сообщения: 53
Зарегистрирован: 26 янв 2012, 11:16
Репутация: 2
Откуда: Новосибирск
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение Georg_kai »

и поместить в каталог с конфигурацией?
Аватара пользователя
verser
Мастер
Сообщения: 1903
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy , делаем свои дополнения.

Сообщение verser »

Georg_kai писал(а):и поместить в каталог с конфигурацией?
неа, вместо него:
\usr\bin\matchbox-keyboard

Задача - увидеть в терминале "hello, world" при вызове из gmoccapy окна, где д.б. виртуальная клавиатура
Последний раз редактировалось verser 11 мар 2015, 20:05, всего редактировалось 1 раз.
Ответить

Вернуться в «LinuxCNC»