[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#60980: FR: It would be useful to have a repeat-exit-function for a r
From: |
Ramesh Nedunchezian |
Subject: |
bug#60980: FR: It would be useful to have a repeat-exit-function for a repeat-map |
Date: |
Sat, 21 Jan 2023 14:07:31 +0530 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.6.0 |
FR: It would be useful to have a repeat-exit-function for a repeat-map
Overview of `thing.el`
==============
The attached file `thing.el`
- allows navigation by "thing"
- highlights the thing that is being navigated
- you can switch to a "parent thing" while navigating a "thing"
Video Demo of `thing.el`
===============
See the video https://github.com/rnchzn/scratch/issues/1 as I test drive
`thing.el`.
The right window shows the `*lossage*` buffer, and it updates as I run commands.
What happens in the Video
=================
In the context of the above video, I start navigating the `symbol` thing, and
switch to the `sexp / list` thing (`sexp / list` is the parent of `symbol`
thing)
Additional details on `thing.el`
===================
I am using s-i, s-j, s-k and s-l as <up>, <left>, <down> and <right> keys using
`input-decode-map`.
There are four keymaps.
- s-l and s-j are prefix keys that invoke `forward-thing-map` and
`backward-thing-map`.
- The `thing-symbol-map` has `symbol` commands.
- The `thing-sexp-map` has `sexp` commands.
When `thing-symbol-map` is active you can press <up> or s-i to move to
`thing-sexp-map`.
What I need from repeat.el
================
When I exit the repeat map---for example when I press <return> in the video,
and leave the "navigation mode" to "edit mode"---I want to unhighight the thing.
That is I propose that there be a provision in `repeat.el` to associate an
`exit-function` with a repeatable map
(put 'thing-sexp-map 'repeat-exit-function 'thing-unhighlight)
Additional Note
==========
If you squint a bit, `repeat-echo-function` is an `exit-function` ... but the
problem is it doesn't provide what map is being exited.
See bug#60353: 30.0.50; Make `repeat-echo-function` as a LIST of functions
thing.el
Description: Text Data