unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Dmitry Gutov <dgutov@yandex.ru>
To: martin rudalics <rudalics@gmx.at>, Robert Pluim <rpluim@gmail.com>
Cc: "Jean-Christophe Helary"
	<jean.christophe.helary@traduction-libre.org>,
	"Richard Stallman" <rms@gnu.org>,
	"Andreas Röhler" <andreas.roehler@online.de>,
	"Emacs developers" <emacs-devel@gnu.org>,
	"Karl Fogel" <kfogel@red-bean.com>,
	homeros.misasa@gmail.com, tkk@misasa.okayama-u.ac.jp,
	"Sergey Organov" <sorganov@gmail.com>,
	"Stefan Monnier" <monnier@iro.umontreal.ca>,
	"Arthur Miller" <arthur.miller@live.com>,
	"Eli Zaretskii" <eliz@gnu.org>,
	"Drew Adams" <drew.adams@oracle.com>,
	"Stefan Kangas" <stefankangas@gmail.com>
Subject: pop-up-mini-mode, was Re: GNU Emacs raison d'etre
Date: Fri, 5 Jun 2020 05:40:03 +0300	[thread overview]
Message-ID: <be4d3eeb-c898-2853-e630-4a58b6fd3ed9@yandex.ru> (raw)
In-Reply-To: <4b652904-9966-f0cd-d6f4-ea625e4fa1b1@gmx.at>

Hi Martin,

Sorry for the late response. A detailed reply below.

On 26.05.2020 11:06, martin rudalics wrote:
>  >> I forgot to ask what "startup" means here.  Invoking 'pop-up-mini-mode'
>  >> itself or starting a dialogue as with 'ido-mode'?
>  >
>  > Neither. Emacs startup, and the blink that comes with re-creating the 
> frame. I just meant that I was going to talk about this at some later 
> point, but now I didn't have to.
> ...
>  >
>  >>  >>  > but didn't know
>  >>  >>  > what to attribute it to. Would be great to be able to avoid it.
>  >>  >>
>  >>  >> Is this a blink that happens also when you do
>  >>  >>
>  >>  >> emacs -Q --eval "(setq default-frame-alist '((minibuffer . nil)))"
>  >>  >>
>  >>  >> or does it require the presence of a child frame?
>  >>  >
>  >>  > I couldn't manage to reproduce the bug there.
> 
> I'm confused.  When you do
> 
> emacs -Q --eval "(setq initial-frame-alist '((minibuffer . nil)))"
> 
> you do not see any "blink".  Right?  When instead you do
> 
> emacs -Q --eval "(setq initial-frame-alist '((minibuffer . child-frame)))"
> 
> do you see the blink?  Finally, when you do
> 
> emacs -Q --load ~/pop-up-mini.el
> 
> you see a blink.  Right?

The "blink" is present in all cases. They all delete the original frame 
to create one without minibuffer, right?

>  > One difference I noticed is that the child frame created by
>  > pop-up-mini-mode is constant width,
> 
> I don't understand.  Here it changes its width together with its parent
> frame.

Okay, it's "constant" width. I don't really change the width of the 
frame often. It's the with of the frame.

>  > but the mini-frame created by the
>  > above recipe updates its width dynamically as well
> 
> Why "as well" if the pop-up-mini-mode child frame is _constant_ width?

Updates its width "as well as" its height, sorry, that was probably unclear.

Either resize-mini-frames is nil, and neither dimension updates 
automatically (meaning the height always stays = 1), or both dimensions 
update automatically, and the width follows the width of the prompt + 
input, and that...

>  > . And always feels kinda cramped.
> 
> Which one is cramped?  The normal minibuffer-only frame?

...feels "cramped". Yes, the (minibuffer . nil) case.

Setting this variable to 't' also has the effect of the minibuffer frame 
starting to "drift" across the desktop. It's probable the same issue 
we've seen with moving frames in GNOME Shell.

