Desidero creare un window manager in una di queste lingue (preferibilmente ruby). Onestamente non ho idea di dove cominciare eccetto che avrò bisogno di una sorta di modulo X da caricare. Quindi, se qualcuno ha la minima idea, sarebbe bello se tu potessi indicarmi la giusta direzione. Grazie(Ruby || Python) window manager
risposta
XCB, la prossima API gen per X utilizza un formato XML per definire i protocolli X e genera associazioni linguistiche specifiche con uno script. È simile nel concetto a SWIG tranne che invece di descrivere le API C, descrive i protocolli X.
Attualmente esistono collegamenti per C e Python. In teoria una porta Ruby sarebbe solo una questione di scrittura di un traduttore dal linguaggio di definizione del protocollo XML a Ruby. Il codice Ruby generato potrebbe avvolgere l'API C o implementare il protocollo wire in puro Ruby (consiglio quest'ultimo).
L'API apparentemente ha alcuni vantaggi intrinseci rispetto all'eredità di Xlib relativa al blocco dell'I/O. Ha anche una porta di Windows, abbastanza stranamente.
Hai guardato a http://ruby-xlib-wrap.sourceforge.net/. Questo sembra fornire collegamenti Ruby per XLib.
È possibile provare a utilizzare XWindows prima di provare a scrivere un gestore di finestre.
Perché non iniziare con un desktop, quindi è possibile ottenere un po 'di esperienza.
Nota:
1) Awesome non è scritto in lua, è scritto in C. Esso utilizza Lua come interfaccia di scripting/config.
2) Qtile e Samurai-X sono due wm sono scritti in python.
3) Sottile è un wm che utilizza il rubino come linguaggio di scripting.
Qtile e Sottile sono entrambi gestori di finestre affiancate.
- 1. Costruire un Window Manager
- 2. Web Window Manager (UI Framework)
- 3. Nome di window manager per Windows
- 4. Python: PyQt Popup Window
- 5. Come imposto il window manager predefinito su Fedora 21?
- 6. Ottieni inf-ruby per utilizzare ruby version manager (rvm)
- 7. Cosa è più comunemente usato come window manager per OpenGL al giorno d'oggi?
- 8. Aggiunta di vista attivabile al window manager senza perdere la reattività su sfondo
- 9. "Window Manager Crash" sulla chiave di invio "Giù" su Samsung Galaxy S
- 10. IntelliJ IDEA 12 Python Package Manager?
- 11. Quali sono le alternative a Ruby Version Manager (rvm)?
- 12. Problema chiave con l'installazione di RVM (Ruby Version Manager)
- 13. Authorize.net CIM Duplicate Transaction Window
- 14. .Manager
- 15. Intellisense per Ruby, Ruby on Rails, Python
- 16. JVM version manager
- 17. Implementare Hann Window
- 18. WPF window hosting usercontrol
- 19. $ (window) .hashchange() non funziona
- 20. PyQt Window Focus
- 21. Multi Window non funziona
- 22. jsdom window caching
- 23. OpenGL cross platform window
- 24. Window Loaded and WPF
- 25. Window ActualTop, ActualLeft
- 26. R data.table sliding window
- 27. Corrupted Java Swing Window
- 28. Visual Studio Command Window
- 29. Clear PyCharm Run Window
- 30. Prevent Window Focus Change
sottile è scritto in C, utilizza solo Ruby come linguaggio di scripting. – unexist