Commit graph

1228 commits

Author SHA1 Message Date
Alan Coopersmith
ec4075303c specs/XKB: Markup some subtractions with − instead of -
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 20:18:56 -07:00
Alan Coopersmith
441a267e46 specs/XKB: make sure all files have DOCTYPEs so standard entities work
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 20:18:56 -07:00
Alan Coopersmith
88fd70bee4 specs/XKB: Markup quoted terms as <quote> instead of with ""
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 20:18:56 -07:00
Alan Coopersmith
3576587ff1 specs/XKB: fixup newlines between tags and punctuation
Get rid of unwanted whitespace before punctuation by moving them to the
lines with the tags, instead of before & after.

perl -i -0 -p -e 's{\>\s*\n([\.,;:])}{>\1\n}g' *xml

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 20:18:56 -07:00
Alan Coopersmith
6d5ec492cd specs/XKB: fixup newlines between tags and parens
Get rid of unwanted whitespace inside parens by moving them to the
lines with the tags, instead of before & after.

perl -i -0 -p \
     -e 's{(?<!--) \(\s*\n\<}{\n(<}g;' \
     -e 's{\>\s*\n\)([\.,;]?)(?! [^\n]*--)}{>)\1\n}g' *xml

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 20:18:54 -07:00
Alan Coopersmith
59d688f4c7 specs/XKB: Markup key terms as <firstterm> instead of <emphasis>
Also add <indexterm> entries for most of them, to make their definitions
or introductions easy to find from the index.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 20:18:14 -07:00
Alan Coopersmith
861f3087ee specs/XKB: Manual fixup of type markup
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 20:18:14 -07:00
Alan Coopersmith
6b96259dab specs/XKB: Manual fixup of parameter markup
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 20:18:14 -07:00
Alan Coopersmith
5526dce681 specs/XKB: Manual fixup of struct name/field markup
Handles typos that caused the scripts to miss matches, misnamed structs, etc.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 20:18:14 -07:00
Alan Coopersmith
c36ee1a4db specs/XKB: Manual fixup of symbol name markup
Handles typos that caused the scripts to miss matches, misnamed masks, etc.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:57 -07:00
Alan Coopersmith
eb1453a0c6 specs/XKB: Manual fixup of function name markup
Handles typos that caused the scripts to miss matches, functions like
malloc & free from other libraries, function name patterns, etc.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:57 -07:00
Alan Coopersmith
252d99c87b specs/XKB: Markup protocol requests as <systemitem> instead of <emphasis>
No great fit in DocBook, so follow what we used in Xlib spec.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:57 -07:00
Alan Coopersmith
ed60df10aa specs/XKB: Markup keyboard keys as <keycap> instead of <emphasis>
Also uses <guilabel> for LED names/labels, for lack of a better fit
in DocBook.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:57 -07:00
Alan Coopersmith
f57b91ee49 specs/XKB: Markup characters & strings as <literal> instead of <emphasis>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:57 -07:00
Alan Coopersmith
cfd4279c9b specs/XKB: Markup structs as <struct{name,field}> instead of <emphasis>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:56 -07:00
Alan Coopersmith
a014bb4cc0 specs/XKB: Markup symbol names in table entries too
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:56 -07:00
Alan Coopersmith
907f7ad7a7 specs/XKB: Markup *Ptr as <type> instead of <emphasis>
perl -i -p -e 's{<emphasis>(\w*Ptr)</emphasis>}{<type>\1</type>}g' *xml

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:56 -07:00
Alan Coopersmith
9f6c00629f specs/XKB: Markup *Rec as <structname> instead of <emphasis>
perl -i -p -e \
 's{<emphasis>(\w*Rec)</emphasis>}{<structname>\1</structname>}g' *xml

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:56 -07:00
Alan Coopersmith
83839e3780 specs/XKB: Markup XKB macros as <symbol> instead of <emphasis>
Performed via:
 perl -n -e 'printf "s{<emphasis>\\s*%s\\s*</emphasis>}{<symbol>%s</symbol>};\n", $1, $1 if m{^#define\s+([^\s\(]*)}' \
  /usr/include/X11/extensions/XK*h /usr/include/X11/XKBlib.h \
  | sort -u > xkb-defines.pl
 perl -i -p -f xkb-defines.pl *.xml

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:56 -07:00
Alan Coopersmith
9e397ed37c specs/XKB: Use ° instead of o for degrees.
Conversion from framemaker turned superscripted "o" into plain "o".

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:55 -07:00
Alan Coopersmith
3b8364c21f specs/XKB: Markup keysyms as <keysym> instead of <emphasis>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:55 -07:00
Alan Coopersmith
33bef06568 specs/XKB: Markup NULL as <symbol> instead of <emphasis>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:55 -07:00
Alan Coopersmith
f10aa1e094 specs/XKB: Markup function args as <parameter> instead of <emphasis>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:55 -07:00
Alan Coopersmith
79ba58cceb specs/XKB: Convert remaining error names to errorname tags
Most were caught by applying libX11 lists, but BadKeyboard & XKB*_Bad*
are XKB-specific.   (Plus some were badly split across tag boundaries.)

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:55 -07:00
Alan Coopersmith
42b2f5388c specs/XKB: manually fixup some more emphasis tagging mismatches
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:55 -07:00
Alan Coopersmith
3b2f47d44a specs/XKB: re-normalize <emphasis> layout in xml files
Same script as before, just with <!-- xref --> comments out of the way
now.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:54 -07:00
Alan Coopersmith
ce95f152ed specs/XKB: Remove remaining xref comments
All the places marked by these have been turned into the appropriate
link, xref, or olink tags now.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:54 -07:00
Alan Coopersmith
6590b66e19 specs/XKB: make olinks to xkbproto for references in section 10.13
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:54 -07:00
Alan Coopersmith
fcda446877 specs/XKB: Add <figure> tags and make Figure references link to them
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:53 -07:00
Alan Coopersmith
087a233847 specs/XKB: Turn Table references into links
Adds id attributes to all table tags so we can link to them

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:53 -07:00
Alan Coopersmith
135fa07b74 specs/XKB: Turn section references into xref links
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:53 -07:00
Alan Coopersmith
53e931d799 specs/XKB: Turn Chapter references into xref links
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:53 -07:00
Alan Coopersmith
b7f00ce5bc specs/XKB: Apply <emphasis> to semantic tag transformations from Xlib spec
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:53 -07:00
Alan Coopersmith
b00a7ddff2 specs/XKB: Markup function names as <function> instead of <emphasis>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:52 -07:00
Alan Coopersmith
bfbb58b767 specs/XKB: normalize <emphasis> layout in xml files
- Stop placing <emphasis> on empty space, commas, and periods.
- Move periods & commas after closing </emphasis> tag
- move <emphasis> open & close tags to same line, instead of mirroring
  nroff layout.

