[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#43209: 27.1; rectangle-mark-mode does not activate region if transie
From: |
Drew Adams |
Subject: |
bug#43209: 27.1; rectangle-mark-mode does not activate region if transient mark mode disabled |
Date: |
Sat, 5 Sep 2020 07:28:08 -0700 (PDT) |
> rectangle-mark-mode does not activate region if transient mark mode is
> disabled.
>
> Steps:
>
> 1. emacs -Q
> 2. M-x transient-mark-mode RET
> 3. C-x SPC
>
> Expected:
>
> Region is activated temporarily.
>
> Actual:
>
> Region is not activated. Note that rectagle-mark-mode is still
> partially enabled. For example, C-x C-x moves point according to the
> rectangular region, but you cannot move point beyond the end of the
> line.
>
> I propose making rectangle-mark-mode activate the region even if
> transient-mark-mode is disabled for a number of reasons.
>
> I think it's a reasonable interpretation of the docstring:
>
> Activates the region if needed. Only lasts until the region is
> deactivated.
>
> rectangle-mark-mode is transient like having an active region and unlike
> having a mark. That is to say, someone who uses the mark with
> transient-mark-mode off may not want to operate on the region and thus
> not want to activate the region (e.g., when using the mark to jump to
> later), but there is no use case for rectangle-mark-mode that does not
> involve operating on the region.
>
> Also since rectangle-mark-mode is transient, it makes sense to couple it
> with region activation as the active region is also transient with the
> same lifespan.
I agree that `rectangle-mark-mode' requires
`transient-mark-mode' to be on. But only as
long as `rectangle-mark-mode' is on, i.e.,
only as long as the region is active.
After that, the previous state of
`transient-mark-mode' (on or off) should be
restored.
"Active region" has no meaning outside of
`transient-mark-mode'. Anything, including
`rectangle-mark-mode', that requires the
notion (and behavior - e.g. highlighting) of
the "active region" needs `transient-mark-mode'
to be on (for the duration of that need).