bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#13273: 24.3.50; [PATCH] enhancement request: repeatable `visual-line


From: Drew Adams
Subject: bug#13273: 24.3.50; [PATCH] enhancement request: repeatable `visual-line-mode' line movements
Date: Tue, 25 Dec 2012 22:32:26 -0800

> > >    * `home' - `beginning-of-line'
> > >    * `end'  - `end-of-line'
> > >    * `C-a'  - `beginning-of-visual-line'
> > >    * `C-e'  - `end-of-visual-line'
> > 
> > I think it would be better the other way around: leave C-a and C-e
> > move by physical lines, and make Home and End move by visual lines,
> > which I think is consistent with other applications.
> 
> OK, go for it, please.  Doesn't matter to me either way.  I 
> was thinking of `home' and `end' as being the stronger, more 
> distant movements, based on their names and based on (I guess 
> misunderstanding) some of the discussion in emacs-devel.  I 
> am certainly no expert on what the "standard"/"conventional" 
> meanings are.

However, I wonder what most Emacs users would really prefer.

To be clear, I don't use visual line mode, and I have no preference regarding
it.

But I would imagine that:

1. It is more common in visual line mode to want to move incrementally up/down
visual line bols/eols than it is to move incrementatlly up/down logical line
bols/eols.

2. Emacs users, who are used to `C-a' and `C-e', would generally prefer to use
`C-a' and `C-e' for this repeat-movement, rather than `home' and `end'.

If #1 and #2 are true, then which is more important: (a) to preserve the same
bindings as externally, for those who are used to using `home' & `end' for this
or (b) to provide Emacs-traditional keys, `C-a' & `C-e' for this more common
bol/eol movement (visual)?

IOW, I would think that for Emacs users used to `C-a' & `C-e' what I sent in the
patch is preferable, but for users used to other apps what you suggest is
preferable.

Again, it does not really matter to me.  Someone else might have stronger
arguments that what I see, and someone else would anyway need to decide.  I only
hope that the two functionalities do get installed, so users of visual-line mode
get repeatable bol/eol movements.

---

Outside of visual line mode, I think that `C-a' and `C-e' (and maybe `home' and
`end'?) should also be repeatable, in the same way.  (But here there is no
difference between visual and logical bol/eol.)

In my own use I bind the same redefined commands `beginning-of-line' and
`end-of-line' to `C-a' and `C-e' globally.  Well, actually I do not redefine
those commands for my use.  Instead, I name the repeatable commands I wrote
`beginning-of-line+' and `end-of-line+', and I bind those to `C-a' and `C-e'.
But they are the same definitions that I called `beginning-of-line' and
`end-of-line' in the patch.

However, I am totally unclear about what `move-beginning-of-line' and
`move-end-of-line' are for and how they differ from `beginning-of-line' and
`end-of-line'.  What's that all about?

I cannot understand the doc well enough to figure out what the differences are
or why these new commands were added (and why they replace the older commands
only as bindings, instead of just redefining the older commands, IOW, why have
two sets of commands).

My real request is, I guess, that users get repeatable bol/eol movement commands
for both non visual line mode and visual line mode.  And preferably the same
keys.  For v-m mode there can be two different behaviors - the ones I defined,
for logical and visual line bol/eol.  For non v-m mode (globally) there is only
one behavior: logical (= visual).

I would like to see `C-a' & `C-e' kept for non v-m mode, at least.  Perhaps I
sent the wrong patch for that, thinking that my redefinition of
`beginning-of-line' and `end-of-line' would be bound to `C-a' and `C-e' globally
(and perhaps also to `home' and `end' globally).

But maybe it is `move-beginning-of-line' & `move-end-of-line', instead, that
should be patched to be repeatable?  In any case, the aim was to have `C-a' and
`C-e' be repeatable (globally as well as in v-m mode).

What is the reason for `move-beginning-of-line' & `move-end-of-line' as separate
commands from `beginning-of-line' and `end-of-line', and why did the latter pair
lose the key bindings?






reply via email to

[Prev in Thread] Current Thread [Next in Thread]