>  > In any case, it really seems like the blink is due to how updating 
> the size of the popup works: first, the buffer is updated (and redrawn), 
> then the timer resizes the popup, and the buffer is redrawn again. Not 
> sure what the better implementation is going to do, though.
> 
> There is one problem you cannot avoid: You have to know the size of the
> minibuffer text before resizing its frame and only after that you can
> determine its position (within the display or its parent frame).

I have run with pop-up-mini-mode for a few days, and not I think I have 
a different conclusion: there must be at least one other bug in there, 
and that one could be contributing the most annoying part of the effect:

When the aforementioned "blink" happens, it looks like the mode-line 
itself "blinks" (the one that resides just below the child frame). It's 
too fast to see for sure, but it seems like it travels up and then back 
(meaning, the window dimensions change briefly, making the window 
shorter by the same several lines). Maybe it tries to "give way" to the 
phantom minibuffer which used to be below it?

When it doesn't, the resizing of the child frame happens fairly 
smoothly. So if the aforementioned effect is fixed, that would be a 
significant win.

>  > Well, why else? It's the only real way we have to implement "popup" 
> windows. Too bad they don't work in the terminal.
> 
> We could do that just as we pop up menus in a terminal.

Perhaps Someone (sorry) could start working on that? Then we could 
finally have a popup library that can be used both in terminal and 
graphical Emacs. That would be a significant win. I would certainly

> But such popup
> windows would be modal - you cannot really pop them down to see the text
> beneath them.

IME child frames are also always used to create modal popups.

>  > Not sure how it's relevant to the package under discussion. The 
> minibuffer frame I've tried with that default-frame-alist setup didn't 
> really provide a good UI, looks or behavior-wise.
> 
> The (minibuffer . nil) one or the (minibuffer . child-frame) one?

I meant the first one, but neither really works well as a minibuffer 
replacement. The latter is also not very usable without the tweaks in 
popup-up-mini.el.

>  > Via... a frame parameter? OK, I'm probably not going to be very 
> helpful here, at this level of discussion detail. If there are specific 
> hard problems with repro senarios, I could try to take a look later, but 
> I'm only interested in going in this direction if our goal is to make a 
> package for a broad audience.
> 
> Currently, every frame must have a corresponding minibuffer window.  If
> you have more than one minibuffer window at hand, you have to decide
> which one to choose.  For example, with (minibuffer . child-frame) the
> situation is clear - the minibuffer window of each frame is that of its
> minibuffer child frame.

I don't know the low level details, but as long as the child frames 
themselves don't get focus (hopefully all window managers we want to 
support have provisions to enable that), switching the focus between 
frames should be doable. At least in theory.

>  >> Agreed.  And that's why users have to put the necessary customizations
>  >> in their init files and not simply call 'pop-up-mini-mode' from a
>  >> running session.  Although the latter might be a seductive way to test
>  >> it.
>  >
>  > Are you sure this customization couldn't be applied by 
> pop-up-mini-mode? Alternatively, it could be a setup function.
> 
> In practice 'pop-up-mini-mode' is simply not something that comes up
> without customizations in your init file or by calling it from the
> command line.  The reason is the one explained before: You cannot
> convert a minibuffer-equipped frame into a minibuffer-less frame (or do
> the opposite).  The same holds for (minibuffer . child-frame) and
> (minibuffer . nil) setups.

Even if you can't get all the benefits of pop-up-mini-mode for old 
frames (ones that were created before it was enabled), it would be 
better to enable customizations inside the mode. They would apply 
transparently when the mode is enabled, but otherwise stay out of the 
user's custom file.

Also, I think I suggested the trick of re-creating existing frames with 
minibuffers disabled (following what Emacs already does when the 
minibuffer is customized to be in a dedicated frame)? That should work, 
and even the ensuing "blinking" shouldn't be much of annoyance, given it 
will happen in response to an explicit user command.

