unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Re: master a3b3130 1/2: Fix cursor movement on the Linux console with certain characters
       [not found] ` <20210816134140.CB4FF20B72@vcs0.savannah.gnu.org>
@ 2021-08-16 14:39   ` Stefan Monnier
  2021-08-16 18:53     ` Lars Ingebrigtsen
  0 siblings, 1 reply; 5+ messages in thread
From: Stefan Monnier @ 2021-08-16 14:39 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: emacs-devel

>     Fix cursor movement on the Linux console with certain characters
[...]
> +  ;; Compositions confuse cursor movement.
> +  (global-auto-composition-mode -1)

While disabling composition in `linux` terminals makes sense, the above
code disables them in all frames, not just those attached to
`linux` terminals.


        Stefan




^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: master a3b3130 1/2: Fix cursor movement on the Linux console with certain characters
  2021-08-16 14:39   ` master a3b3130 1/2: Fix cursor movement on the Linux console with certain characters Stefan Monnier
@ 2021-08-16 18:53     ` Lars Ingebrigtsen
  2021-08-16 19:14       ` Eli Zaretskii
  2021-08-16 20:30       ` Stefan Monnier
  0 siblings, 2 replies; 5+ messages in thread
From: Lars Ingebrigtsen @ 2021-08-16 18:53 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: emacs-devel

Stefan Monnier <monnier@iro.umontreal.ca> writes:

>>     Fix cursor movement on the Linux console with certain characters
> [...]
>> +  ;; Compositions confuse cursor movement.
>> +  (global-auto-composition-mode -1)
>
> While disabling composition in `linux` terminals makes sense, the above
> code disables them in all frames, not just those attached to
> `linux` terminals.

(In all frames if you have a frame on a Linux console, I think?  Or did
I misunderstand how term/* stuff works?)

We're discussing how to make this work better over at bug#21363.  I'm
wondering whether altering global-auto-composition-mode to respect a
predicate function (to only switch it on on the console), but
`auto-composition-mode' is a per-buffer thing, and you may open the
buffer on a different frame, then display it on the console, and then
that won't work either...

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: master a3b3130 1/2: Fix cursor movement on the Linux console with certain characters
  2021-08-16 18:53     ` Lars Ingebrigtsen
@ 2021-08-16 19:14       ` Eli Zaretskii
  2021-08-18 14:24         ` Lars Ingebrigtsen
  2021-08-16 20:30       ` Stefan Monnier
  1 sibling, 1 reply; 5+ messages in thread
From: Eli Zaretskii @ 2021-08-16 19:14 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: monnier, emacs-devel

> From: Lars Ingebrigtsen <larsi@gnus.org>
> Date: Mon, 16 Aug 2021 20:53:54 +0200
> Cc: emacs-devel@gnu.org
> 
> > While disabling composition in `linux` terminals makes sense, the above
> > code disables them in all frames, not just those attached to
> > `linux` terminals.
> 
> (In all frames if you have a frame on a Linux console, I think?  Or did
> I misunderstand how term/* stuff works?)
> 
> We're discussing how to make this work better over at bug#21363.  I'm
> wondering whether altering global-auto-composition-mode to respect a
> predicate function (to only switch it on on the console), but
> `auto-composition-mode' is a per-buffer thing, and you may open the
> buffer on a different frame, then display it on the console, and then
> that won't work either...

We could perhaps introduce a new, non-nil, non-t value of
auto-composition-mode which would internally cause the display code to
test the current terminal?



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: master a3b3130 1/2: Fix cursor movement on the Linux console with certain characters
  2021-08-16 18:53     ` Lars Ingebrigtsen
  2021-08-16 19:14       ` Eli Zaretskii
@ 2021-08-16 20:30       ` Stefan Monnier
  1 sibling, 0 replies; 5+ messages in thread
From: Stefan Monnier @ 2021-08-16 20:30 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: emacs-devel

>> While disabling composition in `linux` terminals makes sense, the above
>> code disables them in all frames, not just those attached to
>> `linux` terminals.
> (In all frames if you have a frame on a Linux console, I think?

Yup.

> We're discussing how to make this work better over at bug#21363.  I'm
> wondering whether altering global-auto-composition-mode to respect a
> predicate function (to only switch it on on the console), but
> `auto-composition-mode' is a per-buffer thing, and you may open the
> buffer on a different frame, then display it on the console, and then
> that won't work either...

Ah, right, it's per-buffer :-(


        Stefan




^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: master a3b3130 1/2: Fix cursor movement on the Linux console with certain characters
  2021-08-16 19:14       ` Eli Zaretskii
@ 2021-08-18 14:24         ` Lars Ingebrigtsen
  0 siblings, 0 replies; 5+ messages in thread
From: Lars Ingebrigtsen @ 2021-08-18 14:24 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: monnier, emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

> We could perhaps introduce a new, non-nil, non-t value of
> auto-composition-mode which would internally cause the display code to
> test the current terminal?

Yes, that could work (and would be a change localised to composite.c, so
it shouldn't be too messy).

Now pushed.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no



^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-08-18 14:24 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20210816134138.22360.16962@vcs0.savannah.gnu.org>
     [not found] ` <20210816134140.CB4FF20B72@vcs0.savannah.gnu.org>
2021-08-16 14:39   ` master a3b3130 1/2: Fix cursor movement on the Linux console with certain characters Stefan Monnier
2021-08-16 18:53     ` Lars Ingebrigtsen
2021-08-16 19:14       ` Eli Zaretskii
2021-08-18 14:24         ` Lars Ingebrigtsen
2021-08-16 20:30       ` Stefan Monnier

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).