Commit graph

1672 commits

Author SHA1 Message Date
Alan Coopersmith
41a157dfee docs: remove XkbGetNameChanges
This function was documented but never implemented.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-08-20 15:27:48 -07:00
Alan Coopersmith
3442a8cee2 docs: remove XkbChangeIndicators and Xkb{Get,Note}IndicatorChanges
These functions were documented but never implemented.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-08-20 15:27:13 -07:00
Alan Coopersmith
b7a15d6c6e docs: XkbSAActionSetCtrls is really named XkbActionSetCtrls
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-08-20 14:31:20 -07:00
Alan Coopersmith
a1d8dd7267 docs: remove XkbGetStickyKeysOptions & XkbSetStickyKeysOptions
These functions were documented but never implemented.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-08-20 14:18:32 -07:00
Alan Coopersmith
bf13f19740 docs: remove XkbGetSlowKeysDelay & XkbSetSlowKeysDelay
These functions were documented but never implemented.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-08-20 14:09:35 -07:00
Alan Coopersmith
caab7321d2 docs: remove XkbGetAccessXTimeout & XkbSetAccessXTimeout
These functions were documented but never implemented.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-08-20 14:04:15 -07:00
Alan Coopersmith
843e89bd24 docs: remove XkbAllocDeviceLedInfo
This function was documented but never implemented.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-08-20 12:58:47 -07:00
Alan Coopersmith
2686dd7a9d docs: finish removing XkbGetBounceKeysDelay & XkbSetBounceKeysDelay
These functions were documented but never implemented.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-08-20 12:41:42 -07:00
G. Branden Robinson
188991fe7e configure script reports stray, confusing "yes"
Closes issue #194

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-08-19 12:54:26 -07:00
Benno Schulenberg
70f44d76fd nls: add, correct, and normalize some comments of compose sequences
Add comments for the Khmer digraphs, correct the comments for the
Arabic lam-alef decompositions, and normalize the comments for the
Breton digraphs and trigraphs.

Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
2023-08-17 16:44:16 +02:00
Benno Schulenberg
2a57c32e14 nls: harmonize the comments for compose sequences with combining accents
Replace the "WITH" with "plus" and lowercase the "AND" in the comments
for sequences with combining accents, to make it slightly clearer that
the resulting string consists of multiple code points.  Also, use the
word "COMBINING" in the names of the accents, so that these sequences
can be easily grepped, and drop the redundant word "ACCENT".

Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
2023-08-17 16:30:23 +02:00
Alan Coopersmith
757ab5ddd8 Remove XkbSetBounceKeysDelay.man from list of man pages to build
Fixes: f90e6bfa ("rm XkbSetBounceKeysDelay.man")

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-08-14 08:45:01 -07:00
Walter Harms
f90e6bface rm XkbSetBounceKeysDelay.man
there is no function XkbSetBounceKeysDelay().
It is listed in the specs but never implemented if someone
does it, feel free to get the file back.

closes issue #105
2023-08-13 22:42:50 +02:00
Benno Schulenberg
b2c3fb7b4d nls: use the shorter and more consistent name for the dead capital schwa
The `dead_SCHWA` name is available since xorgproto-2023.1, which was
released last month.
2023-07-13 21:12:24 +00:00
jmcwilliams403
e45dff5c2a NLS: Drop two math sequences, slightly clean up APL sequences.
* Two compose sequences containing `leftshoe` and `rightshoe` are
dropped as no keyboard layout uses these keysyms.
* The compose sequences for `therefore` and `because` in the APL
block are moved to ascending Unicode order.
* The comments for the compose sequences for `U2299` are corrected to
more accurately reflect its sequence nodes and its real name in
Unicode.
2023-07-08 06:41:35 +00:00
Benno Schulenberg
af2b6dfab1 nls: delete twenty eight compose sequences that cannot be typed
The letters `Ǫ` (U+01EA, O with ogonek), `Ȩ` (U+0228, E with cedilla),
`Ȯ` (U+022E, O with dot above), `Ạ` (U+1EA0, A with dot below), and
their lowercase forms do not occur in any layout of xkeyboard-config,
meaning that the compose sequences that contained these letters could
not be typed.  Delete their dead weight.

Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
2023-06-25 09:23:48 +02:00
Benno Schulenberg
ab0442d3fa nls: remove four unobvious and redundant compose sequences for ¥ (yen)
Composing ¥ with Y and a minus sign seems to have been added in analogy
to composing £ with L and a minus sign.  But ¥ clearly has a double line
through it, so using the equals sign for this is far more logical (and
those compose sequences of course exist).  Also, L plus an equals sign
produces ₤ (lira), not £ (sterling).  So... make these sequences more
consistent and allow composing ¥ only with Y/y plus an equals sign.

Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
2023-06-24 10:21:29 +02:00
Benno Schulenberg
933912480c nls: order a few compose sequences left first, and in mirroring pairs 2023-06-24 10:03:29 +02:00
Benno Schulenberg
178c4fefd3 nls: remove three duplicated combining acute accents
For the Cyrillic YU with combining acute accent, the string between
the quotes contained two U+0301 code points, whereas one is enough,
like for all the neighboring strings.

