From: kalle <kalle@projektwerkstatt.de> To: Alexey Gladkov <gladkov.alexey@gmail.com>, Linux console tools development discussion <kbd@lists.altlinux.org> Subject: Re: [kbd] man keymaps Date: Sun, 6 Aug 2017 18:20:19 +0200 Message-ID: <6fa22831-909e-5b88-5080-f28ac18f3ae9@projektwerkstatt.de> (raw) In-Reply-To: <20170806122848.GB28006@comp-core-i7-2640m-0182e6.fortress> >> *keysym: what does the term stand for? why 'symbol'? what does 'keyboard >> actions' mean? is keyboard induced action possibly better? how is this >> set of actions related to the specific kernel (driver?)? > what do you mean by "specific kernel driver" ? i think there are a lot of different kernels (versions). I don't really know what a keyboard driver is and does. But I suppose that there are different ones. If the kernel driver translates scancodes into keyboard actions, I assume the latter are driver-dependant. This is what I meant by "specific kernel driver". >> *'outputting character codes' -> explain more precisely what is meant >> here by 'character codes' > why ? what irritates me, is that on one side I associate a binary/hexadecimal code to the term "character code" (who according to the keyboard layout is interpreted as a different character), on the other side the command dumpkeys, who describes the keyboard actions, names some actions `A' or `a',`b'. I assume, that a symbol like `a' describes the keycode corresponding to the asciicode, but with another code , the symbol `a' could mean another letter. >> *first the term 'keysyms' should be explained in detail, before >> explaining special keysyms as modifiers are, e.g. the section "keysyms >> can be given in decimal, octal" should be before the modifier part > > why ? well, because I think the general should come before the special. >> *the modifier-part is in my opinion badly explained - I roughly propose >> the following: >> to every key there are 2^8=256 (?) possibilities/modes of outputting >> symbols (defined by the kernel driver?) >> The 2^8 modes can be represented by eight binary digits, or interpreted >> as a binary number with 8 (?) digits, e.g. 010000101. The first digit >> standing , the last one for units of 2^0=1, in this example >> 0*2^7+0*2^6+0*2^5+0*2^4+0*2^3+1*2^2+0*2^1+1*2^0=133. > > This description confuses even me. I believe that it is as described > modifiers are now quite clear. There is a mistake in my explanation - it should say: "The first digit stands for units of 2^8=256 […]" Is it better now? Is my explanation technically correct? What irritates me, is that each key can -according to the modifiers switched - produce 256 different keyboard actions, as there are 9 modifiers and should therefore be 2^9=512 possibilities. My goal was to explain the relationship between the differenlty named modifiers and the 256 columns of key-actions associated to keys, e.g. that one finds the result of the combination of Control(2^2=4)-Alt(2^3=8)-Shift(2^0=1)-`g' in the 8+4+1=13 th column of the scan code `28' (german keyboard). The explanation continues in the part below. >> The different digits are called modifiers, since by combination of all >> their different states (0 or 1) they are able to produce 256 (?) modes, >> where the default one is when all modifiers are off (=0) so 00000000 >> binary is also 0 decimal number. These modifiers are keysyms thus their >> state can be changed by typing some keys and out of historical >> development have been given following names: >> >> modifier name power of 2 decimal value >> >> Shift 0 1 >> AltGr Alternate Graph 1 2 >> ics >> Control 2 4 >> Alt 3 8 >> ShiftL left Shift key 4 16 >> ShiftR right Shift key 5 32 >> CtrlL left Control key6 64 >> CtrlR right Control k.7 128 >> CapsShift 8 256 > > You want to make a describe the binary arithmetic for noobs ? see above. But of course, I think it shoudn't be necesseary to know binary arithmetics already to learn unix. If you know a manpage, where it is described already, it would make sense to link to it. Furthermore, I want to stress on the 'historical background' of some terms as the names of the modifiers. As the previous author as I suppose wanted to demystify them by describing them as "completely arbitrarily", which is not really correct. >> *I don't understand the example of the part starting with "Note that you >> should be very careful[…]",because it tells that the Control modifier >> stays switched on, until it is produced again by typing in the same key. > > I think this paragraph is quite clear in manpage. It describes what can > happen if the keymap is wrong. I mean - the Control modifier doesn't stay switched on, if i typed it once,doesn't it? >> *To the sentence "these are actually being defined" add "by the map >> specification line, see above" >> *to "it has a special meaning" add: "to loadkeys (1)"? > > Patches are welcome! :) thanks kalle
next prev parent reply other threads:[~2017-08-06 16:20 UTC|newest] Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top 2017-07-23 5:51 kalle 2017-08-06 12:28 ` Alexey Gladkov 2017-08-06 16:20 ` kalle [this message] 2017-08-11 12:04 ` Oleg Bulatov
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=6fa22831-909e-5b88-5080-f28ac18f3ae9@projektwerkstatt.de \ --to=kalle@projektwerkstatt.de \ --cc=gladkov.alexey@gmail.com \ --cc=kbd@lists.altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Linux console tools development discussion This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/kbd/0 kbd/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 kbd kbd/ http://lore.altlinux.org/kbd \ kbd@lists.altlinux.org kbd@lists.altlinux.ru kbd@lists.altlinux.com public-inbox-index kbd Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.kbd AGPL code for this site: git clone https://public-inbox.org/public-inbox.git