rbreaves/kinto

Does this include MAC-style special characters, accents and umlauts?

fairtale5 opened this issue · 6 comments

Does this include the way Mac handles special characters and accents?
Things like: Ä ä Ö ö Ü ü Ë ë Ï ï

@fairtale5

Kinto is still using xkeysnail, which has no support for the necessary Unicode character entry method to support the special characters.

On the other hand, my project that switched to keyszer does have support for the Option-key special characters.

However, it only has the special characters for the standard US layout or the ABC Extended layout. And if you're using KDE, you'll need to install ibus and set it as your input manager.

If that would suit you, give it a try:

https://github.com/RedBearAK/toshy

@RedBearAK

I added a new Keyboard Layout and selected [English (US)] with the variant -> [English (Macintosh)]

This enables mac-style input for special characters like é ü ä ß ñ ç

Now I just need to get Kinto to run on Manjaro. I keep getting "error: externally-managed-environment" and haven't found a way around this.

Will continue tomorrow, it is super late. Just wanted to let you know that I found a solution to the special characters. Please let me know if you have any tips for installing it on Manjaro, thanks!

@fairtale5

I added a new Keyboard Layout and selected [English (US)] with the variant -> [English (Macintosh)]
This enables mac-style input for special characters like é ü ä ß ñ ç

Unbelievable. Looks like I completely wasted my time implementing the special character scheme in the config file. The special characters can only be reached by using the Alt_Gr key on the right side of the Space bar. Or I can set it to the Menu key. But it works. I never realized all the special characters are available on the Macintosh layout variants. Even the "dead keys" work like they're supposed to. 😞

any tips for installing it on Manjaro, thanks!

The Toshy installer works fine on Manjaro, as far as I know. If you can't get the Kinto installer working. See the link in the previous comment. If you install it you can disable its built-in Option-key special character scheme and just use the characters in your Macintosh keyboard layout variant.

Unbelievable. Looks like I completely wasted my time implementing the special character scheme in the config file. The special characters can only be reached by using the Alt_Gr key on the right side of the Space bar. Or I can set it to the Menu key. But it works. I never realized all the special characters are available on the Macintosh layout variants. Even the "dead keys" work like they're supposed to.

I didn't find any info about that and since the installation was failing I spent some time digging xD
It works pretty well. 🤣

But yes, only the alt_Gr on the right side of the [space] works. I'm trying to find a way to get it over to the left side, like on Mac.

However, I can't seem to be able to install Kinto. I tried on Manjaro and now on OpenSuse, but I always run into the same:
error: extermaly-managed-environment

is this not an issue on ubuntu? (sorry for all the dumb questions, I've been gone from linux for ~10 years and now trying new systems, trying to avoid ubuntu).

But yes, only the alt_Gr on the right side of the [space] works. I'm trying to find a way to get it over to the left side, like on Mac.

That's probably not going to be possible, at least not without breaking any shortcut combos that might use the LEFT_ALT key. I tried it last night a couple different ways. But even changing the left Meta key to RIGHT_ALT instead of LEFT_ALT has bad side effects, where a number of different combos just don't work right anymore. The real Alt_Gr or "right Alt" key is what is supported by the desktop environment shell in Linux, usually.

On the other hand, if you installed Toshy and enabled the US or ABC Extended special character scheme from the tray icon menu, you would have access to all the same special characters but with both "Option" key positions. Even if you have your keyboard layout set to the default non-Macintosh variant. Because the way I implemented the special character scheme it's all inside the keymapper config file.

It may not be as nice to look at since it uses Unicode character entry, so you might see it quickly "typing" the Unicode character address before the special character appears. But I kind of saw that happening with the Macintosh keyboard layout special characters a couple of times, so I think that's how they are doing it too.

The main difference you might notice is that my special character scheme in Toshy will "select" the dead key diacritic character (the way macOS does) and then overwrite the selection with the accented character, while the native level 3/4 character dead keys on the Macintosh layout use an underline to show that it's waiting for further input.

However, I can't seem to be able to install Kinto. I tried on Manjaro and now on OpenSuse, but I always run into the same: error: externally-managed-environment

Yes, this has also been an issue on Kinto with Ubuntu 23.04, and probably will continue to be an issue. My project (Toshy) doesn't have this issue, because it uses a Python virtual environment to avoid it. If you want to stick with Kinto, you can get past the problem with pipx, but it's kind of complicated.

This may not be the correct package name, but you can try:

sudo pacman -S pipx

Then use pipx (instead of pip) to install the custom branch of xkeysnail that the Kinto installer clones:

cd ~/Downloads/kinto-master/xkeysnail
pipx install --upgrade .

Then you may need to log out or restart, and try to run the downloaded Kinto installer again:

cd ~/Downloads/kinto-master
./setup.py

There will still be an error but the installer should finish, and pop up the Kinto GUI window asking you to press the 2nd key to the left of the Space bar.

After that you may need to still install a couple of packages to get the tray icon working.

If you want to avoid all of that, try installing Toshy instead. It's basically Kinto, but with some extra features and a completely different installer.

My project (Toshy) doesn't have this issue, because it uses a Python virtual environment to avoid it.

You had me at "doesnt have this issue"
Switching to Toshi

thank you so much for all the help, I really appreciate it <3