(This duplication was found by accident with `nano --mini --cons`.)
2023-06-16 09:40:19 +02:00
Alan Coopersmith
695e90ad26
libX11 1.8.6
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-06-15 09:14:48 -07:00
Alan Coopersmith
304a654a0d InitExt.c: Add bounds checks for extension request, event, & error codes
Fixes CVE-2023-3138: X servers could return values from XQueryExtension
that would cause Xlib to write entries out-of-bounds of the arrays to
store them, though this would only overwrite other parts of the Display
struct, not outside the bounds allocated for that structure.

Reported-by: Gregory James DUCK <gjduck@gmail.com>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-06-10 16:30:07 -07:00
Alan Coopersmith
71b08b8af2
libX11 1.8.5
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-05-31 17:45:40 -07:00
Benno Schulenberg
03ba014094 nls: use a slash instead of a combining solidus in compose sequences
First: combining diacritics like the combining long solidus (`U+0338`)
are not meant to be used in compose sequences.  Second: there is just
one layout in xkeyboard-config that contains the `U0338` character:
the deprecated/obsolete German T3 layout.  So, practically speaking,
these compose sequences with `U0338` were untypable.  So, use a slash
instead, that almost all layouts have.  This does require that the
sequence `<Compose> <less> <slash>` changes its meaning from backslash
to not-less-than (`≮`).  This seems like an acceptable sacrifice, as
the sequence `<Compose> <slash> <slash>` is a faster/easier sequence
for the backslash and most layouts contain a backslash already anyway.

Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
2023-05-23 22:18:07 +00:00
Benno Schulenberg
616701317e nls: delete six compose sequences that cannot be typed
None of the layouts in xkeyboard-config contain `Ohook` or `Uhook`
or `U+01D3` (U with caron) nor their lowercase forms, so these six
sequences cannot be typed on any known keyboard.

(Also, the target characters of the sequences with hook and horn
seem to occur only in Vietnamese, where the horn is part of the
vowel and the hook is a tonal mark.  All Vietnamese layouts in
xkeyboard-config contain `Ohorn` and `Uhorn`, and then the five
tonal marks as dead keys, `dead_hook` among them.  It does not
make sense to want to apply a horn to a vowel that already has
a tonal mark, nor is it possible with the Vietnamese layouts.)

Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
2023-05-22 11:35:57 +02:00
Benno Schulenberg
35d9621d78 nls: sort three sequences alphabetically in their group, like all others
Also, consistently form uppercase+lowercase pairs, like for most others.
2023-05-21 16:40:49 +02:00
Benno Schulenberg
208d550954 nls: make the Amharic compose sequences use the dead-vowel symbols
Last year, commit 488b156fe2 changed mistaken ASCII characters to the
code points that were actually used in the Ethiopian keyboard layout.

But those code points were mistaken too: the intention was not to use
the code point U+FE68 in the layout but the raw symbol code 0xfe68 --
and so on for the other codes.  The symbols that these raw codes were
intended to refer to were `dead_a` and friends.  But these dead vowels
were added under different codes: 0xfe80 to 0xfe8b.

So, correct the Amharic compose sequences to make use of the dead-vowel
symbols that were specifically added for them fifteen years ago.

