unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Mode line at top of window
@ 2021-04-29  2:49 John Yates
  2021-04-29  8:17 ` Arthur Miller
  0 siblings, 1 reply; 2+ messages in thread
From: John Yates @ 2021-04-29  2:49 UTC (permalink / raw)
  To: Emacs developers


[-- Attachment #1.1: Type: text/plain, Size: 1495 bytes --]

Some years ago I brought up the topic of using very large screens:
  https://lists.gnu.org/archive/html/emacs-devel/2016-10/msg00859.html

More recently I brought up that topic again:
  https://lists.gnu.org/archive/html/emacs-devel/2020-09/msg01057.html

Lately, using mini-frame, I have realized a very liveable approximation
of what I had in mind.  While normally I work with a maximized emacs
frame, I attach here pictures of a much smaller frame, intended to give
a sense of my current mini-buffer experience.

A notable feature of my current implementation is that I position the
minibuffer over the frame's title bar.  Positioned thus, a one line mini-
buffer does not obscure any window content.  The downside is that,
in order to position the popped up mini-buffer frame outside of the
selected frame's native boundaries, that popped up frame must be
made parentless.  That, in turn, has some rough edges.

Were I able to position the mode-line at the top of each window (an
arrangement whose virtues on a large screen I have argued  before)
then I would make my selected frame the parent of the popped up
mini-buffer.  The mini-buffer would have to remain within my frame's
native boundaries.  But that would be acceptable because, with the
mode-line at the top of each window, it would be one or more mode-
lines that got hidden, rather than any actual buffer text.

Which brings me to my ask: Would it be possible, optionally, to draw
the mode-line at the top of each window?

/john

[-- Attachment #1.2: Type: text/html, Size: 3981 bytes --]

[-- Attachment #2: emacs-mini-buffer-none.png --]
[-- Type: image/png, Size: 118206 bytes --]

[-- Attachment #3: emacs-mini-buffer-single-line.png --]
[-- Type: image/png, Size: 116595 bytes --]

[-- Attachment #4: emacs-mini-buffer-multi-line.png --]
[-- Type: image/png, Size: 140517 bytes --]

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

* Re: Mode line at top of window
  2021-04-29  2:49 Mode line at top of window John Yates
@ 2021-04-29  8:17 ` Arthur Miller
  0 siblings, 0 replies; 2+ messages in thread
From: Arthur Miller @ 2021-04-29  8:17 UTC (permalink / raw)
  To: John Yates; +Cc: Emacs developers

John Yates <john@yates-sheets.org> writes:

> Some years ago I brought up the topic of using very large screens:
>   https://lists.gnu.org/archive/html/emacs-devel/2016-10/msg00859.html
>
> More recently I brought up that topic again:
>   https://lists.gnu.org/archive/html/emacs-devel/2020-09/msg01057.html
>
> Lately, using mini-frame, I have realized a very liveable approximation
> of what I had in mind.  While normally I work with a maximized emacs
> frame, I attach here pictures of a much smaller frame, intended to give
> a sense of my current mini-buffer experience.
>
> A notable feature of my current implementation is that I position the
> minibuffer over the frame's title bar.  Positioned thus, a one line mini-
> buffer does not obscure any window content.  The downside is that,
> in order to position the popped up mini-buffer frame outside of the
> selected frame's native boundaries, that popped up frame must be
> made parentless.  That, in turn, has some rough edges.
>
> Were I able to position the mode-line at the top of each window (an
> arrangement whose virtues on a large screen I have argued  before)
> then I would make my selected frame the parent of the popped up
> mini-buffer.  The mini-buffer would have to remain within my frame's
> native boundaries.  But that would be acceptable because, with the
> mode-line at the top of each window, it would be one or more mode-
> lines that got hidden, rather than any actual buffer text.
>
> Which brings me to my ask: Would it be possible, optionally, to draw
> the mode-line at the top of each window?

When you say at top of each window, you mean in the titlebar of each
OS window as you show in your examples? That might be a problem, since
area outside of an application window, titlebar, borders, etc, usually
called a frame, is not owned by the application, but by some kind of a
window manager. In X11 it is usually a separate application (DWM, i3,
Compiz, etc), in MS Windows it is Explorer, as example.

I am not an expert at Emacs, so don't take me too seriously, but as far
as I know, I don't think you can display modeline on top of a window,
but you can display a header on top of your Emacs window (not in
titlebar) which takes same format as the modeline:

https://www.gnu.org/software/emacs/manual/html_node/elisp/Mode-Line-Format.html

You can also hide modeline, check for example this:

https://www.emacswiki.org/emacs/HideModeLine

There was also some package that used hidden modeline and displayed
modeline info in minibuffer, but I don't remember the name, I think it
is this one, but I am not sure:

https://github.com/kiennq/emacs-mini-modeline

Also check this SX answer:

https://stackoverflow.com/questions/3050011/is-it-possible-to-move-the-emacs-minibuffer-to-the-top-of-the-screen

If you are using GNU/Linux, you can hide window titlebars and borders
with a right window manager for X11 (is what I do).

Together all those hacks are not what you are asking for exactly, but
they can give you an approximative illusion of what you are trying to
achieve :-).



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

end of thread, other threads:[~2021-04-29  8:17 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-29  2:49 Mode line at top of window John Yates
2021-04-29  8:17 ` Arthur Miller

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).