Simplifies automating further transformations of these tags.

Performed via:
 perl -i -0 -p \
    -e 's{<emphasis>(\s*)</emphasis>}{}msg;' \
    -e 's{<emphasis>([\s\.,]*)</emphasis>\s*}{\1}msg;' \
    -e 's{\n([\.,])\s*}{\1\n}msg;' \
    -e 's{([^\.])([\.,])\s*</emphasis>}{\1</emphasis>\2}msg;' \
    -e 's{\s*<emphasis>\n\s*}{\n<emphasis>}msg;' *xml

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:51 -07:00
Alan Coopersmith
b16ee69a01 specs/XKB: Convert to funcsynopsis+variablelist instead of informaltable
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 13:56:16 -07:00
Alan Coopersmith
b41d43d4cf specs/XKB: Add index
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-19 00:10:25 -07:00
Alan Coopersmith
72ae1d793b specs/XKB: Fix various markup issues in functiondecl tables
- Merge some functionargdecl entries incorrectly split across rows
- Add missing parameter name markup to some functionargdecls
- Add missing function prototype markup to a functiondecl
- Remove stray emphasis tags in a functiondecl

Allows them to correctly convert to funcsynopsis markup in next step.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-18 22:56:40 -07:00
Alan Coopersmith
9fdb973012 specs/XKB: Convert header filenames to filename tags
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-18 22:56:40 -07:00
Alan Coopersmith
5525e8433f specs/libX11: disengender a user reference
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-18 22:56:40 -07:00
Alan Coopersmith
d8679eae93 specs/libX11: Correct value of IconicState to match Xutil.h
Xutil.h has always had a value of 3 for IconicState, since 2 was
previously used for the long-obsolete ZoomState, so make the spec
match what programs have used for decades.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Matthieu Herrb <matthieu@herrb.eu>
2014-07-18 22:56:34 -07:00
Alan Coopersmith
7ce2b0f12a Use C99 named initializers to fill in events passed to XSendEvent
Forces compiler to zero-fill unset fields in the struct (fixing bug 81236)
and allows optimizer to order field initialization to best fit cache layout
or other considerations.