(As soon as this is merged, xkeyboard-config wil be changed too to use
the dead vowels in the Ethiopian layout.)

Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
2023-04-16 17:48:54 +02:00
jmcwilliams403
96cbac89a0 nls: add compose sequence for capital schwa, and delete a deviant one
This sequence has already been defined in the iso8859-9e compose
file meant for the Azerbaijani locale, yet for the longest time, only
the lowercase form has existed in the en_US.UTF-8 master compose
file. This patch adds one sequence for Latin Capital Letter Schwa for
the Azerbaijani language.

Additionally, the sequence in the pt_BR.UTF-8 locale for capital
schwa has been removed as it uses two lowercase e's as part of its
sequence, which in practice would make typing both `Multi_key e e`
and `Multi_key E E` output capital schwa.
2023-04-06 14:30:17 +00:00
Benno Schulenberg
a6528d92b3 XSetScreenSaver.man: restore the part that was accidentally snipped
Four years ago, while removing private macros, commit fe46eb2871
unintentionally truncated the XSetScreenSaver manpage.  Restore
the snipped part (minus trailing spaces and a mistaken singular).

This fixes issue #187.

Reported-by: Sergio Gelato

Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
2023-04-04 14:15:05 +02:00
jmcwilliams403
eb166af8f9 NLS: Remove strange dead_cedilla cedi sign sequences
These sequences appear to be a leftover artifact of auto-generating
dead_currency sequences for cent and the cedi sign, where chaining
with ascii "c" vs "ccedilla" would output cent vs the cedi sign
respectively, but somehow this ended up creating strange sequences
with dead_cedilla followed by cent or the colon sign to output the
cedi sign, the latter sequence of which was already removed recently.
Additionally, sequences beginninng with dead_cedilla followed by
currency have been removed as they also appear to be related to these
artifacts. The two remaining sequences beginning with dead_currency
followed by dead_cedilla are maintained and moved to the stretch of
dead_currency sequences next to ccedilla, and sorted in order of
unicode decompositional complexity.
2023-03-29 16:14:07 +00:00
Benno Schulenberg
6e889f3467 nls: remove twenty two untypable Greek compose sequences
None of the keyboard layouts in xkeyboard-config contains accented
Greek characters like `Greek_alphaaccent` or `Greek_iotadieresis`
(nor in their Unicode hexadecimal forms, like U03AC or 0x10003CA),
so none of these sequences could be typed on an existing layout.

Also, the two sequences that started with `Greek_accentdieresis`
were plain wrong: making a spacing character into a dead key.

Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
2023-03-24 09:50:24 +01:00
Benno Schulenberg
98be4cb23a nls: remove four hundred and sixty untypable Greek compose sequences
None of the keyboard layouts in xkeyboard-config contains code points
in the range U+1F00..U+1FFF (the Greek Extended block), so none of the
removed sequences could be typed on an existing layout.

(Of course it is possible that some people have their own private layout
that contains some of the Greek Extended characters, but if they do,
then they can also define private compose sequences, when needed.)

Modern Greek does not use these characters with polytonic diacritics
anyway -- they are useful only for typing traditional Greek.

The useless sequences were removed with this command:

  sed -i '/<U1F..>/d' nls/en_US.UTF-8/Compose.pre

Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
2023-03-24 09:14:13 +01:00
Benno Schulenberg
ff8706a5ea nls: delete compose sequences that pointlessly mix upper and lower case
It's nice to have compose sequences for things like © and ®, but allowing
them to be composed also with letters of different case is unneeded.  It
is good enough to have sequences of only lowercase and only uppercase.

Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
2023-03-21 10:39:00 +01:00
jmcwilliams403
ca99e338a9 NLS: move dead-caron subscript compositions to the relevant Unicode block 2023-03-19 11:48:35 +01:00
jmcwilliams403
dac2985b34 NLS: implement the expansion of the six Breton N-graph keysyms
These one-keysym-to-multiple-characters sequences will allow fully defining
the Breton keyboard layout, without needing custom compose sequences.
2023-03-16 16:27:21 +01:00
Alan Coopersmith
e45ca7b41d gitlab CI: add workflow rules
Needed due to the gitlab config changes described in:
 https://gitlab.freedesktop.org/freedesktop/freedesktop/-/issues/438

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-03-14 17:25:40 +00:00
jmcwilliams403
72eeeb6ded NLS: move long S compositions to respective blocks 2023-03-05 13:37:28 +00:00
Alan Coopersmith
8bbbed75a2 configure: Use LT_INIT from libtool 2 instead of deprecated AC_PROG_LIBTOOL
AC_PROG_LIBTOOL was replaced by LT_INIT in libtool 2 in 2008,
so it's time to rely on it.