>  >> inhibits it currently.  The problem perceived here is that one cannot
>  >> derive the actual coordinates of a frame _before_ that frame was mapped
>  >> by the WM and mapping always means to make it visible.
>  >
>  > What about full transparency, then?
> 
> You mean we should come up with a fully transparent frame first, resize
> it and make it opaque then.  I never played around with that but note
> that this would require a compositing window manager and not all of them
> support transparency of child frames.

Something like that.

Given that this blinking happens only once per "real" frame, and it's a 
purely visual annoyance, I think it might be okay even if only a 
fraction of our users will benefit. I kinda managed to get used to this 
particular blinking after a few days.

>  >> OTOH the actual
>  >> coordinates of the minibuffer-equipped frame are needed to make the
>  >> minibuffer-only frame appear at the same position and with the
>  >> requested, properly modified size, taking the user customizations into
>  >> account.
>  >
>  > The minibuffer-only frame which is immediately hidden itself while 
> pop-up-mini-mode is active?
> 
> The "normal" frame.  Note that you have to delete the old
> minibuffer-equipped frame created initially and then replace it with an
> "as similar as possible" minibuffer-less frame.  Look at the code of
> 'frame-notice-user-settings'.

Makes sense, yes. The "full transparency" idea could help, I think.

>  >>  >> Also
>  >>  >> note that we have various strategies to assign the minibuffer 
> window
>  >>  >> ('set-minibuffer-window', the 'minibuffer' frame parameter) so 
> all this
>  >>  >> is more convoluted than it appears at first sight.
>  >>  >
>  >>  > These are implementation options, right? Just pick the most 
> appropriate.
>  >>
>  >> These are user options a user can change any time in a running session.
>  >
>  > Perhaps we can say that they shouldn't.
> 
> I think they do already.

The users that do, will read the fine print in the package's 
description. The majority doesn't touch these functions (I haven't, in 
the many years of using Emacs), and if the package is going to work for 
them out of the box, it's a win.

>  >> But you don't like such aborts ...
>  >
>  > I don't like abort which presume a lot of prior knowledge and/or 
> manual setup.
>  >
>  > "Sorry, pop-up-mini-mode is not supported in a terminal" sounds just 
> fine to me. There's nothing else to do anyway.
> 
> It means that when you customize the minibuffer behavior in your init
> file, you will have to take into account whether you are going to work
> on a terminal or a GUI or maybe both.

Again, I wish we could do it more automatically.

Otherwise the fraction of our users who can benefit from this is going 
to be severely limited.

>  > With Lucid, the blink is the same.
> 
> OK.  IIRC you had some old machine somewhere with a non-mutter WM ...

Okay, booted it up. The machine has Unity installed, which uses Compiz.

And a last year's build of Emacs 27.

The "mode-line traveling" blinking is there. Just barely perceptible, 
because apparently Compiz is faster at rendering (on an older machine) 
than GNOME Shell released last year.

It also happens less frequently there: I only managed to reproduce it 
like 5 times out of 30 tries (with my init script). And with 'emacs -Q', 
it's harder to catch, I manage to see this like 3 times out of 20 tries.

The scenario, to recap:

1. cd ~/vc/emacs-master (adjust your directory accordingly)
2. M-x ido-mode.
3. C-x C-f e (the minibuffer should grow in size to like 3 lines; if it 
doesn't, change the size of the window).
4. If you saw the mode-line blink, good, if not, C-g and repeat.

And hot on the heels of this scenario, another annoyance:

When I do press C-g on step 4, first the child frame resizes to 1 line 
height, then some text flashes on it (the previous contents of the 
minibuffer? the current ones?), and only then it finally settles on the 
empty line with the word "Quit". That happens every time. I wonder if 
that could be improved, too.

>  > I have just tried company-posframe, which renders its popup through 
> the posframe package, and could find such artifacts, even when the popup 
> overlapped the right scroll bar.
> 
> "could find" or "could not find"?

Sorry, could not find.

>  > The minibuffer child frame from pop-up-mini-mode seemed to show 
> glitches like that when it was resized, to accommodate multiple lines.
> 
> Glitches with the scroll bar?

Yes. They weren't there with posframe.

But I just tried to reproduce these scroll bar glitches with with 
x-gtk-resize-child-frames=resize-mode, and couldn't, in ant of the 
configurations. And posframe sets up this variable's value, so that's 
probably it.

>  >> I'd still like to see a list of what people really would like to see 
> wrt
>  >> positioning and resizing the minibuffer window first.
>  >
>  > Does the list at the bottom here look useful? 
> https://github.com/honmaple/emacs-maple-minibuffer/#maple-minibufferpostion-type 
> 
> You mean the list of positions?  We can add that to 'pop-up-mini-mode'
> if we make sure that the child frame always fits into its parent.
> Although we do not care much about the size of the minibuffer window of
> a minibuffer-equipped frame when that frame gets very small either.

I meant, does that list answer your question? The one about "what people 
really would like to see wrt positioning and resizing the minibuffer 
window".

>  > If we had something like that, as well as automatic resizing of the 
> minibuffer popup without blinking, that would be great. Especially if 
> the result worked fine with packages such as icomplete-vertical-mode.
> 
> Since I already don't use icomplete investigating the latter would be
> quite demanding for me.

What do you use? M-x icomplete-mode is a trivial command, and it should 
be unobtrusive even if you're used to the default completion.

> Does 'icomplete-vertical-mode' have problems
> with Emacs' default minibuffer layout?

It has problems with every child frame based minibuffer emulation 
package that I have tried. But no problems with Emacs' default minibuffer.



  reply	other threads:[~2020-06-05  2:40 UTC|newest]

Thread overview: 270+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-08  8:26 Making Emacs popular again with a video Nathan Colinet
2020-05-08 10:39 ` Arthur Miller
2020-05-10 20:48   ` Nathan Colinet
2020-05-08 10:41 ` Stefan Kangas
2020-05-10 16:18   ` Nathan Colinet
2020-05-08 11:33 ` Eli Zaretskii
2020-05-10 20:32   ` Nathan Colinet
2020-05-11 22:59     ` Stefan Kangas
2020-05-09  7:50 ` Andreas Röhler
2020-05-10 20:57   ` Nathan Colinet
2020-05-12  3:12     ` Richard Stallman
2020-05-12  7:04       ` Arthur Miller
2020-05-12 13:59         ` Dmitry Gutov
2020-05-12 14:47           ` Arthur Miller
2020-05-12 16:08           ` Drew Adams
2020-05-13  4:01         ` Richard Stallman
2020-05-13  8:49           ` Arthur Miller
2020-05-14  5:14             ` Richard Stallman
2020-05-14 10:22               ` Arthur Miller
2020-05-14 10:55               ` Robert Pluim
2020-05-15  3:25                 ` Richard Stallman
2020-05-15  7:55                   ` Arthur Miller
2020-05-15 10:11                     ` Eli Zaretskii
2020-05-15 10:43                       ` Arthur Miller
2020-05-15 11:23                         ` Eli Zaretskii
2020-05-15 19:15                     ` H. Dieter Wilhelm
2020-05-15 18:41                   ` H. Dieter Wilhelm
2020-05-22 19:09                   ` Ben McGinnes
     [not found]                     ` <E1jcLVP-0003SB-II@fencepost.gnu.org>
2020-05-24 19:16                       ` Ben McGinnes
2020-05-14 14:13               ` Eli Zaretskii
2020-05-14  7:38             ` Tim Cross
2020-05-14  7:51               ` Andreas Röhler
2020-05-14 14:18               ` Eli Zaretskii
2020-05-14 15:36                 ` Tim Cross
2020-05-13 10:43           ` Stefan Kangas
2020-05-12  8:23       ` Andreas Röhler
2020-05-13  3:55         ` Richard Stallman
2020-05-13  8:18           ` Andreas Röhler
2020-05-13 10:53           ` Stefan Kangas
2020-05-13 16:20             ` Drew Adams
2020-05-14  2:18             ` (emacs) Intro [was: Making Emacs popular again with a video] excalamus--- via Emacs development discussions.
2020-05-14 12:04               ` Dmitry Gutov
2020-05-14 21:31                 ` excalamus--- via Emacs development discussions.
2020-05-15  0:46                   ` Dmitry Gutov
     [not found]                   ` <d28fe30d-c192-8022-b758-d8b7019e49b5@yandex.ru-M7KnL6R----2>
2020-05-17 19:11                     ` excalamus--- via Emacs development discussions.
2020-05-19 14:14                       ` excalamus--- via Emacs development discussions.
     [not found]                         ` <d66793e5-07f9-4dd9-928d-e7e8c342b781@default>
     [not found]                           ` <M7iByNw--3-2@tutanota.com>
2020-05-21 18:18                             ` excalamus--- via Emacs development discussions.
     [not found]                             ` <M7sSK-m--3-2@tutanota.com-M7sSUVm--3-2>
2020-05-28  1:21                               ` excalamus--- via Emacs development discussions.
2020-05-28  7:08                                 ` Eli Zaretskii
2020-05-28  7:41                                   ` Andreas Röhler
2020-05-28 10:23                                 ` Stefan Kangas
2020-05-29  2:39                                   ` excalamus--- via Emacs development discussions.
2020-05-29  7:28                                     ` Eli Zaretskii
2020-05-29  7:40                                     ` Stefan Kangas
2020-05-29 15:14                                       ` Stefan Monnier
2020-05-30  1:39                                       ` Richard Stallman
2020-05-14 22:14                 ` Karl Fogel
2020-05-15  3:17               ` Richard Stallman
2020-05-15  6:36               ` Andreas Röhler
2020-05-12 12:57       ` GNU Emacs raison d'etre excalamus--- via Emacs development discussions.
2020-05-13 16:18         ` Karl Fogel
2020-05-13 16:28           ` Drew Adams
2020-05-13 19:39           ` Andreas Röhler
2020-05-13 20:05             ` Karl Fogel
2020-05-13 20:52               ` Dmitry Gutov
2020-05-13 22:04                 ` Karl Fogel
2020-05-13 22:55                   ` Dmitry Gutov
2020-05-14  4:56                     ` Karl Fogel
2020-05-14 16:37                       ` Drew Adams
2020-05-14 22:11                       ` excalamus--- via Emacs development discussions.
2020-05-15  3:16                       ` Richard Stallman
2020-05-15 21:42                         ` Karl Fogel
2020-05-15 22:14                           ` Arthur Miller
2020-05-16  0:03                             ` Dmitry Gutov
2020-05-15 22:41                           ` Drew Adams
2020-05-20 21:47                             ` Karl Fogel
2020-05-20 22:35                               ` Drew Adams
2020-05-21  0:35                                 ` Karl Fogel
2020-05-16  2:43                           ` Eduardo Ochs
2020-05-18  3:46                             ` Richard Stallman
2020-05-18 11:26                               ` Dmitry Gutov
2020-05-16  8:05                           ` Yuri Khan
2020-05-16 10:36                             ` Eli Zaretskii
2020-05-16 10:46                               ` Yuri Khan
2020-05-17  1:28                       ` Dmitry Gutov
2020-05-17  1:39                         ` Dmitry Gutov
2020-05-17  1:40                         ` Dmitry Gutov
2020-05-17  1:59                         ` Jean-Christophe Helary
2020-05-17  2:52                           ` Stefan Kangas
2020-05-17  9:32                             ` Joost Kremers
2020-05-17 11:07                             ` Arthur Miller
2020-05-18  3:43                           ` transient Richard Stallman
2020-05-18  6:58                             ` transient Joost Kremers
2020-05-18 11:29                               ` transient Dmitry Gutov
2020-05-18 18:41                               ` transient Howard Melman
2020-05-18 19:35                                 ` transient John Yates
2020-05-18 19:57                                   ` transient Howard Melman
2020-05-19  5:38                                 ` transient Drew Adams
2020-05-19 14:00                                   ` transient Arthur Miller
2020-05-20  3:14                                     ` transient Michael Heerdegen
2020-05-19 22:04                                   ` transient Stefan Kangas
2020-05-19 22:53                                     ` transient Drew Adams
2020-05-19  4:02                               ` which-key Richard Stallman
2020-05-17  7:09                         ` GNU Emacs raison d'etre Drew Adams
2020-05-20 21:36                           ` Karl Fogel
2020-05-20 21:57                             ` Drew Adams
2020-05-20 22:00                         ` Karl Fogel
2020-05-20 22:07                           ` Dmitry Gutov
2020-05-21  8:03                             ` tomas
2020-05-21  9:33                               ` Arthur Miller
2020-05-21 10:04                                 ` tomas
2020-05-24 14:05                                   ` Arthur Miller
2020-05-21 16:20                                 ` xristos
2020-05-24 13:45                                   ` Arthur Miller
2020-05-24 16:52                                     ` xristos
2020-05-24 17:00                                       ` Eli Zaretskii
2020-05-24 18:31                                     ` Philip K.
2020-05-25 17:34                                   ` João Távora
2020-05-26  4:14                                     ` Richard Stallman
2020-05-26 11:32                                       ` João Távora
2020-05-27  3:08                                         ` Richard Stallman
2020-05-27  5:01                                           ` Drew Adams
2020-05-29 12:59                                           ` Arthur Miller
2020-06-23  3:59                                             ` Richard Stallman
2020-05-21 17:07                               ` Karl Fogel
2020-05-23 20:36                                 ` Dmitry Gutov
2020-05-14  6:26                   ` tomas
2020-05-14  6:16               ` Andreas Röhler
2020-05-15  3:18               ` Richard Stallman
2020-05-16  0:56                 ` Tak Kunihiro
2020-05-16  6:50                   ` Eli Zaretskii
2020-05-16  9:10                     ` Sergey Organov
2020-05-16 10:38                       ` Eli Zaretskii
2020-05-16 12:24                         ` Sergey Organov
2020-05-16 12:29                           ` Eli Zaretskii
2020-05-16 12:34                             ` Sergey Organov
2020-05-16 12:46                               ` Dmitry Gutov
2020-05-16 13:57                                 ` Sergey Organov
2020-05-16 19:35                                   ` Dmitry Gutov
2020-05-16 20:05                                     ` Stefan Kangas
2020-05-16 20:34                                       ` Dmitry Gutov
2020-05-16 20:44                                       ` Bob Newell
2020-06-24 15:37                                         ` Ricardo Wurmus
2020-05-16 23:12                                       ` Drew Adams
2020-05-16 23:18                                         ` Drew Adams
2020-05-16 23:47                                         ` Stefan Kangas
2020-05-17  1:14                                           ` Drew Adams
2020-05-17  3:13                                             ` Stefan Kangas
2020-05-17  6:49                                               ` Drew Adams
2020-05-17  7:02                                                 ` Jean-Christophe Helary
2020-05-17  7:11                                                   ` Drew Adams
2020-05-17  9:07                                                     ` Jean-Christophe Helary
2020-05-17 10:20                                                       ` Marcin Borkowski
2020-05-17 11:07                                                         ` Jean-Christophe Helary
2020-05-17 15:25                                                       ` Eli Zaretskii
2020-05-17 15:48                                                         ` Jean-Christophe Helary
2020-05-17 17:06                                                           ` Stefan Monnier
2020-05-17 17:31                                                             ` Arthur Miller
2020-05-17 18:57                                                               ` Drew Adams
2020-05-17 20:03                                                                 ` Arthur Miller
2020-05-18  8:32                                                                 ` martin rudalics
2020-05-18 11:39                                                                   ` Dmitry Gutov
2020-05-18 13:02                                                                     ` martin rudalics
2020-05-18 13:38                                                                       ` Dmitry Gutov
2020-05-18 16:31                                                                         ` Robert Pluim
2020-05-18 23:14                                                                           ` Dmitry Gutov
2020-05-19  8:41                                                                             ` martin rudalics
2020-05-20  1:01                                                                               ` Dmitry Gutov
2020-05-20  9:06                                                                                 ` martin rudalics
2020-05-21  0:15                                                                                   ` Dmitry Gutov
2020-05-21  9:07                                                                                     ` martin rudalics
2020-05-21 23:16                                                                                       ` Dmitry Gutov
2020-05-22  9:31                                                                                         ` martin rudalics
2020-05-25  2:37                                                                                           ` Dmitry Gutov
2020-05-26  8:06                                                                                             ` martin rudalics
2020-06-05  2:40                                                                                               ` Dmitry Gutov [this message]
2020-05-19  8:40                                                                     ` martin rudalics
2020-05-20  0:40                                                                       ` Dmitry Gutov
2020-05-20  9:04                                                                         ` martin rudalics
2020-05-20 13:28                                                                           ` Dmitry Gutov
2020-05-20 14:45                                                                           ` Eli Zaretskii
2020-05-20 14:56                                                                             ` Dmitry Gutov
2020-05-20 16:12                                                                               ` Eli Zaretskii
2020-05-20 17:45                                                                                 ` martin rudalics
2020-05-20 18:09                                                                                   ` Eli Zaretskii
2020-05-20 18:16                                                                                     ` Eli Zaretskii
2020-05-20 18:24                                                                                     ` Dmitry Gutov
2020-05-20 18:33                                                                                       ` Eli Zaretskii
2020-05-20 18:56                                                                                         ` Eli Zaretskii
2020-05-20 19:22                                                                                           ` Dmitry Gutov
2020-05-20 19:53                                                                                             ` tomas
2020-05-20 21:22                                                                                               ` Dmitry Gutov
2020-05-21  7:43                                                                                                 ` tomas
2020-05-21  2:28                                                                                             ` Eli Zaretskii
2020-05-21 22:19                                                                                               ` Dmitry Gutov
2020-05-22  7:28                                                                                                 ` Eli Zaretskii
2020-05-22 12:16                                                                                                   ` Dmitry Gutov
2020-05-20 23:07                                                                                           ` martin rudalics
2020-05-21 13:11                                                                                             ` Eli Zaretskii
2020-05-21 17:55                                                                                               ` martin rudalics
2020-05-18 15:57                                                                   ` Drew Adams
2020-05-19  8:41                                                                     ` martin rudalics
2020-05-21 18:19                                                                   ` Suppressing beginning/end-of-buffer error messages (WAS: GNU Emacs raison d'etre) Noam Postavsky
2020-05-22  9:30                                                                     ` martin rudalics
2020-05-22 12:46                                                                       ` Noam Postavsky
     [not found]                                                                         ` <11bfe86b-131c-4f55-5125-c269a73e360d@gmx.at>
2020-05-23 11:10                                                                           ` Noam Postavsky
2020-05-17 18:36                                                             ` GNU Emacs raison d'etre Drew Adams
2020-05-17 21:04                                                               ` Stefan Monnier
2020-05-17 21:48                                                                 ` Drew Adams
2020-05-17 18:38                                                             ` Dmitry Gutov
2020-05-17 21:17                                                               ` Stefan Monnier
2020-05-17 21:37                                                                 ` Dmitry Gutov
2020-05-18  8:33                                                                   ` martin rudalics
2020-05-18 11:37                                                                     ` Dmitry Gutov
2020-05-17 21:57                                                                 ` Drew Adams
2020-05-17 18:28                                                           ` Drew Adams
2020-05-17 17:59                                                       ` Drew Adams
2020-05-17 18:07                                                       ` Dmitry Gutov
2020-05-17  7:54                                                   ` Sergey Organov
2020-05-17 11:37                                             ` Dmitry Gutov
2020-05-17 18:11                                               ` Drew Adams
2020-05-16 23:01                                     ` Arthur Miller
2020-05-17  2:55                       ` Richard Stallman
2020-05-28  4:12                 ` Karl Fogel
2020-05-28  5:51                   ` Eduardo Ochs
2020-05-28  6:13                   ` Drew Adams
2020-05-28 14:12                     ` excalamus--- via Emacs development discussions.
2020-05-28 14:42                       ` Jean-Christophe Helary
2020-05-28 16:34                         ` Drew Adams
2020-05-29 14:44                           ` Jean-Christophe Helary
2020-05-28 15:00                       ` Philip K.
2020-05-28 15:13                         ` João Távora
2020-05-28 16:04                         ` T.V Raman
     [not found]                         ` <p914ks0kpui.fsf@google.com-M8R14r9----2>
2020-05-28 16:12                           ` excalamus--- via Emacs development discussions.
2020-05-28 16:46                             ` T.V Raman
2020-05-28 17:34                               ` Karl Fogel
2020-05-28 18:11                               ` andres.ramirez
     [not found]                               ` <877dwwezfr.fsf@red-bean.com-M8RLd3p--3-2>
2020-05-28 18:28                                 ` excalamus--- via Emacs development discussions.
2020-05-29  1:12                                   ` Karl Fogel
2020-05-30  1:44                         ` Richard Stallman
2020-05-30  2:02                           ` Jean-Christophe Helary
2020-05-30  9:13                             ` Arthur Miller
2020-05-30 16:43                           ` Alfred M. Szmidt
2020-05-31  7:07                             ` Richard Stallman
2020-06-08 17:37                               ` REmacs was " T.V Raman
2020-06-01  7:29                             ` Meaning behind Control-G Lars Brinkhoff
2020-06-01  7:56                               ` Lars Brinkhoff
2020-06-01  9:06                                 ` Lars Brinkhoff
2020-06-01 13:44                               ` Stefan Monnier
2020-06-02  1:51                                 ` Paul Eggert
2020-06-02  5:58                                   ` Lars Brinkhoff
2020-06-02 13:50                                     ` Stefan Monnier
2020-06-02 15:38                                     ` Drew Adams
2020-06-02 11:46                                   ` John Yates
2020-07-10 12:13                           ` GNU Emacs raison d'etre Lars Brinkhoff
2020-07-10 14:28                             ` Drew Adams
2020-07-11  2:16                             ` Richard Stallman
2020-05-28 16:41                       ` FW: " Drew Adams
2020-05-28 17:37                       ` Stefan Monnier
2020-05-28 20:33                         ` Perry E. Metzger
2020-05-28 23:44                           ` T.V Raman
2020-05-29  3:04                   ` Richard Stallman
2020-05-13 19:46           ` T.V Raman
2020-05-13 21:00           ` Dmitry Gutov
2020-05-13 21:02           ` excalamus--- via Emacs development discussions.
2020-05-13 22:22           ` H. Dieter Wilhelm
2020-05-14  4:20             ` Karl Fogel
2020-05-14  0:04           ` John Wiegley
2020-05-14  5:08           ` Richard Stallman
2020-05-14 20:29             ` Karl Fogel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=be4d3eeb-c898-2853-e630-4a58b6fd3ed9@yandex.ru \
    --to=dgutov@yandex.ru \
    --cc=andreas.roehler@online.de \
    --cc=arthur.miller@live.com \
    --cc=drew.adams@oracle.com \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=homeros.misasa@gmail.com \
    --cc=jean.christophe.helary@traduction-libre.org \
    --cc=kfogel@red-bean.com \
    --cc=monnier@iro.umontreal.ca \
    --cc=rms@gnu.org \
    --cc=rpluim@gmail.com \
    --cc=rudalics@gmx.at \
    --cc=sorganov@gmail.com \
    --cc=stefankangas@gmail.com \
    --cc=tkk@misasa.okayama-u.ac.jp \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).