-
-
Notifications
You must be signed in to change notification settings - Fork 39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Can this be used from a local xkb dir? #1
Comments
Hi! The setxkbmap command can take a path to an xkb directory; my setxkb.sh script does this simply by running setxkbmap from the specified directory (which can be set by the '-d {path}' switch). But don't use the provided xkb files alone as they aren't a complete xkb directory! You should install to your preferred local path first using my install script with the '-i {path}' switch. Make sure you have write privileges in the target path. And follow the instructions closely – both my scripts use bash for instance. Is that helpful? |
Hi! BTW, yesterday I installed these files to two of my machines and it works great! Thanks a lot for this awesome work. Up until now I implemented something similar using |
Also, it would be great if I could chat with you about a few things:
If you're cool with that then let me know what's the best way to contact you. Sorry for doing this conversation in a github issue but there's no private messaging in github. |
Hi! Come to Colemak, we have... ummm, not cookies but an awesome layout! If I reply to this email, you'll be able to reply back directly I hope. [nope!] The setxkbmap will look for a workable set of xkb files in the current directory and failing that, in the default system X11 path. So changing to a (complete) xkb directory and running setxkbmap does the trick. best,
|
Yes, that's how I found this repo, awesome work 👍 |
Of course, anytime! I'm still a bit new to the GitHub thing, and never seem to find the time to Ø
|
Thanks a lot Øystein! |
So, at the moment it seems that setxkbmap does NOT handle local files? The default is then to use the system (X11 dir) install. Sorry about that. |
I was able to accomplish this with this post: https://unix.stackexchange.com/questions/397716/custom-keyboard-layout-without-root made that tweak to setxkb and some small changes to use a hardcoded $HOME dir path, and it appears good 👍 |
I was able to make it work locally (in my case right out of the git clone) except I couldn't get the # in the repo, PWD=the repo root dir
setxkbmap -I"$PWD/xkb-data_xmod/xkb" \
-model 'pc104wide-qu' \
-keycodes 'evdev(pc104wide-qu)' \
-layout us \
-variant cmk_ed_us \
-option misc:extend,lv5:caps_switch_lock \
-print | xkbcomp -I"$PWD/xkb-data_xmod/xkb" - "$DISPLAY" everything seemed to work, even wide mode, except any idea why that would be? or what to do to enable the PS: Which in turn could not load some files ( |
@birdspider I don't have a solution for you, but in case it's useful for anyone, what I'm doing for some time now is running |
but I have :) - somewhat Solutionfull local loading script (beware that #!/usr/bin/env sh
# in the repo, PWD=the repo root dir
XKB_ROOT=./xkb-data_xmod/xkb/
XKB_RULES=`pwd`/xkb-data_xmod/xkb/rules/evdev
setxkbmap \
-rules "${XKB_RULES}" \
-I "${XKB_ROOT}" \
-model 'pc104wide-qu' \
-keycodes 'evdev(pc104wide-qu)' \
-layout 'us' \
-variant 'cmk_ed_us' \
-option 'misc:extend,lv5:caps_switch_lock' \
-print | tee /dev/tty | xkbcomp -I"${XKB_ROOT}" - "$DISPLAY" Analysisit seems that
If I manually add
At least After strace-ing setxkbmap \
-rules $PWD/xkb-data_xmod/xkb/rules/evdev \
-I "./xkb-data_xmod/xkb/" \
-model 'pc104wide-qu' \
-keycodes 'evdev(pc104wide-qu)' \
-layout 'us' -variant 'cmk_ed_us' \
-option 'misc:extend,lv5:caps_switch_lock' \
-print
#got me
xkb_keymap {
xkb_keycodes { include "evdev(pc104wide-qu)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+us(cmk_ed_us)+inet(evdev)+level5(caps_switch_lock)+extend(basic)" };
xkb_geometry { include "pc(pc104wide-qu)" };
};
#which in turn actually loads fine with `xkbcomp` |
Interesting! Also see #14 for a way that looks cleaner to me. I think that I'd think the idea of feeding xkbcomp the sequence |
well thats what I though initally but look at the -rules evdevfor some reason it expects
that might not be an issue when actually being inside of EDIT: which is exactly what happens in #14 (cd into the vs. -rules $PWD/xkb-data_xmod/xkb/rules/evdevfrom the getgo looks and finds them in
also the order of double -I for xkbcompIt works fine with
it's not necessary, I do not have any complains - everything works as good as it can under the limits of -modelAs an aside, sadly |
used. It's a pain to deal with custom keymaps installed outside /usr/share/X11/xkb/. Switch back to xkbcomp. https://gitlab.freedesktop.org/xorg/app/setxkbmap/-/issues/5 DreymaR/BigBagKbdTrixXKB#1
I saw in the setxkb.sh script that it says
NOTE: It now works with local xkb(-mod) dir
, but I couldn't make it work. Can you please provide some guidance?Thanks a lot!
The text was updated successfully, but these errors were encountered: