Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.debian.user > #224662
| From | davidson <davidson@freevolt.org> |
|---|---|
| Newsgroups | linux.debian.user |
| Subject | Re: Using .XCompose |
| Date | 2020-07-09 23:50 +0200 |
| Message-ID | <AqMAx-8gV-3@gated-at.bofh.it> (permalink) |
| References | <Aps1b-c3-3@gated-at.bofh.it> <Aps1b-c3-1@gated-at.bofh.it> <ApEOJ-839-3@gated-at.bofh.it> <ApPqO-686-19@gated-at.bofh.it> <ApXy1-2Jo-7@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
[Multipart message — attachments visible in raw view] - view raw
I have conducted an experiment with the following ~/.XCompose file,
and tried to document it relatively thoroughly below.
It is my hope that OP and/or others may find some of this
(unfortunately rather voluminous) information helpful or at least
somewhat interesting, though it is difficult for me to know precisely
whether or how they will be able to use it.
Of course, to interpret any meaning from the results presented here,
the context/environment in which the test was conducted matters
greatly. Details about my system are attached, in the file
"system_synposis_bbhuit.txt". (In case that attachment gets lost
somehow, I will simply post the same information in a follow-up
message.)
%% THREE XCOMPOSE RULES to test
$ cat ~/.XCompose
include "%L"
<U0D19> : "ങ്ങ" # Ajith's auto-geminate rule, (U0D19) => (U0D19) (U0D4D) (U0D19)
<Multi_key> <s> <x> : "✄" # (U2704) white scissors, h/t David Wright
<Z> : "ARGA WARGA IN THE DARGA instead of Z"
I started an X Window session, and then in a few applications I tested
whether the three custom rules above were effective.
For the tests, I used a couple of terminal emulators for X (xterm and
mlterm) and a couple of graphical web browsers (firefox-esr and
qutebrowser):
davidson@bbhuit:0 ~$ dpkg-query -l --no-pager xterm mlterm firefox-esr qutebrowser
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============-====================-============-============================================================
ii firefox-esr 68.10.0esr-1~deb10u1 amd64 Mozilla Firefox web browser - Extended Support Release (ESR)
ii mlterm 3.8.6-2 amd64 MultiLingual TERMinal
ii qutebrowser 1.6.1-2 all Keyboard-driven, vim-like browser based on PyQt5
ii xterm 344-1 amd64 X terminal emulator
%% ARGA WARGA
The third rule ('Z' => "ARGA WARGA...Z") was easiest to test:
1. Open the application. (If necessary, navigate to a text entry field.)
2. (While under "us" keyboard layout) strike the key labeled "Z" on my
standard US laptop keyboard
3. Observe whether
ARGA WARGA IN THE DARGA instead of Z
is printed.
The two terminal emulators passed this test. The graphical web browsers failed
in an interesting way. Instead of displaying
ARGA WARGA IN THE DARGA instead of Z
in the text entry field, they displayed just
A
Also, upon starting up (but only on the first start-up since
installation of the three rules in ~/.XCompose) , firefox-esr issued
the following errors, which appear to be explanatory:
(firefox-esr:11619): Gtk-WARNING **: 16:27:05.630: GTK+ supports to output one char only:
"ങ്ങ" # Ajith's auto-geminate rule, (U0D19) => (U0D19) (U0D4D) (U0D19):
<U0D19> : "ങ്ങ" # Ajith's auto-geminate rule, (U0D19) => (U0D19) (U0D4D) (U0D19)
(firefox-esr:11619): Gtk-WARNING **: 16:27:05.630: GTK+ supports to output one char only:
"ARGA WARGA IN THE DARGA instead of Z":
<Z> : "ARGA WARGA IN THE DARGA instead of Z"
(I have split each error into three separate lines above to improve legibility.)
Although both web browsers performed identically, failing in the same
way, only firefox-esr issued this explanatory error message.
Unlike firefox-esr, qutebrowser does not use libgtk (do "apt-cache
depends qutebrowser" to see its dependencies), but both graphical web
browsers failed this test identically.
%% WHITE SCISSORS
The second rule (David Wright's white scissors rule) was tested as
follows:
1. Open the application. (If necessary, navigate to a text entry field.)
2. Under "us" keyboard layout, hold down the compose key. Strike the
key labeled "S" on my standard US laptop keyboard. Release the
compose key. Strike the key labeled "X".
3. Observe whether
✄
is printed.
All four applications passed this test. (I should mention that I have
noticed that sometimes when I use the compose key, it seems to get
ignored on the first try. It happens frequently enough that it has
become second nature to me to simply backspace and try again, when
this happens. Whether this is human error, or something else, is not
something I have spent time investigating. Whatever the cause, it does
not trouble me more than other commonly self-inflicted typos do.)
NB: If, like me, you occasionally confuse the Ctrl key with the
compose key, then keep in mind that when testing this rule in a
terminal emulator, that typing Ctrl-s (presumably by accident) may
well stop the terminal from echoing entered characters to the display
until you enter Ctrl-q to resume normal terminal operation. (That is
to say, Ctrl-s doesn't "break your keyboard", it only pauses your
terminal's printout to the display until you resume it with Ctrl-q.)
%% AUTO-GEMINATION
Finally. The first rule in the ~/.XCompose file above
<U0D19> : "ങ്ങ" # Ajith's auto-geminate rule, (U0D19) => (U0D19) (U0D4D) (U0D19)
I tested as follows (after installing the "Lohit TrueType font for
Malayalam Language" package, fonts-lohit-mlym):
1. I opened an xterm (uxterm, actually) and issued the following
command to alter the X Window display keymap:
$ setxkbmap -display $DISPLAY -layout us,in -variant ,mal
This configures --as my alternate keyboard layout in the current X
display-- the variant "mal" (malayalam) of the "in" (indian)
keyboard layout, so that switching to the alternate layout will
permit me to enter malayalam characters.
On my system, the longer command below is equivalent to the
command above, because the setting for XKBOPTIONS that the longer
command specifies (with the -option flag), is already set as a
default in my /etc/default/keyboard (see attached system synopsis
for details of this):
$ setxkbmap -display $DISPLAY -layout us,in -variant ,mal -option grp:caps_toggle
I mention this equivalence because the longer command makes
explicit whick key permits me to switch from my main "us" keyboard
layout to the alternate layout "in.mal" (and back again).
NB: In these commands, make note of the commas. In particular the
comma in ",mal" is not a typo.
NBB: I believe at least one other poster here correctly urged
caution when experimenting with setxkbmap. You can render your
keyboard non-functional in the X session. Have a plan for shutting
down the X session without the use of your keyboard.
2. To test applications besides xterm itself, I launched the
application from the xterm just opened. (When testing xterm, I
skipped this step.)
$ mlterm # or firefox-esr or qutebrowser
3. If necessary, navigate to a text entry field.
4. Strike the capslock key to switch to the alternate keyboard
layout configured in step 1.
5. Hold down the shift key. Strike the key labeled "U" on my standard
US laptop keyboard.
6. Observe whether
ങ്ങ
is printed, according to the custom auto-geminate rule in ~/.XCompose.
The terminal emulators passed this test. The graphical web browsers
failed, instead printing only
ങ
The error message from firefox-esr above seems to suggest why that is.
Another thing I think is interesting is that while the terminal
emulators did pass this test and the browsers failed, it is only the
graphical web browsers which seem to transform/meld a typed sequence
of
"ങ" followed by "്" followed by "ങ"
into what appears (to my utterly ignorant eye) to be a "freshly
synthetic" glyph. (That three-character sequence is typed, on my
standard US laptop keyboard under the "in.mal" keyboard layout, by
striking the "U" key while holding down shift, then striking the "D"
key (unshifted), and then again striking the "U" key while holding
down shift.)
Finally, in case it is of interest to anyone, in the attached file
"xev_output_annotated.txt" is some xev(1) output with commentary that
gives a detailed close-up of performing steps 4 through 6 in an
xterm. (As with the system synopsis, if it happens to "get lost" I'll
just post it the message body of a follow-up.)
Back to linux.debian.user | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-06 07:40 +0200
Re: Using .XCompose Greg Wooledge <wooledg@eeg.ccf.org> - 2020-07-06 14:30 +0200
Re: Using .XCompose Zenaan Harkness <zenaan@freedbms.net> - 2020-07-06 14:50 +0200
Re: Using .XCompose davidson <davidson@freevolt.org> - 2020-07-06 21:20 +0200
Re: Using .XCompose davidson <davidson@freevolt.org> - 2020-07-06 22:40 +0200
Re: Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-07 17:20 +0200
Re: Using .XCompose davidson <davidson@freevolt.org> - 2020-07-07 08:40 +0200
Re: Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-07 17:20 +0200
Re: Using .XCompose davidson <davidson@freevolt.org> - 2020-07-09 23:50 +0200
Re: Using .XCompose [resend of xev_output_annotated.txt] davidson <davidson@freevolt.org> - 2020-07-10 03:40 +0200
Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-10 10:50 +0200
Re: Using .XCompose davidson <davidson@freevolt.org> - 2020-07-11 10:40 +0200
Re: Using .XCompose davidson <davidson@freevolt.org> - 2020-07-11 12:30 +0200
Re: Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-12 17:00 +0200
Re: Using .XCompose David Wright <deblis@lionunicorn.co.uk> - 2020-07-13 06:00 +0200
Re: Using .XCompose Greg Wooledge <wooledg@eeg.ccf.org> - 2020-07-13 14:00 +0200
Re: Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-13 20:30 +0200
Re: Using .XCompose Greg Wooledge <wooledg@eeg.ccf.org> - 2020-07-13 20:40 +0200
Re: Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-13 20:50 +0200
Re: Using .XCompose David Wright <deblis@lionunicorn.co.uk> - 2020-07-13 21:50 +0200
Re: Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-14 05:40 +0200
Fw: Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-15 16:50 +0200
Fw: Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-15 17:10 +0200
Fw: Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-15 17:20 +0200
Re: Using .XCompose davidson <davidson@freevolt.org> - 2020-07-16 01:30 +0200
Re: Using .XCompose davidson <davidson@freevolt.org> - 2020-07-16 02:40 +0200
Re: Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-16 20:40 +0200
how u mine 4 utf8 [was Re: Using .XCompose] davidson <davidson@freevolt.org> - 2020-07-18 03:20 +0200
UTF-8 Everywhere -- Re: how u mine 4 utf8 [was Re: Using .XCompose] Zenaan Harkness <zenaan@freedbms.net> - 2020-07-18 07:40 +0200
Re: how u mine 4 utf8 [was Re: Using .XCompose] davidson <davidson@freevolt.org> - 2020-07-18 09:20 +0200
Re: how u mine 4 utf8 [was Re: Using .XCompose] Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-19 13:00 +0200
Fw: how u mine 4 utf8 [was Re: Using .XCompose] Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-19 12:50 +0200
Re: Fw: how u mine 4 utf8 [was Re: Using .XCompose] Tom Browder <tom.browder@gmail.com> - 2020-07-19 13:10 +0200
Re: how u mine 4 utf8 [was Re: Using .XCompose] Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-19 13:50 +0200
sed:awk:perl::rock:paper:chainsaw [was Re: Using .XCompose] davidson <davidson@freevolt.org> - 2020-07-18 12:10 +0200
Re: sed:awk:perl::rock:paper:chainsaw [was Re: Using .XCompose] Zenaan Harkness <zenaan@freedbms.net> - 2020-07-18 12:50 +0200
Re: sed:awk:perl::rock:paper:chainsaw [was Re: Using .XCompose] William Michels <wjm1@caa.columbia.edu> - 2020-07-18 22:00 +0200
Re: sed:awk:perl::rock:paper:chainsaw [was Re: Using .XCompose] Andrei POPESCU <andreimpopescu@gmail.com> - 2020-07-18 13:20 +0200
Re: sed:awk:perl::rock:paper:chainsaw [was Re: Using .XCompose] songbird <songbird@anthive.com> - 2020-07-18 21:00 +0200
Re: sed:awk:perl::rock:paper:chainsaw [was Re: Using .XCompose] <tomas@tuxteam.de> - 2020-07-18 16:00 +0200
Re: sed:awk:perl::rock:paper:chainsaw [was Re: Using .XCompose] mick crane <mick.crane@gmail.com> - 2020-07-18 22:40 +0200
Re: sed:awk:perl::rock:paper:chainsaw [was Re: Using .XCompose] <tomas@tuxteam.de> - 2020-07-18 23:10 +0200
Re: sed:awk:perl::rock:paper:chainsaw [was Re: Using .XCompose] mick crane <mick.crane@gmail.com> - 2020-07-18 23:30 +0200
Re: sed:awk:perl::rock:paper:chainsaw [was Re: Using .XCompose] <tomas@tuxteam.de> - 2020-07-19 10:40 +0200
Re: sed:awk:perl::rock:paper:chainsaw [was Re: Using .XCompose] mick crane <mick.crane@gmail.com> - 2020-07-20 13:20 +0200
Re: sed:awk:perl::rock:paper:chainsaw [was Re: Using .XCompose] David Christensen <dpchrist@holgerdanske.com> - 2020-07-19 01:50 +0200
Re: sed:awk:perl::rock:paper:chainsaw [was Re: Using .XCompose] Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-19 12:50 +0200
Re: sed:awk:perl::rock:paper:chainsaw [was Re: Using .XCompose] David Christensen <dpchrist@holgerdanske.com> - 2020-07-19 23:30 +0200
Re: sed:awk:perl::rock:paper:chainsaw [was Re: Using .XCompose] Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-19 13:40 +0200
Re: sed:awk:perl::rock:paper:chainsaw [was Re: Using .XCompose] William Michels <wjm1@caa.columbia.edu> - 2020-07-19 21:50 +0200
Re: sed:awk:perl::rock:paper:chainsaw [was Re: Using .XCompose] David Wright <deblis@lionunicorn.co.uk> - 2020-07-23 04:00 +0200
Re: sed:awk:perl::rock:paper:chainsaw [was Re: Using .XCompose] songbird <songbird@anthive.com> - 2020-07-23 12:50 +0200
Re: Using .XCompose davidson <davidson@freevolt.org> - 2020-07-16 02:00 +0200
Re: Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-16 20:40 +0200
Re: Using .XCompose David Wright <deblis@lionunicorn.co.uk> - 2020-07-11 17:00 +0200
Tex characters Teemu Likonen <tlikonen@iki.fi> - 2020-07-11 18:20 +0200
Re: Using .XCompose davidson <davidson@freevolt.org> - 2020-07-11 22:40 +0200
Re: Using .XCompose Greg Wooledge <wooledg@eeg.ccf.org> - 2020-07-13 14:00 +0200
Re: Using .XCompose davidson <davidson@freevolt.org> - 2020-07-16 07:50 +0200
Re: Using .XCompose davidson <davidson@freevolt.org> - 2020-07-11 18:10 +0200
Re: Using .XCompose Greg Wooledge <wooledg@eeg.ccf.org> - 2020-07-20 15:30 +0200
Re: Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-20 15:30 +0200
Re: Using .XCompose David Wright <deblis@lionunicorn.co.uk> - 2020-07-20 18:20 +0200
Re: Using .XCompose davidson <davidson@freevolt.org> - 2020-07-10 12:50 +0200
Re: [offlist] posting style [was Re: Using .XCompose] Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-08 05:00 +0200
Re: [offlist] posting style [was Re: Using .XCompose] Andrei POPESCU <andreimpopescu@gmail.com> - 2020-07-08 07:00 +0200
Re: [not-so-offlist] posting style [was Re: Using .XCompose] davidson <davidson@freevolt.org> - 2020-07-08 07:10 +0200
Re: [offlist] Re: Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-08 05:00 +0200
Re: [offlist] Re: Using .XCompose davidson <davidson@freevolt.org> - 2020-07-08 05:20 +0200
Re: [offlist] Re: Using .XCompose Zenaan Harkness <zenaan@freedbms.net> - 2020-07-08 05:40 +0200
Re: [offlist] Re: Using .XCompose davidson <davidson@freevolt.org> - 2020-07-08 08:00 +0200
Re: Using .XCompose David Wright <deblis@lionunicorn.co.uk> - 2020-07-07 00:40 +0200
tangent on man page locations [was Re: Using .XCompose] davidson <davidson@freevolt.org> - 2020-07-07 01:10 +0200
Re: tangent on man page locations [was Re: Using .XCompose] David Wright <deblis@lionunicorn.co.uk> - 2020-07-07 03:50 +0200
Re: Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-07 11:50 +0200
Re: Using .XCompose Greg Wooledge <wooledg@eeg.ccf.org> - 2020-07-07 13:40 +0200
Re: Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-08 16:30 +0200
Re: Using .XCompose David Wright <deblis@lionunicorn.co.uk> - 2020-07-09 02:20 +0200
Re: Using .XCompose Zenaan Harkness <zenaan@freedbms.net> - 2020-07-09 04:20 +0200
Re: Using .XCompose Zenaan Harkness <zenaan@freedbms.net> - 2020-07-08 01:50 +0200
Re: Using .XCompose davidson <davidson@freevolt.org> - 2020-07-08 02:30 +0200
Fw: Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-08 05:10 +0200
Re: Using .XCompose Ajith R <ajithramayyan@yahoo.co.in> - 2020-07-08 18:40 +0200
Re: Using .XCompose Zenaan Harkness <zenaan@freedbms.net> - 2020-07-09 04:00 +0200
Re: Using .XCompose Zenaan Harkness <zenaan@freedbms.net> - 2020-07-10 02:40 +0200
Re: Using .XCompose The Wanderer <wanderer@fastmail.fm> - 2020-07-10 02:50 +0200
Re: Using .XCompose davidson <davidson@freevolt.org> - 2020-07-10 05:00 +0200
csiph-web