From 7c7a8e8835744dfdcda821e79d431cb417475107 Mon Sep 17 00:00:00 2001 From: DreymaR <7303297+DreymaR@users.noreply.github.com> Date: Mon, 8 May 2023 17:10:01 +0200 Subject: [PATCH] Update READMEs * Tidied up the TODO/HOLD/DONE lists some. * Documentation fiddling. --- README.md | 9 +++-- xkb-data_xmod/README.md | 75 ++++++++++++++++-------------------- xkb-data_xmod/xkb/symbols/bg | 4 +- xkb-data_xmod/xkb/symbols/gr | 4 +- xkb-data_xmod/xkb/symbols/il | 9 +++-- 5 files changed, 49 insertions(+), 52 deletions(-) diff --git a/README.md b/README.md index 4efa811..d7e2a60 100644 --- a/README.md +++ b/README.md @@ -45,6 +45,8 @@ Tips - You can enable FKey Extend by activating the [include "extend(lv5_fk)"][BB-ExtFK] bit (delete the trailing slashes) in the `symbols/extend` file. - If you had already installed the BigBag you must either edit the file in its target X11 directory, or edit and then reinstall the files. - In theory, we could make such shortcuts part of Extend so you can have both them and the Multimedia key shortcuts. I'll think about it. +* To just get Extend with the currently active layout, use `setxkbmap -v 9 -option "" -option "misc:extend,lv5:caps_switch_lock,compose:menu"`. + - The first `-option ""` clears any existing option settings, while the one with non-empty arguments add to existing options. * The 'Keep Symbols' layouts are intended for those who aren't ready to give up their symbol mappings. Not the best option, but "training wheels". - The Unified 'us' variants are usually much better. The 'ks' ones will miss out on some symbols and many dead keys. * The `xkb-data` package is very consistent between distros. I've use [Debian xkb-data][XKB-DebS], sometimes with some Ubuntu updates. @@ -140,11 +142,10 @@ _DreymaR_ [XKBgitLb]: https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config (XKB-config on GitLab) [XKB-pkgs]: https://pkgs.org/download/xkb-data (pkgs.org xkb-data page) [XKB-DebS]: https://packages.debian.org/sid/xkb-data (Debian Sid xkb-data download) -[XKB-Ub18]: https://ubuntu.pkgs.org/18.04/ubuntu-main-amd64/xkb-data_2.23.1-1ubuntu1_all.deb.html (Ubuntu 18.04 LTS xkb-data page) -[XKB-Ub22]: https://ubuntu.pkgs.org/22.04/ubuntu-main-amd64/xkb-data_2.33-1_all.deb.html (Ubuntu 22.04 LTS xkb-data page) -[XKB-2351]: https://debian.pkgs.org/sid/debian-main-amd64/xkb-data_2.35.1-1_all.deb.html (Debian Sid xkb-data page, 2022-12) [BigBag]: https://dreymar.colemak.org/ (DreymaR's Big Bag of Keyboard Tricks) [BigBag4X]: http://forum.colemak.com/viewtopic.php?id=1438 (DreymaR's old BigBag for Linux/XKB on the Colemak Forum) -[BB-ExtFK]: /xkb-data_xmod/xkb/symbols/extend#L66 (BigBag4XKB – FKkey include in symbol/extend file) [BBREADME]: README.md (main BigBag4XKB README) [xmREADME]: /xkb-data_xmod/README.md (xmod BigBag4XKB README) + +[XKB-2351]: https://debian.pkgs.org/sid/debian-main-amd64/xkb-data_2.35.1-1_all.deb.html (Debian Sid xkb-data page, 2022-12) +[BB-ExtFK]: /xkb-data_xmod/xkb/symbols/extend#L66 (BigBag4XKB – FKkey include in symbol/extend file) diff --git a/xkb-data_xmod/README.md b/xkb-data_xmod/README.md index 60ab272..b42b3a1 100644 --- a/xkb-data_xmod/README.md +++ b/xkb-data_xmod/README.md @@ -25,37 +25,22 @@ They work fine with other versions though, in nearly all cases. TODO: ----- -* Move the ks variants out of the official sortiment? They're rather bad anyway, and may confuse newcomers? - - Leave them to be added by a simple modding, could have links to them as commented-out lines in the symbols/colemak file or something. - -* Check out Space key implementation now - - `NOTE: The basic layout didn't define some keys (no Space?); I've no idea why.` is found in some locales, which then add a space def. - - This should be handled universally in the colemak file now, though? Shouldn't it? Maybe not for phonetic variants? - * Update xkb-data - 2.35.1.1 as of 2023-05 - Use the [freedesktop.org GitLab repo][XKBgitLb] as that's the freshest there is? But it has the rules in raw/uncompiled format. -* Test the XKB BigBag on a Wayland system? - * Sym mod implementation - Should the Sym mod be implemented as hard (model)? No, it should not rearrange Extend. - - Better to make a new symbols/symbols file, and put everything in there. + - Better to make a new symbols/symbolkeys file, and put everything in there. - Then select sym mod according to wide status, as an option. - Update setkb.sh to handle all that. * Make a patch file of the mod dir. -* Update most forum.colemak.com links with new BigBag links: Locale topic (id=1458) -> https://dreymar.colemak.org/variants.html#locales etc. - - Also, fix the attributions like this: - // 2006-01-01 Shai Coleman http://colemak.com/ (Public Domain) : The Colemak keyboard layout. - // 2012-01-01 OEystein "DreymaR" Bech-Aase, formerly Bech Gadmar : New shift levels 3-4. - - And fix the `for xkb on X.Org Server 7.x` bits, to `for the XKeyboardConfig xkb-data package`. Only fix mine, not Shai/Bucao/Norman's. - * Better instructions for Wayland? - Depends on your Wayland Compositor (Sway is common?) https://wiki.archlinux.org/title/wayland#Compositors - - Didn't we have some good ones at the Colemak Discord? Where? + - Some good ones were posted at the Colemak Discord. https://discord.com/channels/409502982246236160/1059814838408319026/1059866421066203257 * Lockable lv5 modifier, for users who want Extend-lock. Maybe Shift+Extend to lock it, or something? @@ -69,24 +54,17 @@ TODO: - If so, edit rules components accordingly, and consider editing all locale variants to include them * Not all distros source `~/.bashrc` by default. Seems that `~/.xinitrc` is mostly used by xinit and not generally sourced? - - What about `~/.xsession` or `~/.profile`? Seems to be mostly legacy; used by `startx`? It's messy. + - What about `~/.xsession`, `~/.xprofile` or `~/.profile`? Seems to be mostly legacy; used by `startx`? It's messy. - Look in `/etc/X11/Xsession` to see how thing are run at startup? - But `~/.Xresources` seems like a good option (and is sourced by xinitrc too)? - Its format is different though. And it doesn't list keyboard layout as one of its intended purposes. + - There is the option of entering the file name manually. But the BigBag default should be the most sensible/common choice. * Add some easy way of returning to the old xkbmap setup? But how? Can't unset settings, so we'd have to store it somehow? Or just let them go to us/us? - Could write setxkbmap output to a file. Check it isn't overwritten, like the normal backup. - Make a restore to default layout shortcut instead? It's only an alias for `setkb 4n/5n`. Maybe `resetkb 4/5`? -* Transition many ###.xml changes to ###.extras.xml? Other Colemak locale variants reside there. But it's a mess: Many (such as Norwegian) are in the main file! - - It might be nice to keep all the BigBag locales in one place though? Or not? - -* To get Extend with the currently active layout, use `setxkbmap -v 9 -option "" -option "misc:extend,lv5:caps_switch_lock,compose:menu"`. - - The first `-option ""` clears any existing option settings, while the one with non-empty arguments add to existing options. - -* Add lv5:lalt_switch_lock for LALT-Extend. - -* Add compose:102? Inconsistent between ISO and ANSI, just add a pro-tip. +* Add a lv5:lalt_switch_lock definition for LALT-Extend. * The Curl(DH) model implementation has to go as it may mess w/ QWERTY. Instead, I should use two Extend variants. - It also seems very hard for some newcomers to understand. So yes, I should have the Angle mod only and not CurlAngle models? @@ -98,6 +76,7 @@ TODO: - Separate Extend-Angle includes! Similar to how EPKL handles this problem. * Check out the compose:102 option. This would be similar to what I've used in EPKL for Windows! It's also present in some other layouts. + - Add compose:102 in the default setkb options? Inconsistent between ISO and ANSI, just add a pro-tip? * Echo the setxkbmap command when using setkb.sh, for ease of troubleshooting! Also make the script able to output the command for piping. @@ -131,9 +110,6 @@ TODO: - "Usually, all modifiers introduced in 'modifiers=' list are used for shift level calculation and then discarded." - Does this mean that LevelFive should've been discarded but isn't? Is it an XKB bug? -* Migrate from `~/.bashrc` to `~/.xprofile`? The latter is more appropriate, but which setups source it and which ones don't? - - Include both? Or, people can just enter the file names. - * Could use an key code alias defined in keycodes/evdev (alias = ), instead of the code? * Test this method for using a local dir, by Bjørnar "zkf" Hansen: @@ -151,9 +127,6 @@ TODO: - "I made that tweak to setkb and some small changes to use a hardcoded $HOME dir path, and it appears good." - Another attempt by birdspider, with some tripups and solutions: https://github.com/DreymaR/BigBagKbdTrixXKB/issues/1#issuecomment-818880299 -* Is something wrong with Rulemak? It's there with the bg (Bulmak) locale, but the ru one seems to sport Polish for some odd reason?!? - - The deal is that Rulemak has its own entry by default now, from GHen himself. - - I think someone asked for that Polish entry under Ru? Not sure why, though... * For an EsAlt variant as in EPKL: ``` @@ -172,12 +145,24 @@ TODO: ```
+ HOLD: ----- +* Move the ks (Keep Local Symbols) variants out of the official sortiment? They're rather bad anyway, and may confuse newcomers? + - Could leave them in so as to be addable by a simple modding: Links as commented-out lines in the symbols/colemak file or something. + * Is `any` equivalent to `NoSymbol` in the definitions? If so, we could make symbols/extend tidier! - - Doesn't seem that way. There are more compact forms of notation, like leaving out symbols entirely, but those are less clear. + - Doesn't seem that way. There are some compact forms of notation, like leaving out symbols entirely, but those are less clear. + +* Transition many ###.xml changes to ###.extras.xml? Other Colemak locale variants reside there. But it's a mess: Many (such as Norwegian) are in the main file! + - It might be nice to keep all the BigBag locales in one place though? Or not? + +* Rulemak (ru) has its own entry now, by its creator GHen (Geert Hendrickx). Bulmak (bg) is still provided in the BigBag. + - There exists a ru(Polish) BigBag entry, copied over from pl. I think someone asked for it at some point? + - It allows writing latinized Slavic for Colemak users. It is not defined in rules but can be used by the command line.
+ DONE: ----- * Fixed key repetition with Extend, particularly vis-a-vis Wayland. @@ -185,10 +170,17 @@ DONE: - https://discord.com/channels/409502982246236160/1066499260322943006/1080488398403424256 - http://web.archive.org/web/20190320180541/http://pascal.tsu.ru/en/xkb/gram-symbols.html - I couldn't devise a way to do this once and for instead of by-key (looked at compat but no?). -* Moved Space to the "letters" block to ensure a consistent Space key implementation for `_ks` layouts etc. Many xkb layouts are sloppy about that. + +* Moved Space to the Colemak "letters" block to ensure a consistent Space key implementation for `_ks` layouts etc. + - Some basic layouts don't define some keys (no Space?!). To compensate, "nbsp(level4)" was included to define SPCE as necessary. + - After moving SPCE into the Colemak letter block, this is only needed for non-Latin scripts (il gr; bg ru have SPCE definitions). + * Renamed setkb --> setkb: It's easier to type. Updated all docs including the Forum topic. -* Switched to the new DH = DHm standard (was DH = DHk, 2017–2020). + +* Switched to the DH = DHm Colemak-DH standard (was DH = DHk, 2017–2020). + * Changed the default layout for the setkb.sh script to US (UniSym): In my experience, most users that struggle with the setup want US English. + * Relieve the sudo requirement. And add an option to change the X11 dir since Nix uses another place. Pulled from fufexan@github. - https://github.com/DreymaR/BigBagKbdTrixXKB/issues/15#issuecomment-769431139 @@ -197,10 +189,11 @@ DONE: [XKBgitLb]: https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config (XKB-config on GitLab) [XKB-pkgs]: https://pkgs.org/download/xkb-data (pkgs.org xkb-data page) [XKB-DebS]: https://packages.debian.org/sid/xkb-data (Debian Sid xkb-data download) -[XKB-Ub18]: https://ubuntu.pkgs.org/18.04/ubuntu-main-amd64/xkb-data_2.23.1-1ubuntu1_all.deb.html (Ubuntu 18.04 LTS xkb-data page) -[XKB-Ub22]: https://ubuntu.pkgs.org/22.04/ubuntu-main-amd64/xkb-data_2.33-1_all.deb.html (Ubuntu 22.04 LTS xkb-data page) -[XKB-2351]: https://debian.pkgs.org/sid/debian-main-amd64/xkb-data_2.35.1-1_all.deb.html (Debian Sid xkb-data page, 2022-12) [BigBag]: https://dreymar.colemak.org/ (DreymaR's Big Bag of Keyboard Tricks) [BigBag4X]: http://forum.colemak.com/viewtopic.php?id=1438 (DreymaR's old BigBag for Linux/XKB on the Colemak Forum) -[BB-ExtFK]: https://github.com/DreymaR/BigBagKbdTrixXKB/blob/a8db6e705e78721a1f2d82c54fcebfe304b4d66a/xkb-data_xmod/xkb/symbols/extend#L64 (BigBag – FK include in symbol/extend) -[BBREADME]: README.md (main BigBag4XKB README) +[BBREADME]: README.md (main BigBag4XKB README) +[xmREADME]: /xkb-data_xmod/README.md (xmod BigBag4XKB README) + +[XKB-Ub18]: https://ubuntu.pkgs.org/18.04/ubuntu-main-amd64/xkb-data_2.23.1-1ubuntu1_all.deb.html (Ubuntu LTS xkb-data page, 2018-04) +[XKB-Ub22]: https://ubuntu.pkgs.org/22.04/ubuntu-main-amd64/xkb-data_2.33-1_all.deb.html (Ubuntu LTS xkb-data page, 2022-04) +[XKB-2351]: https://debian.pkgs.org/sid/debian-main-amd64/xkb-data_2.35.1-1_all.deb.html (Debian Sid xkb-data page, 2022-12) diff --git a/xkb-data_xmod/xkb/symbols/bg b/xkb-data_xmod/xkb/symbols/bg index e2a8bb0..aad8d8a 100644 --- a/xkb-data_xmod/xkb/symbols/bg +++ b/xkb-data_xmod/xkb/symbols/bg @@ -260,7 +260,9 @@ xkb_symbols "latin" { partial alphanumeric_keys xkb_symbols "colemak" { include "colemak(cmk_ed_symbols)" - +// NOTE: Some basic layouts don't define some keys (no Space?!); I've no idea why. +// To compensate, I include the below which defines SPCE also for non-Latin scripts. +// include "nbsp(level4)" name[Group1]= "Bulgarian (Colemak, phonetic S-Slavic)"; key { [ Cyrillic_softsign, Cyrillic_SOFTSIGN, dead_tilde, asciitilde ] }; // Bulmak. (U0300 Comb. grave) diff --git a/xkb-data_xmod/xkb/symbols/gr b/xkb-data_xmod/xkb/symbols/gr index d162402..3b9941d 100644 --- a/xkb-data_xmod/xkb/symbols/gr +++ b/xkb-data_xmod/xkb/symbols/gr @@ -218,8 +218,8 @@ xkb_symbols "colemak" { include "gr(colemak_gr_12)" include "gr(colemak_gr_34)" include "gr(colemak_gr_eD)" -// NOTE: The basic layout didn't define some keys (no Space?); I've no idea why. -// To compensate just in case, I include the below which defines SPCE. +// NOTE: Some basic layouts don't define some keys (no Space?!); I've no idea why. +// To compensate, I include the below which defines SPCE also for non-Latin scripts. include "nbsp(level4)" name[Group1]= "Greek (Colemak, phonetic)"; }; diff --git a/xkb-data_xmod/xkb/symbols/il b/xkb-data_xmod/xkb/symbols/il index 0106169..50a44ee 100644 --- a/xkb-data_xmod/xkb/symbols/il +++ b/xkb-data_xmod/xkb/symbols/il @@ -331,8 +331,9 @@ xkb_symbols "colemak" { include "il(phonetic)" // The phonetic layout for Hebrew is il(phonetic)???; this is a Colemak translation. // TODO: Proper implementation with more glyphs, like the SIL Biblical!?! -// NOTE: The basic layout didn't define some keys (no Space?); I've no idea why. -// To compensate, I include the below which defines SPCE. +// The EPKL program for Windows has an implementation, using dead keys for niqqudot. +// NOTE: Some basic layouts don't define some keys (no Space?!); I've no idea why. +// To compensate, I include the below which defines SPCE also for non-Latin scripts. include "nbsp(level4)" name[Group1]= "Hebrew (Colemak, phonetic)"; @@ -367,8 +368,8 @@ xkb_symbols "colemak_il" { // The default layout for Israel is il(basic); this is a Colemak translation. // Based on the latin letters on the keys, it's not phonetic but maybe easier for some. // I moved the key on to , just like the standard Colemak does. -// NOTE: The basic layout didn't define some keys (no Space?); I've no idea why. -// To compensate, I include the below which defines SPCE. +// NOTE: Some basic layouts don't define some keys (no Space?!); I've no idea why. +// To compensate, I include the below which defines SPCE also for non-Latin scripts. include "nbsp(level4)" name[Group1]= "Hebrew (Colemak, Israel)";