-
Notifications
You must be signed in to change notification settings - Fork 52
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
Extending god-mode system wide outside of Emacs #140
Comments
I posted on the Doom Emacs Server the above issue as an advertisement to catch attention of other enthusiasts! Here is the posting. |
What is plover? There are several key remappers that might do what you want. Such as xremap, xkeysnail, hawck. They are all on github. |
@QiangF : Thanks for telling me about xremap, xkeysnail and hawck. Until now I only knew about xmodmap. Quick questions, in case you are already familiar with some of the above:
And apologies for not explaining what is Plover. I have edited the main post above and added a short description on Plover. Basically Plover is a steno engine that can translate key chords into words. It supports modifiers like Ctrl, Alt etc I believe. |
I wonder if it will be a good idea to not take on the burden of defining Pros: If Cons:
Personally: I like the idea of using Emacs as a config file replacement/ back-end engine for the above remappers! |
Glad to hear you enjoy
Coming to the idea of porting The semantics of |
That's a good question, but I think the answer is yes. |
@darth10: Thanks for the many helpful inputs! It is very encouraging to hear!
I hear what you say, and I am mostly convinced with the argument you are making. In particular, I would consider the following to be very compelling evidence for your argument:
However I am not entirely convinced. Here is why:
disclaimer: I don't understand inter-process communication and its overheads very deeply. So in the above two examples, I may have overlooked something important. Please let me know! So my takeaways:
(That is, let people decide what they want and remain Emacs agnostic/ neutral here). And thanks for explicitly distinguishing |
Both xkeysnail and EXWM are good tools written in languages not close to the hardware. I know that EXWM uses XELB, which uses the X11 protocol to communicate with Xorg. To take this argument even further, vi is also implemented in C, but it's never used as a child process to emulate vi bindings. I'm not discouraging the use of Emacs as a back-end, but there are certain aspects of that approach which need consideration. |
Also, just FYI, I've used EXWM in the past, but I switched to stumpwm and never looked back. |
I had a look at Maybe using Modifier key translations done by |
EXWM has bad input method support for qt5 applications. If you care of speed, you should try its successor |
keyd is appropriate for remapping keys. |
Update: As I have been a bit busy with some personal work, I am unable make time for this right now. I plan to commence work on this in the first quarter of next year. (I feel this update may not belong here on this git-hub issue, but I don't know of a better place as well). Many thanks to everyone for your suggestions! The main objective of this update is to announce that - this project is not dead for me personally. And of course, for anyone else, I don't intend to own or control this project. So please feel free to contribute, while I am away, if you are inclined to. |
I love
god-mode
so much that I would actually want to extend it system wide outside of Emacs. I want to do most of the cool thing thatgod-mode
does inside Emacs, outside of Emacs!I have an idea about how to go about this:
We could hack
Plover
and replace its translation engine withgod-mode
running on an Emacs daemon. But at this moment I don't have all the required skill set to pull this off! A project like this will need community involvement and contributions (and I will surely try to do my best to contribute!)(Edit: Segway: What is plover?
Plover project from the Open Steno Project is an open-source stenography engine, that can translate key-chords on an N-key rollover-keyboard into English words via a predefined dictionary. Stenography uses key-chords and phonetics for input. For example,
OESHN
becomesOcean
andFASHN
becomesFashion
. See this for more examples. I have no stenography background, but from what I have found online, Art of Chording is considered a good standard reference on stenography.)There has to be some sensible changes that have to be made to
god-mode
outside of Emacs. For example, inside Emacsgod-mode
would translate5n
toC-u 5 C-n
. But outside Emacs5n
is needs to be further translated toC-n C-n C-n C-n C-n
. I don't know at this moment what should be all those sensible changes. As a community we can figure such things out and refine them with trial and error and natural evolution over time.So I intend to use this github issue, as an advertisement/ brainstorming place for the above project. I would have liked to put something like this on a discussion page of
god-mode
. But as suggested here I am putting this issue here.Plover
may not be the best route forward. There are things calledInput Method Engine/ Input Method Framework
in Linux. So I don't know ifInput Method Engine
will be a better place to start at.I asked a related question on stackoverflow. That question is more open-ended and doesn't insist on implementing
god-mode
system-wide as the only solution. But for my personal preferences, I would lovegod-mode
system-wide! And I hope this github issue will reach out to others who may also lovegod-mode
so much that they just want it everywhere!p.s.: My rambles/ opinions about other (somewhat) related ideas:
Vim-keybindings
: have such cult following that they are popular on many interfaces outside of vim. I feelGod-mode
deserves that kind of a place! Unlikevim-keybindings
, what I like aboutgod-mode
is that it doesn't replace your already familiar keybindings with something completely different. And further,vim-keybindings
have to be remapped if one wishes to switch to aColemak
or aDvorak
layout, where asGod-mode
keybindings can remain unaltered! In that sense, I feelgod-mode
has more universal appeal, and we need to ascendGod-mode
to its rightful place!modal
layers on their keyboards at a hardware level! But sometimes you may have to work on a "standard keyboard" at work or at your friend's place. It will be nice to have a software ecosystem that can quickly enablegod-mode
system wide so that you can get your job done and then revert back to defaults for others.The text was updated successfully, but these errors were encountered: