diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 0000000..97fac0c --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,42 @@ +--- +name: Bug report +about: Create a report to help us improve +title: '' +labels: bug +assignees: rbreaves + +--- + +**Describe the bug** +A clear and concise description of what the bug is. + +**Expected behavior** +A clear and concise description of what you expected to happen. + +**Install Type:** Bare Metal or VM +**Distro:** Name + Version +**DE:** Gnome, XFCE, KDE +**Branch:** master, dev +**Commit:** git rev-parse --short HEAD + +**Kinto Input Caret Status** +``` +cat /tmp/kinto/caret +``` + +**Kinto Standard Log** +``` +journalctl --user-unit=keyswap.service -b +``` +**Kinto Debug Log (1.0.6-2+)** +``` +systemctl --user stop keyswap +cd ~/.config/kinto +./kintox11 --debug +``` + +**Screenshots** +If applicable, add screenshots to help explain your problem. + +**Additional context** +Add any other context about the problem here. diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 0000000..376557a --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,20 @@ +--- +name: Feature request +about: Suggest an idea for this project +title: '' +labels: enhancement +assignees: rbreaves + +--- + +**Is your feature request related to a problem? Please describe.** +A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] + +**Describe the solution you'd like** +A clear and concise description of what you want to happen. + +**Describe alternatives you've considered** +A clear and concise description of any alternative solutions or features you've considered. + +**Additional context** +Add any other context or screenshots about the feature request here. diff --git a/.github/ISSUE_TEMPLATE/gratitude.md b/.github/ISSUE_TEMPLATE/gratitude.md new file mode 100644 index 0000000..d0ad607 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/gratitude.md @@ -0,0 +1,10 @@ +--- +name: Gratitude +about: Just wants to give a shout out! +title: '' +labels: gratitude +assignees: rbreaves + +--- + + diff --git a/.github/ISSUE_TEMPLATE/question.md b/.github/ISSUE_TEMPLATE/question.md new file mode 100644 index 0000000..399371a --- /dev/null +++ b/.github/ISSUE_TEMPLATE/question.md @@ -0,0 +1,10 @@ +--- +name: Question +about: Question about Kinto functionality +title: '' +labels: question +assignees: rbreaves + +--- + + diff --git a/README.md b/README.md index 06a90a9..bffdd3d 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ [![GitHub release](https://img.shields.io/github/release/rbreaves/kinto.svg)](https://github.com/rbreaves/kinto/releases/latest) -\- Type in Linux like it's a Mac. \- +\- Type in Linux & Windows like it's a Mac. \- Seamless copy and paste with all apps and terminals. Also the only linux remapper that is aware of your cursor/caret status - meaning it avoids shortcut conflicts within an app versus wordwise shortcuts when a text field is in use. @@ -28,12 +28,6 @@ Kinto works for standard Windows, Apple and Chromebook keyboards. The following - IBus* - Fedora/RHEL/Manjaro/Arch/Debian/Ubuntu based distro 16.04+ -- Windows 10 & WSL is now supported -- Powershell - run as Administrator (for install) -- Chocolatey (for install) -- Python (for install) -- Autohotkey - Binary is included and will be installed, but you can also compile kintox11.c on your system. You will need to compile and install json-c first as its libraries will be required to compile and run the program. *IBus is needed to support wordwise during browser app usage as the keymap will need to change slightly depending if the cursor/caret is on screen waiting for input. Setup.py will set it but you can manually set it as well or check your current Input Method. @@ -42,6 +36,18 @@ On most distros you can confirm navigate to your "Language Support" and set "Key Wayland support is planned, but not ready yet. +## Kinto for Windows 10 Requirements + +- WSL Ubuntu edition +- Powershell - run as Administrator +- Python3 + +Other programs that will be installed when you run ./setup.py +- Chocolatey +- Autohotkey + +Does not have complete parity with the Linux edition, but it does work and can be built on and added to as needed. Modify ./windows/kinto.ahk if you want to add more WSL editions or other terminals. + ## How to install 1. clone this repo @@ -369,7 +375,7 @@ You can also add additional Desktop Environment related tweaks to user_config.js "name":"term", "run":"setxkbmap -option;xkbcomp -w0 -I$HOME/.xkb ~/.xkb/keymap/kbd.mac.term $DISPLAY", "de":[2], - "appnames":[ "Gnome-terminal","konsole","io.elementary.terminal","terminator","sakura","guake","tilda","xterm","eterm" ], + "appnames":[ "Gnome-terminal","konsole","io.elementary.terminal","terminator","sakura","guake","tilda","xterm","eterm","kitty" ], "run_onInput":"", "run_offInput": "killall xbindkeys > /dev/null 2>&1", "symbols":"", @@ -487,12 +493,27 @@ cd ~/.config/kinto ./kintox11 ``` +## Debug + +If all else fails you can now run Kinto in debug mode as of 1.0.6-2. The output will become more verbose and I'd recommend running this directly after stopping the service. + +``` +systemctl --user stop keyswap +cd ~/.config/kinto +./kintox11 --debug +``` + ## 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 +## Notes about Windows 10 +Sharpkeys was used to create the layout/reg files to swap the Ctrl, Win and Alt keys. Sharpkeys was not required however because the reg keys were extracted. Autohotkey is used to manage keyswaps needed for terminal usage. Autohotkey is also used to add additional mac like keybinds for Sublime text and can be used for other apps as well. + +Microsoft is working on a new Powertoy Keyboard Manager that could be used with an easier to use GUI interface, but this approach should be fully sufficient for a mac like experience and autohotkeys appears to be more than capable enough to handle complex rebinding of any or most mac like shortcuts. + ## Contributing I welcome any and all contributors who want to contribute something to this project. diff --git a/defaults.json b/defaults.json index 77f8075..d14e642 100644 --- a/defaults.json +++ b/defaults.json @@ -1,6 +1,6 @@ {"defaultapps":[{ "name":"term", - "appnames":[ "Gnome-terminal","konsole","io.elementary.terminal","terminator","sakura","guake","tilda","xterm","eterm" ] + "appnames":[ "Gnome-terminal","konsole","io.elementary.terminal","terminator","sakura","guake","tilda","xterm","eterm","kitty" ] }], "defaulttypes":["windows","mac","chromebook"], "defaults":[{ diff --git a/user_config.json b/user_config.json index 9652547..92268c2 100644 --- a/user_config.json +++ b/user_config.json @@ -16,7 +16,7 @@ "symbols":"", "types":"", "de":[], - "appnames":[ "Gnome-terminal","konsole","io.elementary.terminal","terminator","sakura","guake","tilda","xterm","eterm" ] + "appnames":[ "Gnome-terminal","konsole","io.elementary.terminal","terminator","sakura","guake","tilda","xterm","eterm","kitty" ] }, { "name": "firefox",