Clears autoconf warnings:

configure.ac:20: warning: The macro `AC_PROG_LIBTOOL' is obsolete.
configure.ac:20: You should run autoupdate.
m4/libtool.m4💯 AC_PROG_LIBTOOL is expanded from...
configure.ac:20: the top level

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-03-04 13:13:29 -08:00
Alan Coopersmith
53bf8584e8 configure: replace deprecated AC_HELP_STRING with AS_HELP_STRING
This silences an autoconf warning.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-02-06 14:11:09 -08:00
Alan Coopersmith
31a9451111 configure: raise minimum autoconf requirement to 2.70
Needed for builds on NetBSD to work correctly, since it depends on
AC_USE_SYSTEM_EXTENSIONS defining _OPENBSD_SOURCE to expose the
prototype for reallocarray() in the system headers.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-02-06 13:32:14 -08:00
Alan Coopersmith
1ba02f878f gitlab CI: Add libtool to required packages
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-02-06 13:32:14 -08:00
Alan Coopersmith
fc5ec8edda
libX11 1.8.4
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-02-04 12:02:29 -08:00
Alan Coopersmith
ba548ed168 configure: options summary should say "libX11", not just "X11"
We're not configuring the entire window system here, just one library

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-01-15 11:39:20 -08:00
GaryOderNichts
eb1c272ab5 Fix a9e845 and 797755 Allow X*IfEvent() to reenter libX11 2023-01-14 16:59:54 +00:00
Benno Schulenberg
0c7c4ce875 nls: add two compose sequences for capital B with stroke, for consistency
Two compose sequences (with plain ASCII characters) existed for
the lowercase b with stroke (ƀ) but not for the capital one (Ƀ).

This addresses part of issue #166.

Reported-by: J. McWilliams

Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
2023-01-07 17:12:22 +00:00
Benno Schulenberg
a80ef097e7 nls: delete twelve compose sequences that cannot be typed
There is not any keyboard layout (in xkeyboard-config) that contains
`obelowdot` or `ubelowdot`, so having compose sequences that use these
symbols is pointless.

There are some layouts that contain `otilde` (and one that contains
`utilde`), but those layouts then do not contain `dead_horn`, so
the compose sequences that combine the two symbols are pointless.

There are a few layouts that contain U+0256, U+025C, U+025F or U+0279,
but those layouts do not contain `dead_hook`, so the compose sequences
that combine the latter with one of the former are pointless.

Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
2023-01-07 17:12:22 +00:00
Benno Schulenberg
078cc39f05 nls: delete 88 compose sequences that have the accents in the wrong order
The various compose sequences with the accents in their proper order
(the highest placed accent first) continue to exist.

Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
2023-01-07 17:12:22 +00:00
Benno Schulenberg
aa5ef0ba80 nls: move the compose sequences for Ș and Ț to the fitting Unicode block
This addresses a side note of issue #166.

Reported-by: J. McWilliams

Signed-off-by: Benno Schulenberg <bensberg@telfort.nl>
2023-01-07 17:12:22 +00:00
Alan Coopersmith
82c25879b7 xlibi18n: Update Imake instructions to autoconf equivalent in comments
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2023-01-07 16:59:47 +00:00
Yuxuan Shui
88399e01be Revert "Update XPutBackEvent() to support clients that put back unpadded events"
This reverts commit d6d6cba902.

The reverted commit intended to fix the problem where an unpadded X
event struct is passed into XPutBackEvent, by creating a padded struct
with _XEventToWire and _XWireToEvent. However, _XWireToEvent updates the
last sequence number in Display, which may cause xlib to complain about
lost sequence numbers.

IMO, the problem that commit tried to solve is a bug in the client
library, and workaround it inside Xlib is bad practice, especially given
the problem it caused. Plus, the offender cited in the original commit
message, freeglut, has already fixed this problem.

Fixes: #176 #174

Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
2023-01-03 15:23:07 +00:00
Alan Coopersmith
48487c4b90
libX11 1.8.3
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2022-12-15 14:56:28 -08:00