Conversation
Edited 11 months ago

Dear lazy-web - question time.

I’ve maintained a branch of the old micro-emacs (not GNU emacs) for decades. And by “maintained” I really mean “mostly kept working”. It’s a scrappy little editor from the eighties(!) and the “s” in scrappy is silent.

The version I have grown accustomed to isn’t even the most recent version of microemacs, it’s a offshoot from uemacs 3.9 that was maintained by Petri Kutvonen at Helsinki University because it was portable and supported DOS, VAX/VMS and Unix.

Over the decades, I’ve “enhached” that thing to actually mostly understand UTF-8, and increased some internal limits, but it’s mostly the same thing that I used in the early nineties.

Anyway.

I don’t love the fact that it’s a very limited text editor. I’d like syntax highlighting etc. But my fingers are absolutely hardcoded to it, and I am not in the least interested in something that makes me switch away from those (much less start using a mouse to move around etc).

Which is just a very long way to say: “Does anybody know of some slightly more modern GUI editor that actually has good support for really changing keybindings”.

And I mean really configurable. As in “I can make ESC-J auto-justify text, and ESC-Z be ‘exit-and-save, and ^X^C will exit without saving”. Not some half-way state where “sure, you can make ^X exit, but no, you can’t make ^X or ESC act as Alt / Meta keys for other keys?

And yes, I know one answer is “teach your fingers new ways”. But my micro-emacs works just fine, and so it really isn’t worth it to me.

And please - don’t even bother replying with “Xyz is a great editor” unless you know and can show exactly how to rebind a key sequence like that ^X^C. I don’t use nearly all the uemacs keybindings, but I use an odd set of them.

I’d rather maintain just a keybinding file than a whole scrappy editor.

Edit: clearly I should have specified that I’m not interested in yet another “runs in a terminal” editor, or some even older editor (ie “real” emacs, or vim) that just has had more lipstick applied over the years.

52
110
241

@Reiddragon @imikotoba honestly, I was hoping for something nice and clean, not some eldritch horror from the last century that has just seen more maintenance than uemacs.

Less LISP and “GUI wrapper to make it look modern”, and more “actually configurable natively GUI editor”.

6
4
23

@torvalds In this case, I know this Open Source Lua editor that runs on a weird lua-written OS. Its inputs can be easily configured however you need it (including your requirements) and the syntax highlight is just c patterns. https://consult.madefor.cc/ So if you have nothing against playing around with Lua until it works how your want it in your environment, this is ideally for you.

1
0
0

Jarkko Sakkinen

Edited 8 months ago
https://en.wikipedia.org/wiki/Ion_(window_manager) was written with jed, and i used it for some time while studying because tuomo was participating to the same math classes, and he was using jed at the time (might still use it have no idea). i've been using vim for 23 years but today it feels too bloated, so have been considering to give it a shot again. e.g. i don't like text editor to write code for me (auto-completion, AI, any method) so new features just add more bloat.
0
0
0
Bump: Two GUI editors come to mind: Tea and Geany.

I think TEA is about as close to your wish as you are going to get. TEA will likely do 95% of your wishes except exit+save and ESC key in sequences. It is hackable and readable Qt/C++ so you can patch and push with ease.

"TEA is a C++, Qt(4,5,6) text editor with the hundreds of features for Linux, *BSD, Mac, Windows, OS/2 and Haiku."

GitHub: https://github.com/psemiletov/tea-qt
Debian: apt-get install tea (only two dependencies: anti-word, tea-data).

TEA text editor has endless configuration options including all the key mappings that allows custom setting of everything in the KEYBOARD tab as shown in the screenshot. Please note that the quirky monspace font is not the default TEA setting but from my own custom QT settings. You can apply any font you wish to the interface.

If you want to modify hotkeys via source code you would use Qt::QAction in tea.cpp in the repo. I'm not a Qt/C++ programmer but the source syntax is obvious and I have hacked other Qt interfaces to my liking with no problems.

One rough edge I found is that if the application is already open, passing a file via command line will not open it. I could not find any other UX bugs in it.


1
0
0
@torvalds@social.kernel.org

There is also sublime text which allows configuring the keybindings in .json files It also allows ESC > command bindings. The user can put custom context and args in the binding actions.

download: https://www.sublimetext.com/

key bindings: https://www.sublimetext.com/docs/key_bindings.html
0
0
0

@sammy @torvalds that's.. for a Minecraft mod that adds Lua-based computers... The idea of doing any kind of serious editing in it sounds weird

1
0
0

@kimapr @torvalds which is why I'm joking lol.
Also notice the last sentence.

0
0
0

@torvalds I wonder if you had any luck with your search 😉?

0
0
0