(Ruby || Python) менеджер окон

UML является только одним из методов для коммуникации в людях. Электронная доска лучше.

5
задан Robert Harvey 28 July 2011 в 17:02
поделиться

4 ответа

XCB, API следующего поколения для X, использует формат XML для определения протоколов X и генерирует привязки конкретных языков с помощью сценария. По концепции он похож на SWIG, за исключением того, что вместо описания API C он описывает протоколы X.

В настоящее время привязки существуют для C и Python. Перенос на Ruby теоретически был бы лишь вопросом написания переводчика с языка определения протокола XML на Ruby. Сгенерированный код Ruby может либо обернуть C API, либо реализовать проводной протокол на чистом Ruby (я рекомендую последний).

API явно имеет некоторые неотъемлемые преимущества по сравнению с устаревшим Xlib, связанные с блокировкой ввода-вывода. Как ни странно, он также имеет порт для Windows.

http://xcb.freedesktop.org/

http://xcb.freedesktop.org//XcbPythonBinding/

http: //xcb.freedesktop. org // win32port /

6
ответ дан 13 December 2019 в 22:12
поделиться

Вы смотрели http://ruby-xlib-wrap.sourceforge.net/ . Кажется, это обеспечивает привязку Ruby для XLib.

Вы можете поэкспериментировать с использованием XWindows, прежде чем пытаться написать оконный менеджер.

Почему бы не начать с рабочего стола, чтобы получить некоторый опыт.

2
ответ дан 13 December 2019 в 22:12
поделиться

Not Ruby or Python, but these window managers are also written in cool languages: awesome (Lua) and XMonad (Haskell). Maybe you can peek inside their internals and see how they work.

0
ответ дан 13 December 2019 в 22:12
поделиться

Примечание:

1) Awesome не написан на lua, он написан на C. Он использует Lua в качестве интерфейса сценариев / конфигурации.

2) Qtile и Samurai-X - это два wm. написаны на python.

3) Subtle - это wm, использующий ruby ​​в качестве языка сценариев.

Qtile и Subtle - это тайловые оконные менеджеры.

2
ответ дан 13 December 2019 в 22:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: