diff --git a/README.md b/README.md index 6cc4c5d..a78484e 100644 --- a/README.md +++ b/README.md @@ -18,9 +18,9 @@ Kinto works for standard Windows, Apple and Chromebook keyboards. The following - Normal apps - Alt will be Ctrl, Win/Super will be Alt, Ctrl will be Win/Super -- Terminal apps (optional) - Alt will be Win/Super, Win/Super will be Alt, Ctrl will be Ctrl +- Terminal apps - Alt will be Ctrl+Shift, Win/Super will be Alt, Ctrl will be Ctrl -- New Features - Cursor/word-wise shortcut keys have been added to align with macOS keyboard shortcuts. +- Cursor/word-wise shortcut keys have been added to align with macOS keyboard shortcuts. ## What does Kinto require? @@ -83,91 +83,41 @@ Disable systemctl --user disable keyswap ``` -## Manually Toggling Kinto via hotkey - -I have not automated this part of the install due to the wide range of DE's and each one needing the shortcut setup to be a little different. - -Here's what you will want to do, if you want to set this up. - -1. Run a Status check on Kinto -``` -systemctl --user status keyswap -``` -and pay attention to the values that come after xactive.sh in the output. - -2. Run the following command, replacing the 4 values below with yours. -``` -~/.config/keyswap_toggle.sh win 0 0 0 -``` -3. Run this command a few more times and make sure it is swapping between "gui to term" and "term to gui" -4. Go into the DE system settings and bind the hotkeys you want to use to activate it. - - ## Learning macOS style hotkeys on Linux You can use websites like https://www.shortcutfoo.com in Google Chrome while using the terminal style keymap, but Firefox is not compatible due to detecting "cmd" as keycode 224. Chrome detects Win/Super/Cmd as keycode 91 on all OS's. To make sure you are in the terminal style keymap you can just simply open the terminal and turn off the kinto service, and then switch back to Chrome. ``` -systemctl --user stop keyswap +systemctl --user stop keyswap && setxkbmap -option;setxkbmap -option altwin:swap_alt_win ``` -or alternatively, you can follow the instructions about how to manually trigger a toggle of the keyswap. - ## Troubleshooting ### Keyswap is not occurring, but it was working. -Sometimes something about the Desktop Environment may throw xprop for a loop, it's rare, but if this occurs then you have 2 options. + +Now that Kinto is using a custom written C program I am not aware of any specific bugs or issues, but you can start here if you having difficulties and please report it if it is reproducible. + 1. Restart Kinto ``` systemctl --user restart keyswap ``` -2. Check the Status of Kinto and open a ticket with the output, especially if you can reliably reproduce the problem. +2. Check the Status of Kinto and open a ticket with the output. ``` systemctl --user status keyswap ``` -### Chromebook with external keyboard not being detected -If your keyboard is not being autodetected and configured then please run `xinput list`, if you are on linux, and copy the output into a ticket under issues. - ## Language Support I'd appreciate any help from people with non-US based keyboards, to help ensure that these keymaps and keyswap methods work in all or most languages. If you would like to attempt adding additional custom keymaps for other languages then I strongly recommend reading Glen Whitney's post here. https://superuser.com/questions/385748/binding-superc-superv-to-copy-and-paste - -## Known Issues - -### USB Hubs - -No longer an issue. USB hubs may prevent Apple keyboards from loading an official driver, but Kinto will adapt if this occurs. The benefit of an official Apple driver is that it can allow Kinto to support a mix of Windows and Mac based keyboards simultaneously. - -## Debugging - -You can output the xactive.sh script with parameters with following command. - -``` -cat ~/.config/systemd/user/keyswap.service -``` - -After that just stop the service as described and run the xactive.sh script with parameters. - -``` -systemctl --user disable keyswap -systemctl --user stop keyswap - -~/.config/xactive.sh mac 12 0 none -``` - -You can also refer to this Gist file to better understand what Kinto is doing and the simplicity of it. (The gist does not make use of any custom keymaps.) -https://gist.github.com/rbreaves/f4cf8a991eaeea893999964f5e83eebb - ## Contributing I welcome any and all contributors who want to contribute something to this project. -If you are specifically wanting to contribute additional custom keymaps to help with aligning Kinto's behavior to that of a mac keyboard then I would strongly recommend that you read Glen Whitney's comment on Superuser (the link is below). You may also look at the .xkb directory, mac_worsewise.sh and xactive.sh files to better understand how Kinto operates so that you can test your own keymaps without having to use the systemd service or running the xactive.sh script. +If you are specifically wanting to contribute additional custom keymaps to help with aligning Kinto's behavior to that of a mac keyboard then I would strongly recommend that you read Glen Whitney's comment on Superuser (the link is below). You may also look at the .xkb directory, mac_wordwise.sh and xactive.sh files to better understand how Kinto operates so that you can test your own keymaps without having to use the systemd service or running the xactive.sh script. https://superuser.com/questions/385748/binding-superc-superv-to-copy-and-paste diff --git a/kintox11/binary/default.json b/kintox11/binary/default.json index 2d0dcd8..f6c224c 100644 --- a/kintox11/binary/default.json +++ b/kintox11/binary/default.json @@ -17,7 +17,7 @@ "active": false, "description":"Standard Windows 104 Keyboards", "gui":"setxkbmap -option;xkbcomp -w0 -I$HOME/.xkb ~/.xkb/keymap/kbd.mac.gui $DISPLAY", - "term":"setxkbmap -option;setxkbmap -option altwin:swap_alt_win" + "term":"setxkbmap -option;xkbcomp -w0 -I$HOME/.xkb ~/.xkb/keymap/kbd.mac.term $DISPLAY" }, { "id": 2, diff --git a/kintox11/binary/kinto.json b/kintox11/binary/kinto.json index 8dbebf9..9ba0f50 100644 --- a/kintox11/binary/kinto.json +++ b/kintox11/binary/kinto.json @@ -17,7 +17,7 @@ "active": false, "description":"Standard Windows 104 Keyboards", "gui":"setxkbmap -option;xkbcomp -w0 -I$HOME/.xkb ~/.xkb/keymap/kbd.mac.gui $DISPLAY", - "term":"setxkbmap -option;setxkbmap -option altwin:swap_alt_win" + "term":"setxkbmap -option;xkbcomp -w0 -I$HOME/.xkb ~/.xkb/keymap/kbd.mac.term $DISPLAY" }, { "id": 2, diff --git a/kintox11/src/kinto.json b/kintox11/src/kinto.json index 8dbebf9..9ba0f50 100644 --- a/kintox11/src/kinto.json +++ b/kintox11/src/kinto.json @@ -17,7 +17,7 @@ "active": false, "description":"Standard Windows 104 Keyboards", "gui":"setxkbmap -option;xkbcomp -w0 -I$HOME/.xkb ~/.xkb/keymap/kbd.mac.gui $DISPLAY", - "term":"setxkbmap -option;setxkbmap -option altwin:swap_alt_win" + "term":"setxkbmap -option;xkbcomp -w0 -I$HOME/.xkb ~/.xkb/keymap/kbd.mac.term $DISPLAY" }, { "id": 2,