[Qt-creator] ANN: Another emacs keys plugin

nsf no.smile.face at gmail.com
Fri Feb 21 23:15:02 CET 2014


Hello, everyone.

If you're an emacs user and googled for "qt creator emacs keys" or
something like that, you know that there is some plugin on the github,
that is based on FakeVim, you can find it here:

https://github.com/fberger/emacskeys

However, it seems like it's a dead one. Frankly, I don't like the way it
looks (messy) and I haven't checked if it still works or not.

So.. I created a new one. From scratch. You can find it here:

https://github.com/nsf/emacskeys


Implementation details:

Plugin adds a bunch of emacs-oriented QActions without any
default keys bound. But you can spend a couple of minutes and set
them all to the appropriate emacs keys. You can find these actions
under EmacsKeys section of the keyboard shortcuts settings. Then it
listens for currentEditorChanged events and sets up a small per-editor
state, which consists of the mark position and also does some state
tracking. When you invoke an action it simply does the right thing. A
pretty KISS plugin.

It supports basic emacs-oriented movement: C-f, C-b, C-n, C-p, C-a,
C-e, M-f, M-b, M-<, M->.

It supports proper deletion operations: C-d, M-d, C-k.

It's capable of appending the deleted text of chained M-d and C-k to
the clipboard. It doesn't have a kill ring buffer feature, plugin uses
plain clipboard instead.

And of course mark-based selection with C-SPC, C-x C-x and
copy/cut/paste with M-w, C-w, C-y.

You may wonder why C-f, C-b, C-n, C-p are redefined, when there are
existing QActions which do the same thing. Well, in order to support
mark-based selection mechanism, they were redefined.


The plugin is in super early alpha quality. It was written in a couple
of hours, today. I'll be using it from now on and if any issues come
up, they will be fixed.

Hope you enjoy it and tell me what you think.


More information about the Qt-creator mailing list