ace-jump-mode icon indicating copy to clipboard operation
ace-jump-mode copied to clipboard

Enumerate candidates by distance from point

Open immerrr opened this issue 13 years ago • 8 comments

This probably looks like a generalization of issue #8.

I'd guess that most of the time my jumps aren't too long and by customizing the first letters to reside on my home row & by ordering the candidates by distance from point this can be harnessed to reduce finger travel even more.

Is it easy or at all possible to do that? Do I suggest anything obvious that has already been tried and failed? :)

immerrr avatar Apr 25 '13 19:04 immerrr

Actually, I have thought the same kind of problem before, but I do not find a good way to define "distance". Maybe row based, column based or straight-line based, that is a potential problem. :-)

So right now, there is no "distance" based candidates optimization logic in implementation.

I will try that, but maybe cannot give a very good solution at present.

winterTTr avatar Apr 26 '13 03:04 winterTTr

I'd think row-based, yes, like, start from bol to eol on current row and then the same candidates from alternating rows: one up and one down, and so on.

immerrr avatar Apr 26 '13 06:04 immerrr

I like this idea. Could it be a good idea to start from point and working forward to end of current window, then backwards from point to start of window. Perhaps it is easier to implement then alternating upwards and downwards. It would make small jumps forward quick and easy all the time, and unless there are many hits between point and end of window, small jumps backward would also be easy.

driessen avatar May 03 '13 13:05 driessen

Was there any further development on this? I would really like to save one extra press. :)

ksjogo avatar Feb 06 '14 09:02 ksjogo

OK, I think many people want this feature. I may consider to implement a version and also with some other already known solution. Please wait a while :-)

winterTTr avatar Feb 06 '14 14:02 winterTTr

Row-based :+1:

romanodesouza avatar Nov 22 '14 04:11 romanodesouza

Just tried ace mode and it's fantastic. I like the idea of keeping the fingers on the home row though. Until you have it implemented I'd like to just set the motion alphabet setting. I don't know emacs lisp well enough though.

How would you change the lisp below to work?

;; configure the ace jump keys to try and keep your fingers on ;; the home row as much as possible (setq ace-jump-mode-move-keys (j f k d l s ; a h g u r i e o w p q n v m c , x . z y t b J F K D L S A H G U R I E O W P Q N V M C X Z Y T B))

bcowgill avatar May 01 '16 20:05 bcowgill

Figured it out very sweet ;; configure the ace jump keys to try and keep your fingers on ;; the home row as much as possible (setq ace-jump-mode-move-keys '(?j ?f ?h ?g ?u ?r ?n ?v ?y ?b ?m ?t ?k ?d ?i ?e ?, ?c ?l ?s ?; ?a ?o ?w ?. ?x ?p ?q ?z ?J ?F ?H ?G ?U ?R ?N ?V ?Y ?B ?M ?T ?K ?D ?I ?E ?C ?L ?S ?A ?O ?W ?X ?P ?Q ?Z))

bcowgill avatar May 01 '16 20:05 bcowgill