2016-07-20 13 views
1

Я портирую приложение PyGTK/Gnome.Gnome python bindings

Он использует gnome в нескольких местах:

import gnome 
gnome.program_init("prog", str(app_version), properties=props) 
... 
gnome.help_display("prog") 

В ПОИСКАХ gi reference я не могу найти такие методы в любой из привязок ...

Есть три Gnome * переплеты, но и не кажется предложить эти методы.

ответ

2

Это похоже на старую привязку с libgnome, которая была устарела давным-давно в C. Я предлагаю вам искать вызовы методов gnome (например, gnome.help_display), а затем искать в Gtk3 для подобных методов.

В конкретном случае gnome.help_display нет эквивалента для старой справочной системы gnome в Gtk3. Я подозреваю, что это потому, что современные системы более ориентированы на HTML (или XML). Вероятно, лучше всего было бы основать вашу новую справочную систему непосредственно на виджетах Python, таких как webkit (который может быть встроен) вместо libgnome. Вы также можете взаимодействовать с вашим предпочтительным браузером с модулем webbrowser. Код для встраивания webkit довольно компактно (см A browser in 14 lines или A minimal Gtk+/Webkit based browser)

Вы также можете захотеть взглянуть на систему Python Sphinx документации, которая «чувствует» лучше для меня, чем yelp. Он также генерирует beautiful PDFs из LaTeX, который он производит.

+0

Я думаю, что буду использовать 'os.system ('yelp myhelp.xml')' then. Благодаря! –

+0

Добавлена ​​заметка о Sphinx к ответу – jcoppens

+0

Плюс 1 для упоминания 'webbrowser' он без усилий используется и выбирает выбранную вами программу на основе типа файла. –