From unknown Sun Jun 15 08:30:13 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#75662 <75662@debbugs.gnu.org> To: bug#75662 <75662@debbugs.gnu.org> Subject: Status: 30.0.93; FR: customization to move mode-line to the top Reply-To: bug#75662 <75662@debbugs.gnu.org> Date: Sun, 15 Jun 2025 15:30:13 +0000 retitle 75662 30.0.93; FR: customization to move mode-line to the top reassign 75662 emacs submitter 75662 Daniel Mendler severity 75662 wishlist thanks From debbugs-submit-bounces@debbugs.gnu.org Sat Jan 18 19:46:25 2025 Received: (at submit) by debbugs.gnu.org; 19 Jan 2025 00:46:25 +0000 Received: from localhost ([127.0.0.1]:44239 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tZJSK-0002RL-W8 for submit@debbugs.gnu.org; Sat, 18 Jan 2025 19:46:25 -0500 Received: from lists.gnu.org ([2001:470:142::17]:58144) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tZJSI-0002R3-89 for submit@debbugs.gnu.org; Sat, 18 Jan 2025 19:46:22 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tZJS6-0003lO-8i for bug-gnu-emacs@gnu.org; Sat, 18 Jan 2025 19:46:12 -0500 Received: from server.qxqx.de ([2a01:4f8:c012:9177::1] helo=mail.qxqx.de) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tZJS1-0008O4-Kt for bug-gnu-emacs@gnu.org; Sat, 18 Jan 2025 19:46:10 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=daniel-mendler.de; s=key; h=Content-Type:MIME-Version:Message-ID:Date: Subject:To:From:Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=UIvSeGu+NT674X3oZUc0+wVQYMWI6WjiFyl0rUw8QNE=; b=JVkkY2bUPpwJKG4GLT3a+D38yQ cTx2s9F5DQX8OyUkLn7M14vXcUmizkYVsBF2kzddnzrms0t9iKS9vUOu46LD5Sh7sQ4cn2tu0hKc1 4XDMDNVxyL8EZS3M38SnB6BT0IXVY9qQqgaQ5YA1+0Pr5UIeRs69DA4zaqSU0GPAD8cQ=; From: Daniel Mendler To: bug-gnu-emacs@gnu.org Subject: 30.0.93; FR: customization to move mode-line to the top X-Debbugs-Cc: Date: Sun, 19 Jan 2025 01:45:59 +0100 Message-ID: <87ldv7hbqw.fsf@daniel-mendler.de> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2a01:4f8:c012:9177::1; envelope-from=mail@daniel-mendler.de; helo=mail.qxqx.de X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 0.9 (/) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.1 (/) I have seen many experiments where people try to use the header-line as mode-line and vice versa. However most packages assume that the mode-line/header-line is in fact a mode-line/header-line and do not handle such manual modification of the mode-line-format/header-line-format well. This is the main motivation for this feature request. Furthermore conventional tiling window managers draw the window title bars at the top of the windows. Therefore when using Emacs as window manager via EXWM, people may prefer to have the mode-line at the top, since it acts as window title bar. I propose to add a customization option `mode-line-at' which can be set to `top' or `bottom'. When set to `top` the mode-line will be moved to the top. For the other lines such an option could be offered too, `header-line-at`, `tab-bar-at`, `tab-line-at`, etc. How difficult would it be to implement this feature? In Emacs 30, the variable `tool-bar-position' has been added which makes it possible to customize the tool bar position in a similar way. In this case the change might have been simpler given that the toolbar is a graphical element only, while the mode line may affect the display subsystem more deeply? From debbugs-submit-bounces@debbugs.gnu.org Sun Jan 19 01:03:35 2025 Received: (at 75662) by debbugs.gnu.org; 19 Jan 2025 06:03:35 +0000 Received: from localhost ([127.0.0.1]:44559 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tZOPH-0000su-0M for submit@debbugs.gnu.org; Sun, 19 Jan 2025 01:03:35 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:54176) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tZOPE-0000sf-7v for 75662@debbugs.gnu.org; Sun, 19 Jan 2025 01:03:33 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tZOP7-0004a3-W5; Sun, 19 Jan 2025 01:03:26 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=QztDQL3tQCCc1fR4rCqEev9eqQt33czr1hnV6hzFq1U=; b=hWzWwSyOp8xp NPUwkRGTLhmi4rfHyrAdsjZAfRrAAeZ0N499k6CP3FWI+38fU9MkbHej7Xkb8gyF0uEhSw5WPYCjL Frl9ukSOxYx5b33rZej/gDXtA+aXEj+TTyfYo+cb4GcuD5otWcmV1m5lArvm/2aSyp8F4h5dzxJ0V nIPeAstrFdL1ql00eb8kpvk2B+Egbp7K+lW1hsPzWuKxBf9aMkck82fLO+G7jYcujMP9CeP5qevyz HPcsoDH87CVeTF/aVV2X0q92C1F7GeJzJuOq3OASOXBYE+ELoLXlyef3vPNFHyiAQvRz3NPs7m7nB W/SCb+rpwukZnm0Jg4GL4g==; Date: Sun, 19 Jan 2025 08:03:24 +0200 Message-Id: <86plkj8hn7.fsf@gnu.org> From: Eli Zaretskii To: Daniel Mendler In-Reply-To: <87ldv7hbqw.fsf@daniel-mendler.de> (bug-gnu-emacs@gnu.org) Subject: Re: bug#75662: 30.0.93; FR: customization to move mode-line to the top References: <87ldv7hbqw.fsf@daniel-mendler.de> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 75662 Cc: 75662@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Date: Sun, 19 Jan 2025 01:45:59 +0100 > From: Daniel Mendler via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" > > I have seen many experiments where people try to use the header-line as > mode-line and vice versa. However most packages assume that the > mode-line/header-line is in fact a mode-line/header-line and do not > handle such manual modification of the > mode-line-format/header-line-format well. This is the main motivation > for this feature request. > > Furthermore conventional tiling window managers draw the window title > bars at the top of the windows. Therefore when using Emacs as window > manager via EXWM, people may prefer to have the mode-line at the top, > since it acts as window title bar. The header-line format already supports almost everything a mode-line format does, and frame-title-format supports a subset of them. So people can already have at least some of that by tweaking these formats. > I propose to add a customization option `mode-line-at' which can be set > to `top' or `bottom'. When set to `top` the mode-line will be moved to > the top. For the other lines such an option could be offered too, > `header-line-at`, `tab-bar-at`, `tab-line-at`, etc. > > How difficult would it be to implement this feature? The assumption that the mode line, if it exists, is at the bottom of a window is hard-coded into the display engine in many places. Changing that would require discovering all those places and modifying them in some way as needed. If someone wants to work on that, please do, but it's a significant job. > In Emacs 30, the variable `tool-bar-position' has been added which > makes it possible to customize the tool bar position in a similar > way. In this case the change might have been simpler given that the > toolbar is a graphical element only, while the mode line may affect > the display subsystem more deeply? Tool bar is either implemented by the toolkit (in which case it isn't our problem to support its various positions), or it is a special kind of window. By contrast, the mode line is a special kind of screen line, so each window redisplay must know about its existence and actively redraw it as needed. So yes, the job of adding support for other positions of the mode line is harder.