[Xcb] XCB naming conventions technical problems
Thomas Hunger
hto at arcor.de
Thu Sep 14 12:57:51 PDT 2006
Hi,
I did some hacking on the Stylesheet "c-client.xsl" and
the "xproto.xml" to implement the new naming scheme. First
the questions:
What do import.py, size.py and type.py do? They do not seem
to be called before the xsl processor gets called?
Now the problems:
* Within the stylesheet there are a lot snippets like
..."XCB{$ext}Init"...
If I transform them to
..."xcb_{$ext}_init"...
and $ext is empty because it is an unqualified type the
result will be
"xcb__init"
meaning two underscores in a row. I see two ways to solve
this:
1) declare ext with an underscore included (this seems to
break other things)
2) do an xsl:if to check if $ext is empty and insert text
accordingly. This would mean a lot of checking (~20
occurrences)
* Renaming types e.g. from WINDOW to window_t can be done in
two places: In xproto.xml or by appending "_t" in various
places in c-clients.xsl.
When doing the former, the created functions for requests
would e.g. look like "xcb_create_window_t_checked" which is
not wanted. The other way, appending "_t" in the stylesheet
is quite complicated because many places need to be
adjusted. I tried for an hour but it still does not compile
correctly (But maybe Josh could do it).
After giving up (there were more problems), I did a small
xml->c converter for a subset in python which seems to me
simpler and better readable (although less error checking
presently). This raises the question: would a move from xsl
to python be viable or is python too much of a dependency?
Thanks for reading
Tom
More information about the Xcb
mailing list