Before & after output of gcc -S on AMD64 shows insertion of "rep stosq"
instructions to rapidly zero-fill structs.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Matthieu Herrb <matthieu@herrb.eu>
2014-07-18 22:56:23 -07:00
Alan Coopersmith
169805e1dc Fix validation of ctrls parameter to XkbGetPerClientControls()
Nothing in the XKB spec states that the memory pointed to by ctrls has to
be initialized to any given value when passed to the function, only that
it is set by the function to the values returned by the X server:
http://www.x.org/releases/X11R7.7/doc/libX11/XKB/xkblib.html#The_Miscellaneous_Per_client_Controls

The check for the incoming value seems to be copied from
XkbSetPerClientControls without explanation.

Instead change it to checking if ctrls is non-NULL, since there's no
point asking the X server to return a value the caller won't even see.

Found while investigating report from cppcheck-1.65:
[src/xkb/XKB.c:699] -> [src/xkb/XKB.c:719]: (warning) Possible null pointer
 dereference: ctrls - otherwise it is redundant to check it against null.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-18 22:56:23 -07:00
Alan Coopersmith
1e362fac92 Fix map->num_types check in XkbAddKeyType()
Check is intended to ensure we allocate at least XkbNumRequiredTypes
in map, but was accidentally marked with a ! causing the wrong check.

Reported-by: Harms <wharms@bfs,de>
Reviewed-by: Matthieu Herrb <matthieu@herrb.eu>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-18 22:56:19 -07:00
Alan Coopersmith
ff9a5c1992 specs/libX11: Add missing spaces to 'unsignedint' & 'unsignedlong' types
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-06 15:59:19 -07:00
Alan Coopersmith
a06ea86773 specs/libX11: Fix height & width in parameter lists to be two separate entries
"unsigned int width, unsigned int height", not a single parameter "height"
of type "unsignedintwidth,".

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-06 15:59:19 -07:00
Alan Coopersmith
e4db5e5036 specs/libX11: Fix x & y in parameter lists to be two separate parameters
"int x, int y" not a single parameter y of type "intx"

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-06 15:59:19 -07:00
walter harms
aa8bda0db2 lcDefConv.c: fix use before check
* Do not use variables before checked for NULL.
* remove some superfluid spaces (Mark Kettenis)

Signed-off-by: Harms <wharms@bfs,de>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-07-06 10:12:20 -07:00
Alan Coopersmith
c0670e5d3a Start adding Unicode 7.0 support to compose table
New characters defined in http://www.unicode.org/charts/PDF/U1F300.pdf

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2014-06-18 22:03:13 -07:00
walter harms
a4679baaa1 rm redundant null checks
remove more redundant NULL checks
note that _XkbFree() is really Xfree()

Signed-off-by: Harms <wharms@bfs,de>
Reviewed-by: Rémi Cardona <remi@gentoo.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2014-06-18 08:27:33 +10:00